@kdcloudjs/kdesign 1.7.13 → 1.7.15

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.
Files changed (82) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/kdesign-complete.less +28 -11
  3. package/dist/kdesign.css +93 -10
  4. package/dist/kdesign.css.map +1 -1
  5. package/dist/kdesign.js +743 -595
  6. package/dist/kdesign.js.map +1 -1
  7. package/dist/kdesign.min.css +3 -3
  8. package/dist/kdesign.min.js +8 -8
  9. package/dist/kdesign.min.js.map +1 -1
  10. package/es/alert/alert.d.ts +1 -0
  11. package/es/alert/alert.js +15 -3
  12. package/es/cascader/cascader.d.ts +2 -0
  13. package/es/cascader/cascader.js +16 -4
  14. package/es/checkbox/checkbox.js +11 -10
  15. package/es/checkbox/group.d.ts +2 -1
  16. package/es/checkbox/group.js +16 -4
  17. package/es/city-picker/city-picker.js +1 -0
  18. package/es/city-picker/style/index.css +6 -0
  19. package/es/city-picker/style/index.less +8 -0
  20. package/es/color-picker/color-picker-panel.js +2 -2
  21. package/es/dropdown/dropdown.d.ts +2 -0
  22. package/es/empty/defaultEmptyImg.d.ts +1 -1
  23. package/es/empty/defaultEmptyImg.js +3 -2
  24. package/es/empty/empty.js +3 -1
  25. package/es/empty/illustrationEmptyImg.d.ts +1 -1
  26. package/es/empty/illustrationEmptyImg.js +3 -2
  27. package/es/form/Field.d.ts +4 -0
  28. package/es/form/Field.js +2 -5
  29. package/es/form/index.js +1 -0
  30. package/es/input/input.d.ts +1 -0
  31. package/es/input/style/index.css +86 -9
  32. package/es/input/style/index.less +1 -10
  33. package/es/input/style/mixin.less +18 -0
  34. package/es/input/style/token.less +1 -1
  35. package/es/modal/modal.js +0 -1
  36. package/es/search/quick-search.js +13 -3
  37. package/es/search/search.js +3 -3
  38. package/es/select/option.d.ts +2 -0
  39. package/es/select/option.js +10 -3
  40. package/es/select/select.js +119 -12
  41. package/es/transfer/list.js +1 -1
  42. package/es/tree/tree.d.ts +2 -0
  43. package/es/tree/tree.js +15 -4
  44. package/es/tree-select/interface.d.ts +5 -1
  45. package/es/tree-select/tree-select.js +1 -1
  46. package/lib/alert/alert.d.ts +1 -0
  47. package/lib/alert/alert.js +15 -3
  48. package/lib/cascader/cascader.d.ts +2 -0
  49. package/lib/cascader/cascader.js +20 -8
  50. package/lib/checkbox/checkbox.js +11 -10
  51. package/lib/checkbox/group.d.ts +2 -1
  52. package/lib/checkbox/group.js +17 -7
  53. package/lib/city-picker/city-picker.js +1 -0
  54. package/lib/city-picker/style/index.css +6 -0
  55. package/lib/city-picker/style/index.less +8 -0
  56. package/lib/color-picker/color-picker-panel.js +2 -2
  57. package/lib/dropdown/dropdown.d.ts +2 -0
  58. package/lib/empty/defaultEmptyImg.d.ts +1 -1
  59. package/lib/empty/defaultEmptyImg.js +3 -2
  60. package/lib/empty/empty.js +3 -1
  61. package/lib/empty/illustrationEmptyImg.d.ts +1 -1
  62. package/lib/empty/illustrationEmptyImg.js +3 -2
  63. package/lib/form/Field.d.ts +4 -0
  64. package/lib/form/Field.js +3 -5
  65. package/lib/form/index.js +1 -0
  66. package/lib/input/input.d.ts +1 -0
  67. package/lib/input/style/index.css +86 -9
  68. package/lib/input/style/index.less +1 -10
  69. package/lib/input/style/mixin.less +18 -0
  70. package/lib/input/style/token.less +1 -1
  71. package/lib/modal/modal.js +0 -1
  72. package/lib/search/quick-search.js +17 -7
  73. package/lib/search/search.js +3 -3
  74. package/lib/select/option.d.ts +2 -0
  75. package/lib/select/option.js +10 -3
  76. package/lib/select/select.js +119 -12
  77. package/lib/transfer/list.js +1 -1
  78. package/lib/tree/tree.d.ts +2 -0
  79. package/lib/tree/tree.js +19 -8
  80. package/lib/tree-select/interface.d.ts +5 -1
  81. package/lib/tree-select/tree-select.js +1 -1
  82. package/package.json +2 -1
