@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
@@ -4,10 +4,12 @@ export declare type ObjectType<V = any> = Record<string, V>;
4
4
  export declare type HandlerType = Record<string, React.EventHandler<any> | undefined>;
5
5
  export declare type AddNoProps<A, B> = Omit<B, keyof A> & A;
6
6
  export declare type ValueOf<T> = T[keyof T];
7
+ export declare type ValueItem<Value> = Value extends (infer U)[] ? U : Value;
7
8
  export declare type ObjectKey<T = any> = T extends ObjectType ? keyof T & string : never;
8
9
  export declare type KeygenResult = string | number;
9
10
  export declare type KeygenType<DataItem> = ObjectKey<DataItem> | ((data: DataItem, index?: number) => KeygenResult) | true;
10
11
  export declare type StructKeygenType<DataItem> = ObjectKey<DataItem> | ((data: DataItem, index?: number) => KeygenResult);
12
+ export declare type TreeKeygenType<DataItem> = ObjectKey<DataItem> | ((data: DataItem, parentKey: KeygenResult) => KeygenResult);
11
13
  declare type OptionalKeys<T> = {
12
14
  [K in keyof T]: T extends Record<K, T[K]> ? never : K;
13
15
  }[keyof T];
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,oBAAY,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AAEpE,oBAAY,UAAU,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACpD,oBAAY,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;AAE9E,oBAAY,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;AAEpD,oBAAY,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAEpC,oBAAY,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,UAAU,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAEjF,oBAAY,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,oBAAY,UAAU,CAAC,QAAQ,IAC3B,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,GAClD,IAAI,CAAC;AAET,oBAAY,gBAAgB,CAAC,QAAQ,IACjC,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,CAAC;AAEvD,aAAK,YAAY,CAAC,CAAC,IAAI;KACpB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;CACtD,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,aAAK,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzD,oBAAY,kBAAkB,CAAC,CAAC,IAAI;KACjC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;CAC3C,GAAG;KACD,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC7B,CAAC;AACF,oBAAY,sBAAsB,CAAC,QAAQ,IACvC,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,KAAK,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,oBAAY,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AAEpE,oBAAY,UAAU,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AACpD,oBAAY,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;AAE9E,oBAAY,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;AAEpD,oBAAY,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAEpC,oBAAY,SAAS,CAAC,KAAK,IAAI,KAAK,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;AAErE,oBAAY,SAAS,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS,UAAU,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,KAAK,CAAC;AAEjF,oBAAY,YAAY,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,oBAAY,UAAU,CAAC,QAAQ,IAC3B,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,GAClD,IAAI,CAAC;AAET,oBAAY,gBAAgB,CAAC,QAAQ,IACjC,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,YAAY,CAAC,CAAC;AAEvD,oBAAY,cAAc,CAAC,QAAQ,IAC/B,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,KAAK,YAAY,CAAC,CAAC;AAEhE,aAAK,YAAY,CAAC,CAAC,IAAI;KACpB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;CACtD,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,aAAK,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzD,oBAAY,kBAAkB,CAAC,CAAC,IAAI;KACjC,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;CAC3C,GAAG;KACD,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAC7B,CAAC;AACF,oBAAY,sBAAsB,CAAC,QAAQ,IACvC,SAAS,CAAC,QAAQ,CAAC,GACnB,CAAC,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,KAAK,YAAY,CAAC,CAAC"}
@@ -1,12 +1,4 @@
1
- import React from 'react';
2
- declare const useDragMock: (props: {
3
- onDragStart?: ((e: React.MouseEvent) => void) | undefined;
4
- onDragMove?: ((deltaX: number, deltaY: number) => void) | undefined;
5
- onDragEnd?: ((deltaX: number, deltaY: number) => void) | undefined;
6
- }) => {
7
- handleMouseDown: (event: React.MouseEvent) => void;
8
- isDragging: boolean;
9
- };
10
- export default useDragMock;
11
- export { useDragMock };
1
+ export { default, default as useDragMock } from './use-drag-mock';
2
+ export { default as useDragMove } from './use-drag-move';
3
+ export { default as useDragResize } from './use-drag-resize';
12
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AACA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAEhD,QAAA,MAAM,WAAW;uBACG,gBAAgB,KAAK,IAAI;2BACrB,MAAM,UAAU,MAAM,KAAK,IAAI;0BAChC,MAAM,UAAU,MAAM,KAAK,IAAI;;6BA6BpB,gBAAgB;;CAiBjD,CAAC;AAEF,eAAe,WAAW,CAAC;AAE3B,OAAO,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
@@ -4,59 +4,30 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.useDragMock = exports.default = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
- var _usePersistFn = require("../use-persist-fn");
10
- var _react = require("react");
11
- var useDragMock = function useDragMock(props) {
12
- var _useState = (0, _react.useState)(false),
13
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
14
- isDragging = _useState2[0],
15
- setIsDragging = _useState2[1];
16
- var _useRef = (0, _react.useRef)({
17
- startX: 0,
18
- startY: 0,
19
- lastX: 0,
20
- lastY: 0,
21
- cachedSelected: ''
22
- }),
23
- dragInfo = _useRef.current;
24
- var handleMouseMove = (0, _usePersistFn.usePersistFn)(function (event) {
25
- var _props$onDragMove;
26
- var deltaX = event.clientX - dragInfo.lastX;
27
- var deltaY = event.clientY - dragInfo.lastY;
28
- dragInfo.lastX = event.clientX;
29
- dragInfo.lastY = event.clientY;
30
- (_props$onDragMove = props.onDragMove) === null || _props$onDragMove === void 0 ? void 0 : _props$onDragMove.call(props, deltaX, deltaY);
31
- });
32
- var handleMouseUp = (0, _usePersistFn.usePersistFn)(function (event) {
33
- var _props$onDragEnd;
34
- setIsDragging(false);
35
- document.body.style.userSelect = dragInfo.cachedSelected;
36
- var deltaX = event.clientX - dragInfo.startX;
37
- var deltaY = event.clientY - dragInfo.startY;
38
- (_props$onDragEnd = props.onDragEnd) === null || _props$onDragEnd === void 0 ? void 0 : _props$onDragEnd.call(props, deltaX, deltaY);
39
- document.removeEventListener('mousemove', handleMouseMove);
40
- document.removeEventListener('mouseup', handleMouseUp);
41
- });
42
- var handleMouseDown = function handleMouseDown(event) {
43
- var _props$onDragStart;
44
- setIsDragging(true);
45
- dragInfo.cachedSelected = document.body.style.userSelect;
46
- document.body.style.userSelect = 'none';
47
- dragInfo.lastX = event.clientX;
48
- dragInfo.lastY = event.clientY;
49
- dragInfo.startX = event.clientX;
50
- dragInfo.startY = event.clientY;
51
- (_props$onDragStart = props.onDragStart) === null || _props$onDragStart === void 0 ? void 0 : _props$onDragStart.call(props, event);
52
- document.addEventListener('mousemove', handleMouseMove);
53
- document.addEventListener('mouseup', handleMouseUp);
54
- };
55
- return {
56
- handleMouseDown: handleMouseDown,
57
- isDragging: isDragging
58
- };
59
- };
60
- exports.useDragMock = useDragMock;
61
- var _default = useDragMock;
62
- exports.default = _default;
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _useDragMock.default;
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "useDragMock", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _useDragMock.default;
17
+ }
18
+ });
19
+ Object.defineProperty(exports, "useDragMove", {
20
+ enumerable: true,
21
+ get: function get() {
22
+ return _useDragMove.default;
23
+ }
24
+ });
25
+ Object.defineProperty(exports, "useDragResize", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _useDragResize.default;
29
+ }
30
+ });
31
+ var _useDragMock = _interopRequireDefault(require("./use-drag-mock"));
32
+ var _useDragMove = _interopRequireDefault(require("./use-drag-move"));
33
+ var _useDragResize = _interopRequireDefault(require("./use-drag-resize"));
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ declare const useDragMock: (props: {
3
+ onDragStart?: ((e: React.MouseEvent) => void) | undefined;
4
+ onDragMove?: ((deltaX: number, deltaY: number) => void) | undefined;
5
+ onDragEnd?: ((deltaX: number, deltaY: number) => void) | undefined;
6
+ }) => {
7
+ handleMouseDown: (event: React.MouseEvent) => void;
8
+ isDragging: boolean;
9
+ };
10
+ export default useDragMock;
11
+ //# sourceMappingURL=use-drag-mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-drag-mock.d.ts","sourceRoot":"","sources":["use-drag-mock.ts"],"names":[],"mappings":"AACA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAEhD,QAAA,MAAM,WAAW;uBACG,gBAAgB,KAAK,IAAI;2BACrB,MAAM,UAAU,MAAM,KAAK,IAAI;0BAChC,MAAM,UAAU,MAAM,KAAK,IAAI;;6BA6BpB,gBAAgB;;CAiBjD,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,61 @@
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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _usePersistFn = require("../use-persist-fn");
10
+ var _react = require("react");
11
+ var useDragMock = function useDragMock(props) {
12
+ var _useState = (0, _react.useState)(false),
13
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
14
+ isDragging = _useState2[0],
15
+ setIsDragging = _useState2[1];
16
+ var _useRef = (0, _react.useRef)({
17
+ startX: 0,
18
+ startY: 0,
19
+ lastX: 0,
20
+ lastY: 0,
21
+ cachedSelected: ''
22
+ }),
23
+ dragInfo = _useRef.current;
24
+ var handleMouseMove = (0, _usePersistFn.usePersistFn)(function (event) {
25
+ var _props$onDragMove;
26
+ var deltaX = event.clientX - dragInfo.lastX;
27
+ var deltaY = event.clientY - dragInfo.lastY;
28
+ dragInfo.lastX = event.clientX;
29
+ dragInfo.lastY = event.clientY;
30
+ (_props$onDragMove = props.onDragMove) === null || _props$onDragMove === void 0 ? void 0 : _props$onDragMove.call(props, deltaX, deltaY);
31
+ });
32
+ var handleMouseUp = (0, _usePersistFn.usePersistFn)(function (event) {
33
+ var _props$onDragEnd;
34
+ setIsDragging(false);
35
+ document.body.style.userSelect = dragInfo.cachedSelected;
36
+ var deltaX = event.clientX - dragInfo.startX;
37
+ var deltaY = event.clientY - dragInfo.startY;
38
+ (_props$onDragEnd = props.onDragEnd) === null || _props$onDragEnd === void 0 ? void 0 : _props$onDragEnd.call(props, deltaX, deltaY);
39
+ document.removeEventListener('mousemove', handleMouseMove);
40
+ document.removeEventListener('mouseup', handleMouseUp);
41
+ });
42
+ var handleMouseDown = function handleMouseDown(event) {
43
+ var _props$onDragStart;
44
+ setIsDragging(true);
45
+ dragInfo.cachedSelected = document.body.style.userSelect;
46
+ document.body.style.userSelect = 'none';
47
+ dragInfo.lastX = event.clientX;
48
+ dragInfo.lastY = event.clientY;
49
+ dragInfo.startX = event.clientX;
50
+ dragInfo.startY = event.clientY;
51
+ (_props$onDragStart = props.onDragStart) === null || _props$onDragStart === void 0 ? void 0 : _props$onDragStart.call(props, event);
52
+ document.addEventListener('mousemove', handleMouseMove);
53
+ document.addEventListener('mouseup', handleMouseUp);
54
+ };
55
+ return {
56
+ handleMouseDown: handleMouseDown,
57
+ isDragging: isDragging
58
+ };
59
+ };
60
+ var _default = useDragMock;
61
+ exports.default = _default;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ declare const useDragMove: () => {
3
+ handleMouseDown: (event: React.MouseEvent<Element, MouseEvent>) => void;
4
+ isDragging: boolean;
5
+ pos: {
6
+ x: number;
7
+ y: number;
8
+ };
9
+ };
10
+ export default useDragMove;
11
+ //# sourceMappingURL=use-drag-move.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-drag-move.d.ts","sourceRoot":"","sources":["use-drag-move.ts"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAMhD,QAAA,MAAM,WAAW;;;;;;;CA6ChB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -0,0 +1,73 @@
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
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
13
+ var _react = require("react");
14
+ var _useDragMock2 = _interopRequireDefault(require("./use-drag-mock"));
15
+ var _usePersistFn = _interopRequireDefault(require("../use-persist-fn"));
16
+ var _document = require("../../utils/document");
17
+ 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; }
18
+ 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; }
19
+ var DIS_LIMIT = 50;
20
+ var useDragMove = function useDragMove() {
21
+ var _useState = (0, _react.useState)({
22
+ x: 0,
23
+ y: 0
24
+ }),
25
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
26
+ pos = _useState2[0],
27
+ setPos = _useState2[1];
28
+ var _useRef = (0, _react.useRef)({
29
+ rect: {},
30
+ startPostion: {
31
+ x: 0,
32
+ y: 0
33
+ }
34
+ }),
35
+ context = _useRef.current;
36
+ var handleDragStart = (0, _usePersistFn.default)(function (e) {
37
+ var target = e.currentTarget;
38
+ var rect = target.getBoundingClientRect();
39
+ context.rect = rect;
40
+ context.startPostion = _objectSpread({}, pos);
41
+ });
42
+ var handleDragMove = (0, _usePersistFn.default)(function (deltaX, deltaY) {
43
+ setPos(function (pre) {
44
+ var x = pre.x + deltaX;
45
+ var y = pre.y + deltaY;
46
+ var moveX = x - context.startPostion.x;
47
+ var moveY = y - context.startPostion.y;
48
+ if (context.rect.left + moveX > _document.docSize.width - DIS_LIMIT || context.rect.right + moveX < DIS_LIMIT) {
49
+ x = pre.x;
50
+ }
51
+ if (context.rect.top + moveY > _document.docSize.height - DIS_LIMIT || context.rect.bottom + moveY < DIS_LIMIT) {
52
+ y = pre.y;
53
+ }
54
+ return {
55
+ x: x,
56
+ y: y
57
+ };
58
+ });
59
+ });
60
+ var _useDragMock = (0, _useDragMock2.default)({
61
+ onDragStart: handleDragStart,
62
+ onDragMove: handleDragMove
63
+ }),
64
+ handleMouseDown = _useDragMock.handleMouseDown,
65
+ isDragging = _useDragMock.isDragging;
66
+ return {
67
+ handleMouseDown: handleMouseDown,
68
+ isDragging: isDragging,
69
+ pos: pos
70
+ };
71
+ };
72
+ var _default = useDragMove;
73
+ exports.default = _default;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ declare const useDragResize: (props: {
3
+ defaultWidth?: number | string;
4
+ defaultHeight?: number | string;
5
+ panelRef: React.RefObject<HTMLElement>;
6
+ }) => {
7
+ handleXMouseDown: (e: React.MouseEvent) => void;
8
+ handleYMouseDown: (e: React.MouseEvent) => void;
9
+ handleXYMouseDown: (e: React.MouseEvent) => void;
10
+ isDragging: boolean;
11
+ width: string | number | undefined;
12
+ height: string | number | undefined;
13
+ };
14
+ export default useDragResize;
15
+ //# sourceMappingURL=use-drag-resize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-drag-resize.d.ts","sourceRoot":"","sources":["use-drag-resize.ts"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAIhD,QAAA,MAAM,aAAa,UAAW;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,QAAQ,EAAE,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;CACxC;0BAyC2C,gBAAgB;0BAKhB,gBAAgB;2BAMf,gBAAgB;;;;CAa5D,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,89 @@
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 _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
+ var _react = require("react");
10
+ var _useDragMock2 = _interopRequireDefault(require("./use-drag-mock"));
11
+ var _usePersistFn = _interopRequireDefault(require("../use-persist-fn"));
12
+ var useDragResize = function useDragResize(props) {
13
+ var _useState = (0, _react.useState)({
14
+ width: props.defaultWidth,
15
+ height: props.defaultHeight
16
+ }),
17
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
18
+ pos = _useState2[0],
19
+ setPos = _useState2[1];
20
+ var _useRef = (0, _react.useRef)({
21
+ direction: 'xy',
22
+ position: 'none'
23
+ }),
24
+ context = _useRef.current;
25
+ var handleDragStart = (0, _usePersistFn.default)(function () {
26
+ var target = props.panelRef.current;
27
+ if (!target) return;
28
+ var rect = target.getBoundingClientRect();
29
+ var width = rect.width;
30
+ var height = rect.height;
31
+ setPos({
32
+ width: width,
33
+ height: height
34
+ });
35
+ });
36
+ var handleDragMove = (0, _usePersistFn.default)(function (deltaX, deltaY) {
37
+ setPos(function (pre) {
38
+ var _ref = pre,
39
+ width = _ref.width,
40
+ height = _ref.height;
41
+ if (context.direction === 'x' || context.direction === 'xy') {
42
+ width = width + deltaX;
43
+ }
44
+ if (context.direction === 'x-r') {
45
+ width = width - deltaX;
46
+ }
47
+ if (context.direction === 'y' || context.direction === 'xy') {
48
+ height = pre.height + deltaY;
49
+ }
50
+ if (context.direction === 'y-r') {
51
+ height = height - deltaY;
52
+ }
53
+ return {
54
+ width: width,
55
+ height: height
56
+ };
57
+ });
58
+ });
59
+ var _useDragMock = (0, _useDragMock2.default)({
60
+ onDragStart: handleDragStart,
61
+ onDragMove: handleDragMove
62
+ }),
63
+ handleMouseDown = _useDragMock.handleMouseDown,
64
+ isDragging = _useDragMock.isDragging;
65
+ var handleXMouseDown = (0, _usePersistFn.default)(function (e) {
66
+ var position = e.currentTarget.getAttribute('data-position');
67
+ context.direction = position === 'right' ? 'x-r' : 'x';
68
+ handleMouseDown(e);
69
+ });
70
+ var handleYMouseDown = (0, _usePersistFn.default)(function (e) {
71
+ var position = e.currentTarget.getAttribute('data-position');
72
+ context.direction = position === 'bottom' ? 'y-r' : 'y';
73
+ handleMouseDown(e);
74
+ });
75
+ var handleXYMouseDown = (0, _usePersistFn.default)(function (e) {
76
+ context.direction = 'xy';
77
+ handleMouseDown(e);
78
+ });
79
+ return {
80
+ handleXMouseDown: handleXMouseDown,
81
+ handleYMouseDown: handleYMouseDown,
82
+ handleXYMouseDown: handleXYMouseDown,
83
+ isDragging: isDragging,
84
+ width: pos.width,
85
+ height: pos.height
86
+ };
87
+ };
88
+ var _default = useDragResize;
89
+ exports.default = _default;
@@ -0,0 +1,2 @@
1
+ export { default, default as useFilter } from './use-filter';
2
+ //# 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,SAAS,EAAE,MAAM,cAAc,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 _useFilter.default;
11
+ }
12
+ });
13
+ Object.defineProperty(exports, "useFilter", {
14
+ enumerable: true,
15
+ get: function get() {
16
+ return _useFilter.default;
17
+ }
18
+ });
19
+ var _useFilter = _interopRequireDefault(require("./use-filter"));
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ import { UseFilterProps } from './use-filter.type';
3
+ import { KeygenResult } from '../type';
4
+ declare const useFilter: <DataItem>(props: UseFilterProps<DataItem>) => {
5
+ inputText: string;
6
+ filterText: string | undefined;
7
+ expanded: KeygenResult[] | undefined;
8
+ rawData: DataItem[] | undefined;
9
+ filterData: DataItem[] | undefined;
10
+ createdData: string | undefined;
11
+ setInputText: import("react").Dispatch<import("react").SetStateAction<string>>;
12
+ setFilterText: import("react").Dispatch<import("react").SetStateAction<string | undefined>>;
13
+ onCreate: ((text: string) => string | DataItem | undefined) | undefined;
14
+ onFilter: ((text: string) => void) | undefined;
15
+ onResetFilter: () => void;
16
+ onClearCreatedData: () => void;
17
+ };
18
+ export default useFilter;
19
+ //# sourceMappingURL=use-filter.d.ts.map
@@ -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"}