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

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 (404) hide show
  1. package/dist/Avatar/Avatar.d.ts +2 -2
  2. package/dist/Avatar/Avatar.js +81 -73
  3. package/dist/Avatar/index.js +1 -39
  4. package/dist/Avatar/typings.js +1 -17
  5. package/dist/Badge/Badge.d.ts +2 -2
  6. package/dist/Badge/Badge.js +75 -60
  7. package/dist/Badge/index.js +1 -39
  8. package/dist/Badge/typings.d.ts +1 -1
  9. package/dist/Badge/typings.js +1 -17
  10. package/dist/Breadcrumb/Breadcrumb.js +23 -50
  11. package/dist/Breadcrumb/BreadcrumbItem.js +45 -51
  12. package/dist/Breadcrumb/index.js +2 -42
  13. package/dist/Breadcrumb/typings.js +1 -17
  14. package/dist/Button/Button.js +132 -105
  15. package/dist/Button/ButtonGroup.js +29 -48
  16. package/dist/Button/ButtonGroupContext.js +2 -30
  17. package/dist/Button/index.js +2 -42
  18. package/dist/Button/typings.d.ts +4 -2
  19. package/dist/Button/typings.js +1 -17
  20. package/dist/Button/useButtonCustomStyle.d.ts +4 -0
  21. package/dist/Button/useButtonCustomStyle.js +65 -0
  22. package/dist/Calendar/Calendar.js +310 -237
  23. package/dist/Calendar/CalendarContext.js +3 -27
  24. package/dist/Calendar/DatePanel.js +191 -158
  25. package/dist/Calendar/DateRangePanel.js +140 -125
  26. package/dist/Calendar/Footer.js +41 -51
  27. package/dist/Calendar/Header.js +83 -65
  28. package/dist/Calendar/MonthPanel.js +138 -124
  29. package/dist/Calendar/MonthRangePanel.js +137 -124
  30. package/dist/Calendar/ShortCuts.js +21 -40
  31. package/dist/Calendar/WeekPanel.js +213 -145
  32. package/dist/Calendar/YearPanel.js +150 -125
  33. package/dist/Calendar/YearRangePanel.js +138 -128
  34. package/dist/Calendar/index.js +4 -47
  35. package/dist/Calendar/typings.js +1 -17
  36. package/dist/Calendar/util.js +26 -68
  37. package/dist/Card/Card.js +36 -46
  38. package/dist/Card/index.js +1 -39
  39. package/dist/Card/typings.js +1 -17
  40. package/dist/Carousel/Carousel.js +202 -166
  41. package/dist/Carousel/CarouselContext.js +14 -42
  42. package/dist/Carousel/CarouselItem.js +55 -71
  43. package/dist/Carousel/hooks/useCarousel.js +263 -238
  44. package/dist/Carousel/hooks/useCarouselItem.js +136 -132
  45. package/dist/Carousel/index.js +2 -42
  46. package/dist/Carousel/typings.js +1 -17
  47. package/dist/Cascader/Cascader.js +693 -569
  48. package/dist/Cascader/CascaderContext.js +9 -45
  49. package/dist/Cascader/CascaderDropdown.js +90 -77
  50. package/dist/Cascader/CascaderMenu.js +101 -114
  51. package/dist/Cascader/Utils.js +6 -33
  52. package/dist/Cascader/index.js +1 -39
  53. package/dist/Cascader/typings.d.ts +1 -1
  54. package/dist/Cascader/typings.js +1 -17
  55. package/dist/Cascader/useCascader.js +648 -458
  56. package/dist/Checkbox/Checkbox.d.ts +3 -3
  57. package/dist/Checkbox/Checkbox.js +138 -161
  58. package/dist/Checkbox/CheckboxButton.js +133 -157
  59. package/dist/Checkbox/index.js +2 -42
  60. package/dist/Checkbox/typings.d.ts +3 -2
  61. package/dist/Checkbox/typings.js +1 -17
  62. package/dist/CheckboxGroup/CheckboxGroup.js +133 -112
  63. package/dist/CheckboxGroup/CheckboxGroupContext.js +2 -30
  64. package/dist/CheckboxGroup/index.js +2 -42
  65. package/dist/Col/Col.js +53 -72
  66. package/dist/Col/index.js +1 -39
  67. package/dist/Col/typings.js +1 -17
  68. package/dist/Collapse/Collapse.js +36 -45
  69. package/dist/Collapse/CollapseContext.js +3 -31
  70. package/dist/Collapse/CollapseItem.js +88 -73
  71. package/dist/Collapse/CollapseTransition.js +29 -67
  72. package/dist/Collapse/index.js +2 -42
  73. package/dist/Collapse/typings.js +1 -17
  74. package/dist/ColorPicker/AlphaSlider.js +117 -99
  75. package/dist/ColorPicker/ColorPicker.d.ts +1 -1
  76. package/dist/ColorPicker/ColorPicker.js +233 -189
  77. package/dist/ColorPicker/HueSlider.js +102 -96
  78. package/dist/ColorPicker/Predefine.js +65 -66
  79. package/dist/ColorPicker/SvPanel.js +95 -81
  80. package/dist/ColorPicker/color.js +301 -213
  81. package/dist/ColorPicker/draggable.js +30 -48
  82. package/dist/ColorPicker/index.js +1 -39
  83. package/dist/ColorPicker/typings.js +1 -17
  84. package/dist/ColorPicker/util.js +23 -60
  85. package/dist/ConfigProvider/ConfigProvider.js +4 -28
  86. package/dist/ConfigProvider/index.js +1 -39
  87. package/dist/DatePicker/DatePicker.d.ts +3 -3
  88. package/dist/DatePicker/DatePicker.js +251 -227
  89. package/dist/DatePicker/DateRangePicker.d.ts +3 -3
  90. package/dist/DatePicker/DateRangePicker.js +279 -276
  91. package/dist/DatePicker/index.js +2 -39
  92. package/dist/DatePicker/main.d.ts +2 -2
  93. package/dist/DatePicker/main.js +21 -44
  94. package/dist/DatePicker/typings.d.ts +24 -17
  95. package/dist/DatePicker/typings.js +1 -17
  96. package/dist/DateTimePicker/DateTimePicker.d.ts +3 -5
  97. package/dist/DateTimePicker/DateTimePicker.js +286 -215
  98. package/dist/DateTimePicker/index.js +1 -39
  99. package/dist/DateTimePicker/typings.d.ts +10 -13
  100. package/dist/DateTimePicker/typings.js +1 -17
  101. package/dist/DateTimePicker/util.js +5 -35
  102. package/dist/Descriptions/Descriptions.js +83 -63
  103. package/dist/Descriptions/DescriptionsCell.js +67 -79
  104. package/dist/Descriptions/DescriptionsContext.js +4 -32
  105. package/dist/Descriptions/DescriptionsItem.js +4 -27
  106. package/dist/Descriptions/DescriptionsRow.js +42 -44
  107. package/dist/Descriptions/index.js +2 -42
  108. package/dist/Descriptions/typings.js +1 -17
  109. package/dist/Dialog/Dialog.js +224 -176
  110. package/dist/Dialog/DialogBody.js +52 -59
  111. package/dist/Dialog/DialogContext.js +6 -44
  112. package/dist/Dialog/DialogFooter.js +21 -45
  113. package/dist/Dialog/DialogHeader.js +44 -50
  114. package/dist/Dialog/index.js +1 -39
  115. package/dist/Dialog/typings.d.ts +1 -1
  116. package/dist/Dialog/typings.js +1 -17
  117. package/dist/Dialog/useDraggable.js +52 -79
  118. package/dist/Divider/Divider.d.ts +3 -3
  119. package/dist/Divider/Divider.js +38 -44
  120. package/dist/Divider/index.js +1 -39
  121. package/dist/Drawer/Drawer.js +144 -136
  122. package/dist/Drawer/DrawerBody.js +35 -57
  123. package/dist/Drawer/DrawerContext.js +13 -44
  124. package/dist/Drawer/DrawerFooter.js +22 -43
  125. package/dist/Drawer/DrawerHeader.js +41 -48
  126. package/dist/Drawer/index.js +1 -39
  127. package/dist/Drawer/typings.js +1 -17
  128. package/dist/Dropdown/Dropdown.d.ts +3 -3
  129. package/dist/Dropdown/Dropdown.js +103 -107
  130. package/dist/Dropdown/DropdownContext.js +5 -43
  131. package/dist/Dropdown/DropdownItem.js +40 -60
  132. package/dist/Dropdown/DropdownMenu.js +28 -56
  133. package/dist/Dropdown/index.js +3 -45
  134. package/dist/Dropdown/typings.d.ts +8 -1
  135. package/dist/Dropdown/typings.js +1 -17
  136. package/dist/Empty/Empty.js +32 -53
  137. package/dist/Empty/ImgEmpty.js +115 -117
  138. package/dist/Empty/index.js +1 -39
  139. package/dist/Form/FieldContext.js +8 -37
  140. package/dist/Form/Form.js +167 -162
  141. package/dist/Form/FormContext.js +58 -97
  142. package/dist/Form/FormItem.js +620 -352
  143. package/dist/Form/FormItemContext.js +3 -31
  144. package/dist/Form/List.js +121 -104
  145. package/dist/Form/ListContext.js +3 -27
  146. package/dist/Form/index.js +3 -45
  147. package/dist/Form/typings.d.ts +25 -4
  148. package/dist/Form/typings.js +1 -17
  149. package/dist/Form/useForm.js +830 -690
  150. package/dist/Form/useWatch.js +64 -79
  151. package/dist/Form/utils/NameMap.js +98 -69
  152. package/dist/Form/utils/asyncUtil.js +9 -37
  153. package/dist/Form/utils/classUtil.js +26 -48
  154. package/dist/Form/utils/cloneDeep.js +8 -29
  155. package/dist/Form/utils/get.js +6 -30
  156. package/dist/Form/utils/messages.js +25 -53
  157. package/dist/Form/utils/set.js +31 -44
  158. package/dist/Form/utils/typeUtil.js +3 -31
  159. package/dist/Form/utils/util.js +18 -55
  160. package/dist/Form/utils/validateUtil.js +284 -159
  161. package/dist/Form/utils/valueUtil.js +102 -107
  162. package/dist/Icon/Icon.js +39 -63
  163. package/dist/Icon/IconList/Check.js +25 -65
  164. package/dist/Icon/IconList/Close.js +23 -52
  165. package/dist/Icon/IconList/Delete.js +25 -65
  166. package/dist/Icon/IconList/Down.js +25 -65
  167. package/dist/Icon/IconList/Eye.js +25 -65
  168. package/dist/Icon/IconList/EyeClose.js +25 -65
  169. package/dist/Icon/IconList/Left.js +25 -65
  170. package/dist/Icon/IconList/Link.js +19 -55
  171. package/dist/Icon/IconList/More.js +25 -65
  172. package/dist/Icon/IconList/Question.js +25 -65
  173. package/dist/Icon/IconList/Right.js +25 -65
  174. package/dist/Icon/IconList/Search.js +25 -65
  175. package/dist/Icon/IconList/Up.js +25 -65
  176. package/dist/Icon/IconList/Upload.js +25 -65
  177. package/dist/Icon/IconList/index.js +14 -68
  178. package/dist/Icon/index.js +2 -42
  179. package/dist/Icon/typings.js +1 -17
  180. package/dist/Input/Input.js +335 -358
  181. package/dist/Input/InputGroup.js +27 -43
  182. package/dist/Input/InputRange.js +295 -308
  183. package/dist/Input/TextArea.js +129 -120
  184. package/dist/Input/index.js +3 -45
  185. package/dist/Input/typings.d.ts +1 -1
  186. package/dist/Input/typings.js +1 -17
  187. package/dist/InputNumber/InputNumber.js +224 -203
  188. package/dist/InputNumber/index.js +1 -39
  189. package/dist/InputNumber/typings.d.ts +1 -1
  190. package/dist/InputNumber/typings.js +1 -17
  191. package/dist/Link/Link.js +43 -60
  192. package/dist/Link/index.js +1 -39
  193. package/dist/Link/typings.js +1 -17
  194. package/dist/Loading/Loading.js +93 -66
  195. package/dist/Loading/index.js +1 -39
  196. package/dist/Loading/typings.js +1 -17
  197. package/dist/Message/Main.js +41 -66
  198. package/dist/Message/Message.js +167 -130
  199. package/dist/Message/index.js +68 -88
  200. package/dist/Message/typings.js +1 -17
  201. package/dist/MessageBox/Main.js +43 -68
  202. package/dist/MessageBox/MessageBox.js +253 -202
  203. package/dist/MessageBox/index.js +74 -79
  204. package/dist/MessageBox/typings.js +1 -17
  205. package/dist/Notification/Main.js +41 -66
  206. package/dist/Notification/Notification.js +148 -131
  207. package/dist/Notification/index.js +76 -92
  208. package/dist/Notification/typings.js +1 -17
  209. package/dist/Pagination/Options.js +104 -99
  210. package/dist/Pagination/Pager.js +30 -61
  211. package/dist/Pagination/Pagination.js +462 -380
  212. package/dist/Pagination/index.js +1 -39
  213. package/dist/Pagination/typings.js +1 -17
  214. package/dist/Pagination/util.js +10 -41
  215. package/dist/Popconfirm/Popconfirm.js +108 -116
  216. package/dist/Popconfirm/index.js +1 -39
  217. package/dist/Popconfirm/typings.js +1 -17
  218. package/dist/Popover/Popover.js +87 -89
  219. package/dist/Popover/index.js +1 -39
  220. package/dist/Popover/typings.js +1 -17
  221. package/dist/Popper/Popper.js +172 -149
  222. package/dist/Popper/index.js +1 -39
  223. package/dist/Popper/popperOptions.js +79 -90
  224. package/dist/Popper/typings.js +1 -17
  225. package/dist/Progress/Progress.js +186 -155
  226. package/dist/Progress/index.js +1 -39
  227. package/dist/Progress/typings.js +1 -17
  228. package/dist/Radio/Radio.js +162 -117
  229. package/dist/Radio/RadioButton.d.ts +2 -2
  230. package/dist/Radio/RadioButton.js +137 -117
  231. package/dist/Radio/index.js +1 -39
  232. package/dist/Radio/typings.d.ts +2 -1
  233. package/dist/Radio/typings.js +1 -17
  234. package/dist/RadioGroup/RadioGroup.js +63 -78
  235. package/dist/RadioGroup/index.js +1 -39
  236. package/dist/RadioGroup/typings.js +1 -17
  237. package/dist/Row/Row.js +41 -62
  238. package/dist/Row/RowContext.js +3 -31
  239. package/dist/Row/index.js +2 -42
  240. package/dist/Row/typings.js +1 -17
  241. package/dist/Scrollbar/Scrollbar.js +172 -133
  242. package/dist/Scrollbar/Thumb.js +108 -96
  243. package/dist/Scrollbar/index.js +1 -39
  244. package/dist/Scrollbar/typings.d.ts +11 -2
  245. package/dist/Scrollbar/typings.js +1 -17
  246. package/dist/Scrollbar/util.js +24 -51
  247. package/dist/Select/Option.js +50 -75
  248. package/dist/Select/OptionGroup.js +31 -47
  249. package/dist/Select/Select.js +25 -48
  250. package/dist/Select/SelectContext.js +8 -46
  251. package/dist/Select/SelectCore.js +449 -377
  252. package/dist/Select/SelectDropdown.js +200 -160
  253. package/dist/Select/index.js +2 -42
  254. package/dist/Select/typings.d.ts +1 -1
  255. package/dist/Select/typings.js +1 -17
  256. package/dist/Skeleton/PlaceholderGraph.js +39 -45
  257. package/dist/Skeleton/PlaceholderGrid.js +55 -67
  258. package/dist/Skeleton/PlaceholderParagraph.js +51 -52
  259. package/dist/Skeleton/Skeleton.js +8 -42
  260. package/dist/Skeleton/index.js +1 -39
  261. package/dist/Switch/Switch.js +183 -154
  262. package/dist/Switch/index.js +1 -39
  263. package/dist/Switch/typings.js +1 -17
  264. package/dist/Table/Colgroup.js +17 -41
  265. package/dist/Table/Table.js +246 -188
  266. package/dist/Table/TableBody.js +265 -200
  267. package/dist/Table/TableCell.js +461 -320
  268. package/dist/Table/TableColumn.js +9 -43
  269. package/dist/Table/TableContext.js +44 -63
  270. package/dist/Table/TableHeader.js +112 -102
  271. package/dist/Table/TableHeaderCell.js +211 -158
  272. package/dist/Table/hooks/useResize.js +69 -83
  273. package/dist/Table/hooks/useScroll.js +88 -114
  274. package/dist/Table/hooks/useSelection.js +145 -110
  275. package/dist/Table/hooks/useTable.js +411 -309
  276. package/dist/Table/index.js +2 -42
  277. package/dist/Table/treeUtil.js +99 -77
  278. package/dist/Table/typings.js +1 -17
  279. package/dist/Table/util.js +168 -109
  280. package/dist/Tabs/TabPane.js +51 -53
  281. package/dist/Tabs/Tabs.js +277 -178
  282. package/dist/Tabs/TabsContext.js +4 -32
  283. package/dist/Tabs/index.js +2 -42
  284. package/dist/Tabs/typings.js +1 -17
  285. package/dist/Tag/Tag.js +86 -74
  286. package/dist/Tag/index.js +1 -39
  287. package/dist/Tag/typings.js +1 -17
  288. package/dist/TimeLine/TimeLine.js +13 -42
  289. package/dist/TimeLine/TimeLineItem.js +66 -54
  290. package/dist/TimeLine/index.js +2 -42
  291. package/dist/TimeLine/typings.js +1 -17
  292. package/dist/TimePicker/TimePicker.d.ts +1 -4
  293. package/dist/TimePicker/TimePicker.js +275 -215
  294. package/dist/TimePicker/TimePickerPanel.js +62 -71
  295. package/dist/TimePicker/TimePickerRange.d.ts +4 -4
  296. package/dist/TimePicker/TimePickerRange.js +371 -334
  297. package/dist/TimePicker/TimeRangePanel.js +182 -165
  298. package/dist/TimePicker/TimeSpinnerPanel.js +321 -267
  299. package/dist/TimePicker/index.d.ts +2 -3
  300. package/dist/TimePicker/index.js +1 -42
  301. package/dist/TimePicker/main.d.ts +9 -0
  302. package/dist/TimePicker/main.js +17 -0
  303. package/dist/TimePicker/typings.d.ts +29 -24
  304. package/dist/TimePicker/typings.js +1 -17
  305. package/dist/TimePicker/useTimePicker.js +62 -65
  306. package/dist/TimePicker/util.js +8 -40
  307. package/dist/Tooltip/Tooltip.js +172 -180
  308. package/dist/Tooltip/TooltipContext.js +8 -46
  309. package/dist/Tooltip/index.js +2 -42
  310. package/dist/Tooltip/typings.js +1 -17
  311. package/dist/Transfer/List.js +290 -241
  312. package/dist/Transfer/ListBody.js +92 -106
  313. package/dist/Transfer/ListItem.js +38 -51
  314. package/dist/Transfer/Transfer.js +323 -280
  315. package/dist/Transfer/index.js +1 -39
  316. package/dist/Transfer/interface.js +1 -17
  317. package/dist/Transfer/operation.js +35 -48
  318. package/dist/Transfer/search.js +30 -62
  319. package/dist/Transfer/typings/index.js +1 -17
  320. package/dist/Transfer/typings/list.js +1 -17
  321. package/dist/Transfer/typings/listBody.js +2 -30
  322. package/dist/Transition/Transition.js +271 -234
  323. package/dist/Transition/TransitionGroup.js +136 -88
  324. package/dist/Transition/TransitionGroupContext.js +2 -26
  325. package/dist/Transition/childMapping.js +84 -71
  326. package/dist/Transition/index.js +2 -42
  327. package/dist/Transition/util.d.ts +0 -1
  328. package/dist/Transition/util.js +6 -47
  329. package/dist/Tree/DirectoryTree.js +146 -118
  330. package/dist/Tree/DropIndicator.js +15 -45
  331. package/dist/Tree/Indent.js +23 -54
  332. package/dist/Tree/MotionTreeNode.js +94 -95
  333. package/dist/Tree/NodeList.js +228 -221
  334. package/dist/Tree/RCTree.js +969 -702
  335. package/dist/Tree/Tree.js +64 -79
  336. package/dist/Tree/TreeNode.js +254 -255
  337. package/dist/Tree/contextTypes.js +8 -42
  338. package/dist/Tree/index.js +4 -48
  339. package/dist/Tree/typings.js +1 -17
  340. package/dist/Tree/useUnmount.js +21 -41
  341. package/dist/Tree/util.js +156 -134
  342. package/dist/Tree/utils/conductUtil.js +113 -104
  343. package/dist/Tree/utils/dictUtil.js +50 -78
  344. package/dist/Tree/utils/diffUtil.js +26 -43
  345. package/dist/Tree/utils/dropIndicator.js +23 -51
  346. package/dist/Tree/utils/iconUtil.js +44 -51
  347. package/dist/Tree/utils/keyUtil.js +2 -26
  348. package/dist/Tree/utils/motion.js +34 -72
  349. package/dist/Tree/utils/pickAttrs.js +30 -58
  350. package/dist/Tree/utils/treeUtil.js +263 -203
  351. package/dist/TreeSelect/TreeSelect.js +521 -459
  352. package/dist/TreeSelect/Utils.js +15 -36
  353. package/dist/TreeSelect/index.js +1 -39
  354. package/dist/TreeSelect/typings.d.ts +1 -1
  355. package/dist/TreeSelect/typings.js +1 -17
  356. package/dist/Upload/Upload.js +106 -109
  357. package/dist/Upload/UploadContent.js +227 -182
  358. package/dist/Upload/UploadContext.js +5 -33
  359. package/dist/Upload/UploadDrag.js +77 -97
  360. package/dist/Upload/UploadList.js +104 -73
  361. package/dist/Upload/ajax.js +45 -71
  362. package/dist/Upload/index.js +1 -39
  363. package/dist/Upload/typings.js +34 -36
  364. package/dist/Upload/use-handlers.js +182 -126
  365. package/dist/Util/Math.js +81 -78
  366. package/dist/Util/PopupManager.js +5 -27
  367. package/dist/Util/base.js +101 -171
  368. package/dist/Util/genFileId.js +3 -29
  369. package/dist/Util/index.js +6 -51
  370. package/dist/Util/resize-event.js +31 -54
  371. package/dist/Util/shallowEqual.js +30 -28
  372. package/dist/Util/treeUtils.js +68 -64
  373. package/dist/config/Constants.js +17 -47
  374. package/dist/display.css +1 -0
  375. package/dist/hooks/animationPropsUtils.js +25 -49
  376. package/dist/hooks/htmlPropsUtils.js +54 -121
  377. package/dist/hooks/index.js +14 -73
  378. package/dist/hooks/popperPropsUtils.js +25 -67
  379. package/dist/hooks/prefix.js +22 -55
  380. package/dist/hooks/treePropsUtils.js +24 -103
  381. package/dist/hooks/useChildrenInstance.js +51 -60
  382. package/dist/hooks/useClassNames.d.ts +2 -0
  383. package/dist/hooks/useClassNames.js +279 -197
  384. package/dist/hooks/useClickOutside.js +37 -62
  385. package/dist/hooks/useCommonProps.js +17 -53
  386. package/dist/hooks/useComponentWillMount.js +4 -28
  387. package/dist/hooks/useControlled.js +31 -37
  388. package/dist/hooks/useForceUpdate.js +16 -34
  389. package/dist/hooks/useUpdateEffect.js +6 -29
  390. package/dist/index.css +1 -57810
  391. package/dist/index.d.ts +0 -2
  392. package/dist/index.js +69 -237
  393. package/dist/theme-chalk/common/index.js +1 -2
  394. package/dist/theme-chalk/common/index.scss +2 -2
  395. package/dist/theme-chalk/date-picker/index.scss +1 -1
  396. package/dist/theme-chalk/display.scss +46 -0
  397. package/dist/theme-chalk/form/index.scss +21 -2
  398. package/dist/types/common.js +1 -17
  399. package/dist/types/type.js +16 -28
  400. package/package.json +6 -1
  401. package/theme-chalk/common/index.scss +2 -2
  402. package/theme-chalk/date-picker/index.scss +1 -1
  403. package/theme-chalk/display.scss +46 -0
  404. package/theme-chalk/form/index.scss +21 -2