@@ -8,15 +8,16 @@ Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports.default = void 0;
11
- var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
12
- var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
13
- var _stringify = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/json/stringify"));
14
- var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
15
11
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
16
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
17
13
  var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/typeof"));
18
14
  var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
19
15
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
16
+ var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
17
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
18
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
19
+ var _stringify = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/json/stringify"));
20
+ var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
20
21
  var _react = _interopRequireWildcard(require("react"));
21
22
  var _classnames = _interopRequireDefault(require("classnames"));
22
23
  var _debounce = _interopRequireDefault(require("lodash/debounce"));
@@ -28,6 +29,14 @@ var _index = require("../index");
28
29
  var _arrayUtil = require("../_utils/arrayUtil");
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 || _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; }
32
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
33
+ var t = {};
34
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
35
+ if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
36
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
37
+ }
38
+ return t;
39
+ };
31
40
  var INPUT_MIN_WIDTH = 4; // 输入框最小宽度
32
41
  var InternalQuickSearch = function InternalQuickSearch(props, ref) {
33
42
  var _classNames, _classNames2;
@@ -51,7 +60,8 @@ var InternalQuickSearch = function InternalQuickSearch(props, ref) {
51
60
  onSelect = props.onSelect,
52
61
  onSearch = props.onSearch,
53
62
  disabled = props.disabled,
54
- borderType = props.borderType;
63
+ borderType = props.borderType,
64
+ others = __rest(props, ["prefixCls", "className", "placeholder", "style", "desc", "dropdownStyle", "tags", "children", "onBlur", "onFocus", "onChange", "onSelect", "onSearch", "disabled", "borderType"]);
55
65
  var realChildren = Array.isArray(tags) && tags.length ? tags : (0, _reactChildren.toArray)(children); // tags配置项和默认children
56
66
  var innerRef = (0, _react.useRef)();
57
67
  var quickSearchRef = ref || innerRef;
@@ -305,12 +315,12 @@ var InternalQuickSearch = function InternalQuickSearch(props, ref) {
305
315
  !disabled && setInputFocus();
306
316
  };
307
317
  var renderSelect = function renderSelect() {
308
- return /*#__PURE__*/_react.default.createElement("div", {
318
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
309
319
  className: quickSearchCls,
310
320
  ref: quickSearchRef,
311
321
  style: style,
312
322
  onClick: handleClickInputFosus
313
- }, /*#__PURE__*/_react.default.createElement("span", {
323
+ }, others), /*#__PURE__*/_react.default.createElement("span", {
314
324
  className: (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(quickSearchPrefixCls, "-prefix"), true))
315
325
  }, /*#__PURE__*/_react.default.createElement(_index.Icon, {
316
326
  type: "search"
@@ -95,13 +95,13 @@ var InternalSearch = function InternalSearch(props, ref) {
95
95
  if (!suffix) {
96
96
  return null;
97
97
  }
98
- return !prefix && (typeof suffix === 'boolean' && suffix ? /*#__PURE__*/_react.default.createElement("span", {
98
+ return typeof suffix === 'boolean' && suffix ? /*#__PURE__*/_react.default.createElement("span", {
99
99
  className: "".concat(searchPrefixCls, "-suffix")
100
100
  }, /*#__PURE__*/_react.default.createElement(_index.Icon, {
101
101
  className: "kd-search-prefix",
102
102
  type: "search"
103
- })) : suffix);
104
- }, [suffix, prefix, searchPrefixCls]);
103
+ })) : suffix;
104
+ }, [suffix, searchPrefixCls]);
105
105
  if (type === 'quick-search') {
106
106
  return /*#__PURE__*/_react.default.createElement(_quickSearch.default, (0, _extends2.default)({}, restProps, {
107
107
  ref: ref,
@@ -8,9 +8,11 @@ export interface ISelectOptionProps {
8
8
  children?: any;
9
9
  className?: string;
10
10
  index?: number;
11
+ activeIndex?: number;
11
12
  style?: React.CSSProperties;
12
13
  isMultiple?: boolean;
13
14
  onChangeSelect?: (key: SelectValue, label: string | undefined, isSelected: boolean) => void;
15
+ onChangeActiveIndex?: (index: any) => void;
14
16
  }
15
17
  declare const Option: React.ForwardRefExoticComponent<ISelectOptionProps & React.RefAttributes<unknown>>;
16
18
  export default Option;
@@ -34,7 +34,10 @@ var InternalOption = function InternalOption(props, ref) {
34
34
  values = (0, _values.default)(props),
35
35
  isMultiple = props.isMultiple,
36
36
  onChangeSelect = props.onChangeSelect,
37
- title = props.title;
37
+ onChangeActiveIndex = props.onChangeActiveIndex,
38
+ title = props.title,
39
+ activeIndex = props.activeIndex,
40
+ index = props.index;
38
41
  var optionProps = (0, _extends2.default)({}, props);
39
42
  var _useContext = (0, _react.useContext)(_ConfigContext.default),
40
43
  getPrefixCls = _useContext.getPrefixCls,
@@ -47,7 +50,7 @@ var InternalOption = function InternalOption(props, ref) {
47
50
  setSelected(value !== undefined ? value === values : false);
48
51
  }
49
52
  });
50
- var optionCls = (0, _classnames.default)(selectOptionPrefixCls, className, (_classNames = {}, (0, _defineProperty2.default)(_classNames, "".concat(selectOptionPrefixCls, "-option"), true), (0, _defineProperty2.default)(_classNames, "".concat(selectOptionPrefixCls, "-option-selected"), isSelected), (0, _defineProperty2.default)(_classNames, "".concat(selectOptionPrefixCls, "-option-disabled"), disabled), _classNames));
53
+ var optionCls = (0, _classnames.default)(selectOptionPrefixCls, className, (_classNames = {}, (0, _defineProperty2.default)(_classNames, "".concat(selectOptionPrefixCls, "-option"), true), (0, _defineProperty2.default)(_classNames, "".concat(selectOptionPrefixCls, "-option-active"), activeIndex === index), (0, _defineProperty2.default)(_classNames, "".concat(selectOptionPrefixCls, "-option-selected"), isSelected), (0, _defineProperty2.default)(_classNames, "".concat(selectOptionPrefixCls, "-option-disabled"), disabled), _classNames));
51
54
  var contentCls = (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(selectOptionPrefixCls, "-option-content"), true));
52
55
  var handleClick = function handleClick(e) {
53
56
  e.preventDefault();
@@ -57,6 +60,9 @@ var InternalOption = function InternalOption(props, ref) {
57
60
  }
58
61
  onChangeSelect && onChangeSelect(value, children, isSelected);
59
62
  };
63
+ var handleOnMouseMove = function handleOnMouseMove() {
64
+ onChangeActiveIndex && onChangeActiveIndex(index);
65
+ };
60
66
  var titleText = title || ((0, _typeof2.default)(children) !== 'object' ? children : null);
61
67
  var checkStyle = {
62
68
  minHeight: '22px',
@@ -66,7 +72,8 @@ var InternalOption = function InternalOption(props, ref) {
66
72
  ref: optionRef,
67
73
  className: optionCls,
68
74
  title: titleText,
69
- onClick: handleClick
75
+ onClick: handleClick,
76
+ onMouseMove: handleOnMouseMove
70
77
  }, /*#__PURE__*/_react.default.createElement("div", {
71
78
  className: contentCls
72
79
  }, isMultiple ? /*#__PURE__*/_react.default.createElement(_index.Checkbox, {
@@ -13,6 +13,7 @@ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable
13
13
  var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
14
14
  var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
15
15
  var _splice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/splice"));
16
+ var _findIndex = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find-index"));
16
17
  var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
17
18
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
18
19
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
@@ -28,6 +29,7 @@ var _index = require("../index");
28
29
  var _option = _interopRequireDefault(require("./option"));
29
30
  var _usePopper = _interopRequireDefault(require("../_utils/usePopper"));
30
31
  var _virtualList = _interopRequireDefault(require("../virtual-list"));
32
+ var _KeyCode = _interopRequireDefault(require("../_utils/KeyCode"));
31
33
  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); }
32
34
  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; }
33
35
  var INPUT_MIN_WIDTH = 4; // 输入框最小宽度
@@ -212,13 +214,13 @@ var InternalSelect = function InternalSelect(props, ref) {
212
214
  onBlur && onBlur(e);
213
215
  }, [onBlur]);
214
216
  // 点击组件
215
- var handleClick = function handleClick() {
216
- if (disabled) return;
217
- if (optionShow) {
218
- var onDropdownVisibleChange = selectProps.onDropdownVisibleChange;
219
- onDropdownVisibleChange && onDropdownVisibleChange(true);
220
- }
221
- };
217
+ // const handleClick = () => {
218
+ // if (disabled) return
219
+ // if (optionShow) {
220
+ // const { onDropdownVisibleChange } = selectProps
221
+ // onDropdownVisibleChange && onDropdownVisibleChange(true)
222
+ // }
223
+ // }
222
224
  (0, _react.useEffect)(function () {
223
225
  selectionRef.current.addEventListener('mouseup', function (e) {
224
226
  var _a;
@@ -472,8 +474,12 @@ var InternalSelect = function InternalSelect(props, ref) {
472
474
  }, child.props, {
473
475
  key: index,
474
476
  index: index,
477
+ activeIndex: activeIndex,
475
478
  onChangeSelect: handleOption,
476
- values: multipleRef.current.selectedVal
479
+ values: multipleRef.current.selectedVal,
480
+ onChangeActiveIndex: function onChangeActiveIndex(i) {
481
+ setActiveIndex(i);
482
+ }
477
483
  }));
478
484
  } else {
479
485
  return /*#__PURE__*/_react.default.createElement(_option.default, (0, _extends2.default)({
@@ -481,8 +487,12 @@ var InternalSelect = function InternalSelect(props, ref) {
481
487
  value: child === null || child === void 0 ? void 0 : child.value,
482
488
  key: index,
483
489
  index: index,
490
+ activeIndex: activeIndex,
484
491
  onChangeSelect: handleOption,
485
- values: multipleRef.current.selectedVal
492
+ values: multipleRef.current.selectedVal,
493
+ onChangeActiveIndex: function onChangeActiveIndex(i) {
494
+ setActiveIndex(i);
495
+ }
486
496
  }, child), (child === null || child === void 0 ? void 0 : child.label) || (child === null || child === void 0 ? void 0 : child.value));
487
497
  }
488
498
  };
@@ -511,6 +521,7 @@ var InternalSelect = function InternalSelect(props, ref) {
511
521
  (_a = searchRef.current) === null || _a === void 0 ? void 0 : _a.focus();
512
522
  }
513
523
  }, [isShowSearch, autoFocus, disabled]);
524
+ var optionsListRef = _react.default.useRef(null);
514
525
  // 渲染下拉列表框
515
526
  var renderContent = function renderContent() {
516
527
  var dropdownRender = selectProps.dropdownRender,
@@ -536,7 +547,8 @@ var InternalSelect = function InternalSelect(props, ref) {
536
547
  },
537
548
  isStaticItemHeight: true,
538
549
  height: listHeight || 300,
539
- measureLongestItem: false
550
+ measureLongestItem: false,
551
+ ref: optionsListRef
540
552
  }, virtualListProps), function (child) {
541
553
  return child;
542
554
  });
@@ -695,6 +707,101 @@ var InternalSelect = function InternalSelect(props, ref) {
695
707
  }, renderSuffix()));
