@1money/component-ui 0.0.19 → 0.0.21

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 (235) hide show
  1. package/.claude/settings.local.json +2 -1
  2. package/AGENTS.md +7 -1
  3. package/es/components/Alert/Alert.js +5 -6
  4. package/es/components/Alert/style/Alert.css +1 -1
  5. package/es/components/Button/Button.js +29 -1
  6. package/es/components/Button/constants.d.ts +14 -1
  7. package/es/components/Button/constants.js +23 -3
  8. package/es/components/Button/interface.d.ts +9 -0
  9. package/es/components/Cell/Cell.d.ts +5 -0
  10. package/es/components/Cell/Cell.js +57 -0
  11. package/es/components/Cell/index.d.ts +4 -0
  12. package/es/components/Cell/index.js +5 -0
  13. package/es/components/Cell/interface.d.ts +12 -0
  14. package/es/components/{Form → Cell}/interface.js +1 -1
  15. package/es/components/Cell/style/Cell.css +1 -0
  16. package/es/components/Cell/style/css.js +2 -0
  17. package/es/components/Cell/style/index.d.ts +1 -0
  18. package/es/components/Cell/style/index.js +2 -0
  19. package/es/components/Dialog/Dialog.d.ts +4 -0
  20. package/es/components/Dialog/Dialog.js +383 -0
  21. package/es/components/Dialog/constants.d.ts +60 -0
  22. package/es/components/Dialog/constants.js +57 -0
  23. package/es/components/Dialog/index.d.ts +4 -0
  24. package/es/components/Dialog/index.js +5 -0
  25. package/es/components/{Modal → Dialog}/interface.d.ts +7 -7
  26. package/es/components/Dialog/interface.js +2 -0
  27. package/es/components/Dialog/style/Dialog.css +1 -0
  28. package/es/components/Dialog/style/css.js +2 -0
  29. package/es/components/Dialog/style/index.d.ts +1 -0
  30. package/es/components/Dialog/style/index.js +2 -0
  31. package/es/components/Divider/Divider.js +15 -18
  32. package/es/components/Divider/constants.d.ts +36 -0
  33. package/es/components/Divider/constants.js +41 -0
  34. package/es/components/Divider/interface.d.ts +2 -3
  35. package/es/components/Drawer/Drawer.js +13 -129
  36. package/es/components/Drawer/constants.d.ts +8 -5
  37. package/es/components/Drawer/constants.js +9 -6
  38. package/es/components/Drawer/hooks/index.d.ts +4 -0
  39. package/es/components/Drawer/hooks/index.js +5 -0
  40. package/es/components/Drawer/hooks/useBodyScrollLock.d.ts +1 -0
  41. package/es/components/Drawer/hooks/useBodyScrollLock.js +29 -0
  42. package/es/components/Drawer/hooks/useDialogFocus.d.ts +2 -0
  43. package/es/components/Drawer/hooks/useDialogFocus.js +22 -0
  44. package/es/components/Drawer/hooks/useDrawerTransition.d.ts +4 -0
  45. package/es/components/Drawer/hooks/useDrawerTransition.js +57 -0
  46. package/es/components/Drawer/hooks/useEscapeClose.d.ts +1 -0
  47. package/es/components/Drawer/hooks/useEscapeClose.js +16 -0
  48. package/es/components/ProForm/ProForm.js +93 -116
  49. package/es/components/ProForm/ProFormDependency.js +2 -4
  50. package/es/components/ProForm/ProFormItem.d.ts +4 -0
  51. package/es/components/ProForm/ProFormItem.js +213 -0
  52. package/es/components/ProForm/ProFormList.js +5 -6
  53. package/es/components/ProForm/Submitter.js +2 -2
  54. package/es/components/ProForm/context.d.ts +10 -2
  55. package/es/components/ProForm/context.js +17 -14
  56. package/es/components/{Form → ProForm/core}/constants.d.ts +1 -1
  57. package/es/components/ProForm/core/constants.js +18 -0
  58. package/es/components/ProForm/core/hooks/useForm.js +541 -0
  59. package/es/components/ProForm/core/hooks/useFormCore.js +347 -0
  60. package/es/components/ProForm/core/index.d.ts +6 -0
  61. package/es/components/ProForm/core/index.js +6 -0
  62. package/es/components/{Form → ProForm/core}/interface.d.ts +21 -60
  63. package/es/components/ProForm/core/interface.js +2 -0
  64. package/es/components/ProForm/core/useFormItem.d.ts +20 -0
  65. package/es/components/ProForm/core/useFormItem.js +121 -0
  66. package/es/components/ProForm/fields/ProFormFieldSet.js +7 -6
  67. package/es/components/ProForm/fields/createProFormField.js +76 -151
  68. package/es/components/ProForm/index.d.ts +13 -6
  69. package/es/components/ProForm/index.js +21 -9
  70. package/es/components/ProForm/interface.d.ts +79 -44
  71. package/es/components/ProForm/layouts/DialogForm.d.ts +3 -0
  72. package/es/components/ProForm/layouts/DialogForm.js +74 -0
  73. package/es/components/ProForm/layouts/index.d.ts +1 -1
  74. package/es/components/ProForm/layouts/index.js +2 -2
  75. package/es/components/ProForm/style/ProForm.css +1 -1
  76. package/es/components/Select/Select.js +5 -5
  77. package/es/components/Select/SelectFieldShell.js +7 -7
  78. package/es/components/Select/SelectOptionContent.js +5 -5
  79. package/es/components/Select/constants.d.ts +37 -13
  80. package/es/components/Select/constants.js +36 -20
  81. package/es/components/Select/style/Select.css +1 -1
  82. package/es/components/Switch/Switch.js +7 -7
  83. package/es/components/Switch/constants.d.ts +23 -9
  84. package/es/components/Switch/constants.js +26 -11
  85. package/es/components/Switch/interface.d.ts +2 -2
  86. package/es/index.css +1 -1
  87. package/es/index.d.ts +7 -6
  88. package/es/index.js +4 -4
  89. package/lib/components/Alert/Alert.js +5 -6
  90. package/lib/components/Alert/style/Alert.css +1 -1
  91. package/lib/components/Button/Button.js +29 -1
  92. package/lib/components/Button/constants.d.ts +14 -1
  93. package/lib/components/Button/constants.js +23 -3
  94. package/lib/components/Button/interface.d.ts +9 -0
  95. package/lib/components/Cell/Cell.d.ts +5 -0
  96. package/lib/components/Cell/Cell.js +66 -0
  97. package/lib/components/Cell/index.d.ts +4 -0
  98. package/lib/components/Cell/index.js +33 -0
  99. package/lib/components/Cell/interface.d.ts +12 -0
  100. package/lib/components/{Form → Cell}/interface.js +1 -1
  101. package/lib/components/Cell/style/Cell.css +1 -0
  102. package/lib/components/Cell/style/css.js +4 -0
  103. package/lib/components/Cell/style/index.d.ts +1 -0
  104. package/lib/components/Cell/style/index.js +4 -0
  105. package/lib/components/Dialog/Dialog.d.ts +4 -0
  106. package/lib/components/Dialog/Dialog.js +390 -0
  107. package/lib/components/Dialog/constants.d.ts +60 -0
  108. package/lib/components/Dialog/constants.js +64 -0
  109. package/lib/components/Dialog/index.d.ts +4 -0
  110. package/lib/components/Dialog/index.js +33 -0
  111. package/lib/components/{Modal → Dialog}/interface.d.ts +7 -7
  112. package/lib/components/Dialog/interface.js +6 -0
  113. package/lib/components/Dialog/style/Dialog.css +1 -0
  114. package/lib/components/Dialog/style/css.js +4 -0
  115. package/lib/components/Dialog/style/index.d.ts +1 -0
  116. package/lib/components/Dialog/style/index.js +4 -0
  117. package/lib/components/Divider/Divider.js +16 -18
  118. package/lib/components/Divider/constants.d.ts +36 -0
  119. package/lib/components/Divider/constants.js +48 -0
  120. package/lib/components/Divider/interface.d.ts +2 -3
  121. package/lib/components/Drawer/Drawer.js +14 -130
  122. package/lib/components/Drawer/constants.d.ts +8 -5
  123. package/lib/components/Drawer/constants.js +10 -7
  124. package/lib/components/Drawer/hooks/index.d.ts +4 -0
  125. package/lib/components/Drawer/hooks/index.js +34 -0
  126. package/lib/components/Drawer/hooks/useBodyScrollLock.d.ts +1 -0
  127. package/lib/components/Drawer/hooks/useBodyScrollLock.js +35 -0
  128. package/lib/components/Drawer/hooks/useDialogFocus.d.ts +2 -0
  129. package/lib/components/Drawer/hooks/useDialogFocus.js +28 -0
  130. package/lib/components/Drawer/hooks/useDrawerTransition.d.ts +4 -0
  131. package/lib/components/Drawer/hooks/useDrawerTransition.js +64 -0
  132. package/lib/components/Drawer/hooks/useEscapeClose.d.ts +1 -0
  133. package/lib/components/Drawer/hooks/useEscapeClose.js +22 -0
  134. package/lib/components/ProForm/ProForm.js +94 -117
  135. package/lib/components/ProForm/ProFormDependency.js +2 -4
  136. package/lib/components/ProForm/ProFormItem.d.ts +4 -0
  137. package/lib/components/ProForm/ProFormItem.js +222 -0
  138. package/lib/components/ProForm/ProFormList.js +4 -5
  139. package/lib/components/ProForm/Submitter.js +2 -2
  140. package/lib/components/ProForm/context.d.ts +10 -2
  141. package/lib/components/ProForm/context.js +18 -15
  142. package/lib/components/{Form → ProForm/core}/constants.d.ts +1 -1
  143. package/lib/components/ProForm/core/constants.js +24 -0
  144. package/lib/components/ProForm/core/hooks/useForm.js +551 -0
  145. package/lib/components/ProForm/core/hooks/useFormCore.js +354 -0
  146. package/lib/components/ProForm/core/index.d.ts +6 -0
  147. package/lib/components/ProForm/core/index.js +56 -0
  148. package/lib/components/{Form → ProForm/core}/interface.d.ts +21 -60
  149. package/lib/components/ProForm/core/interface.js +6 -0
  150. package/lib/components/ProForm/core/useFormItem.d.ts +20 -0
  151. package/lib/components/ProForm/core/useFormItem.js +131 -0
  152. package/lib/components/ProForm/fields/ProFormFieldSet.js +7 -6
  153. package/lib/components/ProForm/fields/createProFormField.js +76 -151
  154. package/lib/components/ProForm/index.d.ts +13 -6
  155. package/lib/components/ProForm/index.js +46 -33
  156. package/lib/components/ProForm/interface.d.ts +79 -44
  157. package/lib/components/ProForm/layouts/DialogForm.d.ts +3 -0
  158. package/lib/components/ProForm/layouts/DialogForm.js +81 -0
  159. package/lib/components/ProForm/layouts/index.d.ts +1 -1
  160. package/lib/components/ProForm/layouts/index.js +6 -6
  161. package/lib/components/ProForm/style/ProForm.css +1 -1
  162. package/lib/components/Select/Select.js +4 -4
  163. package/lib/components/Select/SelectFieldShell.js +6 -6
  164. package/lib/components/Select/SelectOptionContent.js +4 -4
  165. package/lib/components/Select/constants.d.ts +37 -13
  166. package/lib/components/Select/constants.js +37 -21
  167. package/lib/components/Select/style/Select.css +1 -1
  168. package/lib/components/Switch/Switch.js +6 -6
  169. package/lib/components/Switch/constants.d.ts +23 -9
  170. package/lib/components/Switch/constants.js +27 -12
  171. package/lib/components/Switch/interface.d.ts +2 -2
  172. package/lib/index.css +1 -1
  173. package/lib/index.d.ts +7 -6
  174. package/lib/index.js +69 -63
  175. package/package.json +11 -6
  176. package/es/components/Form/Form.d.ts +0 -4
  177. package/es/components/Form/Form.js +0 -73
  178. package/es/components/Form/FormItem.d.ts +0 -4
  179. package/es/components/Form/FormItem.js +0 -183
  180. package/es/components/Form/constants.js +0 -19
  181. package/es/components/Form/context.d.ts +0 -5
  182. package/es/components/Form/context.js +0 -19
  183. package/es/components/Form/hooks/useForm.js +0 -541
  184. package/es/components/Form/hooks/useFormCore.js +0 -348
  185. package/es/components/Form/index.d.ts +0 -10
  186. package/es/components/Form/index.js +0 -17
  187. package/es/components/Form/style/Form.css +0 -1
  188. package/es/components/Form/style/css.js +0 -2
  189. package/es/components/Form/style/index.d.ts +0 -1
  190. package/es/components/Form/style/index.js +0 -2
  191. package/es/components/Modal/Modal.d.ts +0 -4
  192. package/es/components/Modal/Modal.js +0 -383
  193. package/es/components/Modal/constants.d.ts +0 -58
  194. package/es/components/Modal/constants.js +0 -55
  195. package/es/components/Modal/index.d.ts +0 -4
  196. package/es/components/Modal/index.js +0 -5
  197. package/es/components/Modal/interface.js +0 -2
  198. package/es/components/Modal/style/Modal.css +0 -1
  199. package/es/components/Modal/style/css.js +0 -2
  200. package/es/components/Modal/style/index.d.ts +0 -1
  201. package/es/components/Modal/style/index.js +0 -2
  202. package/es/components/ProForm/layouts/ModalForm.d.ts +0 -3
  203. package/es/components/ProForm/layouts/ModalForm.js +0 -74
  204. package/lib/components/Form/Form.d.ts +0 -4
  205. package/lib/components/Form/Form.js +0 -80
  206. package/lib/components/Form/FormItem.d.ts +0 -4
  207. package/lib/components/Form/FormItem.js +0 -193
  208. package/lib/components/Form/constants.js +0 -25
  209. package/lib/components/Form/context.d.ts +0 -5
  210. package/lib/components/Form/context.js +0 -25
  211. package/lib/components/Form/hooks/useForm.js +0 -551
  212. package/lib/components/Form/hooks/useFormCore.js +0 -355
  213. package/lib/components/Form/index.d.ts +0 -10
  214. package/lib/components/Form/index.js +0 -83
  215. package/lib/components/Form/style/Form.css +0 -1
  216. package/lib/components/Form/style/css.js +0 -4
  217. package/lib/components/Form/style/index.d.ts +0 -1
  218. package/lib/components/Form/style/index.js +0 -4
  219. package/lib/components/Modal/Modal.d.ts +0 -4
  220. package/lib/components/Modal/Modal.js +0 -390
  221. package/lib/components/Modal/constants.d.ts +0 -58
  222. package/lib/components/Modal/constants.js +0 -62
  223. package/lib/components/Modal/index.d.ts +0 -4
  224. package/lib/components/Modal/index.js +0 -33
  225. package/lib/components/Modal/interface.js +0 -6
  226. package/lib/components/Modal/style/Modal.css +0 -1
  227. package/lib/components/Modal/style/css.js +0 -4
  228. package/lib/components/Modal/style/index.d.ts +0 -1
  229. package/lib/components/Modal/style/index.js +0 -4
  230. package/lib/components/ProForm/layouts/ModalForm.d.ts +0 -3
  231. package/lib/components/ProForm/layouts/ModalForm.js +0 -81
  232. /package/es/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
  233. /package/es/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
  234. /package/lib/components/{Form → ProForm/core}/hooks/useForm.d.ts +0 -0
  235. /package/lib/components/{Form → ProForm/core}/hooks/useFormCore.d.ts +0 -0
