@kdcloudjs/kdesign 1.7.48-usePopper.1 → 1.7.48-usePopper.2
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/CHANGELOG.md +120 -0
- package/dist/kdesign-complete.less +20 -21
- package/dist/kdesign.css +17 -16
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +2591 -1435
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +3 -3
- package/dist/kdesign.min.js +15 -10
- package/dist/kdesign.min.js.map +1 -1
- package/es/_utils/useId.d.ts +2 -0
- package/es/_utils/useId.js +30 -0
- package/es/_utils/usePopper.js +13 -7
- package/es/anchor/anchor.js +11 -2
- package/es/city-picker/style/index.css +0 -1
- package/es/city-picker/style/index.less +0 -1
- package/es/color-picker/color-picker-panel.js +1 -1
- package/es/date-picker/date-panel.js +35 -30
- package/es/date-picker/date-picker.js +4 -1
- package/es/date-picker/hooks/use-picker-input.js +2 -3
- package/es/date-picker/range-picker.js +10 -24
- package/es/date-picker/utils/date-fns.js +4 -2
- package/es/filter/filter.js +4 -5
- package/es/grid/col.js +14 -3
- package/es/grid/row.js +15 -4
- package/es/input/ClearableLabeledInput.js +2 -2
- package/es/input/TextArea.js +1 -7
- package/es/input-number/inputNumber.js +29 -8
- package/es/pagination/style/index.css +1 -0
- package/es/pagination/style/index.less +1 -0
- package/es/popper/index.d.ts +4 -1
- package/es/popper/index.js +214 -137
- package/es/popper/style/index.css +10 -11
- package/es/popper/style/index.less +17 -19
- package/es/qr-code/qr-code.js +1 -1
- package/es/radio/radio.js +2 -2
- package/es/radio/style/index.css +0 -1
- package/es/radio/style/index.less +1 -1
- package/es/select/style/index.css +3 -0
- package/es/select/style/index.less +1 -0
- package/es/split-panel/split-panel.js +16 -0
- package/es/tooltip/style/index.css +2 -2
- package/es/tooltip/style/index.less +1 -1
- package/es/tree/utils/treeUtils.js +1 -1
- package/es/upload/upload.js +1 -1
- package/lib/_utils/useId.d.ts +2 -0
- package/lib/_utils/useId.js +43 -0
- package/lib/_utils/usePopper.js +13 -7
- package/lib/anchor/anchor.js +11 -2
- package/lib/city-picker/style/index.css +0 -1
- package/lib/city-picker/style/index.less +0 -1
- package/lib/color-picker/color-picker-panel.js +1 -1
- package/lib/date-picker/date-panel.js +39 -34
- package/lib/date-picker/date-picker.js +4 -1
- package/lib/date-picker/hooks/use-picker-input.js +2 -3
- package/lib/date-picker/range-picker.js +10 -24
- package/lib/date-picker/utils/date-fns.js +4 -2
- package/lib/filter/filter.js +4 -5
- package/lib/grid/col.js +14 -3
- package/lib/grid/row.js +15 -4
- package/lib/input/ClearableLabeledInput.js +2 -2
- package/lib/input/TextArea.js +1 -7
- package/lib/input-number/inputNumber.js +29 -8
- package/lib/pagination/style/index.css +1 -0
- package/lib/pagination/style/index.less +1 -0
- package/lib/popper/index.d.ts +4 -1
- package/lib/popper/index.js +213 -136
- package/lib/popper/style/index.css +10 -11
- package/lib/popper/style/index.less +17 -19
- package/lib/qr-code/qr-code.js +1 -1
- package/lib/radio/radio.js +2 -2
- package/lib/radio/style/index.css +0 -1
- package/lib/radio/style/index.less +1 -1
- package/lib/select/style/index.css +3 -0
- package/lib/select/style/index.less +1 -0
- package/lib/split-panel/split-panel.js +16 -0
- package/lib/tooltip/style/index.css +2 -2
- package/lib/tooltip/style/index.less +1 -1
- package/lib/tree/utils/treeUtils.js +1 -1
- package/lib/upload/upload.js +1 -1
- package/package.json +7 -3
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime-corejs3/helpers/slicedToArray";
|
|
2
|
+
import _extends from "@babel/runtime-corejs3/helpers/extends";
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
function getUseId() {
|
|
5
|
+
var fullClone = _extends({}, React);
|
|
6
|
+
return fullClone === null || fullClone === void 0 ? void 0 : fullClone.useId;
|
|
7
|
+
}
|
|
8
|
+
var uuid = 0;
|
|
9
|
+
var useOriginId = getUseId();
|
|
10
|
+
export default useOriginId ? function useId(id) {
|
|
11
|
+
var reactId = useOriginId();
|
|
12
|
+
if (id) {
|
|
13
|
+
return id;
|
|
14
|
+
}
|
|
15
|
+
return reactId;
|
|
16
|
+
} : function useCompatId(id) {
|
|
17
|
+
var _React$useState = React.useState('ssr-id'),
|
|
18
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
19
|
+
innerId = _React$useState2[0],
|
|
20
|
+
setInnerId = _React$useState2[1];
|
|
21
|
+
React.useEffect(function () {
|
|
22
|
+
var nextId = uuid;
|
|
23
|
+
uuid += 1;
|
|
24
|
+
setInnerId("kd_unique_".concat(nextId));
|
|
25
|
+
}, []);
|
|
26
|
+
if (id) {
|
|
27
|
+
return id;
|
|
28
|
+
}
|
|
29
|
+
return innerId;
|
|
30
|
+
};
|
package/es/_utils/usePopper.js
CHANGED
|
@@ -113,6 +113,7 @@ var getRealDom = function getRealDom(locatorRef, locatorElement) {
|
|
|
113
113
|
var name = REF_NAME_OBJ[(_a = locatorElement === null || locatorElement === void 0 ? void 0 : locatorElement.type) === null || _a === void 0 ? void 0 : _a.displayName];
|
|
114
114
|
return locatorRef === null || locatorRef === void 0 ? void 0 : locatorRef.current[name];
|
|
115
115
|
};
|
|
116
|
+
var DEFAULT_PLACEMENT = 'top';
|
|
116
117
|
function usePopper(locatorElement, popperElement, props) {
|
|
117
118
|
var _context3, _context4, _arrowStyle;
|
|
118
119
|
var prefixCls = props.prefixCls,
|
|
@@ -131,7 +132,7 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
131
132
|
_props$trigger = props.trigger,
|
|
132
133
|
trigger = _props$trigger === void 0 ? 'click' : _props$trigger,
|
|
133
134
|
_props$placement = props.placement,
|
|
134
|
-
placement = _props$placement === void 0 ?
|
|
135
|
+
placement = _props$placement === void 0 ? DEFAULT_PLACEMENT : _props$placement,
|
|
135
136
|
_props$gap = props.gap,
|
|
136
137
|
defaultGap = _props$gap === void 0 ? 4 : _props$gap,
|
|
137
138
|
_props$scrollHidden = props.scrollHidden,
|
|
@@ -228,10 +229,15 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
228
229
|
_useState16 = _slicedToArray(_useState15, 2),
|
|
229
230
|
align = _useState16[0],
|
|
230
231
|
setAlign = _useState16[1];
|
|
231
|
-
var _useState17 = useState(placement),
|
|
232
|
+
var _useState17 = useState(_includesInstanceProperty(Placements).call(Placements, placement) ? placement : DEFAULT_PLACEMENT),
|
|
232
233
|
_useState18 = _slicedToArray(_useState17, 2),
|
|
233
234
|
nextPlacement = _useState18[0],
|
|
234
235
|
setNextPlacement = _useState18[1];
|
|
236
|
+
useEffect(function () {
|
|
237
|
+
if (nextPlacement !== placement && _includesInstanceProperty(Placements).call(Placements, placement)) {
|
|
238
|
+
setNextPlacement(placement);
|
|
239
|
+
}
|
|
240
|
+
}, [placement]);
|
|
235
241
|
var alignPopper = useCallback(function () {
|
|
236
242
|
var realDom = getRealDom(locatorRef, locatorElement);
|
|
237
243
|
if (realDom && (popperRef === null || popperRef === void 0 ? void 0 : popperRef.current)) {
|
|
@@ -245,6 +251,10 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
245
251
|
right = _realDom$getBoundingC.right,
|
|
246
252
|
height = _realDom$getBoundingC.height,
|
|
247
253
|
width = _realDom$getBoundingC.width;
|
|
254
|
+
if (height === 0 && width === 0) {
|
|
255
|
+
hidePopper();
|
|
256
|
+
return;
|
|
257
|
+
}
|
|
248
258
|
var _getOffsetPos = getOffsetPos(container),
|
|
249
259
|
containerTop = _getOffsetPos.top,
|
|
250
260
|
containerLeft = _getOffsetPos.left;
|
|
@@ -415,7 +425,7 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
415
425
|
setArrowPos(_arrowPos);
|
|
416
426
|
setNextPlacement(currentPlacement);
|
|
417
427
|
}
|
|
418
|
-
}, [locatorRef, popperRef, container, trigger, mousePos, autoPlacement, gap, arrowOffset, arrowSize, arrowWidth]);
|
|
428
|
+
}, [locatorRef, popperRef, container, trigger, mousePos, autoPlacement, gap, arrowOffset, arrowSize, arrowWidth, align === null || align === void 0 ? void 0 : align.left, align === null || align === void 0 ? void 0 : align.top, nextPlacement]);
|
|
419
429
|
useEffect(function () {
|
|
420
430
|
if (canAlign) {
|
|
421
431
|
alignPopper();
|
|
@@ -540,13 +550,9 @@ function usePopper(locatorElement, popperElement, props) {
|
|
|
540
550
|
}, 10);
|
|
541
551
|
window.addEventListener('resize', alignPopper);
|
|
542
552
|
document.addEventListener('scroll', scrollAlign, true);
|
|
543
|
-
locatorNode === null || locatorNode === void 0 ? void 0 : locatorNode.addEventListener('DOMSubtreeModified', alignPopper);
|
|
544
|
-
exist && (popperNode === null || popperNode === void 0 ? void 0 : popperNode.addEventListener('DOMSubtreeModified', alignPopper));
|
|
545
553
|
return function () {
|
|
546
554
|
window.removeEventListener('resize', alignPopper);
|
|
547
555
|
document.removeEventListener('scroll', scrollAlign, true);
|
|
548
|
-
locatorNode === null || locatorNode === void 0 ? void 0 : locatorNode.removeEventListener('DOMSubtreeModified', alignPopper);
|
|
549
|
-
exist && (popperNode === null || popperNode === void 0 ? void 0 : popperNode.removeEventListener('DOMSubtreeModified', alignPopper));
|
|
550
556
|
};
|
|
551
557
|
}
|
|
552
558
|
}, [alignPopper, exist, onVisibleChange, popperNode, props.visible, scrollHidden, locatorNode, visible, popperRef]);
|
package/es/anchor/anchor.js
CHANGED
|
@@ -179,6 +179,7 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
179
179
|
var normalRef = React.useRef(null);
|
|
180
180
|
var anchorRef = ref || normalRef;
|
|
181
181
|
var linksWidthRef = React.useRef([]);
|
|
182
|
+
var animating = React.useRef(false);
|
|
182
183
|
var wrapperClass = classNames(className, _defineProperty({}, "".concat(anchorPrefixCls, "-wrapper"), true));
|
|
183
184
|
// classes
|
|
184
185
|
var anchorMenuClass = classNames(_defineProperty({}, "".concat(anchorPrefixCls, "-menu"), true));
|
|
@@ -298,8 +299,12 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
298
299
|
var eleOffsetTop = getOffsetTop(targetElement, container);
|
|
299
300
|
var y = scrollTop + eleOffsetTop;
|
|
300
301
|
y -= targetOffset !== undefined ? targetOffset : offsetTop || 0;
|
|
302
|
+
animating.current = true;
|
|
301
303
|
scrollTo(y, {
|
|
302
|
-
getContainer: getScrollContainer
|
|
304
|
+
getContainer: getScrollContainer,
|
|
305
|
+
callback: function callback() {
|
|
306
|
+
animating.current = false;
|
|
307
|
+
}
|
|
303
308
|
});
|
|
304
309
|
};
|
|
305
310
|
var setCurrentActiveLink = useCallback(function (link) {
|
|
@@ -320,6 +325,9 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
320
325
|
setFixedTop(false);
|
|
321
326
|
}
|
|
322
327
|
}
|
|
328
|
+
if (animating.current) {
|
|
329
|
+
return;
|
|
330
|
+
}
|
|
323
331
|
var currentActiveLink = getAnchor(targetOffset !== undefined ? targetOffset : offsetTop || 0, bounds);
|
|
324
332
|
currentActiveLink && setCurrentActiveLink(currentActiveLink);
|
|
325
333
|
}, [affix, setFixedTop, offsetTop, bounds, getAnchor, setCurrentActiveLink, type, getScrollContainer, anchorRef, targetOffset]);
|
|
@@ -327,7 +335,8 @@ var InternalAnchor = function InternalAnchor(props, ref) {
|
|
|
327
335
|
getScrollContainer().addEventListener('scroll', handleScroll);
|
|
328
336
|
handleScroll();
|
|
329
337
|
return function () {
|
|
330
|
-
|
|
338
|
+
var _a;
|
|
339
|
+
return (_a = getScrollContainer()) === null || _a === void 0 ? void 0 : _a.removeEventListener('scroll', handleScroll);
|
|
331
340
|
};
|
|
332
341
|
}, [handleScroll, getScrollContainer]);
|
|
333
342
|
useEffect(function () {
|
|
@@ -76,7 +76,7 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
|
|
|
76
76
|
setColTypeArr(formatArr);
|
|
77
77
|
}
|
|
78
78
|
setClickedColorIndex(index);
|
|
79
|
-
onChange && onChange(formatValue,
|
|
79
|
+
onChange && onChange(formatValue, formatArr);
|
|
80
80
|
};
|
|
81
81
|
var handleTypeChange = function handleTypeChange(selectValue, option) {
|
|
82
82
|
setCurrentColorType(option.label);
|
|
@@ -23,6 +23,8 @@ function Panel(props) {
|
|
|
23
23
|
innerPicker = context.innerPicker,
|
|
24
24
|
setInnerPicker = context.setInnerPicker;
|
|
25
25
|
var isInnerPicker = innerPicker !== undefined;
|
|
26
|
+
var isInnerYear = innerPicker === 'year';
|
|
27
|
+
var isInnerMonth = innerPicker === 'month';
|
|
26
28
|
var isPositionLeft = panelPosition === 'left';
|
|
27
29
|
var isPositionRight = panelPosition === 'right';
|
|
28
30
|
var isPositionUnset = typeof panelPosition === 'undefined';
|
|
@@ -48,14 +50,20 @@ function Panel(props) {
|
|
|
48
50
|
}));
|
|
49
51
|
};
|
|
50
52
|
var renderMonthPanel = function renderMonthPanel() {
|
|
53
|
+
if (isInnerYear) {
|
|
54
|
+
return renderYearPanel();
|
|
55
|
+
}
|
|
51
56
|
return /*#__PURE__*/React.createElement(Month, _extends({}, props));
|
|
52
57
|
};
|
|
53
58
|
var renderQuarterPanel = function renderQuarterPanel() {
|
|
59
|
+
if (isInnerYear) {
|
|
60
|
+
return renderYearPanel();
|
|
61
|
+
}
|
|
54
62
|
return /*#__PURE__*/React.createElement(Quarter, _extends({}, props));
|
|
55
63
|
};
|
|
56
64
|
var renderDatePanel = function renderDatePanel() {
|
|
57
65
|
if (isInnerPicker) {
|
|
58
|
-
if (
|
|
66
|
+
if (isInnerYear) {
|
|
59
67
|
return renderYearPanel();
|
|
60
68
|
} else {
|
|
61
69
|
return renderMonthPanel();
|
|
@@ -114,35 +122,32 @@ function Panel(props) {
|
|
|
114
122
|
className: headerCls
|
|
115
123
|
};
|
|
116
124
|
};
|
|
125
|
+
var onHeaderYearClick = function onHeaderYearClick() {
|
|
126
|
+
setInnerPicker('year');
|
|
127
|
+
};
|
|
128
|
+
var onHeaderMonthClick = function onHeaderMonthClick() {
|
|
129
|
+
setInnerPicker('month');
|
|
130
|
+
};
|
|
117
131
|
var renderMonthHeader = function renderMonthHeader() {
|
|
118
132
|
var year = getYear(viewDate);
|
|
119
|
-
var headerCls = classnames("".concat(prefixCls, "-header"), "".concat(prefixCls, "-header-month"));
|
|
133
|
+
var headerCls = classnames("".concat(prefixCls, "-header"), "".concat(prefixCls, "-header-month"), "".concat(prefixCls, "-header-text-inner-hover"), _defineProperty({}, "".concat(prefixCls, "-header-text-inner-active"), isInnerYear));
|
|
120
134
|
return {
|
|
121
|
-
children: /*#__PURE__*/React.createElement(
|
|
135
|
+
children: /*#__PURE__*/React.createElement("span", {
|
|
136
|
+
onClick: onHeaderYearClick
|
|
137
|
+
}, year + locale.year),
|
|
122
138
|
className: headerCls
|
|
123
139
|
};
|
|
124
140
|
};
|
|
125
|
-
var onHeaderYearClick = function onHeaderYearClick() {
|
|
126
|
-
if (picker === 'date') {
|
|
127
|
-
setInnerPicker('year');
|
|
128
|
-
}
|
|
129
|
-
};
|
|
130
|
-
var onHeaderMonthClick = function onHeaderMonthClick() {
|
|
131
|
-
if (picker === 'date') {
|
|
132
|
-
setInnerPicker('month');
|
|
133
|
-
}
|
|
134
|
-
};
|
|
135
141
|
var renderDateHeader = function renderDateHeader() {
|
|
136
|
-
var _classnames, _classnames2;
|
|
137
142
|
var year = getYear(viewDate);
|
|
138
143
|
var month = getMonth(viewDate) + 1;
|
|
139
144
|
var headerCls = classnames("".concat(prefixCls, "-header"), "".concat(prefixCls, "-header-date"));
|
|
140
145
|
return {
|
|
141
146
|
children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", {
|
|
142
|
-
className: classnames("".concat(prefixCls, "-header-text-inner"),
|
|
147
|
+
className: classnames("".concat(prefixCls, "-header-text-inner"), "".concat(prefixCls, "-header-text-inner-hover"), _defineProperty({}, "".concat(prefixCls, "-header-text-inner-active"), isInnerYear)),
|
|
143
148
|
onClick: onHeaderYearClick
|
|
144
149
|
}, year + locale.year), /*#__PURE__*/React.createElement("span", {
|
|
145
|
-
className: classnames("".concat(prefixCls, "-header-text-inner"),
|
|
150
|
+
className: classnames("".concat(prefixCls, "-header-text-inner"), "".concat(prefixCls, "-header-text-inner-hover"), _defineProperty({}, "".concat(prefixCls, "-header-text-inner-active"), isInnerMonth)),
|
|
146
151
|
onClick: onHeaderMonthClick
|
|
147
152
|
}, month + locale.month)),
|
|
148
153
|
className: headerCls
|
|
@@ -150,7 +155,7 @@ function Panel(props) {
|
|
|
150
155
|
};
|
|
151
156
|
var onSuperPrev = function onSuperPrev() {
|
|
152
157
|
var date;
|
|
153
|
-
if (picker === 'year' ||
|
|
158
|
+
if (picker === 'year' || isInnerYear) {
|
|
154
159
|
var _props$yearItemNumber3 = props.yearItemNumber,
|
|
155
160
|
yearItemNumber = _props$yearItemNumber3 === void 0 ? DEFAULT_YEAR_ITEM_NUMBER : _props$yearItemNumber3;
|
|
156
161
|
date = addYears(viewDate, 0 - yearItemNumber);
|
|
@@ -161,7 +166,7 @@ function Panel(props) {
|
|
|
161
166
|
};
|
|
162
167
|
var onSuperNext = function onSuperNext() {
|
|
163
168
|
var date;
|
|
164
|
-
if (picker === 'year' ||
|
|
169
|
+
if (picker === 'year' || isInnerYear) {
|
|
165
170
|
var _props$yearItemNumber4 = props.yearItemNumber,
|
|
166
171
|
yearItemNumber = _props$yearItemNumber4 === void 0 ? DEFAULT_YEAR_ITEM_NUMBER : _props$yearItemNumber4;
|
|
167
172
|
var _viewDate = viewDate;
|
|
@@ -205,8 +210,8 @@ function Panel(props) {
|
|
|
205
210
|
panel = renderMonthPanel();
|
|
206
211
|
headerObj = renderMonthHeader();
|
|
207
212
|
headerProps = {
|
|
208
|
-
onSuperPrev: isPositionRight ?
|
|
209
|
-
onSuperNext: isPositionLeft ?
|
|
213
|
+
onSuperPrev: !isPositionRight || innerPicker ? onSuperPrev : undefined,
|
|
214
|
+
onSuperNext: !isPositionLeft || innerPicker ? onSuperNext : undefined
|
|
210
215
|
};
|
|
211
216
|
break;
|
|
212
217
|
}
|
|
@@ -215,8 +220,8 @@ function Panel(props) {
|
|
|
215
220
|
panel = renderQuarterPanel();
|
|
216
221
|
headerObj = renderMonthHeader();
|
|
217
222
|
headerProps = {
|
|
218
|
-
onSuperPrev: isPositionRight ?
|
|
219
|
-
onSuperNext: isPositionLeft ?
|
|
223
|
+
onSuperPrev: !isPositionRight || innerPicker ? onSuperPrev : undefined,
|
|
224
|
+
onSuperNext: !isPositionLeft || innerPicker ? onSuperNext : undefined
|
|
220
225
|
};
|
|
221
226
|
break;
|
|
222
227
|
}
|
|
@@ -225,10 +230,10 @@ function Panel(props) {
|
|
|
225
230
|
{
|
|
226
231
|
headerObj = renderDateHeader();
|
|
227
232
|
headerProps = {
|
|
228
|
-
onPrev: isPositionLeft && !isInnerPicker ||
|
|
229
|
-
onNext: isPositionRight && !isInnerPicker ||
|
|
230
|
-
onSuperPrev: isPositionLeft && !isInnerPicker ||
|
|
231
|
-
onSuperNext: isPositionRight && !isInnerPicker ||
|
|
233
|
+
onPrev: isPositionLeft && !isInnerPicker || isInnerMonth || isPositionUnset ? onPrev : undefined,
|
|
234
|
+
onNext: isPositionRight && !isInnerPicker || isInnerMonth || isPositionUnset ? onNext : undefined,
|
|
235
|
+
onSuperPrev: isPositionLeft && !isInnerPicker || isInnerYear || isPositionUnset ? onSuperPrev : undefined,
|
|
236
|
+
onSuperNext: isPositionRight && !isInnerPicker || isInnerYear || isPositionUnset ? onSuperNext : undefined
|
|
232
237
|
};
|
|
233
238
|
panel = renderDatePanel();
|
|
234
239
|
break;
|
|
@@ -238,10 +243,10 @@ function Panel(props) {
|
|
|
238
243
|
panel = renderDatePanel();
|
|
239
244
|
headerObj = renderDateHeader();
|
|
240
245
|
headerProps = {
|
|
241
|
-
onPrev:
|
|
242
|
-
onNext:
|
|
243
|
-
onSuperPrev:
|
|
244
|
-
onSuperNext:
|
|
246
|
+
onPrev: isPositionLeft && !isInnerPicker || isInnerMonth || isPositionUnset ? onPrev : undefined,
|
|
247
|
+
onNext: isPositionRight && !isInnerPicker || isInnerMonth || isPositionUnset ? onNext : undefined,
|
|
248
|
+
onSuperPrev: isPositionLeft && !isInnerPicker || isInnerYear || isPositionUnset ? onSuperPrev : undefined,
|
|
249
|
+
onSuperNext: isPositionRight && !isInnerPicker || isInnerYear || isPositionUnset ? onSuperNext : undefined
|
|
245
250
|
};
|
|
246
251
|
break;
|
|
247
252
|
}
|
|
@@ -150,7 +150,7 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
|
|
|
150
150
|
if (newText === '') {
|
|
151
151
|
triggerChange(null);
|
|
152
152
|
setViewDate(null);
|
|
153
|
-
} else if (newText && newText.length
|
|
153
|
+
} else if (newText && newText.length >= _format.length) {
|
|
154
154
|
var inputTempDate = parseDate(newText, _format);
|
|
155
155
|
if (inputTempDate && (!disabledDate || !disabledDate(inputTempDate))) {
|
|
156
156
|
if (picker !== 'year') {
|
|
@@ -217,6 +217,9 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
|
|
|
217
217
|
if (valueText !== text) {
|
|
218
218
|
resetText();
|
|
219
219
|
}
|
|
220
|
+
if (hoverValue) {
|
|
221
|
+
onLeave();
|
|
222
|
+
}
|
|
220
223
|
} else {
|
|
221
224
|
setInnerPicker(undefined);
|
|
222
225
|
}
|
|
@@ -29,8 +29,6 @@ export default function usePickerInput(_ref) {
|
|
|
29
29
|
},
|
|
30
30
|
onKeyDown: function onKeyDown(e) {
|
|
31
31
|
var _context;
|
|
32
|
-
setTyping(true);
|
|
33
|
-
triggerOpen(true);
|
|
34
32
|
switch (e.which) {
|
|
35
33
|
case KeyCode.ENTER:
|
|
36
34
|
{
|
|
@@ -46,8 +44,9 @@ export default function usePickerInput(_ref) {
|
|
|
46
44
|
{
|
|
47
45
|
if (typing && open && !e.shiftKey) {
|
|
48
46
|
setTyping(false);
|
|
49
|
-
e.preventDefault()
|
|
47
|
+
// e.preventDefault()
|
|
50
48
|
}
|
|
49
|
+
|
|
51
50
|
return;
|
|
52
51
|
}
|
|
53
52
|
case KeyCode.ESC:
|
|
@@ -228,16 +228,8 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
228
228
|
var _onTextChange = function onTextChange(newText, index) {
|
|
229
229
|
var inputTempDate;
|
|
230
230
|
if (newText === '') {
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
} else if (index === 1 && selectedValue && selectedValue.length === 2) {
|
|
234
|
-
inputTempDate = selectedValue[0];
|
|
235
|
-
}
|
|
236
|
-
if (inputTempDate) {
|
|
237
|
-
triggerChange(updateValues(selectedValue, inputTempDate, index), index);
|
|
238
|
-
setViewDate(inputTempDate, index);
|
|
239
|
-
}
|
|
240
|
-
} else if (newText && newText.length === _format.length) {
|
|
231
|
+
triggerChange(updateValues(selectedValue, null, index), index);
|
|
232
|
+
} else if (newText && newText.length >= _format.length) {
|
|
241
233
|
inputTempDate = parseDate(newText, _format);
|
|
242
234
|
var disabledFunc = index === 0 ? disabledStartDate : disabledEndDate;
|
|
243
235
|
if (inputTempDate && (!disabledFunc || !disabledFunc(inputTempDate))) {
|
|
@@ -391,28 +383,26 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
391
383
|
var canEndValueTrigger = canValueTrigger(endValue, 1, mergedDisabled, allowEmpty);
|
|
392
384
|
var canTrigger = values === null || canStartValueTrigger && canEndValueTrigger;
|
|
393
385
|
if (canTrigger) {
|
|
394
|
-
|
|
386
|
+
if (typeof value === 'undefined') {
|
|
387
|
+
setInnerValue(values);
|
|
388
|
+
}
|
|
395
389
|
if (onChange && (!isEqual(getValue(dateValue, 0), startValue) || !isEqual(getValue(dateValue, 1), endValue))) {
|
|
396
390
|
onChange(values, [startStr, endStr]);
|
|
397
391
|
}
|
|
398
392
|
}
|
|
393
|
+
var curValue = getValue(values, sourceIndex);
|
|
399
394
|
var nextOpenIndex = null;
|
|
400
395
|
if (sourceIndex === 0 && !mergedDisabled[1]) {
|
|
401
396
|
nextOpenIndex = 1;
|
|
402
397
|
} else if (sourceIndex === 1 && !mergedDisabled[0]) {
|
|
403
398
|
nextOpenIndex = 0;
|
|
404
399
|
}
|
|
405
|
-
if (nextOpenIndex !== null && nextOpenIndex !== mergedActivePickerIndex && (!openRecordsRef.current[nextOpenIndex] || !getValue(values, nextOpenIndex)) &&
|
|
400
|
+
if (nextOpenIndex !== null && nextOpenIndex !== mergedActivePickerIndex && (!openRecordsRef.current[nextOpenIndex] || !getValue(values, nextOpenIndex)) && curValue) {
|
|
406
401
|
triggerOpenAndFocus(nextOpenIndex);
|
|
407
|
-
} else {
|
|
402
|
+
} else if (curValue) {
|
|
408
403
|
triggerOpen(false, sourceIndex);
|
|
409
404
|
}
|
|
410
405
|
};
|
|
411
|
-
// useOnClickOutside([popperRef, inputDivRef], () => {
|
|
412
|
-
// setViewDate(null, 0)
|
|
413
|
-
// setViewDate(null, 1)
|
|
414
|
-
// setHoverRangedValue([null, null])
|
|
415
|
-
// })
|
|
416
406
|
var onSelect = function onSelect(date, type) {
|
|
417
407
|
var values = updateValues(selectedValue, date, mergedActivePickerIndex);
|
|
418
408
|
if (type === 'inner') {
|
|
@@ -453,14 +443,10 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
|
|
|
453
443
|
useEffect(function () {
|
|
454
444
|
if (!mergedOpen) {
|
|
455
445
|
setSelectedValue(dateValue);
|
|
456
|
-
if (!startValueTexts.length || startValueTexts[0] === '') {
|
|
457
|
-
triggerStartTextChange('');
|
|
458
|
-
}
|
|
459
|
-
if (!endValueTexts.length || endValueTexts[0] === '') {
|
|
460
|
-
triggerEndTextChange('');
|
|
461
|
-
}
|
|
462
446
|
setViewDate(null, 0);
|
|
463
447
|
setViewDate(null, 1);
|
|
448
|
+
resetStartText();
|
|
449
|
+
resetEndText();
|
|
464
450
|
setHoverRangedValue([null, null]);
|
|
465
451
|
} else {
|
|
466
452
|
setInnerPicker(undefined);
|
|
@@ -273,10 +273,12 @@ export var setYearOrMonthOfDate = function setYearOrMonthOfDate(date1, date2) {
|
|
|
273
273
|
var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'year';
|
|
274
274
|
var d1 = new Date(date1 || 0);
|
|
275
275
|
var d2 = new Date(date2 || 0);
|
|
276
|
-
if (type === 'year') {
|
|
276
|
+
if (type === 'year' && d1.getFullYear() !== d2.getFullYear()) {
|
|
277
|
+
d1.setDate(1);
|
|
277
278
|
d1.setFullYear(d2.getFullYear());
|
|
278
279
|
}
|
|
279
|
-
if (type === 'month') {
|
|
280
|
+
if (type === 'month' && d1.getMonth() !== d2.getMonth()) {
|
|
281
|
+
d1.setDate(1);
|
|
280
282
|
d1.setMonth(d2.getMonth());
|
|
281
283
|
}
|
|
282
284
|
return d1;
|
package/es/filter/filter.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from "@babel/runtime-corejs3/helpers/extends";
|
|
2
2
|
import _slicedToArray from "@babel/runtime-corejs3/helpers/slicedToArray";
|
|
3
|
-
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
4
3
|
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
|
|
4
|
+
import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
|
|
5
5
|
import _findInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/find";
|
|
6
6
|
import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
|
|
7
7
|
import * as React from 'react';
|
|
@@ -39,7 +39,7 @@ var Filter = function Filter(props) {
|
|
|
39
39
|
customPrefixcls = _getCompProps.prefixCls;
|
|
40
40
|
// className前缀
|
|
41
41
|
var prefixCls = getPrefixCls(pkgPrefixCls, 'filter', customPrefixcls);
|
|
42
|
-
var _React$useRef = React.useRef(props.value
|
|
42
|
+
var _React$useRef = React.useRef(typeof props.value === 'undefined' ? props.defaultValue || {} : props.value || {}),
|
|
43
43
|
defaultValue = _React$useRef.current;
|
|
44
44
|
var _React$useState = React.useState(defaultValue),
|
|
45
45
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -52,7 +52,6 @@ var Filter = function Filter(props) {
|
|
|
52
52
|
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
53
53
|
tab = _React$useState4[0],
|
|
54
54
|
setTab = _React$useState4[1];
|
|
55
|
-
var conditionValue = _Object$keys(value).length < 1 || _Object$keys(value).length === 1 && value.scheme ? defaultValue : value;
|
|
56
55
|
var onConditionChange = function onConditionChange(nextValue, condition, option) {
|
|
57
56
|
props.value === undefined && setValue(nextValue);
|
|
58
57
|
onChange && onChange(nextValue, condition, option);
|
|
@@ -60,7 +59,7 @@ var Filter = function Filter(props) {
|
|
|
60
59
|
var onConditionRemove = function onConditionRemove(key, e) {
|
|
61
60
|
e.preventDefault();
|
|
62
61
|
if (key) {
|
|
63
|
-
var nextValue = _extends({},
|
|
62
|
+
var nextValue = _extends({}, value);
|
|
64
63
|
delete nextValue[key];
|
|
65
64
|
onConditionChange(nextValue);
|
|
66
65
|
}
|
|
@@ -177,7 +176,7 @@ var Filter = function Filter(props) {
|
|
|
177
176
|
FilterLangMsg: FilterLangMsg,
|
|
178
177
|
onConditionChange: onConditionChange,
|
|
179
178
|
onConditionRemove: onConditionRemove,
|
|
180
|
-
value:
|
|
179
|
+
value: value
|
|
181
180
|
})), /*#__PURE__*/React.createElement(SchemeFilter, _extends({}, {
|
|
182
181
|
tab: tab,
|
|
183
182
|
fields: fields,
|
package/es/grid/col.js
CHANGED
|
@@ -41,12 +41,23 @@ var Col = function Col(props) {
|
|
|
41
41
|
var rowGroup = useContext(GapContext);
|
|
42
42
|
var mergedWinWidth = rowGroup.winWidth;
|
|
43
43
|
var gap = rowGroup.gap;
|
|
44
|
-
//
|
|
45
|
-
var
|
|
44
|
+
// 判断当前浏览器是否支持row-gap,如果不支持则使用margin负值模拟
|
|
45
|
+
var notSupportRowGap = function notSupportRowGap() {
|
|
46
|
+
// 判断是否是搜狗浏览器
|
|
47
|
+
if (testBrowserType(/^sogou/i, 0)) return true;
|
|
48
|
+
// 判断是否是IE浏览器
|
|
49
|
+
if (/Trident|MSIE/.test(navigator.userAgent)) return true;
|
|
50
|
+
// 判断是否是chrome浏览器,chrome浏览器版本号小于69
|
|
51
|
+
if (/Chrome/.test(navigator.userAgent) && !/Chromium/.test(navigator.userAgent)) {
|
|
52
|
+
var version = navigator.userAgent.split('Chrome/')[1].split('.');
|
|
53
|
+
if (version[0] && parseInt(version[0]) <= 69) return true;
|
|
54
|
+
}
|
|
55
|
+
return false;
|
|
56
|
+
};
|
|
46
57
|
var colGapStyle = {
|
|
47
58
|
padding: "0 ".concat(gap.h / 2, "px")
|
|
48
59
|
};
|
|
49
|
-
if (
|
|
60
|
+
if (notSupportRowGap() && gap.v) colGapStyle.marginBottom = gap.v;
|
|
50
61
|
// className前缀
|
|
51
62
|
var prefixCls = getPrefixCls(pkgPrefixCls, 'col', customPrefixcls);
|
|
52
63
|
var columns = 24;
|
package/es/grid/row.js
CHANGED
|
@@ -42,8 +42,19 @@ var Row = function Row(props) {
|
|
|
42
42
|
align = _getCompProps.align,
|
|
43
43
|
justify = _getCompProps.justify,
|
|
44
44
|
customPrefixcls = _getCompProps.prefixCls;
|
|
45
|
-
//
|
|
46
|
-
var
|
|
45
|
+
// 判断当前浏览器是否支持row-gap,如果不支持则使用margin负值模拟
|
|
46
|
+
var notSupportRowGap = function notSupportRowGap() {
|
|
47
|
+
// 判断是否是搜狗浏览器
|
|
48
|
+
if (testBrowserType(/^sogou/i, 0)) return true;
|
|
49
|
+
// 判断是否是IE浏览器
|
|
50
|
+
if (/Trident|MSIE/.test(navigator.userAgent)) return true;
|
|
51
|
+
// 判断是否是chrome浏览器,chrome浏览器版本号小于69
|
|
52
|
+
if (/Chrome/.test(navigator.userAgent) && !/Chromium/.test(navigator.userAgent)) {
|
|
53
|
+
var version = navigator.userAgent.split('Chrome/')[1].split('.');
|
|
54
|
+
if (version[0] && parseInt(version[0]) <= 69) return true;
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
57
|
+
};
|
|
47
58
|
// className前缀
|
|
48
59
|
var prefixCls = getPrefixCls(pkgPrefixCls, 'row', customPrefixcls);
|
|
49
60
|
var _React$useState = React.useState(window.innerWidth),
|
|
@@ -75,10 +86,10 @@ var Row = function Row(props) {
|
|
|
75
86
|
}
|
|
76
87
|
}
|
|
77
88
|
var rowStyle = {
|
|
78
|
-
|
|
89
|
+
rowGap: "".concat(gap.v, "px"),
|
|
79
90
|
margin: "0 ".concat(-1 * gap.h / 2, "px")
|
|
80
91
|
};
|
|
81
|
-
if (gap.v &&
|
|
92
|
+
if (gap.v && notSupportRowGap()) rowStyle.marginBottom = "".concat(-1 * gap.v, "px");
|
|
82
93
|
var toalign = {
|
|
83
94
|
top: 'flex-start',
|
|
84
95
|
middle: 'center',
|
|
@@ -56,11 +56,11 @@ var ClearableInput = function ClearableInput(props) {
|
|
|
56
56
|
return null;
|
|
57
57
|
}
|
|
58
58
|
var needClear = !disabled && value && isMouseEnter;
|
|
59
|
-
var
|
|
59
|
+
var clearIconCls = classNames((_classNames = {}, _defineProperty(_classNames, "".concat(prefixCls, "-textarea-clear-icon"), inputType === ClearableInputType[1]), _defineProperty(_classNames, "".concat(prefixCls, "-clear-icon"), inputType === ClearableInputType[0]), _defineProperty(_classNames, "".concat(prefixCls, "-clear-icon-hidden"), !needClear), _defineProperty(_classNames, "".concat(prefixCls, "-clear-icon-rightSpace"), suffix), _classNames));
|
|
60
60
|
return /*#__PURE__*/React.createElement("span", {
|
|
61
61
|
onMouseDown: mouseDownHandle,
|
|
62
62
|
onClick: handleReset,
|
|
63
|
-
className:
|
|
63
|
+
className: clearIconCls
|
|
64
64
|
}, typeof allowClear === 'boolean' ? /*#__PURE__*/React.createElement(Icon, {
|
|
65
65
|
type: "close-solid"
|
|
66
66
|
}) : allowClear);
|
package/es/input/TextArea.js
CHANGED
|
@@ -94,8 +94,7 @@ var InternalTextarea = function InternalTextarea(props, ref) {
|
|
|
94
94
|
}, [autoSize, textareaRef, style]);
|
|
95
95
|
useResizeObserver(textareaRef.current, resizeTextarea);
|
|
96
96
|
var handleChange = function handleChange(e) {
|
|
97
|
-
|
|
98
|
-
setValue(e.target.value);
|
|
97
|
+
propsValue === undefined && setValue(e.target.value);
|
|
99
98
|
onChange && onChange(e);
|
|
100
99
|
};
|
|
101
100
|
var handleFocus = function handleFocus(e) {
|
|
@@ -140,11 +139,6 @@ var InternalTextarea = function InternalTextarea(props, ref) {
|
|
|
140
139
|
setNumberMarkError(false);
|
|
141
140
|
}
|
|
142
141
|
}, [value]);
|
|
143
|
-
useEffect(function () {
|
|
144
|
-
if (propsValue !== undefined) {
|
|
145
|
-
setValue(propsValue);
|
|
146
|
-
}
|
|
147
|
-
}, [propsValue, setValue]);
|
|
148
142
|
useEffect(function () {
|
|
149
143
|
if (focused && !showNumberMark) {
|
|
150
144
|
setShowNumberMark(true);
|