696
708
  };
697
709
  var singleCls = (0, _classnames.default)(commCls, (_classNames12 = {}, (0, _defineProperty2.default)(_classNames12, "".concat(selectPrefixCls, "-single"), true), (0, _defineProperty2.default)(_classNames12, "".concat(selectPrefixCls, "-single-disabled"), disabled), (0, _defineProperty2.default)(_classNames12, "".concat(selectPrefixCls, "-single-focused"), focusd && !disabled || optionShow), _classNames12));
710
+ // keyboard
711
+ var getActiveIndex = function getActiveIndex(index) {
712
+ var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
713
+ var len = filledOptions.length;
714
+ for (var i = 0; i < len; i += 1) {
715
+ var current = (index + i * offset + len) % len;
716
+ var _props = filledOptions[current].props;
717
+ if (!(_props === null || _props === void 0 ? void 0 : _props.disabled)) {
718
+ return current;
719
+ }
720
+ }
721
+ return -1;
722
+ };
723
+ // reset activeIndex
724
+ (0, _react.useEffect)(function () {
725
+ if (searchValue) {
726
+ setActiveIndex(getActiveIndex(0));
727
+ }
728
+ }, [searchValue]);
729
+ (0, _react.useEffect)(function () {
730
+ if (optionShow && !disabled) {
731
+ var onDropdownVisibleChange = selectProps.onDropdownVisibleChange;
732
+ onDropdownVisibleChange && onDropdownVisibleChange(true);
733
+ }
734
+ }, [optionShow]);
735
+ var _useState13 = (0, _react.useState)(getActiveIndex(0)),
736
+ _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
737
+ activeIndex = _useState14[0],
738
+ setActiveIndex = _useState14[1];
739
+ var onInternalKeyDown = function onInternalKeyDown(e) {
740
+ var _a, _b;
741
+ var which = e.which;
742
+ // open
743
+ if (which === _KeyCode.default.ENTER || which === _KeyCode.default.UP || which === _KeyCode.default.DOWN) {
744
+ e.preventDefault();
745
+ setOptionShow(true);
746
+ }
747
+ // backspace
748
+ var _multipleRef$current5 = multipleRef.current,
749
+ selectedVal = _multipleRef$current5.selectedVal,
750
+ selectMulOpts = _multipleRef$current5.selectMulOpts;
751
+ // isMultiple
752
+ if (which === _KeyCode.default.BACKSPACE && !searchValue && isMultiple && selectedVal.length && selectMulOpts.length) {
753
+ (0, _splice.default)(selectedVal).call(selectedVal, -1, 1);
754
+ (0, _splice.default)(selectMulOpts).call(selectMulOpts, -1, 1);
755
+ setMulOptions((0, _toConsumableArray2.default)(selectMulOpts));
756
+ onChange && onChange(labelInValue ? selectMulOpts : selectedVal, selectMulOpts);
757
+ // !isMultiple
758
+ } else if (which === _KeyCode.default.BACKSPACE && allowClear && !isMultiple) {
759
+ setInitValue('');
760
+ onClear && onClear('');
761
+ setSearchValue('');
762
+ onChange && onChange(undefined);
763
+ }
764
+ // optionsList: up、down、enter
765
+ if (optionShow) {
766
+ var offset = 0;
767
+ if (which === _KeyCode.default.UP) {
768
+ offset = -1;
769
+ } else if (which === _KeyCode.default.DOWN) {
770
+ offset = 1;
771
+ } else if (which === _KeyCode.default.ENTER) {
772
+ var item = filledOptions[activeIndex];
773
+ var key = ((_a = item.props) === null || _a === void 0 ? void 0 : _a.value) || item.value;
774
+ var label = ((_b = item.props) === null || _b === void 0 ? void 0 : _b.children) || item.label;
775
+ handleOption(key, label, true);
776
+ // search
777
+ if (searchValue) {
778
+ setActiveIndex((0, _findIndex.default)(realChildren).call(realChildren, function (child) {
779
+ var _a;
780
+ if (child && child.props) {
781
+ return ((_a = child.props) === null || _a === void 0 ? void 0 : _a.value) === key;
782
+ } else {
783
+ return (child === null || child === void 0 ? void 0 : child.value) === key;
784
+ }
785
+ }));
786
+ }
787
+ if (!isMultiple) {
788
+ setOptionShow(false);
789
+ }
790
+ } else if (which === _KeyCode.default.ESC) {
791
+ setOptionShow(false);
792
+ }
793
+ if (offset !== 0) {
794
+ var nextActiveIndex = getActiveIndex(activeIndex + offset, offset);
795
+ if (optionsListRef.current) {
796
+ optionsListRef.current.scrollTo({
797
+ index: nextActiveIndex
798
+ });
799
+ }
800
+ setActiveIndex(nextActiveIndex);
801
+ e.preventDefault();
802
+ }
803
+ }
804
+ };
698
805
  var renderSelect = function renderSelect() {
699
806
  return /*#__PURE__*/_react.default.createElement("div", {
700
807
  className: selectCls,
@@ -702,7 +809,6 @@ var InternalSelect = function InternalSelect(props, ref) {
702
809
  style: style
703
810
  }, /*#__PURE__*/_react.default.createElement("span", {
704
811
  className: selectionCls,
705
- onClick: handleClick,
706
812
  tabIndex: disabled ? -1 : 0,
707
813
  onFocus: function onFocus() {
708
814
  var _a;
@@ -711,7 +817,8 @@ var InternalSelect = function InternalSelect(props, ref) {
711
817
  onBlur: function onBlur() {
712
818
  var _a;
713
819
  return (_a = searchRef.current) === null || _a === void 0 ? void 0 : _a.blur();
714
- }
820
+ },
821
+ onKeyDown: onInternalKeyDown
715
822
  }, !isMultiple ? renderSingle() : renderMultiple()));
716
823
  };
717
824
  var catchStyle = function catchStyle() {
@@ -101,7 +101,7 @@ var ITransferList = function ITransferList(props, ref) {
101
101
  if (filterOption) {
102
102
  return filterOption(filterValue, item);
103
103
  }
104
- return text.indexOf(filterValue) > -1;
104
+ return (text === null || text === void 0 ? void 0 : text.indexOf(filterValue)) > -1;
105
105
  };
106
106
  var renderListBody = function renderListBody(renderList, props) {
107
107
  var bodyContent = renderList ? renderList(props) : null;
@@ -41,6 +41,8 @@ export interface TreeProps {
41
41
  expandOnClickNode?: boolean;
42
42
  onlyExpandOnClickIcon?: boolean;
43
43
  showIcon?: boolean;
44
+ style?: React.CSSProperties;
45
+ className?: string;
44
46
  }
45
47
  export declare type TreeNodeData = {
46
48
  checkable?: boolean;
package/lib/tree/tree.js CHANGED
@@ -8,14 +8,15 @@ Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports.default = void 0;
11
- var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
12
- var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
13
- var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
14
- var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
15
11
  var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
16
12
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/toConsumableArray"));
17
13
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
18
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
15
+ var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
16
+ var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
17
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
18
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
19
+ var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
19
20
  var _react = _interopRequireWildcard(require("react"));
20
21
  var _classnames = _interopRequireDefault(require("classnames"));
21
22
  var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
@@ -27,6 +28,14 @@ var _treeHooks = require("./treeHooks");
27
28
  var _isBoolean = _interopRequireDefault(require("lodash/isBoolean"));
28
29
  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); }
29
30
  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
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
32
+ var t = {};
33
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
34
+ if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
35
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
36
+ }
37
+ return t;
38
+ };
30
39
  var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
31
40
  var _useContext = (0, _react.useContext)(_ConfigContext.default),
32
41
  getPrefixCls = _useContext.getPrefixCls,
@@ -73,16 +82,18 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
73
82
  } : _TreeProps$setTreeNod2,
