@kdcloudjs/table 1.2.0-canary.15 → 1.2.0-canary.16-hotfix

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 (233) hide show
  1. package/dist/@kdcloudjs/table.css +1 -1
  2. package/dist/@kdcloudjs/table.js +2051 -3489
  3. package/dist/@kdcloudjs/table.js.map +1 -1
  4. package/dist/@kdcloudjs/table.min.css +1 -1
  5. package/dist/@kdcloudjs/table.min.js +16 -16
  6. package/dist/@kdcloudjs/table.min.js.map +1 -1
  7. package/es/_utils/arrayUtil.js +0 -3
  8. package/es/_utils/devwarning.js +0 -1
  9. package/es/_utils/formatUtil.js +35 -96
  10. package/es/_utils/hooks.js +18 -42
  11. package/es/_utils/index.js +0 -2
  12. package/es/_utils/numberUtil.js +32 -55
  13. package/es/_utils/omit.js +0 -2
  14. package/es/_utils/type.js +0 -2
  15. package/es/_utils/usePopper.js +74 -137
  16. package/es/config-provider/compDefaultProps.js +0 -1
  17. package/es/config-provider/configProvider.js +2 -7
  18. package/es/config-provider/defaultConfig.js +0 -1
  19. package/es/index.js +0 -2
  20. package/es/locale/locale.js +5 -43
  21. package/es/table/base/calculations.js +22 -72
  22. package/es/table/base/colgroup.js +0 -1
  23. package/es/table/base/empty.js +4 -4
  24. package/es/table/base/header.js +14 -67
  25. package/es/table/base/helpers/SpanManager.js +3 -9
  26. package/es/table/base/helpers/TableDOMUtils.js +4 -27
  27. package/es/table/base/helpers/__test__/SpanManager.test.js +2 -2
  28. package/es/table/base/helpers/__test__/TableDOMUtils.test.js +0 -1
  29. package/es/table/base/helpers/getRichVisibleRectsStream.js +11 -44
  30. package/es/table/base/helpers/rowHeightManager.js +0 -28
  31. package/es/table/base/html-table.js +14 -35
  32. package/es/table/base/loading.js +6 -8
  33. package/es/table/base/renderTemplates.js +26 -44
  34. package/es/table/base/styles.js +1 -10
  35. package/es/table/base/table.js +96 -179
  36. package/es/table/base/utils.js +14 -54
  37. package/es/table/common-views.js +0 -7
  38. package/es/table/internals.js +0 -13
  39. package/es/table/pipeline/features/autoFill.js +11 -40
  40. package/es/table/pipeline/features/autoRowSpan.js +1 -14
  41. package/es/table/pipeline/features/colGroupExtendable.js +4 -19
  42. package/es/table/pipeline/features/columnDrag.d.ts +1 -0
  43. package/es/table/pipeline/features/columnDrag.js +236 -303
  44. package/es/table/pipeline/features/columnFilter.js +11 -48
  45. package/es/table/pipeline/features/columnHover.js +1 -7
  46. package/es/table/pipeline/features/columnRangeHover.js +1 -8
  47. package/es/table/pipeline/features/columnResizeWidth.js +51 -42
  48. package/es/table/pipeline/features/contextMenu.js +18 -89
  49. package/es/table/pipeline/features/filter/DefaultFilterContent.js +10 -25
  50. package/es/table/pipeline/features/filter/DefaultFilterIcon.js +1 -1
  51. package/es/table/pipeline/features/filter/Filter.js +25 -48
  52. package/es/table/pipeline/features/filter/FilterPanel.js +11 -25
  53. package/es/table/pipeline/features/filter/util.js +0 -4
  54. package/es/table/pipeline/features/footerDataSource.js +0 -3
  55. package/es/table/pipeline/features/mergeCellHover.js +0 -1
  56. package/es/table/pipeline/features/multiSelect.js +15 -57
  57. package/es/table/pipeline/features/rangeSelection.js +65 -143
  58. package/es/table/pipeline/features/rowDetail.js +2 -41
  59. package/es/table/pipeline/features/rowDrag.js +36 -71
  60. package/es/table/pipeline/features/rowGrouping.js +2 -35
  61. package/es/table/pipeline/features/singleSelect.js +0 -24
  62. package/es/table/pipeline/features/sort.js +31 -83
  63. package/es/table/pipeline/features/tips.js +0 -6
  64. package/es/table/pipeline/features/treeMode.js +9 -44
  65. package/es/table/pipeline/features/treeSelect.js +0 -26
  66. package/es/table/pipeline/features/utils/touchEventUtils.d.ts +15 -0
  67. package/es/table/pipeline/features/utils/touchEventUtils.js +65 -0
  68. package/es/table/pipeline/pipeline.js +11 -51
  69. package/es/table/pivot/cross-table/buildCrossTable.js +15 -64
  70. package/es/table/pivot/cross-table/cross-table.js +22 -28
  71. package/es/table/pivot/cross-tree-table/buildCrossTreeTable.js +14 -47
  72. package/es/table/pivot/cross-tree-table/cross-tree-table.js +28 -50
  73. package/es/table/pivot/pivot-utils/buildDrillTree.js +10 -23
  74. package/es/table/pivot/pivot-utils/builders.js +31 -71
  75. package/es/table/pivot/pivot-utils/convert-utils.js +13 -39
  76. package/es/table/pivot/pivot-utils/simpleEncode.js +0 -1
  77. package/es/table/transforms/autoRowSpan.js +1 -15
  78. package/es/table/transforms/autoWidth.js +10 -32
  79. package/es/table/transforms/buildTree.js +1 -2
  80. package/es/table/transforms/columnHover.js +9 -15
  81. package/es/table/transforms/columnRangeHover.js +12 -19
  82. package/es/table/transforms/columnResize.js +15 -37
  83. package/es/table/transforms/flatten.js +0 -3
  84. package/es/table/transforms/orderField.js +0 -3
  85. package/es/table/transforms/sort.js +36 -88
  86. package/es/table/transforms/tips.js +1 -6
  87. package/es/table/transforms/treeMode.js +30 -69
  88. package/es/table/transforms/visible.js +0 -2
  89. package/es/table/use/useResizeObserver.js +1 -4
  90. package/es/table/utils/applyTransforms.js +0 -1
  91. package/es/table/utils/buildTree.js +4 -19
  92. package/es/table/utils/collectNodes.js +1 -10
  93. package/es/table/utils/console.js +0 -14
  94. package/es/table/utils/copyToClipboard.js +0 -4
  95. package/es/table/utils/element.js +14 -41
  96. package/es/table/utils/exportTableAsExcel.js +4 -40
  97. package/es/table/utils/getTreeDepth.js +1 -9
  98. package/es/table/utils/groupBy.js +1 -10
  99. package/es/table/utils/layeredFilter.js +0 -4
  100. package/es/table/utils/layeredSort.js +0 -5
  101. package/es/table/utils/makeRecursiveMapper.js +1 -12
  102. package/es/table/utils/mergeCellProps.js +6 -13
  103. package/es/table/utils/others.js +3 -16
  104. package/es/table/utils/proto.js +2 -30
  105. package/es/table/utils/smartCompare.js +4 -12
  106. package/es/table/utils/traverseColumn.js +2 -15
  107. package/es/table/utils/tree-data-helpers/StrictTreeDataHelper.js +1 -22
  108. package/es/table/utils/tree-data-helpers/TreeDataHelper.js +15 -69
  109. package/lib/_utils/arrayUtil.js +0 -5
  110. package/lib/_utils/devwarning.js +0 -5
  111. package/lib/_utils/formatUtil.js +35 -100
  112. package/lib/_utils/hooks.js +18 -53
  113. package/lib/_utils/index.js +0 -6
  114. package/lib/_utils/numberUtil.js +32 -63
  115. package/lib/_utils/omit.js +0 -5
  116. package/lib/_utils/react-children.js +0 -5
  117. package/lib/_utils/type.js +0 -6
  118. package/lib/_utils/usePopper.js +74 -158
  119. package/lib/config-provider/ConfigContext.js +1 -4
  120. package/lib/config-provider/compDefaultProps.js +0 -1
  121. package/lib/config-provider/configProvider.js +3 -18
  122. package/lib/config-provider/defaultConfig.js +0 -5
  123. package/lib/config-provider/index.js +0 -6
  124. package/lib/index.js +2 -8
  125. package/lib/locale/index.js +0 -7
  126. package/lib/locale/locale.js +5 -57
  127. package/lib/table/base/calculations.js +22 -83
  128. package/lib/table/base/colgroup.js +0 -5
  129. package/lib/table/base/empty.js +4 -16
  130. package/lib/table/base/header.js +14 -77
  131. package/lib/table/base/helpers/SpanManager.js +3 -11
  132. package/lib/table/base/helpers/TableDOMUtils.js +2 -27
  133. package/lib/table/base/helpers/__test__/SpanManager.test.js +2 -4
  134. package/lib/table/base/helpers/__test__/TableDOMUtils.test.js +0 -5
  135. package/lib/table/base/helpers/__test__/rowHeightManager.test.js +0 -1
  136. package/lib/table/base/helpers/getRichVisibleRectsStream.js +11 -62
  137. package/lib/table/base/helpers/rowHeightManager.js +0 -33
  138. package/lib/table/base/html-table.js +14 -45
  139. package/lib/table/base/index.js +0 -2
  140. package/lib/table/base/loading.js +6 -12
  141. package/lib/table/base/renderTemplates.js +27 -58
  142. package/lib/table/base/styles.js +1 -22
  143. package/lib/table/base/table.js +96 -212
  144. package/lib/table/base/utils.js +14 -89
  145. package/lib/table/common-views.js +0 -16
  146. package/lib/table/index.js +0 -13
  147. package/lib/table/internals.js +0 -14
  148. package/lib/table/pipeline/features/autoFill.js +11 -47
  149. package/lib/table/pipeline/features/autoRowSpan.js +1 -19
  150. package/lib/table/pipeline/features/buildTree.js +0 -2
  151. package/lib/table/pipeline/features/colGroupExtendable.js +4 -32
  152. package/lib/table/pipeline/features/columnDrag.d.ts +1 -0
  153. package/lib/table/pipeline/features/columnDrag.js +236 -309
  154. package/lib/table/pipeline/features/columnFilter.js +11 -62
  155. package/lib/table/pipeline/features/columnHover.js +1 -11
  156. package/lib/table/pipeline/features/columnRangeHover.js +1 -13
  157. package/lib/table/pipeline/features/columnResizeWidth.js +51 -58
  158. package/lib/table/pipeline/features/contextMenu.js +18 -113
  159. package/lib/table/pipeline/features/filter/DefaultFilterContent.js +10 -43
  160. package/lib/table/pipeline/features/filter/DefaultFilterIcon.js +1 -4
  161. package/lib/table/pipeline/features/filter/Filter.js +25 -70
  162. package/lib/table/pipeline/features/filter/FilterPanel.js +11 -40
  163. package/lib/table/pipeline/features/filter/index.js +0 -5
  164. package/lib/table/pipeline/features/filter/util.js +0 -7
  165. package/lib/table/pipeline/features/footerDataSource.js +0 -10
  166. package/lib/table/pipeline/features/index.js +0 -23
  167. package/lib/table/pipeline/features/mergeCellHover.js +0 -5
  168. package/lib/table/pipeline/features/multiSelect.js +15 -71
  169. package/lib/table/pipeline/features/rangeSelection.js +65 -160
  170. package/lib/table/pipeline/features/rowDetail.js +2 -65
  171. package/lib/table/pipeline/features/rowDrag.js +36 -81
  172. package/lib/table/pipeline/features/rowGrouping.js +2 -55
  173. package/lib/table/pipeline/features/singleSelect.js +0 -34
  174. package/lib/table/pipeline/features/sort.js +31 -103
  175. package/lib/table/pipeline/features/tips.js +0 -15
  176. package/lib/table/pipeline/features/treeMode.js +9 -65
  177. package/lib/table/pipeline/features/treeSelect.js +0 -34
  178. package/lib/table/pipeline/features/utils/touchEventUtils.d.ts +15 -0
  179. package/lib/table/pipeline/features/utils/touchEventUtils.js +76 -0
  180. package/lib/table/pipeline/index.js +0 -8
  181. package/lib/table/pipeline/pipeline.js +11 -60
  182. package/lib/table/pivot/cross-table/buildCrossTable.js +15 -75
  183. package/lib/table/pivot/cross-table/cross-table.js +22 -36
  184. package/lib/table/pivot/cross-table/index.js +0 -4
  185. package/lib/table/pivot/cross-tree-table/buildCrossTreeTable.js +14 -60
  186. package/lib/table/pivot/cross-tree-table/cross-tree-table.js +28 -60
  187. package/lib/table/pivot/cross-tree-table/index.js +0 -3
  188. package/lib/table/pivot/pivot-utils/buildDrillTree.js +10 -29
  189. package/lib/table/pivot/pivot-utils/builders.js +31 -82
  190. package/lib/table/pivot/pivot-utils/convert-utils.js +13 -57
  191. package/lib/table/pivot/pivot-utils/index.js +0 -7
  192. package/lib/table/pivot/pivot-utils/simpleEncode.js +0 -2
  193. package/lib/table/style/css.js +0 -1
  194. package/lib/table/style/index.js +0 -1
  195. package/lib/table/transforms/autoRowSpan.js +1 -21
  196. package/lib/table/transforms/autoWidth.js +10 -53
  197. package/lib/table/transforms/buildTree.js +1 -4
  198. package/lib/table/transforms/columnHover.js +9 -22
  199. package/lib/table/transforms/columnRangeHover.js +12 -27
  200. package/lib/table/transforms/columnResize.js +15 -56
  201. package/lib/table/transforms/flatten.js +0 -5
  202. package/lib/table/transforms/index.js +0 -12
  203. package/lib/table/transforms/orderField.js +0 -7
  204. package/lib/table/transforms/sort.js +36 -112
  205. package/lib/table/transforms/tips.js +1 -16
  206. package/lib/table/transforms/treeMode.js +30 -96
  207. package/lib/table/transforms/visible.js +0 -7
  208. package/lib/table/transforms/warnTransformsDeprecated.js +0 -4
  209. package/lib/table/use/useResizeObserver.js +1 -8
  210. package/lib/table/utils/applyTransforms.js +0 -2
  211. package/lib/table/utils/buildTree.js +4 -30
  212. package/lib/table/utils/collectNodes.js +1 -15
  213. package/lib/table/utils/console.js +0 -16
  214. package/lib/table/utils/copyToClipboard.js +0 -6
  215. package/lib/table/utils/element.js +14 -46
  216. package/lib/table/utils/exportTableAsExcel.js +4 -49
  217. package/lib/table/utils/getTreeDepth.js +1 -14
  218. package/lib/table/utils/groupBy.js +1 -14
  219. package/lib/table/utils/index.js +0 -21
  220. package/lib/table/utils/isGroupColumn.js +0 -3
  221. package/lib/table/utils/isLeafNode.js +0 -1
  222. package/lib/table/utils/layeredFilter.js +0 -10
  223. package/lib/table/utils/layeredSort.js +0 -10
  224. package/lib/table/utils/makeRecursiveMapper.js +1 -21
  225. package/lib/table/utils/mergeCellProps.js +6 -17
  226. package/lib/table/utils/others.js +3 -31
  227. package/lib/table/utils/proto.js +2 -33
  228. package/lib/table/utils/selectColumn.js +0 -1
  229. package/lib/table/utils/smartCompare.js +4 -13
  230. package/lib/table/utils/traverseColumn.js +2 -22
  231. package/lib/table/utils/tree-data-helpers/StrictTreeDataHelper.js +1 -30
  232. package/lib/table/utils/tree-data-helpers/TreeDataHelper.js +15 -82
  233. package/package.json +2 -1
