'use strict';

var jsxRuntime = require('../../node_modules/.pnpm/react@18.2.0/node_modules/react/jsx-runtime.cjs');
var index = require('../../node_modules/.pnpm/@radix-ui_react-dialog@1.0.4_@types_react-dom@18.0.11_@types_react@18.2.12_react-dom@18.3.1_react@18.2.0__react@18.2.0/node_modules/@radix-ui/react-dialog/dist/index.cjs');
var reactIcons_esm = require('../../node_modules/.pnpm/@radix-ui_react-icons@1.3.0_react@18.2.0/node_modules/@radix-ui/react-icons/dist/react-icons.esm.cjs');
var index$1 = require('../../node_modules/.pnpm/class-variance-authority@0.7.1/node_modules/class-variance-authority/dist/index.cjs');
var clsx = require('../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.cjs');
var React = require('react');
var flex = require('../flex/flex.cjs');
var dialog_module = require('./dialog.module.css.cjs');

const dialogContent = index$1.cva(dialog_module.default.dialogContent);
const DialogContent = React.forwardRef(({ className, children, ariaLabel, ariaDescription, overlayBlur = false, overlayClassName, overlayStyle, width, ...props }, ref) => (jsxRuntime.jsxRuntimeExports.jsxs(index.Portal, { children: [jsxRuntime.jsxRuntimeExports.jsx(index.Overlay, { className: clsx.clsx(dialog_module.default.dialogOverlay, overlayClassName, overlayBlur && dialog_module.default.overlayBlur), style: overlayStyle, "aria-hidden": "true", role: "presentation" }), jsxRuntime.jsxRuntimeExports.jsx(index.Content, { ref: ref, className: dialogContent({ className }), style: { width, ...props.style }, "aria-label": ariaLabel, "aria-describedby": ariaDescription ? "dialog-description" : undefined, ...props, children: children })] })));
DialogContent.displayName = index.Content.displayName;
const DialogHeader = ({ children, className, }) => (jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { justify: "between", align: "center", className: clsx.clsx(dialog_module.default.header, className), children: children }));
const DialogFooter = ({ children, className, }) => (jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { gap: 5, justify: "end", className: clsx.clsx(dialog_module.default.footer, className), children: children }));
const DialogBody = ({ children, className, }) => (jsxRuntime.jsxRuntimeExports.jsx(flex.Flex, { direction: "column", gap: 3, className: clsx.clsx(dialog_module.default.body, className), children: children }));
function CloseButton({ className, ...props }) {
    return (jsxRuntime.jsxRuntimeExports.jsxs(index.Close, { className: clsx.clsx(dialog_module.default.close, className), "aria-label": "Close dialog", ...props, children: [jsxRuntime.jsxRuntimeExports.jsx(reactIcons_esm.Cross1Icon, {}), ","] }));
}
function DialogTitle({ children, className, ...props }) {
    return (jsxRuntime.jsxRuntimeExports.jsx(index.Title, { ...props, role: "heading", "aria-level": 1, className: clsx.clsx(dialog_module.default.title, className), children: children }));
}
function DialogDescription({ children, className, ...props }) {
    return (jsxRuntime.jsxRuntimeExports.jsx(index.Description, { ...props, className: clsx.clsx(dialog_module.default.description, className), id: "dialog-description", role: "document", children: children }));
}
const Dialog = Object.assign(index.Root, {
    Trigger: index.Trigger,
    Content: DialogContent,
    Header: DialogHeader,
    Footer: DialogFooter,
    Body: DialogBody,
    Close: index.Close,
    CloseButton: CloseButton,
    Title: DialogTitle,
    Description: DialogDescription,
});

exports.CloseButton = CloseButton;
exports.Dialog = Dialog;
//# sourceMappingURL=dialog.cjs.map
