@kdcloudjs/kdesign 1.7.20 → 1.7.22
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 +28 -0
- package/dist/kdesign-complete.less +12 -4
- package/dist/kdesign.css +13 -5
- package/dist/kdesign.css.map +1 -1
- package/dist/kdesign.js +363 -268
- package/dist/kdesign.js.map +1 -1
- package/dist/kdesign.min.css +3 -3
- package/dist/kdesign.min.js +8 -8
- package/dist/kdesign.min.js.map +1 -1
- package/es/_utils/reactNode.d.ts +1 -0
- package/es/_utils/reactNode.js +3 -0
- package/es/checkbox/group.js +1 -1
- package/es/collapse/style/index.css +3 -0
- package/es/collapse/style/index.less +3 -0
- package/es/config-provider/compDefaultProps.d.ts +2 -0
- package/es/config-provider/compDefaultProps.js +3 -1
- package/es/dropdown/dropdown.js +4 -3
- package/es/input/input.js +21 -3
- package/es/input-number/inputNumber.js +6 -0
- package/es/menu/menu.js +27 -18
- package/es/menu/style/index.css +3 -0
- package/es/menu/style/mixin.less +1 -0
- package/es/select/select.js +42 -18
- package/es/timeline/TimelineItem.js +2 -1
- package/es/timeline/style/index.css +2 -3
- package/es/timeline/style/index.less +2 -3
- package/es/tooltip/tooltip.js +3 -2
- package/es/tree/tree.js +68 -57
- package/es/tree/treeNode.js +1 -6
- package/es/tree-select/interface.d.ts +1 -0
- package/es/tree-select/style/index.css +4 -1
- package/es/tree-select/style/index.less +5 -1
- package/es/tree-select/style/token.less +1 -0
- package/es/tree-select/tree-select.js +18 -4
- package/es/virtual-list/Filler.d.ts +1 -0
- package/es/virtual-list/Filler.js +4 -3
- package/es/virtual-list/virtual-list.d.ts +1 -0
- package/es/virtual-list/virtual-list.js +5 -3
- package/lib/_utils/reactNode.d.ts +1 -0
- package/lib/_utils/reactNode.js +4 -0
- package/lib/checkbox/group.js +1 -1
- package/lib/collapse/style/index.css +3 -0
- package/lib/collapse/style/index.less +3 -0
- package/lib/config-provider/compDefaultProps.d.ts +2 -0
- package/lib/config-provider/compDefaultProps.js +3 -1
- package/lib/dropdown/dropdown.js +4 -3
- package/lib/input/input.js +20 -2
- package/lib/input-number/inputNumber.js +6 -0
- package/lib/menu/menu.js +26 -17
- package/lib/menu/style/index.css +3 -0
- package/lib/menu/style/mixin.less +1 -0
- package/lib/select/select.js +41 -17
- package/lib/timeline/TimelineItem.js +2 -1
- package/lib/timeline/style/index.css +2 -3
- package/lib/timeline/style/index.less +2 -3
- package/lib/tooltip/tooltip.js +3 -2
- package/lib/tree/tree.js +67 -56
- package/lib/tree/treeNode.js +1 -6
- package/lib/tree-select/interface.d.ts +1 -0
- package/lib/tree-select/style/index.css +4 -1
- package/lib/tree-select/style/index.less +5 -1
- package/lib/tree-select/style/token.less +1 -0
- package/lib/tree-select/tree-select.js +20 -6
- package/lib/virtual-list/Filler.d.ts +1 -0
- package/lib/virtual-list/Filler.js +4 -3
- package/lib/virtual-list/virtual-list.d.ts +1 -0
- package/lib/virtual-list/virtual-list.js +5 -3
- package/package.json +1 -1
package/lib/menu/style/index.css
CHANGED
|
@@ -107,6 +107,7 @@
|
|
|
107
107
|
/* 单行显示省略号 */
|
|
108
108
|
/** 浮层箭头样式 **/
|
|
109
109
|
.menu-hidden {
|
|
110
|
+
display: none;
|
|
110
111
|
opacity: 0;
|
|
111
112
|
visibility: hidden;
|
|
112
113
|
-webkit-animation: kdZoomTopLeftOut calc(var(--kd-c-menu-motion-duration, var(--kd-g-duration, 0.3s)) - 0.1s) cubic-bezier(0, 0.4, 0.4, 1) forwards;
|
|
@@ -534,6 +535,7 @@
|
|
|
534
535
|
color: var(--kd-c-menu-sub-color-text-hover, var(--kd-g-color-white, #fff));
|
|
535
536
|
}
|
|
536
537
|
.kd-menu-popper.hidden {
|
|
538
|
+
display: none;
|
|
537
539
|
opacity: 0;
|
|
538
540
|
visibility: hidden;
|
|
539
541
|
-webkit-animation: kdZoomTopLeftOut calc(var(--kd-c-menu-motion-duration, var(--kd-g-duration, 0.3s)) - 0.1s) cubic-bezier(0, 0.4, 0.4, 1) forwards;
|
|
@@ -575,6 +577,7 @@
|
|
|
575
577
|
transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
|
|
576
578
|
}
|
|
577
579
|
.kd-menu-popper .kd-menu-submenu-sub-hide {
|
|
580
|
+
display: none;
|
|
578
581
|
opacity: 0;
|
|
579
582
|
visibility: hidden;
|
|
580
583
|
-webkit-animation: kdZoomTopLeftOut calc(var(--kd-c-menu-motion-duration, var(--kd-g-duration, 0.3s)) - 0.1s) cubic-bezier(0, 0.4, 0.4, 1) forwards;
|
package/lib/select/select.js
CHANGED
|
@@ -85,8 +85,7 @@ var InternalSelect = function InternalSelect(props, ref) {
|
|
|
85
85
|
initValue = _useMergedState2[0],
|
|
86
86
|
setInitValue = _useMergedState2[1];
|
|
87
87
|
var realChildren = Array.isArray(options) ? options : (0, _reactChildren.toArray)(children); // options配置项和默认children
|
|
88
|
-
var
|
|
89
|
-
var selectRef = ref || innerRef;
|
|
88
|
+
var selectRef = (0, _react.useRef)();
|
|
90
89
|
var searchRef = (0, _react.useRef)(null); // 搜索框ref
|
|
91
90
|
var selectionRef = (0, _react.useRef)(null);
|
|
92
91
|
var dropDownRef = (0, _react.useRef)(null);
|
|
@@ -152,22 +151,29 @@ var InternalSelect = function InternalSelect(props, ref) {
|
|
|
152
151
|
var arr = [];
|
|
153
152
|
(0, _map.default)(initValue).call(initValue, function (item) {
|
|
154
153
|
var _a, _b;
|
|
155
|
-
var obj =
|
|
154
|
+
var obj = realChildren === null || realChildren === void 0 ? void 0 : (0, _find.default)(realChildren).call(realChildren, function (child) {
|
|
156
155
|
if (child && child.props) {
|
|
157
156
|
return child.props.value === item;
|
|
158
157
|
} else {
|
|
159
158
|
return child.value === item;
|
|
160
159
|
}
|
|
161
|
-
})
|
|
162
|
-
if (
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
160
|
+
});
|
|
161
|
+
if (obj) {
|
|
162
|
+
if (options && options.length) {
|
|
163
|
+
arr.push({
|
|
164
|
+
value: obj === null || obj === void 0 ? void 0 : obj.value,
|
|
165
|
+
label: (obj === null || obj === void 0 ? void 0 : obj.label) || (obj === null || obj === void 0 ? void 0 : obj.value)
|
|
166
|
+
});
|
|
167
|
+
} else {
|
|
168
|
+
arr.push({
|
|
169
|
+
value: (_a = obj.props) === null || _a === void 0 ? void 0 : _a.value,
|
|
170
|
+
label: (_b = obj.props) === null || _b === void 0 ? void 0 : _b.children
|
|
171
|
+
});
|
|
172
|
+
}
|
|
167
173
|
} else {
|
|
168
174
|
arr.push({
|
|
169
|
-
value:
|
|
170
|
-
label:
|
|
175
|
+
value: item,
|
|
176
|
+
label: item
|
|
171
177
|
});
|
|
172
178
|
}
|
|
173
179
|
});
|
|
@@ -184,19 +190,22 @@ var InternalSelect = function InternalSelect(props, ref) {
|
|
|
184
190
|
if (!isMultiple) {
|
|
185
191
|
multipleRef.current.selectedVal = initValue; // 默认选中值
|
|
186
192
|
if (initValue !== undefined) {
|
|
187
|
-
var obj =
|
|
193
|
+
var obj = realChildren === null || realChildren === void 0 ? void 0 : (0, _find.default)(realChildren).call(realChildren, function (child) {
|
|
188
194
|
var _a;
|
|
189
195
|
if (child && child.props) {
|
|
190
196
|
return ((_a = child.props) === null || _a === void 0 ? void 0 : _a.value) === initValue;
|
|
191
197
|
} else {
|
|
192
198
|
return (child === null || child === void 0 ? void 0 : child.value) === initValue;
|
|
193
199
|
}
|
|
194
|
-
})
|
|
195
|
-
if (
|
|
196
|
-
|
|
200
|
+
});
|
|
201
|
+
if (obj) {
|
|
202
|
+
if (options && options.length) {
|
|
203
|
+
setSingleVal(getOptionLabel(obj) || (obj === null || obj === void 0 ? void 0 : obj.value));
|
|
204
|
+
} else {
|
|
205
|
+
setSingleVal(getOptionLabel(obj));
|
|
206
|
+
}
|
|
197
207
|
} else {
|
|
198
|
-
|
|
199
|
-
setSingleVal(getOptionLabel(obj));
|
|
208
|
+
setSingleVal(initValue);
|
|
200
209
|
}
|
|
201
210
|
} else {
|
|
202
211
|
setSingleVal(undefined);
|
|
@@ -744,6 +753,21 @@ var InternalSelect = function InternalSelect(props, ref) {
|
|
|
744
753
|
(_a = clearRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('mouseup', fn);
|
|
745
754
|
};
|
|
746
755
|
}, [singleVal, mulOptions]);
|
|
756
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
|
757
|
+
return {
|
|
758
|
+
select: selectRef.current,
|
|
759
|
+
focus: function focus() {
|
|
760
|
+
var _a;
|
|
761
|
+
setFocusd(true);
|
|
762
|
+
(_a = searchRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
763
|
+
},
|
|
764
|
+
blur: function blur() {
|
|
765
|
+
var _a;
|
|
766
|
+
setFocusd(false);
|
|
767
|
+
(_a = searchRef.current) === null || _a === void 0 ? void 0 : _a.blur();
|
|
768
|
+
}
|
|
769
|
+
};
|
|
770
|
+
});
|
|
747
771
|
var _useState13 = (0, _react.useState)(isShowSearch ? getActiveIndex(0) : -1),
|
|
748
772
|
_useState14 = (0, _slicedToArray2.default)(_useState13, 2),
|
|
749
773
|
activeIndex = _useState14[0],
|
|
@@ -55,6 +55,7 @@ var TimelineItem = function TimelineItem(props) {
|
|
|
55
55
|
var labelStyle = mode !== 'alternate' ? (0, _defineProperty2.default)({
|
|
56
56
|
width: "".concat(labelWidth, "px")
|
|
57
57
|
}, (0, _concat.default)(_context = "margin".concat(mode === null || mode === void 0 ? void 0 : mode.substring(0, 1).toUpperCase())).call(_context, mode === null || mode === void 0 ? void 0 : mode.substring(1)), "-".concat(labelWidth, "px")) : {};
|
|
58
|
+
var marginDistance = pending ? Math.round(lineHeight / 2 + 12 / 2 + 2) : Math.round(lineHeight / 2 + 9 / 2 + 2);
|
|
58
59
|
return /*#__PURE__*/React.createElement("li", (0, _extends2.default)({}, restProps, {
|
|
59
60
|
className: itemClassName
|
|
60
61
|
}), label && /*#__PURE__*/React.createElement("div", {
|
|
@@ -65,7 +66,7 @@ var TimelineItem = function TimelineItem(props) {
|
|
|
65
66
|
}, label), /*#__PURE__*/React.createElement("div", {
|
|
66
67
|
className: "".concat(prefixCls, "-tail"),
|
|
67
68
|
style: {
|
|
68
|
-
marginTop:
|
|
69
|
+
marginTop: marginDistance
|
|
69
70
|
}
|
|
70
71
|
}), /*#__PURE__*/React.createElement("div", {
|
|
71
72
|
className: dotClassName,
|
|
@@ -297,16 +297,15 @@
|
|
|
297
297
|
.kd-timeline.pending .kd-timeline-item.last .kd-timeline-item-tail {
|
|
298
298
|
display: block;
|
|
299
299
|
height: calc(100% - 14px);
|
|
300
|
-
border-left:
|
|
300
|
+
border-left: 1px dotted var(--kd-c-timeline-line-color, var(--kd-g-color-border-weak, #e5e5e5));
|
|
301
301
|
}
|
|
302
302
|
.kd-timeline.reverse .kd-timeline-item.last .kd-timeline-item-tail {
|
|
303
303
|
display: none;
|
|
304
304
|
}
|
|
305
305
|
.kd-timeline.reverse .kd-timeline-item.pending .kd-timeline-item-tail {
|
|
306
|
-
top: 15px;
|
|
307
306
|
display: block;
|
|
308
307
|
height: calc(100% - 15px);
|
|
309
|
-
border-left:
|
|
308
|
+
border-left: 1px dotted var(--kd-c-timeline-line-color, var(--kd-g-color-border-weak, #e5e5e5));
|
|
310
309
|
}
|
|
311
310
|
.kd-timeline.reverse .kd-timeline-item.pending .kd-timeline-item-content {
|
|
312
311
|
min-height: 48px;
|
|
@@ -241,7 +241,7 @@
|
|
|
241
241
|
&.pending .@{timeline-item-prefix-cls}.last .@{timeline-item-prefix-cls}-tail {
|
|
242
242
|
display: block;
|
|
243
243
|
height: calc(100% - 14px);
|
|
244
|
-
border-left:
|
|
244
|
+
border-left: 1px dotted @timeline-line-color;
|
|
245
245
|
}
|
|
246
246
|
|
|
247
247
|
&.reverse .@{timeline-item-prefix-cls}.last .@{timeline-item-prefix-cls}-tail {
|
|
@@ -250,10 +250,9 @@
|
|
|
250
250
|
|
|
251
251
|
&.reverse .@{timeline-item-prefix-cls}.pending {
|
|
252
252
|
.@{timeline-item-prefix-cls}-tail {
|
|
253
|
-
top: 15px;
|
|
254
253
|
display: block;
|
|
255
254
|
height: calc(100% - 15px);
|
|
256
|
-
border-left:
|
|
255
|
+
border-left: 1px dotted @timeline-line-color;
|
|
257
256
|
}
|
|
258
257
|
.@{timeline-item-prefix-cls}-content {
|
|
259
258
|
min-height: 48px;
|
package/lib/tooltip/tooltip.js
CHANGED
|
@@ -11,6 +11,7 @@ exports.default = void 0;
|
|
|
11
11
|
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
|
|
12
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
13
|
var _utils = require("../_utils");
|
|
14
|
+
var _reactNode = require("../_utils/reactNode");
|
|
14
15
|
var _configProvider = require("../config-provider");
|
|
15
16
|
var _usePopper = _interopRequireDefault(require("../_utils/usePopper"));
|
|
16
17
|
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); }
|
|
@@ -28,8 +29,8 @@ var Tooltip = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
28
29
|
customPrefixcls = allProps.prefixCls;
|
|
29
30
|
// className前缀
|
|
30
31
|
var prefixCls = getPrefixCls(pkgPrefixCls, 'tooltip', customPrefixcls);
|
|
31
|
-
var tiplocator = /*#__PURE__*/_react.default.cloneElement(_react.default.
|
|
32
|
-
ref: children.ref
|
|
32
|
+
var tiplocator = /*#__PURE__*/_react.default.cloneElement( /*#__PURE__*/_react.default.isValidElement(children) && !(0, _reactNode.isFragment)(children) ? children : /*#__PURE__*/_react.default.createElement("span", null, children), {
|
|
33
|
+
ref: /*#__PURE__*/_react.default.isValidElement(children) && !(0, _reactNode.isFragment)(children) && children.ref ? children.ref : ref
|
|
33
34
|
});
|
|
34
35
|
var onVisibleChange = function onVisibleChange(v) {
|
|
35
36
|
if (status.current === v && allProps.visible === undefined) return;
|
package/lib/tree/tree.js
CHANGED
|
@@ -23,6 +23,7 @@ var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
|
|
|
23
23
|
var _ConfigContext = _interopRequireDefault(require("../config-provider/ConfigContext"));
|
|
24
24
|
var _utils = require("../_utils");
|
|
25
25
|
var _treeNode = _interopRequireDefault(require("./treeNode"));
|
|
26
|
+
var _virtualList = _interopRequireDefault(require("../virtual-list"));
|
|
26
27
|
var _treeUtils = require("./utils/treeUtils");
|
|
27
28
|
var _treeHooks = require("./treeHooks");
|
|
28
29
|
var _isBoolean = _interopRequireDefault(require("lodash/isBoolean"));
|
|
@@ -92,7 +93,6 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
92
93
|
notFoundContent = TreeProps.notFoundContent,
|
|
93
94
|
others = __rest(TreeProps, ["prefixCls", "treeData", "virtual", "showIcon", "switcherIcon", "icon", "checkable", "checkStrictly", "disabled", "draggable", "scrollToKey", "expandedKeys", "checkedKeys", "defaultExpandRoot", "defaultExpandAll", "defaultExpandParent", "defaultExpandedKeys", "defaultCheckedKeys", "defaultSelectedKeys", "height", "onCheck", "onExpand", "onDragStart", "onDragOver", "onDragLeave", "onDragEnter", "onDragEnd", "onDrop", "onSelect", "selectedKeys", "setTreeNodeStyle", "setTreeNodeClassName", "estimatedItemSize", "style", "className", "filterTreeNode", "filterValue", "expandOnClickNode", "onlyExpandOnClickIcon", "loadData", "notFoundContent"]);
|
|
94
95
|
var treePrefixCls = getPrefixCls(prefixCls, 'tree', customPrefixcls); // 树样式前缀
|
|
95
|
-
var treeNodePrefixCls = getPrefixCls(prefixCls, 'tree-node', customPrefixcls); // 树节点样式前缀
|
|
96
96
|
var treeNodeClassName = (0, _classnames.default)(className, (0, _defineProperty2.default)({}, "".concat(treePrefixCls), true));
|
|
97
97
|
var treeRootClassName = "".concat(treePrefixCls, "-root");
|
|
98
98
|
var estimatedItemSize = innerEstimatedItemSize; // 节点高度
|
|
@@ -106,45 +106,41 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
106
106
|
_React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
|
|
107
107
|
scrollKey = _React$useState2[0],
|
|
108
108
|
setScrollKey = _React$useState2[1];
|
|
109
|
-
var _React$useState3 = _react.default.useState(0),
|
|
110
|
-
_React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
|
|
111
|
-
start = _React$useState4[0],
|
|
112
|
-
setStart = _React$useState4[1];
|
|
113
109
|
var _useSelect = (0, _treeHooks.useSelect)(selectedKeysProps, defaultSelectedKeys),
|
|
114
110
|
_useSelect2 = (0, _slicedToArray2.default)(_useSelect, 2),
|
|
115
111
|
selectedKeys = _useSelect2[0],
|
|
116
112
|
setSelectedKeys = _useSelect2[1];
|
|
117
113
|
var listRef = _react.default.useRef(null);
|
|
118
|
-
var plantomRef = _react.default.useRef(null);
|
|
119
114
|
var rootRef = _react.default.useRef(null);
|
|
120
115
|
var scrollRef = ref || rootRef;
|
|
121
116
|
var treeNodeRef = _react.default.useRef(null);
|
|
122
117
|
var dragNodeRef = _react.default.useRef(null);
|
|
123
118
|
var delayedDragEnterRef = _react.default.useRef(null);
|
|
124
|
-
var
|
|
119
|
+
var virtualListRef = _react.default.useRef(null);
|
|
120
|
+
var _React$useState3 = _react.default.useState(true),
|
|
121
|
+
_React$useState4 = (0, _slicedToArray2.default)(_React$useState3, 2),
|
|
122
|
+
isInit = _React$useState4[0],
|
|
123
|
+
setIsInit = _React$useState4[1];
|
|
124
|
+
var _React$useState5 = _react.default.useState(null),
|
|
125
125
|
_React$useState6 = (0, _slicedToArray2.default)(_React$useState5, 2),
|
|
126
|
-
|
|
127
|
-
|
|
126
|
+
dropPosition = _React$useState6[0],
|
|
127
|
+
setDropPosition = _React$useState6[1];
|
|
128
128
|
var _React$useState7 = _react.default.useState(null),
|
|
129
129
|
_React$useState8 = (0, _slicedToArray2.default)(_React$useState7, 2),
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
var _React$useState9 = _react.default.useState(
|
|
130
|
+
dragOverNodeKey = _React$useState8[0],
|
|
131
|
+
setDragOverNodeKey = _React$useState8[1];
|
|
132
|
+
var _React$useState9 = _react.default.useState(new _set.default()),
|
|
133
133
|
_React$useState10 = (0, _slicedToArray2.default)(_React$useState9, 2),
|
|
134
|
-
|
|
135
|
-
|
|
134
|
+
loadedKeys = _React$useState10[0],
|
|
135
|
+
setLoadedKeys = _React$useState10[1];
|
|
136
136
|
var _React$useState11 = _react.default.useState(new _set.default()),
|
|
137
137
|
_React$useState12 = (0, _slicedToArray2.default)(_React$useState11, 2),
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
var _React$useState13 = _react.default.useState(
|
|
138
|
+
loadingKeys = _React$useState12[0],
|
|
139
|
+
setLoadingKeys = _React$useState12[1];
|
|
140
|
+
var _React$useState13 = _react.default.useState([]),
|
|
141
141
|
_React$useState14 = (0, _slicedToArray2.default)(_React$useState13, 2),
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
var _React$useState15 = _react.default.useState([]),
|
|
145
|
-
_React$useState16 = (0, _slicedToArray2.default)(_React$useState15, 2),
|
|
146
|
-
searchExpandedKeys = _React$useState16[0],
|
|
147
|
-
setSearchExpandedKeys = _React$useState16[1];
|
|
142
|
+
searchExpandedKeys = _React$useState14[0],
|
|
143
|
+
setSearchExpandedKeys = _React$useState14[1];
|
|
148
144
|
var isSearching = _react.default.useMemo(function () {
|
|
149
145
|
return typeof filterTreeNode === 'function' && !!filterValue;
|
|
150
146
|
}, [filterValue]);
|
|
@@ -169,13 +165,11 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
169
165
|
var filterData = _react.default.useMemo(function () {
|
|
170
166
|
return (0, _treeUtils.getFilterData)(spreadAttrData, filterTreeNode, isSearching, posData, keysData);
|
|
171
167
|
}, [spreadAttrData, isSearching, posData, keysData]);
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
visibleData = _useVisibleDataMemo2[0];
|
|
178
|
-
var index = _react.default.useMemo(function () {
|
|
168
|
+
(0, _react.useEffect)(function () {
|
|
169
|
+
var _a, _b;
|
|
170
|
+
if (typeof scrollKey === 'undefined') {
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
179
173
|
var scrollIndex = 0;
|
|
180
174
|
for (var i = 0; i < filterData.length; i++) {
|
|
181
175
|
if (filterData[i].key === scrollKey) {
|
|
@@ -183,19 +177,21 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
183
177
|
break;
|
|
184
178
|
}
|
|
185
179
|
}
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
180
|
+
if (virtual) {
|
|
181
|
+
(_a = virtualListRef.current) === null || _a === void 0 ? void 0 : _a.scrollTo({
|
|
182
|
+
index: scrollIndex
|
|
183
|
+
});
|
|
184
|
+
} else {
|
|
185
|
+
var wrapperDom = scrollRef.current;
|
|
186
|
+
var node = wrapperDom ? (_b = wrapperDom === null || wrapperDom === void 0 ? void 0 : wrapperDom.children[0]) === null || _b === void 0 ? void 0 : _b.children[scrollIndex] : null;
|
|
187
|
+
if (node && wrapperDom) {
|
|
188
|
+
var containerHeight = wrapperDom.clientHeight;
|
|
189
|
+
var targetHeight = node.clientHeight;
|
|
190
|
+
var scrollPosition = node.offsetTop + targetHeight - containerHeight;
|
|
191
|
+
wrapperDom.scrollTop = scrollPosition;
|
|
192
|
+
}
|
|
197
193
|
}
|
|
198
|
-
}, [
|
|
194
|
+
}, [filterData, scrollKey, virtual]);
|
|
199
195
|
var handleNodeLoad = (0, _react.useCallback)(function (loadedKeys, loadingKeys, data) {
|
|
200
196
|
var key = data.key;
|
|
201
197
|
if (!loadData || loadedKeys.has(key) || loadingKeys.has(key)) {
|
|
@@ -240,7 +236,7 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
240
236
|
var newSearchExpandedKeys = expanded ? (0, _treeUtils.addKeys)(searchExpandedKeys, [key]) : (0, _treeUtils.delKey)(searchExpandedKeys, [key]);
|
|
241
237
|
setSearchExpandedKeys(newSearchExpandedKeys);
|
|
242
238
|
}
|
|
243
|
-
setScrollKey(
|
|
239
|
+
setScrollKey(undefined);
|
|
244
240
|
setIsInit(false);
|
|
245
241
|
if (expanded && loadData) {
|
|
246
242
|
handleNodeLoad(loadedKeys, loadingKeys, node);
|
|
@@ -386,18 +382,7 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
386
382
|
(0, _react.useEffect)(function () {
|
|
387
383
|
setCheckedKeys(checkedKeys);
|
|
388
384
|
}, [checkedKeys, setCheckedKeys]);
|
|
389
|
-
|
|
390
|
-
className: treeNodeClassName,
|
|
391
|
-
style: style,
|
|
392
|
-
ref: scrollRef,
|
|
393
|
-
onScroll: handleScroll
|
|
394
|
-
}, others), /*#__PURE__*/_react.default.createElement("div", {
|
|
395
|
-
ref: plantomRef,
|
|
396
|
-
className: "".concat(treePrefixCls, "-plantom")
|
|
397
|
-
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
398
|
-
className: treeRootClassName,
|
|
399
|
-
ref: listRef
|
|
400
|
-
}, !(visibleData === null || visibleData === void 0 ? void 0 : visibleData.length) && notFoundContent, visibleData && (0, _map.default)(visibleData).call(visibleData, function (item) {
|
|
385
|
+
var renderTreeNode = function renderTreeNode(item) {
|
|
401
386
|
var checked = (0, _treeUtils.getChecked)(checkedKeys, item.key);
|
|
402
387
|
var indeterminate = (0, _treeUtils.getHalfChecked)(halfCheckedKeys, item.key);
|
|
403
388
|
item.nodeKey = item.key;
|
|
@@ -435,7 +420,33 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
435
420
|
key: item.key,
|
|
436
421
|
ref: treeNodeRef
|
|
437
422
|
}));
|
|
438
|
-
}
|
|
423
|
+
};
|
|
424
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
425
|
+
className: treeNodeClassName,
|
|
426
|
+
style: style,
|
|
427
|
+
ref: scrollRef
|
|
428
|
+
}, others), /*#__PURE__*/_react.default.createElement("div", {
|
|
429
|
+
className: treeRootClassName,
|
|
430
|
+
ref: listRef
|
|
431
|
+
}, !(filterData === null || filterData === void 0 ? void 0 : filterData.length) && notFoundContent, virtual ? /*#__PURE__*/_react.default.createElement(_virtualList.default, {
|
|
432
|
+
className: className,
|
|
433
|
+
style: style,
|
|
434
|
+
ref: virtualListRef,
|
|
435
|
+
data: filterData,
|
|
436
|
+
isStaticItemHeight: true,
|
|
437
|
+
itemKey: function itemKey(item) {
|
|
438
|
+
return item === null || item === void 0 ? void 0 : item.key;
|
|
439
|
+
},
|
|
440
|
+
height: height,
|
|
441
|
+
itemHeight: estimatedItemSize,
|
|
442
|
+
outerStyle: {
|
|
443
|
+
overflow: 'unset'
|
|
444
|
+
},
|
|
445
|
+
innerStyle: {
|
|
446
|
+
minWidth: '100%',
|
|
447
|
+
width: 'max-contnet'
|
|
448
|
+
}
|
|
449
|
+
}, renderTreeNode) : (0, _map.default)(filterData).call(filterData, renderTreeNode)));
|
|
439
450
|
});
|
|
440
451
|
var Tree = InternalTree;
|
|
441
452
|
Tree.displayName = 'Tree';
|
package/lib/tree/treeNode.js
CHANGED
|
@@ -30,7 +30,7 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
|
30
30
|
}
|
|
31
31
|
return t;
|
|
32
32
|
};
|
|
33
|
-
var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props
|
|
33
|
+
var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props) {
|
|
34
34
|
var _context;
|
|
35
35
|
var _useContext = (0, _react.useContext)(_ConfigContext.default),
|
|
36
36
|
getPrefixCls = _useContext.getPrefixCls,
|
|
@@ -242,11 +242,6 @@ var TreeNode = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
242
242
|
var handleSelect = _react.default.useCallback(function (e) {
|
|
243
243
|
selectable && !disabled && onSelect && onSelect(e, nodeData, nodeKey);
|
|
244
244
|
}, [onSelect, selectable, disabled, nodeData, nodeKey]);
|
|
245
|
-
_react.default.useImperativeHandle(ref, function () {
|
|
246
|
-
return {
|
|
247
|
-
selectNode: handleSelect
|
|
248
|
-
};
|
|
249
|
-
});
|
|
250
245
|
var handleExpandIconClick = (0, _react.useCallback)(function (e) {
|
|
251
246
|
e === null || e === void 0 ? void 0 : e.stopPropagation();
|
|
252
247
|
setExpandState(!expandState);
|
|
@@ -48,6 +48,7 @@ export declare type ITreeProps = {
|
|
|
48
48
|
treeExpandOnClickNode?: boolean;
|
|
49
49
|
showTreeIcon?: boolean;
|
|
50
50
|
treeLoadData?: () => void;
|
|
51
|
+
listHeight?: number;
|
|
51
52
|
};
|
|
52
53
|
export declare type TreeSelectValue = string | string[] | number | number[] | undefined;
|
|
53
54
|
export interface ITreeSelectProps<T extends TreeSelectValue> extends AbstractSelectProps, ITreeProps {
|
|
@@ -228,7 +228,7 @@
|
|
|
228
228
|
z-index: var(--kd-c-tree-select-z-index, var(--kd-g-z-index-popper, 1050));
|
|
229
229
|
-webkit-box-sizing: border-box;
|
|
230
230
|
box-sizing: border-box;
|
|
231
|
-
padding:
|
|
231
|
+
padding: var(--kd-c-tree-select-dropdown-spacing-padding-vertical, 8px) 0;
|
|
232
232
|
margin: 0;
|
|
233
233
|
overflow: auto;
|
|
234
234
|
font-size: var(--kd-c-tree-select-dropdown-font-size, 12px);
|
|
@@ -240,6 +240,9 @@
|
|
|
240
240
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
241
241
|
max-height: 200px;
|
|
242
242
|
}
|
|
243
|
+
.kd-tree-select-dropdown .kd-tree {
|
|
244
|
+
padding: 0;
|
|
245
|
+
}
|
|
243
246
|
.kd-tree-select-dropdown .kd-tree-node-item {
|
|
244
247
|
padding: 0 var(--kd-c-tree-select-dropdown-node-spacing-padding-horizontal, 16px);
|
|
245
248
|
}
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
left: 0;
|
|
127
127
|
z-index: @tree-select-z-index;
|
|
128
128
|
box-sizing: border-box;
|
|
129
|
-
padding:
|
|
129
|
+
padding: @tree-select-padding-vertical 0;
|
|
130
130
|
margin: 0;
|
|
131
131
|
overflow: auto;
|
|
132
132
|
font-size: @tree-select-list-font-size;
|
|
@@ -137,6 +137,10 @@
|
|
|
137
137
|
box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
|
|
138
138
|
max-height: 200px;
|
|
139
139
|
|
|
140
|
+
.@{tree-prefix-cls} {
|
|
141
|
+
padding: 0;
|
|
142
|
+
}
|
|
143
|
+
|
|
140
144
|
.@{tree-prefix-cls}-node-item {
|
|
141
145
|
padding: 0 @tree-select-dropdown-node-horizontal;
|
|
142
146
|
}
|
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
@tree-select-bordered: var(~'@{tree-select-custom-prefix}-bordered-spacing-padding-left', 8px);
|
|
46
46
|
@tree-select-wrapper-padding: var(~'@{tree-select-custom-prefix}-wrapper-spacing-padding', 1px 28px 1px 0);
|
|
47
47
|
@tree-select-dropdown-node-horizontal: var(~'@{tree-select-custom-prefix}-dropdown-node-spacing-padding-horizontal', 16px);
|
|
48
|
+
@tree-select-padding-vertical: var(~'@{tree-select-custom-prefix}-dropdown-spacing-padding-vertical', 8px);
|
|
48
49
|
|
|
49
50
|
// radius
|
|
50
51
|
@tree-select-g-radius-border: var(~'@{tree-select-custom-prefix}-radius-border', @radius-border);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _typeof3 = require("@babel/runtime-corejs3/helpers/typeof");
|
|
4
4
|
var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
|
|
5
5
|
var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
|
|
6
6
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
|
|
@@ -8,6 +8,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
8
8
|
value: true
|
|
9
9
|
});
|
|
10
10
|
exports.default = void 0;
|
|
11
|
+
var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/typeof"));
|
|
11
12
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
12
13
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
|
|
13
14
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
|
|
@@ -25,7 +26,7 @@ var _utils = require("../_utils");
|
|
|
25
26
|
var _index = require("../index");
|
|
26
27
|
var _usePopper = _interopRequireDefault(require("../_utils/usePopper"));
|
|
27
28
|
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); }
|
|
28
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null ||
|
|
29
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(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; }
|
|
29
30
|
var INPUT_MIN_WIDTH = 4; // 输入框最小宽度
|
|
30
31
|
function flattenTreeData(treeData) {
|
|
31
32
|
var map = new _map.default();
|
|
@@ -108,7 +109,8 @@ var InternalTreeSelect = function InternalTreeSelect(props, ref) {
|
|
|
108
109
|
onSelect = treeSelectProps.onSelect,
|
|
109
110
|
onCheck = treeSelectProps.onCheck,
|
|
110
111
|
dropdownRender = treeSelectProps.dropdownRender,
|
|
111
|
-
onlyExpandOnClickIcon = treeSelectProps.onlyExpandOnClickIcon
|
|
112
|
+
onlyExpandOnClickIcon = treeSelectProps.onlyExpandOnClickIcon,
|
|
113
|
+
listHeight = treeSelectProps.listHeight;
|
|
112
114
|
var isMultiple = mode === 'multiple'; // 是否多选
|
|
113
115
|
var _useMergedState = (0, _hooks.useMergedState)(isMultiple ? [] : undefined, {
|
|
114
116
|
value: value,
|
|
@@ -167,16 +169,26 @@ var InternalTreeSelect = function InternalTreeSelect(props, ref) {
|
|
|
167
169
|
var commCls = (0, _classnames.default)((_classNames4 = {}, (0, _defineProperty2.default)(_classNames4, "".concat(selectPrefixCls, "-bordered"), borderType === 'bordered'), (0, _defineProperty2.default)(_classNames4, "".concat(selectPrefixCls, "-underline"), borderType === 'underline'), (0, _defineProperty2.default)(_classNames4, "".concat(selectPrefixCls, "-borderless"), borderType === 'none'), (0, _defineProperty2.default)(_classNames4, (0, _concat.default)(_context3 = "".concat(selectPrefixCls, "-size-")).call(_context3, size), size), (0, _defineProperty2.default)(_classNames4, "".concat(selectPrefixCls, "-wrapper"), true), _classNames4));
|
|
168
170
|
(0, _react.useEffect)(function () {
|
|
169
171
|
var arr = [];
|
|
170
|
-
if (isMultiple
|
|
172
|
+
if (isMultiple) {
|
|
171
173
|
for (var index = 0; index < initValue.length; index++) {
|
|
172
174
|
var key = initValue[index];
|
|
173
175
|
if (TreeMap.has(key)) {
|
|
174
176
|
arr.push(TreeMap.get(key));
|
|
177
|
+
} else {
|
|
178
|
+
arr.push({
|
|
179
|
+
key: key,
|
|
180
|
+
title: key
|
|
181
|
+
});
|
|
175
182
|
}
|
|
176
183
|
}
|
|
177
184
|
} else {
|
|
178
185
|
if (TreeMap.has(initValue)) {
|
|
179
186
|
arr.push(TreeMap.get(initValue));
|
|
187
|
+
} else {
|
|
188
|
+
(0, _typeof2.default)(initValue) !== undefined && arr.push({
|
|
189
|
+
key: initValue,
|
|
190
|
+
title: initValue
|
|
191
|
+
});
|
|
180
192
|
}
|
|
181
193
|
}
|
|
182
194
|
setSelectTreeNodes(arr);
|
|
@@ -327,7 +339,8 @@ var InternalTreeSelect = function InternalTreeSelect(props, ref) {
|
|
|
327
339
|
notFoundContent: renderNotContent(),
|
|
328
340
|
filterTreeNode: defFilterTreeNode,
|
|
329
341
|
onSelect: handleSelect,
|
|
330
|
-
onExpand: handleExpand
|
|
342
|
+
onExpand: handleExpand,
|
|
343
|
+
height: listHeight
|
|
331
344
|
};
|
|
332
345
|
if (isMultiple) {
|
|
333
346
|
treeProps.checkable = true;
|
|
@@ -355,7 +368,8 @@ var InternalTreeSelect = function InternalTreeSelect(props, ref) {
|
|
|
355
368
|
// 渲染下拉列表框
|
|
356
369
|
var renderContent = function renderContent() {
|
|
357
370
|
var dropDownStyle = (0, _extends2.default)({
|
|
358
|
-
width: style === null || style === void 0 ? void 0 : style.width
|
|
371
|
+
width: style === null || style === void 0 ? void 0 : style.width,
|
|
372
|
+
maxHeight: virtual ? 'unset' : ''
|
|
359
373
|
}, dropdownStyle);
|
|
360
374
|
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
361
375
|
className: dropDownCls,
|
|
@@ -16,7 +16,8 @@ var Filler = function Filler(_ref) {
|
|
|
16
16
|
var height = _ref.height,
|
|
17
17
|
offset = _ref.offset,
|
|
18
18
|
children = _ref.children,
|
|
19
|
-
propsOuterStyle = _ref.outerStyle
|
|
19
|
+
propsOuterStyle = _ref.outerStyle,
|
|
20
|
+
propsInnerStyle = _ref.innerStyle;
|
|
20
21
|
var outerStyle = {};
|
|
21
22
|
var innerStyle = {
|
|
22
23
|
display: 'flex',
|
|
@@ -29,13 +30,13 @@ var Filler = function Filler(_ref) {
|
|
|
29
30
|
overflow: 'hidden',
|
|
30
31
|
zIndex: 0
|
|
31
32
|
}, propsOuterStyle);
|
|
32
|
-
innerStyle = (0, _extends2.default)((0, _extends2.default)({}, innerStyle), {
|
|
33
|
+
innerStyle = (0, _extends2.default)((0, _extends2.default)((0, _extends2.default)({}, innerStyle), {
|
|
33
34
|
transform: "translateY(".concat(offset, "px)"),
|
|
34
35
|
position: 'absolute',
|
|
35
36
|
left: 0,
|
|
36
37
|
right: 0,
|
|
37
38
|
top: 0
|
|
38
|
-
});
|
|
39
|
+
}), propsInnerStyle);
|
|
39
40
|
}
|
|
40
41
|
return /*#__PURE__*/React.createElement("div", {
|
|
41
42
|
style: outerStyle
|
|
@@ -17,6 +17,7 @@ export interface VirtualListProps<T> extends Omit<React.HTMLAttributes<any>, 'ch
|
|
|
17
17
|
scrollOptions?: ScrollIntoViewOptions;
|
|
18
18
|
needFiller?: boolean;
|
|
19
19
|
outerStyle?: CSSProperties;
|
|
20
|
+
innerStyle?: CSSProperties;
|
|
20
21
|
onScroll?: React.UIEventHandler<HTMLElement>;
|
|
21
22
|
}
|
|
22
23
|
export declare type AvailableVirtualListProps = Pick<VirtualListProps<any>, 'height' | 'itemHeight' | 'threshold' | 'isStaticItemHeight' | 'scrollOptions'>;
|