mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-08-18 16:02:10 +00:00
cdc76994f8
* feat(frontend): wip * feat(frontend): button refactor wip * feat(frontend): button refactor wip * feat(frontend): fix build * feat(frontend): fix build * fix(frontend): fix build * fix(frontend): fix buttons styles * fix(frontend): remove dev file * feat(frontend): clean up * feat(frontend): done * feat(frontend): done * feat(frontend): remove duplicated componnet * feat(frontend): wip * feat(frontend): wip * feat(frontend): forked Flow icons * feat(frontend): remove legacy dropdown * feat(frontend): migrated all + remove dependencies * feat(frontend): clean up
26 lines
639 B
Svelte
26 lines
639 B
Svelte
<script lang="ts">
|
|
import { Button } from './common'
|
|
import { slide } from 'svelte/transition'
|
|
import { twMerge } from 'tailwind-merge'
|
|
import { ChevronDown } from 'lucide-svelte'
|
|
|
|
export let open = false
|
|
export let text: string
|
|
export let small = false
|
|
</script>
|
|
|
|
<div class={twMerge('flex', $$props.class)}>
|
|
<Button
|
|
variant="border"
|
|
color="light"
|
|
btnClasses="text-primary {small ? 'text-xs' : ''} "
|
|
on:click={() => (open = !open)}
|
|
endIcon={{ icon: ChevronDown, classes: open ? 'transform rotate-180' : '' }}
|
|
>
|
|
{text}
|
|
</Button>
|
|
</div>
|
|
{#if open}
|
|
<div transition:slide|local={{ duration: 100 }}><slot /></div>
|
|
{/if}
|