@1money/component-ui 0.0.19 → 0.0.20
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/es/components/Alert/Alert.js +5 -6
- package/es/components/Alert/style/Alert.css +1 -1
- package/es/components/Button/Button.js +29 -1
- package/es/components/Button/constants.d.ts +14 -1
- package/es/components/Button/constants.js +23 -3
- package/es/components/Button/interface.d.ts +9 -0
- package/es/components/Cell/Cell.d.ts +5 -0
- package/es/components/Cell/Cell.js +57 -0
- package/es/components/Cell/index.d.ts +4 -0
- package/es/components/Cell/index.js +5 -0
- package/es/components/Cell/interface.d.ts +12 -0
- package/es/components/Cell/interface.js +2 -0
- package/es/components/Cell/style/Cell.css +1 -0
- package/es/components/Cell/style/css.js +2 -0
- package/es/components/Cell/style/index.d.ts +1 -0
- package/es/components/Cell/style/index.js +2 -0
- package/es/components/Dialog/Dialog.d.ts +4 -0
- package/es/components/Dialog/Dialog.js +383 -0
- package/es/components/Dialog/constants.d.ts +60 -0
- package/es/components/Dialog/constants.js +57 -0
- package/es/components/Dialog/index.d.ts +4 -0
- package/es/components/Dialog/index.js +5 -0
- package/es/components/{Modal → Dialog}/interface.d.ts +7 -7
- package/es/components/Dialog/interface.js +2 -0
- package/es/components/Dialog/style/Dialog.css +1 -0
- package/es/components/Dialog/style/css.js +2 -0
- package/es/components/Dialog/style/index.d.ts +1 -0
- package/es/components/Dialog/style/index.js +2 -0
- package/es/components/Divider/Divider.js +15 -18
- package/es/components/Divider/constants.d.ts +36 -0
- package/es/components/Divider/constants.js +41 -0
- package/es/components/Divider/interface.d.ts +2 -3
- package/es/components/Drawer/Drawer.js +13 -129
- package/es/components/Drawer/constants.d.ts +8 -5
- package/es/components/Drawer/constants.js +9 -6
- package/es/components/Drawer/hooks/index.d.ts +4 -0
- package/es/components/Drawer/hooks/index.js +5 -0
- package/es/components/Drawer/hooks/useBodyScrollLock.d.ts +1 -0
- package/es/components/Drawer/hooks/useBodyScrollLock.js +29 -0
- package/es/components/Drawer/hooks/useDialogFocus.d.ts +2 -0
- package/es/components/Drawer/hooks/useDialogFocus.js +22 -0
- package/es/components/Drawer/hooks/useDrawerTransition.d.ts +4 -0
- package/es/components/Drawer/hooks/useDrawerTransition.js +57 -0
- package/es/components/Drawer/hooks/useEscapeClose.d.ts +1 -0
- package/es/components/Drawer/hooks/useEscapeClose.js +16 -0
- package/es/components/ProForm/index.d.ts +2 -2
- package/es/components/ProForm/index.js +2 -2
- package/es/components/ProForm/interface.d.ts +3 -3
- package/es/components/ProForm/layouts/DialogForm.d.ts +3 -0
- package/es/components/ProForm/layouts/DialogForm.js +74 -0
- package/es/components/ProForm/layouts/index.d.ts +1 -1
- package/es/components/ProForm/layouts/index.js +2 -2
- package/es/components/ProForm/style/ProForm.css +1 -1
- package/es/components/Select/Select.js +5 -5
- package/es/components/Select/SelectFieldShell.js +7 -7
- package/es/components/Select/SelectOptionContent.js +5 -5
- package/es/components/Select/constants.d.ts +37 -13
- package/es/components/Select/constants.js +36 -20
- package/es/components/Select/style/Select.css +1 -1
- package/es/components/Switch/Switch.js +7 -7
- package/es/components/Switch/constants.d.ts +23 -9
- package/es/components/Switch/constants.js +26 -11
- package/es/components/Switch/interface.d.ts +2 -2
- package/es/index.css +1 -1
- package/es/index.d.ts +6 -4
- package/es/index.js +4 -3
- package/lib/components/Alert/Alert.js +5 -6
- package/lib/components/Alert/style/Alert.css +1 -1
- package/lib/components/Button/Button.js +29 -1
- package/lib/components/Button/constants.d.ts +14 -1
- package/lib/components/Button/constants.js +23 -3
- package/lib/components/Button/interface.d.ts +9 -0
- package/lib/components/Cell/Cell.d.ts +5 -0
- package/lib/components/Cell/Cell.js +66 -0
- package/lib/components/Cell/index.d.ts +4 -0
- package/lib/components/Cell/index.js +33 -0
- package/lib/components/Cell/interface.d.ts +12 -0
- package/lib/components/Cell/interface.js +6 -0
- package/lib/components/Cell/style/Cell.css +1 -0
- package/lib/components/Cell/style/css.js +4 -0
- package/lib/components/Cell/style/index.d.ts +1 -0
- package/lib/components/Cell/style/index.js +4 -0
- package/lib/components/Dialog/Dialog.d.ts +4 -0
- package/lib/components/Dialog/Dialog.js +390 -0
- package/lib/components/Dialog/constants.d.ts +60 -0
- package/lib/components/Dialog/constants.js +64 -0
- package/lib/components/Dialog/index.d.ts +4 -0
- package/lib/components/Dialog/index.js +33 -0
- package/lib/components/{Modal → Dialog}/interface.d.ts +7 -7
- package/lib/components/Dialog/interface.js +6 -0
- package/lib/components/Dialog/style/Dialog.css +1 -0
- package/lib/components/Dialog/style/css.js +4 -0
- package/lib/components/Dialog/style/index.d.ts +1 -0
- package/lib/components/Dialog/style/index.js +4 -0
- package/lib/components/Divider/Divider.js +16 -18
- package/lib/components/Divider/constants.d.ts +36 -0
- package/lib/components/Divider/constants.js +48 -0
- package/lib/components/Divider/interface.d.ts +2 -3
- package/lib/components/Drawer/Drawer.js +14 -130
- package/lib/components/Drawer/constants.d.ts +8 -5
- package/lib/components/Drawer/constants.js +10 -7
- package/lib/components/Drawer/hooks/index.d.ts +4 -0
- package/lib/components/Drawer/hooks/index.js +34 -0
- package/lib/components/Drawer/hooks/useBodyScrollLock.d.ts +1 -0
- package/lib/components/Drawer/hooks/useBodyScrollLock.js +35 -0
- package/lib/components/Drawer/hooks/useDialogFocus.d.ts +2 -0
- package/lib/components/Drawer/hooks/useDialogFocus.js +28 -0
- package/lib/components/Drawer/hooks/useDrawerTransition.d.ts +4 -0
- package/lib/components/Drawer/hooks/useDrawerTransition.js +64 -0
- package/lib/components/Drawer/hooks/useEscapeClose.d.ts +1 -0
- package/lib/components/Drawer/hooks/useEscapeClose.js +22 -0
- package/lib/components/ProForm/index.d.ts +2 -2
- package/lib/components/ProForm/index.js +8 -8
- package/lib/components/ProForm/interface.d.ts +3 -3
- package/lib/components/ProForm/layouts/DialogForm.d.ts +3 -0
- package/lib/components/ProForm/layouts/DialogForm.js +81 -0
- package/lib/components/ProForm/layouts/index.d.ts +1 -1
- package/lib/components/ProForm/layouts/index.js +6 -6
- package/lib/components/ProForm/style/ProForm.css +1 -1
- package/lib/components/Select/Select.js +4 -4
- package/lib/components/Select/SelectFieldShell.js +6 -6
- package/lib/components/Select/SelectOptionContent.js +4 -4
- package/lib/components/Select/constants.d.ts +37 -13
- package/lib/components/Select/constants.js +37 -21
- package/lib/components/Select/style/Select.css +1 -1
- package/lib/components/Switch/Switch.js +6 -6
- package/lib/components/Switch/constants.d.ts +23 -9
- package/lib/components/Switch/constants.js +27 -12
- package/lib/components/Switch/interface.d.ts +2 -2
- package/lib/index.css +1 -1
- package/lib/index.d.ts +6 -4
- package/lib/index.js +21 -14
- package/package.json +11 -6
- package/es/components/Modal/Modal.d.ts +0 -4
- package/es/components/Modal/Modal.js +0 -383
- package/es/components/Modal/constants.d.ts +0 -58
- package/es/components/Modal/constants.js +0 -55
- package/es/components/Modal/index.d.ts +0 -4
- package/es/components/Modal/index.js +0 -5
- package/es/components/Modal/interface.js +0 -2
- package/es/components/Modal/style/Modal.css +0 -1
- package/es/components/Modal/style/css.js +0 -2
- package/es/components/Modal/style/index.d.ts +0 -1
- package/es/components/Modal/style/index.js +0 -2
- package/es/components/ProForm/layouts/ModalForm.d.ts +0 -3
- package/es/components/ProForm/layouts/ModalForm.js +0 -74
- package/lib/components/Modal/Modal.d.ts +0 -4
- package/lib/components/Modal/Modal.js +0 -390
- package/lib/components/Modal/constants.d.ts +0 -58
- package/lib/components/Modal/constants.js +0 -62
- package/lib/components/Modal/index.d.ts +0 -4
- package/lib/components/Modal/index.js +0 -33
- package/lib/components/Modal/interface.js +0 -6
- package/lib/components/Modal/style/Modal.css +0 -1
- package/lib/components/Modal/style/css.js +0 -4
- package/lib/components/Modal/style/index.d.ts +0 -1
- package/lib/components/Modal/style/index.js +0 -4
- package/lib/components/ProForm/layouts/ModalForm.d.ts +0 -3
- package/lib/components/ProForm/layouts/ModalForm.js +0 -81
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
var __rest = this && this.__rest || function (s, e) {
|
|
2
|
-
var t = {};
|
|
3
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
4
|
-
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
5
|
-
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
6
|
-
}
|
|
7
|
-
return t;
|
|
8
|
-
};
|
|
9
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
|
-
import { memo } from 'react';
|
|
11
|
-
import { default as classnames } from '../../../utils/classnames';
|
|
12
|
-
import { Modal } from '../../Modal';
|
|
13
|
-
import { ProForm } from '../ProForm';
|
|
14
|
-
import { CSS_PREFIX } from '../constants';
|
|
15
|
-
import { useOverlayForm } from './useOverlayForm';
|
|
16
|
-
var classes = classnames("".concat(CSS_PREFIX, "-modal-form"));
|
|
17
|
-
var ModalFormBase = function ModalFormBase(props) {
|
|
18
|
-
var _a;
|
|
19
|
-
var open = props.open,
|
|
20
|
-
onOpenChange = props.onOpenChange,
|
|
21
|
-
trigger = props.trigger,
|
|
22
|
-
title = props.title,
|
|
23
|
-
width = props.width,
|
|
24
|
-
submitTimeout = props.submitTimeout,
|
|
25
|
-
_props$autoClose = props.autoClose,
|
|
26
|
-
autoClose = _props$autoClose === void 0 ? true : _props$autoClose,
|
|
27
|
-
modalProps = props.modalProps,
|
|
28
|
-
onFinish = props.onFinish,
|
|
29
|
-
submitter = props.submitter,
|
|
30
|
-
children = props.children,
|
|
31
|
-
_destroyOnClose = props.destroyOnClose,
|
|
32
|
-
formProps = __rest(props, ["open", "onOpenChange", "trigger", "title", "width", "submitTimeout", "autoClose", "modalProps", "onFinish", "submitter", "children", "destroyOnClose"]);
|
|
33
|
-
var _useOverlayForm = useOverlayForm({
|
|
34
|
-
open: open,
|
|
35
|
-
onOpenChange: onOpenChange,
|
|
36
|
-
trigger: trigger,
|
|
37
|
-
autoClose: autoClose,
|
|
38
|
-
submitTimeout: submitTimeout
|
|
39
|
-
}, onFinish),
|
|
40
|
-
mergedOpen = _useOverlayForm.mergedOpen,
|
|
41
|
-
triggerNode = _useOverlayForm.triggerNode,
|
|
42
|
-
handleFinish = _useOverlayForm.handleFinish,
|
|
43
|
-
handleHide = _useOverlayForm.handleHide;
|
|
44
|
-
return _jsxs(_Fragment, {
|
|
45
|
-
children: [triggerNode, _jsx(Modal, Object.assign({}, modalProps, {
|
|
46
|
-
open: mergedOpen,
|
|
47
|
-
title: title,
|
|
48
|
-
onCancel: handleHide,
|
|
49
|
-
footer: null
|
|
50
|
-
}, width !== undefined ? {
|
|
51
|
-
rootStyle: Object.assign(Object.assign({}, modalProps === null || modalProps === void 0 ? void 0 : modalProps.rootStyle), {
|
|
52
|
-
width: width
|
|
53
|
-
})
|
|
54
|
-
} : {}, {
|
|
55
|
-
children: _jsx("div", {
|
|
56
|
-
className: classes(),
|
|
57
|
-
children: _jsx(ProForm, Object.assign({}, formProps, {
|
|
58
|
-
onFinish: handleFinish,
|
|
59
|
-
submitter: submitter !== undefined ? submitter : {
|
|
60
|
-
resetButtonProps: {
|
|
61
|
-
onClick: handleHide
|
|
62
|
-
},
|
|
63
|
-
resetText: (_a = modalProps === null || modalProps === void 0 ? void 0 : modalProps.cancelText) !== null && _a !== void 0 ? _a : 'Cancel'
|
|
64
|
-
},
|
|
65
|
-
children: children
|
|
66
|
-
}))
|
|
67
|
-
})
|
|
68
|
-
}))]
|
|
69
|
-
});
|
|
70
|
-
};
|
|
71
|
-
ModalFormBase.displayName = 'ModalForm';
|
|
72
|
-
export var ModalForm = /*#__PURE__*/memo(ModalFormBase);
|
|
73
|
-
export default ModalForm;
|
|
74
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvUHJvRm9ybS9sYXlvdXRzL01vZGFsRm9ybS5qcyIsImNvbXBvbmVudHMvUHJvRm9ybS9zcmMvY29tcG9uZW50cy9Qcm9Gb3JtL2xheW91dHMvTW9kYWxGb3JtLnRzeCJdLCJuYW1lcyI6WyJfX3Jlc3QiLCJzIiwiZSIsInQiLCJwIiwiT2JqZWN0IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiaW5kZXhPZiIsImdldE93blByb3BlcnR5U3ltYm9scyIsImkiLCJsZW5ndGgiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsImpzeCIsIl9qc3giLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsImpzeHMiLCJfanN4cyIsIm1lbW8iLCJkZWZhdWx0IiwiY2xhc3NuYW1lcyIsIk1vZGFsIiwiUHJvRm9ybSIsIkNTU19QUkVGSVgiLCJ1c2VPdmVybGF5Rm9ybSIsImNsYXNzZXMiLCJjb25jYXQiLCJNb2RhbEZvcm1CYXNlIiwicHJvcHMiLCJfYSIsIm9wZW4iLCJvbk9wZW5DaGFuZ2UiLCJ0cmlnZ2VyIiwidGl0bGUiLCJ3aWR0aCIsInN1Ym1pdFRpbWVvdXQiLCJfcHJvcHMkYXV0b0Nsb3NlIiwiYXV0b0Nsb3NlIiwibW9kYWxQcm9wcyIsIm9uRmluaXNoIiwic3VibWl0dGVyIiwiY2hpbGRyZW4iLCJfZGVzdHJveU9uQ2xvc2UiLCJkZXN0cm95T25DbG9zZSIsImZvcm1Qcm9wcyIsIl91c2VPdmVybGF5Rm9ybSIsIm1lcmdlZE9wZW4iLCJ0cmlnZ2VyTm9kZSIsImhhbmRsZUZpbmlzaCIsImhhbmRsZUhpZGUiLCJhc3NpZ24iLCJvbkNhbmNlbCIsImZvb3RlciIsInVuZGVmaW5lZCIsInJvb3RTdHlsZSIsImNsYXNzTmFtZSIsInJlc2V0QnV0dG9uUHJvcHMiLCJvbkNsaWNrIiwicmVzZXRUZXh0IiwiY2FuY2VsVGV4dCIsImRpc3BsYXlOYW1lIiwiTW9kYWxGb3JtIl0sIm1hcHBpbmdzIjoiQUFBQSxJQUFJQSxNQUFNLEdBQUks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QixNQUFBLENBQUErQyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQ0ZOLFNBQVMsRUFBQTtVQUNiTCxRQUFRLEVBQUVTLFlBQVk7VUFDdEJSLFNBQVMsRUFBRUEsU0FBUyxLQUFLYSxTQUFTLEdBQUdiLFNBQVMsR0FBRztZQUMvQ2dCLGdCQUFnQixFQUFFO2NBQUVDLE9BQU8sRUFBRVI7WUFBVSxDQUFFO1lBQ3pDUyxTQUFTLEVBQUUsQ0FBQTdCLEVBQUEsR0FBQVMsVUFBVSxLQUFBLElBQUEsSUFBVkEsVUFBVSxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFWQSxVQUFVLENBQUVxQixVQUFVLE1BQUEsSUFBQSxJQUFBOUIsRUFBQSxLQUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLEdBQUk7VUQ1QjNCLENDNkJYO1VBQUFZLFFBQUEsRUFFQUE7UUFBUSxDQUFBLENBQUE7TUFDRCxDQUFBO0lBQ04sQ0FBQSxDQUFBLENBQ0E7RUFBQSxDQUFBLENBQ1A7QUFFUCxDQUFDO0FBRURkLGFBQWEsQ0FBQ2lDLFdBQVcsR0FBRyxXQUFXO0FBRXZDLE9BQU8sSUFBTUMsU0FBUyxnQkFBRzNDLElBQUksQ0FBQ1MsYUFBYSxDQUFDO0FBRTVDLGVBQWVrQyxTQUFTIiwiZmlsZSI6ImNvbXBvbmVudHMvUHJvRm9ybS9sYXlvdXRzL01vZGFsRm9ybS5qcyIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX3Jlc3QgPSAodGhpcyAmJiB0aGlzLl9fcmVzdCkgfHwgZnVuY3Rpb24gKHMsIGUpIHtcbiAgICB2YXIgdCA9IHt9O1xuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxuICAgICAgICB0W3BdID0gc1twXTtcbiAgICBpZiAocyAhPSBudWxsICYmIHR5cGVvZiBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzID09PSBcImZ1bmN0aW9uXCIpXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChlLmluZGV4T2YocFtpXSkgPCAwICYmIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChzLCBwW2ldKSlcbiAgICAgICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcbiAgICAgICAgfVxuICAgIHJldHVybiB0O1xufTtcbmltcG9ydCB7IGpzeCBhcyBfanN4LCBGcmFnbWVudCBhcyBfRnJhZ21lbnQsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcbmltcG9ydCB7IG1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBkZWZhdWx0IGFzIGNsYXNzbmFtZXMgfSBmcm9tICcuLi8uLi8uLi91dGlscy9jbGFzc25hbWVzJztcbmltcG9ydCB7IE1vZGFsIH0gZnJvbSAnLi4vLi4vTW9kYWwnO1xuaW1wb3J0IHsgUHJvRm9ybSB9IGZyb20gJy4uL1Byb0Zvcm0nO1xuaW1wb3J0IHsgQ1NTX1BSRUZJWCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyB1c2VPdmVybGF5Rm9ybSB9IGZyb20gJy4vdXNlT3ZlcmxheUZvcm0nO1xuY29uc3QgY2xhc3NlcyA9IGNsYXNzbmFtZXMoYCR7Q1NTX1BSRUZJWH0tbW9kYWwtZm9ybWApO1xuY29uc3QgTW9kYWxGb3JtQmFzZSA9IChwcm9wcykgPT4ge1xuICAgIHZhciBfYTtcbiAgICBjb25zdCB7IG9wZW4sIG9uT3BlbkNoYW5nZSwgdHJpZ2dlciwgdGl0bGUsIHdpZHRoLCBzdWJtaXRUaW1lb3V0LCBhdXRvQ2xvc2UgPSB0cnVlLCBtb2RhbFByb3BzLCBvbkZpbmlzaCwgc3VibWl0dGVyLCBjaGlsZHJlbiwgXG4gICAgLy8gZGVzdHJveU9uQ2xvc2UgaXMgYWNjZXB0ZWQgZm9yIEFQSSBjb21wYXQgYnV0IG5vdCB1c2VkIOKAlFxuICAgIC8vIE1vZGFsJ3Mgb3duIHVzZVByZXNlbmNlIGFscmVhZHkgdW5tb3VudHMgdGhlIGVudGlyZSBET00gdHJlZVxuICAgIC8vIChpbmNsdWRpbmcgZm9ybSBjb250ZW50KSBhZnRlciB0aGUgY2xvc2UgYW5pbWF0aW9uIGZpbmlzaGVzLlxuICAgIGRlc3Ryb3lPbkNsb3NlOiBfZGVzdHJveU9uQ2xvc2UgfSA9IHByb3BzLCBmb3JtUHJvcHMgPSBfX3Jlc3QocHJvcHMsIFtcIm9wZW5cIiwgXCJvbk9wZW5DaGFuZ2VcIiwgXCJ0cmlnZ2VyXCIsIFwidGl0bGVcIiwgXCJ3aWR0aFwiLCBcInN1Ym1pdFRpbWVvdXRcIiwgXCJhdXRvQ2xvc2VcIiwgXCJtb2RhbFByb3BzXCIsIFwib25GaW5pc2hcIiwgXCJzdWJtaXR0ZXJcIiwgXCJjaGlsZHJlblwiLCBcImRlc3Ryb3lPbkNsb3NlXCJdKTtcbiAgICBjb25zdCB7IG1lcmdlZE9wZW4sIHRyaWdnZXJOb2RlLCBoYW5kbGVGaW5pc2gsIGhhbmRsZUhpZGUsIH0gPSB1c2VPdmVybGF5Rm9ybSh7IG9wZW4sIG9uT3BlbkNoYW5nZSwgdHJpZ2dlciwgYXV0b0Nsb3NlLCBzdWJtaXRUaW1lb3V0IH0sIG9uRmluaXNoKTtcbiAgICByZXR1cm4gKF9qc3hzKF9GcmFnbWVudCwgeyBjaGlsZHJlbjogW3RyaWdnZXJOb2RlLCBfanN4KE1vZGFsLCBPYmplY3QuYXNzaWduKHt9LCBtb2RhbFByb3BzLCB7IG9wZW46IG1lcmdlZE9wZW4sIHRpdGxlOiB0aXRsZSwgb25DYW5jZWw6IGhhbmRsZUhpZGUsIGZvb3RlcjogbnVsbCB9LCAod2lkdGggIT09IHVuZGVmaW5lZCA/IHsgcm9vdFN0eWxlOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIG1vZGFsUHJvcHMgPT09IG51bGwgfHwgbW9kYWxQcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogbW9kYWxQcm9wcy5yb290U3R5bGUpLCB7IHdpZHRoIH0pIH0gOiB7fSksIHsgY2hpbGRyZW46IF9qc3goXCJkaXZcIiwgeyBjbGFzc05hbWU6IGNsYXNzZXMoKSwgY2hpbGRyZW46IF9qc3goUHJvRm9ybSwgT2JqZWN0LmFzc2lnbih7fSwgZm9ybVByb3BzLCB7IG9uRmluaXNoOiBoYW5kbGVGaW5pc2gsIHN1Ym1pdHRlcjogc3VibWl0dGVyICE9PSB1bmRlZmluZWQgPyBzdWJtaXR0ZXIgOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRCdXR0b25Qcm9wczogeyBvbkNsaWNrOiBoYW5kbGVIaWRlIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXRUZXh0OiAoX2EgPSBtb2RhbFByb3BzID09PSBudWxsIHx8IG1vZGFsUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG1vZGFsUHJvcHMuY2FuY2VsVGV4dCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJ0NhbmNlbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICB9LCBjaGlsZHJlbjogY2hpbGRyZW4gfSkpIH0pIH0pKV0gfSkpO1xufTtcbk1vZGFsRm9ybUJhc2UuZGlzcGxheU5hbWUgPSAnTW9kYWxGb3JtJztcbmV4cG9ydCBjb25zdCBNb2RhbEZvcm0gPSBtZW1vKE1vZGFsRm9ybUJhc2UpO1xuZXhwb3J0IGRlZmF1bHQgTW9kYWxGb3JtOyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==
|
|
@@ -1,390 +0,0 @@
|
|
|
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.Modal = 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.MODAL_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.MODAL_OVERFLOW_HIDDEN);
|
|
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.MODAL_OVERFLOW_RESET);
|
|
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.MODAL_ESCAPE_KEY) return;
|
|
119
|
-
event.preventDefault();
|
|
120
|
-
void (onClose === null || onClose === void 0 ? void 0 : onClose());
|
|
121
|
-
};
|
|
122
|
-
document.addEventListener(_constants.MODAL_KEYDOWN_EVENT, handleKeyDown);
|
|
123
|
-
return function () {
|
|
124
|
-
document.removeEventListener(_constants.MODAL_KEYDOWN_EVENT, 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.MODAL_DEFAULT_ILLUSTRATION_SIZE
|
|
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.MODAL_BUTTON_HTML_TYPE,
|
|
160
|
-
className: (0, _classnames["default"])(getClassName(prefixCls, _constants.MODAL_SLOT.control), getClassName(prefixCls, _constants.MODAL_SLOT.control, type)),
|
|
161
|
-
"aria-label": _constants.MODAL_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.MODAL_BUTTON_HTML_TYPE,
|
|
176
|
-
size: _constants.MODAL_BUTTON_SIZE,
|
|
177
|
-
color: (_a = buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.color) !== null && _a !== void 0 ? _a : _constants.MODAL_DEFAULT_BUTTON_COLORS[kind],
|
|
178
|
-
className: (0, _classnames["default"])(getClassName(prefixCls, _constants.MODAL_SLOT.actionButton), getClassName(prefixCls, _constants.MODAL_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.MODAL_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 ModalBase = /*#__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.MODAL_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.MODAL_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.MODAL_DEFAULT_OK_TEXT : _props$okText,
|
|
229
|
-
_props$cancelText = props.cancelText,
|
|
230
|
-
cancelText = _props$cancelText === void 0 ? _constants.MODAL_DEFAULT_CANCEL_TEXT : _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.MODAL_CLOSE_TIMEOUT);
|
|
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.MODAL_CONTROL_TYPE.close, closeIcon !== null && closeIcon !== void 0 ? closeIcon : (0, _jsxRuntime.jsx)(_Icons.Icons, {
|
|
266
|
-
name: _constants.MODAL_DEFAULT_ICONS[_constants.MODAL_CONTROL_TYPE.close],
|
|
267
|
-
size: _constants.MODAL_CONTROL_ICON_SIZE
|
|
268
|
-
}), handleCancel) : null;
|
|
269
|
-
var backControlNode = showBackIcon ? renderControlButton(prefixCls, _constants.MODAL_CONTROL_TYPE.back, backIcon !== null && backIcon !== void 0 ? backIcon : (0, _jsxRuntime.jsx)(_Icons.Icons, {
|
|
270
|
-
name: _constants.MODAL_DEFAULT_ICONS[_constants.MODAL_CONTROL_TYPE.back],
|
|
271
|
-
size: _constants.MODAL_CONTROL_ICON_SIZE
|
|
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.MODAL_ACTION_KIND.cancel,
|
|
303
|
-
text: cancelText,
|
|
304
|
-
action: onCancel,
|
|
305
|
-
buttonProps: cancelButtonProps
|
|
306
|
-
});
|
|
307
|
-
var okButton = renderActionButton({
|
|
308
|
-
prefixCls: prefixCls,
|
|
309
|
-
kind: _constants.MODAL_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.MODAL_SLOT.root), getClassName(prefixCls, _constants.MODAL_SLOT.root, open ? _constants.MODAL_MODIFIER.open : _constants.MODAL_MODIFIER.closed)),
|
|
325
|
-
children: [(0, _jsxRuntime.jsx)("div", {
|
|
326
|
-
"aria-hidden": "true",
|
|
327
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.overlay),
|
|
328
|
-
onClick: handleOverlayClick
|
|
329
|
-
}), (0, _jsxRuntime.jsx)("div", {
|
|
330
|
-
style: wrapperStyle,
|
|
331
|
-
className: getClassName(prefixCls, _constants.MODAL_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.MODAL_MODIFIER.fullWidth), hasMedia && getClassName(prefixCls, undefined, _constants.MODAL_MODIFIER.withMedia), className),
|
|
341
|
-
children: [closeControlNode, hasMedia && (0, _jsxRuntime.jsx)("div", {
|
|
342
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.media),
|
|
343
|
-
children: media
|
|
344
|
-
}), (0, _jsxRuntime.jsxs)("div", {
|
|
345
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.inner),
|
|
346
|
-
children: [backControlNode && (0, _jsxRuntime.jsx)("div", {
|
|
347
|
-
style: headerStyle,
|
|
348
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.header),
|
|
349
|
-
children: backControlNode
|
|
350
|
-
}), (0, _jsxRuntime.jsxs)("div", {
|
|
351
|
-
style: bodyStyle,
|
|
352
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.body),
|
|
353
|
-
children: [(illustrationNode || titleNode || descriptionNode) && (0, _jsxRuntime.jsxs)("div", {
|
|
354
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.summary),
|
|
355
|
-
children: [illustrationNode && (0, _jsxRuntime.jsx)("div", {
|
|
356
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.illustration),
|
|
357
|
-
children: illustrationNode
|
|
358
|
-
}), (titleNode || descriptionNode) && (0, _jsxRuntime.jsxs)("div", {
|
|
359
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.copy),
|
|
360
|
-
children: [titleNode && (0, _jsxRuntime.jsx)("div", {
|
|
361
|
-
id: titleId,
|
|
362
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.title),
|
|
363
|
-
children: titleNode
|
|
364
|
-
}), descriptionNode && (0, _jsxRuntime.jsx)("div", {
|
|
365
|
-
id: descriptionId,
|
|
366
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.description),
|
|
367
|
-
children: descriptionNode
|
|
368
|
-
})]
|
|
369
|
-
})]
|
|
370
|
-
}), childrenNode && (0, _jsxRuntime.jsx)("div", {
|
|
371
|
-
style: contentStyle,
|
|
372
|
-
className: getClassName(prefixCls, _constants.MODAL_SLOT.content),
|
|
373
|
-
children: childrenNode
|
|
374
|
-
})]
|
|
375
|
-
}), footerNode && (0, _jsxRuntime.jsx)("div", {
|
|
376
|
-
style: footerStyle,
|
|
377
|
-
className: (0, _classnames["default"])(getClassName(prefixCls, _constants.MODAL_SLOT.footer), getClassName(prefixCls, _constants.MODAL_SLOT.footer, size)),
|
|
378
|
-
children: footerNode
|
|
379
|
-
})]
|
|
380
|
-
})]
|
|
381
|
-
}))
|
|
382
|
-
})]
|
|
383
|
-
})
|
|
384
|
-
});
|
|
385
|
-
});
|
|
386
|
-
ModalBase.displayName = 'Modal';
|
|
387
|
-
var Modal = exports.Modal = /*#__PURE__*/(0, _react.memo)(ModalBase);
|
|
388
|
-
Modal.displayName = 'Modal';
|
|
389
|
-
var _default = exports["default"] = Modal;
|
|
390
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvTW9kYWwvTW9kYWwuanMiLCJjb21wb25lbnRzL3NyYy9jb21wb25lbnRzL01vZGFsL01vZGFsLnRzeCJdLCJuYW1lcyI6WyJfanN4UnVudGltZSIsInJlcXVpcmUiLCJfaG9va3MiLCJfY2xhc3NuYW1lcyIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfcmVhY3QiLCJfQnV0dG9uIiwiX0ljb25zIiwiX1BvcnRhbCIsIl9UeXBvZ3JhcGh5IiwiX3JlZjMiLCJfY29uc3RhbnRzIiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJzY3JvbGxMb2NrQ291bnQiLCJnZXRDbGFzc05hbWUiLCJwcmVmaXhDbHMiLCJzbG90IiwibW9kaWZpZXIiLCJiYXNlQ2xhc3NOYW1lIiwiY29uY2F0IiwiTU9EQUxfTkFNRVNQQUNFIiwic2V0Qm9keU92ZXJmbG93IiwidmFsdWUiLCJkb2N1bWVudCIsImJvZHkiLCJzdHlsZSIsIm92ZXJmbG93IiwibG9ja0JvZHlTY3JvbGwiLCJNT0RBTF9PVkVSRkxPV19ISURERU4iLCJ1bmxvY2tCb2R5U2Nyb2xsIiwiTWF0aCIsIm1heCIsInJlcXVlc3RBbmltYXRpb25GcmFtZSIsIk1PREFMX09WRVJGTE9XX1JFU0VUIiwidXNlQm9keVNjcm9sbExvY2siLCJsb2NrZWQiLCJpc0xvY2tlZFJlZiIsInVzZVJlZiIsInVzZUVmZmVjdCIsImN1cnJlbnQiLCJ1bmRlZmluZWQiLCJ1c2VQcmVzZW5jZSIsIm9wZW4iLCJkZWxheSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsIm1vdW50ZWQiLCJzZXRNb3VudGVkIiwiY2xvc2VUaW1lclJlZiIsIndpbmRvdyIsImNsZWFyVGltZW91dCIsInNldFRpbWVvdXQiLCJ1c2VEaWFsb2dGb2N1cyIsImFjdGl2ZSIsImRpYWxvZ1JlZiIsInByZXZpb3VzQWN0aXZlRWxlbWVudFJlZiIsImFjdGl2ZUVsZW1lbnQiLCJIVE1MRWxlbWVudCIsImZyYW1lIiwiX2EiLCJmb2N1cyIsImNhbmNlbEFuaW1hdGlvbkZyYW1lIiwiX2IiLCJ1c2VFc2NhcGVDbG9zZSIsImVuYWJsZWQiLCJvbkNsb3NlIiwiaGFuZGxlS2V5RG93biIsImV2ZW50Iiwia2V5IiwiTU9EQUxfRVNDQVBFX0tFWSIsInByZXZlbnREZWZhdWx0IiwiYWRkRXZlbnRMaXN0ZW5lciIsIk1PREFMX0tFWURPV05fRVZFTlQiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwicmVuZGVyVHlwb2dyYXBoeU5vZGUiLCJub2RlIiwicmVuZGVyVGV4dCIsInJlbmRlcklsbHVzdHJhdGlvbk5vZGUiLCJpbGx1c3RyYXRpb24iLCJfanN4IiwiSWNvbnMiLCJuYW1lIiwic2l6ZSIsIk1PREFMX0RFRkFVTFRfSUxMVVNUUkFUSU9OX1NJWkUiLCJpc1ZhbGlkRWxlbWVudCIsInRvVm9pZEhhbmRsZXIiLCJhY3Rpb24iLCJjcmVhdGVBY3Rpb25IYW5kbGVyIiwiYnV0dG9uQ2xpY2siLCJkZWZhdWx0UHJldmVudGVkIiwicmVuZGVyQ29udHJvbEJ1dHRvbiIsInR5cGUiLCJpY29uTm9kZSIsIm9uQ2xpY2siLCJNT0RBTF9CVVRUT05fSFRNTF9UWVBFIiwiY2xhc3NOYW1lIiwiY2xhc3NOYW1lcyIsIk1PREFMX1NMT1QiLCJjb250cm9sIiwiTU9EQUxfQ09OVFJPTF9MQUJFTFMiLCJjaGlsZHJlbiIsInJlbmRlckFjdGlvbkJ1dHRvbiIsIl9yZWYiLCJraW5kIiwidGV4dCIsImJ1dHRvblByb3BzIiwiQnV0dG9uIiwiYXNzaWduIiwiTU9EQUxfQlVUVE9OX1NJWkUiLCJjb2xvciIsIk1PREFMX0RFRkFVTFRfQlVUVE9OX0NPTE9SUyIsImFjdGlvbkJ1dHRvbiIsInJlc29sdmVGb290ZXJOb2RlIiwiX3JlZjIiLCJmb290ZXIiLCJjYW5jZWxCdXR0b24iLCJva0J1dHRvbiIsIk1PREFMX1NJWkUiLCJsYXJnZSIsIl9qc3hzIiwiX0ZyYWdtZW50IiwiTW9kYWxCYXNlIiwiZm9yd2FyZFJlZiIsInByb3BzIiwicmVmIiwiX3Byb3BzJHByZWZpeENscyIsIk1PREFMX0RFRkFVTFRfUFJFRklYIiwiX3Byb3BzJG9wZW4iLCJfcHJvcHMkc2l6ZSIsInNtYWxsIiwiX3Byb3BzJG1hc2tDbG9zYWJsZSIsIm1hc2tDbG9zYWJsZSIsIl9wcm9wcyRzaG93Q2xvc2VJY29uIiwic2hvd0Nsb3NlSWNvbiIsIl9wcm9wcyRzaG93QmFja0ljb24iLCJzaG93QmFja0ljb24iLCJfcHJvcHMkZnVsbFdpZHRoIiwiZnVsbFdpZHRoIiwidGl0bGUiLCJkZXNjcmlwdGlvbiIsIm1lZGlhIiwiY2xvc2VJY29uIiwiYmFja0ljb24iLCJvbk9rIiwib25DYW5jZWwiLCJvbkJhY2siLCJfcHJvcHMkb2tUZXh0Iiwib2tUZXh0IiwiTU9EQUxfREVGQVVMVF9PS19URVhUIiwiX3Byb3BzJGNhbmNlbFRleHQiLCJjYW5jZWxUZXh0IiwiTU9EQUxfREVGQVVMVF9DQU5DRUxfVEVYVCIsInJvb3RTdHlsZSIsIndyYXBwZXJTdHlsZSIsImJvZHlTdHlsZSIsImhlYWRlclN0eWxlIiwiY29udGVudFN0eWxlIiwiZm9vdGVyU3R5bGUiLCJjYW5jZWxCdXR0b25Qcm9wcyIsIm9rQnV0dG9uUHJvcHMiLCJyZXN0IiwiTU9EQUxfQ0xPU0VfVElNRU9VVCIsInRpdGxlSWQiLCJ1c2VJZCIsImRlc2NyaXB0aW9uSWQiLCJoYW5kbGVTZXREaWFsb2dSZWYiLCJ1c2VDYWxsYmFjayIsImZpbGxSZWYiLCJoYW5kbGVDYW5jZWwiLCJ1c2VFdmVudENhbGxiYWNrIiwiaGFuZGxlT2siLCJoYW5kbGVCYWNrIiwiaGFuZGxlT3ZlcmxheUNsaWNrIiwiaGFzTWVkaWEiLCJjbG9zZUNvbnRyb2xOb2RlIiwiTU9EQUxfQ09OVFJPTF9UWVBFIiwiY2xvc2UiLCJNT0RBTF9ERUZBVUxUX0lDT05TIiwiTU9EQUxfQ09OVFJPTF9JQ09OX1NJWkUiLCJiYWNrQ29udHJvbE5vZGUiLCJiYWNrIiwiaWxsdXN0cmF0aW9uTm9kZSIsInRpdGxlTm9kZSIsIlR5cG9ncmFwaHlIZWFkbGluZSIsImFzIiwiZGVzY3JpcHRpb25Ob2RlIiwiVHlwb2dyYXBoeUJvZHkiLCJzdHJvbmciLCJjaGlsZHJlbk5vZGUiLCJNT0RBTF9BQ1RJT05fS0lORCIsImNhbmNlbCIsIm9rIiwiZm9vdGVyTm9kZSIsIlBvcnRhbCIsInJvb3QiLCJNT0RBTF9NT0RJRklFUiIsImNsb3NlZCIsIm92ZXJsYXkiLCJ3cmFwcGVyIiwicm9sZSIsInRhYkluZGV4Iiwid2l0aE1lZGlhIiwiaW5uZXIiLCJoZWFkZXIiLCJzdW1tYXJ5IiwiY29weSIsImlkIiwiY29udGVudCIsImRpc3BsYXlOYW1lIiwiTW9kYWwiLCJleHBvcnRzIiwibWVtbyIsIl9kZWZhdWx0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQVdBLElBQUFBLFdBQUEsR0FBQUMsT0FBQTtBQ1hBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLFdBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUNBLElBQUFJLE1BQUEsR0FBQUosT0FBQTtBQVVBLElBQUFLLE9BQUEsR0FBQUwsT0FBQTtBQUNBLElBQUFNLE1BQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLE9BQUEsR0FBQVAsT0FBQTtBQUNBLElBQUFRLFdBQUEsR0FBQVIsT0FBQTtBQUNBLElBQUFTLEtBQUEsR0FBQVQsT0FBQTtBQUlBLElBQUFVLFVBQUEsR0FBQVYsT0FBQTtBQXlCQUEsT0FBQTtBRDdDQSxJQUFJVyxNQUFNLEdBQUksVUFBUSxTQUFLQSxNQUFNLElBQUssVUFBVUMsQ0FBQyxFQUFFQyxDQUFDLEVBQUU7RUFDbEQsSUFBSUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztFQUNWLEtBQUssSUFBSUMsQ0FBQyxJQUFJSCxDQUFDLEVBQUUsSUFBSUksTUFBTSxDQUFDQyxT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Q0MsU0FBUyxFQUFFb0YscUJBQVUsQ0FBQzhHLE9BQU8sQ0FBQztnQkFBQTNHLFFBQUEsRUFFckR3RjtjQUFZLENBQUEsQ0FFaEI7WUFBQSxDQUFBLENBQ0csRUFDTEksVUFBVSxJQUNULElBQUFqSCxlQUFBLEVBQUEsS0FBQSxFQUFBO2NBQ0V4RCxLQUFLLEVBQUVzSSxXQUFXO2NBQ2xCOUQsU0FBUyxFQUFFLElBQUFDLHNCQUFVLEVBQ25CcEYsWUFBWSxDQUFDQyxTQUFTLEVBQUVvRixxQkFBVSxDQUFDaUIsTUFBTSxDQUFDLEVBQzFDdEcsWUFBWSxDQUFDQyxTQUFTLEVBQUVvRixxQkFBVSxDQUFDaUIsTUFBTSxFQUFFaEMsSUFBSSxDQUFDLENBQ2pEO2NBQUFrQixRQUFBLEVBRUE0RjtZQUFVLENBQUEsQ0FFZDtVQUFBLENBQUEsQ0FDRztRQUFBLENBQUEsQ0FBQTtNQUNGLENBQUEsQ0FDRjtJQUFBLENBQUE7RUFDRixDQUFBLENBQ0M7QUFFYixDQUFDLENBQUM7QUFFRnZFLFNBQVMsQ0FBQ3VGLFdBQVcsR0FBRyxPQUFPO0FBRXhCLElBQU1DLEtBQUssR0FBQUMsT0FBQSxDQUFBRCxLQUFBLGdCQUFHLElBQUFFLFdBQUksRUFBQzFGLFNBQVMsQ0FBQztBQUVwQ3dGLEtBQUssQ0FBQ0QsV0FBVyxHQUFHLE9BQU87QUFBQyxJQUFBSSxRQUFBLEdBQUFGLE9BQUEsY0FFYkQsS0FBSyIsImZpbGUiOiJjb21wb25lbnRzL01vZGFsL01vZGFsLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlRXZlbnRDYWxsYmFjayB9IGZyb20gJ0AxbW9uZXkvaG9va3MnO1xuaW1wb3J0IGNsYXNzTmFtZXMgZnJvbSAnY2xhc3NuYW1lcyc7XG5pbXBvcnQgeyBmb3J3YXJkUmVmLCBpc1ZhbGlkRWxlbWVudCwgbWVtbywgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlSWQsIHVzZVJlZiwgdXNlU3RhdGUsIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAnLi4vQnV0dG9uJztcbmltcG9ydCB7IEljb25zIH0gZnJvbSAnLi4vSWNvbnMnO1xuaW1wb3J0IHsgUG9ydGFsIH0gZnJvbSAnLi4vUG9ydGFsJztcbmltcG9ydCB7IFR5cG9ncmFwaHlCb2R5LCBUeXBvZ3JhcGh5SGVhZGxpbmUgfSBmcm9tICcuLi9UeXBvZ3JhcGh5JztcbmltcG9ydCB7IGZpbGxSZWYgfSBmcm9tICcuLi8uLi91dGlscy9yZWYnO1xuaW1wb3J0IHsgTU9EQUxfQUNUSU9OX0tJTkQsIE1PREFMX0JVVFRPTl9IVE1MX1RZUEUsIE1PREFMX0JVVFRPTl9TSVpFLCBNT0RBTF9DTE9TRV9USU1FT1VULCBNT0RBTF9DT05UUk9MX0lDT05fU0laRSwgTU9EQUxfQ09OVFJPTF9MQUJFTFMsIE1PREFMX0NPTlRST0xfVFlQRSwgTU9EQUxfREVGQVVMVF9CVVRUT05fQ09MT1JTLCBNT0RBTF9ERUZBVUxUX0NBTkNFTF9URVhULCBNT0RBTF9ERUZBVUxUX0lDT05TLCBNT0RBTF9ERUZBVUxUX0lMTFVTVFJBVElPTl9TSVpFLCBNT0RBTF9ERUZBVUxUX09LX1RFWFQsIE1PREFMX0RFRkFVTFRfUFJFRklYLCBNT0RBTF9FU0NBUEVfS0VZLCBNT0RBTF9LRVlET1dOX0VWRU5ULCBNT0RBTF9NT0RJRklFUiwgTU9EQUxfTkFNRVNQQUNFLCBNT0RBTF9PVkVSRkxPV19ISURERU4sIE1PREFMX09WRVJGTE9XX1JFU0VULCBNT0RBTF9TSVpFLCBNT0RBTF9TTE9ULCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCAnLi9zdHlsZSc7XG5sZXQgc2Nyb2xsTG9ja0NvdW50ID0gMDtcbmNvbnN0IGdldENsYXNzTmFtZSA9IChwcmVmaXhDbHMsIHNsb3QsIG1vZGlmaWVyKSA9PiB7XG4gICAgY29uc3QgYmFzZUNsYXNzTmFtZSA9IGAke01PREFMX05BTUVTUEFDRX0tJHtwcmVmaXhDbHN9JHtzbG90ID8gYC0ke3Nsb3R9YCA6ICcnfWA7XG4gICAgcmV0dXJuIG1vZGlmaWVyID8gYCR7YmFzZUNsYXNzTmFtZX0tJHttb2RpZmllcn1gIDogYmFzZUNsYXNzTmFtZTtcbn07XG5jb25zdCBzZXRCb2R5T3ZlcmZsb3cgPSAodmFsdWUpID0+IHtcbiAgICBpZiAodHlwZW9mIGRvY3VtZW50ID09PSAndW5kZWZpbmVkJylcbiAgICAgICAgcmV0dXJuO1xuICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSB2YWx1ZTtcbn07XG5jb25zdCBsb2NrQm9keVNjcm9sbCA9ICgpID0+IHtcbiAgICBzY3JvbGxMb2NrQ291bnQgKz0gMTtcbiAgICBzZXRCb2R5T3ZlcmZsb3coTU9EQUxfT1ZFUkZMT1dfSElEREVOKTtcbn07XG5jb25zdCB1bmxvY2tCb2R5U2Nyb2xsID0gKCkgPT4ge1xuICAgIHNjcm9sbExvY2tDb3VudCA9IE1hdGgubWF4KDAsIHNjcm9sbExvY2tDb3VudCAtIDEpO1xuICAgIGlmIChzY3JvbGxMb2NrQ291bnQgPT09IDApIHtcbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChzY3JvbGxMb2NrQ291bnQgPT09IDApIHtcbiAgICAgICAgICAgICAgICBzZXRCb2R5T3ZlcmZsb3coTU9EQUxfT1ZFUkZMT1dfUkVTRVQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59O1xuY29uc3QgdXNlQm9keVNjcm9sbExvY2sgPSAobG9ja2VkKSA9PiB7XG4gICAgY29uc3QgaXNMb2NrZWRSZWYgPSB1c2VSZWYoZmFsc2UpO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghbG9ja2VkIHx8IGlzTG9ja2VkUmVmLmN1cnJlbnQpXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICBpc0xvY2tlZFJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgICAgbG9ja0JvZHlTY3JvbGwoKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgICAgIGlmICghaXNMb2NrZWRSZWYuY3VycmVudClcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBpc0xvY2tlZFJlZi5jdXJyZW50ID0gZmFsc2U7XG4gICAgICAgICAgICB1bmxvY2tCb2R5U2Nyb2xsKCk7XG4gICAgICAgIH07XG4gICAgfSwgW2xvY2tlZF0pO1xufTtcbmNvbnN0IHVzZVByZXNlbmNlID0gKG9wZW4sIGRlbGF5KSA9PiB7XG4gICAgY29uc3QgW21vdW50ZWQsIHNldE1vdW50ZWRdID0gdXNlU3RhdGUob3Blbik7XG4gICAgY29uc3QgY2xvc2VUaW1lclJlZiA9IHVzZVJlZihudWxsKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNsb3NlVGltZXJSZWYuY3VycmVudCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5jbGVhclRpbWVvdXQoY2xvc2VUaW1lclJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9LCBbXSk7XG4gICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKG9wZW4pIHtcbiAgICAgICAgICAgIGlmIChjbG9zZVRpbWVyUmVmLmN1cnJlbnQgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KGNsb3NlVGltZXJSZWYuY3VycmVudCk7XG4gICAgICAgICAgICAgICAgY2xvc2VUaW1lclJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNldE1vdW50ZWQodHJ1ZSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFtb3VudGVkKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjbG9zZVRpbWVyUmVmLmN1cnJlbnQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBzZXRNb3VudGVkKGZhbHNlKTtcbiAgICAgICAgICAgIGNsb3NlVGltZXJSZWYuY3VycmVudCA9IG51bGw7XG4gICAgICAgIH0sIGRlbGF5KTtcbiAgICB9LCBbZGVsYXksIG1vdW50ZWQsIG9wZW5dKTtcbiAgICByZXR1cm4gbW91bnRlZDtcbn07XG5jb25zdCB1c2VEaWFsb2dGb2N1cyA9IChhY3RpdmUsIGRpYWxvZ1JlZikgPT4ge1xuICAgIGNvbnN0IHByZXZpb3VzQWN0aXZlRWxlbWVudFJlZiA9IHVzZVJlZihudWxsKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoIWFjdGl2ZSB8fCB0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgcHJldmlvdXNBY3RpdmVFbGVtZW50UmVmLmN1cnJlbnQgPVxuICAgICAgICAgICAgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBpbnN0YW5jZW9mIEhUTUxFbGVtZW50ID8gZG9jdW1lbnQuYWN0aXZlRWxlbWVudCA6IG51bGw7XG4gICAgICAgIGNvbnN0IGZyYW1lID0gd2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICAoX2EgPSBkaWFsb2dSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvY3VzKCk7XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgd2luZG93LmNhbmNlbEFuaW1hdGlvbkZyYW1lKGZyYW1lKTtcbiAgICAgICAgfTtcbiAgICB9LCBbYWN0aXZlLCBkaWFsb2dSZWZdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICBpZiAoYWN0aXZlKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAoX2IgPSAoX2EgPSBwcmV2aW91c0FjdGl2ZUVsZW1lbnRSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZvY3VzKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuY2FsbChfYSk7XG4gICAgICAgIHByZXZpb3VzQWN0aXZlRWxlbWVudFJlZi5jdXJyZW50ID0gbnVsbDtcbiAgICB9LCBbYWN0aXZlXSk7XG59O1xuY29uc3QgdXNlRXNjYXBlQ2xvc2UgPSAoZW5hYmxlZCwgb25DbG9zZSkgPT4ge1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghZW5hYmxlZCB8fCB0eXBlb2YgZG9jdW1lbnQgPT09ICd1bmRlZmluZWQnKVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgaGFuZGxlS2V5RG93biA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgaWYgKGV2ZW50LmtleSAhPT0gTU9EQUxfRVNDQVBFX0tFWSlcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgdm9pZCAob25DbG9zZSA9PT0gbnVsbCB8fCBvbkNsb3NlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBvbkNsb3NlKCkpO1xuICAgICAgICB9O1xuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKE1PREFMX0tFWURPV05fRVZFTlQsIGhhbmRsZUtleURvd24pO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihNT0RBTF9LRVlET1dOX0VWRU5ULCBoYW5kbGVLZXlEb3duKTtcbiAgICAgICAgfTtcbiAgICB9LCBbZW5hYmxlZCwgb25DbG9zZV0pO1xufTtcbmNvbnN0IHJlbmRlclR5cG9ncmFwaHlOb2RlID0gKG5vZGUsIHJlbmRlclRleHQpID0+IHtcbiAgICBpZiAobm9kZSA9PSBudWxsIHx8IHR5cGVvZiBub2RlID09PSAnYm9vbGVhbicpXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIGlmICh0eXBlb2Ygbm9kZSA9PT0gJ3N0cmluZycgfHwgdHlwZW9mIG5vZGUgPT09ICdudW1iZXInKSB7XG4gICAgICAgIHJldHVybiByZW5kZXJUZXh0KG5vZGUpO1xuICAgIH1cbiAgICByZXR1cm4gbm9kZTtcbn07XG5jb25zdCByZW5kZXJJbGx1c3RyYXRpb25Ob2RlID0gKGlsbHVzdHJhdGlvbikgPT4ge1xuICAgIGlmICghaWxsdXN0cmF0aW9uKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBpZiAodHlwZW9mIGlsbHVzdHJhdGlvbiA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcmV0dXJuIF9qc3goSWNvbnMsIHsgbmFtZTogaWxsdXN0cmF0aW9uLCBzaXplOiBNT0RBTF9ERUZBVUxUX0lMTFVTVFJBVElPTl9TSVpFIH0pO1xuICAgIH1cbiAgICByZXR1cm4gaXNWYWxpZEVsZW1lbnQoaWxsdXN0cmF0aW9uKSA/IGlsbHVzdHJhdGlvbiA6IG51bGw7XG59O1xuY29uc3QgdG9Wb2lkSGFuZGxlciA9IChhY3Rpb24pID0+ICgpID0+IHtcbiAgICB2b2lkIChhY3Rpb24gPT09IG51bGwgfHwgYWN0aW9uID09PSB2b2lkIDAgPyB2b2lkIDAgOiBhY3Rpb24oKSk7XG59O1xuY29uc3QgY3JlYXRlQWN0aW9uSGFuZGxlciA9IChhY3Rpb24sIGJ1dHRvbkNsaWNrKSA9PiAoZXZlbnQpID0+IHtcbiAgICBidXR0b25DbGljayA9PT0gbnVsbCB8fCBidXR0b25DbGljayA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uQ2xpY2soZXZlbnQpO1xuICAgIGlmIChldmVudC5kZWZhdWx0UHJldmVudGVkIHx8ICFhY3Rpb24pXG4gICAgICAgIHJldHVybjtcbiAgICB2b2lkIGFjdGlvbigpO1xufTtcbmNvbnN0IHJlbmRlckNvbnRyb2xCdXR0b24gPSAocHJlZml4Q2xzLCB0eXBlLCBpY29uTm9kZSwgb25DbGljaykgPT4gKF9qc3goXCJidXR0b25cIiwgeyB0eXBlOiBNT0RBTF9CVVRUT05fSFRNTF9UWVBFLCBjbGFzc05hbWU6IGNsYXNzTmFtZXMoZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5jb250cm9sKSwgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5jb250cm9sLCB0eXBlKSksIFwiYXJpYS1sYWJlbFwiOiBNT0RBTF9DT05UUk9MX0xBQkVMU1t0eXBlXSwgb25DbGljazogdG9Wb2lkSGFuZGxlcihvbkNsaWNrKSwgY2hpbGRyZW46IGljb25Ob2RlIH0pKTtcbmNvbnN0IHJlbmRlckFjdGlvbkJ1dHRvbiA9ICh7IHByZWZpeENscywga2luZCwgdGV4dCwgYWN0aW9uLCBidXR0b25Qcm9wcywgfSkgPT4ge1xuICAgIHZhciBfYTtcbiAgICBpZiAodGV4dCA9PSBudWxsIHx8ICFhY3Rpb24pXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIHJldHVybiAoX2pzeChCdXR0b24sIE9iamVjdC5hc3NpZ24oe30sIGJ1dHRvblByb3BzLCB7IHR5cGU6IE1PREFMX0JVVFRPTl9IVE1MX1RZUEUsIHNpemU6IE1PREFMX0JVVFRPTl9TSVpFLCBjb2xvcjogKF9hID0gYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLmNvbG9yKSAhPT0gbnVsbCAmJiBfYSAhPT0gdm9pZCAwID8gX2EgOiBNT0RBTF9ERUZBVUxUX0JVVFRPTl9DT0xPUlNba2luZF0sIGNsYXNzTmFtZTogY2xhc3NOYW1lcyhnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBNT0RBTF9TTE9ULmFjdGlvbkJ1dHRvbiksIGdldENsYXNzTmFtZShwcmVmaXhDbHMsIE1PREFMX1NMT1QuYWN0aW9uQnV0dG9uLCBraW5kKSwgYnV0dG9uUHJvcHMgPT09IG51bGwgfHwgYnV0dG9uUHJvcHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJ1dHRvblByb3BzLmNsYXNzTmFtZSksIHN0eWxlOiBidXR0b25Qcm9wcyA9PT0gbnVsbCB8fCBidXR0b25Qcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uUHJvcHMuc3R5bGUsIG9uQ2xpY2s6IGNyZWF0ZUFjdGlvbkhhbmRsZXIoYWN0aW9uLCBidXR0b25Qcm9wcyA9PT0gbnVsbCB8fCBidXR0b25Qcm9wcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogYnV0dG9uUHJvcHMub25DbGljayksIGNoaWxkcmVuOiB0ZXh0IH0pKSk7XG59O1xuY29uc3QgcmVzb2x2ZUZvb3Rlck5vZGUgPSAoeyBmb290ZXIsIHNpemUsIGNhbmNlbEJ1dHRvbiwgb2tCdXR0b24sIH0pID0+IHtcbiAgICBpZiAoZm9vdGVyID09PSBudWxsKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICBpZiAodHlwZW9mIGZvb3RlciA9PT0gJ2Z1bmN0aW9uJylcbiAgICAgICAgcmV0dXJuIGZvb3RlcihjYW5jZWxCdXR0b24sIG9rQnV0dG9uKTtcbiAgICBpZiAoZm9vdGVyICE9PSB1bmRlZmluZWQpXG4gICAgICAgIHJldHVybiBmb290ZXI7XG4gICAgaWYgKCFjYW5jZWxCdXR0b24gJiYgIW9rQnV0dG9uKVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gc2l6ZSA9PT0gTU9EQUxfU0laRS5sYXJnZVxuICAgICAgICA/IChfanN4cyhfRnJhZ21lbnQsIHsgY2hpbGRyZW46IFtjYW5jZWxCdXR0b24sIG9rQnV0dG9uXSB9KSlcbiAgICAgICAgOiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbb2tCdXR0b24sIGNhbmNlbEJ1dHRvbl0gfSkpO1xufTtcbmNvbnN0IE1vZGFsQmFzZSA9IGZvcndhcmRSZWYoKHByb3BzLCByZWYpID0+IHtcbiAgICBjb25zdCB7IGNsYXNzTmFtZSwgc3R5bGUsIHByZWZpeENscyA9IE1PREFMX0RFRkFVTFRfUFJFRklYLCBvcGVuID0gZmFsc2UsIHNpemUgPSBNT0RBTF9TSVpFLnNtYWxsLCBtYXNrQ2xvc2FibGUgPSB0cnVlLCBzaG93Q2xvc2VJY29uID0gdHJ1ZSwgc2hvd0JhY2tJY29uID0gZmFsc2UsIGZ1bGxXaWR0aCA9IGZhbHNlLCB0aXRsZSwgZGVzY3JpcHRpb24sIGNoaWxkcmVuLCBpbGx1c3RyYXRpb24sIG1lZGlhLCBjbG9zZUljb24sIGJhY2tJY29uLCBmb290ZXIsIG9uT2ssIG9uQ2FuY2VsLCBvbkJhY2ssIG9rVGV4dCA9IE1PREFMX0RFRkFVTFRfT0tfVEVYVCwgY2FuY2VsVGV4dCA9IE1PREFMX0RFRkFVTFRfQ0FOQ0VMX1RFWFQsIHJvb3RTdHlsZSwgd3JhcHBlclN0eWxlLCBib2R5U3R5bGUsIGhlYWRlclN0eWxlLCBjb250ZW50U3R5bGUsIGZvb3RlclN0eWxlLCBjYW5jZWxCdXR0b25Qcm9wcywgb2tCdXR0b25Qcm9wcyB9ID0gcHJvcHMsIHJlc3QgPSBfX3Jlc3QocHJvcHMsIFtcImNsYXNzTmFtZVwiLCBcInN0eWxlXCIsIFwicHJlZml4Q2xzXCIsIFwib3BlblwiLCBcInNpemVcIiwgXCJtYXNrQ2xvc2FibGVcIiwgXCJzaG93Q2xvc2VJY29uXCIsIFwic2hvd0JhY2tJY29uXCIsIFwiZnVsbFdpZHRoXCIsIFwidGl0bGVcIiwgXCJkZXNjcmlwdGlvblwiLCBcImNoaWxkcmVuXCIsIFwiaWxsdXN0cmF0aW9uXCIsIFwibWVkaWFcIiwgXCJjbG9zZUljb25cIiwgXCJiYWNrSWNvblwiLCBcImZvb3RlclwiLCBcIm9uT2tcIiwgXCJvbkNhbmNlbFwiLCBcIm9uQmFja1wiLCBcIm9rVGV4dFwiLCBcImNhbmNlbFRleHRcIiwgXCJyb290U3R5bGVcIiwgXCJ3cmFwcGVyU3R5bGVcIiwgXCJib2R5U3R5bGVcIiwgXCJoZWFkZXJTdHlsZVwiLCBcImNvbnRlbnRTdHlsZVwiLCBcImZvb3RlclN0eWxlXCIsIFwiY2FuY2VsQnV0dG9uUHJvcHNcIiwgXCJva0J1dHRvblByb3BzXCJdKTtcbiAgICBjb25zdCBtb3VudGVkID0gdXNlUHJlc2VuY2Uob3BlbiwgTU9EQUxfQ0xPU0VfVElNRU9VVCk7XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHRpdGxlSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uSWQgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGhhbmRsZVNldERpYWxvZ1JlZiA9IHVzZUNhbGxiYWNrKChub2RlKSA9PiB7XG4gICAgICAgIGRpYWxvZ1JlZi5jdXJyZW50ID0gbm9kZTtcbiAgICAgICAgZmlsbFJlZihyZWYsIG5vZGUpO1xuICAgIH0sIFtyZWZdKTtcbiAgICBjb25zdCBoYW5kbGVDYW5jZWwgPSB1c2VFdmVudENhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgdm9pZCAob25DYW5jZWwgPT09IG51bGwgfHwgb25DYW5jZWwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQ2FuY2VsKCkpO1xuICAgIH0pO1xuICAgIGNvbnN0IGhhbmRsZU9rID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIHZvaWQgKG9uT2sgPT09IG51bGwgfHwgb25PayA9PT0gdm9pZCAwID8gdm9pZCAwIDogb25PaygpKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVCYWNrID0gdXNlRXZlbnRDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgIHZvaWQgKG9uQmFjayA9PT0gbnVsbCB8fCBvbkJhY2sgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uQmFjaygpKTtcbiAgICB9KTtcbiAgICBjb25zdCBoYW5kbGVPdmVybGF5Q2xpY2sgPSB1c2VFdmVudENhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgaWYgKCFtYXNrQ2xvc2FibGUpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGhhbmRsZUNhbmNlbCgpO1xuICAgIH0pO1xuICAgIHVzZUJvZHlTY3JvbGxMb2NrKG1vdW50ZWQgJiYgb3Blbik7XG4gICAgdXNlRGlhbG9nRm9jdXMobW91bnRlZCAmJiBvcGVuLCBkaWFsb2dSZWYpO1xuICAgIHVzZUVzY2FwZUNsb3NlKG1vdW50ZWQgJiYgb3BlbiwgaGFuZGxlQ2FuY2VsKTtcbiAgICBjb25zdCBoYXNNZWRpYSA9IG1lZGlhICE9IG51bGw7XG4gICAgY29uc3QgY2xvc2VDb250cm9sTm9kZSA9IHNob3dDbG9zZUljb25cbiAgICAgICAgPyByZW5kZXJDb250cm9sQnV0dG9uKHByZWZpeENscywgTU9EQUxfQ09OVFJPTF9UWVBFLmNsb3NlLCBjbG9zZUljb24gIT09IG51bGwgJiYgY2xvc2VJY29uICE9PSB2b2lkIDAgPyBjbG9zZUljb24gOiAoX2pzeChJY29ucywgeyBuYW1lOiBNT0RBTF9ERUZBVUxUX0lDT05TW01PREFMX0NPTlRST0xfVFlQRS5jbG9zZV0sIHNpemU6IE1PREFMX0NPTlRST0xfSUNPTl9TSVpFIH0pKSwgaGFuZGxlQ2FuY2VsKVxuICAgICAgICA6IG51bGw7XG4gICAgY29uc3QgYmFja0NvbnRyb2xOb2RlID0gc2hvd0JhY2tJY29uXG4gICAgICAgID8gcmVuZGVyQ29udHJvbEJ1dHRvbihwcmVmaXhDbHMsIE1PREFMX0NPTlRST0xfVFlQRS5iYWNrLCBiYWNrSWNvbiAhPT0gbnVsbCAmJiBiYWNrSWNvbiAhPT0gdm9pZCAwID8gYmFja0ljb24gOiAoX2pzeChJY29ucywgeyBuYW1lOiBNT0RBTF9ERUZBVUxUX0lDT05TW01PREFMX0NPTlRST0xfVFlQRS5iYWNrXSwgc2l6ZTogTU9EQUxfQ09OVFJPTF9JQ09OX1NJWkUgfSkpLCBoYW5kbGVCYWNrKVxuICAgICAgICA6IG51bGw7XG4gICAgY29uc3QgaWxsdXN0cmF0aW9uTm9kZSA9IHJlbmRlcklsbHVzdHJhdGlvbk5vZGUoaWxsdXN0cmF0aW9uKTtcbiAgICBjb25zdCB0aXRsZU5vZGUgPSByZW5kZXJUeXBvZ3JhcGh5Tm9kZSh0aXRsZSwgKHZhbHVlKSA9PiAoX2pzeChUeXBvZ3JhcGh5SGVhZGxpbmUsIHsgc2l6ZTogXCJtZFwiLCBhczogXCJoMlwiLCBjb2xvcjogXCJkZWZhdWx0XCIsIGNoaWxkcmVuOiB2YWx1ZSB9KSkpO1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uTm9kZSA9IHJlbmRlclR5cG9ncmFwaHlOb2RlKGRlc2NyaXB0aW9uLCAodmFsdWUpID0+IChfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6IFwibWRcIiwgYXM6IFwicFwiLCBzdHJvbmc6IHRydWUsIGNvbG9yOiBcImRlZmF1bHQtc2Vjb25kYXJ5XCIsIGNoaWxkcmVuOiB2YWx1ZSB9KSkpO1xuICAgIGNvbnN0IGNoaWxkcmVuTm9kZSA9IHJlbmRlclR5cG9ncmFwaHlOb2RlKGNoaWxkcmVuLCAodmFsdWUpID0+IChfanN4KFR5cG9ncmFwaHlCb2R5LCB7IHNpemU6IFwibWRcIiwgYXM6IFwicFwiLCBzdHJvbmc6IHRydWUsIGNvbG9yOiBcImRlZmF1bHQtc2Vjb25kYXJ5XCIsIGNoaWxkcmVuOiB2YWx1ZSB9KSkpO1xuICAgIGNvbnN0IGNhbmNlbEJ1dHRvbiA9IHJlbmRlckFjdGlvbkJ1dHRvbih7XG4gICAgICAgIHByZWZpeENscyxcbiAgICAgICAga2luZDogTU9EQUxfQUNUSU9OX0tJTkQuY2FuY2VsLFxuICAgICAgICB0ZXh0OiBjYW5jZWxUZXh0LFxuICAgICAgICBhY3Rpb246IG9uQ2FuY2VsLFxuICAgICAgICBidXR0b25Qcm9wczogY2FuY2VsQnV0dG9uUHJvcHMsXG4gICAgfSk7XG4gICAgY29uc3Qgb2tCdXR0b24gPSByZW5kZXJBY3Rpb25CdXR0b24oe1xuICAgICAgICBwcmVmaXhDbHMsXG4gICAgICAgIGtpbmQ6IE1PREFMX0FDVElPTl9LSU5ELm9rLFxuICAgICAgICB0ZXh0OiBva1RleHQsXG4gICAgICAgIGFjdGlvbjogb25PayxcbiAgICAgICAgYnV0dG9uUHJvcHM6IG9rQnV0dG9uUHJvcHMsXG4gICAgfSk7XG4gICAgY29uc3QgZm9vdGVyTm9kZSA9IHJlc29sdmVGb290ZXJOb2RlKHtcbiAgICAgICAgZm9vdGVyLFxuICAgICAgICBzaXplLFxuICAgICAgICBjYW5jZWxCdXR0b24sXG4gICAgICAgIG9rQnV0dG9uLFxuICAgIH0pO1xuICAgIGlmICghbW91bnRlZClcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIChfanN4KFBvcnRhbCwgeyBjaGlsZHJlbjogX2pzeHMoXCJkaXZcIiwgeyBzdHlsZTogcm9vdFN0eWxlLCBjbGFzc05hbWU6IGNsYXNzTmFtZXMoZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5yb290KSwgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5yb290LCBvcGVuID8gTU9EQUxfTU9ESUZJRVIub3BlbiA6IE1PREFMX01PRElGSUVSLmNsb3NlZCkpLCBjaGlsZHJlbjogW19qc3goXCJkaXZcIiwgeyBcImFyaWEtaGlkZGVuXCI6IFwidHJ1ZVwiLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIE1PREFMX1NMT1Qub3ZlcmxheSksIG9uQ2xpY2s6IGhhbmRsZU92ZXJsYXlDbGljayB9KSwgX2pzeChcImRpdlwiLCB7IHN0eWxlOiB3cmFwcGVyU3R5bGUsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC53cmFwcGVyKSwgY2hpbGRyZW46IF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oe30sIHJlc3QsIHsgcmVmOiBoYW5kbGVTZXREaWFsb2dSZWYsIHJvbGU6IFwiZGlhbG9nXCIsIFwiYXJpYS1tb2RhbFwiOiBcInRydWVcIiwgXCJhcmlhLWxhYmVsbGVkYnlcIjogdGl0bGUgPyB0aXRsZUlkIDogdW5kZWZpbmVkLCBcImFyaWEtZGVzY3JpYmVkYnlcIjogZGVzY3JpcHRpb24gPyBkZXNjcmlwdGlvbklkIDogdW5kZWZpbmVkLCB0YWJJbmRleDogLTEsIHN0eWxlOiBzdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMpLCBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCB1bmRlZmluZWQsIHNpemUpLCBmdWxsV2lkdGggJiYgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgdW5kZWZpbmVkLCBNT0RBTF9NT0RJRklFUi5mdWxsV2lkdGgpLCBoYXNNZWRpYSAmJiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCB1bmRlZmluZWQsIE1PREFMX01PRElGSUVSLndpdGhNZWRpYSksIGNsYXNzTmFtZSksIGNoaWxkcmVuOiBbY2xvc2VDb250cm9sTm9kZSwgaGFzTWVkaWEgJiYgX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5tZWRpYSksIGNoaWxkcmVuOiBtZWRpYSB9KSwgX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIE1PREFMX1NMT1QuaW5uZXIpLCBjaGlsZHJlbjogW2JhY2tDb250cm9sTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBoZWFkZXJTdHlsZSwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBNT0RBTF9TTE9ULmhlYWRlciksIGNoaWxkcmVuOiBiYWNrQ29udHJvbE5vZGUgfSkpLCBfanN4cyhcImRpdlwiLCB7IHN0eWxlOiBib2R5U3R5bGUsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5ib2R5KSwgY2hpbGRyZW46IFsoaWxsdXN0cmF0aW9uTm9kZSB8fCB0aXRsZU5vZGUgfHwgZGVzY3JpcHRpb25Ob2RlKSAmJiAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIE1PREFMX1NMT1Quc3VtbWFyeSksIGNoaWxkcmVuOiBbaWxsdXN0cmF0aW9uTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5pbGx1c3RyYXRpb24pLCBjaGlsZHJlbjogaWxsdXN0cmF0aW9uTm9kZSB9KSksICh0aXRsZU5vZGUgfHwgZGVzY3JpcHRpb25Ob2RlKSAmJiAoX2pzeHMoXCJkaXZcIiwgeyBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIE1PREFMX1NMT1QuY29weSksIGNoaWxkcmVuOiBbdGl0bGVOb2RlICYmIChfanN4KFwiZGl2XCIsIHsgaWQ6IHRpdGxlSWQsIGNsYXNzTmFtZTogZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC50aXRsZSksIGNoaWxkcmVuOiB0aXRsZU5vZGUgfSkpLCBkZXNjcmlwdGlvbk5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBpZDogZGVzY3JpcHRpb25JZCwgY2xhc3NOYW1lOiBnZXRDbGFzc05hbWUocHJlZml4Q2xzLCBNT0RBTF9TTE9ULmRlc2NyaXB0aW9uKSwgY2hpbGRyZW46IGRlc2NyaXB0aW9uTm9kZSB9KSldIH0pKV0gfSkpLCBjaGlsZHJlbk5vZGUgJiYgKF9qc3goXCJkaXZcIiwgeyBzdHlsZTogY29udGVudFN0eWxlLCBjbGFzc05hbWU6IGdldENsYXNzTmFtZShwcmVmaXhDbHMsIE1PREFMX1NMT1QuY29udGVudCksIGNoaWxkcmVuOiBjaGlsZHJlbk5vZGUgfSkpXSB9KSwgZm9vdGVyTm9kZSAmJiAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBmb290ZXJTdHlsZSwgY2xhc3NOYW1lOiBjbGFzc05hbWVzKGdldENsYXNzTmFtZShwcmVmaXhDbHMsIE1PREFMX1NMT1QuZm9vdGVyKSwgZ2V0Q2xhc3NOYW1lKHByZWZpeENscywgTU9EQUxfU0xPVC5mb290ZXIsIHNpemUpKSwgY2hpbGRyZW46IGZvb3Rlck5vZGUgfSkpXSB9KV0gfSkpIH0pXSB9KSB9KSk7XG59KTtcbk1vZGFsQmFzZS5kaXNwbGF5TmFtZSA9ICdNb2RhbCc7XG5leHBvcnQgY29uc3QgTW9kYWwgPSBtZW1vKE1vZGFsQmFzZSk7XG5Nb2RhbC5kaXNwbGF5TmFtZSA9ICdNb2RhbCc7XG5leHBvcnQgZGVmYXVsdCBNb2RhbDsiLG51bGxdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import type { ButtonProps } from "../Button";
|
|
2
|
-
import type { IconName } from "../Icons";
|
|
3
|
-
export declare const MODAL_NAMESPACE = "om-component-ui";
|
|
4
|
-
export declare const MODAL_DEFAULT_PREFIX = "modal";
|
|
5
|
-
export declare const MODAL_SIZE: {
|
|
6
|
-
readonly small: "small";
|
|
7
|
-
readonly large: "large";
|
|
8
|
-
};
|
|
9
|
-
export declare const MODAL_SIZES: readonly ["small", "large"];
|
|
10
|
-
export declare const MODAL_ACTION_KIND: {
|
|
11
|
-
readonly ok: "ok";
|
|
12
|
-
readonly cancel: "cancel";
|
|
13
|
-
};
|
|
14
|
-
export declare const MODAL_CONTROL_TYPE: {
|
|
15
|
-
readonly back: "back";
|
|
16
|
-
readonly close: "close";
|
|
17
|
-
};
|
|
18
|
-
export declare const MODAL_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 MODAL_MODIFIER: {
|
|
37
|
-
readonly open: "open";
|
|
38
|
-
readonly closed: "closed";
|
|
39
|
-
readonly fullWidth: "full-width";
|
|
40
|
-
readonly withMedia: "with-media";
|
|
41
|
-
};
|
|
42
|
-
export declare const MODAL_CONTROL_LABELS: Record<ModalControlType, string>;
|
|
43
|
-
export declare const MODAL_DEFAULT_ICONS: Record<ModalControlType, IconName>;
|
|
44
|
-
export declare const MODAL_DEFAULT_BUTTON_COLORS: Record<ModalActionKind, NonNullable<ButtonProps['color']>>;
|
|
45
|
-
export declare const MODAL_BUTTON_HTML_TYPE = "button";
|
|
46
|
-
export declare const MODAL_BUTTON_SIZE: NonNullable<ButtonProps['size']>;
|
|
47
|
-
export declare const MODAL_CLOSE_TIMEOUT = 200;
|
|
48
|
-
export declare const MODAL_CONTROL_ICON_SIZE = 24;
|
|
49
|
-
export declare const MODAL_DEFAULT_ILLUSTRATION_SIZE = 74;
|
|
50
|
-
export declare const MODAL_DEFAULT_OK_TEXT = "Confirm";
|
|
51
|
-
export declare const MODAL_DEFAULT_CANCEL_TEXT = "Cancel";
|
|
52
|
-
export declare const MODAL_OVERFLOW_HIDDEN = "hidden";
|
|
53
|
-
export declare const MODAL_OVERFLOW_RESET = "";
|
|
54
|
-
export declare const MODAL_ESCAPE_KEY = "Escape";
|
|
55
|
-
export declare const MODAL_KEYDOWN_EVENT = "keydown";
|
|
56
|
-
export type ModalSize = (typeof MODAL_SIZES)[number];
|
|
57
|
-
export type ModalActionKind = (typeof MODAL_ACTION_KIND)[keyof typeof MODAL_ACTION_KIND];
|
|
58
|
-
export type ModalControlType = (typeof MODAL_CONTROL_TYPE)[keyof typeof MODAL_CONTROL_TYPE];
|