@kdcloudjs/kdesign 1.5.4 → 1.5.5

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 (73) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist/default-theme.js +4 -4
  3. package/dist/kdesign-complete.less +159 -85
  4. package/dist/kdesign.css +153 -83
  5. package/dist/kdesign.css.map +1 -1
  6. package/dist/kdesign.js +220 -151
  7. package/dist/kdesign.js.map +1 -1
  8. package/dist/kdesign.min.css +3 -3
  9. package/dist/kdesign.min.js +6 -6
  10. package/dist/kdesign.min.js.map +1 -1
  11. package/es/_utils/usePopper.js +17 -8
  12. package/es/alert/alert.js +2 -2
  13. package/es/alert/style/index.css +27 -11
  14. package/es/alert/style/index.less +24 -10
  15. package/es/alert/style/mixin.less +8 -2
  16. package/es/alert/style/token.less +16 -8
  17. package/es/config-provider/compDefaultProps.d.ts +1 -0
  18. package/es/config-provider/compDefaultProps.js +2 -1
  19. package/es/dropdown/style/index.css +13 -14
  20. package/es/dropdown/style/index.less +4 -5
  21. package/es/dropdown/style/token.less +6 -5
  22. package/es/radio/style/index.css +6 -0
  23. package/es/radio/style/index.less +8 -0
  24. package/es/search/style/index.css +3 -3
  25. package/es/spin/style/index.css +25 -26
  26. package/es/spin/style/index.less +18 -19
  27. package/es/spin/style/token.less +9 -3
  28. package/es/style/themes/default.less +3 -4
  29. package/es/timeline/style/index.css +22 -21
  30. package/es/timeline/style/index.less +2 -2
  31. package/es/timeline/style/token.less +4 -7
  32. package/es/tree/style/index.css +56 -7
  33. package/es/tree/style/index.less +26 -18
  34. package/es/tree/style/mixin.less +25 -1
  35. package/es/tree/style/token.less +6 -4
  36. package/es/tree/tree.d.ts +2 -0
  37. package/es/tree/tree.js +65 -11
  38. package/es/tree/treeHooks.js +0 -1
  39. package/es/tree/treeNode.d.ts +1 -0
  40. package/es/tree/treeNode.js +45 -49
  41. package/es/tree/utils/treeUtils.js +2 -2
  42. package/lib/_utils/usePopper.js +17 -8
  43. package/lib/alert/alert.js +2 -2
  44. package/lib/alert/style/index.css +27 -11
  45. package/lib/alert/style/index.less +24 -10
  46. package/lib/alert/style/mixin.less +8 -2
  47. package/lib/alert/style/token.less +16 -8
  48. package/lib/config-provider/compDefaultProps.d.ts +1 -0
  49. package/lib/config-provider/compDefaultProps.js +2 -1
  50. package/lib/dropdown/style/index.css +13 -14
  51. package/lib/dropdown/style/index.less +4 -5
  52. package/lib/dropdown/style/token.less +6 -5
  53. package/lib/radio/style/index.css +6 -0
  54. package/lib/radio/style/index.less +8 -0
  55. package/lib/search/style/index.css +3 -3
  56. package/lib/spin/style/index.css +25 -26
  57. package/lib/spin/style/index.less +18 -19
  58. package/lib/spin/style/token.less +9 -3
  59. package/lib/style/themes/default.less +3 -4
  60. package/lib/timeline/style/index.css +22 -21
  61. package/lib/timeline/style/index.less +2 -2
  62. package/lib/timeline/style/token.less +4 -7
  63. package/lib/tree/style/index.css +56 -7
  64. package/lib/tree/style/index.less +26 -18
  65. package/lib/tree/style/mixin.less +25 -1
  66. package/lib/tree/style/token.less +6 -4
  67. package/lib/tree/tree.d.ts +2 -0
  68. package/lib/tree/tree.js +67 -11
  69. package/lib/tree/treeHooks.js +0 -1
  70. package/lib/tree/treeNode.d.ts +1 -0
  71. package/lib/tree/treeNode.js +46 -48
  72. package/lib/tree/utils/treeUtils.js +2 -2
  73. package/package.json +1 -1
package/dist/kdesign.js CHANGED
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  *
3
- * @kdcloudjs/kdesign v1.5.3
3
+ * @kdcloudjs/kdesign v1.5.4
4
4
  *
5
5
  * Copyright 2020-present, Kingdee, Inc.
6
6
  * All rights reserved.
@@ -1834,6 +1834,11 @@ function usePopper(locatorElement, popperElement, props) {
1834
1834
  props.visible === undefined && setVisible(false);
1835
1835
  onVisibleChange && onVisibleChange(false);
1836
1836
  }, [onVisibleChange, props.visible]);
1837
+
1838
+ var matchTrigger = function matchTrigger(words) {
1839
+ return Array.isArray(trigger) ? trigger.includes(words) : trigger === words;
1840
+ };
1841
+
1837
1842
  Object(react__WEBPACK_IMPORTED_MODULE_19__["useEffect"])(function () {
1838
1843
  if (exist && visible) {
1839
1844
  var mouseleaveTimer;
@@ -1850,13 +1855,13 @@ function usePopper(locatorElement, popperElement, props) {
1850
1855
  Y = e.clientY;
1851
1856
  var inTriggerRect = X > left - 2 && X < right + 2 && Y > top - 2 && Y < bottom + 2;
1852
1857
  var inPopperRect = X > popperRect.left && X < popperRect.right && Y > popperRect.top && Y < popperRect.bottom;
1853
- var ableArea = evType === 'contextmenu' ? inPopperRect : inTriggerRect || inPopperRect;
1858
+ var ableArea = matchTrigger('contextMenu') ? inPopperRect : inTriggerRect || inPopperRect;
1854
1859
 
1855
1860
  if (ableArea) {
1856
1861
  mouseleaveTimer && clearTimeout(mouseleaveTimer);
1857
- evType === 'focus' && triggerNode.focus();
1862
+ matchTrigger('focus') && triggerNode.focus();
1858
1863
  } else {
1859
- evType === 'mouseenter' ? mouseleaveTimer = window.setTimeout(hidePopper, mouseLeaveDelay * 1000) : hidePopper();
1864
+ matchTrigger('hover') ? mouseleaveTimer = window.setTimeout(hidePopper, mouseLeaveDelay * 1000) : hidePopper();
1860
1865
  }
1861
1866
  };
1862
1867
 
@@ -1864,14 +1869,18 @@ function usePopper(locatorElement, popperElement, props) {
1864
1869
  leading: true
1865
1870
  });
1866
1871
  var mapEvent = {
1867
- mouseenter: 'mousemove',
1868
- mouseup: 'mousedown',
1872
+ hover: 'mousemove',
1873
+ click: 'mousedown',
1869
1874
  focus: 'mousedown',
1870
- contextmenu: 'mousedown'
1875
+ contextMenu: 'mousedown'
1871
1876
  };
1872
- document.addEventListener(mapEvent[evType], debounceHidePopper);
1877
+ Array.isArray(trigger) ? trigger.forEach(function (action) {
1878
+ return document.addEventListener(mapEvent[action], debounceHidePopper);
1879
+ }) : document.addEventListener(mapEvent[trigger], debounceHidePopper);
1873
1880
  return function () {
1874
- document.removeEventListener(mapEvent[evType], debounceHidePopper);
1881
+ Array.isArray(trigger) ? trigger.forEach(function (action) {
1882
+ return document.removeEventListener(mapEvent[action], debounceHidePopper);
1883
+ }) : document.removeEventListener(mapEvent[trigger], debounceHidePopper);
1875
1884
  };
1876
1885
  }
1877
1886
  }, [currentPlacement, evType, exist, getTriggerElement, hidePopper, locatorRef, mouseLeaveDelay, popperRef, visible]);
