shape
appearance
size
State
<button kuiButton type="button" appearance="primary">Save changes</button>| Name | Type | Default | Description |
|---|---|---|---|
| shape | 'solid' | 'soft' | 'outline' | 'ghost' | 'solid' | Surface treatment. Defaults to solid. Combines freely with appearance. |
| appearance | 'primary' | 'danger' | 'success' | 'warning' | null | null | Semantic color intent. Without an explicit value, solid/soft use primary colors and outline/ghost use neutral defaults. |
| size | 'xs' | 'sm' | 'md' | 'lg' | 'md' | Control height and spacing size. |
| wrap | boolean | false | Allows long button text to wrap instead of truncating in narrow containers. |
| disabled | boolean | false | Disables native button behavior. Anchor buttons receive aria-disabled and leave tab order. |
| loading | boolean | false | Centers a kui-loader spinner over the button content, preserves layout size, sets aria-busy, and behaves like disabled. |
| iconStart | KuiIconName | undefined | undefined | Renders a kui-icon resolved by name before the projected content, without hand-projecting kui-icon. |
| iconEnd | KuiIconName | undefined | undefined | Renders a kui-icon resolved by name after the projected content, without hand-projecting kui-icon. |
| kuiProvideButtonOptions(options) | Provider | - | Scopes repeated defaults for kuiButton and kuiIconButton. Local inputs win over button options, and button options win over root defaults.size. |
| KUI_BUTTON_OPTIONS | InjectionToken<KuiButtonOptions> | - | Provider token behind button-family defaults, with separate button and iconButton branches. |