ivt 0.3.3 → 0.3.4
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 +17042 -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-DqEvkrE1.mjs +6 -0
- package/dist/chunks/_commonjsHelpers-DqEvkrE1.mjs.map +1 -0
- package/dist/chunks/accordion-BMP2PSSC.mjs +455 -0
- package/dist/chunks/{accordion-CdshDFZC.mjs.map → accordion-BMP2PSSC.mjs.map} +1 -1
- package/dist/chunks/badge-DxuZhgBF.mjs +57 -0
- package/dist/chunks/{badge-BYqshEmA.mjs.map → badge-DxuZhgBF.mjs.map} +1 -1
- package/dist/chunks/bundle-mjs-tFg__FnT.mjs +4491 -0
- package/dist/chunks/{bundle-mjs-9BXytT_r.mjs.map → bundle-mjs-tFg__FnT.mjs.map} +1 -1
- package/dist/chunks/button-CX0htulo.mjs +47 -0
- package/dist/chunks/{button-DrFZXJ7z.mjs.map → button-CX0htulo.mjs.map} +1 -1
- package/dist/chunks/calendar-B4IV5RyM.mjs +7106 -0
- package/dist/chunks/calendar-B4IV5RyM.mjs.map +1 -0
- package/dist/chunks/check-B7209s3e.mjs +15 -0
- package/dist/chunks/{check-CimnOyD7.mjs.map → check-B7209s3e.mjs.map} +1 -1
- package/dist/chunks/chevron-down-D84DRJBv.mjs +15 -0
- package/dist/chunks/{chevron-down-D3fvbjxE.mjs.map → chevron-down-D84DRJBv.mjs.map} +1 -1
- package/dist/chunks/chevron-left-DtL1t1DJ.mjs +15 -0
- package/dist/chunks/{chevron-left-CrN7DlXg.mjs.map → chevron-left-DtL1t1DJ.mjs.map} +1 -1
- package/dist/chunks/chevron-right-Cdxg1JSQ.mjs +15 -0
- package/dist/chunks/{chevron-right-BMSCuDGK.mjs.map → chevron-right-Cdxg1JSQ.mjs.map} +1 -1
- package/dist/chunks/chevrons-up-down-DtBUG1i8.mjs +22 -0
- package/dist/chunks/{chevrons-up-down-DBgvRkZm.mjs.map → chevrons-up-down-DtBUG1i8.mjs.map} +1 -1
- package/dist/chunks/circle-BLWMZ9yp.mjs +17 -0
- package/dist/chunks/{circle-CGqt18Bd.mjs.map → circle-BLWMZ9yp.mjs.map} +1 -1
- package/dist/chunks/command-C8cVzg-x.mjs +611 -0
- package/dist/chunks/command-C8cVzg-x.mjs.map +1 -0
- package/dist/chunks/createLucideIcon-Ba0IWqsz.mjs +60 -0
- package/dist/chunks/{createLucideIcon-L-tld2uc.mjs.map → createLucideIcon-Ba0IWqsz.mjs.map} +1 -1
- package/dist/chunks/dialog-D9vbxUuQ.mjs +80 -0
- package/dist/chunks/{dialog-36eqHzT3.mjs.map → dialog-D9vbxUuQ.mjs.map} +1 -1
- package/dist/chunks/hover-card-idvDPXrI.mjs +274 -0
- package/dist/chunks/{hover-card-Cnd58du6.mjs.map → hover-card-idvDPXrI.mjs.map} +1 -1
- package/dist/chunks/index-6JUj2Tld.mjs +18 -0
- package/dist/chunks/{index-CRxQlsb9.mjs.map → index-6JUj2Tld.mjs.map} +1 -1
- package/dist/chunks/index-B0IElWB4.mjs +51 -0
- package/dist/chunks/{index-vmPXTidH.mjs.map → index-B0IElWB4.mjs.map} +1 -1
- package/dist/chunks/index-B4VRyyD1.mjs +40 -0
- package/dist/chunks/index-B4VRyyD1.mjs.map +1 -0
- package/dist/chunks/index-BE-_q4IW.mjs +266 -0
- package/dist/chunks/index-BE-_q4IW.mjs.map +1 -0
- package/dist/chunks/index-BNxaLFA6.mjs +216 -0
- package/dist/chunks/{index-LvOFIVGz.mjs.map → index-BNxaLFA6.mjs.map} +1 -1
- package/dist/chunks/index-BZUrHhU8.mjs +7 -0
- package/dist/chunks/{index-CLtWFQL5.mjs.map → index-BZUrHhU8.mjs.map} +1 -1
- package/dist/chunks/index-B_FsTtnF.mjs +110 -0
- package/dist/chunks/{index-CCcl327A.mjs.map → index-B_FsTtnF.mjs.map} +1 -1
- package/dist/chunks/index-CAg47KJ6.mjs +13 -0
- package/dist/chunks/{index-CXszXOf_.mjs.map → index-CAg47KJ6.mjs.map} +1 -1
- package/dist/chunks/index-CXuEm8w1.mjs +12 -0
- package/dist/chunks/{index-CU_y1XAz.mjs.map → index-CXuEm8w1.mjs.map} +1 -1
- package/dist/chunks/index-C_jFwfR_.mjs +77 -0
- package/dist/chunks/{index-CybgQKpz.mjs.map → index-C_jFwfR_.mjs.map} +1 -1
- package/dist/chunks/index-CglX-DNW.mjs +21 -0
- package/dist/chunks/index-CglX-DNW.mjs.map +1 -0
- package/dist/chunks/index-CyMuypYR.mjs +324 -0
- package/dist/chunks/{index-DUNcuWJE.mjs.map → index-CyMuypYR.mjs.map} +1 -1
- package/dist/chunks/index-D0S6rRRE.mjs +50 -0
- package/dist/chunks/{index-w9bxia3O.mjs.map → index-D0S6rRRE.mjs.map} +1 -1
- package/dist/chunks/index-D23BhVQG.mjs +859 -0
- package/dist/chunks/{index-DZHMFdr0.mjs.map → index-D23BhVQG.mjs.map} +1 -1
- package/dist/chunks/index-D2wfJaZh.mjs +145 -0
- package/dist/chunks/index-D2wfJaZh.mjs.map +1 -0
- package/dist/chunks/index-DNvm9MP3.mjs +34 -0
- package/dist/chunks/{index-D2sZp5OP.mjs.map → index-DNvm9MP3.mjs.map} +1 -1
- package/dist/chunks/index-Dm4_czlz.mjs +12 -0
- package/dist/chunks/index-Dm4_czlz.mjs.map +1 -0
- package/dist/chunks/index-PaJVyocC.mjs +151 -0
- package/dist/chunks/index-PaJVyocC.mjs.map +1 -0
- package/dist/chunks/index-kr6_v_F8.mjs +2370 -0
- package/dist/chunks/index-kr6_v_F8.mjs.map +1 -0
- package/dist/chunks/index-sz_BcBbA.mjs +1210 -0
- package/dist/chunks/index-sz_BcBbA.mjs.map +1 -0
- package/dist/chunks/input-DK1slFF1.mjs +14 -0
- package/dist/chunks/{input-85UFztMJ.mjs.map → input-DK1slFF1.mjs.map} +1 -1
- package/dist/chunks/label-D7ONQdHc.mjs +32 -0
- package/dist/chunks/{label-CICFzZIt.mjs.map → label-D7ONQdHc.mjs.map} +1 -1
- package/dist/chunks/pagination-BM_IQ6Qk.mjs +106 -0
- package/dist/chunks/{pagination-CReDQes6.mjs.map → pagination-BM_IQ6Qk.mjs.map} +1 -1
- package/dist/chunks/popover-D3F326FR.mjs +308 -0
- package/dist/chunks/{popover-Cn2ZTvKd.mjs.map → popover-D3F326FR.mjs.map} +1 -1
- package/dist/chunks/progress-BCl5yD5Q.mjs +99 -0
- package/dist/chunks/{progress-CSxQH6-f.mjs.map → progress-BCl5yD5Q.mjs.map} +1 -1
- package/dist/chunks/scroll-area-DB3eUx8V.mjs +791 -0
- package/dist/chunks/scroll-area-DB3eUx8V.mjs.map +1 -0
- package/dist/chunks/select-Cw81y8pT.mjs +104 -0
- package/dist/chunks/{select-BR6_N_Yo.mjs.map → select-Cw81y8pT.mjs.map} +1 -1
- package/dist/chunks/separator-2k1C7RSn.mjs +48 -0
- package/dist/chunks/{separator-BB6-E9Z1.mjs.map → separator-2k1C7RSn.mjs.map} +1 -1
- package/dist/chunks/skeleton-qx8-vr62.mjs +13 -0
- package/dist/chunks/{skeleton-XPWWiaac.mjs.map → skeleton-qx8-vr62.mjs.map} +1 -1
- package/dist/chunks/sortable-D8ayoe_b.mjs +4221 -0
- package/dist/chunks/sortable-D8ayoe_b.mjs.map +1 -0
- package/dist/chunks/table-BDNUhtz-.mjs +62 -0
- package/dist/chunks/{table-LQIHzPHi.mjs.map → table-BDNUhtz-.mjs.map} +1 -1
- package/dist/chunks/toggle-CE2ycSdL.mjs +65 -0
- package/dist/chunks/{toggle-Co72WXGd.mjs.map → toggle-CE2ycSdL.mjs.map} +1 -1
- package/dist/chunks/tooltip-DLD0ycR4.mjs +596 -0
- package/dist/chunks/{tooltip-qX2HjdJP.mjs.map → tooltip-DLD0ycR4.mjs.map} +1 -1
- package/dist/chunks/tslib.es6-BgHLrbno.mjs +61 -0
- package/dist/chunks/{tslib.es6-cMGqxriw.mjs.map → tslib.es6-BgHLrbno.mjs.map} +1 -1
- package/dist/chunks/utils-BUelq9Ro.mjs +42 -0
- package/dist/chunks/utils-BUelq9Ro.mjs.map +1 -0
- package/dist/chunks/x-Bjz0Vo6R.mjs +22 -0
- package/dist/chunks/{x-BNLl0E-E.mjs.map → x-Bjz0Vo6R.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 +2 -2
- 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-idvDPXrI.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":";;;;;;;;;;;;;AAkBA,IAAI,sBAAA;AAEJ,IAAM,cAAA,GAAiB,WAAA;AAGvB,IAAM,CAAC,sBAAA,EAAwB,oBAAoB,CAAA,GAAI,mBAAmB,cAAA,EAAgB;AACxF,IAAA;AACD,CAAA,CAAA;AACD,IAAM,iBAAiB,iBAAA,EAAkB;AAYzC,IAAM,CAAC,iBAAA,EAAmB,mBAAmB,CAAA,GAC3C,uBAA8C,cAAc,CAAA;AAW9D,IAAMA,WAAA,GAAsC,CAAC,KAAA,GAAA;AAC3C,IAAA,MAAM,EACJ,gBAAA,EACA,QAAA,EACA,IAAA,EAAM,QAAA,EACN,WAAA,EACA,YAAA,EACA,SAAA,GAAY,GAAA,EACZ,UAAA,GAAa,GAAA,EACf,GAAI,KAAA;IACJ,MAAM,WAAA,GAAc,eAAe,gBAAgB,CAAA;AACnD,IAAA,MAAM,YAAA,GAAqB,KAAA,CAAA,MAAA,CAAO,CAAC,CAAA;AACnC,IAAA,MAAM,aAAA,GAAsB,KAAA,CAAA,MAAA,CAAO,CAAC,CAAA;AACpC,IAAA,MAAM,eAAA,GAAwB,KAAA,CAAA,MAAA,CAAO,KAAK,CAAA;AAC1C,IAAA,MAAM,yBAAA,GAAkC,KAAA,CAAA,MAAA,CAAO,KAAK,CAAA;AAEpD,IAAA,MAAM,CAAC,IAAA,EAAM,OAAO,CAAA,GAAI,oBAAA,CAAqB;QAC3C,IAAA,EAAM,QAAA;AACN,QAAA,WAAA,EAAa,WAAA,IAAe,KAAA;QAC5B,QAAA,EAAU,YAAA;QACV,MAAA,EAAQ;KACT,CAAA;AAED,IAAA,MAAM,UAAA,GAAmB,KAAA,CAAA,WAAA,CAAY,IAAA;AACnC,QAAA,YAAA,CAAa,cAAc,OAAO,CAAA;QAClC,YAAA,CAAa,OAAA,GAAU,MAAA,CAAO,UAAA,CAAW,IAAM,OAAA,CAAQ,IAAI,CAAA,EAAG,SAAS,CAAA;IACzE,CAAA,EAAG;AAAC,QAAA,SAAA;QAAW;AAAQ,KAAA,CAAA;AAEvB,IAAA,MAAM,WAAA,GAAoB,KAAA,CAAA,WAAA,CAAY,IAAA;AACpC,QAAA,YAAA,CAAa,aAAa,OAAO,CAAA;AACjC,QAAA,IAAI,CAAC,eAAA,CAAgB,OAAA,IAAW,CAAC,yBAAA,CAA0B,OAAA,EAAS;YAClE,aAAA,CAAc,OAAA,GAAU,MAAA,CAAO,UAAA,CAAW,IAAM,OAAA,CAAQ,KAAK,CAAA,EAAG,UAAU,CAAA;AAC5E,QAAA;IACF,CAAA,EAAG;AAAC,QAAA,UAAA;QAAY;AAAQ,KAAA,CAAA;AAExB,IAAA,MAAM,gBAAsB,KAAA,CAAA,WAAA,CAAY,IAAM,OAAA,CAAQ,KAAK,CAAA,EAAG;QAAC;AAAQ,KAAA,CAAA;IAGjE,KAAA,CAAA,SAAA,CAAU,IAAA;AACd,QAAA,OAAO,IAAA;AACL,YAAA,YAAA,CAAa,aAAa,OAAO,CAAA;AACjC,YAAA,YAAA,CAAa,cAAc,OAAO,CAAA;AACpC,QAAA,CAAA;AACF,IAAA,CAAA,EAAG,EAAE,CAAA;IAEL,uBACE,GAAA,CAAC,iBAAA,EAAA;QACC,KAAA,EAAO,gBAAA;AACP,QAAA,IAAA;QACA,YAAA,EAAc,OAAA;QACd,MAAA,EAAQ,UAAA;QACR,OAAA,EAAS,WAAA;QACT,SAAA,EAAW,aAAA;AACX,QAAA,eAAA;AACA,QAAA,yBAAA;AAEA,QAAA,QAAA,kBAAA,GAAA,CAAiBC,OAAA,EAAhB;AAAsB,YAAA,GAAG,WAAA;AAAc,YAAA;SAAS;AAAA,KAAA,CAAA;AAGvD,CAAA;AAEAD,WAAA,CAAU,WAAA,GAAc,cAAA;AAMxB,IAAM,YAAA,GAAe,kBAAA;AAMrB,IAAME,qBAAyB,KAAA,CAAA,UAAA,CAC7B,CAAC,OAA2C,YAAA,GAAA;AAC1C,IAAA,MAAM,EAAE,gBAAA,EAAkB,GAAG,YAAA,EAAa,GAAI,KAAA;IAC9C,MAAM,OAAA,GAAU,mBAAA,CAAoB,YAAA,EAAc,gBAAgB,CAAA;IAClE,MAAM,WAAA,GAAc,eAAe,gBAAgB,CAAA;AACnD,IAAA,uBACE,GAAA,CAAiBC,MAAA,EAAhB;QAAuB,OAAA,EAAO,IAAA;AAAE,QAAA,GAAG,WAAA;AAClC,QAAA,QAAA,kBAAA,GAAA,CAAC,SAAA,CAAU,CAAA,EAAV;YACC,YAAA,EAAY,OAAA,CAAQ,IAAA,GAAO,MAAA,GAAS,QAAA;AACnC,YAAA,GAAG,YAAA;YACJ,GAAA,EAAK,YAAA;AACL,YAAA,cAAA,EAAgB,qBAAqB,KAAA,CAAM,cAAA,EAAgB,YAAA,CAAa,OAAA,CAAQ,MAAM,CAAC,CAAA;AACvF,YAAA,cAAA,EAAgB,qBAAqB,KAAA,CAAM,cAAA,EAAgB,YAAA,CAAa,OAAA,CAAQ,OAAO,CAAC,CAAA;AACxF,YAAA,OAAA,EAAS,oBAAA,CAAqB,KAAA,CAAM,OAAA,EAAS,QAAQ,MAAM,CAAA;AAC3D,YAAA,MAAA,EAAQ,oBAAA,CAAqB,KAAA,CAAM,MAAA,EAAQ,QAAQ,OAAO,CAAA;YAE1D,YAAA,EAAc,oBAAA,CAAqB,MAAM,YAAA,EAAc,CAAC,KAAA,GAAU,KAAA,CAAM,cAAA,EAAgB;AAAA,SAAA;KAE5F,CAAA;AAEJ,CAAA,CAAA;AAGFD,kBAAA,CAAiB,WAAA,GAAc,YAAA;AAM/B,IAAM,WAAA,GAAc,iBAAA;AAGpB,IAAM,CAAC,cAAA,EAAgB,gBAAgB,CAAA,GAAI,uBAA2C,WAAA,EAAa;AACjG,IAAA,UAAA,EAAY;AACd,CAAC,CAAA;AAgBD,IAAM,eAAA,GAAkD,CACtD,KAAA,GAAA;IAEA,MAAM,EAAE,gBAAA,EAAkB,UAAA,EAAY,QAAA,EAAU,SAAA,EAAU,GAAI,KAAA;IAC9D,MAAM,OAAA,GAAU,mBAAA,CAAoB,WAAA,EAAa,gBAAgB,CAAA;IACjE,uBACE,GAAA,CAAC,cAAA,EAAA;QAAe,KAAA,EAAO,gBAAA;AAAkB,QAAA,UAAA;QACvC,QAAA,kBAAA,GAAA,CAAC,QAAA,EAAA;YAAS,OAAA,EAAS,UAAA,IAAc,QAAQ,IAAA;YACvC,QAAA,kBAAA,GAAA,CAACE,QAAA,EAAA;gBAAgB,OAAA,EAAO,IAAA;AAAC,gBAAA,SAAA;AACtB,gBAAA;aACH;SACF;KACF,CAAA;AAEJ,CAAA;AAEA,eAAA,CAAgB,WAAA,GAAc,WAAA;AAM9B,IAAM,YAAA,GAAe,kBAAA;AAWrB,IAAMC,qBAAyB,KAAA,CAAA,UAAA,CAC7B,CAAC,OAA2C,YAAA,GAAA;AAC1C,IAAA,MAAM,aAAA,GAAgB,gBAAA,CAAiB,YAAA,EAAc,KAAA,CAAM,gBAAgB,CAAA;IAC3E,MAAM,EAAE,aAAa,aAAA,CAAc,UAAA,EAAY,GAAG,YAAA,EAAa,GAAI,KAAA;AACnE,IAAA,MAAM,OAAA,GAAU,mBAAA,CAAoB,YAAA,EAAc,KAAA,CAAM,gBAAgB,CAAA;IACxE,uBACE,GAAA,CAAC,QAAA,EAAA;QAAS,OAAA,EAAS,UAAA,IAAc,QAAQ,IAAA;QACvC,QAAA,kBAAA,GAAA,CAAC,oBAAA,EAAA;YACC,YAAA,EAAY,OAAA,CAAQ,IAAA,GAAO,MAAA,GAAS,QAAA;AACnC,YAAA,GAAG,YAAA;AACJ,YAAA,cAAA,EAAgB,qBAAqB,KAAA,CAAM,cAAA,EAAgB,YAAA,CAAa,OAAA,CAAQ,MAAM,CAAC,CAAA;AACvF,YAAA,cAAA,EAAgB,qBAAqB,KAAA,CAAM,cAAA,EAAgB,YAAA,CAAa,OAAA,CAAQ,OAAO,CAAC,CAAA;YACxF,GAAA,EAAK;AAAA,SAAA;KAET,CAAA;AAEJ,CAAA,CAAA;AAGFA,kBAAA,CAAiB,WAAA,GAAc,YAAA;AA+B/B,IAAM,uBAA6B,KAAA,CAAA,UAAA,CAGjC,CAAC,OAA+C,YAAA,GAAA;AAChD,IAAA,MAAM,EACJ,gBAAA,EACA,eAAA,EACA,oBAAA,EACA,cAAA,EACA,iBAAA,EACA,GAAG,cACL,GAAI,KAAA;IACJ,MAAM,OAAA,GAAU,mBAAA,CAAoB,YAAA,EAAc,gBAAgB,CAAA;IAClE,MAAM,WAAA,GAAc,eAAe,gBAAgB,CAAA;AACnD,IAAA,MAAM,GAAA,GAAY,KAAA,CAAA,MAAA,CAAoC,IAAI,CAAA;IAC1D,MAAM,YAAA,GAAe,eAAA,CAAgB,YAAA,EAAc,GAAG,CAAA;IACtD,MAAM,CAAC,kBAAkB,mBAAmB,CAAA,GAAU,KAAA,CAAA,QAAA,CAAS,KAAK,CAAA;IAE9D,KAAA,CAAA,SAAA,CAAU,IAAA;AACd,QAAA,IAAI,gBAAA,EAAkB;YACpB,MAAM,IAAA,GAAO,SAAS,IAAA;YAGtB,sBAAA,GAAyB,IAAA,CAAK,KAAA,CAAM,UAAA,IAAc,IAAA,CAAK,KAAA,CAAM,gBAAA;YAE7D,IAAA,CAAK,KAAA,CAAM,UAAA,GAAa,MAAA;YACxB,IAAA,CAAK,KAAA,CAAM,gBAAA,GAAmB,MAAA;AAC9B,YAAA,OAAO,IAAA;gBACL,IAAA,CAAK,KAAA,CAAM,UAAA,GAAa,sBAAA;gBACxB,IAAA,CAAK,KAAA,CAAM,gBAAA,GAAmB,sBAAA;AAChC,YAAA,CAAA;AACF,QAAA;IACF,CAAA,EAAG;QAAC;AAAiB,KAAA,CAAA;IAEf,KAAA,CAAA,SAAA,CAAU,IAAA;QACd,IAAI,GAAA,CAAI,OAAA,EAAS;AACf,YAAA,MAAM,kBAAkB,IAAA;AACtB,gBAAA,mBAAA,CAAoB,KAAK,CAAA;gBACzB,OAAA,CAAQ,yBAAA,CAA0B,OAAA,GAAU,KAAA;AAG5C,gBAAA,UAAA,CAAW,IAAA;AACT,oBAAA,MAAM,eAAe,QAAA,CAAS,YAAA,EAAa,EAAG,UAAS,KAAM,EAAA;AAC7D,oBAAA,IAAI,cAAc,OAAA,CAAQ,eAAA,CAAgB,OAAA,GAAU,IAAA;gBACtD,CAAC,CAAA;AACH,YAAA,CAAA;YAEA,QAAA,CAAS,gBAAA,CAAiB,WAAA,EAAa,eAAe,CAAA;AACtD,YAAA,OAAO,IAAA;gBACL,QAAA,CAAS,mBAAA,CAAoB,WAAA,EAAa,eAAe,CAAA;gBACzD,OAAA,CAAQ,eAAA,CAAgB,OAAA,GAAU,KAAA;gBAClC,OAAA,CAAQ,yBAAA,CAA0B,OAAA,GAAU,KAAA;AAC9C,YAAA,CAAA;AACF,QAAA;IACF,CAAA,EAAG;AAAC,QAAA,OAAA,CAAQ,yBAAA;AAA2B,QAAA,OAAA,CAAQ;AAAgB,KAAA,CAAA;IAEzD,KAAA,CAAA,SAAA,CAAU,IAAA;QACd,IAAI,GAAA,CAAI,OAAA,EAAS;YACf,MAAM,SAAA,GAAY,gBAAA,CAAiB,GAAA,CAAI,OAAO,CAAA;YAC9C,SAAA,CAAU,OAAA,CAAQ,CAAC,QAAA,GAAa,SAAS,YAAA,CAAa,UAAA,EAAY,IAAI,CAAC,CAAA;AACzE,QAAA;IACF,CAAC,CAAA;IAED,uBACE,GAAA,CAAC,gBAAA,EAAA;QACC,OAAA,EAAO,IAAA;QACP,2BAAA,EAA6B,KAAA;AAC7B,QAAA,iBAAA;AACA,QAAA,eAAA;AACA,QAAA,oBAAA;QACA,cAAA,EAAgB,oBAAA,CAAqB,cAAA,EAAgB,CAAC,KAAA,GAAA;AACpD,YAAA,KAAA,CAAM,cAAA,EAAe;QACvB,CAAC,CAAA;AACD,QAAA,SAAA,EAAW,QAAQ,SAAA;AAEnB,QAAA,QAAA,kBAAA,GAAA,CAAiBC,OAAA,EAAhB;AACE,YAAA,GAAG,WAAA;AACH,YAAA,GAAG,YAAA;AACJ,YAAA,aAAA,EAAe,oBAAA,CAAqB,YAAA,CAAa,aAAA,EAAe,CAAC,KAAA,GAAA;AAE/D,gBAAA,IAAI,MAAM,aAAA,CAAc,QAAA,CAAS,KAAA,CAAM,MAAqB,CAAA,EAAG;AAC7D,oBAAA,mBAAA,CAAoB,IAAI,CAAA;AAC1B,gBAAA;gBACA,OAAA,CAAQ,eAAA,CAAgB,OAAA,GAAU,KAAA;gBAClC,OAAA,CAAQ,yBAAA,CAA0B,OAAA,GAAU,IAAA;YAC9C,CAAC,CAAA;YACD,GAAA,EAAK,YAAA;YACL,KAAA,EAAO;AACL,gBAAA,GAAG,aAAa,KAAA;gBAChB,UAAA,EAAY,gBAAA,GAAmB,SAAS,MAAA;;gBAExC,gBAAA,EAAkB,gBAAA,GAAmB,SAAS,MAAA;;gBAE9C,GAAG;oBACD,6CAAA,EAA+C,sCAAA;oBAC/C,4CAAA,EAA8C,qCAAA;oBAC9C,6CAAA,EAA+C,sCAAA;oBAC/C,kCAAA,EAAoC,kCAAA;oBACpC,mCAAA,EAAqC;;AAEzC;AAAA,SAAA;AACF,KAAA,CAAA;AAGN,CAAC,CAAA;AAMD,IAAM,UAAA,GAAa,gBAAA;AAMnB,IAAM,iBAAuB,KAAA,CAAA,UAAA,CAC3B,CAAC,OAAyC,YAAA,GAAA;AACxC,IAAA,MAAM,EAAE,gBAAA,EAAkB,GAAG,UAAA,EAAW,GAAI,KAAA;IAC5C,MAAM,WAAA,GAAc,eAAe,gBAAgB,CAAA;AACnD,IAAA,uBAAO,GAAA,CAAiBC,KAAA,EAAhB;AAAuB,QAAA,GAAG,WAAA;AAAc,QAAA,GAAG,UAAA;QAAY,GAAA,EAAK;KAAc,CAAA;AACpF,CAAA,CAAA;AAGF,cAAA,CAAe,WAAA,GAAc,UAAA;AAI7B,SAAS,YAAA,CAAgB,YAAA,EAA0B;IACjD,OAAO,CAAC,QACN,KAAA,CAAM,WAAA,KAAgB,OAAA,GAAU,SAAY,YAAA,EAAa;AAC7D;AAMA,SAAS,gBAAA,CAAiB,SAAA,EAAwB;IAChD,MAAM,KAAA,GAAuB,EAAC;AAC9B,IAAA,MAAM,SAAS,QAAA,CAAS,gBAAA,CAAiB,SAAA,EAAW,UAAA,CAAW,YAAA,EAAc;AAC3E,QAAA,UAAA,EAAY,CAAC,IAAA,GAAA;YAIX,OAAO,IAAA,CAAK,QAAA,IAAY,CAAA,GAAI,WAAW,aAAA,GAAgB,WAAW,WAAA;AACpE,QAAA;KACD,CAAA;IACD,MAAO,MAAA,CAAO,QAAA,EAAS,CAAG,MAAM,IAAA,CAAK,OAAO,WAA0B,CAAA;IACtE,OAAO,KAAA;AACT;AAEA,IAAMC,KAAAA,GAAOR,WAAA;AACb,IAAM,OAAA,GAAUE,kBAAA;AAChB,IAAM,MAAA,GAAS,eAAA;AACf,IAAMO,QAAAA,GAAUJ,kBAAA;;ACrZhB,SAASL,SAAAA,CAAU,EAAE,GAAGU,KAAAA,EAA6D,EAAA;IACpF,qBAAOC,cAAA,CAAA,aAAA,CAACC,KAAuB,EAAA;QAACC,WAAAA,EAAU,YAAA;AAAc,QAAA,GAAGH;;AAC5D;AAEA,SAASR,gBAAAA,CAAiB,EAAE,GAAGQ,KAAAA,EAAgE,EAAA;IAC9F,qBAAOC,cAAA,CAAA,aAAA,CAACC,OAA0B,EAAA;QAACC,WAAAA,EAAU,oBAAA;AAAsB,QAAA,GAAGH;;AACvE;AAEA,SAASL,gBAAAA,CAAiB,EACzBS,SAAS,EACTC,KAAAA,GAAQ,QAAQ,EAChBC,UAAAA,GAAa,CAAC,EACd,GAAGN,KAAAA,EACsD,EAAA;IACzD,qBACCC,cAAA,CAAA,aAAA,CAACC,MAAyB,EAAA;QAACC,WAAAA,EAAU;AACpC,KAAA,gBAAAF,cAAA,CAAA,aAAA,CAACC,QAA0B,EAAA;QAC1BC,WAAAA,EAAU,oBAAA;QACVE,KAAAA,EAAOA,KAAAA;QACPC,UAAAA,EAAYA,UAAAA;AACZF,QAAAA,SAAAA,EAAWG,GACV,8aAAA,EACAH,SAAAA,CAAAA;AAEA,QAAA,GAAGJ;;AAIR;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import { u as useLayoutEffect2 } from './index-BZUrHhU8.mjs';
|
3
|
+
|
4
|
+
// packages/react/id/src/id.tsx
|
5
|
+
var useReactId = React[" useId ".trim().toString()] || (()=>void 0);
|
6
|
+
var count = 0;
|
7
|
+
function useId(deterministicId) {
|
8
|
+
const [id, setId] = React.useState(useReactId());
|
9
|
+
useLayoutEffect2(()=>{
|
10
|
+
setId((reactId)=>reactId ?? String(count++));
|
11
|
+
}, [
|
12
|
+
deterministicId
|
13
|
+
]);
|
14
|
+
return (id ? `radix-${id}` : "");
|
15
|
+
}
|
16
|
+
|
17
|
+
export { useId as u };
|
18
|
+
//# sourceMappingURL=index-6JUj2Tld.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index-
|
1
|
+
{"version":3,"file":"index-6JUj2Tld.mjs","sources":["../../node_modules/@radix-ui/react-id/dist/index.mjs"],"sourcesContent":["// packages/react/id/src/id.tsx\nimport * as React from \"react\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nvar useReactId = React[\" useId \".trim().toString()] || (() => void 0);\nvar count = 0;\nfunction useId(deterministicId) {\n const [id, setId] = React.useState(useReactId());\n useLayoutEffect(() => {\n if (!deterministicId) setId((reactId) => reactId ?? String(count++));\n }, [deterministicId]);\n return deterministicId || (id ? `radix-${id}` : \"\");\n}\nexport {\n useId\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useLayoutEffect"],"mappings":";;;;AAIA,IAAM,UAAA,GAAc,KAAA,CAAc,SAAA,CAAU,IAAA,EAAK,CAAE,QAAA,EAAU,CAAA,KAAM,IAAM,MAAA,CAAA;AACzE,IAAI,KAAA,GAAQ,CAAA;AAEZ,SAAS,KAAA,CAAM,eAAA,EAAkC;IAC/C,MAAM,CAAC,IAAI,KAAK,CAAA,GAAU,KAAA,CAAA,QAAA,CAA6B,UAAA,EAAY,CAAA;AAEnE,IAAAA,gBAAA,CAAgB,IAAA;QACQ,KAAA,CAAM,CAAC,OAAA,GAAY,OAAA,IAAW,MAAA,CAAO,KAAA,EAAO,CAAC,CAAA;IACrE,CAAA,EAAG;QAAC;AAAgB,KAAA,CAAA;IACpB,OAAO,CAAoB,KAAK,CAAA,MAAA,EAAS,EAAE,CAAA,CAAA,GAAK,EAAA,CAAA;AAClD;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,51 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import { u as useLayoutEffect2 } from './index-BZUrHhU8.mjs';
|
3
|
+
|
4
|
+
// packages/react/use-size/src/use-size.tsx
|
5
|
+
function useSize(element) {
|
6
|
+
const [size, setSize] = React.useState(void 0);
|
7
|
+
useLayoutEffect2(()=>{
|
8
|
+
if (element) {
|
9
|
+
setSize({
|
10
|
+
width: element.offsetWidth,
|
11
|
+
height: element.offsetHeight
|
12
|
+
});
|
13
|
+
const resizeObserver = new ResizeObserver((entries)=>{
|
14
|
+
if (!Array.isArray(entries)) {
|
15
|
+
return;
|
16
|
+
}
|
17
|
+
if (!entries.length) {
|
18
|
+
return;
|
19
|
+
}
|
20
|
+
const entry = entries[0];
|
21
|
+
let width;
|
22
|
+
let height;
|
23
|
+
if ("borderBoxSize" in entry) {
|
24
|
+
const borderSizeEntry = entry["borderBoxSize"];
|
25
|
+
const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;
|
26
|
+
width = borderSize["inlineSize"];
|
27
|
+
height = borderSize["blockSize"];
|
28
|
+
} else {
|
29
|
+
width = element.offsetWidth;
|
30
|
+
height = element.offsetHeight;
|
31
|
+
}
|
32
|
+
setSize({
|
33
|
+
width,
|
34
|
+
height
|
35
|
+
});
|
36
|
+
});
|
37
|
+
resizeObserver.observe(element, {
|
38
|
+
box: "border-box"
|
39
|
+
});
|
40
|
+
return ()=>resizeObserver.unobserve(element);
|
41
|
+
} else {
|
42
|
+
setSize(void 0);
|
43
|
+
}
|
44
|
+
}, [
|
45
|
+
element
|
46
|
+
]);
|
47
|
+
return size;
|
48
|
+
}
|
49
|
+
|
50
|
+
export { useSize as u };
|
51
|
+
//# sourceMappingURL=index-B0IElWB4.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index-
|
1
|
+
{"version":3,"file":"index-B0IElWB4.mjs","sources":["../../node_modules/@radix-ui/react-use-size/dist/index.mjs"],"sourcesContent":["// packages/react/use-size/src/use-size.tsx\nimport * as React from \"react\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nfunction useSize(element) {\n const [size, setSize] = React.useState(void 0);\n useLayoutEffect(() => {\n if (element) {\n setSize({ width: element.offsetWidth, height: element.offsetHeight });\n const resizeObserver = new ResizeObserver((entries) => {\n if (!Array.isArray(entries)) {\n return;\n }\n if (!entries.length) {\n return;\n }\n const entry = entries[0];\n let width;\n let height;\n if (\"borderBoxSize\" in entry) {\n const borderSizeEntry = entry[\"borderBoxSize\"];\n const borderSize = Array.isArray(borderSizeEntry) ? borderSizeEntry[0] : borderSizeEntry;\n width = borderSize[\"inlineSize\"];\n height = borderSize[\"blockSize\"];\n } else {\n width = element.offsetWidth;\n height = element.offsetHeight;\n }\n setSize({ width, height });\n });\n resizeObserver.observe(element, { box: \"border-box\" });\n return () => resizeObserver.unobserve(element);\n } else {\n setSize(void 0);\n }\n }, [element]);\n return size;\n}\nexport {\n useSize\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["useLayoutEffect"],"mappings":";;;;AAKA,SAAS,OAAA,CAAQ,OAAA,EAA6B;IAC5C,MAAM,CAAC,MAAM,OAAO,CAAA,GAAU,KAAA,CAAA,QAAA,CAAwD,MAAS,CAAA;AAE/F,IAAAA,gBAAA,CAAgB,IAAA;AACd,QAAA,IAAI,OAAA,EAAS;YAEX,OAAA,CAAQ;AAAE,gBAAA,KAAA,EAAO,QAAQ,WAAA;AAAa,gBAAA,MAAA,EAAQ,QAAQ;aAAc,CAAA;AAEpE,YAAA,MAAM,cAAA,GAAiB,IAAI,cAAA,CAAe,CAAC,OAAA,GAAA;AACzC,gBAAA,IAAI,CAAC,KAAA,CAAM,OAAA,CAAQ,OAAO,CAAA,EAAG;AAC3B,oBAAA;AACF,gBAAA;gBAIA,IAAI,CAAC,OAAA,CAAQ,MAAA,EAAQ;AACnB,oBAAA;AACF,gBAAA;AAEA,gBAAA,MAAM,KAAA,GAAQ,OAAA,CAAQ,CAAC,CAAA;gBACvB,IAAI,KAAA;gBACJ,IAAI,MAAA;AAEJ,gBAAA,IAAI,mBAAmB,KAAA,EAAO;AAC5B,oBAAA,MAAM,eAAA,GAAkB,KAAA,CAAM,eAAe,CAAA;oBAE7C,MAAM,UAAA,GAAa,KAAA,CAAM,OAAA,CAAQ,eAAe,IAAI,eAAA,CAAgB,CAAC,CAAA,GAAI,eAAA;oBACzE,KAAA,GAAQ,UAAA,CAAW,YAAY,CAAA;oBAC/B,MAAA,GAAS,UAAA,CAAW,WAAW,CAAA;gBACjC,CAAA,MAAO;AAGL,oBAAA,KAAA,GAAQ,QAAQ,WAAA;AAChB,oBAAA,MAAA,GAAS,QAAQ,YAAA;AACnB,gBAAA;gBAEA,OAAA,CAAQ;AAAE,oBAAA,KAAA;AAAO,oBAAA;iBAAQ,CAAA;YAC3B,CAAC,CAAA;YAED,cAAA,CAAe,OAAA,CAAQ,OAAA,EAAS;gBAAE,GAAA,EAAK;aAAc,CAAA;AAErD,YAAA,OAAO,IAAM,cAAA,CAAe,SAAA,CAAU,OAAO,CAAA;QAC/C,CAAA,MAAO;AAGL,YAAA,OAAA,CAAQ,MAAS,CAAA;AACnB,QAAA;IACF,CAAA,EAAG;QAAC;AAAQ,KAAA,CAAA;IAEZ,OAAO,IAAA;AACT;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
|
3
|
+
// packages/react/compose-refs/src/compose-refs.tsx
|
4
|
+
function setRef(ref, value) {
|
5
|
+
if (typeof ref === "function") {
|
6
|
+
return ref(value);
|
7
|
+
} else if (ref !== null && ref !== void 0) {
|
8
|
+
ref.current = value;
|
9
|
+
}
|
10
|
+
}
|
11
|
+
function composeRefs(...refs) {
|
12
|
+
return (node)=>{
|
13
|
+
let hasCleanup = false;
|
14
|
+
const cleanups = refs.map((ref)=>{
|
15
|
+
const cleanup = setRef(ref, node);
|
16
|
+
if (!hasCleanup && typeof cleanup == "function") {
|
17
|
+
hasCleanup = true;
|
18
|
+
}
|
19
|
+
return cleanup;
|
20
|
+
});
|
21
|
+
if (hasCleanup) {
|
22
|
+
return ()=>{
|
23
|
+
for(let i = 0; i < cleanups.length; i++){
|
24
|
+
const cleanup = cleanups[i];
|
25
|
+
if (typeof cleanup == "function") {
|
26
|
+
cleanup();
|
27
|
+
} else {
|
28
|
+
setRef(refs[i], null);
|
29
|
+
}
|
30
|
+
}
|
31
|
+
};
|
32
|
+
}
|
33
|
+
};
|
34
|
+
}
|
35
|
+
function useComposedRefs(...refs) {
|
36
|
+
return React.useCallback(composeRefs(...refs), refs);
|
37
|
+
}
|
38
|
+
|
39
|
+
export { composeRefs as c, useComposedRefs as u };
|
40
|
+
//# sourceMappingURL=index-B4VRyyD1.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index-B4VRyyD1.mjs","sources":["../../node_modules/@radix-ui/react-compose-refs/dist/index.mjs"],"sourcesContent":["// packages/react/compose-refs/src/compose-refs.tsx\nimport * as React from \"react\";\nfunction setRef(ref, value) {\n if (typeof ref === \"function\") {\n return ref(value);\n } else if (ref !== null && ref !== void 0) {\n ref.current = value;\n }\n}\nfunction composeRefs(...refs) {\n return (node) => {\n let hasCleanup = false;\n const cleanups = refs.map((ref) => {\n const cleanup = setRef(ref, node);\n if (!hasCleanup && typeof cleanup == \"function\") {\n hasCleanup = true;\n }\n return cleanup;\n });\n if (hasCleanup) {\n return () => {\n for (let i = 0; i < cleanups.length; i++) {\n const cleanup = cleanups[i];\n if (typeof cleanup == \"function\") {\n cleanup();\n } else {\n setRef(refs[i], null);\n }\n }\n };\n }\n };\n}\nfunction useComposedRefs(...refs) {\n return React.useCallback(composeRefs(...refs), refs);\n}\nexport {\n composeRefs,\n useComposedRefs\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":[],"mappings":";;;AAQA,SAAS,MAAA,CAAU,GAAA,EAAqB,KAAA,EAAU;IAChD,IAAI,OAAO,QAAQ,UAAA,EAAY;AAC7B,QAAA,OAAO,IAAI,KAAK,CAAA;AAClB,IAAA,CAAA,MAAA,IAAW,GAAA,KAAQ,IAAA,IAAQ,GAAA,KAAQ,MAAA,EAAW;AAC5C,QAAA,GAAA,CAAI,OAAA,GAAU,KAAA;AAChB,IAAA;AACF;AAMA,SAAS,WAAA,CAAA,GAAkB,IAAA,EAA8C;AACvE,IAAA,OAAO,CAAC,IAAA,GAAA;AACN,QAAA,IAAI,UAAA,GAAa,KAAA;AACjB,QAAA,MAAM,QAAA,GAAW,IAAA,CAAK,GAAA,CAAI,CAAC,GAAA,GAAA;YACzB,MAAM,OAAA,GAAU,MAAA,CAAO,GAAA,EAAK,IAAI,CAAA;AAChC,YAAA,IAAI,CAAC,UAAA,IAAc,OAAO,OAAA,IAAW,UAAA,EAAY;gBAC/C,UAAA,GAAa,IAAA;AACf,YAAA;YACA,OAAO,OAAA;QACT,CAAC,CAAA;AAMD,QAAA,IAAI,UAAA,EAAY;AACd,YAAA,OAAO,IAAA;AACL,gBAAA,IAAA,IAAS,CAAA,GAAI,CAAA,EAAG,IAAI,QAAA,CAAS,MAAA,EAAQ,CAAA,EAAA,CAAK;AACxC,oBAAA,MAAM,OAAA,GAAU,QAAA,CAAS,CAAC,CAAA;oBAC1B,IAAI,OAAO,WAAW,UAAA,EAAY;wBAChC,OAAA,EAAQ;oBACV,CAAA,MAAO;AACL,wBAAA,MAAA,CAAO,IAAA,CAAK,CAAC,CAAA,EAAG,IAAI,CAAA;AACtB,oBAAA;AACF,gBAAA;AACF,YAAA,CAAA;AACF,QAAA;AACF,IAAA,CAAA;AACF;AAMA,SAAS,eAAA,CAAA,GAAsB,IAAA,EAA8C;AAE3E,IAAA,OAAa,MAAA,WAAA,CAAY,YAAY,GAAG,IAAI,GAAG,IAAI,CAAA;AACrD;;;;","x_google_ignoreList":[0]}
|
@@ -0,0 +1,266 @@
|
|
1
|
+
import * as React from 'react';
|
2
|
+
import { c as composeEventHandlers } from './index-Dm4_czlz.mjs';
|
3
|
+
import { P as Primitive, d as dispatchDiscreteCustomEvent } from './index-D0S6rRRE.mjs';
|
4
|
+
import { u as useComposedRefs } from './index-B4VRyyD1.mjs';
|
5
|
+
import { u as useCallbackRef } from './index-CAg47KJ6.mjs';
|
6
|
+
import { jsx } from 'react/jsx-runtime';
|
7
|
+
import ReactDOM__default from 'react-dom';
|
8
|
+
import { u as useLayoutEffect2 } from './index-BZUrHhU8.mjs';
|
9
|
+
|
10
|
+
// packages/react/use-escape-keydown/src/use-escape-keydown.tsx
|
11
|
+
function useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis?.document) {
|
12
|
+
const onEscapeKeyDown = useCallbackRef(onEscapeKeyDownProp);
|
13
|
+
React.useEffect(()=>{
|
14
|
+
const handleKeyDown = (event)=>{
|
15
|
+
if (event.key === "Escape") {
|
16
|
+
onEscapeKeyDown(event);
|
17
|
+
}
|
18
|
+
};
|
19
|
+
ownerDocument.addEventListener("keydown", handleKeyDown, {
|
20
|
+
capture: true
|
21
|
+
});
|
22
|
+
return ()=>ownerDocument.removeEventListener("keydown", handleKeyDown, {
|
23
|
+
capture: true
|
24
|
+
});
|
25
|
+
}, [
|
26
|
+
onEscapeKeyDown,
|
27
|
+
ownerDocument
|
28
|
+
]);
|
29
|
+
}
|
30
|
+
|
31
|
+
var DISMISSABLE_LAYER_NAME = "DismissableLayer";
|
32
|
+
var CONTEXT_UPDATE = "dismissableLayer.update";
|
33
|
+
var POINTER_DOWN_OUTSIDE = "dismissableLayer.pointerDownOutside";
|
34
|
+
var FOCUS_OUTSIDE = "dismissableLayer.focusOutside";
|
35
|
+
var originalBodyPointerEvents;
|
36
|
+
var DismissableLayerContext = React.createContext({
|
37
|
+
layers: /* @__PURE__ */ new Set(),
|
38
|
+
layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),
|
39
|
+
branches: /* @__PURE__ */ new Set()
|
40
|
+
});
|
41
|
+
var DismissableLayer = React.forwardRef((props, forwardedRef)=>{
|
42
|
+
const { disableOutsidePointerEvents = false, onEscapeKeyDown, onPointerDownOutside, onFocusOutside, onInteractOutside, onDismiss, ...layerProps } = props;
|
43
|
+
const context = React.useContext(DismissableLayerContext);
|
44
|
+
const [node, setNode] = React.useState(null);
|
45
|
+
const ownerDocument = node?.ownerDocument ?? globalThis?.document;
|
46
|
+
const [, force] = React.useState({});
|
47
|
+
const composedRefs = useComposedRefs(forwardedRef, (node2)=>setNode(node2));
|
48
|
+
const layers = Array.from(context.layers);
|
49
|
+
const [highestLayerWithOutsidePointerEventsDisabled] = [
|
50
|
+
...context.layersWithOutsidePointerEventsDisabled
|
51
|
+
].slice(-1);
|
52
|
+
const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled);
|
53
|
+
const index = node ? layers.indexOf(node) : -1;
|
54
|
+
const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;
|
55
|
+
const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;
|
56
|
+
const pointerDownOutside = usePointerDownOutside((event)=>{
|
57
|
+
const target = event.target;
|
58
|
+
const isPointerDownOnBranch = [
|
59
|
+
...context.branches
|
60
|
+
].some((branch)=>branch.contains(target));
|
61
|
+
if (!isPointerEventsEnabled || isPointerDownOnBranch) return;
|
62
|
+
onPointerDownOutside?.(event);
|
63
|
+
onInteractOutside?.(event);
|
64
|
+
if (!event.defaultPrevented) onDismiss?.();
|
65
|
+
}, ownerDocument);
|
66
|
+
const focusOutside = useFocusOutside((event)=>{
|
67
|
+
const target = event.target;
|
68
|
+
const isFocusInBranch = [
|
69
|
+
...context.branches
|
70
|
+
].some((branch)=>branch.contains(target));
|
71
|
+
if (isFocusInBranch) return;
|
72
|
+
onFocusOutside?.(event);
|
73
|
+
onInteractOutside?.(event);
|
74
|
+
if (!event.defaultPrevented) onDismiss?.();
|
75
|
+
}, ownerDocument);
|
76
|
+
useEscapeKeydown((event)=>{
|
77
|
+
const isHighestLayer = index === context.layers.size - 1;
|
78
|
+
if (!isHighestLayer) return;
|
79
|
+
onEscapeKeyDown?.(event);
|
80
|
+
if (!event.defaultPrevented && onDismiss) {
|
81
|
+
event.preventDefault();
|
82
|
+
onDismiss();
|
83
|
+
}
|
84
|
+
}, ownerDocument);
|
85
|
+
React.useEffect(()=>{
|
86
|
+
if (!node) return;
|
87
|
+
if (disableOutsidePointerEvents) {
|
88
|
+
if (context.layersWithOutsidePointerEventsDisabled.size === 0) {
|
89
|
+
originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;
|
90
|
+
ownerDocument.body.style.pointerEvents = "none";
|
91
|
+
}
|
92
|
+
context.layersWithOutsidePointerEventsDisabled.add(node);
|
93
|
+
}
|
94
|
+
context.layers.add(node);
|
95
|
+
dispatchUpdate();
|
96
|
+
return ()=>{
|
97
|
+
if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) {
|
98
|
+
ownerDocument.body.style.pointerEvents = originalBodyPointerEvents;
|
99
|
+
}
|
100
|
+
};
|
101
|
+
}, [
|
102
|
+
node,
|
103
|
+
ownerDocument,
|
104
|
+
disableOutsidePointerEvents,
|
105
|
+
context
|
106
|
+
]);
|
107
|
+
React.useEffect(()=>{
|
108
|
+
return ()=>{
|
109
|
+
if (!node) return;
|
110
|
+
context.layers.delete(node);
|
111
|
+
context.layersWithOutsidePointerEventsDisabled.delete(node);
|
112
|
+
dispatchUpdate();
|
113
|
+
};
|
114
|
+
}, [
|
115
|
+
node,
|
116
|
+
context
|
117
|
+
]);
|
118
|
+
React.useEffect(()=>{
|
119
|
+
const handleUpdate = ()=>force({});
|
120
|
+
document.addEventListener(CONTEXT_UPDATE, handleUpdate);
|
121
|
+
return ()=>document.removeEventListener(CONTEXT_UPDATE, handleUpdate);
|
122
|
+
}, []);
|
123
|
+
return /* @__PURE__ */ jsx(Primitive.div, {
|
124
|
+
...layerProps,
|
125
|
+
ref: composedRefs,
|
126
|
+
style: {
|
127
|
+
pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? "auto" : "none" : void 0,
|
128
|
+
...props.style
|
129
|
+
},
|
130
|
+
onFocusCapture: composeEventHandlers(props.onFocusCapture, focusOutside.onFocusCapture),
|
131
|
+
onBlurCapture: composeEventHandlers(props.onBlurCapture, focusOutside.onBlurCapture),
|
132
|
+
onPointerDownCapture: composeEventHandlers(props.onPointerDownCapture, pointerDownOutside.onPointerDownCapture)
|
133
|
+
});
|
134
|
+
});
|
135
|
+
DismissableLayer.displayName = DISMISSABLE_LAYER_NAME;
|
136
|
+
var BRANCH_NAME = "DismissableLayerBranch";
|
137
|
+
var DismissableLayerBranch = React.forwardRef((props, forwardedRef)=>{
|
138
|
+
const context = React.useContext(DismissableLayerContext);
|
139
|
+
const ref = React.useRef(null);
|
140
|
+
const composedRefs = useComposedRefs(forwardedRef, ref);
|
141
|
+
React.useEffect(()=>{
|
142
|
+
const node = ref.current;
|
143
|
+
if (node) {
|
144
|
+
context.branches.add(node);
|
145
|
+
return ()=>{
|
146
|
+
context.branches.delete(node);
|
147
|
+
};
|
148
|
+
}
|
149
|
+
}, [
|
150
|
+
context.branches
|
151
|
+
]);
|
152
|
+
return /* @__PURE__ */ jsx(Primitive.div, {
|
153
|
+
...props,
|
154
|
+
ref: composedRefs
|
155
|
+
});
|
156
|
+
});
|
157
|
+
DismissableLayerBranch.displayName = BRANCH_NAME;
|
158
|
+
function usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis?.document) {
|
159
|
+
const handlePointerDownOutside = useCallbackRef(onPointerDownOutside);
|
160
|
+
const isPointerInsideReactTreeRef = React.useRef(false);
|
161
|
+
const handleClickRef = React.useRef(()=>{});
|
162
|
+
React.useEffect(()=>{
|
163
|
+
const handlePointerDown = (event)=>{
|
164
|
+
if (event.target && !isPointerInsideReactTreeRef.current) {
|
165
|
+
let handleAndDispatchPointerDownOutsideEvent2 = function() {
|
166
|
+
handleAndDispatchCustomEvent(POINTER_DOWN_OUTSIDE, handlePointerDownOutside, eventDetail, {
|
167
|
+
discrete: true
|
168
|
+
});
|
169
|
+
};
|
170
|
+
const eventDetail = {
|
171
|
+
originalEvent: event
|
172
|
+
};
|
173
|
+
if (event.pointerType === "touch") {
|
174
|
+
ownerDocument.removeEventListener("click", handleClickRef.current);
|
175
|
+
handleClickRef.current = handleAndDispatchPointerDownOutsideEvent2;
|
176
|
+
ownerDocument.addEventListener("click", handleClickRef.current, {
|
177
|
+
once: true
|
178
|
+
});
|
179
|
+
} else {
|
180
|
+
handleAndDispatchPointerDownOutsideEvent2();
|
181
|
+
}
|
182
|
+
} else {
|
183
|
+
ownerDocument.removeEventListener("click", handleClickRef.current);
|
184
|
+
}
|
185
|
+
isPointerInsideReactTreeRef.current = false;
|
186
|
+
};
|
187
|
+
const timerId = window.setTimeout(()=>{
|
188
|
+
ownerDocument.addEventListener("pointerdown", handlePointerDown);
|
189
|
+
}, 0);
|
190
|
+
return ()=>{
|
191
|
+
window.clearTimeout(timerId);
|
192
|
+
ownerDocument.removeEventListener("pointerdown", handlePointerDown);
|
193
|
+
ownerDocument.removeEventListener("click", handleClickRef.current);
|
194
|
+
};
|
195
|
+
}, [
|
196
|
+
ownerDocument,
|
197
|
+
handlePointerDownOutside
|
198
|
+
]);
|
199
|
+
return {
|
200
|
+
// ensures we check React component tree (not just DOM tree)
|
201
|
+
onPointerDownCapture: ()=>isPointerInsideReactTreeRef.current = true
|
202
|
+
};
|
203
|
+
}
|
204
|
+
function useFocusOutside(onFocusOutside, ownerDocument = globalThis?.document) {
|
205
|
+
const handleFocusOutside = useCallbackRef(onFocusOutside);
|
206
|
+
const isFocusInsideReactTreeRef = React.useRef(false);
|
207
|
+
React.useEffect(()=>{
|
208
|
+
const handleFocus = (event)=>{
|
209
|
+
if (event.target && !isFocusInsideReactTreeRef.current) {
|
210
|
+
const eventDetail = {
|
211
|
+
originalEvent: event
|
212
|
+
};
|
213
|
+
handleAndDispatchCustomEvent(FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {
|
214
|
+
discrete: false
|
215
|
+
});
|
216
|
+
}
|
217
|
+
};
|
218
|
+
ownerDocument.addEventListener("focusin", handleFocus);
|
219
|
+
return ()=>ownerDocument.removeEventListener("focusin", handleFocus);
|
220
|
+
}, [
|
221
|
+
ownerDocument,
|
222
|
+
handleFocusOutside
|
223
|
+
]);
|
224
|
+
return {
|
225
|
+
onFocusCapture: ()=>isFocusInsideReactTreeRef.current = true,
|
226
|
+
onBlurCapture: ()=>isFocusInsideReactTreeRef.current = false
|
227
|
+
};
|
228
|
+
}
|
229
|
+
function dispatchUpdate() {
|
230
|
+
const event = new CustomEvent(CONTEXT_UPDATE);
|
231
|
+
document.dispatchEvent(event);
|
232
|
+
}
|
233
|
+
function handleAndDispatchCustomEvent(name, handler, detail, { discrete }) {
|
234
|
+
const target = detail.originalEvent.target;
|
235
|
+
const event = new CustomEvent(name, {
|
236
|
+
bubbles: false,
|
237
|
+
cancelable: true,
|
238
|
+
detail
|
239
|
+
});
|
240
|
+
if (handler) target.addEventListener(name, handler, {
|
241
|
+
once: true
|
242
|
+
});
|
243
|
+
if (discrete) {
|
244
|
+
dispatchDiscreteCustomEvent(target, event);
|
245
|
+
} else {
|
246
|
+
target.dispatchEvent(event);
|
247
|
+
}
|
248
|
+
}
|
249
|
+
var Root = DismissableLayer;
|
250
|
+
var Branch = DismissableLayerBranch;
|
251
|
+
|
252
|
+
var PORTAL_NAME = "Portal";
|
253
|
+
var Portal = React.forwardRef((props, forwardedRef)=>{
|
254
|
+
const { container: containerProp, ...portalProps } = props;
|
255
|
+
const [mounted, setMounted] = React.useState(false);
|
256
|
+
useLayoutEffect2(()=>setMounted(true), []);
|
257
|
+
const container = containerProp || mounted && globalThis?.document?.body;
|
258
|
+
return container ? ReactDOM__default.createPortal(/* @__PURE__ */ jsx(Primitive.div, {
|
259
|
+
...portalProps,
|
260
|
+
ref: forwardedRef
|
261
|
+
}), container) : null;
|
262
|
+
});
|
263
|
+
Portal.displayName = PORTAL_NAME;
|
264
|
+
|
265
|
+
export { Branch as B, DismissableLayer as D, Portal as P, Root as R };
|
266
|
+
//# sourceMappingURL=index-BE-_q4IW.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index-BE-_q4IW.mjs","sources":["../../node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs","../../node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs","../../node_modules/@radix-ui/react-portal/dist/index.mjs"],"sourcesContent":["// packages/react/use-escape-keydown/src/use-escape-keydown.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis?.document) {\n const onEscapeKeyDown = useCallbackRef(onEscapeKeyDownProp);\n React.useEffect(() => {\n const handleKeyDown = (event) => {\n if (event.key === \"Escape\") {\n onEscapeKeyDown(event);\n }\n };\n ownerDocument.addEventListener(\"keydown\", handleKeyDown, { capture: true });\n return () => ownerDocument.removeEventListener(\"keydown\", handleKeyDown, { capture: true });\n }, [onEscapeKeyDown, ownerDocument]);\n}\nexport {\n useEscapeKeydown\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/dismissable-layer.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { Primitive, dispatchDiscreteCustomEvent } from \"@radix-ui/react-primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useEscapeKeydown } from \"@radix-ui/react-use-escape-keydown\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DISMISSABLE_LAYER_NAME = \"DismissableLayer\";\nvar CONTEXT_UPDATE = \"dismissableLayer.update\";\nvar POINTER_DOWN_OUTSIDE = \"dismissableLayer.pointerDownOutside\";\nvar FOCUS_OUTSIDE = \"dismissableLayer.focusOutside\";\nvar originalBodyPointerEvents;\nvar DismissableLayerContext = React.createContext({\n layers: /* @__PURE__ */ new Set(),\n layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),\n branches: /* @__PURE__ */ new Set()\n});\nvar DismissableLayer = React.forwardRef(\n (props, forwardedRef) => {\n const {\n disableOutsidePointerEvents = false,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n ...layerProps\n } = props;\n const context = React.useContext(DismissableLayerContext);\n const [node, setNode] = React.useState(null);\n const ownerDocument = node?.ownerDocument ?? globalThis?.document;\n const [, force] = React.useState({});\n const composedRefs = useComposedRefs(forwardedRef, (node2) => setNode(node2));\n const layers = Array.from(context.layers);\n const [highestLayerWithOutsidePointerEventsDisabled] = [...context.layersWithOutsidePointerEventsDisabled].slice(-1);\n const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled);\n const index = node ? layers.indexOf(node) : -1;\n const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;\n const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;\n const pointerDownOutside = usePointerDownOutside((event) => {\n const target = event.target;\n const isPointerDownOnBranch = [...context.branches].some((branch) => branch.contains(target));\n if (!isPointerEventsEnabled || isPointerDownOnBranch) return;\n onPointerDownOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n const focusOutside = useFocusOutside((event) => {\n const target = event.target;\n const isFocusInBranch = [...context.branches].some((branch) => branch.contains(target));\n if (isFocusInBranch) return;\n onFocusOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n useEscapeKeydown((event) => {\n const isHighestLayer = index === context.layers.size - 1;\n if (!isHighestLayer) return;\n onEscapeKeyDown?.(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }, ownerDocument);\n React.useEffect(() => {\n if (!node) return;\n if (disableOutsidePointerEvents) {\n if (context.layersWithOutsidePointerEventsDisabled.size === 0) {\n originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;\n ownerDocument.body.style.pointerEvents = \"none\";\n }\n context.layersWithOutsidePointerEventsDisabled.add(node);\n }\n context.layers.add(node);\n dispatchUpdate();\n return () => {\n if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) {\n ownerDocument.body.style.pointerEvents = originalBodyPointerEvents;\n }\n };\n }, [node, ownerDocument, disableOutsidePointerEvents, context]);\n React.useEffect(() => {\n return () => {\n if (!node) return;\n context.layers.delete(node);\n context.layersWithOutsidePointerEventsDisabled.delete(node);\n dispatchUpdate();\n };\n }, [node, context]);\n React.useEffect(() => {\n const handleUpdate = () => force({});\n document.addEventListener(CONTEXT_UPDATE, handleUpdate);\n return () => document.removeEventListener(CONTEXT_UPDATE, handleUpdate);\n }, []);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...layerProps,\n ref: composedRefs,\n style: {\n pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? \"auto\" : \"none\" : void 0,\n ...props.style\n },\n onFocusCapture: composeEventHandlers(props.onFocusCapture, focusOutside.onFocusCapture),\n onBlurCapture: composeEventHandlers(props.onBlurCapture, focusOutside.onBlurCapture),\n onPointerDownCapture: composeEventHandlers(\n props.onPointerDownCapture,\n pointerDownOutside.onPointerDownCapture\n )\n }\n );\n }\n);\nDismissableLayer.displayName = DISMISSABLE_LAYER_NAME;\nvar BRANCH_NAME = \"DismissableLayerBranch\";\nvar DismissableLayerBranch = React.forwardRef((props, forwardedRef) => {\n const context = React.useContext(DismissableLayerContext);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n context.branches.add(node);\n return () => {\n context.branches.delete(node);\n };\n }\n }, [context.branches]);\n return /* @__PURE__ */ jsx(Primitive.div, { ...props, ref: composedRefs });\n});\nDismissableLayerBranch.displayName = BRANCH_NAME;\nfunction usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis?.document) {\n const handlePointerDownOutside = useCallbackRef(onPointerDownOutside);\n const isPointerInsideReactTreeRef = React.useRef(false);\n const handleClickRef = React.useRef(() => {\n });\n React.useEffect(() => {\n const handlePointerDown = (event) => {\n if (event.target && !isPointerInsideReactTreeRef.current) {\n let handleAndDispatchPointerDownOutsideEvent2 = function() {\n handleAndDispatchCustomEvent(\n POINTER_DOWN_OUTSIDE,\n handlePointerDownOutside,\n eventDetail,\n { discrete: true }\n );\n };\n var handleAndDispatchPointerDownOutsideEvent = handleAndDispatchPointerDownOutsideEvent2;\n const eventDetail = { originalEvent: event };\n if (event.pointerType === \"touch\") {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n handleClickRef.current = handleAndDispatchPointerDownOutsideEvent2;\n ownerDocument.addEventListener(\"click\", handleClickRef.current, { once: true });\n } else {\n handleAndDispatchPointerDownOutsideEvent2();\n }\n } else {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n }\n isPointerInsideReactTreeRef.current = false;\n };\n const timerId = window.setTimeout(() => {\n ownerDocument.addEventListener(\"pointerdown\", handlePointerDown);\n }, 0);\n return () => {\n window.clearTimeout(timerId);\n ownerDocument.removeEventListener(\"pointerdown\", handlePointerDown);\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n };\n }, [ownerDocument, handlePointerDownOutside]);\n return {\n // ensures we check React component tree (not just DOM tree)\n onPointerDownCapture: () => isPointerInsideReactTreeRef.current = true\n };\n}\nfunction useFocusOutside(onFocusOutside, ownerDocument = globalThis?.document) {\n const handleFocusOutside = useCallbackRef(onFocusOutside);\n const isFocusInsideReactTreeRef = React.useRef(false);\n React.useEffect(() => {\n const handleFocus = (event) => {\n if (event.target && !isFocusInsideReactTreeRef.current) {\n const eventDetail = { originalEvent: event };\n handleAndDispatchCustomEvent(FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {\n discrete: false\n });\n }\n };\n ownerDocument.addEventListener(\"focusin\", handleFocus);\n return () => ownerDocument.removeEventListener(\"focusin\", handleFocus);\n }, [ownerDocument, handleFocusOutside]);\n return {\n onFocusCapture: () => isFocusInsideReactTreeRef.current = true,\n onBlurCapture: () => isFocusInsideReactTreeRef.current = false\n };\n}\nfunction dispatchUpdate() {\n const event = new CustomEvent(CONTEXT_UPDATE);\n document.dispatchEvent(event);\n}\nfunction handleAndDispatchCustomEvent(name, handler, detail, { discrete }) {\n const target = detail.originalEvent.target;\n const event = new CustomEvent(name, { bubbles: false, cancelable: true, detail });\n if (handler) target.addEventListener(name, handler, { once: true });\n if (discrete) {\n dispatchDiscreteCustomEvent(target, event);\n } else {\n target.dispatchEvent(event);\n }\n}\nvar Root = DismissableLayer;\nvar Branch = DismissableLayerBranch;\nexport {\n Branch,\n DismissableLayer,\n DismissableLayerBranch,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/portal.tsx\nimport * as React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { jsx } from \"react/jsx-runtime\";\nvar PORTAL_NAME = \"Portal\";\nvar Portal = React.forwardRef((props, forwardedRef) => {\n const { container: containerProp, ...portalProps } = props;\n const [mounted, setMounted] = React.useState(false);\n useLayoutEffect(() => setMounted(true), []);\n const container = containerProp || mounted && globalThis?.document?.body;\n return container ? ReactDOM.createPortal(/* @__PURE__ */ jsx(Primitive.div, { ...portalProps, ref: forwardedRef }), container) : null;\n});\nPortal.displayName = PORTAL_NAME;\nvar Root = Portal;\nexport {\n Portal,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["node","handleAndDispatchPointerDownOutsideEvent","useLayoutEffect","ReactDOM"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|