@arco-design/mobile-react 2.24.2 → 2.25.1

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 (823) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/README.en-US.md +2 -2
  3. package/README.md +2 -2
  4. package/cjs/_helpers/hooks.js +42 -120
  5. package/cjs/_helpers/index.js +2 -13
  6. package/cjs/_helpers/react-dom.js +0 -12
  7. package/cjs/_helpers/render.js +0 -12
  8. package/cjs/action-sheet/index.js +10 -30
  9. package/cjs/action-sheet/methods.js +0 -2
  10. package/cjs/action-sheet/style/css/index.css +1 -1
  11. package/cjs/action-sheet/style/css/index.js +0 -2
  12. package/cjs/action-sheet/style/index.js +0 -2
  13. package/cjs/avatar/group.js +12 -24
  14. package/cjs/avatar/index.js +51 -77
  15. package/cjs/avatar/style/css/index.js +0 -2
  16. package/cjs/avatar/style/index.js +0 -2
  17. package/cjs/badge/index.js +18 -29
  18. package/cjs/badge/style/css/index.css +3 -2
  19. package/cjs/badge/style/css/index.js +0 -1
  20. package/cjs/badge/style/index.js +0 -1
  21. package/cjs/button/hooks.js +15 -20
  22. package/cjs/button/index.js +46 -67
  23. package/cjs/button/style/css/index.js +0 -2
  24. package/cjs/button/style/index.js +0 -2
  25. package/cjs/carousel/demo/style/css/mobile.css +12 -0
  26. package/cjs/carousel/demo/style/mobile.less +8 -0
  27. package/cjs/carousel/index.d.ts +1 -1
  28. package/cjs/carousel/index.js +159 -275
  29. package/cjs/carousel/style/css/index.js +0 -1
  30. package/cjs/carousel/style/index.js +0 -1
  31. package/cjs/cell/arrow.js +0 -3
  32. package/cjs/cell/cell.js +14 -23
  33. package/cjs/cell/group.js +9 -21
  34. package/cjs/cell/index.js +1 -7
  35. package/cjs/cell/style/css/index.js +0 -1
  36. package/cjs/cell/style/index.js +0 -1
  37. package/cjs/checkbox/checkbox.js +31 -57
  38. package/cjs/checkbox/group.js +24 -38
  39. package/cjs/checkbox/hooks/index.js +0 -2
  40. package/cjs/checkbox/hooks/useMergeProps.js +7 -14
  41. package/cjs/checkbox/index.d.ts +6 -1
  42. package/cjs/checkbox/index.js +6 -11
  43. package/cjs/checkbox/style/css/index.js +0 -1
  44. package/cjs/checkbox/style/index.js +0 -1
  45. package/cjs/checkbox/type.js +0 -2
  46. package/cjs/circle-progress/index.js +37 -57
  47. package/cjs/circle-progress/style/css/index.js +0 -1
  48. package/cjs/circle-progress/style/index.js +0 -1
  49. package/cjs/collapse/collapse.js +27 -56
  50. package/cjs/collapse/group.js +20 -44
  51. package/cjs/collapse/index.js +0 -9
  52. package/cjs/collapse/style/css/index.js +0 -1
  53. package/cjs/collapse/style/index.js +0 -1
  54. package/cjs/collapse/utils.js +0 -7
  55. package/cjs/context-provider/index.js +10 -28
  56. package/cjs/context-provider/style/css/index.js +0 -1
  57. package/cjs/context-provider/style/index.js +0 -1
  58. package/cjs/count-down/hooks.js +24 -43
  59. package/cjs/count-down/index.js +29 -37
  60. package/cjs/count-down/singleton.js +2 -12
  61. package/cjs/count-down/style/css/index.js +0 -1
  62. package/cjs/count-down/style/index.js +0 -1
  63. package/cjs/count-down/util.js +33 -47
  64. package/cjs/date-picker/helper.js +7 -14
  65. package/cjs/date-picker/index.d.ts +5 -2
  66. package/cjs/date-picker/index.js +52 -114
  67. package/cjs/date-picker/style/css/index.js +0 -2
  68. package/cjs/date-picker/style/index.js +0 -2
  69. package/cjs/dialog/index.js +28 -54
  70. package/cjs/dialog/methods.js +9 -22
  71. package/cjs/dialog/style/css/index.css +2 -1
  72. package/cjs/dialog/style/css/index.js +0 -2
  73. package/cjs/dialog/style/index.js +0 -2
  74. package/cjs/dropdown/dropdown.js +74 -113
  75. package/cjs/dropdown/index.js +1 -8
  76. package/cjs/dropdown/options.js +12 -28
  77. package/cjs/dropdown/style/css/index.js +0 -1
  78. package/cjs/dropdown/style/index.js +0 -1
  79. package/cjs/dropdown-menu/dropdown-menu.js +49 -84
  80. package/cjs/dropdown-menu/helper.js +6 -27
  81. package/cjs/dropdown-menu/index.js +0 -6
  82. package/cjs/dropdown-menu/style/css/index.js +0 -2
  83. package/cjs/dropdown-menu/style/index.js +0 -2
  84. package/cjs/ellipsis/components/js-ellipsis.js +33 -72
  85. package/cjs/ellipsis/components/native-ellipsis.js +9 -15
  86. package/cjs/ellipsis/index.js +19 -32
  87. package/cjs/ellipsis/style/css/index.js +0 -1
  88. package/cjs/ellipsis/style/index.js +0 -1
  89. package/cjs/ellipsis/utils/dom.js +0 -8
  90. package/cjs/ellipsis/utils/is.js +1 -5
  91. package/cjs/form/form-item-context.d.ts +3 -0
  92. package/cjs/form/form-item-context.js +12 -0
  93. package/cjs/form/form-item.d.ts +4 -0
  94. package/cjs/form/form-item.js +313 -0
  95. package/cjs/form/index.d.ts +16 -0
  96. package/cjs/form/index.js +96 -0
  97. package/cjs/form/style/css/index.css +92 -0
  98. package/cjs/form/style/css/index.d.ts +2 -0
  99. package/cjs/form/style/css/index.js +4 -0
  100. package/cjs/form/style/index.d.ts +2 -0
  101. package/cjs/form/style/index.js +4 -0
  102. package/cjs/form/style/index.less +91 -0
  103. package/cjs/form/type.d.ts +371 -0
  104. package/cjs/form/type.js +30 -0
  105. package/cjs/form/useForm.d.ts +18 -0
  106. package/cjs/form/useForm.js +225 -0
  107. package/cjs/form/utils.d.ts +6 -0
  108. package/cjs/form/utils.js +36 -0
  109. package/cjs/grid/index.js +21 -41
  110. package/cjs/grid/style/css/index.js +0 -1
  111. package/cjs/grid/style/index.js +0 -1
  112. package/cjs/icon/IconAdd/index.js +5 -12
  113. package/cjs/icon/IconArrowBack/index.js +5 -12
  114. package/cjs/icon/IconArrowDown/index.js +5 -12
  115. package/cjs/icon/IconArrowIn/index.js +5 -12
  116. package/cjs/icon/IconArrowUp/index.js +5 -12
  117. package/cjs/icon/IconCheck/index.js +5 -12
  118. package/cjs/icon/IconCheckBold/index.js +5 -12
  119. package/cjs/icon/IconCircleChecked/index.js +5 -12
  120. package/cjs/icon/IconCircleDisabled/index.js +5 -12
  121. package/cjs/icon/IconCircleUnchecked/index.js +5 -12
  122. package/cjs/icon/IconClear/index.js +5 -12
  123. package/cjs/icon/IconClose/index.js +5 -12
  124. package/cjs/icon/IconCloseBold/index.js +5 -12
  125. package/cjs/icon/IconDelete/index.js +5 -12
  126. package/cjs/icon/IconEdit/index.js +5 -12
  127. package/cjs/icon/IconErrorCircle/index.js +5 -12
  128. package/cjs/icon/IconEyeInvisible/index.js +5 -12
  129. package/cjs/icon/IconEyeVisible/index.js +5 -12
  130. package/cjs/icon/IconEyelashInvisible/index.js +5 -12
  131. package/cjs/icon/IconGift/index.js +5 -12
  132. package/cjs/icon/IconHeart/index.js +5 -12
  133. package/cjs/icon/IconHome/index.js +5 -12
  134. package/cjs/icon/IconLikeCircle/index.js +5 -12
  135. package/cjs/icon/IconMinus/index.js +5 -12
  136. package/cjs/icon/IconMore/index.js +5 -12
  137. package/cjs/icon/IconNotice/index.js +5 -12
  138. package/cjs/icon/IconNoticeOff/index.js +5 -12
  139. package/cjs/icon/IconPicture/index.js +5 -12
  140. package/cjs/icon/IconPlay/index.js +5 -12
  141. package/cjs/icon/IconQuestionCircle/index.js +5 -12
  142. package/cjs/icon/IconRefresh/index.js +5 -12
  143. package/cjs/icon/IconSad/index.js +5 -12
  144. package/cjs/icon/IconScan/index.js +5 -12
  145. package/cjs/icon/IconSearch/index.js +5 -12
  146. package/cjs/icon/IconSetting/index.js +5 -12
  147. package/cjs/icon/IconShop/index.js +5 -12
  148. package/cjs/icon/IconShopping/index.js +5 -12
  149. package/cjs/icon/IconSmileFill/index.js +5 -12
  150. package/cjs/icon/IconSound/index.js +5 -12
  151. package/cjs/icon/IconSquareChecked/index.js +5 -12
  152. package/cjs/icon/IconSquareDisabled/index.js +5 -12
  153. package/cjs/icon/IconSquareUnchecked/index.js +5 -12
  154. package/cjs/icon/IconStar/index.js +5 -12
  155. package/cjs/icon/IconStarFill/index.js +5 -12
  156. package/cjs/icon/IconStarHalf/index.js +5 -12
  157. package/cjs/icon/IconSubway/index.js +5 -12
  158. package/cjs/icon/IconSuccessCircle/index.js +5 -12
  159. package/cjs/icon/IconTriDown/index.js +5 -12
  160. package/cjs/icon/IconTriUp/index.js +5 -12
  161. package/cjs/icon/IconUpload/index.js +5 -12
  162. package/cjs/icon/IconUser/index.js +5 -12
  163. package/cjs/icon/IconUserFill/index.js +5 -12
  164. package/cjs/icon/IconWarnCircle/index.js +5 -12
  165. package/cjs/icon/IconWarnCircleFill/index.js +5 -12
  166. package/cjs/icon/index.js +0 -111
  167. package/cjs/image/index.js +53 -92
  168. package/cjs/image/style/css/index.js +0 -2
  169. package/cjs/image/style/index.js +0 -2
  170. package/cjs/image-picker/add-icon.js +0 -3
  171. package/cjs/image-picker/index.d.ts +5 -2
  172. package/cjs/image-picker/index.js +62 -103
  173. package/cjs/image-picker/style/css/index.js +0 -2
  174. package/cjs/image-picker/style/index.js +0 -2
  175. package/cjs/image-preview/demo/style/css/mobile.css +10 -0
  176. package/cjs/image-preview/demo/style/mobile.less +11 -0
  177. package/cjs/image-preview/index.d.ts +5 -0
  178. package/cjs/image-preview/index.js +124 -239
  179. package/cjs/image-preview/methods.js +5 -18
  180. package/cjs/image-preview/style/css/index.css +1 -0
  181. package/cjs/image-preview/style/css/index.js +0 -4
  182. package/cjs/image-preview/style/index.js +0 -4
  183. package/cjs/image-preview/style/index.less +1 -1
  184. package/cjs/index.d.ts +7 -6
  185. package/cjs/index.js +15 -120
  186. package/cjs/input/hooks.js +42 -75
  187. package/cjs/input/index.d.ts +5 -2
  188. package/cjs/input/index.js +36 -47
  189. package/cjs/input/style/css/index.css +1 -1
  190. package/cjs/input/style/css/index.js +0 -1
  191. package/cjs/input/style/index.js +0 -1
  192. package/cjs/load-more/index.js +29 -56
  193. package/cjs/load-more/style/css/index.js +0 -1
  194. package/cjs/load-more/style/index.js +0 -1
  195. package/cjs/loading/index.js +19 -48
  196. package/cjs/loading/style/css/index.js +0 -1
  197. package/cjs/loading/style/index.js +0 -1
  198. package/cjs/masking/index.js +46 -79
  199. package/cjs/masking/methods.js +4 -19
  200. package/cjs/masking/style/css/index.js +0 -2
  201. package/cjs/masking/style/index.js +0 -2
  202. package/cjs/nav-bar/back-icon.js +1 -5
  203. package/cjs/nav-bar/index.js +36 -60
  204. package/cjs/nav-bar/style/css/index.js +0 -1
  205. package/cjs/nav-bar/style/index.js +0 -1
  206. package/cjs/notice-bar/index.js +31 -54
  207. package/cjs/notice-bar/style/css/index.js +0 -1
  208. package/cjs/notice-bar/style/index.js +0 -1
  209. package/cjs/notify/index.d.ts +8 -8
  210. package/cjs/notify/index.js +20 -49
  211. package/cjs/notify/methods.js +2 -17
  212. package/cjs/notify/style/css/index.css +2 -2
  213. package/cjs/notify/style/css/index.js +0 -1
  214. package/cjs/notify/style/index.js +0 -1
  215. package/cjs/pagination/arrow.js +0 -3
  216. package/cjs/pagination/index.js +27 -58
  217. package/cjs/pagination/style/css/index.js +0 -1
  218. package/cjs/pagination/style/index.js +0 -1
  219. package/cjs/picker/index.d.ts +5 -2
  220. package/cjs/picker/index.js +50 -89
  221. package/cjs/picker/style/css/index.js +0 -3
  222. package/cjs/picker/style/index.js +0 -3
  223. package/cjs/picker-view/components/cascader.js +14 -31
  224. package/cjs/picker-view/components/multi-picker.js +6 -20
  225. package/cjs/picker-view/components/picker-cell.js +45 -97
  226. package/cjs/picker-view/index.d.ts +5 -2
  227. package/cjs/picker-view/index.js +36 -77
  228. package/cjs/picker-view/style/css/index.js +0 -1
  229. package/cjs/picker-view/style/index.js +0 -1
  230. package/cjs/popover/hooks/index.js +0 -4
  231. package/cjs/popover/hooks/useEvent.js +25 -49
  232. package/cjs/popover/hooks/usePosition.js +94 -151
  233. package/cjs/popover/index.js +1 -8
  234. package/cjs/popover/menu.js +32 -51
  235. package/cjs/popover/popover-inner.js +30 -47
  236. package/cjs/popover/popover.js +69 -101
  237. package/cjs/popover/style/css/index.js +0 -2
  238. package/cjs/popover/style/index.js +0 -2
  239. package/cjs/popup/index.js +22 -39
  240. package/cjs/popup/methods.js +0 -2
  241. package/cjs/popup/style/css/index.js +0 -2
  242. package/cjs/popup/style/index.js +0 -2
  243. package/cjs/popup-swiper/index.js +38 -80
  244. package/cjs/popup-swiper/methods.js +0 -2
  245. package/cjs/popup-swiper/style/css/index.js +0 -2
  246. package/cjs/popup-swiper/style/index.js +0 -2
  247. package/cjs/portal/index.js +3 -8
  248. package/cjs/portal/style/css/index.js +0 -1
  249. package/cjs/portal/style/index.js +0 -1
  250. package/cjs/progress/index.js +27 -44
  251. package/cjs/progress/style/css/index.js +0 -1
  252. package/cjs/progress/style/index.js +0 -1
  253. package/cjs/pull-refresh/android-pull-refresh.js +58 -100
  254. package/cjs/pull-refresh/hooks.js +11 -32
  255. package/cjs/pull-refresh/index.d.ts +9 -3
  256. package/cjs/pull-refresh/index.js +5 -15
  257. package/cjs/pull-refresh/ios-pull-refresh.js +53 -80
  258. package/cjs/pull-refresh/model.js +0 -1
  259. package/cjs/pull-refresh/style/css/index.js +0 -2
  260. package/cjs/pull-refresh/style/index.js +0 -2
  261. package/cjs/radio/group.js +20 -34
  262. package/cjs/radio/index.d.ts +6 -1
  263. package/cjs/radio/index.js +5 -10
  264. package/cjs/radio/radio.js +0 -10
  265. package/cjs/radio/style/css/index.js +0 -1
  266. package/cjs/radio/style/index.js +0 -1
  267. package/cjs/rate/index.d.ts +5 -2
  268. package/cjs/rate/index.js +34 -57
  269. package/cjs/rate/style/css/index.js +0 -1
  270. package/cjs/rate/style/index.js +0 -1
  271. package/cjs/search-bar/association.js +14 -32
  272. package/cjs/search-bar/cancel-button.js +8 -16
  273. package/cjs/search-bar/highlight.js +14 -25
  274. package/cjs/search-bar/index.js +77 -97
  275. package/cjs/search-bar/style/css/index.js +0 -1
  276. package/cjs/search-bar/style/index.js +0 -1
  277. package/cjs/show-monitor/index.js +34 -93
  278. package/cjs/show-monitor/style/css/index.js +0 -1
  279. package/cjs/show-monitor/style/index.js +0 -1
  280. package/cjs/slider/hooks/index.js +0 -13
  281. package/cjs/slider/hooks/useSliderEvents.js +26 -55
  282. package/cjs/slider/hooks/useSliderIcon.js +6 -20
  283. package/cjs/slider/hooks/useSliderInit.js +32 -52
  284. package/cjs/slider/hooks/useSliderStyle.js +12 -24
  285. package/cjs/slider/index.d.ts +5 -2
  286. package/cjs/slider/index.js +56 -80
  287. package/cjs/slider/marks.js +12 -26
  288. package/cjs/slider/popover.js +4 -13
  289. package/cjs/slider/style/css/index.js +0 -2
  290. package/cjs/slider/style/index.js +0 -2
  291. package/cjs/slider/thumb.js +8 -23
  292. package/cjs/stepper/hooks/useButtonClick.js +19 -28
  293. package/cjs/stepper/hooks/useInputEvent.js +9 -18
  294. package/cjs/stepper/hooks/useValue.js +9 -14
  295. package/cjs/stepper/index.d.ts +5 -2
  296. package/cjs/stepper/index.js +92 -103
  297. package/cjs/stepper/style/css/index.js +0 -1
  298. package/cjs/stepper/style/index.js +0 -1
  299. package/cjs/steps/index.js +22 -40
  300. package/cjs/steps/step.js +10 -27
  301. package/cjs/steps/style/css/index.css +2 -2
  302. package/cjs/steps/style/css/index.js +0 -1
  303. package/cjs/steps/style/index.js +0 -1
  304. package/cjs/sticky/index.js +37 -66
  305. package/cjs/sticky/style/css/index.js +0 -1
  306. package/cjs/sticky/style/index.js +0 -1
  307. package/cjs/style.d.ts +7 -6
  308. package/cjs/style.js +7 -59
  309. package/cjs/swipe-action/index.js +40 -92
  310. package/cjs/swipe-action/item.js +9 -17
  311. package/cjs/swipe-action/style/css/index.js +0 -1
  312. package/cjs/swipe-action/style/index.js +0 -1
  313. package/cjs/swipe-load/index.js +55 -83
  314. package/cjs/swipe-load/style/css/index.js +0 -1
  315. package/cjs/swipe-load/style/index.js +0 -1
  316. package/cjs/switch/index.d.ts +5 -2
  317. package/cjs/switch/index.js +37 -54
  318. package/cjs/switch/style/css/index.js +0 -1
  319. package/cjs/switch/style/index.js +0 -1
  320. package/cjs/tab-bar/index.js +0 -7
  321. package/cjs/tab-bar/item.js +6 -24
  322. package/cjs/tab-bar/style/css/index.js +0 -1
  323. package/cjs/tab-bar/style/index.js +0 -1
  324. package/cjs/tab-bar/tab-bar.js +15 -31
  325. package/cjs/tabs/index.js +129 -192
  326. package/cjs/tabs/style/css/index.js +0 -1
  327. package/cjs/tabs/style/index.js +0 -1
  328. package/cjs/tabs/tab-cell-underline.js +25 -64
  329. package/cjs/tabs/tab-cell.js +66 -108
  330. package/cjs/tabs/tab-pane.js +49 -94
  331. package/cjs/tag/index.js +1 -8
  332. package/cjs/tag/list.js +11 -26
  333. package/cjs/tag/style/css/index.js +0 -1
  334. package/cjs/tag/style/index.js +0 -1
  335. package/cjs/tag/tag.js +20 -32
  336. package/cjs/textarea/index.d.ts +5 -2
  337. package/cjs/textarea/index.js +45 -63
  338. package/cjs/textarea/style/css/index.css +1 -1
  339. package/cjs/textarea/style/css/index.js +0 -2
  340. package/cjs/textarea/style/index.js +0 -2
  341. package/cjs/toast/index.d.ts +12 -12
  342. package/cjs/toast/index.js +26 -61
  343. package/cjs/toast/methods.js +2 -16
  344. package/cjs/toast/style/css/index.js +0 -3
  345. package/cjs/toast/style/index.js +0 -3
  346. package/cjs/transition/index.js +10 -18
  347. package/cjs/transition/style/css/index.js +0 -1
  348. package/cjs/transition/style/index.js +0 -1
  349. package/dist/index.js +21030 -20541
  350. package/dist/index.min.js +12 -3
  351. package/dist/style.css +823 -741
  352. package/dist/style.min.css +1 -1
  353. package/esm/_helpers/hooks.js +41 -99
  354. package/esm/_helpers/index.js +2 -3
  355. package/esm/_helpers/react-dom.js +0 -10
  356. package/esm/_helpers/render.js +0 -7
  357. package/esm/action-sheet/index.js +10 -16
  358. package/esm/action-sheet/style/css/index.css +1 -1
  359. package/esm/avatar/group.js +12 -16
  360. package/esm/avatar/index.js +51 -62
  361. package/esm/badge/index.js +18 -22
  362. package/esm/badge/style/css/index.css +3 -2
  363. package/esm/button/hooks.js +15 -18
  364. package/esm/button/index.js +46 -57
  365. package/esm/carousel/demo/style/css/mobile.css +12 -0
  366. package/esm/carousel/demo/style/mobile.less +8 -0
  367. package/esm/carousel/index.d.ts +1 -1
  368. package/esm/carousel/index.js +159 -267
  369. package/esm/cell/cell.js +14 -14
  370. package/esm/cell/group.js +9 -11
  371. package/esm/cell/index.js +1 -1
  372. package/esm/checkbox/checkbox.js +31 -42
  373. package/esm/checkbox/group.js +24 -28
  374. package/esm/checkbox/hooks/useMergeProps.js +7 -9
  375. package/esm/checkbox/index.d.ts +6 -1
  376. package/esm/checkbox/index.js +6 -4
  377. package/esm/checkbox/type.js +0 -1
  378. package/esm/circle-progress/index.js +37 -49
  379. package/esm/collapse/collapse.js +27 -46
  380. package/esm/collapse/group.js +20 -34
  381. package/esm/collapse/index.js +1 -1
  382. package/esm/collapse/utils.js +0 -1
  383. package/esm/context-provider/index.js +10 -18
  384. package/esm/count-down/hooks.js +24 -37
  385. package/esm/count-down/index.js +30 -29
  386. package/esm/count-down/singleton.js +2 -5
  387. package/esm/count-down/util.js +33 -42
  388. package/esm/date-picker/helper.js +7 -9
  389. package/esm/date-picker/index.d.ts +5 -2
  390. package/esm/date-picker/index.js +53 -103
  391. package/esm/dialog/index.js +28 -39
  392. package/esm/dialog/methods.js +9 -11
  393. package/esm/dialog/style/css/index.css +2 -1
  394. package/esm/dropdown/dropdown.js +74 -102
  395. package/esm/dropdown/index.js +1 -1
  396. package/esm/dropdown/options.js +12 -20
  397. package/esm/dropdown-menu/dropdown-menu.js +49 -74
  398. package/esm/dropdown-menu/helper.js +6 -16
  399. package/esm/dropdown-menu/index.js +1 -1
  400. package/esm/ellipsis/components/js-ellipsis.js +33 -63
  401. package/esm/ellipsis/components/native-ellipsis.js +9 -11
  402. package/esm/ellipsis/index.js +20 -21
  403. package/esm/ellipsis/utils/dom.js +0 -7
  404. package/esm/ellipsis/utils/is.js +1 -1
  405. package/esm/form/form-item-context.d.ts +3 -0
  406. package/esm/form/form-item-context.js +6 -0
  407. package/esm/form/form-item.d.ts +4 -0
  408. package/esm/form/form-item.js +306 -0
  409. package/esm/form/index.d.ts +16 -0
  410. package/esm/form/index.js +79 -0
  411. package/esm/form/style/css/index.css +92 -0
  412. package/esm/form/style/css/index.d.ts +2 -0
  413. package/esm/form/style/css/index.js +2 -0
  414. package/esm/form/style/index.d.ts +2 -0
  415. package/esm/form/style/index.js +2 -0
  416. package/esm/form/style/index.less +91 -0
  417. package/esm/form/type.d.ts +371 -0
  418. package/esm/form/type.js +24 -0
  419. package/esm/form/useForm.d.ts +18 -0
  420. package/esm/form/useForm.js +217 -0
  421. package/esm/form/utils.d.ts +6 -0
  422. package/esm/form/utils.js +30 -0
  423. package/esm/grid/index.js +21 -34
  424. package/esm/icon/IconAdd/index.js +5 -6
  425. package/esm/icon/IconArrowBack/index.js +5 -6
  426. package/esm/icon/IconArrowDown/index.js +5 -6
  427. package/esm/icon/IconArrowIn/index.js +5 -6
  428. package/esm/icon/IconArrowUp/index.js +5 -6
  429. package/esm/icon/IconCheck/index.js +5 -6
  430. package/esm/icon/IconCheckBold/index.js +5 -6
  431. package/esm/icon/IconCircleChecked/index.js +5 -6
  432. package/esm/icon/IconCircleDisabled/index.js +5 -6
  433. package/esm/icon/IconCircleUnchecked/index.js +5 -6
  434. package/esm/icon/IconClear/index.js +5 -6
  435. package/esm/icon/IconClose/index.js +5 -6
  436. package/esm/icon/IconCloseBold/index.js +5 -6
  437. package/esm/icon/IconDelete/index.js +5 -6
  438. package/esm/icon/IconEdit/index.js +5 -6
  439. package/esm/icon/IconErrorCircle/index.js +5 -6
  440. package/esm/icon/IconEyeInvisible/index.js +5 -6
  441. package/esm/icon/IconEyeVisible/index.js +5 -6
  442. package/esm/icon/IconEyelashInvisible/index.js +5 -6
  443. package/esm/icon/IconGift/index.js +5 -6
  444. package/esm/icon/IconHeart/index.js +5 -6
  445. package/esm/icon/IconHome/index.js +5 -6
  446. package/esm/icon/IconLikeCircle/index.js +5 -6
  447. package/esm/icon/IconMinus/index.js +5 -6
  448. package/esm/icon/IconMore/index.js +5 -6
  449. package/esm/icon/IconNotice/index.js +5 -6
  450. package/esm/icon/IconNoticeOff/index.js +5 -6
  451. package/esm/icon/IconPicture/index.js +5 -6
  452. package/esm/icon/IconPlay/index.js +5 -6
  453. package/esm/icon/IconQuestionCircle/index.js +5 -6
  454. package/esm/icon/IconRefresh/index.js +5 -6
  455. package/esm/icon/IconSad/index.js +5 -6
  456. package/esm/icon/IconScan/index.js +5 -6
  457. package/esm/icon/IconSearch/index.js +5 -6
  458. package/esm/icon/IconSetting/index.js +5 -6
  459. package/esm/icon/IconShop/index.js +5 -6
  460. package/esm/icon/IconShopping/index.js +5 -6
  461. package/esm/icon/IconSmileFill/index.js +5 -6
  462. package/esm/icon/IconSound/index.js +5 -6
  463. package/esm/icon/IconSquareChecked/index.js +5 -6
  464. package/esm/icon/IconSquareDisabled/index.js +5 -6
  465. package/esm/icon/IconSquareUnchecked/index.js +5 -6
  466. package/esm/icon/IconStar/index.js +5 -6
  467. package/esm/icon/IconStarFill/index.js +5 -6
  468. package/esm/icon/IconStarHalf/index.js +5 -6
  469. package/esm/icon/IconSubway/index.js +5 -6
  470. package/esm/icon/IconSuccessCircle/index.js +5 -6
  471. package/esm/icon/IconTriDown/index.js +5 -6
  472. package/esm/icon/IconTriUp/index.js +5 -6
  473. package/esm/icon/IconUpload/index.js +5 -6
  474. package/esm/icon/IconUser/index.js +5 -6
  475. package/esm/icon/IconUserFill/index.js +5 -6
  476. package/esm/icon/IconWarnCircle/index.js +5 -6
  477. package/esm/icon/IconWarnCircleFill/index.js +5 -6
  478. package/esm/image/index.js +53 -83
  479. package/esm/image-picker/index.d.ts +5 -2
  480. package/esm/image-picker/index.js +63 -90
  481. package/esm/image-preview/demo/style/css/mobile.css +10 -0
  482. package/esm/image-preview/demo/style/mobile.less +11 -0
  483. package/esm/image-preview/index.d.ts +5 -0
  484. package/esm/image-preview/index.js +124 -218
  485. package/esm/image-preview/methods.js +4 -14
  486. package/esm/image-preview/style/css/index.css +1 -0
  487. package/esm/image-preview/style/index.less +1 -1
  488. package/esm/index.d.ts +7 -6
  489. package/esm/index.js +7 -6
  490. package/esm/input/hooks.js +42 -67
  491. package/esm/input/index.d.ts +5 -2
  492. package/esm/input/index.js +37 -40
  493. package/esm/input/style/css/index.css +1 -1
  494. package/esm/load-more/index.js +29 -48
  495. package/esm/loading/index.js +19 -40
  496. package/esm/masking/index.js +46 -64
  497. package/esm/masking/methods.js +4 -15
  498. package/esm/nav-bar/back-icon.js +1 -3
  499. package/esm/nav-bar/index.js +36 -51
  500. package/esm/notice-bar/index.js +31 -47
  501. package/esm/notify/index.d.ts +8 -8
  502. package/esm/notify/index.js +20 -33
  503. package/esm/notify/methods.js +2 -13
  504. package/esm/notify/style/css/index.css +2 -2
  505. package/esm/pagination/index.js +27 -50
  506. package/esm/picker/index.d.ts +5 -2
  507. package/esm/picker/index.js +51 -76
  508. package/esm/picker-view/components/cascader.js +14 -23
  509. package/esm/picker-view/components/multi-picker.js +6 -16
  510. package/esm/picker-view/components/picker-cell.js +45 -89
  511. package/esm/picker-view/index.d.ts +5 -2
  512. package/esm/picker-view/index.js +36 -63
  513. package/esm/popover/hooks/useEvent.js +26 -41
  514. package/esm/popover/hooks/usePosition.js +94 -144
  515. package/esm/popover/index.js +2 -2
  516. package/esm/popover/menu.js +32 -41
  517. package/esm/popover/popover-inner.js +30 -38
  518. package/esm/popover/popover.js +69 -90
  519. package/esm/popup/index.js +22 -25
  520. package/esm/popup-swiper/index.js +38 -64
  521. package/esm/portal/index.js +3 -5
  522. package/esm/progress/index.js +27 -36
  523. package/esm/pull-refresh/android-pull-refresh.js +58 -90
  524. package/esm/pull-refresh/hooks.js +11 -23
  525. package/esm/pull-refresh/index.d.ts +9 -3
  526. package/esm/pull-refresh/index.js +5 -6
  527. package/esm/pull-refresh/ios-pull-refresh.js +53 -68
  528. package/esm/pull-refresh/model.js +0 -1
  529. package/esm/radio/group.js +20 -24
  530. package/esm/radio/index.d.ts +6 -1
  531. package/esm/radio/index.js +5 -3
  532. package/esm/rate/index.d.ts +5 -2
  533. package/esm/rate/index.js +35 -49
  534. package/esm/search-bar/association.js +14 -27
  535. package/esm/search-bar/cancel-button.js +8 -11
  536. package/esm/search-bar/highlight.js +14 -20
  537. package/esm/search-bar/index.js +77 -86
  538. package/esm/show-monitor/index.js +34 -85
  539. package/esm/slider/hooks/useSliderEvents.js +26 -51
  540. package/esm/slider/hooks/useSliderIcon.js +6 -13
  541. package/esm/slider/hooks/useSliderInit.js +32 -46
  542. package/esm/slider/hooks/useSliderStyle.js +12 -20
  543. package/esm/slider/index.d.ts +5 -2
  544. package/esm/slider/index.js +57 -72
  545. package/esm/slider/marks.js +12 -18
  546. package/esm/slider/popover.js +4 -6
  547. package/esm/slider/thumb.js +8 -15
  548. package/esm/stepper/hooks/useButtonClick.js +19 -27
  549. package/esm/stepper/hooks/useInputEvent.js +9 -16
  550. package/esm/stepper/hooks/useValue.js +9 -12
  551. package/esm/stepper/index.d.ts +5 -2
  552. package/esm/stepper/index.js +93 -92
  553. package/esm/steps/index.js +22 -27
  554. package/esm/steps/step.js +10 -19
  555. package/esm/steps/style/css/index.css +2 -2
  556. package/esm/sticky/index.js +37 -57
  557. package/esm/style.d.ts +7 -6
  558. package/esm/style.js +7 -6
  559. package/esm/swipe-action/index.js +40 -80
  560. package/esm/swipe-action/item.js +9 -12
  561. package/esm/swipe-load/index.js +56 -75
  562. package/esm/switch/index.d.ts +5 -2
  563. package/esm/switch/index.js +38 -49
  564. package/esm/tab-bar/index.js +0 -1
  565. package/esm/tab-bar/item.js +6 -13
  566. package/esm/tab-bar/tab-bar.js +15 -21
  567. package/esm/tabs/index.js +130 -180
  568. package/esm/tabs/tab-cell-underline.js +25 -56
  569. package/esm/tabs/tab-cell.js +66 -98
  570. package/esm/tabs/tab-pane.js +49 -85
  571. package/esm/tag/index.js +2 -2
  572. package/esm/tag/list.js +11 -16
  573. package/esm/tag/tag.js +20 -22
  574. package/esm/textarea/index.d.ts +5 -2
  575. package/esm/textarea/index.js +46 -56
  576. package/esm/textarea/style/css/index.css +1 -1
  577. package/esm/toast/index.d.ts +12 -12
  578. package/esm/toast/index.js +26 -42
  579. package/esm/toast/methods.js +2 -12
  580. package/esm/transition/index.js +10 -12
  581. package/package.json +3 -4
  582. package/tokens/app/arcodesign/default/css-variables.less +17 -7
  583. package/tokens/app/arcodesign/default/index.d.ts +10 -0
  584. package/tokens/app/arcodesign/default/index.js +18 -10
  585. package/tokens/app/arcodesign/default/index.json +139 -23
  586. package/tokens/app/arcodesign/default/index.less +17 -7
  587. package/umd/_helpers/hooks.js +42 -117
  588. package/umd/_helpers/index.js +2 -6
  589. package/umd/_helpers/react-dom.js +0 -11
  590. package/umd/_helpers/render.js +0 -9
  591. package/umd/action-sheet/index.js +10 -22
  592. package/umd/action-sheet/methods.js +0 -1
  593. package/umd/action-sheet/style/css/index.css +1 -1
  594. package/umd/avatar/group.js +12 -20
  595. package/umd/avatar/index.js +51 -68
  596. package/umd/badge/index.js +18 -25
  597. package/umd/badge/style/css/index.css +3 -2
  598. package/umd/button/hooks.js +15 -19
  599. package/umd/button/index.js +46 -60
  600. package/umd/carousel/demo/style/css/mobile.css +12 -0
  601. package/umd/carousel/demo/style/mobile.less +8 -0
  602. package/umd/carousel/index.d.ts +1 -1
  603. package/umd/carousel/index.js +159 -270
  604. package/umd/cell/arrow.js +0 -2
  605. package/umd/cell/cell.js +14 -18
  606. package/umd/cell/group.js +9 -17
  607. package/umd/cell/index.js +1 -2
  608. package/umd/checkbox/checkbox.js +31 -45
  609. package/umd/checkbox/group.js +24 -34
  610. package/umd/checkbox/hooks/useMergeProps.js +7 -12
  611. package/umd/checkbox/index.d.ts +6 -1
  612. package/umd/checkbox/index.js +6 -6
  613. package/umd/checkbox/type.js +0 -2
  614. package/umd/circle-progress/index.js +37 -52
  615. package/umd/collapse/collapse.js +27 -50
  616. package/umd/collapse/group.js +20 -38
  617. package/umd/collapse/index.js +0 -3
  618. package/umd/collapse/utils.js +0 -5
  619. package/umd/context-provider/index.js +10 -23
  620. package/umd/count-down/hooks.js +24 -39
  621. package/umd/count-down/index.js +29 -31
  622. package/umd/count-down/singleton.js +2 -10
  623. package/umd/count-down/util.js +33 -47
  624. package/umd/date-picker/helper.js +7 -13
  625. package/umd/date-picker/index.d.ts +5 -2
  626. package/umd/date-picker/index.js +52 -105
  627. package/umd/dialog/index.js +28 -44
  628. package/umd/dialog/methods.js +9 -18
  629. package/umd/dialog/style/css/index.css +2 -1
  630. package/umd/dropdown/dropdown.js +74 -106
  631. package/umd/dropdown/index.js +1 -3
  632. package/umd/dropdown/options.js +12 -24
  633. package/umd/dropdown-menu/dropdown-menu.js +49 -78
  634. package/umd/dropdown-menu/helper.js +6 -25
  635. package/umd/dropdown-menu/index.js +0 -2
  636. package/umd/ellipsis/components/js-ellipsis.js +33 -69
  637. package/umd/ellipsis/components/native-ellipsis.js +9 -13
  638. package/umd/ellipsis/index.js +19 -24
  639. package/umd/ellipsis/utils/dom.js +0 -8
  640. package/umd/ellipsis/utils/is.js +1 -5
  641. package/umd/form/form-item-context.d.ts +3 -0
  642. package/umd/form/form-item-context.js +25 -0
  643. package/umd/form/form-item.d.ts +4 -0
  644. package/umd/form/form-item.js +322 -0
  645. package/umd/form/index.d.ts +16 -0
  646. package/umd/form/index.js +106 -0
  647. package/umd/form/style/css/index.css +92 -0
  648. package/umd/form/style/css/index.d.ts +2 -0
  649. package/umd/form/style/css/index.js +15 -0
  650. package/umd/form/style/index.d.ts +2 -0
  651. package/umd/form/style/index.js +15 -0
  652. package/umd/form/style/index.less +91 -0
  653. package/umd/form/type.d.ts +371 -0
  654. package/umd/form/type.js +44 -0
  655. package/umd/form/useForm.d.ts +18 -0
  656. package/umd/form/useForm.js +238 -0
  657. package/umd/form/utils.d.ts +6 -0
  658. package/umd/form/utils.js +50 -0
  659. package/umd/grid/index.js +21 -37
  660. package/umd/icon/IconAdd/index.js +5 -7
  661. package/umd/icon/IconArrowBack/index.js +5 -7
  662. package/umd/icon/IconArrowDown/index.js +5 -7
  663. package/umd/icon/IconArrowIn/index.js +5 -7
  664. package/umd/icon/IconArrowUp/index.js +5 -7
  665. package/umd/icon/IconCheck/index.js +5 -7
  666. package/umd/icon/IconCheckBold/index.js +5 -7
  667. package/umd/icon/IconCircleChecked/index.js +5 -7
  668. package/umd/icon/IconCircleDisabled/index.js +5 -7
  669. package/umd/icon/IconCircleUnchecked/index.js +5 -7
  670. package/umd/icon/IconClear/index.js +5 -7
  671. package/umd/icon/IconClose/index.js +5 -7
  672. package/umd/icon/IconCloseBold/index.js +5 -7
  673. package/umd/icon/IconDelete/index.js +5 -7
  674. package/umd/icon/IconEdit/index.js +5 -7
  675. package/umd/icon/IconErrorCircle/index.js +5 -7
  676. package/umd/icon/IconEyeInvisible/index.js +5 -7
  677. package/umd/icon/IconEyeVisible/index.js +5 -7
  678. package/umd/icon/IconEyelashInvisible/index.js +5 -7
  679. package/umd/icon/IconGift/index.js +5 -7
  680. package/umd/icon/IconHeart/index.js +5 -7
  681. package/umd/icon/IconHome/index.js +5 -7
  682. package/umd/icon/IconLikeCircle/index.js +5 -7
  683. package/umd/icon/IconMinus/index.js +5 -7
  684. package/umd/icon/IconMore/index.js +5 -7
  685. package/umd/icon/IconNotice/index.js +5 -7
  686. package/umd/icon/IconNoticeOff/index.js +5 -7
  687. package/umd/icon/IconPicture/index.js +5 -7
  688. package/umd/icon/IconPlay/index.js +5 -7
  689. package/umd/icon/IconQuestionCircle/index.js +5 -7
  690. package/umd/icon/IconRefresh/index.js +5 -7
  691. package/umd/icon/IconSad/index.js +5 -7
  692. package/umd/icon/IconScan/index.js +5 -7
  693. package/umd/icon/IconSearch/index.js +5 -7
  694. package/umd/icon/IconSetting/index.js +5 -7
  695. package/umd/icon/IconShop/index.js +5 -7
  696. package/umd/icon/IconShopping/index.js +5 -7
  697. package/umd/icon/IconSmileFill/index.js +5 -7
  698. package/umd/icon/IconSound/index.js +5 -7
  699. package/umd/icon/IconSquareChecked/index.js +5 -7
  700. package/umd/icon/IconSquareDisabled/index.js +5 -7
  701. package/umd/icon/IconSquareUnchecked/index.js +5 -7
  702. package/umd/icon/IconStar/index.js +5 -7
  703. package/umd/icon/IconStarFill/index.js +5 -7
  704. package/umd/icon/IconStarHalf/index.js +5 -7
  705. package/umd/icon/IconSubway/index.js +5 -7
  706. package/umd/icon/IconSuccessCircle/index.js +5 -7
  707. package/umd/icon/IconTriDown/index.js +5 -7
  708. package/umd/icon/IconTriUp/index.js +5 -7
  709. package/umd/icon/IconUpload/index.js +5 -7
  710. package/umd/icon/IconUser/index.js +5 -7
  711. package/umd/icon/IconUserFill/index.js +5 -7
  712. package/umd/icon/IconWarnCircle/index.js +5 -7
  713. package/umd/icon/IconWarnCircleFill/index.js +5 -7
  714. package/umd/icon/index.js +0 -1
  715. package/umd/image/index.js +53 -86
  716. package/umd/image-picker/add-icon.js +0 -2
  717. package/umd/image-picker/index.d.ts +5 -2
  718. package/umd/image-picker/index.js +62 -92
  719. package/umd/image-preview/demo/style/css/mobile.css +10 -0
  720. package/umd/image-preview/demo/style/mobile.less +11 -0
  721. package/umd/image-preview/index.d.ts +5 -0
  722. package/umd/image-preview/index.js +124 -224
  723. package/umd/image-preview/methods.js +5 -15
  724. package/umd/image-preview/style/css/index.css +1 -0
  725. package/umd/image-preview/style/index.less +1 -1
  726. package/umd/index.d.ts +7 -6
  727. package/umd/index.js +19 -18
  728. package/umd/input/hooks.js +42 -71
  729. package/umd/input/index.d.ts +5 -2
  730. package/umd/input/index.js +36 -42
  731. package/umd/input/style/css/index.css +1 -1
  732. package/umd/load-more/index.js +29 -51
  733. package/umd/loading/index.js +19 -43
  734. package/umd/masking/index.js +46 -71
  735. package/umd/masking/methods.js +4 -16
  736. package/umd/nav-bar/back-icon.js +1 -4
  737. package/umd/nav-bar/index.js +36 -54
  738. package/umd/notice-bar/index.js +31 -50
  739. package/umd/notify/index.d.ts +8 -8
  740. package/umd/notify/index.js +20 -40
  741. package/umd/notify/methods.js +2 -14
  742. package/umd/notify/style/css/index.css +2 -2
  743. package/umd/pagination/arrow.js +0 -2
  744. package/umd/pagination/index.js +27 -53
  745. package/umd/picker/index.d.ts +5 -2
  746. package/umd/picker/index.js +50 -78
  747. package/umd/picker-view/components/cascader.js +14 -27
  748. package/umd/picker-view/components/multi-picker.js +6 -19
  749. package/umd/picker-view/components/picker-cell.js +45 -93
  750. package/umd/picker-view/index.d.ts +5 -2
  751. package/umd/picker-view/index.js +39 -69
  752. package/umd/popover/hooks/useEvent.js +25 -44
  753. package/umd/popover/hooks/usePosition.js +94 -145
  754. package/umd/popover/index.js +1 -3
  755. package/umd/popover/menu.js +32 -45
  756. package/umd/popover/popover-inner.js +30 -42
  757. package/umd/popover/popover.js +69 -94
  758. package/umd/popup/index.js +22 -31
  759. package/umd/popup/methods.js +0 -1
  760. package/umd/popup-swiper/index.js +38 -71
  761. package/umd/popup-swiper/methods.js +0 -1
  762. package/umd/portal/index.js +3 -6
  763. package/umd/progress/index.js +27 -39
  764. package/umd/pull-refresh/android-pull-refresh.js +58 -93
  765. package/umd/pull-refresh/hooks.js +11 -29
  766. package/umd/pull-refresh/index.d.ts +9 -3
  767. package/umd/pull-refresh/index.js +5 -8
  768. package/umd/pull-refresh/ios-pull-refresh.js +53 -72
  769. package/umd/pull-refresh/model.js +0 -1
  770. package/umd/radio/group.js +20 -30
  771. package/umd/radio/index.d.ts +6 -1
  772. package/umd/radio/index.js +5 -5
  773. package/umd/radio/radio.js +0 -5
  774. package/umd/rate/index.d.ts +5 -2
  775. package/umd/rate/index.js +34 -51
  776. package/umd/search-bar/association.js +14 -29
  777. package/umd/search-bar/cancel-button.js +8 -14
  778. package/umd/search-bar/highlight.js +14 -21
  779. package/umd/search-bar/index.js +77 -87
  780. package/umd/show-monitor/index.js +34 -89
  781. package/umd/slider/hooks/index.js +0 -4
  782. package/umd/slider/hooks/useSliderEvents.js +26 -52
  783. package/umd/slider/hooks/useSliderIcon.js +6 -17
  784. package/umd/slider/hooks/useSliderInit.js +32 -50
  785. package/umd/slider/hooks/useSliderStyle.js +12 -22
  786. package/umd/slider/index.d.ts +5 -2
  787. package/umd/slider/index.js +56 -73
  788. package/umd/slider/marks.js +12 -21
  789. package/umd/slider/popover.js +4 -10
  790. package/umd/slider/thumb.js +8 -18
  791. package/umd/stepper/hooks/useButtonClick.js +19 -27
  792. package/umd/stepper/hooks/useInputEvent.js +9 -17
  793. package/umd/stepper/hooks/useValue.js +9 -13
  794. package/umd/stepper/index.d.ts +5 -2
  795. package/umd/stepper/index.js +92 -94
  796. package/umd/steps/index.js +22 -32
  797. package/umd/steps/step.js +10 -22
  798. package/umd/steps/style/css/index.css +2 -2
  799. package/umd/sticky/index.js +37 -60
  800. package/umd/style.d.ts +7 -6
  801. package/umd/style.js +4 -4
  802. package/umd/swipe-action/index.js +40 -84
  803. package/umd/swipe-action/item.js +9 -14
  804. package/umd/swipe-load/index.js +55 -77
  805. package/umd/switch/index.d.ts +5 -2
  806. package/umd/switch/index.js +37 -50
  807. package/umd/tab-bar/index.js +0 -2
  808. package/umd/tab-bar/item.js +6 -19
  809. package/umd/tab-bar/tab-bar.js +15 -26
  810. package/umd/tabs/index.js +129 -183
  811. package/umd/tabs/tab-cell-underline.js +25 -60
  812. package/umd/tabs/tab-cell.js +66 -103
  813. package/umd/tabs/tab-pane.js +49 -89
  814. package/umd/tag/index.js +1 -3
  815. package/umd/tag/list.js +11 -20
  816. package/umd/tag/tag.js +20 -26
  817. package/umd/textarea/index.d.ts +5 -2
  818. package/umd/textarea/index.js +45 -58
  819. package/umd/textarea/style/css/index.css +1 -1
  820. package/umd/toast/index.d.ts +12 -12
  821. package/umd/toast/index.js +26 -49
  822. package/umd/toast/methods.js +2 -13
  823. package/umd/transition/index.js +10 -12
