platform/packages/ui/src/components/ModeSelector.svelte
Pete Anøther 6d31c0f2e5
EZQMS-461: Add generics for ModeSelector and SpecialView ()
Signed-off-by: Petr Vyazovetskiy <develop.pit@gmail.com>
2024-01-25 16:18:22 +07:00

30 lines
669 B
Svelte

<script lang="ts" generics="T extends string">
import TabList from './TabList.svelte'
import { IModeSelector } from '../utils'
export let props: IModeSelector<T>
$: modeList = props.config.map((c) => {
return {
id: c[0],
labelIntl: c[1],
labelParams: c[2],
action: () => {
props.onChange(c[0])
}
}
})
</script>
<div class="ac-header withoutBackground tabs-start full">
<TabList
items={modeList}
selected={props.mode}
kind={'separated'}
adaptiveShrink={'sm'}
on:select={(result) => {
if (result.detail !== undefined && result.detail.action) result.detail.action()
}}
/>
</div>