component ButtonGroup { props { @event click = function @event select = function @event change = function items = [] value = "" size = "md" color = "primary" variant = "default" orientation = "horizontal" responsive = false attached = true selectable = false toolbar = false disabled = false ariaLabel = "Button group" class = "" } state selectedValue = value functions { function itemValue(item, index) { return item.value || item.label || String(index) } function selectItem(item, index) { previousValue = selectedValue nextValue = itemValue(item, index) $emit("select", { value: nextValue, previousValue: previousValue, item: item, index: index }) if (selectable && previousValue !== nextValue) { selectedValue = nextValue $emit("change", { value: nextValue, previousValue: previousValue, item: item, index: index }) } } } view {
{#if items} {#each items as item, index} {/each} {/if}
} }