@@ -3,9 +3,10 @@
3
3
  var SECOND = 1000;
4
4
  var MINUTE = 60 * SECOND;
5
5
  var HOUR = 60 * MINUTE;
6
- var DAY = 24 * HOUR; // 把毫秒解析成TimeDataType格式
7
- // @en Parse milliseconds into TimeDataType format
6
+ var DAY = 24 * HOUR;
8
7
 
8
+ // 把毫秒解析成TimeDataType格式
9
+ // @en Parse milliseconds into TimeDataType format
9
10
  export function parseTime(time) {
10
11
  var days = Math.floor(time / DAY);
11
12
  var hours = Math.floor(time % DAY / HOUR);
@@ -19,106 +20,96 @@ export function parseTime(time) {
19
20
  seconds: seconds,
20
21
  milliseconds: milliseconds
21
22
  };
22
- } // 把TimeDataType解析成毫秒
23
+ }
24
+ // 把TimeDataType解析成毫秒
23
25
  // @en Parse TimeDataType into milliseconds
24
-
25
26
  export function unParseTime(time) {
26
27
  var _time$days = time.days,
27
- days = _time$days === void 0 ? 0 : _time$days,
28
- _time$hours = time.hours,
29
- hours = _time$hours === void 0 ? 0 : _time$hours,
30
- _time$minutes = time.minutes,
31
- minutes = _time$minutes === void 0 ? 0 : _time$minutes,
32
- _time$seconds = time.seconds,
33
- seconds = _time$seconds === void 0 ? 0 : _time$seconds,
34
- _time$milliseconds = time.milliseconds,
35
- milliseconds = _time$milliseconds === void 0 ? 0 : _time$milliseconds;
28
+ days = _time$days === void 0 ? 0 : _time$days,
29
+ _time$hours = time.hours,
30
+ hours = _time$hours === void 0 ? 0 : _time$hours,
31
+ _time$minutes = time.minutes,
32
+ minutes = _time$minutes === void 0 ? 0 : _time$minutes,
33
+ _time$seconds = time.seconds,
34
+ seconds = _time$seconds === void 0 ? 0 : _time$seconds,
35
+ _time$milliseconds = time.milliseconds,
36
+ milliseconds = _time$milliseconds === void 0 ? 0 : _time$milliseconds;
36
37
  return days * DAY + hours * HOUR + minutes * MINUTE + seconds * SECOND + milliseconds;
37
- } // 判断是否在浏览器中运行
38
+ }
39
+ // 判断是否在浏览器中运行
38
40
  // @en Determine if it is running in the browser
