open-webui/src/lib/components/common/Collapsible.svelte
Timothy J. Baek 73899e1c0d refac
2024-07-05 21:37:29 -07:00

19 lines
396 B
Svelte

<script lang="ts">
import { slide } from 'svelte/transition';
import { quintOut } from 'svelte/easing';
export let open = false;
export let className = '';
</script>
<div class={className}>
<button on:click={() => (open = !open)}>
<slot />
</button>
{#if open}
<div transition:slide={{ duration: 300, easing: quintOut, axis: 'y' }}>
<slot name="content" />
</div>
{/if}
</div>