UNPKG

@ark-ui/vue

Version:

A collection of unstyled, accessible UI components for Vue, utilizing state machines for seamless interaction.

40 lines (37 loc) 1.34 kB
import { defineComponent, mergeDefaults, computed, renderSlot } from 'vue'; import { RenderStrategyPropsProvider } from '../../utils/use-render-strategy.js'; import { useForwardExpose } from '../../utils/use-forward-expose.js'; import { useHoverCard } from './use-hover-card.js'; import { HoverCardProvider } from './use-hover-card-context.js'; const _sfc_main = /* @__PURE__ */ defineComponent({ __name: "hover-card-root", props: /* @__PURE__ */ mergeDefaults({ closeDelay: {}, defaultOpen: { type: Boolean }, disabled: { type: Boolean }, id: {}, ids: {}, open: { type: Boolean }, openDelay: {}, positioning: {}, lazyMount: { type: Boolean }, unmountOnExit: { type: Boolean } }, { defaultOpen: void 0, disabled: void 0, open: void 0 }), emits: ["focusOutside", "interactOutside", "openChange", "pointerDownOutside", "update:open"], setup(__props, { emit: __emit }) { const props = __props; const emits = __emit; const hoverCard = useHoverCard(props, emits); HoverCardProvider(hoverCard); RenderStrategyPropsProvider(computed(() => ({ lazyMount: props.lazyMount, unmountOnExit: props.unmountOnExit }))); useForwardExpose(); return (_ctx, _cache) => { return renderSlot(_ctx.$slots, "default"); }; } }); export { _sfc_main as default };