39
-
40
- export var inBrowser = typeof window !== 'undefined'; // 判断根元素
41
+ export var inBrowser = typeof window !== 'undefined';
42
+ // 判断根元素
41
43
  // @en Determine the root element
42
-
43
- var root = inBrowser ? window : global; // 根据id清除对应的animationFrame
44
+ var root = inBrowser ? window : global;
45
+ // 根据id清除对应的animationFrame
44
46
  // @en Clear the corresponding animationFrame according to the id
45
-
46
47
  export function cancelRaf(id) {
47
48
  var cancelAnimationFrame = root.cancelAnimationFrame || root.clearTimeout;
48
49
  cancelAnimationFrame.call(root, id);
49
- } // 计算现在时间
50
+ }
51
+ // 计算现在时间
50
52
  // @en Calculate the current time
51
-
52
- var prev = Date.now(); // requestAnimationFrame不存在时用setTimeout代替,得出id
53
+ var prev = Date.now();
54
+ // requestAnimationFrame不存在时用setTimeout代替,得出id
53
55
  // @en When requestAnimationFrame does not exist, use setTimeout instead to get the id
54
-
55
56
  function rafPolyfill(fn) {
56
57
  var curr = Date.now();
57
58
  var ms = Math.max(0, 16 - (curr - prev));
58
59
  var id = setTimeout(fn, ms);
59
60
  prev = curr + ms;
60
61
  return id;
61
- } // 得到animationFrame的id
62
+ }
63
+ // 得到animationFrame的id
62
64
  // @en Get the id of animationFrame
