carbon-components-svelte/src/components/Tile/TileGroup.svelte
Eric Liu e886d772c7 refactor: use $$restProps API
- add ref prop for applicable components (#196)
- add slot to Content Switcher `Switch` component (#183)
- remove fillArray, css utilities
2020-07-19 05:49:40 -07:00

35 lines
786 B
Svelte

<script>
export let selected = undefined;
export let disabled = false;
export let legend = "";
import { createEventDispatcher, setContext } from "svelte";
import { writable } from "svelte/store";
const dispatch = createEventDispatcher();
const selectedValue = writable(selected);
setContext("TileGroup", {
selectedValue,
add: ({ checked, value }) => {
if (checked) {
selectedValue.set(value);
}
},
update: value => {
selectedValue.set(value);
}
});
$: selected = $selectedValue;
$: dispatch("select", $selectedValue);
</script>
<fieldset {disabled} class:bx--tile-group={true} {...$$restProps}>
{#if legend}
<legend class:bx--label={true}>{legend}</legend>
{/if}
<div>
<slot />
</div>
</fieldset>