ivt 0.0.5 → 0.0.7
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 +1 -1
- package/dist/badge/index.mjs +1 -1
- package/dist/base/index.d.ts +13 -1
- package/dist/base/index.mjs +1 -1
- package/dist/base/index.mjs.map +1 -1
- package/dist/button/index.d.ts +3 -2
- package/dist/button/index.mjs +1 -1
- package/dist/calendar/index.d.ts +2 -1
- package/dist/calendar/index.mjs +1 -1
- package/dist/calendar/index.mjs.map +1 -1
- package/dist/card/index.mjs +1 -1
- package/dist/checkbox/index.mjs +1 -1
- package/dist/chunks/Combination-CyYyS_SM.mjs +2 -0
- package/dist/chunks/Combination-CyYyS_SM.mjs.map +1 -0
- package/dist/chunks/{TextWrap-apUajb0q.mjs → TextWrap-aRTaok1G.mjs} +2 -2
- package/dist/chunks/{TextWrap-apUajb0q.mjs.map → TextWrap-aRTaok1G.mjs.map} +1 -1
- package/dist/chunks/{accordion-CQGSj-IW.mjs → accordion-DpawKek3.mjs} +2 -2
- package/dist/chunks/{accordion-CQGSj-IW.mjs.map → accordion-DpawKek3.mjs.map} +1 -1
- package/dist/chunks/{bundle-mjs-CtG6Smj_.mjs → bundle-mjs-DnMeAVOT.mjs} +1 -1
- package/dist/chunks/{bundle-mjs-CtG6Smj_.mjs.map → bundle-mjs-DnMeAVOT.mjs.map} +1 -1
- package/dist/chunks/{button-D_c_ntEX.mjs → button-CUUUd-GC.mjs} +2 -2
- package/dist/chunks/{button-D_c_ntEX.mjs.map → button-CUUUd-GC.mjs.map} +1 -1
- package/dist/chunks/calendar-Bgc5EEL2.mjs +2 -0
- package/dist/chunks/calendar-Bgc5EEL2.mjs.map +1 -0
- package/dist/chunks/check-0el77MKz.mjs +2 -0
- package/dist/chunks/{check-DjRtCxG6.mjs.map → check-0el77MKz.mjs.map} +1 -1
- package/dist/chunks/chevron-down-D5Xyp48A.mjs +2 -0
- package/dist/chunks/{chevron-down-BCzo9yB2.mjs.map → chevron-down-D5Xyp48A.mjs.map} +1 -1
- package/dist/chunks/chevron-left-DSinxt9A.mjs +2 -0
- package/dist/chunks/{chevron-left-DUJqO1vN.mjs.map → chevron-left-DSinxt9A.mjs.map} +1 -1
- package/dist/chunks/chevron-right-DvIJOX9A.mjs +2 -0
- package/dist/chunks/{chevron-right-CoNJE7ZW.mjs.map → chevron-right-DvIJOX9A.mjs.map} +1 -1
- package/dist/chunks/{command-eoEJKrZQ.mjs → command-BkvrXopz.mjs} +2 -2
- package/dist/chunks/{command-eoEJKrZQ.mjs.map → command-BkvrXopz.mjs.map} +1 -1
- package/dist/chunks/{createLucideIcon-CIn9dHnW.mjs → createLucideIcon-De2tZJhv.mjs} +1 -1
- package/dist/chunks/{createLucideIcon-CIn9dHnW.mjs.map → createLucideIcon-De2tZJhv.mjs.map} +1 -1
- package/dist/chunks/{dialog-TKsk0Iu2.mjs → dialog-Ci5YNXh2.mjs} +2 -2
- package/dist/chunks/{dialog-TKsk0Iu2.mjs.map → dialog-Ci5YNXh2.mjs.map} +1 -1
- package/dist/chunks/{index-B98y16WE.mjs → index-0ulImjdF.mjs} +2 -2
- package/dist/chunks/{index-B98y16WE.mjs.map → index-0ulImjdF.mjs.map} +1 -1
- package/dist/chunks/{index-CCYyT_rk.mjs → index-BGhqW2Il.mjs} +1 -1
- package/dist/chunks/{index-CCYyT_rk.mjs.map → index-BGhqW2Il.mjs.map} +1 -1
- package/dist/chunks/{index-DOx7g1Qo.mjs → index-BuGzJybI.mjs} +2 -2
- package/dist/chunks/{index-DOx7g1Qo.mjs.map → index-BuGzJybI.mjs.map} +1 -1
- package/dist/chunks/{index-BpJwNLRW.mjs → index-C5go0LX8.mjs} +1 -1
- package/dist/chunks/{index-BpJwNLRW.mjs.map → index-C5go0LX8.mjs.map} +1 -1
- package/dist/chunks/{index-CXrD_SvM.mjs → index-CVTJI-8T.mjs} +2 -2
- package/dist/chunks/{index-CXrD_SvM.mjs.map → index-CVTJI-8T.mjs.map} +1 -1
- package/dist/chunks/index-CllKujAS.mjs +2 -0
- package/dist/chunks/{index-CluuXDB_.mjs.map → index-CllKujAS.mjs.map} +1 -1
- package/dist/chunks/{index-DxtdpBCb.mjs → index-CmGsz_8M.mjs} +1 -1
- package/dist/chunks/{index-DxtdpBCb.mjs.map → index-CmGsz_8M.mjs.map} +1 -1
- package/dist/chunks/{index-D-s-TbR3.mjs → index-DMXVIqDM.mjs} +2 -2
- package/dist/chunks/{index-D-s-TbR3.mjs.map → index-DMXVIqDM.mjs.map} +1 -1
- package/dist/chunks/{index-Db2NO0t8.mjs → index-DhIMkiDX.mjs} +2 -2
- package/dist/chunks/{index-Db2NO0t8.mjs.map → index-DhIMkiDX.mjs.map} +1 -1
- package/dist/chunks/{index-C598HM8V.mjs → index-Eo-UV7HL.mjs} +2 -2
- package/dist/chunks/{index-C598HM8V.mjs.map → index-Eo-UV7HL.mjs.map} +1 -1
- package/dist/chunks/{index-DzMQps4Q.mjs → index-SI7n7FwH.mjs} +2 -2
- package/dist/chunks/{index-DzMQps4Q.mjs.map → index-SI7n7FwH.mjs.map} +1 -1
- package/dist/chunks/{index-CX5r7IKM.mjs → index-wbuw6FYR.mjs} +1 -1
- package/dist/chunks/{index-CX5r7IKM.mjs.map → index-wbuw6FYR.mjs.map} +1 -1
- package/dist/chunks/{input-BxTp3Q5l.mjs → input-YYNIX4HJ.mjs} +2 -2
- package/dist/chunks/{input-BxTp3Q5l.mjs.map → input-YYNIX4HJ.mjs.map} +1 -1
- package/dist/chunks/{label-BhQUf4a7.mjs → label-xCRg1H88.mjs} +2 -2
- package/dist/chunks/{label-BhQUf4a7.mjs.map → label-xCRg1H88.mjs.map} +1 -1
- package/dist/chunks/{pagination-qTGmkoRO.mjs → pagination-CJBX9rpr.mjs} +2 -2
- package/dist/chunks/{pagination-qTGmkoRO.mjs.map → pagination-CJBX9rpr.mjs.map} +1 -1
- package/dist/chunks/popover-C5RxsRcQ.mjs +2 -0
- package/dist/chunks/{popover-DDPhp0Sa.mjs.map → popover-C5RxsRcQ.mjs.map} +1 -1
- package/dist/chunks/{progress-C_yWLgAi.mjs → progress-D1bk3yWe.mjs} +2 -2
- package/dist/chunks/{progress-C_yWLgAi.mjs.map → progress-D1bk3yWe.mjs.map} +1 -1
- package/dist/chunks/{scroll-area-CuX49k8h.mjs → scroll-area-00P-K3zA.mjs} +2 -2
- package/dist/chunks/{scroll-area-CuX49k8h.mjs.map → scroll-area-00P-K3zA.mjs.map} +1 -1
- package/dist/chunks/{select-BydKi4E_.mjs → select-3Bu7wZI4.mjs} +2 -2
- package/dist/chunks/{select-BydKi4E_.mjs.map → select-3Bu7wZI4.mjs.map} +1 -1
- package/dist/chunks/{skeleton-BFnps3wE.mjs → skeleton-Cug3TaOR.mjs} +2 -2
- package/dist/chunks/{skeleton-BFnps3wE.mjs.map → skeleton-Cug3TaOR.mjs.map} +1 -1
- package/dist/chunks/{sortable-7DK1K35h.mjs → sortable-BfuXuKfa.mjs} +2 -2
- package/dist/chunks/{sortable-7DK1K35h.mjs.map → sortable-BfuXuKfa.mjs.map} +1 -1
- package/dist/chunks/{table-DRvqJktC.mjs → table-BEFxdl4s.mjs} +2 -2
- package/dist/chunks/{table-DRvqJktC.mjs.map → table-BEFxdl4s.mjs.map} +1 -1
- package/dist/chunks/{tslib.es6-Cx3xzITX.mjs → tslib.es6-BF29wwud.mjs} +1 -1
- package/dist/chunks/{tslib.es6-Cx3xzITX.mjs.map → tslib.es6-BF29wwud.mjs.map} +1 -1
- package/dist/chunks/{utils-jIFl11as.mjs → utils-ihtedRak.mjs} +2 -2
- package/dist/chunks/{utils-jIFl11as.mjs.map → utils-ihtedRak.mjs.map} +1 -1
- package/dist/chunks/x-CTH8w2xf.mjs +2 -0
- package/dist/chunks/{x-xnz0lTd-.mjs.map → x-CTH8w2xf.mjs.map} +1 -1
- package/dist/command/index.mjs +1 -1
- package/dist/data-table/index.d.ts +5 -2
- package/dist/data-table/index.mjs +1 -1
- package/dist/data-table/index.mjs.map +1 -1
- package/dist/dialog/index.mjs +1 -1
- package/dist/dropdown-menu/index.mjs +1 -1
- package/dist/dropdown-menu/index.mjs.map +1 -1
- package/dist/dropzone/index.d.ts +7 -4
- package/dist/dropzone/index.mjs +2 -2
- package/dist/dropzone/index.mjs.map +1 -1
- package/dist/form/index.mjs +1 -1
- package/dist/icon/index.mjs +1 -1
- package/dist/index/index.d.ts +1 -1
- package/dist/index.css +1 -7
- package/dist/input/index.mjs +1 -1
- package/dist/label/index.mjs +1 -1
- package/dist/pagination/index.mjs +1 -1
- package/dist/popover/index.mjs +1 -1
- package/dist/progress/index.mjs +1 -1
- package/dist/scroll-area/index.mjs +1 -1
- package/dist/select/index.mjs +1 -1
- package/dist/separator/index.mjs +1 -1
- package/dist/sheet/index.mjs +1 -1
- package/dist/sheet/index.mjs.map +1 -1
- package/dist/skeleton/index.mjs +1 -1
- package/dist/sortable/index.mjs +1 -1
- package/dist/table/index.mjs +1 -1
- package/dist/tabs/index.mjs +1 -1
- package/dist/toast/index.d.ts +12 -11
- package/dist/toast/index.mjs +1 -1
- package/dist/toast/index.mjs.map +1 -1
- package/dist/tooltip/index.mjs +1 -1
- package/dist/tooltip/index.mjs.map +1 -1
- package/package.json +5 -4
- package/dist/chunks/check-DjRtCxG6.mjs +0 -2
- package/dist/chunks/chevron-down-BCzo9yB2.mjs +0 -2
- package/dist/chunks/chevron-left-DUJqO1vN.mjs +0 -2
- package/dist/chunks/chevron-right-CoNJE7ZW.mjs +0 -2
- package/dist/chunks/index-ChLuxn93.mjs +0 -2
- package/dist/chunks/index-ChLuxn93.mjs.map +0 -1
- package/dist/chunks/index-CluuXDB_.mjs +0 -2
- package/dist/chunks/popover-DDPhp0Sa.mjs +0 -2
- package/dist/chunks/x-xnz0lTd-.mjs +0 -2
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../node_modules/@radix-ui/react-tooltip/dist/index.mjs","../../src/components/ui/tooltip/tooltip.tsx"],"sourcesContent":["\"use client\";\n\n// packages/react/tooltip/src/tooltip.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useId } from \"@radix-ui/react-id\";\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 { Slottable } from \"@radix-ui/react-slot\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport * as VisuallyHiddenPrimitive from \"@radix-ui/react-visually-hidden\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar [createTooltipContext, createTooltipScope] = createContextScope(\"Tooltip\", [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar PROVIDER_NAME = \"TooltipProvider\";\nvar DEFAULT_DELAY_DURATION = 700;\nvar TOOLTIP_OPEN = \"tooltip.open\";\nvar [TooltipProviderContextProvider, useTooltipProviderContext] = createTooltipContext(PROVIDER_NAME);\nvar TooltipProvider = (props) => {\n const {\n __scopeTooltip,\n delayDuration = DEFAULT_DELAY_DURATION,\n skipDelayDuration = 300,\n disableHoverableContent = false,\n children\n } = props;\n const [isOpenDelayed, setIsOpenDelayed] = React.useState(true);\n const isPointerInTransitRef = React.useRef(false);\n const skipDelayTimerRef = React.useRef(0);\n React.useEffect(() => {\n const skipDelayTimer = skipDelayTimerRef.current;\n return () => window.clearTimeout(skipDelayTimer);\n }, []);\n return /* @__PURE__ */ jsx(\n TooltipProviderContextProvider,\n {\n scope: __scopeTooltip,\n isOpenDelayed,\n delayDuration,\n onOpen: React.useCallback(() => {\n window.clearTimeout(skipDelayTimerRef.current);\n setIsOpenDelayed(false);\n }, []),\n onClose: React.useCallback(() => {\n window.clearTimeout(skipDelayTimerRef.current);\n skipDelayTimerRef.current = window.setTimeout(\n () => setIsOpenDelayed(true),\n skipDelayDuration\n );\n }, [skipDelayDuration]),\n isPointerInTransitRef,\n onPointerInTransitChange: React.useCallback((inTransit) => {\n isPointerInTransitRef.current = inTransit;\n }, []),\n disableHoverableContent,\n children\n }\n );\n};\nTooltipProvider.displayName = PROVIDER_NAME;\nvar TOOLTIP_NAME = \"Tooltip\";\nvar [TooltipContextProvider, useTooltipContext] = createTooltipContext(TOOLTIP_NAME);\nvar Tooltip = (props) => {\n const {\n __scopeTooltip,\n children,\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n disableHoverableContent: disableHoverableContentProp,\n delayDuration: delayDurationProp\n } = props;\n const providerContext = useTooltipProviderContext(TOOLTIP_NAME, props.__scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const [trigger, setTrigger] = React.useState(null);\n const contentId = useId();\n const openTimerRef = React.useRef(0);\n const disableHoverableContent = disableHoverableContentProp ?? providerContext.disableHoverableContent;\n const delayDuration = delayDurationProp ?? providerContext.delayDuration;\n const wasOpenDelayedRef = React.useRef(false);\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: (open2) => {\n if (open2) {\n providerContext.onOpen();\n document.dispatchEvent(new CustomEvent(TOOLTIP_OPEN));\n } else {\n providerContext.onClose();\n }\n onOpenChange?.(open2);\n }\n });\n const stateAttribute = React.useMemo(() => {\n return open ? wasOpenDelayedRef.current ? \"delayed-open\" : \"instant-open\" : \"closed\";\n }, [open]);\n const handleOpen = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n wasOpenDelayedRef.current = false;\n setOpen(true);\n }, [setOpen]);\n const handleClose = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n setOpen(false);\n }, [setOpen]);\n const handleDelayedOpen = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = window.setTimeout(() => {\n wasOpenDelayedRef.current = true;\n setOpen(true);\n openTimerRef.current = 0;\n }, delayDuration);\n }, [delayDuration, setOpen]);\n React.useEffect(() => {\n return () => {\n if (openTimerRef.current) {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n };\n }, []);\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n TooltipContextProvider,\n {\n scope: __scopeTooltip,\n contentId,\n open,\n stateAttribute,\n trigger,\n onTriggerChange: setTrigger,\n onTriggerEnter: React.useCallback(() => {\n if (providerContext.isOpenDelayed) handleDelayedOpen();\n else handleOpen();\n }, [providerContext.isOpenDelayed, handleDelayedOpen, handleOpen]),\n onTriggerLeave: React.useCallback(() => {\n if (disableHoverableContent) {\n handleClose();\n } else {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n }, [handleClose, disableHoverableContent]),\n onOpen: handleOpen,\n onClose: handleClose,\n disableHoverableContent,\n children\n }\n ) });\n};\nTooltip.displayName = TOOLTIP_NAME;\nvar TRIGGER_NAME = \"TooltipTrigger\";\nvar TooltipTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTooltip, ...triggerProps } = props;\n const context = useTooltipContext(TRIGGER_NAME, __scopeTooltip);\n const providerContext = useTooltipProviderContext(TRIGGER_NAME, __scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onTriggerChange);\n const isPointerDownRef = React.useRef(false);\n const hasPointerMoveOpenedRef = React.useRef(false);\n const handlePointerUp = React.useCallback(() => isPointerDownRef.current = false, []);\n React.useEffect(() => {\n return () => document.removeEventListener(\"pointerup\", handlePointerUp);\n }, [handlePointerUp]);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n \"aria-describedby\": context.open ? context.contentId : void 0,\n \"data-state\": context.stateAttribute,\n ...triggerProps,\n ref: composedRefs,\n onPointerMove: composeEventHandlers(props.onPointerMove, (event) => {\n if (event.pointerType === \"touch\") return;\n if (!hasPointerMoveOpenedRef.current && !providerContext.isPointerInTransitRef.current) {\n context.onTriggerEnter();\n hasPointerMoveOpenedRef.current = true;\n }\n }),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => {\n context.onTriggerLeave();\n hasPointerMoveOpenedRef.current = false;\n }),\n onPointerDown: composeEventHandlers(props.onPointerDown, () => {\n isPointerDownRef.current = true;\n document.addEventListener(\"pointerup\", handlePointerUp, { once: true });\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n if (!isPointerDownRef.current) context.onOpen();\n }),\n onBlur: composeEventHandlers(props.onBlur, context.onClose),\n onClick: composeEventHandlers(props.onClick, context.onClose)\n }\n ) });\n }\n);\nTooltipTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"TooltipPortal\";\nvar [PortalProvider, usePortalContext] = createTooltipContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar TooltipPortal = (props) => {\n const { __scopeTooltip, forceMount, children, container } = props;\n const context = useTooltipContext(PORTAL_NAME, __scopeTooltip);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeTooltip, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nTooltipPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"TooltipContent\";\nvar TooltipContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeTooltip);\n const { forceMount = portalContext.forceMount, side = \"top\", ...contentProps } = props;\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.disableHoverableContent ? /* @__PURE__ */ jsx(TooltipContentImpl, { side, ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(TooltipContentHoverable, { side, ...contentProps, ref: forwardedRef }) });\n }\n);\nvar TooltipContentHoverable = React.forwardRef((props, forwardedRef) => {\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n const providerContext = useTooltipProviderContext(CONTENT_NAME, props.__scopeTooltip);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [pointerGraceArea, setPointerGraceArea] = React.useState(null);\n const { trigger, onClose } = context;\n const content = ref.current;\n const { onPointerInTransitChange } = providerContext;\n const handleRemoveGraceArea = React.useCallback(() => {\n setPointerGraceArea(null);\n onPointerInTransitChange(false);\n }, [onPointerInTransitChange]);\n const handleCreateGraceArea = React.useCallback(\n (event, hoverTarget) => {\n const currentTarget = event.currentTarget;\n const exitPoint = { x: event.clientX, y: event.clientY };\n const exitSide = getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());\n const paddedExitPoints = getPaddedExitPoints(exitPoint, exitSide);\n const hoverTargetPoints = getPointsFromRect(hoverTarget.getBoundingClientRect());\n const graceArea = getHull([...paddedExitPoints, ...hoverTargetPoints]);\n setPointerGraceArea(graceArea);\n onPointerInTransitChange(true);\n },\n [onPointerInTransitChange]\n );\n React.useEffect(() => {\n return () => handleRemoveGraceArea();\n }, [handleRemoveGraceArea]);\n React.useEffect(() => {\n if (trigger && content) {\n const handleTriggerLeave = (event) => handleCreateGraceArea(event, content);\n const handleContentLeave = (event) => handleCreateGraceArea(event, trigger);\n trigger.addEventListener(\"pointerleave\", handleTriggerLeave);\n content.addEventListener(\"pointerleave\", handleContentLeave);\n return () => {\n trigger.removeEventListener(\"pointerleave\", handleTriggerLeave);\n content.removeEventListener(\"pointerleave\", handleContentLeave);\n };\n }\n }, [trigger, content, handleCreateGraceArea, handleRemoveGraceArea]);\n React.useEffect(() => {\n if (pointerGraceArea) {\n const handleTrackPointerGrace = (event) => {\n const target = event.target;\n const pointerPosition = { x: event.clientX, y: event.clientY };\n const hasEnteredTarget = trigger?.contains(target) || content?.contains(target);\n const isPointerOutsideGraceArea = !isPointInPolygon(pointerPosition, pointerGraceArea);\n if (hasEnteredTarget) {\n handleRemoveGraceArea();\n } else if (isPointerOutsideGraceArea) {\n handleRemoveGraceArea();\n onClose();\n }\n };\n document.addEventListener(\"pointermove\", handleTrackPointerGrace);\n return () => document.removeEventListener(\"pointermove\", handleTrackPointerGrace);\n }\n }, [trigger, content, pointerGraceArea, onClose, handleRemoveGraceArea]);\n return /* @__PURE__ */ jsx(TooltipContentImpl, { ...props, ref: composedRefs });\n});\nvar [VisuallyHiddenContentContextProvider, useVisuallyHiddenContentContext] = createTooltipContext(TOOLTIP_NAME, { isInside: false });\nvar TooltipContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTooltip,\n children,\n \"aria-label\": ariaLabel,\n onEscapeKeyDown,\n onPointerDownOutside,\n ...contentProps\n } = props;\n const context = useTooltipContext(CONTENT_NAME, __scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const { onClose } = context;\n React.useEffect(() => {\n document.addEventListener(TOOLTIP_OPEN, onClose);\n return () => document.removeEventListener(TOOLTIP_OPEN, onClose);\n }, [onClose]);\n React.useEffect(() => {\n if (context.trigger) {\n const handleScroll = (event) => {\n const target = event.target;\n if (target?.contains(context.trigger)) onClose();\n };\n window.addEventListener(\"scroll\", handleScroll, { capture: true });\n return () => window.removeEventListener(\"scroll\", handleScroll, { capture: true });\n }\n }, [context.trigger, onClose]);\n return /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: false,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: (event) => event.preventDefault(),\n onDismiss: onClose,\n children: /* @__PURE__ */ jsxs(\n PopperPrimitive.Content,\n {\n \"data-state\": context.stateAttribute,\n ...popperScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...contentProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-tooltip-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-tooltip-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-tooltip-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-tooltip-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-tooltip-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n },\n children: [\n /* @__PURE__ */ jsx(Slottable, { children }),\n /* @__PURE__ */ jsx(VisuallyHiddenContentContextProvider, { scope: __scopeTooltip, isInside: true, children: /* @__PURE__ */ jsx(VisuallyHiddenPrimitive.Root, { id: context.contentId, role: \"tooltip\", children: ariaLabel || children }) })\n ]\n }\n )\n }\n );\n }\n);\nTooltipContent.displayName = CONTENT_NAME;\nvar ARROW_NAME = \"TooltipArrow\";\nvar TooltipArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTooltip, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeTooltip);\n const visuallyHiddenContentContext = useVisuallyHiddenContentContext(\n ARROW_NAME,\n __scopeTooltip\n );\n return visuallyHiddenContentContext.isInside ? null : /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nTooltipArrow.displayName = ARROW_NAME;\nfunction getExitSideFromRect(point, rect) {\n const top = Math.abs(rect.top - point.y);\n const bottom = Math.abs(rect.bottom - point.y);\n const right = Math.abs(rect.right - point.x);\n const left = Math.abs(rect.left - point.x);\n switch (Math.min(top, bottom, right, left)) {\n case left:\n return \"left\";\n case right:\n return \"right\";\n case top:\n return \"top\";\n case bottom:\n return \"bottom\";\n default:\n throw new Error(\"unreachable\");\n }\n}\nfunction getPaddedExitPoints(exitPoint, exitSide, padding = 5) {\n const paddedExitPoints = [];\n switch (exitSide) {\n case \"top\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y + padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case \"bottom\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y - padding }\n );\n break;\n case \"left\":\n paddedExitPoints.push(\n { x: exitPoint.x + padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case \"right\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x - padding, y: exitPoint.y + padding }\n );\n break;\n }\n return paddedExitPoints;\n}\nfunction getPointsFromRect(rect) {\n const { top, right, bottom, left } = rect;\n return [\n { x: left, y: top },\n { x: right, y: top },\n { x: right, y: bottom },\n { x: left, y: bottom }\n ];\n}\nfunction isPointInPolygon(point, polygon) {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const xi = polygon[i].x;\n const yi = polygon[i].y;\n const xj = polygon[j].x;\n const yj = polygon[j].y;\n const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\nfunction getHull(points) {\n const newPoints = points.slice();\n newPoints.sort((a, b) => {\n if (a.x < b.x) return -1;\n else if (a.x > b.x) return 1;\n else if (a.y < b.y) return -1;\n else if (a.y > b.y) return 1;\n else return 0;\n });\n return getHullPresorted(newPoints);\n}\nfunction getHullPresorted(points) {\n if (points.length <= 1) return points.slice();\n const upperHull = [];\n for (let i = 0; i < points.length; i++) {\n const p = points[i];\n while (upperHull.length >= 2) {\n const q = upperHull[upperHull.length - 1];\n const r = upperHull[upperHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) upperHull.pop();\n else break;\n }\n upperHull.push(p);\n }\n upperHull.pop();\n const lowerHull = [];\n for (let i = points.length - 1; i >= 0; i--) {\n const p = points[i];\n while (lowerHull.length >= 2) {\n const q = lowerHull[lowerHull.length - 1];\n const r = lowerHull[lowerHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) lowerHull.pop();\n else break;\n }\n lowerHull.push(p);\n }\n lowerHull.pop();\n if (upperHull.length === 1 && lowerHull.length === 1 && upperHull[0].x === lowerHull[0].x && upperHull[0].y === lowerHull[0].y) {\n return upperHull;\n } else {\n return upperHull.concat(lowerHull);\n }\n}\nvar Provider = TooltipProvider;\nvar Root3 = Tooltip;\nvar Trigger = TooltipTrigger;\nvar Portal = TooltipPortal;\nvar Content2 = TooltipContent;\nvar Arrow2 = TooltipArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n Portal,\n Provider,\n Root3 as Root,\n Tooltip,\n TooltipArrow,\n TooltipContent,\n TooltipPortal,\n TooltipProvider,\n TooltipTrigger,\n Trigger,\n createTooltipScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n );\n}\n\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\nfunction TooltipTrigger({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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 overflow-hidden rounded-md px-3 py-1.5 text-sm shadow-md drop-shadow\",\n className,\n )}\n {...props}\n >\n {children}\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n"],"names":["createTooltipContext","createTooltipScope","createContextScope","createPopperScope","usePopperScope","PROVIDER_NAME","DEFAULT_DELAY_DURATION","TOOLTIP_OPEN","TooltipProviderContextProvider","useTooltipProviderContext","TooltipProvider","props","__scopeTooltip","delayDuration","skipDelayDuration","disableHoverableContent","children","isOpenDelayed","setIsOpenDelayed","React","useState","isPointerInTransitRef","useRef","skipDelayTimerRef","useEffect","skipDelayTimer","current","window","clearTimeout","jsx","scope","onOpen","useCallback","onClose","setTimeout","onPointerInTransitChange","inTransit","displayName","TOOLTIP_NAME","TooltipContextProvider","useTooltipContext","Tooltip","open","openProp","defaultOpen","onOpenChange","disableHoverableContentProp","delayDurationProp","providerContext","popperScope","trigger","setTrigger","contentId","useId","openTimerRef","wasOpenDelayedRef","setOpen","useControllableState","prop","defaultProp","onChange","document","dispatchEvent","CustomEvent","stateAttribute","useMemo","handleOpen","handleClose","handleDelayedOpen","PopperPrimitive.Root","onTriggerChange","onTriggerEnter","onTriggerLeave","TRIGGER_NAME","TooltipTrigger","forwardRef","forwardedRef","triggerProps","context","ref","composedRefs","useComposedRefs","isPointerDownRef","hasPointerMoveOpenedRef","handlePointerUp","removeEventListener","PopperPrimitive.Anchor","asChild","Primitive","button","onPointerMove","composeEventHandlers","event","pointerType","onPointerLeave","onPointerDown","addEventListener","once","onFocus","onBlur","onClick","PORTAL_NAME","PortalProvider","usePortalContext","forceMount","TooltipPortal","container","Presence","present","PortalPrimitive","CONTENT_NAME","TooltipContent","portalContext","side","contentProps","TooltipContentImpl","TooltipContentHoverable","pointerGraceArea","setPointerGraceArea","content","handleRemoveGraceArea","handleCreateGraceArea","hoverTarget","currentTarget","exitPoint","x","clientX","y","clientY","paddedExitPoints","exitSide","padding","push","getPaddedExitPoints","point","rect","top","Math","abs","bottom","right","left","min","Error","getExitSideFromRect","getBoundingClientRect","graceArea","points","newPoints","slice","sort","a","b","length","upperHull","i","p","q","r","pop","lowerHull","concat","getHullPresorted","getHull","getPointsFromRect","handleTriggerLeave","handleContentLeave","handleTrackPointerGrace","target","pointerPosition","hasEnteredTarget","contains","isPointerOutsideGraceArea","polygon","inside","j","xi","yi","xj","yj","isPointInPolygon","VisuallyHiddenContentContextProvider","useVisuallyHiddenContentContext","isInside","ariaLabel","onEscapeKeyDown","onPointerDownOutside","handleScroll","capture","DismissableLayer","disableOutsidePointerEvents","onFocusOutside","preventDefault","onDismiss","jsxs","PopperPrimitive.Content","style","Slottable","VisuallyHiddenPrimitive.Root","id","role","ARROW_NAME","arrowProps","PopperPrimitive.Arrow","Provider","Root","Trigger","Portal","Content","createElement","TooltipPrimitive","data-slot","className","sideOffset","cn"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../node_modules/@radix-ui/react-tooltip/dist/index.mjs","../../src/components/ui/tooltip/tooltip.tsx"],"sourcesContent":["\"use client\";\n\n// packages/react/tooltip/src/tooltip.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useId } from \"@radix-ui/react-id\";\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 { Slottable } from \"@radix-ui/react-slot\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport * as VisuallyHiddenPrimitive from \"@radix-ui/react-visually-hidden\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar [createTooltipContext, createTooltipScope] = createContextScope(\"Tooltip\", [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar PROVIDER_NAME = \"TooltipProvider\";\nvar DEFAULT_DELAY_DURATION = 700;\nvar TOOLTIP_OPEN = \"tooltip.open\";\nvar [TooltipProviderContextProvider, useTooltipProviderContext] = createTooltipContext(PROVIDER_NAME);\nvar TooltipProvider = (props) => {\n const {\n __scopeTooltip,\n delayDuration = DEFAULT_DELAY_DURATION,\n skipDelayDuration = 300,\n disableHoverableContent = false,\n children\n } = props;\n const [isOpenDelayed, setIsOpenDelayed] = React.useState(true);\n const isPointerInTransitRef = React.useRef(false);\n const skipDelayTimerRef = React.useRef(0);\n React.useEffect(() => {\n const skipDelayTimer = skipDelayTimerRef.current;\n return () => window.clearTimeout(skipDelayTimer);\n }, []);\n return /* @__PURE__ */ jsx(\n TooltipProviderContextProvider,\n {\n scope: __scopeTooltip,\n isOpenDelayed,\n delayDuration,\n onOpen: React.useCallback(() => {\n window.clearTimeout(skipDelayTimerRef.current);\n setIsOpenDelayed(false);\n }, []),\n onClose: React.useCallback(() => {\n window.clearTimeout(skipDelayTimerRef.current);\n skipDelayTimerRef.current = window.setTimeout(\n () => setIsOpenDelayed(true),\n skipDelayDuration\n );\n }, [skipDelayDuration]),\n isPointerInTransitRef,\n onPointerInTransitChange: React.useCallback((inTransit) => {\n isPointerInTransitRef.current = inTransit;\n }, []),\n disableHoverableContent,\n children\n }\n );\n};\nTooltipProvider.displayName = PROVIDER_NAME;\nvar TOOLTIP_NAME = \"Tooltip\";\nvar [TooltipContextProvider, useTooltipContext] = createTooltipContext(TOOLTIP_NAME);\nvar Tooltip = (props) => {\n const {\n __scopeTooltip,\n children,\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n disableHoverableContent: disableHoverableContentProp,\n delayDuration: delayDurationProp\n } = props;\n const providerContext = useTooltipProviderContext(TOOLTIP_NAME, props.__scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const [trigger, setTrigger] = React.useState(null);\n const contentId = useId();\n const openTimerRef = React.useRef(0);\n const disableHoverableContent = disableHoverableContentProp ?? providerContext.disableHoverableContent;\n const delayDuration = delayDurationProp ?? providerContext.delayDuration;\n const wasOpenDelayedRef = React.useRef(false);\n const [open = false, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen,\n onChange: (open2) => {\n if (open2) {\n providerContext.onOpen();\n document.dispatchEvent(new CustomEvent(TOOLTIP_OPEN));\n } else {\n providerContext.onClose();\n }\n onOpenChange?.(open2);\n }\n });\n const stateAttribute = React.useMemo(() => {\n return open ? wasOpenDelayedRef.current ? \"delayed-open\" : \"instant-open\" : \"closed\";\n }, [open]);\n const handleOpen = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n wasOpenDelayedRef.current = false;\n setOpen(true);\n }, [setOpen]);\n const handleClose = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n setOpen(false);\n }, [setOpen]);\n const handleDelayedOpen = React.useCallback(() => {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = window.setTimeout(() => {\n wasOpenDelayedRef.current = true;\n setOpen(true);\n openTimerRef.current = 0;\n }, delayDuration);\n }, [delayDuration, setOpen]);\n React.useEffect(() => {\n return () => {\n if (openTimerRef.current) {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n };\n }, []);\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(\n TooltipContextProvider,\n {\n scope: __scopeTooltip,\n contentId,\n open,\n stateAttribute,\n trigger,\n onTriggerChange: setTrigger,\n onTriggerEnter: React.useCallback(() => {\n if (providerContext.isOpenDelayed) handleDelayedOpen();\n else handleOpen();\n }, [providerContext.isOpenDelayed, handleDelayedOpen, handleOpen]),\n onTriggerLeave: React.useCallback(() => {\n if (disableHoverableContent) {\n handleClose();\n } else {\n window.clearTimeout(openTimerRef.current);\n openTimerRef.current = 0;\n }\n }, [handleClose, disableHoverableContent]),\n onOpen: handleOpen,\n onClose: handleClose,\n disableHoverableContent,\n children\n }\n ) });\n};\nTooltip.displayName = TOOLTIP_NAME;\nvar TRIGGER_NAME = \"TooltipTrigger\";\nvar TooltipTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTooltip, ...triggerProps } = props;\n const context = useTooltipContext(TRIGGER_NAME, __scopeTooltip);\n const providerContext = useTooltipProviderContext(TRIGGER_NAME, __scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onTriggerChange);\n const isPointerDownRef = React.useRef(false);\n const hasPointerMoveOpenedRef = React.useRef(false);\n const handlePointerUp = React.useCallback(() => isPointerDownRef.current = false, []);\n React.useEffect(() => {\n return () => document.removeEventListener(\"pointerup\", handlePointerUp);\n }, [handlePointerUp]);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n \"aria-describedby\": context.open ? context.contentId : void 0,\n \"data-state\": context.stateAttribute,\n ...triggerProps,\n ref: composedRefs,\n onPointerMove: composeEventHandlers(props.onPointerMove, (event) => {\n if (event.pointerType === \"touch\") return;\n if (!hasPointerMoveOpenedRef.current && !providerContext.isPointerInTransitRef.current) {\n context.onTriggerEnter();\n hasPointerMoveOpenedRef.current = true;\n }\n }),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => {\n context.onTriggerLeave();\n hasPointerMoveOpenedRef.current = false;\n }),\n onPointerDown: composeEventHandlers(props.onPointerDown, () => {\n isPointerDownRef.current = true;\n document.addEventListener(\"pointerup\", handlePointerUp, { once: true });\n }),\n onFocus: composeEventHandlers(props.onFocus, () => {\n if (!isPointerDownRef.current) context.onOpen();\n }),\n onBlur: composeEventHandlers(props.onBlur, context.onClose),\n onClick: composeEventHandlers(props.onClick, context.onClose)\n }\n ) });\n }\n);\nTooltipTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"TooltipPortal\";\nvar [PortalProvider, usePortalContext] = createTooltipContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar TooltipPortal = (props) => {\n const { __scopeTooltip, forceMount, children, container } = props;\n const context = useTooltipContext(PORTAL_NAME, __scopeTooltip);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeTooltip, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nTooltipPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"TooltipContent\";\nvar TooltipContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeTooltip);\n const { forceMount = portalContext.forceMount, side = \"top\", ...contentProps } = props;\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.disableHoverableContent ? /* @__PURE__ */ jsx(TooltipContentImpl, { side, ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(TooltipContentHoverable, { side, ...contentProps, ref: forwardedRef }) });\n }\n);\nvar TooltipContentHoverable = React.forwardRef((props, forwardedRef) => {\n const context = useTooltipContext(CONTENT_NAME, props.__scopeTooltip);\n const providerContext = useTooltipProviderContext(CONTENT_NAME, props.__scopeTooltip);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [pointerGraceArea, setPointerGraceArea] = React.useState(null);\n const { trigger, onClose } = context;\n const content = ref.current;\n const { onPointerInTransitChange } = providerContext;\n const handleRemoveGraceArea = React.useCallback(() => {\n setPointerGraceArea(null);\n onPointerInTransitChange(false);\n }, [onPointerInTransitChange]);\n const handleCreateGraceArea = React.useCallback(\n (event, hoverTarget) => {\n const currentTarget = event.currentTarget;\n const exitPoint = { x: event.clientX, y: event.clientY };\n const exitSide = getExitSideFromRect(exitPoint, currentTarget.getBoundingClientRect());\n const paddedExitPoints = getPaddedExitPoints(exitPoint, exitSide);\n const hoverTargetPoints = getPointsFromRect(hoverTarget.getBoundingClientRect());\n const graceArea = getHull([...paddedExitPoints, ...hoverTargetPoints]);\n setPointerGraceArea(graceArea);\n onPointerInTransitChange(true);\n },\n [onPointerInTransitChange]\n );\n React.useEffect(() => {\n return () => handleRemoveGraceArea();\n }, [handleRemoveGraceArea]);\n React.useEffect(() => {\n if (trigger && content) {\n const handleTriggerLeave = (event) => handleCreateGraceArea(event, content);\n const handleContentLeave = (event) => handleCreateGraceArea(event, trigger);\n trigger.addEventListener(\"pointerleave\", handleTriggerLeave);\n content.addEventListener(\"pointerleave\", handleContentLeave);\n return () => {\n trigger.removeEventListener(\"pointerleave\", handleTriggerLeave);\n content.removeEventListener(\"pointerleave\", handleContentLeave);\n };\n }\n }, [trigger, content, handleCreateGraceArea, handleRemoveGraceArea]);\n React.useEffect(() => {\n if (pointerGraceArea) {\n const handleTrackPointerGrace = (event) => {\n const target = event.target;\n const pointerPosition = { x: event.clientX, y: event.clientY };\n const hasEnteredTarget = trigger?.contains(target) || content?.contains(target);\n const isPointerOutsideGraceArea = !isPointInPolygon(pointerPosition, pointerGraceArea);\n if (hasEnteredTarget) {\n handleRemoveGraceArea();\n } else if (isPointerOutsideGraceArea) {\n handleRemoveGraceArea();\n onClose();\n }\n };\n document.addEventListener(\"pointermove\", handleTrackPointerGrace);\n return () => document.removeEventListener(\"pointermove\", handleTrackPointerGrace);\n }\n }, [trigger, content, pointerGraceArea, onClose, handleRemoveGraceArea]);\n return /* @__PURE__ */ jsx(TooltipContentImpl, { ...props, ref: composedRefs });\n});\nvar [VisuallyHiddenContentContextProvider, useVisuallyHiddenContentContext] = createTooltipContext(TOOLTIP_NAME, { isInside: false });\nvar TooltipContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeTooltip,\n children,\n \"aria-label\": ariaLabel,\n onEscapeKeyDown,\n onPointerDownOutside,\n ...contentProps\n } = props;\n const context = useTooltipContext(CONTENT_NAME, __scopeTooltip);\n const popperScope = usePopperScope(__scopeTooltip);\n const { onClose } = context;\n React.useEffect(() => {\n document.addEventListener(TOOLTIP_OPEN, onClose);\n return () => document.removeEventListener(TOOLTIP_OPEN, onClose);\n }, [onClose]);\n React.useEffect(() => {\n if (context.trigger) {\n const handleScroll = (event) => {\n const target = event.target;\n if (target?.contains(context.trigger)) onClose();\n };\n window.addEventListener(\"scroll\", handleScroll, { capture: true });\n return () => window.removeEventListener(\"scroll\", handleScroll, { capture: true });\n }\n }, [context.trigger, onClose]);\n return /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: false,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: (event) => event.preventDefault(),\n onDismiss: onClose,\n children: /* @__PURE__ */ jsxs(\n PopperPrimitive.Content,\n {\n \"data-state\": context.stateAttribute,\n ...popperScope,\n ...contentProps,\n ref: forwardedRef,\n style: {\n ...contentProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-tooltip-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-tooltip-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-tooltip-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-tooltip-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-tooltip-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n },\n children: [\n /* @__PURE__ */ jsx(Slottable, { children }),\n /* @__PURE__ */ jsx(VisuallyHiddenContentContextProvider, { scope: __scopeTooltip, isInside: true, children: /* @__PURE__ */ jsx(VisuallyHiddenPrimitive.Root, { id: context.contentId, role: \"tooltip\", children: ariaLabel || children }) })\n ]\n }\n )\n }\n );\n }\n);\nTooltipContent.displayName = CONTENT_NAME;\nvar ARROW_NAME = \"TooltipArrow\";\nvar TooltipArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeTooltip, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeTooltip);\n const visuallyHiddenContentContext = useVisuallyHiddenContentContext(\n ARROW_NAME,\n __scopeTooltip\n );\n return visuallyHiddenContentContext.isInside ? null : /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nTooltipArrow.displayName = ARROW_NAME;\nfunction getExitSideFromRect(point, rect) {\n const top = Math.abs(rect.top - point.y);\n const bottom = Math.abs(rect.bottom - point.y);\n const right = Math.abs(rect.right - point.x);\n const left = Math.abs(rect.left - point.x);\n switch (Math.min(top, bottom, right, left)) {\n case left:\n return \"left\";\n case right:\n return \"right\";\n case top:\n return \"top\";\n case bottom:\n return \"bottom\";\n default:\n throw new Error(\"unreachable\");\n }\n}\nfunction getPaddedExitPoints(exitPoint, exitSide, padding = 5) {\n const paddedExitPoints = [];\n switch (exitSide) {\n case \"top\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y + padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case \"bottom\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y - padding }\n );\n break;\n case \"left\":\n paddedExitPoints.push(\n { x: exitPoint.x + padding, y: exitPoint.y - padding },\n { x: exitPoint.x + padding, y: exitPoint.y + padding }\n );\n break;\n case \"right\":\n paddedExitPoints.push(\n { x: exitPoint.x - padding, y: exitPoint.y - padding },\n { x: exitPoint.x - padding, y: exitPoint.y + padding }\n );\n break;\n }\n return paddedExitPoints;\n}\nfunction getPointsFromRect(rect) {\n const { top, right, bottom, left } = rect;\n return [\n { x: left, y: top },\n { x: right, y: top },\n { x: right, y: bottom },\n { x: left, y: bottom }\n ];\n}\nfunction isPointInPolygon(point, polygon) {\n const { x, y } = point;\n let inside = false;\n for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {\n const xi = polygon[i].x;\n const yi = polygon[i].y;\n const xj = polygon[j].x;\n const yj = polygon[j].y;\n const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;\n if (intersect) inside = !inside;\n }\n return inside;\n}\nfunction getHull(points) {\n const newPoints = points.slice();\n newPoints.sort((a, b) => {\n if (a.x < b.x) return -1;\n else if (a.x > b.x) return 1;\n else if (a.y < b.y) return -1;\n else if (a.y > b.y) return 1;\n else return 0;\n });\n return getHullPresorted(newPoints);\n}\nfunction getHullPresorted(points) {\n if (points.length <= 1) return points.slice();\n const upperHull = [];\n for (let i = 0; i < points.length; i++) {\n const p = points[i];\n while (upperHull.length >= 2) {\n const q = upperHull[upperHull.length - 1];\n const r = upperHull[upperHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) upperHull.pop();\n else break;\n }\n upperHull.push(p);\n }\n upperHull.pop();\n const lowerHull = [];\n for (let i = points.length - 1; i >= 0; i--) {\n const p = points[i];\n while (lowerHull.length >= 2) {\n const q = lowerHull[lowerHull.length - 1];\n const r = lowerHull[lowerHull.length - 2];\n if ((q.x - r.x) * (p.y - r.y) >= (q.y - r.y) * (p.x - r.x)) lowerHull.pop();\n else break;\n }\n lowerHull.push(p);\n }\n lowerHull.pop();\n if (upperHull.length === 1 && lowerHull.length === 1 && upperHull[0].x === lowerHull[0].x && upperHull[0].y === lowerHull[0].y) {\n return upperHull;\n } else {\n return upperHull.concat(lowerHull);\n }\n}\nvar Provider = TooltipProvider;\nvar Root3 = Tooltip;\nvar Trigger = TooltipTrigger;\nvar Portal = TooltipPortal;\nvar Content2 = TooltipContent;\nvar Arrow2 = TooltipArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n Portal,\n Provider,\n Root3 as Root,\n Tooltip,\n TooltipArrow,\n TooltipContent,\n TooltipPortal,\n TooltipProvider,\n TooltipTrigger,\n Trigger,\n createTooltipScope\n};\n//# sourceMappingURL=index.mjs.map\n","import * as React from \"react\";\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction TooltipProvider({\n delayDuration = 700,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n );\n}\n\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n );\n}\n\nfunction TooltipTrigger({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />;\n}\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-popover text-popover-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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 overflow-hidden rounded-md px-3 py-1.5 text-sm shadow-md drop-shadow\",\n className,\n )}\n {...props}\n >\n {children}\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n );\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n"],"names":["createTooltipContext","createTooltipScope","createContextScope","createPopperScope","usePopperScope","PROVIDER_NAME","DEFAULT_DELAY_DURATION","TOOLTIP_OPEN","TooltipProviderContextProvider","useTooltipProviderContext","TooltipProvider","props","__scopeTooltip","delayDuration","skipDelayDuration","disableHoverableContent","children","isOpenDelayed","setIsOpenDelayed","React","useState","isPointerInTransitRef","useRef","skipDelayTimerRef","useEffect","skipDelayTimer","current","window","clearTimeout","jsx","scope","onOpen","useCallback","onClose","setTimeout","onPointerInTransitChange","inTransit","displayName","TOOLTIP_NAME","TooltipContextProvider","useTooltipContext","Tooltip","open","openProp","defaultOpen","onOpenChange","disableHoverableContentProp","delayDurationProp","providerContext","popperScope","trigger","setTrigger","contentId","useId","openTimerRef","wasOpenDelayedRef","setOpen","useControllableState","prop","defaultProp","onChange","document","dispatchEvent","CustomEvent","stateAttribute","useMemo","handleOpen","handleClose","handleDelayedOpen","PopperPrimitive.Root","onTriggerChange","onTriggerEnter","onTriggerLeave","TRIGGER_NAME","TooltipTrigger","forwardRef","forwardedRef","triggerProps","context","ref","composedRefs","useComposedRefs","isPointerDownRef","hasPointerMoveOpenedRef","handlePointerUp","removeEventListener","PopperPrimitive.Anchor","asChild","Primitive","button","onPointerMove","composeEventHandlers","event","pointerType","onPointerLeave","onPointerDown","addEventListener","once","onFocus","onBlur","onClick","PORTAL_NAME","PortalProvider","usePortalContext","forceMount","TooltipPortal","container","Presence","present","PortalPrimitive","CONTENT_NAME","TooltipContent","portalContext","side","contentProps","TooltipContentImpl","TooltipContentHoverable","pointerGraceArea","setPointerGraceArea","content","handleRemoveGraceArea","handleCreateGraceArea","hoverTarget","currentTarget","exitPoint","x","clientX","y","clientY","paddedExitPoints","exitSide","padding","push","getPaddedExitPoints","point","rect","top","Math","abs","bottom","right","left","min","Error","getExitSideFromRect","getBoundingClientRect","graceArea","points","newPoints","slice","sort","a","b","length","upperHull","i","p","q","r","pop","lowerHull","concat","getHullPresorted","getHull","getPointsFromRect","handleTriggerLeave","handleContentLeave","handleTrackPointerGrace","target","pointerPosition","hasEnteredTarget","contains","isPointerOutsideGraceArea","polygon","inside","j","xi","yi","xj","yj","isPointInPolygon","VisuallyHiddenContentContextProvider","useVisuallyHiddenContentContext","isInside","ariaLabel","onEscapeKeyDown","onPointerDownOutside","handleScroll","capture","DismissableLayer","disableOutsidePointerEvents","onFocusOutside","preventDefault","onDismiss","jsxs","PopperPrimitive.Content","style","Slottable","VisuallyHiddenPrimitive.Root","id","role","ARROW_NAME","arrowProps","PopperPrimitive.Arrow","Provider","Root","Trigger","Portal","Content","createElement","TooltipPrimitive","data-slot","className","sideOffset","cn"],"mappings":"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","x_google_ignoreList":[0]}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"author": "Investtools",
|
3
3
|
"name": "ivt",
|
4
|
-
"version": "0.0.
|
4
|
+
"version": "0.0.7",
|
5
5
|
"description": "Ivt Components Library",
|
6
6
|
"keywords": [
|
7
7
|
"ivt",
|
@@ -19,7 +19,8 @@
|
|
19
19
|
"types": "dist/index/index.d.ts",
|
20
20
|
"scripts": {
|
21
21
|
"dev": "vite",
|
22
|
-
"build": "
|
22
|
+
"build": "tsc -b && vite build",
|
23
|
+
"rollup": "rollup -c --bundleConfigAsCjs",
|
23
24
|
"lint": "eslint .",
|
24
25
|
"preview": "vite preview",
|
25
26
|
"storybook": "storybook dev -p 6006",
|
@@ -178,6 +179,7 @@
|
|
178
179
|
"@radix-ui/react-checkbox": "^1.1.4",
|
179
180
|
"@radix-ui/react-dialog": "^1.1.6",
|
180
181
|
"@radix-ui/react-dropdown-menu": "^2.1.6",
|
182
|
+
"@radix-ui/react-icons": "^1.3.2",
|
181
183
|
"@radix-ui/react-label": "^2.1.2",
|
182
184
|
"@radix-ui/react-popover": "^1.1.6",
|
183
185
|
"@radix-ui/react-progress": "^1.1.2",
|
@@ -186,6 +188,7 @@
|
|
186
188
|
"@radix-ui/react-separator": "^1.1.2",
|
187
189
|
"@radix-ui/react-slot": "^1.1.2",
|
188
190
|
"@radix-ui/react-tabs": "^1.1.3",
|
191
|
+
"@radix-ui/react-toast": "^1.2.6",
|
189
192
|
"@radix-ui/react-tooltip": "^1.1.8",
|
190
193
|
"class-variance-authority": "^0.7.1",
|
191
194
|
"cmdk": "^1.0.0",
|
@@ -196,8 +199,6 @@
|
|
196
199
|
"@chromatic-com/storybook": "^3.2.5",
|
197
200
|
"@eslint/js": "^9.21.0",
|
198
201
|
"@hookform/resolvers": "^4.1.3",
|
199
|
-
"@radix-ui/react-icons": "^1.3.2",
|
200
|
-
"@radix-ui/react-toast": "^1.2.6",
|
201
202
|
"@rollup/plugin-alias": "^5.1.1",
|
202
203
|
"@rollup/plugin-commonjs": "^28.0.3",
|
203
204
|
"@rollup/plugin-node-resolve": "^16.0.0",
|
@@ -1,2 +0,0 @@
|
|
1
|
-
import*as e from"react";import{useState as t}from"react";import{a as n,u as r}from"./index-CX5r7IKM.mjs";import{P as o}from"./index-DxtdpBCb.mjs";import{jsx as a}from"react/jsx-runtime";import{_ as c,a as i,b as u}from"./tslib.es6-Cx3xzITX.mjs";var s="focusScope.autoFocusOnMount",l="focusScope.autoFocusOnUnmount",d={bubbles:!1,cancelable:!0},f=e.forwardRef(((t,c)=>{const{loop:i=!1,trapped:u=!1,onMountAutoFocus:f,onUnmountAutoFocus:p,...y}=t,[E,b]=e.useState(null),w=n(f),S=n(p),C=e.useRef(null),k=r(c,(e=>b(e))),A=e.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;e.useEffect((()=>{if(u){let e=function(e){if(A.paused||!E)return;const t=e.target;E.contains(t)?C.current=t:h(C.current,{select:!0})},t=function(e){if(A.paused||!E)return;const t=e.relatedTarget;null!==t&&(E.contains(t)||h(C.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(const t of e)t.removedNodes.length>0&&h(E)};document.addEventListener("focusin",e),document.addEventListener("focusout",t);const r=new MutationObserver(n);return E&&r.observe(E,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",e),document.removeEventListener("focusout",t),r.disconnect()}}}),[u,E,A.paused]),e.useEffect((()=>{if(E){g.add(A);const t=document.activeElement;if(!E.contains(t)){const n=new CustomEvent(s,d);E.addEventListener(s,w),E.dispatchEvent(n),n.defaultPrevented||(!function(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(h(r,{select:t}),document.activeElement!==n)return}((e=v(E),e.filter((e=>"A"!==e.tagName))),{select:!0}),document.activeElement===t&&h(E))}return()=>{E.removeEventListener(s,w),setTimeout((()=>{const e=new CustomEvent(l,d);E.addEventListener(l,S),E.dispatchEvent(e),e.defaultPrevented||h(t??document.body,{select:!0}),E.removeEventListener(l,S),g.remove(A)}),0)}}var e}),[E,w,S,A]);const M=e.useCallback((e=>{if(!i&&!u)return;if(A.paused)return;const t="Tab"===e.key&&!e.altKey&&!e.ctrlKey&&!e.metaKey,n=document.activeElement;if(t&&n){const t=e.currentTarget,[r,o]=function(e){const t=v(e),n=m(t,e),r=m(t.reverse(),e);return[n,r]}(t);r&&o?e.shiftKey||n!==o?e.shiftKey&&n===r&&(e.preventDefault(),i&&h(o,{select:!0})):(e.preventDefault(),i&&h(r,{select:!0})):n===t&&e.preventDefault()}}),[i,u,A.paused]);return a(o.div,{tabIndex:-1,...y,ref:k,onKeyDown:M})}));function v(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{const t="INPUT"===e.tagName&&"hidden"===e.type;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function m(e,t){for(const n of e)if(!p(n,{upTo:t}))return n}function p(e,{upTo:t}){if("hidden"===getComputedStyle(e).visibility)return!0;for(;e;){if(void 0!==t&&e===t)return!1;if("none"===getComputedStyle(e).display)return!0;e=e.parentElement}return!1}function h(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&function(e){return e instanceof HTMLInputElement&&"select"in e}(e)&&t&&e.select()}}f.displayName="FocusScope";var g=function(){let e=[];return{add(t){const n=e[0];t!==n&&n?.pause(),e=y(e,t),e.unshift(t)},remove(t){e=y(e,t),e[0]?.resume()}}}();function y(e,t){const n=[...e],r=n.indexOf(t);return-1!==r&&n.splice(r,1),n}var E=0;function b(){e.useEffect((()=>{const e=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",e[0]??w()),document.body.insertAdjacentElement("beforeend",e[1]??w()),E++,()=>{1===E&&document.querySelectorAll("[data-radix-focus-guard]").forEach((e=>e.remove())),E--}}),[])}function w(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var S="right-scroll-bar-position",C="width-before-scroll-bar";function k(e,t){return"function"==typeof e?e(t):e&&(e.current=t),e}var A="undefined"!=typeof window?e.useLayoutEffect:e.useEffect,M=new WeakMap;function L(e,n){var r,o,a,c=(r=null,o=function(t){return e.forEach((function(e){return k(e,t)}))},(a=t((function(){return{value:r,callback:o,facade:{get current(){return a.value},set current(e){var t=a.value;t!==e&&(a.value=e,a.callback(e,t))}}}}))[0]).callback=o,a.facade);return A((function(){var t=M.get(c);if(t){var n=new Set(t),r=new Set(e),o=c.current;n.forEach((function(e){r.has(e)||k(e,null)})),r.forEach((function(e){n.has(e)||k(e,o)}))}M.set(c,e)}),[e]),c}function N(e){return e}var T=function(t){var n=t.sideCar,r=i(t,["sideCar"]);if(!n)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var o=n.read();if(!o)throw new Error("Sidecar medium not found");return e.createElement(o,c({},r))};T.isSideCarExport=!0;var R=function(e){void 0===e&&(e={});var t=function(e,t){void 0===t&&(t=N);var n=[],r=!1;return{read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var o=t(e,r);return n.push(o),function(){n=n.filter((function(e){return e!==o}))}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var o=n;n=[],o.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},c=function(){return Promise.resolve().then(a)};c(),n={push:function(e){t.push(e),c()},filter:function(e){return t=t.filter(e),n}}}}}(null);return t.options=c({async:!0,ssr:!1},e),t}(),x=function(){},P=e.forwardRef((function(t,n){var r=e.useRef(null),o=e.useState({onScrollCapture:x,onWheelCapture:x,onTouchMoveCapture:x}),a=o[0],u=o[1],s=t.forwardProps,l=t.children,d=t.className,f=t.removeScrollBar,v=t.enabled,m=t.shards,p=t.sideCar,h=t.noIsolation,g=t.inert,y=t.allowPinchZoom,E=t.as,b=void 0===E?"div":E,w=t.gapMode,S=i(t,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as","gapMode"]),C=p,k=L([r,n]),A=c(c({},S),a);return e.createElement(e.Fragment,null,v&&e.createElement(C,{sideCar:R,removeScrollBar:f,shards:m,noIsolation:h,inert:g,setCallbacks:u,allowPinchZoom:!!y,lockRef:r,gapMode:w}),s?e.cloneElement(e.Children.only(l),c(c({},A),{ref:k})):e.createElement(b,c({},A,{className:d,ref:k}),l))}));P.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},P.classNames={fullWidth:C,zeroRight:S};function I(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=function(){if("undefined"!=typeof __webpack_nonce__)return __webpack_nonce__}();return t&&e.setAttribute("nonce",t),e}var F=function(){var e=0,t=null;return{add:function(n){var r,o;0==e&&(t=I())&&(o=n,(r=t).styleSheet?r.styleSheet.cssText=o:r.appendChild(document.createTextNode(o)),function(e){(document.head||document.getElementsByTagName("head")[0]).appendChild(e)}(t)),e++},remove:function(){! --e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},W=function(){var t,n=(t=F(),function(n,r){e.useEffect((function(){return t.add(n),function(){t.remove()}}),[n&&r])});return function(e){var t=e.styles,r=e.dynamic;return n(t,r),null}},_={left:0,top:0,right:0,gap:0},B=function(e){return parseInt(e||"",10)||0},D=function(e){if(void 0===e&&(e="margin"),"undefined"==typeof window)return _;var t=function(e){var t=window.getComputedStyle(document.body),n=t["padding"===e?"paddingLeft":"marginLeft"],r=t["padding"===e?"paddingTop":"marginTop"],o=t["padding"===e?"paddingRight":"marginRight"];return[B(n),B(r),B(o)]}(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},K=W(),j="data-scroll-locked",X=function(e,t,n,r){var o=e.left,a=e.top,c=e.right,i=e.gap;return void 0===n&&(n="margin"),"\n .".concat("with-scroll-bars-hidden"," {\n overflow: hidden ").concat(r,";\n padding-right: ").concat(i,"px ").concat(r,";\n }\n body[").concat(j,"] {\n overflow: hidden ").concat(r,";\n overscroll-behavior: contain;\n ").concat([t&&"position: relative ".concat(r,";"),"margin"===n&&"\n padding-left: ".concat(o,"px;\n padding-top: ").concat(a,"px;\n padding-right: ").concat(c,"px;\n margin-left:0;\n margin-top:0;\n margin-right: ").concat(i,"px ").concat(r,";\n "),"padding"===n&&"padding-right: ".concat(i,"px ").concat(r,";")].filter(Boolean).join(""),"\n }\n \n .").concat(S," {\n right: ").concat(i,"px ").concat(r,";\n }\n \n .").concat(C," {\n margin-right: ").concat(i,"px ").concat(r,";\n }\n \n .").concat(S," .").concat(S," {\n right: 0 ").concat(r,";\n }\n \n .").concat(C," .").concat(C," {\n margin-right: 0 ").concat(r,";\n }\n \n body[").concat(j,"] {\n ").concat("--removed-body-scroll-bar-size",": ").concat(i,"px;\n }\n")},Y=function(){var e=parseInt(document.body.getAttribute(j)||"0",10);return isFinite(e)?e:0},O=function(t){var n=t.noRelative,r=t.noImportant,o=t.gapMode,a=void 0===o?"margin":o;e.useEffect((function(){return document.body.setAttribute(j,(Y()+1).toString()),function(){var e=Y()-1;e<=0?document.body.removeAttribute(j):document.body.setAttribute(j,e.toString())}}),[]);var c=e.useMemo((function(){return D(a)}),[a]);return e.createElement(K,{styles:X(c,!n,a,r?"":"!important")})},H=!1;if("undefined"!=typeof window)try{var Z=Object.defineProperty({},"passive",{get:function(){return H=!0,!0}});window.addEventListener("test",Z,Z),window.removeEventListener("test",Z,Z)}catch(e){H=!1}var q=!!H&&{passive:!1},U=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return"hidden"!==n[t]&&!(n.overflowY===n.overflowX&&!function(e){return"TEXTAREA"===e.tagName}(e)&&"visible"===n[t])},z=function(e,t){var n=t.ownerDocument,r=t;do{if("undefined"!=typeof ShadowRoot&&r instanceof ShadowRoot&&(r=r.host),G(e,r)){var o=J(e,r);if(o[1]>o[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},G=function(e,t){return"v"===e?function(e){return U(e,"overflowY")}(t):function(e){return U(e,"overflowX")}(t)},J=function(e,t){return"v"===e?[(n=t).scrollTop,n.scrollHeight,n.clientHeight]:function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]}(t);var n},Q=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},V=function(e){return[e.deltaX,e.deltaY]},$=function(e){return e&&"current"in e?e.current:e},ee=function(e){return"\n .block-interactivity-".concat(e," {pointer-events: none;}\n .allow-interactivity-").concat(e," {pointer-events: all;}\n")},te=0,ne=[];function re(e){for(var t=null;null!==e;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var oe,ae=(oe=function(t){var n=e.useRef([]),r=e.useRef([0,0]),o=e.useRef(),a=e.useState(te++)[0],c=e.useState(W)[0],i=e.useRef(t);e.useEffect((function(){i.current=t}),[t]),e.useEffect((function(){if(t.inert){document.body.classList.add("block-interactivity-".concat(a));var e=u([t.lockRef.current],(t.shards||[]).map($),!0).filter(Boolean);return e.forEach((function(e){return e.classList.add("allow-interactivity-".concat(a))})),function(){document.body.classList.remove("block-interactivity-".concat(a)),e.forEach((function(e){return e.classList.remove("allow-interactivity-".concat(a))}))}}}),[t.inert,t.lockRef.current,t.shards]);var s=e.useCallback((function(e,t){if("touches"in e&&2===e.touches.length||"wheel"===e.type&&e.ctrlKey)return!i.current.allowPinchZoom;var n,a=Q(e),c=r.current,u="deltaX"in e?e.deltaX:c[0]-a[0],s="deltaY"in e?e.deltaY:c[1]-a[1],l=e.target,d=Math.abs(u)>Math.abs(s)?"h":"v";if("touches"in e&&"h"===d&&"range"===l.type)return!1;var f=z(d,l);if(!f)return!0;if(f?n=d:(n="v"===d?"h":"v",f=z(d,l)),!f)return!1;if(!o.current&&"changedTouches"in e&&(u||s)&&(o.current=n),!n)return!0;var v=o.current||n;return function(e,t,n,r){var o=function(e,t){return"h"===e&&"rtl"===t?-1:1}(e,window.getComputedStyle(t).direction),a=o*r,c=n.target,i=t.contains(c),u=!1,s=a>0,l=0,d=0;do{var f=J(e,c),v=f[0],m=f[1]-f[2]-o*v;(v||m)&&G(e,c)&&(l+=m,d+=v),c=c instanceof ShadowRoot?c.host:c.parentNode}while(!i&&c!==document.body||i&&(t.contains(c)||t===c));return(s&&Math.abs(l)<1||!s&&Math.abs(d)<1)&&(u=!0),u}(v,t,e,"h"===v?u:s)}),[]),l=e.useCallback((function(e){var t=e;if(ne.length&&ne[ne.length-1]===c){var r="deltaY"in t?V(t):Q(t),o=n.current.filter((function(e){return e.name===t.type&&(e.target===t.target||t.target===e.shadowParent)&&(n=e.delta,o=r,n[0]===o[0]&&n[1]===o[1]);var n,o}))[0];if(o&&o.should)t.cancelable&&t.preventDefault();else if(!o){var a=(i.current.shards||[]).map($).filter(Boolean).filter((function(e){return e.contains(t.target)}));(a.length>0?s(t,a[0]):!i.current.noIsolation)&&t.cancelable&&t.preventDefault()}}}),[]),d=e.useCallback((function(e,t,r,o){var a={name:e,delta:t,target:r,should:o,shadowParent:re(r)};n.current.push(a),setTimeout((function(){n.current=n.current.filter((function(e){return e!==a}))}),1)}),[]),f=e.useCallback((function(e){r.current=Q(e),o.current=void 0}),[]),v=e.useCallback((function(e){d(e.type,V(e),e.target,s(e,t.lockRef.current))}),[]),m=e.useCallback((function(e){d(e.type,Q(e),e.target,s(e,t.lockRef.current))}),[]);e.useEffect((function(){return ne.push(c),t.setCallbacks({onScrollCapture:v,onWheelCapture:v,onTouchMoveCapture:m}),document.addEventListener("wheel",l,q),document.addEventListener("touchmove",l,q),document.addEventListener("touchstart",f,q),function(){ne=ne.filter((function(e){return e!==c})),document.removeEventListener("wheel",l,q),document.removeEventListener("touchmove",l,q),document.removeEventListener("touchstart",f,q)}}),[]);var p=t.removeScrollBar,h=t.inert;return e.createElement(e.Fragment,null,h?e.createElement(c,{styles:ee(a)}):null,p?e.createElement(O,{gapMode:t.gapMode}):null)},R.useMedium(oe),T),ce=e.forwardRef((function(t,n){return e.createElement(P,c({},t,{ref:n,sideCar:ae}))}));ce.classNames=P.classNames;var ie=new WeakMap,ue=new WeakMap,se={},le=0,de=function(e){return e&&(e.host||de(e.parentNode))},fe=function(e,t,n,r){var o=function(e,t){return t.map((function(t){if(e.contains(t))return t;var n=de(t);return n&&e.contains(n)?n:(console.error("aria-hidden",t,"in not contained inside",e,". Doing nothing"),null)})).filter((function(e){return Boolean(e)}))}(t,Array.isArray(e)?e:[e]);se[n]||(se[n]=new WeakMap);var a=se[n],c=[],i=new Set,u=new Set(o),s=function(e){e&&!i.has(e)&&(i.add(e),s(e.parentNode))};o.forEach(s);var l=function(e){e&&!u.has(e)&&Array.prototype.forEach.call(e.children,(function(e){if(i.has(e))l(e);else try{var t=e.getAttribute(r),o=null!==t&&"false"!==t,u=(ie.get(e)||0)+1,s=(a.get(e)||0)+1;ie.set(e,u),a.set(e,s),c.push(e),1===u&&o&&ue.set(e,!0),1===s&&e.setAttribute(n,"true"),o||e.setAttribute(r,"true")}catch(t){console.error("aria-hidden: cannot operate on ",e,t)}}))};return l(t),i.clear(),le++,function(){c.forEach((function(e){var t=ie.get(e)-1,o=a.get(e)-1;ie.set(e,t),a.set(e,o),t||(ue.has(e)||e.removeAttribute(r),ue.delete(e)),o||e.removeAttribute(n)})),--le||(ie=new WeakMap,ie=new WeakMap,ue=new WeakMap,se={})}},ve=function(e,t,n){void 0===n&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=function(e){return"undefined"==typeof document?null:(Array.isArray(e)?e[0]:e).ownerDocument.body}(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live]"))),fe(r,o,n,"aria-hidden")):function(){return null}};export{f as F,ce as R,ve as h,b as u};
|
2
|
-
//# sourceMappingURL=index-ChLuxn93.mjs.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index-ChLuxn93.mjs","sources":["../../node_modules/@radix-ui/react-focus-scope/dist/index.mjs","../../node_modules/@radix-ui/react-focus-guards/dist/index.mjs","../../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../../node_modules/use-callback-ref/dist/es2015/assignRef.js","../../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../../node_modules/use-callback-ref/dist/es2015/useRef.js","../../node_modules/use-sidecar/dist/es2015/medium.js","../../node_modules/use-sidecar/dist/es2015/exports.js","../../node_modules/react-remove-scroll/dist/es2015/medium.js","../../node_modules/react-remove-scroll/dist/es2015/UI.js","../../node_modules/react-style-singleton/dist/es2015/singleton.js","../../node_modules/get-nonce/dist/es2015/index.js","../../node_modules/react-style-singleton/dist/es2015/component.js","../../node_modules/react-style-singleton/dist/es2015/hook.js","../../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../../node_modules/react-remove-scroll/dist/es2015/Combination.js","../../node_modules/aria-hidden/dist/es2015/index.js"],"sourcesContent":["\"use client\";\n\n// packages/react/focus-scope/src/focus-scope.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { jsx } from \"react/jsx-runtime\";\nvar AUTOFOCUS_ON_MOUNT = \"focusScope.autoFocusOnMount\";\nvar AUTOFOCUS_ON_UNMOUNT = \"focusScope.autoFocusOnUnmount\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar FOCUS_SCOPE_NAME = \"FocusScope\";\nvar FocusScope = React.forwardRef((props, forwardedRef) => {\n const {\n loop = false,\n trapped = false,\n onMountAutoFocus: onMountAutoFocusProp,\n onUnmountAutoFocus: onUnmountAutoFocusProp,\n ...scopeProps\n } = props;\n const [container, setContainer] = React.useState(null);\n const onMountAutoFocus = useCallbackRef(onMountAutoFocusProp);\n const onUnmountAutoFocus = useCallbackRef(onUnmountAutoFocusProp);\n const lastFocusedElementRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContainer(node));\n const focusScope = React.useRef({\n paused: false,\n pause() {\n this.paused = true;\n },\n resume() {\n this.paused = false;\n }\n }).current;\n React.useEffect(() => {\n if (trapped) {\n let handleFocusIn2 = function(event) {\n if (focusScope.paused || !container) return;\n const target = event.target;\n if (container.contains(target)) {\n lastFocusedElementRef.current = target;\n } else {\n focus(lastFocusedElementRef.current, { select: true });\n }\n }, handleFocusOut2 = function(event) {\n if (focusScope.paused || !container) return;\n const relatedTarget = event.relatedTarget;\n if (relatedTarget === null) return;\n if (!container.contains(relatedTarget)) {\n focus(lastFocusedElementRef.current, { select: true });\n }\n }, handleMutations2 = function(mutations) {\n const focusedElement = document.activeElement;\n if (focusedElement !== document.body) return;\n for (const mutation of mutations) {\n if (mutation.removedNodes.length > 0) focus(container);\n }\n };\n var handleFocusIn = handleFocusIn2, handleFocusOut = handleFocusOut2, handleMutations = handleMutations2;\n document.addEventListener(\"focusin\", handleFocusIn2);\n document.addEventListener(\"focusout\", handleFocusOut2);\n const mutationObserver = new MutationObserver(handleMutations2);\n if (container) mutationObserver.observe(container, { childList: true, subtree: true });\n return () => {\n document.removeEventListener(\"focusin\", handleFocusIn2);\n document.removeEventListener(\"focusout\", handleFocusOut2);\n mutationObserver.disconnect();\n };\n }\n }, [trapped, container, focusScope.paused]);\n React.useEffect(() => {\n if (container) {\n focusScopesStack.add(focusScope);\n const previouslyFocusedElement = document.activeElement;\n const hasFocusedCandidate = container.contains(previouslyFocusedElement);\n if (!hasFocusedCandidate) {\n const mountEvent = new CustomEvent(AUTOFOCUS_ON_MOUNT, EVENT_OPTIONS);\n container.addEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n container.dispatchEvent(mountEvent);\n if (!mountEvent.defaultPrevented) {\n focusFirst(removeLinks(getTabbableCandidates(container)), { select: true });\n if (document.activeElement === previouslyFocusedElement) {\n focus(container);\n }\n }\n }\n return () => {\n container.removeEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n setTimeout(() => {\n const unmountEvent = new CustomEvent(AUTOFOCUS_ON_UNMOUNT, EVENT_OPTIONS);\n container.addEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n container.dispatchEvent(unmountEvent);\n if (!unmountEvent.defaultPrevented) {\n focus(previouslyFocusedElement ?? document.body, { select: true });\n }\n container.removeEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n focusScopesStack.remove(focusScope);\n }, 0);\n };\n }\n }, [container, onMountAutoFocus, onUnmountAutoFocus, focusScope]);\n const handleKeyDown = React.useCallback(\n (event) => {\n if (!loop && !trapped) return;\n if (focusScope.paused) return;\n const isTabKey = event.key === \"Tab\" && !event.altKey && !event.ctrlKey && !event.metaKey;\n const focusedElement = document.activeElement;\n if (isTabKey && focusedElement) {\n const container2 = event.currentTarget;\n const [first, last] = getTabbableEdges(container2);\n const hasTabbableElementsInside = first && last;\n if (!hasTabbableElementsInside) {\n if (focusedElement === container2) event.preventDefault();\n } else {\n if (!event.shiftKey && focusedElement === last) {\n event.preventDefault();\n if (loop) focus(first, { select: true });\n } else if (event.shiftKey && focusedElement === first) {\n event.preventDefault();\n if (loop) focus(last, { select: true });\n }\n }\n }\n },\n [loop, trapped, focusScope.paused]\n );\n return /* @__PURE__ */ jsx(Primitive.div, { tabIndex: -1, ...scopeProps, ref: composedRefs, onKeyDown: handleKeyDown });\n});\nFocusScope.displayName = FOCUS_SCOPE_NAME;\nfunction focusFirst(candidates, { select = false } = {}) {\n const previouslyFocusedElement = document.activeElement;\n for (const candidate of candidates) {\n focus(candidate, { select });\n if (document.activeElement !== previouslyFocusedElement) return;\n }\n}\nfunction getTabbableEdges(container) {\n const candidates = getTabbableCandidates(container);\n const first = findVisible(candidates, container);\n const last = findVisible(candidates.reverse(), container);\n return [first, last];\n}\nfunction getTabbableCandidates(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node) => {\n const isHiddenInput = node.tagName === \"INPUT\" && node.type === \"hidden\";\n if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP;\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}\nfunction findVisible(elements, container) {\n for (const element of elements) {\n if (!isHidden(element, { upTo: container })) return element;\n }\n}\nfunction isHidden(node, { upTo }) {\n if (getComputedStyle(node).visibility === \"hidden\") return true;\n while (node) {\n if (upTo !== void 0 && node === upTo) return false;\n if (getComputedStyle(node).display === \"none\") return true;\n node = node.parentElement;\n }\n return false;\n}\nfunction isSelectableInput(element) {\n return element instanceof HTMLInputElement && \"select\" in element;\n}\nfunction focus(element, { select = false } = {}) {\n if (element && element.focus) {\n const previouslyFocusedElement = document.activeElement;\n element.focus({ preventScroll: true });\n if (element !== previouslyFocusedElement && isSelectableInput(element) && select)\n element.select();\n }\n}\nvar focusScopesStack = createFocusScopesStack();\nfunction createFocusScopesStack() {\n let stack = [];\n return {\n add(focusScope) {\n const activeFocusScope = stack[0];\n if (focusScope !== activeFocusScope) {\n activeFocusScope?.pause();\n }\n stack = arrayRemove(stack, focusScope);\n stack.unshift(focusScope);\n },\n remove(focusScope) {\n stack = arrayRemove(stack, focusScope);\n stack[0]?.resume();\n }\n };\n}\nfunction arrayRemove(array, item) {\n const updatedArray = [...array];\n const index = updatedArray.indexOf(item);\n if (index !== -1) {\n updatedArray.splice(index, 1);\n }\n return updatedArray;\n}\nfunction removeLinks(items) {\n return items.filter((item) => item.tagName !== \"A\");\n}\nvar Root = FocusScope;\nexport {\n FocusScope,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// packages/react/focus-guards/src/FocusGuards.tsx\nimport * as React from \"react\";\nvar count = 0;\nfunction FocusGuards(props) {\n useFocusGuards();\n return props.children;\n}\nfunction useFocusGuards() {\n React.useEffect(() => {\n const edgeGuards = document.querySelectorAll(\"[data-radix-focus-guard]\");\n document.body.insertAdjacentElement(\"afterbegin\", edgeGuards[0] ?? createFocusGuard());\n document.body.insertAdjacentElement(\"beforeend\", edgeGuards[1] ?? createFocusGuard());\n count++;\n return () => {\n if (count === 1) {\n document.querySelectorAll(\"[data-radix-focus-guard]\").forEach((node) => node.remove());\n }\n count--;\n };\n }, []);\n}\nfunction createFocusGuard() {\n const element = document.createElement(\"span\");\n element.setAttribute(\"data-radix-focus-guard\", \"\");\n element.tabIndex = 0;\n element.style.outline = \"none\";\n element.style.opacity = \"0\";\n element.style.position = \"fixed\";\n element.style.pointerEvents = \"none\";\n return element;\n}\nvar Root = FocusGuards;\nexport {\n FocusGuards,\n Root,\n useFocusGuards\n};\n//# sourceMappingURL=index.mjs.map\n","export var zeroRightClassName = 'right-scroll-bar-position';\nexport var fullWidthClassName = 'width-before-scroll-bar';\nexport var noScrollbarsClassName = 'with-scroll-bars-hidden';\n/**\n * Name of a CSS variable containing the amount of \"hidden\" scrollbar\n * ! might be undefined ! use will fallback!\n */\nexport var removedBarSizeVariable = '--removed-body-scroll-bar-size';\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import * as React from 'react';\nimport { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar currentValues = new WeakMap();\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n var callbackRef = useCallbackRef(defaultValue || null, function (newValue) {\n return refs.forEach(function (ref) { return assignRef(ref, newValue); });\n });\n // handle refs changes - added or removed\n useIsomorphicLayoutEffect(function () {\n var oldValue = currentValues.get(callbackRef);\n if (oldValue) {\n var prevRefs_1 = new Set(oldValue);\n var nextRefs_1 = new Set(refs);\n var current_1 = callbackRef.current;\n prevRefs_1.forEach(function (ref) {\n if (!nextRefs_1.has(ref)) {\n assignRef(ref, null);\n }\n });\n nextRefs_1.forEach(function (ref) {\n if (!prevRefs_1.has(ref)) {\n assignRef(ref, current_1);\n }\n });\n }\n currentValues.set(callbackRef, refs);\n }, [refs]);\n return callbackRef;\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nvar SideCar = function (_a) {\n var sideCar = _a.sideCar, rest = __rest(_a, [\"sideCar\"]);\n if (!sideCar) {\n throw new Error('Sidecar: please provide `sideCar` property to import the right car');\n }\n var Target = sideCar.read();\n if (!Target) {\n throw new Error('Sidecar medium not found');\n }\n return React.createElement(Target, __assign({}, rest));\n};\nSideCar.isSideCarExport = true;\nexport function exportSidecar(medium, exported) {\n medium.useMedium(exported);\n return SideCar;\n}\n","import { createSidecarMedium } from 'use-sidecar';\nexport var effectCar = createSidecarMedium();\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { fullWidthClassName, zeroRightClassName } from 'react-remove-scroll-bar/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { effectCar } from './medium';\nvar nothing = function () {\n return;\n};\n/**\n * Removes scrollbar from the page and contain the scroll within the Lock\n */\nvar RemoveScroll = React.forwardRef(function (props, parentRef) {\n var ref = React.useRef(null);\n var _a = React.useState({\n onScrollCapture: nothing,\n onWheelCapture: nothing,\n onTouchMoveCapture: nothing,\n }), callbacks = _a[0], setCallbacks = _a[1];\n var forwardProps = props.forwardProps, children = props.children, className = props.className, removeScrollBar = props.removeScrollBar, enabled = props.enabled, shards = props.shards, sideCar = props.sideCar, noIsolation = props.noIsolation, inert = props.inert, allowPinchZoom = props.allowPinchZoom, _b = props.as, Container = _b === void 0 ? 'div' : _b, gapMode = props.gapMode, rest = __rest(props, [\"forwardProps\", \"children\", \"className\", \"removeScrollBar\", \"enabled\", \"shards\", \"sideCar\", \"noIsolation\", \"inert\", \"allowPinchZoom\", \"as\", \"gapMode\"]);\n var SideCar = sideCar;\n var containerRef = useMergeRefs([ref, parentRef]);\n var containerProps = __assign(__assign({}, rest), callbacks);\n return (React.createElement(React.Fragment, null,\n enabled && (React.createElement(SideCar, { sideCar: effectCar, removeScrollBar: removeScrollBar, shards: shards, noIsolation: noIsolation, inert: inert, setCallbacks: setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode: gapMode })),\n forwardProps ? (React.cloneElement(React.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef }))) : (React.createElement(Container, __assign({}, containerProps, { className: className, ref: containerRef }), children))));\n});\nRemoveScroll.defaultProps = {\n enabled: true,\n removeScrollBar: true,\n inert: false,\n};\nRemoveScroll.classNames = {\n fullWidth: fullWidthClassName,\n zeroRight: zeroRightClassName,\n};\nexport { RemoveScroll };\n","import { getNonce } from 'get-nonce';\nfunction makeStyleTag() {\n if (!document)\n return null;\n var tag = document.createElement('style');\n tag.type = 'text/css';\n var nonce = getNonce();\n if (nonce) {\n tag.setAttribute('nonce', nonce);\n }\n return tag;\n}\nfunction injectStyles(tag, css) {\n // @ts-ignore\n if (tag.styleSheet) {\n // @ts-ignore\n tag.styleSheet.cssText = css;\n }\n else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n var head = document.head || document.getElementsByTagName('head')[0];\n head.appendChild(tag);\n}\nexport var stylesheetSingleton = function () {\n var counter = 0;\n var stylesheet = null;\n return {\n add: function (style) {\n if (counter == 0) {\n if ((stylesheet = makeStyleTag())) {\n injectStyles(stylesheet, style);\n insertStyleTag(stylesheet);\n }\n }\n counter++;\n },\n remove: function () {\n counter--;\n if (!counter && stylesheet) {\n stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);\n stylesheet = null;\n }\n },\n };\n};\n","var currentNonce;\nexport var setNonce = function (nonce) {\n currentNonce = nonce;\n};\nexport var getNonce = function () {\n if (currentNonce) {\n return currentNonce;\n }\n if (typeof __webpack_nonce__ !== 'undefined') {\n return __webpack_nonce__;\n }\n return undefined;\n};\n","import { styleHookSingleton } from './hook';\n/**\n * create a Component to add styles on demand\n * - styles are added when first instance is mounted\n * - styles are removed when the last instance is unmounted\n * - changing styles in runtime does nothing unless dynamic is set. But with multiple components that can lead to the undefined behavior\n */\nexport var styleSingleton = function () {\n var useStyle = styleHookSingleton();\n var Sheet = function (_a) {\n var styles = _a.styles, dynamic = _a.dynamic;\n useStyle(styles, dynamic);\n return null;\n };\n return Sheet;\n};\n","import * as React from 'react';\nimport { stylesheetSingleton } from './singleton';\n/**\n * creates a hook to control style singleton\n * @see {@link styleSingleton} for a safer component version\n * @example\n * ```tsx\n * const useStyle = styleHookSingleton();\n * ///\n * useStyle('body { overflow: hidden}');\n */\nexport var styleHookSingleton = function () {\n var sheet = stylesheetSingleton();\n return function (styles, isDynamic) {\n React.useEffect(function () {\n sheet.add(styles);\n return function () {\n sheet.remove();\n };\n }, [styles && isDynamic]);\n };\n};\n","export var zeroGap = {\n left: 0,\n top: 0,\n right: 0,\n gap: 0,\n};\nvar parse = function (x) { return parseInt(x || '', 10) || 0; };\nvar getOffset = function (gapMode) {\n var cs = window.getComputedStyle(document.body);\n var left = cs[gapMode === 'padding' ? 'paddingLeft' : 'marginLeft'];\n var top = cs[gapMode === 'padding' ? 'paddingTop' : 'marginTop'];\n var right = cs[gapMode === 'padding' ? 'paddingRight' : 'marginRight'];\n return [parse(left), parse(top), parse(right)];\n};\nexport var getGapWidth = function (gapMode) {\n if (gapMode === void 0) { gapMode = 'margin'; }\n if (typeof window === 'undefined') {\n return zeroGap;\n }\n var offsets = getOffset(gapMode);\n var documentWidth = document.documentElement.clientWidth;\n var windowWidth = window.innerWidth;\n return {\n left: offsets[0],\n top: offsets[1],\n right: offsets[2],\n gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0]),\n };\n};\n","import * as React from 'react';\nimport { styleSingleton } from 'react-style-singleton';\nimport { fullWidthClassName, zeroRightClassName, noScrollbarsClassName, removedBarSizeVariable } from './constants';\nimport { getGapWidth } from './utils';\nvar Style = styleSingleton();\nexport var lockAttribute = 'data-scroll-locked';\n// important tip - once we measure scrollBar width and remove them\n// we could not repeat this operation\n// thus we are using style-singleton - only the first \"yet correct\" style will be applied.\nvar getStyles = function (_a, allowRelative, gapMode, important) {\n var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;\n if (gapMode === void 0) { gapMode = 'margin'; }\n return \"\\n .\".concat(noScrollbarsClassName, \" {\\n overflow: hidden \").concat(important, \";\\n padding-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n body[\").concat(lockAttribute, \"] {\\n overflow: hidden \").concat(important, \";\\n overscroll-behavior: contain;\\n \").concat([\n allowRelative && \"position: relative \".concat(important, \";\"),\n gapMode === 'margin' &&\n \"\\n padding-left: \".concat(left, \"px;\\n padding-top: \").concat(top, \"px;\\n padding-right: \").concat(right, \"px;\\n margin-left:0;\\n margin-top:0;\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n \"),\n gapMode === 'padding' && \"padding-right: \".concat(gap, \"px \").concat(important, \";\"),\n ]\n .filter(Boolean)\n .join(''), \"\\n }\\n \\n .\").concat(zeroRightClassName, \" {\\n right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" {\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(zeroRightClassName, \" .\").concat(zeroRightClassName, \" {\\n right: 0 \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" .\").concat(fullWidthClassName, \" {\\n margin-right: 0 \").concat(important, \";\\n }\\n \\n body[\").concat(lockAttribute, \"] {\\n \").concat(removedBarSizeVariable, \": \").concat(gap, \"px;\\n }\\n\");\n};\nvar getCurrentUseCounter = function () {\n var counter = parseInt(document.body.getAttribute(lockAttribute) || '0', 10);\n return isFinite(counter) ? counter : 0;\n};\nexport var useLockAttribute = function () {\n React.useEffect(function () {\n document.body.setAttribute(lockAttribute, (getCurrentUseCounter() + 1).toString());\n return function () {\n var newCounter = getCurrentUseCounter() - 1;\n if (newCounter <= 0) {\n document.body.removeAttribute(lockAttribute);\n }\n else {\n document.body.setAttribute(lockAttribute, newCounter.toString());\n }\n };\n }, []);\n};\n/**\n * Removes page scrollbar and blocks page scroll when mounted\n */\nexport var RemoveScrollBar = function (_a) {\n var noRelative = _a.noRelative, noImportant = _a.noImportant, _b = _a.gapMode, gapMode = _b === void 0 ? 'margin' : _b;\n useLockAttribute();\n /*\n gap will be measured on every component mount\n however it will be used only by the \"first\" invocation\n due to singleton nature of <Style\n */\n var gap = React.useMemo(function () { return getGapWidth(gapMode); }, [gapMode]);\n return React.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? '!important' : '') });\n};\n","var passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n return true;\n },\n });\n // @ts-ignore\n window.addEventListener('test', options, options);\n // @ts-ignore\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\nexport var nonPassive = passiveSupported ? { passive: false } : false;\n","var alwaysContainsScroll = function (node) {\n // textarea will always _contain_ scroll inside self. It only can be hidden\n return node.tagName === 'TEXTAREA';\n};\nvar elementCanBeScrolled = function (node, overflow) {\n if (!(node instanceof Element)) {\n return false;\n }\n var styles = window.getComputedStyle(node);\n return (\n // not-not-scrollable\n styles[overflow] !== 'hidden' &&\n // contains scroll inside self\n !(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === 'visible'));\n};\nvar elementCouldBeVScrolled = function (node) { return elementCanBeScrolled(node, 'overflowY'); };\nvar elementCouldBeHScrolled = function (node) { return elementCanBeScrolled(node, 'overflowX'); };\nexport var locationCouldBeScrolled = function (axis, node) {\n var ownerDocument = node.ownerDocument;\n var current = node;\n do {\n // Skip over shadow root\n if (typeof ShadowRoot !== 'undefined' && current instanceof ShadowRoot) {\n current = current.host;\n }\n var isScrollable = elementCouldBeScrolled(axis, current);\n if (isScrollable) {\n var _a = getScrollVariables(axis, current), scrollHeight = _a[1], clientHeight = _a[2];\n if (scrollHeight > clientHeight) {\n return true;\n }\n }\n current = current.parentNode;\n } while (current && current !== ownerDocument.body);\n return false;\n};\nvar getVScrollVariables = function (_a) {\n var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;\n return [\n scrollTop,\n scrollHeight,\n clientHeight,\n ];\n};\nvar getHScrollVariables = function (_a) {\n var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;\n return [\n scrollLeft,\n scrollWidth,\n clientWidth,\n ];\n};\nvar elementCouldBeScrolled = function (axis, node) {\n return axis === 'v' ? elementCouldBeVScrolled(node) : elementCouldBeHScrolled(node);\n};\nvar getScrollVariables = function (axis, node) {\n return axis === 'v' ? getVScrollVariables(node) : getHScrollVariables(node);\n};\nvar getDirectionFactor = function (axis, direction) {\n /**\n * If the element's direction is rtl (right-to-left), then scrollLeft is 0 when the scrollbar is at its rightmost position,\n * and then increasingly negative as you scroll towards the end of the content.\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollLeft\n */\n return axis === 'h' && direction === 'rtl' ? -1 : 1;\n};\nexport var handleScroll = function (axis, endTarget, event, sourceDelta, noOverscroll) {\n var directionFactor = getDirectionFactor(axis, window.getComputedStyle(endTarget).direction);\n var delta = directionFactor * sourceDelta;\n // find scrollable target\n var target = event.target;\n var targetInLock = endTarget.contains(target);\n var shouldCancelScroll = false;\n var isDeltaPositive = delta > 0;\n var availableScroll = 0;\n var availableScrollTop = 0;\n do {\n var _a = getScrollVariables(axis, target), position = _a[0], scroll_1 = _a[1], capacity = _a[2];\n var elementScroll = scroll_1 - capacity - directionFactor * position;\n if (position || elementScroll) {\n if (elementCouldBeScrolled(axis, target)) {\n availableScroll += elementScroll;\n availableScrollTop += position;\n }\n }\n if (target instanceof ShadowRoot) {\n target = target.host;\n }\n else {\n target = target.parentNode;\n }\n } while (\n // portaled content\n (!targetInLock && target !== document.body) ||\n // self content\n (targetInLock && (endTarget.contains(target) || endTarget === target)));\n // handle epsilon around 0 (non standard zoom levels)\n if (isDeltaPositive &&\n ((noOverscroll && Math.abs(availableScroll) < 1) || (!noOverscroll && delta > availableScroll))) {\n shouldCancelScroll = true;\n }\n else if (!isDeltaPositive &&\n ((noOverscroll && Math.abs(availableScrollTop) < 1) || (!noOverscroll && -delta > availableScrollTop))) {\n shouldCancelScroll = true;\n }\n return shouldCancelScroll;\n};\n","import { __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScrollBar } from 'react-remove-scroll-bar';\nimport { styleSingleton } from 'react-style-singleton';\nimport { nonPassive } from './aggresiveCapture';\nimport { handleScroll, locationCouldBeScrolled } from './handleScroll';\nexport var getTouchXY = function (event) {\n return 'changedTouches' in event ? [event.changedTouches[0].clientX, event.changedTouches[0].clientY] : [0, 0];\n};\nexport var getDeltaXY = function (event) { return [event.deltaX, event.deltaY]; };\nvar extractRef = function (ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\nvar deltaCompare = function (x, y) { return x[0] === y[0] && x[1] === y[1]; };\nvar generateStyle = function (id) { return \"\\n .block-interactivity-\".concat(id, \" {pointer-events: none;}\\n .allow-interactivity-\").concat(id, \" {pointer-events: all;}\\n\"); };\nvar idCounter = 0;\nvar lockStack = [];\nexport function RemoveScrollSideCar(props) {\n var shouldPreventQueue = React.useRef([]);\n var touchStartRef = React.useRef([0, 0]);\n var activeAxis = React.useRef();\n var id = React.useState(idCounter++)[0];\n var Style = React.useState(styleSingleton)[0];\n var lastProps = React.useRef(props);\n React.useEffect(function () {\n lastProps.current = props;\n }, [props]);\n React.useEffect(function () {\n if (props.inert) {\n document.body.classList.add(\"block-interactivity-\".concat(id));\n var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);\n allow_1.forEach(function (el) { return el.classList.add(\"allow-interactivity-\".concat(id)); });\n return function () {\n document.body.classList.remove(\"block-interactivity-\".concat(id));\n allow_1.forEach(function (el) { return el.classList.remove(\"allow-interactivity-\".concat(id)); });\n };\n }\n return;\n }, [props.inert, props.lockRef.current, props.shards]);\n var shouldCancelEvent = React.useCallback(function (event, parent) {\n if (('touches' in event && event.touches.length === 2) || (event.type === 'wheel' && event.ctrlKey)) {\n return !lastProps.current.allowPinchZoom;\n }\n var touch = getTouchXY(event);\n var touchStart = touchStartRef.current;\n var deltaX = 'deltaX' in event ? event.deltaX : touchStart[0] - touch[0];\n var deltaY = 'deltaY' in event ? event.deltaY : touchStart[1] - touch[1];\n var currentAxis;\n var target = event.target;\n var moveDirection = Math.abs(deltaX) > Math.abs(deltaY) ? 'h' : 'v';\n // allow horizontal touch move on Range inputs. They will not cause any scroll\n if ('touches' in event && moveDirection === 'h' && target.type === 'range') {\n return false;\n }\n var canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n if (!canBeScrolledInMainDirection) {\n return true;\n }\n if (canBeScrolledInMainDirection) {\n currentAxis = moveDirection;\n }\n else {\n currentAxis = moveDirection === 'v' ? 'h' : 'v';\n canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n // other axis might be not scrollable\n }\n if (!canBeScrolledInMainDirection) {\n return false;\n }\n if (!activeAxis.current && 'changedTouches' in event && (deltaX || deltaY)) {\n activeAxis.current = currentAxis;\n }\n if (!currentAxis) {\n return true;\n }\n var cancelingAxis = activeAxis.current || currentAxis;\n return handleScroll(cancelingAxis, parent, event, cancelingAxis === 'h' ? deltaX : deltaY, true);\n }, []);\n var shouldPrevent = React.useCallback(function (_event) {\n var event = _event;\n if (!lockStack.length || lockStack[lockStack.length - 1] !== Style) {\n // not the last active\n return;\n }\n var delta = 'deltaY' in event ? getDeltaXY(event) : getTouchXY(event);\n var sourceEvent = shouldPreventQueue.current.filter(function (e) { return e.name === event.type && (e.target === event.target || event.target === e.shadowParent) && deltaCompare(e.delta, delta); })[0];\n // self event, and should be canceled\n if (sourceEvent && sourceEvent.should) {\n if (event.cancelable) {\n event.preventDefault();\n }\n return;\n }\n // outside or shard event\n if (!sourceEvent) {\n var shardNodes = (lastProps.current.shards || [])\n .map(extractRef)\n .filter(Boolean)\n .filter(function (node) { return node.contains(event.target); });\n var shouldStop = shardNodes.length > 0 ? shouldCancelEvent(event, shardNodes[0]) : !lastProps.current.noIsolation;\n if (shouldStop) {\n if (event.cancelable) {\n event.preventDefault();\n }\n }\n }\n }, []);\n var shouldCancel = React.useCallback(function (name, delta, target, should) {\n var event = { name: name, delta: delta, target: target, should: should, shadowParent: getOutermostShadowParent(target) };\n shouldPreventQueue.current.push(event);\n setTimeout(function () {\n shouldPreventQueue.current = shouldPreventQueue.current.filter(function (e) { return e !== event; });\n }, 1);\n }, []);\n var scrollTouchStart = React.useCallback(function (event) {\n touchStartRef.current = getTouchXY(event);\n activeAxis.current = undefined;\n }, []);\n var scrollWheel = React.useCallback(function (event) {\n shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n var scrollTouchMove = React.useCallback(function (event) {\n shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n React.useEffect(function () {\n lockStack.push(Style);\n props.setCallbacks({\n onScrollCapture: scrollWheel,\n onWheelCapture: scrollWheel,\n onTouchMoveCapture: scrollTouchMove,\n });\n document.addEventListener('wheel', shouldPrevent, nonPassive);\n document.addEventListener('touchmove', shouldPrevent, nonPassive);\n document.addEventListener('touchstart', scrollTouchStart, nonPassive);\n return function () {\n lockStack = lockStack.filter(function (inst) { return inst !== Style; });\n document.removeEventListener('wheel', shouldPrevent, nonPassive);\n document.removeEventListener('touchmove', shouldPrevent, nonPassive);\n document.removeEventListener('touchstart', scrollTouchStart, nonPassive);\n };\n }, []);\n var removeScrollBar = props.removeScrollBar, inert = props.inert;\n return (React.createElement(React.Fragment, null,\n inert ? React.createElement(Style, { styles: generateStyle(id) }) : null,\n removeScrollBar ? React.createElement(RemoveScrollBar, { gapMode: props.gapMode }) : null));\n}\nfunction getOutermostShadowParent(node) {\n var shadowParent = null;\n while (node !== null) {\n if (node instanceof ShadowRoot) {\n shadowParent = node.host;\n node = node.host;\n }\n node = node.parentNode;\n }\n return shadowParent;\n}\n","import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, __assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n","var getDefaultParent = function (originalTarget) {\n if (typeof document === 'undefined') {\n return null;\n }\n var sampleTarget = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;\n return sampleTarget.ownerDocument.body;\n};\nvar counterMap = new WeakMap();\nvar uncontrolledNodes = new WeakMap();\nvar markerMap = {};\nvar lockCount = 0;\nvar unwrapHost = function (node) {\n return node && (node.host || unwrapHost(node.parentNode));\n};\nvar correctTargets = function (parent, targets) {\n return targets\n .map(function (target) {\n if (parent.contains(target)) {\n return target;\n }\n var correctedTarget = unwrapHost(target);\n if (correctedTarget && parent.contains(correctedTarget)) {\n return correctedTarget;\n }\n console.error('aria-hidden', target, 'in not contained inside', parent, '. Doing nothing');\n return null;\n })\n .filter(function (x) { return Boolean(x); });\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @param {String} [controlAttribute] - html Attribute to control\n * @return {Undo} undo command\n */\nvar applyAttributeToOthers = function (originalTarget, parentNode, markerName, controlAttribute) {\n var targets = correctTargets(parentNode, Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n if (!markerMap[markerName]) {\n markerMap[markerName] = new WeakMap();\n }\n var markerCounter = markerMap[markerName];\n var hiddenNodes = [];\n var elementsToKeep = new Set();\n var elementsToStop = new Set(targets);\n var keep = function (el) {\n if (!el || elementsToKeep.has(el)) {\n return;\n }\n elementsToKeep.add(el);\n keep(el.parentNode);\n };\n targets.forEach(keep);\n var deep = function (parent) {\n if (!parent || elementsToStop.has(parent)) {\n return;\n }\n Array.prototype.forEach.call(parent.children, function (node) {\n if (elementsToKeep.has(node)) {\n deep(node);\n }\n else {\n try {\n var attr = node.getAttribute(controlAttribute);\n var alreadyHidden = attr !== null && attr !== 'false';\n var counterValue = (counterMap.get(node) || 0) + 1;\n var markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenNodes.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledNodes.set(node, true);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, 'true');\n }\n if (!alreadyHidden) {\n node.setAttribute(controlAttribute, 'true');\n }\n }\n catch (e) {\n console.error('aria-hidden: cannot operate on ', node, e);\n }\n }\n });\n };\n deep(parentNode);\n elementsToKeep.clear();\n lockCount++;\n return function () {\n hiddenNodes.forEach(function (node) {\n var counterValue = counterMap.get(node) - 1;\n var markerValue = markerCounter.get(node) - 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n if (!counterValue) {\n if (!uncontrolledNodes.has(node)) {\n node.removeAttribute(controlAttribute);\n }\n uncontrolledNodes.delete(node);\n }\n if (!markerValue) {\n node.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n // clear\n counterMap = new WeakMap();\n counterMap = new WeakMap();\n uncontrolledNodes = new WeakMap();\n markerMap = {};\n }\n };\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var hideOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-aria-hidden'; }\n var targets = Array.from(Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n // we should not hide ariaLive elements - https://github.com/theKashey/aria-hidden/issues/10\n targets.push.apply(targets, Array.from(activeParentNode.querySelectorAll('[aria-live]')));\n return applyAttributeToOthers(targets, activeParentNode, markerName, 'aria-hidden');\n};\n/**\n * Marks everything except given node(or nodes) as inert\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var inertOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-inert-ed'; }\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n return applyAttributeToOthers(originalTarget, activeParentNode, markerName, 'inert');\n};\n/**\n * @returns if current browser supports inert\n */\nexport var supportsInert = function () {\n return typeof HTMLElement !== 'undefined' && HTMLElement.prototype.hasOwnProperty('inert');\n};\n/**\n * Automatic function to \"suppress\" DOM elements - _hide_ or _inert_ in the best possible way\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var suppressOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-suppressed'; }\n return (supportsInert() ? inertOthers : hideOthers)(originalTarget, parentNode, markerName);\n};\n"],"names":["AUTOFOCUS_ON_MOUNT","AUTOFOCUS_ON_UNMOUNT","EVENT_OPTIONS","bubbles","cancelable","FocusScope","React","forwardRef","props","forwardedRef","loop","trapped","onMountAutoFocus","onMountAutoFocusProp","onUnmountAutoFocus","onUnmountAutoFocusProp","scopeProps","container","setContainer","useState","useCallbackRef","lastFocusedElementRef","useRef","composedRefs","useComposedRefs","node","focusScope","paused","pause","this","resume","current","useEffect","handleFocusIn","event","target","contains","focus","select","handleFocusOut","relatedTarget","handleMutations","mutations","document","activeElement","body","mutation","removedNodes","length","addEventListener","mutationObserver","MutationObserver","observe","childList","subtree","removeEventListener","disconnect","focusScopesStack","add","previouslyFocusedElement","mountEvent","CustomEvent","dispatchEvent","defaultPrevented","candidates","candidate","focusFirst","items","getTabbableCandidates","filter","item","tagName","setTimeout","unmountEvent","remove","handleKeyDown","useCallback","isTabKey","key","altKey","ctrlKey","metaKey","focusedElement","currentTarget","first","last","findVisible","reverse","getTabbableEdges","shiftKey","preventDefault","jsx","Primitive","div","tabIndex","ref","onKeyDown","nodes","walker","createTreeWalker","NodeFilter","SHOW_ELEMENT","acceptNode","isHiddenInput","type","disabled","hidden","FILTER_SKIP","FILTER_ACCEPT","nextNode","push","currentNode","elements","element","isHidden","upTo","getComputedStyle","visibility","display","parentElement","preventScroll","HTMLInputElement","isSelectableInput","displayName","stack","activeFocusScope","arrayRemove","unshift","createFocusScopesStack","array","updatedArray","index","indexOf","splice","count","useFocusGuards","edgeGuards","querySelectorAll","insertAdjacentElement","createFocusGuard","forEach","createElement","setAttribute","style","outline","opacity","position","pointerEvents","zeroRightClassName","fullWidthClassName","assignRef","value","useIsomorphicLayoutEffect","window","useLayoutEffect","currentValues","WeakMap","useMergeRefs","refs","defaultValue","initialValue","callback","callbackRef","newValue","facade","oldValue","get","prevRefs_1","Set","nextRefs_1","current_1","has","set","ItoI","a","SideCar","_a","sideCar","rest","__rest","Error","Target","read","__assign","isSideCarExport","effectCar","options","medium","defaults","middleware","buffer","assigned","useMedium","data","x","assignSyncMedium","cb","cbs","assignMedium","pendingQueue","executeQueue","cycle","Promise","resolve","then","innerCreateMedium","async","ssr","createSidecarMedium","nothing","RemoveScroll","parentRef","onScrollCapture","onWheelCapture","onTouchMoveCapture","callbacks","setCallbacks","forwardProps","children","className","removeScrollBar","enabled","shards","noIsolation","inert","allowPinchZoom","_b","as","Container","gapMode","containerRef","containerProps","Fragment","lockRef","cloneElement","Children","only","defaultProps","classNames","fullWidth","zeroRight","makeStyleTag","tag","nonce","__webpack_nonce__","getNonce","stylesheetSingleton","counter","stylesheet","css","styleSheet","cssText","appendChild","createTextNode","head","getElementsByTagName","insertStyleTag","parentNode","removeChild","styleSingleton","sheet","useStyle","styles","isDynamic","dynamic","zeroGap","left","top","right","gap","parse","parseInt","getGapWidth","offsets","cs","getOffset","documentWidth","documentElement","clientWidth","windowWidth","innerWidth","Math","max","Style","lockAttribute","getStyles","allowRelative","important","concat","Boolean","join","getCurrentUseCounter","getAttribute","isFinite","RemoveScrollBar","noRelative","noImportant","toString","newCounter","removeAttribute","useMemo","passiveSupported","Object","defineProperty","err","nonPassive","passive","elementCanBeScrolled","overflow","Element","overflowY","overflowX","alwaysContainsScroll","locationCouldBeScrolled","axis","ownerDocument","ShadowRoot","host","elementCouldBeScrolled","getScrollVariables","elementCouldBeVScrolled","elementCouldBeHScrolled","scrollTop","scrollHeight","clientHeight","scrollLeft","scrollWidth","getHScrollVariables","getTouchXY","changedTouches","clientX","clientY","getDeltaXY","deltaX","deltaY","extractRef","generateStyle","id","idCounter","lockStack","getOutermostShadowParent","shadowParent","exported","shouldPreventQueue","touchStartRef","activeAxis","lastProps","classList","allow_1","__spreadArray","map","el","shouldCancelEvent","parent","touches","currentAxis","touch","touchStart","moveDirection","abs","canBeScrolledInMainDirection","cancelingAxis","endTarget","sourceDelta","directionFactor","direction","getDirectionFactor","delta","targetInLock","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","elementScroll","handleScroll","shouldPrevent","_event","sourceEvent","e","name","y","should","shardNodes","shouldCancel","scrollTouchStart","undefined","scrollWheel","scrollTouchMove","inst","ReactRemoveScroll","counterMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","applyAttributeToOthers","originalTarget","markerName","controlAttribute","targets","correctedTarget","console","error","correctTargets","Array","isArray","markerCounter","hiddenNodes","elementsToKeep","elementsToStop","keep","deep","prototype","call","attr","alreadyHidden","counterValue","markerValue","clear","delete","hideOthers","from","activeParentNode","getDefaultParent","apply"],"mappings":"qPAKA,IAAMA,EAAqB,8BACrBC,EAAuB,gCACvBC,EAAgB,CAAEC,SAAS,EAAOC,YAAY,GAwC9CC,EAAmBC,EAAAC,YAA+C,CAACC,EAAOC,KAC9E,MAAMC,KACJA,GAAO,EAAAC,QACPA,GAAU,EACVC,iBAAkBC,EAClBC,mBAAoBC,KACjBC,GACDR,GACGS,EAAWC,GAAsBZ,EAAAa,SAA6B,MAC/DP,EAAmBQ,EAAeP,GAClCC,EAAqBM,EAAeL,GACpCM,EAA8Bf,EAAAgB,OAA2B,MACzDC,EAAeC,EAAgBf,GAAegB,GAASP,EAAaO,KAEpEC,EAAmBpB,EAAAgB,OAAO,CAC9BK,QAAQ,EACR,KAAAC,GACEC,KAAKF,QAAS,CAChB,EACA,MAAAG,GACED,KAAKF,QAAS,CAChB,IACCI,QAGGzB,EAAA0B,WAAU,KACd,GAAIrB,EAAS,CACX,IAASsB,EAAT,SAAuBC,GACrB,GAAIR,EAAWC,SAAWV,EAAW,OACrC,MAAMkB,EAASD,EAAMC,OACjBlB,EAAUmB,SAASD,GACrBd,EAAsBU,QAAUI,EAEhCE,EAAMhB,EAAsBU,QAAS,CAAEO,QAAQ,KAI1CC,EAAT,SAAwBL,GACtB,GAAIR,EAAWC,SAAWV,EAAW,OACrC,MAAMuB,EAAgBN,EAAMM,cAYN,OAAlBA,IAICvB,EAAUmB,SAASI,IACtBH,EAAMhB,EAAsBU,QAAS,CAAEO,QAAQ,MAO1CG,EAAT,SAAyBC,GAEvB,GADuBC,SAASC,gBACTD,SAASE,KAChC,IAAA,MAAWC,KAAYJ,EACjBI,EAASC,aAAaC,OAAS,GAAGX,EAAMpB,EAEhD,EAEA0B,SAASM,iBAAiB,UAAWhB,GACrCU,SAASM,iBAAiB,WAAYV,GACtC,MAAMW,EAAmB,IAAIC,iBAAiBV,GAG9C,OAFIxB,GAAWiC,EAAiBE,QAAQnC,EAAW,CAAEoC,WAAW,EAAMC,SAAS,IAExE,KACLX,SAASY,oBAAoB,UAAWtB,GACxCU,SAASY,oBAAoB,WAAYhB,GACzCW,EAAiBM,YAAW,CAEhC,IACC,CAAC7C,EAASM,EAAWS,EAAWC,SAE7BrB,EAAA0B,WAAU,KACd,GAAIf,EAAW,CACbwC,EAAiBC,IAAIhC,GACrB,MAAMiC,EAA2BhB,SAASC,cAG1C,IAF4B3B,EAAUmB,SAASuB,GAErB,CACxB,MAAMC,EAAa,IAAIC,YAAY7D,EAAoBE,GACvDe,EAAUgC,iBAAiBjD,EAAoBY,GAC/CK,EAAU6C,cAAcF,GACnBA,EAAWG,oBA4ExB,SAAoBC,GAA2B1B,OAAEA,GAAS,GAAU,CAAA,GAClE,MAAMqB,EAA2BhB,SAASC,cAC1C,IAAA,MAAWqB,KAAaD,EAEtB,GADA3B,EAAM4B,EAAW,CAAE3B,WACfK,SAASC,gBAAkBe,EAA0B,MAE7D,CAjFUO,EAsMWC,EAtMYC,EAAsBnD,GAuM9CkD,EAAME,QAAQC,GAA0B,MAAjBA,EAAKC,WAvM+B,CAAEjC,QAAQ,IAChEK,SAASC,gBAAkBe,GAC7BtB,EAAMpB,GAGZ,CAEA,MAAO,KACLA,EAAUsC,oBAAoBvD,EAAoBY,GAKlD4D,YAAW,KACT,MAAMC,EAAe,IAAIZ,YAAY5D,EAAsBC,GAC3De,EAAUgC,iBAAiBhD,EAAsBa,GACjDG,EAAU6C,cAAcW,GACnBA,EAAaV,kBAChB1B,EAAMsB,GAA4BhB,SAASE,KAAM,CAAEP,QAAQ,IAG7DrB,EAAUsC,oBAAoBtD,EAAsBa,GAEpD2C,EAAiBiB,OAAOhD,EAAU,GACjC,EAAC,CAER,CA4KJ,IAAqByC,CA5KjB,GACC,CAAClD,EAAWL,EAAkBE,EAAoBY,IAGrD,MAAMiD,EAAsBrE,EAAAsE,aACzB1C,IACC,IAAKxB,IAASC,EAAS,OACvB,GAAIe,EAAWC,OAAQ,OAEvB,MAAMkD,EAAyB,QAAd3C,EAAM4C,MAAkB5C,EAAM6C,SAAW7C,EAAM8C,UAAY9C,EAAM+C,QAC5EC,EAAiBvC,SAASC,cAEhC,GAAIiC,GAAYK,EAAgB,CAC9B,MAAMjE,EAAYiB,EAAMiD,eACjBC,EAAOC,GA8CtB,SAA0BpE,GACxB,MAAM+C,EAAaI,EAAsBnD,GACnCmE,EAAQE,EAAYtB,EAAY/C,GAChCoE,EAAOC,EAAYtB,EAAWuB,UAAWtE,GAC/C,MAAO,CAACmE,EAAOC,EACjB,CAnD8BG,CAAiBvE,GACLmE,GAASC,EAMpCnD,EAAMuD,UAAYP,IAAmBG,EAG/BnD,EAAMuD,UAAYP,IAAmBE,IAC9ClD,EAAMwD,iBACFhF,GAAM2B,EAAMgD,EAAM,CAAE/C,QAAQ,MAJhCJ,EAAMwD,iBACFhF,GAAM2B,EAAM+C,EAAO,CAAE9C,QAAQ,KAJ/B4C,IAAmBjE,GAAWiB,EAAMwD,gBAU5C,IAEF,CAAChF,EAAMC,EAASe,EAAWC,SAG7B,OACEgE,EAACC,EAAUC,IAAV,CAAcC,UAAU,KAAQ9E,EAAY+E,IAAKxE,EAAcyE,UAAWrB,GAAe,IA0C9F,SAASP,EAAsBnD,GAC7B,MAAMgF,EAAuB,GACvBC,EAASvD,SAASwD,iBAAiBlF,EAAWmF,WAAWC,aAAc,CAC3EC,WAAa7E,IACX,MAAM8E,EAAiC,UAAjB9E,EAAK8C,SAAqC,WAAd9C,EAAK+E,KACvD,OAAI/E,EAAKgF,UAAYhF,EAAKiF,QAAUH,EAAsBH,WAAWO,YAI9DlF,EAAKqE,UAAY,EAAIM,WAAWQ,cAAgBR,WAAWO,WAAA,IAGtE,KAAOT,EAAOW,YAAYZ,EAAMa,KAAKZ,EAAOa,aAG5C,OAAOd,CACT,CAMA,SAASX,EAAY0B,EAAyB/F,GAC5C,IAAA,MAAWgG,KAAWD,EAEpB,IAAKE,EAASD,EAAS,CAAEE,KAAMlG,IAAc,OAAOgG,CAExD,CAEA,SAASC,EAASzF,GAAmB0F,KAAEA,IACrC,GAA0C,WAAtCC,iBAAiB3F,GAAM4F,WAAyB,OAAO,EAC3D,KAAO5F,GAAM,CAEX,QAAa,IAAT0F,GAAsB1F,IAAS0F,EAAM,OAAO,EAChD,GAAuC,SAAnCC,iBAAiB3F,GAAM6F,QAAoB,OAAO,EACtD7F,EAAOA,EAAK8F,aACd,CACA,OAAO,CACT,CAMA,SAASlF,EAAM4E,GAAkC3E,OAAEA,GAAS,GAAU,CAAA,GAEpE,GAAI2E,GAAWA,EAAQ5E,MAAO,CAC5B,MAAMsB,EAA2BhB,SAASC,cAE1CqE,EAAQ5E,MAAM,CAAEmF,eAAe,IAE3BP,IAAYtD,GAXpB,SAA2BsD,GACzB,OAAOA,aAAmBQ,kBAAoB,WAAYR,CAC5D,CASgDS,CAAkBT,IAAY3E,GACxE2E,EAAQ3E,QACZ,CACF,CA5FAjC,EAAWsH,YAhMc,aAmSzB,IAAMlE,EAEN,WAEE,IAAImE,EAAyB,GAE7B,MAAO,CACL,GAAAlE,CAAIhC,GAEF,MAAMmG,EAAmBD,EAAM,GAC3BlG,IAAemG,GACjBA,GAAkBjG,QAGpBgG,EAAQE,EAAYF,EAAOlG,GAC3BkG,EAAMG,QAAQrG,EAChB,EAEA,MAAAgD,CAAOhD,GACLkG,EAAQE,EAAYF,EAAOlG,GAC3BkG,EAAM,IAAI9F,QACZ,EAEJ,CAvByBkG,GAyBzB,SAASF,EAAeG,EAAY3D,GAClC,MAAM4D,EAAe,IAAID,GACnBE,EAAQD,EAAaE,QAAQ9D,GAInC,OAHc,IAAV6D,GACFD,EAAaG,OAAOF,EAAO,GAEtBD,CACT,CC/UA,IAAII,EAAQ,EAWZ,SAASC,IACDjI,EAAA0B,WAAU,KACd,MAAMwG,EAAa7F,SAAS8F,iBAAiB,4BAK7C,OAJA9F,SAASE,KAAK6F,sBAAsB,aAAcF,EAAW,IAAMG,KACnEhG,SAASE,KAAK6F,sBAAsB,YAAaF,EAAW,IAAMG,KAClEL,IAEO,KACS,IAAVA,GACF3F,SAAS8F,iBAAiB,4BAA4BG,SAASnH,GAASA,EAAKiD,WAE/E4D,GAAA,CACF,GACC,GACL,CAEA,SAASK,IACP,MAAM1B,EAAUtE,SAASkG,cAAc,QAOvC,OANA5B,EAAQ6B,aAAa,yBAA0B,IAC/C7B,EAAQnB,SAAW,EACnBmB,EAAQ8B,MAAMC,QAAU,OACxB/B,EAAQ8B,MAAME,QAAU,IACxBhC,EAAQ8B,MAAMG,SAAW,QACzBjC,EAAQ8B,MAAMI,cAAgB,OACvBlC,CACT,CCvCO,IAAImC,EAAqB,4BACrBC,EAAqB,0BCYzB,SAASC,EAAUvD,EAAKwD,GAO3B,MANmB,mBAARxD,EACPA,EAAIwD,GAECxD,IACLA,EAAIhE,QAAUwH,GAEXxD,CACX,CClBA,IAAIyD,EAA8C,oBAAXC,OAAyBnJ,EAAMoJ,gBAAkBpJ,EAAM0B,UAC1F2H,EAAgB,IAAIC,QAejB,SAASC,EAAaC,EAAMC,GAC/B,ICL2BC,EAAcC,EACrClE,EDIAmE,GCLuBF,EDKsB,KCLRC,EDKc,SAAUE,GAC7D,OAAOL,EAAKlB,SAAQ,SAAU7C,GAAO,OAAOuD,EAAUvD,EAAKoE,EAAW,GAC1E,GCNIpE,EAAM5E,GAAS,WAAc,MAAQ,CAErCoI,MAAOS,EAEPC,SAAUA,EAEVG,OAAQ,CACJ,WAAIrI,GACA,OAAOgE,EAAIwD,KACf,EACA,WAAIxH,CAAQwH,GACR,IAAIlE,EAAOU,EAAIwD,MACXlE,IAASkE,IACTxD,EAAIwD,MAAQA,EACZxD,EAAIkE,SAASV,EAAOlE,GAE5B,GAEJ,IAAG,IAEH4E,SAAWA,EACRlE,EAAIqE,QDMX,OAnBAZ,GAA0B,WACtB,IAAIa,EAAWV,EAAcW,IAAIJ,GACjC,GAAIG,EAAU,CACV,IAAIE,EAAa,IAAIC,IAAIH,GACrBI,EAAa,IAAID,IAAIV,GACrBY,EAAYR,EAAYnI,QAC5BwI,EAAW3B,SAAQ,SAAU7C,GACpB0E,EAAWE,IAAI5E,IAChBuD,EAAUvD,EAAK,KAEvB,IACA0E,EAAW7B,SAAQ,SAAU7C,GACpBwE,EAAWI,IAAI5E,IAChBuD,EAAUvD,EAAK2E,EAEvB,GACJ,CACAf,EAAciB,IAAIV,EAAaJ,KAChC,CAACA,IACGI,CACX,CE3CA,SAASW,EAAKC,GACV,OAAOA,CACX,CCDA,IAAIC,EAAU,SAAUC,GACpB,IAAIC,EAAUD,EAAGC,QAASC,EAAOC,EAAOH,EAAI,CAAC,YAC7C,IAAKC,EACD,MAAM,IAAIG,MAAM,sEAEpB,IAAIC,EAASJ,EAAQK,OACrB,IAAKD,EACD,MAAM,IAAID,MAAM,4BAEpB,OAAO9K,EAAMuI,cAAcwC,EAAQE,EAAS,CAAA,EAAIL,GACpD,EACAH,EAAQS,iBAAkB,ECZnB,IAAIC,EFuEJ,SAA6BC,QAChB,IAAZA,IAAsBA,EAAU,CAAC,GACrC,IAAIC,EAtER,SAA2BC,EAAUC,QACd,IAAfA,IAAyBA,EAAahB,GAC1C,IAAIiB,EAAS,GACTC,GAAW,EA0Df,MAzDa,CACTT,KAAM,WACF,GAAIS,EACA,MAAM,IAAIX,MAAM,oGAEpB,OAAIU,EAAO9I,OACA8I,EAAOA,EAAO9I,OAAS,GAE3B4I,CACX,EACAI,UAAW,SAAUC,GACjB,IAAI3H,EAAOuH,EAAWI,EAAMF,GAE5B,OADAD,EAAOhF,KAAKxC,GACL,WACHwH,EAASA,EAAOzH,QAAO,SAAU6H,GAAK,OAAOA,IAAM5H,CAAM,GAC7D,CACJ,EACA6H,iBAAkB,SAAUC,GAExB,IADAL,GAAW,EACJD,EAAO9I,QAAQ,CAClB,IAAIqJ,EAAMP,EACVA,EAAS,GACTO,EAAIzD,QAAQwD,EAChB,CACAN,EAAS,CACLhF,KAAM,SAAUoF,GAAK,OAAOE,EAAGF,EAAI,EACnC7H,OAAQ,WAAc,OAAOyH,CAAQ,EAE7C,EACAQ,aAAc,SAAUF,GACpBL,GAAW,EACX,IAAIQ,EAAe,GACnB,GAAIT,EAAO9I,OAAQ,CACf,IAAIqJ,EAAMP,EACVA,EAAS,GACTO,EAAIzD,QAAQwD,GACZG,EAAeT,CACnB,CACA,IAAIU,EAAe,WACf,IAAIH,EAAME,EACVA,EAAe,GACfF,EAAIzD,QAAQwD,EAChB,EACIK,EAAQ,WAAc,OAAOC,QAAQC,UAAUC,KAAKJ,EAAe,EACvEC,IACAX,EAAS,CACLhF,KAAM,SAAUoF,GACZK,EAAazF,KAAKoF,GAClBO,GACJ,EACApI,OAAQ,SAAUA,GAEd,OADAkI,EAAeA,EAAalI,OAAOA,GAC5ByH,CACX,EAER,EAGR,CAQiBe,CAAkB,MAE/B,OADAlB,EAAOD,QAAUH,EAAS,CAAEuB,OAAO,EAAMC,KAAK,GAASrB,GAChDC,CACX,CE5EuBqB,GCInBC,EAAU,WAEd,EAIIC,EAAe5M,EAAMC,YAAW,SAAUC,EAAO2M,GACjD,IAAIpH,EAAMzF,EAAMgB,OAAO,MACnB0J,EAAK1K,EAAMa,SAAS,CACpBiM,gBAAiBH,EACjBI,eAAgBJ,EAChBK,mBAAoBL,IACpBM,EAAYvC,EAAG,GAAIwC,EAAexC,EAAG,GACrCyC,EAAejN,EAAMiN,aAAcC,EAAWlN,EAAMkN,SAAUC,EAAYnN,EAAMmN,UAAWC,EAAkBpN,EAAMoN,gBAAiBC,EAAUrN,EAAMqN,QAASC,EAAStN,EAAMsN,OAAQ7C,EAAUzK,EAAMyK,QAAS8C,EAAcvN,EAAMuN,YAAaC,EAAQxN,EAAMwN,MAAOC,EAAiBzN,EAAMyN,eAAgBC,EAAK1N,EAAM2N,GAAIC,OAAmB,IAAPF,EAAgB,MAAQA,EAAIG,EAAU7N,EAAM6N,QAASnD,EAAOC,EAAO3K,EAAO,CAAC,eAAgB,WAAY,YAAa,kBAAmB,UAAW,SAAU,UAAW,cAAe,QAAS,iBAAkB,KAAM,YAC5hBuK,EAAUE,EACVqD,EAAezE,EAAa,CAAC9D,EAAKoH,IAClCoB,EAAiBhD,EAASA,EAAS,CAAA,EAAIL,GAAOqC,GAClD,OAAQjN,EAAMuI,cAAcvI,EAAMkO,SAAU,KACxCX,GAAYvN,EAAMuI,cAAckC,EAAS,CAAEE,QAASQ,EAAWmC,gBAAiBA,EAAiBE,OAAQA,EAAQC,YAAaA,EAAaC,MAAOA,EAAOR,aAAcA,EAAcS,iBAAkBA,EAAgBQ,QAAS1I,EAAKsI,QAASA,IAC9OZ,EAAgBnN,EAAMoO,aAAapO,EAAMqO,SAASC,KAAKlB,GAAWnC,EAASA,EAAS,GAAIgD,GAAiB,CAAExI,IAAKuI,KAAqBhO,EAAMuI,cAAcuF,EAAW7C,EAAS,GAAIgD,EAAgB,CAAEZ,UAAWA,EAAW5H,IAAKuI,IAAiBZ,GACvP,IACAR,EAAa2B,aAAe,CACxBhB,SAAS,EACTD,iBAAiB,EACjBI,OAAO,GAEXd,EAAa4B,WAAa,CACtBC,UAAW1F,EACX2F,UAAW5F,GChCf,SAAS6F,IACL,IAAKtM,SACD,OAAO,KACX,IAAIuM,EAAMvM,SAASkG,cAAc,SACjCqG,EAAI1I,KAAO,WACX,IAAI2I,ECFc,WAIlB,GAAiC,oBAAtBC,kBACP,OAAOA,iBAGf,CDNgBC,GAIZ,OAHIF,GACAD,EAAIpG,aAAa,QAASqG,GAEvBD,CACX,CAeO,IAAII,EAAsB,WAC7B,IAAIC,EAAU,EACVC,EAAa,KACjB,MAAO,CACH9L,IAAK,SAAUqF,GAlBvB,IAAsBmG,EAAKO,EAmBA,GAAXF,IACKC,EAAaP,OApBPQ,EAqBkB1G,GArBvBmG,EAqBWM,GAnBrBE,WAEJR,EAAIQ,WAAWC,QAAUF,EAGzBP,EAAIU,YAAYjN,SAASkN,eAAeJ,IAGhD,SAAwBP,IACTvM,SAASmN,MAAQnN,SAASoN,qBAAqB,QAAQ,IAC7DH,YAAYV,EACrB,CASoBc,CAAeR,IAGvBD,GACJ,EACA7K,OAAQ,eACJ6K,GACgBC,IACZA,EAAWS,YAAcT,EAAWS,WAAWC,YAAYV,GAC3DA,EAAa,KAErB,EAER,EExCWW,EAAiB,WACxB,ICIIC,EDJAC,GCIAD,EAAQd,IACL,SAAUgB,EAAQC,GACrBjQ,EAAM0B,WAAU,WAEZ,OADAoO,EAAM1M,IAAI4M,GACH,WACHF,EAAM1L,QACV,IACD,CAAC4L,GAAUC,GAClB,GDNA,OALY,SAAUvF,GAClB,IAAIsF,EAAStF,EAAGsF,OAAQE,EAAUxF,EAAGwF,QAErC,OADAH,EAASC,EAAQE,GACV,IACX,CAEJ,EEfWC,EAAU,CACjBC,KAAM,EACNC,IAAK,EACLC,MAAO,EACPC,IAAK,GAELC,EAAQ,SAAU5E,GAAK,OAAO6E,SAAS7E,GAAK,GAAI,KAAO,CAAG,EAQnD8E,EAAc,SAAU3C,GAE/B,QADgB,IAAZA,IAAsBA,EAAU,UACd,oBAAX5E,OACP,OAAOgH,EAEX,IAAIQ,EAZQ,SAAU5C,GACtB,IAAI6C,EAAKzH,OAAOrC,iBAAiBzE,SAASE,MACtC6N,EAAOQ,EAAe,YAAZ7C,EAAwB,cAAgB,cAClDsC,EAAMO,EAAe,YAAZ7C,EAAwB,aAAe,aAChDuC,EAAQM,EAAe,YAAZ7C,EAAwB,eAAiB,eACxD,MAAO,CAACyC,EAAMJ,GAAOI,EAAMH,GAAMG,EAAMF,GAC3C,CAMkBO,CAAU9C,GACpB+C,EAAgBzO,SAAS0O,gBAAgBC,YACzCC,EAAc9H,OAAO+H,WACzB,MAAO,CACHd,KAAMO,EAAQ,GACdN,IAAKM,EAAQ,GACbL,MAAOK,EAAQ,GACfJ,IAAKY,KAAKC,IAAI,EAAGH,EAAcH,EAAgBH,EAAQ,GAAKA,EAAQ,IAE5E,ECxBIU,EAAQxB,IACDyB,EAAgB,qBAIvBC,EAAY,SAAU7G,EAAI8G,EAAezD,EAAS0D,GAClD,IAAIrB,EAAO1F,EAAG0F,KAAMC,EAAM3F,EAAG2F,IAAKC,EAAQ5F,EAAG4F,MAAOC,EAAM7F,EAAG6F,IAE7D,YADgB,IAAZxC,IAAsBA,EAAU,UAC7B,QAAQ2D,ObVgB,0BaUc,4BAA4BA,OAAOD,EAAW,yBAAyBC,OAAOnB,EAAK,OAAOmB,OAAOD,EAAW,mBAAmBC,OAAOJ,EAAe,8BAA8BI,OAAOD,EAAW,8CAA8CC,OAAO,CACnSF,GAAiB,sBAAsBE,OAAOD,EAAW,KAC7C,WAAZ1D,GACI,uBAAuB2D,OAAOtB,EAAM,0BAA0BsB,OAAOrB,EAAK,4BAA4BqB,OAAOpB,EAAO,kEAAkEoB,OAAOnB,EAAK,OAAOmB,OAAOD,EAAW,WACnN,YAAZ1D,GAAyB,kBAAkB2D,OAAOnB,EAAK,OAAOmB,OAAOD,EAAW,MAE/E1N,OAAO4N,SACPC,KAAK,IAAK,kBAAkBF,OAAO5I,EAAoB,mBAAmB4I,OAAOnB,EAAK,OAAOmB,OAAOD,EAAW,mBAAmBC,OAAO3I,EAAoB,0BAA0B2I,OAAOnB,EAAK,OAAOmB,OAAOD,EAAW,mBAAmBC,OAAO5I,EAAoB,MAAM4I,OAAO5I,EAAoB,qBAAqB4I,OAAOD,EAAW,mBAAmBC,OAAO3I,EAAoB,MAAM2I,OAAO3I,EAAoB,4BAA4B2I,OAAOD,EAAW,uBAAuBC,OAAOJ,EAAe,aAAaI,ObZ9e,iCaY6gB,MAAMA,OAAOnB,EAAK,aACnkB,EACIsB,EAAuB,WACvB,IAAI5C,EAAUwB,SAASpO,SAASE,KAAKuP,aAAaR,IAAkB,IAAK,IACzE,OAAOS,SAAS9C,GAAWA,EAAU,CACzC,EAkBW+C,EAAkB,SAAUtH,GACnC,IAAIuH,EAAavH,EAAGuH,WAAYC,EAAcxH,EAAGwH,YAAatE,EAAKlD,EAAGqD,QAASA,OAAiB,IAAPH,EAAgB,SAAWA,EAjBpH5N,EAAM0B,WAAU,WAEZ,OADAW,SAASE,KAAKiG,aAAa8I,GAAgBO,IAAyB,GAAGM,YAChE,WACH,IAAIC,EAAaP,IAAyB,EACtCO,GAAc,EACd/P,SAASE,KAAK8P,gBAAgBf,GAG9BjP,SAASE,KAAKiG,aAAa8I,EAAec,EAAWD,WAE7D,CACJ,GAAG,IAaH,IAAI5B,EAAMvQ,EAAMsS,SAAQ,WAAc,OAAO5B,EAAY3C,KAAa,CAACA,IACvE,OAAO/N,EAAMuI,cAAc8I,EAAO,CAAErB,OAAQuB,EAAUhB,GAAM0B,EAAYlE,EAAUmE,EAA6B,GAAf,eACpG,ECpDIK,GAAmB,EACvB,GAAsB,oBAAXpJ,OACP,IACI,IAAIiC,EAAUoH,OAAOC,eAAe,CAAA,EAAI,UAAW,CAC/CzI,IAAK,WAED,OADAuI,GAAmB,GACZ,CACX,IAGJpJ,OAAOxG,iBAAiB,OAAQyI,EAASA,GAEzCjC,OAAOlG,oBAAoB,OAAQmI,EAASA,EAChD,CACA,MAAOsH,GACHH,GAAmB,CACvB,CAEG,IAAII,IAAaJ,GAAmB,CAAEK,SAAS,GCdlDC,EAAuB,SAAU1R,EAAM2R,GACvC,KAAM3R,aAAgB4R,SAClB,OAAO,EAEX,IAAI/C,EAAS7G,OAAOrC,iBAAiB3F,GACrC,MAEqB,WAArB6O,EAAO8C,MAED9C,EAAOgD,YAAchD,EAAOiD,YAbX,SAAU9R,GAEjC,MAAwB,aAAjBA,EAAK8C,OAChB,CAUoDiP,CAAqB/R,IAA8B,YAArB6O,EAAO8C,GACzF,EAGWK,EAA0B,SAAUC,EAAMjS,GACjD,IAAIkS,EAAgBlS,EAAKkS,cACrB5R,EAAUN,EACd,EAAG,CAMC,GAJ0B,oBAAfmS,YAA8B7R,aAAmB6R,aACxD7R,EAAUA,EAAQ8R,MAEHC,EAAuBJ,EAAM3R,GAC9B,CACd,IAAIiJ,EAAK+I,EAAmBL,EAAM3R,GAClC,GAD2DiJ,EAAG,GAAmBA,EAAG,GAEhF,OAAO,CAEf,CACAjJ,EAAUA,EAAQkO,UACtB,OAASlO,GAAWA,IAAY4R,EAAc9Q,MAC9C,OAAO,CACX,EAiBIiR,EAAyB,SAAUJ,EAAMjS,GACzC,MAAgB,MAATiS,EAtCmB,SAAUjS,GAAQ,OAAO0R,EAAqB1R,EAAM,YAAc,CAsCtEuS,CAAwBvS,GArCpB,SAAUA,GAAQ,OAAO0R,EAAqB1R,EAAM,YAAc,CAqCtCwS,CAAwBxS,EAClF,EACIsS,EAAqB,SAAUL,EAAMjS,GACrC,MAAgB,MAATiS,EAlBA,EAFyB1I,EAoBUvJ,GAnBvByS,UAA0BlJ,EAAGmJ,aAA6BnJ,EAAGoJ,cAO1D,SAAUpJ,GAEhC,MAAO,CADUA,EAAGqJ,WAA0BrJ,EAAGsJ,YAA2BtJ,EAAGsG,YAMnF,CAKsDiD,CAAoB9S,GApBhD,IAAUuJ,CAqBpC,ECnDWwJ,EAAa,SAAUtS,GAC9B,MAAO,mBAAoBA,EAAQ,CAACA,EAAMuS,eAAe,GAAGC,QAASxS,EAAMuS,eAAe,GAAGE,SAAW,CAAC,EAAG,EAChH,EACWC,EAAa,SAAU1S,GAAS,MAAO,CAACA,EAAM2S,OAAQ3S,EAAM4S,OAAS,EAC5EC,EAAa,SAAUhP,GACvB,OAAOA,GAAO,YAAaA,EAAMA,EAAIhE,QAAUgE,CACnD,EAEIiP,GAAgB,SAAUC,GAAM,MAAO,4BAA4BjD,OAAOiD,EAAI,qDAAqDjD,OAAOiD,EAAI,4BAA8B,EAC5KC,GAAY,EACZC,GAAY,GAkIhB,SAASC,GAAyB3T,GAE9B,IADA,IAAI4T,EAAe,KACH,OAAT5T,GACCA,aAAgBmS,aAChByB,EAAe5T,EAAKoS,KACpBpS,EAAOA,EAAKoS,MAEhBpS,EAAOA,EAAKwO,WAEhB,OAAOoF,CACX,CCzJA,IZWsCC,GYXtCvK,IZWsCuK,GWG/B,SAA6B9U,GAChC,IAAI+U,EAAqBjV,EAAMgB,OAAO,IAClCkU,EAAgBlV,EAAMgB,OAAO,CAAC,EAAG,IACjCmU,EAAanV,EAAMgB,SACnB2T,EAAK3U,EAAMa,SAAS+T,MAAa,GACjCvD,EAAQrR,EAAMa,SAASgP,GAAgB,GACvCuF,EAAYpV,EAAMgB,OAAOd,GAC7BF,EAAM0B,WAAU,WACZ0T,EAAU3T,QAAUvB,IACrB,CAACA,IACJF,EAAM0B,WAAU,WACZ,GAAIxB,EAAMwN,MAAO,CACbrL,SAASE,KAAK8S,UAAUjS,IAAI,uBAAuBsO,OAAOiD,IAC1D,IAAIW,EAAUC,EAAc,CAACrV,EAAMiO,QAAQ1M,UAAWvB,EAAMsN,QAAU,IAAIgI,IAAIf,IAAa,GAAM1Q,OAAO4N,SAExG,OADA2D,EAAQhN,SAAQ,SAAUmN,GAAM,OAAOA,EAAGJ,UAAUjS,IAAI,uBAAuBsO,OAAOiD,GAAM,IACrF,WACHtS,SAASE,KAAK8S,UAAUjR,OAAO,uBAAuBsN,OAAOiD,IAC7DW,EAAQhN,SAAQ,SAAUmN,GAAM,OAAOA,EAAGJ,UAAUjR,OAAO,uBAAuBsN,OAAOiD,GAAM,GACnG,CACJ,IAED,CAACzU,EAAMwN,MAAOxN,EAAMiO,QAAQ1M,QAASvB,EAAMsN,SAC9C,IAAIkI,EAAoB1V,EAAMsE,aAAY,SAAU1C,EAAO+T,GACvD,GAAI,YAAc/T,GAAkC,IAAzBA,EAAMgU,QAAQlT,QAAiC,UAAfd,EAAMsE,MAAoBtE,EAAM8C,QACvF,OAAQ0Q,EAAU3T,QAAQkM,eAE9B,IAIIkI,EAJAC,EAAQ5B,EAAWtS,GACnBmU,EAAab,EAAczT,QAC3B8S,EAAS,WAAY3S,EAAQA,EAAM2S,OAASwB,EAAW,GAAKD,EAAM,GAClEtB,EAAS,WAAY5S,EAAQA,EAAM4S,OAASuB,EAAW,GAAKD,EAAM,GAElEjU,EAASD,EAAMC,OACfmU,EAAgB7E,KAAK8E,IAAI1B,GAAUpD,KAAK8E,IAAIzB,GAAU,IAAM,IAEhE,GAAI,YAAa5S,GAA2B,MAAlBoU,GAAyC,UAAhBnU,EAAOqE,KACtD,OAAO,EAEX,IAAIgQ,EAA+B/C,EAAwB6C,EAAenU,GAC1E,IAAKqU,EACD,OAAO,EAUX,GARIA,EACAL,EAAcG,GAGdH,EAAgC,MAAlBG,EAAwB,IAAM,IAC5CE,EAA+B/C,EAAwB6C,EAAenU,KAGrEqU,EACD,OAAO,EAKX,IAHKf,EAAW1T,SAAW,mBAAoBG,IAAU2S,GAAUC,KAC/DW,EAAW1T,QAAUoU,IAEpBA,EACD,OAAO,EAEX,IAAIM,EAAgBhB,EAAW1T,SAAWoU,EAC1C,ODVkB,SAAUzC,EAAMgD,EAAWxU,EAAOyU,GACxD,IAAIC,EATiB,SAAUlD,EAAMmD,GAMrC,MAAgB,MAATnD,GAA8B,QAAdmD,GAA2B,EAAA,CACtD,CAE0BC,CAAmBpD,EAAMjK,OAAOrC,iBAAiBsP,GAAWG,WAC9EE,EAAQH,EAAkBD,EAE1BxU,EAASD,EAAMC,OACf6U,EAAeN,EAAUtU,SAASD,GAClC8U,GAAqB,EACrBC,EAAkBH,EAAQ,EAC1BI,EAAkB,EAClBC,EAAqB,EACzB,EAAG,CACC,IAAIpM,EAAK+I,EAAmBL,EAAMvR,GAAS+G,EAAW8B,EAAG,GACrDqM,EADoErM,EAAG,GAAeA,EAAG,GACnD4L,EAAkB1N,GACxDA,GAAYmO,IACRvD,EAAuBJ,EAAMvR,KAC7BgV,GAAmBE,EACnBD,GAAsBlO,GAI1B/G,EADAA,aAAkByR,WACTzR,EAAO0R,KAGP1R,EAAO8N,UAExB,QAEE+G,GAAgB7U,IAAWQ,SAASE,MAEjCmU,IAAiBN,EAAUtU,SAASD,IAAWuU,IAAcvU,IAUlE,OARI+U,GACkBzF,KAAK8E,IAAIY,GAAmB,IAGxCD,GACYzF,KAAK8E,IAAIa,GAAsB,KAHjDH,GAAqB,GAMlBA,CACX,CC9BeK,CAAab,EAAeR,EAAQ/T,EAAyB,MAAlBuU,EAAwB5B,EAASC,EACvF,GAAG,IACCyC,EAAgBjX,EAAMsE,aAAY,SAAU4S,GAC5C,IAAItV,EAAQsV,EACZ,GAAKrC,GAAUnS,QAAUmS,GAAUA,GAAUnS,OAAS,KAAO2O,EAA7D,CAIA,IAAIoF,EAAQ,WAAY7U,EAAQ0S,EAAW1S,GAASsS,EAAWtS,GAC3DuV,EAAclC,EAAmBxT,QAAQsC,QAAO,SAAUqT,GAAK,OAAOA,EAAEC,OAASzV,EAAMsE,OAASkR,EAAEvV,SAAWD,EAAMC,QAAUD,EAAMC,SAAWuV,EAAErC,gBAxE/HnJ,EAwE6JwL,EAAEX,MAxE5Ja,EAwEmKb,EAxEvJ7K,EAAE,KAAO0L,EAAE,IAAM1L,EAAE,KAAO0L,EAAE,IAArD,IAAU1L,EAAG0L,CAwE2K,IAAG,GAEtM,GAAIH,GAAeA,EAAYI,OACvB3V,EAAM9B,YACN8B,EAAMwD,sBAKd,IAAK+R,EAAa,CACd,IAAIK,GAAcpC,EAAU3T,QAAQ+L,QAAU,IACzCgI,IAAIf,GACJ1Q,OAAO4N,SACP5N,QAAO,SAAU5C,GAAQ,OAAOA,EAAKW,SAASF,EAAMC,OAAS,KACjD2V,EAAW9U,OAAS,EAAIgT,EAAkB9T,EAAO4V,EAAW,KAAOpC,EAAU3T,QAAQgM,cAE9F7L,EAAM9B,YACN8B,EAAMwD,gBAGlB,CAtBA,CAuBJ,GAAG,IACCqS,EAAezX,EAAMsE,aAAY,SAAU+S,EAAMZ,EAAO5U,EAAQ0V,GAChE,IAAI3V,EAAQ,CAAEyV,KAAMA,EAAMZ,MAAOA,EAAO5U,OAAQA,EAAQ0V,OAAQA,EAAQxC,aAAcD,GAAyBjT,IAC/GoT,EAAmBxT,QAAQ+E,KAAK5E,GAChCsC,YAAW,WACP+Q,EAAmBxT,QAAUwT,EAAmBxT,QAAQsC,QAAO,SAAUqT,GAAK,OAAOA,IAAMxV,CAAO,GACnG,GAAA,EACP,GAAG,IACC8V,EAAmB1X,EAAMsE,aAAY,SAAU1C,GAC/CsT,EAAczT,QAAUyS,EAAWtS,GACnCuT,EAAW1T,aAAUkW,CACzB,GAAG,IACCC,EAAc5X,EAAMsE,aAAY,SAAU1C,GAC1C6V,EAAa7V,EAAMsE,KAAMoO,EAAW1S,GAAQA,EAAMC,OAAQ6T,EAAkB9T,EAAO1B,EAAMiO,QAAQ1M,SACrG,GAAG,IACCoW,EAAkB7X,EAAMsE,aAAY,SAAU1C,GAC9C6V,EAAa7V,EAAMsE,KAAMgO,EAAWtS,GAAQA,EAAMC,OAAQ6T,EAAkB9T,EAAO1B,EAAMiO,QAAQ1M,SACrG,GAAG,IACHzB,EAAM0B,WAAU,WAUZ,OATAmT,GAAUrO,KAAK6K,GACfnR,EAAMgN,aAAa,CACfJ,gBAAiB8K,EACjB7K,eAAgB6K,EAChB5K,mBAAoB6K,IAExBxV,SAASM,iBAAiB,QAASsU,EAAetE,GAClDtQ,SAASM,iBAAiB,YAAasU,EAAetE,GACtDtQ,SAASM,iBAAiB,aAAc+U,EAAkB/E,GACnD,WACHkC,GAAYA,GAAU9Q,QAAO,SAAU+T,GAAQ,OAAOA,IAASzG,CAAO,IACtEhP,SAASY,oBAAoB,QAASgU,EAAetE,GACrDtQ,SAASY,oBAAoB,YAAagU,EAAetE,GACzDtQ,SAASY,oBAAoB,aAAcyU,EAAkB/E,EACjE,CACJ,GAAG,IACH,IAAIrF,EAAkBpN,EAAMoN,gBAAiBI,EAAQxN,EAAMwN,MAC3D,OAAQ1N,EAAMuI,cAAcvI,EAAMkO,SAAU,KACxCR,EAAQ1N,EAAMuI,cAAc8I,EAAO,CAAErB,OAAQ0E,GAAcC,KAAS,KACpErH,EAAkBtN,EAAMuI,cAAcyJ,EAAiB,CAAEjE,QAAS7N,EAAM6N,UAAa,KAC7F,EC9I6B5C,EZYlBO,UAAUsJ,IACVvK,GaZPsN,GAAoB/X,EAAMC,YAAW,SAAUC,EAAOuF,GAAO,OAAQzF,EAAMuI,cAAcqE,EAAc3B,EAAS,CAAA,EAAI/K,EAAO,CAAEuF,IAAKA,EAAKkF,QAASF,KAAc,IAClKsN,GAAkBvJ,WAAa5B,EAAa4B,WCL5C,IAOIwJ,GAAa,IAAI1O,QACjB2O,GAAoB,IAAI3O,QACxB4O,GAAY,CAAC,EACbC,GAAY,EACZC,GAAa,SAAUjX,GACvB,OAAOA,IAASA,EAAKoS,MAAQ6E,GAAWjX,EAAKwO,YACjD,EAwBI0I,GAAyB,SAAUC,EAAgB3I,EAAY4I,EAAYC,GAC3E,IAAIC,EAxBa,SAAU9C,EAAQ8C,GACnC,OAAOA,EACFjD,KAAI,SAAU3T,GACf,GAAI8T,EAAO7T,SAASD,GAChB,OAAOA,EAEX,IAAI6W,EAAkBN,GAAWvW,GACjC,OAAI6W,GAAmB/C,EAAO7T,SAAS4W,GAC5BA,GAEXC,QAAQC,MAAM,cAAe/W,EAAQ,0BAA2B8T,EAAQ,mBACjE,SAEN5R,QAAO,SAAU6H,GAAK,OAAO+F,QAAQ/F,EAAI,GAClD,CAUkBiN,CAAelJ,EAAYmJ,MAAMC,QAAQT,GAAkBA,EAAiB,CAACA,IACtFJ,GAAUK,KACXL,GAAUK,GAAc,IAAIjP,SAEhC,IAAI0P,EAAgBd,GAAUK,GAC1BU,EAAc,GACdC,EAAiB,IAAIhP,IACrBiP,EAAiB,IAAIjP,IAAIuO,GACzBW,EAAO,SAAU3D,GACZA,IAAMyD,EAAe7O,IAAIoL,KAG9ByD,EAAe9V,IAAIqS,GACnB2D,EAAK3D,EAAG9F,YACZ,EACA8I,EAAQnQ,QAAQ8Q,GAChB,IAAIC,EAAO,SAAU1D,GACZA,IAAUwD,EAAe9O,IAAIsL,IAGlCmD,MAAMQ,UAAUhR,QAAQiR,KAAK5D,EAAOvI,UAAU,SAAUjM,GACpD,GAAI+X,EAAe7O,IAAIlJ,GACnBkY,EAAKlY,QAGL,IACI,IAAIqY,EAAOrY,EAAK2Q,aAAa0G,GACzBiB,EAAyB,OAATD,GAA0B,UAATA,EACjCE,GAAgB1B,GAAWhO,IAAI7I,IAAS,GAAK,EAC7CwY,GAAeX,EAAchP,IAAI7I,IAAS,GAAK,EACnD6W,GAAW1N,IAAInJ,EAAMuY,GACrBV,EAAc1O,IAAInJ,EAAMwY,GACxBV,EAAYzS,KAAKrF,GACI,IAAjBuY,GAAsBD,GACtBxB,GAAkB3N,IAAInJ,GAAM,GAEZ,IAAhBwY,GACAxY,EAAKqH,aAAa+P,EAAY,QAE7BkB,GACDtY,EAAKqH,aAAagQ,EAAkB,OAE5C,CACA,MAAOpB,GACHuB,QAAQC,MAAM,kCAAmCzX,EAAMiW,EAC3D,CAER,GACJ,EAIA,OAHAiC,EAAK1J,GACLuJ,EAAeU,QACfzB,KACO,WACHc,EAAY3Q,SAAQ,SAAUnH,GAC1B,IAAIuY,EAAe1B,GAAWhO,IAAI7I,GAAQ,EACtCwY,EAAcX,EAAchP,IAAI7I,GAAQ,EAC5C6W,GAAW1N,IAAInJ,EAAMuY,GACrBV,EAAc1O,IAAInJ,EAAMwY,GACnBD,IACIzB,GAAkB5N,IAAIlJ,IACvBA,EAAKkR,gBAAgBmG,GAEzBP,GAAkB4B,OAAO1Y,IAExBwY,GACDxY,EAAKkR,gBAAgBkG,EAE7B,MACAJ,KAGIH,GAAa,IAAI1O,QACjB0O,GAAa,IAAI1O,QACjB2O,GAAoB,IAAI3O,QACxB4O,GAAY,CAAC,EAErB,CACJ,EAQW4B,GAAa,SAAUxB,EAAgB3I,EAAY4I,QACvC,IAAfA,IAAyBA,EAAa,oBAC1C,IAAIE,EAAUK,MAAMiB,KAAKjB,MAAMC,QAAQT,GAAkBA,EAAiB,CAACA,IACvE0B,EA9He,SAAU1B,GAC7B,MAAwB,oBAAbjW,SACA,MAEQyW,MAAMC,QAAQT,GAAkBA,EAAe,GAAKA,GACnDjF,cAAc9Q,IACtC,CAwHyC0X,CAAiB3B,GACtD,OAAK0B,GAILvB,EAAQjS,KAAK0T,MAAMzB,EAASK,MAAMiB,KAAKC,EAAiB7R,iBAAiB,iBAClEkQ,GAAuBI,EAASuB,EAAkBzB,EAAY,gBAJ1D,WAAc,OAAO,IAAM,CAK1C","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]}
|
@@ -1,2 +0,0 @@
|
|
1
|
-
import*as e from"react";import{c as o,P as t,u as n}from"./index-CX5r7IKM.mjs";import{c as r,a}from"./index-CCYyT_rk.mjs";import{u as i}from"./index-Db2NO0t8.mjs";import{u as s}from"./index-D-s-TbR3.mjs";import{P as c,D as l}from"./index-CXrD_SvM.mjs";import{h as d,R as u,u as p,F as f}from"./index-ChLuxn93.mjs";import{P as g}from"./index-DxtdpBCb.mjs";import{Slot as m}from"@radix-ui/react-slot";import{jsx as D,jsxs as h,Fragment as R}from"react/jsx-runtime";var _="Dialog",[v,y]=r(_),[b,C]=v(_),I=o=>{const{__scopeDialog:t,children:n,open:r,defaultOpen:a,onOpenChange:c,modal:l=!0}=o,d=e.useRef(null),u=e.useRef(null),[p=!1,f]=s({prop:r,defaultProp:a,onChange:c});return D(b,{scope:t,triggerRef:d,contentRef:u,contentId:i(),titleId:i(),descriptionId:i(),open:p,onOpenChange:f,onOpenToggle:e.useCallback((()=>f((e=>!e))),[f]),modal:l,children:n})};I.displayName=_;var w="DialogTrigger",O=e.forwardRef(((e,t)=>{const{__scopeDialog:r,...a}=e,i=C(w,r),s=n(t,i.triggerRef);return D(g.button,{type:"button","aria-haspopup":"dialog","aria-expanded":i.open,"aria-controls":i.contentId,"data-state":V(i.open),...a,ref:s,onClick:o(e.onClick,i.onOpenToggle)})}));O.displayName=w;var F="DialogPortal",[N,P]=v(F,{forceMount:void 0}),x=o=>{const{__scopeDialog:n,forceMount:r,children:a,container:i}=o,s=C(F,n);return D(N,{scope:n,forceMount:r,children:e.Children.map(a,(e=>D(t,{present:r||s.open,children:D(c,{asChild:!0,container:i,children:e})})))})};x.displayName=F;var E="DialogOverlay",A=e.forwardRef(((e,o)=>{const n=P(E,e.__scopeDialog),{forceMount:r=n.forceMount,...a}=e,i=C(E,e.__scopeDialog);return i.modal?D(t,{present:r||i.open,children:D(M,{...a,ref:o})}):null}));A.displayName=E;var M=e.forwardRef(((e,o)=>{const{__scopeDialog:t,...n}=e,r=C(E,t);return D(u,{as:m,allowPinchZoom:!0,shards:[r.contentRef],children:D(g.div,{"data-state":V(r.open),...n,ref:o,style:{pointerEvents:"auto",...n.style}})})})),j="DialogContent",T=e.forwardRef(((e,o)=>{const n=P(j,e.__scopeDialog),{forceMount:r=n.forceMount,...a}=e,i=C(j,e.__scopeDialog);return D(t,{present:r||i.open,children:i.modal?D(k,{...a,ref:o}):D($,{...a,ref:o})})}));T.displayName=j;var k=e.forwardRef(((t,r)=>{const a=C(j,t.__scopeDialog),i=e.useRef(null),s=n(r,a.contentRef,i);return e.useEffect((()=>{const e=i.current;if(e)return d(e)}),[]),D(W,{...t,ref:s,trapFocus:a.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:o(t.onCloseAutoFocus,(e=>{e.preventDefault(),a.triggerRef.current?.focus()})),onPointerDownOutside:o(t.onPointerDownOutside,(e=>{const o=e.detail.originalEvent,t=0===o.button&&!0===o.ctrlKey;(2===o.button||t)&&e.preventDefault()})),onFocusOutside:o(t.onFocusOutside,(e=>e.preventDefault()))})})),$=e.forwardRef(((o,t)=>{const n=C(j,o.__scopeDialog),r=e.useRef(!1),a=e.useRef(!1);return D(W,{...o,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:e=>{o.onCloseAutoFocus?.(e),e.defaultPrevented||(r.current||n.triggerRef.current?.focus(),e.preventDefault()),r.current=!1,a.current=!1},onInteractOutside:e=>{o.onInteractOutside?.(e),e.defaultPrevented||(r.current=!0,"pointerdown"===e.detail.originalEvent.type&&(a.current=!0));const t=e.target,i=n.triggerRef.current?.contains(t);i&&e.preventDefault(),"focusin"===e.detail.originalEvent.type&&a.current&&e.preventDefault()}})})),W=e.forwardRef(((o,t)=>{const{__scopeDialog:r,trapFocus:a,onOpenAutoFocus:i,onCloseAutoFocus:s,...c}=o,d=C(j,r),u=e.useRef(null),g=n(t,u);return p(),h(R,{children:[D(f,{asChild:!0,loop:!0,trapped:a,onMountAutoFocus:i,onUnmountAutoFocus:s,children:D(l,{role:"dialog",id:d.contentId,"aria-describedby":d.descriptionId,"aria-labelledby":d.titleId,"data-state":V(d.open),...c,ref:g,onDismiss:()=>d.onOpenChange(!1)})}),h(R,{children:[D(J,{titleId:d.titleId}),D(L,{contentRef:u,descriptionId:d.descriptionId})]})]})})),B="DialogTitle",S=e.forwardRef(((e,o)=>{const{__scopeDialog:t,...n}=e,r=C(B,t);return D(g.h2,{id:r.titleId,...n,ref:o})}));S.displayName=B;var q="DialogDescription",H=e.forwardRef(((e,o)=>{const{__scopeDialog:t,...n}=e,r=C(q,t);return D(g.p,{id:r.descriptionId,...n,ref:o})}));H.displayName=q;var K="DialogClose",U=e.forwardRef(((e,t)=>{const{__scopeDialog:n,...r}=e,a=C(K,n);return D(g.button,{type:"button",...r,ref:t,onClick:o(e.onClick,(()=>a.onOpenChange(!1)))})}));function V(e){return e?"open":"closed"}U.displayName=K;var Z="DialogTitleWarning",[z,G]=a(Z,{contentName:j,titleName:B,docsSlug:"dialog"}),J=({titleId:o})=>{const t=G(Z),n=`\`${t.contentName}\` requires a \`${t.titleName}\` for the component to be accessible for screen reader users.\n\nIf you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return e.useEffect((()=>{if(o){document.getElementById(o)||console.error(n)}}),[n,o]),null},L=({contentRef:o,descriptionId:t})=>{const n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${G("DialogDescriptionWarning").contentName}}.`;return e.useEffect((()=>{const e=o.current?.getAttribute("aria-describedby");if(t&&e){document.getElementById(t)||console.warn(n)}}),[n,o,t]),null},Q=I,X=O,Y=x,ee=A,oe=T,te=S,ne=H,re=U;export{re as C,ne as D,ee as O,Y as P,Q as R,te as T,oe as a,X as b};
|
2
|
-
//# sourceMappingURL=index-CluuXDB_.mjs.map
|
@@ -1,2 +0,0 @@
|
|
1
|
-
import*as e from"react";import{u as o,c as t,P as r}from"./index-CX5r7IKM.mjs";import{c as n}from"./index-CCYyT_rk.mjs";import{P as a,D as s}from"./index-CXrD_SvM.mjs";import{h as i,R as d,u as c,F as p}from"./index-ChLuxn93.mjs";import{u}from"./index-Db2NO0t8.mjs";import{c as l,R as f,A as m,C as v,a as h}from"./index-DOx7g1Qo.mjs";import{P as g}from"./index-DxtdpBCb.mjs";import{Slot as P}from"@radix-ui/react-slot";import{u as C}from"./index-D-s-TbR3.mjs";import{jsx as O}from"react/jsx-runtime";import{c as w}from"./utils-jIFl11as.mjs";var x="Popover",[b,R]=n(x,[l]),_=l(),[A,F]=b(x),y=o=>{const{__scopePopover:t,children:r,open:n,defaultOpen:a,onOpenChange:s,modal:i=!1}=o,d=_(t),c=e.useRef(null),[p,l]=e.useState(!1),[m=!1,v]=C({prop:n,defaultProp:a,onChange:s});return O(f,{...d,children:O(A,{scope:t,contentId:u(),triggerRef:c,open:m,onOpenChange:v,onOpenToggle:e.useCallback((()=>v((e=>!e))),[v]),hasCustomAnchor:p,onCustomAnchorAdd:e.useCallback((()=>l(!0)),[]),onCustomAnchorRemove:e.useCallback((()=>l(!1)),[]),modal:i,children:r})})};y.displayName=x;var E="PopoverAnchor",D=e.forwardRef(((o,t)=>{const{__scopePopover:r,...n}=o,a=F(E,r),s=_(r),{onCustomAnchorAdd:i,onCustomAnchorRemove:d}=a;return e.useEffect((()=>(i(),()=>d())),[i,d]),O(m,{...s,...n,ref:t})}));D.displayName=E;var j="PopoverTrigger",k=e.forwardRef(((e,r)=>{const{__scopePopover:n,...a}=e,s=F(j,n),i=_(n),d=o(r,s.triggerRef),c=O(g.button,{type:"button","aria-haspopup":"dialog","aria-expanded":s.open,"aria-controls":s.contentId,"data-state":B(s.open),...a,ref:d,onClick:t(e.onClick,s.onOpenToggle)});return s.hasCustomAnchor?c:O(m,{asChild:!0,...i,children:c})}));k.displayName=j;var N="PopoverPortal",[I,M]=b(N,{forceMount:void 0}),z=e=>{const{__scopePopover:o,forceMount:t,children:n,container:s}=e,i=F(N,o);return O(I,{scope:o,forceMount:t,children:O(r,{present:t||i.open,children:O(a,{asChild:!0,container:s,children:n})})})};z.displayName=N;var K="PopoverContent",T=e.forwardRef(((e,o)=>{const t=M(K,e.__scopePopover),{forceMount:n=t.forceMount,...a}=e,s=F(K,e.__scopePopover);return O(r,{present:n||s.open,children:s.modal?O(q,{...a,ref:o}):O(S,{...a,ref:o})})}));T.displayName=K;var q=e.forwardRef(((r,n)=>{const a=F(K,r.__scopePopover),s=e.useRef(null),c=o(n,s),p=e.useRef(!1);return e.useEffect((()=>{const e=s.current;if(e)return i(e)}),[]),O(d,{as:P,allowPinchZoom:!0,children:O(U,{...r,ref:c,trapFocus:a.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:t(r.onCloseAutoFocus,(e=>{e.preventDefault(),p.current||a.triggerRef.current?.focus()})),onPointerDownOutside:t(r.onPointerDownOutside,(e=>{const o=e.detail.originalEvent,t=0===o.button&&!0===o.ctrlKey,r=2===o.button||t;p.current=r}),{checkForDefaultPrevented:!1}),onFocusOutside:t(r.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1})})})})),S=e.forwardRef(((o,t)=>{const r=F(K,o.__scopePopover),n=e.useRef(!1),a=e.useRef(!1);return O(U,{...o,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:e=>{o.onCloseAutoFocus?.(e),e.defaultPrevented||(n.current||r.triggerRef.current?.focus(),e.preventDefault()),n.current=!1,a.current=!1},onInteractOutside:e=>{o.onInteractOutside?.(e),e.defaultPrevented||(n.current=!0,"pointerdown"===e.detail.originalEvent.type&&(a.current=!0));const t=e.target,s=r.triggerRef.current?.contains(t);s&&e.preventDefault(),"focusin"===e.detail.originalEvent.type&&a.current&&e.preventDefault()}})})),U=e.forwardRef(((e,o)=>{const{__scopePopover:t,trapFocus:r,onOpenAutoFocus:n,onCloseAutoFocus:a,disableOutsidePointerEvents:i,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:l,onInteractOutside:f,...m}=e,h=F(K,t),g=_(t);return c(),O(p,{asChild:!0,loop:!0,trapped:r,onMountAutoFocus:n,onUnmountAutoFocus:a,children:O(s,{asChild:!0,disableOutsidePointerEvents:i,onInteractOutside:f,onEscapeKeyDown:d,onPointerDownOutside:u,onFocusOutside:l,onDismiss:()=>h.onOpenChange(!1),children:O(v,{"data-state":B(h.open),role:"dialog",id:h.contentId,...g,...m,ref:o,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})})),Z="PopoverClose";e.forwardRef(((e,o)=>{const{__scopePopover:r,...n}=e,a=F(Z,r);return O(g.button,{type:"button",...n,ref:o,onClick:t(e.onClick,(()=>a.onOpenChange(!1)))})})).displayName=Z;function B(e){return e?"open":"closed"}e.forwardRef(((e,o)=>{const{__scopePopover:t,...r}=e,n=_(t);return O(h,{...n,...r,ref:o})})).displayName="PopoverArrow";var G=y,H=D,J=k,L=z,Q=T;function V({...o}){return e.createElement(G,{"data-slot":"popover",...o})}function W({...o}){return e.createElement(J,{"data-slot":"popover-trigger",...o})}function X({className:o,align:t="center",sideOffset:r=4,...n}){return e.createElement(L,null,e.createElement(Q,{"data-slot":"popover-content",align:t,sideOffset:r,className:w("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-72 cursor-pointer rounded-md border p-4 shadow-md outline-none",o),...n}))}function Y({...o}){return e.createElement(H,{"data-slot":"popover-anchor",...o})}export{V as P,W as a,X as b,Y as c};
|
2
|
-
//# sourceMappingURL=popover-DDPhp0Sa.mjs.map
|