Skip to content

Commit 45f4748

Browse files
committed
refactor(form): simplify form field type definitions and props
Remove redundant TControl generic parameter and simplify type definitions for better maintainability. The changes make the component types more straightforward while maintaining the same functionality.
1 parent 6af8af6 commit 45f4748

1 file changed

Lines changed: 7 additions & 12 deletions

File tree

  • packages/ui-react/src/components/ui/form

packages/ui-react/src/components/ui/form/form.tsx

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -94,9 +94,11 @@ type FormFieldProps<TControl, TFieldValues extends FieldValues, TTransformedValu
9494
| { children: React.ReactNode; className?: never; withWrapper: false }
9595
);
9696

97-
export function FormField<TControl, TFieldValues extends FieldValues, TTransformedValues>(
98-
props: FormFieldProps<TControl, TFieldValues, TTransformedValues>
99-
) {
97+
export function FormField<
98+
TControl,
99+
TFieldValues extends FieldValues = FieldValues,
100+
TTransformedValues = TFieldValues,
101+
>(props: FormFieldProps<TControl, TFieldValues, TTransformedValues>) {
100102
const { children, className, control, name, withWrapper = true } = props;
101103

102104
const { isDisabled, isInvalid } = useLaxFormFieldState({ control, name });
@@ -136,23 +138,16 @@ export function FormField<TControl, TFieldValues extends FieldValues, TTransform
136138
}
137139

138140
type FormFieldControlledFieldProps<
139-
TControl,
140141
TFieldValues extends FieldValues,
141142
TName extends FieldPath<TFieldValues>,
142143
TTransformedValues = TFieldValues,
143-
> =
144-
TControl extends Control<infer TValues> ?
145-
Omit<ControllerProps<TValues, FieldPath<TValues>, TTransformedValues>, "control"> & {
146-
control?: never;
147-
}
148-
: ControllerProps<TFieldValues, TName, TTransformedValues>;
144+
> = ControllerProps<TFieldValues, TName, TTransformedValues>;
149145

150146
export function FormFieldWithController<
151-
TControl,
152147
TFieldValues extends FieldValues,
153148
TName extends FieldPath<TFieldValues>,
154149
TTransformedValues = TFieldValues,
155-
>(props: FormFieldControlledFieldProps<TControl, TFieldValues, TName, TTransformedValues>) {
150+
>(props: FormFieldControlledFieldProps<TFieldValues, TName, TTransformedValues>) {
156151
const formMethods = useFormMethodsContext({ strict: false });
157152

158153
const { control = formMethods?.control, name, render, ...restOfProps } = props;

0 commit comments

Comments
 (0)