@qsxy/element-plus-react 1.0.0-next.1 → 1.0.0-next.10

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 (489) hide show
  1. package/README.md +95 -0
  2. package/dist/Avatar/Avatar.d.ts +4 -0
  3. package/dist/Avatar/Avatar.js +86 -0
  4. package/dist/Avatar/index.d.ts +2 -0
  5. package/dist/{VirtualList → Avatar}/index.js +7 -7
  6. package/dist/Avatar/typings.d.ts +21 -0
  7. package/dist/{VirtualList/interface.js → Avatar/typings.js} +3 -3
  8. package/dist/Badge/Badge.js +4 -5
  9. package/dist/Badge/typings.d.ts +10 -0
  10. package/dist/Breadcrumb/Breadcrumb.js +1 -4
  11. package/dist/Breadcrumb/typings.d.ts +4 -0
  12. package/dist/Button/Button.d.ts +0 -1
  13. package/dist/Button/Button.js +21 -9
  14. package/dist/Button/typings.d.ts +28 -0
  15. package/dist/Calendar/Calendar.js +1 -2
  16. package/dist/Calendar/CalendarContext.d.ts +10 -0
  17. package/dist/Calendar/Footer.js +1 -2
  18. package/dist/Calendar/Header.js +3 -8
  19. package/dist/Calendar/ShortCuts.d.ts +2 -0
  20. package/dist/Calendar/typings.d.ts +18 -0
  21. package/dist/Card/typings.d.ts +4 -0
  22. package/dist/Carousel/Carousel.d.ts +4 -0
  23. package/dist/Carousel/Carousel.js +168 -0
  24. package/dist/Carousel/CarouselContext.d.ts +4 -0
  25. package/dist/{VirtualList/Item.js → Carousel/CarouselContext.js} +29 -14
  26. package/dist/Carousel/CarouselItem.d.ts +4 -0
  27. package/dist/Carousel/CarouselItem.js +75 -0
  28. package/dist/Carousel/hooks/useCarousel.d.ts +37 -0
  29. package/dist/Carousel/hooks/useCarousel.js +348 -0
  30. package/dist/Carousel/hooks/useCarouselItem.d.ts +8 -0
  31. package/dist/Carousel/hooks/useCarouselItem.js +161 -0
  32. package/dist/Carousel/index.d.ts +3 -0
  33. package/dist/Carousel/index.js +42 -0
  34. package/dist/Carousel/typings.d.ts +83 -0
  35. package/dist/{VirtualList/utils/findDOMNode.js → Carousel/typings.js} +3 -16
  36. package/dist/Cascader/Cascader.js +148 -182
  37. package/dist/Cascader/CascaderContext.d.ts +4 -10
  38. package/dist/Cascader/CascaderContext.js +2 -6
  39. package/dist/Cascader/CascaderDropdown.d.ts +1 -0
  40. package/dist/Cascader/CascaderDropdown.js +1 -1
  41. package/dist/Cascader/CascaderMenu.js +4 -77
  42. package/dist/Cascader/Utils.d.ts +0 -2
  43. package/dist/Cascader/Utils.js +0 -44
  44. package/dist/Cascader/index.d.ts +1 -1
  45. package/dist/Cascader/typings.d.ts +76 -12
  46. package/dist/Cascader/useCascader.d.ts +61 -3
  47. package/dist/Cascader/useCascader.js +14 -41
  48. package/dist/Checkbox/Checkbox.js +2 -6
  49. package/dist/Checkbox/CheckboxButton.js +2 -6
  50. package/dist/Checkbox/typings.d.ts +11 -0
  51. package/dist/CheckboxGroup/CheckboxGroup.d.ts +4 -0
  52. package/dist/CheckboxGroup/CheckboxGroupContext.d.ts +1 -0
  53. package/dist/Col/Col.js +1 -8
  54. package/dist/Col/typings.d.ts +10 -0
  55. package/dist/Collapse/CollapseContext.d.ts +3 -0
  56. package/dist/Collapse/CollapseItem.js +10 -8
  57. package/dist/Collapse/CollapseTransition.d.ts +7 -6
  58. package/dist/Collapse/CollapseTransition.js +49 -31
  59. package/dist/Collapse/typings.d.ts +7 -0
  60. package/dist/ColorPicker/AlphaSlider.d.ts +7 -0
  61. package/dist/ColorPicker/AlphaSlider.js +0 -1
  62. package/dist/ColorPicker/ColorPicker.js +0 -1
  63. package/dist/ColorPicker/HueSlider.d.ts +7 -0
  64. package/dist/ColorPicker/HueSlider.js +0 -1
  65. package/dist/ColorPicker/Predefine.d.ts +7 -0
  66. package/dist/ColorPicker/Predefine.js +0 -1
  67. package/dist/ColorPicker/SvPanel.d.ts +7 -0
  68. package/dist/ColorPicker/SvPanel.js +0 -1
  69. package/dist/ColorPicker/typings.d.ts +9 -0
  70. package/dist/ConfigProvider/ConfigProvider.d.ts +5 -0
  71. package/dist/DatePicker/DatePicker.js +25 -14
  72. package/dist/DatePicker/DateRangePicker.js +11 -10
  73. package/dist/DatePicker/typings.d.ts +69 -0
  74. package/dist/DateTimePicker/DateTimePicker.d.ts +1 -1
  75. package/dist/DateTimePicker/DateTimePicker.js +13 -11
  76. package/dist/DateTimePicker/typings.d.ts +1 -0
  77. package/dist/Descriptions/Descriptions.js +1 -5
  78. package/dist/Descriptions/DescriptionsContext.d.ts +2 -0
  79. package/dist/Descriptions/typings.d.ts +13 -0
  80. package/dist/Dialog/Dialog.d.ts +0 -1
  81. package/dist/Dialog/Dialog.js +5 -8
  82. package/dist/Dialog/DialogBody.js +0 -3
  83. package/dist/Dialog/DialogContext.d.ts +8 -0
  84. package/dist/Dialog/DialogHeader.js +1 -4
  85. package/dist/Dialog/typings.d.ts +38 -2
  86. package/dist/Divider/Divider.d.ts +4 -0
  87. package/dist/Divider/Divider.js +1 -6
  88. package/dist/Drawer/Drawer.js +28 -14
  89. package/dist/Drawer/DrawerBody.js +1 -4
  90. package/dist/Drawer/DrawerContext.d.ts +10 -0
  91. package/dist/Drawer/DrawerHeader.js +1 -4
  92. package/dist/Drawer/typings.d.ts +16 -0
  93. package/dist/Dropdown/Dropdown.js +12 -8
  94. package/dist/Dropdown/DropdownContext.d.ts +2 -0
  95. package/dist/Dropdown/typings.d.ts +16 -1
  96. package/dist/Empty/Empty.js +1 -4
  97. package/dist/Empty/ImgEmpty.js +1 -1
  98. package/dist/Form/Form.js +10 -6
  99. package/dist/Form/FormItem.d.ts +12 -0
  100. package/dist/Form/FormItem.js +3 -1
  101. package/dist/Form/typings.d.ts +55 -0
  102. package/dist/Form/useForm.d.ts +22 -0
  103. package/dist/Form/utils/NameMap.d.ts +3 -0
  104. package/dist/Form/utils/classUtil.js +2 -2
  105. package/dist/Form/utils/validateUtil.d.ts +4 -0
  106. package/dist/Form/utils/valueUtil.d.ts +17 -0
  107. package/dist/Icon/Icon.js +1 -4
  108. package/dist/Icon/typings.d.ts +7 -0
  109. package/dist/Input/Input.js +18 -10
  110. package/dist/Input/InputRange.js +14 -11
  111. package/dist/Input/TextArea.js +8 -4
  112. package/dist/Input/typings.d.ts +61 -0
  113. package/dist/InputNumber/InputNumber.js +10 -7
  114. package/dist/InputNumber/typings.d.ts +21 -0
  115. package/dist/Link/Link.js +1 -4
  116. package/dist/Link/typings.d.ts +6 -1
  117. package/dist/Loading/Loading.js +17 -9
  118. package/dist/Loading/typings.d.ts +5 -0
  119. package/dist/Message/Main.d.ts +7 -0
  120. package/dist/Message/Message.js +11 -8
  121. package/dist/Message/index.d.ts +8 -0
  122. package/dist/Message/typings.d.ts +11 -0
  123. package/dist/MessageBox/Main.js +3 -1
  124. package/dist/MessageBox/MessageBox.js +1 -1
  125. package/dist/MessageBox/index.d.ts +17 -3
  126. package/dist/MessageBox/index.js +1 -1
  127. package/dist/MessageBox/typings.d.ts +50 -0
  128. package/dist/Notification/Main.d.ts +7 -0
  129. package/dist/Notification/Notification.js +17 -14
  130. package/dist/Notification/index.d.ts +15 -0
  131. package/dist/Notification/typings.d.ts +13 -0
  132. package/dist/Pagination/Pagination.js +15 -11
  133. package/dist/Pagination/typings.d.ts +28 -0
  134. package/dist/Popconfirm/Popconfirm.js +14 -10
  135. package/dist/Popconfirm/typings.d.ts +12 -1
  136. package/dist/Popover/Popover.js +13 -9
  137. package/dist/Popover/typings.d.ts +13 -1
  138. package/dist/Popper/Popper.js +22 -18
  139. package/dist/Popper/typings.d.ts +7 -1
  140. package/dist/Progress/Progress.js +13 -9
  141. package/dist/Progress/typings.d.ts +12 -0
  142. package/dist/Radio/typings.d.ts +7 -0
  143. package/dist/RadioGroup/typings.d.ts +1 -0
  144. package/dist/Row/Row.js +8 -5
  145. package/dist/Row/RowContext.d.ts +1 -0
  146. package/dist/Row/typings.d.ts +4 -0
  147. package/dist/Scrollbar/Scrollbar.js +13 -9
  148. package/dist/Scrollbar/Thumb.js +1 -1
  149. package/dist/Scrollbar/typings.d.ts +20 -0
  150. package/dist/Select/SelectCore.js +17 -14
  151. package/dist/Select/typings.d.ts +33 -0
  152. package/dist/Skeleton/PlaceholderGraph.d.ts +4 -0
  153. package/dist/Skeleton/PlaceholderGrid.d.ts +4 -0
  154. package/dist/Skeleton/PlaceholderGrid.js +0 -4
  155. package/dist/Skeleton/PlaceholderParagraph.d.ts +4 -0
  156. package/dist/Skeleton/PlaceholderParagraph.js +0 -4
  157. package/dist/Switch/Switch.js +13 -10
  158. package/dist/Switch/typings.d.ts +15 -0
  159. package/dist/Table/Colgroup.d.ts +1 -0
  160. package/dist/Table/Table.js +13 -9
  161. package/dist/Table/TableBody.js +10 -41
  162. package/dist/Table/TableCell.js +0 -5
  163. package/dist/Table/TableColumn.js +0 -4
  164. package/dist/Table/TableContext.d.ts +8 -0
  165. package/dist/Table/hooks/useSelection.d.ts +10 -0
  166. package/dist/Table/hooks/useTable.d.ts +7 -0
  167. package/dist/Table/treeUtil.d.ts +39 -0
  168. package/dist/Table/typings.d.ts +137 -1
  169. package/dist/Table/util.d.ts +10 -0
  170. package/dist/Table/util.js +2 -2
  171. package/dist/Tabs/Tabs.js +2 -5
  172. package/dist/Tabs/typings.d.ts +38 -0
  173. package/dist/Tag/Tag.d.ts +1 -1
  174. package/dist/Tag/Tag.js +7 -8
  175. package/dist/Tag/typings.d.ts +10 -0
  176. package/dist/TimeLine/TimeLineItem.js +7 -4
  177. package/dist/TimeLine/typings.d.ts +9 -0
  178. package/dist/TimePicker/TimePicker.js +16 -12
  179. package/dist/TimePicker/TimePickerRange.js +15 -12
  180. package/dist/TimePicker/TimeSpinnerPanel.js +3 -5
  181. package/dist/TimePicker/typings.d.ts +13 -0
  182. package/dist/TimePicker/useTimePicker.d.ts +7 -0
  183. package/dist/Tooltip/Tooltip.js +8 -15
  184. package/dist/Tooltip/TooltipContext.d.ts +1 -0
  185. package/dist/Tooltip/typings.d.ts +14 -1
  186. package/dist/Transfer/List.js +12 -8
  187. package/dist/Transfer/ListItem.d.ts +1 -0
  188. package/dist/Transfer/Transfer.js +11 -7
  189. package/dist/Transfer/typings/index.d.ts +27 -0
  190. package/dist/Transfer/typings/list.d.ts +25 -0
  191. package/dist/Transfer/typings/listBody.d.ts +1 -0
  192. package/dist/Transition/Transition.d.ts +16 -3
  193. package/dist/Transition/Transition.js +6 -4
  194. package/dist/Transition/TransitionGroup.d.ts +59 -0
  195. package/dist/Transition/childMapping.d.ts +23 -0
  196. package/dist/Tree/DirectoryTree.d.ts +6 -13
  197. package/dist/Tree/DirectoryTree.js +32 -81
  198. package/dist/Tree/DropIndicator.d.ts +4 -2
  199. package/dist/Tree/DropIndicator.js +7 -2
  200. package/dist/Tree/Indent.d.ts +2 -2
  201. package/dist/Tree/Indent.js +4 -4
  202. package/dist/Tree/MotionTreeNode.d.ts +4 -5
  203. package/dist/Tree/MotionTreeNode.js +69 -52
  204. package/dist/Tree/NodeList.d.ts +18 -11
  205. package/dist/Tree/NodeList.js +38 -29
  206. package/dist/Tree/RCTree.d.ts +92 -75
  207. package/dist/Tree/RCTree.js +199 -188
  208. package/dist/Tree/Tree.d.ts +18 -3
  209. package/dist/Tree/Tree.js +27 -27
  210. package/dist/Tree/TreeNode.d.ts +5 -83
  211. package/dist/Tree/TreeNode.js +320 -425
  212. package/dist/Tree/contextTypes.d.ts +40 -30
  213. package/dist/Tree/contextTypes.js +17 -4
  214. package/dist/Tree/index.d.ts +2 -2
  215. package/dist/Tree/typings.d.ts +63 -19
  216. package/dist/Tree/typings.js +1 -13
  217. package/dist/Tree/typings.tsx--bak +245 -0
  218. package/dist/Tree/useUnmount.d.ts +5 -0
  219. package/dist/{VirtualList/hooks/useChildren.js → Tree/useUnmount.js} +24 -16
  220. package/dist/Tree/util.d.ts +31 -18
  221. package/dist/Tree/util.js +21 -52
  222. package/dist/Tree/utils/conductUtil.d.ts +8 -2
  223. package/dist/Tree/utils/conductUtil.js +14 -3
  224. package/dist/Tree/utils/dictUtil.d.ts +8 -3
  225. package/dist/Tree/utils/dictUtil.js +49 -32
  226. package/dist/Tree/utils/diffUtil.d.ts +4 -3
  227. package/dist/Tree/utils/keyUtil.d.ts +2 -0
  228. package/dist/{VirtualList/utils/isFirefox.js → Tree/utils/keyUtil.js} +8 -7
  229. package/dist/Tree/utils/motion.js +6 -5
  230. package/dist/Tree/utils/pickAttrs.d.ts +5 -0
  231. package/dist/Tree/utils/treeUtil.d.ts +40 -18
  232. package/dist/Tree/utils/treeUtil.js +35 -14
  233. package/dist/TreeSelect/TreeSelect.js +14 -13
  234. package/dist/TreeSelect/Utils.d.ts +2 -1
  235. package/dist/TreeSelect/typings.d.ts +19 -0
  236. package/dist/Upload/Upload.js +9 -8
  237. package/dist/Upload/UploadList.js +2 -1
  238. package/dist/Upload/typings.d.ts +34 -0
  239. package/dist/Upload/use-handlers.d.ts +1 -0
  240. package/dist/Upload/use-handlers.js +1 -1
  241. package/dist/Util/Math.d.ts +34 -0
  242. package/dist/Util/base.d.ts +22 -0
  243. package/dist/Util/base.js +17 -0
  244. package/dist/Util/shallowEqual.d.ts +11 -0
  245. package/dist/Util/treeUtils.d.ts +8 -0
  246. package/dist/fonts/fa-brands-400.ttf +0 -0
  247. package/dist/fonts/fa-brands-400.woff2 +0 -0
  248. package/dist/fonts/fa-duotone-900.ttf +0 -0
  249. package/dist/fonts/fa-duotone-900.woff2 +0 -0
  250. package/dist/fonts/fa-light-300.ttf +0 -0
  251. package/dist/fonts/fa-light-300.woff2 +0 -0
  252. package/dist/fonts/fa-regular-400.ttf +0 -0
  253. package/dist/fonts/fa-regular-400.woff2 +0 -0
  254. package/dist/fonts/fa-solid-900.ttf +0 -0
  255. package/dist/fonts/fa-solid-900.woff2 +0 -0
  256. package/dist/fonts/fa-thin-100.ttf +0 -0
  257. package/dist/fonts/fa-thin-100.woff2 +0 -0
  258. package/dist/fonts/fa-v4compatibility.ttf +0 -0
  259. package/dist/fonts/fa-v4compatibility.woff2 +0 -0
  260. package/dist/hooks/animationPropsUtils.d.ts +12 -0
  261. package/dist/hooks/htmlPropsUtils.d.ts +8 -0
  262. package/dist/hooks/popperPropsUtils.d.ts +12 -0
  263. package/dist/hooks/prefix.d.ts +1 -1
  264. package/dist/hooks/prefix.js +4 -4
  265. package/dist/hooks/treePropsUtils.d.ts +12 -0
  266. package/dist/hooks/useChildrenInstance.d.ts +11 -0
  267. package/dist/hooks/useClassNames.d.ts +79 -0
  268. package/dist/hooks/useClassNames.js +12 -2
  269. package/dist/hooks/useControlled.d.ts +8 -0
  270. package/dist/hooks/useForceUpdate.d.ts +1 -0
  271. package/dist/index.css +1029 -1290
  272. package/dist/index.d.ts +8 -5
  273. package/dist/index.js +8 -5
  274. package/dist/theme-chalk/avatar/index.scss +50 -0
  275. package/dist/theme-chalk/build.scss +2 -0
  276. package/dist/theme-chalk/calendar/month-table.scss +1 -1
  277. package/dist/theme-chalk/carousel/index.scss +237 -0
  278. package/dist/theme-chalk/checkbox/index.scss +2 -2
  279. package/dist/theme-chalk/common/_var.scss +1 -0
  280. package/dist/theme-chalk/dev.scss +2 -0
  281. package/dist/theme-chalk/doc.scss +2 -0
  282. package/dist/theme-chalk/fonts/fa-brands-400.ttf +0 -0
  283. package/dist/theme-chalk/fonts/fa-brands-400.woff2 +0 -0
  284. package/dist/theme-chalk/fonts/fa-duotone-900.ttf +0 -0
  285. package/dist/theme-chalk/fonts/fa-duotone-900.woff2 +0 -0
  286. package/dist/theme-chalk/fonts/fa-light-300.ttf +0 -0
  287. package/dist/theme-chalk/fonts/fa-light-300.woff2 +0 -0
  288. package/dist/theme-chalk/fonts/fa-regular-400.ttf +0 -0
  289. package/dist/theme-chalk/fonts/fa-regular-400.woff2 +0 -0
  290. package/dist/theme-chalk/fonts/fa-solid-900.ttf +0 -0
  291. package/dist/theme-chalk/fonts/fa-solid-900.woff2 +0 -0
  292. package/dist/theme-chalk/fonts/fa-thin-100.ttf +0 -0
  293. package/dist/theme-chalk/fonts/fa-thin-100.woff2 +0 -0
  294. package/dist/theme-chalk/fonts/fa-v4compatibility.ttf +0 -0
  295. package/dist/theme-chalk/fonts/fa-v4compatibility.woff2 +0 -0
  296. package/dist/theme-chalk/icon/fonts.scss +9 -0
  297. package/dist/theme-chalk/icon/index.scss +0 -9
  298. package/dist/theme-chalk/icon/scss/_shims.scss +318 -318
  299. package/dist/theme-chalk/icon/scss/_variables.scss +1 -3
  300. package/dist/theme-chalk/icon/scss/brands.scss +0 -5
  301. package/dist/theme-chalk/icon/scss/duotone.scss +0 -5
  302. package/dist/theme-chalk/icon/scss/fontawesome.scss +0 -8
  303. package/dist/theme-chalk/icon/scss/light.scss +2 -7
  304. package/dist/theme-chalk/icon/scss/regular.scss +2 -7
  305. package/dist/theme-chalk/icon/scss/solid.scss +2 -7
  306. package/dist/theme-chalk/icon/scss/thin.scss +2 -7
  307. package/dist/theme-chalk/icon/scss/v4-shims.scss +0 -8
  308. package/dist/theme-chalk/index.scss +3 -0
  309. package/dist/theme-chalk/input/input.scss +5 -3
  310. package/dist/theme-chalk/link/index.scss +0 -85
  311. package/dist/theme-chalk/loading/index.scss +5 -7
  312. package/dist/theme-chalk/message/index.scss +5 -5
  313. package/dist/theme-chalk/notification/index.scss +5 -5
  314. package/dist/theme-chalk/pagination/index.scss +1 -1
  315. package/dist/theme-chalk/tabs/index.scss +1 -1
  316. package/dist/types/common.d.ts +24 -0
  317. package/dist/types/type.d.ts +5 -0
  318. package/package.json +4 -24
  319. package/theme-chalk/avatar/index.scss +50 -0
  320. package/theme-chalk/badge/index.scss +63 -0
  321. package/theme-chalk/breadcrumb/index.scss +65 -0
  322. package/theme-chalk/build.scss +2 -0
  323. package/{dist/theme-chalk/bak/mixins/_button.scss → theme-chalk/button/_mixins.scss} +151 -58
  324. package/theme-chalk/button/button-group.scss +83 -0
  325. package/theme-chalk/button/button.scss +382 -0
  326. package/theme-chalk/button/index.scss +2 -0
  327. package/theme-chalk/calendar/date-picker.scss +112 -0
  328. package/theme-chalk/calendar/date-range-picker.scss +139 -0
  329. package/theme-chalk/calendar/date-table.scss +156 -0
  330. package/theme-chalk/calendar/index.scss +6 -0
  331. package/theme-chalk/calendar/month-table.scss +92 -0
  332. package/theme-chalk/calendar/picker-panel.scss +136 -0
  333. package/theme-chalk/calendar/year-table.scss +107 -0
  334. package/theme-chalk/card/index.scss +44 -0
  335. package/theme-chalk/carousel/index.scss +237 -0
  336. package/theme-chalk/cascader/cascader-panel.scss +184 -0
  337. package/theme-chalk/cascader/cascader.scss +239 -0
  338. package/theme-chalk/cascader/index.scss +2 -0
  339. package/theme-chalk/checkbox/index.scss +255 -0
  340. package/theme-chalk/checkbox-button/index.scss +117 -0
  341. package/theme-chalk/checkbox-group/index.scss +33 -0
  342. package/{dist/theme-chalk/bak/mixins/_col.scss → theme-chalk/col/_mixins.scss} +27 -3
  343. package/theme-chalk/col/index.scss +50 -0
  344. package/theme-chalk/collapse/index.scss +84 -0
  345. package/theme-chalk/color-picker/index.scss +340 -0
  346. package/{dist/theme-chalk/bak/mixins/config.scss → theme-chalk/common/_var.scss} +1 -0
  347. package/theme-chalk/common/index.scss +222 -0
  348. package/theme-chalk/common/index.ts +1 -0
  349. package/theme-chalk/date-picker/index.scss +253 -0
  350. package/theme-chalk/date-time-picker/index.scss +3 -0
  351. package/theme-chalk/date-time-picker/time-picker.scss +83 -0
  352. package/theme-chalk/date-time-picker/time-range-picker.scss +32 -0
  353. package/theme-chalk/descriptions/descriptions-item.scss +66 -0
  354. package/theme-chalk/descriptions/descriptions.scss +160 -0
  355. package/theme-chalk/descriptions/index.scss +2 -0
  356. package/theme-chalk/dev.scss +2 -0
  357. package/theme-chalk/dialog/index.scss +190 -0
  358. package/theme-chalk/divider/index.scss +51 -0
  359. package/theme-chalk/doc.scss +2 -0
  360. package/theme-chalk/drawer/index.scss +250 -0
  361. package/theme-chalk/dropdown/index.scss +147 -0
  362. package/theme-chalk/empty/index.scss +69 -0
  363. package/theme-chalk/fonts/fa-brands-400.ttf +0 -0
  364. package/theme-chalk/fonts/fa-brands-400.woff2 +0 -0
  365. package/theme-chalk/fonts/fa-duotone-900.ttf +0 -0
  366. package/theme-chalk/fonts/fa-duotone-900.woff2 +0 -0
  367. package/theme-chalk/fonts/fa-light-300.ttf +0 -0
  368. package/theme-chalk/fonts/fa-light-300.woff2 +0 -0
  369. package/theme-chalk/fonts/fa-regular-400.ttf +0 -0
  370. package/theme-chalk/fonts/fa-regular-400.woff2 +0 -0
  371. package/theme-chalk/fonts/fa-solid-900.ttf +0 -0
  372. package/theme-chalk/fonts/fa-solid-900.woff2 +0 -0
  373. package/theme-chalk/fonts/fa-thin-100.ttf +0 -0
  374. package/theme-chalk/fonts/fa-thin-100.woff2 +0 -0
  375. package/theme-chalk/fonts/fa-v4compatibility.ttf +0 -0
  376. package/theme-chalk/fonts/fa-v4compatibility.woff2 +0 -0
  377. package/theme-chalk/form/index.scss +359 -0
  378. package/theme-chalk/icon/fonts.scss +9 -0
  379. package/theme-chalk/icon/index.scss +44 -0
  380. package/theme-chalk/icon/scss/_animated.scss +205 -0
  381. package/theme-chalk/icon/scss/_bordered-pulled.scss +20 -0
  382. package/theme-chalk/icon/scss/_core.scss +33 -0
  383. package/theme-chalk/icon/scss/_duotone-icons.scss +12 -0
  384. package/theme-chalk/icon/scss/_fixed-width.scss +7 -0
  385. package/theme-chalk/icon/scss/_functions.scss +57 -0
  386. package/theme-chalk/icon/scss/_icons.scss +11 -0
  387. package/theme-chalk/icon/scss/_list.scss +20 -0
  388. package/theme-chalk/icon/scss/_mixins.scss +102 -0
  389. package/theme-chalk/icon/scss/_rotated-flipped.scss +31 -0
  390. package/theme-chalk/icon/scss/_screen-reader.scss +14 -0
  391. package/theme-chalk/icon/scss/_shims.scss +2606 -0
  392. package/theme-chalk/icon/scss/_sizing.scss +16 -0
  393. package/theme-chalk/icon/scss/_stacked.scss +32 -0
  394. package/theme-chalk/icon/scss/_variables.scss +9189 -0
  395. package/theme-chalk/icon/scss/brands.scss +27 -0
  396. package/theme-chalk/icon/scss/duotone.scss +72 -0
  397. package/theme-chalk/icon/scss/fontawesome.scss +13 -0
  398. package/theme-chalk/icon/scss/index.scss +15 -0
  399. package/theme-chalk/icon/scss/light.scss +21 -0
  400. package/theme-chalk/icon/scss/regular.scss +21 -0
  401. package/theme-chalk/icon/scss/solid.scss +21 -0
  402. package/theme-chalk/icon/scss/thin.scss +21 -0
  403. package/theme-chalk/icon/scss/v4-shims.scss +3 -0
  404. package/theme-chalk/index.scss +67 -0
  405. package/theme-chalk/input/_mixins.scss +16 -0
  406. package/theme-chalk/input/index.scss +3 -0
  407. package/theme-chalk/input/input-range.scss +208 -0
  408. package/theme-chalk/input/input.scss +577 -0
  409. package/theme-chalk/input-number/index.scss +172 -0
  410. package/theme-chalk/link/index.scss +99 -0
  411. package/theme-chalk/loading/index.scss +94 -0
  412. package/theme-chalk/message/index.scss +169 -0
  413. package/theme-chalk/message-box/index.scss +184 -0
  414. package/theme-chalk/notification/index.scss +155 -0
  415. package/theme-chalk/pagination/index.scss +515 -0
  416. package/theme-chalk/placeholder/index.scss +135 -0
  417. package/theme-chalk/popconfirm/index.scss +35 -0
  418. package/theme-chalk/popover/index.scss +54 -0
  419. package/theme-chalk/popper/index.scss +86 -0
  420. package/theme-chalk/progress/index.scss +155 -0
  421. package/theme-chalk/radio/index.scss +2 -0
  422. package/theme-chalk/radio/radio-button.scss +128 -0
  423. package/theme-chalk/radio/radio.scss +171 -0
  424. package/theme-chalk/radio-group/index.scss +31 -0
  425. package/theme-chalk/row/index.scss +30 -0
  426. package/theme-chalk/scrollbar/index.scss +103 -0
  427. package/theme-chalk/select/index.scss +244 -0
  428. package/theme-chalk/select/option-group.scss +54 -0
  429. package/theme-chalk/select/option.scss +63 -0
  430. package/theme-chalk/select/select-dropdown.scss +57 -0
  431. package/theme-chalk/switch/index.scss +273 -0
  432. package/theme-chalk/table/index.scss +714 -0
  433. package/theme-chalk/tabs/index.scss +620 -0
  434. package/theme-chalk/tag/index.scss +360 -0
  435. package/theme-chalk/time-line/_timeline-item.scss +90 -0
  436. package/theme-chalk/time-line/_timeline.scss +50 -0
  437. package/theme-chalk/time-line/index.scss +2 -0
  438. package/theme-chalk/time-picker/index.scss +109 -0
  439. package/theme-chalk/tooltip/index.scss +13 -0
  440. package/theme-chalk/transfer/index.scss +247 -0
  441. package/theme-chalk/transition/index.scss +756 -0
  442. package/theme-chalk/tree/_directory.scss +73 -0
  443. package/theme-chalk/tree/_tree.scss +401 -0
  444. package/theme-chalk/tree/index.scss +2 -0
  445. package/theme-chalk/tree-select/index.scss +25 -0
  446. package/theme-chalk/upload/index.scss +631 -0
  447. package/dist/Tree/utils/KeyCode.d.ts +0 -110
  448. package/dist/Tree/utils/KeyCode.js +0 -550
  449. package/dist/VirtualList/Filler.d.ts +0 -11
  450. package/dist/VirtualList/Filler.js +0 -78
  451. package/dist/VirtualList/Item.d.ts +0 -7
  452. package/dist/VirtualList/ScrollBar.d.ts +0 -43
  453. package/dist/VirtualList/ScrollBar.js +0 -216
  454. package/dist/VirtualList/VirtualList.d.ts +0 -33
  455. package/dist/VirtualList/VirtualList.js +0 -280
  456. package/dist/VirtualList/hooks/useChildren.d.ts +0 -3
  457. package/dist/VirtualList/hooks/useDiffItem.d.ts +0 -2
  458. package/dist/VirtualList/hooks/useDiffItem.js +0 -39
  459. package/dist/VirtualList/hooks/useFrameWheel.d.ts +0 -6
  460. package/dist/VirtualList/hooks/useFrameWheel.js +0 -72
  461. package/dist/VirtualList/hooks/useHeights.d.ts +0 -3
  462. package/dist/VirtualList/hooks/useHeights.js +0 -83
  463. package/dist/VirtualList/hooks/useLayoutEffect.d.ts +0 -3
  464. package/dist/VirtualList/hooks/useLayoutEffect.js +0 -30
  465. package/dist/VirtualList/hooks/useMobileTouchMove.d.ts +0 -2
  466. package/dist/VirtualList/hooks/useMobileTouchMove.js +0 -92
  467. package/dist/VirtualList/hooks/useOriginScroll.d.ts +0 -2
  468. package/dist/VirtualList/hooks/useOriginScroll.js +0 -56
  469. package/dist/VirtualList/hooks/useScrollTo.d.ts +0 -5
  470. package/dist/VirtualList/hooks/useScrollTo.js +0 -111
  471. package/dist/VirtualList/index.d.ts +0 -2
  472. package/dist/VirtualList/interface.d.ts +0 -8
  473. package/dist/VirtualList/mock.d.ts +0 -6
  474. package/dist/VirtualList/mock.js +0 -29
  475. package/dist/VirtualList/utils/CacheMap.d.ts +0 -7
  476. package/dist/VirtualList/utils/CacheMap.js +0 -36
  477. package/dist/VirtualList/utils/algorithmUtil.d.ts +0 -6
  478. package/dist/VirtualList/utils/algorithmUtil.js +0 -81
  479. package/dist/VirtualList/utils/findDOMNode.d.ts +0 -2
  480. package/dist/VirtualList/utils/isFirefox.d.ts +0 -2
  481. package/dist/VirtualList/utils/raf.d.ts +0 -5
  482. package/dist/VirtualList/utils/raf.js +0 -57
  483. package/dist/theme-chalk/bak/common/popup.scss +0 -47
  484. package/dist/theme-chalk/bak/common/transition.scss +0 -118
  485. package/dist/theme-chalk/bak/common/var.scss +0 -1476
  486. package/dist/theme-chalk/bak/mixins/_var.scss +0 -55
  487. package/dist/theme-chalk/bak/mixins/function.scss +0 -85
  488. package/dist/theme-chalk/bak/mixins/mixins.scss +0 -215
  489. package/dist/theme-chalk/bak/mixins/utils.scss +0 -39
