@elliemae/ds-overlay 1.60.0 → 2.0.0-alpha.12
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/cjs/DSOverlay.js +101 -134
- package/cjs/index.js +1 -13
- package/esm/DSOverlay.js +99 -126
- package/esm/index.js +0 -12
- package/package.json +31 -10
- package/types/DSOverlay.d.ts +21 -0
- package/types/index.d.ts +2 -0
- package/DSOverlay/package.json +0 -10
- package/cjs/DSOverlay.js.map +0 -1
- package/cjs/index.js.map +0 -1
- package/esm/DSOverlay.js.map +0 -1
- package/esm/index.js.map +0 -1
package/cjs/DSOverlay.js
CHANGED
|
@@ -2,154 +2,132 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
var _possibleConstructorReturn = require('@babel/runtime/helpers/possibleConstructorReturn');
|
|
10
|
-
var _getPrototypeOf = require('@babel/runtime/helpers/getPrototypeOf');
|
|
5
|
+
var _jsx = require('@babel/runtime/helpers/jsx');
|
|
6
|
+
require('core-js/modules/esnext.async-iterator.some.js');
|
|
7
|
+
require('core-js/modules/esnext.iterator.constructor.js');
|
|
8
|
+
require('core-js/modules/esnext.iterator.some.js');
|
|
11
9
|
var React = require('react');
|
|
12
|
-
var PropTypes = require('prop-types');
|
|
13
10
|
var dsClassnames = require('@elliemae/ds-classnames');
|
|
14
11
|
var DSBackdrop = require('@elliemae/ds-backdrop');
|
|
15
12
|
var DSPortal = require('@elliemae/ds-portal');
|
|
16
13
|
|
|
17
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
18
15
|
|
|
19
|
-
var
|
|
20
|
-
var _createClass__default = /*#__PURE__*/_interopDefaultLegacy(_createClass);
|
|
21
|
-
var _assertThisInitialized__default = /*#__PURE__*/_interopDefaultLegacy(_assertThisInitialized);
|
|
22
|
-
var _inherits__default = /*#__PURE__*/_interopDefaultLegacy(_inherits);
|
|
23
|
-
var _possibleConstructorReturn__default = /*#__PURE__*/_interopDefaultLegacy(_possibleConstructorReturn);
|
|
24
|
-
var _getPrototypeOf__default = /*#__PURE__*/_interopDefaultLegacy(_getPrototypeOf);
|
|
16
|
+
var _jsx__default = /*#__PURE__*/_interopDefaultLegacy(_jsx);
|
|
25
17
|
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
26
|
-
var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
|
|
27
18
|
var DSBackdrop__default = /*#__PURE__*/_interopDefaultLegacy(DSBackdrop);
|
|
28
19
|
var DSPortal__default = /*#__PURE__*/_interopDefaultLegacy(DSPortal);
|
|
29
20
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
isOpen = _ref.isOpen;
|
|
21
|
+
const blockName = 'overlay';
|
|
22
|
+
const events = ['mousedown', 'touchstart'];
|
|
23
|
+
const OverlayContainer = dsClassnames.aggregatedClasses('div')(blockName, null, _ref => {
|
|
24
|
+
let {
|
|
25
|
+
usePortal,
|
|
26
|
+
isOpen
|
|
27
|
+
} = _ref;
|
|
38
28
|
return {
|
|
39
29
|
inline: !usePortal,
|
|
40
30
|
opened: isOpen
|
|
41
31
|
};
|
|
42
32
|
});
|
|
43
33
|
|
|
44
|
-
|
|
45
|
-
|
|
34
|
+
class DSOverlay extends React.Component {
|
|
35
|
+
constructor(props) {
|
|
36
|
+
super(props);
|
|
37
|
+
this.overlayRef = /*#__PURE__*/React__default["default"].createRef();
|
|
38
|
+
this.handleDocumentClick = this.handleDocumentClick.bind(this);
|
|
39
|
+
}
|
|
46
40
|
|
|
47
|
-
|
|
41
|
+
componentDidUpdate(prevProps) {
|
|
42
|
+
const {
|
|
43
|
+
isOpen
|
|
44
|
+
} = this.props;
|
|
48
45
|
|
|
49
|
-
|
|
50
|
-
|
|
46
|
+
if (isOpen !== prevProps.isOpen) {
|
|
47
|
+
if (isOpen) {
|
|
48
|
+
this.openOverlay();
|
|
49
|
+
} else {
|
|
50
|
+
this.closeOverlay();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
51
54
|
|
|
52
|
-
|
|
55
|
+
addClickOutsideListeners() {
|
|
56
|
+
events.forEach(event => {
|
|
57
|
+
document.addEventListener(event, this.handleDocumentClick);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
53
60
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
61
|
+
removeClickOutsideListeners() {
|
|
62
|
+
events.forEach(event => {
|
|
63
|
+
document.removeEventListener(event, this.handleDocumentClick);
|
|
64
|
+
});
|
|
58
65
|
}
|
|
59
66
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
document.addEventListener(event, _this2.handleDocumentClick);
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
}, {
|
|
83
|
-
key: "removeClickOutsideListeners",
|
|
84
|
-
value: function removeClickOutsideListeners() {
|
|
85
|
-
var _this3 = this;
|
|
86
|
-
|
|
87
|
-
events.forEach(function (event) {
|
|
88
|
-
document.removeEventListener(event, _this3.handleDocumentClick);
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
}, {
|
|
92
|
-
key: "handleDocumentClick",
|
|
93
|
-
value: function handleDocumentClick(e) {
|
|
94
|
-
var _this$props = this.props,
|
|
95
|
-
onClickOutside = _this$props.onClickOutside,
|
|
96
|
-
isOpen = _this$props.isOpen;
|
|
97
|
-
var overlayStack = DSOverlay.overlayStack;
|
|
98
|
-
var overlayIndex = overlayStack.indexOf(this);
|
|
99
|
-
var hasClickedOverlay = overlayStack.slice(overlayIndex).some(function (_ref2) {
|
|
100
|
-
var overlayRef = _ref2.overlayRef;
|
|
101
|
-
var elem = overlayRef.current;
|
|
102
|
-
return elem && elem.contains(e.target) && !elem.isSameNode(e.target);
|
|
103
|
-
});
|
|
104
|
-
|
|
105
|
-
if (isOpen && !hasClickedOverlay) {
|
|
106
|
-
onClickOutside(e); // giving opportunity for callers to operate on the event.
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
}, {
|
|
110
|
-
key: "openOverlay",
|
|
111
|
-
value: function openOverlay() {
|
|
112
|
-
this.addClickOutsideListeners();
|
|
113
|
-
DSOverlay.overlayStack.push(this);
|
|
67
|
+
handleDocumentClick(e) {
|
|
68
|
+
const {
|
|
69
|
+
onClickOutside,
|
|
70
|
+
isOpen
|
|
71
|
+
} = this.props;
|
|
72
|
+
const {
|
|
73
|
+
overlayStack
|
|
74
|
+
} = DSOverlay;
|
|
75
|
+
const overlayIndex = overlayStack.indexOf(this);
|
|
76
|
+
const hasClickedOverlay = overlayStack.slice(overlayIndex).some(_ref2 => {
|
|
77
|
+
let {
|
|
78
|
+
overlayRef
|
|
79
|
+
} = _ref2;
|
|
80
|
+
const elem = overlayRef.current;
|
|
81
|
+
return elem && elem.contains(e.target) && !elem.isSameNode(e.target);
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
if (isOpen && !hasClickedOverlay) {
|
|
85
|
+
onClickOutside(e); // giving opportunity for callers to operate on the event.
|
|
114
86
|
}
|
|
115
|
-
}
|
|
116
|
-
key: "closeOverlay",
|
|
117
|
-
value: function closeOverlay() {
|
|
118
|
-
var overlayStack = DSOverlay.overlayStack;
|
|
119
|
-
var overlayIndex = overlayStack.indexOf(this);
|
|
120
|
-
this.removeClickOutsideListeners();
|
|
121
|
-
overlayStack.splice(overlayIndex, 1);
|
|
122
|
-
}
|
|
123
|
-
}, {
|
|
124
|
-
key: "render",
|
|
125
|
-
value: function render() {
|
|
126
|
-
var _this$props2 = this.props,
|
|
127
|
-
usePortal = _this$props2.usePortal,
|
|
128
|
-
isOpen = _this$props2.isOpen,
|
|
129
|
-
hasBackdrop = _this$props2.hasBackdrop,
|
|
130
|
-
children = _this$props2.children,
|
|
131
|
-
backDropZIndex = _this$props2.backDropZIndex;
|
|
132
|
-
if (!isOpen) return null;
|
|
133
|
-
var overlay = /*#__PURE__*/React__default['default'].createElement(OverlayContainer, {
|
|
134
|
-
classProps: {
|
|
135
|
-
usePortal: usePortal,
|
|
136
|
-
isOpen: isOpen
|
|
137
|
-
},
|
|
138
|
-
innerRef: this.overlayRef
|
|
139
|
-
}, hasBackdrop && /*#__PURE__*/React__default['default'].createElement(DSBackdrop__default['default'], {
|
|
140
|
-
zIndex: backDropZIndex
|
|
141
|
-
}), children);
|
|
142
|
-
|
|
143
|
-
if (usePortal) {
|
|
144
|
-
return /*#__PURE__*/React__default['default'].createElement(DSPortal__default['default'], null, overlay);
|
|
145
|
-
}
|
|
87
|
+
}
|
|
146
88
|
|
|
147
|
-
|
|
89
|
+
openOverlay() {
|
|
90
|
+
this.addClickOutsideListeners();
|
|
91
|
+
DSOverlay.overlayStack.push(this);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
closeOverlay() {
|
|
95
|
+
const {
|
|
96
|
+
overlayStack
|
|
97
|
+
} = DSOverlay;
|
|
98
|
+
const overlayIndex = overlayStack.indexOf(this);
|
|
99
|
+
this.removeClickOutsideListeners();
|
|
100
|
+
overlayStack.splice(overlayIndex, 1);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
render() {
|
|
104
|
+
const {
|
|
105
|
+
usePortal,
|
|
106
|
+
isOpen,
|
|
107
|
+
hasBackdrop,
|
|
108
|
+
children,
|
|
109
|
+
backDropZIndex
|
|
110
|
+
} = this.props;
|
|
111
|
+
if (!isOpen) return null;
|
|
112
|
+
|
|
113
|
+
const overlay = /*#__PURE__*/_jsx__default["default"](OverlayContainer, {
|
|
114
|
+
classProps: {
|
|
115
|
+
usePortal,
|
|
116
|
+
isOpen
|
|
117
|
+
},
|
|
118
|
+
innerRef: this.overlayRef
|
|
119
|
+
}, void 0, hasBackdrop && /*#__PURE__*/_jsx__default["default"](DSBackdrop__default["default"], {
|
|
120
|
+
zIndex: backDropZIndex
|
|
121
|
+
}), children);
|
|
122
|
+
|
|
123
|
+
if (usePortal) {
|
|
124
|
+
return /*#__PURE__*/_jsx__default["default"](DSPortal__default["default"], {}, void 0, overlay);
|
|
148
125
|
}
|
|
149
|
-
}]);
|
|
150
126
|
|
|
151
|
-
|
|
152
|
-
}
|
|
127
|
+
return overlay;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
}
|
|
153
131
|
|
|
154
132
|
DSOverlay.overlayStack = [];
|
|
155
133
|
DSOverlay.defaultProps = {
|
|
@@ -158,19 +136,8 @@ DSOverlay.defaultProps = {
|
|
|
158
136
|
hasBackdrop: false,
|
|
159
137
|
backDropZIndex: 2,
|
|
160
138
|
// https://jira.elliemae.io/browse/PUI-1712
|
|
161
|
-
onClickOutside:
|
|
162
|
-
return null;
|
|
163
|
-
}
|
|
164
|
-
};
|
|
165
|
-
DSOverlay.propTypes = {
|
|
166
|
-
backDropZIndex: PropTypes__default['default'].number,
|
|
167
|
-
children: PropTypes__default['default'].element,
|
|
168
|
-
hasBackdrop: PropTypes__default['default'].bool,
|
|
169
|
-
isOpen: PropTypes__default['default'].bool,
|
|
170
|
-
onClickOutside: PropTypes__default['default'].func,
|
|
171
|
-
usePortal: PropTypes__default['default'].bool
|
|
139
|
+
onClickOutside: () => null
|
|
172
140
|
};
|
|
173
141
|
|
|
174
142
|
exports.DSOverlay = DSOverlay;
|
|
175
|
-
exports[
|
|
176
|
-
//# sourceMappingURL=DSOverlay.js.map
|
|
143
|
+
exports["default"] = DSOverlay;
|
package/cjs/index.js
CHANGED
|
@@ -3,20 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var DSOverlay = require('./DSOverlay.js');
|
|
6
|
-
require('@babel/runtime/helpers/classCallCheck');
|
|
7
|
-
require('@babel/runtime/helpers/createClass');
|
|
8
|
-
require('@babel/runtime/helpers/assertThisInitialized');
|
|
9
|
-
require('@babel/runtime/helpers/inherits');
|
|
10
|
-
require('@babel/runtime/helpers/possibleConstructorReturn');
|
|
11
|
-
require('@babel/runtime/helpers/getPrototypeOf');
|
|
12
|
-
require('react');
|
|
13
|
-
require('prop-types');
|
|
14
|
-
require('@elliemae/ds-classnames');
|
|
15
|
-
require('@elliemae/ds-backdrop');
|
|
16
|
-
require('@elliemae/ds-portal');
|
|
17
6
|
|
|
18
7
|
|
|
19
8
|
|
|
20
9
|
exports.DSOverlay = DSOverlay.DSOverlay;
|
|
21
|
-
exports
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
|
10
|
+
exports["default"] = DSOverlay.DSOverlay;
|
package/esm/DSOverlay.js
CHANGED
|
@@ -1,138 +1,122 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';
|
|
6
|
-
import _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';
|
|
1
|
+
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
+
import 'core-js/modules/esnext.async-iterator.some.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.some.js';
|
|
7
5
|
import React, { Component } from 'react';
|
|
8
|
-
import PropTypes from 'prop-types';
|
|
9
6
|
import { aggregatedClasses } from '@elliemae/ds-classnames';
|
|
10
7
|
import DSBackdrop from '@elliemae/ds-backdrop';
|
|
11
8
|
import DSPortal from '@elliemae/ds-portal';
|
|
12
9
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
isOpen = _ref.isOpen;
|
|
10
|
+
const blockName = 'overlay';
|
|
11
|
+
const events = ['mousedown', 'touchstart'];
|
|
12
|
+
const OverlayContainer = aggregatedClasses('div')(blockName, null, _ref => {
|
|
13
|
+
let {
|
|
14
|
+
usePortal,
|
|
15
|
+
isOpen
|
|
16
|
+
} = _ref;
|
|
21
17
|
return {
|
|
22
18
|
inline: !usePortal,
|
|
23
19
|
opened: isOpen
|
|
24
20
|
};
|
|
25
21
|
});
|
|
26
22
|
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
class DSOverlay extends Component {
|
|
24
|
+
constructor(props) {
|
|
25
|
+
super(props);
|
|
26
|
+
this.overlayRef = /*#__PURE__*/React.createRef();
|
|
27
|
+
this.handleDocumentClick = this.handleDocumentClick.bind(this);
|
|
28
|
+
}
|
|
29
29
|
|
|
30
|
-
|
|
30
|
+
componentDidUpdate(prevProps) {
|
|
31
|
+
const {
|
|
32
|
+
isOpen
|
|
33
|
+
} = this.props;
|
|
31
34
|
|
|
32
|
-
|
|
33
|
-
|
|
35
|
+
if (isOpen !== prevProps.isOpen) {
|
|
36
|
+
if (isOpen) {
|
|
37
|
+
this.openOverlay();
|
|
38
|
+
} else {
|
|
39
|
+
this.closeOverlay();
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
34
43
|
|
|
35
|
-
|
|
44
|
+
addClickOutsideListeners() {
|
|
45
|
+
events.forEach(event => {
|
|
46
|
+
document.addEventListener(event, this.handleDocumentClick);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
36
49
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
50
|
+
removeClickOutsideListeners() {
|
|
51
|
+
events.forEach(event => {
|
|
52
|
+
document.removeEventListener(event, this.handleDocumentClick);
|
|
53
|
+
});
|
|
41
54
|
}
|
|
42
55
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
document.addEventListener(event, _this2.handleDocumentClick);
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
}, {
|
|
66
|
-
key: "removeClickOutsideListeners",
|
|
67
|
-
value: function removeClickOutsideListeners() {
|
|
68
|
-
var _this3 = this;
|
|
69
|
-
|
|
70
|
-
events.forEach(function (event) {
|
|
71
|
-
document.removeEventListener(event, _this3.handleDocumentClick);
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
}, {
|
|
75
|
-
key: "handleDocumentClick",
|
|
76
|
-
value: function handleDocumentClick(e) {
|
|
77
|
-
var _this$props = this.props,
|
|
78
|
-
onClickOutside = _this$props.onClickOutside,
|
|
79
|
-
isOpen = _this$props.isOpen;
|
|
80
|
-
var overlayStack = DSOverlay.overlayStack;
|
|
81
|
-
var overlayIndex = overlayStack.indexOf(this);
|
|
82
|
-
var hasClickedOverlay = overlayStack.slice(overlayIndex).some(function (_ref2) {
|
|
83
|
-
var overlayRef = _ref2.overlayRef;
|
|
84
|
-
var elem = overlayRef.current;
|
|
85
|
-
return elem && elem.contains(e.target) && !elem.isSameNode(e.target);
|
|
86
|
-
});
|
|
87
|
-
|
|
88
|
-
if (isOpen && !hasClickedOverlay) {
|
|
89
|
-
onClickOutside(e); // giving opportunity for callers to operate on the event.
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}, {
|
|
93
|
-
key: "openOverlay",
|
|
94
|
-
value: function openOverlay() {
|
|
95
|
-
this.addClickOutsideListeners();
|
|
96
|
-
DSOverlay.overlayStack.push(this);
|
|
56
|
+
handleDocumentClick(e) {
|
|
57
|
+
const {
|
|
58
|
+
onClickOutside,
|
|
59
|
+
isOpen
|
|
60
|
+
} = this.props;
|
|
61
|
+
const {
|
|
62
|
+
overlayStack
|
|
63
|
+
} = DSOverlay;
|
|
64
|
+
const overlayIndex = overlayStack.indexOf(this);
|
|
65
|
+
const hasClickedOverlay = overlayStack.slice(overlayIndex).some(_ref2 => {
|
|
66
|
+
let {
|
|
67
|
+
overlayRef
|
|
68
|
+
} = _ref2;
|
|
69
|
+
const elem = overlayRef.current;
|
|
70
|
+
return elem && elem.contains(e.target) && !elem.isSameNode(e.target);
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
if (isOpen && !hasClickedOverlay) {
|
|
74
|
+
onClickOutside(e); // giving opportunity for callers to operate on the event.
|
|
97
75
|
}
|
|
98
|
-
}
|
|
99
|
-
key: "closeOverlay",
|
|
100
|
-
value: function closeOverlay() {
|
|
101
|
-
var overlayStack = DSOverlay.overlayStack;
|
|
102
|
-
var overlayIndex = overlayStack.indexOf(this);
|
|
103
|
-
this.removeClickOutsideListeners();
|
|
104
|
-
overlayStack.splice(overlayIndex, 1);
|
|
105
|
-
}
|
|
106
|
-
}, {
|
|
107
|
-
key: "render",
|
|
108
|
-
value: function render() {
|
|
109
|
-
var _this$props2 = this.props,
|
|
110
|
-
usePortal = _this$props2.usePortal,
|
|
111
|
-
isOpen = _this$props2.isOpen,
|
|
112
|
-
hasBackdrop = _this$props2.hasBackdrop,
|
|
113
|
-
children = _this$props2.children,
|
|
114
|
-
backDropZIndex = _this$props2.backDropZIndex;
|
|
115
|
-
if (!isOpen) return null;
|
|
116
|
-
var overlay = /*#__PURE__*/React.createElement(OverlayContainer, {
|
|
117
|
-
classProps: {
|
|
118
|
-
usePortal: usePortal,
|
|
119
|
-
isOpen: isOpen
|
|
120
|
-
},
|
|
121
|
-
innerRef: this.overlayRef
|
|
122
|
-
}, hasBackdrop && /*#__PURE__*/React.createElement(DSBackdrop, {
|
|
123
|
-
zIndex: backDropZIndex
|
|
124
|
-
}), children);
|
|
125
|
-
|
|
126
|
-
if (usePortal) {
|
|
127
|
-
return /*#__PURE__*/React.createElement(DSPortal, null, overlay);
|
|
128
|
-
}
|
|
76
|
+
}
|
|
129
77
|
|
|
130
|
-
|
|
78
|
+
openOverlay() {
|
|
79
|
+
this.addClickOutsideListeners();
|
|
80
|
+
DSOverlay.overlayStack.push(this);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
closeOverlay() {
|
|
84
|
+
const {
|
|
85
|
+
overlayStack
|
|
86
|
+
} = DSOverlay;
|
|
87
|
+
const overlayIndex = overlayStack.indexOf(this);
|
|
88
|
+
this.removeClickOutsideListeners();
|
|
89
|
+
overlayStack.splice(overlayIndex, 1);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
render() {
|
|
93
|
+
const {
|
|
94
|
+
usePortal,
|
|
95
|
+
isOpen,
|
|
96
|
+
hasBackdrop,
|
|
97
|
+
children,
|
|
98
|
+
backDropZIndex
|
|
99
|
+
} = this.props;
|
|
100
|
+
if (!isOpen) return null;
|
|
101
|
+
|
|
102
|
+
const overlay = /*#__PURE__*/_jsx(OverlayContainer, {
|
|
103
|
+
classProps: {
|
|
104
|
+
usePortal,
|
|
105
|
+
isOpen
|
|
106
|
+
},
|
|
107
|
+
innerRef: this.overlayRef
|
|
108
|
+
}, void 0, hasBackdrop && /*#__PURE__*/_jsx(DSBackdrop, {
|
|
109
|
+
zIndex: backDropZIndex
|
|
110
|
+
}), children);
|
|
111
|
+
|
|
112
|
+
if (usePortal) {
|
|
113
|
+
return /*#__PURE__*/_jsx(DSPortal, {}, void 0, overlay);
|
|
131
114
|
}
|
|
132
|
-
}]);
|
|
133
115
|
|
|
134
|
-
|
|
135
|
-
}
|
|
116
|
+
return overlay;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
}
|
|
136
120
|
|
|
137
121
|
DSOverlay.overlayStack = [];
|
|
138
122
|
DSOverlay.defaultProps = {
|
|
@@ -141,18 +125,7 @@ DSOverlay.defaultProps = {
|
|
|
141
125
|
hasBackdrop: false,
|
|
142
126
|
backDropZIndex: 2,
|
|
143
127
|
// https://jira.elliemae.io/browse/PUI-1712
|
|
144
|
-
onClickOutside:
|
|
145
|
-
return null;
|
|
146
|
-
}
|
|
147
|
-
};
|
|
148
|
-
DSOverlay.propTypes = {
|
|
149
|
-
backDropZIndex: PropTypes.number,
|
|
150
|
-
children: PropTypes.element,
|
|
151
|
-
hasBackdrop: PropTypes.bool,
|
|
152
|
-
isOpen: PropTypes.bool,
|
|
153
|
-
onClickOutside: PropTypes.func,
|
|
154
|
-
usePortal: PropTypes.bool
|
|
128
|
+
onClickOutside: () => null
|
|
155
129
|
};
|
|
156
130
|
|
|
157
131
|
export { DSOverlay, DSOverlay as default };
|
|
158
|
-
//# sourceMappingURL=DSOverlay.js.map
|
package/esm/index.js
CHANGED
|
@@ -1,13 +1 @@
|
|
|
1
1
|
export { DSOverlay, DSOverlay as default } from './DSOverlay.js';
|
|
2
|
-
import '@babel/runtime/helpers/esm/classCallCheck';
|
|
3
|
-
import '@babel/runtime/helpers/esm/createClass';
|
|
4
|
-
import '@babel/runtime/helpers/esm/assertThisInitialized';
|
|
5
|
-
import '@babel/runtime/helpers/esm/inherits';
|
|
6
|
-
import '@babel/runtime/helpers/esm/possibleConstructorReturn';
|
|
7
|
-
import '@babel/runtime/helpers/esm/getPrototypeOf';
|
|
8
|
-
import 'react';
|
|
9
|
-
import 'prop-types';
|
|
10
|
-
import '@elliemae/ds-classnames';
|
|
11
|
-
import '@elliemae/ds-backdrop';
|
|
12
|
-
import '@elliemae/ds-portal';
|
|
13
|
-
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,14 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/ds-overlay",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0-alpha.12",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"description": "
|
|
6
|
-
"module": "esm/index.js",
|
|
7
|
-
"main": "cjs/index.js",
|
|
5
|
+
"description": "ICE MT - Dimsum - Overlay",
|
|
6
|
+
"module": "./esm/index.js",
|
|
7
|
+
"main": "./cjs/index.js",
|
|
8
|
+
"types": "./types/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"import": "./esm/index.js",
|
|
12
|
+
"require": "./cjs/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./DSOverlay": {
|
|
15
|
+
"import": "./esm/DSOverlay.js",
|
|
16
|
+
"require": "./cjs/DSOverlay.js"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
8
19
|
"sideEffects": [
|
|
9
20
|
"*.css",
|
|
10
21
|
"*.scss"
|
|
11
22
|
],
|
|
23
|
+
"repository": {
|
|
24
|
+
"type": "git",
|
|
25
|
+
"url": "https://git.elliemae.io/platform-ui/dimsum.git"
|
|
26
|
+
},
|
|
27
|
+
"engines": {
|
|
28
|
+
"npm": ">=7",
|
|
29
|
+
"node": ">=14"
|
|
30
|
+
},
|
|
31
|
+
"author": "ICE MT",
|
|
12
32
|
"scripts": {
|
|
13
33
|
"dev": "cross-env NODE_ENV=development && node ../../scripts/build/build.js -w",
|
|
14
34
|
"prebuild": "exit 0",
|
|
@@ -16,17 +36,18 @@
|
|
|
16
36
|
"build": "node ../../scripts/build/build.js"
|
|
17
37
|
},
|
|
18
38
|
"dependencies": {
|
|
19
|
-
"@elliemae/ds-backdrop": "
|
|
20
|
-
"@elliemae/ds-classnames": "
|
|
21
|
-
"@elliemae/ds-portal": "
|
|
39
|
+
"@elliemae/ds-backdrop": "2.0.0-alpha.12",
|
|
40
|
+
"@elliemae/ds-classnames": "2.0.0-alpha.12",
|
|
41
|
+
"@elliemae/ds-portal": "2.0.0-alpha.12",
|
|
22
42
|
"prop-types": "~15.7.2"
|
|
23
43
|
},
|
|
24
44
|
"peerDependencies": {
|
|
25
|
-
"react": "^17.0.
|
|
26
|
-
"react-dom": "^17.0.
|
|
45
|
+
"react": "^17.0.2",
|
|
46
|
+
"react-dom": "^17.0.2"
|
|
27
47
|
},
|
|
28
48
|
"publishConfig": {
|
|
29
49
|
"access": "public",
|
|
30
|
-
"directory": "dist"
|
|
50
|
+
"directory": "dist",
|
|
51
|
+
"generateSubmodules": true
|
|
31
52
|
}
|
|
32
53
|
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Component } from 'react';
|
|
2
|
+
declare class DSOverlay extends Component {
|
|
3
|
+
static overlayStack: never[];
|
|
4
|
+
static defaultProps: {
|
|
5
|
+
isOpen: boolean;
|
|
6
|
+
usePortal: boolean;
|
|
7
|
+
hasBackdrop: boolean;
|
|
8
|
+
backDropZIndex: number;
|
|
9
|
+
onClickOutside: () => null;
|
|
10
|
+
};
|
|
11
|
+
constructor(props: any);
|
|
12
|
+
componentDidUpdate(prevProps: any): void;
|
|
13
|
+
addClickOutsideListeners(): void;
|
|
14
|
+
removeClickOutsideListeners(): void;
|
|
15
|
+
handleDocumentClick(e: any): void;
|
|
16
|
+
openOverlay(): void;
|
|
17
|
+
closeOverlay(): void;
|
|
18
|
+
render(): JSX.Element | null;
|
|
19
|
+
}
|
|
20
|
+
export { DSOverlay };
|
|
21
|
+
export default DSOverlay;
|
package/types/index.d.ts
ADDED
package/DSOverlay/package.json
DELETED
package/cjs/DSOverlay.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DSOverlay.js","sources":["../../src/DSOverlay.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport DSBackdrop from '@elliemae/ds-backdrop';\nimport DSPortal from '@elliemae/ds-portal';\n\nconst blockName = 'overlay';\n\nconst events = ['mousedown', 'touchstart'];\n\nconst OverlayContainer = aggregatedClasses('div')(\n blockName,\n null,\n ({ usePortal, isOpen }) => ({\n inline: !usePortal,\n opened: isOpen,\n }),\n);\n\nclass DSOverlay extends Component {\n static overlayStack = [];\n\n static defaultProps = {\n isOpen: false,\n usePortal: true,\n hasBackdrop: false,\n backDropZIndex: 2, // https://jira.elliemae.io/browse/PUI-1712\n onClickOutside: () => null,\n };\n constructor(props) {\n super(props);\n this.overlayRef = React.createRef();\n\n this.handleDocumentClick = this.handleDocumentClick.bind(this);\n }\n\n componentDidUpdate(prevProps) {\n const { isOpen } = this.props;\n if (isOpen !== prevProps.isOpen) {\n if (isOpen) {\n this.openOverlay();\n } else {\n this.closeOverlay();\n }\n }\n }\n\n addClickOutsideListeners() {\n events.forEach((event) => {\n document.addEventListener(event, this.handleDocumentClick);\n });\n }\n\n removeClickOutsideListeners() {\n events.forEach((event) => {\n document.removeEventListener(event, this.handleDocumentClick);\n });\n }\n\n handleDocumentClick(e) {\n const { onClickOutside, isOpen } = this.props;\n const { overlayStack } = DSOverlay;\n const overlayIndex = overlayStack.indexOf(this);\n const hasClickedOverlay = overlayStack\n .slice(overlayIndex)\n .some(({ overlayRef }) => {\n const elem = overlayRef.current;\n return elem && elem.contains(e.target) && !elem.isSameNode(e.target);\n });\n\n if (isOpen && !hasClickedOverlay) {\n onClickOutside(e); // giving opportunity for callers to operate on the event.\n }\n }\n\n openOverlay() {\n this.addClickOutsideListeners();\n DSOverlay.overlayStack.push(this);\n }\n\n closeOverlay() {\n const { overlayStack } = DSOverlay;\n const overlayIndex = overlayStack.indexOf(this);\n this.removeClickOutsideListeners();\n overlayStack.splice(overlayIndex, 1);\n }\n\n render() {\n const {\n usePortal,\n isOpen,\n hasBackdrop,\n children,\n backDropZIndex,\n } = this.props;\n\n if (!isOpen) return null;\n\n const overlay = (\n <OverlayContainer\n classProps={{ usePortal, isOpen }}\n innerRef={this.overlayRef}\n >\n {hasBackdrop && <DSBackdrop zIndex={backDropZIndex} />}\n {children}\n </OverlayContainer>\n );\n\n if (usePortal) {\n return <DSPortal>{overlay}</DSPortal>;\n }\n\n return overlay;\n }\n}\n\nDSOverlay.propTypes = {\n backDropZIndex: PropTypes.number,\n children: PropTypes.element,\n hasBackdrop: PropTypes.bool,\n isOpen: PropTypes.bool,\n onClickOutside: PropTypes.func,\n usePortal: PropTypes.bool,\n};\n\nexport { DSOverlay };\nexport default DSOverlay;\n"],"names":["blockName","events","OverlayContainer","aggregatedClasses","usePortal","isOpen","inline","opened","DSOverlay","props","overlayRef","React","createRef","handleDocumentClick","bind","prevProps","openOverlay","closeOverlay","forEach","event","document","addEventListener","removeEventListener","e","onClickOutside","overlayStack","overlayIndex","indexOf","hasClickedOverlay","slice","some","elem","current","contains","target","isSameNode","addClickOutsideListeners","push","removeClickOutsideListeners","splice","hasBackdrop","children","backDropZIndex","overlay","DSBackdrop","DSPortal","Component","defaultProps","propTypes","PropTypes","number","element","bool","func"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,SAAS,GAAG,SAAlB;AAEA,IAAMC,MAAM,GAAG,CAAC,WAAD,EAAc,YAAd,CAAf;AAEA,IAAMC,gBAAgB,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CACvBH,SADuB,EAEvB,IAFuB,EAGvB;AAAA,MAAGI,SAAH,QAAGA,SAAH;AAAA,MAAcC,MAAd,QAAcA,MAAd;AAAA,SAA4B;AAC1BC,IAAAA,MAAM,EAAE,CAACF,SADiB;AAE1BG,IAAAA,MAAM,EAAEF;AAFkB,GAA5B;AAAA,CAHuB,CAAzB;;IASMG;;;;;AAUJ,qBAAYC,KAAZ,EAAmB;AAAA;;AAAA;;AACjB,8BAAMA,KAAN;AACA,UAAKC,UAAL,gBAAkBC,yBAAK,CAACC,SAAN,EAAlB;AAEA,UAAKC,mBAAL,GAA2B,MAAKA,mBAAL,CAAyBC,IAAzB,mDAA3B;AAJiB;AAKlB;;;;WAED,4BAAmBC,SAAnB,EAA8B;AAC5B,UAAQV,MAAR,GAAmB,KAAKI,KAAxB,CAAQJ,MAAR;;AACA,UAAIA,MAAM,KAAKU,SAAS,CAACV,MAAzB,EAAiC;AAC/B,YAAIA,MAAJ,EAAY;AACV,eAAKW,WAAL;AACD,SAFD,MAEO;AACL,eAAKC,YAAL;AACD;AACF;AACF;;;WAED,oCAA2B;AAAA;;AACzBhB,MAAAA,MAAM,CAACiB,OAAP,CAAe,UAACC,KAAD,EAAW;AACxBC,QAAAA,QAAQ,CAACC,gBAAT,CAA0BF,KAA1B,EAAiC,MAAI,CAACN,mBAAtC;AACD,OAFD;AAGD;;;WAED,uCAA8B;AAAA;;AAC5BZ,MAAAA,MAAM,CAACiB,OAAP,CAAe,UAACC,KAAD,EAAW;AACxBC,QAAAA,QAAQ,CAACE,mBAAT,CAA6BH,KAA7B,EAAoC,MAAI,CAACN,mBAAzC;AACD,OAFD;AAGD;;;WAED,6BAAoBU,CAApB,EAAuB;AACrB,wBAAmC,KAAKd,KAAxC;AAAA,UAAQe,cAAR,eAAQA,cAAR;AAAA,UAAwBnB,MAAxB,eAAwBA,MAAxB;AACA,UAAQoB,YAAR,GAAyBjB,SAAzB,CAAQiB,YAAR;AACA,UAAMC,YAAY,GAAGD,YAAY,CAACE,OAAb,CAAqB,IAArB,CAArB;AACA,UAAMC,iBAAiB,GAAGH,YAAY,CACnCI,KADuB,CACjBH,YADiB,EAEvBI,IAFuB,CAElB,iBAAoB;AAAA,YAAjBpB,UAAiB,SAAjBA,UAAiB;AACxB,YAAMqB,IAAI,GAAGrB,UAAU,CAACsB,OAAxB;AACA,eAAOD,IAAI,IAAIA,IAAI,CAACE,QAAL,CAAcV,CAAC,CAACW,MAAhB,CAAR,IAAmC,CAACH,IAAI,CAACI,UAAL,CAAgBZ,CAAC,CAACW,MAAlB,CAA3C;AACD,OALuB,CAA1B;;AAOA,UAAI7B,MAAM,IAAI,CAACuB,iBAAf,EAAkC;AAChCJ,QAAAA,cAAc,CAACD,CAAD,CAAd,CADgC;AAEjC;AACF;;;WAED,uBAAc;AACZ,WAAKa,wBAAL;AACA5B,MAAAA,SAAS,CAACiB,YAAV,CAAuBY,IAAvB,CAA4B,IAA5B;AACD;;;WAED,wBAAe;AACb,UAAQZ,YAAR,GAAyBjB,SAAzB,CAAQiB,YAAR;AACA,UAAMC,YAAY,GAAGD,YAAY,CAACE,OAAb,CAAqB,IAArB,CAArB;AACA,WAAKW,2BAAL;AACAb,MAAAA,YAAY,CAACc,MAAb,CAAoBb,YAApB,EAAkC,CAAlC;AACD;;;WAED,kBAAS;AACP,yBAMI,KAAKjB,KANT;AAAA,UACEL,SADF,gBACEA,SADF;AAAA,UAEEC,MAFF,gBAEEA,MAFF;AAAA,UAGEmC,WAHF,gBAGEA,WAHF;AAAA,UAIEC,QAJF,gBAIEA,QAJF;AAAA,UAKEC,cALF,gBAKEA,cALF;AAQA,UAAI,CAACrC,MAAL,EAAa,OAAO,IAAP;AAEb,UAAMsC,OAAO,gBACXhC,wCAAC,gBAAD;AACE,QAAA,UAAU,EAAE;AAAEP,UAAAA,SAAS,EAATA,SAAF;AAAaC,UAAAA,MAAM,EAANA;AAAb,SADd;AAEE,QAAA,QAAQ,EAAE,KAAKK;AAFjB,SAIG8B,WAAW,iBAAI7B,wCAACiC,8BAAD;AAAY,QAAA,MAAM,EAAEF;AAApB,QAJlB,EAKGD,QALH,CADF;;AAUA,UAAIrC,SAAJ,EAAe;AACb,4BAAOO,wCAACkC,4BAAD,QAAWF,OAAX,CAAP;AACD;;AAED,aAAOA,OAAP;AACD;;;;EA9FqBG;;AAAlBtC,UACGiB,eAAe;AADlBjB,UAGGuC,eAAe;AACpB1C,EAAAA,MAAM,EAAE,KADY;AAEpBD,EAAAA,SAAS,EAAE,IAFS;AAGpBoC,EAAAA,WAAW,EAAE,KAHO;AAIpBE,EAAAA,cAAc,EAAE,CAJI;AAID;AACnBlB,EAAAA,cAAc,EAAE;AAAA,WAAM,IAAN;AAAA;AALI;AA8FxBhB,SAAS,CAACwC,SAAV,GAAsB;AACpBN,EAAAA,cAAc,EAAEO,6BAAS,CAACC,MADN;AAEpBT,EAAAA,QAAQ,EAAEQ,6BAAS,CAACE,OAFA;AAGpBX,EAAAA,WAAW,EAAES,6BAAS,CAACG,IAHH;AAIpB/C,EAAAA,MAAM,EAAE4C,6BAAS,CAACG,IAJE;AAKpB5B,EAAAA,cAAc,EAAEyB,6BAAS,CAACI,IALN;AAMpBjD,EAAAA,SAAS,EAAE6C,6BAAS,CAACG;AAND,CAAtB;;;;;"}
|
package/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;"}
|
package/esm/DSOverlay.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DSOverlay.js","sources":["../../src/DSOverlay.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\nimport DSBackdrop from '@elliemae/ds-backdrop';\nimport DSPortal from '@elliemae/ds-portal';\n\nconst blockName = 'overlay';\n\nconst events = ['mousedown', 'touchstart'];\n\nconst OverlayContainer = aggregatedClasses('div')(\n blockName,\n null,\n ({ usePortal, isOpen }) => ({\n inline: !usePortal,\n opened: isOpen,\n }),\n);\n\nclass DSOverlay extends Component {\n static overlayStack = [];\n\n static defaultProps = {\n isOpen: false,\n usePortal: true,\n hasBackdrop: false,\n backDropZIndex: 2, // https://jira.elliemae.io/browse/PUI-1712\n onClickOutside: () => null,\n };\n constructor(props) {\n super(props);\n this.overlayRef = React.createRef();\n\n this.handleDocumentClick = this.handleDocumentClick.bind(this);\n }\n\n componentDidUpdate(prevProps) {\n const { isOpen } = this.props;\n if (isOpen !== prevProps.isOpen) {\n if (isOpen) {\n this.openOverlay();\n } else {\n this.closeOverlay();\n }\n }\n }\n\n addClickOutsideListeners() {\n events.forEach((event) => {\n document.addEventListener(event, this.handleDocumentClick);\n });\n }\n\n removeClickOutsideListeners() {\n events.forEach((event) => {\n document.removeEventListener(event, this.handleDocumentClick);\n });\n }\n\n handleDocumentClick(e) {\n const { onClickOutside, isOpen } = this.props;\n const { overlayStack } = DSOverlay;\n const overlayIndex = overlayStack.indexOf(this);\n const hasClickedOverlay = overlayStack\n .slice(overlayIndex)\n .some(({ overlayRef }) => {\n const elem = overlayRef.current;\n return elem && elem.contains(e.target) && !elem.isSameNode(e.target);\n });\n\n if (isOpen && !hasClickedOverlay) {\n onClickOutside(e); // giving opportunity for callers to operate on the event.\n }\n }\n\n openOverlay() {\n this.addClickOutsideListeners();\n DSOverlay.overlayStack.push(this);\n }\n\n closeOverlay() {\n const { overlayStack } = DSOverlay;\n const overlayIndex = overlayStack.indexOf(this);\n this.removeClickOutsideListeners();\n overlayStack.splice(overlayIndex, 1);\n }\n\n render() {\n const {\n usePortal,\n isOpen,\n hasBackdrop,\n children,\n backDropZIndex,\n } = this.props;\n\n if (!isOpen) return null;\n\n const overlay = (\n <OverlayContainer\n classProps={{ usePortal, isOpen }}\n innerRef={this.overlayRef}\n >\n {hasBackdrop && <DSBackdrop zIndex={backDropZIndex} />}\n {children}\n </OverlayContainer>\n );\n\n if (usePortal) {\n return <DSPortal>{overlay}</DSPortal>;\n }\n\n return overlay;\n }\n}\n\nDSOverlay.propTypes = {\n backDropZIndex: PropTypes.number,\n children: PropTypes.element,\n hasBackdrop: PropTypes.bool,\n isOpen: PropTypes.bool,\n onClickOutside: PropTypes.func,\n usePortal: PropTypes.bool,\n};\n\nexport { DSOverlay };\nexport default DSOverlay;\n"],"names":["blockName","events","OverlayContainer","aggregatedClasses","usePortal","isOpen","inline","opened","DSOverlay","props","overlayRef","React","createRef","handleDocumentClick","bind","prevProps","openOverlay","closeOverlay","forEach","event","document","addEventListener","removeEventListener","e","onClickOutside","overlayStack","overlayIndex","indexOf","hasClickedOverlay","slice","some","elem","current","contains","target","isSameNode","addClickOutsideListeners","push","removeClickOutsideListeners","splice","hasBackdrop","children","backDropZIndex","overlay","Component","defaultProps","propTypes","PropTypes","number","element","bool","func"],"mappings":";;;;;;;;;;;;;;;AAOA,IAAMA,SAAS,GAAG,SAAlB;AAEA,IAAMC,MAAM,GAAG,CAAC,WAAD,EAAc,YAAd,CAAf;AAEA,IAAMC,gBAAgB,GAAGC,iBAAiB,CAAC,KAAD,CAAjB,CACvBH,SADuB,EAEvB,IAFuB,EAGvB;AAAA,MAAGI,SAAH,QAAGA,SAAH;AAAA,MAAcC,MAAd,QAAcA,MAAd;AAAA,SAA4B;AAC1BC,IAAAA,MAAM,EAAE,CAACF,SADiB;AAE1BG,IAAAA,MAAM,EAAEF;AAFkB,GAA5B;AAAA,CAHuB,CAAzB;;IASMG;;;;;AAUJ,qBAAYC,KAAZ,EAAmB;AAAA;;AAAA;;AACjB,8BAAMA,KAAN;AACA,UAAKC,UAAL,gBAAkBC,KAAK,CAACC,SAAN,EAAlB;AAEA,UAAKC,mBAAL,GAA2B,MAAKA,mBAAL,CAAyBC,IAAzB,+BAA3B;AAJiB;AAKlB;;;;WAED,4BAAmBC,SAAnB,EAA8B;AAC5B,UAAQV,MAAR,GAAmB,KAAKI,KAAxB,CAAQJ,MAAR;;AACA,UAAIA,MAAM,KAAKU,SAAS,CAACV,MAAzB,EAAiC;AAC/B,YAAIA,MAAJ,EAAY;AACV,eAAKW,WAAL;AACD,SAFD,MAEO;AACL,eAAKC,YAAL;AACD;AACF;AACF;;;WAED,oCAA2B;AAAA;;AACzBhB,MAAAA,MAAM,CAACiB,OAAP,CAAe,UAACC,KAAD,EAAW;AACxBC,QAAAA,QAAQ,CAACC,gBAAT,CAA0BF,KAA1B,EAAiC,MAAI,CAACN,mBAAtC;AACD,OAFD;AAGD;;;WAED,uCAA8B;AAAA;;AAC5BZ,MAAAA,MAAM,CAACiB,OAAP,CAAe,UAACC,KAAD,EAAW;AACxBC,QAAAA,QAAQ,CAACE,mBAAT,CAA6BH,KAA7B,EAAoC,MAAI,CAACN,mBAAzC;AACD,OAFD;AAGD;;;WAED,6BAAoBU,CAApB,EAAuB;AACrB,wBAAmC,KAAKd,KAAxC;AAAA,UAAQe,cAAR,eAAQA,cAAR;AAAA,UAAwBnB,MAAxB,eAAwBA,MAAxB;AACA,UAAQoB,YAAR,GAAyBjB,SAAzB,CAAQiB,YAAR;AACA,UAAMC,YAAY,GAAGD,YAAY,CAACE,OAAb,CAAqB,IAArB,CAArB;AACA,UAAMC,iBAAiB,GAAGH,YAAY,CACnCI,KADuB,CACjBH,YADiB,EAEvBI,IAFuB,CAElB,iBAAoB;AAAA,YAAjBpB,UAAiB,SAAjBA,UAAiB;AACxB,YAAMqB,IAAI,GAAGrB,UAAU,CAACsB,OAAxB;AACA,eAAOD,IAAI,IAAIA,IAAI,CAACE,QAAL,CAAcV,CAAC,CAACW,MAAhB,CAAR,IAAmC,CAACH,IAAI,CAACI,UAAL,CAAgBZ,CAAC,CAACW,MAAlB,CAA3C;AACD,OALuB,CAA1B;;AAOA,UAAI7B,MAAM,IAAI,CAACuB,iBAAf,EAAkC;AAChCJ,QAAAA,cAAc,CAACD,CAAD,CAAd,CADgC;AAEjC;AACF;;;WAED,uBAAc;AACZ,WAAKa,wBAAL;AACA5B,MAAAA,SAAS,CAACiB,YAAV,CAAuBY,IAAvB,CAA4B,IAA5B;AACD;;;WAED,wBAAe;AACb,UAAQZ,YAAR,GAAyBjB,SAAzB,CAAQiB,YAAR;AACA,UAAMC,YAAY,GAAGD,YAAY,CAACE,OAAb,CAAqB,IAArB,CAArB;AACA,WAAKW,2BAAL;AACAb,MAAAA,YAAY,CAACc,MAAb,CAAoBb,YAApB,EAAkC,CAAlC;AACD;;;WAED,kBAAS;AACP,yBAMI,KAAKjB,KANT;AAAA,UACEL,SADF,gBACEA,SADF;AAAA,UAEEC,MAFF,gBAEEA,MAFF;AAAA,UAGEmC,WAHF,gBAGEA,WAHF;AAAA,UAIEC,QAJF,gBAIEA,QAJF;AAAA,UAKEC,cALF,gBAKEA,cALF;AAQA,UAAI,CAACrC,MAAL,EAAa,OAAO,IAAP;AAEb,UAAMsC,OAAO,gBACX,oBAAC,gBAAD;AACE,QAAA,UAAU,EAAE;AAAEvC,UAAAA,SAAS,EAATA,SAAF;AAAaC,UAAAA,MAAM,EAANA;AAAb,SADd;AAEE,QAAA,QAAQ,EAAE,KAAKK;AAFjB,SAIG8B,WAAW,iBAAI,oBAAC,UAAD;AAAY,QAAA,MAAM,EAAEE;AAApB,QAJlB,EAKGD,QALH,CADF;;AAUA,UAAIrC,SAAJ,EAAe;AACb,4BAAO,oBAAC,QAAD,QAAWuC,OAAX,CAAP;AACD;;AAED,aAAOA,OAAP;AACD;;;;EA9FqBC;;AAAlBpC,UACGiB,eAAe;AADlBjB,UAGGqC,eAAe;AACpBxC,EAAAA,MAAM,EAAE,KADY;AAEpBD,EAAAA,SAAS,EAAE,IAFS;AAGpBoC,EAAAA,WAAW,EAAE,KAHO;AAIpBE,EAAAA,cAAc,EAAE,CAJI;AAID;AACnBlB,EAAAA,cAAc,EAAE;AAAA,WAAM,IAAN;AAAA;AALI;AA8FxBhB,SAAS,CAACsC,SAAV,GAAsB;AACpBJ,EAAAA,cAAc,EAAEK,SAAS,CAACC,MADN;AAEpBP,EAAAA,QAAQ,EAAEM,SAAS,CAACE,OAFA;AAGpBT,EAAAA,WAAW,EAAEO,SAAS,CAACG,IAHH;AAIpB7C,EAAAA,MAAM,EAAE0C,SAAS,CAACG,IAJE;AAKpB1B,EAAAA,cAAc,EAAEuB,SAAS,CAACI,IALN;AAMpB/C,EAAAA,SAAS,EAAE2C,SAAS,CAACG;AAND,CAAtB;;;;"}
|
package/esm/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
|