74
83
  innerEstimatedItemSize = TreeProps.estimatedItemSize,
75
84
  style = TreeProps.style,
85
+ className = TreeProps.className,
76
86
  filterTreeNode = TreeProps.filterTreeNode,
77
87
  filterValue = TreeProps.filterValue,
78
88
  expandOnClickNode = TreeProps.expandOnClickNode,
79
89
  _TreeProps$onlyExpand = TreeProps.onlyExpandOnClickIcon,
80
90
  onlyExpandOnClickIcon = _TreeProps$onlyExpand === void 0 ? false : _TreeProps$onlyExpand,
81
91
  loadData = TreeProps.loadData,
82
- notFoundContent = TreeProps.notFoundContent;
92
+ notFoundContent = TreeProps.notFoundContent,
93
+ 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"]);
83
94
  var treePrefixCls = getPrefixCls(prefixCls, 'tree', customPrefixcls); // 树样式前缀
84
95
  var treeNodePrefixCls = getPrefixCls(prefixCls, 'tree-node', customPrefixcls); // 树节点样式前缀
85
- var treeNodeClassName = (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(treePrefixCls), true));
96
+ var treeNodeClassName = (0, _classnames.default)(className, (0, _defineProperty2.default)({}, "".concat(treePrefixCls), true));
86
97
  var treeRootClassName = "".concat(treePrefixCls, "-root");
