@sheinx/hooks 3.6.0-beta.3 → 3.6.0-beta.4

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 (65) hide show
  1. package/cjs/common/use-filter/use-filter.d.ts.map +1 -1
  2. package/cjs/components/use-cascader/use-cascader.d.ts.map +1 -1
  3. package/cjs/components/use-cascader/use-cascader.type.d.ts +2 -1
  4. package/cjs/components/use-cascader/use-cascader.type.d.ts.map +1 -1
  5. package/cjs/components/use-form/use-form.d.ts.map +1 -1
  6. package/cjs/components/use-form/use-form.js +2 -1
  7. package/cjs/components/use-input/use-input-format.d.ts.map +1 -1
  8. package/cjs/components/use-input/use-input-format.js +12 -4
  9. package/cjs/components/use-table/use-table-tree.d.ts +13 -0
  10. package/cjs/components/use-table/use-table-tree.d.ts.map +1 -1
  11. package/cjs/components/use-table/use-table-tree.js +68 -1
  12. package/cjs/components/use-table/use-table-virtual.js +3 -3
  13. package/cjs/components/use-tree/index.d.ts +2 -1
  14. package/cjs/components/use-tree/index.d.ts.map +1 -1
  15. package/cjs/components/use-tree/index.js +7 -0
  16. package/cjs/components/use-tree/use-tree-node.d.ts.map +1 -1
  17. package/cjs/components/use-tree/use-tree-node.js +1 -5
  18. package/cjs/components/use-tree/use-tree-node.type.d.ts +18 -0
  19. package/cjs/components/use-tree/use-tree-node.type.d.ts.map +1 -1
  20. package/cjs/components/use-tree/use-tree-virtual-node.d.ts +13 -0
  21. package/cjs/components/use-tree/use-tree-virtual-node.d.ts.map +1 -0
  22. package/cjs/components/use-tree/use-tree-virtual-node.js +92 -0
  23. package/cjs/components/use-tree/use-tree.d.ts.map +1 -1
  24. package/cjs/components/use-tree/use-tree.js +179 -7
  25. package/cjs/components/use-tree/use-tree.type.d.ts +31 -1
  26. package/cjs/components/use-tree/use-tree.type.d.ts.map +1 -1
  27. package/cjs/utils/is.d.ts +2 -0
  28. package/cjs/utils/is.d.ts.map +1 -1
  29. package/cjs/utils/is.js +5 -2
  30. package/cjs/utils/object.d.ts.map +1 -1
  31. package/cjs/utils/object.js +6 -1
  32. package/cjs/utils/warning.js +5 -5
  33. package/esm/common/use-filter/use-filter.d.ts.map +1 -1
  34. package/esm/components/use-cascader/use-cascader.d.ts.map +1 -1
  35. package/esm/components/use-cascader/use-cascader.type.d.ts +2 -1
  36. package/esm/components/use-cascader/use-cascader.type.d.ts.map +1 -1
  37. package/esm/components/use-form/use-form.d.ts.map +1 -1
  38. package/esm/components/use-form/use-form.js +2 -1
  39. package/esm/components/use-input/use-input-format.d.ts.map +1 -1
  40. package/esm/components/use-input/use-input-format.js +12 -4
  41. package/esm/components/use-table/use-table-tree.d.ts +13 -0
  42. package/esm/components/use-table/use-table-tree.d.ts.map +1 -1
  43. package/esm/components/use-table/use-table-tree.js +67 -0
  44. package/esm/components/use-table/use-table-virtual.js +3 -3
  45. package/esm/components/use-tree/index.d.ts +2 -1
  46. package/esm/components/use-tree/index.d.ts.map +1 -1
  47. package/esm/components/use-tree/index.js +2 -1
  48. package/esm/components/use-tree/use-tree-node.d.ts.map +1 -1
  49. package/esm/components/use-tree/use-tree-node.js +1 -5
  50. package/esm/components/use-tree/use-tree-node.type.d.ts +18 -0
  51. package/esm/components/use-tree/use-tree-node.type.d.ts.map +1 -1
  52. package/esm/components/use-tree/use-tree-virtual-node.d.ts +13 -0
  53. package/esm/components/use-tree/use-tree-virtual-node.d.ts.map +1 -0
  54. package/esm/components/use-tree/use-tree-virtual-node.js +85 -0
  55. package/esm/components/use-tree/use-tree.d.ts.map +1 -1
  56. package/esm/components/use-tree/use-tree.js +181 -9
  57. package/esm/components/use-tree/use-tree.type.d.ts +31 -1
  58. package/esm/components/use-tree/use-tree.type.d.ts.map +1 -1
  59. package/esm/utils/is.d.ts +2 -0
  60. package/esm/utils/is.d.ts.map +1 -1
  61. package/esm/utils/is.js +4 -1
  62. package/esm/utils/object.d.ts.map +1 -1
  63. package/esm/utils/object.js +6 -1
  64. package/esm/utils/warning.js +5 -5
  65. package/package.json +1 -1
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
@@ -7,10 +8,16 @@ exports.default = exports.MODE = void 0;
7
8
  var _react = require("react");
8
9
  var _useLatestObj = _interopRequireDefault(require("../../common/use-latest-obj"));
9
10
  var _useInputAble2 = require("../../common/use-input-able");
11
+ var _useTableTree = require("../use-table/use-table-tree");
10
12
  var _usePersistFn = require("../../common/use-persist-fn");
