# Button Component API A versatile button component with multiple variants, sizes, and states for all interactive needs. --- ## Installation ```toml # Cargo.toml [dependencies] shadcn-ui-leptos-button = "0.7" ``` ```rust use shadcn_ui_leptos_button::Button; ``` --- ## Import ```rust // Default theme use shadcn_ui_leptos_button::{ Button, ButtonVariant, ButtonSize, ButtonChildProps }; // New York theme use shadcn_ui_leptos_button::{ ButtonNewYork, ButtonVariantNewYork, ButtonSizeNewYork }; // Signal-managed variant use shadcn_ui_leptos_button::{ SignalManagedButton, SignalManagedButtonState }; ``` --- ## Component API ### Button #### Props | Prop | Type | Default | Description | |------|------|---------|-------------| | `variant` | `MaybeProp` | `Default` | Visual style variant | | `size` | `MaybeProp` | `Default` | Button size | | `on_click` | `Option>` | `None` | Click event handler | | `disabled` | `Signal` | `false` | Disable button interaction | | `loading` | `Signal` | `false` | Show loading spinner | | `class` | `MaybeProp` | `None` | Additional CSS classes | | `id` | `MaybeProp` | `None` | Unique identifier | | `style` | `Signal