@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.
- package/dist/components/Modal/ModalContent.cjs +53 -0
- package/dist/components/Modal/ModalContent.d.ts +17 -0
- package/dist/components/Modal/ModalContent.js +51 -0
- package/dist/components/Modal/ModalProvider.cjs +40 -0
- package/dist/components/Modal/ModalProvider.d.ts +14 -0
- package/dist/components/Modal/ModalProvider.js +40 -0
- package/dist/components/Modal/components/Dialog.cjs +162 -0
- package/dist/components/Modal/components/Dialog.d.ts +13 -0
- package/dist/components/Modal/components/Dialog.js +160 -0
- package/dist/components/Modal/{Disclosure.d.ts → components/Disclosure.d.ts} +1 -1
- package/dist/components/Modal/index.cjs +5 -29
- package/dist/components/Modal/index.js +6 -28
- package/dist/components/Slider/components/DoubleSlider.cjs +30 -23
- package/dist/components/Slider/components/DoubleSlider.js +30 -23
- package/dist/components/Slider/components/Options.cjs +28 -5
- package/dist/components/Slider/components/Options.d.ts +11 -0
- package/dist/components/Slider/components/Options.js +25 -4
- package/dist/components/Slider/components/SingleSlider.cjs +14 -11
- package/dist/components/Slider/components/SingleSlider.js +14 -11
- package/dist/components/Slider/styles.cjs +11 -29
- package/dist/components/Slider/styles.d.ts +1 -12
- package/dist/components/Slider/styles.js +11 -29
- package/dist/components/TextArea/index.cjs +5 -5
- package/dist/components/TextArea/index.js +5 -5
- package/dist/components/UnitInput/index.cjs +5 -5
- package/dist/components/UnitInput/index.js +5 -5
- package/package.json +4 -4
- package/dist/components/Modal/Dialog.cjs +0 -144
- package/dist/components/Modal/Dialog.d.ts +0 -11
- package/dist/components/Modal/Dialog.js +0 -142
- /package/dist/components/Modal/{Disclosure.cjs → components/Disclosure.cjs} +0 -0
- /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 {};
|