@qsxy/element-plus-react 1.0.3 → 2.0.0

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 (483) hide show
  1. package/dist/Affix/Affix.d.ts +4 -0
  2. package/dist/Affix/Affix.js +301 -0
  3. package/dist/Affix/index.d.ts +2 -0
  4. package/dist/Affix/index.js +1 -0
  5. package/dist/Affix/typings.d.ts +50 -0
  6. package/dist/Affix/typings.js +1 -0
  7. package/dist/Alert/typings.d.ts +1 -1
  8. package/dist/Anchor/Anchor.d.ts +6 -0
  9. package/dist/Anchor/Anchor.js +258 -0
  10. package/dist/Anchor/AnchorLink.d.ts +4 -0
  11. package/dist/Anchor/AnchorLink.js +77 -0
  12. package/dist/Anchor/element.d.ts +4 -0
  13. package/dist/Anchor/element.js +17 -0
  14. package/dist/Anchor/index.d.ts +3 -0
  15. package/dist/Anchor/index.js +2 -0
  16. package/dist/Anchor/typings.d.ts +101 -0
  17. package/dist/Anchor/typings.js +1 -0
  18. package/dist/Backtop/Backtop.d.ts +7 -0
  19. package/dist/Backtop/Backtop.js +153 -0
  20. package/dist/Backtop/index.d.ts +2 -0
  21. package/dist/Backtop/index.js +1 -0
  22. package/dist/Backtop/typings.d.ts +31 -0
  23. package/dist/Backtop/typings.js +1 -0
  24. package/dist/Button/Button.d.ts +2 -11
  25. package/dist/Button/Button.js +2 -6
  26. package/dist/Button/index.d.ts +1 -1
  27. package/dist/Calendar/Calendar.js +12 -8
  28. package/dist/Calendar/YearRangePanel.js +1 -1
  29. package/dist/Carousel/typings.d.ts +1 -1
  30. package/dist/Cascader/Cascader.d.ts +3 -3
  31. package/dist/Cascader/Cascader.js +238 -166
  32. package/dist/Cascader/CascaderContext.d.ts +9 -3
  33. package/dist/Cascader/CascaderContext.js +3 -1
  34. package/dist/Cascader/CascaderDropdown.d.ts +4 -3
  35. package/dist/Cascader/CascaderDropdown.js +21 -10
  36. package/dist/Cascader/CascaderMenu.d.ts +2 -2
  37. package/dist/Cascader/CascaderMenu.js +56 -14
  38. package/dist/Cascader/CascaderPanel.d.ts +4 -0
  39. package/dist/Cascader/CascaderPanel.js +11 -0
  40. package/dist/Cascader/index.d.ts +4 -1
  41. package/dist/Cascader/index.js +2 -1
  42. package/dist/Cascader/typings.d.ts +45 -31
  43. package/dist/Cascader/useCascader.d.ts +14 -13
  44. package/dist/Cascader/useCascader.js +120 -27
  45. package/dist/CheckboxGroup/CheckboxGroup.d.ts +11 -1
  46. package/dist/CheckboxGroup/CheckboxGroup.js +78 -19
  47. package/dist/Collapse/Collapse.d.ts +3 -3
  48. package/dist/Collapse/Collapse.js +71 -16
  49. package/dist/Collapse/CollapseContext.d.ts +3 -6
  50. package/dist/Collapse/CollapseContext.js +2 -4
  51. package/dist/Collapse/CollapseItem.d.ts +3 -3
  52. package/dist/Collapse/CollapseItem.js +93 -51
  53. package/dist/Collapse/CollapseTransition.js +11 -7
  54. package/dist/Collapse/index.d.ts +1 -1
  55. package/dist/Collapse/typings.d.ts +20 -5
  56. package/dist/ColorPicker/typings.d.ts +1 -1
  57. package/dist/Countdown/Countdown.d.ts +4 -0
  58. package/dist/Countdown/Countdown.js +121 -0
  59. package/dist/Countdown/index.d.ts +2 -0
  60. package/dist/Countdown/index.js +1 -0
  61. package/dist/Countdown/typings.d.ts +52 -0
  62. package/dist/Countdown/typings.js +1 -0
  63. package/dist/Countdown/util.d.ts +14 -0
  64. package/dist/Countdown/util.js +58 -0
  65. package/dist/DatePicker/DatePicker.js +9 -6
  66. package/dist/DatePicker/DateRangePicker.js +7 -6
  67. package/dist/DatePicker/typings.d.ts +0 -13
  68. package/dist/DateTimePicker/DateTimePicker.js +29 -19
  69. package/dist/Dialog/Dialog.d.ts +2 -13
  70. package/dist/Dialog/Dialog.js +139 -149
  71. package/dist/Dialog/DialogBody.js +3 -38
  72. package/dist/Dialog/DialogContext.d.ts +0 -7
  73. package/dist/Dialog/DialogContext.js +1 -5
  74. package/dist/Dialog/DialogHeader.js +2 -2
  75. package/dist/Dialog/typings.d.ts +43 -28
  76. package/dist/Dialog/useDraggable.d.ts +2 -1
  77. package/dist/Dialog/useDraggable.js +34 -9
  78. package/dist/Drawer/Drawer.d.ts +2 -13
  79. package/dist/Drawer/Drawer.js +115 -137
  80. package/dist/Drawer/DrawerBody.js +7 -8
  81. package/dist/Drawer/DrawerFooter.js +7 -7
  82. package/dist/Drawer/DrawerHeader.js +11 -8
  83. package/dist/Drawer/typings.d.ts +22 -6
  84. package/dist/Dropdown/Dropdown.js +5 -3
  85. package/dist/Dropdown/typings.d.ts +2 -1
  86. package/dist/Empty/Empty.js +16 -4
  87. package/dist/Form/Form.d.ts +4 -21
  88. package/dist/Form/Form.js +53 -25
  89. package/dist/Form/FormItem.d.ts +4 -52
  90. package/dist/Form/FormItem.js +633 -650
  91. package/dist/Form/FormItemContext.d.ts +10 -1
  92. package/dist/Form/FormItemContext.js +9 -1
  93. package/dist/Form/FormLabelWrap.d.ts +8 -0
  94. package/dist/Form/FormLabelWrap.js +103 -0
  95. package/dist/Form/{FieldContext.d.ts → InternalFormContext.d.ts} +2 -2
  96. package/dist/Form/{FieldContext.js → InternalFormContext.js} +5 -2
  97. package/dist/Form/List.d.ts +3 -3
  98. package/dist/Form/List.js +4 -4
  99. package/dist/Form/index.d.ts +4 -2
  100. package/dist/Form/index.js +4 -1
  101. package/dist/Form/typings.d.ts +61 -9
  102. package/dist/Form/typings.js +15 -1
  103. package/dist/Form/useForm.js +3 -3
  104. package/dist/Form/useWatch.js +1 -1
  105. package/dist/Input/Input.d.ts +2 -14
  106. package/dist/Input/Input.js +122 -100
  107. package/dist/Input/InputGroup.js +1 -1
  108. package/dist/Input/InputRange.js +7 -11
  109. package/dist/Input/TextArea.d.ts +1 -1
  110. package/dist/Input/TextArea.js +84 -29
  111. package/dist/Input/index.d.ts +1 -0
  112. package/dist/Input/index.js +2 -1
  113. package/dist/Input/typings.d.ts +3 -25
  114. package/dist/InputNumber/InputNumber.js +74 -23
  115. package/dist/InputNumber/typings.d.ts +0 -4
  116. package/dist/Menu/Menu.js +1 -1
  117. package/dist/Menu/typings.d.ts +3 -13
  118. package/dist/Message/index.js +5 -3
  119. package/dist/MessageBox/MessageBox.js +29 -33
  120. package/dist/MessageBox/typings.d.ts +0 -1
  121. package/dist/Notification/typings.d.ts +1 -1
  122. package/dist/PageHeader/PageHeader.d.ts +8 -0
  123. package/dist/PageHeader/PageHeader.js +91 -0
  124. package/dist/PageHeader/index.d.ts +2 -0
  125. package/dist/PageHeader/index.js +1 -0
  126. package/dist/PageHeader/typings.d.ts +34 -0
  127. package/dist/PageHeader/typings.js +1 -0
  128. package/dist/Pagination/typings.d.ts +1 -1
  129. package/dist/Popover/Popover.js +7 -7
  130. package/dist/Popover/typings.d.ts +3 -3
  131. package/dist/Popper/Popper.js +49 -28
  132. package/dist/Popper/popperOptions.js +1 -0
  133. package/dist/Popper/typings.d.ts +2 -0
  134. package/dist/Radio/Radio.d.ts +2 -12
  135. package/dist/Radio/Radio.js +2 -6
  136. package/dist/Radio/RadioButton.d.ts +1 -1
  137. package/dist/Radio/RadioButton.js +4 -4
  138. package/dist/Radio/index.d.ts +1 -0
  139. package/dist/Radio/index.js +2 -1
  140. package/dist/Radio/typings.d.ts +1 -1
  141. package/dist/RadioGroup/RadioGroup.js +44 -16
  142. package/dist/RadioGroup/typings.d.ts +10 -0
  143. package/dist/Segmented/Segmented.d.ts +4 -0
  144. package/dist/Segmented/Segmented.js +208 -0
  145. package/dist/Segmented/index.d.ts +2 -0
  146. package/dist/Segmented/index.js +1 -0
  147. package/dist/Segmented/typings.d.ts +20 -0
  148. package/dist/Segmented/typings.js +5 -0
  149. package/dist/Select/SelectCore.js +52 -9
  150. package/dist/Select/typings.d.ts +13 -8
  151. package/dist/Select/useSelect.d.ts +23 -9
  152. package/dist/Select/useSelect.js +55 -8
  153. package/dist/Skeleton/typings.d.ts +1 -1
  154. package/dist/Slider/Button.d.ts +4 -0
  155. package/dist/Slider/Button.js +96 -0
  156. package/dist/Slider/Marker.d.ts +4 -0
  157. package/dist/Slider/Marker.js +31 -0
  158. package/dist/Slider/Slider.d.ts +4 -0
  159. package/dist/Slider/Slider.js +263 -0
  160. package/dist/Slider/SliderContext.d.ts +3 -0
  161. package/dist/Slider/SliderContext.js +2 -0
  162. package/dist/Slider/hooks/index.d.ts +5 -0
  163. package/dist/Slider/hooks/index.js +5 -0
  164. package/dist/Slider/hooks/useLifecycle.d.ts +5 -0
  165. package/dist/Slider/hooks/useLifecycle.js +50 -0
  166. package/dist/Slider/hooks/useMarks.d.ts +2 -0
  167. package/dist/Slider/hooks/useMarks.js +49 -0
  168. package/dist/Slider/hooks/useSlider.d.ts +38 -0
  169. package/dist/Slider/hooks/useSlider.js +227 -0
  170. package/dist/Slider/hooks/useSliderButton.d.ts +28 -0
  171. package/dist/Slider/hooks/useSliderButton.js +454 -0
  172. package/dist/Slider/hooks/useStops.d.ts +6 -0
  173. package/dist/Slider/hooks/useStops.js +47 -0
  174. package/dist/Slider/hooks/useWatch.d.ts +3 -0
  175. package/dist/Slider/hooks/useWatch.js +119 -0
  176. package/dist/Slider/index.d.ts +2 -0
  177. package/dist/Slider/index.js +1 -0
  178. package/dist/Slider/style/css.d.ts +1 -0
  179. package/dist/Slider/style/css.js +1 -0
  180. package/dist/Slider/style/index.d.ts +1 -0
  181. package/dist/Slider/style/index.js +1 -0
  182. package/dist/Slider/typings.d.ts +122 -0
  183. package/dist/Slider/typings.js +1 -0
  184. package/dist/Space/Space.js +9 -12
  185. package/dist/Space/useSpace.js +2 -1
  186. package/dist/Statistic/Statistic.js +1 -2
  187. package/dist/Steps/Step.d.ts +4 -0
  188. package/dist/Steps/Step.js +247 -0
  189. package/dist/Steps/Steps.d.ts +5 -0
  190. package/dist/Steps/Steps.js +116 -0
  191. package/dist/Steps/index.d.ts +3 -0
  192. package/dist/Steps/index.js +2 -0
  193. package/dist/Steps/typings.d.ts +119 -0
  194. package/dist/Steps/typings.js +1 -0
  195. package/dist/Switch/typings.d.ts +0 -1
  196. package/dist/Table/Table.js +14 -14
  197. package/dist/Table/TableBody.js +4 -4
  198. package/dist/Table/TableCell.js +53 -28
  199. package/dist/Table/TableColumn.d.ts +2 -2
  200. package/dist/Table/TableHeader.js +2 -2
  201. package/dist/Table/TableHeaderCell.js +2 -2
  202. package/dist/Table/hooks/useResize.js +0 -2
  203. package/dist/Table/hooks/useTable.d.ts +1 -1
  204. package/dist/Table/hooks/useTable.js +15 -10
  205. package/dist/Table/typings.d.ts +26 -12
  206. package/dist/Table/util.d.ts +1 -1
  207. package/dist/Table/util.js +8 -65
  208. package/dist/TableV2/index.d.ts +10 -0
  209. package/dist/TableV2/index.js +7 -0
  210. package/dist/TableV2/src/auto-resizer.d.ts +14 -0
  211. package/dist/TableV2/src/auto-resizer.js +1 -0
  212. package/dist/TableV2/src/cell.d.ts +21 -0
  213. package/dist/TableV2/src/cell.js +1 -0
  214. package/dist/TableV2/src/components/auto-resizer.d.ts +4 -0
  215. package/dist/TableV2/src/components/auto-resizer.js +32 -0
  216. package/dist/TableV2/src/components/cell.d.ts +4 -0
  217. package/dist/TableV2/src/components/cell.js +22 -0
  218. package/dist/TableV2/src/components/expand-icon.d.ts +12 -0
  219. package/dist/TableV2/src/components/expand-icon.js +29 -0
  220. package/dist/TableV2/src/components/header-cell.d.ts +4 -0
  221. package/dist/TableV2/src/components/header-cell.js +23 -0
  222. package/dist/TableV2/src/components/header-row.d.ts +17 -0
  223. package/dist/TableV2/src/components/header-row.js +41 -0
  224. package/dist/TableV2/src/components/header.d.ts +20 -0
  225. package/dist/TableV2/src/components/header.js +103 -0
  226. package/dist/TableV2/src/components/index.d.ts +10 -0
  227. package/dist/TableV2/src/components/index.js +7 -0
  228. package/dist/TableV2/src/components/row.d.ts +19 -0
  229. package/dist/TableV2/src/components/row.js +206 -0
  230. package/dist/TableV2/src/components/sort-icon.d.ts +9 -0
  231. package/dist/TableV2/src/components/sort-icon.js +14 -0
  232. package/dist/TableV2/src/composables/index.d.ts +6 -0
  233. package/dist/TableV2/src/composables/index.js +6 -0
  234. package/dist/TableV2/src/composables/use-auto-resize.d.ts +7 -0
  235. package/dist/TableV2/src/composables/use-auto-resize.js +55 -0
  236. package/dist/TableV2/src/composables/use-columns.d.ts +21 -0
  237. package/dist/TableV2/src/composables/use-columns.js +119 -0
  238. package/dist/TableV2/src/composables/use-data.d.ts +15 -0
  239. package/dist/TableV2/src/composables/use-data.js +62 -0
  240. package/dist/TableV2/src/composables/use-row.d.ts +34 -0
  241. package/dist/TableV2/src/composables/use-row.js +191 -0
  242. package/dist/TableV2/src/composables/use-scrollbar.d.ts +25 -0
  243. package/dist/TableV2/src/composables/use-scrollbar.js +117 -0
  244. package/dist/TableV2/src/composables/use-styles.d.ts +23 -0
  245. package/dist/TableV2/src/composables/use-styles.js +90 -0
  246. package/dist/TableV2/src/composables/utils.d.ts +3 -0
  247. package/dist/TableV2/src/composables/utils.js +29 -0
  248. package/dist/TableV2/src/constants.d.ts +18 -0
  249. package/dist/TableV2/src/constants.js +22 -0
  250. package/dist/TableV2/src/grid.d.ts +52 -0
  251. package/dist/TableV2/src/grid.js +1 -0
  252. package/dist/TableV2/src/header-cell.d.ts +13 -0
  253. package/dist/TableV2/src/header-cell.js +1 -0
  254. package/dist/TableV2/src/header-row.d.ts +10 -0
  255. package/dist/TableV2/src/header-row.js +1 -0
  256. package/dist/TableV2/src/header.d.ts +15 -0
  257. package/dist/TableV2/src/header.js +1 -0
  258. package/dist/TableV2/src/private.d.ts +1 -0
  259. package/dist/TableV2/src/private.js +1 -0
  260. package/dist/TableV2/src/renderers/cell.d.ts +14 -0
  261. package/dist/TableV2/src/renderers/cell.js +120 -0
  262. package/dist/TableV2/src/renderers/empty.d.ts +7 -0
  263. package/dist/TableV2/src/renderers/empty.js +11 -0
  264. package/dist/TableV2/src/renderers/footer.d.ts +7 -0
  265. package/dist/TableV2/src/renderers/footer.js +9 -0
  266. package/dist/TableV2/src/renderers/header-cell.d.ts +13 -0
  267. package/dist/TableV2/src/renderers/header-cell.js +92 -0
  268. package/dist/TableV2/src/renderers/header.d.ts +9 -0
  269. package/dist/TableV2/src/renderers/header.js +39 -0
  270. package/dist/TableV2/src/renderers/left-table.d.ts +32 -0
  271. package/dist/TableV2/src/renderers/left-table.js +15 -0
  272. package/dist/TableV2/src/renderers/main-table.d.ts +31 -0
  273. package/dist/TableV2/src/renderers/main-table.js +12 -0
  274. package/dist/TableV2/src/renderers/overlay.d.ts +3 -0
  275. package/dist/TableV2/src/renderers/overlay.js +9 -0
  276. package/dist/TableV2/src/renderers/right-table.d.ts +31 -0
  277. package/dist/TableV2/src/renderers/right-table.js +15 -0
  278. package/dist/TableV2/src/renderers/row.d.ts +11 -0
  279. package/dist/TableV2/src/renderers/row.js +96 -0
  280. package/dist/TableV2/src/row.d.ts +51 -0
  281. package/dist/TableV2/src/row.js +1 -0
  282. package/dist/TableV2/src/table-grid.d.ts +43 -0
  283. package/dist/TableV2/src/table-grid.js +283 -0
  284. package/dist/TableV2/src/table-v2.d.ts +31 -0
  285. package/dist/TableV2/src/table-v2.js +311 -0
  286. package/dist/TableV2/src/table.d.ts +196 -0
  287. package/dist/TableV2/src/table.js +1 -0
  288. package/dist/TableV2/src/tokens.d.ts +11 -0
  289. package/dist/TableV2/src/tokens.js +6 -0
  290. package/dist/TableV2/src/types.d.ts +94 -0
  291. package/dist/TableV2/src/types.js +1 -0
  292. package/dist/TableV2/src/use-table.d.ts +48 -0
  293. package/dist/TableV2/src/use-table.js +197 -0
  294. package/dist/TableV2/src/utils.d.ts +5 -0
  295. package/dist/TableV2/src/utils.js +47 -0
  296. package/dist/Tabs/Tabs.js +1 -1
  297. package/dist/Tabs/typings.d.ts +1 -3
  298. package/dist/Tag/Tag.js +1 -1
  299. package/dist/TimePicker/TimePicker.js +6 -7
  300. package/dist/TimePicker/TimePickerPanel.js +12 -2
  301. package/dist/TimePicker/TimePickerRange.js +19 -8
  302. package/dist/Tooltip/Tooltip.js +31 -8
  303. package/dist/Tooltip/typings.d.ts +4 -0
  304. package/dist/Tour/Content.d.ts +9 -0
  305. package/dist/Tour/Content.js +81 -0
  306. package/dist/Tour/Mask.d.ts +12 -0
  307. package/dist/Tour/Mask.js +100 -0
  308. package/dist/Tour/Step.d.ts +7 -0
  309. package/dist/Tour/Step.js +119 -0
  310. package/dist/Tour/Tour.d.ts +6 -0
  311. package/dist/Tour/Tour.js +237 -0
  312. package/dist/Tour/context.d.ts +4 -0
  313. package/dist/Tour/context.js +9 -0
  314. package/dist/Tour/helper.d.ts +39 -0
  315. package/dist/Tour/helper.js +286 -0
  316. package/dist/Tour/index.d.ts +3 -0
  317. package/dist/Tour/index.js +2 -0
  318. package/dist/Tour/typings.d.ts +318 -0
  319. package/dist/Tour/typings.js +38 -0
  320. package/dist/Transfer/List.js +58 -59
  321. package/dist/Transfer/ListItem.d.ts +2 -2
  322. package/dist/Transfer/Transfer.d.ts +2 -2
  323. package/dist/Transfer/Transfer.js +84 -70
  324. package/dist/Transfer/index.d.ts +1 -1
  325. package/dist/Transfer/operation.js +8 -10
  326. package/dist/Transfer/typings/index.d.ts +49 -38
  327. package/dist/Transfer/typings/list.d.ts +11 -11
  328. package/dist/Transfer/typings/listBody.d.ts +2 -2
  329. package/dist/Transition/Transition.d.ts +1 -0
  330. package/dist/Transition/Transition.js +8 -7
  331. package/dist/Tree/Tree.js +1 -0
  332. package/dist/Tree/model/tree-store.js +4 -4
  333. package/dist/Tree/typings.d.ts +3 -1
  334. package/dist/TreeSelect/typings.d.ts +1 -1
  335. package/dist/TreeSelect/useSelect.d.ts +38 -85
  336. package/dist/TreeSelect/useSelect.js +1 -1
  337. package/dist/TreeSelect/useTree.d.ts +47 -52
  338. package/dist/TreeSelect/useTree.js +2 -2
  339. package/dist/Upload/UploadContent.js +1 -1
  340. package/dist/Upload/typings.d.ts +1 -1
  341. package/dist/Util/PopupManager.js +1 -1
  342. package/dist/Util/aria.d.ts +1 -1
  343. package/dist/Util/base.d.ts +33 -8
  344. package/dist/Util/base.js +44 -16
  345. package/dist/Util/easings.d.ts +1 -0
  346. package/dist/Util/easings.js +8 -0
  347. package/dist/Util/error.d.ts +3 -0
  348. package/dist/Util/error.js +39 -0
  349. package/dist/Util/icons.d.ts +2 -0
  350. package/dist/Util/icons.js +15 -0
  351. package/dist/Util/index.d.ts +6 -2
  352. package/dist/Util/index.js +6 -2
  353. package/dist/Util/position.d.ts +9 -0
  354. package/dist/Util/position.js +53 -0
  355. package/dist/Util/raf.d.ts +4 -0
  356. package/dist/Util/raf.js +10 -0
  357. package/dist/Util/scroll.d.ts +9 -0
  358. package/dist/Util/scroll.js +72 -0
  359. package/dist/Util/throttleByRaf.d.ts +4 -0
  360. package/dist/Util/throttleByRaf.js +21 -0
  361. package/dist/VirtualList/builders/build-grid.d.ts +5 -0
  362. package/dist/VirtualList/builders/build-grid.js +561 -0
  363. package/dist/VirtualList/builders/build-list.d.ts +7 -0
  364. package/dist/VirtualList/builders/build-list.js +408 -0
  365. package/dist/VirtualList/components/dynamic-size-grid.d.ts +15 -0
  366. package/dist/VirtualList/components/dynamic-size-grid.js +242 -0
  367. package/dist/VirtualList/components/dynamic-size-list.d.ts +7 -0
  368. package/dist/VirtualList/components/dynamic-size-list.js +186 -0
  369. package/dist/VirtualList/components/fixed-size-grid.d.ts +4 -0
  370. package/dist/VirtualList/components/fixed-size-grid.js +161 -0
  371. package/dist/VirtualList/components/fixed-size-list.d.ts +7 -0
  372. package/dist/VirtualList/components/fixed-size-list.js +103 -0
  373. package/dist/VirtualList/components/scrollbar.d.ts +5 -0
  374. package/dist/VirtualList/components/scrollbar.js +272 -0
  375. package/dist/VirtualList/defaults.d.ts +26 -0
  376. package/dist/VirtualList/defaults.js +24 -0
  377. package/dist/VirtualList/hooks/use-cache.d.ts +1 -0
  378. package/dist/VirtualList/hooks/use-cache.js +16 -0
  379. package/dist/VirtualList/hooks/use-grid-touch.d.ts +8 -0
  380. package/dist/VirtualList/hooks/use-grid-touch.js +58 -0
  381. package/dist/VirtualList/hooks/use-grid-wheel.d.ts +12 -0
  382. package/dist/VirtualList/hooks/use-grid-wheel.js +48 -0
  383. package/dist/VirtualList/hooks/use-wheel.d.ts +12 -0
  384. package/dist/VirtualList/hooks/use-wheel.js +41 -0
  385. package/dist/VirtualList/index.d.ts +9 -0
  386. package/dist/VirtualList/index.js +6 -0
  387. package/dist/VirtualList/props.d.ts +95 -0
  388. package/dist/VirtualList/props.js +42 -0
  389. package/dist/VirtualList/types.d.ts +151 -0
  390. package/dist/VirtualList/types.js +1 -0
  391. package/dist/VirtualList/utils.d.ts +11 -0
  392. package/dist/VirtualList/utils.js +56 -0
  393. package/dist/Watermark/Watermark.d.ts +4 -0
  394. package/dist/Watermark/Watermark.js +257 -0
  395. package/dist/Watermark/helper.d.ts +50 -0
  396. package/dist/Watermark/helper.js +253 -0
  397. package/dist/Watermark/index.d.ts +2 -0
  398. package/dist/Watermark/index.js +1 -0
  399. package/dist/Watermark/typings.d.ts +93 -0
  400. package/dist/Watermark/typings.js +1 -0
  401. package/dist/hooks/index.d.ts +1 -0
  402. package/dist/hooks/useClassNames.d.ts +1 -0
  403. package/dist/hooks/useClickOutside.js +25 -9
  404. package/dist/hooks/useCommonProps.d.ts +4 -0
  405. package/dist/hooks/useCommonProps.js +12 -3
  406. package/dist/hooks/useLockscreen.d.ts +6 -0
  407. package/dist/hooks/useLockscreen.js +45 -0
  408. package/dist/hooks/useResizeObserver.d.ts +1 -1
  409. package/dist/hooks/useResizeObserver.js +1 -1
  410. package/dist/index.css +1 -1
  411. package/dist/index.d.ts +33 -12
  412. package/dist/index.js +17 -6
  413. package/dist/locale/en.d.ts +4 -1
  414. package/dist/locale/en.js +4 -1
  415. package/dist/locale/zhCn.d.ts +4 -1
  416. package/dist/locale/zhCn.js +4 -1
  417. package/package.json +5 -3
  418. package/theme-chalk/affix.scss +7 -0
  419. package/theme-chalk/alert.scss +115 -115
  420. package/theme-chalk/anchor-link.scss +45 -0
  421. package/theme-chalk/anchor.scss +93 -0
  422. package/theme-chalk/backtop.scss +29 -0
  423. package/theme-chalk/breadcrumb-item.scss +58 -0
  424. package/theme-chalk/breadcrumb.scss +5 -61
  425. package/theme-chalk/cascader-panel.scss +57 -82
  426. package/theme-chalk/cascader.scss +206 -160
  427. package/theme-chalk/checkbox.scss +4 -0
  428. package/theme-chalk/collapse-item.scss +72 -0
  429. package/theme-chalk/collapse.scss +21 -76
  430. package/theme-chalk/common/popup.scss +47 -0
  431. package/theme-chalk/common/var.scss +62 -6
  432. package/theme-chalk/dialog.scss +145 -137
  433. package/theme-chalk/drawer.scss +252 -247
  434. package/theme-chalk/form-item.scss +437 -0
  435. package/theme-chalk/form.scss +23 -361
  436. package/theme-chalk/index.scss +17 -1
  437. package/theme-chalk/input/input.scss +19 -0
  438. package/theme-chalk/input-number.scss +179 -192
  439. package/theme-chalk/message-box.scss +160 -133
  440. package/theme-chalk/message.scss +104 -104
  441. package/theme-chalk/mixins/mixins.scss +148 -151
  442. package/theme-chalk/notification.scss +109 -109
  443. package/theme-chalk/overlay.scss +17 -0
  444. package/theme-chalk/page-header.scss +60 -0
  445. package/theme-chalk/popper.scss +1 -1
  446. package/theme-chalk/radio.scss +3 -3
  447. package/theme-chalk/segmented.scss +186 -0
  448. package/theme-chalk/slider.scss +212 -0
  449. package/theme-chalk/space.scss +20 -20
  450. package/theme-chalk/statistic.scss +35 -35
  451. package/theme-chalk/step.scss +320 -0
  452. package/theme-chalk/steps.scss +22 -0
  453. package/theme-chalk/table-v2.scss +237 -0
  454. package/theme-chalk/table.scss +461 -482
  455. package/theme-chalk/time-range-picker.scss +1 -1
  456. package/theme-chalk/tooltip.scss +2 -2
  457. package/theme-chalk/tour.scss +170 -0
  458. package/theme-chalk/transfer.scss +38 -12
  459. package/theme-chalk/tree-select.scss +41 -41
  460. package/theme-chalk/virtual-list.scss +40 -0
  461. package/theme-chalk/button/_mixins.scss +0 -317
  462. package/theme-chalk/button/button-group.scss +0 -83
  463. package/theme-chalk/button/button.scss +0 -382
  464. package/theme-chalk/button/index.scss +0 -2
  465. package/theme-chalk/button--bak/_mixins.scss +0 -317
  466. package/theme-chalk/button--bak/button-group.scss +0 -83
  467. package/theme-chalk/button--bak/button.scss +0 -382
  468. package/theme-chalk/button--bak/index.scss +0 -2
  469. package/theme-chalk/calendar/date-table.scss--bak +0 -156
  470. package/theme-chalk/input/input.scss--bak +0 -578
  471. package/theme-chalk/input-number.bak +0 -172
  472. package/theme-chalk/link.scss--bak +0 -99
  473. package/theme-chalk/notification.bak +0 -156
  474. package/theme-chalk/popper.scss--bak +0 -86
  475. package/theme-chalk/radio-button.scss--bak +0 -128
  476. package/theme-chalk/select/index.scss--bak +0 -247
  477. package/theme-chalk/switch.scss--bak +0 -273
  478. package/theme-chalk/tag.scss--bak +0 -203
  479. package/theme-chalk/tree/_directory.scss +0 -73
  480. package/theme-chalk/tree/_tree.scss +0 -401
  481. package/theme-chalk/tree/index.scss +0 -2
  482. /package/dist/TreeSelect/{utils.d.ts → Utils.d.ts} +0 -0
  483. /package/dist/TreeSelect/{utils.js → Utils.js} +0 -0
