About
A native-button-based web component with 4 variants (primary, secondary, danger, ghost),
3 sizes (sm, md, lg), loading spinner, disabled state, and prefix/suffix icon slots.
Fires ars-button:click with { variant } detail.
Variants
<ars-button variant="primary">Primary</ars-button>
<ars-button variant="secondary">Secondary</ars-button>
<ars-button variant="danger">Danger</ars-button>
<ars-button variant="ghost">Ghost</ars-button>
Sizes
<ars-button size="sm">Small</ars-button>
<ars-button size="md">Medium</ars-button>
<ars-button size="lg">Large</ars-button>
Loading State
<ars-button loading>Loading…</ars-button>
Disabled State
<ars-button disabled>Disabled</ars-button>
Prefix & Suffix Slots
<ars-button variant="primary">
<span slot="prefix">➕</span>
Add Item
</ars-button>
Button Types
<ars-button type="submit">Submit</ars-button>
Interactive — Toggle Loading
Event Monitor
Listening for ars-button:click…
Theme Toggle
Usage
<ars-button variant="danger" size="lg">Delete</ars-button>
<script type="module">
import { ArsButton } from 'ars-web-components';
document.querySelector('ars-button')
.addEventListener('ars-button:click', (e) => {
console.log('Variant:', e.detail.variant);
});
</script>