{"mappings":"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","sources":["packages/react/popover/src/index.ts","packages/react/popover/src/Popover.tsx"],"sourcesContent":["export {\n  createPopoverScope,\n  //\n  Popover,\n  PopoverAnchor,\n  PopoverTrigger,\n  PopoverPortal,\n  PopoverContent,\n  PopoverClose,\n  PopoverArrow,\n  //\n  Root,\n  Anchor,\n  Trigger,\n  Portal,\n  Content,\n  Close,\n  Arrow,\n} from './Popover';\nexport type {\n  PopoverProps,\n  PopoverAnchorProps,\n  PopoverTriggerProps,\n  PopoverPortalProps,\n  PopoverContentProps,\n  PopoverCloseProps,\n  PopoverArrowProps,\n} from './Popover';\n","import * 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 { useFocusGuards } from '@radix-ui/react-focus-guards';\nimport { FocusScope } from '@radix-ui/react-focus-scope';\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 { Slot } from '@radix-ui/react-slot';\nimport { useControllableState } from '@radix-ui/react-use-controllable-state';\nimport { hideOthers } from 'aria-hidden';\nimport { RemoveScroll } from 'react-remove-scroll';\n\nimport type * as Radix from '@radix-ui/react-primitive';\nimport type { Scope } from '@radix-ui/react-context';\n\n/* -------------------------------------------------------------------------------------------------\n * Popover\n * -----------------------------------------------------------------------------------------------*/\n\nconst POPOVER_NAME = 'Popover';\n\ntype ScopedProps<P> = P & { __scopePopover?: Scope };\nconst [createPopoverContext, createPopoverScope] = createContextScope(POPOVER_NAME, [\n  createPopperScope,\n]);\nconst usePopperScope = createPopperScope();\n\ntype PopoverContextValue = {\n  triggerRef: React.RefObject<HTMLButtonElement>;\n  contentId: string;\n  open: boolean;\n  onOpenChange(open: boolean): void;\n  onOpenToggle(): void;\n  hasCustomAnchor: boolean;\n  onCustomAnchorAdd(): void;\n  onCustomAnchorRemove(): void;\n  modal: boolean;\n};\n\nconst [PopoverProvider, usePopoverContext] =\n  createPopoverContext<PopoverContextValue>(POPOVER_NAME);\n\ninterface PopoverProps {\n  children?: React.ReactNode;\n  open?: boolean;\n  defaultOpen?: boolean;\n  onOpenChange?: (open: boolean) => void;\n  modal?: boolean;\n}\n\nconst Popover: React.FC<PopoverProps> = (props: ScopedProps<PopoverProps>) => {\n  const {\n    __scopePopover,\n    children,\n    open: openProp,\n    defaultOpen,\n    onOpenChange,\n    modal = false,\n  } = props;\n  const popperScope = usePopperScope(__scopePopover);\n  const triggerRef = React.useRef<HTMLButtonElement>(null);\n  const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);\n  const [open = false, setOpen] = useControllableState({\n    prop: openProp,\n    defaultProp: defaultOpen,\n    onChange: onOpenChange,\n  });\n\n  return (\n    <PopperPrimitive.Root {...popperScope}>\n      <PopoverProvider\n        scope={__scopePopover}\n        contentId={useId()}\n        triggerRef={triggerRef}\n        open={open}\n        onOpenChange={setOpen}\n        onOpenToggle={React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen])}\n        hasCustomAnchor={hasCustomAnchor}\n        onCustomAnchorAdd={React.useCallback(() => setHasCustomAnchor(true), [])}\n        onCustomAnchorRemove={React.useCallback(() => setHasCustomAnchor(false), [])}\n        modal={modal}\n      >\n        {children}\n      </PopoverProvider>\n    </PopperPrimitive.Root>\n  );\n};\n\nPopover.displayName = POPOVER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * PopoverAnchor\n * -----------------------------------------------------------------------------------------------*/\n\nconst ANCHOR_NAME = 'PopoverAnchor';\n\ntype PopoverAnchorElement = React.ElementRef<typeof PopperPrimitive.Anchor>;\ntype PopperAnchorProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Anchor>;\ninterface PopoverAnchorProps extends PopperAnchorProps {}\n\nconst PopoverAnchor = React.forwardRef<PopoverAnchorElement, PopoverAnchorProps>(\n  (props: ScopedProps<PopoverAnchorProps>, forwardedRef) => {\n    const { __scopePopover, ...anchorProps } = props;\n    const context = usePopoverContext(ANCHOR_NAME, __scopePopover);\n    const popperScope = usePopperScope(__scopePopover);\n    const { onCustomAnchorAdd, onCustomAnchorRemove } = context;\n\n    React.useEffect(() => {\n      onCustomAnchorAdd();\n      return () => onCustomAnchorRemove();\n    }, [onCustomAnchorAdd, onCustomAnchorRemove]);\n\n    return <PopperPrimitive.Anchor {...popperScope} {...anchorProps} ref={forwardedRef} />;\n  }\n);\n\nPopoverAnchor.displayName = ANCHOR_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * PopoverTrigger\n * -----------------------------------------------------------------------------------------------*/\n\nconst TRIGGER_NAME = 'PopoverTrigger';\n\ntype PopoverTriggerElement = React.ElementRef<typeof Primitive.button>;\ntype PrimitiveButtonProps = Radix.ComponentPropsWithoutRef<typeof Primitive.button>;\ninterface PopoverTriggerProps extends PrimitiveButtonProps {}\n\nconst PopoverTrigger = React.forwardRef<PopoverTriggerElement, PopoverTriggerProps>(\n  (props: ScopedProps<PopoverTriggerProps>, forwardedRef) => {\n    const { __scopePopover, ...triggerProps } = props;\n    const context = usePopoverContext(TRIGGER_NAME, __scopePopover);\n    const popperScope = usePopperScope(__scopePopover);\n    const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n\n    const trigger = (\n      <Primitive.button\n        type=\"button\"\n        aria-haspopup=\"dialog\"\n        aria-expanded={context.open}\n        aria-controls={context.contentId}\n        data-state={getState(context.open)}\n        {...triggerProps}\n        ref={composedTriggerRef}\n        onClick={composeEventHandlers(props.onClick, context.onOpenToggle)}\n      />\n    );\n\n    return context.hasCustomAnchor ? (\n      trigger\n    ) : (\n      <PopperPrimitive.Anchor asChild {...popperScope}>\n        {trigger}\n      </PopperPrimitive.Anchor>\n    );\n  }\n);\n\nPopoverTrigger.displayName = TRIGGER_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * PopoverPortal\n * -----------------------------------------------------------------------------------------------*/\n\nconst PORTAL_NAME = 'PopoverPortal';\n\ntype PortalContextValue = { forceMount?: true };\nconst [PortalProvider, usePortalContext] = createPopoverContext<PortalContextValue>(PORTAL_NAME, {\n  forceMount: undefined,\n});\n\ntype PortalProps = React.ComponentPropsWithoutRef<typeof PortalPrimitive>;\ninterface PopoverPortalProps {\n  children?: React.ReactNode;\n  /**\n   * Specify a container element to portal the content into.\n   */\n  container?: PortalProps['container'];\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 PopoverPortal: React.FC<PopoverPortalProps> = (props: ScopedProps<PopoverPortalProps>) => {\n  const { __scopePopover, forceMount, children, container } = props;\n  const context = usePopoverContext(PORTAL_NAME, __scopePopover);\n  return (\n    <PortalProvider scope={__scopePopover} forceMount={forceMount}>\n      <Presence present={forceMount || context.open}>\n        <PortalPrimitive asChild container={container}>\n          {children}\n        </PortalPrimitive>\n      </Presence>\n    </PortalProvider>\n  );\n};\n\nPopoverPortal.displayName = PORTAL_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * PopoverContent\n * -----------------------------------------------------------------------------------------------*/\n\nconst CONTENT_NAME = 'PopoverContent';\n\ninterface PopoverContentProps extends PopoverContentTypeProps {\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 PopoverContent = React.forwardRef<PopoverContentTypeElement, PopoverContentProps>(\n  (props: ScopedProps<PopoverContentProps>, forwardedRef) => {\n    const portalContext = usePortalContext(CONTENT_NAME, props.__scopePopover);\n    const { forceMount = portalContext.forceMount, ...contentProps } = props;\n    const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n    return (\n      <Presence present={forceMount || context.open}>\n        {context.modal ? (\n          <PopoverContentModal {...contentProps} ref={forwardedRef} />\n        ) : (\n          <PopoverContentNonModal {...contentProps} ref={forwardedRef} />\n        )}\n      </Presence>\n    );\n  }\n);\n\nPopoverContent.displayName = CONTENT_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype PopoverContentTypeElement = PopoverContentImplElement;\ninterface PopoverContentTypeProps\n  extends Omit<PopoverContentImplProps, 'trapFocus' | 'disableOutsidePointerEvents'> {}\n\nconst PopoverContentModal = React.forwardRef<PopoverContentTypeElement, PopoverContentTypeProps>(\n  (props: ScopedProps<PopoverContentTypeProps>, forwardedRef) => {\n    const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n    const contentRef = React.useRef<HTMLDivElement>(null);\n    const composedRefs = useComposedRefs(forwardedRef, contentRef);\n    const isRightClickOutsideRef = React.useRef(false);\n\n    // aria-hide everything except the content (better supported equivalent to setting aria-modal)\n    React.useEffect(() => {\n      const content = contentRef.current;\n      if (content) return hideOthers(content);\n    }, []);\n\n    return (\n      <RemoveScroll as={Slot} allowPinchZoom>\n        <PopoverContentImpl\n          {...props}\n          ref={composedRefs}\n          // we make sure we're not trapping once it's been closed\n          // (closed !== unmounted when animating out)\n          trapFocus={context.open}\n          disableOutsidePointerEvents\n          onCloseAutoFocus={composeEventHandlers(props.onCloseAutoFocus, (event) => {\n            event.preventDefault();\n            if (!isRightClickOutsideRef.current) context.triggerRef.current?.focus();\n          })}\n          onPointerDownOutside={composeEventHandlers(\n            props.onPointerDownOutside,\n            (event) => {\n              const originalEvent = event.detail.originalEvent;\n              const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n              const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n\n              isRightClickOutsideRef.current = isRightClick;\n            },\n            { checkForDefaultPrevented: false }\n          )}\n          // When focus is trapped, a `focusout` event may still happen.\n          // We make sure we don't trigger our `onDismiss` in such case.\n          onFocusOutside={composeEventHandlers(\n            props.onFocusOutside,\n            (event) => event.preventDefault(),\n            { checkForDefaultPrevented: false }\n          )}\n        />\n      </RemoveScroll>\n    );\n  }\n);\n\nconst PopoverContentNonModal = React.forwardRef<PopoverContentTypeElement, PopoverContentTypeProps>(\n  (props: ScopedProps<PopoverContentTypeProps>, forwardedRef) => {\n    const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);\n    const hasInteractedOutsideRef = React.useRef(false);\n    const hasPointerDownOutsideRef = React.useRef(false);\n\n    return (\n      <PopoverContentImpl\n        {...props}\n        ref={forwardedRef}\n        trapFocus={false}\n        disableOutsidePointerEvents={false}\n        onCloseAutoFocus={(event) => {\n          props.onCloseAutoFocus?.(event);\n\n          if (!event.defaultPrevented) {\n            if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n            // Always prevent auto focus because we either focus manually or want user agent focus\n            event.preventDefault();\n          }\n\n          hasInteractedOutsideRef.current = false;\n          hasPointerDownOutsideRef.current = false;\n        }}\n        onInteractOutside={(event) => {\n          props.onInteractOutside?.(event);\n\n          if (!event.defaultPrevented) {\n            hasInteractedOutsideRef.current = true;\n            if (event.detail.originalEvent.type === 'pointerdown') {\n              hasPointerDownOutsideRef.current = true;\n            }\n          }\n\n          // Prevent dismissing when clicking the trigger.\n          // As the trigger is already setup to close, without doing so would\n          // cause it to close and immediately open.\n          const target = event.target as HTMLElement;\n          const targetIsTrigger = context.triggerRef.current?.contains(target);\n          if (targetIsTrigger) event.preventDefault();\n\n          // On Safari if the trigger is inside a container with tabIndex={0}, when clicked\n          // we will get the pointer down outside event on the trigger, but then a subsequent\n          // focus outside event on the container, we ignore any focus outside event when we've\n          // already had a pointer down outside event.\n          if (event.detail.originalEvent.type === 'focusin' && hasPointerDownOutsideRef.current) {\n            event.preventDefault();\n          }\n        }}\n      />\n    );\n  }\n);\n\n/* -----------------------------------------------------------------------------------------------*/\n\ntype PopoverContentImplElement = React.ElementRef<typeof PopperPrimitive.Content>;\ntype FocusScopeProps = Radix.ComponentPropsWithoutRef<typeof FocusScope>;\ntype DismissableLayerProps = Radix.ComponentPropsWithoutRef<typeof DismissableLayer>;\ntype PopperContentProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Content>;\ninterface PopoverContentImplProps\n  extends Omit<PopperContentProps, 'onPlaced'>,\n    Omit<DismissableLayerProps, 'onDismiss'> {\n  /**\n   * Whether focus should be trapped within the `Popover`\n   * (default: false)\n   */\n  trapFocus?: FocusScopeProps['trapped'];\n\n  /**\n   * Event handler called when auto-focusing on open.\n   * Can be prevented.\n   */\n  onOpenAutoFocus?: FocusScopeProps['onMountAutoFocus'];\n\n  /**\n   * Event handler called when auto-focusing on close.\n   * Can be prevented.\n   */\n  onCloseAutoFocus?: FocusScopeProps['onUnmountAutoFocus'];\n}\n\nconst PopoverContentImpl = React.forwardRef<PopoverContentImplElement, PopoverContentImplProps>(\n  (props: ScopedProps<PopoverContentImplProps>, forwardedRef) => {\n    const {\n      __scopePopover,\n      trapFocus,\n      onOpenAutoFocus,\n      onCloseAutoFocus,\n      disableOutsidePointerEvents,\n      onEscapeKeyDown,\n      onPointerDownOutside,\n      onFocusOutside,\n      onInteractOutside,\n      ...contentProps\n    } = props;\n    const context = usePopoverContext(CONTENT_NAME, __scopePopover);\n    const popperScope = usePopperScope(__scopePopover);\n\n    // Make sure the whole tree has focus guards as our `Popover` may be\n    // the last element in the DOM (beacuse of the `Portal`)\n    useFocusGuards();\n\n    return (\n      <FocusScope\n        asChild\n        loop\n        trapped={trapFocus}\n        onMountAutoFocus={onOpenAutoFocus}\n        onUnmountAutoFocus={onCloseAutoFocus}\n      >\n        <DismissableLayer\n          asChild\n          disableOutsidePointerEvents={disableOutsidePointerEvents}\n          onInteractOutside={onInteractOutside}\n          onEscapeKeyDown={onEscapeKeyDown}\n          onPointerDownOutside={onPointerDownOutside}\n          onFocusOutside={onFocusOutside}\n          onDismiss={() => context.onOpenChange(false)}\n        >\n          <PopperPrimitive.Content\n            data-state={getState(context.open)}\n            role=\"dialog\"\n            id={context.contentId}\n            {...popperScope}\n            {...contentProps}\n            ref={forwardedRef}\n            style={{\n              ...contentProps.style,\n              // re-namespace exposed content custom properties\n              ...{\n                '--radix-popover-content-transform-origin': 'var(--radix-popper-transform-origin)',\n                '--radix-popover-content-available-width': 'var(--radix-popper-available-width)',\n                '--radix-popover-content-available-height': 'var(--radix-popper-available-height)',\n                '--radix-popover-trigger-width': 'var(--radix-popper-anchor-width)',\n                '--radix-popover-trigger-height': 'var(--radix-popper-anchor-height)',\n              },\n            }}\n          />\n        </DismissableLayer>\n      </FocusScope>\n    );\n  }\n);\n\n/* -------------------------------------------------------------------------------------------------\n * PopoverClose\n * -----------------------------------------------------------------------------------------------*/\n\nconst CLOSE_NAME = 'PopoverClose';\n\ntype PopoverCloseElement = React.ElementRef<typeof Primitive.button>;\ninterface PopoverCloseProps extends PrimitiveButtonProps {}\n\nconst PopoverClose = React.forwardRef<PopoverCloseElement, PopoverCloseProps>(\n  (props: ScopedProps<PopoverCloseProps>, forwardedRef) => {\n    const { __scopePopover, ...closeProps } = props;\n    const context = usePopoverContext(CLOSE_NAME, __scopePopover);\n    return (\n      <Primitive.button\n        type=\"button\"\n        {...closeProps}\n        ref={forwardedRef}\n        onClick={composeEventHandlers(props.onClick, () => context.onOpenChange(false))}\n      />\n    );\n  }\n);\n\nPopoverClose.displayName = CLOSE_NAME;\n\n/* -------------------------------------------------------------------------------------------------\n * PopoverArrow\n * -----------------------------------------------------------------------------------------------*/\n\nconst ARROW_NAME = 'PopoverArrow';\n\ntype PopoverArrowElement = React.ElementRef<typeof PopperPrimitive.Arrow>;\ntype PopperArrowProps = Radix.ComponentPropsWithoutRef<typeof PopperPrimitive.Arrow>;\ninterface PopoverArrowProps extends PopperArrowProps {}\n\nconst PopoverArrow = React.forwardRef<PopoverArrowElement, PopoverArrowProps>(\n  (props: ScopedProps<PopoverArrowProps>, forwardedRef) => {\n    const { __scopePopover, ...arrowProps } = props;\n    const popperScope = usePopperScope(__scopePopover);\n    return <PopperPrimitive.Arrow {...popperScope} {...arrowProps} ref={forwardedRef} />;\n  }\n);\n\nPopoverArrow.displayName = ARROW_NAME;\n\n/* -----------------------------------------------------------------------------------------------*/\n\nfunction getState(open: boolean) {\n  return open ? 'open' : 'closed';\n}\n\nconst Root = Popover;\nconst Anchor = PopoverAnchor;\nconst Trigger = PopoverTrigger;\nconst Portal = PopoverPortal;\nconst Content = PopoverContent;\nconst Close = PopoverClose;\nconst Arrow = PopoverArrow;\n\nexport {\n  createPopoverScope,\n  //\n  Popover,\n  PopoverAnchor,\n  PopoverTrigger,\n  PopoverPortal,\n  PopoverContent,\n  PopoverClose,\n  PopoverArrow,\n  //\n  Root,\n  Anchor,\n  Trigger,\n  Portal,\n  Content,\n  Close,\n  Arrow,\n};\nexport type {\n  PopoverProps,\n  PopoverAnchorProps,\n  PopoverTriggerProps,\n  PopoverPortalProps,\n  PopoverContentProps,\n  PopoverCloseProps,\n  PopoverArrowProps,\n};\n"],"names":["createPopoverScope","Popover","PopoverAnchor","PopoverTrigger","PopoverPortal","PopoverContent","PopoverClose","PopoverArrow","Root","Anchor","Trigger","Portal","Content","Close","Arrow","React","composeEventHandlers","useComposedRefs","createContextScope","DismissableLayer","useFocusGuards","FocusScope","useId","PopperPrimitive","createPopperScope","PortalPrimitive","Presence","Primitive","Slot","useControllableState","hideOthers","RemoveScroll","POPOVER_NAME","createPopoverContext","usePopperScope","PopoverProvider","usePopoverContext","props","__scopePopover","children","open","openProp","defaultOpen","onOpenChange","modal","popperScope","triggerRef","useRef","hasCustomAnchor","setHasCustomAnchor","useState","setOpen","prop","defaultProp","onChange","useCallback","prevOpen","ANCHOR_NAME","forwardRef","forwardedRef","anchorProps","context","onCustomAnchorAdd","onCustomAnchorRemove","useEffect","TRIGGER_NAME","triggerProps","composedTriggerRef","trigger","contentId","getState","onClick","onOpenToggle","PORTAL_NAME","PortalProvider","usePortalContext","forceMount","undefined","container","CONTENT_NAME","portalContext","contentProps","PopoverContentModal","contentRef","composedRefs","isRightClickOutsideRef","content","current","onCloseAutoFocus","event","preventDefault","focus","onPointerDownOutside","originalEvent","detail","ctrlLeftClick","button","ctrlKey","isRightClick","checkForDefaultPrevented","onFocusOutside","PopoverContentNonModal","hasInteractedOutsideRef","hasPointerDownOutsideRef","defaultPrevented","onInteractOutside","type","target","targetIsTrigger","contains","PopoverContentImpl","trapFocus","onOpenAutoFocus","disableOutsidePointerEvents","onEscapeKeyDown","style","CLOSE_NAME","closeProps","ARROW_NAME","arrowProps"],"version":3,"file":"index.mjs.map"}