63
-
64
-
65
65
  export function raf(fn) {
66
66
  var requestAnimationFrame = root.requestAnimationFrame || rafPolyfill;
67
67
  return requestAnimationFrame.call(root, fn);
68
- } // 补0成需要的格式
68
+ }
69
+ // 补0成需要的格式
69
70
  // @en Fill 0 into the required format
70
-
71
71
  export function padZero(num, targetLength) {
72
72
  if (targetLength === void 0) {
73
73
  targetLength = 2;
74
74
  }
75
-
76
75
  var str = "" + num;
77
-
78
76
  while (str.length < targetLength) {
79
77
  str = "0" + str;
80
78
  }
81
-
82
79
  return str;
83
- } // 根据传入的格式解析时间成特定格式
80
+ }
81
+ // 根据传入的格式解析时间成特定格式
84
82
  // @en Parse the time into a specific format according to the inputing format
85
-
86
83
  export function parseFormat(formatArg, currentTime) {
87
84
  var days = currentTime.days;
88
85
  var format = formatArg;
89
86
  var hours = currentTime.hours,
90
- minutes = currentTime.minutes,
91
- seconds = currentTime.seconds,
92
- milliseconds = currentTime.milliseconds;
93
-
87
+ minutes = currentTime.minutes,
88
+ seconds = currentTime.seconds,
89
+ milliseconds = currentTime.milliseconds;
94
90
  if (format.includes('D')) {
95
91
  format = format.replace('DD', padZero(days)).replace('D', "" + days);
96
92
  } else {
97
93
  hours += days * 24;
98
94
  }
99
-
100
95
  if (format.includes('H')) {
101
96
  format = format.replace('HH', padZero(hours)).replace('H', "" + hours);
102
97
  } else {
103
98
  minutes += hours * 60;
104
99
  }
105
-
106
100
  if (format.includes('m')) {
107
101
  format = format.replace('mm', padZero(minutes)).replace('m', "" + minutes);
108
102
  } else {
109
103
  seconds += minutes * 60;
110
104
  }
111
-
112
105
  if (format.includes('s')) {
113
106
  format = format.replace('ss', padZero(seconds)).replace('s', "" + seconds);
114
107
  } else {
115
108
  milliseconds += seconds * 1000;
116
109
  }
117
-
118
110
  if (format.includes('S')) {
119
111
  var ms = padZero(milliseconds, 3);
120
112
  format = format.replace(/S{3}/, ms).replace(/S{2}/, ms.slice(0, 2)).replace(/S{1}/, ms.charAt(0));
121
113
  }
122
-
123
114
  return format;
124
115
  }
