From f14ca394b570784fef7ab22fb1ca5538d0b1c2e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com> Date: Sat, 5 Oct 2024 16:44:07 -0500 Subject: [PATCH] fix: some linting for new proto 3 --- packages/core/src/blitz/index.ts | 3 +- .../core/src/blitz/resolveNearPenetration.ts | 5 - packages/core/src/blitzkit/uniqueGuns.ts | 6 +- .../core/src/protos/tank_definitions.proto | 14 +- .../website/src/components/Compare/Body.tsx | 70 +++--- .../src/components/Compare/CompareTable.tsx | 46 ++-- .../src/components/Compare/Controls.tsx | 8 +- .../src/components/Compare/TankControl.tsx | 6 +- .../src/components/EquipmentManager.tsx | 8 +- .../ModuleButtons/EquipmentButton.tsx | 6 +- .../website/src/components/ModuleManager.tsx | 22 +- .../TankSearch/components/TankCard.tsx | 61 ++--- .../src/components/TankSearch/index.tsx | 56 ++--- .../components/Characteristics/index.tsx | 49 ++-- .../components/Consumables.tsx | 9 +- .../components/Modules.tsx | 143 ++++++----- .../components/Provisions.tsx | 12 +- .../components/Skills.tsx | 6 +- .../components/Tankopedia/GameModeSection.tsx | 22 +- .../components/DynamicArmorSwitcher.tsx | 4 +- .../Options/components/QuickInputs/index.tsx | 8 +- .../HeroSection/components/Options/index.tsx | 88 ++++--- .../TankSandbox/components/Control.tsx | 12 +- .../src/core/blitzkit/tankCharacteristics.ts | 233 ++++++++++-------- packages/website/src/hooks/useTankVotes.ts | 11 +- .../website/src/pages/tools/compare/index.tsx | 18 +- .../website/src/stores/embedState/index.ts | 6 +- .../src/stores/embedState/utilities.ts | 4 +- packages/website/src/stores/tankFilters.ts | 4 +- 29 files changed, 522 insertions(+), 418 deletions(-) delete mode 100644 packages/core/src/blitz/resolveNearPenetration.ts diff --git a/packages/core/src/blitz/index.ts b/packages/core/src/blitz/index.ts index f19d0f072..aa2aadf58 100644 --- a/packages/core/src/blitz/index.ts +++ b/packages/core/src/blitz/index.ts @@ -24,8 +24,7 @@ export * from './rating'; export * from './regions'; export * from './regionSubdomainToRegion'; export * from './regionToRegionSubdomain'; -export * from './resolveNearPenetration'; export * from './searchClansAcrossRegions'; export * from './searchCurrentRatingPlayers'; export * from './searchPlayersAcrossRegions'; -export * from './toUniqueId'; +export * from './toUniqueId'; diff --git a/packages/core/src/blitz/resolveNearPenetration.ts b/packages/core/src/blitz/resolveNearPenetration.ts deleted file mode 100644 index c6680dffe..000000000 --- a/packages/core/src/blitz/resolveNearPenetration.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { Vector2Tuple } from 'three'; - -export function resolveNearPenetration(penetration: number | Vector2Tuple) { - return typeof penetration === 'number' ? penetration : penetration[0]; -} diff --git a/packages/core/src/blitzkit/uniqueGuns.ts b/packages/core/src/blitzkit/uniqueGuns.ts index b9db83f25..ac23297b9 100644 --- a/packages/core/src/blitzkit/uniqueGuns.ts +++ b/packages/core/src/blitzkit/uniqueGuns.ts @@ -1,5 +1,5 @@ import { forEachRight } from 'lodash-es'; -import { GunDefinition, TurretDefinition } from './tankDefinitions'; +import { GunDefinition, TurretDefinition } from '../protos'; export function uniqueGuns(turrets: TurretDefinition[]) { const gunIds = new Set(); @@ -7,8 +7,8 @@ export function uniqueGuns(turrets: TurretDefinition[]) { forEachRight(turrets, (turret) => { forEachRight(turret.guns, (gun) => { - if (!gunIds.has(gun.id)) { - gunIds.add(gun.id); + if (!gunIds.has(gun.gunType!.value.base.id)) { + gunIds.add(gun.gunType!.value.base.id); guns.push({ turret, gun }); } }); diff --git a/packages/core/src/protos/tank_definitions.proto b/packages/core/src/protos/tank_definitions.proto index d3b05e951..307d6b22d 100644 --- a/packages/core/src/protos/tank_definitions.proto +++ b/packages/core/src/protos/tank_definitions.proto @@ -70,7 +70,7 @@ message EngineDefinition { required string name = 2; optional uint32 xp = 3; required Tier tier = 4; - optional float fire_chance = 5; + required float fire_chance = 5; required uint32 power = 6; required uint32 weight = 7; repeated Unlock unlocks = 8; @@ -98,8 +98,8 @@ message GunDefinition { } message GunDefinitionRegular { - required GunDefinitionBase gun = 1; - required GunDefinitionRegularProperties regular = 2; + required GunDefinitionBase base = 1; + required GunDefinitionRegularProperties extension = 2; } message GunDefinitionRegularProperties { @@ -107,8 +107,8 @@ message GunDefinitionRegularProperties { } message GunDefinitionAutoLoader { - required GunDefinitionBase gun = 1; - required GunDefinitionAutoLoaderProperties auto_loader = 2; + required GunDefinitionBase base = 1; + required GunDefinitionAutoLoaderProperties extension = 2; } message GunDefinitionAutoLoaderProperties { @@ -118,8 +118,8 @@ message GunDefinitionAutoLoaderProperties { } message GunDefinitionAutoReloader { - required GunDefinitionBase gun = 1; - required GunDefinitionAutoReloaderProperties auto_reloader = 2; + required GunDefinitionBase base = 1; + required GunDefinitionAutoReloaderProperties extension = 2; } message GunDefinitionAutoReloaderProperties { diff --git a/packages/website/src/components/Compare/Body.tsx b/packages/website/src/components/Compare/Body.tsx index cb5e37142..18a4de4a6 100644 --- a/packages/website/src/components/Compare/Body.tsx +++ b/packages/website/src/components/Compare/Body.tsx @@ -12,7 +12,9 @@ interface BodyProps { export function Body({ stats }: BodyProps) { const members = CompareEphemeral.use((state) => state.members); - const hasNonRegularGun = members.some(({ gun }) => gun.type !== 'regular'); + const hasNonRegularGun = members.some( + ({ gun }) => gun.gunType!.$case !== 'regular', + ); const mutateCompareEphemeral = CompareEphemeral.useMutation(); return ( @@ -29,35 +31,43 @@ export function Body({ stats }: BodyProps) { - {gun.shells.map((thisShell, shellIndex) => ( - { - mutateCompareEphemeral((draft) => { - draft.members[index].shell = thisShell; - }); - }} - > - {thisShell.name} - - ))} + {gun.gunType!.value.gun.shells.map( + (thisShell, shellIndex) => ( + { + mutateCompareEphemeral((draft) => { + draft.members[index].shell = thisShell; + }); + }} + > + {thisShell.name} + + ), + )} diff --git a/packages/website/src/components/Compare/CompareTable.tsx b/packages/website/src/components/Compare/CompareTable.tsx index 3d681e2a3..3d28016b5 100644 --- a/packages/website/src/components/Compare/CompareTable.tsx +++ b/packages/website/src/components/Compare/CompareTable.tsx @@ -1,11 +1,11 @@ import { asset, availableProvisions, - consumableDefinitions, - equipmentDefinitions, + fetchConsumableDefinitions, + fetchEquipmentDefinitions, + fetchProvisionDefinitions, + fetchSkillDefinitions, permanentSkills, - provisionDefinitions, - skillDefinitions, } from '@blitzkit/core'; import { checkConsumableProvisionInclusivity } from '@blitzkit/core/src/blitzkit/checkConsumableProvisionInclusivity'; import { ComponentPlaceholderIcon } from '@radix-ui/react-icons'; @@ -31,10 +31,10 @@ interface CompareTableProps { stats: TankCharacteristics[]; } -const awaitedSkillDefinitions = await skillDefinitions; -const awaitedEquipmentDefinitions = await equipmentDefinitions; -const awaitedConsumableDefinitions = await consumableDefinitions; -const awaitedProvisionDefinitions = await provisionDefinitions; +const skillDefinitions = await fetchSkillDefinitions(); +const equipmentDefinitions = await fetchEquipmentDefinitions(); +const consumableDefinitions = await fetchConsumableDefinitions(); +const provisionDefinitions = await fetchProvisionDefinitions(); export function CompareTable({ stats }: CompareTableProps) { const crewSkills = CompareEphemeral.use((state) => state.crewSkills); @@ -84,10 +84,10 @@ export function CompareTable({ stats }: CompareTableProps) {