Composables
Form and Submission Composables
Schema loading, local state, validation schema, and submit workflow APIs.
useFormForgeSchema
Purpose: load a schema and optionally load versions.
const schemaLoader = useFormForgeSchema({
key: 'contact',
version: '3',
immediate: true,
loadVersions: true
})
Main API:
fetchSchema(options?)fetchVersions(options?)refresh(options?)
State:
schemaversionsloadingerror
useFormForgeGetForm
Purpose: imperative one-shot schema fetch.
const getter = useFormForgeGetForm()
const form = await getter.getForm({ key: 'contact' })
useFormForgeForm
Purpose: schema + reactive state + zod schema.
const form = useFormForgeForm({
key: 'contact',
immediate: true
})
Main API:
fetchSchema(options?)resetState()setFieldValue(name, value)replaceState(payload)
State:
schemastateloadinginitializederrorzodSchema
useFormForgeSubmit
Purpose: submit payloads with upload strategy selection.
const submitter = useFormForgeSubmit({
key: 'contact',
schema: () => form.schema.value,
state: () => form.state.value
})
await submitter.submit({
mode: 'staged',
test: true,
meta: {
source: 'landing-page'
}
})
Submit options:
mode:staged,managed,directversionmetatestendpointscopevalidateLocal
State:
submittingfieldErrorserrorresponse
useFormForgeSubmission
Compatibility alias around useFormForgeSubmit.