@@ -9,14 +9,22 @@ interface ChildProps {
9
9
  }
10
10
  export interface InternalFieldProps<Values = any> extends Omit<FormItemProps<Values>, 'children'> {
11
11
  children?: ComponentChildren | ((control: ChildProps, meta: Meta, form: FormInstance<Values>) => React.ReactElement);
12
+ /**
13
+ * Set up `dependencies` field.
14
+ * When dependencies field update and current field is touched,
15
+ * will trigger validate rules and render.
16
+ */
12
17
  dependencies?: NamePath[];
13
18
  getValueFromEvent?: (...args: EventArgs) => StoreValue;
19
+ /** 字段名,支持数组 */
14
20
  name?: InternalNamePath;
15
21
  normalize?: (value: StoreValue, prevValue: StoreValue, allValues: Store) => StoreValue;
22
+ /** 校验规则,设置字段的校验逻辑。点击此处查看示例 */
16
23
  rules?: Rule[];
17
24
  shouldUpdate?: ShouldUpdate<Values>;
18
25
  trigger?: string;
19
26
  validateTrigger?: string | string[] | false;
27
+ /** 当某一规则校验不通过时,是否停止剩下的规则的校验。设置 parallel 时会并行校验 */
20
28
  validateFirst?: boolean | 'parallel';
21
29
  valuePropName?: string;
22
30
  getValueProps?: (value: StoreValue) => Record<string, unknown>;
@@ -27,8 +35,12 @@ export interface InternalFieldProps<Values = any> extends Omit<FormItemProps<Val
27
35
  destroy?: boolean;
28
36
  }) => void;