@@ -0,0 +1,390 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = exports.Dialog = void 0;
8
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _jsxRuntime = require("react/jsx-runtime");
10
+ var _hooks = require("@1money/hooks");
11
+ var _classnames = _interopRequireDefault(require("classnames"));
12
+ var _react = require("react");
13
+ var _Button = require("../Button");
14
+ var _Icons = require("../Icons");
15
+ var _Portal = require("../Portal");
16
+ var _Typography = require("../Typography");
17
+ var _ref3 = require("../../utils/ref");
18
+ var _constants = require("./constants");
19
+ require("./style");
20
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
21
+ var t = {};
22
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
23
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
24
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
25
+ }
26
+ return t;
27
+ };
28
+ var scrollLockCount = 0;
29
+ var getClassName = function getClassName(prefixCls, slot, modifier) {
30
+ var baseClassName = "".concat(_constants.DIALOG_NAMESPACE, "-").concat(prefixCls).concat(slot ? "-".concat(slot) : '');
31
+ return modifier ? "".concat(baseClassName, "-").concat(modifier) : baseClassName;
32
+ };
33
+ var setBodyOverflow = function setBodyOverflow(value) {
34
+ if (typeof document === 'undefined') return;
35
+ document.body.style.overflow = value;
36
+ };
37
+ var lockBodyScroll = function lockBodyScroll() {
38
+ scrollLockCount += 1;
39
+ setBodyOverflow(_constants.DIALOG_DEFAULTS.overflowHidden);
40
+ };
41
+ var unlockBodyScroll = function unlockBodyScroll() {
42
+ scrollLockCount = Math.max(0, scrollLockCount - 1);
43
+ if (scrollLockCount === 0) {
44
+ requestAnimationFrame(function () {
45
+ if (scrollLockCount === 0) {
46
+ setBodyOverflow(_constants.DIALOG_DEFAULTS.overflowReset);
47
+ }
48
+ });
49
+ }
50
+ };
51
+ var useBodyScrollLock = function useBodyScrollLock(locked) {
52
+ var isLockedRef = (0, _react.useRef)(false);
53
+ (0, _react.useEffect)(function () {
54
+ if (!locked || isLockedRef.current) return undefined;
55
+ isLockedRef.current = true;
56
+ lockBodyScroll();
57
+ return function () {
58
+ if (!isLockedRef.current) return;
59
+ isLockedRef.current = false;
60
+ unlockBodyScroll();
61
+ };
62
+ }, [locked]);
63
+ };
64
+ var usePresence = function usePresence(open, delay) {
65
+ var _useState = (0, _react.useState)(open),
66
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
67
+ mounted = _useState2[0],
68
+ setMounted = _useState2[1];
69
+ var closeTimerRef = (0, _react.useRef)(null);
70
+ (0, _react.useEffect)(function () {
71
+ return function () {
72
+ if (closeTimerRef.current !== null) {
73
+ window.clearTimeout(closeTimerRef.current);
74
+ }
75
+ };
76
+ }, []);
77
+ (0, _react.useEffect)(function () {
78
+ if (open) {
79
+ if (closeTimerRef.current !== null) {
80
+ window.clearTimeout(closeTimerRef.current);
81
+ closeTimerRef.current = null;
82
+ }
83
+ setMounted(true);
84
+ return;
85
+ }
86
+ if (!mounted) return;
87
+ closeTimerRef.current = window.setTimeout(function () {
88
+ setMounted(false);
89
+ closeTimerRef.current = null;
90
+ }, delay);
91
+ }, [delay, mounted, open]);
92
+ return mounted;
93
+ };
94
+ var useDialogFocus = function useDialogFocus(active, dialogRef) {
95
+ var previousActiveElementRef = (0, _react.useRef)(null);
96
+ (0, _react.useEffect)(function () {
97
+ if (!active || typeof document === 'undefined') return undefined;
98
+ previousActiveElementRef.current = document.activeElement instanceof HTMLElement ? document.activeElement : null;
99
+ var frame = window.requestAnimationFrame(function () {
100
+ var _a;
101
+ (_a = dialogRef.current) === null || _a === void 0 ? void 0 : _a.focus();
102
+ });
103
+ return function () {
104
+ window.cancelAnimationFrame(frame);
105
+ };
106
+ }, [active, dialogRef]);
107
+ (0, _react.useEffect)(function () {
108
+ var _a, _b;
109
+ if (active) return;
110
+ (_b = (_a = previousActiveElementRef.current) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);
111
+ previousActiveElementRef.current = null;
112
+ }, [active]);
113
+ };
114
+ var useEscapeClose = function useEscapeClose(enabled, onClose) {
115
+ (0, _react.useEffect)(function () {
116
+ if (!enabled || typeof document === 'undefined') return undefined;
117
+ var handleKeyDown = function handleKeyDown(event) {
118
+ if (event.key !== _constants.DIALOG_DEFAULTS.escapeKey) return;
119
+ event.preventDefault();
120
+ void (onClose === null || onClose === void 0 ? void 0 : onClose());
121
+ };
122
+ document.addEventListener(_constants.DIALOG_DEFAULTS.keydownEvent, handleKeyDown);
123
+ return function () {
124
+ document.removeEventListener(_constants.DIALOG_DEFAULTS.keydownEvent, handleKeyDown);
125
+ };
126
+ }, [enabled, onClose]);
127
+ };
128
+ var renderTypographyNode = function renderTypographyNode(node, renderText) {
129
+ if (node == null || typeof node === 'boolean') return null;
130
+ if (typeof node === 'string' || typeof node === 'number') {
131
+ return renderText(node);
132
+ }
133
+ return node;
134
+ };
135
+ var renderIllustrationNode = function renderIllustrationNode(illustration) {
136
+ if (!illustration) return null;
137
+ if (typeof illustration === 'string') {
138
+ return (0, _jsxRuntime.jsx)(_Icons.Icons, {
139
+ name: illustration,
140
+ size: _constants.DIALOG_DEFAULTS.illustrationSize
141
+ });
142
+ }
143
+ return /*#__PURE__*/(0, _react.isValidElement)(illustration) ? illustration : null;
144
+ };
145
+ var toVoidHandler = function toVoidHandler(action) {
146
+ return function () {
147
+ void (action === null || action === void 0 ? void 0 : action());
148
+ };
149
+ };
150
+ var createActionHandler = function createActionHandler(action, buttonClick) {
151
+ return function (event) {
152
+ buttonClick === null || buttonClick === void 0 ? void 0 : buttonClick(event);
153
+ if (event.defaultPrevented || !action) return;
154
+ void action();
155
+ };
156
+ };
157
+ var renderControlButton = function renderControlButton(prefixCls, type, iconNode, onClick) {
158
+ return (0, _jsxRuntime.jsx)("button", {
159
+ type: _constants.DIALOG_DEFAULTS.buttonHtmlType,
160
+ className: (0, _classnames["default"])(getClassName(prefixCls, _constants.DIALOG_SLOT.control), getClassName(prefixCls, _constants.DIALOG_SLOT.control, type)),
161
+ "aria-label": _constants.DIALOG_CONTROL_LABELS[type],
162
+ onClick: toVoidHandler(onClick),
163
+ children: iconNode
164
+ });
165
+ };
166
+ var renderActionButton = function renderActionButton(_ref) {
167
+ var prefixCls = _ref.prefixCls,
168
+ kind = _ref.kind,
169
+ text = _ref.text,
170
+ action = _ref.action,
171
+ buttonProps = _ref.buttonProps;
172
+ var _a;
173
+ if (text == null || !action) return null;
174
+ return (0, _jsxRuntime.jsx)(_Button.Button, Object.assign({}, buttonProps, {
175
+ type: _constants.DIALOG_DEFAULTS.buttonHtmlType,
176
+ size: _constants.DIALOG_DEFAULTS.buttonSize,
177
+ color: (_a = buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.color) !== null && _a !== void 0 ? _a : _constants.DIALOG_DEFAULT_BUTTON_COLORS[kind],
178
+ className: (0, _classnames["default"])(getClassName(prefixCls, _constants.DIALOG_SLOT.actionButton), getClassName(prefixCls, _constants.DIALOG_SLOT.actionButton, kind), buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.className),
179
+ style: buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.style,
180
+ onClick: createActionHandler(action, buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.onClick),
181
+ children: text
182
+ }));
183
+ };
184
+ var resolveFooterNode = function resolveFooterNode(_ref2) {
185
+ var footer = _ref2.footer,
186
+ size = _ref2.size,
187
+ cancelButton = _ref2.cancelButton,
188
+ okButton = _ref2.okButton;
189
+ if (footer === null) return null;
190
+ if (typeof footer === 'function') return footer(cancelButton, okButton);
191
+ if (footer !== undefined) return footer;
192
+ if (!cancelButton && !okButton) return null;
193
+ return size === _constants.DIALOG_SIZE.large ? (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
194
+ children: [cancelButton, okButton]
195
+ }) : (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
196
+ children: [okButton, cancelButton]
197
+ });
198
+ };
199
+ var DialogBase = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
200
+ var className = props.className,
201
+ style = props.style,
202
+ _props$prefixCls = props.prefixCls,
203
+ prefixCls = _props$prefixCls === void 0 ? _constants.DIALOG_DEFAULT_PREFIX : _props$prefixCls,
204
+ _props$open = props.open,
205
+ open = _props$open === void 0 ? false : _props$open,
206
+ _props$size = props.size,
207
+ size = _props$size === void 0 ? _constants.DIALOG_SIZE.small : _props$size,
208
+ _props$maskClosable = props.maskClosable,
209
+ maskClosable = _props$maskClosable === void 0 ? true : _props$maskClosable,
210
+ _props$showCloseIcon = props.showCloseIcon,
211
+ showCloseIcon = _props$showCloseIcon === void 0 ? true : _props$showCloseIcon,
212
+ _props$showBackIcon = props.showBackIcon,
213
+ showBackIcon = _props$showBackIcon === void 0 ? false : _props$showBackIcon,
214
+ _props$fullWidth = props.fullWidth,
215
+ fullWidth = _props$fullWidth === void 0 ? false : _props$fullWidth,
216
+ title = props.title,
217
+ description = props.description,
218
+ children = props.children,
219
+ illustration = props.illustration,
220
+ media = props.media,
221
+ closeIcon = props.closeIcon,
222
+ backIcon = props.backIcon,
223
+ footer = props.footer,
224
+ onOk = props.onOk,
225
+ onCancel = props.onCancel,
226
+ onBack = props.onBack,
227
+ _props$okText = props.okText,
228
+ okText = _props$okText === void 0 ? _constants.DIALOG_DEFAULTS.okText : _props$okText,
229
+ _props$cancelText = props.cancelText,
230
+ cancelText = _props$cancelText === void 0 ? _constants.DIALOG_DEFAULTS.cancelText : _props$cancelText,
231
+ rootStyle = props.rootStyle,
232
+ wrapperStyle = props.wrapperStyle,
233
+ bodyStyle = props.bodyStyle,
234
+ headerStyle = props.headerStyle,
235
+ contentStyle = props.contentStyle,
236
+ footerStyle = props.footerStyle,
237
+ cancelButtonProps = props.cancelButtonProps,
238
+ okButtonProps = props.okButtonProps,
239
+ rest = __rest(props, ["className", "style", "prefixCls", "open", "size", "maskClosable", "showCloseIcon", "showBackIcon", "fullWidth", "title", "description", "children", "illustration", "media", "closeIcon", "backIcon", "footer", "onOk", "onCancel", "onBack", "okText", "cancelText", "rootStyle", "wrapperStyle", "bodyStyle", "headerStyle", "contentStyle", "footerStyle", "cancelButtonProps", "okButtonProps"]);
240
+ var mounted = usePresence(open, _constants.DIALOG_DEFAULTS.closeTimeoutMs);
241
+ var dialogRef = (0, _react.useRef)(null);
242
+ var titleId = (0, _react.useId)();
243
+ var descriptionId = (0, _react.useId)();
244
+ var handleSetDialogRef = (0, _react.useCallback)(function (node) {
245
+ dialogRef.current = node;
246
+ (0, _ref3.fillRef)(ref, node);
247
+ }, [ref]);
248
+ var handleCancel = (0, _hooks.useEventCallback)(function () {
249
+ void (onCancel === null || onCancel === void 0 ? void 0 : onCancel());
250
+ });
251
+ var handleOk = (0, _hooks.useEventCallback)(function () {
252
+ void (onOk === null || onOk === void 0 ? void 0 : onOk());
253
+ });
254
+ var handleBack = (0, _hooks.useEventCallback)(function () {
255
+ void (onBack === null || onBack === void 0 ? void 0 : onBack());
256
+ });
257
+ var handleOverlayClick = (0, _hooks.useEventCallback)(function () {
258
+ if (!maskClosable) return;
259
+ handleCancel();
260
+ });
261
+ useBodyScrollLock(mounted && open);
262
+ useDialogFocus(mounted && open, dialogRef);
263
+ useEscapeClose(mounted && open, handleCancel);
264
+ var hasMedia = media != null;
265
+ var closeControlNode = showCloseIcon ? renderControlButton(prefixCls, _constants.DIALOG_CONTROL_TYPE.close, closeIcon !== null && closeIcon !== void 0 ? closeIcon : (0, _jsxRuntime.jsx)(_Icons.Icons, {
266
+ name: _constants.DIALOG_DEFAULT_ICONS[_constants.DIALOG_CONTROL_TYPE.close],
267
+ size: _constants.DIALOG_DEFAULTS.controlIconSize
268
+ }), handleCancel) : null;
269
+ var backControlNode = showBackIcon ? renderControlButton(prefixCls, _constants.DIALOG_CONTROL_TYPE.back, backIcon !== null && backIcon !== void 0 ? backIcon : (0, _jsxRuntime.jsx)(_Icons.Icons, {
270
+ name: _constants.DIALOG_DEFAULT_ICONS[_constants.DIALOG_CONTROL_TYPE.back],
271
+ size: _constants.DIALOG_DEFAULTS.controlIconSize
272
+ }), handleBack) : null;
273
+ var illustrationNode = renderIllustrationNode(illustration);
274
+ var titleNode = renderTypographyNode(title, function (value) {
275
+ return (0, _jsxRuntime.jsx)(_Typography.TypographyHeadline, {
276
+ size: "md",
277
+ as: "h2",
278
+ color: "default",
279
+ children: value
280
+ });
281
+ });
282
+ var descriptionNode = renderTypographyNode(description, function (value) {
283
+ return (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
284
+ size: "md",
285
+ as: "p",
286
+ strong: true,
287
+ color: "default-secondary",
288
+ children: value
289
+ });
290
+ });
291
+ var childrenNode = renderTypographyNode(children, function (value) {
292
+ return (0, _jsxRuntime.jsx)(_Typography.TypographyBody, {
293
+ size: "md",
294
+ as: "p",
295
+ strong: true,
296
+ color: "default-secondary",
297
+ children: value
298
+ });
299
+ });
300
+ var cancelButton = renderActionButton({
301
+ prefixCls: prefixCls,
302
+ kind: _constants.DIALOG_ACTION_KIND.cancel,
303
+ text: cancelText,
304
+ action: onCancel,
305
+ buttonProps: cancelButtonProps
306
+ });
307
+ var okButton = renderActionButton({
308
+ prefixCls: prefixCls,
309
+ kind: _constants.DIALOG_ACTION_KIND.ok,
310
+ text: okText,
311
+ action: onOk,
312
+ buttonProps: okButtonProps
313
+ });
314
+ var footerNode = resolveFooterNode({
315
+ footer: footer,
316
+ size: size,
317
+ cancelButton: cancelButton,
318
+ okButton: okButton
319
+ });
320
+ if (!mounted) return null;
321
+ return (0, _jsxRuntime.jsx)(_Portal.Portal, {
322
+ children: (0, _jsxRuntime.jsxs)("div", {
323
+ style: rootStyle,
324
+ className: (0, _classnames["default"])(getClassName(prefixCls, _constants.DIALOG_SLOT.root), getClassName(prefixCls, _constants.DIALOG_SLOT.root, open ? _constants.DIALOG_MODIFIER.open : _constants.DIALOG_MODIFIER.closed)),
325
+ children: [(0, _jsxRuntime.jsx)("div", {
326
+ "aria-hidden": "true",
327
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.overlay),
328
+ onClick: handleOverlayClick
329
+ }), (0, _jsxRuntime.jsx)("div", {
330
+ style: wrapperStyle,
331
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.wrapper),
332
+ children: (0, _jsxRuntime.jsxs)("div", Object.assign({}, rest, {
333
+ ref: handleSetDialogRef,
334
+ role: "dialog",
335
+ "aria-modal": "true",
336
+ "aria-labelledby": title ? titleId : undefined,
337
+ "aria-describedby": description ? descriptionId : undefined,
338
+ tabIndex: -1,
339
+ style: style,
340
+ className: (0, _classnames["default"])(getClassName(prefixCls), getClassName(prefixCls, undefined, size), fullWidth && getClassName(prefixCls, undefined, _constants.DIALOG_MODIFIER.fullWidth), hasMedia && getClassName(prefixCls, undefined, _constants.DIALOG_MODIFIER.withMedia), className),
341
+ children: [closeControlNode, hasMedia && (0, _jsxRuntime.jsx)("div", {
342
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.media),
343
+ children: media
344
+ }), (0, _jsxRuntime.jsxs)("div", {
345
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.inner),
346
+ children: [backControlNode && (0, _jsxRuntime.jsx)("div", {
347
+ style: headerStyle,
348
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.header),
349
+ children: backControlNode
350
+ }), (0, _jsxRuntime.jsxs)("div", {
351
+ style: bodyStyle,
352
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.body),
353
+ children: [(illustrationNode || titleNode || descriptionNode) && (0, _jsxRuntime.jsxs)("div", {
354
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.summary),
355
+ children: [illustrationNode && (0, _jsxRuntime.jsx)("div", {
356
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.illustration),
357
+ children: illustrationNode
358
+ }), (titleNode || descriptionNode) && (0, _jsxRuntime.jsxs)("div", {
359
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.copy),
360
+ children: [titleNode && (0, _jsxRuntime.jsx)("div", {
361
+ id: titleId,
362
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.title),
363
+ children: titleNode
364
+ }), descriptionNode && (0, _jsxRuntime.jsx)("div", {
365
+ id: descriptionId,
366
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.description),
367
+ children: descriptionNode
368
+ })]
369
+ })]
370
+ }), childrenNode && (0, _jsxRuntime.jsx)("div", {
371
+ style: contentStyle,
372
+ className: getClassName(prefixCls, _constants.DIALOG_SLOT.content),
373
+ children: childrenNode
374
+ })]
375
+ }), footerNode && (0, _jsxRuntime.jsx)("div", {
376
+ style: footerStyle,
377
+ className: (0, _classnames["default"])(getClassName(prefixCls, _constants.DIALOG_SLOT.footer), getClassName(prefixCls, _constants.DIALOG_SLOT.footer, size)),
378
+ children: footerNode
379
+ })]
380
+ })]
381
+ }))
382
+ })]
383
+ })
384
+ });
385
+ });
386
+ DialogBase.displayName = 'Dialog';
387
+ var Dialog = exports.Dialog = /*#__PURE__*/(0, _react.memo)(DialogBase);
388
+ Dialog.displayName = 'Dialog';
389
+ var _default = exports["default"] = Dialog;
390
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRGlhbG9nL0RpYWxvZy50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX2hvb2tzIiwiX2NsYXNzbmFtZXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0IiwiX0J1dHRvbiIsIl9JY29ucyIsIl9Qb3J0YWwiLCJfVHlwb2dyYXBoeSIsIl9yZWYzIiwiX2NvbnN0YW50cyIsIl9fcmVzdCIsInMiLCJlIiwidCIsInAiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJpbmRleE9mIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiaSIsImxlbmd0aCIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwic2Nyb2xsTG9ja0NvdW50IiwiZ2V0Q2xhc3NOYW1lIiwicHJlZml4Q2xzIiwic2xvdCIsIm1vZGlmaWVyIiwiYmFzZUNsYXNzTmFtZSIsImNvbmNhdCIsIkRJQUxPR19OQU1FU1BBQ0UiLCJzZXRCb2R5T3ZlcmZsb3ciLCJ2YWx1ZSIsImRvY3VtZW50IiwiYm9keSIsInN0eWxlIiwib3ZlcmZsb3ciLCJsb2NrQm9keVNjcm9sbCIsIkRJQUxPR19ERUZBVUxUUyIsIm92ZXJmbG93SGlkZGVuIiwidW5sb2NrQm9keVNjcm9sbCIsIk1hdGgiLCJtYXgiLCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWUiLCJvdmVyZmxvd1Jlc2V0IiwidXNlQm9keVNjcm9sbExvY2siLCJsb2NrZWQiLCJpc0xvY2tlZFJlZiIsInVzZVJlZiIsInVzZUVmZmVjdCIsImN1cnJlbnQiLCJ1bmRlZmluZWQiLCJ1c2VQcmVzZW5jZSIsIm9wZW4iLCJkZWxheSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsIm1vdW50ZWQiLCJzZXRNb3VudGVkIiwiY2xvc2VUaW1lclJlZiIsIndpbmRvdyIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJ1c2VEaWFsb2dGb2N1cyIsImFjdGl2ZSIsImRpYWxvZ1JlZiIsInByZXZpb3VzQWN0aXZlRWxlbWVudFJlZiIsImFjdGl2ZUVsZW1lbnQiLCJIVE1MRWxlbWVudCIsImZyYW1lIiwiX2EiLCJmb2N1cyIsImNhbmNlbEFuaW1hdGlvbkZyYW1lIiwiX2IiLCJ1c2VFc2NhcGVDbG9zZSIsImVuYWJsZWQiLCJvbkNsb3NlIiwiaGFuZGxlS2V5RG93biIsImV2ZW50Iiwia2V5IiwiZXNjYXBlS2V5IiwicHJldmVudERlZmF1bHQiLCJhZGRFdmVudExpc3RlbmVyIiwia2V5ZG93bkV2ZW50IiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsInJlbmRlclR5cG9ncmFwaHlOb2RlIiwibm9kZSIsInJlbmRlclRleHQiLCJyZW5kZXJJbGx1c3RyYXRpb25Ob2RlIiwiaWxsdXN0cmF0aW9uIiwiX2pzeCIsIkljb25zIiwibmFtZSIsInNpemUiLCJpbGx1c3RyYXRpb25TaXplIiwiaXNWYWxpZEVsZW1lbnQiLCJ0b1ZvaWRIYW5kbGVyIiwiYWN0aW9uIiwiY3JlYXRlQWN0aW9uSGFuZGxlciIsImJ1dHRvbkNsaWNrIiwiZGVmYXVsdFByZXZlbnRlZCIsInJlbmRlckNvbnRyb2xCdXR0b24iLCJ0eXBlIiwiaWNvbk5vZGUiLCJvbkNsaWNrIiwiYnV0dG9uSHRtbFR5cGUiLCJjbGFzc05hbWUiLCJjbGFzc05hbWVzIiwiRElBTE9HX1NMT1QiLCJjb250cm9sIiwiRElBTE9HX0NPTlRST0xfTEFCRUxTIiwiY2hpbGRyZW4iLCJyZW5kZXJBY3Rpb25CdXR0b24iLCJfcmVmIiwia2luZCIsInRleHQiLCJidXR0b25Qcm9wcyIsIkJ1dHRvbiIsImFzc2lnbiIsImJ1dHRvblNpemUiLCJjb2xvciIsIkRJQUxPR19ERUZBVUxUX0JVVFRPTl9DT0xPUlMiLCJhY3Rpb25CdXR0b24iLCJyZXNvbHZlRm9vdGVyTm9kZSIsIl9yZWYyIiwiZm9vdGVyIiwiY2FuY2VsQnV0dG9uIiwib2tCdXR0b24iLCJESUFMT0dfU0laRSIsImxhcmdlIiwiX2pzeHMiLCJfRnJhZ21lbnQiLCJEaWFsb2dCYXNlIiwiZm9yd2FyZFJlZiIsInByb3BzIiwicmVmIiwiX3Byb3BzJHByZWZpeENscyIsIkRJQUxPR19ERUZBVUxUX1BSRUZJWCIsIl9wcm9wcyRvcGVuIiwiX3Byb3BzJHNpemUiLCJzbWFsbCIsIl9wcm9wcyRtYXNrQ2xvc2FibGUiLCJtYXNrQ2xvc2FibGUiLCJfcHJvcHMkc2hvd0Nsb3NlSWNvbiIsInNob3dDbG9zZUljb24iLCJfcHJvcHMkc2hvd0JhY2tJY29uIiwic2hvd0JhY2tJY29uIiwiX3Byb3BzJGZ1bGxXaWR0aCIsImZ1bGxXaWR0aCIsInRpdGxlIiwiZGVzY3JpcHRpb24iLCJtZWRpYSIsImNsb3NlSWNvbiIsImJhY2tJY29uIiwib25PayIsIm9uQ2FuY2VsIiwib25CYWNrIiwiX3Byb3BzJG9rVGV4dCIsIm9rVGV4dCIsIl9wcm9wcyRjYW5jZWxUZXh0IiwiY2FuY2VsVGV4dCIsInJvb3RTdHlsZSIsIndyYXBwZXJTdHlsZSIsImJvZHlTdHlsZSIsImhlYWRlclN0eWxlIiwiY29udGVudFN0eWxlIiwiZm9vdGVyU3R5bGUiLCJjYW5jZWxCdXR0b25Qcm9wcyIsIm9rQnV0dG9uUHJvcHMiLCJyZXN0IiwiY2xvc2VUaW1lb3V0TXMiLCJ0aXRsZUlkIiwidXNlSWQiLCJkZXNjcmlwdGlvbklkIiwiaGFuZGxlU2V0RGlhbG9nUmVmIiwidXNlQ2FsbGJhY2siLCJmaWxsUmVmIiwiaGFuZGxlQ2FuY2VsIiwidXNlRXZlbnRDYWxsYmFjayIsImhhbmRsZU9rIiwiaGFuZGxlQmFjayIsImhhbmRsZU92ZXJsYXlDbGljayIsImhhc01lZGlhIiwiY2xvc2VDb250cm9sTm9kZSIsIkRJQUxPR19DT05UUk9MX1RZUEUiLCJjbG9zZSIsIkRJQUxPR19ERUZBVUxUX0lDT05TIiwiY29udHJvbEljb25TaXplIiwiYmFja0NvbnRyb2xOb2RlIiwiYmFjayIsImlsbHVzdHJhdGlvbk5vZGUiLCJ0aXRsZU5vZGUiLCJUeXBvZ3JhcGh5SGVhZGxpbmUiLCJhcyIsImRlc2NyaXB0aW9uTm9kZSIsIlR5cG9ncmFwaHlCb2R5Iiwic3Ryb25nIiwiY2hpbGRyZW5Ob2RlIiwiRElBTE9HX0FDVElPTl9LSU5EIiwiY2FuY2VsIiwib2siLCJmb290ZXJOb2RlIiwiUG9ydGFsIiwicm9vdCIsIkRJQUxPR19NT0RJRklFUiIsImNsb3NlZCIsIm92ZXJsYXkiLCJ3cmFwcGVyIiwicm9sZSIsInRhYkluZGV4Iiwid2l0aE1lZGlhIiwiaW5uZXIiLCJoZWFkZXIiLCJzdW1tYXJ5IiwiY29weSIsImlkIiwiY29udGVudCIsImRpc3BsYXlOYW1lIiwiRGlhbG9nIiwiZXhwb3J0cyIsIm1lbW8iLCJfZGVmYXVsdCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFXQSxJQUFBQSxXQUFBLEdBQUFDLE9BQUE7QUNYQSxJQUFBQyxNQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxXQUFBLEdBQUFDLHNCQUFBLENBQUFILE9BQUE7QUFDQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFVQSxJQUFBSyxPQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxNQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxPQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxXQUFBLEdBQUFSLE9BQUE7QUFDQSxJQUFBUyxLQUFBLEdBQUFULE9BQUE7QUFJQSxJQUFBVSxVQUFBLEdBQUFWLE9BQUE7QUFlQUEsT0FBQTtBRG5DQSxJQUFJVyxNQUFNLEdBQUksVUFBUSxTQUFLQSxNQUFNLElBQUssVUFBVUMsQ0FBQyxFQUFFQyxDQUFDLEVBQUU7RUFDbEQsSUFBSUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLEtBQUssSUFBSUMsQ0FBQyxJQUFJSCxDQUFDLEVBQUUsSUFBSUksTUFBTSxDQUFDQyxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDUCxDQUFDLEVBQUVHLENBQUMsQ0FBQyxJQUFJRixDQUFDLENBQUNPLE9BQU8sQ0FBQ0wsQ0FBQyxDQUFD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LGVBQUEsRUFBQSxLQUFBLEVBQUE7Z0JBQ0V6RCxLQUFLLEVBQUVvSSxZQUFZO2dCQUNuQjNELFNBQVMsRUFBRXBGLFlBQVksQ0FBQ0MsU0FBUyxFQUFFcUYsc0JBQVcsQ0FBQzRHLE9BQU8sQ0FBQztnQkFBQXpHLFFBQUEsRUFFdERzRjtjQUFZLENBQUEsQ0FFaEI7WUFBQSxDQUFBLENBQ0csRUFDTEksVUFBVSxJQUNULElBQUEvRyxlQUFBLEVBQUEsS0FBQSxFQUFBO2NBQ0V6RCxLQUFLLEVBQUVxSSxXQUFXO2NBQ2xCNUQsU0FBUyxFQUFFLElBQUFDLHNCQUFVLEVBQ25CckYsWUFBWSxDQUFDQyxTQUFTLEVBQUVxRixzQkFBVyxDQUFDaUIsTUFBTSxDQUFDLEVBQzNDdkcsWUFBWSxDQUFDQyxTQUFTLEVBQUVxRixzQkFBVyxDQUFDaUIsTUFBTSxFQUFFaEMsSUFBSSxDQUFDLENBQ2xEO2NBQUFrQixRQUFBLEVBRUEwRjtZQUFVLENBQUEsQ0FFZDtVQUFBLENBQUEsQ0FDRztRQUFBLENBQUEsQ0FBQTtNQUNGLENBQUEsQ0FDRjtJQUFBLENBQUE7RUFDRixDQUFBLENBQ0M7QUFFYixDQUFDLENBQUM7QUFFRnJFLFVBQVUsQ0FBQ3FGLFdBQVcsR0FBRyxRQUFRO0FBRTFCLElBQU1DLE1BQU0sR0FBQUMsT0FBQSxDQUFBRCxNQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQ3hGLFVBQVUsQ0FBQztBQUV0Q3NGLE1BQU0sQ0FBQ0QsV0FBVyxHQUFHLFFBQVE7QUFBQyxJQUFBSSxRQUFBLEdBQUFGLE9BQUEsY0FFZkQsTUFBTSIsImZpbGUiOiJjb21wb25lbnRzL0RpYWxvZy9EaWFsb2cuanMiLCJzb3VyY2VzQ29udGVudCI6WyJ2YXIgX19yZXN0ID0gKHRoaXMgJiYgdGhpcy5fX3Jlc3QpIHx8IGZ1bmN0aW9uIChzLCBlKSB7XG4gICAgdmFyIHQgPSB7fTtcbiAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkgJiYgZS5pbmRleE9mKHApIDwgMClcbiAgICAgICAgdFtwXSA9IHNbcF07XG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxuICAgICAgICBmb3IgKHZhciBpID0gMCwgcCA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMocyk7IGkgPCBwLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoZS5pbmRleE9mKHBbaV0pIDwgMCAmJiBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlLmNhbGwocywgcFtpXSkpXG4gICAgICAgICAgICAgICAgdFtwW2ldXSA9IHNbcFtpXV07XG4gICAgICAgIH1cbiAgICByZXR1cm4gdDtcbn07XG5pbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyB1c2VFdmVudENhbGxiYWNrIH0gZnJvbSAnQDFtb25leS9ob29rcyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB7IGZvcndhcmRSZWYsIGlzVmFsaWRFbGVtZW50LCBtZW1vLCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VJZCwgdXNlUmVmLCB1c2VTdGF0ZSwgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCdXR0b24gfSBmcm9tICcuLi9CdXR0b24nO1xuaW1wb3J0IHsgSWNvbnMgfSBmcm9tICcuLi9JY29ucyc7XG5pbXBvcnQgeyBQb3J0YWwgfSBmcm9tICcuLi9Qb3J0YWwnO1xuaW1wb3J0IHsgVHlwb2dyYXBoeUJvZHksIFR5cG9ncmFwaHlIZWFkbGluZSB9IGZyb20gJy4uL1R5cG9ncmFwaHknO1xuaW1wb3J0IHsgZmlsbFJlZiB9IGZyb20gJy4uLy4uL3V0aWxzL3JlZic7XG5pbXBvcnQgeyBESUFMT0dfQUNUSU9OX0tJTkQsIERJQUxPR19DT05UUk9MX0xBQkVMUywgRElBTE9HX0NPTlRST0xfVFlQRSwgRElBTE9HX0RFRkFVTFRfQlVUVE9OX0NPTE9SUywgRElBTE9HX0RFRkFVTFRfSUNPTlMsIERJQUxPR19ERUZBVUxUX1BSRUZJWCwgRElBTE9HX0RFRkFVTFRTLCBESUFMT0dfTU9ESUZJRVIsIERJQUxPR19OQU1FU1BBQ0UsIERJQUxPR19TSVpFLCBESUFMT0dfU0xPVCwgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgJy4vc3R5bGUnO1xubGV0IHNjcm9sbExvY2tDb3VudCA9IDA7XG5jb25zdCBnZXRDbGFzc05hbWUgPSAocHJlZml4Q2xzLCBzbG90LCBtb2RpZmllcikgPT4ge1xuICAgIGNvbnN0IGJhc2VDbGFzc05hbWUgPSBgJHtESUFMT0dfTkFNRVNQQUNFfS0ke3ByZWZpeENsc30ke3Nsb3QgPyBgLSR7c2xvdH1gIDogJyd9YDtcbiAgICByZXR1cm4gbW9kaWZpZXIgPyBgJHtiYXNlQ2xhc3NOYW1lfS0ke21vZGlmaWVyfWAgOiBiYXNlQ2xhc3NOYW1lO1xufTtcbmNvbnN0IHNldEJvZHlPdmVyZmxvdyA9ICh2YWx1ZSkgPT4ge1xuICAgIGlmICh0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICByZXR1cm47XG4gICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9IHZhbHVlO1xufTtcbmNvbnN0IGxvY2tCb2R5U2Nyb2xsID0gKCkgPT4ge1xuICAgIHNjcm9sbExvY2tDb3VudCArPSAxO1xuICAgIHNldEJvZHlPdmVyZmxvdyhESUFMT0dfREVGQVVMVFMub3ZlcmZsb3dIaWRkZW4pO1xufTtcbmNvbnN0IHVubG9ja0JvZHlTY3JvbGwgPSAoKSA9PiB7XG4gICAgc2Nyb2xsTG9ja0NvdW50ID0gTWF0aC5tYXgoMCwgc2Nyb2xsTG9ja0NvdW50IC0gMSk7XG4gICAgaWYgKHNjcm9sbExvY2tDb3VudCA9PT0gMCkge1xuICAgICAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHNjcm9sbExvY2tDb3VudCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIHNldEJvZHlPdmVyZmxvdyhESUFMT0dfREVGQVVMVFMub3ZlcmZsb3dSZXNldCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbn07XG5jb25zdCB1c2VCb2R5U2Nyb2xsTG9jayA9IChsb2NrZWQpID0+IHtcbiAgICBjb25zdCBpc0xvY2tlZFJlZiA9IHVzZVJlZihmYWxzZSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFsb2NrZWQgfHwgaXNMb2NrZWRSZWYuY3VycmVudClcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgIGlzTG9ja2VkUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgICBsb2NrQm9keVNjcm9sbCgpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFpc0xvY2tlZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlzTG9ja2VkUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgICAgIHVubG9ja0JvZHlTY3JvbGwoKTtcbiAgICAgICAgfTtcbiAgICB9LCBbbG9ja2VkXSk7XG59O1xuY29uc3QgdXNlUHJlc2VuY2UgPSAob3BlbiwgZGVsYXkpID0+IHtcbiAgICBjb25zdCBbbW91bnRlZCwgc2V0TW91bnRlZF0gPSB1c2VTdGF0ZShvcGVuKTtcbiAgICBjb25zdCBjbG9zZVRpbWVyUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoY2xvc2VUaW1lclJlZi5jdXJyZW50ICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgd2luZG93LmNsZWFyVGltZW91dChjbG9zZVRpbWVyUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH0sIFtdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAob3Blbikge1xuICAgICAgICAgICAgaWYgKGNsb3NlVGltZXJSZWYuY3VycmVudCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQoY2xvc2VUaW1lclJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgICAgICBjbG9zZVRpbWVyUmVmLmN1cnJlbnQgPSBudWxsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2V0TW91bnRlZCh0cnVlKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIW1vdW50ZWQpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNsb3NlVGltZXJSZWYuY3VycmVudCA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIHNldE1vdW50ZWQoZmFsc2UpO1xuICAgICAgICAgICAgY2xvc2VUaW1lclJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICAgICAgfSwgZGVsYXkpO1xuICAgIH0sIFtkZWxheSwgbW91bnRlZCwgb3Blbl0pO1xuICAgIHJldHVybiBtb3VudGVkO1xufTtcbmNvbnN0IHVzZURpYWxvZ0ZvY3VzID0gKGFjdGl2ZSwgZGlhbG9nUmVmKSA9PiB7XG4gICAgY29uc3QgcHJldmlvdXNBY3RpdmVFbGVtZW50UmVmID0gdXNlUmVmKG51bGwpO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghYWN0aXZlIHx8IHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICBwcmV2aW91c0FjdGl2ZUVsZW1lbnRSZWYuY3VycmVudCA9XG4gICAgICAgICAgICBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgPyBkb2N1bWVudC5hY3RpdmVFbGVtZW50IDogbnVsbDtcbiAgICAgICAgY29uc3QgZnJhbWUgPSB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgIHZhciBfYTtcbiAgICAgICAgICAgIChfYSA9IGRpYWxvZ1JlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZm9jdXMoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICB3aW5kb3cuY2FuY2VsQW5pbWF0aW9uRnJhbWUoZnJhbWUpO1xuICAgICAgICB9O1xuICAgIH0sIFthY3RpdmUsIGRpYWxvZ1JlZl0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2I7XG4gICAgICAgIGlmIChhY3RpdmUpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIChfYiA9IChfYSA9IHByZXZpb3VzQWN0aXZlRWxlbWVudFJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuZm9jdXMpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5jYWxsKF9hKTtcbiAgICAgICAgcHJldmlvdXNBY3RpdmVFbGVtZW50UmVmLmN1cnJlbnQgPSBudWxsO1xuICAgIH0sIFthY3RpdmVdKTtcbn07XG5jb25zdCB1c2VFc2NhcGVDbG9zZSA9IChlbmFibGVkLCBvbkNsb3NlKSA9PiB7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCFlbmFibGVkIHx8IHR5cGVvZiBkb2N1bWVudCA9PT0gJ3VuZGVmaW5lZCcpXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBoYW5kbGVLZXlEb3duID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQua2V5ICE9PSBESUFMT0dfREVGQVVMVFMuZXNjYXBlS2V5KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB2b2lkIChvbkNsb3NlID09PSBudWxsIHx8IG9uQ2xvc2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQ2xvc2UoKSk7XG4gICAgICAgIH07XG4gICAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoRElBTE9HX0RFRkFVTFRTLmtleWRvd25FdmVudCwgaGFuZGxlS2V5RG93bik7XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKERJQUxPR19ERUZBVUxUUy5rZXlkb3duRXZlbnQsIGhhbmRsZUtleURvd24pO1xuICAgICAgICB9O1xuICAgIH0sIFtlbmFibGVkLCBvbkNsb3NlXSk7XG59O1xuY29uc3QgcmVuZGVyVHlwb2dyYXBoeU5vZGUgPSAobm9kZSwgcmVuZGVyVGV4dCkgPT4ge1xuICAgIGlmIChub2RlID09IG51bGwgfHwgdHlwZW9mIG5vZGUgPT09ICdib29sZWFuJylcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgaWYgKHR5cGVvZiBub2RlID09PSAnc3RyaW5nJyB8fCB0eXBlb2Ygbm9kZSA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgcmV0dXJuIHJlbmRlclRleHQobm9kZSk7XG4gICAgfVxuICAgIHJldHVybiBub2RlO1xufTtcbmNvbnN0IHJlbmRlcklsbHVzdHJhdGlvbk5vZGUgPSAoaWxsdXN0cmF0aW9uKSA9PiB7XG4gICAgaWYgKCFpbGx1c3RyYXRpb24pXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGlmICh0eXBlb2YgaWxsdXN0cmF0aW9uID09PSAnc3RyaW5nJykge1xuICAgICAgICByZXR1cm4gX2pzeChJY29ucywgeyBuYW1lOiBpbGx1c3RyYXRpb24sIHNpemU6IERJQUxPR19ERUZBVUxUUy5pbGx1c3RyYXRpb25TaXplIH0pO1xuICAgIH1cbiAgICByZXR1cm4gaXNWYWxpZEVsZW1lbnQoaWxsdXN0cmF0aW9uKSA/IGlsbHVzdHJhdGlvbiA6IG51bGw7XG59O1xuY29uc3QgdG9Wb2lkSGFuZGxlciA9IChhY3Rpb24pID0+ICgpID0+IHtcbiAgICB2b2lkIChhY3Rpb24gPT09IG51bGwgfHwgYWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhY3Rpb24oKSk7XG59O1xuY29uc3QgY3JlYXRlQWN0aW9uSGFuZGxlciA9IChhY3Rpb24sIGJ1dHRvbkNsaWNrKSA9PiAoZXZlbnQpID0+IHtcbiAgICBidXR0b25DbGljayA9PT0gbnVsbCB8fCBidXR0b25DbGljayA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uQ2xpY2soZXZlbnQpO1xuICAgIGlmIChldmVudC5kZWZhdWx0UHJldmVudGVkIHx8ICFhY3Rpb24pXG4gICAgICAgIHJldHVybjtcbiAgICB2b2lkIGFjdGlvbigpO1xufTtcbmNvbnN0IHJlbmRlckNvbnRyb2xCdXR0b24gPSAocHJlZml4Q2xzLCB0eXBlLCBpY29uTm9kZSwgb25DbGljaykgPT4gKF9qc3goXCJidXR0b25cIiwgeyB0eXBlOiBESUFMT0dfREVGQVVMVFMuYnV0dG9uSHRtbFR5cGUsIGNsYXNzTmFtZTogY2xhc3NOYW1lcyhnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5jb250cm9sKSwgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuY29udHJvbCwgdHlwZSkpLCBcImFyaWEtbGFiZWxcIjogRElBTE9HX0NPTlRST0xfTEFCRUxTW3R5cGVdLCBvbkNsaWNrOiB0b1ZvaWRIYW5kbGVyKG9uQ2xpY2spLCBjaGlsZHJlbjogaWNvbk5vZGUgfSkpO1xuY29uc3QgcmVuZGVyQWN0aW9uQnV0dG9uID0gKHsgcHJlZml4Q2xzLCBraW5kLCB0ZXh0LCBhY3Rpb24sIGJ1dHRvblByb3BzLCB9KSA9PiB7XG4gICAgdmFyIF9hO1xuICAgIGlmICh0ZXh0ID09IG51bGwgfHwgIWFjdGlvbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIChfanN4KEJ1dHRvbiwgT2JqZWN0LmFzc2lnbih7fSwgYnV0dG9uUHJvcHMsIHsgdHlwZTogRElBTE9HX0RFRkFVTFRTLmJ1dHRvbkh0bWxUeXBlLCBzaXplOiBESUFMT0dfREVGQVVMVFMuYnV0dG9uU2l6ZSwgY29sb3I6IChfYSA9IGJ1dHRvblByb3BzID09PSBudWxsIHx8IGJ1dHRvblByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidXR0b25Qcm9wcy5jb2xvcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogRElBTE9HX0RFRkFVTFRfQlVUVE9OX0NPTE9SU1traW5kXSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmFjdGlvbkJ1dHRvbiksIGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmFjdGlvbkJ1dHRvbiwga2luZCksIGJ1dHRvblByb3BzID09PSBudWxsIHx8IGJ1dHRvblByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBidXR0b25Qcm9wcy5jbGFzc05hbWUpLCBzdHlsZTogYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLnN0eWxlLCBvbkNsaWNrOiBjcmVhdGVBY3Rpb25IYW5kbGVyKGFjdGlvbiwgYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLm9uQ2xpY2spLCBjaGlsZHJlbjogdGV4dCB9KSkpO1xufTtcbmNvbnN0IHJlc29sdmVGb290ZXJOb2RlID0gKHsgZm9vdGVyLCBzaXplLCBjYW5jZWxCdXR0b24sIG9rQnV0dG9uLCB9KSA9PiB7XG4gICAgaWYgKGZvb3RlciA9PT0gbnVsbClcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgaWYgKHR5cGVvZiBmb290ZXIgPT09ICdmdW5jdGlvbicpXG4gICAgICAgIHJldHVybiBmb290ZXIoY2FuY2VsQnV0dG9uLCBva0J1dHRvbik7XG4gICAgaWYgKGZvb3RlciAhPT0gdW5kZWZpbmVkKVxuICAgICAgICByZXR1cm4gZm9vdGVyO1xuICAgIGlmICghY2FuY2VsQnV0dG9uICYmICFva0J1dHRvbilcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHNpemUgPT09IERJQUxPR19TSVpFLmxhcmdlXG4gICAgICAgID8gKF9qc3hzKF9GcmFnbWVudCwgeyBjaGlsZHJlbjogW2NhbmNlbEJ1dHRvbiwgb2tCdXR0b25dIH0pKVxuICAgICAgICA6IChfanN4cyhfRnJhZ21lbnQsIHsgY2hpbGRyZW46IFtva0J1dHRvbiwgY2FuY2VsQnV0dG9uXSB9KSk7XG59O1xuY29uc3QgRGlhbG9nQmFzZSA9IGZvcndhcmRSZWYoKHByb3BzLCByZWYpID0+IHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9IERJQUxPR19ERUZBVUxUX1BSRUZJWCwgb3BlbiA9IGZhbHNlLCBzaXplID0gRElBTE9HX1NJWkUuc21hbGwsIG1hc2tDbG9zYWJsZSA9IHRydWUsIHNob3dDbG9zZUljb24gPSB0cnVlLCBzaG93QmFja0ljb24gPSBmYWxzZSwgZnVsbFdpZHRoID0gZmFsc2UsIHRpdGxlLCBkZXNjcmlwdGlvbiwgY2hpbGRyZW4sIGlsbHVzdHJhdGlvbiwgbWVkaWEsIGNsb3NlSWNvbiwgYmFja0ljb24sIGZvb3Rlciwgb25Paywgb25DYW5jZWwsIG9uQmFjaywgb2tUZXh0ID0gRElBTE9HX0RFRkFVTFRTLm9rVGV4dCwgY2FuY2VsVGV4dCA9IERJQUxPR19ERUZBVUxUUy5jYW5jZWxUZXh0LCByb290U3R5bGUsIHdyYXBwZXJTdHlsZSwgYm9keVN0eWxlLCBoZWFkZXJTdHlsZSwgY29udGVudFN0eWxlLCBmb290ZXJTdHlsZSwgY2FuY2VsQnV0dG9uUHJvcHMsIG9rQnV0dG9uUHJvcHMgfSA9IHByb3BzLCByZXN0ID0gX19yZXN0KHByb3BzLCBbXCJjbGFzc05hbWVcIiwgXCJzdHlsZVwiLCBcInByZWZpeENsc1wiLCBcIm9wZW5cIiwgXCJzaXplXCIsIFwibWFza0Nsb3NhYmxlXCIsIFwic2hvd0Nsb3NlSWNvblwiLCBcInNob3dCYWNrSWNvblwiLCBcImZ1bGxXaWR0aFwiLCBcInRpdGxlXCIsIFwiZGVzY3JpcHRpb25cIiwgXCJjaGlsZHJlblwiLCBcImlsbHVzdHJhdGlvblwiLCBcIm1lZGlhXCIsIFwiY2xvc2VJY29uXCIsIFwiYmFja0ljb25cIiwgXCJmb290ZXJcIiwgXCJvbk9rXCIsIFwib25DYW5jZWxcIiwgXCJvbkJhY2tcIiwgXCJva1RleHRcIiwgXCJjYW5jZWxUZXh0XCIsIFwicm9vdFN0eWxlXCIsIFwid3JhcHBlclN0eWxlXCIsIFwiYm9keVN0eWxlXCIsIFwiaGVhZGVyU3R5bGVcIiwgXCJjb250ZW50U3R5bGVcIiwgXCJmb290ZXJTdHlsZVwiLCBcImNhbmNlbEJ1dHRvblByb3BzXCIsIFwib2tCdXR0b25Qcm9wc1wiXSk7XG4gICAgY29uc3QgbW91bnRlZCA9IHVzZVByZXNlbmNlKG9wZW4sIERJQUxPR19ERUZBVUxUUy5jbG9zZVRpbWVvdXRNcyk7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHRpdGxlSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGhhbmRsZVNldERpYWxvZ1JlZiA9IHVzZUNhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIGRpYWxvZ1JlZi5jdXJyZW50ID0gbm9kZTtcbiAgICAgICAgZmlsbFJlZihyZWYsIG5vZGUpO1xuICAgIH0sIFtyZWZdKTtcbiAgICBjb25zdCBoYW5kbGVDYW5jZWwgPSB1c2VFdmVudENhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgdm9pZCAob25DYW5jZWwgPT09IG51bGwgfHwgb25DYW5jZWwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQ2FuY2VsKCkpO1xuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZU9rID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIHZvaWQgKG9uT2sgPT09IG51bGwgfHwgb25PayA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25PaygpKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVCYWNrID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIHZvaWQgKG9uQmFjayA9PT0gbnVsbCB8fCBvbkJhY2sgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQmFjaygpKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVPdmVybGF5Q2xpY2sgPSB1c2VFdmVudENhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgaWYgKCFtYXNrQ2xvc2FibGUpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGhhbmRsZUNhbmNlbCgpO1xuICAgIH0pO1xuICAgIHVzZUJvZHlTY3JvbGxMb2NrKG1vdW50ZWQgJiYgb3Blbik7XG4gICAgdXNlRGlhbG9nRm9jdXMobW91bnRlZCAmJiBvcGVuLCBkaWFsb2dSZWYpO1xuICAgIHVzZUVzY2FwZUNsb3NlKG1vdW50ZWQgJiYgb3BlbiwgaGFuZGxlQ2FuY2VsKTtcbiAgICBjb25zdCBoYXNNZWRpYSA9IG1lZGlhICE9IG51bGw7XG4gICAgY29uc3QgY2xvc2VDb250cm9sTm9kZSA9IHNob3dDbG9zZUljb25cbiAgICAgICAgPyByZW5kZXJDb250cm9sQnV0dG9uKHByZWZpeENscywgRElBTE9HX0NPTlRST0xfVFlQRS5jbG9zZSwgY2xvc2VJY29uICE9PSBudWxsICYmIGNsb3NlSWNvbiAhPT0gdm9pZCAwID8gY2xvc2VJY29uIDogKF9qc3goSWNvbnMsIHsgbmFtZTogRElBTE9HX0RFRkFVTFRfSUNPTlNbRElBTE9HX0NPTlRST0xfVFlQRS5jbG9zZV0sIHNpemU6IERJQUxPR19ERUZBVUxUUy5jb250cm9sSWNvblNpemUgfSkpLCBoYW5kbGVDYW5jZWwpXG4gICAgICAgIDogbnVsbDtcbiAgICBjb25zdCBiYWNrQ29udHJvbE5vZGUgPSBzaG93QmFja0ljb25cbiAgICAgICAgPyByZW5kZXJDb250cm9sQnV0dG9uKHByZWZpeENscywgRElBTE9HX0NPTlRST0xfVFlQRS5iYWNrLCBiYWNrSWNvbiAhPT0gbnVsbCAmJiBiYWNrSWNvbiAhPT0gdm9pZCAwID8gYmFja0ljb24gOiAoX2pzeChJY29ucywgeyBuYW1lOiBESUFMT0dfREVGQVVMVF9JQ09OU1tESUFMT0dfQ09OVFJPTF9UWVBFLmJhY2tdLCBzaXplOiBESUFMT0dfREVGQVVMVFMuY29udHJvbEljb25TaXplIH0pKSwgaGFuZGxlQmFjaylcbiAgICAgICAgOiBudWxsO1xuICAgIGNvbnN0IGlsbHVzdHJhdGlvbk5vZGUgPSByZW5kZXJJbGx1c3RyYXRpb25Ob2RlKGlsbHVzdHJhdGlvbik7XG4gICAgY29uc3QgdGl0bGVOb2RlID0gcmVuZGVyVHlwb2dyYXBoeU5vZGUodGl0bGUsICh2YWx1ZSkgPT4gKF9qc3goVHlwb2dyYXBoeUhlYWRsaW5lLCB7IHNpemU6IFwibWRcIiwgYXM6IFwiaDJcIiwgY29sb3I6IFwiZGVmYXVsdFwiLCBjaGlsZHJlbjogdmFsdWUgfSkpKTtcbiAgICBjb25zdCBkZXNjcmlwdGlvbk5vZGUgPSByZW5kZXJUeXBvZ3JhcGh5Tm9kZShkZXNjcmlwdGlvbiwgKHZhbHVlKSA9PiAoX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBzaXplOiBcIm1kXCIsIGFzOiBcInBcIiwgc3Ryb25nOiB0cnVlLCBjb2xvcjogXCJkZWZhdWx0LXNlY29uZGFyeVwiLCBjaGlsZHJlbjogdmFsdWUgfSkpKTtcbiAgICBjb25zdCBjaGlsZHJlbk5vZGUgPSByZW5kZXJUeXBvZ3JhcGh5Tm9kZShjaGlsZHJlbiwgKHZhbHVlKSA9PiAoX2pzeChUeXBvZ3JhcGh5Qm9keSwgeyBzaXplOiBcIm1kXCIsIGFzOiBcInBcIiwgc3Ryb25nOiB0cnVlLCBjb2xvcjogXCJkZWZhdWx0LXNlY29uZGFyeVwiLCBjaGlsZHJlbjogdmFsdWUgfSkpKTtcbiAgICBjb25zdCBjYW5jZWxCdXR0b24gPSByZW5kZXJBY3Rpb25CdXR0b24oe1xuICAgICAgICBwcmVmaXhDbHMsXG4gICAgICAgIGtpbmQ6IERJQUxPR19BQ1RJT05fS0lORC5jYW5jZWwsXG4gICAgICAgIHRleHQ6IGNhbmNlbFRleHQsXG4gICAgICAgIGFjdGlvbjogb25DYW5jZWwsXG4gICAgICAgIGJ1dHRvblByb3BzOiBjYW5jZWxCdXR0b25Qcm9wcyxcbiAgICB9KTtcbiAgICBjb25zdCBva0J1dHRvbiA9IHJlbmRlckFjdGlvbkJ1dHRvbih7XG4gICAgICAgIHByZWZpeENscyxcbiAgICAgICAga2luZDogRElBTE9HX0FDVElPTl9LSU5ELm9rLFxuICAgICAgICB0ZXh0OiBva1RleHQsXG4gICAgICAgIGFjdGlvbjogb25PayxcbiAgICAgICAgYnV0dG9uUHJvcHM6IG9rQnV0dG9uUHJvcHMsXG4gICAgfSk7XG4gICAgY29uc3QgZm9vdGVyTm9kZSA9IHJlc29sdmVGb290ZXJOb2RlKHtcbiAgICAgICAgZm9vdGVyLFxuICAgICAgICBzaXplLFxuICAgICAgICBjYW5jZWxCdXR0b24sXG4gICAgICAgIG9rQnV0dG9uLFxuICAgIH0pO1xuICAgIGlmICghbW91bnRlZClcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIChfanN4KFBvcnRhbCwgeyBjaGlsZHJlbjogX2pzeHMoXCJkaXZcIiwgeyBzdHlsZTogcm9vdFN0eWxlLCBjbGFzc05hbWU6IGNsYXNzTmFtZXMoZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1Qucm9vdCksIGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULnJvb3QsIG9wZW4gPyBESUFMT0dfTU9ESUZJRVIub3BlbiA6IERJQUxPR19NT0RJRklFUi5jbG9zZWQpKSwgY2hpbGRyZW46IFtfanN4KFwiZGl2XCIsIHsgXCJhcmlhLWhpZGRlblwiOiBcInRydWVcIiwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5vdmVybGF5KSwgb25DbGljazogaGFuZGxlT3ZlcmxheUNsaWNrIH0pLCBfanN4KFwiZGl2XCIsIHsgc3R5bGU6IHdyYXBwZXJTdHlsZSwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC53cmFwcGVyKSwgY2hpbGRyZW46IF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgcmVmOiBoYW5kbGVTZXREaWFsb2dSZWYsIHJvbGU6IFwiZGlhbG9nXCIsIFwiYXJpYS1tb2RhbFwiOiBcInRydWVcIiwgXCJhcmlhLWxhYmVsbGVkYnlcIjogdGl0bGUgPyB0aXRsZUlkIDogdW5kZWZpbmVkLCBcImFyaWEtZGVzY3JpYmVkYnlcIjogZGVzY3JpcHRpb24gPyBkZXNjcmlwdGlvbklkIDogdW5kZWZpbmVkLCB0YWJJbmRleDogLTEsIHN0eWxlOiBzdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMpLCBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCB1bmRlZmluZWQsIHNpemUpLCBmdWxsV2lkdGggJiYgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgdW5kZWZpbmVkLCBESUFMT0dfTU9ESUZJRVIuZnVsbFdpZHRoKSwgaGFzTWVkaWEgJiYgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgdW5kZWZpbmVkLCBESUFMT0dfTU9ESUZJRVIud2l0aE1lZGlhKSwgY2xhc3NOYW1lKSwgY2hpbGRyZW46IFtjbG9zZUNvbnRyb2xOb2RlLCBoYXNNZWRpYSAmJiBfanN4KFwiZGl2XCIsIHsgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5tZWRpYSksIGNoaWxkcmVuOiBtZWRpYSB9KSwgX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmlubmVyKSwgY2hpbGRyZW46IFtiYWNrQ29udHJvbE5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBzdHlsZTogaGVhZGVyU3R5bGUsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuaGVhZGVyKSwgY2hpbGRyZW46IGJhY2tDb250cm9sTm9kZSB9KSksIF9qc3hzKFwiZGl2XCIsIHsgc3R5bGU6IGJvZHlTdHlsZSwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBESUFMT0dfU0xPVC5ib2R5KSwgY2hpbGRyZW46IFsoaWxsdXN0cmF0aW9uTm9kZSB8fCB0aXRsZU5vZGUgfHwgZGVzY3JpcHRpb25Ob2RlKSAmJiAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULnN1bW1hcnkpLCBjaGlsZHJlbjogW2lsbHVzdHJhdGlvbk5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmlsbHVzdHJhdGlvbiksIGNoaWxkcmVuOiBpbGx1c3RyYXRpb25Ob2RlIH0pKSwgKHRpdGxlTm9kZSB8fCBkZXNjcmlwdGlvbk5vZGUpICYmIChfanN4cyhcImRpdlwiLCB7IGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuY29weSksIGNoaWxkcmVuOiBbdGl0bGVOb2RlICYmIChfanN4KFwiZGl2XCIsIHsgaWQ6IHRpdGxlSWQsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QudGl0bGUpLCBjaGlsZHJlbjogdGl0bGVOb2RlIH0pKSwgZGVzY3JpcHRpb25Ob2RlICYmIChfanN4KFwiZGl2XCIsIHsgaWQ6IGRlc2NyaXB0aW9uSWQsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuZGVzY3JpcHRpb24pLCBjaGlsZHJlbjogZGVzY3JpcHRpb25Ob2RlIH0pKV0gfSkpXSB9KSksIGNoaWxkcmVuTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBjb250ZW50U3R5bGUsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgRElBTE9HX1NMT1QuY29udGVudCksIGNoaWxkcmVuOiBjaGlsZHJlbk5vZGUgfSkpXSB9KSwgZm9vdGVyTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBmb290ZXJTdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmZvb3RlciksIGdldENsYXNzTmFtZShwcmVmaXhDbHMsIERJQUxPR19TTE9ULmZvb3Rlciwgc2l6ZSkpLCBjaGlsZHJlbjogZm9vdGVyTm9kZSB9KSldIH0pXSB9KSkgfSldIH0pIH0pKTtcbn0pO1xuRGlhbG9nQmFzZS5kaXNwbGF5TmFtZSA9ICdEaWFsb2cnO1xuZXhwb3J0IGNvbnN0IERpYWxvZyA9IG1lbW8oRGlhbG9nQmFzZSk7XG5EaWFsb2cuZGlzcGxheU5hbWUgPSAnRGlhbG9nJztcbmV4cG9ydCBkZWZhdWx0IERpYWxvZzsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -0,0 +1,60 @@
1
+ import type { ButtonProps } from "../Button";
2
+ import type { IconName } from "../Icons";
3
+ export declare const DIALOG_NAMESPACE = "om-component-ui";
4
+ export declare const DIALOG_DEFAULT_PREFIX = "dialog";
5
+ export declare const DIALOG_SIZE: {
6
+ readonly small: "small";
7
+ readonly large: "large";
8
+ };
9
+ export declare const DIALOG_SIZES: readonly ["small", "large"];
10
+ export declare const DIALOG_ACTION_KIND: {
11
+ readonly ok: "ok";
12
+ readonly cancel: "cancel";
13
+ };
14
+ export declare const DIALOG_CONTROL_TYPE: {
15
+ readonly back: "back";
16
+ readonly close: "close";
17
+ };
18
+ export declare const DIALOG_SLOT: {
19
+ readonly root: "root";
20
+ readonly overlay: "overlay";
21
+ readonly wrapper: "wrapper";
22
+ readonly control: "control";
23
+ readonly actionButton: "action-button";
24
+ readonly media: "media";
25
+ readonly inner: "inner";
26
+ readonly header: "header";
27
+ readonly body: "body";
28
+ readonly summary: "summary";
29
+ readonly illustration: "illustration";
30
+ readonly copy: "copy";
31
+ readonly title: "title";
32
+ readonly description: "description";
33
+ readonly content: "content";
34
+ readonly footer: "footer";
35
+ };
36
+ export declare const DIALOG_MODIFIER: {
37
+ readonly open: "open";
38
+ readonly closed: "closed";
39
+ readonly fullWidth: "full-width";
40
+ readonly withMedia: "with-media";
41
+ };
42
+ export declare const DIALOG_CONTROL_LABELS: Record<DialogControlType, string>;
43
+ export declare const DIALOG_DEFAULT_ICONS: Record<DialogControlType, IconName>;
44
+ export declare const DIALOG_DEFAULT_BUTTON_COLORS: Record<DialogActionKind, NonNullable<ButtonProps['color']>>;
45
+ export declare const DIALOG_DEFAULTS: {
46
+ readonly buttonHtmlType: "button";
47
+ readonly buttonSize: "large";
48
+ readonly closeTimeoutMs: 200;
49
+ readonly controlIconSize: 24;
50
+ readonly illustrationSize: 74;
51
+ readonly okText: "Confirm";
52
+ readonly cancelText: "Cancel";
53
+ readonly overflowHidden: "hidden";
54
+ readonly overflowReset: "";
55
+ readonly escapeKey: "Escape";
56
+ readonly keydownEvent: "keydown";
57
+ };
58
+ export type DialogSize = (typeof DIALOG_SIZES)[number];
59
+ export type DialogActionKind = (typeof DIALOG_ACTION_KIND)[keyof typeof DIALOG_ACTION_KIND];
60
+ export type DialogControlType = (typeof DIALOG_CONTROL_TYPE)[keyof typeof DIALOG_CONTROL_TYPE];
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.DIALOG_SLOT = exports.DIALOG_SIZES = exports.DIALOG_SIZE = exports.DIALOG_NAMESPACE = exports.DIALOG_MODIFIER = exports.DIALOG_DEFAULT_PREFIX = exports.DIALOG_DEFAULT_ICONS = exports.DIALOG_DEFAULT_BUTTON_COLORS = exports.DIALOG_DEFAULTS = exports.DIALOG_CONTROL_TYPE = exports.DIALOG_CONTROL_LABELS = exports.DIALOG_ACTION_KIND = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var DIALOG_NAMESPACE = exports.DIALOG_NAMESPACE = 'om-component-ui';
10
+ var DIALOG_DEFAULT_PREFIX = exports.DIALOG_DEFAULT_PREFIX = 'dialog';
11
+ var DIALOG_SIZE = exports.DIALOG_SIZE = {
12
+ small: 'small',
13
+ large: 'large'
14
+ };
15
+ var DIALOG_SIZES = exports.DIALOG_SIZES = [DIALOG_SIZE.small, DIALOG_SIZE.large];
16
+ var DIALOG_ACTION_KIND = exports.DIALOG_ACTION_KIND = {
17
+ ok: 'ok',
18
+ cancel: 'cancel'
19
+ };
20
+ var DIALOG_CONTROL_TYPE = exports.DIALOG_CONTROL_TYPE = {
21
+ back: 'back',
22
+ close: 'close'
23
+ };
24
+ var DIALOG_SLOT = exports.DIALOG_SLOT = {
25
+ root: 'root',
26
+ overlay: 'overlay',
27
+ wrapper: 'wrapper',
28
+ control: 'control',
29
+ actionButton: 'action-button',
30
+ media: 'media',
31
+ inner: 'inner',
32
+ header: 'header',
33
+ body: 'body',
34
+ summary: 'summary',
35
+ illustration: 'illustration',
36
+ copy: 'copy',
37
+ title: 'title',
38
+ description: 'description',
39
+ content: 'content',
40
+ footer: 'footer'
41
+ };
42
+ var DIALOG_MODIFIER = exports.DIALOG_MODIFIER = {
43
+ open: 'open',
44
+ closed: 'closed',
45
+ fullWidth: 'full-width',
46
+ withMedia: 'with-media'
47
+ };
48
+ var DIALOG_CONTROL_LABELS = exports.DIALOG_CONTROL_LABELS = (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, DIALOG_CONTROL_TYPE.back, 'Go back'), DIALOG_CONTROL_TYPE.close, 'Close dialog');
49
+ var DIALOG_DEFAULT_ICONS = exports.DIALOG_DEFAULT_ICONS = (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, DIALOG_CONTROL_TYPE.back, 'arrowLeft'), DIALOG_CONTROL_TYPE.close, 'cross');
50
+ var DIALOG_DEFAULT_BUTTON_COLORS = exports.DIALOG_DEFAULT_BUTTON_COLORS = (0, _defineProperty2["default"])((0, _defineProperty2["default"])({}, DIALOG_ACTION_KIND.cancel, 'grey'), DIALOG_ACTION_KIND.ok, 'primary');
51
+ var DIALOG_DEFAULTS = exports.DIALOG_DEFAULTS = {
52
+ buttonHtmlType: 'button',
53
+ buttonSize: 'large',
54
+ closeTimeoutMs: 200,
55
+ controlIconSize: 24,
56
+ illustrationSize: 74,
57
+ okText: 'Confirm',
58
+ cancelText: 'Cancel',
59
+ overflowHidden: 'hidden',
60
+ overflowReset: '',
61
+ escapeKey: 'Escape',
62
+ keydownEvent: 'keydown'
63
+ };
64
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvRGlhbG9nL2NvbnN0YW50cy50cyIsImNvbXBvbmVudHMvRGlhbG9nL2NvbnN0YW50cy5qcyJdLCJuYW1lcyI6WyJESUFMT0dfTkFNRVNQQUNFIiwiZXhwb3J0cyIsIkRJQUxPR19ERUZBVUxUX1BSRUZJWCIsIkRJQUxPR19TSVpFIiwic21hbGwiLCJsYXJnZSIsIkRJQUxPR19TSVpFUyIsIkRJQUxPR19BQ1RJT05fS0lORCIsIm9rIiwiY2FuY2VsIiwiRElBTE9HX0NPTlRST0xfVFlQRSIsImJhY2siLCJjbG9zZSIsIkRJQUxPR19TTE9UIiwicm9vdCIsIm92ZXJsYXkiLCJ3cmFwcGVyIiwiY29udHJvbCIsImFjdGlvbkJ1dHRvbiIsIm1lZGlhIiwiaW5uZXIiLCJoZWFkZXIiLCJib2R5Iiwic3VtbWFyeSIsImlsbHVzdHJhdGlvbiIsImNvcHkiLCJ0aXRsZSIsImRlc2NyaXB0aW9uIiwiY29udGVudCIsImZvb3RlciIsIkRJQUxPR19NT0RJRklFUiIsIm9wZW4iLCJjbG9zZWQiLCJmdWxsV2lkdGgiLCJ3aXRoTWVkaWEiLCJESUFMT0dfQ09OVFJPTF9MQUJFTFMiLCJfZGVmaW5lUHJvcGVydHkyIiwiRElBTE9HX0RFRkFVTFRfSUNPTlMiLCJESUFMT0dfREVGQVVMVF9CVVRUT05fQ09MT1JTIiwiRElBTE9HX0RFRkFVTFRTIiwiYnV0dG9uSHRtbFR5cGUiLCJidXR0b25TaXplIiwiY2xvc2VUaW1lb3V0TXMiLCJjb250cm9sSWNvblNpemUiLCJpbGx1c3RyYXRpb25TaXplIiwib2tUZXh0IiwiY2FuY2VsVGV4dCIsIm92ZXJmbG93SGlkZGVuIiwib3ZlcmZsb3dSZXNldCIsImVzY2FwZUtleSIsImtleWRvd25FdmVudCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFHTyxJQUFNQSxnQkFBZ0IsR0FBQUMsT0FBQSxDQUFBRCxnQkFBQSxHQUFHLGlCQUFpQjtBQUMxQyxJQUFNRSxxQkFBcUIsR0FBQUQsT0FBQSxDQUFBQyxxQkFBQSxHQUFHLFFBQVE7QUFFdEMsSUFBTUMsV0FBVyxHQUFBRixPQUFBLENBQUFFLFdBQUEsR0FBRztFQUN6QkMsS0FBSyxFQUFFLE9BQU87RUFDZEMsS0FBSyxFQUFFO0FDSFQsQ0RJVTtBQUVILElBQU1DLFlBQVksR0FBQUwsT0FBQSxDQUFBSyxZQUFBLEdBQUcsQ0FBQ0gsV0FBVyxDQUFDQyxLQUFLLEVBQUVELFdBQVcsQ0FBQ0UsS0FBSyxDQUFVO0FBRXBFLElBQU1FLGtCQUFrQixHQUFBTixPQUFBLENBQUFNLGtCQUFBLEdBQUc7RUFDaENDLEVBQUUsRUFBRSxJQUFJO0VBQ1JDLE1BQU0sRUFBRTtBQ0xWLENETVU7QUFFSCxJQUFNQyxtQkFBbUIsR0FBQVQsT0FBQSxDQUFBUyxtQkFBQSxHQUFHO0VBQ2pDQyxJQUFJLEVBQUUsTUFBTTtFQUNaQyxLQUFLLEVBQUU7QUNOVCxDRE9VO0FBRUgsSUFBTUMsV0FBVyxHQUFBWixPQUFBLENBQUFZLFdBQUEsR0FBRztFQUN6QkMsSUFBSSxFQUFFLE1BQU07RUFDWkMsT0FBTyxFQUFFLFNBQVM7RUFDbEJDLE9BQU8sRUFBRSxTQUFTO0VBQ2xCQyxPQUFPLEVBQUUsU0FBUztFQUNsQkMsWUFBWSxFQUFFLGVBQWU7RUFDN0JDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLE1BQU0sRUFBRSxRQUFRO0VBQ2hCQyxJQUFJLEVBQUUsTUFBTTtFQUNaQyxPQUFPLEVBQUUsU0FBUztFQUNsQkMsWUFBWSxFQUFFLGNBQWM7RUFDNUJDLElBQUksRUFBRSxNQUFNO0VBQ1pDLEtBQUssRUFBRSxPQUFPO0VBQ2RDLFdBQVcsRUFBRSxhQUFhO0VBQzFCQyxPQUFPLEVBQUUsU0FBUztFQUNsQkMsTUFBTSxFQUFFO0FDUFYsQ0RRVTtBQUVILElBQU1DLGVBQWUsR0FBQTdCLE9BQUEsQ0FBQTZCLGVBQUEsR0FBRztFQUM3QkMsSUFBSSxFQUFFLE1BQU07RUFDWkMsTUFBTSxFQUFFLFFBQVE7RUFDaEJDLFNBQVMsRUFBRSxZQUFZO0VBQ3ZCQyxTQUFTLEVBQUU7QUNSYixDRFNVO0FBRUgsSUFBTUMscUJBQXFCLEdBQUFsQyxPQUFBLENBQUFrQyxxQkFBQSxPQUFBQyxnQkFBQSxpQkFBQUEsZ0JBQUEsaUJBQy9CMUIsbUJBQW1CLENBQUNDLElBQUksRUFBRyxTQUFTLEdBQ3BDRCxtQkFBbUIsQ0FBQ0UsS0FBSyxFQUFHLGNBQWMsQ0FDNUM7QUFFTSxJQUFNeUIsb0JBQW9CLEdBQUFwQyxPQUFBLENBQUFvQyxvQkFBQSxPQUFBRCxnQkFBQSxpQkFBQUEsZ0JBQUEsaUJBQzlCMUIsbUJBQW1CLENBQUNDLElBQUksRUFBRyxXQUFXLEdBQ3RDRCxtQkFBbUIsQ0FBQ0UsS0FBSyxFQUFHLE9BQU8sQ0FDckM7QUFFTSxJQUFNMEIsNEJBQTRCLEdBQUFyQyxPQUFBLENBQUFxQyw0QkFBQSxPQUFBRixnQkFBQSxpQkFBQUEsZ0JBQUEsaUJBSXRDN0Isa0JBQWtCLENBQUNFLE1BQU0sRUFBRyxNQUFNLEdBQ2xDRixrQkFBa0IsQ0FBQ0MsRUFBRSxFQUFHLFNBQVMsQ0FDbkM7QUFFTSxJQUFNK0IsZUFBZSxHQUFBdEMsT0FBQSxDQUFBc0MsZUFBQSxHQUFHO0VBQzdCQyxjQUFjLEVBQUUsUUFBUTtFQUN4QkMsVUFBVSxFQUFFLE9BQWtEO0VBQzlEQyxjQUFjLEVBQUUsR0FBRztFQUNuQkMsZUFBZSxFQUFFLEVBQUU7RUFDbkJDLGdCQUFnQixFQUFFLEVBQUU7RUFDcEJDLE1BQU0sRUFBRSxTQUFTO0VBQ2pCQyxVQUFVLEVBQUUsUUFBUTtFQUNwQkMsY0FBYyxFQUFFLFFBQVE7RUFDeEJDLGFBQWEsRUFBRSxFQUFFO0VBQ2pCQyxTQUFTLEVBQUUsUUFBUTtFQUNuQkMsWUFBWSxFQUFFO0FDZmhCLENEZ0JVIiwiZmlsZSI6ImNvbXBvbmVudHMvRGlhbG9nL2NvbnN0YW50cy5qcyIsInNvdXJjZXNDb250ZW50IjpbbnVsbCwiZXhwb3J0IGNvbnN0IERJQUxPR19OQU1FU1BBQ0UgPSAnb20tY29tcG9uZW50LXVpJztcbmV4cG9ydCBjb25zdCBESUFMT0dfREVGQVVMVF9QUkVGSVggPSAnZGlhbG9nJztcbmV4cG9ydCBjb25zdCBESUFMT0dfU0laRSA9IHtcbiAgICBzbWFsbDogJ3NtYWxsJyxcbiAgICBsYXJnZTogJ2xhcmdlJyxcbn07XG5leHBvcnQgY29uc3QgRElBTE9HX1NJWkVTID0gW0RJQUxPR19TSVpFLnNtYWxsLCBESUFMT0dfU0laRS5sYXJnZV07XG5leHBvcnQgY29uc3QgRElBTE9HX0FDVElPTl9LSU5EID0ge1xuICAgIG9rOiAnb2snLFxuICAgIGNhbmNlbDogJ2NhbmNlbCcsXG59O1xuZXhwb3J0IGNvbnN0IERJQUxPR19DT05UUk9MX1RZUEUgPSB7XG4gICAgYmFjazogJ2JhY2snLFxuICAgIGNsb3NlOiAnY2xvc2UnLFxufTtcbmV4cG9ydCBjb25zdCBESUFMT0dfU0xPVCA9IHtcbiAgICByb290OiAncm9vdCcsXG4gICAgb3ZlcmxheTogJ292ZXJsYXknLFxuICAgIHdyYXBwZXI6ICd3cmFwcGVyJyxcbiAgICBjb250cm9sOiAnY29udHJvbCcsXG4gICAgYWN0aW9uQnV0dG9uOiAnYWN0aW9uLWJ1dHRvbicsXG4gICAgbWVkaWE6ICdtZWRpYScsXG4gICAgaW5uZXI6ICdpbm5lcicsXG4gICAgaGVhZGVyOiAnaGVhZGVyJyxcbiAgICBib2R5OiAnYm9keScsXG4gICAgc3VtbWFyeTogJ3N1bW1hcnknLFxuICAgIGlsbHVzdHJhdGlvbjogJ2lsbHVzdHJhdGlvbicsXG4gICAgY29weTogJ2NvcHknLFxuICAgIHRpdGxlOiAndGl0bGUnLFxuICAgIGRlc2NyaXB0aW9uOiAnZGVzY3JpcHRpb24nLFxuICAgIGNvbnRlbnQ6ICdjb250ZW50JyxcbiAgICBmb290ZXI6ICdmb290ZXInLFxufTtcbmV4cG9ydCBjb25zdCBESUFMT0dfTU9ESUZJRVIgPSB7XG4gICAgb3BlbjogJ29wZW4nLFxuICAgIGNsb3NlZDogJ2Nsb3NlZCcsXG4gICAgZnVsbFdpZHRoOiAnZnVsbC13aWR0aCcsXG4gICAgd2l0aE1lZGlhOiAnd2l0aC1tZWRpYScsXG59O1xuZXhwb3J0IGNvbnN0IERJQUxPR19DT05UUk9MX0xBQkVMUyA9IHtcbiAgICBbRElBTE9HX0NPTlRST0xfVFlQRS5iYWNrXTogJ0dvIGJhY2snLFxuICAgIFtESUFMT0dfQ09OVFJPTF9UWVBFLmNsb3NlXTogJ0Nsb3NlIGRpYWxvZycsXG59O1xuZXhwb3J0IGNvbnN0IERJQUxPR19ERUZBVUxUX0lDT05TID0ge1xuICAgIFtESUFMT0dfQ09OVFJPTF9UWVBFLmJhY2tdOiAnYXJyb3dMZWZ0JyxcbiAgICBbRElBTE9HX0NPTlRST0xfVFlQRS5jbG9zZV06ICdjcm9zcycsXG59O1xuZXhwb3J0IGNvbnN0IERJQUxPR19ERUZBVUxUX0JVVFRPTl9DT0xPUlMgPSB7XG4gICAgW0RJQUxPR19BQ1RJT05fS0lORC5jYW5jZWxdOiAnZ3JleScsXG4gICAgW0RJQUxPR19BQ1RJT05fS0lORC5va106ICdwcmltYXJ5Jyxcbn07XG5leHBvcnQgY29uc3QgRElBTE9HX0RFRkFVTFRTID0ge1xuICAgIGJ1dHRvbkh0bWxUeXBlOiAnYnV0dG9uJyxcbiAgICBidXR0b25TaXplOiAnbGFyZ2UnLFxuICAgIGNsb3NlVGltZW91dE1zOiAyMDAsXG4gICAgY29udHJvbEljb25TaXplOiAyNCxcbiAgICBpbGx1c3RyYXRpb25TaXplOiA3NCxcbiAgICBva1RleHQ6ICdDb25maXJtJyxcbiAgICBjYW5jZWxUZXh0OiAnQ2FuY2VsJyxcbiAgICBvdmVyZmxvd0hpZGRlbjogJ2hpZGRlbicsXG4gICAgb3ZlcmZsb3dSZXNldDogJycsXG4gICAgZXNjYXBlS2V5OiAnRXNjYXBlJyxcbiAgICBrZXlkb3duRXZlbnQ6ICdrZXlkb3duJyxcbn07Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
@@ -0,0 +1,4 @@
1
+ import Dialog from './Dialog';
2
+ export { Dialog } from './Dialog';
3
+ export default Dialog;
4
+ export * from './interface';