Files
windmill/frontend/src/lib/components/common/toggleButton/ToggleButtonGroup.svelte
T
Faton Ramadani b5edb7ed98 App UI improvements (#1072)
* fix(frontend): Improve App UI

* fix(frontend):Align typing

* fix(frontend): Improve App UI

* fix(frontend): remove debug string

* fix(frontend): remove debug string

* fix(frontend): restore code from main
2023-01-06 17:46:45 +01:00

37 lines
862 B
Svelte

<script context="module" lang="ts">
export type ToggleButtonContext = {
selected: Writable<any>
select: (value: any) => void
}
</script>
<script lang="ts">
import { createEventDispatcher, setContext } from 'svelte'
import { writable, type Writable } from 'svelte/store'
export let selected: any
export let col = false
const dispatch = createEventDispatcher()
const selectedContent = writable(selected)
function setSelected(selected: any) {
selectedContent.set(selected)
}
$: setSelected(selected)
$: $selectedContent && dispatch('selected', $selectedContent)
setContext<ToggleButtonContext>('ToggleButtonGroup', {
selected: selectedContent,
select: (value: any) => {
selectedContent.set(value)
selected = value
}
})
</script>
<div class:flex-col={col} class="flex rounded-md {$$props.class}" role="group">
<slot />
</div>