11
13
  var _is = require("../../utils/is");
12
14
  var _utils = require("../../utils");
13
15
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
16
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
19
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
20
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
14
21
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
15
22
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
23
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
@@ -26,7 +33,6 @@ function toArray(value) {
26
33
  if (!Array.isArray(value)) return [value];
27
34
  return value;
28
35
  }
29
- var global_tree_map = new Map();
30
36
  var MODE = exports.MODE = {
31
37
  /**
32
38
  * 返回全选数据,包含父节点和子节点
@@ -59,6 +65,7 @@ var useTree = function useTree(props) {
59
65
  childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,
60
66
  keygen = props.keygen,
61
67
  mode = props.mode,
68
+ virtual = props.virtual,
62
69
  activeProp = props.active,
63
70
  expandedProp = props.expanded,
64
71
  _props$dataUpdate = props.dataUpdate,
@@ -66,14 +73,19 @@ var useTree = function useTree(props) {
66
73
  _props$defaultExpande = props.defaultExpanded,
67
74
  defaultExpanded = _props$defaultExpande === void 0 ? [] : _props$defaultExpande,
68
75
  defaultExpandAll = props.defaultExpandAll,
69
- disabledProps = props.disabled,
70
76
  unmatch = props.unmatch,
71
77
  isControlled = props.isControlled,
72
78
  onExpandProp = props.onExpand;
79
+ var disabledProps = (0, _is.isOptionalDisabled)(props.disabled) ? props.disabled.disabled : props.disabled;
80
+ var isRealtime = (0, _is.isOptionalDisabled)(props.disabled) ? props.disabled.isRealtime : false;
73
81
  var _useState = (0, _react.useState)(false),
74
82
  _useState2 = _slicedToArray(_useState, 2),
75
83
  inited = _useState2[0],
76
84
  setInited = _useState2[1];
85
+ var _useState3 = (0, _react.useState)([]),
86
+ _useState4 = _slicedToArray(_useState3, 2),
87
+ dataFlat = _useState4[0],
88
+ setDataFlat = _useState4[1];
77
89
  var _useInputAble = (0, _useInputAble2.useInputAble)({
78
90
  value: expandedProp,
79
91
  defaultValue: defaultExpanded,
@@ -86,6 +98,8 @@ var useTree = function useTree(props) {
86
98
  var _useRef = (0, _react.useRef)({
87
99
  pathMap: new Map(),
88
100
  dataMap: new Map(),
101
+ dataFlatStatusMap: new Map(),
102
+ dataFlat: [],
89
103
  forceUpdateMap: new Map(),
90
104
  valueMap: new Map(),
91
105
  updateMap: new Map(),
@@ -117,11 +131,27 @@ var useTree = function useTree(props) {
117
131
  expanded: shouldDefaultExpand
118
132
  };
119
133
  }
134
+ if (virtual) {
135
+ return {
136
+ active: isActive,
137
+ expanded: context.dataFlatStatusMap.get(id).expanded
138
+ };
139
+ }
120
140
  return {
121
141
  active: isActive,
122
142
  expanded: !!(expandeds && expandeds.indexOf(id) >= 0)
123
143
  };
124
144
  };
145
+
146
+ // 注册节点
147
+ var bindVirtualNode = function bindVirtualNode(id, update) {
148
+ context.updateMap.set(id, update);
149
+ var isActive = activeProp === id;
150
+ return {
151
+ active: isActive,
152
+ expanded: context.dataFlatStatusMap.get(id).expanded
153
+ };
154
+ };
125
155
  var get = function get(id) {
126
156
  return context.valueMap.get(id);
127
157
  };
@@ -134,7 +164,6 @@ var useTree = function useTree(props) {
134
164
  if (keygen && ((0, _is.isString)(keygen) || (0, _is.isNumber)(keygen))) {
135
165
  return item[keygen];
136
166
  }
137
-
138
167
  // 降级处理
139
168
  return id + (id ? ',' : '') + index;
140
169
  };
@@ -232,6 +261,8 @@ var useTree = function useTree(props) {
232
261
  };
233
262
  var initData = function initData(data, path, disabled) {
234
263
  var index = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];
264
+ var level = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 1;
265
+ var pid = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : null;
235
266
  var ids = [];
236
267
  for (var i = 0; i < data.length; i++) {
237
268
  var item = data[i];
@@ -243,6 +274,28 @@ var useTree = function useTree(props) {
243
274
  }
244
275
  // 制作 data mapping
245
276
  context.dataMap.set(id, item);
277
+ if (virtual) {
278
+ context.dataFlatStatusMap.set(id, {
279
+ active: false,
280
+ expanded: defaultExpandAll ? true : (expanded === null || expanded === void 0 ? void 0 : expanded.includes(id)) || false,
281
+ fetching: false
282
+ });
283
+ var node = {
284
+ id: id,
285
+ level: level,
286
+ data: item,
287
+ pid: pid
288
+ };
289
+ if (defaultExpandAll) {
290
+ context.dataFlat.push(node);
291
+ } else {
292
+ if (level === 1) {
293
+ context.dataFlat.push(node);
294
+ } else if (expanded && pid !== null && expanded.indexOf(pid) >= 0) {
295
+ context.dataFlat.push(node);
296
+ }
297
+ }
298
+ }
246
299
  var _isDisabled = !!disabled;
247
300
  if (_isDisabled === false) {
248
301
  _isDisabled = getDisabled()(item);
@@ -251,7 +304,7 @@ var useTree = function useTree(props) {
251
304
  ids.push(id);
252
305
  var children = [];
253
306
  if (Array.isArray(item[childrenKey])) {
254
- var _children = initData(item[childrenKey], [].concat(_toConsumableArray(path), [id]), mode === MODE.MODE_4 ? disabled : _isDisabled, indexPath);
307
+ var _children = initData(item[childrenKey], [].concat(_toConsumableArray(path), [id]), mode === MODE.MODE_4 ? disabled : _isDisabled, indexPath, level + 1, id);
255
308
  if (_children) children = _children;
256
309
  }
257
310
  context.pathMap.set(id, {
@@ -329,7 +382,15 @@ var useTree = function useTree(props) {
329
382
  var isDisabled = function isDisabled(id) {
330
383
  if ((0, _is.isFunc)(disabledProps)) {
331
384
  var node = context.pathMap.get(id);
332
- if (node) return node.isDisabled;
385
+ if (node) {
386
+ if (isRealtime) {
387
+ var item = context.dataMap.get(id);
388
+ if (!item) return false;
389
+ return getDisabled()(item);
390
+ } else {
391
+ return node.isDisabled;
392
+ }
393
+ }
333
394
  return false;
334
395
  }
335
396
  return !!disabledProps;
@@ -359,11 +420,20 @@ var useTree = function useTree(props) {
359
420
  context.cachedValue = [];
360
421
  context.pathMap = new Map();
361
422
  context.dataMap = new Map();
423
+ context.dataFlat = [];
424
+ context.dataFlatStatusMap = new Map();
362
425
  context.valueMap = new Map();
363
426
  context.unmatchedValueMap = new Map();
364
427
  context.data = toArray(data);
428
+ if (virtual) {
429
+ context.dataFlat = [];
430
+ setDataFlat([]);
431
+ }
365
432
  if (!data) return;
366
433
  initData(context.data, []);
434
+ if (virtual) {
435
+ setDataFlat(context.dataFlat);
436
+ }
367
437
  initValue();
368
438
  setValue(prevValue);
369
439
 
@@ -409,6 +479,101 @@ var useTree = function useTree(props) {
409
479
  }
410
480
  return current;
411
481
  };
482
+ var appendChildrenExpanded = function appendChildrenExpanded(child, level, pid, insertData) {
483
+ if (!child) return;
484
+ child.forEach(function (item, i) {
485
+ var _context$dataFlatStat;
486
+ var childId = getKey(item, pid, i);
487
+ var node = {
488
+ id: childId,
489
+ level: level,
490
+ data: item,
491
+ pid: pid
492
+ };
493
+ insertData.push(node);
494
+ if ((_context$dataFlatStat = context.dataFlatStatusMap.get(childId)) !== null && _context$dataFlatStat !== void 0 && _context$dataFlatStat.expanded && item[childrenKey]) {
495
+ appendChildrenExpanded(item[childrenKey], level + 1, childId, insertData);
496
+ }
497
+ });
498
+ };
499
+ var insertFlat = function insertFlat(id) {
500
+ var item = getDataById(id);
501
+ if ((0, _is.isUnMatchedData)(item)) return;
502
+ if (!item) return;
503
+ var status = context.dataFlatStatusMap.get(id);
504
+ if (!status) return;
505
+ var childrenData = item[childrenKey];
506
+ var insertStartNode = dataFlat.find(function (item) {
507
+ return item.id === id;
508
+ });
509
+ context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
510
+ expanded: true,
511
+ fetching: false
512
+ }));
513
+ if (!insertStartNode) return;
514
+ var insertData = [];
515
+ appendChildrenExpanded(childrenData, insertStartNode.level + 1, id, insertData);
516
+ var insertIndex = dataFlat.indexOf(insertStartNode);
517
+ var nextDataFlat = (0, _utils.produce)(dataFlat, function (draft) {
518
+ draft.splice.apply(draft, [insertIndex + 1, 0].concat(_toConsumableArray(insertData)));
519
+ });
520
+ setDataFlat(nextDataFlat);
521
+ };
522
+ var removeFlat = function removeFlat(id) {
523
+ var item = getDataById(id);
524
+ if ((0, _is.isUnMatchedData)(item)) return;
525
+ if (!item) return;
526
+ var removeNode = dataFlat.find(function (item) {
527
+ return item.id === id;
528
+ });
529
+ if (!removeNode) return;
530
+ var status = context.dataFlatStatusMap.get(id);
531
+ if (!status) return;
532
+ context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
533
+ fetching: false,
534
+ expanded: false
535
+ }));
536
+ var removeStartIndex = dataFlat.indexOf(removeNode);
537
+ var removeEndIndex = 0;
538
+ for (var i = removeStartIndex + 1; i < dataFlat.length; i++) {
539
+ if (dataFlat[i].level <= removeNode.level) {
540
+ removeEndIndex = i;
541
+ break;
542
+ }
543
+ if (i === dataFlat.length - 1) {
544
+ removeEndIndex = i + 1;
545
+ break;
546
+ }
547
+ }
548
+ var nextDataFlat = (0, _utils.produce)(dataFlat, function (draft) {
549
+ draft.splice(removeStartIndex + 1, removeEndIndex - removeStartIndex - 1);
550
+ });
551
+ setDataFlat(nextDataFlat);
552
+ };
553
+ var expandedFlat = function expandedFlat(expanded) {
554
+ if (!context.data) return;
555
+ context.dataFlatStatusMap.forEach(function (status, id) {
556
+ context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
557
+ expanded: false
558
+ }));
559
+ });
560
+ expanded.forEach(function (id) {
561
+ var status = context.dataFlatStatusMap.get(id);
562
+ if (!status) return;
563
+ context.dataFlatStatusMap.set(id, _objectSpread(_objectSpread({}, status), {}, {
564
+ expanded: true
565
+ }));
566
+ });
567
+ var _getExpandVirtualData = (0, _useTableTree.getExpandVirtualData)(context.data, expanded, getKey, childrenKey),
568
+ treeDataInfo = _getExpandVirtualData.treeDataInfo;
569
+ if (!treeDataInfo) {
570
+ return;
571
+ }
572
+ setDataFlat(treeDataInfo);
573
+ };
574
+ var getFlatData = function getFlatData() {
575
+ return context.dataFlat;
576
+ };
412
577
  (0, _react.useEffect)(function () {
413
578
  if (defaultExpandAll) {
414
579
  var nextExpanded = [];
@@ -419,7 +584,7 @@ var useTree = function useTree(props) {
419
584
  });
420
585
  onExpand(nextExpanded);
421
586
  }
422
- }, []);
587
+ }, [context.dataMap]);
423
588
  (0, _react.useEffect)(function () {
424
589
  if (props.datum) return;
425
590
  if (!dataUpdate) return;
@@ -435,25 +600,32 @@ var useTree = function useTree(props) {
435
600
  var datum = (0, _useLatestObj.default)({
436
601
  get: get,
437
602
  set: set,
603
+ insertFlat: insertFlat,
604
+ removeFlat: removeFlat,
605
+ expandedFlat: expandedFlat,
438
606
  getPath: getPath,
439
607
  getValue: getValue,
440
608
  getChecked: getChecked,
441
609
  getKey: getKey,
610
+ getFlatData: getFlatData,
442
611
  getDataByValues: getDataByValues,
443
612
  setValue: setValue,
444
613
  setData: setData,
445
614
  isDisabled: isDisabled,
446
615
  bindNode: bindNode,
616
+ bindVirtualNode: bindVirtualNode,
447
617
  getDataById: getDataById,
448
618
  bindUpdate: bindUpdate,
449
619
  unBindUpdate: unBindUpdate,
450
620
  isUnMatched: isUnMatched,
451
621
  childrenKey: childrenKey,
452
622
  data: data,
623
+ dataFlat: dataFlat,
453
624
  pathMap: context.pathMap,
454
625
  dataMap: context.dataMap,
455
626
  valueMap: context.valueMap,
456
- updateMap: context.updateMap
627
+ updateMap: context.updateMap,
628
+ dataFlatStatusMap: context.dataFlatStatusMap
457
629
  });
458
630
  return {
459
631
  inited: inited,
@@ -2,9 +2,22 @@ import { StructKeygenStringType, KeygenResult, ObjectKey } from '../../common/ty
2
2
  export type CheckedStatusType = 0 | 1 | 2;
3
3
  export type TreeModeType = 0 | 1 | 2 | 3 | 4;
4
4
  export type UpdateFunc = (name: string, active: boolean) => void;
5
+ export type FlatNodeType<DataItem> = {
6
+ id: KeygenResult;
7
+ data: DataItem;
8
+ level: number;
9
+ pid?: KeygenResult | null;
10
+ };
11
+ export type FlatMapType = {
12
+ active: boolean;
13
+ expanded: boolean;
14
+ fetching: boolean;
15
+ };
5
16
  export interface TreeContext<DataItem> {
6
17
  pathMap: Map<KeygenResult, TreePathType>;
7
18
  dataMap: Map<KeygenResult, DataItem>;
19
+ dataFlat: FlatNodeType<DataItem>[];
20
+ dataFlatStatusMap: Map<KeygenResult, FlatMapType>;
8
21
  valueMap: Map<KeygenResult, CheckedStatusType>;
9
22
  unmatchedValueMap: Map<any, any>;
10
23
  updateMap: Map<KeygenResult, UpdateFunc>;
@@ -21,6 +34,10 @@ export interface TreePathType {
21
34
  indexPath: number[];
22
35
  index: number;
23
36
  }
37
+ export interface DisabledOption<DataItem> {
38
+ disabled: (data: DataItem) => boolean;
39
+ isRealtime: boolean;
40
+ }
24
41
  export interface BaseTreeProps<DataItem> {
25
42
  /**
26
43
  * @private 内部属性
@@ -63,7 +80,7 @@ export interface BaseTreeProps<DataItem> {
63
80
  * @cn 显示选择框时有效,为 true 时,所有节点禁用选择,为函数时,根据函数返回结果确定是否禁用
64
81
  * @default false
65
82
  */
66
- disabled?: boolean | ((item: DataItem) => boolean);
83
+ disabled?: boolean | ((item: DataItem) => boolean) | DisabledOption<DataItem>;
67
84
  /**
68
85
  * @en Auxiliary method for generating key. When it is a function, use the return value of this function. When it is a string, use the data value corresponding to this string. For example, "id" is the same thing as (d) => d.id
69
86
  * @cn 生成 key 的辅助方法, 为函数时,使用此函数返回值, 为 string 时,使用这个 string 对应的数据值。如 "id",相当于 (d) => d.id
@@ -106,10 +123,17 @@ export interface BaseTreeProps<DataItem> {
106
123
  * @private 内部数据处理
107
124
  */
108
125
  datum?: TreeDatum<DataItem>;
126
+ /**
127
+ * @private 是否虚拟化
128
+ */
129
+ virtual?: boolean;
109
130
  }
