From 184ca522dd746903a17660bccb7a4ff194691edb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tr=C3=A8sAbhi?= <43380238+tresabhi@users.noreply.github.com>
Date: Sat, 6 Apr 2024 10:17:48 -0500
Subject: [PATCH] feat: proper keying
---
src/app/tools/compare/components/TankControl.tsx | 14 ++++++++------
src/app/tools/compare/page.tsx | 14 +++++++-------
src/core/blitzkrieg/tankToCompareMember.ts | 2 ++
src/stores/compare.ts | 6 +++++-
4 files changed, 22 insertions(+), 14 deletions(-)
diff --git a/src/app/tools/compare/components/TankControl.tsx b/src/app/tools/compare/components/TankControl.tsx
index 1afd3444b..897371939 100644
--- a/src/app/tools/compare/components/TankControl.tsx
+++ b/src/app/tools/compare/components/TankControl.tsx
@@ -5,9 +5,10 @@ import {
TrashIcon,
} from '@radix-ui/react-icons';
import { Dialog, Flex, IconButton } from '@radix-ui/themes';
-import { useState } from 'react';
+import { use, useState } from 'react';
+import { skillDefinitions } from '../../../../core/blitzkrieg/skillDefinitions';
import { TankDefinition } from '../../../../core/blitzkrieg/tankDefinitions';
-import { tankToDuelMember } from '../../../../core/blitzkrieg/tankToDuelMember';
+import { tankToCompareMember } from '../../../../core/blitzkrieg/tankToCompareMember';
import {
CompareMember,
mutateCompareTemporary,
@@ -21,6 +22,7 @@ interface TankControlProps {
}
export function TankControl({ index, tank, members }: TankControlProps) {
+ const awaitedSkillDefinitions = use(skillDefinitions);
const [switchTankDialogOpen, setSwitchTankDialogOpen] = useState(false);
return (
@@ -71,10 +73,10 @@ export function TankControl({ index, tank, members }: TankControlProps) {
compact
onSelect={(tank) => {
mutateCompareTemporary((draft) => {
- draft.members[index] = {
- ...tankToDuelMember(tank),
- crewSkills: {},
- };
+ draft.members[index] = tankToCompareMember(
+ tank,
+ awaitedSkillDefinitions,
+ );
});
setSwitchTankDialogOpen(false);
}}
diff --git a/src/app/tools/compare/page.tsx b/src/app/tools/compare/page.tsx
index bd49bad88..56099e92c 100644
--- a/src/app/tools/compare/page.tsx
+++ b/src/app/tools/compare/page.tsx
@@ -234,8 +234,8 @@ export default function Page() {