@@ -2220,12 +2229,12 @@ var Alert = function Alert(props) {
2220
2229
  };
2221
2230
 
2222
2231
  var iconNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_15___default.a.createElement("div", {
2223
- className: "".concat(alertPrefixCls, "-icon")
2232
+ className: classnames__WEBPACK_IMPORTED_MODULE_19___default()("".concat(alertPrefixCls, "-icon"), getAlertColorType('icon'))
2224
2233
  }, icon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_15___default.a.createElement(_index__WEBPACK_IMPORTED_MODULE_16__["Icon"], {
2225
2234
  type: alertIconType
2226
2235
  }));
2227
2236
  var AlertComp = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_15___default.a.createElement("div", _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
2228
- className: classnames__WEBPACK_IMPORTED_MODULE_19___default()(alertClasses, getAlertColorType('bg'), getAlertColorType('font'))
2237
+ className: classnames__WEBPACK_IMPORTED_MODULE_19___default()(alertClasses, getAlertColorType('bg'), getAlertColorType('border'))
2229
2238
  }, events, {
2230
2239
  ref: alertRef // style={
2231
2240
  // banner ? {
@@ -8081,7 +8090,8 @@ var compDefaultProps = {
8081
8090
  type: "arrow-right-solid"
8082
8091
  });
8083
8092
  },
8084
- estimatedItemSize: 32
8093
+ estimatedItemSize: 32,
8094
+ expandOnClickNode: true
8085
8095
  },
8086
8096
  TreeNode: {},
8087
8097
  ToolTip: {
@@ -34222,27 +34232,37 @@ __webpack_require__.r(__webpack_exports__);
34222
34232
  /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2__);
34223
34233
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/defineProperty.js");
34224
34234
  /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3__);
34225
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js");
34226
- /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_4__);
34227
- /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
34228
- /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_5__);
34229
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
34230
- /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_6__);
34231
- /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js");
34232
- /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_7__);
34233
- /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js");
34234
- /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_8__);
34235
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! react */ "react");
34236
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_9__);
34237
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
34238
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_10__);
34239
- /* harmony import */ var _config_provider_ConfigContext__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../config-provider/ConfigContext */ "./components/config-provider/ConfigContext.tsx");
34240
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ../_utils */ "./components/_utils/index.ts");
34241
- /* harmony import */ var _treeNode__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./treeNode */ "./components/tree/treeNode.tsx");
34242
- /* harmony import */ var _utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./utils/treeUtils */ "./components/tree/utils/treeUtils.tsx");
34243
- /* harmony import */ var _treeHooks__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./treeHooks */ "./components/tree/treeHooks.tsx");
34244
- /* harmony import */ var lodash_isBoolean__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! lodash/isBoolean */ "./node_modules/lodash/isBoolean.js");
34245
- /* harmony import */ var lodash_isBoolean__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(lodash_isBoolean__WEBPACK_IMPORTED_MODULE_16__);
34235
+ /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.array.iterator.js */ "./node_modules/core-js/modules/es.array.iterator.js");
34236
+ /* harmony import */ var core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_iterator_js__WEBPACK_IMPORTED_MODULE_4__);
34237
+ /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js");
34238
+ /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__);
34239
+ /* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.set.js */ "./node_modules/core-js/modules/es.set.js");
34240
+ /* harmony import */ var core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_set_js__WEBPACK_IMPORTED_MODULE_6__);
34241
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! core-js/modules/es.string.iterator.js */ "./node_modules/core-js/modules/es.string.iterator.js");
34242
+ /* harmony import */ var core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_iterator_js__WEBPACK_IMPORTED_MODULE_7__);
34243
+ /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! core-js/modules/web.dom-collections.iterator.js */ "./node_modules/core-js/modules/web.dom-collections.iterator.js");
34244
+ /* harmony import */ var core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_iterator_js__WEBPACK_IMPORTED_MODULE_8__);
34245
+ /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js");
34246
+ /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_9__);
34247
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js");
34248
+ /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_10__);
34249
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js");
34250
+ /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_11__);
34251
+ /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core-js/modules/es.array.map.js */ "./node_modules/core-js/modules/es.array.map.js");
34252
+ /* harmony import */ var core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_map_js__WEBPACK_IMPORTED_MODULE_12__);
34253
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! react */ "react");
34254
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_13__);
34255
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! classnames */ "./node_modules/classnames/index.js");
34256
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_14__);
34257
+ /* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! lodash/cloneDeep */ "./node_modules/lodash/cloneDeep.js");
34258
+ /* harmony import */ var lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_15__);
34259
+ /* harmony import */ var _config_provider_ConfigContext__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../config-provider/ConfigContext */ "./components/config-provider/ConfigContext.tsx");
34260
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../_utils */ "./components/_utils/index.ts");
34261
+ /* harmony import */ var _treeNode__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! ./treeNode */ "./components/tree/treeNode.tsx");
34262
+ /* harmony import */ var _utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! ./utils/treeUtils */ "./components/tree/utils/treeUtils.tsx");
34263
+ /* harmony import */ var _treeHooks__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./treeHooks */ "./components/tree/treeHooks.tsx");
34264
+ /* harmony import */ var lodash_isBoolean__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! lodash/isBoolean */ "./node_modules/lodash/isBoolean.js");
34265
+ /* harmony import */ var lodash_isBoolean__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(lodash_isBoolean__WEBPACK_IMPORTED_MODULE_21__);
34246
34266
 
34247
34267
 
34248
34268
 
@@ -34260,13 +34280,18 @@ __webpack_require__.r(__webpack_exports__);
34260
34280
 
34261
34281
 
34262
34282
 