110
131
  export interface TreeDatum<DataItem> {
111
132
  get: (id: KeygenResult) => CheckedStatusType | undefined;
112
133
  set: (id: KeygenResult, checked: CheckedStatusType, direction?: 'asc' | 'desc') => CheckedStatusType | null;
134
+ insertFlat: (id: KeygenResult) => void;
135
+ removeFlat: (id: KeygenResult) => void;
136
+ expandedFlat: (id: KeygenResult[]) => void;
113
137
  getPath: (id: KeygenResult) => TreePathType | undefined;
114
138
  getValue: () => KeygenResult[];
115
139
  getChecked: (id: KeygenResult) => boolean | 'indeterminate';
@@ -122,6 +146,10 @@ export interface TreeDatum<DataItem> {
122
146
  active: boolean;
123
147
  expanded: boolean;
124
148
  };
149
+ bindVirtualNode: (id: KeygenResult, update: UpdateFunc, data: DataItem) => {
150
+ active: boolean;
151
+ expanded: boolean;
152
+ };
125
153
  getDataById: (id: KeygenResult) => DataItem | {
126
154
  IS_NOT_MATCHED_VALUE: boolean;
127
155
  value: KeygenResult | null;
@@ -132,8 +160,10 @@ export interface TreeDatum<DataItem> {
132
160
  updateMap: Map<KeygenResult, UpdateFunc>;
133
161
  childrenKey: string;
134
162
  data: DataItem[];
163
+ dataFlat: FlatNodeType<DataItem>[];
135
164
  pathMap: Map<KeygenResult, TreePathType>;
136
165
  dataMap: Map<KeygenResult, DataItem>;
137
166
  valueMap: Map<KeygenResult, CheckedStatusType>;
167
+ dataFlatStatusMap: Map<KeygenResult, FlatMapType>;
138
168
  }
139
169
  //# sourceMappingURL=use-tree.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-tree.type.d.ts","sourceRoot":"","sources":["use-tree.type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-tree.type.d.ts","sourceRoot":"","sources":["use-tree.type.ts"],"names":[],"mappings":"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"}
package/cjs/utils/is.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { ObjectType } from '../common/type';
2
+ import { DisabledOption } from '../components/use-tree/use-tree.type';
2
3
  import { UnMatchedData } from '../common/use-list-select/use-list.type';
3
4
  import React from 'react';
4
5
  export declare function isBrowser(): boolean;
@@ -25,4 +26,5 @@ export declare function isNamedComponent(type: any): type is React.ForwardRefExo
25
26
  export declare const isMacOS: () => boolean;
26
27
  export declare const isFirefox: () => boolean;
27
28
  export declare function isDomElement(element: any): element is HTMLElement;
29
+ export declare const isOptionalDisabled: <DataItem>(disabled: unknown) => disabled is DisabledOption<DataItem>;
28
30
  //# sourceMappingURL=is.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"is.d.ts","sourceRoot":"","sources":["is.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,wBAAgB,SAAS,YAExB;AASD,eAAO,MAAM,OAAO,4BAAgB,CAAC;AACrC,eAAO,MAAM,QAAQ,QAAS,OAAO,sBACc,CAAC;AACpD,eAAO,MAAM,MAAM,QAAS,OAAO,gBAAqC,CAAC;AACzE,eAAO,MAAM,SAAS,QAAS,OAAO,mBAA2C,CAAC;AAClF,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OAA+B,CAAC;AACvE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAAgC,CAAC;AACzE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,WAAW,QAAS,GAAG,qBAAwC,CAAC;AAC7E,eAAO,MAAM,KAAK,QAjBsB,OAAO,mBAiBb,CAAC;AACnC,eAAO,MAAM,KAAK,QAlBsB,OAAO,mBAkBb,CAAC;AACnC,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAUvC,CAAC;AACF,eAAO,MAAM,eAAe,QAAS,OAAO,yBAE3C,CAAC;AACF,eAAO,MAAM,WAAW,QAAS,OAAO,KAAG,OAS1C,CAAC;AAEF,eAAO,MAAM,MAAM,MAAO,OAAO,kBAA2C,CAAC;AAE7E,eAAO,MAAM,SAAS,MAAO,OAAO,YACiC,CAAC;AAGtE,eAAO,MAAM,KAAK,MAAO,OAAO,KAAG,OAAkB,CAAC;AAEtD,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OActC,CAAC;AAEF,eAAO,MAAM,MAAM,OAAQ,OAAO,6EASjC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,KAAK,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAE5F;AAED,eAAO,MAAM,OAAO,QAAO,OACqC,CAAC;AAEjE,eAAO,MAAM,SAAS,QAAO,OAG5B,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,IAAI,WAAW,CAQjE"}
1
+ {"version":3,"file":"is.d.ts","sourceRoot":"","sources":["is.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,wBAAgB,SAAS,YAExB;AASD,eAAO,MAAM,OAAO,4BAAgB,CAAC;AACrC,eAAO,MAAM,QAAQ,QAAS,OAAO,sBACc,CAAC;AACpD,eAAO,MAAM,MAAM,QAAS,OAAO,gBAAqC,CAAC;AACzE,eAAO,MAAM,SAAS,QAAS,OAAO,mBAA2C,CAAC;AAClF,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OAA+B,CAAC;AACvE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAAgC,CAAC;AACzE,eAAO,MAAM,QAAQ,MAAO,OAAO,gBAAuC,CAAC;AAC3E,eAAO,MAAM,WAAW,QAAS,GAAG,qBAAwC,CAAC;AAC7E,eAAO,MAAM,KAAK,QAjBsB,OAAO,mBAiBb,CAAC;AACnC,eAAO,MAAM,KAAK,QAlBsB,OAAO,mBAkBb,CAAC;AACnC,eAAO,MAAM,QAAQ,QAAS,OAAO,KAAG,OAUvC,CAAC;AACF,eAAO,MAAM,eAAe,QAAS,OAAO,yBAE3C,CAAC;AACF,eAAO,MAAM,WAAW,QAAS,OAAO,KAAG,OAS1C,CAAC;AAEF,eAAO,MAAM,MAAM,MAAO,OAAO,kBAA2C,CAAC;AAE7E,eAAO,MAAM,SAAS,MAAO,OAAO,YACiC,CAAC;AAGtE,eAAO,MAAM,KAAK,MAAO,OAAO,KAAG,OAAkB,CAAC;AAEtD,eAAO,MAAM,OAAO,QAAS,OAAO,KAAG,OActC,CAAC;AAEF,eAAO,MAAM,MAAM,OAAQ,OAAO,6EASjC,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,IAAI,KAAK,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAE5F;AAED,eAAO,MAAM,OAAO,QAAO,OACqC,CAAC;AAEjE,eAAO,MAAM,SAAS,QAAO,OAG5B,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,IAAI,WAAW,CAQjE;AAED,eAAO,MAAM,kBAAkB,uBACnB,OAAO,yCAGlB,CAAC"}
package/cjs/utils/is.js CHANGED
@@ -9,7 +9,7 @@ exports.isDate = exports.isBuffer = void 0;
9
9
  exports.isDomElement = isDomElement;
10
10
  exports.isMergeable = exports.isMap = exports.isMacOS = exports.isLink = exports.isFunc = exports.isFirefox = exports.isError = exports.isEmpty = void 0;
11
11
  exports.isNamedComponent = isNamedComponent;
12
- exports.isUndefined = exports.isUnMatchedData = exports.isString = exports.isSet = exports.isRegexp = exports.isPromise = exports.isObject = exports.isNumber = exports.isNan = void 0;
12
+ exports.isUndefined = exports.isUnMatchedData = exports.isString = exports.isSet = exports.isRegexp = exports.isPromise = exports.isOptionalDisabled = exports.isObject = exports.isNumber = exports.isNan = void 0;
13
13
  var _react = _interopRequireDefault(require("react"));
14
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
15
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
@@ -111,4 +111,7 @@ var isFirefox = exports.isFirefox = function isFirefox() {
111
111
  function isDomElement(element) {
112
112
  return (typeof HTMLElement === "undefined" ? "undefined" : _typeof(HTMLElement)) === 'object' ? element instanceof HTMLElement // DOM2
113
113
  : element && _typeof(element) === 'object' && element !== null && element.nodeType === 1 && typeof element.nodeName === 'string';
114
- }
114
+ }
115
+ var isOptionalDisabled = exports.isOptionalDisabled = function isOptionalDisabled(disabled) {
116
+ return isObject(disabled) && disabled.hasOwnProperty('isRealtime');
117
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,QAAS,UAAU,cAAa,MAAM,KAAQ,MAAM,EAoB9E,CAAC;AAGF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,WAAY,MAAM,GAAG,MAAM,EAAE,aAAa,MAAM,EAAE,KAAG,MAAM,EAe3F,CAAA"}
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,UAGvC;AASD,UAAU,WAAW;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAGD,eAAO,MAAM,YAAY,QAAS,UAAU,UAG3C,CAAC;AAGF,eAAO,MAAM,SAAS,2CAEZ,UAAU,YACT,WAAW,eAwBrB,CAAC;AAEF,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,+DA4BxC;AAED,UAAU,cAAc;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,OAAO,WACV,UAAU,QACZ,MAAM,SACL,GAAG,YACD,cAAc,eAiDxB,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAAW,WAAW,YAyB7E,CAAC;AAEF,eAAO,MAAM,UAAU,WAAY,UAAU,QAAQ,MAAM,eA0B1D,CAAC;AAEF,eAAO,MAAM,OAAO,WAAY,UAAU,QAAQ,MAAM,YAavD,CAAC;AAEF,eAAO,MAAM,OAAO,QAAS,UAAU,YAItC,CAAC;AAEF,eAAO,MAAM,WAAW,wFAQvB,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,QAAS,UAAU,cAAa,MAAM,KAAQ,MAAM,EAoB9E,CAAC;AAGF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB,WAAY,MAAM,GAAG,MAAM,EAAE,aAAa,MAAM,EAAE,KAAG,MAAM,EAmB3F,CAAA"}
@@ -320,6 +320,9 @@ var getCompleteFieldKeys = exports.getCompleteFieldKeys = function getCompleteFi
320
320
  var completeFields = [];
321
321
  fieldsArray.forEach(function (field) {
322
322
  var na = "".concat(field, "[");
323
+ if (field.endsWith(']')) {
324
+ na = field;
325
+ }
323
326
  var no = "".concat(field, ".");
324
327
  completeFields.push(field);
325
328
  var childFields = allFields.filter(function (f) {
@@ -329,5 +332,7 @@ var getCompleteFieldKeys = exports.getCompleteFieldKeys = function getCompleteFi
329
332
  completeFields.push.apply(completeFields, _toConsumableArray(childFields));
330
333
  }
331
334
  });
332
- return completeFields;
335
+
336
+ // 返回之前去重
337
+ return Array.from(new Set(completeFields));
333
338
  };
@@ -15,29 +15,29 @@ var shouldShowMessage = function shouldShowMessage(message) {
15
15
  var deprecated = function deprecated(prop, newProp, component, extraMessage) {
16
16
  if (process.env.NODE_ENV !== 'production') {
17
17
  var msg = "[shineout] '".concat(prop, "' in ").concat(component, " component is deprecated, please use '").concat(newProp, "' instead. ").concat(extraMessage);
18
- shouldShowMessage(msg) && console.error(msg);
18
+ if (shouldShowMessage(msg)) console.error(msg);
19
19
  }
20
20
  };
21
21
  var breakingChange = function breakingChange(message) {
22
22
  if (process.env.NODE_ENV !== 'production') {
23
23
  var msg = "[shineout] ".concat(message);
24
- shouldShowMessage(msg) && console.error(msg);
24
+ if (shouldShowMessage(msg)) console.error(msg);
25
25
  }
26
26
  };
27
27
  var devWarn = function devWarn(message) {
28
28
  if (process.env.NODE_ENV !== 'production') {
29
- shouldShowMessage(message) && console.warn("[shineout] ".concat(message));
29
+ if (shouldShowMessage(message)) console.warn("[shineout] ".concat(message));
30
30
  }
31
31
  };
32
32
  var conflictWarning = function conflictWarning(component, prop1, prop2) {
33
33
  if (process.env.NODE_ENV !== 'production') {
34
34
  var msg = "[shineout] ".concat(prop1, " and ").concat(prop2, " cannot be used at the same time in ").concat(component, ".");
35
- shouldShowMessage(msg) && console.warn(msg);
35
+ if (shouldShowMessage(msg)) console.warn(msg);
36
36
  }
37
37
  };
38
38
  var error = function error(message) {
39
39
  var msg = new Error("[shineout] ".concat(message));
40
- shouldShowMessage(msg.message) && console.error(msg);
40
+ if (shouldShowMessage(msg.message)) console.error(msg);
41
41
  };
42
42
  var devUseWarning = exports.devUseWarning = {
43
43
  error: error,
@@ -1 +1 @@
1
- {"version":3,"file":"use-filter.d.ts","sourceRoot":"","sources":["use-filter.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,QAAA,MAAM,SAAS;;;;;;;;;;kCAmBkD,OAAO;sBAiB1C,MAAM;sBAKN,MAAM,SAAQ,MAAM;;CAuGjD,CAAC;AAEF,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"use-filter.d.ts","sourceRoot":"","sources":["use-filter.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,QAAA,MAAM,SAAS;;;;;;;;;;kCAmBkD,OAAO;sBAiB1C,MAAM;sBAKN,MAAM,SAAQ,MAAM;;CAqGjD,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-cascader.d.ts","sourceRoot":"","sources":["use-cascader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,QAAA,MAAM,WAAW;;;;CA0ChB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"use-cascader.d.ts","sourceRoot":"","sources":["use-cascader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,QAAA,MAAM,WAAW;;;;CA2ChB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { KeygenResult, TreeKeygenType, ObjectKey } from '../../common/type';
2
+ import { DisabledOption } from '../use-tree';
2
3
  import { TreeModeType } from '../use-tree/use-tree.type';
3
4
  export interface BaseCascaderProps<DataItem, Value extends KeygenResult[]> {
4
5
  value?: Value;
@@ -11,7 +12,7 @@ export interface BaseCascaderProps<DataItem, Value extends KeygenResult[]> {
11
12
  beforeChange?: (value: Value) => any;
12
13
  mode?: TreeModeType;
13
14
  keygen: TreeKeygenType<DataItem>;
14
- disabled?: ((data: DataItem) => boolean) | boolean;
15
+ disabled?: DisabledOption<DataItem> | boolean | ((item: DataItem) => boolean);
15
16
  filterSameChange?: boolean;
16
17
  }
17
18
  //# sourceMappingURL=use-cascader.type.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-cascader.type.d.ts","sourceRoot":"","sources":["use-cascader.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,iBAAiB,CAAC,QAAQ,EAAE,KAAK,SAAS,YAAY,EAAE;IACvE,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvD,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAC;IACrC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,GAAG,OAAO,CAAC;IACnD,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B"}
1
+ {"version":3,"file":"use-cascader.type.d.ts","sourceRoot":"","sources":["use-cascader.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,iBAAiB,CAAC,QAAQ,EAAE,KAAK,SAAS,YAAY,EAAE;IACvE,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;IACvD,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,GAAG,CAAC;IACrC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC;IAC9E,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA+BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGhB,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBA8QC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAjJd,MAAM;oCAoND,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCA/KxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;qCAiPvB,MAAM,WAAW,gBAAgB;gCA/CzB,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;kCAzHpD,MAAM,0BAAyB,qBAAqB;;;;;;oBA2DjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAjJd,MAAM;gCAoND,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCA/KxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;iCAiPvB,MAAM,WAAW,gBAAgB;4BA/CzB,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;8BAzHpD,MAAM,0BAAyB,qBAAqB;;CA+Y9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"use-form.d.ts","sourceRoot":"","sources":["use-form.ts"],"names":[],"mappings":";AA+BA,OAAO,EAEL,aAAa,EACb,YAAY,EACZ,gBAAgB,EAGhB,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI5D,QAAA,MAAM,OAAO;;;;;;;;;wBA+QC;gBAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;aAAE;8BAlJd,MAAM;oCAqND,OAAO;;6BAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;oCAdrB,MAAM,EAAE;sCAhLxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;qCAkPvB,MAAM,WAAW,gBAAgB;gCA/CzB,MAAM,SAAS,MAAM,UAAU,KAAK;gCAKpC,MAAM,SAAS,MAAM;kCAzHpD,MAAM,0BAAyB,qBAAqB;;;;;;oBA2DjD;YAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE;0BAlJd,MAAM;gCAqND,OAAO;;yBAfb,MAAM,KAAK,KAAK,GAAG,SAAS;;gCAdrB,MAAM,EAAE;kCAhLxC,MAAM,GAAG,MAAM,EAAE,WAAU,gBAAgB;iCAkPvB,MAAM,WAAW,gBAAgB;4BA/CzB,MAAM,SAAS,MAAM,UAAU,KAAK;4BAKpC,MAAM,SAAS,MAAM;8BAzHpD,MAAM,0BAAyB,qBAAqB;;CA+Y9D,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -154,7 +154,7 @@ var useForm = function useForm(props) {
154
154
  return new Promise(function (resolve, reject) {
155
155
  var finalFields = Object.keys(context.validateMap);
156
156
  if (fields) {
157
- if (config.ignoreChildren) {
157
+ if (config.ignoreChildren || config.ignoreBind) {
158
158
  // 旧行为:仅校验当前字段
159
159
  finalFields = (isArray(fields) ? fields : [fields]).filter(function (key) {
160
160
  return context.validateMap[key];
@@ -173,6 +173,7 @@ var useForm = function useForm(props) {
173
173
  }
174
174
  var validates = finalFields.map(function (key) {
175
175
  var validateField = context.validateMap[key];
176
+ if (!validateField) return [];
176
177
  return Array.from(validateField).map(function (validate) {
177
178
  return validate(key, deepGet(context.value, key), context.value, config);
178
179
  });
@@ -1 +1 @@
1
- {"version":3,"file":"use-input-format.d.ts","sourceRoot":"","sources":["use-input-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAM3D,QAAA,MAAM,cAAc,UAAW,gBAAgB;kBAsBP,MAAM,GAAG,SAAS;gBA4BpB,gBAAgB;iBAgDd,gBAAgB;;;CAwBvD,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"use-input-format.d.ts","sourceRoot":"","sources":["use-input-format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAM3D,QAAA,MAAM,cAAc,UAAW,gBAAgB;kBAsBP,MAAM,GAAG,SAAS;gBAoCpB,gBAAgB;iBAgDd,gBAAgB;;;CAyBvD,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -21,7 +21,7 @@ var useInputFormat = function useInputFormat(props) {
21
21
  autoFix = props.autoFix,
22
22
  coin = props.coin,
23
23
  cancelBlurChange = props.cancelBlurChange;
24
- var _React$useState = React.useState(false),
24
+ var _React$useState = React.useState(coin),
25
25
  _React$useState2 = _slicedToArray(_React$useState, 2),
26
26
  showCoin = _React$useState2[0],
27
27
  setShowCoin = _React$useState2[1];
@@ -48,6 +48,13 @@ var useInputFormat = function useInputFormat(props) {
48
48
  var noNeg = numType === 'non-negative' || numType === 'positive';
49
49
  var regExp = new RegExp("^(".concat(noNeg ? '' : '-', ")?(\\d").concat(regLength(integerLimit), ")(").concat(digits !== 0 ? "\\.\\d".concat(regLength(digits)) : '', ")?.*$"), 'g');
50
50
  value = value.replace(regExp, '$1$2$3');
51
+
52
+ // 修正小数位数
53
+ var _value = v.split('.');
54
+ var __value = value.split('.');
55
+ if (_value[1] !== undefined && __value[1] === undefined && digits !== 0) {
56
+ value = "".concat(value, ".").concat(_value[1]);
57
+ }
51
58
  }
52
59
  onChange(value);
53
60
  });
@@ -105,14 +112,15 @@ var useInputFormat = function useInputFormat(props) {
105
112
  });
106
113
  function getValue(str) {
107
114
  if (type === 'number' && coin) {
108
- if (showCoin && str) {
109
- return "".concat(str).replace(/\d+/, function (n) {
115
+ var _str = str;
116
+ if (showCoin && _str) {
117
+ return "".concat(_str).replace(/\d+/, function (n) {
110
118
  return n.replace(/(\d)(?=(\d{3})+$)/g, function ($1) {
111
119
  return "".concat($1, ",");
112
120
  });
113
121
  });
114
122
  }
115
- return "".concat(str || '').replace(/,/g, '');
123
+ return "".concat(_str === 0 ? _str : _str || '').replace(/,/g, '');
116
124
  }
117
125
  return str;
118
126
  }