mirror of
https://github.com/LukeHagar/form.git
synced 2025-12-09 20:37:47 +00:00
fix: createFormFactory
This commit is contained in:
@@ -5,10 +5,9 @@ import { Store } from '@tanstack/store'
|
||||
|
||||
export type ValidationCause = 'change' | 'blur' | 'submit'
|
||||
|
||||
export type FieldOptions<TData, TFormData> = {
|
||||
export interface FieldOptions<TData, TFormData> {
|
||||
name: unknown extends TFormData ? string : DeepKeys<TFormData>
|
||||
defaultValue?: TData
|
||||
form?: FormApi<TFormData>
|
||||
validate?: (
|
||||
value: TData,
|
||||
fieldApi: FieldApi<TData, TFormData>,
|
||||
@@ -24,6 +23,13 @@ export type FieldOptions<TData, TFormData> = {
|
||||
defaultMeta?: Partial<FieldMeta>
|
||||
}
|
||||
|
||||
export type FieldApiOptions<TData, TFormData> = FieldOptions<
|
||||
TData,
|
||||
TFormData
|
||||
> & {
|
||||
form: FormApi<TFormData>
|
||||
}
|
||||
|
||||
export type FieldMeta = {
|
||||
isTouched: boolean
|
||||
touchedError?: ValidationError
|
||||
@@ -53,11 +59,6 @@ export type InputProps = {
|
||||
onBlur: (event: any) => void
|
||||
}
|
||||
|
||||
export type FieldApiOptions<TData, TFormData> = RequiredByKey<
|
||||
FieldOptions<TData, TFormData>,
|
||||
'form'
|
||||
>
|
||||
|
||||
let uid = 0
|
||||
|
||||
export type FieldState<TData> = {
|
||||
|
||||
Reference in New Issue
Block a user