@@ -26,11 +42,10 @@ function InternalKepzettsegekSelector(props: {title: string, numberOfKepzettseg:
{klist.map((idx) =>
)
}
@@ -61,15 +76,12 @@ function KarakterKepzettsegek (props: {
}
console.log('Adjusted Number of Kepzetsegek = ', numberOfKepzettseg)
- const getKepzettsegN = (n: number) => Kepzettsegek[watch('kep_'+n, availableKepzettsegList[n].Id) as KepzettsegId]
+ const getKepzettsegN = (n: number) => Kepzettsegek[watch('kepzettseg.'+n, availableKepzettsegList[n].Id) as KepzettsegId]
const getKepzettsegListaN = (n: number) => {
let response = availableKepzettsegList;
for (let i = 0; i < numberOfKepzettseg; i++) {
- if (i === n) {
- continue;
- }
- response = response.filter(x => x.Id !== getKepzettsegN(i).Id)
+ response = response.filter(x => i === n || x.Id !== getKepzettsegN(i).Id)
}
if (osztaly === Osztaly.Tolvaj) {
for (let i = 0; i < 4; i++) {
@@ -90,10 +102,7 @@ function KarakterKepzettsegek (props: {
}
// filter out selected tolvaj kepzettsegek
for (let i = 0; i < 4; i++) {
- if (i === n) {
- continue;
- }
- response = response.filter(x => x.Id !== getTolvajKepzettsegN(i).Id)
+ response = response.filter(x => i === n || x.Id !== getTolvajKepzettsegN(i).Id)
}
return response
}
diff --git a/src/components/KepzettsegSelector.tsx b/src/components/KepzettsegSelector.tsx
index fc035f1..e71355d 100644
--- a/src/components/KepzettsegSelector.tsx
+++ b/src/components/KepzettsegSelector.tsx
@@ -9,28 +9,21 @@ function kepzettsegOptionText(k: Kepzettseg) {
return k.Name + ' (' + k.Tulajdonsag.reduce((acc, k) => (acc === '' ? acc : acc + ' / ') + TulajdonsagLabel(k), '') + ')' + (osztalyok == null ? '' : (' - ' + osztalyok));
}
-// this is required for render optimization, which happens because selected is not a prop of this component so selecting an item doesn't trigger a rendering of this select field.
-function KepzettsegSelect(props: {kepzettsegek: Kepzettseg[], fieldRegistration: UseFormRegisterReturn, defaultValue: Kepzettseg}) {
- const { kepzettsegek, fieldRegistration, defaultValue} = props
- return
-
-
+function KepzettsegSelector (props: {kepzettsegek: Kepzettseg[], fieldRegistration: UseFormRegisterReturn, selected : Kepzettseg}) {
-}
-
-function KepzettsegSelector (props: {kepzettsegek: Kepzettseg[], fieldRegistration: UseFormRegisterReturn, defaultValue: Kepzettseg, selected : Kepzettseg}) {
-
- const { kepzettsegek, fieldRegistration, defaultValue, selected } = props
+ const { kepzettsegek, fieldRegistration, selected } = props
return <>
-
+
+
+
diff --git a/src/pages/CreateCharacter.tsx b/src/pages/CreateCharacter.tsx
index 345921a..ee8b1fa 100644
--- a/src/pages/CreateCharacter.tsx
+++ b/src/pages/CreateCharacter.tsx
@@ -7,7 +7,7 @@ import FajSelector from "../components/FajSelector";
import Tulajdonsagok from "../components/Tulajdonsagok";
import OsztalySelector from "../components/OsztalySelector";
import KarakterKepzettsegek from "../components/KarakterKepzettsegek";
-import {KarakterTulajdonsagok, Tulajdonsag} from "../domain-models/tulajdonsag";
+import {KarakterTulajdonsagok} from "../domain-models/tulajdonsag";
import MasodlagosErtekek from "../components/MasodlagosErtekek";
const FAJ_FIELD_NAME = 'faj'
@@ -75,7 +75,7 @@ function CreateCharacterPage() {
register(fieldName, {required: true})}
watch={watch}
/>