@ultraviolet/ui 1.61.1 → 1.62.0

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.
Files changed (32) hide show
  1. package/dist/components/Modal/ModalContent.cjs +53 -0
  2. package/dist/components/Modal/ModalContent.d.ts +17 -0
  3. package/dist/components/Modal/ModalContent.js +51 -0
  4. package/dist/components/Modal/ModalProvider.cjs +40 -0
  5. package/dist/components/Modal/ModalProvider.d.ts +14 -0
  6. package/dist/components/Modal/ModalProvider.js +40 -0
  7. package/dist/components/Modal/components/Dialog.cjs +162 -0
  8. package/dist/components/Modal/components/Dialog.d.ts +13 -0
  9. package/dist/components/Modal/components/Dialog.js +160 -0
  10. package/dist/components/Modal/{Disclosure.d.ts → components/Disclosure.d.ts} +1 -1
  11. package/dist/components/Modal/index.cjs +5 -29
  12. package/dist/components/Modal/index.js +6 -28
  13. package/dist/components/Slider/components/DoubleSlider.cjs +30 -23
  14. package/dist/components/Slider/components/DoubleSlider.js +30 -23
  15. package/dist/components/Slider/components/Options.cjs +28 -5
  16. package/dist/components/Slider/components/Options.d.ts +11 -0
  17. package/dist/components/Slider/components/Options.js +25 -4
  18. package/dist/components/Slider/components/SingleSlider.cjs +14 -11
  19. package/dist/components/Slider/components/SingleSlider.js +14 -11
  20. package/dist/components/Slider/styles.cjs +11 -29
  21. package/dist/components/Slider/styles.d.ts +1 -12
  22. package/dist/components/Slider/styles.js +11 -29
  23. package/dist/components/TextArea/index.cjs +5 -5
  24. package/dist/components/TextArea/index.js +5 -5
  25. package/dist/components/UnitInput/index.cjs +5 -5
  26. package/dist/components/UnitInput/index.js +5 -5
  27. package/package.json +4 -4
  28. package/dist/components/Modal/Dialog.cjs +0 -144
  29. package/dist/components/Modal/Dialog.d.ts +0 -11
  30. package/dist/components/Modal/Dialog.js +0 -142
  31. /package/dist/components/Modal/{Disclosure.cjs → components/Disclosure.cjs} +0 -0
  32. /package/dist/components/Modal/{Disclosure.js → components/Disclosure.js} +0 -0
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@emotion/react/jsx-runtime");
4
+ const _styled = require("@emotion/styled/base");
5
+ const index = require("../Button/index.cjs");
6
+ const Dialog = require("./components/Dialog.cjs");
7
+ const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
8
+ const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
9
+ const StyledContainer = /* @__PURE__ */ _styled__default.default("div", process.env.NODE_ENV === "production" ? {
10
+ target: "e14rmpyf0"
11
+ } : {
12
+ target: "e14rmpyf0",
13
+ label: "StyledContainer"
14
+ })("position:absolute;top:", ({
15
+ theme
16
+ }) => theme.space["2"], ";right:", ({
17
+ theme
18
+ }) => theme.space["2"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL01vZGFsL01vZGFsQ29udGVudC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT2tDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL01vZGFsL01vZGFsQ29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uL0J1dHRvbidcbmltcG9ydCB7IERpYWxvZyB9IGZyb20gJy4vY29tcG9uZW50cy9EaWFsb2cnXG5pbXBvcnQgdHlwZSB7IE1vZGFsUGxhY2VtZW50LCBNb2RhbFNpemUgfSBmcm9tICcuL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBNb2RhbCB9IGZyb20gJy4nXG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycyJ119O1xuICByaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMiddfTtcbmBcblxudHlwZSBNb2RhbENvbnRlbnRQcm9wcyA9IENvbXBvbmVudFByb3BzPHR5cGVvZiBNb2RhbD4gJiB7XG4gIHZpc2libGU6IGJvb2xlYW5cbiAgb3BlbjogYm9vbGVhblxuICBvcGVuZWQ6IGJvb2xlYW5cbiAgcGxhY2VtZW50OiBNb2RhbFBsYWNlbWVudFxuICBmaW5hbFNpemU6IE1vZGFsU2l6ZVxuICBmaW5hbElkOiBzdHJpbmdcbiAgaGFuZGxlT3BlbjogKCkgPT4gdm9pZFxuICBoYW5kbGVUb2dnbGU6ICgpID0+IHZvaWRcbiAgaGFuZGxlQ2xvc2U6ICgpID0+IHZvaWRcbiAgZGF0YVRlc3RJZD86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgTW9kYWxDb250ZW50ID0gKHtcbiAgdmlzaWJsZSxcbiAgb3BlbixcbiAgb3BlbmVkLFxuICBwbGFjZW1lbnQsXG4gIGZpbmFsU2l6ZSxcbiAgYXJpYUxhYmVsLFxuICBoaWRlT25DbGlja091dHNpZGUsXG4gIGhpZGVPbkVzYyxcbiAgcHJldmVudEJvZHlTY3JvbGwsXG4gIGhhbmRsZUNsb3NlLFxuICBjbGFzc05hbWUsXG4gIGJhY2tkcm9wQ2xhc3NOYW1lLFxuICBkYXRhVGVzdElkLFxuICBjdXN0b21EaWFsb2dTdHlsZXMsXG4gIGN1c3RvbURpYWxvZ0JhY2tkcm9wU3R5bGVzLFxuICBpc0Nsb3NhYmxlLFxuICBjaGlsZHJlbixcbiAgaGFuZGxlT3BlbixcbiAgaGFuZGxlVG9nZ2xlLFxuICBmaW5hbElkLFxufTogTW9kYWxDb250ZW50UHJvcHMpID0+XG4gIHZpc2libGUgfHwgb3BlbiB8fCBvcGVuZWQgPyAoXG4gICAgPERpYWxvZ1xuICAgICAgb3Blbj17dmlzaWJsZSB8fCBvcGVuIHx8IG9wZW5lZH1cbiAgICAgIHBsYWNlbWVudD17cGxhY2VtZW50fVxuICAgICAgc2l6ZT17ZmluYWxTaXplfVxuICAgICAgYXJpYUxhYmVsPXthcmlhTGFiZWx9XG4gICAgICBoaWRlT25DbGlja091dHNpZGU9e2hpZGVPbkNsaWNrT3V0c2lkZX1cbiAgICAgIGhpZGVPbkVzYz17aGlkZU9uRXNjfVxuICAgICAgcHJldmVudEJvZHlTY3JvbGw9e3ByZXZlbnRCb2R5U2Nyb2xsfVxuICAgICAgb25DbG9zZT17aGFuZGxlQ2xvc2V9XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIGJhY2tkcm9wQ2xhc3NOYW1lPXtiYWNrZHJvcENsYXNzTmFtZX1cbiAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgaWQ9e2ZpbmFsSWR9XG4gICAgICBkaWFsb2dDc3M9e2N1c3RvbURpYWxvZ1N0eWxlc31cbiAgICAgIGJhY2tkcm9wQ3NzPXtjdXN0b21EaWFsb2dCYWNrZHJvcFN0eWxlc31cbiAgICA+XG4gICAgICA8PlxuICAgICAgICB7dHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgPyBjaGlsZHJlbih7XG4gICAgICAgICAgICAgIHZpc2libGUsXG4gICAgICAgICAgICAgIG9uQ2xvc2U6IGhhbmRsZUNsb3NlLFxuICAgICAgICAgICAgICBvbk9wZW46IGhhbmRsZU9wZW4sXG4gICAgICAgICAgICAgIHRvZ2dsZTogaGFuZGxlVG9nZ2xlLFxuICAgICAgICAgICAgICBtb2RhbElkOiBmaW5hbElkLFxuICAgICAgICAgICAgICBoaWRlOiBoYW5kbGVDbG9zZSxcbiAgICAgICAgICAgICAgY2xvc2U6IGhhbmRsZUNsb3NlLFxuICAgICAgICAgICAgICBzaG93OiBoYW5kbGVPcGVuLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICA6IGNoaWxkcmVufVxuICAgICAgICA8U3R5bGVkQ29udGFpbmVyPlxuICAgICAgICAgIHtpc0Nsb3NhYmxlID8gKFxuICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LWNsb3NlLWJ1dHRvbmAgOiB1bmRlZmluZWRcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgaWNvbj1cImNsb3NlXCJcbiAgICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJjbG9zZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvPlxuICAgIDwvRGlhbG9nPlxuICApIDogbnVsbFxuIl19 */"));
19
+ const ModalContent = ({
20
+ visible,
21
+ open,
22
+ opened,
23
+ placement,
24
+ finalSize,
25
+ ariaLabel,
26
+ hideOnClickOutside,
27
+ hideOnEsc,
28
+ preventBodyScroll,
29
+ handleClose,
30
+ className,
31
+ backdropClassName,
32
+ dataTestId,
33
+ customDialogStyles,
34
+ customDialogBackdropStyles,
35
+ isClosable,
36
+ children,
37
+ handleOpen,
38
+ handleToggle,
39
+ finalId
40
+ }) => visible || open || opened ? /* @__PURE__ */ jsxRuntime.jsx(Dialog.Dialog, { open: visible || open || opened, placement, size: finalSize, ariaLabel, hideOnClickOutside, hideOnEsc, preventBodyScroll, onClose: handleClose, className, backdropClassName, "data-testid": dataTestId, id: finalId, dialogCss: customDialogStyles, backdropCss: customDialogBackdropStyles, children: /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
41
+ typeof children === "function" ? children({
42
+ visible,
43
+ onClose: handleClose,
44
+ onOpen: handleOpen,
45
+ toggle: handleToggle,
46
+ modalId: finalId,
47
+ hide: handleClose,
48
+ close: handleClose,
49
+ show: handleOpen
50
+ }) : children,
51
+ /* @__PURE__ */ jsxRuntime.jsx(StyledContainer, { children: isClosable ? /* @__PURE__ */ jsxRuntime.jsx(index.Button, { "data-testid": dataTestId ? `${dataTestId}-close-button` : void 0, onClick: handleClose, variant: "ghost", size: "small", icon: "close", sentiment: "neutral", "aria-label": "close" }) : null })
52
+ ] }) }) : null;
53
+ exports.ModalContent = ModalContent;
@@ -0,0 +1,17 @@
1
+ import type { ComponentProps } from 'react';
2
+ import type { ModalPlacement, ModalSize } from './types';
3
+ import type { Modal } from '.';
4
+ type ModalContentProps = ComponentProps<typeof Modal> & {
5
+ visible: boolean;
6
+ open: boolean;
7
+ opened: boolean;
8
+ placement: ModalPlacement;
9
+ finalSize: ModalSize;
10
+ finalId: string;
11
+ handleOpen: () => void;
12
+ handleToggle: () => void;
13
+ handleClose: () => void;
14
+ dataTestId?: string;
15
+ };
16
+ export declare const ModalContent: ({ visible, open, opened, placement, finalSize, ariaLabel, hideOnClickOutside, hideOnEsc, preventBodyScroll, handleClose, className, backdropClassName, dataTestId, customDialogStyles, customDialogBackdropStyles, isClosable, children, handleOpen, handleToggle, finalId, }: ModalContentProps) => import("@emotion/react/jsx-runtime").JSX.Element | null;
17
+ export {};
@@ -0,0 +1,51 @@
1
+ import { jsx, jsxs, Fragment } from "@emotion/react/jsx-runtime";
2
+ import _styled from "@emotion/styled/base";
3
+ import { Button } from "../Button/index.js";
4
+ import { Dialog } from "./components/Dialog.js";
5
+ const StyledContainer = /* @__PURE__ */ _styled("div", process.env.NODE_ENV === "production" ? {
6
+ target: "e14rmpyf0"
7
+ } : {
8
+ target: "e14rmpyf0",
9
+ label: "StyledContainer"
10
+ })("position:absolute;top:", ({
11
+ theme
12
+ }) => theme.space["2"], ";right:", ({
13
+ theme
14
+ }) => theme.space["2"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL01vZGFsL01vZGFsQ29udGVudC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT2tDIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL01vZGFsL01vZGFsQ29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJy4uL0J1dHRvbidcbmltcG9ydCB7IERpYWxvZyB9IGZyb20gJy4vY29tcG9uZW50cy9EaWFsb2cnXG5pbXBvcnQgdHlwZSB7IE1vZGFsUGxhY2VtZW50LCBNb2RhbFNpemUgfSBmcm9tICcuL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBNb2RhbCB9IGZyb20gJy4nXG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycyJ119O1xuICByaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMiddfTtcbmBcblxudHlwZSBNb2RhbENvbnRlbnRQcm9wcyA9IENvbXBvbmVudFByb3BzPHR5cGVvZiBNb2RhbD4gJiB7XG4gIHZpc2libGU6IGJvb2xlYW5cbiAgb3BlbjogYm9vbGVhblxuICBvcGVuZWQ6IGJvb2xlYW5cbiAgcGxhY2VtZW50OiBNb2RhbFBsYWNlbWVudFxuICBmaW5hbFNpemU6IE1vZGFsU2l6ZVxuICBmaW5hbElkOiBzdHJpbmdcbiAgaGFuZGxlT3BlbjogKCkgPT4gdm9pZFxuICBoYW5kbGVUb2dnbGU6ICgpID0+IHZvaWRcbiAgaGFuZGxlQ2xvc2U6ICgpID0+IHZvaWRcbiAgZGF0YVRlc3RJZD86IHN0cmluZ1xufVxuXG5leHBvcnQgY29uc3QgTW9kYWxDb250ZW50ID0gKHtcbiAgdmlzaWJsZSxcbiAgb3BlbixcbiAgb3BlbmVkLFxuICBwbGFjZW1lbnQsXG4gIGZpbmFsU2l6ZSxcbiAgYXJpYUxhYmVsLFxuICBoaWRlT25DbGlja091dHNpZGUsXG4gIGhpZGVPbkVzYyxcbiAgcHJldmVudEJvZHlTY3JvbGwsXG4gIGhhbmRsZUNsb3NlLFxuICBjbGFzc05hbWUsXG4gIGJhY2tkcm9wQ2xhc3NOYW1lLFxuICBkYXRhVGVzdElkLFxuICBjdXN0b21EaWFsb2dTdHlsZXMsXG4gIGN1c3RvbURpYWxvZ0JhY2tkcm9wU3R5bGVzLFxuICBpc0Nsb3NhYmxlLFxuICBjaGlsZHJlbixcbiAgaGFuZGxlT3BlbixcbiAgaGFuZGxlVG9nZ2xlLFxuICBmaW5hbElkLFxufTogTW9kYWxDb250ZW50UHJvcHMpID0+XG4gIHZpc2libGUgfHwgb3BlbiB8fCBvcGVuZWQgPyAoXG4gICAgPERpYWxvZ1xuICAgICAgb3Blbj17dmlzaWJsZSB8fCBvcGVuIHx8IG9wZW5lZH1cbiAgICAgIHBsYWNlbWVudD17cGxhY2VtZW50fVxuICAgICAgc2l6ZT17ZmluYWxTaXplfVxuICAgICAgYXJpYUxhYmVsPXthcmlhTGFiZWx9XG4gICAgICBoaWRlT25DbGlja091dHNpZGU9e2hpZGVPbkNsaWNrT3V0c2lkZX1cbiAgICAgIGhpZGVPbkVzYz17aGlkZU9uRXNjfVxuICAgICAgcHJldmVudEJvZHlTY3JvbGw9e3ByZXZlbnRCb2R5U2Nyb2xsfVxuICAgICAgb25DbG9zZT17aGFuZGxlQ2xvc2V9XG4gICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgIGJhY2tkcm9wQ2xhc3NOYW1lPXtiYWNrZHJvcENsYXNzTmFtZX1cbiAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkfVxuICAgICAgaWQ9e2ZpbmFsSWR9XG4gICAgICBkaWFsb2dDc3M9e2N1c3RvbURpYWxvZ1N0eWxlc31cbiAgICAgIGJhY2tkcm9wQ3NzPXtjdXN0b21EaWFsb2dCYWNrZHJvcFN0eWxlc31cbiAgICA+XG4gICAgICA8PlxuICAgICAgICB7dHlwZW9mIGNoaWxkcmVuID09PSAnZnVuY3Rpb24nXG4gICAgICAgICAgPyBjaGlsZHJlbih7XG4gICAgICAgICAgICAgIHZpc2libGUsXG4gICAgICAgICAgICAgIG9uQ2xvc2U6IGhhbmRsZUNsb3NlLFxuICAgICAgICAgICAgICBvbk9wZW46IGhhbmRsZU9wZW4sXG4gICAgICAgICAgICAgIHRvZ2dsZTogaGFuZGxlVG9nZ2xlLFxuICAgICAgICAgICAgICBtb2RhbElkOiBmaW5hbElkLFxuICAgICAgICAgICAgICBoaWRlOiBoYW5kbGVDbG9zZSxcbiAgICAgICAgICAgICAgY2xvc2U6IGhhbmRsZUNsb3NlLFxuICAgICAgICAgICAgICBzaG93OiBoYW5kbGVPcGVuLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICA6IGNoaWxkcmVufVxuICAgICAgICA8U3R5bGVkQ29udGFpbmVyPlxuICAgICAgICAgIHtpc0Nsb3NhYmxlID8gKFxuICAgICAgICAgICAgPEJ1dHRvblxuICAgICAgICAgICAgICBkYXRhLXRlc3RpZD17XG4gICAgICAgICAgICAgICAgZGF0YVRlc3RJZCA/IGAke2RhdGFUZXN0SWR9LWNsb3NlLWJ1dHRvbmAgOiB1bmRlZmluZWRcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVDbG9zZX1cbiAgICAgICAgICAgICAgdmFyaWFudD1cImdob3N0XCJcbiAgICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICAgICAgaWNvbj1cImNsb3NlXCJcbiAgICAgICAgICAgICAgc2VudGltZW50PVwibmV1dHJhbFwiXG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJjbG9zZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgIDwvPlxuICAgIDwvRGlhbG9nPlxuICApIDogbnVsbFxuIl19 */"));
15
+ const ModalContent = ({
16
+ visible,
17
+ open,
18
+ opened,
19
+ placement,
20
+ finalSize,
21
+ ariaLabel,
22
+ hideOnClickOutside,
23
+ hideOnEsc,
24
+ preventBodyScroll,
25
+ handleClose,
26
+ className,
27
+ backdropClassName,
28
+ dataTestId,
29
+ customDialogStyles,
30
+ customDialogBackdropStyles,
31
+ isClosable,
32
+ children,
33
+ handleOpen,
34
+ handleToggle,
35
+ finalId
36
+ }) => visible || open || opened ? /* @__PURE__ */ jsx(Dialog, { open: visible || open || opened, placement, size: finalSize, ariaLabel, hideOnClickOutside, hideOnEsc, preventBodyScroll, onClose: handleClose, className, backdropClassName, "data-testid": dataTestId, id: finalId, dialogCss: customDialogStyles, backdropCss: customDialogBackdropStyles, children: /* @__PURE__ */ jsxs(Fragment, { children: [
37
+ typeof children === "function" ? children({
38
+ visible,
39
+ onClose: handleClose,
40
+ onOpen: handleOpen,
41
+ toggle: handleToggle,
42
+ modalId: finalId,
43
+ hide: handleClose,
44
+ close: handleClose,
45
+ show: handleOpen
46
+ }) : children,
47
+ /* @__PURE__ */ jsx(StyledContainer, { children: isClosable ? /* @__PURE__ */ jsx(Button, { "data-testid": dataTestId ? `${dataTestId}-close-button` : void 0, onClick: handleClose, variant: "ghost", size: "small", icon: "close", sentiment: "neutral", "aria-label": "close" }) : null })
48
+ ] }) }) : null;
49
+ export {
50
+ ModalContent
51
+ };
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@emotion/react/jsx-runtime");
4
+ const React = require("react");
5
+ const ModalContext = React.createContext(void 0);
6
+ const useModal = () => {
7
+ const context = React.useContext(ModalContext);
8
+ if (!context) {
9
+ throw new Error("useModal must be used within a ModalProvider");
10
+ }
11
+ return context;
12
+ };
13
+ const ModalProvider = ({
14
+ children
15
+ }) => {
16
+ const [openedModals, setOpenedModals] = React.useState([]);
17
+ const [previsousOpenedModales, setPreviousOpenedModales] = React.useState([]);
18
+ const registerModal = React.useCallback((id) => {
19
+ setOpenedModals((prev) => {
20
+ setPreviousOpenedModales(prev);
21
+ return [...prev, id];
22
+ });
23
+ }, []);
24
+ const unregisterModal = React.useCallback((id) => {
25
+ setOpenedModals((prev) => {
26
+ setPreviousOpenedModales(prev);
27
+ return prev.filter((modalId) => modalId !== id);
28
+ });
29
+ }, []);
30
+ const value = React.useMemo(() => ({
31
+ openedModals,
32
+ registerModal,
33
+ unregisterModal,
34
+ previsousOpenedModales
35
+ }), [openedModals, registerModal, unregisterModal, previsousOpenedModales]);
36
+ return /* @__PURE__ */ jsxRuntime.jsx(ModalContext.Provider, { value, children });
37
+ };
38
+ exports.ModalContext = ModalContext;
39
+ exports.ModalProvider = ModalProvider;
40
+ exports.useModal = useModal;
@@ -0,0 +1,14 @@
1
+ import type { ReactNode } from 'react';
2
+ type ModalContextValues = {
3
+ openedModals: string[];
4
+ registerModal: (id: string) => void;
5
+ unregisterModal: (id: string) => void;
6
+ previsousOpenedModales: string[];
7
+ };
8
+ export declare const ModalContext: import("react").Context<ModalContextValues | undefined>;
9
+ export declare const useModal: () => ModalContextValues;
10
+ type ModalProviderProps = {
11
+ children: ReactNode;
12
+ };
13
+ export declare const ModalProvider: ({ children }: ModalProviderProps) => import("@emotion/react/jsx-runtime").JSX.Element;
14
+ export {};
@@ -0,0 +1,40 @@
1
+ import { jsx } from "@emotion/react/jsx-runtime";
2
+ import { createContext, useState, useCallback, useMemo, useContext } from "react";
3
+ const ModalContext = createContext(void 0);
4
+ const useModal = () => {
5
+ const context = useContext(ModalContext);
6
+ if (!context) {
7
+ throw new Error("useModal must be used within a ModalProvider");
8
+ }
9
+ return context;
10
+ };
11
+ const ModalProvider = ({
12
+ children
13
+ }) => {
14
+ const [openedModals, setOpenedModals] = useState([]);
15
+ const [previsousOpenedModales, setPreviousOpenedModales] = useState([]);
16
+ const registerModal = useCallback((id) => {
17
+ setOpenedModals((prev) => {
18
+ setPreviousOpenedModales(prev);
19
+ return [...prev, id];
20
+ });
21
+ }, []);
22
+ const unregisterModal = useCallback((id) => {
23
+ setOpenedModals((prev) => {
24
+ setPreviousOpenedModales(prev);
25
+ return prev.filter((modalId) => modalId !== id);
26
+ });
27
+ }, []);
28
+ const value = useMemo(() => ({
29
+ openedModals,
30
+ registerModal,
31
+ unregisterModal,
32
+ previsousOpenedModales
33
+ }), [openedModals, registerModal, unregisterModal, previsousOpenedModales]);
34
+ return /* @__PURE__ */ jsx(ModalContext.Provider, { value, children });
35
+ };
36
+ export {
37
+ ModalContext,
38
+ ModalProvider,
39
+ useModal
40
+ };
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("@emotion/react/jsx-runtime");
4
+ const _styled = require("@emotion/styled/base");
5
+ const React = require("react");
6
+ const reactDom = require("react-dom");
7
+ const animations = require("../../../utils/animations.cjs");
8
+ const ModalProvider = require("../ModalProvider.cjs");
9
+ const constants = require("../constants.cjs");
10
+ const _interopDefaultCompat = (e) => e && typeof e === "object" && "default" in e ? e : { default: e };
11
+ const _styled__default = /* @__PURE__ */ _interopDefaultCompat(_styled);
12
+ const StyledBackdrop = /* @__PURE__ */ _styled__default.default("div", process.env.NODE_ENV === "production" ? {
13
+ target: "e1fims041"
14
+ } : {
15
+ target: "e1fims041",
16
+ label: "StyledBackdrop"
17
+ })("position:fixed;top:0;right:0;height:0;width:0;overflow:hidden;background-color:", ({
18
+ theme
19
+ }) => theme.colors.overlay, ";z-index:1;&[data-open='true']{padding:", ({
20
+ theme
21
+ }) => theme.space["2"], ";overflow:auto;display:flex;bottom:0;left:0;height:100%;width:100%;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL01vZGFsL2NvbXBvbmVudHMvRGlhbG9nLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjMkQiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvdWkvc3JjL2NvbXBvbmVudHMvTW9kYWwvY29tcG9uZW50cy9EaWFsb2cudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgdHlwZSB7XG4gIEZvY3VzRXZlbnRIYW5kbGVyLFxuICBLZXlib2FyZEV2ZW50SGFuZGxlcixcbiAgTW91c2VFdmVudEhhbmRsZXIsXG4gIFJlYWN0RXZlbnRIYW5kbGVyLFxufSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZVJlZiB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgY3JlYXRlUG9ydGFsIH0gZnJvbSAncmVhY3QtZG9tJ1xuaW1wb3J0IHsgc2xpZGVGcm9tQm90dG9tIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvYW5pbWF0aW9ucydcbmltcG9ydCB7IHVzZU1vZGFsIH0gZnJvbSAnLi4vTW9kYWxQcm92aWRlcidcbmltcG9ydCB7IE1PREFMX1BMQUNFTUVOVCwgTU9EQUxfV0lEVEggfSBmcm9tICcuLi9jb25zdGFudHMnXG5pbXBvcnQgdHlwZSB7IERpYWxvZ1Byb3BzLCBNb2RhbFBsYWNlbWVudCwgTW9kYWxTaXplIH0gZnJvbSAnLi4vdHlwZXMnXG5cbmNvbnN0IFN0eWxlZEJhY2tkcm9wID0gc3R5bGVkLmRpdjx7ICdkYXRhLW9wZW4nOiBib29sZWFuIH0+YFxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuY29sb3JzLm92ZXJsYXl9O1xuICB6LWluZGV4OiAxO1xuXG4gICZbZGF0YS1vcGVuPSd0cnVlJ10ge1xuICAgIHBhZGRpbmc6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzInXX07XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbmBcblxudHlwZSBTdHlsZWREaWFsb2dQcm9wcyA9IHtcbiAgJ2RhdGEtc2l6ZSc6IE1vZGFsU2l6ZVxuICAnZGF0YS1wbGFjZW1lbnQnOiBNb2RhbFBsYWNlbWVudFxuICBwb3NpdGlvbjogbnVtYmVyXG4gIHNpemU6IE1vZGFsU2l6ZVxufVxuXG5leHBvcnQgY29uc3QgU3R5bGVkRGlhbG9nID0gc3R5bGVkKCdkaWFsb2cnLCB7XG4gIHNob3VsZEZvcndhcmRQcm9wOiBwcm9wID0+XG4gICAgIVsncG9zaXRpb24nLCAnc2l6ZScsICdvcGVuZWRNb2RhbHMnXS5pbmNsdWRlcyhwcm9wKSxcbn0pPFN0eWxlZERpYWxvZ1Byb3BzPmBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHsoeyB0aGVtZSB9KSA9PlxuICAgIHRoZW1lLmNvbG9ycy5vdGhlci5lbGV2YXRpb24uYmFja2dyb3VuZC5vdmVybGF5fTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnJhZGlpLmRlZmF1bHR9O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzMnXX07XG4gIHdpZHRoOiAke01PREFMX1dJRFRILm1lZGl1bX1weDtcbiAgYm94LXNoYWRvdzogJHsoeyB0aGVtZSB9KSA9PiBgJHt0aGVtZS5zaGFkb3dzLm92ZXJsYXlbMF19LCAke3RoZW1lLnNoYWRvd3Mub3ZlcmxheVsxXX1gfTtcblxuXG4gICR7T2JqZWN0LmVudHJpZXMoTU9EQUxfV0lEVEgpLm1hcChcbiAgICAoW3NpemUsIHZhbHVlXSkgPT4gYFxuICAgICAgJltkYXRhLXNpemU9XCIke3NpemV9XCJdIHtcbiAgICAgICAgd2lkdGg6ICR7dmFsdWV9cHg7XG4gICAgICB9XG4gICAgICBgLFxuICApfVxuXG4gICR7T2JqZWN0LmVudHJpZXMoTU9EQUxfUExBQ0VNRU5UKS5tYXAoXG4gICAgKFtwbGFjZW1lbnQsIHZhbHVlXSkgPT4gYFxuICAgICAgICAmW2RhdGEtcGxhY2VtZW50PVwiJHtwbGFjZW1lbnR9XCJdIHtcbiAgICAgICAgICAke3ZhbHVlfVxuICAgICAgICB9XG4gICAgICAgIGAsXG4gICl9XG5cbiAgJltkYXRhLWFuaW1hdGlvbj0ndHJ1ZSddIHtcbiAgICBhbmltYXRpb246ICR7c2xpZGVGcm9tQm90dG9tfSAwLjNzIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG5cbiAgJHsoeyBwb3NpdGlvbiwgc2l6ZSB9KSA9PlxuICAgIHBvc2l0aW9uID4gMFxuICAgICAgPyBgXG4gICAgd2lkdGg6ICR7TU9EQUxfV0lEVEhbc2l6ZV0gLSBwb3NpdGlvbiAqIDUwfXB4ICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtJHtwb3NpdGlvbiAqIDI0fXB4LCAwKTtcbiAgYFxuICAgICAgOiB1bmRlZmluZWR9XG5gXG5cbmV4cG9ydCBjb25zdCBEaWFsb2cgPSAoe1xuICBjaGlsZHJlbixcbiAgcGxhY2VtZW50LFxuICBvbkNsb3NlLFxuICBoaWRlT25DbGlja091dHNpZGUsXG4gIHNpemUsXG4gIGlkLFxuICBhcmlhTGFiZWwsXG4gIGNsYXNzTmFtZSxcbiAgJ2RhdGEtdGVzdGlkJzogZGF0YVRlc3RJZCxcbiAgcHJldmVudEJvZHlTY3JvbGwsXG4gIGhpZGVPbkVzYyxcbiAgYmFja2Ryb3BDbGFzc05hbWUsXG4gIGRpYWxvZ0NzcyxcbiAgYmFja2Ryb3BDc3MsXG59OiBEaWFsb2dQcm9wcykgPT4ge1xuICBjb25zdCBjb250YWluZXJSZWYgPSB1c2VSZWYoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2JykpXG4gIGNvbnN0IGRpYWxvZ1JlZiA9IHVzZVJlZjxIVE1MRGlhbG9nRWxlbWVudD4obnVsbClcbiAgY29uc3Qgb25DbG9zZVJlZiA9IHVzZVJlZihvbkNsb3NlKVxuICBjb25zdCB7XG4gICAgcmVnaXN0ZXJNb2RhbCxcbiAgICB1bnJlZ2lzdGVyTW9kYWwsXG4gICAgb3BlbmVkTW9kYWxzLFxuICAgIHByZXZpc291c09wZW5lZE1vZGFsZXMsXG4gIH0gPSB1c2VNb2RhbCgpXG5cbiAgLy8gcmVnaXN0ZXIvdW5yZWdpc3RlciB0aGUgbW9kYWwgdG8gaGFuZGxlIG5lc3RlZCBtb2RhbHNcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICByZWdpc3Rlck1vZGFsKGlkKVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHVucmVnaXN0ZXJNb2RhbChpZClcbiAgICB9XG4gIH0sIFtpZCwgcmVnaXN0ZXJNb2RhbCwgdW5yZWdpc3Rlck1vZGFsXSlcblxuICAvLyBQb3J0YWwgdG8gcHV0IHRoZSBtb2RhbCBpblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBjb250YWluZXJSZWYuY3VycmVudFxuICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZWxlbWVudClcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoZG9jdW1lbnQuYm9keS5jb250YWlucyhlbGVtZW50KSkge1xuICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGVsZW1lbnQpXG4gICAgICB9XG4gICAgfVxuICB9LCBbXSlcblxuICAvLyBTYXZlIHRoZSByZWFzc2lnbm1lbnQgb2YgZXZlbnRIYW5kbGVyIGluIHRoZSB1c2VFZmZlY3QgYmVsb3dcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBvbkNsb3NlUmVmLmN1cnJlbnQgPSBvbkNsb3NlXG4gIH0sIFtvbkNsb3NlXSlcblxuICAvLyBPbiBvcGVuIGZvY3VzIHRoZSBtb2RhbFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpYWxvZ1JlZi5jdXJyZW50Py5mb2N1cygpXG4gIH0sIFtdKVxuXG4gIC8vIEhhbmRsZSBib2R5IHNjcm9sbFxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IHByZXZpb3VzT3ZlcmZsb3cgPSBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93XG5cbiAgICBpZiAocHJldmVudEJvZHlTY3JvbGwpIHtcbiAgICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJ1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gcHJldmlvdXNPdmVyZmxvd1xuICAgIH1cbiAgfSwgW3ByZXZlbnRCb2R5U2Nyb2xsXSlcblxuICAvLyBTdG9wIGZvY3VzIHRvIHByZXZlbnQgdW5leHBlY3RlZCBib2R5IGxvb3NlIGZvY3VzXG4gIGNvbnN0IHN0b3BGb2N1czogRm9jdXNFdmVudEhhbmRsZXIgPSB1c2VDYWxsYmFjayhldmVudCA9PiB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfSwgW10pXG5cbiAgLy8gU3RvcCBjbGljayB0byBwcmV2ZW50IHVuZXhwZWN0ZWQgZGlhbG9nIGNsb3NlXG4gIGNvbnN0IHN0b3BDbGljazogTW91c2VFdmVudEhhbmRsZXIgPSB1c2VDYWxsYmFjayhldmVudCA9PiB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfSwgW10pXG5cbiAgLy8gaGFuZGxlIGtleSB1cCA6IHVzZWQgd2hlbiBoYXZpbmcgaW5wdXRzIGluIG1vZGFscyAtIHVzZWZ1bCBmb3IgaGlkZU9uRXNjXG4gIGNvbnN0IGhhbmRsZUtleVVwOiBLZXlib2FyZEV2ZW50SGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgIGV2ZW50ID0+IHtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJyAmJiBoaWRlT25Fc2MpIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgICBvbkNsb3NlUmVmLmN1cnJlbnQoKVxuICAgICAgfVxuICAgIH0sXG4gICAgW2hpZGVPbkVzY10sXG4gIClcblxuICBjb25zdCBoYW5kbGVDbG9zZTogTW91c2VFdmVudEhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICBldmVudCA9PiB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgaWYgKGhpZGVPbkNsaWNrT3V0c2lkZSkge1xuICAgICAgICBvbkNsb3NlUmVmLmN1cnJlbnQoKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gQmVjYXVzZSBvdmVybGF5IGlzIG5vdCBmb2N1c2FibGUgd2UgY2FuJ3QgaGFuZGxlIGhpZGVPbkVzYyBwcm9wZXJseVxuICAgICAgICBkaWFsb2dSZWYuY3VycmVudD8uZm9jdXMoKVxuICAgICAgfVxuICAgIH0sXG4gICAgW2hpZGVPbkNsaWNrT3V0c2lkZV0sXG4gIClcblxuICAvLyBFbmFibGUgZm9jdXMgdHJhcCBpbnNpZGUgdGhlIG1vZGFsXG4gIGNvbnN0IGhhbmRsZUZvY3VzVHJhcDogS2V5Ym9hcmRFdmVudEhhbmRsZXIgPSB1c2VDYWxsYmFjayhldmVudCA9PiB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3QgaXNUYWJQcmVzc2VkID0gZXZlbnQua2V5ID09PSAnVGFiJ1xuXG4gICAgaWYgKCFpc1RhYlByZXNzZWQpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGZvY3VzYWJsZUVscyA9XG4gICAgICBkaWFsb2dSZWYuY3VycmVudD8ucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgJ2FbaHJlZl06bm90KFtkaXNhYmxlZF0pLCBidXR0b246bm90KFtkaXNhYmxlZF0pLCB0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSksIGlucHV0Om5vdChbZGlzYWJsZWRdKSwgc2VsZWN0Om5vdChbZGlzYWJsZWRdKScsXG4gICAgICApID8/IFtdXG5cbiAgICAvLyBIYW5kbGUgY2FzZSB3aGVuIG5vIGludGVyYWN0aXZlIGVsZW1lbnQgYXJlIHdpdGhpbiB0aGUgbW9kYWwgKGluY2x1ZGluZyBjbG9zZSBpY29uKVxuICAgIGlmIChmb2N1c2FibGVFbHMubGVuZ3RoID09PSAwKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgfVxuXG4gICAgY29uc3QgZmlyc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1swXSBhcyBIVE1MRWxlbWVudFxuICAgIGNvbnN0IGxhc3RGb2N1c2FibGVFbCA9IGZvY3VzYWJsZUVsc1tmb2N1c2FibGVFbHMubGVuZ3RoIC0gMV0gYXMgSFRNTEVsZW1lbnRcblxuICAgIGlmIChldmVudC5zaGlmdEtleSkge1xuICAgICAgaWYgKFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBmaXJzdEZvY3VzYWJsZUVsIHx8XG4gICAgICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT09IGRpYWxvZ1JlZi5jdXJyZW50XG4gICAgICApIHtcbiAgICAgICAgbGFzdEZvY3VzYWJsZUVsLmZvY3VzKClcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBsYXN0Rm9jdXNhYmxlRWwgfHxcbiAgICAgIGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgPT09IGRpYWxvZ1JlZi5jdXJyZW50XG4gICAgKSB7XG4gICAgICBmaXJzdEZvY3VzYWJsZUVsLmZvY3VzKClcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICB9XG4gIH0sIFtdKVxuXG4gIC8vIFByZXZlbnQgZGVmYXVsdCBiZWhhdmlvdXIgb24gRXNjYXBlXG4gIGNvbnN0IHN0b3BDYW5jZWw6IFJlYWN0RXZlbnRIYW5kbGVyID0gZXZlbnQgPT4ge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICB9XG5cbiAgLy8gV2UgbmVlZCB0byByZXZlcnNlIHRoZSBhcnJheSBhcyB0aGUgbGFzdCBvcGVuZWQgbW9kYWwgc2hvdWxkIGJlIHRoZSBmaXJzdCB0byBiZSB3aXRoIG5vcm1hbCBzaXplXG4gIC8vIHdoaWxlIHRoZSBmaXJzdCBvcGVuZWQgbW9kYWwgc2hvdWxkIHNocmlua1xuICBjb25zdCBwb3NpdGlvbiA9IFsuLi5vcGVuZWRNb2RhbHNdLnJldmVyc2UoKS5pbmRleE9mKGlkKSAvLyByZXZlcnNlIG1ldGhvZCBtdXRhdGUgYXJyYXkgc28gd2UgbmVlZCB0byBjcmVhdGUgYSBuZXcgYXJyYXlcblxuICByZXR1cm4gY3JlYXRlUG9ydGFsKFxuICAgIDxTdHlsZWRCYWNrZHJvcFxuICAgICAgZGF0YS1vcGVuXG4gICAgICBvbkNsaWNrPXtoYW5kbGVDbG9zZX1cbiAgICAgIGNsYXNzTmFtZT17YmFja2Ryb3BDbGFzc05hbWV9XG4gICAgICBjc3M9e2JhY2tkcm9wQ3NzfVxuICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWQgPyBgJHtkYXRhVGVzdElkfS1iYWNrZHJvcGAgOiB1bmRlZmluZWR9XG4gICAgICBvbkZvY3VzPXtzdG9wRm9jdXN9XG4gICAgPlxuICAgICAgPFN0eWxlZERpYWxvZ1xuICAgICAgICBjc3M9e2RpYWxvZ0Nzc31cbiAgICAgICAgb25LZXlVcD17aGFuZGxlS2V5VXB9XG4gICAgICAgIG9uS2V5RG93bj17aGFuZGxlRm9jdXNUcmFwfVxuICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgICAgaWQ9e2lkfVxuICAgICAgICBkYXRhLXRlc3RpZD17ZGF0YVRlc3RJZH1cbiAgICAgICAgYXJpYS1sYWJlbD17YXJpYUxhYmVsfVxuICAgICAgICBkYXRhLXBsYWNlbWVudD17cGxhY2VtZW50fVxuICAgICAgICBkYXRhLXNpemU9e3NpemV9XG4gICAgICAgIG9wZW5cbiAgICAgICAgb25DbGljaz17c3RvcENsaWNrfVxuICAgICAgICBvbkNhbmNlbD17c3RvcENhbmNlbH1cbiAgICAgICAgb25DbG9zZT17c3RvcENhbmNlbH1cbiAgICAgICAgYXJpYS1tb2RhbFxuICAgICAgICByZWY9e2RpYWxvZ1JlZn1cbiAgICAgICAgdGFiSW5kZXg9ezB9XG4gICAgICAgIHBvc2l0aW9uPXtwb3NpdGlvbn1cbiAgICAgICAgZGF0YS1hbmltYXRpb249e1xuICAgICAgICAgIG9wZW5lZE1vZGFscy5sZW5ndGggPiAxICYmXG4gICAgICAgICAgcG9zaXRpb24gPT09IDAgJiZcbiAgICAgICAgICBwcmV2aXNvdXNPcGVuZWRNb2RhbGVzLmxlbmd0aCA8IG9wZW5lZE1vZGFscy5sZW5ndGhcbiAgICAgICAgfVxuICAgICAgICBzaXplPXtzaXplfVxuICAgICAgPlxuICAgICAgICB7Y2hpbGRyZW59XG4gICAgICA8L1N0eWxlZERpYWxvZz5cbiAgICA8L1N0eWxlZEJhY2tkcm9wPixcbiAgICBjb250YWluZXJSZWYuY3VycmVudCxcbiAgKVxufVxuIl19 */"));
22
+ const StyledDialog = /* @__PURE__ */ _styled__default.default("dialog", process.env.NODE_ENV === "production" ? {
23
+ shouldForwardProp: (prop) => !["position", "size", "openedModals"].includes(prop),
24
+ target: "e1fims040"
25
+ } : {
26
+ shouldForwardProp: (prop) => !["position", "size", "openedModals"].includes(prop),
27
+ target: "e1fims040",
28
+ label: "StyledDialog"
29
+ })("background-color:", ({
30
+ theme
31
+ }) => theme.colors.other.elevation.background.overlay, ";position:relative;border-radius:", ({
32
+ theme
33
+ }) => theme.radii.default, ";border:0;padding:", ({
34
+ theme
35
+ }) => theme.space["3"], ";width:", constants.MODAL_WIDTH.medium, "px;box-shadow:", ({
36
+ theme
37
+ }) => `${theme.shadows.overlay[0]}, ${theme.shadows.overlay[1]}`, ";", Object.entries(constants.MODAL_WIDTH).map(([size, value]) => `
38
+ &[data-size="${size}"] {
39
+ width: ${value}px;
40
+ }
41
+ `), " ", Object.entries(constants.MODAL_PLACEMENT).map(([placement, value]) => `
42
+ &[data-placement="${placement}"] {
43
+ ${value}
44
+ }
45
+ `), " &[data-animation='true']{animation:", animations.slideFromBottom, " 0.3s ease-in-out;}transition:width 0.3s ease-in-out,transform 0.3s ease-in-out;", ({
46
+ position,
47
+ size
48
+ }) => position > 0 ? `
49
+ width: ${constants.MODAL_WIDTH[size] - position * 50}px !important;
50
+ transform: translate3d(0, -${position * 24}px, 0);
51
+ ` : void 0, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL01vZGFsL2NvbXBvbmVudHMvRGlhbG9nLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2Q3FCIiwiZmlsZSI6Ii9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3VpL3NyYy9jb21wb25lbnRzL01vZGFsL2NvbXBvbmVudHMvRGlhbG9nLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJ1xuaW1wb3J0IHR5cGUge1xuICBGb2N1c0V2ZW50SGFuZGxlcixcbiAgS2V5Ym9hcmRFdmVudEhhbmRsZXIsXG4gIE1vdXNlRXZlbnRIYW5kbGVyLFxuICBSZWFjdEV2ZW50SGFuZGxlcixcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7IGNyZWF0ZVBvcnRhbCB9IGZyb20gJ3JlYWN0LWRvbSdcbmltcG9ydCB7IHNsaWRlRnJvbUJvdHRvbSB9IGZyb20gJy4uLy4uLy4uL3V0aWxzL2FuaW1hdGlvbnMnXG5pbXBvcnQgeyB1c2VNb2RhbCB9IGZyb20gJy4uL01vZGFsUHJvdmlkZXInXG5pbXBvcnQgeyBNT0RBTF9QTEFDRU1FTlQsIE1PREFMX1dJRFRIIH0gZnJvbSAnLi4vY29uc3RhbnRzJ1xuaW1wb3J0IHR5cGUgeyBEaWFsb2dQcm9wcywgTW9kYWxQbGFjZW1lbnQsIE1vZGFsU2l6ZSB9IGZyb20gJy4uL3R5cGVzJ1xuXG5jb25zdCBTdHlsZWRCYWNrZHJvcCA9IHN0eWxlZC5kaXY8eyAnZGF0YS1vcGVuJzogYm9vbGVhbiB9PmBcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLmNvbG9ycy5vdmVybGF5fTtcbiAgei1pbmRleDogMTtcblxuICAmW2RhdGEtb3Blbj0ndHJ1ZSddIHtcbiAgICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWycyJ119O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5gXG5cbnR5cGUgU3R5bGVkRGlhbG9nUHJvcHMgPSB7XG4gICdkYXRhLXNpemUnOiBNb2RhbFNpemVcbiAgJ2RhdGEtcGxhY2VtZW50JzogTW9kYWxQbGFjZW1lbnRcbiAgcG9zaXRpb246IG51bWJlclxuICBzaXplOiBNb2RhbFNpemVcbn1cblxuZXhwb3J0IGNvbnN0IFN0eWxlZERpYWxvZyA9IHN0eWxlZCgnZGlhbG9nJywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogcHJvcCA9PlxuICAgICFbJ3Bvc2l0aW9uJywgJ3NpemUnLCAnb3BlbmVkTW9kYWxzJ10uaW5jbHVkZXMocHJvcCksXG59KTxTdHlsZWREaWFsb2dQcm9wcz5gXG4gIGJhY2tncm91bmQtY29sb3I6ICR7KHsgdGhlbWUgfSkgPT5cbiAgICB0aGVtZS5jb2xvcnMub3RoZXIuZWxldmF0aW9uLmJhY2tncm91bmQub3ZlcmxheX07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5yYWRpaS5kZWZhdWx0fTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWyczJ119O1xuICB3aWR0aDogJHtNT0RBTF9XSURUSC5tZWRpdW19cHg7XG4gIGJveC1zaGFkb3c6ICR7KHsgdGhlbWUgfSkgPT4gYCR7dGhlbWUuc2hhZG93cy5vdmVybGF5WzBdfSwgJHt0aGVtZS5zaGFkb3dzLm92ZXJsYXlbMV19YH07XG5cblxuICAke09iamVjdC5lbnRyaWVzKE1PREFMX1dJRFRIKS5tYXAoXG4gICAgKFtzaXplLCB2YWx1ZV0pID0+IGBcbiAgICAgICZbZGF0YS1zaXplPVwiJHtzaXplfVwiXSB7XG4gICAgICAgIHdpZHRoOiAke3ZhbHVlfXB4O1xuICAgICAgfVxuICAgICAgYCxcbiAgKX1cblxuICAke09iamVjdC5lbnRyaWVzKE1PREFMX1BMQUNFTUVOVCkubWFwKFxuICAgIChbcGxhY2VtZW50LCB2YWx1ZV0pID0+IGBcbiAgICAgICAgJltkYXRhLXBsYWNlbWVudD1cIiR7cGxhY2VtZW50fVwiXSB7XG4gICAgICAgICAgJHt2YWx1ZX1cbiAgICAgICAgfVxuICAgICAgICBgLFxuICApfVxuXG4gICZbZGF0YS1hbmltYXRpb249J3RydWUnXSB7XG4gICAgYW5pbWF0aW9uOiAke3NsaWRlRnJvbUJvdHRvbX0gMC4zcyBlYXNlLWluLW91dDtcbiAgfVxuXG4gIHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gICR7KHsgcG9zaXRpb24sIHNpemUgfSkgPT5cbiAgICBwb3NpdGlvbiA+IDBcbiAgICAgID8gYFxuICAgIHdpZHRoOiAke01PREFMX1dJRFRIW3NpemVdIC0gcG9zaXRpb24gKiA1MH1weCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLSR7cG9zaXRpb24gKiAyNH1weCwgMCk7XG4gIGBcbiAgICAgIDogdW5kZWZpbmVkfVxuYFxuXG5leHBvcnQgY29uc3QgRGlhbG9nID0gKHtcbiAgY2hpbGRyZW4sXG4gIHBsYWNlbWVudCxcbiAgb25DbG9zZSxcbiAgaGlkZU9uQ2xpY2tPdXRzaWRlLFxuICBzaXplLFxuICBpZCxcbiAgYXJpYUxhYmVsLFxuICBjbGFzc05hbWUsXG4gICdkYXRhLXRlc3RpZCc6IGRhdGFUZXN0SWQsXG4gIHByZXZlbnRCb2R5U2Nyb2xsLFxuICBoaWRlT25Fc2MsXG4gIGJhY2tkcm9wQ2xhc3NOYW1lLFxuICBkaWFsb2dDc3MsXG4gIGJhY2tkcm9wQ3NzLFxufTogRGlhbG9nUHJvcHMpID0+IHtcbiAgY29uc3QgY29udGFpbmVyUmVmID0gdXNlUmVmKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpKVxuICBjb25zdCBkaWFsb2dSZWYgPSB1c2VSZWY8SFRNTERpYWxvZ0VsZW1lbnQ+KG51bGwpXG4gIGNvbnN0IG9uQ2xvc2VSZWYgPSB1c2VSZWYob25DbG9zZSlcbiAgY29uc3Qge1xuICAgIHJlZ2lzdGVyTW9kYWwsXG4gICAgdW5yZWdpc3Rlck1vZGFsLFxuICAgIG9wZW5lZE1vZGFscyxcbiAgICBwcmV2aXNvdXNPcGVuZWRNb2RhbGVzLFxuICB9ID0gdXNlTW9kYWwoKVxuXG4gIC8vIHJlZ2lzdGVyL3VucmVnaXN0ZXIgdGhlIG1vZGFsIHRvIGhhbmRsZSBuZXN0ZWQgbW9kYWxzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgcmVnaXN0ZXJNb2RhbChpZClcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB1bnJlZ2lzdGVyTW9kYWwoaWQpXG4gICAgfVxuICB9LCBbaWQsIHJlZ2lzdGVyTW9kYWwsIHVucmVnaXN0ZXJNb2RhbF0pXG5cbiAgLy8gUG9ydGFsIHRvIHB1dCB0aGUgbW9kYWwgaW5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBlbGVtZW50ID0gY29udGFpbmVyUmVmLmN1cnJlbnRcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGVsZW1lbnQpXG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKGRvY3VtZW50LmJvZHkuY29udGFpbnMoZWxlbWVudCkpIHtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbGVtZW50KVxuICAgICAgfVxuICAgIH1cbiAgfSwgW10pXG5cbiAgLy8gU2F2ZSB0aGUgcmVhc3NpZ25tZW50IG9mIGV2ZW50SGFuZGxlciBpbiB0aGUgdXNlRWZmZWN0IGJlbG93XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgb25DbG9zZVJlZi5jdXJyZW50ID0gb25DbG9zZVxuICB9LCBbb25DbG9zZV0pXG5cbiAgLy8gT24gb3BlbiBmb2N1cyB0aGUgbW9kYWxcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaWFsb2dSZWYuY3VycmVudD8uZm9jdXMoKVxuICB9LCBbXSlcblxuICAvLyBIYW5kbGUgYm9keSBzY3JvbGxcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBwcmV2aW91c092ZXJmbG93ID0gZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvd1xuXG4gICAgaWYgKHByZXZlbnRCb2R5U2Nyb2xsKSB7XG4gICAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2hpZGRlbidcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9IHByZXZpb3VzT3ZlcmZsb3dcbiAgICB9XG4gIH0sIFtwcmV2ZW50Qm9keVNjcm9sbF0pXG5cbiAgLy8gU3RvcCBmb2N1cyB0byBwcmV2ZW50IHVuZXhwZWN0ZWQgYm9keSBsb29zZSBmb2N1c1xuICBjb25zdCBzdG9wRm9jdXM6IEZvY3VzRXZlbnRIYW5kbGVyID0gdXNlQ2FsbGJhY2soZXZlbnQgPT4ge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gIH0sIFtdKVxuXG4gIC8vIFN0b3AgY2xpY2sgdG8gcHJldmVudCB1bmV4cGVjdGVkIGRpYWxvZyBjbG9zZVxuICBjb25zdCBzdG9wQ2xpY2s6IE1vdXNlRXZlbnRIYW5kbGVyID0gdXNlQ2FsbGJhY2soZXZlbnQgPT4ge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gIH0sIFtdKVxuXG4gIC8vIGhhbmRsZSBrZXkgdXAgOiB1c2VkIHdoZW4gaGF2aW5nIGlucHV0cyBpbiBtb2RhbHMgLSB1c2VmdWwgZm9yIGhpZGVPbkVzY1xuICBjb25zdCBoYW5kbGVLZXlVcDogS2V5Ym9hcmRFdmVudEhhbmRsZXIgPSB1c2VDYWxsYmFjayhcbiAgICBldmVudCA9PiB7XG4gICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScgJiYgaGlkZU9uRXNjKSB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgICAgb25DbG9zZVJlZi5jdXJyZW50KClcbiAgICAgIH1cbiAgICB9LFxuICAgIFtoaWRlT25Fc2NdLFxuICApXG5cbiAgY29uc3QgaGFuZGxlQ2xvc2U6IE1vdXNlRXZlbnRIYW5kbGVyID0gdXNlQ2FsbGJhY2soXG4gICAgZXZlbnQgPT4ge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICAgIGlmIChoaWRlT25DbGlja091dHNpZGUpIHtcbiAgICAgICAgb25DbG9zZVJlZi5jdXJyZW50KClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIEJlY2F1c2Ugb3ZlcmxheSBpcyBub3QgZm9jdXNhYmxlIHdlIGNhbid0IGhhbmRsZSBoaWRlT25Fc2MgcHJvcGVybHlcbiAgICAgICAgZGlhbG9nUmVmLmN1cnJlbnQ/LmZvY3VzKClcbiAgICAgIH1cbiAgICB9LFxuICAgIFtoaWRlT25DbGlja091dHNpZGVdLFxuICApXG5cbiAgLy8gRW5hYmxlIGZvY3VzIHRyYXAgaW5zaWRlIHRoZSBtb2RhbFxuICBjb25zdCBoYW5kbGVGb2N1c1RyYXA6IEtleWJvYXJkRXZlbnRIYW5kbGVyID0gdXNlQ2FsbGJhY2soZXZlbnQgPT4ge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcblxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IGlzVGFiUHJlc3NlZCA9IGV2ZW50LmtleSA9PT0gJ1RhYidcblxuICAgIGlmICghaXNUYWJQcmVzc2VkKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBmb2N1c2FibGVFbHMgPVxuICAgICAgZGlhbG9nUmVmLmN1cnJlbnQ/LnF1ZXJ5U2VsZWN0b3JBbGwoXG4gICAgICAgICdhW2hyZWZdOm5vdChbZGlzYWJsZWRdKSwgYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgdGV4dGFyZWE6bm90KFtkaXNhYmxlZF0pLCBpbnB1dDpub3QoW2Rpc2FibGVkXSksIHNlbGVjdDpub3QoW2Rpc2FibGVkXSknLFxuICAgICAgKSA/PyBbXVxuXG4gICAgLy8gSGFuZGxlIGNhc2Ugd2hlbiBubyBpbnRlcmFjdGl2ZSBlbGVtZW50IGFyZSB3aXRoaW4gdGhlIG1vZGFsIChpbmNsdWRpbmcgY2xvc2UgaWNvbilcbiAgICBpZiAoZm9jdXNhYmxlRWxzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKVxuICAgIH1cblxuICAgIGNvbnN0IGZpcnN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbMF0gYXMgSFRNTEVsZW1lbnRcbiAgICBjb25zdCBsYXN0Rm9jdXNhYmxlRWwgPSBmb2N1c2FibGVFbHNbZm9jdXNhYmxlRWxzLmxlbmd0aCAtIDFdIGFzIEhUTUxFbGVtZW50XG5cbiAgICBpZiAoZXZlbnQuc2hpZnRLZXkpIHtcbiAgICAgIGlmIChcbiAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gZmlyc3RGb2N1c2FibGVFbCB8fFxuICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBkaWFsb2dSZWYuY3VycmVudFxuICAgICAgKSB7XG4gICAgICAgIGxhc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KClcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKFxuICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA9PT0gbGFzdEZvY3VzYWJsZUVsIHx8XG4gICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBkaWFsb2dSZWYuY3VycmVudFxuICAgICkge1xuICAgICAgZmlyc3RGb2N1c2FibGVFbC5mb2N1cygpXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgfVxuICB9LCBbXSlcblxuICAvLyBQcmV2ZW50IGRlZmF1bHQgYmVoYXZpb3VyIG9uIEVzY2FwZVxuICBjb25zdCBzdG9wQ2FuY2VsOiBSZWFjdEV2ZW50SGFuZGxlciA9IGV2ZW50ID0+IHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfVxuXG4gIC8vIFdlIG5lZWQgdG8gcmV2ZXJzZSB0aGUgYXJyYXkgYXMgdGhlIGxhc3Qgb3BlbmVkIG1vZGFsIHNob3VsZCBiZSB0aGUgZmlyc3QgdG8gYmUgd2l0aCBub3JtYWwgc2l6ZVxuICAvLyB3aGlsZSB0aGUgZmlyc3Qgb3BlbmVkIG1vZGFsIHNob3VsZCBzaHJpbmtcbiAgY29uc3QgcG9zaXRpb24gPSBbLi4ub3BlbmVkTW9kYWxzXS5yZXZlcnNlKCkuaW5kZXhPZihpZCkgLy8gcmV2ZXJzZSBtZXRob2QgbXV0YXRlIGFycmF5IHNvIHdlIG5lZWQgdG8gY3JlYXRlIGEgbmV3IGFycmF5XG5cbiAgcmV0dXJuIGNyZWF0ZVBvcnRhbChcbiAgICA8U3R5bGVkQmFja2Ryb3BcbiAgICAgIGRhdGEtb3BlblxuICAgICAgb25DbGljaz17aGFuZGxlQ2xvc2V9XG4gICAgICBjbGFzc05hbWU9e2JhY2tkcm9wQ2xhc3NOYW1lfVxuICAgICAgY3NzPXtiYWNrZHJvcENzc31cbiAgICAgIGRhdGEtdGVzdGlkPXtkYXRhVGVzdElkID8gYCR7ZGF0YVRlc3RJZH0tYmFja2Ryb3BgIDogdW5kZWZpbmVkfVxuICAgICAgb25Gb2N1cz17c3RvcEZvY3VzfVxuICAgID5cbiAgICAgIDxTdHlsZWREaWFsb2dcbiAgICAgICAgY3NzPXtkaWFsb2dDc3N9XG4gICAgICAgIG9uS2V5VXA9e2hhbmRsZUtleVVwfVxuICAgICAgICBvbktleURvd249e2hhbmRsZUZvY3VzVHJhcH1cbiAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgIGlkPXtpZH1cbiAgICAgICAgZGF0YS10ZXN0aWQ9e2RhdGFUZXN0SWR9XG4gICAgICAgIGFyaWEtbGFiZWw9e2FyaWFMYWJlbH1cbiAgICAgICAgZGF0YS1wbGFjZW1lbnQ9e3BsYWNlbWVudH1cbiAgICAgICAgZGF0YS1zaXplPXtzaXplfVxuICAgICAgICBvcGVuXG4gICAgICAgIG9uQ2xpY2s9e3N0b3BDbGlja31cbiAgICAgICAgb25DYW5jZWw9e3N0b3BDYW5jZWx9XG4gICAgICAgIG9uQ2xvc2U9e3N0b3BDYW5jZWx9XG4gICAgICAgIGFyaWEtbW9kYWxcbiAgICAgICAgcmVmPXtkaWFsb2dSZWZ9XG4gICAgICAgIHRhYkluZGV4PXswfVxuICAgICAgICBwb3NpdGlvbj17cG9zaXRpb259XG4gICAgICAgIGRhdGEtYW5pbWF0aW9uPXtcbiAgICAgICAgICBvcGVuZWRNb2RhbHMubGVuZ3RoID4gMSAmJlxuICAgICAgICAgIHBvc2l0aW9uID09PSAwICYmXG4gICAgICAgICAgcHJldmlzb3VzT3BlbmVkTW9kYWxlcy5sZW5ndGggPCBvcGVuZWRNb2RhbHMubGVuZ3RoXG4gICAgICAgIH1cbiAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgID5cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgPC9TdHlsZWREaWFsb2c+XG4gICAgPC9TdHlsZWRCYWNrZHJvcD4sXG4gICAgY29udGFpbmVyUmVmLmN1cnJlbnQsXG4gIClcbn1cbiJdfQ== */"));
52
+ const Dialog = ({
53
+ children,
54
+ placement,
55
+ onClose,
56
+ hideOnClickOutside,
57
+ size,
58
+ id,
59
+ ariaLabel,
60
+ className,
61
+ "data-testid": dataTestId,
62
+ preventBodyScroll,
63
+ hideOnEsc,
64
+ backdropClassName,
65
+ dialogCss,
66
+ backdropCss
67
+ }) => {
68
+ const containerRef = React.useRef(document.createElement("div"));
69
+ const dialogRef = React.useRef(null);
70
+ const onCloseRef = React.useRef(onClose);
71
+ const {
72
+ registerModal,
73
+ unregisterModal,
74
+ openedModals,
75
+ previsousOpenedModales
76
+ } = ModalProvider.useModal();
77
+ React.useEffect(() => {
78
+ registerModal(id);
79
+ return () => {
80
+ unregisterModal(id);
81
+ };
82
+ }, [id, registerModal, unregisterModal]);
83
+ React.useEffect(() => {
84
+ const element = containerRef.current;
85
+ document.body.appendChild(element);
86
+ return () => {
87
+ if (document.body.contains(element)) {
88
+ document.body.removeChild(element);
89
+ }
90
+ };
91
+ }, []);
92
+ React.useEffect(() => {
93
+ onCloseRef.current = onClose;
94
+ }, [onClose]);
95
+ React.useEffect(() => {
96
+ dialogRef.current?.focus();
97
+ }, []);
98
+ React.useEffect(() => {
99
+ const previousOverflow = document.body.style.overflow;
100
+ if (preventBodyScroll) {
101
+ document.body.style.overflow = "hidden";
102
+ }
103
+ return () => {
104
+ document.body.style.overflow = previousOverflow;
105
+ };
106
+ }, [preventBodyScroll]);
107
+ const stopFocus = React.useCallback((event) => {
108
+ event.stopPropagation();
109
+ }, []);
110
+ const stopClick = React.useCallback((event) => {
111
+ event.stopPropagation();
112
+ }, []);
113
+ const handleKeyUp = React.useCallback((event) => {
114
+ event.stopPropagation();
115
+ if (event.key === "Escape" && hideOnEsc) {
116
+ event.preventDefault();
117
+ onCloseRef.current();
118
+ }
119
+ }, [hideOnEsc]);
120
+ const handleClose = React.useCallback((event) => {
121
+ event.stopPropagation();
122
+ if (hideOnClickOutside) {
123
+ onCloseRef.current();
124
+ } else {
125
+ dialogRef.current?.focus();
126
+ }
127
+ }, [hideOnClickOutside]);
128
+ const handleFocusTrap = React.useCallback((event) => {
129
+ event.stopPropagation();
130
+ if (event.key === "Escape") {
131
+ event.preventDefault();
132
+ return;
133
+ }
134
+ const isTabPressed = event.key === "Tab";
135
+ if (!isTabPressed) {
136
+ return;
137
+ }
138
+ const focusableEls = dialogRef.current?.querySelectorAll("a[href]:not([disabled]), button:not([disabled]), textarea:not([disabled]), input:not([disabled]), select:not([disabled])") ?? [];
139
+ if (focusableEls.length === 0) {
140
+ event.preventDefault();
141
+ }
142
+ const firstFocusableEl = focusableEls[0];
143
+ const lastFocusableEl = focusableEls[focusableEls.length - 1];
144
+ if (event.shiftKey) {
145
+ if (document.activeElement === firstFocusableEl || document.activeElement === dialogRef.current) {
146
+ lastFocusableEl.focus();
147
+ event.preventDefault();
148
+ }
149
+ } else if (document.activeElement === lastFocusableEl || document.activeElement === dialogRef.current) {
150
+ firstFocusableEl.focus();
151
+ event.preventDefault();
152
+ }
153
+ }, []);
154
+ const stopCancel = (event) => {
155
+ event.preventDefault();
156
+ event.stopPropagation();
157
+ };
158
+ const position = [...openedModals].reverse().indexOf(id);
159
+ return reactDom.createPortal(/* @__PURE__ */ jsxRuntime.jsx(StyledBackdrop, { "data-open": true, onClick: handleClose, className: backdropClassName, css: backdropCss, "data-testid": dataTestId ? `${dataTestId}-backdrop` : void 0, onFocus: stopFocus, children: /* @__PURE__ */ jsxRuntime.jsx(StyledDialog, { css: dialogCss, onKeyUp: handleKeyUp, onKeyDown: handleFocusTrap, className, id, "data-testid": dataTestId, "aria-label": ariaLabel, "data-placement": placement, "data-size": size, open: true, onClick: stopClick, onCancel: stopCancel, onClose: stopCancel, "aria-modal": true, ref: dialogRef, tabIndex: 0, position, "data-animation": openedModals.length > 1 && position === 0 && previsousOpenedModales.length < openedModals.length, size, children }) }), containerRef.current);
160
+ };
161
+ exports.Dialog = Dialog;
162
+ exports.StyledDialog = StyledDialog;
@@ -0,0 +1,13 @@
1
+ import type { DialogProps, ModalPlacement, ModalSize } from '../types';
2
+ type StyledDialogProps = {
3
+ 'data-size': ModalSize;
4
+ 'data-placement': ModalPlacement;
5
+ position: number;
6
+ size: ModalSize;
7
+ };
8
+ export declare const StyledDialog: import("@emotion/styled").StyledComponent<{
9
+ theme?: import("@emotion/react").Theme;
10
+ as?: import("react").ElementType;
11
+ } & StyledDialogProps, import("react").DetailedHTMLProps<import("react").DialogHTMLAttributes<HTMLDialogElement>, HTMLDialogElement>, {}>;
12
+ export declare const Dialog: ({ children, placement, onClose, hideOnClickOutside, size, id, ariaLabel, className, "data-testid": dataTestId, preventBodyScroll, hideOnEsc, backdropClassName, dialogCss, backdropCss, }: DialogProps) => import("react").ReactPortal;
13
+ export {};