ivt 0.3.3 → 0.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/accordion/index.mjs +19 -1
- package/dist/accordion/index.mjs.map +1 -1
- package/dist/alert/index.mjs +43 -1
- package/dist/alert/index.mjs.map +1 -1
- package/dist/alert-dialog/index.mjs +260 -1
- package/dist/alert-dialog/index.mjs.map +1 -1
- package/dist/avatar/index.mjs +164 -1
- package/dist/avatar/index.mjs.map +1 -1
- package/dist/badge/index.mjs +6 -1
- package/dist/badge/index.mjs.map +1 -1
- package/dist/base/index.mjs +760 -1
- package/dist/base/index.mjs.map +1 -1
- package/dist/button/index.mjs +6 -1
- package/dist/button/index.mjs.map +1 -1
- package/dist/calendar/index.mjs +11 -1
- package/dist/calendar/index.mjs.map +1 -1
- package/dist/card/index.mjs +55 -1
- package/dist/card/index.mjs.map +1 -1
- package/dist/chart/index.mjs +16696 -1
- package/dist/chart/index.mjs.map +1 -1
- package/dist/checkbox/index.mjs +223 -1
- package/dist/checkbox/index.mjs.map +1 -1
- package/dist/chunks/_commonjsHelpers-DKISyIRi.mjs +6 -0
- package/dist/chunks/_commonjsHelpers-DKISyIRi.mjs.map +1 -0
- package/dist/chunks/accordion-CK9Ucbko.mjs +455 -0
- package/dist/chunks/{accordion-CdshDFZC.mjs.map → accordion-CK9Ucbko.mjs.map} +1 -1
- package/dist/chunks/badge-CT_hmjd2.mjs +57 -0
- package/dist/chunks/{badge-BYqshEmA.mjs.map → badge-CT_hmjd2.mjs.map} +1 -1
- package/dist/chunks/bundle-mjs-CS-QKnOm.mjs +4491 -0
- package/dist/chunks/{bundle-mjs-9BXytT_r.mjs.map → bundle-mjs-CS-QKnOm.mjs.map} +1 -1
- package/dist/chunks/button-BHeYV17S.mjs +47 -0
- package/dist/chunks/{button-DrFZXJ7z.mjs.map → button-BHeYV17S.mjs.map} +1 -1
- package/dist/chunks/calendar-CU6HdJET.mjs +7106 -0
- package/dist/chunks/calendar-CU6HdJET.mjs.map +1 -0
- package/dist/chunks/check-B3pXhibW.mjs +15 -0
- package/dist/chunks/{check-CimnOyD7.mjs.map → check-B3pXhibW.mjs.map} +1 -1
- package/dist/chunks/chevron-down-BV5gvmUW.mjs +15 -0
- package/dist/chunks/{chevron-down-D3fvbjxE.mjs.map → chevron-down-BV5gvmUW.mjs.map} +1 -1
- package/dist/chunks/chevron-left-BjGcH2KQ.mjs +15 -0
- package/dist/chunks/{chevron-left-CrN7DlXg.mjs.map → chevron-left-BjGcH2KQ.mjs.map} +1 -1
- package/dist/chunks/chevron-right-DmZu0xvo.mjs +15 -0
- package/dist/chunks/{chevron-right-BMSCuDGK.mjs.map → chevron-right-DmZu0xvo.mjs.map} +1 -1
- package/dist/chunks/chevrons-up-down-COuCmfU7.mjs +22 -0
- package/dist/chunks/{chevrons-up-down-DBgvRkZm.mjs.map → chevrons-up-down-COuCmfU7.mjs.map} +1 -1
- package/dist/chunks/circle-BKsPjIbw.mjs +17 -0
- package/dist/chunks/{circle-CGqt18Bd.mjs.map → circle-BKsPjIbw.mjs.map} +1 -1
- package/dist/chunks/command-CUWr3X1X.mjs +611 -0
- package/dist/chunks/command-CUWr3X1X.mjs.map +1 -0
- package/dist/chunks/createLucideIcon-BSP_Jxu-.mjs +60 -0
- package/dist/chunks/{createLucideIcon-L-tld2uc.mjs.map → createLucideIcon-BSP_Jxu-.mjs.map} +1 -1
- package/dist/chunks/dialog-zZCazow7.mjs +80 -0
- package/dist/chunks/{dialog-36eqHzT3.mjs.map → dialog-zZCazow7.mjs.map} +1 -1
- package/dist/chunks/hover-card-C6WPsacG.mjs +274 -0
- package/dist/chunks/{hover-card-Cnd58du6.mjs.map → hover-card-C6WPsacG.mjs.map} +1 -1
- package/dist/chunks/index-3XcV7C7l.mjs +324 -0
- package/dist/chunks/{index-DUNcuWJE.mjs.map → index-3XcV7C7l.mjs.map} +1 -1
- package/dist/chunks/index-B1VVz0MP.mjs +266 -0
- package/dist/chunks/index-B1VVz0MP.mjs.map +1 -0
- package/dist/chunks/index-BFDafXar.mjs +2370 -0
- package/dist/chunks/index-BFDafXar.mjs.map +1 -0
- package/dist/chunks/index-BF_TaONY.mjs +859 -0
- package/dist/chunks/{index-DZHMFdr0.mjs.map → index-BF_TaONY.mjs.map} +1 -1
- package/dist/chunks/index-BOOPeiVs.mjs +34 -0
- package/dist/chunks/{index-D2sZp5OP.mjs.map → index-BOOPeiVs.mjs.map} +1 -1
- package/dist/chunks/index-BYijxgZz.mjs +12 -0
- package/dist/chunks/index-BYijxgZz.mjs.map +1 -0
- package/dist/chunks/index-BZyzz9k8.mjs +40 -0
- package/dist/chunks/index-BZyzz9k8.mjs.map +1 -0
- package/dist/chunks/index-Bgiaprdv.mjs +7 -0
- package/dist/chunks/{index-CLtWFQL5.mjs.map → index-Bgiaprdv.mjs.map} +1 -1
- package/dist/chunks/index-Bl6nVRXe.mjs +110 -0
- package/dist/chunks/{index-CCcl327A.mjs.map → index-Bl6nVRXe.mjs.map} +1 -1
- package/dist/chunks/index-BwQDLVf8.mjs +151 -0
- package/dist/chunks/index-BwQDLVf8.mjs.map +1 -0
- package/dist/chunks/index-CHyZo-Tj.mjs +1210 -0
- package/dist/chunks/index-CHyZo-Tj.mjs.map +1 -0
- package/dist/chunks/index-CZ7Wntp7.mjs +21 -0
- package/dist/chunks/index-CZ7Wntp7.mjs.map +1 -0
- package/dist/chunks/index-D1yPZAOL.mjs +13 -0
- package/dist/chunks/{index-CXszXOf_.mjs.map → index-D1yPZAOL.mjs.map} +1 -1
- package/dist/chunks/index-DIBl7n6R.mjs +145 -0
- package/dist/chunks/index-DIBl7n6R.mjs.map +1 -0
- package/dist/chunks/index-DRk0bB4A.mjs +216 -0
- package/dist/chunks/{index-LvOFIVGz.mjs.map → index-DRk0bB4A.mjs.map} +1 -1
- package/dist/chunks/index-DUFr75Kc.mjs +77 -0
- package/dist/chunks/{index-CybgQKpz.mjs.map → index-DUFr75Kc.mjs.map} +1 -1
- package/dist/chunks/index-DrnQ43fz.mjs +18 -0
- package/dist/chunks/{index-CRxQlsb9.mjs.map → index-DrnQ43fz.mjs.map} +1 -1
- package/dist/chunks/index-Dulm0stf.mjs +12 -0
- package/dist/chunks/{index-CU_y1XAz.mjs.map → index-Dulm0stf.mjs.map} +1 -1
- package/dist/chunks/index-fWnSEyU5.mjs +50 -0
- package/dist/chunks/{index-w9bxia3O.mjs.map → index-fWnSEyU5.mjs.map} +1 -1
- package/dist/chunks/index-tNc5GmLL.mjs +51 -0
- package/dist/chunks/{index-vmPXTidH.mjs.map → index-tNc5GmLL.mjs.map} +1 -1
- package/dist/chunks/input-D9-FhnGc.mjs +14 -0
- package/dist/chunks/{input-85UFztMJ.mjs.map → input-D9-FhnGc.mjs.map} +1 -1
- package/dist/chunks/label-CiJcd2F9.mjs +32 -0
- package/dist/chunks/{label-CICFzZIt.mjs.map → label-CiJcd2F9.mjs.map} +1 -1
- package/dist/chunks/pagination-SOhqOW7I.mjs +106 -0
- package/dist/chunks/{pagination-CReDQes6.mjs.map → pagination-SOhqOW7I.mjs.map} +1 -1
- package/dist/chunks/popover-WlYXFyUl.mjs +308 -0
- package/dist/chunks/{popover-Cn2ZTvKd.mjs.map → popover-WlYXFyUl.mjs.map} +1 -1
- package/dist/chunks/progress-DdBZJTQG.mjs +99 -0
- package/dist/chunks/{progress-CSxQH6-f.mjs.map → progress-DdBZJTQG.mjs.map} +1 -1
- package/dist/chunks/scroll-area-B2wNbBRR.mjs +791 -0
- package/dist/chunks/scroll-area-B2wNbBRR.mjs.map +1 -0
- package/dist/chunks/select-COGYOg3A.mjs +104 -0
- package/dist/chunks/{select-BR6_N_Yo.mjs.map → select-COGYOg3A.mjs.map} +1 -1
- package/dist/chunks/separator-D6Y96f4g.mjs +48 -0
- package/dist/chunks/{separator-BB6-E9Z1.mjs.map → separator-D6Y96f4g.mjs.map} +1 -1
- package/dist/chunks/skeleton-CRfBAk8U.mjs +13 -0
- package/dist/chunks/{skeleton-XPWWiaac.mjs.map → skeleton-CRfBAk8U.mjs.map} +1 -1
- package/dist/chunks/sortable-tiuZWf3S.mjs +4221 -0
- package/dist/chunks/sortable-tiuZWf3S.mjs.map +1 -0
- package/dist/chunks/table-BlTF56Yn.mjs +62 -0
- package/dist/chunks/{table-LQIHzPHi.mjs.map → table-BlTF56Yn.mjs.map} +1 -1
- package/dist/chunks/toggle-D5tCYA7L.mjs +65 -0
- package/dist/chunks/{toggle-Co72WXGd.mjs.map → toggle-D5tCYA7L.mjs.map} +1 -1
- package/dist/chunks/tooltip-BpTMPR5Q.mjs +596 -0
- package/dist/chunks/{tooltip-qX2HjdJP.mjs.map → tooltip-BpTMPR5Q.mjs.map} +1 -1
- package/dist/chunks/tslib.es6-O3UsmxNe.mjs +61 -0
- package/dist/chunks/{tslib.es6-cMGqxriw.mjs.map → tslib.es6-O3UsmxNe.mjs.map} +1 -1
- package/dist/chunks/utils-tbIgc9YG.mjs +42 -0
- package/dist/chunks/utils-tbIgc9YG.mjs.map +1 -0
- package/dist/chunks/x-5oL4uC6I.mjs +22 -0
- package/dist/chunks/{x-BNLl0E-E.mjs.map → x-5oL4uC6I.mjs.map} +1 -1
- package/dist/combobox/index.mjs +65 -1
- package/dist/combobox/index.mjs.map +1 -1
- package/dist/command/index.mjs +23 -1
- package/dist/command/index.mjs.map +1 -1
- package/dist/data-table/index.mjs +673 -1
- package/dist/data-table/index.mjs.map +1 -1
- package/dist/dialog/index.mjs +22 -1
- package/dist/dialog/index.mjs.map +1 -1
- package/dist/dropdown-menu/index.mjs +438 -1
- package/dist/dropdown-menu/index.mjs.map +1 -1
- package/dist/dropzone/index.mjs +7839 -1
- package/dist/dropzone/index.mjs.map +1 -1
- package/dist/form/index.mjs +649 -1
- package/dist/form/index.mjs.map +1 -1
- package/dist/hover-card/index.mjs +18 -1
- package/dist/hover-card/index.mjs.map +1 -1
- package/dist/icon/index.mjs +317 -1
- package/dist/icon/index.mjs.map +1 -1
- package/dist/index.css +1 -1
- package/dist/input/index.mjs +4 -1
- package/dist/input/index.mjs.map +1 -1
- package/dist/ivt.css +1 -1
- package/dist/label/index.mjs +8 -1
- package/dist/label/index.mjs.map +1 -1
- package/dist/menubar/index.mjs +583 -1
- package/dist/menubar/index.mjs.map +1 -1
- package/dist/multi-select/index.mjs +297 -1
- package/dist/multi-select/index.mjs.map +1 -1
- package/dist/pagination/index.mjs +10 -1
- package/dist/pagination/index.mjs.map +1 -1
- package/dist/popover/index.mjs +21 -1
- package/dist/popover/index.mjs.map +1 -1
- package/dist/progress/index.mjs +9 -1
- package/dist/progress/index.mjs.map +1 -1
- package/dist/radio-group/index.mjs +267 -1
- package/dist/radio-group/index.mjs.map +1 -1
- package/dist/scroll-area/index.mjs +15 -1
- package/dist/scroll-area/index.mjs.map +1 -1
- package/dist/select/index.mjs +8 -1
- package/dist/select/index.mjs.map +1 -1
- package/dist/separator/index.mjs +8 -1
- package/dist/separator/index.mjs.map +1 -1
- package/dist/sheet/index.mjs +96 -1
- package/dist/sheet/index.mjs.map +1 -1
- package/dist/skeleton/index.mjs +4 -1
- package/dist/skeleton/index.mjs.map +1 -1
- package/dist/sonner/index.mjs +1140 -1
- package/dist/sonner/index.mjs.map +1 -1
- package/dist/sortable/index.mjs +8 -1
- package/dist/sortable/index.mjs.map +1 -1
- package/dist/table/index.mjs +4 -1
- package/dist/table/index.mjs.map +1 -1
- package/dist/tabs/index.mjs +193 -1
- package/dist/tabs/index.mjs.map +1 -1
- package/dist/textarea/index.mjs +13 -1
- package/dist/textarea/index.mjs.map +1 -1
- package/dist/toast/index.mjs +705 -1
- package/dist/toast/index.mjs.map +1 -1
- package/dist/toggle/index.mjs +12 -1
- package/dist/toggle/index.mjs.map +1 -1
- package/dist/toggle-group/index.mjs +219 -1
- package/dist/toggle-group/index.mjs.map +1 -1
- package/dist/tooltip/index.mjs +20 -1
- package/dist/tooltip/index.mjs.map +1 -1
- package/package.json +6 -5
- package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs +0 -2
- package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs.map +0 -1
- package/dist/chunks/accordion-CdshDFZC.mjs +0 -2
- package/dist/chunks/badge-BYqshEmA.mjs +0 -2
- package/dist/chunks/bundle-mjs-9BXytT_r.mjs +0 -2
- package/dist/chunks/button-DrFZXJ7z.mjs +0 -2
- package/dist/chunks/calendar-BY6t8wdJ.mjs +0 -2
- package/dist/chunks/calendar-BY6t8wdJ.mjs.map +0 -1
- package/dist/chunks/check-CimnOyD7.mjs +0 -2
- package/dist/chunks/chevron-down-D3fvbjxE.mjs +0 -2
- package/dist/chunks/chevron-left-CrN7DlXg.mjs +0 -2
- package/dist/chunks/chevron-right-BMSCuDGK.mjs +0 -2
- package/dist/chunks/chevrons-up-down-DBgvRkZm.mjs +0 -2
- package/dist/chunks/circle-CGqt18Bd.mjs +0 -2
- package/dist/chunks/command-C6ON-ciq.mjs +0 -2
- package/dist/chunks/command-C6ON-ciq.mjs.map +0 -1
- package/dist/chunks/createLucideIcon-L-tld2uc.mjs +0 -2
- package/dist/chunks/dialog-36eqHzT3.mjs +0 -2
- package/dist/chunks/hover-card-Cnd58du6.mjs +0 -2
- package/dist/chunks/index-B4QsDzeM.mjs +0 -2
- package/dist/chunks/index-B4QsDzeM.mjs.map +0 -1
- package/dist/chunks/index-BdpYc58_.mjs +0 -2
- package/dist/chunks/index-BdpYc58_.mjs.map +0 -1
- package/dist/chunks/index-CCcl327A.mjs +0 -2
- package/dist/chunks/index-CLtWFQL5.mjs +0 -2
- package/dist/chunks/index-COvW87ew.mjs +0 -2
- package/dist/chunks/index-COvW87ew.mjs.map +0 -1
- package/dist/chunks/index-CRxQlsb9.mjs +0 -2
- package/dist/chunks/index-CU_y1XAz.mjs +0 -2
- package/dist/chunks/index-CXszXOf_.mjs +0 -2
- package/dist/chunks/index-CdJCOoFA.mjs +0 -2
- package/dist/chunks/index-CdJCOoFA.mjs.map +0 -1
- package/dist/chunks/index-Cpq7N5Ej.mjs +0 -2
- package/dist/chunks/index-Cpq7N5Ej.mjs.map +0 -1
- package/dist/chunks/index-CybgQKpz.mjs +0 -2
- package/dist/chunks/index-D2sZp5OP.mjs +0 -2
- package/dist/chunks/index-DOyt-JEx.mjs +0 -2
- package/dist/chunks/index-DOyt-JEx.mjs.map +0 -1
- package/dist/chunks/index-DUNcuWJE.mjs +0 -2
- package/dist/chunks/index-DZHMFdr0.mjs +0 -2
- package/dist/chunks/index-LvOFIVGz.mjs +0 -2
- package/dist/chunks/index-lvPXnk5F.mjs +0 -2
- package/dist/chunks/index-lvPXnk5F.mjs.map +0 -1
- package/dist/chunks/index-vmPXTidH.mjs +0 -2
- package/dist/chunks/index-w9bxia3O.mjs +0 -2
- package/dist/chunks/index-xew3kygQ.mjs +0 -2
- package/dist/chunks/index-xew3kygQ.mjs.map +0 -1
- package/dist/chunks/input-85UFztMJ.mjs +0 -2
- package/dist/chunks/label-CICFzZIt.mjs +0 -2
- package/dist/chunks/pagination-CReDQes6.mjs +0 -2
- package/dist/chunks/popover-Cn2ZTvKd.mjs +0 -2
- package/dist/chunks/progress-CSxQH6-f.mjs +0 -2
- package/dist/chunks/scroll-area-CvCz7cL_.mjs +0 -2
- package/dist/chunks/scroll-area-CvCz7cL_.mjs.map +0 -1
- package/dist/chunks/select-BR6_N_Yo.mjs +0 -2
- package/dist/chunks/separator-BB6-E9Z1.mjs +0 -2
- package/dist/chunks/skeleton-XPWWiaac.mjs +0 -2
- package/dist/chunks/sortable-CqPFGn8Q.mjs +0 -2
- package/dist/chunks/sortable-CqPFGn8Q.mjs.map +0 -1
- package/dist/chunks/table-LQIHzPHi.mjs +0 -2
- package/dist/chunks/toggle-Co72WXGd.mjs +0 -2
- package/dist/chunks/tooltip-qX2HjdJP.mjs +0 -2
- package/dist/chunks/tslib.es6-cMGqxriw.mjs +0 -2
- package/dist/chunks/utils-BctauAA9.mjs +0 -2
- package/dist/chunks/utils-BctauAA9.mjs.map +0 -1
- package/dist/chunks/x-BNLl0E-E.mjs +0 -2
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"hover-card-Cnd58du6.mjs","sources":["../../node_modules/@radix-ui/react-hover-card/dist/index.mjs","../../src/components/ui/hover-card/hover-card.tsx"],"sourcesContent":["\"use client\";\n\n// src/hover-card.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { jsx } from \"react/jsx-runtime\";\nvar originalBodyUserSelect;\nvar HOVERCARD_NAME = \"HoverCard\";\nvar [createHoverCardContext, createHoverCardScope] = createContextScope(HOVERCARD_NAME, [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [HoverCardProvider, useHoverCardContext] = createHoverCardContext(HOVERCARD_NAME);\nvar HoverCard = (props) => {\n const {\n __scopeHoverCard,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n openDelay = 700,\n closeDelay = 300\n } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n const openTimerRef = React.useRef(0);\n const closeTimerRef = React.useRef(0);\n const hasSelectionRef = React.useRef(false);\n const isPointerDownOnContentRef = React.useRef(false);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: HOVERCARD_NAME\n });\n const handleOpen = React.useCallback(() => {\n clearTimeout(closeTimerRef.current);\n openTimerRef.current = window.setTimeout(() => setOpen(true), openDelay);\n }, [openDelay, setOpen]);\n const handleClose = React.useCallback(() => {\n clearTimeout(openTimerRef.current);\n if (!hasSelectionRef.current && !isPointerDownOnContentRef.current) {\n closeTimerRef.current = window.setTimeout(() => setOpen(false), closeDelay);\n }\n }, [closeDelay, setOpen]);\n const handleDismiss = React.useCallback(() => setOpen(false), [setOpen]);\n React.useEffect(() => {\n return () => {\n clearTimeout(openTimerRef.current);\n clearTimeout(closeTimerRef.current);\n };\n }, []);\n return /* @__PURE__ */ jsx(\n HoverCardProvider,\n {\n scope: __scopeHoverCard,\n open,\n onOpenChange: setOpen,\n onOpen: handleOpen,\n onClose: handleClose,\n onDismiss: handleDismiss,\n hasSelectionRef,\n isPointerDownOnContentRef,\n children: /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children })\n }\n );\n};\nHoverCard.displayName = HOVERCARD_NAME;\nvar TRIGGER_NAME = \"HoverCardTrigger\";\nvar HoverCardTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...triggerProps } = props;\n const context = useHoverCardContext(TRIGGER_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.a,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...triggerProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n onFocus: composeEventHandlers(props.onFocus, context.onOpen),\n onBlur: composeEventHandlers(props.onBlur, context.onClose),\n onTouchStart: composeEventHandlers(props.onTouchStart, (event) => event.preventDefault())\n }\n ) });\n }\n);\nHoverCardTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"HoverCardPortal\";\nvar [PortalProvider, usePortalContext] = createHoverCardContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar HoverCardPortal = (props) => {\n const { __scopeHoverCard, forceMount, children, container } = props;\n const context = useHoverCardContext(PORTAL_NAME, __scopeHoverCard);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeHoverCard, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nHoverCardPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"HoverCardContent\";\nvar HoverCardContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeHoverCard);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useHoverCardContext(CONTENT_NAME, props.__scopeHoverCard);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(\n HoverCardContentImpl,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...contentProps,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n ref: forwardedRef\n }\n ) });\n }\n);\nHoverCardContent.displayName = CONTENT_NAME;\nvar HoverCardContentImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeHoverCard,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n ...contentProps\n } = props;\n const context = useHoverCardContext(CONTENT_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [containSelection, setContainSelection] = React.useState(false);\n React.useEffect(() => {\n if (containSelection) {\n const body = document.body;\n originalBodyUserSelect = body.style.userSelect || body.style.webkitUserSelect;\n body.style.userSelect = \"none\";\n body.style.webkitUserSelect = \"none\";\n return () => {\n body.style.userSelect = originalBodyUserSelect;\n body.style.webkitUserSelect = originalBodyUserSelect;\n };\n }\n }, [containSelection]);\n React.useEffect(() => {\n if (ref.current) {\n const handlePointerUp = () => {\n setContainSelection(false);\n context.isPointerDownOnContentRef.current = false;\n setTimeout(() => {\n const hasSelection = document.getSelection()?.toString() !== \"\";\n if (hasSelection) context.hasSelectionRef.current = true;\n });\n };\n document.addEventListener(\"pointerup\", handlePointerUp);\n return () => {\n document.removeEventListener(\"pointerup\", handlePointerUp);\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = false;\n };\n }\n }, [context.isPointerDownOnContentRef, context.hasSelectionRef]);\n React.useEffect(() => {\n if (ref.current) {\n const tabbables = getTabbableNodes(ref.current);\n tabbables.forEach((tabbable) => tabbable.setAttribute(\"tabindex\", \"-1\"));\n }\n });\n return /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: false,\n onInteractOutside,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: composeEventHandlers(onFocusOutside, (event) => {\n event.preventDefault();\n }),\n onDismiss: context.onDismiss,\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...contentProps,\n onPointerDown: composeEventHandlers(contentProps.onPointerDown, (event) => {\n if (event.currentTarget.contains(event.target)) {\n setContainSelection(true);\n }\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = true;\n }),\n ref: composedRefs,\n style: {\n ...contentProps.style,\n userSelect: containSelection ? \"text\" : void 0,\n // Safari requires prefix\n WebkitUserSelect: containSelection ? \"text\" : void 0,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-hover-card-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-hover-card-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-hover-card-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-hover-card-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-hover-card-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n )\n }\n );\n});\nvar ARROW_NAME = \"HoverCardArrow\";\nvar HoverCardArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nHoverCardArrow.displayName = ARROW_NAME;\nfunction excludeTouch(eventHandler) {\n return (event) => event.pointerType === \"touch\" ? void 0 : eventHandler();\n}\nfunction getTabbableNodes(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node) => {\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n }\n });\n while (walker.nextNode()) nodes.push(walker.currentNode);\n return nodes;\n}\nvar Root2 = HoverCard;\nvar Trigger = HoverCardTrigger;\nvar Portal = HoverCardPortal;\nvar Content2 = HoverCardContent;\nvar Arrow2 = HoverCardArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n HoverCard,\n HoverCardArrow,\n HoverCardContent,\n HoverCardPortal,\n HoverCardTrigger,\n Portal,\n Root2 as Root,\n Trigger,\n createHoverCardScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\nimport React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n\treturn <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\nfunction HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n\treturn <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />;\n}\n\nfunction HoverCardContent({\n\tclassName,\n\talign = \"center\",\n\tsideOffset = 4,\n\t...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n\treturn (\n\t\t<HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n\t\t\t<HoverCardPrimitive.Content\n\t\t\t\tdata-slot=\"hover-card-content\"\n\t\t\t\talign={align}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-64 rounded-md border p-4 shadow-md outline-hidden\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</HoverCardPrimitive.Portal>\n\t);\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"names":["originalBodyUserSelect","HOVERCARD_NAME","createHoverCardContext","createHoverCardScope","createContextScope","createPopperScope","usePopperScope","HoverCardProvider","useHoverCardContext","HoverCard","props","__scopeHoverCard","children","open","openProp","defaultOpen","onOpenChange","openDelay","closeDelay","popperScope","openTimerRef","React","useRef","closeTimerRef","hasSelectionRef","isPointerDownOnContentRef","setOpen","useControllableState","prop","defaultProp","onChange","caller","handleOpen","useCallback","clearTimeout","current","window","setTimeout","handleClose","handleDismiss","useEffect","jsx","scope","onOpen","onClose","onDismiss","PopperPrimitive.Root","displayName","TRIGGER_NAME","HoverCardTrigger","forwardRef","forwardedRef","triggerProps","context","PopperPrimitive.Anchor","asChild","Primitive","a","ref","onPointerEnter","composeEventHandlers","excludeTouch","onPointerLeave","onFocus","onBlur","onTouchStart","event","preventDefault","PORTAL_NAME","PortalProvider","usePortalContext","forceMount","HoverCardPortal","container","Presence","present","PortalPrimitive","CONTENT_NAME","HoverCardContent","portalContext","contentProps","HoverCardContentImpl","onEscapeKeyDown","onPointerDownOutside","onFocusOutside","onInteractOutside","composedRefs","useComposedRefs","containSelection","setContainSelection","useState","body","document","style","userSelect","webkitUserSelect","handlePointerUp","getSelection","toString","addEventListener","removeEventListener","nodes","walker","createTreeWalker","NodeFilter","SHOW_ELEMENT","acceptNode","node","tabIndex","FILTER_ACCEPT","FILTER_SKIP","nextNode","push","currentNode","getTabbableNodes","forEach","tabbable","setAttribute","DismissableLayer","disableOutsidePointerEvents","PopperPrimitive.Content","onPointerDown","currentTarget","contains","target","WebkitUserSelect","eventHandler","pointerType","arrowProps","PopperPrimitive.Arrow","Root","Trigger","Portal","Content","createElement","HoverCardPrimitive","data-slot","className","align","sideOffset","cn"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"hover-card-C6WPsacG.mjs","sources":["../../node_modules/@radix-ui/react-hover-card/dist/index.mjs","../../src/components/ui/hover-card/hover-card.tsx"],"sourcesContent":["\"use client\";\n\n// src/hover-card.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { jsx } from \"react/jsx-runtime\";\nvar originalBodyUserSelect;\nvar HOVERCARD_NAME = \"HoverCard\";\nvar [createHoverCardContext, createHoverCardScope] = createContextScope(HOVERCARD_NAME, [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [HoverCardProvider, useHoverCardContext] = createHoverCardContext(HOVERCARD_NAME);\nvar HoverCard = (props) => {\n const {\n __scopeHoverCard,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n openDelay = 700,\n closeDelay = 300\n } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n const openTimerRef = React.useRef(0);\n const closeTimerRef = React.useRef(0);\n const hasSelectionRef = React.useRef(false);\n const isPointerDownOnContentRef = React.useRef(false);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: HOVERCARD_NAME\n });\n const handleOpen = React.useCallback(() => {\n clearTimeout(closeTimerRef.current);\n openTimerRef.current = window.setTimeout(() => setOpen(true), openDelay);\n }, [openDelay, setOpen]);\n const handleClose = React.useCallback(() => {\n clearTimeout(openTimerRef.current);\n if (!hasSelectionRef.current && !isPointerDownOnContentRef.current) {\n closeTimerRef.current = window.setTimeout(() => setOpen(false), closeDelay);\n }\n }, [closeDelay, setOpen]);\n const handleDismiss = React.useCallback(() => setOpen(false), [setOpen]);\n React.useEffect(() => {\n return () => {\n clearTimeout(openTimerRef.current);\n clearTimeout(closeTimerRef.current);\n };\n }, []);\n return /* @__PURE__ */ jsx(\n HoverCardProvider,\n {\n scope: __scopeHoverCard,\n open,\n onOpenChange: setOpen,\n onOpen: handleOpen,\n onClose: handleClose,\n onDismiss: handleDismiss,\n hasSelectionRef,\n isPointerDownOnContentRef,\n children: /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children })\n }\n );\n};\nHoverCard.displayName = HOVERCARD_NAME;\nvar TRIGGER_NAME = \"HoverCardTrigger\";\nvar HoverCardTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...triggerProps } = props;\n const context = useHoverCardContext(TRIGGER_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.a,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...triggerProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n onFocus: composeEventHandlers(props.onFocus, context.onOpen),\n onBlur: composeEventHandlers(props.onBlur, context.onClose),\n onTouchStart: composeEventHandlers(props.onTouchStart, (event) => event.preventDefault())\n }\n ) });\n }\n);\nHoverCardTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"HoverCardPortal\";\nvar [PortalProvider, usePortalContext] = createHoverCardContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar HoverCardPortal = (props) => {\n const { __scopeHoverCard, forceMount, children, container } = props;\n const context = useHoverCardContext(PORTAL_NAME, __scopeHoverCard);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeHoverCard, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nHoverCardPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"HoverCardContent\";\nvar HoverCardContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeHoverCard);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useHoverCardContext(CONTENT_NAME, props.__scopeHoverCard);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(\n HoverCardContentImpl,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...contentProps,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n ref: forwardedRef\n }\n ) });\n }\n);\nHoverCardContent.displayName = CONTENT_NAME;\nvar HoverCardContentImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeHoverCard,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n ...contentProps\n } = props;\n const context = useHoverCardContext(CONTENT_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [containSelection, setContainSelection] = React.useState(false);\n React.useEffect(() => {\n if (containSelection) {\n const body = document.body;\n originalBodyUserSelect = body.style.userSelect || body.style.webkitUserSelect;\n body.style.userSelect = \"none\";\n body.style.webkitUserSelect = \"none\";\n return () => {\n body.style.userSelect = originalBodyUserSelect;\n body.style.webkitUserSelect = originalBodyUserSelect;\n };\n }\n }, [containSelection]);\n React.useEffect(() => {\n if (ref.current) {\n const handlePointerUp = () => {\n setContainSelection(false);\n context.isPointerDownOnContentRef.current = false;\n setTimeout(() => {\n const hasSelection = document.getSelection()?.toString() !== \"\";\n if (hasSelection) context.hasSelectionRef.current = true;\n });\n };\n document.addEventListener(\"pointerup\", handlePointerUp);\n return () => {\n document.removeEventListener(\"pointerup\", handlePointerUp);\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = false;\n };\n }\n }, [context.isPointerDownOnContentRef, context.hasSelectionRef]);\n React.useEffect(() => {\n if (ref.current) {\n const tabbables = getTabbableNodes(ref.current);\n tabbables.forEach((tabbable) => tabbable.setAttribute(\"tabindex\", \"-1\"));\n }\n });\n return /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: false,\n onInteractOutside,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: composeEventHandlers(onFocusOutside, (event) => {\n event.preventDefault();\n }),\n onDismiss: context.onDismiss,\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...contentProps,\n onPointerDown: composeEventHandlers(contentProps.onPointerDown, (event) => {\n if (event.currentTarget.contains(event.target)) {\n setContainSelection(true);\n }\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = true;\n }),\n ref: composedRefs,\n style: {\n ...contentProps.style,\n userSelect: containSelection ? \"text\" : void 0,\n // Safari requires prefix\n WebkitUserSelect: containSelection ? \"text\" : void 0,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-hover-card-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-hover-card-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-hover-card-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-hover-card-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-hover-card-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n )\n }\n );\n});\nvar ARROW_NAME = \"HoverCardArrow\";\nvar HoverCardArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nHoverCardArrow.displayName = ARROW_NAME;\nfunction excludeTouch(eventHandler) {\n return (event) => event.pointerType === \"touch\" ? void 0 : eventHandler();\n}\nfunction getTabbableNodes(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node) => {\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n }\n });\n while (walker.nextNode()) nodes.push(walker.currentNode);\n return nodes;\n}\nvar Root2 = HoverCard;\nvar Trigger = HoverCardTrigger;\nvar Portal = HoverCardPortal;\nvar Content2 = HoverCardContent;\nvar Arrow2 = HoverCardArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n HoverCard,\n HoverCardArrow,\n HoverCardContent,\n HoverCardPortal,\n HoverCardTrigger,\n Portal,\n Root2 as Root,\n Trigger,\n createHoverCardScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\nimport React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n\treturn <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\nfunction HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n\treturn <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />;\n}\n\nfunction HoverCardContent({\n\tclassName,\n\talign = \"center\",\n\tsideOffset = 4,\n\t...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n\treturn (\n\t\t<HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n\t\t\t<HoverCardPrimitive.Content\n\t\t\t\tdata-slot=\"hover-card-content\"\n\t\t\t\talign={align}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-64 rounded-md border p-4 shadow-md outline-hidden\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</HoverCardPrimitive.Portal>\n\t);\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"names":["HoverCard","PopperPrimitive.Root","HoverCardTrigger","PopperPrimitive.Anchor","PortalPrimitive","HoverCardContent","PopperPrimitive.Content","PopperPrimitive.Arrow","Root","Content","props","React","HoverCardPrimitive","data-slot","className","align","sideOffset","cn"],"mappings":"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","x_google_ignoreList":[0]}
|
@@ -0,0 +1,324 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import { c as composeEventHandlers } from './index-BYijxgZz.mjs';
|
3
|
+
import { u as useComposedRefs } from './index-BZyzz9k8.mjs';
|
4
|
+
import { c as createContextScope, a as createContext2 } from './index-Bl6nVRXe.mjs';
|
5
|
+
import { u as useId } from './index-DrnQ43fz.mjs';
|
6
|
+
import { u as useControllableState } from './index-DUFr75Kc.mjs';
|
7
|
+
import { P as Portal$1, D as DismissableLayer } from './index-B1VVz0MP.mjs';
|
8
|
+
import { h as hideOthers, R as ReactRemoveScroll, u as useFocusGuards, F as FocusScope } from './index-CHyZo-Tj.mjs';
|
9
|
+
import { P as Presence } from './index-DIBl7n6R.mjs';
|
10
|
+
import { P as Primitive } from './index-fWnSEyU5.mjs';
|
11
|
+
import { createSlot } from '@radix-ui/react-slot';
|
12
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
13
|
+
|
14
|
+
var DIALOG_NAME = "Dialog";
|
15
|
+
var [createDialogContext, createDialogScope] = createContextScope(DIALOG_NAME);
|
16
|
+
var [DialogProvider, useDialogContext] = createDialogContext(DIALOG_NAME);
|
17
|
+
var Dialog = (props)=>{
|
18
|
+
const { __scopeDialog, children, open: openProp, defaultOpen, onOpenChange, modal = true } = props;
|
19
|
+
const triggerRef = React.useRef(null);
|
20
|
+
const contentRef = React.useRef(null);
|
21
|
+
const [open, setOpen] = useControllableState({
|
22
|
+
prop: openProp,
|
23
|
+
defaultProp: defaultOpen ?? false,
|
24
|
+
onChange: onOpenChange,
|
25
|
+
caller: DIALOG_NAME
|
26
|
+
});
|
27
|
+
return /* @__PURE__ */ jsx(DialogProvider, {
|
28
|
+
scope: __scopeDialog,
|
29
|
+
triggerRef,
|
30
|
+
contentRef,
|
31
|
+
contentId: useId(),
|
32
|
+
titleId: useId(),
|
33
|
+
descriptionId: useId(),
|
34
|
+
open,
|
35
|
+
onOpenChange: setOpen,
|
36
|
+
onOpenToggle: React.useCallback(()=>setOpen((prevOpen)=>!prevOpen), [
|
37
|
+
setOpen
|
38
|
+
]),
|
39
|
+
modal,
|
40
|
+
children
|
41
|
+
});
|
42
|
+
};
|
43
|
+
Dialog.displayName = DIALOG_NAME;
|
44
|
+
var TRIGGER_NAME = "DialogTrigger";
|
45
|
+
var DialogTrigger = React.forwardRef((props, forwardedRef)=>{
|
46
|
+
const { __scopeDialog, ...triggerProps } = props;
|
47
|
+
const context = useDialogContext(TRIGGER_NAME, __scopeDialog);
|
48
|
+
const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);
|
49
|
+
return /* @__PURE__ */ jsx(Primitive.button, {
|
50
|
+
type: "button",
|
51
|
+
"aria-haspopup": "dialog",
|
52
|
+
"aria-expanded": context.open,
|
53
|
+
"aria-controls": context.contentId,
|
54
|
+
"data-state": getState(context.open),
|
55
|
+
...triggerProps,
|
56
|
+
ref: composedTriggerRef,
|
57
|
+
onClick: composeEventHandlers(props.onClick, context.onOpenToggle)
|
58
|
+
});
|
59
|
+
});
|
60
|
+
DialogTrigger.displayName = TRIGGER_NAME;
|
61
|
+
var PORTAL_NAME = "DialogPortal";
|
62
|
+
var [PortalProvider, usePortalContext] = createDialogContext(PORTAL_NAME, {
|
63
|
+
forceMount: void 0
|
64
|
+
});
|
65
|
+
var DialogPortal = (props)=>{
|
66
|
+
const { __scopeDialog, forceMount, children, container } = props;
|
67
|
+
const context = useDialogContext(PORTAL_NAME, __scopeDialog);
|
68
|
+
return /* @__PURE__ */ jsx(PortalProvider, {
|
69
|
+
scope: __scopeDialog,
|
70
|
+
forceMount,
|
71
|
+
children: React.Children.map(children, (child)=>/* @__PURE__ */ jsx(Presence, {
|
72
|
+
present: forceMount || context.open,
|
73
|
+
children: /* @__PURE__ */ jsx(Portal$1, {
|
74
|
+
asChild: true,
|
75
|
+
container,
|
76
|
+
children: child
|
77
|
+
})
|
78
|
+
}))
|
79
|
+
});
|
80
|
+
};
|
81
|
+
DialogPortal.displayName = PORTAL_NAME;
|
82
|
+
var OVERLAY_NAME = "DialogOverlay";
|
83
|
+
var DialogOverlay = React.forwardRef((props, forwardedRef)=>{
|
84
|
+
const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);
|
85
|
+
const { forceMount = portalContext.forceMount, ...overlayProps } = props;
|
86
|
+
const context = useDialogContext(OVERLAY_NAME, props.__scopeDialog);
|
87
|
+
return context.modal ? /* @__PURE__ */ jsx(Presence, {
|
88
|
+
present: forceMount || context.open,
|
89
|
+
children: /* @__PURE__ */ jsx(DialogOverlayImpl, {
|
90
|
+
...overlayProps,
|
91
|
+
ref: forwardedRef
|
92
|
+
})
|
93
|
+
}) : null;
|
94
|
+
});
|
95
|
+
DialogOverlay.displayName = OVERLAY_NAME;
|
96
|
+
var Slot = createSlot("DialogOverlay.RemoveScroll");
|
97
|
+
var DialogOverlayImpl = React.forwardRef((props, forwardedRef)=>{
|
98
|
+
const { __scopeDialog, ...overlayProps } = props;
|
99
|
+
const context = useDialogContext(OVERLAY_NAME, __scopeDialog);
|
100
|
+
return(// Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`
|
101
|
+
// ie. when `Overlay` and `Content` are siblings
|
102
|
+
/* @__PURE__ */ jsx(ReactRemoveScroll, {
|
103
|
+
as: Slot,
|
104
|
+
allowPinchZoom: true,
|
105
|
+
shards: [
|
106
|
+
context.contentRef
|
107
|
+
],
|
108
|
+
children: /* @__PURE__ */ jsx(Primitive.div, {
|
109
|
+
"data-state": getState(context.open),
|
110
|
+
...overlayProps,
|
111
|
+
ref: forwardedRef,
|
112
|
+
style: {
|
113
|
+
pointerEvents: "auto",
|
114
|
+
...overlayProps.style
|
115
|
+
}
|
116
|
+
})
|
117
|
+
}));
|
118
|
+
});
|
119
|
+
var CONTENT_NAME = "DialogContent";
|
120
|
+
var DialogContent = React.forwardRef((props, forwardedRef)=>{
|
121
|
+
const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);
|
122
|
+
const { forceMount = portalContext.forceMount, ...contentProps } = props;
|
123
|
+
const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
|
124
|
+
return /* @__PURE__ */ jsx(Presence, {
|
125
|
+
present: forceMount || context.open,
|
126
|
+
children: context.modal ? /* @__PURE__ */ jsx(DialogContentModal, {
|
127
|
+
...contentProps,
|
128
|
+
ref: forwardedRef
|
129
|
+
}) : /* @__PURE__ */ jsx(DialogContentNonModal, {
|
130
|
+
...contentProps,
|
131
|
+
ref: forwardedRef
|
132
|
+
})
|
133
|
+
});
|
134
|
+
});
|
135
|
+
DialogContent.displayName = CONTENT_NAME;
|
136
|
+
var DialogContentModal = React.forwardRef((props, forwardedRef)=>{
|
137
|
+
const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
|
138
|
+
const contentRef = React.useRef(null);
|
139
|
+
const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);
|
140
|
+
React.useEffect(()=>{
|
141
|
+
const content = contentRef.current;
|
142
|
+
if (content) return hideOthers(content);
|
143
|
+
}, []);
|
144
|
+
return /* @__PURE__ */ jsx(DialogContentImpl, {
|
145
|
+
...props,
|
146
|
+
ref: composedRefs,
|
147
|
+
trapFocus: context.open,
|
148
|
+
disableOutsidePointerEvents: true,
|
149
|
+
onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event)=>{
|
150
|
+
event.preventDefault();
|
151
|
+
context.triggerRef.current?.focus();
|
152
|
+
}),
|
153
|
+
onPointerDownOutside: composeEventHandlers(props.onPointerDownOutside, (event)=>{
|
154
|
+
const originalEvent = event.detail.originalEvent;
|
155
|
+
const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;
|
156
|
+
const isRightClick = originalEvent.button === 2 || ctrlLeftClick;
|
157
|
+
if (isRightClick) event.preventDefault();
|
158
|
+
}),
|
159
|
+
onFocusOutside: composeEventHandlers(props.onFocusOutside, (event)=>event.preventDefault())
|
160
|
+
});
|
161
|
+
});
|
162
|
+
var DialogContentNonModal = React.forwardRef((props, forwardedRef)=>{
|
163
|
+
const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);
|
164
|
+
const hasInteractedOutsideRef = React.useRef(false);
|
165
|
+
const hasPointerDownOutsideRef = React.useRef(false);
|
166
|
+
return /* @__PURE__ */ jsx(DialogContentImpl, {
|
167
|
+
...props,
|
168
|
+
ref: forwardedRef,
|
169
|
+
trapFocus: false,
|
170
|
+
disableOutsidePointerEvents: false,
|
171
|
+
onCloseAutoFocus: (event)=>{
|
172
|
+
props.onCloseAutoFocus?.(event);
|
173
|
+
if (!event.defaultPrevented) {
|
174
|
+
if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();
|
175
|
+
event.preventDefault();
|
176
|
+
}
|
177
|
+
hasInteractedOutsideRef.current = false;
|
178
|
+
hasPointerDownOutsideRef.current = false;
|
179
|
+
},
|
180
|
+
onInteractOutside: (event)=>{
|
181
|
+
props.onInteractOutside?.(event);
|
182
|
+
if (!event.defaultPrevented) {
|
183
|
+
hasInteractedOutsideRef.current = true;
|
184
|
+
if (event.detail.originalEvent.type === "pointerdown") {
|
185
|
+
hasPointerDownOutsideRef.current = true;
|
186
|
+
}
|
187
|
+
}
|
188
|
+
const target = event.target;
|
189
|
+
const targetIsTrigger = context.triggerRef.current?.contains(target);
|
190
|
+
if (targetIsTrigger) event.preventDefault();
|
191
|
+
if (event.detail.originalEvent.type === "focusin" && hasPointerDownOutsideRef.current) {
|
192
|
+
event.preventDefault();
|
193
|
+
}
|
194
|
+
}
|
195
|
+
});
|
196
|
+
});
|
197
|
+
var DialogContentImpl = React.forwardRef((props, forwardedRef)=>{
|
198
|
+
const { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus, ...contentProps } = props;
|
199
|
+
const context = useDialogContext(CONTENT_NAME, __scopeDialog);
|
200
|
+
const contentRef = React.useRef(null);
|
201
|
+
const composedRefs = useComposedRefs(forwardedRef, contentRef);
|
202
|
+
useFocusGuards();
|
203
|
+
return /* @__PURE__ */ jsxs(Fragment, {
|
204
|
+
children: [
|
205
|
+
/* @__PURE__ */ jsx(FocusScope, {
|
206
|
+
asChild: true,
|
207
|
+
loop: true,
|
208
|
+
trapped: trapFocus,
|
209
|
+
onMountAutoFocus: onOpenAutoFocus,
|
210
|
+
onUnmountAutoFocus: onCloseAutoFocus,
|
211
|
+
children: /* @__PURE__ */ jsx(DismissableLayer, {
|
212
|
+
role: "dialog",
|
213
|
+
id: context.contentId,
|
214
|
+
"aria-describedby": context.descriptionId,
|
215
|
+
"aria-labelledby": context.titleId,
|
216
|
+
"data-state": getState(context.open),
|
217
|
+
...contentProps,
|
218
|
+
ref: composedRefs,
|
219
|
+
onDismiss: ()=>context.onOpenChange(false)
|
220
|
+
})
|
221
|
+
}),
|
222
|
+
/* @__PURE__ */ jsxs(Fragment, {
|
223
|
+
children: [
|
224
|
+
/* @__PURE__ */ jsx(TitleWarning, {
|
225
|
+
titleId: context.titleId
|
226
|
+
}),
|
227
|
+
/* @__PURE__ */ jsx(DescriptionWarning, {
|
228
|
+
contentRef,
|
229
|
+
descriptionId: context.descriptionId
|
230
|
+
})
|
231
|
+
]
|
232
|
+
})
|
233
|
+
]
|
234
|
+
});
|
235
|
+
});
|
236
|
+
var TITLE_NAME = "DialogTitle";
|
237
|
+
var DialogTitle = React.forwardRef((props, forwardedRef)=>{
|
238
|
+
const { __scopeDialog, ...titleProps } = props;
|
239
|
+
const context = useDialogContext(TITLE_NAME, __scopeDialog);
|
240
|
+
return /* @__PURE__ */ jsx(Primitive.h2, {
|
241
|
+
id: context.titleId,
|
242
|
+
...titleProps,
|
243
|
+
ref: forwardedRef
|
244
|
+
});
|
245
|
+
});
|
246
|
+
DialogTitle.displayName = TITLE_NAME;
|
247
|
+
var DESCRIPTION_NAME = "DialogDescription";
|
248
|
+
var DialogDescription = React.forwardRef((props, forwardedRef)=>{
|
249
|
+
const { __scopeDialog, ...descriptionProps } = props;
|
250
|
+
const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);
|
251
|
+
return /* @__PURE__ */ jsx(Primitive.p, {
|
252
|
+
id: context.descriptionId,
|
253
|
+
...descriptionProps,
|
254
|
+
ref: forwardedRef
|
255
|
+
});
|
256
|
+
});
|
257
|
+
DialogDescription.displayName = DESCRIPTION_NAME;
|
258
|
+
var CLOSE_NAME = "DialogClose";
|
259
|
+
var DialogClose = React.forwardRef((props, forwardedRef)=>{
|
260
|
+
const { __scopeDialog, ...closeProps } = props;
|
261
|
+
const context = useDialogContext(CLOSE_NAME, __scopeDialog);
|
262
|
+
return /* @__PURE__ */ jsx(Primitive.button, {
|
263
|
+
type: "button",
|
264
|
+
...closeProps,
|
265
|
+
ref: forwardedRef,
|
266
|
+
onClick: composeEventHandlers(props.onClick, ()=>context.onOpenChange(false))
|
267
|
+
});
|
268
|
+
});
|
269
|
+
DialogClose.displayName = CLOSE_NAME;
|
270
|
+
function getState(open) {
|
271
|
+
return open ? "open" : "closed";
|
272
|
+
}
|
273
|
+
var TITLE_WARNING_NAME = "DialogTitleWarning";
|
274
|
+
var [WarningProvider, useWarningContext] = createContext2(TITLE_WARNING_NAME, {
|
275
|
+
contentName: CONTENT_NAME,
|
276
|
+
titleName: TITLE_NAME,
|
277
|
+
docsSlug: "dialog"
|
278
|
+
});
|
279
|
+
var TitleWarning = ({ titleId })=>{
|
280
|
+
const titleWarningContext = useWarningContext(TITLE_WARNING_NAME);
|
281
|
+
const MESSAGE = `\`${titleWarningContext.contentName}\` requires a \`${titleWarningContext.titleName}\` for the component to be accessible for screen reader users.
|
282
|
+
|
283
|
+
If you want to hide the \`${titleWarningContext.titleName}\`, you can wrap it with our VisuallyHidden component.
|
284
|
+
|
285
|
+
For more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;
|
286
|
+
React.useEffect(()=>{
|
287
|
+
if (titleId) {
|
288
|
+
const hasTitle = document.getElementById(titleId);
|
289
|
+
if (!hasTitle) console.error(MESSAGE);
|
290
|
+
}
|
291
|
+
}, [
|
292
|
+
MESSAGE,
|
293
|
+
titleId
|
294
|
+
]);
|
295
|
+
return null;
|
296
|
+
};
|
297
|
+
var DESCRIPTION_WARNING_NAME = "DialogDescriptionWarning";
|
298
|
+
var DescriptionWarning = ({ contentRef, descriptionId })=>{
|
299
|
+
const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);
|
300
|
+
const MESSAGE = `Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${descriptionWarningContext.contentName}}.`;
|
301
|
+
React.useEffect(()=>{
|
302
|
+
const describedById = contentRef.current?.getAttribute("aria-describedby");
|
303
|
+
if (descriptionId && describedById) {
|
304
|
+
const hasDescription = document.getElementById(descriptionId);
|
305
|
+
if (!hasDescription) console.warn(MESSAGE);
|
306
|
+
}
|
307
|
+
}, [
|
308
|
+
MESSAGE,
|
309
|
+
contentRef,
|
310
|
+
descriptionId
|
311
|
+
]);
|
312
|
+
return null;
|
313
|
+
};
|
314
|
+
var Root = Dialog;
|
315
|
+
var Trigger = DialogTrigger;
|
316
|
+
var Portal = DialogPortal;
|
317
|
+
var Overlay = DialogOverlay;
|
318
|
+
var Content = DialogContent;
|
319
|
+
var Title = DialogTitle;
|
320
|
+
var Description = DialogDescription;
|
321
|
+
var Close = DialogClose;
|
322
|
+
|
323
|
+
export { Close as C, Description as D, Overlay as O, Portal as P, Root as R, Title as T, WarningProvider as W, Content as a, Trigger as b, createDialogScope as c };
|
324
|
+
//# sourceMappingURL=index-3XcV7C7l.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index-DUNcuWJE.mjs","sources":["../../node_modules/@radix-ui/react-dialog/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/dialog.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContext, createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { hideOthers } from \"aria-hidden\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar DIALOG_NAME = \"Dialog\";\nvar [createDialogContext, createDialogScope] = createContextScope(DIALOG_NAME);\nvar [DialogProvider, useDialogContext] = createDialogContext(DIALOG_NAME);\nvar Dialog = (props) => {\n const {\n __scopeDialog,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n modal = true\n } = props;\n const triggerRef = React.useRef(null);\n const contentRef = React.useRef(null);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: DIALOG_NAME\n });\n return /* @__PURE__ */ jsx(\n DialogProvider,\n {\n scope: __scopeDialog,\n triggerRef,\n contentRef,\n contentId: useId(),\n titleId: useId(),\n descriptionId: useId(),\n open,\n onOpenChange: setOpen,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n modal,\n children\n }\n );\n};\nDialog.displayName = DIALOG_NAME;\nvar TRIGGER_NAME = \"DialogTrigger\";\nvar DialogTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...triggerProps } = props;\n const context = useDialogContext(TRIGGER_NAME, __scopeDialog);\n const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": context.open,\n \"aria-controls\": context.contentId,\n \"data-state\": getState(context.open),\n ...triggerProps,\n ref: composedTriggerRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }\n);\nDialogTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"DialogPortal\";\nvar [PortalProvider, usePortalContext] = createDialogContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar DialogPortal = (props) => {\n const { __scopeDialog, forceMount, children, container } = props;\n const context = useDialogContext(PORTAL_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeDialog, forceMount, children: React.Children.map(children, (child) => /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children: child }) })) });\n};\nDialogPortal.displayName = PORTAL_NAME;\nvar OVERLAY_NAME = \"DialogOverlay\";\nvar DialogOverlay = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, props.__scopeDialog);\n return context.modal ? /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(DialogOverlayImpl, { ...overlayProps, ref: forwardedRef }) }) : null;\n }\n);\nDialogOverlay.displayName = OVERLAY_NAME;\nvar Slot = createSlot(\"DialogOverlay.RemoveScroll\");\nvar DialogOverlayImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, __scopeDialog);\n return (\n // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`\n // ie. when `Overlay` and `Content` are siblings\n /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, shards: [context.contentRef], children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n ...overlayProps,\n ref: forwardedRef,\n style: { pointerEvents: \"auto\", ...overlayProps.style }\n }\n ) })\n );\n }\n);\nvar CONTENT_NAME = \"DialogContent\";\nvar DialogContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(DialogContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(DialogContentNonModal, { ...contentProps, ref: forwardedRef }) });\n }\n);\nDialogContent.displayName = CONTENT_NAME;\nvar DialogContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);\n React.useEffect(() => {\n const content = contentRef.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: true,\n onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n context.triggerRef.current?.focus();\n }),\n onPointerDownOutside: composeEventHandlers(props.onPointerDownOutside, (event) => {\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n if (isRightClick) event.preventDefault();\n }),\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault()\n )\n }\n );\n }\n);\nvar DialogContentNonModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const hasInteractedOutsideRef = React.useRef(false);\n const hasPointerDownOutsideRef = React.useRef(false);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n onCloseAutoFocus: (event) => {\n props.onCloseAutoFocus?.(event);\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n event.preventDefault();\n }\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n },\n onInteractOutside: (event) => {\n props.onInteractOutside?.(event);\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === \"pointerdown\") {\n hasPointerDownOutsideRef.current = true;\n }\n }\n const target = event.target;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n if (event.detail.originalEvent.type === \"focusin\" && hasPointerDownOutsideRef.current) {\n event.preventDefault();\n }\n }\n }\n );\n }\n);\nvar DialogContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, __scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n useFocusGuards();\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n loop: true,\n trapped: trapFocus,\n onMountAutoFocus: onOpenAutoFocus,\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n role: \"dialog\",\n id: context.contentId,\n \"aria-describedby\": context.descriptionId,\n \"aria-labelledby\": context.titleId,\n \"data-state\": getState(context.open),\n ...contentProps,\n ref: composedRefs,\n onDismiss: () => context.onOpenChange(false)\n }\n )\n }\n ),\n /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(TitleWarning, { titleId: context.titleId }),\n /* @__PURE__ */ jsx(DescriptionWarning, { contentRef, descriptionId: context.descriptionId })\n ] })\n ] });\n }\n);\nvar TITLE_NAME = \"DialogTitle\";\nvar DialogTitle = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...titleProps } = props;\n const context = useDialogContext(TITLE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.h2, { id: context.titleId, ...titleProps, ref: forwardedRef });\n }\n);\nDialogTitle.displayName = TITLE_NAME;\nvar DESCRIPTION_NAME = \"DialogDescription\";\nvar DialogDescription = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...descriptionProps } = props;\n const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.p, { id: context.descriptionId, ...descriptionProps, ref: forwardedRef });\n }\n);\nDialogDescription.displayName = DESCRIPTION_NAME;\nvar CLOSE_NAME = \"DialogClose\";\nvar DialogClose = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...closeProps } = props;\n const context = useDialogContext(CLOSE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n ...closeProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))\n }\n );\n }\n);\nDialogClose.displayName = CLOSE_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar TITLE_WARNING_NAME = \"DialogTitleWarning\";\nvar [WarningProvider, useWarningContext] = createContext(TITLE_WARNING_NAME, {\n contentName: CONTENT_NAME,\n titleName: TITLE_NAME,\n docsSlug: \"dialog\"\n});\nvar TitleWarning = ({ titleId }) => {\n const titleWarningContext = useWarningContext(TITLE_WARNING_NAME);\n const MESSAGE = `\\`${titleWarningContext.contentName}\\` requires a \\`${titleWarningContext.titleName}\\` for the component to be accessible for screen reader users.\n\nIf you want to hide the \\`${titleWarningContext.titleName}\\`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;\n React.useEffect(() => {\n if (titleId) {\n const hasTitle = document.getElementById(titleId);\n if (!hasTitle) console.error(MESSAGE);\n }\n }, [MESSAGE, titleId]);\n return null;\n};\nvar DESCRIPTION_WARNING_NAME = \"DialogDescriptionWarning\";\nvar DescriptionWarning = ({ contentRef, descriptionId }) => {\n const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);\n const MESSAGE = `Warning: Missing \\`Description\\` or \\`aria-describedby={undefined}\\` for {${descriptionWarningContext.contentName}}.`;\n React.useEffect(() => {\n const describedById = contentRef.current?.getAttribute(\"aria-describedby\");\n if (descriptionId && describedById) {\n const hasDescription = document.getElementById(descriptionId);\n if (!hasDescription) console.warn(MESSAGE);\n }\n }, [MESSAGE, contentRef, descriptionId]);\n return null;\n};\nvar Root = Dialog;\nvar Trigger = DialogTrigger;\nvar Portal = DialogPortal;\nvar Overlay = DialogOverlay;\nvar Content = DialogContent;\nvar Title = DialogTitle;\nvar Description = DialogDescription;\nvar Close = DialogClose;\nexport {\n Close,\n Content,\n Description,\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n Overlay,\n Portal,\n Root,\n Title,\n Trigger,\n WarningProvider,\n createDialogScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["DIALOG_NAME","createDialogContext","createDialogScope","createContextScope","DialogProvider","useDialogContext","Dialog","props","__scopeDialog","children","open","openProp","defaultOpen","onOpenChange","modal","triggerRef","React","useRef","contentRef","setOpen","useControllableState","prop","defaultProp","onChange","caller","jsx","scope","contentId","useId","titleId","descriptionId","onOpenToggle","useCallback","prevOpen","displayName","TRIGGER_NAME","DialogTrigger","forwardRef","forwardedRef","triggerProps","context","composedTriggerRef","useComposedRefs","Primitive","button","type","getState","ref","onClick","composeEventHandlers","PORTAL_NAME","PortalProvider","usePortalContext","forceMount","DialogPortal","container","Children","map","child","Presence","present","PortalPrimitive","asChild","OVERLAY_NAME","DialogOverlay","portalContext","overlayProps","DialogOverlayImpl","Slot","createSlot","RemoveScroll","as","allowPinchZoom","shards","div","style","pointerEvents","CONTENT_NAME","DialogContent","contentProps","DialogContentModal","DialogContentNonModal","composedRefs","useEffect","content","current","hideOthers","DialogContentImpl","trapFocus","disableOutsidePointerEvents","onCloseAutoFocus","event","preventDefault","focus","onPointerDownOutside","originalEvent","detail","ctrlLeftClick","ctrlKey","onFocusOutside","hasInteractedOutsideRef","hasPointerDownOutsideRef","defaultPrevented","onInteractOutside","target","targetIsTrigger","contains","onOpenAutoFocus","useFocusGuards","jsxs","Fragment","FocusScope","loop","trapped","onMountAutoFocus","onUnmountAutoFocus","DismissableLayer","role","id","onDismiss","TitleWarning","DescriptionWarning","TITLE_NAME","DialogTitle","titleProps","h2","DESCRIPTION_NAME","DialogDescription","descriptionProps","p","CLOSE_NAME","DialogClose","closeProps","TITLE_WARNING_NAME","WarningProvider","useWarningContext","createContext","contentName","titleName","docsSlug","titleWarningContext","MESSAGE","document","getElementById","describedById","getAttribute","Root","Trigger","Portal","Overlay","Content","Title","Description","Close"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"index-3XcV7C7l.mjs","sources":["../../node_modules/@radix-ui/react-dialog/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/dialog.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContext, createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { hideOthers } from \"aria-hidden\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar DIALOG_NAME = \"Dialog\";\nvar [createDialogContext, createDialogScope] = createContextScope(DIALOG_NAME);\nvar [DialogProvider, useDialogContext] = createDialogContext(DIALOG_NAME);\nvar Dialog = (props) => {\n const {\n __scopeDialog,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n modal = true\n } = props;\n const triggerRef = React.useRef(null);\n const contentRef = React.useRef(null);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: DIALOG_NAME\n });\n return /* @__PURE__ */ jsx(\n DialogProvider,\n {\n scope: __scopeDialog,\n triggerRef,\n contentRef,\n contentId: useId(),\n titleId: useId(),\n descriptionId: useId(),\n open,\n onOpenChange: setOpen,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n modal,\n children\n }\n );\n};\nDialog.displayName = DIALOG_NAME;\nvar TRIGGER_NAME = \"DialogTrigger\";\nvar DialogTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...triggerProps } = props;\n const context = useDialogContext(TRIGGER_NAME, __scopeDialog);\n const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": context.open,\n \"aria-controls\": context.contentId,\n \"data-state\": getState(context.open),\n ...triggerProps,\n ref: composedTriggerRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }\n);\nDialogTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"DialogPortal\";\nvar [PortalProvider, usePortalContext] = createDialogContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar DialogPortal = (props) => {\n const { __scopeDialog, forceMount, children, container } = props;\n const context = useDialogContext(PORTAL_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeDialog, forceMount, children: React.Children.map(children, (child) => /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children: child }) })) });\n};\nDialogPortal.displayName = PORTAL_NAME;\nvar OVERLAY_NAME = \"DialogOverlay\";\nvar DialogOverlay = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, props.__scopeDialog);\n return context.modal ? /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(DialogOverlayImpl, { ...overlayProps, ref: forwardedRef }) }) : null;\n }\n);\nDialogOverlay.displayName = OVERLAY_NAME;\nvar Slot = createSlot(\"DialogOverlay.RemoveScroll\");\nvar DialogOverlayImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, __scopeDialog);\n return (\n // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`\n // ie. when `Overlay` and `Content` are siblings\n /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, shards: [context.contentRef], children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n ...overlayProps,\n ref: forwardedRef,\n style: { pointerEvents: \"auto\", ...overlayProps.style }\n }\n ) })\n );\n }\n);\nvar CONTENT_NAME = \"DialogContent\";\nvar DialogContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(DialogContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(DialogContentNonModal, { ...contentProps, ref: forwardedRef }) });\n }\n);\nDialogContent.displayName = CONTENT_NAME;\nvar DialogContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);\n React.useEffect(() => {\n const content = contentRef.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: true,\n onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n context.triggerRef.current?.focus();\n }),\n onPointerDownOutside: composeEventHandlers(props.onPointerDownOutside, (event) => {\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n if (isRightClick) event.preventDefault();\n }),\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault()\n )\n }\n );\n }\n);\nvar DialogContentNonModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const hasInteractedOutsideRef = React.useRef(false);\n const hasPointerDownOutsideRef = React.useRef(false);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n onCloseAutoFocus: (event) => {\n props.onCloseAutoFocus?.(event);\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n event.preventDefault();\n }\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n },\n onInteractOutside: (event) => {\n props.onInteractOutside?.(event);\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === \"pointerdown\") {\n hasPointerDownOutsideRef.current = true;\n }\n }\n const target = event.target;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n if (event.detail.originalEvent.type === \"focusin\" && hasPointerDownOutsideRef.current) {\n event.preventDefault();\n }\n }\n }\n );\n }\n);\nvar DialogContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, __scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n useFocusGuards();\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n loop: true,\n trapped: trapFocus,\n onMountAutoFocus: onOpenAutoFocus,\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n role: \"dialog\",\n id: context.contentId,\n \"aria-describedby\": context.descriptionId,\n \"aria-labelledby\": context.titleId,\n \"data-state\": getState(context.open),\n ...contentProps,\n ref: composedRefs,\n onDismiss: () => context.onOpenChange(false)\n }\n )\n }\n ),\n /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(TitleWarning, { titleId: context.titleId }),\n /* @__PURE__ */ jsx(DescriptionWarning, { contentRef, descriptionId: context.descriptionId })\n ] })\n ] });\n }\n);\nvar TITLE_NAME = \"DialogTitle\";\nvar DialogTitle = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...titleProps } = props;\n const context = useDialogContext(TITLE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.h2, { id: context.titleId, ...titleProps, ref: forwardedRef });\n }\n);\nDialogTitle.displayName = TITLE_NAME;\nvar DESCRIPTION_NAME = \"DialogDescription\";\nvar DialogDescription = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...descriptionProps } = props;\n const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.p, { id: context.descriptionId, ...descriptionProps, ref: forwardedRef });\n }\n);\nDialogDescription.displayName = DESCRIPTION_NAME;\nvar CLOSE_NAME = \"DialogClose\";\nvar DialogClose = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...closeProps } = props;\n const context = useDialogContext(CLOSE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n ...closeProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))\n }\n );\n }\n);\nDialogClose.displayName = CLOSE_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar TITLE_WARNING_NAME = \"DialogTitleWarning\";\nvar [WarningProvider, useWarningContext] = createContext(TITLE_WARNING_NAME, {\n contentName: CONTENT_NAME,\n titleName: TITLE_NAME,\n docsSlug: \"dialog\"\n});\nvar TitleWarning = ({ titleId }) => {\n const titleWarningContext = useWarningContext(TITLE_WARNING_NAME);\n const MESSAGE = `\\`${titleWarningContext.contentName}\\` requires a \\`${titleWarningContext.titleName}\\` for the component to be accessible for screen reader users.\n\nIf you want to hide the \\`${titleWarningContext.titleName}\\`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;\n React.useEffect(() => {\n if (titleId) {\n const hasTitle = document.getElementById(titleId);\n if (!hasTitle) console.error(MESSAGE);\n }\n }, [MESSAGE, titleId]);\n return null;\n};\nvar DESCRIPTION_WARNING_NAME = \"DialogDescriptionWarning\";\nvar DescriptionWarning = ({ contentRef, descriptionId }) => {\n const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);\n const MESSAGE = `Warning: Missing \\`Description\\` or \\`aria-describedby={undefined}\\` for {${descriptionWarningContext.contentName}}.`;\n React.useEffect(() => {\n const describedById = contentRef.current?.getAttribute(\"aria-describedby\");\n if (descriptionId && describedById) {\n const hasDescription = document.getElementById(descriptionId);\n if (!hasDescription) console.warn(MESSAGE);\n }\n }, [MESSAGE, contentRef, descriptionId]);\n return null;\n};\nvar Root = Dialog;\nvar Trigger = DialogTrigger;\nvar Portal = DialogPortal;\nvar Overlay = DialogOverlay;\nvar Content = DialogContent;\nvar Title = DialogTitle;\nvar Description = DialogDescription;\nvar Close = DialogClose;\nexport {\n Close,\n Content,\n Description,\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n Overlay,\n Portal,\n Root,\n Title,\n Trigger,\n WarningProvider,\n createDialogScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["PortalPrimitive","RemoveScroll","createContext"],"mappings":"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","x_google_ignoreList":[0]}
|