@sheinx/hooks 3.0.0-alpha.1 → 3.0.0-alpha.3

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 (257) hide show
  1. package/cjs/common/type.d.ts +2 -0
  2. package/cjs/common/type.d.ts.map +1 -1
  3. package/cjs/common/use-drag-mock/index.d.ts +3 -11
  4. package/cjs/common/use-drag-mock/index.d.ts.map +1 -1
  5. package/cjs/common/use-drag-mock/index.js +27 -56
  6. package/cjs/common/use-drag-mock/use-drag-mock.d.ts +11 -0
  7. package/cjs/common/use-drag-mock/use-drag-mock.d.ts.map +1 -0
  8. package/cjs/common/use-drag-mock/use-drag-mock.js +61 -0
  9. package/cjs/common/use-drag-mock/use-drag-move.d.ts +11 -0
  10. package/cjs/common/use-drag-mock/use-drag-move.d.ts.map +1 -0
  11. package/cjs/common/use-drag-mock/use-drag-move.js +73 -0
  12. package/cjs/common/use-drag-mock/use-drag-resize.d.ts +15 -0
  13. package/cjs/common/use-drag-mock/use-drag-resize.d.ts.map +1 -0
  14. package/cjs/common/use-drag-mock/use-drag-resize.js +89 -0
  15. package/cjs/common/use-filter/index.d.ts +2 -0
  16. package/cjs/common/use-filter/index.d.ts.map +1 -0
  17. package/cjs/common/use-filter/index.js +19 -0
  18. package/cjs/common/use-filter/use-filter.d.ts +19 -0
  19. package/cjs/common/use-filter/use-filter.d.ts.map +1 -0
  20. package/cjs/common/use-filter/use-filter.js +153 -0
  21. package/cjs/common/use-filter/use-filter.type.d.ts +17 -0
  22. package/cjs/common/use-filter/use-filter.type.d.ts.map +1 -0
  23. package/cjs/common/use-filter/use-filter.type.js +5 -0
  24. package/cjs/common/use-position-style/index.d.ts.map +1 -1
  25. package/cjs/common/use-position-style/index.js +5 -0
  26. package/cjs/components/use-button/use-button.d.ts +1 -1
  27. package/cjs/components/use-button/use-button.d.ts.map +1 -1
  28. package/cjs/components/use-button/use-button.js +2 -2
  29. package/cjs/components/use-cascader/index.d.ts +3 -0
  30. package/cjs/components/use-cascader/index.d.ts.map +1 -0
  31. package/cjs/components/use-cascader/index.js +19 -0
  32. package/cjs/components/use-cascader/use-cascader.d.ts +36 -0
  33. package/cjs/components/use-cascader/use-cascader.d.ts.map +1 -0
  34. package/cjs/components/use-cascader/use-cascader.js +46 -0
  35. package/cjs/components/use-cascader/use-cascader.type.d.ts +14 -0
  36. package/cjs/components/use-cascader/use-cascader.type.d.ts.map +1 -0
  37. package/cjs/components/use-cascader/use-cascader.type.js +5 -0
  38. package/cjs/components/use-collapse/index.d.ts +5 -0
  39. package/cjs/components/use-collapse/index.d.ts.map +1 -0
  40. package/cjs/components/use-collapse/index.js +26 -0
  41. package/cjs/components/use-collapse/use-collapse-item.d.ts +22 -0
  42. package/cjs/components/use-collapse/use-collapse-item.d.ts.map +1 -0
  43. package/cjs/components/use-collapse/use-collapse-item.js +72 -0
  44. package/cjs/components/use-collapse/use-collapse-item.type.d.ts +12 -0
  45. package/cjs/components/use-collapse/use-collapse-item.type.d.ts.map +1 -0
  46. package/cjs/components/use-collapse/use-collapse-item.type.js +5 -0
  47. package/cjs/components/use-collapse/use-collapse.d.ts +8 -0
  48. package/cjs/components/use-collapse/use-collapse.d.ts.map +1 -0
  49. package/cjs/components/use-collapse/use-collapse.js +51 -0
  50. package/cjs/components/use-collapse/use-collapse.type.d.ts +8 -0
  51. package/cjs/components/use-collapse/use-collapse.type.d.ts.map +1 -0
  52. package/cjs/components/use-collapse/use-collapse.type.js +5 -0
  53. package/cjs/components/use-descriptions/index.d.ts +3 -0
  54. package/cjs/components/use-descriptions/index.d.ts.map +1 -0
  55. package/cjs/components/use-descriptions/index.js +19 -0
  56. package/cjs/components/use-descriptions/use-descriptions.d.ts +6 -0
  57. package/cjs/components/use-descriptions/use-descriptions.d.ts.map +1 -0
  58. package/cjs/components/use-descriptions/use-descriptions.js +77 -0
  59. package/cjs/components/use-descriptions/use-descriptions.type.d.ts +24 -0
  60. package/cjs/components/use-descriptions/use-descriptions.type.d.ts.map +1 -0
  61. package/cjs/components/use-descriptions/use-descriptions.type.js +5 -0
  62. package/cjs/components/use-select/index.d.ts +1 -0
  63. package/cjs/components/use-select/index.d.ts.map +1 -1
  64. package/cjs/components/use-select/index.js +8 -1
  65. package/cjs/components/use-select/use-select-group.d.ts +7 -0
  66. package/cjs/components/use-select/use-select-group.d.ts.map +1 -0
  67. package/cjs/components/use-select/use-select-group.js +51 -0
  68. package/cjs/components/use-select/use-select-group.type.d.ts +5 -0
  69. package/cjs/components/use-select/use-select-group.type.d.ts.map +1 -0
  70. package/cjs/components/use-select/use-select-group.type.js +5 -0
  71. package/cjs/components/use-select/use-select.d.ts.map +1 -1
  72. package/cjs/components/use-select/use-select.js +4 -4
  73. package/cjs/components/use-select/use-select.type.d.ts +5 -1
  74. package/cjs/components/use-select/use-select.type.d.ts.map +1 -1
  75. package/cjs/components/use-slider/use-slider.d.ts +2 -2
  76. package/cjs/components/use-slider/use-slider.js +4 -4
  77. package/cjs/components/use-tree/use-tree-node.d.ts +2 -1
  78. package/cjs/components/use-tree/use-tree-node.d.ts.map +1 -1
  79. package/cjs/components/use-tree/use-tree-node.js +7 -7
  80. package/cjs/components/use-tree/use-tree-node.type.d.ts +2 -2
  81. package/cjs/components/use-tree/use-tree-node.type.d.ts.map +1 -1
  82. package/cjs/components/use-tree/use-tree.d.ts +33 -10
  83. package/cjs/components/use-tree/use-tree.d.ts.map +1 -1
  84. package/cjs/components/use-tree/use-tree.js +86 -42
  85. package/cjs/components/use-tree/use-tree.type.d.ts +16 -13
  86. package/cjs/components/use-tree/use-tree.type.d.ts.map +1 -1
  87. package/cjs/components/use-treeselect/index.d.ts +4 -0
  88. package/cjs/components/use-treeselect/index.d.ts.map +1 -0
  89. package/cjs/components/use-treeselect/index.js +26 -0
  90. package/cjs/components/use-treeselect/use-tiled.d.ts +13 -0
  91. package/cjs/components/use-treeselect/use-tiled.d.ts.map +1 -0
  92. package/cjs/components/use-treeselect/use-tiled.js +99 -0
  93. package/cjs/components/use-treeselect/use-tiled.type.d.ts +15 -0
  94. package/cjs/components/use-treeselect/use-tiled.type.d.ts.map +1 -0
  95. package/cjs/components/use-treeselect/use-tiled.type.js +5 -0
  96. package/cjs/components/use-treeselect/use-treeselect.d.ts +7 -0
  97. package/cjs/components/use-treeselect/use-treeselect.d.ts.map +1 -0
  98. package/cjs/components/use-treeselect/use-treeselect.js +29 -0
  99. package/cjs/components/use-treeselect/use-treeselect.type.d.ts +9 -0
  100. package/cjs/components/use-treeselect/use-treeselect.type.d.ts.map +1 -0
  101. package/cjs/components/use-treeselect/use-treeselect.type.js +5 -0
  102. package/cjs/index.d.ts +5 -0
  103. package/cjs/index.d.ts.map +1 -1
  104. package/cjs/index.js +60 -0
  105. package/cjs/utils/dom/element.d.ts +2 -1
  106. package/cjs/utils/dom/element.d.ts.map +1 -1
  107. package/cjs/utils/dom/element.js +9 -1
  108. package/cjs/utils/dom/index.d.ts +3 -0
  109. package/cjs/utils/dom/index.d.ts.map +1 -1
  110. package/cjs/utils/dom/index.js +32 -10
  111. package/cjs/utils/dom/responsiveObserve.d.ts +13 -0
  112. package/cjs/utils/dom/responsiveObserve.d.ts.map +1 -0
  113. package/cjs/utils/dom/responsiveObserve.js +89 -0
  114. package/cjs/utils/dom/responsiveObserve.type.d.ts +5 -0
  115. package/cjs/utils/dom/responsiveObserve.type.d.ts.map +1 -0
  116. package/cjs/utils/dom/responsiveObserve.type.js +5 -0
  117. package/cjs/utils/index.d.ts +1 -0
  118. package/cjs/utils/index.d.ts.map +1 -1
  119. package/cjs/utils/index.js +12 -0
  120. package/cjs/utils/is.d.ts +1 -0
  121. package/cjs/utils/is.d.ts.map +1 -1
  122. package/cjs/utils/is.js +5 -1
  123. package/cjs/utils/react-render.d.ts.map +1 -1
  124. package/cjs/utils/react-render.js +1 -2
  125. package/cjs/utils/render.d.ts.map +1 -1
  126. package/cjs/utils/tree.d.ts +14 -0
  127. package/cjs/utils/tree.d.ts.map +1 -0
  128. package/cjs/utils/tree.js +93 -0
  129. package/esm/common/type.d.ts +2 -0
  130. package/esm/common/type.d.ts.map +1 -1
  131. package/esm/common/use-drag-mock/index.d.ts +3 -11
  132. package/esm/common/use-drag-mock/index.d.ts.map +1 -1
  133. package/esm/common/use-drag-mock/index.js +27 -56
  134. package/esm/common/use-drag-mock/use-drag-mock.d.ts +11 -0
  135. package/esm/common/use-drag-mock/use-drag-mock.d.ts.map +1 -0
  136. package/esm/common/use-drag-mock/use-drag-mock.js +61 -0
  137. package/esm/common/use-drag-mock/use-drag-move.d.ts +11 -0
  138. package/esm/common/use-drag-mock/use-drag-move.d.ts.map +1 -0
  139. package/esm/common/use-drag-mock/use-drag-move.js +73 -0
  140. package/esm/common/use-drag-mock/use-drag-resize.d.ts +15 -0
  141. package/esm/common/use-drag-mock/use-drag-resize.d.ts.map +1 -0
  142. package/esm/common/use-drag-mock/use-drag-resize.js +89 -0
  143. package/esm/common/use-filter/index.d.ts +2 -0
  144. package/esm/common/use-filter/index.d.ts.map +1 -0
  145. package/esm/common/use-filter/index.js +19 -0
  146. package/esm/common/use-filter/use-filter.d.ts +19 -0
  147. package/esm/common/use-filter/use-filter.d.ts.map +1 -0
  148. package/esm/common/use-filter/use-filter.js +153 -0
  149. package/esm/common/use-filter/use-filter.type.d.ts +17 -0
  150. package/esm/common/use-filter/use-filter.type.d.ts.map +1 -0
  151. package/esm/common/use-filter/use-filter.type.js +5 -0
  152. package/esm/common/use-position-style/index.d.ts.map +1 -1
  153. package/esm/common/use-position-style/index.js +5 -0
  154. package/esm/components/use-button/use-button.d.ts +1 -1
  155. package/esm/components/use-button/use-button.d.ts.map +1 -1
  156. package/esm/components/use-button/use-button.js +2 -2
  157. package/esm/components/use-cascader/index.d.ts +3 -0
  158. package/esm/components/use-cascader/index.d.ts.map +1 -0
  159. package/esm/components/use-cascader/index.js +19 -0
  160. package/esm/components/use-cascader/use-cascader.d.ts +36 -0
  161. package/esm/components/use-cascader/use-cascader.d.ts.map +1 -0
  162. package/esm/components/use-cascader/use-cascader.js +46 -0
  163. package/esm/components/use-cascader/use-cascader.type.d.ts +14 -0
  164. package/esm/components/use-cascader/use-cascader.type.d.ts.map +1 -0
  165. package/esm/components/use-cascader/use-cascader.type.js +5 -0
  166. package/esm/components/use-collapse/index.d.ts +5 -0
  167. package/esm/components/use-collapse/index.d.ts.map +1 -0
  168. package/esm/components/use-collapse/index.js +26 -0
  169. package/esm/components/use-collapse/use-collapse-item.d.ts +22 -0
  170. package/esm/components/use-collapse/use-collapse-item.d.ts.map +1 -0
  171. package/esm/components/use-collapse/use-collapse-item.js +72 -0
  172. package/esm/components/use-collapse/use-collapse-item.type.d.ts +12 -0
  173. package/esm/components/use-collapse/use-collapse-item.type.d.ts.map +1 -0
  174. package/esm/components/use-collapse/use-collapse-item.type.js +5 -0
  175. package/esm/components/use-collapse/use-collapse.d.ts +8 -0
  176. package/esm/components/use-collapse/use-collapse.d.ts.map +1 -0
  177. package/esm/components/use-collapse/use-collapse.js +51 -0
  178. package/esm/components/use-collapse/use-collapse.type.d.ts +8 -0
  179. package/esm/components/use-collapse/use-collapse.type.d.ts.map +1 -0
  180. package/esm/components/use-collapse/use-collapse.type.js +5 -0
  181. package/esm/components/use-descriptions/index.d.ts +3 -0
  182. package/esm/components/use-descriptions/index.d.ts.map +1 -0
  183. package/esm/components/use-descriptions/index.js +19 -0
  184. package/esm/components/use-descriptions/use-descriptions.d.ts +6 -0
  185. package/esm/components/use-descriptions/use-descriptions.d.ts.map +1 -0
  186. package/esm/components/use-descriptions/use-descriptions.js +77 -0
  187. package/esm/components/use-descriptions/use-descriptions.type.d.ts +24 -0
  188. package/esm/components/use-descriptions/use-descriptions.type.d.ts.map +1 -0
  189. package/esm/components/use-descriptions/use-descriptions.type.js +5 -0
  190. package/esm/components/use-select/index.d.ts +1 -0
  191. package/esm/components/use-select/index.d.ts.map +1 -1
  192. package/esm/components/use-select/index.js +8 -1
  193. package/esm/components/use-select/use-select-group.d.ts +7 -0
  194. package/esm/components/use-select/use-select-group.d.ts.map +1 -0
  195. package/esm/components/use-select/use-select-group.js +51 -0
  196. package/esm/components/use-select/use-select-group.type.d.ts +5 -0
  197. package/esm/components/use-select/use-select-group.type.d.ts.map +1 -0
  198. package/esm/components/use-select/use-select-group.type.js +5 -0
  199. package/esm/components/use-select/use-select.d.ts.map +1 -1
  200. package/esm/components/use-select/use-select.js +4 -4
  201. package/esm/components/use-select/use-select.type.d.ts +5 -1
  202. package/esm/components/use-select/use-select.type.d.ts.map +1 -1
  203. package/esm/components/use-slider/use-slider.d.ts +2 -2
  204. package/esm/components/use-slider/use-slider.js +4 -4
  205. package/esm/components/use-tree/use-tree-node.d.ts +2 -1
  206. package/esm/components/use-tree/use-tree-node.d.ts.map +1 -1
  207. package/esm/components/use-tree/use-tree-node.js +7 -7
  208. package/esm/components/use-tree/use-tree-node.type.d.ts +2 -2
  209. package/esm/components/use-tree/use-tree-node.type.d.ts.map +1 -1
  210. package/esm/components/use-tree/use-tree.d.ts +33 -10
  211. package/esm/components/use-tree/use-tree.d.ts.map +1 -1
  212. package/esm/components/use-tree/use-tree.js +86 -42
  213. package/esm/components/use-tree/use-tree.type.d.ts +16 -13
  214. package/esm/components/use-tree/use-tree.type.d.ts.map +1 -1
  215. package/esm/components/use-treeselect/index.d.ts +4 -0
  216. package/esm/components/use-treeselect/index.d.ts.map +1 -0
  217. package/esm/components/use-treeselect/index.js +26 -0
  218. package/esm/components/use-treeselect/use-tiled.d.ts +13 -0
  219. package/esm/components/use-treeselect/use-tiled.d.ts.map +1 -0
  220. package/esm/components/use-treeselect/use-tiled.js +99 -0
  221. package/esm/components/use-treeselect/use-tiled.type.d.ts +15 -0
  222. package/esm/components/use-treeselect/use-tiled.type.d.ts.map +1 -0
  223. package/esm/components/use-treeselect/use-tiled.type.js +5 -0
  224. package/esm/components/use-treeselect/use-treeselect.d.ts +7 -0
  225. package/esm/components/use-treeselect/use-treeselect.d.ts.map +1 -0
  226. package/esm/components/use-treeselect/use-treeselect.js +29 -0
  227. package/esm/components/use-treeselect/use-treeselect.type.d.ts +9 -0
  228. package/esm/components/use-treeselect/use-treeselect.type.d.ts.map +1 -0
  229. package/esm/components/use-treeselect/use-treeselect.type.js +5 -0
  230. package/esm/index.d.ts +5 -0
  231. package/esm/index.d.ts.map +1 -1
  232. package/esm/index.js +60 -0
  233. package/esm/utils/dom/element.d.ts +2 -1
  234. package/esm/utils/dom/element.d.ts.map +1 -1
  235. package/esm/utils/dom/element.js +9 -1
  236. package/esm/utils/dom/index.d.ts +3 -0
  237. package/esm/utils/dom/index.d.ts.map +1 -1
  238. package/esm/utils/dom/index.js +32 -10
  239. package/esm/utils/dom/responsiveObserve.d.ts +13 -0
  240. package/esm/utils/dom/responsiveObserve.d.ts.map +1 -0
  241. package/esm/utils/dom/responsiveObserve.js +89 -0
  242. package/esm/utils/dom/responsiveObserve.type.d.ts +5 -0
  243. package/esm/utils/dom/responsiveObserve.type.d.ts.map +1 -0
  244. package/esm/utils/dom/responsiveObserve.type.js +5 -0
  245. package/esm/utils/index.d.ts +1 -0
  246. package/esm/utils/index.d.ts.map +1 -1
  247. package/esm/utils/index.js +12 -0
  248. package/esm/utils/is.d.ts +1 -0
  249. package/esm/utils/is.d.ts.map +1 -1
  250. package/esm/utils/is.js +5 -1
  251. package/esm/utils/react-render.d.ts.map +1 -1
  252. package/esm/utils/react-render.js +1 -2
  253. package/esm/utils/render.d.ts.map +1 -1
  254. package/esm/utils/tree.d.ts +14 -0
  255. package/esm/utils/tree.d.ts.map +1 -0
  256. package/esm/utils/tree.js +93 -0
  257. package/package.json +7 -6
@@ -0,0 +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;;;;;;;;;sBAiEe,MAAM;sBAKN,MAAM;;;CA6EnC,CAAC;AAEF,eAAe,SAAS,CAAC"}
@@ -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"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -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,wBAoN3D,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
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;CAqDrE,CAAC;AAEF,eAAe,SAAS,CAAC"}
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,3 @@
1
+ export { default, default as useCascader } from './use-cascader';
2
+ export type { BaseCascaderProps } from './use-cascader.type';
3
+ //# 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"}
@@ -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
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -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,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -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,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,3 @@
1
+ export { default, default as useDescriptions } from './use-descriptions';
2
+ export type { DescriptionsItemProps, BaseDescriptionsProps } from './use-descriptions.type';
3
+ //# 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,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACzE,YAAY,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}