@sheinx/hooks 3.0.0-alpha.2 → 3.0.0-alpha.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.
- package/cjs/common/type.d.ts +2 -0
- package/cjs/common/type.d.ts.map +1 -1
- package/cjs/common/use-drag-mock/index.d.ts +3 -11
- package/cjs/common/use-drag-mock/index.d.ts.map +1 -1
- package/cjs/common/use-drag-mock/index.js +27 -56
- package/cjs/common/use-drag-mock/use-drag-mock.d.ts +11 -0
- package/cjs/common/use-drag-mock/use-drag-mock.d.ts.map +1 -0
- package/cjs/common/use-drag-mock/use-drag-mock.js +61 -0
- package/cjs/common/use-drag-mock/use-drag-move.d.ts +11 -0
- package/cjs/common/use-drag-mock/use-drag-move.d.ts.map +1 -0
- package/cjs/common/use-drag-mock/use-drag-move.js +73 -0
- package/cjs/common/use-drag-mock/use-drag-resize.d.ts +15 -0
- package/cjs/common/use-drag-mock/use-drag-resize.d.ts.map +1 -0
- package/cjs/common/use-drag-mock/use-drag-resize.js +89 -0
- package/cjs/common/use-filter/index.d.ts +2 -0
- package/cjs/common/use-filter/index.d.ts.map +1 -0
- package/cjs/common/use-filter/index.js +19 -0
- package/cjs/common/use-filter/use-filter.d.ts +19 -0
- package/cjs/common/use-filter/use-filter.d.ts.map +1 -0
- package/cjs/common/use-filter/use-filter.js +153 -0
- package/cjs/common/use-filter/use-filter.type.d.ts +17 -0
- package/cjs/common/use-filter/use-filter.type.d.ts.map +1 -0
- package/cjs/common/use-filter/use-filter.type.js +5 -0
- package/cjs/common/use-position-style/index.d.ts.map +1 -1
- package/cjs/common/use-position-style/index.js +5 -0
- package/cjs/components/use-button/use-button.d.ts +1 -1
- package/cjs/components/use-button/use-button.d.ts.map +1 -1
- package/cjs/components/use-button/use-button.js +2 -2
- package/cjs/components/use-cascader/index.d.ts +3 -0
- package/cjs/components/use-cascader/index.d.ts.map +1 -0
- package/cjs/components/use-cascader/index.js +19 -0
- package/cjs/components/use-cascader/use-cascader.d.ts +36 -0
- package/cjs/components/use-cascader/use-cascader.d.ts.map +1 -0
- package/cjs/components/use-cascader/use-cascader.js +46 -0
- package/cjs/components/use-cascader/use-cascader.type.d.ts +14 -0
- package/cjs/components/use-cascader/use-cascader.type.d.ts.map +1 -0
- package/cjs/components/use-cascader/use-cascader.type.js +5 -0
- package/cjs/components/use-collapse/index.d.ts +5 -0
- package/cjs/components/use-collapse/index.d.ts.map +1 -0
- package/cjs/components/use-collapse/index.js +26 -0
- package/cjs/components/use-collapse/use-collapse-item.d.ts +22 -0
- package/cjs/components/use-collapse/use-collapse-item.d.ts.map +1 -0
- package/cjs/components/use-collapse/use-collapse-item.js +72 -0
- package/cjs/components/use-collapse/use-collapse-item.type.d.ts +12 -0
- package/cjs/components/use-collapse/use-collapse-item.type.d.ts.map +1 -0
- package/cjs/components/use-collapse/use-collapse-item.type.js +5 -0
- package/cjs/components/use-collapse/use-collapse.d.ts +8 -0
- package/cjs/components/use-collapse/use-collapse.d.ts.map +1 -0
- package/cjs/components/use-collapse/use-collapse.js +51 -0
- package/cjs/components/use-collapse/use-collapse.type.d.ts +8 -0
- package/cjs/components/use-collapse/use-collapse.type.d.ts.map +1 -0
- package/cjs/components/use-collapse/use-collapse.type.js +5 -0
- package/cjs/components/use-descriptions/index.d.ts +3 -0
- package/cjs/components/use-descriptions/index.d.ts.map +1 -0
- package/cjs/components/use-descriptions/index.js +19 -0
- package/cjs/components/use-descriptions/use-descriptions.d.ts +6 -0
- package/cjs/components/use-descriptions/use-descriptions.d.ts.map +1 -0
- package/cjs/components/use-descriptions/use-descriptions.js +77 -0
- package/cjs/components/use-descriptions/use-descriptions.type.d.ts +24 -0
- package/cjs/components/use-descriptions/use-descriptions.type.d.ts.map +1 -0
- package/cjs/components/use-descriptions/use-descriptions.type.js +5 -0
- package/cjs/components/use-select/index.d.ts +1 -0
- package/cjs/components/use-select/index.d.ts.map +1 -1
- package/cjs/components/use-select/index.js +8 -1
- package/cjs/components/use-select/use-select-group.d.ts +7 -0
- package/cjs/components/use-select/use-select-group.d.ts.map +1 -0
- package/cjs/components/use-select/use-select-group.js +51 -0
- package/cjs/components/use-select/use-select-group.type.d.ts +5 -0
- package/cjs/components/use-select/use-select-group.type.d.ts.map +1 -0
- package/cjs/components/use-select/use-select-group.type.js +5 -0
- package/cjs/components/use-select/use-select.d.ts.map +1 -1
- package/cjs/components/use-select/use-select.js +4 -4
- package/cjs/components/use-select/use-select.type.d.ts +5 -1
- package/cjs/components/use-select/use-select.type.d.ts.map +1 -1
- package/cjs/components/use-slider/use-slider.d.ts +2 -2
- package/cjs/components/use-slider/use-slider.js +4 -4
- package/cjs/components/use-tree/use-tree-node.d.ts +2 -1
- package/cjs/components/use-tree/use-tree-node.d.ts.map +1 -1
- package/cjs/components/use-tree/use-tree-node.js +7 -7
- package/cjs/components/use-tree/use-tree-node.type.d.ts +2 -2
- package/cjs/components/use-tree/use-tree-node.type.d.ts.map +1 -1
- package/cjs/components/use-tree/use-tree.d.ts +33 -10
- package/cjs/components/use-tree/use-tree.d.ts.map +1 -1
- package/cjs/components/use-tree/use-tree.js +86 -42
- package/cjs/components/use-tree/use-tree.type.d.ts +16 -13
- package/cjs/components/use-tree/use-tree.type.d.ts.map +1 -1
- package/cjs/components/use-treeselect/index.d.ts +4 -0
- package/cjs/components/use-treeselect/index.d.ts.map +1 -0
- package/cjs/components/use-treeselect/index.js +26 -0
- package/cjs/components/use-treeselect/use-tiled.d.ts +13 -0
- package/cjs/components/use-treeselect/use-tiled.d.ts.map +1 -0
- package/cjs/components/use-treeselect/use-tiled.js +99 -0
- package/cjs/components/use-treeselect/use-tiled.type.d.ts +15 -0
- package/cjs/components/use-treeselect/use-tiled.type.d.ts.map +1 -0
- package/cjs/components/use-treeselect/use-tiled.type.js +5 -0
- package/cjs/components/use-treeselect/use-treeselect.d.ts +7 -0
- package/cjs/components/use-treeselect/use-treeselect.d.ts.map +1 -0
- package/cjs/components/use-treeselect/use-treeselect.js +29 -0
- package/cjs/components/use-treeselect/use-treeselect.type.d.ts +9 -0
- package/cjs/components/use-treeselect/use-treeselect.type.d.ts.map +1 -0
- package/cjs/components/use-treeselect/use-treeselect.type.js +5 -0
- package/cjs/index.d.ts +5 -0
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +60 -0
- package/cjs/utils/dom/element.d.ts +2 -1
- package/cjs/utils/dom/element.d.ts.map +1 -1
- package/cjs/utils/dom/element.js +9 -1
- package/cjs/utils/dom/index.d.ts +3 -0
- package/cjs/utils/dom/index.d.ts.map +1 -1
- package/cjs/utils/dom/index.js +32 -10
- package/cjs/utils/dom/responsiveObserve.d.ts +13 -0
- package/cjs/utils/dom/responsiveObserve.d.ts.map +1 -0
- package/cjs/utils/dom/responsiveObserve.js +89 -0
- package/cjs/utils/dom/responsiveObserve.type.d.ts +5 -0
- package/cjs/utils/dom/responsiveObserve.type.d.ts.map +1 -0
- package/cjs/utils/dom/responsiveObserve.type.js +5 -0
- package/cjs/utils/index.d.ts +1 -0
- package/cjs/utils/index.d.ts.map +1 -1
- package/cjs/utils/index.js +12 -0
- package/cjs/utils/is.d.ts +1 -0
- package/cjs/utils/is.d.ts.map +1 -1
- package/cjs/utils/is.js +5 -1
- package/cjs/utils/render.d.ts.map +1 -1
- package/cjs/utils/tree.d.ts +14 -0
- package/cjs/utils/tree.d.ts.map +1 -0
- package/cjs/utils/tree.js +93 -0
- package/esm/common/type.d.ts +2 -0
- package/esm/common/type.d.ts.map +1 -1
- package/esm/common/use-drag-mock/index.d.ts +3 -11
- package/esm/common/use-drag-mock/index.d.ts.map +1 -1
- package/esm/common/use-drag-mock/index.js +27 -56
- package/esm/common/use-drag-mock/use-drag-mock.d.ts +11 -0
- package/esm/common/use-drag-mock/use-drag-mock.d.ts.map +1 -0
- package/esm/common/use-drag-mock/use-drag-mock.js +61 -0
- package/esm/common/use-drag-mock/use-drag-move.d.ts +11 -0
- package/esm/common/use-drag-mock/use-drag-move.d.ts.map +1 -0
- package/esm/common/use-drag-mock/use-drag-move.js +73 -0
- package/esm/common/use-drag-mock/use-drag-resize.d.ts +15 -0
- package/esm/common/use-drag-mock/use-drag-resize.d.ts.map +1 -0
- package/esm/common/use-drag-mock/use-drag-resize.js +89 -0
- package/esm/common/use-filter/index.d.ts +2 -0
- package/esm/common/use-filter/index.d.ts.map +1 -0
- package/esm/common/use-filter/index.js +19 -0
- package/esm/common/use-filter/use-filter.d.ts +19 -0
- package/esm/common/use-filter/use-filter.d.ts.map +1 -0
- package/esm/common/use-filter/use-filter.js +153 -0
- package/esm/common/use-filter/use-filter.type.d.ts +17 -0
- package/esm/common/use-filter/use-filter.type.d.ts.map +1 -0
- package/esm/common/use-filter/use-filter.type.js +5 -0
- package/esm/common/use-position-style/index.d.ts.map +1 -1
- package/esm/common/use-position-style/index.js +5 -0
- package/esm/components/use-button/use-button.d.ts +1 -1
- package/esm/components/use-button/use-button.d.ts.map +1 -1
- package/esm/components/use-button/use-button.js +2 -2
- package/esm/components/use-cascader/index.d.ts +3 -0
- package/esm/components/use-cascader/index.d.ts.map +1 -0
- package/esm/components/use-cascader/index.js +19 -0
- package/esm/components/use-cascader/use-cascader.d.ts +36 -0
- package/esm/components/use-cascader/use-cascader.d.ts.map +1 -0
- package/esm/components/use-cascader/use-cascader.js +46 -0
- package/esm/components/use-cascader/use-cascader.type.d.ts +14 -0
- package/esm/components/use-cascader/use-cascader.type.d.ts.map +1 -0
- package/esm/components/use-cascader/use-cascader.type.js +5 -0
- package/esm/components/use-collapse/index.d.ts +5 -0
- package/esm/components/use-collapse/index.d.ts.map +1 -0
- package/esm/components/use-collapse/index.js +26 -0
- package/esm/components/use-collapse/use-collapse-item.d.ts +22 -0
- package/esm/components/use-collapse/use-collapse-item.d.ts.map +1 -0
- package/esm/components/use-collapse/use-collapse-item.js +72 -0
- package/esm/components/use-collapse/use-collapse-item.type.d.ts +12 -0
- package/esm/components/use-collapse/use-collapse-item.type.d.ts.map +1 -0
- package/esm/components/use-collapse/use-collapse-item.type.js +5 -0
- package/esm/components/use-collapse/use-collapse.d.ts +8 -0
- package/esm/components/use-collapse/use-collapse.d.ts.map +1 -0
- package/esm/components/use-collapse/use-collapse.js +51 -0
- package/esm/components/use-collapse/use-collapse.type.d.ts +8 -0
- package/esm/components/use-collapse/use-collapse.type.d.ts.map +1 -0
- package/esm/components/use-collapse/use-collapse.type.js +5 -0
- package/esm/components/use-descriptions/index.d.ts +3 -0
- package/esm/components/use-descriptions/index.d.ts.map +1 -0
- package/esm/components/use-descriptions/index.js +19 -0
- package/esm/components/use-descriptions/use-descriptions.d.ts +6 -0
- package/esm/components/use-descriptions/use-descriptions.d.ts.map +1 -0
- package/esm/components/use-descriptions/use-descriptions.js +77 -0
- package/esm/components/use-descriptions/use-descriptions.type.d.ts +24 -0
- package/esm/components/use-descriptions/use-descriptions.type.d.ts.map +1 -0
- package/esm/components/use-descriptions/use-descriptions.type.js +5 -0
- package/esm/components/use-select/index.d.ts +1 -0
- package/esm/components/use-select/index.d.ts.map +1 -1
- package/esm/components/use-select/index.js +8 -1
- package/esm/components/use-select/use-select-group.d.ts +7 -0
- package/esm/components/use-select/use-select-group.d.ts.map +1 -0
- package/esm/components/use-select/use-select-group.js +51 -0
- package/esm/components/use-select/use-select-group.type.d.ts +5 -0
- package/esm/components/use-select/use-select-group.type.d.ts.map +1 -0
- package/esm/components/use-select/use-select-group.type.js +5 -0
- package/esm/components/use-select/use-select.d.ts.map +1 -1
- package/esm/components/use-select/use-select.js +4 -4
- package/esm/components/use-select/use-select.type.d.ts +5 -1
- package/esm/components/use-select/use-select.type.d.ts.map +1 -1
- package/esm/components/use-slider/use-slider.d.ts +2 -2
- package/esm/components/use-slider/use-slider.js +4 -4
- package/esm/components/use-tree/use-tree-node.d.ts +2 -1
- package/esm/components/use-tree/use-tree-node.d.ts.map +1 -1
- package/esm/components/use-tree/use-tree-node.js +7 -7
- package/esm/components/use-tree/use-tree-node.type.d.ts +2 -2
- package/esm/components/use-tree/use-tree-node.type.d.ts.map +1 -1
- package/esm/components/use-tree/use-tree.d.ts +33 -10
- package/esm/components/use-tree/use-tree.d.ts.map +1 -1
- package/esm/components/use-tree/use-tree.js +86 -42
- package/esm/components/use-tree/use-tree.type.d.ts +16 -13
- package/esm/components/use-tree/use-tree.type.d.ts.map +1 -1
- package/esm/components/use-treeselect/index.d.ts +4 -0
- package/esm/components/use-treeselect/index.d.ts.map +1 -0
- package/esm/components/use-treeselect/index.js +26 -0
- package/esm/components/use-treeselect/use-tiled.d.ts +13 -0
- package/esm/components/use-treeselect/use-tiled.d.ts.map +1 -0
- package/esm/components/use-treeselect/use-tiled.js +99 -0
- package/esm/components/use-treeselect/use-tiled.type.d.ts +15 -0
- package/esm/components/use-treeselect/use-tiled.type.d.ts.map +1 -0
- package/esm/components/use-treeselect/use-tiled.type.js +5 -0
- package/esm/components/use-treeselect/use-treeselect.d.ts +7 -0
- package/esm/components/use-treeselect/use-treeselect.d.ts.map +1 -0
- package/esm/components/use-treeselect/use-treeselect.js +29 -0
- package/esm/components/use-treeselect/use-treeselect.type.d.ts +9 -0
- package/esm/components/use-treeselect/use-treeselect.type.d.ts.map +1 -0
- package/esm/components/use-treeselect/use-treeselect.type.js +5 -0
- package/esm/index.d.ts +5 -0
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +60 -0
- package/esm/utils/dom/element.d.ts +2 -1
- package/esm/utils/dom/element.d.ts.map +1 -1
- package/esm/utils/dom/element.js +9 -1
- package/esm/utils/dom/index.d.ts +3 -0
- package/esm/utils/dom/index.d.ts.map +1 -1
- package/esm/utils/dom/index.js +32 -10
- package/esm/utils/dom/responsiveObserve.d.ts +13 -0
- package/esm/utils/dom/responsiveObserve.d.ts.map +1 -0
- package/esm/utils/dom/responsiveObserve.js +89 -0
- package/esm/utils/dom/responsiveObserve.type.d.ts +5 -0
- package/esm/utils/dom/responsiveObserve.type.d.ts.map +1 -0
- package/esm/utils/dom/responsiveObserve.type.js +5 -0
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.d.ts.map +1 -1
- package/esm/utils/index.js +12 -0
- package/esm/utils/is.d.ts +1 -0
- package/esm/utils/is.d.ts.map +1 -1
- package/esm/utils/is.js +5 -1
- package/esm/utils/render.d.ts.map +1 -1
- package/esm/utils/tree.d.ts +14 -0
- package/esm/utils/tree.d.ts.map +1 -0
- package/esm/utils/tree.js +93 -0
- package/package.json +3 -2
@@ -0,0 +1,153 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.default = void 0;
|
8
|
+
require("core-js/modules/es.array.concat.js");
|
9
|
+
require("core-js/modules/es.array.filter.js");
|
10
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
11
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
12
|
+
var _react = require("react");
|
13
|
+
var _utils = require("../../utils");
|
14
|
+
var useFilter = function useFilter(props) {
|
15
|
+
var data = props.data,
|
16
|
+
groupKey = props.groupKey,
|
17
|
+
keygen = props.keygen,
|
18
|
+
hideCreateOption = props.hideCreateOption,
|
19
|
+
expandedProp = props.expanded,
|
20
|
+
treeData = props.treeData,
|
21
|
+
childrenKey = props.childrenKey,
|
22
|
+
showHitDescendants = props.showHitDescendants,
|
23
|
+
onFilter = props.onFilter,
|
24
|
+
onCreate = props.onCreate,
|
25
|
+
onFilterWidthCreate = props.onFilterWidthCreate,
|
26
|
+
onAdvancedFilter = props.onAdvancedFilter;
|
27
|
+
var _useState = (0, _react.useState)(data),
|
28
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
29
|
+
filterData = _useState2[0],
|
30
|
+
setFilterData = _useState2[1];
|
31
|
+
var _useState3 = (0, _react.useState)(''),
|
32
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
33
|
+
filterText = _useState4[0],
|
34
|
+
setFilterText = _useState4[1];
|
35
|
+
var _useState5 = (0, _react.useState)(undefined),
|
36
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
37
|
+
filterFunc = _useState6[0],
|
38
|
+
setFilterFunc = _useState6[1];
|
39
|
+
var _useState7 = (0, _react.useState)(''),
|
40
|
+
_useState8 = (0, _slicedToArray2.default)(_useState7, 2),
|
41
|
+
inputText = _useState8[0],
|
42
|
+
setInputText = _useState8[1];
|
43
|
+
var _useState9 = (0, _react.useState)(),
|
44
|
+
_useState10 = (0, _slicedToArray2.default)(_useState9, 2),
|
45
|
+
createdData = _useState10[0],
|
46
|
+
setCreatedData = _useState10[1];
|
47
|
+
var filterFn = onFilterWidthCreate || function (item, createdData, key) {
|
48
|
+
return (0, _utils.getKey)(keygen, item) === key;
|
49
|
+
};
|
50
|
+
var getData = function getData() {
|
51
|
+
var newData = filterData || [];
|
52
|
+
if (createdData && !hideCreateOption) {
|
53
|
+
var newKey = (0, _utils.getKey)(keygen, createdData);
|
54
|
+
var sameItem = newData.find(function (item) {
|
55
|
+
return filterFn(item, createdData, newKey);
|
56
|
+
});
|
57
|
+
if (!sameItem) return [createdData].concat((0, _toConsumableArray2.default)(newData));
|
58
|
+
}
|
59
|
+
return newData;
|
60
|
+
};
|
61
|
+
var getTreeData = function getTreeData() {
|
62
|
+
var filterExpandedKeys = expandedProp || [];
|
63
|
+
var newData = treeData;
|
64
|
+
var nextFilter = onFilter === null || onFilter === void 0 ? void 0 : onFilter(filterText);
|
65
|
+
if (filterText) {
|
66
|
+
newData = (0, _utils.getFilterTree)(treeData, nextFilter, filterExpandedKeys, function (node) {
|
67
|
+
return (0, _utils.getKey)(keygen, node);
|
68
|
+
}, childrenKey, showHitDescendants, undefined, {
|
69
|
+
advanced: !!onAdvancedFilter
|
70
|
+
});
|
71
|
+
}
|
72
|
+
return {
|
73
|
+
newData: newData,
|
74
|
+
filterExpandedKeys: filterExpandedKeys
|
75
|
+
};
|
76
|
+
};
|
77
|
+
var handleClearCreatedData = function handleClearCreatedData() {
|
78
|
+
setCreatedData(undefined);
|
79
|
+
};
|
80
|
+
var handleCreate = function handleCreate(text) {
|
81
|
+
var createFn = typeof onCreate === 'boolean' ? function (t) {
|
82
|
+
return t;
|
83
|
+
} : onCreate;
|
84
|
+
return createFn === null || createFn === void 0 ? void 0 : createFn(text);
|
85
|
+
};
|
86
|
+
var handleFilter = function handleFilter(text) {
|
87
|
+
setInputText(text);
|
88
|
+
if (!text) {
|
89
|
+
if (data) {
|
90
|
+
setFilterData(data);
|
91
|
+
}
|
92
|
+
if (treeData) {
|
93
|
+
setFilterData(treeData);
|
94
|
+
}
|
95
|
+
setFilterText('');
|
96
|
+
setFilterFunc(undefined);
|
97
|
+
handleClearCreatedData();
|
98
|
+
// 没有 text 时触发一次 onFilter 以便外部重置数据
|
99
|
+
if (onFilter) onFilter(text);
|
100
|
+
return;
|
101
|
+
}
|
102
|
+
if (onCreate) {
|
103
|
+
var innerData = handleCreate(text);
|
104
|
+
setCreatedData(innerData);
|
105
|
+
}
|
106
|
+
if (!onFilter || !(0, _utils.isFunc)(onFilter)) return;
|
107
|
+
setFilterText(text);
|
108
|
+
var next = onFilter(text);
|
109
|
+
if (!(0, _utils.isFunc)(next)) return;
|
110
|
+
setFilterFunc(next);
|
111
|
+
var nextData = data === null || data === void 0 ? void 0 : data.filter(function (item) {
|
112
|
+
if (!groupKey) return next(item);
|
113
|
+
// 剔除分组项
|
114
|
+
if (item[groupKey]) return item;
|
115
|
+
return next(item);
|
116
|
+
});
|
117
|
+
setFilterData(nextData);
|
118
|
+
};
|
119
|
+
var handleResetData = function handleResetData() {
|
120
|
+
setFilterData(data);
|
121
|
+
};
|
122
|
+
(0, _react.useEffect)(function () {
|
123
|
+
if (data) setFilterData(data);
|
124
|
+
}, [data]);
|
125
|
+
var nextData;
|
126
|
+
var nextExpanded;
|
127
|
+
if (treeData) {
|
128
|
+
var _getTreeData = getTreeData(),
|
129
|
+
newData = _getTreeData.newData,
|
130
|
+
filterExpandedKeys = _getTreeData.filterExpandedKeys;
|
131
|
+
nextData = newData;
|
132
|
+
nextExpanded = filterExpandedKeys;
|
133
|
+
}
|
134
|
+
if (data) {
|
135
|
+
nextData = getData();
|
136
|
+
}
|
137
|
+
return {
|
138
|
+
inputText: inputText,
|
139
|
+
filterText: filterText,
|
140
|
+
expanded: nextExpanded,
|
141
|
+
rawData: data || treeData,
|
142
|
+
filterData: nextData,
|
143
|
+
createdData: createdData,
|
144
|
+
setInputText: setInputText,
|
145
|
+
setFilterText: setFilterText,
|
146
|
+
onCreate: onCreate ? handleCreate : undefined,
|
147
|
+
onFilter: onFilter || onCreate ? handleFilter : undefined,
|
148
|
+
onResetFilter: handleResetData,
|
149
|
+
onClearCreatedData: handleClearCreatedData
|
150
|
+
};
|
151
|
+
};
|
152
|
+
var _default = useFilter;
|
153
|
+
exports.default = _default;
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { KeygenType, KeygenResult } from '../type';
|
2
|
+
export interface UseFilterProps<DataItem> {
|
3
|
+
data?: DataItem[];
|
4
|
+
treeData?: DataItem[];
|
5
|
+
delay?: number;
|
6
|
+
childrenKey?: keyof DataItem & string;
|
7
|
+
keygen: KeygenType<DataItem>;
|
8
|
+
showHitDescendants?: boolean;
|
9
|
+
expanded?: KeygenResult[];
|
10
|
+
groupKey?: string;
|
11
|
+
hideCreateOption?: boolean;
|
12
|
+
onAdvancedFilter: boolean;
|
13
|
+
onFilter?: (text: string) => void | ((data: DataItem) => boolean);
|
14
|
+
onFilterWidthCreate?: (data: DataItem, createdData: DataItem, key: string | number) => boolean;
|
15
|
+
onCreate?: ((input: string | DataItem) => DataItem | string) | boolean;
|
16
|
+
}
|
17
|
+
//# sourceMappingURL=use-filter.type.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"use-filter.type.d.ts","sourceRoot":"","sources":["use-filter.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEnD,MAAM,WAAW,cAAc,CAAC,QAAQ;IACtC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC;IACtC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC;IAClE,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,KAAK,OAAO,CAAC;IAC/F,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,KAAK,QAAQ,GAAG,MAAM,CAAC,GAAG,OAAO,CAAC;CACxE"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAMnD,oBAAY,kBAAkB,GAC1B,aAAa,GACb,UAAU,GACV,cAAc,GACd,WAAW,GACX,MAAM,GACN,OAAO,CAAC;AACZ,oBAAY,gBAAgB,GACxB,aAAa,GACb,cAAc,GACd,UAAU,GACV,WAAW,GACX,KAAK,GACL,QAAQ,CAAC;AAYb,aAAK,YAAY,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,OAAO,CAAC;AACpE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC/B,YAAY,EAAE,MAAM,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AACD,eAAO,MAAM,gBAAgB,WAAY,mBAAmB,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAMnD,oBAAY,kBAAkB,GAC1B,aAAa,GACb,UAAU,GACV,cAAc,GACd,WAAW,GACX,MAAM,GACN,OAAO,CAAC;AACZ,oBAAY,gBAAgB,GACxB,aAAa,GACb,cAAc,GACd,UAAU,GACV,WAAW,GACX,KAAK,GACL,QAAQ,CAAC;AAYb,aAAK,YAAY,GAAG,kBAAkB,GAAG,gBAAgB,GAAG,OAAO,CAAC;AACpE,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAC;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACzC,SAAS,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IAC/B,YAAY,EAAE,MAAM,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AACD,eAAO,MAAM,gBAAgB,WAAY,mBAAmB,wBAwN3D,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
@@ -13,6 +13,7 @@ require("core-js/modules/es.array.includes.js");
|
|
13
13
|
require("core-js/modules/es.string.starts-with.js");
|
14
14
|
require("core-js/modules/es.regexp.exec.js");
|
15
15
|
require("core-js/modules/es.string.replace.js");
|
16
|
+
require("core-js/modules/es.array.index-of.js");
|
16
17
|
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
17
18
|
var _react = _interopRequireWildcard(require("react"));
|
18
19
|
var _getPositionStyle = require("./get-position-style");
|
@@ -228,6 +229,10 @@ var usePositionStyle = function usePositionStyle(config) {
|
|
228
229
|
} else {
|
229
230
|
newStyle = getAbsoluteStyle(realPosition);
|
230
231
|
}
|
232
|
+
// for animation
|
233
|
+
if (realPosition.indexOf('top') === 0) {
|
234
|
+
newStyle.transformOrigin = 'center bottom';
|
235
|
+
}
|
231
236
|
return newStyle;
|
232
237
|
};
|
233
238
|
var updateStyle = (0, _usePersistFn.default)(function () {
|
@@ -32,7 +32,7 @@ declare const useButton: (props?: BaseButtonProps) => {
|
|
32
32
|
onRef: React.Ref<HTMLAnchorElement | HTMLButtonElement> | undefined;
|
33
33
|
onClick: (event: React.MouseEvent<HTMLButtonElement> | React.MouseEvent<HTMLAnchorElement>) => void;
|
34
34
|
};
|
35
|
-
getSpaceChildren: (children: React.ReactNode, space?: boolean) => React.ReactNode;
|
35
|
+
getSpaceChildren: (children: React.ReactNode, space?: boolean, className?: string) => React.ReactNode;
|
36
36
|
};
|
37
37
|
export default useButton;
|
38
38
|
//# sourceMappingURL=use-button.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-button.d.ts","sourceRoot":"","sources":["use-button.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,SAAS,WAAW,eAAe;;;;;;;;;;;;;yBAmB7B,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;;;;;;;;;;;;;;;;yBAAzE,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;;iCAQ/C,MAAM,SAAS,UAAU,OAAO;
|
1
|
+
{"version":3,"file":"use-button.d.ts","sourceRoot":"","sources":["use-button.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAe,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,QAAA,MAAM,SAAS,WAAW,eAAe;;;;;;;;;;;;;yBAmB7B,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;;;;;;;;;;;;;;;;yBAAzE,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;;iCAQ/C,MAAM,SAAS,UAAU,OAAO,cAAc,MAAM;CAqDzF,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
@@ -46,8 +46,8 @@ var useButton = function useButton() {
|
|
46
46
|
otherHandlers === null || otherHandlers === void 0 ? void 0 : (_otherHandlers$onClic = otherHandlers.onClick) === null || _otherHandlers$onClic === void 0 ? void 0 : _otherHandlers$onClic.call(otherHandlers, event);
|
47
47
|
};
|
48
48
|
};
|
49
|
-
var getSpaceChildren = function getSpaceChildren(children, space) {
|
50
|
-
return (0, _element.wrapSpan)(children, space);
|
49
|
+
var getSpaceChildren = function getSpaceChildren(children, space, className) {
|
50
|
+
return (0, _element.wrapSpan)(children, space, className);
|
51
51
|
};
|
52
52
|
var getAnchorProps = function getAnchorProps() {
|
53
53
|
var externalProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC"}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
Object.defineProperty(exports, "default", {
|
8
|
+
enumerable: true,
|
9
|
+
get: function get() {
|
10
|
+
return _useCascader.default;
|
11
|
+
}
|
12
|
+
});
|
13
|
+
Object.defineProperty(exports, "useCascader", {
|
14
|
+
enumerable: true,
|
15
|
+
get: function get() {
|
16
|
+
return _useCascader.default;
|
17
|
+
}
|
18
|
+
});
|
19
|
+
var _useCascader = _interopRequireDefault(require("./use-cascader"));
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import { KeygenResult } from '../../common/type';
|
2
|
+
import { BaseCascaderProps } from './use-cascader.type';
|
3
|
+
declare const useCascader: <DataItem, Value extends KeygenResult[]>(props: BaseCascaderProps<DataItem, Value>) => {
|
4
|
+
datum: {
|
5
|
+
get: (id: KeygenResult) => import("../use-tree/use-tree.type").CheckedStatusType | undefined;
|
6
|
+
set: (id: KeygenResult, checked: import("../use-tree/use-tree.type").CheckedStatusType, direction?: "desc" | "asc" | undefined) => import("../use-tree/use-tree.type").CheckedStatusType;
|
7
|
+
childrenKey: keyof DataItem & string;
|
8
|
+
data: DataItem[];
|
9
|
+
getPath: (id: KeygenResult) => import("../use-tree").TreePathType<KeygenResult> | undefined;
|
10
|
+
getValue: () => KeygenResult[];
|
11
|
+
getChecked: (id: KeygenResult) => boolean | "indeterminate";
|
12
|
+
getKey: (item: DataItem, id?: KeygenResult, index?: number | undefined) => KeygenResult;
|
13
|
+
getDataByValues: (values: KeygenResult | KeygenResult[]) => NonNullable<DataItem> | {
|
14
|
+
IS_NOT_MATCHED_VALUE: boolean;
|
15
|
+
value: KeygenResult;
|
16
|
+
} | (NonNullable<DataItem> | {
|
17
|
+
IS_NOT_MATCHED_VALUE: boolean;
|
18
|
+
value: KeygenResult;
|
19
|
+
} | null)[] | null;
|
20
|
+
setValue: (value?: KeygenResult[] | undefined) => void;
|
21
|
+
setData: (data?: DataItem[] | undefined) => void;
|
22
|
+
isDisabled: (id: KeygenResult) => boolean;
|
23
|
+
bindNode: (id: KeygenResult, update: import("../use-tree").UpdateFunc) => {
|
24
|
+
active: boolean;
|
25
|
+
expanded: boolean;
|
26
|
+
};
|
27
|
+
getDataById: (id: KeygenResult) => NonNullable<DataItem> | {
|
28
|
+
IS_NOT_MATCHED_VALUE: boolean;
|
29
|
+
value: KeygenResult;
|
30
|
+
} | null;
|
31
|
+
};
|
32
|
+
value: Value | undefined;
|
33
|
+
onChange: (value: Value, selected?: DataItem | undefined) => void;
|
34
|
+
};
|
35
|
+
export default useCascader;
|
36
|
+
//# sourceMappingURL=use-cascader.d.ts.map
|
@@ -0,0 +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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqChB,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.default = void 0;
|
8
|
+
var _useInputAble2 = require("../../common/use-input-able");
|
9
|
+
var _useTree2 = _interopRequireDefault(require("../use-tree"));
|
10
|
+
var useCascader = function useCascader(props) {
|
11
|
+
var data = props.data,
|
12
|
+
control = props.control,
|
13
|
+
keygen = props.keygen,
|
14
|
+
mode = props.mode,
|
15
|
+
disabled = props.disabled,
|
16
|
+
defaultValue = props.defaultValue,
|
17
|
+
beforeChange = props.beforeChange,
|
18
|
+
valueProp = props.value,
|
19
|
+
onChangeProp = props.onChange;
|
20
|
+
var _useInputAble = (0, _useInputAble2.useInputAble)({
|
21
|
+
value: valueProp,
|
22
|
+
control: control,
|
23
|
+
defaultValue: defaultValue,
|
24
|
+
beforeChange: beforeChange,
|
25
|
+
onChange: onChangeProp
|
26
|
+
}),
|
27
|
+
value = _useInputAble.value,
|
28
|
+
onChange = _useInputAble.onChange;
|
29
|
+
var _useTree = (0, _useTree2.default)({
|
30
|
+
value: value,
|
31
|
+
data: data,
|
32
|
+
unmatch: false,
|
33
|
+
keygen: keygen,
|
34
|
+
mode: mode,
|
35
|
+
disabled: disabled,
|
36
|
+
isControlled: control
|
37
|
+
}),
|
38
|
+
datum = _useTree.datum;
|
39
|
+
return {
|
40
|
+
datum: datum,
|
41
|
+
value: value,
|
42
|
+
onChange: onChange
|
43
|
+
};
|
44
|
+
};
|
45
|
+
var _default = useCascader;
|
46
|
+
exports.default = _default;
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import { KeygenResult, TreeKeygenType, ObjectKey } from '../../common/type';
|
2
|
+
import { TreeModeType } from '../use-tree/use-tree.type';
|
3
|
+
export interface BaseCascaderProps<DataItem, Value extends KeygenResult[]> {
|
4
|
+
value?: Value;
|
5
|
+
defaultValue?: Value;
|
6
|
+
data: DataItem[];
|
7
|
+
control: boolean;
|
8
|
+
childrenKey?: ObjectKey<DataItem>;
|
9
|
+
onChange?: (value: Value, selected?: DataItem) => void;
|
10
|
+
beforeChange?: (value: Value) => any;
|
11
|
+
mode?: TreeModeType;
|
12
|
+
keygen: TreeKeygenType<DataItem>;
|
13
|
+
}
|
14
|
+
//# sourceMappingURL=use-cascader.type.d.ts.map
|
@@ -0,0 +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,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;CAClC"}
|
@@ -0,0 +1,5 @@
|
|
1
|
+
export { default, default as useCollapse } from './use-collapse';
|
2
|
+
export type { BaseCollapseProps } from './use-collapse.type';
|
3
|
+
export { default as useCollapseItem } from './use-collapse-item';
|
4
|
+
export type { BaseCollapseType, BaseCollapseItemContext, BaseCollapseItemProps, } from './use-collapse-item.type';
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACjE,YAAY,EACV,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,0BAA0B,CAAC"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
Object.defineProperty(exports, "default", {
|
8
|
+
enumerable: true,
|
9
|
+
get: function get() {
|
10
|
+
return _useCollapse.default;
|
11
|
+
}
|
12
|
+
});
|
13
|
+
Object.defineProperty(exports, "useCollapse", {
|
14
|
+
enumerable: true,
|
15
|
+
get: function get() {
|
16
|
+
return _useCollapse.default;
|
17
|
+
}
|
18
|
+
});
|
19
|
+
Object.defineProperty(exports, "useCollapseItem", {
|
20
|
+
enumerable: true,
|
21
|
+
get: function get() {
|
22
|
+
return _useCollapseItem.default;
|
23
|
+
}
|
24
|
+
});
|
25
|
+
var _useCollapse = _interopRequireDefault(require("./use-collapse"));
|
26
|
+
var _useCollapseItem = _interopRequireDefault(require("./use-collapse-item"));
|
@@ -0,0 +1,22 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { ObjectType } from '../../common/type';
|
3
|
+
import type { BaseCollapseType } from './use-collapse-item.type';
|
4
|
+
declare const useCollapseItem: (props: BaseCollapseType) => {
|
5
|
+
judgeExpanded: boolean;
|
6
|
+
getItemContentProps: <TOther extends ObjectType<any>>(externalProps?: TOther) => TOther & {
|
7
|
+
'data-soui-disabled': boolean;
|
8
|
+
tabIndex: number;
|
9
|
+
onClick: (e: import("react").MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
10
|
+
};
|
11
|
+
getHeaderIconProps: <TOther_1 extends ObjectType<any>>(externalProps?: TOther_1) => TOther_1 & {
|
12
|
+
onClick: (e: import("react").MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
13
|
+
};
|
14
|
+
getTitleProps: <TOther_2 extends ObjectType<any>>(externalProps?: TOther_2) => TOther_2 & {
|
15
|
+
onClick: (e: import("react").MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
16
|
+
};
|
17
|
+
getExtraProps: <TOther_3 extends ObjectType<any>>(externalProps?: TOther_3) => TOther_3 & {
|
18
|
+
onClick: (e: import("react").MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
19
|
+
};
|
20
|
+
};
|
21
|
+
export default useCollapseItem;
|
22
|
+
//# sourceMappingURL=use-collapse-item.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"use-collapse-item.d.ts","sourceRoot":"","sources":["use-collapse-item.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAEjE,QAAA,MAAM,eAAe,UAAW,gBAAgB;;;;;;;;;;;;;;;;CA4C/C,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
@@ -0,0 +1,72 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
require("core-js/modules/es.array.filter.js");
|
4
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
5
|
+
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
6
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
8
|
+
value: true
|
9
|
+
});
|
10
|
+
exports.default = void 0;
|
11
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
12
|
+
require("core-js/modules/es.array.includes.js");
|
13
|
+
var _usePersistFn = require("../../common/use-persist-fn");
|
14
|
+
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; }
|
15
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
16
|
+
var useCollapseItem = function useCollapseItem(props) {
|
17
|
+
var active = props.active,
|
18
|
+
keygen = props.keygen,
|
19
|
+
triggerRegion = props.triggerRegion,
|
20
|
+
disabled = props.disabled,
|
21
|
+
onChange = props.onChange;
|
22
|
+
var judgeExpanded = active.indexOf(keygen) > -1;
|
23
|
+
var currentDisabled = triggerRegion === 'disabled' || disabled;
|
24
|
+
var handleClickByRegion = (0, _usePersistFn.usePersistFn)(function (e, regionKey) {
|
25
|
+
if (currentDisabled) return;
|
26
|
+
var triggerKey = triggerRegion === 'icon' ? 0 : triggerRegion === 'header' ? 1 : 2;
|
27
|
+
if (regionKey === triggerKey || triggerRegion === 'header' && [0, 1].includes(regionKey)) onChange(keygen, e);
|
28
|
+
});
|
29
|
+
var getItemContentProps = function getItemContentProps() {
|
30
|
+
var externalProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
31
|
+
return _objectSpread(_objectSpread({}, externalProps), {}, {
|
32
|
+
'data-soui-disabled': !!currentDisabled,
|
33
|
+
tabIndex: currentDisabled ? -1 : 0,
|
34
|
+
onClick: function onClick(e) {
|
35
|
+
return handleClickByRegion(e, 2);
|
36
|
+
}
|
37
|
+
});
|
38
|
+
};
|
39
|
+
var getHeaderIconProps = function getHeaderIconProps() {
|
40
|
+
var externalProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
41
|
+
return _objectSpread(_objectSpread({}, externalProps), {}, {
|
42
|
+
onClick: function onClick(e) {
|
43
|
+
return handleClickByRegion(e, 0);
|
44
|
+
}
|
45
|
+
});
|
46
|
+
};
|
47
|
+
var getTitleProps = function getTitleProps() {
|
48
|
+
var externalProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
49
|
+
return _objectSpread(_objectSpread({}, externalProps), {}, {
|
50
|
+
onClick: function onClick(e) {
|
51
|
+
return handleClickByRegion(e, 1);
|
52
|
+
}
|
53
|
+
});
|
54
|
+
};
|
55
|
+
var getExtraProps = function getExtraProps() {
|
56
|
+
var externalProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
57
|
+
return _objectSpread(_objectSpread({}, externalProps), {}, {
|
58
|
+
onClick: function onClick(e) {
|
59
|
+
return e.stopPropagation();
|
60
|
+
}
|
61
|
+
});
|
62
|
+
};
|
63
|
+
return {
|
64
|
+
judgeExpanded: judgeExpanded,
|
65
|
+
getItemContentProps: getItemContentProps,
|
66
|
+
getHeaderIconProps: getHeaderIconProps,
|
67
|
+
getTitleProps: getTitleProps,
|
68
|
+
getExtraProps: getExtraProps
|
69
|
+
};
|
70
|
+
};
|
71
|
+
var _default = useCollapseItem;
|
72
|
+
exports.default = _default;
|
@@ -0,0 +1,12 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
export interface BaseCollapseItemContext {
|
3
|
+
active: string | string[];
|
4
|
+
triggerRegion?: 'icon' | 'header' | 'disabled';
|
5
|
+
onChange: (newActive: string, event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
6
|
+
}
|
7
|
+
export interface BaseCollapseItemProps {
|
8
|
+
keygen: string;
|
9
|
+
disabled?: boolean;
|
10
|
+
}
|
11
|
+
export declare type BaseCollapseType = BaseCollapseItemContext & BaseCollapseItemProps;
|
12
|
+
//# sourceMappingURL=use-collapse-item.type.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"use-collapse-item.type.d.ts","sourceRoot":"","sources":["use-collapse-item.type.ts"],"names":[],"mappings":";AAAA,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC/C,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CAC5F;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,oBAAY,gBAAgB,GAAG,uBAAuB,GAAG,qBAAqB,CAAC"}
|
@@ -0,0 +1,8 @@
|
|
1
|
+
import React from 'react';
|
2
|
+
import type { BaseCollapseProps } from './use-collapse.type';
|
3
|
+
declare const useCollapse: (props: BaseCollapseProps) => {
|
4
|
+
active: string[];
|
5
|
+
onChange: (newActive: string, event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
6
|
+
};
|
7
|
+
export default useCollapse;
|
8
|
+
//# sourceMappingURL=use-collapse.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"use-collapse.d.ts","sourceRoot":"","sources":["use-collapse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAU7D,QAAA,MAAM,WAAW,UAAW,iBAAiB;;0BAWV,MAAM,SAAS,gBAAgB,CAAC,cAAc,EAAE,UAAU,CAAC;CAkB7F,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
@@ -0,0 +1,51 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
5
|
+
value: true
|
6
|
+
});
|
7
|
+
exports.default = void 0;
|
8
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
10
|
+
require("core-js/modules/es.array.concat.js");
|
11
|
+
require("core-js/modules/es.array.slice.js");
|
12
|
+
require("core-js/modules/es.array.includes.js");
|
13
|
+
require("core-js/modules/es.string.includes.js");
|
14
|
+
require("core-js/modules/es.array.filter.js");
|
15
|
+
var _react = require("react");
|
16
|
+
var _is = require("../../utils/is");
|
17
|
+
var getCurrentActive = function getCurrentActive(active, accordion) {
|
18
|
+
// @ts-ignore
|
19
|
+
var res = [].concat(active);
|
20
|
+
if (accordion) return res.slice(0, 1);
|
21
|
+
return res;
|
22
|
+
};
|
23
|
+
var useCollapse = function useCollapse(props) {
|
24
|
+
var defaultActive = props.defaultActive,
|
25
|
+
active = props.active,
|
26
|
+
accordion = props.accordion,
|
27
|
+
onChange = props.onChange;
|
28
|
+
var _useState = (0, _react.useState)(getCurrentActive(defaultActive, accordion) || []),
|
29
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
30
|
+
currentActive = _useState2[0],
|
31
|
+
setCurrentActive = _useState2[1];
|
32
|
+
var getCurrentValue = function getCurrentValue() {
|
33
|
+
if (active !== undefined) return getCurrentActive(active, accordion);
|
34
|
+
return currentActive;
|
35
|
+
};
|
36
|
+
var handleChange = function handleChange(newActive, event) {
|
37
|
+
var currentActive = getCurrentValue() || [];
|
38
|
+
var isActive = currentActive.includes(newActive);
|
39
|
+
var newCurrentActive = isActive ? currentActive.filter(function (item) {
|
40
|
+
return item !== newActive;
|
41
|
+
}) : accordion ? [newActive] : [].concat((0, _toConsumableArray2.default)(currentActive), [newActive]);
|
42
|
+
if (active === undefined) setCurrentActive(newCurrentActive);
|
43
|
+
if ((0, _is.isFunc)(onChange)) onChange === null || onChange === void 0 ? void 0 : onChange(newActive, newCurrentActive, event);
|
44
|
+
};
|
45
|
+
return {
|
46
|
+
active: getCurrentValue(),
|
47
|
+
onChange: handleChange
|
48
|
+
};
|
49
|
+
};
|
50
|
+
var _default = useCollapse;
|
51
|
+
exports.default = _default;
|
@@ -0,0 +1,8 @@
|
|
1
|
+
/// <reference types="react" />
|
2
|
+
import type { BaseCollapseItemContext } from './use-collapse-item.type';
|
3
|
+
export interface BaseCollapseProps extends Partial<Pick<BaseCollapseItemContext, 'active'>> {
|
4
|
+
defaultActive?: string | string[];
|
5
|
+
accordion?: boolean;
|
6
|
+
onChange?: (active: string, actives: string[], e: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
7
|
+
}
|
8
|
+
//# sourceMappingURL=use-collapse.type.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"use-collapse.type.d.ts","sourceRoot":"","sources":["use-collapse.type.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,MAAM,WAAW,iBAAkB,SAAQ,OAAO,CAAC,IAAI,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;IACzF,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,CACT,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EAAE,EACjB,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,KAC5C,IAAI,CAAC;CACX"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACzE,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
|