mirror of
https://github.com/open-webui/open-webui
synced 2024-11-13 20:20:22 +00:00
43 lines
1.1 KiB
Svelte
43 lines
1.1 KiB
Svelte
<script lang="ts">
|
|
import { DropdownMenu } from 'bits-ui';
|
|
import { createEventDispatcher } from 'svelte';
|
|
|
|
import { flyAndScale } from '$lib/utils/transitions';
|
|
|
|
export let show = false;
|
|
const dispatch = createEventDispatcher();
|
|
</script>
|
|
|
|
<DropdownMenu.Root
|
|
bind:open={show}
|
|
onOpenChange={(state) => {
|
|
dispatch('change', state);
|
|
}}
|
|
>
|
|
<DropdownMenu.Trigger>
|
|
<slot />
|
|
</DropdownMenu.Trigger>
|
|
|
|
<slot name="content">
|
|
<DropdownMenu.Content
|
|
class="w-full max-w-[130px] rounded-lg px-1 py-1.5 border border-gray-700 z-50 bg-gray-850 text-white"
|
|
sideOffset={8}
|
|
side="bottom"
|
|
align="start"
|
|
transition={flyAndScale}
|
|
>
|
|
<DropdownMenu.Item class="flex items-center px-3 py-2 text-sm font-medium">
|
|
<div class="flex items-center">Profile</div>
|
|
</DropdownMenu.Item>
|
|
|
|
<DropdownMenu.Item class="flex items-center px-3 py-2 text-sm font-medium">
|
|
<div class="flex items-center">Profile</div>
|
|
</DropdownMenu.Item>
|
|
|
|
<DropdownMenu.Item class="flex items-center px-3 py-2 text-sm font-medium">
|
|
<div class="flex items-center">Profile</div>
|
|
</DropdownMenu.Item>
|
|
</DropdownMenu.Content>
|
|
</slot>
|
|
</DropdownMenu.Root>
|