34263
- var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.forwardRef(function (props, ref) {
34264
- var _useContext = Object(react__WEBPACK_IMPORTED_MODULE_9__["useContext"])(_config_provider_ConfigContext__WEBPACK_IMPORTED_MODULE_11__["default"]),
34283
+
34284
+
34285
+
34286
+
34287
+
34288
+ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_13___default.a.forwardRef(function (props, ref) {
34289
+ var _useContext = Object(react__WEBPACK_IMPORTED_MODULE_13__["useContext"])(_config_provider_ConfigContext__WEBPACK_IMPORTED_MODULE_16__["default"]),
34265
34290
  getPrefixCls = _useContext.getPrefixCls,
34266
34291
  prefixCls = _useContext.prefixCls,
34267
34292
  userDefaultProps = _useContext.compDefaultProps;
34268
34293
 
34269
- var TreeProps = Object(_utils__WEBPACK_IMPORTED_MODULE_12__["getCompProps"])('Tree', userDefaultProps, props); // 按钮属性需要合并一遍用户定义的默认属性
34294
+ var TreeProps = Object(_utils__WEBPACK_IMPORTED_MODULE_17__["getCompProps"])('Tree', userDefaultProps, props); // 按钮属性需要合并一遍用户定义的默认属性
34270
34295
 
34271
34296
  var customPrefixcls = TreeProps.prefixCls,
34272
34297
  treeData = TreeProps.treeData,
@@ -34309,91 +34334,103 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34309
34334
  innerEstimatedItemSize = TreeProps.estimatedItemSize,
34310
34335
  style = TreeProps.style,
34311
34336
  filterTreeNode = TreeProps.filterTreeNode,
34312
- filterValue = TreeProps.filterValue;
34337
+ filterValue = TreeProps.filterValue,
34338
+ expandOnClickNode = TreeProps.expandOnClickNode,
34339
+ loadData = TreeProps.loadData;
34313
34340
  var treePrefixCls = getPrefixCls(prefixCls, 'tree', customPrefixcls); // 树样式前缀
34314
34341
 
34315
34342
  var treeNodePrefixCls = getPrefixCls(prefixCls, 'tree-node', customPrefixcls); // 树节点样式前缀
34316
34343
 
34317
- var treeNodeClassName = classnames__WEBPACK_IMPORTED_MODULE_10___default()(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3___default()({}, "".concat(treePrefixCls), true));
34344
+ var treeNodeClassName = classnames__WEBPACK_IMPORTED_MODULE_14___default()(_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_3___default()({}, "".concat(treePrefixCls), true));
34318
34345
  var treeRootClassName = "".concat(treePrefixCls, "-root");
34319
34346
  var estimatedItemSize = innerEstimatedItemSize; // 节点高度
34320
34347
 
34321
- var _React$useMemo = react__WEBPACK_IMPORTED_MODULE_9___default.a.useMemo(function () {
34322
- return Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["flattenAll"])(treeData, []);
34348
+ var _React$useMemo = react__WEBPACK_IMPORTED_MODULE_13___default.a.useMemo(function () {
34349
+ return Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["flattenAll"])(treeData, []);
34323
34350
  }, [treeData]),
34324
34351
  flattenAllData = _React$useMemo.flattenAllData,
34325
34352
  maxLevel = _React$useMemo.maxLevel;
34326
34353
 
34327
- var _useChecked = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_15__["useChecked"])(checkStrictly, checkedKeysProps, defaultCheckedKeys, flattenAllData, maxLevel, checkable),
34354
+ var _useChecked = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_20__["useChecked"])(checkStrictly, checkedKeysProps, defaultCheckedKeys, flattenAllData, maxLevel, checkable),
34328
34355
  _useChecked2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_useChecked, 4),
34329
34356
  checkedKeys = _useChecked2[0],
34330
34357
  halfCheckedKeys = _useChecked2[1],
34331
34358
  setCheckedKeys = _useChecked2[2],
34332
34359
  setHalfCheckedKeys = _useChecked2[3];
34333
34360
 
34334
- var _React$useState = react__WEBPACK_IMPORTED_MODULE_9___default.a.useState(scrollToKey),
34361
+ var _React$useState = react__WEBPACK_IMPORTED_MODULE_13___default.a.useState(scrollToKey),
34335
34362
  _React$useState2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_React$useState, 2),
34336
34363
  scrollKey = _React$useState2[0],
34337
34364
  setScrollKey = _React$useState2[1];
34338
34365
 
34339
- var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_9___default.a.useState(0),
34366
+ var _React$useState3 = react__WEBPACK_IMPORTED_MODULE_13___default.a.useState(0),
34340
34367
  _React$useState4 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_React$useState3, 2),
34341
34368
  start = _React$useState4[0],
34342
34369
  setStart = _React$useState4[1];
34343
34370
 
34344
- var _useSelect = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_15__["useSelect"])(selectedKeysProps, defaultSelectedKeys),
34371
+ var _useSelect = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_20__["useSelect"])(selectedKeysProps, defaultSelectedKeys),
34345
34372
  _useSelect2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_useSelect, 2),
34346
34373
  selectedKeys = _useSelect2[0],
34347
34374
  setSelectedKeys = _useSelect2[1];
34348
34375
 
34349
- var listRef = react__WEBPACK_IMPORTED_MODULE_9___default.a.useRef(null);
34350
- var plantomRef = react__WEBPACK_IMPORTED_MODULE_9___default.a.useRef(null);
34351
- var rootRef = react__WEBPACK_IMPORTED_MODULE_9___default.a.useRef(null);
34376
+ var listRef = react__WEBPACK_IMPORTED_MODULE_13___default.a.useRef(null);
34377
+ var plantomRef = react__WEBPACK_IMPORTED_MODULE_13___default.a.useRef(null);
34378
+ var rootRef = react__WEBPACK_IMPORTED_MODULE_13___default.a.useRef(null);
34352
34379
  var scrollRef = ref || rootRef;
34353
- var treeNodeRef = react__WEBPACK_IMPORTED_MODULE_9___default.a.useRef(null);
34354
- var dragNodeRef = react__WEBPACK_IMPORTED_MODULE_9___default.a.useRef(null);
34355
- var delayedDragEnterRef = react__WEBPACK_IMPORTED_MODULE_9___default.a.useRef(null);
34380
+ var treeNodeRef = react__WEBPACK_IMPORTED_MODULE_13___default.a.useRef(null);
34381
+ var dragNodeRef = react__WEBPACK_IMPORTED_MODULE_13___default.a.useRef(null);
34382
+ var delayedDragEnterRef = react__WEBPACK_IMPORTED_MODULE_13___default.a.useRef(null);
34356
34383
 
34357
- var _React$useState5 = react__WEBPACK_IMPORTED_MODULE_9___default.a.useState(true),
34384
+ var _React$useState5 = react__WEBPACK_IMPORTED_MODULE_13___default.a.useState(true),
34358
34385
  _React$useState6 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_React$useState5, 2),
34359
34386
  isInit = _React$useState6[0],
34360
34387
  setIsInit = _React$useState6[1];
34361
34388
 
34362
- var _React$useState7 = react__WEBPACK_IMPORTED_MODULE_9___default.a.useState(null),
34389
+ var _React$useState7 = react__WEBPACK_IMPORTED_MODULE_13___default.a.useState(null),
34363
34390
  _React$useState8 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_React$useState7, 2),