@@ -14,19 +14,17 @@ export function convertObjToTs(obj, defaultTs, utc) {
14
14
  if (obj === void 0) {
15
15
  obj = {};
16
16
  }
17
-
18
17
  var date = new DateWithUTC(defaultTs, utc);
19
18
  var defaultDate = date.getDate();
20
- !isNaN(obj.year) && date.setFullYear(obj.year); // bugfix: setMonth后如果日期超限则会自动顺延到下月,此时返回月份就不准了,因此先设置date为1再设置month
19
+ !isNaN(obj.year) && date.setFullYear(obj.year);
20
+ // bugfix: setMonth后如果日期超限则会自动顺延到下月,此时返回月份就不准了,因此先设置date为1再设置month
21
21
  // @en bugfix: After setMonth, if the date exceeds the limit, it will be automatically extended to the next month. At this time, the return month is not allowed, so first set date to 1 and then set month
22
-
23
22
  if (!isNaN(obj.month)) {
24
23
  date.setDate(1);
25
24
  date.setMonth(obj.month - 1);
26
- } // date的值可能被修改,需要被还原
25
+ }
26
+ // date的值可能被修改,需要被还原
27
27
  // @en The value of date may be modified and needs to be restored
28
-
29
-
30
28
  date.setDate(isNaN(obj.date) ? defaultDate : obj.date);
