Copy
Ask AI
{
"type": "object",
"properties": {
"type": {
"const": "Button",
"default": "Button",
"type": "string"
},
"cssClass": {
"type": [
"string",
"null"
],
"default": null,
"description": "CSS/Tailwind classes for styling"
},
"label": {
"description": "Button text",
"type": "string"
},
"icon": {
"type": [
"string",
"null"
],
"default": null,
"description": "Lucide icon name (kebab-case, e.g. 'arrow-right')"
},
"variant": {
"default": "default",
"description": "Visual variant: default, destructive, outline, secondary, ghost, link",
"enum": [
"default",
"destructive",
"outline",
"secondary",
"ghost",
"link",
"success",
"warning",
"info"
],
"type": "string"
},
"size": {
"default": "default",
"description": "Size: default, sm, lg, icon",
"enum": [
"default",
"xs",
"sm",
"lg",
"icon",
"icon-xs",
"icon-sm",
"icon-lg"
],
"type": "string"
},
"disabled": {
"default": false,
"description": "Whether the button is disabled",
"type": "boolean"
},
"onClick": {
"$ref": "Action",
"description": "Action(s) to execute when clicked",
"default": null
}
},
"required": [
"type",
"label"
]
}