34364
34391
  dropPosition = _React$useState8[0],
34365
34392
  setDropPosition = _React$useState8[1];
34366
34393
 
34367
- var _React$useState9 = react__WEBPACK_IMPORTED_MODULE_9___default.a.useState(null),
34394
+ var _React$useState9 = react__WEBPACK_IMPORTED_MODULE_13___default.a.useState(null),
34368
34395
  _React$useState10 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_React$useState9, 2),
34369
34396
  dragOverNodeKey = _React$useState10[0],
34370
34397
  setDragOverNodeKey = _React$useState10[1];
34371
34398
 
34372
- var isSearching = react__WEBPACK_IMPORTED_MODULE_9___default.a.useMemo(function () {
34399
+ var _React$useState11 = react__WEBPACK_IMPORTED_MODULE_13___default.a.useState(new Set()),
34400
+ _React$useState12 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_React$useState11, 2),
34401
+ loadedKeys = _React$useState12[0],
34402
+ setLoadedKeys = _React$useState12[1];
34403
+
34404
+ var _React$useState13 = react__WEBPACK_IMPORTED_MODULE_13___default.a.useState(new Set()),
34405
+ _React$useState14 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_React$useState13, 2),
34406
+ loadingKeys = _React$useState14[0],
34407
+ setLoadingKeys = _React$useState14[1];
34408
+
34409
+ var isSearching = react__WEBPACK_IMPORTED_MODULE_13___default.a.useMemo(function () {
34373
34410
  return typeof filterTreeNode === 'function' && filterValue;
34374
34411
  }, [filterValue]);
34375
34412
 
34376
- var _useExpand = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_15__["useExpand"])(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey, isInit, filterTreeNode, isSearching),
34413
+ var _useExpand = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_20__["useExpand"])(flattenAllData, expandedKeysProps, defaultExpandedKeys, defaultExpandAll, defaultExpandRoot, defaultExpandParent, scrollKey, isInit, filterTreeNode, isSearching),
34377
34414
  _useExpand2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_useExpand, 2),
34378
34415
  expandedKeys = _useExpand2[0],
34379
34416
  setExpandedKeys = _useExpand2[1];
34380
34417
 
34381
- var spreadAttrData = react__WEBPACK_IMPORTED_MODULE_9___default.a.useMemo(function () {
34382
- return Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getSpreadAttrData"])(flattenAllData, expandedKeys);
34418
+ var spreadAttrData = react__WEBPACK_IMPORTED_MODULE_13___default.a.useMemo(function () {
34419
+ return Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getSpreadAttrData"])(flattenAllData, expandedKeys);
34383
34420
  }, [flattenAllData, expandedKeys]);
34384
- var filterData = react__WEBPACK_IMPORTED_MODULE_9___default.a.useMemo(function () {
34385
- return Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getFilterData"])(spreadAttrData, filterTreeNode, isSearching);
34421
+ var filterData = react__WEBPACK_IMPORTED_MODULE_13___default.a.useMemo(function () {
34422
+ return Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getFilterData"])(spreadAttrData, filterTreeNode, isSearching);
34386
34423
  }, [spreadAttrData, isSearching]);
34387
34424
 
34388
- var _useViewportHeight = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_15__["useViewportHeight"])(height, listRef),
34425
+ var _useViewportHeight = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_20__["useViewportHeight"])(height, listRef),
34389
34426
  _useViewportHeight2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_useViewportHeight, 1),
34390
34427
  viewportHeight = _useViewportHeight2[0];
34391
34428
 
34392
- var _useVisibleDataMemo = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_15__["useVisibleDataMemo"])(virtual, filterData, viewportHeight, estimatedItemSize, start),
34429
+ var _useVisibleDataMemo = Object(_treeHooks__WEBPACK_IMPORTED_MODULE_20__["useVisibleDataMemo"])(virtual, filterData, viewportHeight, estimatedItemSize, start),
34393
34430
  _useVisibleDataMemo2 = _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_2___default()(_useVisibleDataMemo, 1),
34394
34431
  visibleData = _useVisibleDataMemo2[0];
34395
34432
 
34396
- var index = react__WEBPACK_IMPORTED_MODULE_9___default.a.useMemo(function () {
34433
+ var index = react__WEBPACK_IMPORTED_MODULE_13___default.a.useMemo(function () {
34397
34434
  var scrollIndex = 0;
34398
34435
 
34399
34436
  for (var i = 0; i < filterData.length; i++) {
@@ -34405,9 +34442,9 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34405
34442
 
34406
34443
  return scrollIndex;
34407
34444
  }, [filterData, scrollKey]);
34408
- Object(_treeHooks__WEBPACK_IMPORTED_MODULE_15__["useScrollToKey"])(scrollKey, index, estimatedItemSize, scrollRef, viewportHeight, treeNodePrefixCls);
34409
- Object(_treeHooks__WEBPACK_IMPORTED_MODULE_15__["usePlantomHeightEffect"])(plantomRef, filterData, estimatedItemSize);
34410
- var handleScroll = Object(react__WEBPACK_IMPORTED_MODULE_9__["useCallback"])(function () {
34445
+ Object(_treeHooks__WEBPACK_IMPORTED_MODULE_20__["useScrollToKey"])(scrollKey, index, estimatedItemSize, scrollRef, viewportHeight, treeNodePrefixCls);
34446
+ Object(_treeHooks__WEBPACK_IMPORTED_MODULE_20__["usePlantomHeightEffect"])(plantomRef, filterData, estimatedItemSize);
34447
+ var handleScroll = Object(react__WEBPACK_IMPORTED_MODULE_13__["useCallback"])(function () {
34411
34448
  if (!virtual) return;
34412
34449
  var scrollTop = scrollRef.current.scrollTop;
34413
34450
  setStart(Math.floor(scrollTop / estimatedItemSize));
@@ -34417,18 +34454,53 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34417
34454
  listRef.current.style.transform = "translate3d(0,".concat(tempStartOffset, "px,0)");
34418
34455
  }
34419
34456
  }, [listRef, scrollRef, virtual, estimatedItemSize]);
34420
- var handleExpand = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (key, value, node) {
34421
- var newExpandedKeys = value ? Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["addKeys"])(expandedKeys, [key]) : Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["delKey"])(expandedKeys, [key]);
34457
+ var handleNodeLoad = Object(react__WEBPACK_IMPORTED_MODULE_13__["useCallback"])(function (loadedKeys, loadingKeys, data) {
34458
+ var key = data.key;
34459
+
34460
+ if (!loadData || loadedKeys.has(key) || loadingKeys.has(key)) {
34461
+ return;
34462
+ }
34463
+
34464
+ setLoadingKeys(function (prevLoadingKeys) {
34465
+ return new Set([].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1___default()(prevLoadingKeys), [key]));
34466
+ });
34467
+ loadData(data).then(function () {
34468
+ setLoadedKeys(function (prevState) {
34469
+ return new Set([].concat(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1___default()(prevState), [key]));
34470
+ });
34471
+ setLoadingKeys(function (prevState) {
34472
+ var prevLoadingKeys = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_15___default()(prevState);
34473
+ prevLoadingKeys.delete(key);
34474
+ return prevLoadingKeys;
34475
+ });
34476
+ }).catch(function (e) {
34477
+ setLoadingKeys(function (prevState) {
34478
+ var prevLoadingKeys = lodash_cloneDeep__WEBPACK_IMPORTED_MODULE_15___default()(prevState);
34479
+ prevLoadingKeys.delete(key);
34480
+ return prevLoadingKeys;
34481
+ });
34482
+ setExpandedKeys(function (preExpandedKeys) {
34483
+ return Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["delKey"])(_babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1___default()(preExpandedKeys), [key]);
34484
+ });
34485
+ throw e;
34486
+ });
34487
+ }, [loadData, setExpandedKeys]);
34488
+ var handleExpand = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (key, expanded, node) {
34489
+ var newExpandedKeys = expanded ? Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["addKeys"])(expandedKeys, [key]) : Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["delKey"])(expandedKeys, [key]);
34422
34490
  onExpand && onExpand(newExpandedKeys, {
34423
34491
  node: node,
34424
- expanded: value
34492
+ expanded: expanded
34425
34493
  });