31
29
  !isNaN(obj.hour) && date.setHours(obj.hour);
32
30
  !isNaN(obj.minute) && date.setMinutes(obj.minute);
@@ -35,14 +33,14 @@ export function convertObjToTs(obj, defaultTs, utc) {
35
33
  }
36
34
  export function oneOf(value, validList) {
37
35
  return validList.indexOf(value) !== -1;
38
- } // 查看两个obj中的keys里的各个值是否都一致
39
- // @en Check whether the values in the keys in the two obj are consistent
36
+ }
40
37
 
38
+ // 查看两个obj中的keys里的各个值是否都一致
39
+ // @en Check whether the values in the keys in the two obj are consistent
41
40
  export function judgeObj(dateObj1, dateObj2, keys) {
42
41
  if (keys === void 0) {
43
42
  keys = [];
44
43
  }
45
-
46
44
  return !keys.some(function (key) {
47
45
  return dateObj1[key] !== dateObj2[key];
48
46
  });
@@ -9,6 +9,9 @@ export interface DatePickerRef {
9
9
  */
10
10
  dom: HTMLDivElement | null;
11
11
  }
12
+ declare const _default: React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<DatePickerRef>> & {
13
+ displayName?: string | undefined;
14
+ };
12
15
  /**
13
16
  * 日期时间选择器,基于`Picker`组件扩展,支持指定范围,单位可精确到秒。
14
17
  * @en Date picker, based on the `Picker` component, supports the specified range, the unit can be accurate to seconds.
@@ -16,6 +19,6 @@ export interface DatePickerRef {
16
19
  * @type_en Data Entry
17
20
  * @name 日期时间选择器
18
21
  * @name_en DatePicker
22
+ * @displayName DatePicker
19
23
  */
20
- declare const DatePicker: React.ForwardRefExoticComponent<DatePickerProps & React.RefAttributes<DatePickerRef>>;
21
- export default DatePicker;
24
+ export default _default;
@@ -2,70 +2,55 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
3
3
  var _excluded = ["currentTs", "className", "visible", "onOk", "onChange", "onValueChange", "mode", "typeArr", "minTs", "maxTs", "formatter", "valueFilter", "columnsProcessor", "touchToStop", "useUTC"];
4
4
  import React, { useEffect, useRef, useState, useMemo, forwardRef, useImperativeHandle } from 'react';
5
- import { cls } from '@arco-design/mobile-utils';
5
+ import { cls, componentWrapper } from '@arco-design/mobile-utils';
6
6
  import Picker from '../picker';
7
7
  import { ContextLayout } from '../context-provider';
8
8
  import { convertTsToDateObj, oneOf, judgeObj, convertObjToTs } from './helper';
9
9
  export * from './type';
10
10
  var allTypes = ['year', 'month', 'date', 'hour', 'minute', 'second'];
11
-
12
11
  var defaultFormatter = function defaultFormatter(value) {
13
12
  return value < 10 ? "0" + value : String(value);
14
13
  };
15
-
16
14
  export var YEAR = 12 * 30 * 24 * 60 * 60 * 1000;
17
15
  var initMinDate = Date.now() - 10 * YEAR;
18
16
  var initMaxDate = Date.now() + 10 * YEAR;
19
17
  var initDate = Date.now();
20
-
21
- /**
22
- * 日期时间选择器,基于`Picker`组件扩展,支持指定范围,单位可精确到秒。
23
- * @en Date picker, based on the `Picker` component, supports the specified range, the unit can be accurate to seconds.
24
- * @type 数据录入
25
- * @type_en Data Entry
26
- * @name 日期时间选择器
27
- * @name_en DatePicker
28
- */
29
18
  var DatePicker = /*#__PURE__*/forwardRef(function (props, ref) {
30
19
  var _props$currentTs = props.currentTs,
31
- userSetCurrentTs = _props$currentTs === void 0 ? initDate : _props$currentTs,
32
- _props$className = props.className,
33
- className = _props$className === void 0 ? '' : _props$className,
34
- _props$visible = props.visible,
35
- visible = _props$visible === void 0 ? false : _props$visible,
36
- onOk = props.onOk,
37
- onChange = props.onChange,
38
- onValueChange = props.onValueChange,
39
- _props$mode = props.mode,
40
- mode = _props$mode === void 0 ? 'datetime' : _props$mode,
41
- _props$typeArr = props.typeArr,
42
- typeArr = _props$typeArr === void 0 ? [] : _props$typeArr,
43
- _props$minTs = props.minTs,
44
- minTs = _props$minTs === void 0 ? initMinDate : _props$minTs,
45
- _props$maxTs = props.maxTs,
46
- maxTs = _props$maxTs === void 0 ? initMaxDate : _props$maxTs,
47
- _props$formatter = props.formatter,
48
- formatter = _props$formatter === void 0 ? defaultFormatter : _props$formatter,
49
- _props$valueFilter = props.valueFilter,
50
- valueFilter = _props$valueFilter === void 0 ? function () {
51
- return true;
52
- } : _props$valueFilter,
53
- columnsProcessor = props.columnsProcessor,
54
- touchToStop = props.touchToStop,
55
- _props$useUTC = props.useUTC,
56
- useUTC = _props$useUTC === void 0 ? false : _props$useUTC,
57
- otherProps = _objectWithoutPropertiesLoose(props, _excluded);
58
-
20
+ userSetCurrentTs = _props$currentTs === void 0 ? initDate : _props$currentTs,
21
+ _props$className = props.className,
22
+ className = _props$className === void 0 ? '' : _props$className,
23
+ _props$visible = props.visible,
24
+ visible = _props$visible === void 0 ? false : _props$visible,
25
+ onOk = props.onOk,
26
+ onChange = props.onChange,
27
+ onValueChange = props.onValueChange,
28
+ _props$mode = props.mode,
29
+ mode = _props$mode === void 0 ? 'datetime' : _props$mode,
30
+ _props$typeArr = props.typeArr,
31
+ typeArr = _props$typeArr === void 0 ? [] : _props$typeArr,
32
+ _props$minTs = props.minTs,
33
+ minTs = _props$minTs === void 0 ? initMinDate : _props$minTs,
34
+ _props$maxTs = props.maxTs,
35
+ maxTs = _props$maxTs === void 0 ? initMaxDate : _props$maxTs,
36
+ _props$formatter = props.formatter,
37
+ formatter = _props$formatter === void 0 ? defaultFormatter : _props$formatter,
38
+ _props$valueFilter = props.valueFilter,
39
+ valueFilter = _props$valueFilter === void 0 ? function () {
40
+ return true;
41
+ } : _props$valueFilter,
42
+ columnsProcessor = props.columnsProcessor,
43
+ touchToStop = props.touchToStop,
44
+ _props$useUTC = props.useUTC,
45
+ useUTC = _props$useUTC === void 0 ? false : _props$useUTC,
46
+ otherProps = _objectWithoutPropertiesLoose(props, _excluded);
59
47
  var currentTs = Math.min(maxTs, Math.max(minTs, userSetCurrentTs));
60
-
61
48
  var _useState = useState([[]]),
62
- data = _useState[0],
63
- setData = _useState[1];
64
-
49
+ data = _useState[0],
50
+ setData = _useState[1];
65
51
  var _useState2 = useState([]),
66
- value = _useState2[0],
67
- setValue = _useState2[1];
68
-
52
+ value = _useState2[0],
53
+ setValue = _useState2[1];
69
54
  var currentDateObjRef = useRef(_convertTsToDateObj(currentTs));
70
55
  var minDateObjRef = useRef(_convertTsToDateObj(minTs));
71
56
  var maxDateObjRef = useRef(_convertTsToDateObj(maxTs));
@@ -78,7 +63,6 @@ var DatePicker = /*#__PURE__*/forwardRef(function (props, ref) {
78
63
  dom: pickerRef.current ? pickerRef.current.dom : null
79
64
  };
80
65
  });
81
-
82
66
  function _getColumns() {
83
67
  var dateObj = {};
84
68
  allTypes.forEach(function (type) {
@@ -87,21 +71,17 @@ var DatePicker = /*#__PURE__*/forwardRef(function (props, ref) {
87
71
  var columns = keyOptions.map(function (opt) {
88
72
  return dateObj[opt];
89
73
  });
90
-
91
74
  if (columnsProcessor) {
92
75
  columns = columnsProcessor(columns, currentDateObjRef.current);
93
76
  }
94
-
95
77
  return {
96
78
  columns: columns,
97
79
  dateObj: dateObj
98
80
  };
99
81
  }
100
-
101
82
  function _getSelectValue(columns) {
102
83
  var val = keyOptions.map(function (opt, index) {
103
84
  var _curCol$Math$max;
104
-
105
85
  var curCol = columns[index] || [];
106
86
  var selectIndex = curCol.findIndex(function (col) {
107
87
  return col.value === currentDateObjRef.current[opt];
@@ -110,58 +90,47 @@ var DatePicker = /*#__PURE__*/forwardRef(function (props, ref) {
110
90
  });
111
91
  return val;
112
92
  }
113
-
114
93
  function _initData() {
115
94
  var _getColumns2 = _getColumns(),
116
- columns = _getColumns2.columns;
117
-
95
+ columns = _getColumns2.columns;
118
96
  var val = _getSelectValue(columns);
119
-
120
97
  setData(function () {
121
98
  return columns;
122
99
  });
123
100
  setValue(function () {
124
101
  return val;
125
102
  });
126
- } // 根据当前选中的日期动态改变其他列的options
127
- // @en Dynamically change the options of other columns based on the currently selected date
128
-
103
+ }
129
104
 
105
+ // 根据当前选中的日期动态改变其他列的options
106
+ // @en Dynamically change the options of other columns based on the currently selected date
130
107
  function _getActualArray(type, nowDateObj) {
131
108
  var normalRange = _getNormalRange(type, nowDateObj);
132
-
133
109
  var range = [];
134
-
135
110
  switch (type) {
136
111
  case 'year':
137
112
  range = [minDateObjRef.current.year, maxDateObjRef.current.year];
138
113
  break;
139
-
140
114
  default:
141
115
  {
142
116
  var checkKeys = allTypes.slice(0, allTypes.indexOf(type));
143
117
  range = normalRange;
144
-
145
118
  if (judgeObj(nowDateObj, minDateObjRef.current, checkKeys)) {
146
119
  range[0] = minDateObjRef.current[type];
147
120
  }
148
-
149
121
  if (judgeObj(nowDateObj, maxDateObjRef.current, checkKeys)) {
150
122
  range[range.length - 1] = maxDateObjRef.current[type];
151
123
  }
152
124
  }
153
125
  }
154
-
155
126
  return _convertRangeToArr(type, range);
156
127
  }
157
-
158
128
  function _convertRangeToArr(type, range) {
159
129
  var _range$ = range[0],
160
- start = _range$ === void 0 ? 0 : _range$,
161
- _range$2 = range[1],
162
- end = _range$2 === void 0 ? 0 : _range$2;
130
+ start = _range$ === void 0 ? 0 : _range$,
131
+ _range$2 = range[1],
132
+ end = _range$2 === void 0 ? 0 : _range$2;
163
133
  var arr = [];
164
-
165
134
  for (var i = start; i <= end; i += 1) {
166
135
  if (valueFilter(type, i)) {
167
136
  var text = formatter(i, type);
@@ -171,60 +140,48 @@ var DatePicker = /*#__PURE__*/forwardRef(function (props, ref) {
171
140
  });
172
141
  }
173
142
  }
174
-
175
143
  return arr;
176
144
  }
177
-
178
145
  function _getNormalRange(type, nowDateObj) {
179
146
  switch (type) {
180
147
  case 'month':
181
148
  return [1, 12];
182
-
183
149
  case 'date':
184
150
  if (nowDateObj.month === 2) {
185
151
  // 闰年2月29天
186
152
  // @en February 29th in leap year
187
153
  return nowDateObj.year % 4 === 0 ? [1, 29] : [1, 28];
188
154
  }
189
-
190
155
  return oneOf(nowDateObj.month, [1, 3, 5, 7, 8, 10, 12]) ? [1, 31] : [1, 30];
191
-
192
156
  case 'hour':
193
157
  return [0, 23];
194
-
195
158
  case 'minute':
196
159
  case 'second':
197
160
  return [0, 59];
198
-
199
161
  default:
200
162
  return [];
201
163
  }
202
164
  }
203
-
204
165
  function _convertObjToTs(obj, defaultTs) {
205
166
  return convertObjToTs(obj, defaultTs, useUTC);
206
167
  }
207
-
208
168
  function _convertTsToDateObj(ts) {
209
169
  return convertTsToDateObj(ts, useUTC);
210
170
  }
211
-
212
171
  function _handlePickerChange(values, index) {
213
172
  var type = keyOptions[index];
214
173
  var nowDateObj = {};
215
174
  values.forEach(function (i, keyIndex) {
216
175
  nowDateObj[keyOptions[keyIndex]] = i;
217
176
  });
218
-
219
177
  if (~keyOptions.slice(0, keyOptions.length - 1).indexOf(type)) {
220
178
  currentDateObjRef.current = nowDateObj;
221
-
222
179
  var _getColumns3 = _getColumns(),
223
- columns = _getColumns3.columns,
224
- dateObj = _getColumns3.dateObj; // 校准选中日期,比如先选中2020-02-29 年份改为2019,则2月没有29日;需要校准
225
- // @en Calibration selected date, For example, if you first select 2020-02-29 and change the year to 2019, there will be no 29th in February; calibration is required
226
-
180
+ columns = _getColumns3.columns,
181
+ dateObj = _getColumns3.dateObj;
227
182
 
183
+ // 校准选中日期,比如先选中2020-02-29 年份改为2019,则2月没有29日;需要校准
184
+ // @en Calibration selected date, For example, if you first select 2020-02-29 and change the year to 2019, there will be no 29th in February; calibration is required
228
185
  keyOptions.forEach(function (key) {
229
186
  if (dateObj[key].findIndex(function (item) {
230
187
  return item.value === nowDateObj[key];
@@ -232,69 +189,53 @@ var DatePicker = /*#__PURE__*/forwardRef(function (props, ref) {
232
189
  nowDateObj[key] = dateObj[key][dateObj[key].length - 1].value;
233
190
  }
234
191
  });
235
-
236
192
  var val = _getSelectValue(columns);
237
-
238
193
  setData(columns);
239
194
  setValue(val);
240
195
  }
241
-
242
196
  if (onValueChange) {
243
197
  onValueChange(_convertObjToTs(nowDateObj, currentTs), nowDateObj, index);
244
198
  }
245
199
  }
246
-
247
200
  function _handlePickerConfirm(values) {
248
201
  var nowDateObj = {};
249
202
  values.forEach(function (index, keyIndex) {
250
203
  nowDateObj[keyOptions[keyIndex]] = index;
251
204
  });
252
-
253
205
  var newTs = _convertObjToTs(nowDateObj, currentTs);
254
-
255
206
  if (onOk) {
256
207
  onOk(newTs, nowDateObj);
257
208
  }
258
-
259
209
  if (onChange) {
260
210
  onChange(newTs, nowDateObj);
261
211
  }
262
212
  }
263
-
264
213
  function _getKeyOptions() {
265
214
  if (typeArr && typeArr.length) {
266
215
  return typeArr;
267
216
  }
268
-
269
217
  var options = [];
270
-
271
218
  switch (mode) {
272
219
  case 'date':
273
220
  options = allTypes.slice(0, 3);
274
221
  break;
275
-
276
222
  case 'time':
277
223
  options = allTypes.slice(3);
278
224
  break;
279
-
280
225
  default:
281
226
  options = allTypes;
282
227
  }
283
-
284
228
  return options;
285
229
  }
286
-
287
230
  useEffect(function () {
288
231
  minDateObjRef.current = _convertTsToDateObj(minTs);
289
232
  currentDateObjRef.current = _convertTsToDateObj(currentTs);
290
233
  maxDateObjRef.current = _convertTsToDateObj(maxTs);
291
-
292
234
  _initData();
293
235
  }, [currentTs, minTs, maxTs, useUTC]);
294
236
  useEffect(function () {
295
237
  if (visible) {
296
238
  currentDateObjRef.current = _convertTsToDateObj(currentTs);
297
-
298
239
  _initData();
299
240
  }
300
241
  }, [visible]);
@@ -313,4 +254,13 @@ var DatePicker = /*#__PURE__*/forwardRef(function (props, ref) {
313
254
  }));
314
255
  });
315
256
  });
316
- export default DatePicker;
257
+ /**
258
+ * 日期时间选择器,基于`Picker`组件扩展,支持指定范围,单位可精确到秒。
259
+ * @en Date picker, based on the `Picker` component, supports the specified range, the unit can be accurate to seconds.
260
+ * @type 数据录入
261
+ * @type_en Data Entry
262
+ * @name 日期时间选择器
263
+ * @name_en DatePicker
264
+ * @displayName DatePicker
265
+ */
266
+ export default componentWrapper(DatePicker, 'DatePicker');