@@ -1,399 +1,376 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- // If the importer is in node compatibility mode or this is not an ESM
21
- // file that has been converted to a CommonJS file using a Babel-
22
- // compatible transform (i.e. "__esModule" has not been set), then set
23
- // "default" to the CommonJS "module.exports" for node compatibility.
24
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
- mod
26
- ));
27
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
-
29
- // src/Input/Input.tsx
30
- var Input_exports = {};
31
- __export(Input_exports, {
32
- default: () => Input_default
33
- });
34
- module.exports = __toCommonJS(Input_exports);
35
- var import_ahooks = require("ahooks");
36
- var import_classnames = __toESM(require("classnames"));
37
- var import_dom_lib = require("dom-lib");
38
- var import_isObject = __toESM(require("lodash/isObject"));
39
- var import_react = __toESM(require("react"));
40
- var import_Icon = require("../Icon");
41
- var import_Util = require("../Util");
42
- var import_hooks = require("../hooks");
43
- var import_InputGroup = __toESM(require("./InputGroup"));
44
- var import_InputRange = __toESM(require("./InputRange"));
45
- var import_TextArea = __toESM(require("./TextArea"));
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 _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18;
3
+ var _excluded = ["name", "title", "prefix", "suffix", "prepend", "append", "error", "warning", "debounceInput", "debounceTime", "placeholder", "readOnly", "plain", "classPrefix", "onChange", "onClear", "showPassword", "onFocus", "onBlur", "maxLength", "showWordLimit", "hiddenValue", "defaultValue"];
4
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
5
+ 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; }
6
+ 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; }
7
+ 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; }
8
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
9
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
10
+ function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
11
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
12
+ 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."); }
13
+ 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); }
14
+ 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; }
15
+ 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; } }
16
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
17
+ 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; }
18
+ 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; }
19
+ import { useDebounceFn } from 'ahooks';
20
+ import classNames from 'classnames';
21
+ import { addClass, addStyle, hasClass, removeClass } from 'dom-lib';
22
+ import isObject from 'lodash/isObject';
23
+ import React, { cloneElement, forwardRef, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
24
+ import Icon from "../Icon/Icon";
25
+ import { isNotEmpty, mergeDefaultProps } from "../Util";
26
+ import { partitionHTMLProps, useClassNames, useControlled, useDisabled, useSize } from "../hooks";
27
+ import InputGroup from "./InputGroup";
28
+ import InputRange from "./InputRange";
29
+ import TextArea from "./TextArea";
46
30
  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
- );
57
- const {
58
- name,
59
- title,
60
- prefix,
61
- suffix,
62
- prepend,
63
- append,
64
- error,
65
- warning,
66
- debounceInput,
67
- debounceTime,
68
- placeholder,
69
- readOnly,
70
- plain,
71
- classPrefix = "input",
72
- onChange,
73
- onClear,
74
- showPassword,
75
- onFocus,
76
- onBlur,
77
- maxLength,
78
- showWordLimit,
79
- hiddenValue,
80
- defaultValue,
81
- ...rest
82
- } = props;
83
- const { b, e, m, is } = (0, import_hooks.useClassNames)(classPrefix);
84
- const [htmlInputProps] = (0, import_hooks.partitionHTMLProps)(rest);
85
- const [value, setValue] = (0, import_hooks.useControlled)(props.value, defaultValue);
86
- const [type, setType] = (0, import_react.useState)(props.type || "text");
87
- const disabled = (0, import_hooks.useDisabled)(props.disabled);
88
- const size = (0, import_hooks.useSize)(props.size);
89
- const containerRef = (0, import_react.useRef)(null);
90
- const inputRef = (0, import_react.useRef)(null);
91
- const contentRef = (0, import_react.useRef)(null);
92
- const clearRef = (0, import_react.useRef)(null);
93
- const suffixRef = (0, import_react.useRef)(null);
94
- const inputOver = (0, import_react.useRef)(true);
95
- const clearable = (0, import_react.useMemo)(() => {
96
- return Boolean(
97
- showPassword ? false : props.clearable
98
- /* && !readOnly */
99
- );
31
+ var _this = this;
32
+ props = mergeDefaultProps({
33
+ type: 'text',
34
+ placeholder: '请输入',
35
+ clearable: true,
36
+ debounceTime: 200,
37
+ defaultValue: ''
38
+ }, props);
39
+ var _props = props,
40
+ name = _props.name,
41
+ title = _props.title,
42
+ prefix = _props.prefix,
43
+ suffix = _props.suffix,
44
+ prepend = _props.prepend,
45
+ append = _props.append,
46
+ error = _props.error,
47
+ warning = _props.warning,
48
+ debounceInput = _props.debounceInput,
49
+ debounceTime = _props.debounceTime,
50
+ placeholder = _props.placeholder,
51
+ readOnly = _props.readOnly,
52
+ plain = _props.plain,
53
+ _props$classPrefix = _props.classPrefix,
54
+ classPrefix = _props$classPrefix === void 0 ? 'input' : _props$classPrefix,
55
+ onChange = _props.onChange,
56
+ onClear = _props.onClear,
57
+ showPassword = _props.showPassword,
58
+ _onFocus = _props.onFocus,
59
+ _onBlur = _props.onBlur,
60
+ maxLength = _props.maxLength,
61
+ showWordLimit = _props.showWordLimit,
62
+ hiddenValue = _props.hiddenValue,
63
+ defaultValue = _props.defaultValue,
64
+ rest = _objectWithoutProperties(_props, _excluded);
65
+ var _useClassNames = useClassNames(classPrefix),
66
+ b = _useClassNames.b,
67
+ e = _useClassNames.e,
68
+ m = _useClassNames.m,
69
+ is = _useClassNames.is;
70
+ var _partitionHTMLProps = partitionHTMLProps(rest),
71
+ _partitionHTMLProps2 = _slicedToArray(_partitionHTMLProps, 1),
72
+ htmlInputProps = _partitionHTMLProps2[0];
73
+ var _useControlled = useControlled(props.value, defaultValue),
74
+ _useControlled2 = _slicedToArray(_useControlled, 2),
75
+ value = _useControlled2[0],
76
+ setValue = _useControlled2[1];
77
+ var _useState = useState(props.type || 'text'),
78
+ _useState2 = _slicedToArray(_useState, 2),
79
+ type = _useState2[0],
80
+ setType = _useState2[1];
81
+ var disabled = useDisabled(props.disabled);
82
+ var size = useSize(props.size);
83
+ var containerRef = useRef(null);
84
+ var inputRef = useRef(null);
85
+ var contentRef = useRef(null);
86
+ var clearRef = useRef(null);
87
+ var suffixRef = useRef(null);
88
+ // 搜索框是否输入完毕
89
+ var inputOver = useRef(true);
90
+
91
+ // const containerRef = useMemo(() => props.containerRef ?? rootRef, [props.containerRef]);
92
+
93
+ /** 是否可清空 */
94
+ var clearable = useMemo(function () {
95
+ // 只读不显示清除按钮只有input组件适用,加上了那些引用input组件就无法显示清空按钮了,这里添加说明,下次别再添加了
96
+ return Boolean(showPassword ? false : props.clearable /* && !readOnly */);
100
97
  }, [props.clearable, showPassword]);
101
- const suffixSlot = (0, import_react.useMemo)(() => {
102
- var _a;
103
- if (type === "text" && maxLength && showWordLimit) {
104
- return /* @__PURE__ */ import_react.default.createElement("span", { className: e`count` }, /* @__PURE__ */ import_react.default.createElement("span", { className: e`count-inner` }, typeof value === "string" ? value.length : 0, " / ", maxLength));
105
- } else if (["text", "password"].includes(type) && suffix) {
106
- if ((0, import_isObject.default)(suffix)) {
107
- let nodeType = suffix == null ? void 0 : suffix.type;
108
- nodeType = (nodeType == null ? void 0 : nodeType.displayName) || nodeType;
109
- if (nodeType.toString().startsWith("Icon")) {
110
- return (0, import_react.cloneElement)(suffix, {
111
- ...suffix.props,
112
- className: (0, import_classnames.default)((_a = suffix.props) == null ? void 0 : _a.className, e`icon`)
113
- });
98
+
99
+ /** 输入框尾部内容 */
100
+ var suffixSlot = useMemo(function () {
101
+ if (type === 'text' && maxLength && showWordLimit) {
102
+ return /*#__PURE__*/React.createElement("span", {
103
+ className: e(_templateObject || (_templateObject = _taggedTemplateLiteral(["count"])))
104
+ }, /*#__PURE__*/React.createElement("span", {
105
+ className: e(_templateObject2 || (_templateObject2 = _taggedTemplateLiteral(["count-inner"])))
106
+ }, typeof value === 'string' ? value.length : 0, " / ", maxLength));
107
+ } else if (['text', 'password'].includes(type) && suffix) {
108
+ if (isObject(suffix)) {
109
+ var _nodeType;
110
+ var nodeType = suffix === null || suffix === void 0 ? void 0 : suffix.type;
111
+ nodeType = ((_nodeType = nodeType) === null || _nodeType === void 0 ? void 0 : _nodeType.displayName) || nodeType;
112
+ if (nodeType.toString().startsWith('Icon')) {
113
+ var _suffix$props;
114
+ return /*#__PURE__*/cloneElement(suffix, _objectSpread(_objectSpread({}, suffix.props), {}, {
115
+ className: classNames((_suffix$props = suffix.props) === null || _suffix$props === void 0 ? void 0 : _suffix$props.className, e(_templateObject3 || (_templateObject3 = _taggedTemplateLiteral(["icon"]))))
116
+ }));
114
117
  }
115
118
  }
116
119
  return suffix;
117
- } else if (showPassword && (0, import_Util.isNotEmpty)(value)) {
118
- return /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { name: type === "text" ? "eye" : "eye-slash", className: (0, import_classnames.default)(e`icon`, e`clear`) });
120
+ } else if (showPassword && isNotEmpty(value)) {
121
+ return /*#__PURE__*/React.createElement(Icon, {
122
+ name: type === 'text' ? 'eye' : 'eye-slash',
123
+ className: classNames(e(_templateObject4 || (_templateObject4 = _taggedTemplateLiteral(["icon"]))), e(_templateObject5 || (_templateObject5 = _taggedTemplateLiteral(["clear"]))))
124
+ });
119
125
  }
120
126
  return null;
121
127
  }, [type, maxLength, showWordLimit, suffix, showPassword, value, e]);
122
- const suffixCanClick = (0, import_react.useMemo)(() => {
128
+
129
+ /** 后缀是否可点击 */
130
+ var suffixCanClick = useMemo(function () {
123
131
  if (showPassword) {
124
132
  return true;
125
133
  }
126
134
  }, [showPassword]);
127
- const showClear = (0, import_react.useCallback)(
128
- (_value) => {
129
- if (clearable && (0, import_Util.isNotEmpty)(_value) && !disabled && clearRef.current) {
130
- (0, import_dom_lib.addStyle)(clearRef.current, "display", "");
131
- if (suffixRef.current) {
132
- if (type === "text" && maxLength && showWordLimit) {
133
- return;
134
- }
135
- (0, import_dom_lib.addStyle)(suffixRef.current, "display", "none");
136
- }
137
- } else {
138
- if (suffixRef.current) {
139
- (0, import_dom_lib.addStyle)(suffixRef.current, "display", "");
135
+ var showClear = useCallback(function (_value) {
136
+ if (clearable && isNotEmpty(_value) && !disabled && clearRef.current) {
137
+ addStyle(clearRef.current, 'display', '');
138
+ if (suffixRef.current) {
139
+ if (type === 'text' && maxLength && showWordLimit) {
140
+ return;
140
141
  }
142
+ addStyle(suffixRef.current, 'display', 'none');
141
143
  }
142
- },
143
- [clearable, disabled, maxLength, showWordLimit, type]
144
- );
145
- const hideClear = (0, import_react.useCallback)(() => {
144
+ } else {
145
+ if (suffixRef.current) {
146
+ addStyle(suffixRef.current, 'display', '');
147
+ }
148
+ }
149
+ // addClass((ref ?? contentRef).current, m`suffix`);
150
+ }, [clearable, disabled, maxLength, showWordLimit, type]);
151
+ var hideClear = useCallback(function () {
146
152
  if (clearRef.current) {
147
- (0, import_dom_lib.addStyle)(clearRef.current, "display", "none");
153
+ addStyle(clearRef.current, 'display', 'none');
148
154
  }
149
155
  if (suffixRef.current) {
150
- (0, import_dom_lib.addStyle)(suffixRef.current, "display", "");
156
+ addStyle(suffixRef.current, 'display', '');
151
157
  }
158
+ // if (!suffixSlot) {
159
+ // removeClass((ref ?? contentRef).current, m`suffix`);
160
+ // }
152
161
  }, []);
153
- const handelClear = (0, import_react.useCallback)(
154
- (event) => {
155
- var _a;
156
- setValue("");
157
- if (clearRef.current) {
158
- (0, import_dom_lib.addStyle)(clearRef.current, "display", "none");
159
- }
160
- hideClear();
161
- if (!readOnly && !disabled) {
162
- (_a = inputRef.current) == null ? void 0 : _a.focus();
163
- }
164
- onClear == null ? void 0 : onClear(event);
165
- onChange == null ? void 0 : onChange("", event);
166
- },
167
- [disabled, hideClear, onChange, onClear, readOnly, setValue]
168
- );
169
- const onClickSuffix = (0, import_react.useCallback)(() => {
162
+
163
+ /** 在点击由 clearable 属性生成的清空按钮时触发 */
164
+ var handelClear = useCallback(function (event) {
165
+ event.stopPropagation();
166
+ setValue('');
167
+ if (clearRef.current) {
168
+ addStyle(clearRef.current, 'display', 'none');
169
+ }
170
+ hideClear();
171
+ if (!readOnly && !disabled) {
172
+ var _inputRef$current;
173
+ (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
174
+ }
175
+ onClear === null || onClear === void 0 || onClear(event);
176
+ onChange === null || onChange === void 0 || onChange('', event);
177
+ }, [disabled, hideClear, onChange, onClear, readOnly, setValue]);
178
+
179
+ /** 后缀点击事件 */
180
+ var onClickSuffix = useCallback(function () {
170
181
  if (showPassword) {
171
- setType(type === "text" ? "password" : "text");
182
+ setType(type === 'text' ? 'password' : 'text');
172
183
  }
173
184
  }, [type, showPassword]);
174
- const handleInput = (0, import_react.useCallback)(
175
- (event) => {
176
- if (inputOver.current) {
177
- setValue(event.target.value);
178
- if (clearRef.current && clearable && (0, import_Util.isNotEmpty)(event.target.value)) {
179
- showClear(event.target.value);
180
- } else {
181
- hideClear();
182
- }
183
- onChange == null ? void 0 : onChange(event.target.value, event);
184
- }
185
- },
186
- [setValue, clearable, onChange, showClear, hideClear]
187
- );
188
- const { run: handleDebounceInput } = (0, import_ahooks.useDebounceFn)(handleInput, { wait: debounceTime });
189
- const handleComposition = (0, import_react.useCallback)(
190
- (event) => {
191
- const _type = event.type;
192
- if (_type === "compositionstart") {
193
- inputOver.current = false;
194
- } else if (_type === "compositionend") {
195
- inputOver.current = true;
196
- handleInput(event);
185
+
186
+ /** 输入事件 */
187
+ var handleInput = useCallback(function (event) {
188
+ if (inputOver.current) {
189
+ // 让搜索变成异步的
190
+ setValue(event.target.value);
191
+ if (clearRef.current && clearable && isNotEmpty(event.target.value)) {
192
+ showClear(event.target.value);
193
+ } else {
194
+ hideClear();
197
195
  }
198
- },
199
- [handleInput]
200
- );
201
- (0, import_react.useEffect)(() => {
202
- const input = inputRef.current;
196
+ onChange === null || onChange === void 0 || onChange(event.target.value, event);
197
+ }
198
+ }, [setValue, clearable, onChange, showClear, hideClear]);
199
+ var _useDebounceFn = useDebounceFn(handleInput, {
200
+ wait: debounceTime
201
+ }),
202
+ handleDebounceInput = _useDebounceFn.run;
203
+ var handleComposition = useCallback(function (event) {
204
+ var _type = event.type;
205
+ if (_type === 'compositionstart') {
206
+ inputOver.current = false;
207
+ } else if (_type === 'compositionend') {
208
+ inputOver.current = true;
209
+ handleInput(event);
210
+ }
211
+ }, [handleInput]);
212
+ useEffect(function () {
213
+ var input = inputRef.current;
203
214
  if (input && debounceInput) {
204
- input.addEventListener("compositionstart", handleComposition);
205
- input.addEventListener("compositionupdate", handleComposition);
206
- input.addEventListener("compositionend", handleComposition);
215
+ input.addEventListener('compositionstart', handleComposition);
216
+ input.addEventListener('compositionupdate', handleComposition);
217
+ input.addEventListener('compositionend', handleComposition);
207
218
  }
208
219
  }, [debounceInput, handleComposition]);
209
- (0, import_react.useImperativeHandle)(ref, () => ({
210
- ref: containerRef,
211
- input: inputRef,
212
- getValue: () => value,
213
- setValue,
214
- onClear: handelClear,
215
- clear: handelClear,
216
- focus: () => {
217
- var _a;
218
- return (_a = inputRef.current) == null ? void 0 : _a.focus();
219
- },
220
- blur: () => {
221
- var _a;
222
- return (_a = inputRef.current) == null ? void 0 : _a.blur();
223
- },
224
- showClear,
225
- hideClear
226
- }));
227
- const preffixSlot = (0, import_react.useMemo)(() => {
228
- var _a;
229
- if (["text", "password"].includes(type) && prefix) {
230
- if ((0, import_isObject.default)(prefix)) {
231
- let nodeType = prefix == null ? void 0 : prefix.type;
232
- nodeType = (nodeType == null ? void 0 : nodeType.displayName) || nodeType;
233
- if (nodeType.toString().startsWith("Icon")) {
234
- return (0, import_react.cloneElement)(prefix, {
235
- ...prefix.props,
236
- className: (0, import_classnames.default)((_a = prefix.props) == null ? void 0 : _a.className, e`icon`)
237
- });
220
+ useImperativeHandle(ref, function () {
221
+ return {
222
+ ref: containerRef,
223
+ input: inputRef,
224
+ getValue: function getValue() {
225
+ return value;
226
+ },
227
+ setValue: setValue,
228
+ onClear: handelClear,
229
+ clear: handelClear,
230
+ focus: function focus() {
231
+ var _inputRef$current2;
232
+ return (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.focus();
233
+ },
234
+ blur: function blur() {
235
+ var _inputRef$current3;
236
+ return (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.blur();
237
+ },
238
+ showClear: showClear,
239
+ hideClear: hideClear
240
+ };
241
+ });
242
+
243
+ /** 输入框头部内容 */
244
+ var preffixSlot = useMemo(function () {
245
+ if (['text', 'password'].includes(type) && prefix) {
246
+ if (isObject(prefix)) {
247
+ var _nodeType2;
248
+ var nodeType = prefix === null || prefix === void 0 ? void 0 : prefix.type;
249
+ nodeType = ((_nodeType2 = nodeType) === null || _nodeType2 === void 0 ? void 0 : _nodeType2.displayName) || nodeType;
250
+ if (nodeType.toString().startsWith('Icon')) {
251
+ var _prefix$props;
252
+ return /*#__PURE__*/cloneElement(prefix, _objectSpread(_objectSpread({}, prefix.props), {}, {
253
+ className: classNames((_prefix$props = prefix.props) === null || _prefix$props === void 0 ? void 0 : _prefix$props.className, e(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["icon"]))))
254
+ }));
238
255
  }
239
256
  }
240
257
  return prefix;
241
258
  }
242
259
  return null;
243
260
  }, [type, prefix, e]);
244
- const content = (0, import_react.useMemo)(() => {
245
- return type === "hidden" ? /* @__PURE__ */ import_react.default.createElement(
246
- "input",
247
- {
248
- ref: inputRef,
249
- type: "hidden",
250
- name,
251
- value,
252
- disabled,
253
- onChange: debounceInput ? handleDebounceInput : handleInput,
254
- onClick: props.onClick,
255
- className: props.className,
256
- style: props.innerStyle,
257
- ...htmlInputProps
261
+ var content = useMemo(function () {
262
+ return type === 'hidden' ? /*#__PURE__*/React.createElement("input", _extends({
263
+ ref: inputRef,
264
+ type: "hidden",
265
+ name: name,
266
+ value: value,
267
+ disabled: disabled,
268
+ onChange: debounceInput ? handleDebounceInput : handleInput,
269
+ onClick: props.onClick,
270
+ className: props.className,
271
+ style: props.innerStyle
272
+ }, htmlInputProps)) : /*#__PURE__*/React.createElement("div", {
273
+ className: classNames(e(_templateObject7 || (_templateObject7 = _taggedTemplateLiteral(["wrapper"]))), is({
274
+ error: error,
275
+ warning: warning
276
+ })),
277
+ ref: contentRef,
278
+ onMouseEnter: function onMouseEnter() {
279
+ return showClear(value);
280
+ },
281
+ onMouseLeave: function onMouseLeave() {
282
+ if (!hasClass(contentRef.current, is('focus'))) {
283
+ hideClear();
284
+ }
258
285
  }
259
- ) : /* @__PURE__ */ import_react.default.createElement(
260
- "div",
261
- {
262
- className: (0, import_classnames.default)(e`wrapper`, is({ error, warning })),
263
- ref: contentRef,
264
- onMouseEnter: () => showClear(value),
265
- onMouseLeave: () => {
266
- if (!(0, import_dom_lib.hasClass)(contentRef.current, is("focus"))) {
267
- hideClear();
268
- }
286
+ }, ['text', 'password'].includes(type) && preffixSlot && /*#__PURE__*/React.createElement("span", {
287
+ className: e(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["prefix"])))
288
+ }, /*#__PURE__*/React.createElement("span", {
289
+ className: e(_templateObject9 || (_templateObject9 = _taggedTemplateLiteral(["prefix-inner"])))
290
+ }, preffixSlot, " ")), /*#__PURE__*/React.createElement("input", _extends({
291
+ ref: inputRef,
292
+ type: type,
293
+ name: name,
294
+ title: title,
295
+ value: hiddenValue ? '' : value,
296
+ className: e(_templateObject10 || (_templateObject10 = _taggedTemplateLiteral(["inner"]))),
297
+ style: props.innerStyle,
298
+ placeholder: placeholder,
299
+ autoComplete: "off",
300
+ readOnly: readOnly,
301
+ disabled: disabled,
302
+ maxLength: maxLength,
303
+ onInput: handleInput,
304
+ onClick: props.onClick,
305
+ onFocus: function onFocus(event) {
306
+ if (contentRef.current) {
307
+ addClass(contentRef.current, is('focus'));
269
308
  }
309
+ showClear(value);
310
+ _onFocus === null || _onFocus === void 0 || _onFocus.call(_this, event);
270
311
  },
271
- ["text", "password"].includes(type) && preffixSlot && /* @__PURE__ */ import_react.default.createElement("span", { className: e`prefix` }, /* @__PURE__ */ import_react.default.createElement("span", { className: e`prefix-inner` }, preffixSlot, " ")),
272
- /* @__PURE__ */ import_react.default.createElement(
273
- "input",
274
- {
275
- ref: inputRef,
276
- type,
277
- name,
278
- title,
279
- value: hiddenValue ? "" : value,
280
- className: e`inner`,
281
- style: props.innerStyle,
282
- placeholder,
283
- autoComplete: "off",
284
- readOnly,
285
- disabled,
286
- maxLength,
287
- onInput: handleInput,
288
- onClick: props.onClick,
289
- onFocus: (event) => {
290
- if (contentRef.current) {
291
- (0, import_dom_lib.addClass)(contentRef.current, is("focus"));
292
- }
293
- showClear(value);
294
- onFocus == null ? void 0 : onFocus.call(this, event);
295
- },
296
- onBlur: (event) => {
297
- if (contentRef.current) {
298
- (0, import_dom_lib.removeClass)(contentRef.current, is("focus"));
299
- }
300
- hideClear();
301
- onBlur == null ? void 0 : onBlur.call(this, event);
302
- },
303
- ...htmlInputProps
304
- }
305
- ),
306
- /* @__PURE__ */ import_react.default.createElement("span", { ref: clearRef, key: "clearIcon", className: e`suffix`, style: { display: "none" } }, /* @__PURE__ */ import_react.default.createElement("span", { className: e`suffix-inner` }, /* @__PURE__ */ import_react.default.createElement(
307
- import_Icon.Icon,
308
- {
309
- prefix: "fal",
310
- name: "circle-xmark",
311
- className: (0, import_classnames.default)(e`icon`, e`clear`),
312
- onClick: handelClear,
313
- onMouseDown: (event) => {
314
- event.preventDefault();
315
- event.stopPropagation();
316
- }
312
+ onBlur: function onBlur(event) {
313
+ if (contentRef.current) {
314
+ removeClass(contentRef.current, is('focus'));
317
315
  }
318
- ))),
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))
320
- );
321
- }, [
322
- type,
323
- name,
324
- value,
325
- disabled,
326
- debounceInput,
327
- handleDebounceInput,
328
- handleInput,
329
- props.onClick,
330
- props.className,
331
- props.innerStyle,
332
- htmlInputProps,
333
- e,
334
- is,
335
- error,
336
- warning,
337
- preffixSlot,
338
- title,
339
- hiddenValue,
340
- placeholder,
341
- readOnly,
342
- maxLength,
343
- handelClear,
344
- suffixSlot,
345
- b,
346
- suffixCanClick,
347
- onClickSuffix,
348
- showClear,
349
- hideClear,
350
- onFocus,
351
- onBlur
352
- ]);
353
- if (append || prepend) {
354
- return /* @__PURE__ */ import_react.default.createElement(
355
- import_InputGroup.default,
356
- {
357
- prepend,
358
- append,
359
- ref: containerRef,
360
- className: (0, import_classnames.default)(
361
- {
362
- [m(size)]: size
363
- },
364
- is({ disabled, plain }),
365
- b(),
366
- props.className
367
- ),
368
- style: props.style
316
+ hideClear();
317
+ _onBlur === null || _onBlur === void 0 || _onBlur.call(_this, event);
318
+ }
319
+ }, htmlInputProps)), /*#__PURE__*/React.createElement("span", {
320
+ ref: clearRef,
321
+ key: "clearIcon",
322
+ className: e(_templateObject11 || (_templateObject11 = _taggedTemplateLiteral(["suffix"]))),
323
+ style: {
324
+ display: 'none'
369
325
  },
370
- content
371
- );
326
+ onClick: handelClear
327
+ }, /*#__PURE__*/React.createElement("span", {
328
+ className: e(_templateObject12 || (_templateObject12 = _taggedTemplateLiteral(["suffix-inner"])))
329
+ }, /*#__PURE__*/React.createElement(Icon, {
330
+ prefix: "fal",
331
+ name: "circle-xmark",
332
+ className: classNames(e(_templateObject13 || (_templateObject13 = _taggedTemplateLiteral(["icon"]))), e(_templateObject14 || (_templateObject14 = _taggedTemplateLiteral(["clear"])))),
333
+ onMouseDown: function onMouseDown(event) {
334
+ event.preventDefault();
335
+ event.stopPropagation();
336
+ }
337
+ }))), suffixSlot && /*#__PURE__*/React.createElement("span", {
338
+ ref: suffixRef,
339
+ key: "suffixSlot",
340
+ className: classNames(e(_templateObject15 || (_templateObject15 = _taggedTemplateLiteral(["suffix"]))), _defineProperty({}, b('click', false), suffixCanClick)),
341
+ onClick: onClickSuffix
342
+ }, /*#__PURE__*/React.createElement("span", {
343
+ className: e(_templateObject16 || (_templateObject16 = _taggedTemplateLiteral(["suffix-inner"])))
344
+ }, suffixSlot)));
345
+ }, [type, name, value, disabled, debounceInput, handleDebounceInput, handleInput, props.onClick, props.className, props.innerStyle, htmlInputProps, e, is, error, warning, preffixSlot, title, hiddenValue, placeholder, readOnly, maxLength, handelClear, suffixSlot, b, suffixCanClick, onClickSuffix, showClear, hideClear, _onFocus, _onBlur]);
346
+ if (append || prepend) {
347
+ return /*#__PURE__*/React.createElement(InputGroup, {
348
+ prepend: prepend,
349
+ append: append,
350
+ ref: containerRef,
351
+ className: classNames(_defineProperty({}, m(size), size), is({
352
+ disabled: disabled,
353
+ plain: plain
354
+ }), b(), props.className),
355
+ style: props.style
356
+ }, content);
372
357
  } else {
373
- return /* @__PURE__ */ import_react.default.createElement(
374
- "div",
375
- {
376
- ref: containerRef,
377
- className: (0, import_classnames.default)(
378
- b(),
379
- {
380
- [m`prefix`]: preffixSlot,
381
- [m`suffix`]: suffixSlot || clearable,
382
- [m(size)]: size
383
- },
384
- is({ disabled, plain }),
385
- props.className
386
- ),
387
- style: append || prepend ? {} : props.style,
388
- onClick: (event) => event.stopPropagation()
389
- },
390
- content
391
- );
358
+ return /*#__PURE__*/React.createElement("div", {
359
+ ref: containerRef,
360
+ className: classNames(b(), _defineProperty(_defineProperty(_defineProperty({}, m(_templateObject17 || (_templateObject17 = _taggedTemplateLiteral(["prefix"]))), preffixSlot), m(_templateObject18 || (_templateObject18 = _taggedTemplateLiteral(["suffix"]))), suffixSlot || clearable), m(size), size), is({
361
+ disabled: disabled,
362
+ plain: plain
363
+ }), props.className),
364
+ style: append || prepend ? {} : props.style,
365
+ onClick: function onClick(event) {
366
+ return event.stopPropagation();
367
+ }
368
+ }, content);
392
369
  }
393
370
  }
394
- var ForwardInput = (0, import_react.forwardRef)(InternalInput);
371
+ var ForwardInput = /*#__PURE__*/forwardRef(InternalInput);
395
372
  var Input = ForwardInput;
396
- Input.TextArea = import_TextArea.default;
397
- Input.Range = import_InputRange.default;
398
- Input.displayName = "ElInput";
399
- var Input_default = Input;
373
+ Input.TextArea = TextArea;
374
+ Input.Range = InputRange;
375
+ Input.displayName = 'ElInput';
376
+ export default Input;