Popover
matchWidth
direction="right" + align="center"
Svelte
<script>
let open = $state(false);
</script>
<Popover
bind:open
onclose={() => { open = false; }}
palette="tone"
rounded
elevation="subtle"
direction="bottom"
align="start"
>
{#snippet trigger()}
<Button onclick={() => { open = !open; }}>
Open popover
</Button>
{/snippet}
{#snippet children()}
<p>Popover content here</p>
{/snippet}
</Popover> API
package_2
import type { PopoverPalette, PopoverElevation, PopoverDirection, PopoverAlign } from '@abhc/spektral-ui';| Prop | Type | Default |
|---|---|---|
| open | boolean | false |
| onclose | () => void | — |
| direction | "top" | "bottom" | "left" | "right" | "bottom" |
| align | "start" | "center" | "end" | "start" |
| gap | string | "6px" |
| maxHeight | string | "320px" |
| width | string | — |
| matchWidth | boolean | false |
| palette | "tone" | "accent" | "accentbg" | "tone" |
| rounded | boolean | false |
| elevation | "none" | "subtle" | "hard" | "none" |
| trigger | Snippet | — |
| children | Snippet | — |
Prop open
Type
booleanDefault
falseProp onclose
Type
() => voidDefault
—Prop direction
Type
"top" | "bottom" | "left" | "right"Default
"bottom"Prop align
Type
"start" | "center" | "end"Default
"start"Prop gap
Type
stringDefault
"6px"Prop maxHeight
Type
stringDefault
"320px"Prop width
Type
stringDefault
—Prop matchWidth
Type
booleanDefault
falseProp palette
Type
"tone" | "accent" | "accentbg"Default
"tone"Prop rounded
Type
booleanDefault
falseProp elevation
Type
"none" | "subtle" | "hard"Default
"none"Prop trigger
Type
SnippetDefault
—Prop children
Type
SnippetDefault
—