UNPKG

ui-ingredients

Version:

Headless component library for Svelte powered by zag

15 lines (14 loc) 660 B
import * as popover from '@zag-js/popover'; import { normalizeProps, reflect, useMachine } from '@zag-js/svelte'; import { getEnvironmentContext } from '../environment-provider/enviroment-provider-context.svelte.js'; import { getLocaleContext } from '../locale-provider/locale-provider-context.svelte.js'; export function createPopover(props) { const locale = getLocaleContext(); const environment = getEnvironmentContext(); const service = useMachine(popover.machine, () => ({ dir: locale?.dir, getRootNode: environment?.getRootNode, ...props, })); return reflect(() => popover.connect(service, normalizeProps)); }