29
37
  preserve?: boolean;
38
+ /** @private Passed by Form.List props. Do not use since it will break by path check. */
30
39
  isListField?: boolean;
40
+ /** @private Passed by Form.List props. Do not use since it will break by path check. */
31
41
  isList?: boolean;
42
+ /** @private Pass context as prop instead of context api
43
+ * since class component can not get context in constructor */
32
44
  fieldContext?: InternalFormInstance;
33
45
  }
34
46
  export interface FieldProps<Values = any> extends Omit<InternalFieldProps<Values>, 'name' | 'fieldContext'> {
@@ -377,13 +377,15 @@ var Field = class extends import_react.default.Component {
377
377
  };
378
378
  this.getValidateLable = () => {
379
379
  const { errorStyle, warningStyle } = this.props;
380
- return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { name: (0, import_classUtil.b)("slide-up"), visible: this.errors.length > 0, transitionAppear: true, unmountOnExit: true, display: "" }, /* @__PURE__ */ import_react.default.createElement("label", { className: import_classUtil.e`error`, style: errorStyle }, (0, import_head.default)(this.errors))), /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { name: (0, import_classUtil.b)("slide-up"), visible: this.warnings.length > 0, transitionAppear: true, unmountOnExit: true, display: "" }, /* @__PURE__ */ import_react.default.createElement("label", { className: import_classUtil.e`warning`, style: warningStyle }, (0, import_head.default)(this.warnings))));
380
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { nodeRef: this.errorRef, name: (0, import_classUtil.b)("slide-up"), visible: this.errors.length > 0, transitionAppear: true, unmountOnExit: true, display: "" }, /* @__PURE__ */ import_react.default.createElement("label", { ref: this.errorRef, className: import_classUtil.e`error`, style: errorStyle }, (0, import_head.default)(this.errors))), /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { nodeRef: this.warningRef, name: (0, import_classUtil.b)("slide-up"), visible: this.warnings.length > 0, transitionAppear: true, unmountOnExit: true, display: "" }, /* @__PURE__ */ import_react.default.createElement("label", { ref: this.warningRef, className: import_classUtil.e`warning`, style: warningStyle }, (0, import_head.default)(this.warnings))));
381
381
  };
