Action Feedback and Messages
Actions usually produce feedback.
VibeFlui interprets backend-style responses and emits success or failure events.
Success response
JSON
{
"status": true,
"code": 200,
"message": "User updated successfully"
}Error response
JSON
{
"status": false,
"code": 422,
"message": "Email is already used"
}Warning response
JSON
{
"status": false,
"code": 409,
"message": "Manager approval is required"
}VibeFlui resolves status: false with a 400..499 code to warning before rendering FluiKitFeedback.
Schema feedback mode
TS
export const usersSchema = {
resource: "users",
feedback: {
enabled: true,
mode: "modal",
icons: {
success: "lucide:circle-check",
error: "lucide:circle-x",
warning: "lucide:triangle-alert"
}
},
actions: {
create: {
label: "Create user",
handler: "users.create"
}
}
} as const;Inline feedback
TS
feedback: {
enabled: true,
mode: "inline"
}Message priority
TS
messages: {
sourcePriority: ["backend", "schema", "resolver", "default"],
defaults: {
createSuccess: "User created successfully."
},
resolver: "users.messages"
}Backend messages should usually have highest priority.
Action events
Actions emit events:
actionClickedactionSucceededactionFailed
TS
export const usersSchema = {
resource: "users",
events: {
actionSucceeded: "users.actionSucceeded",
actionFailed: "users.actionFailed"
},
registry: {
events: ["users.actionSucceeded", "users.actionFailed"]
}
} as const;