UNPKG

ivt

Version:

Ivt Components Library

1 lines 21.2 kB
{"version":3,"file":"index-D1EuiH1M.mjs","sources":["../../node_modules/@radix-ui/react-dialog/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/dialog.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContext, createContextScope } from \"@radix-ui/react-context\";\nimport { useId } from \"@radix-ui/react-id\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { hideOthers } from \"aria-hidden\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar DIALOG_NAME = \"Dialog\";\nvar [createDialogContext, createDialogScope] = createContextScope(DIALOG_NAME);\nvar [DialogProvider, useDialogContext] = createDialogContext(DIALOG_NAME);\nvar Dialog = (props) => {\n const {\n __scopeDialog,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n modal = true\n } = props;\n const triggerRef = React.useRef(null);\n const contentRef = React.useRef(null);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: DIALOG_NAME\n });\n return /* @__PURE__ */ jsx(\n DialogProvider,\n {\n scope: __scopeDialog,\n triggerRef,\n contentRef,\n contentId: useId(),\n titleId: useId(),\n descriptionId: useId(),\n open,\n onOpenChange: setOpen,\n onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),\n modal,\n children\n }\n );\n};\nDialog.displayName = DIALOG_NAME;\nvar TRIGGER_NAME = \"DialogTrigger\";\nvar DialogTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...triggerProps } = props;\n const context = useDialogContext(TRIGGER_NAME, __scopeDialog);\n const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": context.open,\n \"aria-controls\": context.contentId,\n \"data-state\": getState(context.open),\n ...triggerProps,\n ref: composedTriggerRef,\n onClick: composeEventHandlers(props.onClick, context.onOpenToggle)\n }\n );\n }\n);\nDialogTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"DialogPortal\";\nvar [PortalProvider, usePortalContext] = createDialogContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar DialogPortal = (props) => {\n const { __scopeDialog, forceMount, children, container } = props;\n const context = useDialogContext(PORTAL_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeDialog, forceMount, children: React.Children.map(children, (child) => /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children: child }) })) });\n};\nDialogPortal.displayName = PORTAL_NAME;\nvar OVERLAY_NAME = \"DialogOverlay\";\nvar DialogOverlay = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(OVERLAY_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, props.__scopeDialog);\n return context.modal ? /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(DialogOverlayImpl, { ...overlayProps, ref: forwardedRef }) }) : null;\n }\n);\nDialogOverlay.displayName = OVERLAY_NAME;\nvar Slot = createSlot(\"DialogOverlay.RemoveScroll\");\nvar DialogOverlayImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...overlayProps } = props;\n const context = useDialogContext(OVERLAY_NAME, __scopeDialog);\n return (\n // Make sure `Content` is scrollable even when it doesn't live inside `RemoveScroll`\n // ie. when `Overlay` and `Content` are siblings\n /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, shards: [context.contentRef], children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": getState(context.open),\n ...overlayProps,\n ref: forwardedRef,\n style: { pointerEvents: \"auto\", ...overlayProps.style }\n }\n ) })\n );\n }\n);\nvar CONTENT_NAME = \"DialogContent\";\nvar DialogContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeDialog);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(DialogContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(DialogContentNonModal, { ...contentProps, ref: forwardedRef }) });\n }\n);\nDialogContent.displayName = CONTENT_NAME;\nvar DialogContentModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, context.contentRef, contentRef);\n React.useEffect(() => {\n const content = contentRef.current;\n if (content) return hideOthers(content);\n }, []);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: composedRefs,\n trapFocus: context.open,\n disableOutsidePointerEvents: true,\n onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {\n event.preventDefault();\n context.triggerRef.current?.focus();\n }),\n onPointerDownOutside: composeEventHandlers(props.onPointerDownOutside, (event) => {\n const originalEvent = event.detail.originalEvent;\n const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;\n const isRightClick = originalEvent.button === 2 || ctrlLeftClick;\n if (isRightClick) event.preventDefault();\n }),\n onFocusOutside: composeEventHandlers(\n props.onFocusOutside,\n (event) => event.preventDefault()\n )\n }\n );\n }\n);\nvar DialogContentNonModal = React.forwardRef(\n (props, forwardedRef) => {\n const context = useDialogContext(CONTENT_NAME, props.__scopeDialog);\n const hasInteractedOutsideRef = React.useRef(false);\n const hasPointerDownOutsideRef = React.useRef(false);\n return /* @__PURE__ */ jsx(\n DialogContentImpl,\n {\n ...props,\n ref: forwardedRef,\n trapFocus: false,\n disableOutsidePointerEvents: false,\n onCloseAutoFocus: (event) => {\n props.onCloseAutoFocus?.(event);\n if (!event.defaultPrevented) {\n if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();\n event.preventDefault();\n }\n hasInteractedOutsideRef.current = false;\n hasPointerDownOutsideRef.current = false;\n },\n onInteractOutside: (event) => {\n props.onInteractOutside?.(event);\n if (!event.defaultPrevented) {\n hasInteractedOutsideRef.current = true;\n if (event.detail.originalEvent.type === \"pointerdown\") {\n hasPointerDownOutsideRef.current = true;\n }\n }\n const target = event.target;\n const targetIsTrigger = context.triggerRef.current?.contains(target);\n if (targetIsTrigger) event.preventDefault();\n if (event.detail.originalEvent.type === \"focusin\" && hasPointerDownOutsideRef.current) {\n event.preventDefault();\n }\n }\n }\n );\n }\n);\nvar DialogContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, trapFocus, onOpenAutoFocus, onCloseAutoFocus, ...contentProps } = props;\n const context = useDialogContext(CONTENT_NAME, __scopeDialog);\n const contentRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, contentRef);\n useFocusGuards();\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n loop: true,\n trapped: trapFocus,\n onMountAutoFocus: onOpenAutoFocus,\n onUnmountAutoFocus: onCloseAutoFocus,\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n role: \"dialog\",\n id: context.contentId,\n \"aria-describedby\": context.descriptionId,\n \"aria-labelledby\": context.titleId,\n \"data-state\": getState(context.open),\n ...contentProps,\n ref: composedRefs,\n onDismiss: () => context.onOpenChange(false)\n }\n )\n }\n ),\n /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(TitleWarning, { titleId: context.titleId }),\n /* @__PURE__ */ jsx(DescriptionWarning, { contentRef, descriptionId: context.descriptionId })\n ] })\n ] });\n }\n);\nvar TITLE_NAME = \"DialogTitle\";\nvar DialogTitle = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...titleProps } = props;\n const context = useDialogContext(TITLE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.h2, { id: context.titleId, ...titleProps, ref: forwardedRef });\n }\n);\nDialogTitle.displayName = TITLE_NAME;\nvar DESCRIPTION_NAME = \"DialogDescription\";\nvar DialogDescription = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...descriptionProps } = props;\n const context = useDialogContext(DESCRIPTION_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(Primitive.p, { id: context.descriptionId, ...descriptionProps, ref: forwardedRef });\n }\n);\nDialogDescription.displayName = DESCRIPTION_NAME;\nvar CLOSE_NAME = \"DialogClose\";\nvar DialogClose = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeDialog, ...closeProps } = props;\n const context = useDialogContext(CLOSE_NAME, __scopeDialog);\n return /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n ...closeProps,\n ref: forwardedRef,\n onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))\n }\n );\n }\n);\nDialogClose.displayName = CLOSE_NAME;\nfunction getState(open) {\n return open ? \"open\" : \"closed\";\n}\nvar TITLE_WARNING_NAME = \"DialogTitleWarning\";\nvar [WarningProvider, useWarningContext] = createContext(TITLE_WARNING_NAME, {\n contentName: CONTENT_NAME,\n titleName: TITLE_NAME,\n docsSlug: \"dialog\"\n});\nvar TitleWarning = ({ titleId }) => {\n const titleWarningContext = useWarningContext(TITLE_WARNING_NAME);\n const MESSAGE = `\\`${titleWarningContext.contentName}\\` requires a \\`${titleWarningContext.titleName}\\` for the component to be accessible for screen reader users.\n\nIf you want to hide the \\`${titleWarningContext.titleName}\\`, you can wrap it with our VisuallyHidden component.\n\nFor more information, see https://radix-ui.com/primitives/docs/components/${titleWarningContext.docsSlug}`;\n React.useEffect(() => {\n if (titleId) {\n const hasTitle = document.getElementById(titleId);\n if (!hasTitle) console.error(MESSAGE);\n }\n }, [MESSAGE, titleId]);\n return null;\n};\nvar DESCRIPTION_WARNING_NAME = \"DialogDescriptionWarning\";\nvar DescriptionWarning = ({ contentRef, descriptionId }) => {\n const descriptionWarningContext = useWarningContext(DESCRIPTION_WARNING_NAME);\n const MESSAGE = `Warning: Missing \\`Description\\` or \\`aria-describedby={undefined}\\` for {${descriptionWarningContext.contentName}}.`;\n React.useEffect(() => {\n const describedById = contentRef.current?.getAttribute(\"aria-describedby\");\n if (descriptionId && describedById) {\n const hasDescription = document.getElementById(descriptionId);\n if (!hasDescription) console.warn(MESSAGE);\n }\n }, [MESSAGE, contentRef, descriptionId]);\n return null;\n};\nvar Root = Dialog;\nvar Trigger = DialogTrigger;\nvar Portal = DialogPortal;\nvar Overlay = DialogOverlay;\nvar Content = DialogContent;\nvar Title = DialogTitle;\nvar Description = DialogDescription;\nvar Close = DialogClose;\nexport {\n Close,\n Content,\n Description,\n Dialog,\n DialogClose,\n DialogContent,\n DialogDescription,\n DialogOverlay,\n DialogPortal,\n DialogTitle,\n DialogTrigger,\n Overlay,\n Portal,\n Root,\n Title,\n Trigger,\n WarningProvider,\n createDialogScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["DIALOG_NAME","createDialogContext","createDialogScope","createContextScope","DialogProvider","useDialogContext","Dialog","props","__scopeDialog","children","open","openProp","defaultOpen","onOpenChange","modal","triggerRef","React","useRef","contentRef","setOpen","useControllableState","prop","defaultProp","onChange","caller","jsx","scope","contentId","useId","titleId","descriptionId","onOpenToggle","useCallback","prevOpen","displayName","TRIGGER_NAME","DialogTrigger","forwardRef","forwardedRef","triggerProps","context","composedTriggerRef","useComposedRefs","Primitive","button","type","getState","ref","onClick","composeEventHandlers","PORTAL_NAME","PortalProvider","usePortalContext","forceMount","DialogPortal","container","Children","map","child","Presence","present","PortalPrimitive","asChild","OVERLAY_NAME","DialogOverlay","portalContext","overlayProps","DialogOverlayImpl","Slot","createSlot","RemoveScroll","as","allowPinchZoom","shards","div","style","pointerEvents","CONTENT_NAME","DialogContent","contentProps","DialogContentModal","DialogContentNonModal","composedRefs","useEffect","content","current","hideOthers","DialogContentImpl","trapFocus","disableOutsidePointerEvents","onCloseAutoFocus","event","preventDefault","focus","onPointerDownOutside","originalEvent","detail","ctrlLeftClick","ctrlKey","onFocusOutside","hasInteractedOutsideRef","hasPointerDownOutsideRef","defaultPrevented","onInteractOutside","target","targetIsTrigger","contains","onOpenAutoFocus","useFocusGuards","jsxs","Fragment","FocusScope","loop","trapped","onMountAutoFocus","onUnmountAutoFocus","DismissableLayer","role","id","onDismiss","TitleWarning","DescriptionWarning","TITLE_NAME","DialogTitle","titleProps","h2","DESCRIPTION_NAME","DialogDescription","descriptionProps","p","CLOSE_NAME","DialogClose","closeProps","TITLE_WARNING_NAME","WarningProvider","useWarningContext","createContext","contentName","titleName","docsSlug","titleWarningContext","MESSAGE","document","getElementById","describedById","getAttribute","Root","Trigger","Portal","Overlay","Content","Title","Description","Close"],"mappings":"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","x_google_ignoreList":[0]}