mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-10-29 16:15:51 +00:00
28 lines
865 B
Svelte
28 lines
865 B
Svelte
<script lang="ts">
|
|
import { classNames } from '$lib/utils'
|
|
import { faRing } from '@fortawesome/free-solid-svg-icons'
|
|
import { getContext } from 'svelte'
|
|
import Button from '../button/Button.svelte'
|
|
import type { ToggleButtonContext } from './ToggleButtonGroup.svelte'
|
|
|
|
export let value: any
|
|
export let position: 'left' | 'center' | 'right'
|
|
|
|
const { select, selected } = getContext<ToggleButtonContext>('ToggleButtonGroup')
|
|
</script>
|
|
|
|
<Button
|
|
{...$$props}
|
|
on:click={() => select(value)}
|
|
btnClasses={classNames(
|
|
'border-gray-200 focus:ring-0 w-full',
|
|
position === 'left' ? 'rounded-none rounded-l-lg border' : '',
|
|
position === 'center' ? 'rounded-none border-t border-b' : '',
|
|
position === 'right' ? 'rounded-none rounded-r-md !border border-l-0' : ''
|
|
)}
|
|
color={$selected === value ? 'dark' : 'light'}
|
|
variant="contained"
|
|
>
|
|
<slot />
|
|
</Button>
|