{"ast":null,"code":"import $eRSIW$babelruntimehelpersesmextends from \"@babel/runtime/helpers/esm/extends\";\nimport { useRef as $eRSIW$useRef, useCallback as $eRSIW$useCallback, useEffect as $eRSIW$useEffect, createElement as $eRSIW$createElement, forwardRef as $eRSIW$forwardRef, useState as $eRSIW$useState } from \"react\";\nimport { composeEventHandlers as $eRSIW$composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope as $eRSIW$createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState as $eRSIW$useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useComposedRefs as $eRSIW$useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createPopperScope as $eRSIW$createPopperScope, Root as $eRSIW$Root, Anchor as $eRSIW$Anchor, Content as $eRSIW$Content, Arrow as $eRSIW$Arrow } from \"@radix-ui/react-popper\";\nimport { Portal as $eRSIW$Portal } from \"@radix-ui/react-portal\";\nimport { Presence as $eRSIW$Presence } from \"@radix-ui/react-presence\";\nimport { Primitive as $eRSIW$Primitive } from \"@radix-ui/react-primitive\";\nimport { DismissableLayer as $eRSIW$DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\n\n/* -------------------------------------------------------------------------------------------------\n * HoverCard\n * -----------------------------------------------------------------------------------------------*/\nlet $cef8881cdc69808e$var$originalBodyUserSelect;\nconst $cef8881cdc69808e$var$HOVERCARD_NAME = 'HoverCard';\nconst [$cef8881cdc69808e$var$createHoverCardContext, $cef8881cdc69808e$export$47b6998a836b7260] = $eRSIW$createContextScope($cef8881cdc69808e$var$HOVERCARD_NAME, [$eRSIW$createPopperScope]);\nconst $cef8881cdc69808e$var$usePopperScope = $eRSIW$createPopperScope();\nconst [$cef8881cdc69808e$var$HoverCardProvider, $cef8881cdc69808e$var$useHoverCardContext] = $cef8881cdc69808e$var$createHoverCardContext($cef8881cdc69808e$var$HOVERCARD_NAME);\nconst $cef8881cdc69808e$export$57a077cc9fbe653e = props => {\n  const {\n    __scopeHoverCard: __scopeHoverCard,\n    children: children,\n    open: openProp,\n    defaultOpen: defaultOpen,\n    onOpenChange: onOpenChange,\n    openDelay = 700,\n    closeDelay = 300\n  } = props;\n  const popperScope = $cef8881cdc69808e$var$usePopperScope(__scopeHoverCard);\n  const openTimerRef = $eRSIW$useRef(0);\n  const closeTimerRef = $eRSIW$useRef(0);\n  const hasSelectionRef = $eRSIW$useRef(false);\n  const isPointerDownOnContentRef = $eRSIW$useRef(false);\n  const [open = false, setOpen] = $eRSIW$useControllableState({\n    prop: openProp,\n    defaultProp: defaultOpen,\n    onChange: onOpenChange\n  });\n  const handleOpen = $eRSIW$useCallback(() => {\n    clearTimeout(closeTimerRef.current);\n    openTimerRef.current = window.setTimeout(() => setOpen(true), openDelay);\n  }, [openDelay, setOpen]);\n  const handleClose = $eRSIW$useCallback(() => {\n    clearTimeout(openTimerRef.current);\n    if (!hasSelectionRef.current && !isPointerDownOnContentRef.current) closeTimerRef.current = window.setTimeout(() => setOpen(false), closeDelay);\n  }, [closeDelay, setOpen]);\n  const handleDismiss = $eRSIW$useCallback(() => setOpen(false), [setOpen]); // cleanup any queued state updates on unmount\n  $eRSIW$useEffect(() => {\n    return () => {\n      clearTimeout(openTimerRef.current);\n      clearTimeout(closeTimerRef.current);\n    };\n  }, []);\n  return /*#__PURE__*/$eRSIW$createElement($cef8881cdc69808e$var$HoverCardProvider, {\n    scope: __scopeHoverCard,\n    open: open,\n    onOpenChange: setOpen,\n    onOpen: handleOpen,\n    onClose: handleClose,\n    onDismiss: handleDismiss,\n    hasSelectionRef: hasSelectionRef,\n    isPointerDownOnContentRef: isPointerDownOnContentRef\n  }, /*#__PURE__*/$eRSIW$createElement($eRSIW$Root, popperScope, children));\n};\n/*#__PURE__*/\nObject.assign($cef8881cdc69808e$export$57a077cc9fbe653e, {\n  displayName: $cef8881cdc69808e$var$HOVERCARD_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * HoverCardTrigger\n * -----------------------------------------------------------------------------------------------*/\nconst $cef8881cdc69808e$var$TRIGGER_NAME = 'HoverCardTrigger';\nconst $cef8881cdc69808e$export$ef9f7fd8e4ba882f = /*#__PURE__*/$eRSIW$forwardRef((props, forwardedRef) => {\n  const {\n    __scopeHoverCard: __scopeHoverCard,\n    ...triggerProps\n  } = props;\n  const context = $cef8881cdc69808e$var$useHoverCardContext($cef8881cdc69808e$var$TRIGGER_NAME, __scopeHoverCard);\n  const popperScope = $cef8881cdc69808e$var$usePopperScope(__scopeHoverCard);\n  return /*#__PURE__*/$eRSIW$createElement($eRSIW$Anchor, $eRSIW$babelruntimehelpersesmextends({\n    asChild: true\n  }, popperScope), /*#__PURE__*/$eRSIW$createElement($eRSIW$Primitive.a, $eRSIW$babelruntimehelpersesmextends({\n    \"data-state\": context.open ? 'open' : 'closed'\n  }, triggerProps, {\n    ref: forwardedRef,\n    onPointerEnter: $eRSIW$composeEventHandlers(props.onPointerEnter, $cef8881cdc69808e$var$excludeTouch(context.onOpen)),\n    onPointerLeave: $eRSIW$composeEventHandlers(props.onPointerLeave, $cef8881cdc69808e$var$excludeTouch(context.onClose)),\n    onFocus: $eRSIW$composeEventHandlers(props.onFocus, context.onOpen),\n    onBlur: $eRSIW$composeEventHandlers(props.onBlur, context.onClose) // prevent focus event on touch devices\n    ,\n\n    onTouchStart: $eRSIW$composeEventHandlers(props.onTouchStart, event => event.preventDefault())\n  })));\n});\n/*#__PURE__*/\nObject.assign($cef8881cdc69808e$export$ef9f7fd8e4ba882f, {\n  displayName: $cef8881cdc69808e$var$TRIGGER_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * HoverCardPortal\n * -----------------------------------------------------------------------------------------------*/\nconst $cef8881cdc69808e$var$PORTAL_NAME = 'HoverCardPortal';\nconst [$cef8881cdc69808e$var$PortalProvider, $cef8881cdc69808e$var$usePortalContext] = $cef8881cdc69808e$var$createHoverCardContext($cef8881cdc69808e$var$PORTAL_NAME, {\n  forceMount: undefined\n});\nconst $cef8881cdc69808e$export$b384c6e0a789f88b = props => {\n  const {\n    __scopeHoverCard: __scopeHoverCard,\n    forceMount: forceMount,\n    children: children,\n    container: container\n  } = props;\n  const context = $cef8881cdc69808e$var$useHoverCardContext($cef8881cdc69808e$var$PORTAL_NAME, __scopeHoverCard);\n  return /*#__PURE__*/$eRSIW$createElement($cef8881cdc69808e$var$PortalProvider, {\n    scope: __scopeHoverCard,\n    forceMount: forceMount\n  }, /*#__PURE__*/$eRSIW$createElement($eRSIW$Presence, {\n    present: forceMount || context.open\n  }, /*#__PURE__*/$eRSIW$createElement($eRSIW$Portal, {\n    asChild: true,\n    container: container\n  }, children)));\n};\n/*#__PURE__*/\nObject.assign($cef8881cdc69808e$export$b384c6e0a789f88b, {\n  displayName: $cef8881cdc69808e$var$PORTAL_NAME\n});\n/* -------------------------------------------------------------------------------------------------\n * HoverCardContent\n * -----------------------------------------------------------------------------------------------*/\nconst $cef8881cdc69808e$var$CONTENT_NAME = 'HoverCardContent';\nconst $cef8881cdc69808e$export$aa4724a5938c586 = /*#__PURE__*/$eRSIW$forwardRef((props, forwardedRef) => {\n  const portalContext = $cef8881cdc69808e$var$usePortalContext($cef8881cdc69808e$var$CONTENT_NAME, props.__scopeHoverCard);\n  const {\n    forceMount = portalContext.forceMount,\n    ...contentProps\n  } = props;\n  const context = $cef8881cdc69808e$var$useHoverCardContext($cef8881cdc69808e$var$CONTENT_NAME, props.__scopeHoverCard);\n  return /*#__PURE__*/$eRSIW$createElement($eRSIW$Presence, {\n    present: forceMount || context.open\n  }, /*#__PURE__*/$eRSIW$createElement($cef8881cdc69808e$var$HoverCardContentImpl, $eRSIW$babelruntimehelpersesmextends({\n    \"data-state\": context.open ? 'open' : 'closed'\n  }, contentProps, {\n    onPointerEnter: $eRSIW$composeEventHandlers(props.onPointerEnter, $cef8881cdc69808e$var$excludeTouch(context.onOpen)),\n    onPointerLeave: $eRSIW$composeEventHandlers(props.onPointerLeave, $cef8881cdc69808e$var$excludeTouch(context.onClose)),\n    ref: forwardedRef\n  })));\n});\n/*#__PURE__*/\nObject.assign($cef8881cdc69808e$export$aa4724a5938c586, {\n  displayName: $cef8881cdc69808e$var$CONTENT_NAME\n});\n/* ---------------------------------------------------------------------------------------------- */\nconst $cef8881cdc69808e$var$HoverCardContentImpl = /*#__PURE__*/$eRSIW$forwardRef((props, forwardedRef) => {\n  const {\n    __scopeHoverCard: __scopeHoverCard,\n    onEscapeKeyDown: onEscapeKeyDown,\n    onPointerDownOutside: onPointerDownOutside,\n    onFocusOutside: onFocusOutside,\n    onInteractOutside: onInteractOutside,\n    ...contentProps\n  } = props;\n  const context = $cef8881cdc69808e$var$useHoverCardContext($cef8881cdc69808e$var$CONTENT_NAME, __scopeHoverCard);\n  const popperScope = $cef8881cdc69808e$var$usePopperScope(__scopeHoverCard);\n  const ref = $eRSIW$useRef(null);\n  const composedRefs = $eRSIW$useComposedRefs(forwardedRef, ref);\n  const [containSelection, setContainSelection] = $eRSIW$useState(false);\n  $eRSIW$useEffect(() => {\n    if (containSelection) {\n      const body = document.body; // Safari requires prefix\n      $cef8881cdc69808e$var$originalBodyUserSelect = body.style.userSelect || body.style.webkitUserSelect;\n      body.style.userSelect = 'none';\n      body.style.webkitUserSelect = 'none';\n      return () => {\n        body.style.userSelect = $cef8881cdc69808e$var$originalBodyUserSelect;\n        body.style.webkitUserSelect = $cef8881cdc69808e$var$originalBodyUserSelect;\n      };\n    }\n  }, [containSelection]);\n  $eRSIW$useEffect(() => {\n    if (ref.current) {\n      const handlePointerUp = () => {\n        setContainSelection(false);\n        context.isPointerDownOnContentRef.current = false; // Delay a frame to ensure we always access the latest selection\n        setTimeout(() => {\n          var _document$getSelectio;\n          const hasSelection = ((_document$getSelectio = document.getSelection()) === null || _document$getSelectio === void 0 ? void 0 : _document$getSelectio.toString()) !== '';\n          if (hasSelection) context.hasSelectionRef.current = true;\n        });\n      };\n      document.addEventListener('pointerup', handlePointerUp);\n      return () => {\n        document.removeEventListener('pointerup', handlePointerUp);\n        context.hasSelectionRef.current = false;\n        context.isPointerDownOnContentRef.current = false;\n      };\n    }\n  }, [context.isPointerDownOnContentRef, context.hasSelectionRef]);\n  $eRSIW$useEffect(() => {\n    if (ref.current) {\n      const tabbables = $cef8881cdc69808e$var$getTabbableNodes(ref.current);\n      tabbables.forEach(tabbable => tabbable.setAttribute('tabindex', '-1'));\n    }\n  });\n  return /*#__PURE__*/$eRSIW$createElement($eRSIW$DismissableLayer, {\n    asChild: true,\n    disableOutsidePointerEvents: false,\n    onInteractOutside: onInteractOutside,\n    onEscapeKeyDown: onEscapeKeyDown,\n    onPointerDownOutside: onPointerDownOutside,\n    onFocusOutside: $eRSIW$composeEventHandlers(onFocusOutside, event => {\n      event.preventDefault();\n    }),\n    onDismiss: context.onDismiss\n  }, /*#__PURE__*/$eRSIW$createElement($eRSIW$Content, $eRSIW$babelruntimehelpersesmextends({}, popperScope, contentProps, {\n    onPointerDown: $eRSIW$composeEventHandlers(contentProps.onPointerDown, event => {\n      // Contain selection to current layer\n      if (event.currentTarget.contains(event.target)) setContainSelection(true);\n      context.hasSelectionRef.current = false;\n      context.isPointerDownOnContentRef.current = true;\n    }),\n    ref: composedRefs,\n    style: {\n      ...contentProps.style,\n      userSelect: containSelection ? 'text' : undefined,\n      // Safari requires prefix\n      WebkitUserSelect: containSelection ? 'text' : undefined,\n      '--radix-hover-card-content-transform-origin': 'var(--radix-popper-transform-origin)',\n      '--radix-hover-card-content-available-width': 'var(--radix-popper-available-width)',\n      '--radix-hover-card-content-available-height': 'var(--radix-popper-available-height)',\n      '--radix-hover-card-trigger-width': 'var(--radix-popper-anchor-width)',\n      '--radix-hover-card-trigger-height': 'var(--radix-popper-anchor-height)'\n    }\n  })));\n});\n/* -------------------------------------------------------------------------------------------------\n * HoverCardArrow\n * -----------------------------------------------------------------------------------------------*/\nconst $cef8881cdc69808e$var$ARROW_NAME = 'HoverCardArrow';\nconst $cef8881cdc69808e$export$b9744d3e7456d806 = /*#__PURE__*/$eRSIW$forwardRef((props, forwardedRef) => {\n  const {\n    __scopeHoverCard: __scopeHoverCard,\n    ...arrowProps\n  } = props;\n  const popperScope = $cef8881cdc69808e$var$usePopperScope(__scopeHoverCard);\n  return /*#__PURE__*/$eRSIW$createElement($eRSIW$Arrow, $eRSIW$babelruntimehelpersesmextends({}, popperScope, arrowProps, {\n    ref: forwardedRef\n  }));\n});\n/*#__PURE__*/\nObject.assign($cef8881cdc69808e$export$b9744d3e7456d806, {\n  displayName: $cef8881cdc69808e$var$ARROW_NAME\n});\n/* -----------------------------------------------------------------------------------------------*/\nfunction $cef8881cdc69808e$var$excludeTouch(eventHandler) {\n  return event => event.pointerType === 'touch' ? undefined : eventHandler();\n}\n/**\n * Returns a list of nodes that can be in the tab sequence.\n * @see: https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker\n */\nfunction $cef8881cdc69808e$var$getTabbableNodes(container) {\n  const nodes = [];\n  const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n    acceptNode: node => {\n      // `.tabIndex` is not the same as the `tabindex` attribute. It works on the\n      // runtime's understanding of tabbability, so this automatically accounts\n      // for any kind of element that could be tabbed to.\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}\nconst $cef8881cdc69808e$export$be92b6f5f03c0fe9 = $cef8881cdc69808e$export$57a077cc9fbe653e;\nconst $cef8881cdc69808e$export$41fb9f06171c75f4 = $cef8881cdc69808e$export$ef9f7fd8e4ba882f;\nconst $cef8881cdc69808e$export$602eac185826482c = $cef8881cdc69808e$export$b384c6e0a789f88b;\nconst $cef8881cdc69808e$export$7c6e2c02157bb7d2 = $cef8881cdc69808e$export$aa4724a5938c586;\nconst $cef8881cdc69808e$export$21b07c8f274aebd5 = $cef8881cdc69808e$export$b9744d3e7456d806;\nexport { $cef8881cdc69808e$export$47b6998a836b7260 as createHoverCardScope, $cef8881cdc69808e$export$57a077cc9fbe653e as HoverCard, $cef8881cdc69808e$export$ef9f7fd8e4ba882f as HoverCardTrigger, $cef8881cdc69808e$export$b384c6e0a789f88b as HoverCardPortal, $cef8881cdc69808e$export$aa4724a5938c586 as HoverCardContent, $cef8881cdc69808e$export$b9744d3e7456d806 as HoverCardArrow, $cef8881cdc69808e$export$be92b6f5f03c0fe9 as Root, $cef8881cdc69808e$export$41fb9f06171c75f4 as Trigger, $cef8881cdc69808e$export$602eac185826482c as Portal, $cef8881cdc69808e$export$7c6e2c02157bb7d2 as Content, $cef8881cdc69808e$export$21b07c8f274aebd5 as Arrow };","map":{"version":3,"names":["$cef8881cdc69808e$var$originalBodyUserSelect","$cef8881cdc69808e$var$HOVERCARD_NAME","$cef8881cdc69808e$var$createHoverCardContext","$cef8881cdc69808e$export$47b6998a836b7260","$eRSIW$createContextScope","$eRSIW$createPopperScope","$cef8881cdc69808e$var$usePopperScope","$cef8881cdc69808e$var$HoverCardProvider","$cef8881cdc69808e$var$useHoverCardContext","$cef8881cdc69808e$export$57a077cc9fbe653e","props","__scopeHoverCard","children","open","openProp","defaultOpen","onOpenChange","openDelay","closeDelay","popperScope","openTimerRef","$eRSIW$useRef","closeTimerRef","hasSelectionRef","isPointerDownOnContentRef","setOpen","$eRSIW$useControllableState","prop","defaultProp","onChange","handleOpen","$eRSIW$useCallback","clearTimeout","current","window","setTimeout","handleClose","handleDismiss","$eRSIW$useEffect","$eRSIW$createElement","scope","onOpen","onClose","onDismiss","$eRSIW$Root","Object","assign","displayName","$cef8881cdc69808e$var$TRIGGER_NAME","$cef8881cdc69808e$export$ef9f7fd8e4ba882f","$eRSIW$forwardRef","forwardedRef","triggerProps","context","$eRSIW$Anchor","$eRSIW$babelruntimehelpersesmextends","asChild","$eRSIW$Primitive","a","ref","onPointerEnter","$eRSIW$composeEventHandlers","$cef8881cdc69808e$var$excludeTouch","onPointerLeave","onFocus","onBlur","onTouchStart","event","preventDefault","$cef8881cdc69808e$var$PORTAL_NAME","$cef8881cdc69808e$var$PortalProvider","$cef8881cdc69808e$var$usePortalContext","forceMount","undefined","$cef8881cdc69808e$export$b384c6e0a789f88b","container","$eRSIW$Presence","present","$eRSIW$Portal","$cef8881cdc69808e$var$CONTENT_NAME","$cef8881cdc69808e$export$aa4724a5938c586","portalContext","contentProps","$cef8881cdc69808e$var$HoverCardContentImpl","onEscapeKeyDown","onPointerDownOutside","onFocusOutside","onInteractOutside","composedRefs","$eRSIW$useComposedRefs","containSelection","setContainSelection","$eRSIW$useState","body","document","style","userSelect","webkitUserSelect","handlePointerUp","_document$getSelectio","hasSelection","getSelection","toString","addEventListener","removeEventListener","tabbables","$cef8881cdc69808e$var$getTabbableNodes","forEach","tabbable","setAttribute","$eRSIW$DismissableLayer","disableOutsidePointerEvents","$eRSIW$Content","onPointerDown","currentTarget","contains","target","WebkitUserSelect","$cef8881cdc69808e$var$ARROW_NAME","$cef8881cdc69808e$export$b9744d3e7456d806","arrowProps","$eRSIW$Arrow","excludeTouch","eventHandler","pointerType","getTabbableNodes","nodes","walker","createTreeWalker","NodeFilter","SHOW_ELEMENT","acceptNode","node","tabIndex","FILTER_ACCEPT","FILTER_SKIP","nextNode","push","currentNode","$cef8881cdc69808e$export$be92b6f5f03c0fe9","$cef8881cdc69808e$export$41fb9f06171c75f4","$cef8881cdc69808e$export$602eac185826482c","$cef8881cdc69808e$export$7c6e2c02157bb7d2","$cef8881cdc69808e$export$21b07c8f274aebd5"],"sources":["C:\\Users\\user\\Desktop\\02portreact\\node_modules\\@radix-ui\\react-hover-card\\dist\\packages\\react\\hover-card\\src\\index.ts","C:\\Users\\user\\Desktop\\02portreact\\node_modules\\@radix-ui\\react-hover-card\\dist\\packages\\react\\hover-card\\src\\HoverCard.tsx"],"sourcesContent":["export {\n  createHoverCardScope,\n  //\n  HoverCard,\n  HoverCardTrigger,\n  HoverCardPortal,\n  HoverCardContent,\n  HoverCardArrow,\n  //\n  Root,\n  Trigger,\n  Portal,\n  Content,\n  Arrow,\n} from './HoverCard';\nexport type {\n  HoverCardProps,\n  HoverCardTriggerProps,\n  HoverCardPortalProps,\n  HoverCardContentProps,\n  HoverCardArrowProps,\n} from './HoverCard';\n","import * as React from 'react';\nimport { composeEventHandlers } from '@radix-ui/primitive';\nimport { createContextScope } from '@radix-ui/react-context';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { useComposedRefs } from '@radix-ui/react-compose-refs';\nimport * as PopperPrimitive from '@radix-ui/react-popper';\nimport { createPopperScope } from '@radix-ui/react-popper';\nimport { Portal as PortalPrimitive } from '@radix-ui/react-portal';\nimport { Presence } from '@radix-ui/react-presence';\nimport { Primitive } from '@radix-ui/react-primitive';\nimport { DismissableLayer } from '@radix-ui/react-dismissable-layer';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * HoverCard\n * -----------------------------------------------------------------------------------------------*/\n\nlet originalBodyUserSelect: string;\n\nconst HOVERCARD_NAME = 'HoverCard';\n\ntype ScopedProps<P> = P & { __scopeHoverCard?: Scope };\nconst [createHoverCardContext, createHoverCardScope] = createContextScope(HOVERCARD_NAME, [\n  createPopperScope,\n]);\nconst usePopperScope = createPopperScope();\n\ntype HoverCardContextValue = {\n  open: boolean;\n  onOpenChange(open: boolean): void;\n  onOpen(): void;\n  onClose(): void;\n  onDismiss(): void;\n  hasSelectionRef: React.MutableRefObject<boolean>;\n  isPointerDownOnContentRef: React.MutableRefObject<boolean>;\n};\n\nconst [HoverCardProvider, useHoverCardContext] =\n  createHoverCardContext<HoverCardContextValue>(HOVERCARD_NAME);\n\ninterface HoverCardProps {\n  children?: React.ReactNode;\n  open?: boolean;\n  defaultOpen?: boolean;\n  onOpenChange?: (open: boolean) => void;\n  openDelay?: number;\n  closeDelay?: number;\n}\n\nconst HoverCard: React.FC<HoverCardProps> = (props: ScopedProps<HoverCardProps>) => {\n  const {\n    __scopeHoverCard,\n    children,\n    open: openProp,\n    defaultOpen,\n    onOpenChange,\n    openDelay = 700,\n    closeDelay = 300,\n  } = props;\n  const popperScope = usePopperScope(__scopeHoverCard);\n  const openTimerRef = React.useRef(0);\n  const closeTimerRef = React.useRef(0);\n  const hasSelectionRef = React.useRef(false);\n  const isPointerDownOnContentRef = React.useRef(false);\n\n  const [open = false, setOpen] = useControllableState({\n    prop: openProp,\n    defaultProp: defaultOpen,\n    onChange: onOpenChange,\n  });\n\n  const handleOpen = React.useCallback(() => {\n    clearTimeout(closeTimerRef.current);\n    openTimerRef.current = window.setTimeout(() => setOpen(true), openDelay);\n  }, [openDelay, setOpen]);\n\n  const handleClose = React.useCallback(() => {\n    clearTimeout(openTimerRef.current);\n    if (!hasSelectionRef.current && !isPointerDownOnContentRef.current) {\n      closeTimerRef.current = window.setTimeout(() => setOpen(false), closeDelay);\n    }\n  }, [closeDelay, setOpen]);\n\n  const handleDismiss = React.useCallback(() => setOpen(false), [setOpen]);\n\n  // cleanup any queued state updates on unmount\n  React.useEffect(() => {\n    return () => {\n      clearTimeout(openTimerRef.current);\n      clearTimeout(closeTimerRef.current);\n    };\n  }, []);\n\n  return (\n    <HoverCardProvider\n      scope={__scopeHoverCard}\n      open={open}\n      onOpenChange={setOpen}\n      onOpen={handleOpen}\n      onClose={handleClose}\n      onDismiss={handleDismiss}\n      hasSelectionRef={hasSelectionRef}\n      isPointerDownOnContentRef={isPointerDownOnContentRef}\n    >\n      <PopperPrimitive.Root {...popperScope}>{children}</PopperPrimitive.Root>\n    </HoverCardProvider>\n  );\n};\n\nHoverCard.displayName = HOVERCARD_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * HoverCardTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'HoverCardTrigger';\n\ntype HoverCardTriggerElement = React.ElementRef<typeof Primitive.a>;\ntype PrimitiveLinkProps = Radix.ComponentPropsWithoutRef<typeof Primitive.a>;\ninterface HoverCardTriggerProps extends PrimitiveLinkProps {}\n\nconst HoverCardTrigger = React.forwardRef<HoverCardTriggerElement, HoverCardTriggerProps>(\n  (props: ScopedProps<HoverCardTriggerProps>, forwardedRef) => {\n    const { __scopeHoverCard, ...triggerProps } = props;\n    const context = useHoverCardContext(TRIGGER_NAME, __scopeHoverCard);\n    const popperScope = usePopperScope(__scopeHoverCard);\n    return (\n      <PopperPrimitive.Anchor asChild {...popperScope}>\n        <Primitive.a\n          data-state={context.open ? 'open' : 'closed'}\n          {...triggerProps}\n          ref={forwardedRef}\n          onPointerEnter={composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen))}\n          onPointerLeave={composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose))}\n          onFocus={composeEventHandlers(props.onFocus, context.onOpen)}\n          onBlur={composeEventHandlers(props.onBlur, context.onClose)}\n          // prevent focus event on touch devices\n          onTouchStart={composeEventHandlers(props.onTouchStart, (event) => event.preventDefault())}\n        />\n      </PopperPrimitive.Anchor>\n    );\n  }\n);\n\nHoverCardTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * HoverCardPortal\n * -----------------------------------------------------------------------------------------------*/\n\nconst PORTAL_NAME = 'HoverCardPortal';\n\ntype PortalContextValue = { forceMount?: true };\nconst [PortalProvider, usePortalContext] = createHoverCardContext<PortalContextValue>(PORTAL_NAME, {\n  forceMount: undefined,\n});\n\ntype PortalProps = React.ComponentPropsWithoutRef<typeof PortalPrimitive>;\ninterface HoverCardPortalProps extends Omit<PortalProps, 'asChild'> {\n  children?: React.ReactNode;\n  /**\n   * Used to force mounting when more control is needed. Useful when\n   * controlling animation with React animation libraries.\n   */\n  forceMount?: true;\n}\n\nconst HoverCardPortal: React.FC<HoverCardPortalProps> = (\n  props: ScopedProps<HoverCardPortalProps>\n) => {\n  const { __scopeHoverCard, forceMount, children, container } = props;\n  const context = useHoverCardContext(PORTAL_NAME, __scopeHoverCard);\n  return (\n    <PortalProvider scope={__scopeHoverCard} forceMount={forceMount}>\n      <Presence present={forceMount || context.open}>\n        <PortalPrimitive asChild container={container}>\n          {children}\n        </PortalPrimitive>\n      </Presence>\n    </PortalProvider>\n  );\n};\n\nHoverCardPortal.displayName = PORTAL_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * HoverCardContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'HoverCardContent';\n\ntype HoverCardContentElement = HoverCardContentImplElement;\ninterface HoverCardContentProps extends HoverCardContentImplProps {\n  /**\n   * Used to force mounting when more control is needed. Useful when\n   * controlling animation with React animation libraries.\n   */\n  forceMount?: true;\n}\n\nconst HoverCardContent = React.forwardRef<HoverCardContentElement, HoverCardContentProps>(\n  (props: ScopedProps<HoverCardContentProps>, forwardedRef) => {\n    const portalContext = usePortalContext(CONTENT_NAME, props.__scopeHoverCard);\n    const { forceMount = portalContext.forceMount, ...contentProps } = props;\n    const context = useHoverCardContext(CONTENT_NAME, props.__scopeHoverCard);\n    return (\n      <Presence present={forceMount || context.open}>\n        <HoverCardContentImpl\n          data-state={context.open ? 'open' : 'closed'}\n          {...contentProps}\n          onPointerEnter={composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen))}\n          onPointerLeave={composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose))}\n          ref={forwardedRef}\n        />\n      </Presence>\n    );\n  }\n);\n\nHoverCardContent.displayName = CONTENT_NAME;\n\n/* ---------------------------------------------------------------------------------------------- */\n\ntype HoverCardContentImplElement = React.ElementRef<typeof PopperPrimitive.Content>;\ntype DismissableLayerProps = Radix.ComponentPropsWithoutRef<typeof DismissableLayer>;\ntype PopperContentProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Content>;\ninterface HoverCardContentImplProps extends Omit<PopperContentProps, 'onPlaced'> {\n  /**\n   * Event handler called when the escape key is down.\n   * Can be prevented.\n   */\n  onEscapeKeyDown?: DismissableLayerProps['onEscapeKeyDown'];\n  /**\n   * Event handler called when the a `pointerdown` event happens outside of the `HoverCard`.\n   * Can be prevented.\n   */\n  onPointerDownOutside?: DismissableLayerProps['onPointerDownOutside'];\n  /**\n   * Event handler called when the focus moves outside of the `HoverCard`.\n   * Can be prevented.\n   */\n  onFocusOutside?: DismissableLayerProps['onFocusOutside'];\n  /**\n   * Event handler called when an interaction happens outside the `HoverCard`.\n   * Specifically, when a `pointerdown` event happens outside or focus moves outside of it.\n   * Can be prevented.\n   */\n  onInteractOutside?: DismissableLayerProps['onInteractOutside'];\n}\n\nconst HoverCardContentImpl = React.forwardRef<\n  HoverCardContentImplElement,\n  HoverCardContentImplProps\n>((props: ScopedProps<HoverCardContentImplProps>, forwardedRef) => {\n  const {\n    __scopeHoverCard,\n    onEscapeKeyDown,\n    onPointerDownOutside,\n    onFocusOutside,\n    onInteractOutside,\n    ...contentProps\n  } = props;\n  const context = useHoverCardContext(CONTENT_NAME, __scopeHoverCard);\n  const popperScope = usePopperScope(__scopeHoverCard);\n  const ref = React.useRef<HoverCardContentImplElement>(null);\n  const composedRefs = useComposedRefs(forwardedRef, ref);\n  const [containSelection, setContainSelection] = React.useState(false);\n\n  React.useEffect(() => {\n    if (containSelection) {\n      const body = document.body;\n\n      // Safari requires prefix\n      originalBodyUserSelect = body.style.userSelect || body.style.webkitUserSelect;\n\n      body.style.userSelect = 'none';\n      body.style.webkitUserSelect = 'none';\n      return () => {\n        body.style.userSelect = originalBodyUserSelect;\n        body.style.webkitUserSelect = originalBodyUserSelect;\n      };\n    }\n  }, [containSelection]);\n\n  React.useEffect(() => {\n    if (ref.current) {\n      const handlePointerUp = () => {\n        setContainSelection(false);\n        context.isPointerDownOnContentRef.current = false;\n\n        // Delay a frame to ensure we always access the latest selection\n        setTimeout(() => {\n          const hasSelection = document.getSelection()?.toString() !== '';\n          if (hasSelection) context.hasSelectionRef.current = true;\n        });\n      };\n\n      document.addEventListener('pointerup', handlePointerUp);\n      return () => {\n        document.removeEventListener('pointerup', handlePointerUp);\n        context.hasSelectionRef.current = false;\n        context.isPointerDownOnContentRef.current = false;\n      };\n    }\n  }, [context.isPointerDownOnContentRef, context.hasSelectionRef]);\n\n  React.useEffect(() => {\n    if (ref.current) {\n      const tabbables = getTabbableNodes(ref.current);\n      tabbables.forEach((tabbable) => tabbable.setAttribute('tabindex', '-1'));\n    }\n  });\n\n  return (\n    <DismissableLayer\n      asChild\n      disableOutsidePointerEvents={false}\n      onInteractOutside={onInteractOutside}\n      onEscapeKeyDown={onEscapeKeyDown}\n      onPointerDownOutside={onPointerDownOutside}\n      onFocusOutside={composeEventHandlers(onFocusOutside, (event) => {\n        event.preventDefault();\n      })}\n      onDismiss={context.onDismiss}\n    >\n      <PopperPrimitive.Content\n        {...popperScope}\n        {...contentProps}\n        onPointerDown={composeEventHandlers(contentProps.onPointerDown, (event) => {\n          // Contain selection to current layer\n          if (event.currentTarget.contains(event.target as HTMLElement)) {\n            setContainSelection(true);\n          }\n          context.hasSelectionRef.current = false;\n          context.isPointerDownOnContentRef.current = true;\n        })}\n        ref={composedRefs}\n        style={{\n          ...contentProps.style,\n          userSelect: containSelection ? 'text' : undefined,\n          // Safari requires prefix\n          WebkitUserSelect: containSelection ? 'text' : undefined,\n          // re-namespace exposed content custom properties\n          ...{\n            '--radix-hover-card-content-transform-origin': 'var(--radix-popper-transform-origin)',\n            '--radix-hover-card-content-available-width': 'var(--radix-popper-available-width)',\n            '--radix-hover-card-content-available-height': 'var(--radix-popper-available-height)',\n            '--radix-hover-card-trigger-width': 'var(--radix-popper-anchor-width)',\n            '--radix-hover-card-trigger-height': 'var(--radix-popper-anchor-height)',\n          },\n        }}\n      />\n    </DismissableLayer>\n  );\n});\n\n/* -------------------------------------------------------------------------------------------------\n * HoverCardArrow\n * -----------------------------------------------------------------------------------------------*/\n\nconst ARROW_NAME = 'HoverCardArrow';\n\ntype HoverCardArrowElement = React.ElementRef<typeof PopperPrimitive.Arrow>;\ntype PopperArrowProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Arrow>;\ninterface HoverCardArrowProps extends PopperArrowProps {}\n\nconst HoverCardArrow = React.forwardRef<HoverCardArrowElement, HoverCardArrowProps>(\n  (props: ScopedProps<HoverCardArrowProps>, forwardedRef) => {\n    const { __scopeHoverCard, ...arrowProps } = props;\n    const popperScope = usePopperScope(__scopeHoverCard);\n    return <PopperPrimitive.Arrow {...popperScope} {...arrowProps} ref={forwardedRef} />;\n  }\n);\n\nHoverCardArrow.displayName = ARROW_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction excludeTouch<E>(eventHandler: () => void) {\n  return (event: React.PointerEvent<E>) =>\n    event.pointerType === 'touch' ? undefined : eventHandler();\n}\n\n/**\n * Returns a list of nodes that can be in the tab sequence.\n * @see: https://developer.mozilla.org/en-US/docs/Web/API/TreeWalker\n */\nfunction getTabbableNodes(container: HTMLElement) {\n  const nodes: HTMLElement[] = [];\n  const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n    acceptNode: (node: any) => {\n      // `.tabIndex` is not the same as the `tabindex` attribute. It works on the\n      // runtime's understanding of tabbability, so this automatically accounts\n      // for any kind of element that could be tabbed to.\n      return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n    },\n  });\n  while (walker.nextNode()) nodes.push(walker.currentNode as HTMLElement);\n  return nodes;\n}\n\nconst Root = HoverCard;\nconst Trigger = HoverCardTrigger;\nconst Portal = HoverCardPortal;\nconst Content = HoverCardContent;\nconst Arrow = HoverCardArrow;\n\nexport {\n  createHoverCardScope,\n  //\n  HoverCard,\n  HoverCardTrigger,\n  HoverCardPortal,\n  HoverCardContent,\n  HoverCardArrow,\n  //\n  Root,\n  Trigger,\n  Portal,\n  Content,\n  Arrow,\n};\nexport type {\n  HoverCardProps,\n  HoverCardTriggerProps,\n  HoverCardPortalProps,\n  HoverCardContentProps,\n  HoverCardArrowProps,\n};\n"],"mappings":";;;;;;;;;;;;ACeA;;;AAIA,IAAIA,4CAAJ;AAEA,MAAMC,oCAAc,GAAG,WAAvB;AAGA,MAAM,CAACC,4CAAD,EAAyBC,yCAAzB,IAAiDC,yBAAkB,CAACH,oCAAD,EAAiB,CACxFI,wBADwF,CAAjB,CAAzE;AAGA,MAAMC,oCAAc,GAAGD,wBAAiB,EAAxC;AAYA,MAAM,CAACE,uCAAD,EAAoBC,yCAApB,IACJN,4CAAsB,CAAwBD,oCAAxB,CADxB;AAYA,MAAMQ,yCAAmC,GAAIC,KAAD,IAAwC;EAClF,MAAM;sBACJC,gBADI;cAEJC,QAFI;IAGJC,IAAI,EAAEC,QAHF;iBAIJC,WAJI;kBAKJC,YALI;IAMJC,SAAS,GAAG,GANR;IAOJC,UAAU,GAAG;EAAb,CAPI,GAQFR,KARJ;EASA,MAAMS,WAAW,GAAGb,oCAAc,CAACK,gBAAD,CAAlC;EACA,MAAMS,YAAY,GAAGC,aAAA,CAAa,CAAb,CAArB;EACA,MAAMC,aAAa,GAAGD,aAAA,CAAa,CAAb,CAAtB;EACA,MAAME,eAAe,GAAGF,aAAA,CAAa,KAAb,CAAxB;EACA,MAAMG,yBAAyB,GAAGH,aAAA,CAAa,KAAb,CAAlC;EAEA,MAAM,CAACR,IAAI,GAAG,KAAR,EAAeY,OAAf,IAA0BC,2BAAoB,CAAC;IACnDC,IAAI,EAAEb,QAD6C;IAEnDc,WAAW,EAAEb,WAFsC;IAGnDc,QAAQ,EAAEb;GAHwC,CAApD;EAMA,MAAMc,UAAU,GAAGC,kBAAA,CAAkB,MAAM;IACzCC,YAAY,CAACV,aAAa,CAACW,OAAf,CAAZ;IACAb,YAAY,CAACa,OAAb,GAAuBC,MAAM,CAACC,UAAP,CAAkB,MAAMV,OAAO,CAAC,IAAD,CAA/B,EAAuCR,SAAvC,CAAvB;GAFiB,EAGhB,CAACA,SAAD,EAAYQ,OAAZ,CAHgB,CAAnB;EAKA,MAAMW,WAAW,GAAGL,kBAAA,CAAkB,MAAM;IAC1CC,YAAY,CAACZ,YAAY,CAACa,OAAd,CAAZ;IACA,IAAI,CAACV,eAAe,CAACU,OAAjB,IAA4B,CAACT,yBAAyB,CAACS,OAA3D,EACEX,aAAa,CAACW,OAAd,GAAwBC,MAAM,CAACC,UAAP,CAAkB,MAAMV,OAAO,CAAC,KAAD,CAA/B,EAAwCP,UAAxC,CAAxB;GAHgB,EAKjB,CAACA,UAAD,EAAaO,OAAb,CALiB,CAApB;EAOA,MAAMY,aAAa,GAAGN,kBAAA,CAAkB,MAAMN,OAAO,CAAC,KAAD,CAA/B,EAAwC,CAACA,OAAD,CAAxC,CAAtB,CAlCkF,CAoClF;EACAa,gBAAA,CAAgB,MAAM;IACpB,OAAO,MAAM;MACXN,YAAY,CAACZ,YAAY,CAACa,OAAd,CAAZ;MACAD,YAAY,CAACV,aAAa,CAACW,OAAf,CAAZ;KAFF;GADF,EAKG,EALH,CAKC;EAED,oBACEM,oBAAA,CAAChC,uCAAD,EADF;IAEIiC,KAAK,EAAE7B,gBADT;IAEEE,IAAI,EAAEA,IAFR;IAGEG,YAAY,EAAES,OAHhB;IAIEgB,MAAM,EAAEX,UAJV;IAKEY,OAAO,EAAEN,WALX;IAMEO,SAAS,EAAEN,aANb;IAOEd,eAAe,EAAEA,eAPnB;IAQEC,yBAAyB,EAAEA;GAR7B,eAUEe,oBAAA,CAACK,WAAD,EAA0BzB,WAA1B,EAAwCP,QAAxC,CAVF,CADF;CA5CF;AA4DA;AAAAiC,MAAA,CAAAC,MAAA,CAAArC,yCAAA;EAAAsC,WAAA,EAAA9C;CAAA;AAEA;;;AAIA,MAAM+C,kCAAY,GAAG,kBAArB;AAMA,MAAMC,yCAAgB,gBAAGC,iBAAA,CACvB,CAACxC,KAAD,EAA4CyC,YAA5C,KAA6D;EAC3D,MAAM;sBAAExC,gBAAF;IAAoB,GAAGyC;EAAH,CAApB,GAAwC1C,KAA9C;EACA,MAAM2C,OAAO,GAAG7C,yCAAmB,CAACwC,kCAAD,EAAerC,gBAAf,CAAnC;EACA,MAAMQ,WAAW,GAAGb,oCAAc,CAACK,gBAAD,CAAlC;EACA,oBACE4B,oBAAA,CAACe,aAAD,EADFC,oCAAA;IAC0BC,OAAO,EAAP;GAAxB,EAAoCrC,WAApC,gBACEoB,oBAAA,CAACkB,gBAAD,CAAWC,CAAX,EADFH,oCAAA;IAEI,cAAYF,OAAO,CAACxC,IAAR,GAAe,MAAf,GAAwB;GADtC,EAEMuC,YAFN;IAGEO,GAAG,EAAER,YAHP;IAIES,cAAc,EAAEC,2BAAoB,CAACnD,KAAK,CAACkD,cAAP,EAAuBE,kCAAY,CAACT,OAAO,CAACZ,MAAT,CAAnC,CAJtC;IAKEsB,cAAc,EAAEF,2BAAoB,CAACnD,KAAK,CAACqD,cAAP,EAAuBD,kCAAY,CAACT,OAAO,CAACX,OAAT,CAAnC,CALtC;IAMEsB,OAAO,EAAEH,2BAAoB,CAACnD,KAAK,CAACsD,OAAP,EAAgBX,OAAO,CAACZ,MAAxB,CAN/B;IAOEwB,MAAM,EAAEJ,2BAAoB,CAACnD,KAAK,CAACuD,MAAP,EAAeZ,OAAO,CAACX,OAAvB,CAP9B,CAQE;IAAA;;IACAwB,YAAY,EAAEL,2BAAoB,CAACnD,KAAK,CAACwD,YAAP,EAAsBC,KAAD,IAAWA,KAAK,CAACC,cAAN,EAAhC;GATpC,EADF,CADF;CALqB,CAAzB;AAuBA;AAAAvB,MAAA,CAAAC,MAAA,CAAAG,yCAAA;EAAAF,WAAA,EAAAC;CAAA;AAEA;;;AAIA,MAAMqB,iCAAW,GAAG,iBAApB;AAGA,MAAM,CAACC,oCAAD,EAAiBC,sCAAjB,IAAqCrE,4CAAsB,CAAqBmE,iCAArB,EAAkC;EACjGG,UAAU,EAAEC;CADmD,CAAjE;AAcA,MAAMC,yCAA+C,GACnDhE,KADsD,IAEnD;EACH,MAAM;sBAAEC,gBAAF;gBAAoB6D,UAApB;cAAgC5D,QAAhC;eAA0C+D;EAAA,CAA1C,GAAwDjE,KAA9D;EACA,MAAM2C,OAAO,GAAG7C,yCAAmB,CAAC6D,iCAAD,EAAc1D,gBAAd,CAAnC;EACA,oBACE4B,oBAAA,CAAC+B,oCAAD,EADF;IACkB9B,KAAK,EAAE7B,gBAAvB;IAAyC6D,UAAU,EAAEA;GAArD,eACEjC,oBAAA,CAACqC,eAAD,EADF;IACYC,OAAO,EAAEL,UAAU,IAAInB,OAAO,CAACxC;GAAzC,eACE0B,oBAAA,CAACuC,aAAD,EADF;IACmBtB,OAAO,MAAxB;IAAyBmB,SAAS,EAAEA;GAApC,EACG/D,QADH,CADF,CADF,CADF;CALF;AAgBA;AAAAiC,MAAA,CAAAC,MAAA,CAAA4B,yCAAA;EAAA3B,WAAA,EAAAsB;CAAA;AAEA;;;AAIA,MAAMU,kCAAY,GAAG,kBAArB;AAWA,MAAMC,wCAAgB,gBAAG9B,iBAAA,CACvB,CAACxC,KAAD,EAA4CyC,YAA5C,KAA6D;EAC3D,MAAM8B,aAAa,GAAGV,sCAAgB,CAACQ,kCAAD,EAAerE,KAAK,CAACC,gBAArB,CAAtC;EACA,MAAM;IAAE6D,UAAU,GAAGS,aAAa,CAACT,UAA7B;IAAyC,GAAGU;EAAH,CAAzC,GAA6DxE,KAAnE;EACA,MAAM2C,OAAO,GAAG7C,yCAAmB,CAACuE,kCAAD,EAAerE,KAAK,CAACC,gBAArB,CAAnC;EACA,oBACE4B,oBAAA,CAACqC,eAAD,EADF;IACYC,OAAO,EAAEL,UAAU,IAAInB,OAAO,CAACxC;GAAzC,eACE0B,oBAAA,CAAC4C,0CAAD,EADF5B,oCAAA;IAEI,cAAYF,OAAO,CAACxC,IAAR,GAAe,MAAf,GAAwB;GADtC,EAEMqE,YAFN;IAGEtB,cAAc,EAAEC,2BAAoB,CAACnD,KAAK,CAACkD,cAAP,EAAuBE,kCAAY,CAACT,OAAO,CAACZ,MAAT,CAAnC,CAHtC;IAIEsB,cAAc,EAAEF,2BAAoB,CAACnD,KAAK,CAACqD,cAAP,EAAuBD,kCAAY,CAACT,OAAO,CAACX,OAAT,CAAnC,CAJtC;IAKEiB,GAAG,EAAER;GALP,EADF,CADF;CALqB,CAAzB;AAmBA;AAAAN,MAAA,CAAAC,MAAA,CAAAkC,wCAAA;EAAAjC,WAAA,EAAAgC;CAAA;AAEA;AA6BA,MAAMI,0CAAoB,gBAAGjC,iBAAA,CAG3B,CAACxC,KAAD,EAAgDyC,YAAhD,KAAiE;EACjE,MAAM;sBACJxC,gBADI;qBAEJyE,eAFI;0BAGJC,oBAHI;oBAIJC,cAJI;uBAKJC,iBALI;IAMJ,GAAGL;EAAH,CANI,GAOFxE,KAPJ;EAQA,MAAM2C,OAAO,GAAG7C,yCAAmB,CAACuE,kCAAD,EAAepE,gBAAf,CAAnC;EACA,MAAMQ,WAAW,GAAGb,oCAAc,CAACK,gBAAD,CAAlC;EACA,MAAMgD,GAAG,GAAGtC,aAAA,CAA0C,IAA1C,CAAZ;EACA,MAAMmE,YAAY,GAAGC,sBAAe,CAACtC,YAAD,EAAeQ,GAAf,CAApC;EACA,MAAM,CAAC+B,gBAAD,EAAmBC,mBAAnB,IAA0CC,eAAA,CAAe,KAAf,CAAhD;EAEAtD,gBAAA,CAAgB,MAAM;IACpB,IAAIoD,gBAAJ,EAAsB;MACpB,MAAMG,IAAI,GAAGC,QAAQ,CAACD,IAAtB,CADoB,CAGpB;MACA7F,4CAAsB,GAAG6F,IAAI,CAACE,KAAL,CAAWC,UAAX,IAAyBH,IAAI,CAACE,KAAL,CAAWE,gBAA7D;MAEAJ,IAAI,CAACE,KAAL,CAAWC,UAAX,GAAwB,MAAxB;MACAH,IAAI,CAACE,KAAL,CAAWE,gBAAX,GAA8B,MAA9B;MACA,OAAO,MAAM;QACXJ,IAAI,CAACE,KAAL,CAAWC,UAAX,GAAwBhG,4CAAxB;QACA6F,IAAI,CAACE,KAAL,CAAWE,gBAAX,GAA8BjG,4CAA9B;OAFF;;GATJ,EAcG,CAAC0F,gBAAD,CAdH,CAcC;EAEDpD,gBAAA,CAAgB,MAAM;IACpB,IAAIqB,GAAG,CAAC1B,OAAR,EAAiB;MACf,MAAMiE,eAAe,GAAGA,CAAA,KAAM;QAC5BP,mBAAmB,CAAC,KAAD,CAAnB;QACAtC,OAAO,CAAC7B,yBAAR,CAAkCS,OAAlC,GAA4C,KAA5C,CAF4B,CAI5B;QACAE,UAAU,CAAC,MAAM;UAAA,IAAAgE,qBAAA;UACf,MAAMC,YAAY,GAAG,EAAAD,qBAAA,GAAAL,QAAQ,CAACO,YAAT,gBAAAF,qBAAA,uBAAAA,qBAAA,CAAyBG,QAAzB,QAAwC,EAA7D;UACA,IAAIF,YAAJ,EAAkB/C,OAAO,CAAC9B,eAAR,CAAwBU,OAAxB,GAAkC,IAAlC;SAFV,CAAV;OALF;MAWA6D,QAAQ,CAACS,gBAAT,CAA0B,WAA1B,EAAuCL,eAAvC;MACA,OAAO,MAAM;QACXJ,QAAQ,CAACU,mBAAT,CAA6B,WAA7B,EAA0CN,eAA1C;QACA7C,OAAO,CAAC9B,eAAR,CAAwBU,OAAxB,GAAkC,KAAlC;QACAoB,OAAO,CAAC7B,yBAAR,CAAkCS,OAAlC,GAA4C,KAA5C;OAHF;;GAdJ,EAoBG,CAACoB,OAAO,CAAC7B,yBAAT,EAAoC6B,OAAO,CAAC9B,eAA5C,CApBH,CAoBC;EAEDe,gBAAA,CAAgB,MAAM;IACpB,IAAIqB,GAAG,CAAC1B,OAAR,EAAiB;MACf,MAAMwE,SAAS,GAAGC,sCAAgB,CAAC/C,GAAG,CAAC1B,OAAL,CAAlC;MACAwE,SAAS,CAACE,OAAV,CAAmBC,QAAD,IAAcA,QAAQ,CAACC,YAAT,CAAsB,UAAtB,EAAkC,IAAlC,CAAhC;;GAHJ,CAKC;EAED,oBACEtE,oBAAA,CAACuE,uBAAD,EADF;IAEItD,OAAO,MADT;IAEEuD,2BAA2B,EAAE,KAF/B;IAGExB,iBAAiB,EAAEA,iBAHrB;IAIEH,eAAe,EAAEA,eAJnB;IAKEC,oBAAoB,EAAEA,oBALxB;IAMEC,cAAc,EAAEzB,2BAAoB,CAACyB,cAAD,EAAkBnB,KAAD,IAAW;MAC9DA,KAAK,CAACC,cAAN;KADkC,CANtC;IASEzB,SAAS,EAAEU,OAAO,CAACV;GATrB,eAWEJ,oBAAA,CAACyE,cAAD,EAAAzD,oCAAA,KACMpC,WADN,EAEM+D,YAFN,EAXF;IAcI+B,aAAa,EAAEpD,2BAAoB,CAACqB,YAAY,CAAC+B,aAAd,EAA8B9C,KAAD,IAAW;MACzE;MACA,IAAIA,KAAK,CAAC+C,aAAN,CAAoBC,QAApB,CAA6BhD,KAAK,CAACiD,MAAnC,CAAJ,EACEzB,mBAAmB,CAAC,IAAD,CAAnB;MAEFtC,OAAO,CAAC9B,eAAR,CAAwBU,OAAxB,GAAkC,KAAlC;MACAoB,OAAO,CAAC7B,yBAAR,CAAkCS,OAAlC,GAA4C,IAA5C;KANiC,CAHrC;IAWE0B,GAAG,EAAE6B,YAXP;IAYEO,KAAK,EAAE;MACL,GAAGb,YAAY,CAACa,KADX;MAELC,UAAU,EAAEN,gBAAgB,GAAG,MAAH,GAAYjB,SAFnC;MAGL;MACA4C,gBAAgB,EAAE3B,gBAAgB,GAAG,MAAH,GAAYjB,SAJzC;MAOH,+CAA+C,sCAD9C;MAED,8CAA8C,qCAF7C;MAGD,+CAA+C,sCAH9C;MAID,oCAAoC,kCAJnC;MAKD,qCAAqC;;GAvB3C,EAXF,CADF;CA/D2B,CAA7B;AA0GA;;;AAIA,MAAM6C,gCAAU,GAAG,gBAAnB;AAMA,MAAMC,yCAAc,gBAAGrE,iBAAA,CACrB,CAACxC,KAAD,EAA0CyC,YAA1C,KAA2D;EACzD,MAAM;sBAAExC,gBAAF;IAAoB,GAAG6G;EAAH,CAApB,GAAsC9G,KAA5C;EACA,MAAMS,WAAW,GAAGb,oCAAc,CAACK,gBAAD,CAAlC;EACA,oBAAO4B,oBAAA,CAACkF,YAAD,EAAAlE,oCAAA,KAA2BpC,WAA3B,EAA4CqG,UAA5C,EAAP;IAA+D7D,GAAG,EAAER;GAA7D,EAAP;CAJmB,CAAvB;AAQA;AAAAN,MAAA,CAAAC,MAAA,CAAAyE,yCAAA;EAAAxE,WAAA,EAAAuE;CAAA;AAEA;AAEA,SAASxD,kCAAT4D,CAAyBC,YAAzB,EAAmD;EACjD,OAAQxD,KAAD,IACLA,KAAK,CAACyD,WAAN,KAAsB,OAAtB,GAAgCnD,SAAhC,GAA4CkD,YAAY,EAD1D;;AAIF;;;;AAIA,SAASjB,sCAATmB,CAA0BlD,SAA1B,EAAkD;EAChD,MAAMmD,KAAoB,GAAG,EAA7B;EACA,MAAMC,MAAM,GAAGjC,QAAQ,CAACkC,gBAAT,CAA0BrD,SAA1B,EAAqCsD,UAAU,CAACC,YAAhD,EAA8D;IAC3EC,UAAU,EAAGC,IAAD,IAAe;MACzB;MACA;MACA;MACA,OAAOA,IAAI,CAACC,QAAL,IAAiB,CAAjB,GAAqBJ,UAAU,CAACK,aAAhC,GAAgDL,UAAU,CAACM,WAAlE;;GALW,CAAf;EAQA,OAAOR,MAAM,CAACS,QAAP,EAAP,EAA0BV,KAAK,CAACW,IAAN,CAAWV,MAAM,CAACW,WAAlB,CAA1B;EACA,OAAOZ,KAAP;;AAGF,MAAMa,yCAAI,GAAGlI,yCAAb;AACA,MAAMmI,yCAAO,GAAG3F,yCAAhB;AACA,MAAM4F,yCAAM,GAAGnE,yCAAf;AACA,MAAMoE,yCAAO,GAAG9D,wCAAhB;AACA,MAAM+D,yCAAK,GAAGxB,yCAAd"},"metadata":{},"sourceType":"module","externalDependencies":[]}