diff --git a/docs/core/comparison.md b/docs/comparison.md similarity index 100% rename from docs/core/comparison.md rename to docs/comparison.md diff --git a/docs/config.json b/docs/config.json index 1f8a7cd2f..f32786af4 100644 --- a/docs/config.json +++ b/docs/config.json @@ -10,19 +10,19 @@ "children": [ { "label": "Overview", - "to": "core/overview" + "to": "overview" }, { "label": "Installation", - "to": "core/installation" + "to": "installation" }, { "label": "Comparison", - "to": "core/comparison" + "to": "comparison" }, { "label": "TypeScript", - "to": "core/typescript" + "to": "typescript" } ] }, @@ -31,7 +31,7 @@ "children": [ { "label": "Important Defaults", - "to": "core/guides/important-defaults" + "to": "guides/important-defaults" } ] }, @@ -40,11 +40,11 @@ "children": [ { "label": "FormApi", - "to": "core/reference/formApi" + "to": "reference/formApi" }, { "label": "FieldApi", - "to": "core/reference/fieldApi" + "to": "reference/fieldApi" } ] } diff --git a/docs/react/quick-start.md b/docs/framework/react/quick-start.md similarity index 100% rename from docs/react/quick-start.md rename to docs/framework/react/quick-start.md diff --git a/docs/react/reference/Field.md b/docs/framework/react/reference/Field.md similarity index 100% rename from docs/react/reference/Field.md rename to docs/framework/react/reference/Field.md diff --git a/docs/react/reference/formApi.md b/docs/framework/react/reference/formApi.md similarity index 100% rename from docs/react/reference/formApi.md rename to docs/framework/react/reference/formApi.md diff --git a/docs/react/reference/useField.md b/docs/framework/react/reference/useField.md similarity index 100% rename from docs/react/reference/useField.md rename to docs/framework/react/reference/useField.md diff --git a/docs/react/reference/useForm.md b/docs/framework/react/reference/useForm.md similarity index 100% rename from docs/react/reference/useForm.md rename to docs/framework/react/reference/useForm.md diff --git a/docs/core/guides/important-defaults.md b/docs/guides/important-defaults.md similarity index 100% rename from docs/core/guides/important-defaults.md rename to docs/guides/important-defaults.md diff --git a/docs/core/installation.md b/docs/installation.md similarity index 100% rename from docs/core/installation.md rename to docs/installation.md diff --git a/docs/core/overview.md b/docs/overview.md similarity index 100% rename from docs/core/overview.md rename to docs/overview.md diff --git a/docs/core/reference/fieldApi.md b/docs/reference/fieldApi.md similarity index 86% rename from docs/core/reference/fieldApi.md rename to docs/reference/fieldApi.md index 61878b698..ad3c937a2 100644 --- a/docs/core/reference/fieldApi.md +++ b/docs/reference/fieldApi.md @@ -110,9 +110,9 @@ A class representing the API for managing a form field. - Gets a subfield instance. - `validate(): Promise` - Validates the field value. -- `getChangeProps>(props: T = {} as T): ChangeProps & Omit>` +- `getChangeProps>(props: T = {} as T): ChangeProps & Omit>` - Gets the change and blur event handlers. -- `getInputProps(props: T = {} as T): InputProps & Omit` +- `getInputProps(props: T = {} as T): InputProps & Omit` - Gets the input event handlers. ### `FieldState` @@ -124,6 +124,24 @@ An object type representing the state of a field. - `meta: FieldMeta` - The current metadata of the field. +### `UserChangeProps` + +An object type representing the change and blur event handlers for a field. + +- `onChange?: (updater: Updater) => void` + - An optional function to further handle the change event. +- `onBlur?: (event: any) => void` + - An optional function to further handle the blur event. + +### `UserInputProps` + +An object type representing the input event handlers for a field. + +- `onChange?: (event: any) => void` + - An optional function to further handle the change event. +- `onBlur?: (event: any) => void` + - An optional function to further handle the blur event. + ### `ChangeProps` An object type representing the change and blur event handlers for a field. diff --git a/docs/core/reference/formApi.md b/docs/reference/formApi.md similarity index 100% rename from docs/core/reference/formApi.md rename to docs/reference/formApi.md diff --git a/docs/core/typescript.md b/docs/typescript.md similarity index 100% rename from docs/core/typescript.md rename to docs/typescript.md diff --git a/packages/form-core/src/FieldApi.ts b/packages/form-core/src/FieldApi.ts index 05bbb24f3..73ccc9a25 100644 --- a/packages/form-core/src/FieldApi.ts +++ b/packages/form-core/src/FieldApi.ts @@ -31,16 +31,28 @@ export type FieldMeta = { isValidating: boolean } -export type ChangeProps = { +export type UserChangeProps = { onChange?: (updater: Updater) => void onBlur?: (event: any) => void } -export type InputProps = { +export type UserInputProps = { onChange?: (event: any) => void onBlur?: (event: any) => void } +export type ChangeProps = { + value: TData + onChange: (updater: Updater) => void + onBlur: (event: any) => void +} + +export type InputProps = { + value: string + onChange: (event: any) => void + onBlur: (event: any) => void +} + export type FieldApiOptions = RequiredByKey< FieldOptions, 'form' @@ -332,7 +344,7 @@ export class FieldApi { return undefined } - getChangeProps = >( + getChangeProps = >( props: T = {} as T, ): ChangeProps & Omit> => { return { @@ -350,7 +362,7 @@ export class FieldApi { } as ChangeProps & Omit> } - getInputProps = ( + getInputProps = ( props: T = {} as T, ): InputProps & Omit => { return {