382
382
  if (props.fieldContext) {
383
383
  const { getInternalHooks } = props.fieldContext;
384
384
  const { initEntityValue } = getInternalHooks(import_FieldContext.HOOK_MARK);
385
385
  initEntityValue(this);
386
386
  }
387
+ this.warningRef = (0, import_react.createRef)();
388
+ this.errorRef = (0, import_react.createRef)();
387
389
  }
388
390
  componentDidMount() {
389
391
  const { shouldUpdate, fieldContext } = this.props;
@@ -5,12 +5,15 @@ type BaseFormProps = Omit<React.AllHTMLAttributes<HTMLFormElement>, 'onSubmit' |
5
5
  type RenderProps = (values: Store, form: FormInstance) => React.ReactElement;
6
6
  export type FormRules = Record<string, Rule[]>;
7
7
  export interface FormProps<Values = any> extends BaseFormProps {
8
+ /** 经 Form.useForm() 创建的 form 控制实例,不提供时会自动创建 */
8
9
  form?: FormInstance<Values>;
9
10
  children?: RenderProps | ComponentChildren;
10
11
  component?: false | string | FC<any> | ComponentClass<any, any>;
11
12
  fields?: FieldData[];
13
+ /** 表单验证规则 */
12
14
  rules?: FormRules;
13
15
  name?: string;
16
+ /** 验证提示模板 */
14
17
  validateMessages?: ValidateMessages;
15
18
  onValuesChange?: Callbacks<Values>['onValuesChange'];
16
19
  onFieldsChange?: Callbacks<Values>['onFieldsChange'];
@@ -18,31 +21,55 @@ export interface FormProps<Values = any> extends BaseFormProps {
18
21
  onFinishFailed?: Callbacks<Values>['onFinishFailed'];
19
22
  validateTrigger?: string | string[] | false;
20
23
  preserve?: boolean;
24
+ /** 配置 Form.Item 的 colon 的默认值。表示是否显示 label 后面的冒号 */
21
25
  colon?: boolean;
26
+ /** 表单默认值,只有初始化以及重置时生效 */
22
27
  initialValues?: Store;
28
+ /** 表单域标签的位置, 如果值为 left 或者 right 时,则需要设置 label-width */
23
29
  labelPosition?: 'left' | 'right' | 'top';
30
+ /** 表单域标签的宽度,例如 '50px'。 作为 Form 直接子元素的 form-item 会继承该值。 支持 auto。 */
24
31
  labelWidth?: string | number;
32
+ /** 行内表单模式 */
25
33
  inline?: boolean;
34
+ /** 是否宽度100% */
26
35
  flat?: boolean;
36
+ /** 每行列数 */
37
+ /** 是否只读 */
27
38
  disabled?: boolean;
39
+ /** 用于控制该表单内组件的尺寸 */
28
40
  size?: TypeAttributes.Size;
29
41
  onChange?: (model: any) => void;
30
42
  formStyle?: React.CSSProperties;
31
43
  className?: string;
32
44
  }
33
45
  export interface FormItemProps<T> extends BaseProps, NativeProps {
46
+ /**
47
+ * 配合 label 属性使用,表示是否显示 label 后面的冒号
48
+ */
34
49
  colon?: boolean;
50
+ /** label 标签的文本 */
35
51
  label?: boolean | string | React.ReactElement;
52
+ /** 用于控制该表单内组件的尺寸 */
36
53
  size?: TypeAttributes.Size;
54
+ /** 标签的长度,例如 '50px'。 作为 Form 直接子元素的 form-item 会继承该值。 可以使用 auto。 */
37
55
  labelWidth?: string | number;
56
+ /** 必填样式设置。如不设置,则会根据校验规则自动生成 */
38
57
  required?: boolean;
58
+ /** 为 true 时不带样式,作为纯字段控件使用 */
39
59
  noStyle?: boolean;
60
+ /** 校验状态,如不设置,则会根据校验规则自动生成,可选:'success' 'warning' 'error' 'validating' */
40
61
  validateStatus?: 'success' | 'warning' | 'error' | 'validating';
62
+ /** 配置提示信息 */
41
63
  help?: string | React.ReactElement;
64
+ /** 是否标签宽度为0,等用于`labelWidth={0}`,如果同时设置了labelWidth,则此配置无效 */
42
65
  pure?: boolean;
66
+ /** 是否居中 */
43
67
  center?: boolean;
68
+ /** 文本自定义内联样式 */
44
69
  labelStyle?: React.CSSProperties;
70
+ /** 校验失败文本自定义内联样式 */
45
71
  errorStyle?: React.CSSProperties;
72
+ /** 校验警告自定义内联样式 */
46
73
  warningStyle?: React.CSSProperties;
47
74
  }
48
75
  export interface FieldEntity {
@@ -91,6 +118,9 @@ export interface Meta {
91
118
  export interface InternalFieldData extends Meta {
92
119
  value: StoreValue;
93
120
  }
121
+ /**
122
+ * Used by `setFields` config
123
+ */
94
124
  export interface FieldData extends Partial<Omit<InternalFieldData, 'name'>> {
95
125
  name: NamePath;
96
126
  }
@@ -115,6 +145,7 @@ interface BaseRule {
115
145
  transform?: (value: StoreValue) => StoreValue;
116
146
  type?: RuleType;
117
147
  whitespace?: boolean;
148
+ /** Customize rule level `validateTrigger`. Must be subset of Field `validateTrigger` */
118
149
  validateTrigger?: string | string[];
119
150
  phone?: boolean;
120
151
  }
@@ -166,6 +197,10 @@ export interface ValidateOptions {
166
197
  label?: string | boolean | React.ReactElement<{}>;
167
198
  triggerName?: string;
168
199
  validateMessages?: ValidateMessages;
200
+ /**
201
+ * Recursive validate. It will validate all the name path that contains the provided one.
202
+ * e.g. ['a'] will validate ['a'] , ['a', 'b'] and ['a', 1].
203
+ */
169
204
  recursive?: boolean;
170
205
  }
171
206
  export type InternalValidateFields<Values = any> = (nameList?: NamePath[], options?: ValidateOptions) => Promise<Values>;
@@ -189,6 +224,11 @@ interface SetFieldInfo {
189
224
  }
190
225
  interface DependenciesUpdateInfo {
191
226
  type: 'dependenciesUpdate';
227
+ /**
228
+ * Contains all the related `InternalNamePath[]`.
229
+ * a <- b <- c : change `a`
230
+ * relatedFields=[a, b, c]
231
+ */
192
232
  relatedFields: InternalNamePath[];
193
233
  }
194
234
  export type NotifyInfo = ValueUpdateInfo | ValidateFinishInfo | ResetInfo | RemoveInfo | SetFieldInfo | DependenciesUpdateInfo;
@@ -216,6 +256,7 @@ export interface InternalHooks {
216
256
  setPreserve: (preserve?: boolean) => void;
217
257
  getInitialValue: (namePath: InternalNamePath) => StoreValue;
218
258
  }
259
+ /** Only return partial when type is not any */
219
260
  type RecursivePartial<T> = T extends object ? {
220
261
  [P in keyof T]?: T[P] extends (infer U)[] ? RecursivePartial<U>[] : T[P] extends object ? RecursivePartial<T[P]> : T[P];
221
262
  } : any;
@@ -239,15 +280,29 @@ export interface FormInstance<Values = any> {
239
280
  }
240
281
  export type InternalFormInstance = Omit<FormInstance, 'validateFields'> & {
241
282
  validateFields: InternalValidateFields;
283
+ /**
284
+ * Passed by field context props
285
+ */
242
286
  prefixName?: InternalNamePath;
243
287
  validateTrigger?: string | string[] | false;
288
+ /**
289
+ * Form component should register some content into store.
290
+ * We pass the `HOOK_MARK` as key to avoid user call the function.
291
+ */
244
292
  getInternalHooks: (secret: string) => InternalHooks | null;
293
+ /** @private Internal usage. Do not use it in your production */
245
294
  _init?: boolean;
295
+ /** 配置 Form.Item 的 colon 的默认值。表示是否显示 label 后面的冒号 */
246
296
  colon?: boolean;
297
+ /** 是否禁用该表单内的所有组件。 如果设置为 true, 它将覆盖内部组件的 disabled 属性 */
247
298
  disabled?: boolean;
299
+ /** 表单域标签的位置, 如果值为 left 或者 right 时,则需要设置 label-width */
248
300
  labelPosition?: 'left' | 'right' | 'top';
301
+ /** 标签宽度,例如 '50px'。 可以使用 auto。 */
249
302
  labelWidth?: string | number;
303
+ /** 用于控制该表单域下组件的默认尺寸 */
250
304
  size?: TypeAttributes.Size;
305
+ /** 表单验证规则 */
251
306
  rules?: FormRules;
252
307
  };
253
308
  export type EventArgs = any[];
@@ -26,7 +26,14 @@ export declare class FormStore {
26
26
  private scrollToField;
27
27
  private getInternalHooks;
28
28
  private useSubscribe;
29
+ /**
30
+ * Record prev Form unmount fieldEntities which config preserve false.
31
+ * This need to be refill with initialValues instead of store value.
32
+ */
29
33
  private prevWithoutPreserves;
34
+ /**
35
+ * First time `setInitialValues` should update store with initial value
36
+ */
30
37
  private setInitialValues;
31
38
  private destroyForm;
32
39
  private getInitialValue;
@@ -39,6 +46,10 @@ export declare class FormStore {
39
46
  private timeoutId;
40
47
  private warningUnhooked;
41
48
  private updateStore;
49
+ /**
50
+ * Get registered field entities.
51
+ * @param pure Only return field which has a `name`. Default: false
52
+ */
42
53
  private getFieldEntities;
43
54
  private getFieldsMap;
44
55
  private getFieldEntitiesForNamePathList;
@@ -51,15 +62,26 @@ export declare class FormStore {
51
62
  private isFieldTouched;
52
63
  private isFieldsValidating;
53
64
  private isFieldValidating;
65
+ /**
66
+ * Reset Field with field `initialValue` prop.
67
+ * Can pass `entities` or `namePathList` or just nothing.
68
+ */
54
69
  private resetWithFieldInitialValue;
55
70
  private resetFields;
56
71
  private setFields;
57
72
  private getFields;
73
+ /**
74
+ * This only trigger when a field is on constructor to avoid we get initialValue too late
75
+ */
58
76
  private initEntityValue;
59
77
  private isMergedPreserve;
60
78
  private registerField;
61
79
  private dispatch;
62
80
  private notifyObservers;
81
+ /**
82
+ * Notify dependencies children with parent update
83
+ * We need delay to trigger validate in case Field is under render props
84
+ */
63
85
  private triggerDependenciesUpdate;
64
86
  private updateValue;
65
87
  private setFieldsValue;
@@ -3,6 +3,9 @@ interface KV<T> {
3
3
  key: InternalNamePath;
4
4
  value: T;
5
5
  }
6
+ /**
7
+ * NameMap like a `Map` but accepts `string[]` as key.
8
+ */
6
9
  declare class NameMap<T> {
7
10
  private kvs;
8
11
  set(key: InternalNamePath, value: T): void;
@@ -37,10 +37,10 @@ module.exports = __toCommonJS(classUtil_exports);
37
37
  var import_classnames = __toESM(require("classnames"));
38
38
  var import_prefix = require("../../hooks/prefix");
39
39
  var prefixSplit = (splitCode, ...classes) => {
40
- const mergeClasses = classes.length ? (0, import_classnames.default)(...classes).split(" ").map((item) => (0, import_prefix.prefix)(`${import_prefix.globalKey}-form-item`, item, splitCode)) : [];
40
+ const mergeClasses = classes.length ? (0, import_classnames.default)(...classes).split(" ").map((item) => (0, import_prefix.prefix)(`${import_prefix.namespace}-form-item`, item, splitCode)) : [];
41
41
  return mergeClasses.filter((cls) => cls).join(" ");
42
42
  };
43
- var b = (name) => `${import_prefix.globalKey}-${name}`;
43
+ var b = (name) => `${import_prefix.namespace}-${name}`;
44
44
  var e = (...classes) => prefixSplit("__", ...classes);
45
45
  var m = (...classes) => prefixSplit("--", ...classes);
46
46
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,2 +1,6 @@
1
1
  import type { InternalNamePath, RuleError, RuleObject, StoreValue, ValidateOptions } from '../typings';
2
+ /**
3
+ * We use `async-validator` to validate the value.
4
+ * But only check one value in a time to avoid namePath validate issue.
5
+ */
2
6
  export declare function validateRules(namePath: InternalNamePath, value: StoreValue, rules: RuleObject[], options: ValidateOptions, validateFirst: boolean | 'parallel', messageVariables?: Record<string, string>): Promise<RuleError[]>;
@@ -1,4 +1,11 @@
1
1
  import type { EventArgs, InternalNamePath, NamePath, Store, StoreValue } from '../typings';
2
+ /**
3
+ * Convert name to internal supported format.
4
+ * This function should keep since we still thinking if need support like `a.b.c` format.
5
+ * 'a' => ['a']
6
+ * 123 => [123]
7
+ * ['a', 123] => ['a', 123]
8
+ */
2
9
  export declare function getNamePath(path: NamePath | null): InternalNamePath;
3
10
  export declare function getValue(store: Store, namePath: InternalNamePath): any;
4
11
  export declare function setValue(store: Store, namePath: InternalNamePath, value: StoreValue, removeIfUndefined?: boolean): Store;
@@ -9,6 +16,16 @@ export declare function matchNamePath(namePath: InternalNamePath, changedNamePat
9
16
  type SimilarObject = string | number | {};
10
17
  export declare function isSimilar(source: SimilarObject, target: SimilarObject): boolean;
11
18
  export declare function defaultGetValueFromEvent(valuePropName: string, ...args: EventArgs): any;
19
+ /**
20
+ * Moves an array item from one position in an array to another.
21
+ *
22
+ * Note: This is a pure function so a new array will be returned, instead
23
+ * of altering the array argument.
24
+ *
25
+ * @param array Array in which to move an item. (required)
26
+ * @param moveIndex The index of the item to move. (required)
27
+ * @param toIndex The index to move item at moveIndex to. (required)
28
+ */
12
29
  export declare function move<T>(array: T[], moveIndex: number, toIndex: number): T[];
13
30
  export declare function toNamePathStr(name: NamePath): string;
14
31
  export {};
package/dist/Icon/Icon.js CHANGED
@@ -38,7 +38,7 @@ var import_react = __toESM(require("react"));
38
38
  var import_hooks = require("../hooks");
39
39
  var Icon = (0, import_react.memo)(
40
40
  (0, import_react.forwardRef)((props, ref) => {
41
- const { prefix, name, size, rotate, flip, spin, pulse, className, style, onClick, classPrefix = "icon", ...other } = props;
41
+ const { prefix = "far", name, size, rotate, flip, spin, pulse, className, style, onClick, classPrefix = "icon", ...other } = props;
42
42
  const { b } = (0, import_hooks.useClassNames)(classPrefix, "el");
43
43
  const hasFa = (0, import_startsWith.default)(name, "fa-");
44
44
  return /* @__PURE__ */ import_react.default.createElement(
@@ -59,8 +59,5 @@ var Icon = (0, import_react.memo)(
59
59
  );
60
60
  })
61
61
  );
62
- Icon.defaultProps = {
63
- prefix: "far"
64
- };
65
62
  Icon.displayName = "ElIcon";
66
63
  var Icon_default = Icon;
@@ -1,12 +1,19 @@
1
1
  import React from 'react';
2
2
  import { BaseProps, NativeProps } from '../types/common';
3
3
  export interface IconProps extends Omit<React.AllHTMLAttributes<HTMLElement>, 'size' | 'style' | 'className' | 'readOnly' | 'disabled' | 'children'>, BaseProps, NativeProps {
4
+ /** 图标前缀,定义图标字体粗细 */
4
5
  prefix?: IconPrefix;
6
+ /** 图标名称 */
5
7
  name: IconName;
8
+ /** 图标大小 */
6
9
  size?: IconSize;
10
+ /** 图标是否旋转 */
7
11
  rotate?: Rotate;
12
+ /** 图标是否翻转 */
8
13
  flip?: Flip;
14
+ /** 是否动画 */
9
15
  spin?: boolean;
16
+ /** 是否8方向旋转 */
10
17
  pulse?: boolean;
11
18
  }
12
19
  export type SvgIconProps = Omit<IconProps, 'name'>;
@@ -44,6 +44,16 @@ var import_InputGroup = __toESM(require("./InputGroup"));
44
44
  var import_InputRange = __toESM(require("./InputRange"));
45
45
  var import_TextArea = __toESM(require("./TextArea"));
46
46
  function InternalInput(props, ref) {
47
+ props = (0, import_Util.mergeDefaultProps)(
48
+ {
49
+ type: "text",
50
+ placeholder: "请输入",
51
+ clearable: true,
52
+ debounceTime: 200,
53
+ defaultValue: ""
54
+ },
55
+ props
56
+ );
47
57
  const {
48
58
  name,
49
59
  title,
@@ -277,12 +287,16 @@ function InternalInput(props, ref) {
277
287
  onInput: handleInput,
278
288
  onClick: props.onClick,
279
289
  onFocus: (event) => {
280
- (0, import_dom_lib.addClass)(contentRef.current, is("focus"));
290
+ if (contentRef.current) {
291
+ (0, import_dom_lib.addClass)(contentRef.current, is("focus"));
292
+ }
281
293
  showClear(value);
282
294
  onFocus == null ? void 0 : onFocus.call(this, event);
283
295
  },
284
296
  onBlur: (event) => {
285
- (0, import_dom_lib.removeClass)(contentRef.current, is("focus"));
297
+ if (contentRef.current) {
298
+ (0, import_dom_lib.removeClass)(contentRef.current, is("focus"));
299
+ }
286
300
  hideClear();
287
301
  onBlur == null ? void 0 : onBlur.call(this, event);
288
302
  },
@@ -302,7 +316,7 @@ function InternalInput(props, ref) {
302
316
  }
303
317
  }
304
318
  ))),
305
- suffixSlot && /* @__PURE__ */ import_react.default.createElement("span", { ref: suffixRef, key: "suffixSlot", className: (0, import_classnames.default)(e`suffix`, { "r-click": suffixCanClick }), onClick: onClickSuffix }, /* @__PURE__ */ import_react.default.createElement("span", { className: e`suffix-inner` }, suffixSlot))
319
+ suffixSlot && /* @__PURE__ */ import_react.default.createElement("span", { ref: suffixRef, key: "suffixSlot", className: (0, import_classnames.default)(e`suffix`, { [b("click", false)]: suffixCanClick }), onClick: onClickSuffix }, /* @__PURE__ */ import_react.default.createElement("span", { className: e`suffix-inner` }, suffixSlot))
306
320
  );
307
321
  }, [
308
322
  type,
@@ -328,6 +342,7 @@ function InternalInput(props, ref) {
328
342
  maxLength,
329
343
  handelClear,
330
344
  suffixSlot,
345
+ b,
331
346
  suffixCanClick,
332
347
  onClickSuffix,
333
348
  showClear,
@@ -380,12 +395,5 @@ var ForwardInput = (0, import_react.forwardRef)(InternalInput);
380
395
  var Input = ForwardInput;
381
396
  Input.TextArea = import_TextArea.default;
382
397
  Input.Range = import_InputRange.default;
383
- Input.defaultProps = {
384
- type: "text",
385
- placeholder: "请输入",
386
- clearable: true,
387
- debounceTime: 200,
388
- defaultValue: ""
389
- };
390
398
  Input.displayName = "ElInput";
391
399
  var Input_default = Input;
@@ -46,6 +46,17 @@ var import_hooks = require("../hooks");
46
46
  var import_prefix = require("../hooks/prefix");
47
47
  var import_InputGroup = __toESM(require("./InputGroup"));
48
48
  var InputRange = (0, import_react.forwardRef)((props, ref) => {
49
+ props = (0, import_Util.mergeDefaultProps)(
50
+ {
51
+ name: ["", ""],
52
+ startPlaceholder: "请输入",
53
+ endPlaceholder: "请输入",
54
+ type: "text",
55
+ clearable: true,
56
+ rangeSeparator: "到"
57
+ },
58
+ props
59
+ );
49
60
  const {
50
61
  name,
51
62
  clearable,
@@ -203,7 +214,7 @@ var InputRange = (0, import_react.forwardRef)((props, ref) => {
203
214
  if (nodeType === "ElIcon") {
204
215
  return (0, import_react.cloneElement)(prefix, {
205
216
  ...prefix.props,
206
- className: (0, import_classnames.default)((_a = prefix.props) == null ? void 0 : _a.className, `${import_prefix.globalKey}-range__icon`)
217
+ className: (0, import_classnames.default)((_a = prefix.props) == null ? void 0 : _a.className, `${import_prefix.namespace}-range__icon`)
207
218
  });
208
219
  }
209
220
  }
@@ -218,11 +229,11 @@ var InputRange = (0, import_react.forwardRef)((props, ref) => {
218
229
  if (nodeType === "ElIcon") {
219
230
  return (0, import_react.cloneElement)(suffix, {
220
231
  ...suffix.props,
221
- className: (0, import_classnames.default)((_a = suffix.props) == null ? void 0 : _a.className, `${import_prefix.globalKey}-input__icon ${import_prefix.globalKey}-range__close-icon`)
232
+ className: (0, import_classnames.default)((_a = suffix.props) == null ? void 0 : _a.className, `${import_prefix.namespace}-input__icon ${import_prefix.namespace}-range__close-icon`)
222
233
  });
223
234
  }
224
235
  } else {
225
- return /* @__PURE__ */ import_react.default.createElement("span", { className: `${import_prefix.globalKey}-range__end-icon` }, suffix);
236
+ return /* @__PURE__ */ import_react.default.createElement("span", { className: `${import_prefix.namespace}-range__end-icon` }, suffix);
226
237
  }
227
238
  }
228
239
  return null;
@@ -341,13 +352,5 @@ var InputRange = (0, import_react.forwardRef)((props, ref) => {
341
352
  return content;
342
353
  }
343
354
  });
344
- InputRange.defaultProps = {
345
- name: ["", ""],
346
- startPlaceholder: "请输入",
347
- endPlaceholder: "请输入",
348
- type: "text",
349
- clearable: true,
350
- rangeSeparator: "到"
351
- };
352
355
  InputRange.displayName = "InputRange";
353
356
  var InputRange_default = InputRange;
@@ -34,8 +34,16 @@ __export(TextArea_exports, {
34
34
  module.exports = __toCommonJS(TextArea_exports);
35
35
  var import_classnames = __toESM(require("classnames"));
36
36
  var import_react = __toESM(require("react"));
37
+ var import_Util = require("../Util");
37
38
  var import_hooks = require("../hooks");
38
39
  var TextArea = (0, import_react.forwardRef)((props, ref) => {
40
+ props = (0, import_Util.mergeDefaultProps)(
41
+ {
42
+ placeholder: "请输入",
43
+ style: { width: "100%" }
44
+ },
45
+ props
46
+ );
39
47
  const { name, title, error, placeholder, readOnly, plain, rows, classPrefix = "textarea", onFocus, onBlur, onChange, warning, maxLength, showWordLimit, ...rest } = props;
40
48
  const { b, m, e, is } = (0, import_hooks.useClassNames)(classPrefix);
41
49
  const [value, setValue] = (0, import_hooks.useControlled)(props.value, props.defaultValue);
@@ -110,9 +118,5 @@ var TextArea = (0, import_react.forwardRef)((props, ref) => {
110
118
  }
111
119
  ), maxLength && showWordLimit ? /* @__PURE__ */ import_react.default.createElement("span", { className: e`count` }, typeof value === "string" ? value.length : 0, " / ", maxLength) : null);
112
120
  });
113
- TextArea.defaultProps = {
114
- placeholder: "请输入",
115
- style: { width: "100%" }
116
- };
117
121
  TextArea.displayName = "TextArea";
118
122
  var TextArea_default = TextArea;
@@ -3,11 +3,16 @@ import { BaseProps, FormControlBaseProps, NativeProps, TypeAttributes } from '..
3
3
  export type LiteralUnion<T extends U, U> = T | (U & {});
4
4
  export type ValueType = React.AllHTMLAttributes<HTMLInputElement>['value'];
5
5
  export type BaseInputRef = {
6
+ /** 获取值 */
6
7
  getValue: () => ValueType;
8
+ /** 设置值 */
7
9
  setValue: (value: ValueType) => void;
8
10
  onClear: (event?: any) => void;
11
+ /** 重置值 */
9
12
  clear: (event?: any) => void;
13
+ /** 使 input 组件获得焦点 */
10
14
  focus: () => void;
15
+ /** 使 input 组件失去焦点 */
11
16
  blur: () => void;
12
17
  showClear?: (value: ValueType) => void;
13
18
  hideClear?: () => void;
@@ -21,67 +26,123 @@ export type TextareaRef = {
21
26
  } & BaseInputRef;
22
27
  export interface InputProps extends FormControlBaseProps<ValueType>, BaseProps, NativeProps, Omit<React.AllHTMLAttributes<HTMLInputElement>, 'defaultValue' | 'size' | 'prefix' | 'type' | 'onInput' | 'onChange' | 'style' | 'children'> {
23
28
  size?: TypeAttributes.Size;
29
+ /** 初始值 */
24
30
  defaultValue?: ValueType;
31
+ /**
32
+ * text,textarea 和其他原生 input 的 type 值
33
+ * ref: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#%3Cinput%3E_types */
25
34
  type?: LiteralUnion<'color' | 'date' | 'datetime-local' | 'email' | 'file' | 'hidden' | 'image' | 'number' | 'password' | 'range' | 'search' | 'tel' | 'text' | 'time' | 'url' | 'week', string>;
35
+ /** 输入框头部内容,只对 type="text" 有效 */
26
36
  prefix?: React.ReactElement<any> | string | number;
37
+ /** 输入框尾部内容,只对 type="text" 有效 */
27
38
  suffix?: React.ReactElement<any> | string | number;
39
+ /** 输入框前置内容,只对 type="text" 有效 */
28
40
  prepend?: React.ReactElement<any> | string | number;
41
+ /** 输入框后置内容,只对 type="text" 有效 */
29
42
  append?: React.ReactElement | string | number;
43
+ /** 是否可清空 */
30
44
  clearable?: boolean;
45
+ /** 是否显示切换密码图标 */
31
46
  showPassword?: boolean;
47
+ /** 是否纯文本模式,即无边框 */
32
48
  plain?: boolean;
49
+ /** 表单校验错误提示 */
33
50
  error?: boolean;
51
+ /** 表单校验警告提示 */
34
52
  warning?: boolean;
53
+ /** 输入是否防抖动 */
35
54
  debounceInput?: boolean;
55
+ /** 获取输入建议的防抖延时,单位为毫秒 */
36
56
  debounceTime?: number;
57
+ /** input自定义内联样式 */
37
58
  innerStyle?: React.CSSProperties;
59
+ /** 范围选择时开始输入框的占位内容 */
38
60
  startPlaceholder?: string;
61
+ /** 范围选择时结束输入框的占位内容 */
39
62
  endPlaceholder?: string;
63
+ /** 最大输入长度 */
40
64
  maxLength?: number;
65
+ /** 原生属性,最小输入长度 */
41
66
  minLength?: number;
67
+ /** 是否显示统计字数, 只在 type 为 'text' 或 'textarea' 的时候生效 */
42
68
  showWordLimit?: boolean;
69
+ /** 是否隐藏值 */
43
70
  hiddenValue?: boolean;
71
+ /** 在点击由 clearable 属性生成的清空按钮时触发 */
44
72
  onClear?: (e: MouseEvent) => void;
73
+ /** 在 Input 值改变时触发 */
45
74
  onChange?: (value: ValueType, event?: React.ChangeEvent) => void;
46
75
  }
47
76
  export interface InputGroupProps extends BaseProps, NativeProps {
77
+ /** 输入框前置内容,只对 type="text" 有效 */
48
78
  prepend?: React.ReactElement<any> | string | number;
79
+ /** 输入框后置内容,只对 type="text" 有效 */
49
80
  append?: React.ReactElement | string | number;
50
81
  }
51
82
  export interface TextareaProps extends Omit<React.AllHTMLAttributes<HTMLInputElement>, 'defaultValue' | 'size' | 'prefix' | 'type' | 'onInput' | 'onChange' | 'style' | 'children'>, FormControlBaseProps<ValueType>, BaseProps, NativeProps {
83
+ /** 初始值 */
52
84
  defaultValue?: ValueType;
85
+ /** 表单校验错误提示 */
53
86
  error?: boolean;
87
+ /** 表单校验警告提示 */
54
88
  warning?: boolean;
89
+ /** 是否纯文本模式,即无边框 */
55
90
  plain?: boolean;
56
91
  rows?: number;
92
+ /** input自定义内联样式 */
57
93
  innerStyle?: React.CSSProperties;
94
+ /** 最大输入长度 */
58
95
  maxLength?: number;
96
+ /** 原生属性,最小输入长度 */
59
97
  minLength?: number;
98
+ /** 是否显示统计字数, 只在 type 为 'text' 或 'textarea' 的时候生效 */
60
99
  showWordLimit?: boolean;
100
+ /** 在 Input 值改变时触发 */
61
101
  onChange?: (value: ValueType, event?: React.ChangeEvent) => void;
62
102
  }
63
103
  export type InputRangeValueType = [string | null, string | null] | [number | null, number | null];
64
104
  export interface InputRangeProps<T = InputRangeValueType> extends Omit<FormControlBaseProps<T>, 'name' | 'onChange'>, BaseProps, NativeProps {
65
105
  name?: [string, string];
66
106
  size?: TypeAttributes.Size;
107
+ /** 只读 */
67
108
  readOnly?: boolean;
109
+ /** 是否激活状态 */
68
110
  active?: boolean;
69
111
  onClick?: React.MouseEventHandler<HTMLDivElement>;
112
+ /**
113
+ * text,textarea 和其他原生 input 的 type 值
114
+ * ref: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#%3Cinput%3E_types */
70
115
  type?: 'text' | 'hidden' | 'number';
116
+ /** 输入框头部内容,只对 type="text" 有效 */
71
117
  prefix?: React.ReactElement<any> | string | number;
118
+ /** 输入框尾部内容,只对 type="text" 有效 */
72
119
  suffix?: React.ReactElement<any> | string | number;
120
+ /** 输入框前置内容,只对 type="text" 有效 */
73
121
  prepend?: React.ReactElement<any> | string | number;
122
+ /** 输入框后置内容,只对 type="text" 有效 */
74
123
  append?: React.ReactElement | string | number;
124
+ /** 数值精度 */
75
125
  precision?: number;
126
+ /** 是否可清空 */
76
127
  clearable?: boolean;
128
+ /** 是否纯文本模式,即无边框 */
77
129
  plain?: boolean;
130
+ /** 表单校验失败 */
78
131
  error?: boolean;
132
+ /** 表单校验失败 */
79
133
  warning?: boolean;
134
+ /** 选择范围时的分隔符 */
80
135
  rangeSeparator?: string;
136
+ /** 输入是否防抖动 */
81
137
  debounceInput?: boolean;
138
+ /** input自定义内联样式 */
82
139
  innerStyle?: React.CSSProperties;
140
+ /** 范围选择时开始输入框的占位内容 */
83
141
  startPlaceholder?: string;
142
+ /** 范围选择时结束输入框的占位内容 */
84
143
  endPlaceholder?: string;
144
+ /** 在点击由 clearable 属性生成的清空按钮时触发 */
85
145
  onClear?: (e: MouseEvent) => void;
146
+ /** 选中值发生变化时触发 */
86
147
  onChange?: (value: InputRangeValueType | null, event?: Event) => void;
87
148
  }