@kdcloudjs/kdesign 1.8.11 → 1.8.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/dist/kdesign.css +1 -1
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +89 -13
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +1 -1
- package/dist/kdesign.min.js +3 -3
- package/dist/kdesign.min.js.map +1 -1
- package/es/base-data/base-data.js +11 -4
- package/es/popper/index.d.ts +2 -1
- package/es/popper/index.js +75 -7
- package/lib/base-data/base-data.js +11 -4
- package/lib/popper/index.d.ts +2 -1
- package/lib/popper/index.js +75 -7
- package/package.json +1 -1
|
@@ -16,6 +16,7 @@ import ConfigContext from '../config-provider/ConfigContext';
|
|
|
16
16
|
import { getCompProps } from '../_utils';
|
|
17
17
|
import { Input, Icon, Tabs, Empty, Spin, Checkbox } from '../index';
|
|
18
18
|
import usePopper from '../_utils/usePopper';
|
|
19
|
+
import ResizeObserver from '../_utils/resizeObserver';
|
|
19
20
|
var InternalBaseData = function InternalBaseData(props, ref) {
|
|
20
21
|
var _context2;
|
|
21
22
|
var _useContext = useContext(ConfigContext),
|
|
@@ -195,9 +196,9 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
195
196
|
return item;
|
|
196
197
|
});
|
|
197
198
|
};
|
|
198
|
-
|
|
199
|
-
useLayoutEffect(function () {
|
|
199
|
+
var handleShowTotal = useCallback(function () {
|
|
200
200
|
var _a;
|
|
201
|
+
if (!isMultiple) return;
|
|
201
202
|
var inputDom = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input;
|
|
202
203
|
if (!inputDom) return;
|
|
203
204
|
if (inputDom.scrollWidth - inputDom.offsetWidth > 0 && inputValue) {
|
|
@@ -205,7 +206,11 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
205
206
|
} else {
|
|
206
207
|
setShowTotal(false);
|
|
207
208
|
}
|
|
208
|
-
}, [
|
|
209
|
+
}, [inputValue, isMultiple]);
|
|
210
|
+
// 当选中项文字超出输入框时,显示共多少项
|
|
211
|
+
useLayoutEffect(function () {
|
|
212
|
+
handleShowTotal();
|
|
213
|
+
}, [handleShowTotal]);
|
|
209
214
|
// 通过选中项显示input文字, optionLabelProp为回填到选择框的属性
|
|
210
215
|
var setValueBySeleted = useCallback(function () {
|
|
211
216
|
var _context8;
|
|
@@ -461,6 +466,8 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
461
466
|
className: advancedSelectorCls,
|
|
462
467
|
ref: advancedSelectorRef,
|
|
463
468
|
style: style
|
|
469
|
+
}, /*#__PURE__*/React.createElement(ResizeObserver, {
|
|
470
|
+
onResize: handleShowTotal
|
|
464
471
|
}, /*#__PURE__*/React.createElement(Input, {
|
|
465
472
|
ref: inputRef,
|
|
466
473
|
borderType: "none",
|
|
@@ -471,7 +478,7 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
471
478
|
onDoubleClick: handleDoubleClick,
|
|
472
479
|
onFocus: handleFocus,
|
|
473
480
|
onBlur: handleBlur
|
|
474
|
-
}), showTotal && !isFocused && isMultiple && /*#__PURE__*/React.createElement("span", {
|
|
481
|
+
})), showTotal && !isFocused && isMultiple && /*#__PURE__*/React.createElement("span", {
|
|
475
482
|
className: "".concat(advancedSelectorfixCls, "-total"),
|
|
476
483
|
onClick: showInputTotal
|
|
477
484
|
}, totalText), isShowDetailBtn && !disabled && /*#__PURE__*/React.createElement("span", {
|
package/es/popper/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export declare const Placements: ["top", "left", "right", "bottom", "topLeft", "
|
|
|
4
4
|
export declare type PlacementType = typeof Placements[number];
|
|
5
5
|
export declare const Triggers: ["hover", "focus", "click", "contextMenu"];
|
|
6
6
|
export declare type TriggerType = typeof Triggers[number];
|
|
7
|
+
export declare type Reason = TriggerType | 'scroll' | 'clickOutside' | 'parentHidden' | 'unknown';
|
|
7
8
|
export declare type RenderFunction = () => React.ReactNode;
|
|
8
9
|
export declare type PopperProps = {
|
|
9
10
|
gap?: number;
|
|
@@ -29,7 +30,7 @@ export declare type PopperProps = {
|
|
|
29
30
|
strategy?: 'fixed' | 'absolute';
|
|
30
31
|
clickToClose?: boolean;
|
|
31
32
|
onTrigger?: (trigger: TriggerType) => void;
|
|
32
|
-
onVisibleChange?: (visible: boolean) => void;
|
|
33
|
+
onVisibleChange?: (visible: boolean, reason?: Reason) => void;
|
|
33
34
|
getTriggerElement?: (locatorNode: HTMLElement) => HTMLElement;
|
|
34
35
|
getPopupContainer?: (locatorNode: HTMLElement) => HTMLElement;
|
|
35
36
|
onTransitionEnd?: (e: React.TransitionEvent) => void;
|
package/es/popper/index.js
CHANGED
|
@@ -114,8 +114,10 @@ export var Popper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
114
114
|
visible = props.visible,
|
|
115
115
|
_props$arrowSize = props.arrowSize,
|
|
116
116
|
arrowSize = _props$arrowSize === void 0 ? 4.25 : _props$arrowSize,
|
|
117
|
+
_props$arrowOffset = props.arrowOffset,
|
|
118
|
+
arrowOffset = _props$arrowOffset === void 0 ? 12 : _props$arrowOffset,
|
|
117
119
|
_props$gap = props.gap,
|
|
118
|
-
defaultGap = _props$gap === void 0 ?
|
|
120
|
+
defaultGap = _props$gap === void 0 ? 8 : _props$gap,
|
|
119
121
|
_props$scrollHidden = props.scrollHidden,
|
|
120
122
|
scrollHidden = _props$scrollHidden === void 0 ? false : _props$scrollHidden,
|
|
121
123
|
_props$mouseEnterDela = props.mouseEnterDelay,
|
|
@@ -147,6 +149,26 @@ export var Popper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
147
149
|
var childrenInner = /*#__PURE__*/isValidElement(child) && !isFragment(child) ? child : /*#__PURE__*/React.createElement("span", null, child);
|
|
148
150
|
var popperElement = getElement(tip);
|
|
149
151
|
var referenceElement = Children.only(childrenInner);
|
|
152
|
+
var arrowOffsetInner = arrowSize + arrowOffset;
|
|
153
|
+
var getArrowOffset = function getArrowOffset(popperSize, referenceSize, arr) {
|
|
154
|
+
var boundary = arrowOffsetInner * 2;
|
|
155
|
+
var offset;
|
|
156
|
+
if (referenceSize < boundary || popperSize < boundary) {
|
|
157
|
+
var o = Math.min(referenceSize, popperSize) / 2;
|
|
158
|
+
if (arr[1] === 'start') {
|
|
159
|
+
offset = o;
|
|
160
|
+
} else {
|
|
161
|
+
offset = Math.max(popperSize - o, 0);
|
|
162
|
+
}
|
|
163
|
+
} else {
|
|
164
|
+
if (arr[1] === 'start') {
|
|
165
|
+
offset = arrowOffsetInner;
|
|
166
|
+
} else {
|
|
167
|
+
offset = popperSize - arrowOffsetInner;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
return offset;
|
|
171
|
+
};
|
|
150
172
|
var id = useId();
|
|
151
173
|
var parentContext = useContext(TriggerContext);
|
|
152
174
|
var subPopupRefs = useRef({});
|
|
@@ -188,7 +210,7 @@ export var Popper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
188
210
|
}
|
|
189
211
|
};
|
|
190
212
|
var changeVisible = function changeVisible(nextOpen) {
|
|
191
|
-
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
213
|
+
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'unknown';
|
|
192
214
|
if (visibleInner !== nextOpen) {
|
|
193
215
|
if (nextOpen && _includesInstanceProperty(triggerTypeArray).call(triggerTypeArray, triggerType)) {
|
|
194
216
|
onTrigger === null || onTrigger === void 0 ? void 0 : onTrigger(triggerType);
|
|
@@ -196,18 +218,18 @@ export var Popper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
196
218
|
if (typeof visible === 'undefined') {
|
|
197
219
|
setVisibleInner(nextOpen);
|
|
198
220
|
}
|
|
199
|
-
onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(nextOpen);
|
|
221
|
+
onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(nextOpen, triggerType);
|
|
200
222
|
}
|
|
201
223
|
if (!nextOpen && _Object$keys(subPopupRefs.current || {}).length) {
|
|
202
224
|
_Object$values(subPopupRefs.current).forEach(function (d) {
|
|
203
225
|
if (typeof (d === null || d === void 0 ? void 0 : d.triggerOpen) === 'function' && (d === null || d === void 0 ? void 0 : d.visible)) {
|
|
204
|
-
d === null || d === void 0 ? void 0 : d.triggerOpen(false);
|
|
226
|
+
d === null || d === void 0 ? void 0 : d.triggerOpen(false, 'parentHidden');
|
|
205
227
|
}
|
|
206
228
|
});
|
|
207
229
|
}
|
|
208
230
|
};
|
|
209
231
|
var triggerOpen = function triggerOpen(nextOpen) {
|
|
210
|
-
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
232
|
+
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'unknown';
|
|
211
233
|
var delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
212
234
|
clearDelay();
|
|
213
235
|
if (!disabled) {
|
|
@@ -340,7 +362,9 @@ export var Popper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
340
362
|
triggerOpen(false, 'clickOutside', 0);
|
|
341
363
|
}
|
|
342
364
|
}
|
|
343
|
-
}, 10
|
|
365
|
+
}, 10, {
|
|
366
|
+
leading: true
|
|
367
|
+
});
|
|
344
368
|
if (visibleInner) {
|
|
345
369
|
document.addEventListener('click', clickHandle, true);
|
|
346
370
|
}
|
|
@@ -370,7 +394,7 @@ export var Popper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
370
394
|
}
|
|
371
395
|
}, {
|
|
372
396
|
name: 'preventOverflow',
|
|
373
|
-
enabled: autoPlacement,
|
|
397
|
+
enabled: autoPlacement && !_includesInstanceProperty(placementInner).call(placementInner, '-'),
|
|
374
398
|
options: {
|
|
375
399
|
mainAxis: true
|
|
376
400
|
}
|
|
@@ -380,6 +404,50 @@ export var Popper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
380
404
|
options: {
|
|
381
405
|
fallbackPlacements: Array.isArray(autoPlacementList) ? getFallbackPlacementList(autoPlacementList) : undefined
|
|
382
406
|
}
|
|
407
|
+
}, {
|
|
408
|
+
name: 'applyArrowOffset',
|
|
409
|
+
enabled: true,
|
|
410
|
+
phase: 'write',
|
|
411
|
+
fn: function fn(data) {
|
|
412
|
+
var _data$state = data.state,
|
|
413
|
+
arrow = _data$state.elements.arrow,
|
|
414
|
+
placement = _data$state.placement,
|
|
415
|
+
_data$state$rects = _data$state.rects,
|
|
416
|
+
popper = _data$state$rects.popper,
|
|
417
|
+
reference = _data$state$rects.reference;
|
|
418
|
+
if (arrow) {
|
|
419
|
+
var arr = placement.split('-');
|
|
420
|
+
var offset;
|
|
421
|
+
if (arr.length === 2) {
|
|
422
|
+
switch (arr[0]) {
|
|
423
|
+
case 'bottom':
|
|
424
|
+
offset = getArrowOffset(popper.width, reference.width, arr);
|
|
425
|
+
if (offset) {
|
|
426
|
+
arrow.style.transform = "translate(".concat(offset, "px, 0px)");
|
|
427
|
+
}
|
|
428
|
+
break;
|
|
429
|
+
case 'left':
|
|
430
|
+
offset = getArrowOffset(popper.height, reference.height, arr);
|
|
431
|
+
if (offset) {
|
|
432
|
+
arrow.style.transform = "translate(0px, ".concat(offset, "px)");
|
|
433
|
+
}
|
|
434
|
+
break;
|
|
435
|
+
case 'right':
|
|
436
|
+
offset = getArrowOffset(popper.height, reference.height, arr);
|
|
437
|
+
if (offset) {
|
|
438
|
+
arrow.style.transform = "translate(0px, ".concat(offset, "px)");
|
|
439
|
+
}
|
|
440
|
+
break;
|
|
441
|
+
default:
|
|
442
|
+
offset = getArrowOffset(popper.width, reference.width, arr);
|
|
443
|
+
if (offset) {
|
|
444
|
+
arrow.style.transform = "translate(".concat(offset, "px, 0px)");
|
|
445
|
+
}
|
|
446
|
+
break;
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
}
|
|
383
451
|
}, {
|
|
384
452
|
name: 'onUpdate',
|
|
385
453
|
enabled: true,
|
|
@@ -26,6 +26,7 @@ var _ConfigContext = _interopRequireDefault(require("../config-provider/ConfigCo
|
|
|
26
26
|
var _utils = require("../_utils");
|
|
27
27
|
var _index = require("../index");
|
|
28
28
|
var _usePopper = _interopRequireDefault(require("../_utils/usePopper"));
|
|
29
|
+
var _resizeObserver = _interopRequireDefault(require("../_utils/resizeObserver"));
|
|
29
30
|
function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
30
31
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
32
|
var InternalBaseData = function InternalBaseData(props, ref) {
|
|
@@ -207,9 +208,9 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
207
208
|
return item;
|
|
208
209
|
});
|
|
209
210
|
};
|
|
210
|
-
|
|
211
|
-
(0, _react.useLayoutEffect)(function () {
|
|
211
|
+
var handleShowTotal = (0, _react.useCallback)(function () {
|
|
212
212
|
var _a;
|
|
213
|
+
if (!isMultiple) return;
|
|
213
214
|
var inputDom = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input;
|
|
214
215
|
if (!inputDom) return;
|
|
215
216
|
if (inputDom.scrollWidth - inputDom.offsetWidth > 0 && inputValue) {
|
|
@@ -217,7 +218,11 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
217
218
|
} else {
|
|
218
219
|
setShowTotal(false);
|
|
219
220
|
}
|
|
220
|
-
}, [
|
|
221
|
+
}, [inputValue, isMultiple]);
|
|
222
|
+
// 当选中项文字超出输入框时,显示共多少项
|
|
223
|
+
(0, _react.useLayoutEffect)(function () {
|
|
224
|
+
handleShowTotal();
|
|
225
|
+
}, [handleShowTotal]);
|
|
221
226
|
// 通过选中项显示input文字, optionLabelProp为回填到选择框的属性
|
|
222
227
|
var setValueBySeleted = (0, _react.useCallback)(function () {
|
|
223
228
|
var _context8;
|
|
@@ -473,6 +478,8 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
473
478
|
className: advancedSelectorCls,
|
|
474
479
|
ref: advancedSelectorRef,
|
|
475
480
|
style: style
|
|
481
|
+
}, /*#__PURE__*/_react.default.createElement(_resizeObserver.default, {
|
|
482
|
+
onResize: handleShowTotal
|
|
476
483
|
}, /*#__PURE__*/_react.default.createElement(_index.Input, {
|
|
477
484
|
ref: inputRef,
|
|
478
485
|
borderType: "none",
|
|
@@ -483,7 +490,7 @@ var InternalBaseData = function InternalBaseData(props, ref) {
|
|
|
483
490
|
onDoubleClick: handleDoubleClick,
|
|
484
491
|
onFocus: handleFocus,
|
|
485
492
|
onBlur: handleBlur
|
|
486
|
-
}), showTotal && !isFocused && isMultiple && /*#__PURE__*/_react.default.createElement("span", {
|
|
493
|
+
})), showTotal && !isFocused && isMultiple && /*#__PURE__*/_react.default.createElement("span", {
|
|
487
494
|
className: "".concat(advancedSelectorfixCls, "-total"),
|
|
488
495
|
onClick: showInputTotal
|
|
489
496
|
}, totalText), isShowDetailBtn && !disabled && /*#__PURE__*/_react.default.createElement("span", {
|
package/lib/popper/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export declare const Placements: ["top", "left", "right", "bottom", "topLeft", "
|
|
|
4
4
|
export declare type PlacementType = typeof Placements[number];
|
|
5
5
|
export declare const Triggers: ["hover", "focus", "click", "contextMenu"];
|
|
6
6
|
export declare type TriggerType = typeof Triggers[number];
|
|
7
|
+
export declare type Reason = TriggerType | 'scroll' | 'clickOutside' | 'parentHidden' | 'unknown';
|
|
7
8
|
export declare type RenderFunction = () => React.ReactNode;
|
|
8
9
|
export declare type PopperProps = {
|
|
9
10
|
gap?: number;
|
|
@@ -29,7 +30,7 @@ export declare type PopperProps = {
|
|
|
29
30
|
strategy?: 'fixed' | 'absolute';
|
|
30
31
|
clickToClose?: boolean;
|
|
31
32
|
onTrigger?: (trigger: TriggerType) => void;
|
|
32
|
-
onVisibleChange?: (visible: boolean) => void;
|
|
33
|
+
onVisibleChange?: (visible: boolean, reason?: Reason) => void;
|
|
33
34
|
getTriggerElement?: (locatorNode: HTMLElement) => HTMLElement;
|
|
34
35
|
getPopupContainer?: (locatorNode: HTMLElement) => HTMLElement;
|
|
35
36
|
onTransitionEnd?: (e: React.TransitionEvent) => void;
|
package/lib/popper/index.js
CHANGED
|
@@ -129,8 +129,10 @@ var Popper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
129
129
|
visible = props.visible,
|
|
130
130
|
_props$arrowSize = props.arrowSize,
|
|
131
131
|
arrowSize = _props$arrowSize === void 0 ? 4.25 : _props$arrowSize,
|
|
132
|
+
_props$arrowOffset = props.arrowOffset,
|
|
133
|
+
arrowOffset = _props$arrowOffset === void 0 ? 12 : _props$arrowOffset,
|
|
132
134
|
_props$gap = props.gap,
|
|
133
|
-
defaultGap = _props$gap === void 0 ?
|
|
135
|
+
defaultGap = _props$gap === void 0 ? 8 : _props$gap,
|
|
134
136
|
_props$scrollHidden = props.scrollHidden,
|
|
135
137
|
scrollHidden = _props$scrollHidden === void 0 ? false : _props$scrollHidden,
|
|
136
138
|
_props$mouseEnterDela = props.mouseEnterDelay,
|
|
@@ -162,6 +164,26 @@ var Popper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
162
164
|
var childrenInner = /*#__PURE__*/(0, _react.isValidElement)(child) && !(0, _reactNode.isFragment)(child) ? child : /*#__PURE__*/_react.default.createElement("span", null, child);
|
|
163
165
|
var popperElement = getElement(tip);
|
|
164
166
|
var referenceElement = _react.Children.only(childrenInner);
|
|
167
|
+
var arrowOffsetInner = arrowSize + arrowOffset;
|
|
168
|
+
var getArrowOffset = function getArrowOffset(popperSize, referenceSize, arr) {
|
|
169
|
+
var boundary = arrowOffsetInner * 2;
|
|
170
|
+
var offset;
|
|
171
|
+
if (referenceSize < boundary || popperSize < boundary) {
|
|
172
|
+
var o = Math.min(referenceSize, popperSize) / 2;
|
|
173
|
+
if (arr[1] === 'start') {
|
|
174
|
+
offset = o;
|
|
175
|
+
} else {
|
|
176
|
+
offset = Math.max(popperSize - o, 0);
|
|
177
|
+
}
|
|
178
|
+
} else {
|
|
179
|
+
if (arr[1] === 'start') {
|
|
180
|
+
offset = arrowOffsetInner;
|
|
181
|
+
} else {
|
|
182
|
+
offset = popperSize - arrowOffsetInner;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
return offset;
|
|
186
|
+
};
|
|
165
187
|
var id = (0, _useId.default)();
|
|
166
188
|
var parentContext = (0, _react.useContext)(TriggerContext);
|
|
167
189
|
var subPopupRefs = (0, _react.useRef)({});
|
|
@@ -203,7 +225,7 @@ var Popper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
203
225
|
}
|
|
204
226
|
};
|
|
205
227
|
var changeVisible = function changeVisible(nextOpen) {
|
|
206
|
-
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
228
|
+
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'unknown';
|
|
207
229
|
if (visibleInner !== nextOpen) {
|
|
208
230
|
if (nextOpen && (0, _includes.default)(triggerTypeArray).call(triggerTypeArray, triggerType)) {
|
|
209
231
|
onTrigger === null || onTrigger === void 0 ? void 0 : onTrigger(triggerType);
|
|
@@ -211,18 +233,18 @@ var Popper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
211
233
|
if (typeof visible === 'undefined') {
|
|
212
234
|
setVisibleInner(nextOpen);
|
|
213
235
|
}
|
|
214
|
-
onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(nextOpen);
|
|
236
|
+
onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(nextOpen, triggerType);
|
|
215
237
|
}
|
|
216
238
|
if (!nextOpen && (0, _keys.default)(subPopupRefs.current || {}).length) {
|
|
217
239
|
(0, _values.default)(subPopupRefs.current).forEach(function (d) {
|
|
218
240
|
if (typeof (d === null || d === void 0 ? void 0 : d.triggerOpen) === 'function' && (d === null || d === void 0 ? void 0 : d.visible)) {
|
|
219
|
-
d === null || d === void 0 ? void 0 : d.triggerOpen(false);
|
|
241
|
+
d === null || d === void 0 ? void 0 : d.triggerOpen(false, 'parentHidden');
|
|
220
242
|
}
|
|
221
243
|
});
|
|
222
244
|
}
|
|
223
245
|
};
|
|
224
246
|
var triggerOpen = function triggerOpen(nextOpen) {
|
|
225
|
-
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
247
|
+
var triggerType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'unknown';
|
|
226
248
|
var delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
227
249
|
clearDelay();
|
|
228
250
|
if (!disabled) {
|
|
@@ -355,7 +377,9 @@ var Popper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
355
377
|
triggerOpen(false, 'clickOutside', 0);
|
|
356
378
|
}
|
|
357
379
|
}
|
|
358
|
-
}, 10
|
|
380
|
+
}, 10, {
|
|
381
|
+
leading: true
|
|
382
|
+
});
|
|
359
383
|
if (visibleInner) {
|
|
360
384
|
document.addEventListener('click', clickHandle, true);
|
|
361
385
|
}
|
|
@@ -385,7 +409,7 @@ var Popper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
385
409
|
}
|
|
386
410
|
}, {
|
|
387
411
|
name: 'preventOverflow',
|
|
388
|
-
enabled: autoPlacement,
|
|
412
|
+
enabled: autoPlacement && !(0, _includes.default)(placementInner).call(placementInner, '-'),
|
|
389
413
|
options: {
|
|
390
414
|
mainAxis: true
|
|
391
415
|
}
|
|
@@ -395,6 +419,50 @@ var Popper = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
|
|
395
419
|
options: {
|
|
396
420
|
fallbackPlacements: Array.isArray(autoPlacementList) ? getFallbackPlacementList(autoPlacementList) : undefined
|
|
397
421
|
}
|
|
422
|
+
}, {
|
|
423
|
+
name: 'applyArrowOffset',
|
|
424
|
+
enabled: true,
|
|
425
|
+
phase: 'write',
|
|
426
|
+
fn: function fn(data) {
|
|
427
|
+
var _data$state = data.state,
|
|
428
|
+
arrow = _data$state.elements.arrow,
|
|
429
|
+
placement = _data$state.placement,
|
|
430
|
+
_data$state$rects = _data$state.rects,
|
|
431
|
+
popper = _data$state$rects.popper,
|
|
432
|
+
reference = _data$state$rects.reference;
|
|
433
|
+
if (arrow) {
|
|
434
|
+
var arr = placement.split('-');
|
|
435
|
+
var offset;
|
|
436
|
+
if (arr.length === 2) {
|
|
437
|
+
switch (arr[0]) {
|
|
438
|
+
case 'bottom':
|
|
439
|
+
offset = getArrowOffset(popper.width, reference.width, arr);
|
|
440
|
+
if (offset) {
|
|
441
|
+
arrow.style.transform = "translate(".concat(offset, "px, 0px)");
|
|
442
|
+
}
|
|
443
|
+
break;
|
|
444
|
+
case 'left':
|
|
445
|
+
offset = getArrowOffset(popper.height, reference.height, arr);
|
|
446
|
+
if (offset) {
|
|
447
|
+
arrow.style.transform = "translate(0px, ".concat(offset, "px)");
|
|
448
|
+
}
|
|
449
|
+
break;
|
|
450
|
+
case 'right':
|
|
451
|
+
offset = getArrowOffset(popper.height, reference.height, arr);
|
|
452
|
+
if (offset) {
|
|
453
|
+
arrow.style.transform = "translate(0px, ".concat(offset, "px)");
|
|
454
|
+
}
|
|
455
|
+
break;
|
|
456
|
+
default:
|
|
457
|
+
offset = getArrowOffset(popper.width, reference.width, arr);
|
|
458
|
+
if (offset) {
|
|
459
|
+
arrow.style.transform = "translate(".concat(offset, "px, 0px)");
|
|
460
|
+
}
|
|
461
|
+
break;
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
}
|
|
398
466
|
}, {
|
|
399
467
|
name: 'onUpdate',
|
|
400
468
|
enabled: true,
|