34426
34494
  setScrollKey('');
34427
34495
  setIsInit(false);
34428
- }, [expandedKeys, onExpand]);
34429
- var handleCheck = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (key, value, node, event, pos) {
34430
- var newCheckedKeys = value ? Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["addKeys"])(checkedKeys, [key]) : Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["delKey"])(checkedKeys, [key]);
34431
- var checkState = checkStrictly ? Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getDataCheckededStateStrictly"])(newCheckedKeys) : Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getDataCheckededState"])(spreadAttrData, newCheckedKeys, halfCheckedKeys, maxLevel, false, pos, value);
34496
+
34497
+ if (expanded && loadData) {
34498
+ handleNodeLoad(loadedKeys, loadingKeys, node);
34499
+ }
34500
+ }, [expandedKeys, onExpand, loadData, handleNodeLoad, loadedKeys, loadingKeys]);
34501
+ var handleCheck = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (key, value, node, event, pos) {
34502
+ var newCheckedKeys = value ? Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["addKeys"])(checkedKeys, [key]) : Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["delKey"])(checkedKeys, [key]);
34503
+ var checkState = checkStrictly ? Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getDataCheckededStateStrictly"])(newCheckedKeys) : Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getDataCheckededState"])(spreadAttrData, newCheckedKeys, halfCheckedKeys, maxLevel, false, pos, value);
34432
34504
  onCheck && onCheck(checkState.checkedKeys, {
34433
34505
  event: event,
34434
34506
  node: node,
@@ -34436,14 +34508,14 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34436
34508
  halfCheckedKeys: checkState.halfCheckedKeys
34437
34509
  });
34438
34510
  }, [checkedKeys, spreadAttrData, halfCheckedKeys, maxLevel, onCheck, checkStrictly, setCheckedKeys, setHalfCheckedKeys]);
34439
- var handleDragStart = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (event, node) {
34511
+ var handleDragStart = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (event, node) {
34440
34512
  onDragStart && onDragStart({
34441
34513
  event: event,
34442
34514
  node: node
34443
34515
  });
34444
34516
  }, [onDragStart]);
34445
- var handleDragOver = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (event, node, dropTarget) {
34446
- var dropPos = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["calcDropPosition"])(event, dropTarget);
34517
+ var handleDragOver = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (event, node, dropTarget) {
34518
+ var dropPos = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["calcDropPosition"])(event, dropTarget);
34447
34519
  setDropPosition(dropPos);
34448
34520
  var dragNode = getDragNode();
34449
34521
 
@@ -34456,13 +34528,13 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34456
34528
  node: node
34457
34529
  });
34458
34530
  }, [onDragOver]);
34459
- var handleDragLeave = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (event, node) {
34531
+ var handleDragLeave = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (event, node) {
34460
34532
  onDragLeave && onDragLeave({
34461
34533
  event: event,
34462
34534
  node: node
34463
34535
  });
34464
34536
  }, [onDragLeave]);
34465
- var handleDragEnter = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (event, node, dropTarget) {
34537
+ var handleDragEnter = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (event, node, dropTarget) {
34466
34538
  var key = node.key,
34467
34539
  pos = node.pos;
34468
34540
  var dragNode = getDragNode();
@@ -34480,14 +34552,14 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34480
34552
  });
34481
34553
 
34482
34554
  if ((dragNode === null || dragNode === void 0 ? void 0 : dragNode.key) !== key) {
34483
- var dragPos = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["calcDropPosition"])(event, dropTarget);
34555
+ var dragPos = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["calcDropPosition"])(event, dropTarget);
34484
34556
  setDragOverNodeKey(key);
34485
34557
  setDropPosition(dragPos);
34486
34558
  delayedDragEnterRef.current[pos] = setTimeout(function () {
34487
34559
  var newExpandedKeys = _babel_runtime_helpers_toConsumableArray__WEBPACK_IMPORTED_MODULE_1___default()(expandedKeys);
34488
34560
 
34489
34561
  if (!node.expand) {
34490
- newExpandedKeys = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["addKeys"])(expandedKeys, [key]);
34562
+ newExpandedKeys = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["addKeys"])(expandedKeys, [key]);
34491
34563
  }
34492
34564
 
34493
34565
  if (!('expandedKeys' in TreeProps)) {
@@ -34506,16 +34578,16 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34506
34578
  node: node
34507
34579
  });
34508
34580
  }, [TreeProps, expandedKeys, onDragEnter, onExpand, setExpandedKeys]);
34509
- var handleDragEnd = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (event, node) {
34581
+ var handleDragEnd = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (event, node) {
34510
34582
  setDragOverNodeKey('');
34511
34583
  onDragEnd && onDragEnd({
34512
34584
  event: event,
34513
34585
  node: node
34514
34586
  });
34515
34587
  }, [onDragEnd]);
34516
- var handleDrop = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (event, node, dragNode, dragNodesKeys) {
34517
- var pos = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getPos"])(flattenAllData, dragNodesKeys);
34518
- var keys = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getAllChildKeys"])(flattenAllData, pos).concat(dragNodesKeys);
34588
+ var handleDrop = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (event, node, dragNode, dragNodesKeys) {
34589
+ var pos = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getPos"])(flattenAllData, dragNodesKeys);
34590
+ var keys = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getAllChildKeys"])(flattenAllData, pos).concat(dragNodesKeys);
34519
34591
  onDrop && onDrop({
34520
34592
  event: event,
34521
34593
  node: node,
@@ -34524,8 +34596,8 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34524
34596
  dropPosition: dropPosition
34525
34597
  });
34526
34598
  }, [flattenAllData, onDrop, dropPosition]);