@@ -5,13 +5,9 @@ import _getIteratorMethod from "@babel/runtime-corejs3/core-js/get-iterator-meth
5
5
  import _extends from "@babel/runtime-corejs3/helpers/extends";
6
6
  import _createClass from "@babel/runtime-corejs3/helpers/createClass";
7
7
  import _classCallCheck from "@babel/runtime-corejs3/helpers/classCallCheck";
8
-
9
8
  function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && _getIteratorMethod(o) || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
10
-
11
9
  function _unsupportedIterableToArray(o, minLen) { var _context3; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty(_context3 = Object.prototype.toString.call(o)).call(_context3, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
-
13
10
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
14
-
15
11
  import _Set from "@babel/runtime-corejs3/core-js-stable/set";
16
12
  import _Map from "@babel/runtime-corejs3/core-js-stable/map";
17
13
  import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
@@ -19,30 +15,22 @@ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/insta
19
15
  import isLeafNode from '../isLeafNode';
20
16
  import { arrayUtils } from '../others';
21
17
  import console from '../console';
22
-
23
18
  var Wrapper = /*#__PURE__*/_createClass(function Wrapper(input) {
24
19
  _classCallCheck(this, Wrapper);
25
-
26
20
  _extends(this, input);
27
21
  });
28
-
29
22
  var TreeDataHelper = /*#__PURE__*/function () {
30
23
  function TreeDataHelper(opts) {
31
24
  var _this = this;
32
-
33
25
  _classCallCheck(this, TreeDataHelper);
34
-
35
26
  this.isDetached = function (node) {
36
27
  var _a, _b, _c;
37
-
38
28
  return (_c = (_b = (_a = _this.opts).isDetached) === null || _b === void 0 ? void 0 : _b.call(_a, node)) !== null && _c !== void 0 ? _c : false;
39
29
  };
40
-
41
30
  this.opts = opts;
42
31
  this.valueSet = new _Set(opts.value);
43
32
  this.initWrapperTree();
44
33
  }
45
-
46
34
  _createClass(TreeDataHelper, [{
47
35
  key: "value",
48
36
  get: function get() {
@@ -59,33 +47,27 @@ var TreeDataHelper = /*#__PURE__*/function () {
59
47
  this.wrapperMap = new _Map();
60
48
  var getNodeValue = this.opts.getNodeValue;
61
49
  var isDetached = this.isDetached,
62
- wrapperMap = this.wrapperMap;
50
+ wrapperMap = this.wrapperMap;
63
51
  dfs(this.rootWrapper, this.opts.tree, false);
64
-
65
52
  function dfs(parentWrapper, nodes, inheritParentChecked) {
66
53
  // allChildrenChecked 先默认设置为 true
67
54
  // dfs 过程中可能会更新 allChildrenChecked
68
55
  parentWrapper.allChildrenChecked = true;
69
-
70
56
  if (process.env.NODE_ENV !== 'production') {
71
57
  if (nodes.every(isDetached)) {
72
58
  console.warn('TreeDataHelper 检测到部分节点的下所有子节点均为 detached 状态,这将导致该节点变为「无效节点」', parentWrapper.node);
73
59
  }
74
60
  }
75
-
76
61
  var _iterator = _createForOfIteratorHelper(nodes),
77
- _step;
78
-
62
+ _step;
79
63
  try {
80
64
  for (_iterator.s(); !(_step = _iterator.n()).done;) {
81
65
  var node = _step.value;
82
66
  var detached = isDetached(node);
83
67
  var exactChecked = valueSet.has(getNodeValue(node));
84
-
85
68
  if (exactChecked && !detached) {
86
69
  parentWrapper.anyDescendentsChecked = true;
87
70
  }
88
-
89
71
  var parentChecked = !detached && inheritParentChecked;
90
72
  var checked = exactChecked || parentChecked;
91
73
  var wrapper = new Wrapper({
@@ -99,25 +81,20 @@ var TreeDataHelper = /*#__PURE__*/function () {
99
81
  });
100
82
  wrapperMap.set(getNodeValue(node), wrapper);
101
83
  parentWrapper.children.push(wrapper);
102
-
103
84
  if (!isLeafNode(node)) {
104
85
  wrapper.children = [];
105
86
  dfs(wrapper, node.children, checked);
106
-
107
87
  if (wrapper.anyDescendentsChecked && !detached) {
108
88
  parentWrapper.anyDescendentsChecked = true;
109
89
  }
110
-
111
90
  if (wrapper.allChildrenChecked) {
112
- wrapper.checked = true; // 当一个节点因为「子节点被全选」而变为 checked 时,我们需要更新子节点的 parentChecked 字段
113
-
91
+ wrapper.checked = true;
92
+ // 当一个节点因为「子节点被全选」而变为 checked 时,我们需要更新子节点的 parentChecked 字段
114
93
  var _iterator2 = _createForOfIteratorHelper(wrapper.children),
115
- _step2;
116
-
94
+ _step2;
117
95
  try {
118
96
  for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
119
97
  var child = _step2.value;
120
-
121
98
  if (!child.detached) {
122
99
  child.parentChecked = true;
123
100
  }
@@ -129,7 +106,6 @@ var TreeDataHelper = /*#__PURE__*/function () {
129
106
  }
130
107
  }
131
108
  }
132
-
133
109
  if (!wrapper.checked && !detached) {
134
110
  parentWrapper.allChildrenChecked = false;
135
111
  }
@@ -159,7 +135,6 @@ var TreeDataHelper = /*#__PURE__*/function () {
159
135
  if (this.isChecked(nodeValue)) {
160
136
  return this.getCleanValue();
161
137
  }
162
-
163
138
  var nextValue = arrayUtils.merge(this.value, [nodeValue]);
164
139
  return new TreeDataHelper(_extends(_extends({}, this.opts), {
165
140
  value: nextValue
@@ -169,11 +144,9 @@ var TreeDataHelper = /*#__PURE__*/function () {
169
144
  key: "getValueAfterUncheck",
170
145
  value: function getValueAfterUncheck(nodeValue) {
171
146
  var _context;
172
-
173
147
  if (!this.isChecked(nodeValue)) {
174
148
  return this.getCleanValue();
175
149
  }
176
-
177
150
  var wrapper = this.wrapperMap.get(nodeValue);
178
151
  var getNodeValue = this.opts.getNodeValue;
179
152
  var appendArray = getAppendArray(wrapper);
@@ -182,23 +155,18 @@ var TreeDataHelper = /*#__PURE__*/function () {
182
155
  return new TreeDataHelper(_extends(_extends({}, this.opts), {
183
156
  value: nextValue
184
157
  })).getCleanValue();
185
-
186
158
  function getAppendArray(startWrapper) {
187
159
  var result = [];
188
160
  var current = startWrapper;
189
-
190
161
  while (current.parentChecked && !current.detached) {
191
162
  var _iterator3 = _createForOfIteratorHelper(current.parent.children),
192
- _step3;
193
-
163
+ _step3;
194
164
  try {
195
165
  for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
196
166
  var sibling = _step3.value;
197
-
198
167
  if (sibling === current || sibling.exactChecked || sibling.detached) {
199
168
  continue;
200
169
  }
201
-
202
170
  result.push(getNodeValue(sibling.node));
203
171
  }
204
172
  } catch (err) {
@@ -206,45 +174,34 @@ var TreeDataHelper = /*#__PURE__*/function () {
206
174
  } finally {
207
175
  _iterator3.f();
208
176
  }
209
-
210
177
  current = current.parent;
211
178
  }
212
-
213
179
  return result;
214
180
  }
215
-
216
181
  function getRemoveSet(startWrapper) {
217
182
  var result = new _Set();
218
- var wrapper = startWrapper; // 不断向上收集选中的父节点
219
-
183
+ var wrapper = startWrapper;
184
+ // 不断向上收集选中的父节点
220
185
  while (true) {
221
186
  result.add(getNodeValue(wrapper.node));
222
-
223
187
  if (wrapper.detached || !wrapper.parentChecked) {
224
188
  break;
225
189
  }
226
-
227
190
  wrapper = wrapper.parent;
228
191
  }
229
-
230
192
  function dfs(wrappers) {
231
193
  if (wrappers == null) {
232
194
  return;
233
195
  }
234
-
235
196
  var _iterator4 = _createForOfIteratorHelper(wrappers),
236
- _step4;
237
-
197
+ _step4;
238
198
  try {
239
199
  for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
240
200
  var _wrapper = _step4.value;
241
-
242
201
  if (_wrapper.detached || !_wrapper.checked) {
243
202
  continue;
244
203
  }
245
-
246
204
  result.add(getNodeValue(_wrapper.node));
247
-
248
205
  if (!isLeafNode(_wrapper) && _wrapper.anyDescendentsChecked) {
249
206
  dfs(_wrapper.children);
250
207
  }
@@ -254,9 +211,8 @@ var TreeDataHelper = /*#__PURE__*/function () {
254
211
  } finally {
255
212
  _iterator4.f();
256
213
  }
257
- } // 收集所有的子孙节点
258
-
259
-
214
+ }
215
+ // 收集所有的子孙节点
260
216
  dfs(startWrapper.children);
261
217
  return result;
262
218
  }
@@ -274,34 +230,27 @@ var TreeDataHelper = /*#__PURE__*/function () {
274
230
  key: "getNode",
275
231
  value: function getNode(nodeValue) {
276
232
  var _a;
277
-
278
233
  return (_a = this.wrapperMap.get(nodeValue)) === null || _a === void 0 ? void 0 : _a.node;
279
234
  }
280
235
  }, {
281
236
  key: "getCleanValue",
282
237
  value: function getCleanValue() {
283
238
  var _context2,
284
- _this2 = this;
285
-
239
+ _this2 = this;
286
240
  var _this$opts = this.opts,
287
- checkedStrategy = _this$opts.checkedStrategy,
288
- getNodeValue = _this$opts.getNodeValue;
289
-
241
+ checkedStrategy = _this$opts.checkedStrategy,
242
+ getNodeValue = _this$opts.getNodeValue;
290
243
  var result = _filterInstanceProperty(_context2 = this.value).call(_context2, function (nodeValue) {
291
244
  return !_this2.wrapperMap.has(nodeValue);
292
245
  });
293
-
294
246
  dfs(this.rootWrapper.children);
295
247
  return result;
296
-
297
248
  function dfs(wrappers) {
298
249
  var _iterator5 = _createForOfIteratorHelper(wrappers),
299
- _step5;
300
-
250
+ _step5;
301
251
  try {
302
252
  for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
303
253
  var wrapper = _step5.value;
304
-
305
254
  if (wrapper.checked) {
306
255
  if (checkedStrategy === 'all') {
307
256
  result.push(getNodeValue(wrapper.node));
@@ -316,7 +265,6 @@ var TreeDataHelper = /*#__PURE__*/function () {
316
265
  }
317
266
  }
318
267
  }
319
-
320
268
  if (!isLeafNode(wrapper)) {
321
269
  dfs(wrapper.children);
322
270
  }
@@ -329,8 +277,6 @@ var TreeDataHelper = /*#__PURE__*/function () {
329
277
  }
330
278
  }
331
279
  }]);
332
-
333
280
  return TreeDataHelper;
334
281
  }();
335
-
336
282
  export { TreeDataHelper as default };
@@ -4,23 +4,18 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.isArrayValueRepeat = void 0;
7
-
8
7
  /**
9
8
  * 检查数组value的值是否唯一
10
9
  * @param value 需要检查值是否唯一的数组
11
10
  */
12
11
  var isArrayValueRepeat = function isArrayValueRepeat(value) {
13
12
  var hash = {};
14
-
15
13
  for (var i in value) {
16
14
  if (hash[value[i]]) {
17
15
  return true;
18
16
  }
19
-
20
17
  hash[value[i]] = true;
21
18
  }
22
-
23
19
  return false;
24
20
  };
25
-
26
21
  exports.isArrayValueRepeat = isArrayValueRepeat;
@@ -1,20 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = _default;
9
-
10
8
  var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
11
-
12
9
  var warned = {};
13
-
14
10
  function _default(valid, component, message) {
15
11
  if (process.env.NODE_ENV !== 'production' && valid && !warned[message]) {
16
12
  var _context;
17
-
18
13
  warned[message] = true;
19
14
  console.warn((0, _concat.default)(_context = "Warning: [kd-ui]-".concat(component, ": ")).call(_context, message));
20
15
  }
@@ -1,38 +1,27 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.formatEditNumber = formatEditNumber;
9
8
  exports.formatNumber = formatNumber;
10
-
11
9
  var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
12
-
13
10
  var _parseFloat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/number/parse-float"));
14
-
15
11
  var _isNan = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/number/is-nan"));
16
-
17
12
  var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
18
-
19
13
  var _slice = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/slice"));
20
-
21
14
  var _numberUtil = require("./numberUtil");
22
-
23
15
  var __rest = void 0 && (void 0).__rest || function (s, e) {
24
16
  var t = {};
25
-
26
17
  for (var p in s) {
27
18
  if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
28
19
  }
29
-
30
20
  if (s != null && typeof _getOwnPropertySymbols.default === "function") for (var i = 0, p = (0, _getOwnPropertySymbols.default)(s); i < p.length; i++) {
31
21
  if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
32
22
  }
33
23
  return t;
34
24
  };
35
-
36
25
  /**
37
26
  * [数值类型格式化]
38
27
  * @param {[type]} num [待格式化的数字]
@@ -57,17 +46,15 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
57
46
  */
58
47
  function formatNumber(num, formatParams) {
59
48
  var _context;
60
-
61
49
  var _formatParams$mask = formatParams.mask,
62
- mask = _formatParams$mask === void 0 ? '' : _formatParams$mask,
63
- _formatParams$zeroSho = formatParams.zeroShow,
64
- zeroShow = _formatParams$zeroSho === void 0 ? false : _formatParams$zeroSho,
65
- decimalLength = formatParams.decimalLength,
66
- _formatParams$showDec = formatParams.showDecimalTailZero,
67
- showDecimalTailZero = _formatParams$showDec === void 0 ? false : _formatParams$showDec,
68
- isRound = formatParams.isRound,
69
- param = __rest(formatParams, ["mask", "zeroShow", "decimalLength", "showDecimalTailZero", "isRound"]);
70
-
50
+ mask = _formatParams$mask === void 0 ? '' : _formatParams$mask,
51
+ _formatParams$zeroSho = formatParams.zeroShow,
52
+ zeroShow = _formatParams$zeroSho === void 0 ? false : _formatParams$zeroSho,
53
+ decimalLength = formatParams.decimalLength,
54
+ _formatParams$showDec = formatParams.showDecimalTailZero,
55
+ showDecimalTailZero = _formatParams$showDec === void 0 ? false : _formatParams$showDec,
56
+ isRound = formatParams.isRound,
57
+ param = __rest(formatParams, ["mask", "zeroShow", "decimalLength", "showDecimalTailZero", "isRound"]);
71
58
  if (decimalLength !== undefined && (decimalLength < 0 || decimalLength > 100)) return num + '';
72
59
  if (num === undefined || num === null) num = '';
73
60
  var numInfo = {
@@ -75,38 +62,31 @@ function formatNumber(num, formatParams) {
75
62
  intStr: '',
76
63
  decimalStr: ''
77
64
  };
78
-
79
65
  if (typeof num === 'number') {
80
66
  numInfo.numStr = num + '';
81
67
  } else {
82
68
  numInfo.numStr = num.replace(/,/g, '');
83
-
84
69
  if ((0, _numberUtil.isExp)(numInfo.numStr)) {
85
70
  numInfo.numStr = (0, _numberUtil.exponentToFloat)(numInfo.numStr);
86
71
  }
87
72
  }
88
-
89
- var floatNum = (0, _parseFloat.default)(numInfo.numStr); // 非纯数字不处理,直接返回''
73
+ var floatNum = (0, _parseFloat.default)(numInfo.numStr);
74
+ // 非纯数字不处理,直接返回''
90
75
  // if (Number.isNaN(floatNum)) return ''
91
-
92
76
  if ((0, _isNan.default)(Number(num))) {
93
77
  // throw new Error('toFixed() number argument must be a valid number')
94
78
  return num + '';
95
- } // 为零不显示,且等于零,直接返回''
96
-
97
-
79
+ }
80
+ // 为零不显示,且等于零,直接返回''
98
81
  if (!zeroShow && Number(num) === 0) return '';
99
82
  var maskInfo = analyzMask(mask);
100
83
  if (maskInfo.errorMask) return numInfo.numStr;
101
84
  var isIncludePercent = (0, _includes.default)(_context = numInfo.numStr).call(_context, '%');
102
-
103
85
  if (maskInfo.percent) {
104
86
  if (!isIncludePercent) {
105
87
  var _context2;
106
-
107
88
  var point = numInfo.numStr.indexOf('.');
108
89
  var length = numInfo.numStr.length;
109
-
110
90
  if (point < 0) {
111
91
  numInfo.numStr = numInfo.numStr + '00';
112
92
  } else if (point === length - 1) {
@@ -116,28 +96,22 @@ function formatNumber(num, formatParams) {
116
96
  } else {
117
97
  var numStr = numInfo.numStr.replace('.', '');
118
98
  numInfo.numStr = numStr.substring(0, point + 2) + '.' + numStr.substring(point + 2);
119
- } // 去掉数字前面的零
120
-
121
-
99
+ }
100
+ // 去掉数字前面的零
122
101
  numInfo.numStr = numInfo.numStr.replace(/^0+/, '');
123
102
  if (numInfo.numStr === '.') numInfo.numStr = '0';
124
-
125
103
  if ((0, _includes.default)(_context2 = numInfo.numStr).call(_context2, '-')) {
126
104
  // 负数的情况 去掉前面的0
127
105
  numInfo.numStr = numInfo.numStr.replace('-', '');
128
106
  numInfo.numStr = numInfo.numStr.replace(/^0+/, '');
129
107
  numInfo.numStr = '-' + numInfo.numStr;
130
108
  }
131
-
132
109
  floatNum = floatNum * 100;
133
110
  }
134
111
  }
135
-
136
112
  var isNegativeNumber = floatNum < 0; // 是否是负数
137
-
138
113
  if (isNegativeNumber) {
139
114
  var _context3;
140
-
141
115
  floatNum = Math.abs(floatNum);
142
116
  numInfo.numStr = (0, _slice.default)(_context3 = numInfo.numStr).call(_context3, 1); // 去除第一个负号
143
117
  }
@@ -145,34 +119,28 @@ function formatNumber(num, formatParams) {
145
119
  var numStrArr = numInfo.numStr.split('.');
146
120
  numInfo.intStr = numStrArr[0];
147
121
  numInfo.decimalStr = numStrArr[1] || '';
148
-
149
122
  if (!showDecimalTailZero) {
150
123
  numInfo = cutTailZero(numInfo);
151
- } // 小数部分处理。暂时不考虑其他。只校验位数和尾数补零问题,整数
152
-
153
-
124
+ }
125
+ // 小数部分处理。暂时不考虑其他。只校验位数和尾数补零问题,整数
154
126
  if (decimalLength !== undefined && decimalLength >= 0) {
155
127
  // floatNum = Number.parseFloat(numInfo.numStr) // 当整数位数大于16位时,parseFloat会丢掉末尾的值,有问题!!!
156
128
  numInfo.numStr = (0, _numberUtil.toFixed)(numInfo.numStr, decimalLength, isRound);
157
- numStrArr = numInfo.numStr.split('.'); // 去除整数部分多余的 0
158
-
129
+ numStrArr = numInfo.numStr.split('.');
130
+ // 去除整数部分多余的 0
159
131
  var intStr = numStrArr[0].replace(/^0+/, '');
160
132
  numInfo.intStr = intStr === '' ? '0' : intStr;
161
133
  numInfo.decimalStr = numStrArr[1] || '';
162
-
163
134
  if (!showDecimalTailZero) {
164
135
  numInfo = cutTailZero(numInfo);
165
136
  }
166
- } // 整数部分格式化
167
-
168
-
137
+ }
138
+ // 整数部分格式化
169
139
  var formatValue = intFormatMask(maskInfo.intMask, numInfo.intStr);
170
140
  var currencySign = maskInfo.currencySign ? '$' : '';
171
-
172
141
  if (param.symbol) {
173
142
  currencySign = param.symbol;
174
143
  }
175
-
176
144
  return currencySign + (isNegativeNumber ? '-' : '') + (formatValue || numInfo.intStr || '0') + (numInfo.decimalStr.length > 0 ? '.' : '') + numInfo.decimalStr + (maskInfo.percent ? '%' : '');
177
145
  }
178
146
  /**
@@ -181,17 +149,15 @@ function formatNumber(num, formatParams) {
181
149
  * @param {*} num
182
150
  * @param {*} param
183
151
  */
184
-
185
-
186
152
  function formatEditNumber(num, _ref) {
187
153
  var _ref$zeroShow = _ref.zeroShow,
188
- zeroShow = _ref$zeroShow === void 0 ? false : _ref$zeroShow,
189
- decimalLength = _ref.decimalLength,
190
- _ref$showDecimalTailZ = _ref.showDecimalTailZero,
191
- showDecimalTailZero = _ref$showDecimalTailZ === void 0 ? false : _ref$showDecimalTailZ,
192
- _ref$roundMethod = _ref.roundMethod,
193
- roundMethod = _ref$roundMethod === void 0 ? '0' : _ref$roundMethod,
194
- symbol = _ref.symbol;
154
+ zeroShow = _ref$zeroShow === void 0 ? false : _ref$zeroShow,
155
+ decimalLength = _ref.decimalLength,
156
+ _ref$showDecimalTailZ = _ref.showDecimalTailZero,
157
+ showDecimalTailZero = _ref$showDecimalTailZ === void 0 ? false : _ref$showDecimalTailZ,
158
+ _ref$roundMethod = _ref.roundMethod,
159
+ roundMethod = _ref$roundMethod === void 0 ? '0' : _ref$roundMethod,
160
+ symbol = _ref.symbol;
195
161
  // 如果精度超过100,直接返回数值
196
162
  if (decimalLength && (decimalLength < 0 || decimalLength > 100)) return num + '';
197
163
  if (num === undefined || num === null) num = '';
@@ -200,31 +166,25 @@ function formatEditNumber(num, _ref) {
200
166
  intStr: '',
201
167
  decimalStr: ''
202
168
  };
203
-
204
169
  if (typeof num === 'number') {
205
170
  numInfo.numStr = num + '';
206
171
  } else {
207
172
  numInfo.numStr = num.replace(/,/g, '');
208
-
209
173
  if ((0, _numberUtil.isExp)(numInfo.numStr)) {
210
174
  numInfo.numStr = (0, _numberUtil.exponentToFloat)(numInfo.numStr);
211
175
  }
212
-
213
176
  if (symbol && numInfo.numStr.indexOf(symbol) === 0) {
214
177
  numInfo.numStr = numInfo.numStr.replace(symbol, '');
215
178
  }
216
179
  }
217
-
218
- var floatNum = (0, _parseFloat.default)(numInfo.numStr); // 非纯数字不处理,直接返回''
219
-
220
- if ((0, _isNan.default)(floatNum)) return ''; // 为零不显示,且等于零,直接返回''
221
-
180
+ var floatNum = (0, _parseFloat.default)(numInfo.numStr);
181
+ // 非纯数字不处理,直接返回''
182
+ if ((0, _isNan.default)(floatNum)) return '';
183
+ // 为零不显示,且等于零,直接返回''
222
184
  if (!zeroShow && floatNum === 0) return '';
223
185
  var isNegativeNumber = floatNum < 0; // 是否是负数
224
-
225
186
  if (isNegativeNumber) {
226
187
  var _context4;
227
-
228
188
  floatNum = Math.abs(floatNum);
229
189
  numInfo.numStr = (0, _slice.default)(_context4 = numInfo.numStr).call(_context4, 1); // 去除第一个负号
230
190
  }
@@ -232,29 +192,23 @@ function formatEditNumber(num, _ref) {
232
192
  var numStrArr = numInfo.numStr.split('.');
233
193
  numInfo.intStr = numStrArr[0];
234
194
  numInfo.decimalStr = numStrArr[1] || '';
235
-
236
195
  if (!showDecimalTailZero) {
237
196
  numInfo = cutTailZero(numInfo);
238
- } // 小数部分处理。暂时不考虑其他。只校验位数和尾数补零问题,整数
239
-
240
-
197
+ }
198
+ // 小数部分处理。暂时不考虑其他。只校验位数和尾数补零问题,整数
241
199
  if (decimalLength != null && decimalLength >= 0) {
242
200
  // floatNum = Number.parseFloat(numInfo.numStr) // 当整数位数大于16位时,parseFloat会丢掉末尾的值
243
201
  var isRound = roundMethod.toString() === '1'; // 是否四舍五入
244
-
245
202
  numInfo.numStr = (0, _numberUtil.toFixed)(numInfo.numStr, decimalLength, isRound);
246
203
  numStrArr = numInfo.numStr.split('.');
247
204
  numInfo.intStr = numStrArr[0];
248
205
  numInfo.decimalStr = numStrArr[1] || '';
249
-
250
206
  if (!showDecimalTailZero) {
251
207
  numInfo = cutTailZero(numInfo);
252
208
  }
253
209
  }
254
-
255
210
  return (isNegativeNumber ? '-' : '') + (numInfo.intStr || '0') + (numInfo.decimalStr.length > 0 ? '.' : '') + numInfo.decimalStr;
256
211
  }
257
-
258
212
  function analyzMask(mask) {
259
213
  var maskInfo = {
260
214
  errorMask: false,
@@ -266,27 +220,20 @@ function analyzMask(mask) {
266
220
  };
267
221
  mask = mask.replace(/%%/g, '');
268
222
  maskInfo.currencySign = mask.indexOf('$') >= 0; // 是否显示货币标识
269
-
270
223
  maskInfo.percent = mask.indexOf('%') >= 0; // 是否有百分号
271
-
272
224
  mask = mask.replace(/%/g, '').replace(/\$/g, ''); // 清楚上面的特殊字符
273
-
274
225
  var masks = mask.split('.'); // 以小数点为界切分掩码
275
-
276
226
  if (masks.length > 2) {
277
227
  maskInfo.errorMask = true;
278
228
  }
279
-
280
229
  maskInfo.intMask = masks[0];
281
230
  maskInfo.decimalMask = masks[1];
282
231
  maskInfo.formatMask = mask;
283
232
  return maskInfo;
284
233
  }
285
-
286
234
  function cutTailZero(numInfo) {
287
235
  var decimalStr = numInfo.decimalStr;
288
236
  var len = decimalStr.length;
289
-
290
237
  if (len > 0) {
291
238
  for (var i = len - 1; i >= 0; i--) {
292
239
  if (decimalStr[i] === '0') {
@@ -295,28 +242,22 @@ function cutTailZero(numInfo) {
295
242
  break;
296
243
  }
297
244
  }
298
-
299
245
  numInfo.decimalStr = decimalStr;
300
246
  }
301
-
302
247
  return numInfo;
303
248
  }
304
-
305
249
  function intFormatMask(intMask, intValue) {
306
250
  var numGroupFormat = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
307
251
  var index = 0;
308
252
  var firstHashIndex = intMask.indexOf('#');
309
253
  var lastHashIndex = intMask.lastIndexOf('#');
310
254
  var formatValue = '';
311
-
312
255
  if (intMask.split(',').length > 1) {
313
256
  // 如果包含多个分隔符,则认为是末尾分隔符为分组数
314
257
  lastHashIndex = intMask.length - 1 - intMask.lastIndexOf(',');
315
258
  }
316
-
317
259
  for (var i = intMask.length - 1; i >= 0;) {
318
260
  var char = intMask.charAt(i);
319
-
320
261
  switch (char) {
321
262
  case '0':
322
263
  // 数字必录
@@ -324,35 +265,29 @@ function intFormatMask(intMask, intValue) {
324
265
  index++;
325
266
  i--;
326
267
  break;
327
-
328
268
  case '9':
329
269
  // 数字可选
330
270
  formatValue = intValue.charAt(intValue.length - 1 - index) + formatValue;
331
271
  index++;
332
272
  i--;
333
273
  break;
334
-
335
274
  case '#':
336
275
  // 递归
337
276
  formatValue = intValue.charAt(intValue.length - 1 - index) + formatValue;
338
277
  index++;
339
278
  i = i === firstHashIndex ? lastHashIndex : i - 1;
340
279
  break;
341
-
342
280
  default:
343
281
  if (numGroupFormat) char = numGroupFormat;
344
282
  formatValue = char + formatValue;
345
283
  i--;
346
284
  break;
347
285
  }
348
-
349
286
  if (index >= intValue.length) break;
350
- } // 如果第一个字符不是数字,去掉
351
-
352
-
287
+ }
288
+ // 如果第一个字符不是数字,去掉
353
289
  if (formatValue && !/^[0-9]*$/.test(formatValue.charAt(0))) {
354
290
  formatValue = formatValue.substring(1);
355
291
  }
356
-
357
292
  return formatValue;
358
293
  }