UNPKG

ui-ingredients

Version:

Headless component library for Svelte powered by zag

12 lines (11 loc) 501 B
import * as clipboard from '@zag-js/clipboard'; import { normalizeProps, useMachine } from '@zag-js/svelte'; import { getEnvironmentContext } from '../EnvironmentProvider/EnvironmentProviderContext.svelte.js'; export function createClipboard(props) { const environment = getEnvironmentContext(); const service = useMachine(clipboard.machine, () => ({ getRootNode: environment?.().getRootNode, ...props(), })); return () => clipboard.connect(service, normalizeProps); }