34527
- var handleSelect = react__WEBPACK_IMPORTED_MODULE_9___default.a.useCallback(function (event, node, key) {
34528
- var checked = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getChecked"])(checkedKeys, key);
34599
+ var handleSelect = react__WEBPACK_IMPORTED_MODULE_13___default.a.useCallback(function (event, node, key) {
34600
+ var checked = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getChecked"])(checkedKeys, key);
34529
34601
  onSelect && onSelect([key], {
34530
34602
  node: node,
34531
34603
  event: event,
@@ -34534,7 +34606,7 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34534
34606
  }, [onSelect, setSelectedKeys, checkedKeys]);
34535
34607
 
34536
34608
  var getSelectable = function getSelectable(selectable) {
34537
- if (lodash_isBoolean__WEBPACK_IMPORTED_MODULE_16___default()(selectable)) {
34609
+ if (lodash_isBoolean__WEBPACK_IMPORTED_MODULE_21___default()(selectable)) {
34538
34610
  return selectable;
34539
34611
  }
34540
34612
 
@@ -34542,11 +34614,11 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34542
34614
  };
34543
34615
 
34544
34616
  var getCheckable = function getCheckable(checkableProps, itemCheckable) {
34545
- return lodash_isBoolean__WEBPACK_IMPORTED_MODULE_16___default()(itemCheckable) ? itemCheckable : checkableProps;
34617
+ return lodash_isBoolean__WEBPACK_IMPORTED_MODULE_21___default()(itemCheckable) ? itemCheckable : checkableProps;
34546
34618
  };
34547
34619
 
34548
34620
  var getDisabled = function getDisabled(disabledProps, itemDisabled) {
34549
- return lodash_isBoolean__WEBPACK_IMPORTED_MODULE_16___default()(itemDisabled) ? itemDisabled : disabledProps;
34621
+ return lodash_isBoolean__WEBPACK_IMPORTED_MODULE_21___default()(itemDisabled) ? itemDisabled : disabledProps;
34550
34622
  };
34551
34623
 
34552
34624
  var getDragNode = function getDragNode() {
@@ -34557,7 +34629,7 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34557
34629
  dragNodeRef.current = nodeData;
34558
34630
  };
34559
34631
 
34560
- Object(react__WEBPACK_IMPORTED_MODULE_9__["useEffect"])(function () {
34632
+ Object(react__WEBPACK_IMPORTED_MODULE_13__["useEffect"])(function () {
34561
34633
  if (scrollToKey) {
34562
34634
  setSelectedKeys([scrollToKey]);
34563
34635
  setScrollKey(scrollToKey);
@@ -34565,24 +34637,23 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34565
34637
  setSelectedKeys([]);
34566
34638
  }
34567
34639
  }, [scrollToKey]);
34568
- Object(react__WEBPACK_IMPORTED_MODULE_9__["useEffect"])(function () {
34640
+ Object(react__WEBPACK_IMPORTED_MODULE_13__["useEffect"])(function () {
34569
34641
  setHalfCheckedKeys(halfCheckedKeys);
34570
34642
  }, [halfCheckedKeys]);
34571
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement("div", {
34643
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_13___default.a.createElement("div", {
34572
34644
  className: treeNodeClassName,
34573
34645
  style: style,
34574
34646
  ref: scrollRef,
34575
34647
  onScroll: handleScroll
34576
- }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement("div", {
34648
+ }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_13___default.a.createElement("div", {
34577
34649
  ref: plantomRef,
34578
34650
  className: "".concat(treePrefixCls, "-plantom")
34579
- }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement("div", {
34651
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_13___default.a.createElement("div", {
34580
34652
  className: treeRootClassName,
34581
34653
  ref: listRef
34582
34654
  }, visibleData && visibleData.map(function (item) {
34583
- // const props: any = {}
34584
- var checked = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getChecked"])(checkedKeys, item.key);
34585
- var indeterminate = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getHalfChecked"])(halfCheckedKeys, item.key);
34655
+ var checked = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getChecked"])(checkedKeys, item.key);
34656
+ var indeterminate = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getHalfChecked"])(halfCheckedKeys, item.key);
34586
34657
  item.nodeKey = item.key;
34587
34658
  item.onExpand = handleExpand;
34588
34659
  item.onCheck = handleCheck;
@@ -34594,9 +34665,8 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34594
34665
  item.onDrop = handleDrop;
34595
34666
  item.onSelect = handleSelect;
34596
34667
  item.checked = checked;
34597
- item.selected = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_14__["getSelected"])(selectedKeys, item.key);
34598
- item.indeterminate = indeterminate; // item.showLine = showLine
34599
-
34668
+ item.selected = Object(_utils_treeUtils__WEBPACK_IMPORTED_MODULE_19__["getSelected"])(selectedKeys, item.key);
34669
+ item.indeterminate = indeterminate;
34600
34670
  item.disabled = getDisabled(disabled, item.disabled);
34601
34671
  item.showIcon = showIcon || false;
34602
34672
  item.checkable = getCheckable(checkable, item.checkable); // 哪个优先
@@ -34611,7 +34681,10 @@ var InternalTree = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.for
34611
34681
  item.getDragNode = getDragNode;
34612
34682
  item.setDragNode = setDragNode;
34613
34683
  item.dragOver = dragOverNodeKey === item.key && dropPosition === 0;
34614
- return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(_treeNode__WEBPACK_IMPORTED_MODULE_13__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, item, {
34684
+ item.expandOnClickNode = expandOnClickNode;
34685
+ item.loading = loadingKeys.has(item.key) && !loadedKeys.has(item.key);
34686
+ item.loadData = loadData;
34687
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_13___default.a.createElement(_treeNode__WEBPACK_IMPORTED_MODULE_18__["default"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({}, item, {
34615
34688
  key: item.key,
34616
34689
  ref: treeNodeRef
34617
34690
  }));
@@ -34760,7 +34833,6 @@ var useScrollToKey = function useScrollToKey(scrollKey, index, estimatedItemSize
34760
34833
  }
34761
34834
 
34762
34835
  if (treeRoot && treeNode) {
34763
- // const treeRootScrollTop = treeRoot.scrollTop
34764
34836
  var treeRootRect = treeRoot.getBoundingClientRect();
34765
34837
  var treeNodeRect = treeNode.getBoundingClientRect();
34766
34838
 
@@ -34831,6 +34903,7 @@ __webpack_require__.r(__webpack_exports__);
34831
34903
  /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ../_utils */ "./components/_utils/index.ts");
34832
34904
  /* harmony import */ var _checkbox__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! ./../checkbox */ "./components/checkbox/index.tsx");
34833
34905
  /* harmony import */ var _icon__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! ../icon */ "./components/icon/index.tsx");
34906
+ /* harmony import */ var _spin__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ../spin */ "./components/spin/index.tsx");
34834
34907
 
34835
34908
 
34836
34909
 
@@ -34841,7 +34914,7 @@ __webpack_require__.r(__webpack_exports__);
34841
34914
 
34842
34915
 
34843
34916
 
34844
- var _excluded = ["nodeKey", "prefixCls", "selectable", "checkable", "className", "icon", "switcherIcon", "disabled", "draggable", "pos", "checked", "level", "getDragNode", "hasChildNode", "expand", "title", "showLine", "showIcon", "selected", "setDragNode", "style", "indeterminate", "estimatedItemSize", "dragOver", "onExpand", "onCheck", "onDragStart", "onDragOver", "onDragLeave", "onDragEnter", "onDragEnd", "onDrop", "onSelect"];
34917
+ var _excluded = ["nodeKey", "prefixCls", "selectable", "checkable", "className", "icon", "switcherIcon", "disabled", "draggable", "pos", "checked", "level", "getDragNode", "hasChildNode", "expand", "title", "showLine", "showIcon", "selected", "setDragNode", "style", "indeterminate", "estimatedItemSize", "dragOver", "expandOnClickNode", "loading", "onExpand", "onCheck", "onDragStart", "onDragOver", "onDragLeave", "onDragEnter", "onDragEnd", "onDrop", "onSelect"];
34845
34918
 
34846
34919
 
34847
34920
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
@@ -34854,6 +34927,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
34854
34927
 
34855
34928
 
34856
34929
 
34930
+
34857
34931
  var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwardRef(function (props, ref) {
34858
34932
  var _useContext = Object(react__WEBPACK_IMPORTED_MODULE_11__["useContext"])(_config_provider_ConfigContext__WEBPACK_IMPORTED_MODULE_13__["default"]),
34859
34933
  getPrefixCls = _useContext.getPrefixCls,
@@ -34886,6 +34960,8 @@ var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwar
34886
34960
  indeterminate = TreeNodeProps.indeterminate,
34887
34961
  estimatedItemSize = TreeNodeProps.estimatedItemSize,
34888
34962
  dragOver = TreeNodeProps.dragOver,
34963
+ expandOnClickNode = TreeNodeProps.expandOnClickNode,
34964
+ loading = TreeNodeProps.loading,
34889
34965
  onExpand = TreeNodeProps.onExpand,
34890
34966
  onCheck = TreeNodeProps.onCheck,
34891
34967
  onDragStart = TreeNodeProps.onDragStart,
@@ -34913,7 +34989,6 @@ var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwar
34913
34989
  indeterminate: indeterminate,
34914
34990
  icon: icon,
34915
34991
  switcherIcon: switcherIcon,
34916
- // showLine,
34917
34992
  showIcon: showIcon,
34918
34993
  selected: selected
34919
34994
  }, others);
@@ -34995,57 +35070,46 @@ var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwar
34995
35070
  }
34996
35071
 
34997
35072
  return indentArr;
34998
- }; // line的两种模式, 图标被替换和图标不被替换
35073
+ };
35074
+
35075
+ var isLeaf = Object(react__WEBPACK_IMPORTED_MODULE_11__["useCallback"])(function () {
35076
+ var isLeaf = TreeNodeProps.isLeaf,
35077
+ loadData = TreeNodeProps.loadData,
35078
+ hasChildNode = TreeNodeProps.hasChildNode;
35079
+
35080
+ if (isLeaf === false) {
35081
+ return false;
35082
+ }
34999
35083
 
35084
+ return isLeaf || !loadData && !hasChildNode;
35085
+ }, [TreeNodeProps]); // line的两种模式, 图标被替换和图标不被替换
35000
35086
 
35001
35087
  var renderExpandIcon = function renderExpandIcon() {
35002
- // todo 图标被替换则 line样式改变
35003
- // if(switcherIcon){
35004
- // }
35005
- if (hasChildNode) {
35006
- var _classNames2;
35007
-
35008
- // todo showLine模式 使用+ -符号图标
35009
- // if(!!showLine){
35010
- // return (
35011
- // <span
35012
- // onClick={handleClick}
35013
- // className={classNames(`${treeNodePrefixCls}-icon`)}
35014
- // >
35015
- // {expand ? <Icon type='search' /> : <Icon type='add' />}
35016
- // </span>
35017
- // )
35018
- // }
35088
+ if (loading) {
35089
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement(_spin__WEBPACK_IMPORTED_MODULE_17__["default"], {
35090
+ type: "component"
35091
+ });
35092
+ }
35093
+
35094
+ var showExpandIcon = !isLeaf();
35095
+
35096
+ if (showExpandIcon) {
35097
+ var _classNames3;
35098
+
35019
35099
  if (Array.isArray(switcherIcon) && switcherIcon.length === 2) {
35020
35100
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement("span", {
35021
- className: classnames__WEBPACK_IMPORTED_MODULE_12___default()("".concat(treeNodePrefixCls, "-icon"))
35101
+ className: classnames__WEBPACK_IMPORTED_MODULE_12___default()("".concat(treeNodePrefixCls, "-icon"), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-icon-hover"), !expandOnClickNode)),
35102
+ onClick: expandOnClickNode ? undefined : handleExpandIconClick
35022
35103
  }, expandState ? renderIcon(switcherIcon[1]) : renderIcon(switcherIcon[0]));
35023
35104
  }
35024
35105
 
35025
35106
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement("span", {
35026
- className: classnames__WEBPACK_IMPORTED_MODULE_12___default()("".concat(treeNodePrefixCls, "-icon"), (_classNames2 = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames2, "".concat(treeNodePrefixCls, "-animation-expand"), expandState), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames2, "".concat(treeNodePrefixCls, "-animation-collapse"), !expandState), _classNames2))
35107
+ className: classnames__WEBPACK_IMPORTED_MODULE_12___default()("".concat(treeNodePrefixCls, "-icon"), (_classNames3 = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames3, "".concat(treeNodePrefixCls, "-animation-expand"), expandState), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames3, "".concat(treeNodePrefixCls, "-animation-collapse"), !expandState), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames3, "".concat(treeNodePrefixCls, "-icon-hover"), !expandOnClickNode), _classNames3)),
35108
+ onClick: expandOnClickNode ? undefined : handleExpandIconClick
35027
35109
  }, renderIcon(switcherIcon || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement(_icon__WEBPACK_IMPORTED_MODULE_16__["default"], {
35028
35110
  type: "arrow-right-solid"
35029
35111
  })));
35030
35112
  } else {
35031
- // if(typeof showLine === 'object' && !showLine.showLeafIcon){
35032
- // return (
35033
- // <span
35034
- // className={classNames(`${treeNodePrefixCls}-icon-hidden`)}
35035
- // >
35036
- // {/* todo renderLeafLine() */}
35037
- // {renderIcon(leafIcon)}
35038
- // </span>
35039
- // )
35040
- // }else if(typeof showLine === 'object' && showLine.showLeafIcon || showLine === true){
35041
- // return (
35042
- // <span
35043
- // className={classNames(`${treeNodePrefixCls}-leaf-icon`)}
35044
- // >
35045
- // {renderIcon(leafIcon)}
35046
- // </span>
35047
- // )
35048
- // }
35049
35113
  // 叶子结点 隐藏展开按钮
35050
35114
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement("span", {
35051
35115
  className: "".concat(treeNodePrefixCls, "-icon-hidden")
@@ -35060,11 +35124,11 @@ var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwar
35060
35124
  };
35061
35125
 
35062
35126
  var renderNode = function renderNode() {
35063
- var _classNames3;
35127
+ var _classNames4, _classNames5;
35064
35128
 
35065
35129
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement(react__WEBPACK_IMPORTED_MODULE_11___default.a.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement("div", {
35066
35130
  draggable: draggable && !disabled,
35067
- className: classnames__WEBPACK_IMPORTED_MODULE_12___default()((_classNames3 = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames3, "".concat(treeNodePrefixCls, "-draggabled"), true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames3, "".concat(treeNodePrefixCls, "-root"), true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames3, "".concat(treeNodePrefixCls, "-fb-children-pointerEvents"), forbiddenChildrenPointerEvents), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames3, "".concat(treeNodePrefixCls, "-drag-over"), dragOver), _classNames3)),
35131
+ className: classnames__WEBPACK_IMPORTED_MODULE_12___default()((_classNames4 = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames4, "".concat(treeNodePrefixCls, "-draggabled"), true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames4, "".concat(treeNodePrefixCls, "-root"), true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames4, "".concat(treeNodePrefixCls, "-fb-children-pointerEvents"), forbiddenChildrenPointerEvents), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames4, "".concat(treeNodePrefixCls, "-drag-over"), dragOver), _classNames4)),
35068
35132
  onDragStart: handleDragStart,
35069
35133
  onDragEnd: handleDragEnd,
35070
35134
  onDragOver: handleDragOver,
@@ -35073,7 +35137,8 @@ var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwar
35073
35137
  onDrop: handleDrop,
35074
35138
  ref: dragRef
35075
35139
  }, indent(), renderExpandIcon(), showIcon && renderNodeIcon(), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement("div", {
35076
- className: "".concat(treeNodePrefixCls, "-title-wrap")
35140
+ className: classnames__WEBPACK_IMPORTED_MODULE_12___default()((_classNames5 = {}, _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames5, "".concat(treeNodePrefixCls, "-title-wrap"), true), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames5, "".concat(treeNodePrefixCls, "-title-wrap-hover"), !expandOnClickNode && !disabled), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()(_classNames5, "".concat(treeNodePrefixCls, "-title-wrap-selected"), selected && selectable && !disabled && !expandOnClickNode), _classNames5)),
35141
+ onClick: expandOnClickNode ? undefined : handleClick
35077
35142
  }, checkable ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement(_checkbox__WEBPACK_IMPORTED_MODULE_15__["default"], {
35078
35143
  onChange: handleOnchange,
35079
35144
  checked: checked,
@@ -35100,12 +35165,16 @@ var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwar
35100
35165
  selectNode: handleSelect
35101
35166
  };
35102
35167
  });
35103
- var handleClick = react__WEBPACK_IMPORTED_MODULE_11___default.a.useCallback(function (e) {
35104
- e.stopPropagation();
35168
+ var handleExpandIconClick = Object(react__WEBPACK_IMPORTED_MODULE_11__["useCallback"])(function (e) {
35169
+ e === null || e === void 0 ? void 0 : e.stopPropagation();
35105
35170
  setExpandState(!expandState);
35106
35171
  onExpand && onExpand(nodeKey, !expandState, nodeData);
35172
+ }, [expandState, nodeData, nodeKey, onExpand, setExpandState]);
35173
+ var handleClick = react__WEBPACK_IMPORTED_MODULE_11___default.a.useCallback(function (e) {
35174
+ e.stopPropagation();
35175
+ expandOnClickNode && handleExpandIconClick();
35107
35176
  handleSelect(e);
35108
- }, [setExpandState, expandState, onExpand, nodeKey, nodeData, handleSelect]);
35177
+ }, [expandOnClickNode, handleExpandIconClick, handleSelect]);
35109
35178
  var handleDragStart = react__WEBPACK_IMPORTED_MODULE_11___default.a.useCallback(function (e) {
35110
35179
  if (!draggable) return;
35111
35180
  setDragNode(nodeData);
@@ -35154,11 +35223,11 @@ var TreeNode = /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.forwar
35154
35223
  }
35155
35224
  }, [onDrop, nodeData, nodeKey]);
35156
35225
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_11___default.a.createElement("div", {
35157
- className: classnames__WEBPACK_IMPORTED_MODULE_12___default()("".concat(treeNodePrefixCls, "-item"), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-item-hover"), !disabled && selectable), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-selected"), selected && selectable && !disabled), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-disabled"), disabled), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-opened"), expandState), "".concat(treeNodePrefixCls, "-item-").concat(nodeKey), className),
35226
+ className: classnames__WEBPACK_IMPORTED_MODULE_12___default()("".concat(treeNodePrefixCls, "-item"), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-item-hover"), !disabled && selectable && expandOnClickNode), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-selected"), selected && selectable && !disabled && expandOnClickNode), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-disabled"), disabled), _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_8___default()({}, "".concat(treeNodePrefixCls, "-opened"), expandState), "".concat(treeNodePrefixCls, "-item-").concat(nodeKey), className),
35158
35227
  style: _objectSpread({
35159
35228
  height: "".concat(estimatedItemSize, "px")
35160
35229
  }, style),
35161
- onClick: handleClick
35230
+ onClick: expandOnClickNode ? handleClick : undefined
35162
35231
  }, renderNode());
35163
35232
  });
35164
35233
  TreeNode.displayName = 'TreeNode';
@@ -35302,7 +35371,7 @@ var flattenAll = function flattenAll(treeData) {
35302
35371
 
35303
35372
  var _pos = pos ? "".concat(pos, "-").concat(index) : "".concat(index);
35304
35373
 
35305
- var hasChildNode = children && children instanceof Array && children.length > 0;
35374
+ var hasChildNode = item.isLeaf ? false : children && children instanceof Array && children.length > 0;
35306
35375
 
35307
35376
  var flattenNode = _objectSpread({
35308
35377
  title: title,
@@ -35321,7 +35390,7 @@ var flattenAll = function flattenAll(treeData) {
35321
35390
  }
35322
35391
 
35323
35392
  _level++;
35324
- fn(children, newTreeData, _level, _pos, flattenNode);
35393
+ hasChildNode && fn(children, newTreeData, _level, _pos, flattenNode);
35325
35394
  });
35326
35395
  return newTreeData;
35327
35396
  };