Submit Flow
Form submission is coordinated by FluiKitForm and the parent FluiKit runtime.
Runtime sequence
- The form prevents the default browser submit.
- Computed field values are applied.
- Built-in validation runs.
- Registry validators run.
- Field transformers run.
schema.transform.requestruns.- The parent runtime executes create or update.
- Feedback, events, hooks, and list reloads are handled by
FluiKit.
Submit labels
TS
form: {
submitLabel: "Save user",
cancelLabel: "Discard"
}Defaults:
- Create form:
Create - Edit form:
Update - Cancel:
Cancel
Create and update handlers
Handlers can be resolved through actions, schema handlers, providers, or endpoints.
TS
export const usersSchema = {
resource: "users",
endpoint: {
create: "/api/users",
update: {
url: "/api/users/:id",
method: "PATCH"
}
},
actions: {
create: {
enabled: true,
label: "Create user"
},
edit: {
enabled: true,
label: "Edit"
}
}
} as const;Submit feedback
Successful create and update responses show success feedback and close the form.
Warning or error responses show feedback and keep the success close/reload flow from running.
JSON
{
"status": false,
"code": 422,
"message": "Email is already registered."
}Events
Form flows can emit:
formOpenedformSubmittedformSubmitSucceededformSubmitFailed
TS
export const usersSchema = {
resource: "users",
events: {
formSubmitted: "users.formSubmitted",
formSubmitSucceeded: "users.formSubmitSucceeded",
formSubmitFailed: "users.formSubmitFailed"
},
registry: {
events: [
"users.formSubmitted",
"users.formSubmitSucceeded",
"users.formSubmitFailed"
]
}
} as const;