87
98
  var estimatedItemSize = innerEstimatedItemSize; // 节点高度
88
99
  var _React$useMemo = _react.default.useMemo(function () {
@@ -375,12 +386,12 @@ var InternalTree = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
375
386
  (0, _react.useEffect)(function () {
376
387
  setCheckedKeys(checkedKeys);
377
388
  }, [checkedKeys, setCheckedKeys]);
378
- return /*#__PURE__*/_react.default.createElement("div", {
389
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
379
390
  className: treeNodeClassName,
380
391
  style: style,
381
392
  ref: scrollRef,
382
393
  onScroll: handleScroll
383
- }, /*#__PURE__*/_react.default.createElement("div", {
394
+ }, others), /*#__PURE__*/_react.default.createElement("div", {
384
395
  ref: plantomRef,
385
396
  className: "".concat(treePrefixCls, "-plantom")
386
397
  }), /*#__PURE__*/_react.default.createElement("div", {
@@ -33,7 +33,7 @@ export interface AbstractSelectProps extends PopperProps {
33
33
  maxTagPlaceholder?: React.ReactNode | ((omittedValues: TreeNodeData[]) => React.ReactNode);
34
34
  }
35
35
  export declare type ITreeProps = {
36
- treeData?: TreeNodeData;
36
+ treeData?: TreeNodeData[];
37
37
  treeDefaultExpandAll?: boolean;
38
38
  treeDefaultExpandedKeys?: string[];
39
39
  treeExpandedKeys?: string[];
@@ -44,6 +44,10 @@ export declare type ITreeProps = {
44
44
  treeNodeFilterProp?: string;
45
45
  treeNodeLabelProp?: string;
46
46
  expandOnClickNode?: boolean;
47
+ treeCheckStrictly?: boolean;
48
+ treeExpandOnClickNode?: boolean;
49
+ showTreeIcon?: boolean;
50
+ treeLoadData?: () => void;
47
51
  };
48
52
  export declare type TreeSelectValue = string | string[] | number | number[] | undefined;
49
53
  export interface ITreeSelectProps<T extends TreeSelectValue> extends AbstractSelectProps, ITreeProps {
@@ -50,7 +50,7 @@ function flattenTreeData(treeData) {
50
50
  }
51
51
  return key;
52
52
  }
53
- treeData.forEach(function (node) {
53
+ treeData === null || treeData === void 0 ? void 0 : treeData.forEach(function (node) {
54
54
  flatten(node);
55
55
  });
56
56
  return map;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kdcloudjs/kdesign",
3
- "version": "1.7.13",
3
+ "version": "1.7.15",
4
4
  "description": "KDesign 金蝶前端react 组件库",
5
5
  "title": "kdesign",
6
6
  "keywords": [
@@ -77,6 +77,7 @@
77
77
  "@babel/runtime": "^7.10.4",
78
78
  "@babel/runtime-corejs3": "^7.11.2",
79
79
  "@babel/standalone": "^7.14.3",
80
+ "@kdcloudjs/kdesign-icons": "^1.0.0",
80
81
  "@kdcloudjs/table": "1.1.6-canary.2",
81
82
  "@popperjs/core": "^2.5.4",
82
83
  "@types/js-cookie": "^3.0.3",