Skip to content

Commit 0f1c020

Browse files
committed
fix: remove usage of reserved "key" prop
1 parent e05e301 commit 0f1c020

File tree

5 files changed

+19
-21
lines changed

5 files changed

+19
-21
lines changed

packages/components/form/src/Form.tsx

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@ export const Form = <T extends FormFieldMap>({
4949
useEffect(() => {
5050
const tmpFieldElements: React.ReactNode[] = [];
5151

52-
for (const key in fields) {
53-
if (fields[key] !== undefined) {
54-
const item = fields[key];
52+
for (const fieldKey in fields) {
53+
if (fields[fieldKey] !== undefined) {
54+
const item = fields[fieldKey];
5555

5656
if (item === undefined) continue;
5757

@@ -64,14 +64,14 @@ export const Form = <T extends FormFieldMap>({
6464
);
6565
}
6666

67-
const value = internalValues.values[key];
67+
const value = internalValues.values[fieldKey];
6868

6969
const adapterProps = {
70-
key,
70+
fieldKey,
7171
value,
72-
isTouched: Boolean(isTouched[key]),
73-
valid: Boolean(validity.fields[key]?.valid),
74-
error: validity.fields[key]?.error,
72+
isTouched: Boolean(isTouched[fieldKey]),
73+
valid: Boolean(validity.fields[fieldKey]?.valid),
74+
error: validity.fields[fieldKey]?.error,
7575
setInternalValues,
7676
};
7777

packages/components/form/src/adapters/Input.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@ import { Input } from "@react-ck/input";
44

55
export const InputAdapter = <K extends string, T extends FormFieldMap, KT extends keyof T>({
66
value,
7-
key,
7+
fieldKey,
88
props,
99
isTouched,
1010
valid,
1111
error,
1212
setInternalValues,
1313
}: Readonly<InputAdapterProps<"input", K, T, KT>>): React.ReactElement => (
1414
<Input
15-
key={key}
1615
{...props}
1716
value={typeof value === "string" ? value : ""}
1817
skin={isTouched && !valid ? "negative" : "default"}
@@ -21,10 +20,10 @@ export const InputAdapter = <K extends string, T extends FormFieldMap, KT extend
2120
setInternalValues((v) => ({
2221
values: {
2322
...v.values,
24-
[key]: e.target.value.length > 0 ? e.target.value : null,
23+
[fieldKey]: e.target.value.length > 0 ? e.target.value : null,
2524
},
2625
changeType: "user",
27-
changedField: key,
26+
changedField: fieldKey,
2827
}));
2928
props.onChange?.(e);
3029
}}

packages/components/form/src/adapters/Select.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@ import { Select } from "@react-ck/select";
44

55
export const SelectAdapter = <K extends string, T extends FormFieldMap, KT extends keyof T>({
66
value,
7-
key,
7+
fieldKey,
88
props,
99
isTouched,
1010
valid,
1111
error,
1212
setInternalValues,
1313
}: Readonly<InputAdapterProps<"select", K, T, KT>>): React.ReactElement => (
1414
<Select
15-
key={key}
15+
key={fieldKey}
1616
{...props}
1717
value={typeof value === "string" ? value : ""}
1818
skin={isTouched && !valid ? "negative" : "default"}
@@ -21,10 +21,10 @@ export const SelectAdapter = <K extends string, T extends FormFieldMap, KT exten
2121
setInternalValues((v) => ({
2222
values: {
2323
...v.values,
24-
[key]: e.currentTarget.value.length > 0 ? e.currentTarget.value : null,
24+
[fieldKey]: e.currentTarget.value.length > 0 ? e.currentTarget.value : null,
2525
},
2626
changeType: "user",
27-
changedField: key,
27+
changedField: fieldKey,
2828
}));
2929
props.onChange?.(e);
3030
}}

packages/components/form/src/adapters/Textarea.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@ import { Textarea } from "@react-ck/textarea";
44

55
export const TextareaAdapter = <K extends string, T extends FormFieldMap, KT extends keyof T>({
66
value,
7-
key,
7+
fieldKey,
88
props,
99
isTouched,
1010
valid,
1111
error,
1212
setInternalValues,
1313
}: Readonly<InputAdapterProps<"textarea", K, T, KT>>): React.ReactElement => (
1414
<Textarea
15-
key={key}
1615
{...props}
1716
value={typeof value === "string" ? value : ""}
1817
skin={isTouched && !valid ? "negative" : "default"}
@@ -21,10 +20,10 @@ export const TextareaAdapter = <K extends string, T extends FormFieldMap, KT ext
2120
setInternalValues((v) => ({
2221
values: {
2322
...v.values,
24-
[key]: e.currentTarget.value.length > 0 ? e.currentTarget.value : null,
23+
[fieldKey]: e.currentTarget.value.length > 0 ? e.currentTarget.value : null,
2524
},
2625
changeType: "user",
27-
changedField: key,
26+
changedField: fieldKey,
2827
}));
2928
props.onChange?.(e);
3029
}}

packages/components/form/src/types.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ export type InputAdapterProps<
6565
T extends FormFieldMap,
6666
KT extends keyof T,
6767
> = FieldListMap[F] & {
68-
key: K;
68+
fieldKey: K;
6969
value: FormValues<T>[KT];
7070
isTouched: boolean;
7171
valid: boolean;

0 commit comments

Comments
 (0)