@@ -19,19 +19,20 @@ import find from 'lodash/find';
19
19
  import isEqual from 'lodash/isEqual';
20
20
  import last from 'lodash/last';
21
21
  import { useCallback, useEffect, useRef, useState } from 'react';
22
- import { isEmpty, isNotEmpty, randomCode } from "../Util";
22
+ import { useForceUpdate } from "../hooks";
23
+ import { isEmpty, isNotEmpty, nextTick, randomCode } from "../Util";
23
24
  export var useCascader = function useCascader(initialData, props, value) {
24
25
  var menuProps = props.props,
25
26
  showAllLevels = props.showAllLevels,
26
27
  separator = props.separator;
27
- var _menuProps$childrenKe = menuProps.childrenKey,
28
- childrenKey = _menuProps$childrenKe === void 0 ? 'children' : _menuProps$childrenKe,
29
- _menuProps$valueKey = menuProps.valueKey,
30
- valueKey = _menuProps$valueKey === void 0 ? 'value' : _menuProps$valueKey,
31
- _menuProps$labelKey = menuProps.labelKey,
32
- labelKey = _menuProps$labelKey === void 0 ? 'label' : _menuProps$labelKey,
33
- _menuProps$leafKey = menuProps.leafKey,
34
- leafKey = _menuProps$leafKey === void 0 ? 'leaf' : _menuProps$leafKey,
28
+ var _menuProps$children = menuProps.children,
29
+ childrenKey = _menuProps$children === void 0 ? 'children' : _menuProps$children,
30
+ _menuProps$value = menuProps.value,
31
+ valueKey = _menuProps$value === void 0 ? 'value' : _menuProps$value,
32
+ _menuProps$label = menuProps.label,
33
+ labelKey = _menuProps$label === void 0 ? 'label' : _menuProps$label,
34
+ _menuProps$leaf = menuProps.leaf,
35
+ leafKey = _menuProps$leaf === void 0 ? 'leaf' : _menuProps$leaf,
35
36
  lazy = menuProps.lazy;
36
37
  // 展开层级数
37
38
  var _useState = useState(0),
@@ -54,6 +55,7 @@ export var useCascader = function useCascader(initialData, props, value) {
54
55
  var _optionData = useRef({});
55
56
  // 选中的数据组
56
57
  var selectedValue = useRef([]);
58
+ var oldSelectedValue = useRef([]);
57
59
  // 选中的数据标签组
58
60
  var selectedLabel = useRef([]);
59
61
  // 选中的节点组
@@ -63,6 +65,10 @@ export var useCascader = function useCascader(initialData, props, value) {
63
65
  // 树组件扩展keys
64
66
  // const expandKeys = useRef<Record<string, Key[]>>({});
65
67
 
68
+ // 强制更新
69
+ var _useForceUpdate = useForceUpdate(),
70
+ forceUpdate = _useForceUpdate.forceUpdate;
71
+
66
72
  /**
67
73
  * 初始化时分离不同层级的数据
68
74
  * @param nodes
@@ -73,7 +79,7 @@ export var useCascader = function useCascader(initialData, props, value) {
73
79
  var level = arguments.length > 1 ? arguments[1] : undefined;
74
80
  var pid = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '0';
75
81
  nodes.forEach(function (item) {
76
- var _ref, _item$leafKey;
82
+ var _item$leafKey;
77
83
  var __id = randomCode(11);
78
84
  if (Object.prototype.hasOwnProperty.call(item, childrenKey)) {
79
85
  init(item[childrenKey], level + 1, __id);
@@ -82,10 +88,11 @@ export var useCascader = function useCascader(initialData, props, value) {
82
88
  _optionData.current["level".concat(level)] = [];
83
89
  }
84
90
  Object.assign(item, {
91
+ data: cloneDeep(item),
85
92
  __level: level,
86
93
  __id: __id,
87
94
  __pId: pid,
88
- __leaf: (_ref = (_item$leafKey = item[leafKey]) !== null && _item$leafKey !== void 0 ? _item$leafKey : !Object.prototype.hasOwnProperty.call(item, childrenKey)) !== null && _ref !== void 0 ? _ref : false,
95
+ __leaf: (_item$leafKey = item[leafKey]) !== null && _item$leafKey !== void 0 ? _item$leafKey : !Object.prototype.hasOwnProperty.call(item, childrenKey),
89
96
  __checked: false,
90
97
  __indeterminate: false
91
98
  });
@@ -100,6 +107,11 @@ export var useCascader = function useCascader(initialData, props, value) {
100
107
  * @param value
101
108
  */
102
109
  var setSelectedValue = useCallback(function (level, val) {
110
+ if (selectedValue.current.length < level + 1) {
111
+ while (selectedValue.current.length <= level + 1) {
112
+ selectedValue.current.push(null);
113
+ }
114
+ }
103
115
  selectedValue.current = selectedValue.current.map(function (item, l) {
104
116
  if (l < level) {
105
117
  return item;
@@ -109,7 +121,13 @@ export var useCascader = function useCascader(initialData, props, value) {
109
121
  return null;
110
122
  }
111
123
  });
112
- }, []);
124
+ if (!isEqual(oldSelectedValue.current, selectedValue.current)) {
125
+ nextTick(function () {
126
+ forceUpdate();
127
+ });
128
+ }
129
+ oldSelectedValue.current = selectedValue.current;
130
+ }, [forceUpdate]);
113
131
 
114
132
  /**
115
133
  * 设置任意层级节点的标签
@@ -117,6 +135,11 @@ export var useCascader = function useCascader(initialData, props, value) {
117
135
  * @param value
118
136
  */
119
137
  var setSelectedLabel = useCallback(function (level, val) {
138
+ if (selectedLabel.current.length < level + 1) {
139
+ while (selectedLabel.current.length <= level + 1) {
140
+ selectedLabel.current.push(null);
141
+ }
142
+ }
120
143
  selectedLabel.current = selectedLabel.current.map(function (item, l) {
121
144
  if (l < level) {
122
145
  return item;
@@ -134,6 +157,11 @@ export var useCascader = function useCascader(initialData, props, value) {
134
157
  * @param value
135
158
  */
136
159
  var setSelectedNode = useCallback(function (level, node) {
160
+ if (selectedNode.current.length < level + 1) {
161
+ while (selectedNode.current.length <= level + 1) {
162
+ selectedNode.current.push(null);
163
+ }
164
+ }
137
165
  selectedNode.current = selectedNode.current.map(function (item, l) {
138
166
  if (l < level) {
139
167
  return item;
@@ -226,8 +254,8 @@ export var useCascader = function useCascader(initialData, props, value) {
226
254
  }
227
255
  }, []);
228
256
  var getParent = useCallback(function (level, node) {
229
- var _ref2;
230
- var options = (_ref2 = isNotEmpty(optionData) ? optionData : _optionData.current) === null || _ref2 === void 0 ? void 0 : _ref2["level".concat(level - 1)];
257
+ var _ref;
258
+ var options = (_ref = isNotEmpty(optionData) ? optionData : _optionData.current) === null || _ref === void 0 ? void 0 : _ref["level".concat(level - 1)];
231
259
  if (options) {
232
260
  var _parent = options.find(function (item) {
233
261
  return item.__id === node.__pId;
@@ -331,6 +359,21 @@ export var useCascader = function useCascader(initialData, props, value) {
331
359
  });
332
360
  return result;
333
361
  }, [loopGetCheckedNodes]);
362
+ var getStrictlyCheckedNodes = useCallback(function () {
363
+ var _optionData$current8, _optionData$current9;
364
+ var level = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
365
+ var result = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
366
+ (_optionData$current8 = _optionData.current) === null || _optionData$current8 === void 0 || (_optionData$current8 = _optionData$current8["level".concat(level)]) === null || _optionData$current8 === void 0 || _optionData$current8.forEach(function (item) {
367
+ // 只有一级且选中
368
+ if (item.__checked) {
369
+ result.push(level > 0 ? loopGetParent(level, item, [item]).reverse() : [item]);
370
+ }
371
+ });
372
+ if ((_optionData$current9 = _optionData.current) !== null && _optionData$current9 !== void 0 && _optionData$current9["level".concat(level + 1)]) {
373
+ getStrictlyCheckedNodes(level + 1, result);
374
+ }
375
+ return result;
376
+ }, [loopGetParent]);
334
377
 
335
378
  /**
336
379
  * 设置选中节点
@@ -347,6 +390,38 @@ export var useCascader = function useCascader(initialData, props, value) {
347
390
  checkedNodes.current = getCheckedNodes();
348
391
  setOptionData(_optionData.current);
349
392
  }, [getCheckedNodes, loopCheckedNodes, loopParentStatus, optionData]);
393
+
394
+ /**
395
+ * 设置选中节点
396
+ * @param level 层级
397
+ * @param node 当前节点
398
+ * @param checked 是否选中
399
+ */
400
+ var setStrictlyCheckedNode = useCallback(function (level, node, checked) {
401
+ var _optionData$current10, _optionData$current11;
402
+ if (isEmpty(_optionData.current)) {
403
+ _optionData.current = optionData;
404
+ }
405
+ _optionData.current = _objectSpread(_objectSpread({}, _optionData.current), {}, _defineProperty({}, "level".concat(level), ((_optionData$current10 = (_optionData$current11 = _optionData.current) === null || _optionData$current11 === void 0 ? void 0 : _optionData$current11["level".concat(level)]) !== null && _optionData$current10 !== void 0 ? _optionData$current10 : []).map(function (item) {
406
+ // 当前节点选中状态变更
407
+ if (item.__id === node.__id) {
408
+ var _item$children2;
409
+ if ((item === null || item === void 0 || (_item$children2 = item.children) === null || _item$children2 === void 0 ? void 0 : _item$children2.length) > 0) {
410
+ return _objectSpread(_objectSpread({}, item), {}, {
411
+ __checked: checked,
412
+ __indeterminate: false
413
+ });
414
+ }
415
+ return _objectSpread(_objectSpread({}, item), {}, {
416
+ __checked: checked,
417
+ __indeterminate: false
418
+ });
419
+ }
420
+ return item;
421
+ })));
422
+ checkedNodes.current = getStrictlyCheckedNodes();
423
+ setOptionData(_optionData.current);
424
+ }, [getStrictlyCheckedNodes, optionData]);
350
425
  var getCheckedValue = useCallback(function () {
351
426
  return checkedNodes.current.map(function (nodes) {
352
427
  return nodes.map(function (item) {
@@ -392,9 +467,9 @@ export var useCascader = function useCascader(initialData, props, value) {
392
467
  // const options = optionData[`level${level - 1}`];
393
468
  var parent = (_selectedNode$current = selectedNode.current) === null || _selectedNode$current === void 0 ? void 0 : _selectedNode$current[level - 1];
394
469
  if (parent) {
395
- var _optionData$current8;
470
+ var _optionData$current12;
396
471
  // console.log(_optionData.current[`level${level}`].filter(item => item.__pId === parent.__id));
397
- return (_optionData$current8 = _optionData.current) === null || _optionData$current8 === void 0 || (_optionData$current8 = _optionData$current8["level".concat(level)]) === null || _optionData$current8 === void 0 ? void 0 : _optionData$current8.filter(function (item) {
472
+ return (_optionData$current12 = _optionData.current) === null || _optionData$current12 === void 0 || (_optionData$current12 = _optionData$current12["level".concat(level)]) === null || _optionData$current12 === void 0 ? void 0 : _optionData$current12.filter(function (item) {
398
473
  return item.__pId === parent.__id;
399
474
  });
400
475
  // return (options.find(item => item.__id === parent.__id) ?? {})[childrenKey];
@@ -408,13 +483,14 @@ export var useCascader = function useCascader(initialData, props, value) {
408
483
  * @param nodes
409
484
  * @param level 层级
410
485
  */
411
- var storeOptionData = useCallback(function (nodes, level, parent, _ref3) {
412
- var isCover = _ref3.isCover;
486
+ var storeOptionData = useCallback(function (nodes, level, parent, _ref2) {
487
+ var isCover = _ref2.isCover;
413
488
  var data = cloneDeep(_optionData.current);
414
489
  var newNodes = [];
415
490
  newNodes = nodes.map(function (node) {
416
491
  var _parent$__id, _node$leafKey;
417
492
  return _objectSpread(_objectSpread({}, node), {}, {
493
+ data: cloneDeep(node),
418
494
  __level: level,
419
495
  __id: randomCode(11),
420
496
  __pId: (_parent$__id = parent === null || parent === void 0 ? void 0 : parent.__id) !== null && _parent$__id !== void 0 ? _parent$__id : '0',
@@ -442,6 +518,7 @@ export var useCascader = function useCascader(initialData, props, value) {
442
518
  p[childrenKey] = newNodes;
443
519
  if (newNodes.length === 0) {
444
520
  p.__leaf = true;
521
+ p[leafKey] = true;
445
522
  }
446
523
  } else {
447
524
  p[childrenKey] = isCover ? newNodes : p[childrenKey].concat(newNodes);
@@ -533,8 +610,8 @@ export var useCascader = function useCascader(initialData, props, value) {
533
610
  if (!Object.prototype.hasOwnProperty.call(item, 'children') || item.children.length === 0) {
534
611
  result.push([].concat(_toConsumableArray(path), [item]));
535
612
  } else if (item.children.length > 0) {
536
- var _item$children2;
537
- loopGetMatchNodes(level + 1, (_item$children2 = item.children) !== null && _item$children2 !== void 0 ? _item$children2 : [], [].concat(_toConsumableArray(path), [item]));
613
+ var _item$children3;
614
+ loopGetMatchNodes(level + 1, (_item$children3 = item.children) !== null && _item$children3 !== void 0 ? _item$children3 : [], [].concat(_toConsumableArray(path), [item]));
538
615
  }
539
616
  nodes.splice(_index, 1);
540
617
  options["level".concat(level)].splice(options["level".concat(level)].findIndex(function (node) {
@@ -559,8 +636,8 @@ export var useCascader = function useCascader(initialData, props, value) {
559
636
  if (!Object.prototype.hasOwnProperty.call(item, 'children') || item.children.length === 0) {
560
637
  result.push(current);
561
638
  } else if (item.children.length > 0) {
562
- var _item$children3;
563
- loopGetMatchNodes(i + 1, (_item$children3 = item.children) !== null && _item$children3 !== void 0 ? _item$children3 : [], current);
639
+ var _item$children4;
640
+ loopGetMatchNodes(i + 1, (_item$children4 = item.children) !== null && _item$children4 !== void 0 ? _item$children4 : [], current);
564
641
  }
565
642
  options["level".concat(i)].splice(_index2, 1);
566
643
  options["level".concat(i)].splice(options["level".concat(i)].findIndex(function (node) {
@@ -616,13 +693,25 @@ export var useCascader = function useCascader(initialData, props, value) {
616
693
  }, [props.options]);
617
694
  var initSelectedValue = function initSelectedValue(_value) {
618
695
  var _selectedValue$curren, _selectedLabel$curren;
619
- selectedValue.current = new Array(allLevel + 1).fill(null);
620
- selectedLabel.current = new Array(allLevel + 1).fill(null);
621
- selectedNode.current = new Array(allLevel + 1).fill(null);
696
+ selectedValue.current = Array.from({
697
+ length: allLevel + 1
698
+ }, function () {
699
+ return null;
700
+ });
701
+ selectedLabel.current = Array.from({
702
+ length: allLevel + 1
703
+ }, function () {
704
+ return null;
705
+ });
706
+ selectedNode.current = Array.from({
707
+ length: allLevel + 1
708
+ }, function () {
709
+ return null;
710
+ });
622
711
  if (_value.length > 0) {
623
- var _optionData$current9;
712
+ var _optionData$current13;
624
713
  var _level = _value.length - 1;
625
- var res = (_optionData$current9 = _optionData.current) === null || _optionData$current9 === void 0 || (_optionData$current9 = _optionData$current9["level".concat(_level)]) === null || _optionData$current9 === void 0 ? void 0 : _optionData$current9.filter(function (option) {
714
+ var res = (_optionData$current13 = _optionData.current) === null || _optionData$current13 === void 0 || (_optionData$current13 = _optionData$current13["level".concat(_level)]) === null || _optionData$current13 === void 0 ? void 0 : _optionData$current13.filter(function (option) {
626
715
  return option[valueKey] === _value[_level];
627
716
  });
628
717
  if ((res === null || res === void 0 ? void 0 : res.length) > 1) {
@@ -648,6 +737,9 @@ export var useCascader = function useCascader(initialData, props, value) {
648
737
  if (!lazy && allLevel >= 0) {
649
738
  var _props$props;
650
739
  if (props !== null && props !== void 0 && (_props$props = props.props) !== null && _props$props !== void 0 && _props$props.multiple) {
740
+ if (selectedValue.current.length > 0) {
741
+ return;
742
+ }
651
743
  var _value = value.length > 0 ? value[0] : [];
652
744
  initSelectedValue(_value);
653
745
  if (isEmpty(_optionData.current)) {
@@ -731,6 +823,7 @@ export var useCascader = function useCascader(initialData, props, value) {
731
823
  * @param checked 是否选中
732
824
  */
733
825
  setCheckedNode: setCheckedNode,
826
+ setStrictlyCheckedNode: setStrictlyCheckedNode,
734
827
  getCheckedNodes: function getCheckedNodes() {
735
828
  return checkedNodes.current;
736
829
  },
@@ -1,5 +1,5 @@
1
1
  import { FC } from 'react';
2
- import type { ValueType } from '../Checkbox/index';
2
+ import { type ValueType } from '../Checkbox/index';
3
3
  import { BaseProps, FormControlBaseProps, NativeProps, TypeAttributes } from '../types/common';
4
4
  export interface CheckboxGroupProps<V = ValueType[] | boolean> extends FormControlBaseProps<V>, BaseProps, NativeProps {
5
5
  name?: string;
@@ -11,6 +11,16 @@ export interface CheckboxGroupProps<V = ValueType[] | boolean> extends FormContr
11
11
  min?: number;
12
12
  /** 可被勾选的 checkbox 的最大数量 */
13
13
  max?: number;
14
+ /** 选项的数据源, value 的 key 和 label 和 disabled可以通过 props自定义. */
15
+ options?: Array<{
16
+ [key: string]: any;
17
+ }>;
18
+ /** options 的配置 */
19
+ props?: {
20
+ value?: string;
21
+ label?: string;
22
+ disabled?: string;
23
+ };
14
24
  }
15
25
  declare const CheckboxGroup: FC<CheckboxGroupProps>;
16
26
  export default CheckboxGroup;
@@ -1,5 +1,4 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
- var _excluded = ["className", "name", "value", "defaultValue", "classPrefix", "readOnly", "onChange", "getBooleanOnSingle", "min", "max"];
3
2
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
3
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
4
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -11,28 +10,33 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
11
10
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
12
11
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
13
12
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
14
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
15
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
16
13
  import classNames from 'classnames';
17
14
  import cloneDeep from 'lodash/cloneDeep';
18
15
  import remove from 'lodash/remove';
19
- import React, { forwardRef, memo, useCallback, useMemo } from 'react';
20
- import { shallowEqual } from "../Util";
16
+ import React, { Children, forwardRef, memo, useCallback, useMemo } from 'react';
17
+ import { Checkbox } from "../Checkbox/index";
18
+ import { mergeDefaultProps, shallowEqual } from "../Util";
21
19
  import { useChildrenInstance, useClassNames, useControlled, useDisabled, useSize } from "../hooks";
22
20
  import { CheckboxGroupContext } from "./CheckboxGroupContext";
23
21
  var CheckboxGroup = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, ref) {
24
- var className = props.className,
25
- name = props.name,
26
- valueProp = props.value,
27
- defaultValue = props.defaultValue,
28
- _props$classPrefix = props.classPrefix,
22
+ var _props3;
23
+ props = mergeDefaultProps({
24
+ props: {},
25
+ options: []
26
+ }, props);
27
+ var _props = props,
28
+ className = _props.className,
29
+ name = _props.name,
30
+ valueProp = _props.value,
31
+ defaultValue = _props.defaultValue,
32
+ _props$classPrefix = _props.classPrefix,
29
33
  classPrefix = _props$classPrefix === void 0 ? 'checkbox-group' : _props$classPrefix,
30
- readOnly = props.readOnly,
31
- onChange = props.onChange,
32
- getBooleanOnSingle = props.getBooleanOnSingle,
33
- min = props.min,
34
- max = props.max,
35
- rest = _objectWithoutProperties(props, _excluded);
34
+ readOnly = _props.readOnly,
35
+ onChange = _props.onChange,
36
+ getBooleanOnSingle = _props.getBooleanOnSingle,
37
+ min = _props.min,
38
+ max = _props.max,
39
+ options = _props.options;
36
40
  var _useClassNames = useClassNames(classPrefix),
37
41
  m = _useClassNames.m;
38
42
  var _useControlled = useControlled(valueProp, defaultValue),
@@ -42,15 +46,21 @@ var CheckboxGroup = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props,
42
46
  isControlled = _useControlled2[2];
43
47
  var disabled = useDisabled(props.disabled);
44
48
  var size = useSize(props.size);
49
+ var aliasProps = mergeDefaultProps({
50
+ value: 'value',
51
+ label: 'label',
52
+ disabled: 'disabled'
53
+ }, props.props);
45
54
 
46
55
  /** 获取子组件 */
47
56
  var getTabPaneInstance = useChildrenInstance(['ElCheckbox', 'ElCheckboxButton']);
48
57
 
49
58
  /** 获取TabPane组件中的配置数据 */
50
59
  var children = useMemo(function () {
51
- var componentChildren = getTabPaneInstance(props === null || props === void 0 ? void 0 : props.children);
60
+ var _props2;
61
+ var componentChildren = getTabPaneInstance((_props2 = props) === null || _props2 === void 0 ? void 0 : _props2.children);
52
62
  return componentChildren;
53
- }, [getTabPaneInstance, props === null || props === void 0 ? void 0 : props.children]);
63
+ }, [getTabPaneInstance, (_props3 = props) === null || _props3 === void 0 ? void 0 : _props3.children]);
54
64
  var isSingle = useMemo(function () {
55
65
  return children.length === 1;
56
66
  }, [children]);
@@ -128,12 +138,61 @@ var CheckboxGroup = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props,
128
138
  }
129
139
  return children;
130
140
  }, [children, max, min, value]);
141
+ var optionChilds = useMemo(function () {
142
+ var checkboxs = null;
143
+ if (options.length > 0) {
144
+ checkboxs = options.map(function (item) {
145
+ return /*#__PURE__*/React.createElement(Checkbox, {
146
+ key: item[aliasProps.value],
147
+ value: item[aliasProps.value],
148
+ disabled: item[aliasProps.disabled]
149
+ }, item[aliasProps.label]);
150
+ });
151
+ if (min > 0 && value instanceof Array && value.length <= min) {
152
+ return checkboxs.map(function (item, index) {
153
+ var isChcked = value.some(function (i) {
154
+ return i === item.props.value;
155
+ });
156
+ if (isChcked && value.length < max) {
157
+ return /*#__PURE__*/React.cloneElement(item, _objectSpread(_objectSpread({
158
+ key: index
159
+ }, item.props), {}, {
160
+ disabled: isChcked
161
+ }));
162
+ } else if (value.length == max) {
163
+ return /*#__PURE__*/React.cloneElement(item, _objectSpread(_objectSpread({
164
+ key: index
165
+ }, item.props), {}, {
166
+ disabled: !isChcked
167
+ }));
168
+ } else {
169
+ return /*#__PURE__*/React.cloneElement(item, _objectSpread({
170
+ key: index
171
+ }, item.props));
172
+ }
173
+ });
174
+ }
175
+ if (max > 0 && value instanceof Array && value.length == max) {
176
+ return checkboxs.map(function (item, index) {
177
+ var isChcked = value.some(function (i) {
178
+ return i === item.props.value;
179
+ });
180
+ return /*#__PURE__*/React.cloneElement(item, _objectSpread(_objectSpread({
181
+ key: index
182
+ }, item.props), {}, {
183
+ disabled: !isChcked
184
+ }));
185
+ });
186
+ }
187
+ }
188
+ return checkboxs;
189
+ }, [max, min, options, aliasProps.disabled, aliasProps.label, aliasProps.value, value]);
131
190
  return /*#__PURE__*/React.createElement(CheckboxGroupContext.Provider, {
132
191
  value: contextValue
133
192
  }, /*#__PURE__*/React.createElement("div", {
134
193
  ref: ref /* {...omit(rest, ['disabled', 'size'])} */,
135
194
  className: classNames(className, m(_defineProperty({}, size, size)))
136
- }, childs));
195
+ }, Children.count(children) === 0 ? optionChilds : childs));
137
196
  }));
138
197
  CheckboxGroup.displayName = 'ElCheckboxGroup';
139
198
  export default CheckboxGroup;
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
2
- import { CollapseProps } from './typings';
3
- declare const Collapse: FC<CollapseProps>;
1
+ import React from 'react';
2
+ import { CollapseProps, CollapseRef } from './typings';
3
+ declare const Collapse: React.MemoExoticComponent<React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<CollapseRef>>>;
4
4
  export default Collapse;
@@ -1,3 +1,7 @@
1
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
2
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
4
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
1
5
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
6
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
7
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -5,33 +9,84 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
5
9
  function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
6
10
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
11
  import classNames from 'classnames';
8
- import React, { memo } from 'react';
12
+ import castArray from 'lodash/castArray';
13
+ import React, { forwardRef, memo, useCallback } from 'react';
9
14
  import { useClassNames, useControlled } from "../hooks";
15
+ import { debugWarn, isBoolean, isPromise, mergeDefaultProps, throwError } from "../Util";
10
16
  import { CollapseContext } from "./CollapseContext";
11
- var Collapse = /*#__PURE__*/memo(function (props) {
12
- var defaultActiveName = props.defaultActiveName,
13
- activeName = props.activeName,
14
- accordion = props.accordion,
15
- onChange = props.onChange,
16
- _props$classPrefix = props.classPrefix,
17
+ var Collapse = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function (props, ref) {
18
+ props = mergeDefaultProps({
19
+ expandIconPosition: 'right'
20
+ }, props);
21
+ var _props = props,
22
+ accordion = _props.accordion,
23
+ expandIconPosition = _props.expandIconPosition,
24
+ onChange = _props.onChange,
25
+ beforeCollapse = _props.beforeCollapse,
26
+ _props$classPrefix = _props.classPrefix,
17
27
  classPrefix = _props$classPrefix === void 0 ? 'collapse' : _props$classPrefix;
18
28
  var _useClassNames = useClassNames(classPrefix),
19
29
  b = _useClassNames.b;
20
- var _useControlled = useControlled(activeName, defaultActiveName),
30
+ var _useControlled = useControlled(props.activeName ? castArray(props.activeName) : undefined, props.defaultActiveName ? castArray(props.defaultActiveName) : []),
21
31
  _useControlled2 = _slicedToArray(_useControlled, 2),
22
- value = _useControlled2[0],
23
- setValue = _useControlled2[1];
32
+ activeName = _useControlled2[0],
33
+ setActiveName = _useControlled2[1];
34
+ var setActiveNames = useCallback(function (activeNames) {
35
+ setActiveName(activeNames);
36
+ var _value = accordion ? activeNames[0] : activeNames;
37
+ onChange === null || onChange === void 0 || onChange(_value);
38
+ }, [setActiveName, accordion, onChange]);
39
+ var handleChange = useCallback(function (name) {
40
+ if (accordion) {
41
+ setActiveNames([activeName[0] === name ? '' : name]);
42
+ } else {
43
+ var _activeNames = _toConsumableArray(activeName);
44
+ var index = _activeNames.indexOf(name);
45
+ if (index > -1) {
46
+ _activeNames.splice(index, 1);
47
+ } else {
48
+ _activeNames.push(name);
49
+ }
50
+ setActiveNames(_activeNames);
51
+ }
52
+ }, [activeName, setActiveNames, accordion]);
53
+ var handleItemClick = function handleItemClick(name) {
54
+ if (!beforeCollapse) {
55
+ handleChange(name);
56
+ return;
57
+ }
58
+ var shouldChange = beforeCollapse(name);
59
+ var isPromiseOrBool = [isPromise(shouldChange), isBoolean(shouldChange)].includes(true);
60
+ if (!isPromiseOrBool) {
61
+ throwError('ElCollapse', 'beforeCollapse must return type `Promise<boolean>` or `boolean`');
62
+ }
63
+ if (isPromise(shouldChange)) {
64
+ shouldChange.then(function (result) {
65
+ if (result !== false) {
66
+ handleChange(name);
67
+ }
68
+ }).catch(function (e) {
69
+ debugWarn('ElCollapse', "some error occurred: ".concat(e));
70
+ });
71
+ } else if (shouldChange) {
72
+ handleChange(name);
73
+ }
74
+ };
75
+ React.useImperativeHandle(ref, function () {
76
+ return {
77
+ activeNames: activeName,
78
+ setActiveNames: setActiveNames
79
+ };
80
+ });
24
81
  return /*#__PURE__*/React.createElement("div", {
25
- className: classNames(b(), props.className),
82
+ className: classNames(b(), b("icon-position-".concat(expandIconPosition)), props.className),
26
83
  style: props.style
27
84
  }, /*#__PURE__*/React.createElement(CollapseContext.Provider, {
28
85
  value: {
29
- value: value,
30
- setValue: setValue,
31
- accordion: accordion,
32
- onChange: onChange
86
+ activeNames: activeName,
87
+ handleItemClick: handleItemClick
33
88
  }
34
89
  }, props.children));
35
- });
90
+ }));
36
91
  Collapse.displayName = 'ElCollapse';
37
92
  export default Collapse;
@@ -1,13 +1,10 @@
1
1
  /// <reference types="react" />
2
- import { CollapseProps } from './typings';
2
+ import { CollapseActiveName } from './typings';
3
3
  interface CollapseContextProps {
4
4
  /** 当前激活的面板(可控模式:如果是手风琴模式,绑定值类型需要为string,否则为array) */
5
- value: CollapseProps['activeName'];
6
- setValue: (value: CollapseProps['activeName']) => void;
7
- /** 是否手风琴模式 */
8
- accordion: boolean;
5
+ activeNames: CollapseActiveName[];
9
6
  /** 当前激活面板改变时触发(如果是手风琴模式,参数 activeNames 类型为string,否则为array) */
10
- onChange: (activeNames: string | string[]) => void;
7
+ handleItemClick: (name: CollapseActiveName) => void;
11
8
  }
12
9
  export declare const CollapseContext: import("react").Context<CollapseContextProps>;
13
10
  export {};
@@ -1,7 +1,5 @@
1
1
  import { createContext } from 'react';
2
2
  export var CollapseContext = /*#__PURE__*/createContext({
3
- value: null,
4
- setValue: null,
5
- accordion: false,
6
- onChange: null
3
+ activeNames: [],
4
+ handleItemClick: null
7
5
  });
@@ -1,4 +1,4 @@
1
- import { FC } from 'react';
2
- import { CollapseItemProps } from './typings';
3
- declare const CollapseItem: FC<CollapseItemProps>;
1
+ import React from 'react';
2
+ import { CollapseItemProps, CollapseItemRef } from './typings';
3
+ declare const CollapseItem: React.MemoExoticComponent<React.ForwardRefExoticComponent<CollapseItemProps & React.RefAttributes<CollapseItemRef>>>;
4
4
  export default CollapseItem;