import { useTranslation } from "react-i18next"; import { SendouTab, SendouTabList, SendouTabPanel, SendouTabs, } from "~/components/elements/Tabs"; import { Main } from "~/components/Main"; import { useSearchParamState } from "~/hooks/useSearchParamState"; import type { MainWeaponId } from "~/modules/in-game-lists/types"; import type { DamageMultiplierWithHistory, KitPatchHistory, ParsedWeaponParams, SpecialPointWithHistory, WeaponKitInfo, WeaponParamKind, WeaponPatch, } from "../weapon-params-types"; import { WeaponKits } from "./WeaponKits"; import { WeaponParamsTable } from "./WeaponParamsTable"; import styles from "./WeaponParamsView.module.css"; import { WeaponPatchHistory, WeaponPatchHistoryByKit, } from "./WeaponPatchHistory"; export function WeaponParamsView({ kind, weaponId, categoryWeaponIds, weaponParams, specialPoints, damageMultipliers, versions, patchHistory, kitPatchHistories, kits, }: { kind: WeaponParamKind; weaponId: number; categoryWeaponIds: number[]; weaponParams: Record; specialPoints?: Record; damageMultipliers?: Record; versions: string[]; patchHistory: WeaponPatch[]; kitPatchHistories?: KitPatchHistory[]; kits?: WeaponKitInfo[]; }) { const { t } = useTranslation(["params"]); const [tab, setTab] = useSearchParamState({ name: "tab", defaultValue: "params", revive: (value) => (value === "patches" ? "patches" : "params"), }); const viewedKitPatchCount = kitPatchHistories?.find((kit) => kit.weaponId === weaponId)?.patches .length ?? patchHistory.length; return (
{kits ? : null} setTab(String(key))} className={styles.tabs} > {t("params:tab.params")} {t("params:tab.patches")} {kitPatchHistories && kitPatchHistories.length > 0 ? ( ) : ( )} {t("params:dataCredit.lean")}
); }