@arco-design/mobile-react 2.38.4 → 2.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (754) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.en-US.md +2 -2
  3. package/README.md +2 -2
  4. package/cjs/_helpers/hooks.js +59 -141
  5. package/cjs/_helpers/index.js +2 -18
  6. package/cjs/_helpers/react-dom.js +0 -14
  7. package/cjs/_helpers/render.js +5 -21
  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.js +0 -2
  11. package/cjs/action-sheet/style/index.js +0 -2
  12. package/cjs/avatar/group.js +12 -24
  13. package/cjs/avatar/index.js +53 -79
  14. package/cjs/avatar/style/css/index.js +0 -2
  15. package/cjs/avatar/style/index.js +0 -2
  16. package/cjs/badge/index.js +18 -29
  17. package/cjs/badge/style/css/index.js +0 -1
  18. package/cjs/badge/style/index.js +0 -1
  19. package/cjs/button/hooks.js +15 -20
  20. package/cjs/button/index.js +46 -67
  21. package/cjs/button/style/css/index.js +0 -2
  22. package/cjs/button/style/index.js +0 -2
  23. package/cjs/carousel/index.js +153 -288
  24. package/cjs/carousel/style/css/index.js +0 -1
  25. package/cjs/carousel/style/index.js +0 -1
  26. package/cjs/cell/arrow.js +0 -3
  27. package/cjs/cell/cell.js +18 -34
  28. package/cjs/cell/group.js +9 -21
  29. package/cjs/cell/index.js +1 -7
  30. package/cjs/cell/style/css/index.js +0 -1
  31. package/cjs/cell/style/index.js +0 -1
  32. package/cjs/checkbox/checkbox.js +31 -57
  33. package/cjs/checkbox/group.js +24 -38
  34. package/cjs/checkbox/hooks/index.js +0 -2
  35. package/cjs/checkbox/hooks/useMergeProps.js +7 -14
  36. package/cjs/checkbox/index.js +1 -8
  37. package/cjs/checkbox/style/css/index.js +0 -1
  38. package/cjs/checkbox/style/index.js +0 -1
  39. package/cjs/checkbox/type.js +0 -2
  40. package/cjs/circle-progress/index.js +37 -57
  41. package/cjs/circle-progress/style/css/index.js +0 -1
  42. package/cjs/circle-progress/style/index.js +0 -1
  43. package/cjs/collapse/collapse.js +30 -61
  44. package/cjs/collapse/group.js +20 -44
  45. package/cjs/collapse/index.js +0 -9
  46. package/cjs/collapse/style/css/index.js +0 -1
  47. package/cjs/collapse/style/index.js +0 -1
  48. package/cjs/collapse/utils.js +0 -7
  49. package/cjs/context-provider/index.js +18 -43
  50. package/cjs/context-provider/style/css/index.js +0 -1
  51. package/cjs/context-provider/style/index.js +0 -1
  52. package/cjs/count-down/hooks.js +24 -43
  53. package/cjs/count-down/index.js +29 -37
  54. package/cjs/count-down/singleton.js +2 -12
  55. package/cjs/count-down/style/css/index.js +0 -1
  56. package/cjs/count-down/style/index.js +0 -1
  57. package/cjs/count-down/util.js +33 -47
  58. package/cjs/date-picker/helper.js +7 -14
  59. package/cjs/date-picker/index.js +66 -167
  60. package/cjs/date-picker/style/css/index.js +0 -2
  61. package/cjs/date-picker/style/index.js +0 -2
  62. package/cjs/dialog/index.js +31 -57
  63. package/cjs/dialog/methods.js +9 -22
  64. package/cjs/dialog/style/css/index.js +0 -2
  65. package/cjs/dialog/style/index.js +0 -2
  66. package/cjs/divider/index.js +8 -20
  67. package/cjs/divider/style/css/index.js +0 -1
  68. package/cjs/divider/style/index.js +0 -1
  69. package/cjs/dropdown/dropdown.js +74 -113
  70. package/cjs/dropdown/index.js +1 -8
  71. package/cjs/dropdown/options.js +12 -28
  72. package/cjs/dropdown/style/css/index.js +0 -1
  73. package/cjs/dropdown/style/index.js +0 -1
  74. package/cjs/dropdown-menu/dropdown-menu.js +49 -84
  75. package/cjs/dropdown-menu/helper.js +4 -24
  76. package/cjs/dropdown-menu/index.js +0 -6
  77. package/cjs/dropdown-menu/style/css/index.js +0 -2
  78. package/cjs/dropdown-menu/style/index.js +0 -2
  79. package/cjs/ellipsis/components/js-ellipsis.js +32 -70
  80. package/cjs/ellipsis/components/native-ellipsis.js +9 -14
  81. package/cjs/ellipsis/index.js +19 -32
  82. package/cjs/ellipsis/style/css/index.js +0 -1
  83. package/cjs/ellipsis/style/index.js +0 -1
  84. package/cjs/ellipsis/utils/dom.js +0 -8
  85. package/cjs/ellipsis/utils/is.js +1 -5
  86. package/cjs/form/form-item-context.js +0 -5
  87. package/cjs/form/form-item.js +74 -163
  88. package/cjs/form/index.js +18 -38
  89. package/cjs/form/linked-container.js +5 -24
  90. package/cjs/form/style/css/index.js +0 -1
  91. package/cjs/form/style/index.js +0 -1
  92. package/cjs/form/type.d.ts +11 -1
  93. package/cjs/form/type.js +0 -5
  94. package/cjs/form/useForm.js +10 -79
  95. package/cjs/form/utils.js +4 -22
  96. package/cjs/grid/index.js +22 -45
  97. package/cjs/grid/style/css/index.js +0 -1
  98. package/cjs/grid/style/index.js +0 -1
  99. package/cjs/icon/IconAdd/index.js +5 -12
  100. package/cjs/icon/IconArrowBack/index.js +5 -12
  101. package/cjs/icon/IconArrowDown/index.js +5 -12
  102. package/cjs/icon/IconArrowIn/index.js +5 -12
  103. package/cjs/icon/IconArrowUp/index.js +5 -12
  104. package/cjs/icon/IconCheck/index.js +5 -12
  105. package/cjs/icon/IconCheckBold/index.js +5 -12
  106. package/cjs/icon/IconCircleChecked/index.js +5 -12
  107. package/cjs/icon/IconCircleDisabled/index.js +5 -12
  108. package/cjs/icon/IconCircleUnchecked/index.js +5 -12
  109. package/cjs/icon/IconClear/index.js +5 -12
  110. package/cjs/icon/IconClose/index.js +5 -12
  111. package/cjs/icon/IconCloseBold/index.js +5 -12
  112. package/cjs/icon/IconDelete/index.js +5 -12
  113. package/cjs/icon/IconDownload/index.js +5 -12
  114. package/cjs/icon/IconEdit/index.js +5 -12
  115. package/cjs/icon/IconErrorCircle/index.js +5 -12
  116. package/cjs/icon/IconEyeInvisible/index.js +5 -12
  117. package/cjs/icon/IconEyeVisible/index.js +5 -12
  118. package/cjs/icon/IconEyelashInvisible/index.js +5 -12
  119. package/cjs/icon/IconFile/index.js +5 -12
  120. package/cjs/icon/IconGift/index.js +5 -12
  121. package/cjs/icon/IconHeart/index.js +5 -12
  122. package/cjs/icon/IconHome/index.js +5 -12
  123. package/cjs/icon/IconKeyboard/index.js +5 -12
  124. package/cjs/icon/IconKeyboardDelete/index.js +5 -12
  125. package/cjs/icon/IconLikeCircle/index.js +5 -12
  126. package/cjs/icon/IconMinus/index.js +5 -12
  127. package/cjs/icon/IconMore/index.js +5 -12
  128. package/cjs/icon/IconNotice/index.js +5 -12
  129. package/cjs/icon/IconNoticeOff/index.js +5 -12
  130. package/cjs/icon/IconPicture/index.js +5 -12
  131. package/cjs/icon/IconPlay/index.js +5 -12
  132. package/cjs/icon/IconQuestionCircle/index.js +5 -12
  133. package/cjs/icon/IconRefresh/index.js +5 -12
  134. package/cjs/icon/IconSad/index.js +5 -12
  135. package/cjs/icon/IconScan/index.js +5 -12
  136. package/cjs/icon/IconSearch/index.js +5 -12
  137. package/cjs/icon/IconSetting/index.js +5 -12
  138. package/cjs/icon/IconShop/index.js +5 -12
  139. package/cjs/icon/IconShopping/index.js +5 -12
  140. package/cjs/icon/IconSmileFill/index.js +5 -12
  141. package/cjs/icon/IconSound/index.js +5 -12
  142. package/cjs/icon/IconSquareChecked/index.js +5 -12
  143. package/cjs/icon/IconSquareDisabled/index.js +5 -12
  144. package/cjs/icon/IconSquareUnchecked/index.js +5 -12
  145. package/cjs/icon/IconStar/index.js +5 -12
  146. package/cjs/icon/IconStarFill/index.js +5 -12
  147. package/cjs/icon/IconStarHalf/index.js +5 -12
  148. package/cjs/icon/IconSubway/index.js +5 -12
  149. package/cjs/icon/IconSuccessCircle/index.js +5 -12
  150. package/cjs/icon/IconTriDown/index.js +5 -12
  151. package/cjs/icon/IconTriUp/index.js +5 -12
  152. package/cjs/icon/IconUpload/index.js +5 -12
  153. package/cjs/icon/IconUser/index.js +5 -12
  154. package/cjs/icon/IconUserFill/index.js +5 -12
  155. package/cjs/icon/IconWarnCircle/index.js +5 -12
  156. package/cjs/icon/IconWarnCircleFill/index.js +5 -12
  157. package/cjs/icon/index.js +0 -119
  158. package/cjs/image/index.js +53 -94
  159. package/cjs/image/style/css/index.js +0 -2
  160. package/cjs/image/style/index.js +0 -2
  161. package/cjs/image-picker/add-icon.js +0 -3
  162. package/cjs/image-picker/index.js +32 -59
  163. package/cjs/image-picker/style/css/index.js +0 -3
  164. package/cjs/image-picker/style/index.js +0 -3
  165. package/cjs/image-preview/index.js +129 -254
  166. package/cjs/image-preview/methods.js +5 -18
  167. package/cjs/image-preview/style/css/index.js +0 -4
  168. package/cjs/image-preview/style/index.js +0 -4
  169. package/cjs/index-bar/context.js +0 -2
  170. package/cjs/index-bar/group.js +16 -35
  171. package/cjs/index-bar/index.js +55 -87
  172. package/cjs/index-bar/side-bar.js +15 -34
  173. package/cjs/index-bar/style/css/index.js +0 -2
  174. package/cjs/index-bar/style/index.js +0 -2
  175. package/cjs/index-bar/utils.js +3 -17
  176. package/cjs/index.js +0 -119
  177. package/cjs/input/hooks.js +45 -84
  178. package/cjs/input/index.js +26 -40
  179. package/cjs/input/style/css/index.js +0 -1
  180. package/cjs/input/style/index.js +0 -1
  181. package/cjs/keyboard/index.js +37 -73
  182. package/cjs/keyboard/style/css/index.js +0 -2
  183. package/cjs/keyboard/style/index.js +0 -2
  184. package/cjs/load-more/index.js +33 -65
  185. package/cjs/load-more/style/css/index.js +0 -1
  186. package/cjs/load-more/style/index.js +0 -1
  187. package/cjs/loading/index.js +19 -48
  188. package/cjs/loading/style/css/index.js +0 -1
  189. package/cjs/loading/style/index.js +0 -1
  190. package/cjs/masking/index.js +47 -80
  191. package/cjs/masking/methods.js +5 -21
  192. package/cjs/masking/style/css/index.js +0 -2
  193. package/cjs/masking/style/index.js +0 -2
  194. package/cjs/nav-bar/back-icon.js +2 -8
  195. package/cjs/nav-bar/index.js +37 -61
  196. package/cjs/nav-bar/style/css/index.js +0 -1
  197. package/cjs/nav-bar/style/index.js +0 -1
  198. package/cjs/notice-bar/index.js +34 -60
  199. package/cjs/notice-bar/style/css/index.js +0 -1
  200. package/cjs/notice-bar/style/index.js +0 -1
  201. package/cjs/notify/index.js +20 -49
  202. package/cjs/notify/methods.js +2 -17
  203. package/cjs/notify/style/css/index.js +0 -1
  204. package/cjs/notify/style/index.js +0 -1
  205. package/cjs/pagination/arrow.js +0 -3
  206. package/cjs/pagination/index.js +27 -58
  207. package/cjs/pagination/style/css/index.js +0 -1
  208. package/cjs/pagination/style/index.js +0 -1
  209. package/cjs/picker/index.js +48 -84
  210. package/cjs/picker/style/css/index.js +0 -3
  211. package/cjs/picker/style/index.js +0 -3
  212. package/cjs/picker-view/components/cascader.js +13 -32
  213. package/cjs/picker-view/components/multi-picker.js +8 -17
  214. package/cjs/picker-view/components/picker-cell.js +45 -101
  215. package/cjs/picker-view/index.js +30 -76
  216. package/cjs/picker-view/style/css/index.js +0 -1
  217. package/cjs/picker-view/style/index.js +0 -1
  218. package/cjs/popover/hooks/index.js +0 -4
  219. package/cjs/popover/hooks/useEvent.js +25 -49
  220. package/cjs/popover/hooks/usePosition.js +100 -159
  221. package/cjs/popover/index.js +1 -8
  222. package/cjs/popover/menu.js +32 -52
  223. package/cjs/popover/popover-inner.js +30 -48
  224. package/cjs/popover/popover.js +69 -101
  225. package/cjs/popover/style/css/index.js +0 -2
  226. package/cjs/popover/style/index.js +0 -2
  227. package/cjs/popup/index.js +22 -39
  228. package/cjs/popup/methods.js +0 -2
  229. package/cjs/popup/style/css/index.js +0 -2
  230. package/cjs/popup/style/index.js +0 -2
  231. package/cjs/popup-swiper/index.js +50 -92
  232. package/cjs/popup-swiper/methods.js +0 -2
  233. package/cjs/popup-swiper/style/css/index.js +0 -2
  234. package/cjs/popup-swiper/style/index.js +0 -2
  235. package/cjs/portal/index.js +3 -8
  236. package/cjs/portal/style/css/index.js +0 -1
  237. package/cjs/portal/style/index.js +0 -1
  238. package/cjs/progress/index.js +27 -44
  239. package/cjs/progress/style/css/index.js +0 -1
  240. package/cjs/progress/style/index.js +0 -1
  241. package/cjs/pull-refresh/android-pull-refresh.js +56 -95
  242. package/cjs/pull-refresh/hooks.js +11 -32
  243. package/cjs/pull-refresh/index.js +3 -14
  244. package/cjs/pull-refresh/ios-pull-refresh.js +53 -81
  245. package/cjs/pull-refresh/model.js +0 -1
  246. package/cjs/pull-refresh/style/css/index.js +0 -2
  247. package/cjs/pull-refresh/style/index.js +0 -2
  248. package/cjs/radio/group.js +20 -34
  249. package/cjs/radio/index.js +1 -8
  250. package/cjs/radio/radio.js +0 -10
  251. package/cjs/radio/style/css/index.js +0 -1
  252. package/cjs/radio/style/index.js +0 -1
  253. package/cjs/rate/index.js +28 -54
  254. package/cjs/rate/style/css/index.js +0 -1
  255. package/cjs/rate/style/index.js +0 -1
  256. package/cjs/search-bar/association.js +14 -32
  257. package/cjs/search-bar/cancel-button.js +8 -16
  258. package/cjs/search-bar/highlight.js +14 -25
  259. package/cjs/search-bar/index.js +77 -97
  260. package/cjs/search-bar/style/css/index.js +0 -1
  261. package/cjs/search-bar/style/index.js +0 -1
  262. package/cjs/show-monitor/index.js +40 -108
  263. package/cjs/show-monitor/style/css/index.js +0 -1
  264. package/cjs/show-monitor/style/index.js +0 -1
  265. package/cjs/skeleton/elements.js +47 -84
  266. package/cjs/skeleton/index.js +18 -36
  267. package/cjs/skeleton/skeleton-context.js +0 -4
  268. package/cjs/skeleton/style/css/index.js +0 -2
  269. package/cjs/skeleton/style/index.js +0 -2
  270. package/cjs/slider/hooks/index.js +0 -13
  271. package/cjs/slider/hooks/useSliderEvents.js +27 -59
  272. package/cjs/slider/hooks/useSliderIcon.js +6 -20
  273. package/cjs/slider/hooks/useSliderInit.js +32 -52
  274. package/cjs/slider/hooks/useSliderStyle.js +13 -27
  275. package/cjs/slider/index.js +47 -73
  276. package/cjs/slider/marks.js +13 -27
  277. package/cjs/slider/popover.js +4 -13
  278. package/cjs/slider/style/css/index.js +0 -2
  279. package/cjs/slider/style/index.js +0 -2
  280. package/cjs/slider/thumb.js +11 -22
  281. package/cjs/stepper/hooks/useButtonClick.js +15 -25
  282. package/cjs/stepper/hooks/useInputEvent.js +10 -19
  283. package/cjs/stepper/hooks/useValue.js +9 -15
  284. package/cjs/stepper/index.js +84 -98
  285. package/cjs/stepper/style/css/index.js +0 -1
  286. package/cjs/stepper/style/index.js +0 -1
  287. package/cjs/steps/index.js +25 -43
  288. package/cjs/steps/step.js +10 -27
  289. package/cjs/steps/style/css/index.js +0 -1
  290. package/cjs/steps/style/index.js +0 -1
  291. package/cjs/sticky/index.js +40 -74
  292. package/cjs/sticky/style/css/index.js +0 -1
  293. package/cjs/sticky/style/index.js +0 -1
  294. package/cjs/style.js +0 -59
  295. package/cjs/swipe-action/index.js +40 -92
  296. package/cjs/swipe-action/item.js +9 -17
  297. package/cjs/swipe-action/style/css/index.js +0 -1
  298. package/cjs/swipe-action/style/index.js +0 -1
  299. package/cjs/swipe-load/index.js +78 -113
  300. package/cjs/swipe-load/style/css/index.js +0 -1
  301. package/cjs/swipe-load/style/index.js +0 -1
  302. package/cjs/switch/index.js +28 -49
  303. package/cjs/switch/style/css/index.js +0 -1
  304. package/cjs/switch/style/index.js +0 -1
  305. package/cjs/tab-bar/index.js +0 -7
  306. package/cjs/tab-bar/item.js +6 -24
  307. package/cjs/tab-bar/style/css/index.js +0 -1
  308. package/cjs/tab-bar/style/index.js +0 -1
  309. package/cjs/tab-bar/tab-bar.js +16 -32
  310. package/cjs/tabs/index.js +136 -206
  311. package/cjs/tabs/style/css/index.js +0 -1
  312. package/cjs/tabs/style/index.js +0 -1
  313. package/cjs/tabs/tab-cell-underline.js +28 -76
  314. package/cjs/tabs/tab-cell.js +73 -128
  315. package/cjs/tabs/tab-pane.js +53 -103
  316. package/cjs/tag/index.js +1 -8
  317. package/cjs/tag/list.js +11 -26
  318. package/cjs/tag/style/css/index.js +0 -1
  319. package/cjs/tag/style/index.js +0 -1
  320. package/cjs/tag/tag.js +20 -32
  321. package/cjs/textarea/index.js +35 -56
  322. package/cjs/textarea/style/css/index.js +0 -2
  323. package/cjs/textarea/style/index.js +0 -2
  324. package/cjs/toast/index.js +26 -61
  325. package/cjs/toast/methods.js +2 -16
  326. package/cjs/toast/style/css/index.js +0 -3
  327. package/cjs/toast/style/index.js +0 -3
  328. package/cjs/transition/index.js +17 -29
  329. package/cjs/transition/style/css/index.js +0 -1
  330. package/cjs/transition/style/index.js +0 -1
  331. package/cjs/uploader/index.d.ts +1 -1
  332. package/cjs/uploader/index.js +28 -49
  333. package/cjs/uploader/style/css/index.js +0 -3
  334. package/cjs/uploader/style/index.js +0 -3
  335. package/cjs/uploader/upload/index.js +0 -4
  336. package/cjs/uploader/upload/upload.js +9 -45
  337. package/dist/index.js +3838 -6455
  338. package/dist/index.min.js +2 -2
  339. package/esm/_helpers/hooks.js +59 -123
  340. package/esm/_helpers/index.js +4 -6
  341. package/esm/_helpers/react-dom.js +0 -11
  342. package/esm/_helpers/render.js +5 -15
  343. package/esm/action-sheet/index.js +10 -16
  344. package/esm/avatar/group.js +12 -16
  345. package/esm/avatar/index.js +53 -64
  346. package/esm/badge/index.js +18 -22
  347. package/esm/button/hooks.js +15 -18
  348. package/esm/button/index.js +46 -57
  349. package/esm/carousel/index.js +153 -280
  350. package/esm/cell/cell.js +18 -25
  351. package/esm/cell/group.js +9 -11
  352. package/esm/cell/index.js +1 -1
  353. package/esm/checkbox/checkbox.js +31 -42
  354. package/esm/checkbox/group.js +24 -28
  355. package/esm/checkbox/hooks/useMergeProps.js +7 -9
  356. package/esm/checkbox/index.js +2 -2
  357. package/esm/checkbox/type.js +0 -1
  358. package/esm/circle-progress/index.js +37 -49
  359. package/esm/collapse/collapse.js +30 -51
  360. package/esm/collapse/group.js +20 -34
  361. package/esm/collapse/index.js +1 -1
  362. package/esm/collapse/utils.js +0 -1
  363. package/esm/context-provider/index.js +18 -33
  364. package/esm/count-down/hooks.js +24 -37
  365. package/esm/count-down/index.js +30 -29
  366. package/esm/count-down/singleton.js +2 -5
  367. package/esm/count-down/util.js +33 -42
  368. package/esm/date-picker/helper.js +7 -9
  369. package/esm/date-picker/index.js +66 -155
  370. package/esm/dialog/index.js +31 -42
  371. package/esm/dialog/methods.js +9 -11
  372. package/esm/divider/index.js +8 -12
  373. package/esm/dropdown/dropdown.js +74 -102
  374. package/esm/dropdown/index.js +1 -1
  375. package/esm/dropdown/options.js +12 -20
  376. package/esm/dropdown-menu/dropdown-menu.js +49 -74
  377. package/esm/dropdown-menu/helper.js +4 -14
  378. package/esm/dropdown-menu/index.js +1 -1
  379. package/esm/ellipsis/components/js-ellipsis.js +32 -60
  380. package/esm/ellipsis/components/native-ellipsis.js +9 -11
  381. package/esm/ellipsis/index.js +20 -21
  382. package/esm/ellipsis/utils/dom.js +0 -7
  383. package/esm/ellipsis/utils/is.js +1 -1
  384. package/esm/form/form-item.js +74 -147
  385. package/esm/form/index.js +18 -23
  386. package/esm/form/linked-container.js +5 -14
  387. package/esm/form/type.d.ts +11 -1
  388. package/esm/form/type.js +0 -5
  389. package/esm/form/useForm.js +10 -74
  390. package/esm/form/utils.js +4 -11
  391. package/esm/grid/index.js +22 -38
  392. package/esm/icon/IconAdd/index.js +5 -6
  393. package/esm/icon/IconArrowBack/index.js +5 -6
  394. package/esm/icon/IconArrowDown/index.js +5 -6
  395. package/esm/icon/IconArrowIn/index.js +5 -6
  396. package/esm/icon/IconArrowUp/index.js +5 -6
  397. package/esm/icon/IconCheck/index.js +5 -6
  398. package/esm/icon/IconCheckBold/index.js +5 -6
  399. package/esm/icon/IconCircleChecked/index.js +5 -6
  400. package/esm/icon/IconCircleDisabled/index.js +5 -6
  401. package/esm/icon/IconCircleUnchecked/index.js +5 -6
  402. package/esm/icon/IconClear/index.js +5 -6
  403. package/esm/icon/IconClose/index.js +5 -6
  404. package/esm/icon/IconCloseBold/index.js +5 -6
  405. package/esm/icon/IconDelete/index.js +5 -6
  406. package/esm/icon/IconDownload/index.js +5 -6
  407. package/esm/icon/IconEdit/index.js +5 -6
  408. package/esm/icon/IconErrorCircle/index.js +5 -6
  409. package/esm/icon/IconEyeInvisible/index.js +5 -6
  410. package/esm/icon/IconEyeVisible/index.js +5 -6
  411. package/esm/icon/IconEyelashInvisible/index.js +5 -6
  412. package/esm/icon/IconFile/index.js +5 -6
  413. package/esm/icon/IconGift/index.js +5 -6
  414. package/esm/icon/IconHeart/index.js +5 -6
  415. package/esm/icon/IconHome/index.js +5 -6
  416. package/esm/icon/IconKeyboard/index.js +5 -6
  417. package/esm/icon/IconKeyboardDelete/index.js +5 -6
  418. package/esm/icon/IconLikeCircle/index.js +5 -6
  419. package/esm/icon/IconMinus/index.js +5 -6
  420. package/esm/icon/IconMore/index.js +5 -6
  421. package/esm/icon/IconNotice/index.js +5 -6
  422. package/esm/icon/IconNoticeOff/index.js +5 -6
  423. package/esm/icon/IconPicture/index.js +5 -6
  424. package/esm/icon/IconPlay/index.js +5 -6
  425. package/esm/icon/IconQuestionCircle/index.js +5 -6
  426. package/esm/icon/IconRefresh/index.js +5 -6
  427. package/esm/icon/IconSad/index.js +5 -6
  428. package/esm/icon/IconScan/index.js +5 -6
  429. package/esm/icon/IconSearch/index.js +5 -6
  430. package/esm/icon/IconSetting/index.js +5 -6
  431. package/esm/icon/IconShop/index.js +5 -6
  432. package/esm/icon/IconShopping/index.js +5 -6
  433. package/esm/icon/IconSmileFill/index.js +5 -6
  434. package/esm/icon/IconSound/index.js +5 -6
  435. package/esm/icon/IconSquareChecked/index.js +5 -6
  436. package/esm/icon/IconSquareDisabled/index.js +5 -6
  437. package/esm/icon/IconSquareUnchecked/index.js +5 -6
  438. package/esm/icon/IconStar/index.js +5 -6
  439. package/esm/icon/IconStarFill/index.js +5 -6
  440. package/esm/icon/IconStarHalf/index.js +5 -6
  441. package/esm/icon/IconSubway/index.js +5 -6
  442. package/esm/icon/IconSuccessCircle/index.js +5 -6
  443. package/esm/icon/IconTriDown/index.js +5 -6
  444. package/esm/icon/IconTriUp/index.js +5 -6
  445. package/esm/icon/IconUpload/index.js +5 -6
  446. package/esm/icon/IconUser/index.js +5 -6
  447. package/esm/icon/IconUserFill/index.js +5 -6
  448. package/esm/icon/IconWarnCircle/index.js +5 -6
  449. package/esm/icon/IconWarnCircleFill/index.js +5 -6
  450. package/esm/image/index.js +53 -85
  451. package/esm/image-picker/index.js +32 -42
  452. package/esm/image-preview/index.js +129 -232
  453. package/esm/image-preview/methods.js +5 -14
  454. package/esm/index-bar/group.js +16 -25
  455. package/esm/index-bar/index.js +55 -74
  456. package/esm/index-bar/side-bar.js +15 -28
  457. package/esm/index-bar/utils.js +3 -10
  458. package/esm/input/hooks.js +45 -75
  459. package/esm/input/index.js +26 -30
  460. package/esm/keyboard/index.js +40 -63
  461. package/esm/load-more/index.js +33 -57
  462. package/esm/loading/index.js +19 -40
  463. package/esm/masking/index.js +47 -65
  464. package/esm/masking/methods.js +5 -16
  465. package/esm/nav-bar/back-icon.js +2 -4
  466. package/esm/nav-bar/index.js +37 -52
  467. package/esm/notice-bar/index.js +34 -53
  468. package/esm/notify/index.js +20 -33
  469. package/esm/notify/methods.js +2 -13
  470. package/esm/pagination/index.js +27 -50
  471. package/esm/picker/index.js +48 -69
  472. package/esm/picker-view/components/cascader.js +13 -24
  473. package/esm/picker-view/components/multi-picker.js +8 -14
  474. package/esm/picker-view/components/picker-cell.js +45 -93
  475. package/esm/picker-view/index.js +30 -60
  476. package/esm/popover/hooks/useEvent.js +26 -41
  477. package/esm/popover/hooks/usePosition.js +100 -152
  478. package/esm/popover/index.js +2 -2
  479. package/esm/popover/menu.js +32 -41
  480. package/esm/popover/popover-inner.js +30 -39
  481. package/esm/popover/popover.js +69 -90
  482. package/esm/popup/index.js +22 -25
  483. package/esm/popup-swiper/index.js +50 -76
  484. package/esm/portal/index.js +3 -5
  485. package/esm/progress/index.js +27 -36
  486. package/esm/pull-refresh/android-pull-refresh.js +56 -83
  487. package/esm/pull-refresh/hooks.js +11 -23
  488. package/esm/pull-refresh/index.js +3 -5
  489. package/esm/pull-refresh/ios-pull-refresh.js +53 -68
  490. package/esm/pull-refresh/model.js +0 -1
  491. package/esm/radio/group.js +20 -24
  492. package/esm/radio/index.js +2 -2
  493. package/esm/rate/index.js +28 -43
  494. package/esm/search-bar/association.js +14 -27
  495. package/esm/search-bar/cancel-button.js +8 -11
  496. package/esm/search-bar/highlight.js +14 -20
  497. package/esm/search-bar/index.js +77 -86
  498. package/esm/show-monitor/index.js +40 -100
  499. package/esm/skeleton/elements.js +47 -75
  500. package/esm/skeleton/index.js +18 -24
  501. package/esm/slider/hooks/useSliderEvents.js +27 -54
  502. package/esm/slider/hooks/useSliderIcon.js +6 -13
  503. package/esm/slider/hooks/useSliderInit.js +32 -46
  504. package/esm/slider/hooks/useSliderStyle.js +13 -22
  505. package/esm/slider/index.js +47 -63
  506. package/esm/slider/marks.js +13 -19
  507. package/esm/slider/popover.js +4 -6
  508. package/esm/slider/thumb.js +11 -16
  509. package/esm/stepper/hooks/useButtonClick.js +15 -24
  510. package/esm/stepper/hooks/useInputEvent.js +10 -17
  511. package/esm/stepper/hooks/useValue.js +9 -12
  512. package/esm/stepper/index.js +84 -84
  513. package/esm/steps/index.js +25 -30
  514. package/esm/steps/step.js +10 -19
  515. package/esm/sticky/index.js +40 -65
  516. package/esm/swipe-action/index.js +40 -80
  517. package/esm/swipe-action/item.js +9 -12
  518. package/esm/swipe-load/index.js +79 -104
  519. package/esm/switch/index.js +28 -41
  520. package/esm/tab-bar/index.js +0 -1
  521. package/esm/tab-bar/item.js +6 -13
  522. package/esm/tab-bar/tab-bar.js +16 -22
  523. package/esm/tabs/index.js +137 -194
  524. package/esm/tabs/tab-cell-underline.js +28 -67
  525. package/esm/tabs/tab-cell.js +73 -118
  526. package/esm/tabs/tab-pane.js +53 -95
  527. package/esm/tag/index.js +2 -2
  528. package/esm/tag/list.js +11 -16
  529. package/esm/tag/tag.js +20 -22
  530. package/esm/textarea/index.js +35 -46
  531. package/esm/toast/index.js +26 -42
  532. package/esm/toast/methods.js +2 -12
  533. package/esm/transition/index.js +17 -20
  534. package/esm/uploader/index.d.ts +1 -1
  535. package/esm/uploader/index.js +28 -34
  536. package/esm/uploader/upload/upload.js +9 -38
  537. package/esnext/form/form-item.js +12 -7
  538. package/esnext/form/type.d.ts +11 -1
  539. package/esnext/uploader/index.d.ts +1 -1
  540. package/esnext/uploader/index.js +1 -1
  541. package/esnext/uploader/upload/upload.js +1 -1
  542. package/package.json +5 -3
  543. package/tokens/app/arcodesign/default/index.js +0 -2
  544. package/umd/_helpers/hooks.js +59 -138
  545. package/umd/_helpers/index.js +2 -9
  546. package/umd/_helpers/react-dom.js +0 -13
  547. package/umd/_helpers/render.js +5 -17
  548. package/umd/action-sheet/index.js +10 -22
  549. package/umd/action-sheet/methods.js +0 -1
  550. package/umd/avatar/group.js +12 -20
  551. package/umd/avatar/index.js +53 -70
  552. package/umd/badge/index.js +18 -25
  553. package/umd/button/hooks.js +15 -19
  554. package/umd/button/index.js +46 -60
  555. package/umd/carousel/index.js +153 -283
  556. package/umd/cell/arrow.js +0 -2
  557. package/umd/cell/cell.js +18 -29
  558. package/umd/cell/group.js +9 -17
  559. package/umd/cell/index.js +1 -2
  560. package/umd/checkbox/checkbox.js +31 -45
  561. package/umd/checkbox/group.js +24 -34
  562. package/umd/checkbox/hooks/useMergeProps.js +7 -12
  563. package/umd/checkbox/index.js +1 -3
  564. package/umd/checkbox/type.js +0 -2
  565. package/umd/circle-progress/index.js +37 -52
  566. package/umd/collapse/collapse.js +30 -55
  567. package/umd/collapse/group.js +20 -38
  568. package/umd/collapse/index.js +0 -3
  569. package/umd/collapse/utils.js +0 -5
  570. package/umd/context-provider/index.js +18 -38
  571. package/umd/count-down/hooks.js +24 -39
  572. package/umd/count-down/index.js +29 -31
  573. package/umd/count-down/singleton.js +2 -10
  574. package/umd/count-down/util.js +33 -47
  575. package/umd/date-picker/helper.js +7 -13
  576. package/umd/date-picker/index.js +66 -158
  577. package/umd/dialog/index.js +31 -47
  578. package/umd/dialog/methods.js +9 -18
  579. package/umd/divider/index.js +8 -15
  580. package/umd/dropdown/dropdown.js +74 -106
  581. package/umd/dropdown/index.js +1 -3
  582. package/umd/dropdown/options.js +12 -24
  583. package/umd/dropdown-menu/dropdown-menu.js +49 -78
  584. package/umd/dropdown-menu/helper.js +4 -22
  585. package/umd/dropdown-menu/index.js +0 -2
  586. package/umd/ellipsis/components/js-ellipsis.js +32 -66
  587. package/umd/ellipsis/components/native-ellipsis.js +9 -12
  588. package/umd/ellipsis/index.js +19 -24
  589. package/umd/ellipsis/utils/dom.js +0 -8
  590. package/umd/ellipsis/utils/is.js +1 -5
  591. package/umd/form/form-item-context.js +0 -3
  592. package/umd/form/form-item.js +74 -151
  593. package/umd/form/index.js +18 -28
  594. package/umd/form/linked-container.js +5 -19
  595. package/umd/form/type.d.ts +11 -1
  596. package/umd/form/type.js +0 -5
  597. package/umd/form/useForm.js +10 -74
  598. package/umd/form/utils.js +4 -19
  599. package/umd/grid/index.js +22 -41
  600. package/umd/icon/IconAdd/index.js +5 -7
  601. package/umd/icon/IconArrowBack/index.js +5 -7
  602. package/umd/icon/IconArrowDown/index.js +5 -7
  603. package/umd/icon/IconArrowIn/index.js +5 -7
  604. package/umd/icon/IconArrowUp/index.js +5 -7
  605. package/umd/icon/IconCheck/index.js +5 -7
  606. package/umd/icon/IconCheckBold/index.js +5 -7
  607. package/umd/icon/IconCircleChecked/index.js +5 -7
  608. package/umd/icon/IconCircleDisabled/index.js +5 -7
  609. package/umd/icon/IconCircleUnchecked/index.js +5 -7
  610. package/umd/icon/IconClear/index.js +5 -7
  611. package/umd/icon/IconClose/index.js +5 -7
  612. package/umd/icon/IconCloseBold/index.js +5 -7
  613. package/umd/icon/IconDelete/index.js +5 -7
  614. package/umd/icon/IconDownload/index.js +5 -7
  615. package/umd/icon/IconEdit/index.js +5 -7
  616. package/umd/icon/IconErrorCircle/index.js +5 -7
  617. package/umd/icon/IconEyeInvisible/index.js +5 -7
  618. package/umd/icon/IconEyeVisible/index.js +5 -7
  619. package/umd/icon/IconEyelashInvisible/index.js +5 -7
  620. package/umd/icon/IconFile/index.js +5 -7
  621. package/umd/icon/IconGift/index.js +5 -7
  622. package/umd/icon/IconHeart/index.js +5 -7
  623. package/umd/icon/IconHome/index.js +5 -7
  624. package/umd/icon/IconKeyboard/index.js +5 -7
  625. package/umd/icon/IconKeyboardDelete/index.js +5 -7
  626. package/umd/icon/IconLikeCircle/index.js +5 -7
  627. package/umd/icon/IconMinus/index.js +5 -7
  628. package/umd/icon/IconMore/index.js +5 -7
  629. package/umd/icon/IconNotice/index.js +5 -7
  630. package/umd/icon/IconNoticeOff/index.js +5 -7
  631. package/umd/icon/IconPicture/index.js +5 -7
  632. package/umd/icon/IconPlay/index.js +5 -7
  633. package/umd/icon/IconQuestionCircle/index.js +5 -7
  634. package/umd/icon/IconRefresh/index.js +5 -7
  635. package/umd/icon/IconSad/index.js +5 -7
  636. package/umd/icon/IconScan/index.js +5 -7
  637. package/umd/icon/IconSearch/index.js +5 -7
  638. package/umd/icon/IconSetting/index.js +5 -7
  639. package/umd/icon/IconShop/index.js +5 -7
  640. package/umd/icon/IconShopping/index.js +5 -7
  641. package/umd/icon/IconSmileFill/index.js +5 -7
  642. package/umd/icon/IconSound/index.js +5 -7
  643. package/umd/icon/IconSquareChecked/index.js +5 -7
  644. package/umd/icon/IconSquareDisabled/index.js +5 -7
  645. package/umd/icon/IconSquareUnchecked/index.js +5 -7
  646. package/umd/icon/IconStar/index.js +5 -7
  647. package/umd/icon/IconStarFill/index.js +5 -7
  648. package/umd/icon/IconStarHalf/index.js +5 -7
  649. package/umd/icon/IconSubway/index.js +5 -7
  650. package/umd/icon/IconSuccessCircle/index.js +5 -7
  651. package/umd/icon/IconTriDown/index.js +5 -7
  652. package/umd/icon/IconTriUp/index.js +5 -7
  653. package/umd/icon/IconUpload/index.js +5 -7
  654. package/umd/icon/IconUser/index.js +5 -7
  655. package/umd/icon/IconUserFill/index.js +5 -7
  656. package/umd/icon/IconWarnCircle/index.js +5 -7
  657. package/umd/icon/IconWarnCircleFill/index.js +5 -7
  658. package/umd/icon/index.js +0 -1
  659. package/umd/image/index.js +53 -88
  660. package/umd/image-picker/add-icon.js +0 -2
  661. package/umd/image-picker/index.js +32 -47
  662. package/umd/image-preview/index.js +129 -239
  663. package/umd/image-preview/methods.js +5 -15
  664. package/umd/index-bar/group.js +16 -30
  665. package/umd/index-bar/index.js +55 -79
  666. package/umd/index-bar/side-bar.js +15 -32
  667. package/umd/index-bar/utils.js +3 -16
  668. package/umd/index.js +0 -1
  669. package/umd/input/hooks.js +45 -79
  670. package/umd/input/index.js +26 -35
  671. package/umd/keyboard/index.js +37 -64
  672. package/umd/load-more/index.js +33 -60
  673. package/umd/loading/index.js +19 -43
  674. package/umd/masking/index.js +47 -72
  675. package/umd/masking/methods.js +5 -18
  676. package/umd/nav-bar/back-icon.js +2 -5
  677. package/umd/nav-bar/index.js +37 -55
  678. package/umd/notice-bar/index.js +34 -56
  679. package/umd/notify/index.js +20 -40
  680. package/umd/notify/methods.js +2 -14
  681. package/umd/pagination/arrow.js +0 -2
  682. package/umd/pagination/index.js +27 -53
  683. package/umd/picker/index.js +48 -73
  684. package/umd/picker-view/components/cascader.js +13 -28
  685. package/umd/picker-view/components/multi-picker.js +8 -16
  686. package/umd/picker-view/components/picker-cell.js +45 -97
  687. package/umd/picker-view/index.js +30 -63
  688. package/umd/popover/hooks/useEvent.js +25 -44
  689. package/umd/popover/hooks/usePosition.js +100 -153
  690. package/umd/popover/index.js +1 -3
  691. package/umd/popover/menu.js +32 -45
  692. package/umd/popover/popover-inner.js +30 -43
  693. package/umd/popover/popover.js +69 -94
  694. package/umd/popup/index.js +22 -31
  695. package/umd/popup/methods.js +0 -1
  696. package/umd/popup-swiper/index.js +50 -83
  697. package/umd/popup-swiper/methods.js +0 -1
  698. package/umd/portal/index.js +3 -6
  699. package/umd/progress/index.js +27 -39
  700. package/umd/pull-refresh/android-pull-refresh.js +56 -86
  701. package/umd/pull-refresh/hooks.js +11 -29
  702. package/umd/pull-refresh/index.js +3 -7
  703. package/umd/pull-refresh/ios-pull-refresh.js +53 -72
  704. package/umd/pull-refresh/model.js +0 -1
  705. package/umd/radio/group.js +20 -30
  706. package/umd/radio/index.js +1 -3
  707. package/umd/radio/radio.js +0 -5
  708. package/umd/rate/index.js +28 -48
  709. package/umd/search-bar/association.js +14 -29
  710. package/umd/search-bar/cancel-button.js +8 -14
  711. package/umd/search-bar/highlight.js +14 -21
  712. package/umd/search-bar/index.js +77 -87
  713. package/umd/show-monitor/index.js +40 -104
  714. package/umd/skeleton/elements.js +47 -78
  715. package/umd/skeleton/index.js +18 -28
  716. package/umd/skeleton/skeleton-context.js +0 -3
  717. package/umd/slider/hooks/index.js +0 -4
  718. package/umd/slider/hooks/useSliderEvents.js +27 -55
  719. package/umd/slider/hooks/useSliderIcon.js +6 -17
  720. package/umd/slider/hooks/useSliderInit.js +32 -50
  721. package/umd/slider/hooks/useSliderStyle.js +13 -24
  722. package/umd/slider/index.js +47 -66
  723. package/umd/slider/marks.js +13 -22
  724. package/umd/slider/popover.js +4 -10
  725. package/umd/slider/thumb.js +11 -18
  726. package/umd/stepper/hooks/useButtonClick.js +15 -24
  727. package/umd/stepper/hooks/useInputEvent.js +10 -18
  728. package/umd/stepper/hooks/useValue.js +9 -13
  729. package/umd/stepper/index.js +84 -89
  730. package/umd/steps/index.js +25 -35
  731. package/umd/steps/step.js +10 -22
  732. package/umd/sticky/index.js +40 -68
  733. package/umd/style.js +1 -1
  734. package/umd/swipe-action/index.js +40 -84
  735. package/umd/swipe-action/item.js +9 -14
  736. package/umd/swipe-load/index.js +78 -106
  737. package/umd/switch/index.js +28 -45
  738. package/umd/tab-bar/index.js +0 -2
  739. package/umd/tab-bar/item.js +6 -19
  740. package/umd/tab-bar/tab-bar.js +16 -27
  741. package/umd/tabs/index.js +136 -197
  742. package/umd/tabs/tab-cell-underline.js +28 -71
  743. package/umd/tabs/tab-cell.js +73 -122
  744. package/umd/tabs/tab-pane.js +53 -98
  745. package/umd/tag/index.js +1 -3
  746. package/umd/tag/list.js +11 -20
  747. package/umd/tag/tag.js +20 -26
  748. package/umd/textarea/index.js +35 -51
  749. package/umd/toast/index.js +26 -49
  750. package/umd/toast/methods.js +2 -13
  751. package/umd/transition/index.js +16 -22
  752. package/umd/uploader/index.d.ts +1 -1
  753. package/umd/uploader/index.js +28 -39
  754. package/umd/uploader/upload/upload.js +9 -43
@@ -4,43 +4,37 @@ import { cls } from '@arco-design/mobile-utils';
4
4
  import { getStyleWithVendor, useMountedState, useRefState } from '../../_helpers';
5
5
  var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
6
6
  var prefixCls = props.prefixCls,
7
- style = props.style,
8
- data = props.data,
9
- clickable = props.clickable,
10
- itemHeight = props.itemHeight,
11
- wrapperHeight = props.wrapperHeight,
12
- selectedValue = props.selectedValue,
13
- onValueChange = props.onValueChange,
14
- disabled = props.disabled,
15
- hideEmptyCols = props.hideEmptyCols,
16
- _props$rows = props.rows,
17
- rows = _props$rows === void 0 ? 5 : _props$rows,
18
- _props$touchToStop = props.touchToStop,
19
- touchToStop = _props$touchToStop === void 0 ? false : _props$touchToStop;
20
-
7
+ style = props.style,
8
+ data = props.data,
9
+ clickable = props.clickable,
10
+ itemHeight = props.itemHeight,
11
+ wrapperHeight = props.wrapperHeight,
12
+ selectedValue = props.selectedValue,
13
+ onValueChange = props.onValueChange,
14
+ disabled = props.disabled,
15
+ hideEmptyCols = props.hideEmptyCols,
16
+ _props$rows = props.rows,
17
+ rows = _props$rows === void 0 ? 5 : _props$rows,
18
+ _props$touchToStop = props.touchToStop,
19
+ touchToStop = _props$touchToStop === void 0 ? false : _props$touchToStop;
21
20
  var _useMountedState = useMountedState(''),
22
- transitionDuration = _useMountedState[0],
23
- setTransitionDuration = _useMountedState[1];
24
-
21
+ transitionDuration = _useMountedState[0],
22
+ setTransitionDuration = _useMountedState[1];
25
23
  var _useState = useState(''),
26
- bezier = _useState[0],
27
- setBezier = _useState[1];
28
-
24
+ bezier = _useState[0],
25
+ setBezier = _useState[1];
29
26
  var _useMountedState2 = useMountedState(0),
30
- currentIndex = _useMountedState2[0],
31
- setCurrentIndex = _useMountedState2[1];
32
-
27
+ currentIndex = _useMountedState2[0],
28
+ setCurrentIndex = _useMountedState2[1];
33
29
  var _useMountedState3 = useMountedState(selectedValue),
34
- currentValue = _useMountedState3[0],
35
- setCurrentValue = _useMountedState3[1]; // 是否开始touch
30
+ currentValue = _useMountedState3[0],
31
+ setCurrentValue = _useMountedState3[1];
32
+ // 是否开始touch
36
33
  // @en whether to start touch
37
-
38
-
39
34
  var _useRefState = useRefState(0),
40
- transformY = _useRefState[0],
41
- transformYRef = _useRefState[1],
42
- setTransformY = _useRefState[2];
43
-
35
+ transformY = _useRefState[0],
36
+ transformYRef = _useRefState[1],
37
+ setTransformY = _useRefState[2];
44
38
  var lastTransformYRef = useRef(0);
45
39
  var touchStartTimeRef = useRef(0);
46
40
  var latestCallbackTimer = useRef(0);
@@ -66,7 +60,6 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
66
60
  paddingTop: (rowCount - 1) / 2 * itemHeight + "px"
67
61
  }));
68
62
  }, [transitionDuration, transformY, bezier, itemHeight, rowCount]);
69
-
70
63
  function _scrollingComplete(nowItemIndex) {
71
64
  // index有改变时再抛出
72
65
  // @en Throws again when index changes
@@ -74,34 +67,28 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
74
67
  setCurrentIndex(Math.max(nowItemIndex, 0));
75
68
  var newData = data[nowItemIndex];
76
69
  var newValue = newData == null ? void 0 : newData.value;
77
-
78
70
  if (newValue !== currentValue) {
79
71
  setCurrentValue(newValue);
80
-
81
72
  if (onValueChange) {
82
73
  onValueChange(newValue, newData);
83
74
  }
84
75
  }
85
76
  }
86
77
  }
87
-
88
78
  function _scrollTo(transY, transDuration, callback) {
89
79
  if (transDuration === void 0) {
90
80
  transDuration = 0;
91
81
  }
92
-
93
82
  if (callback === void 0) {
94
83
  callback = function callback() {};
95
84
  }
96
-
97
85
  setTransitionDuration(transDuration ? transDuration + "ms" : '');
98
- setTransformY(transY); // 处理连续滑动的情况:如果上一次callback还未执行,先cancel掉上一次回调
86
+ setTransformY(transY);
87
+ // 处理连续滑动的情况:如果上一次callback还未执行,先cancel掉上一次回调
99
88
  // @en handle the case of continuous sliding: If the last callback has not been executed, cancel the last callback first
100
-
101
89
  if (latestCallbackTimer.current) {
102
90
  clearTimeout(latestCallbackTimer.current);
103
91
  }
104
-
105
92
  var setNormalStatus = function setNormalStatus() {
106
93
  // 如果timer顺利执行,则在unmount时不再重复执行
107
94
  // @en If the timer is successfully executed, it will not be repeated when unmounting
@@ -110,38 +97,30 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
110
97
  setTransitionDuration('');
111
98
  callback();
112
99
  };
113
-
114
100
  unmountCallbackRef.current = setNormalStatus;
115
101
  latestCallbackTimer.current = window.setTimeout(setNormalStatus, transDuration);
116
102
  }
117
-
118
103
  function _scrollToIndex(itemIndex, transDuration, callback) {
119
104
  if (transDuration === void 0) {
120
105
  transDuration = 0;
121
106
  }
122
-
123
107
  if (callback === void 0) {
124
108
  callback = function callback() {};
125
109
  }
126
-
127
110
  _scrollTo(-1 * itemIndex * itemHeight, transDuration, callback);
128
111
  }
129
-
130
112
  function _scrollToIndexWithChange(itemIndex, transDuration) {
131
113
  if (transDuration === void 0) {
132
114
  transDuration = 0;
133
115
  }
134
-
135
116
  _scrollToIndex(itemIndex, transDuration, function () {
136
117
  _scrollingComplete(itemIndex);
137
118
  });
138
119
  }
139
-
140
120
  var _handleColumnTouchStart = useCallback(function (e) {
141
121
  if (disabled) {
142
122
  return;
143
123
  }
144
-
145
124
  isTouchMoveRef.current = false;
146
125
  movingStatusRef.current = 'moving';
147
126
  var x = e.touches[0].screenX;
@@ -153,44 +132,38 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
153
132
  touchStartYRef.current = y;
154
133
  lastTransformYRef.current = transformYRef.current;
155
134
  }, [disabled]);
156
-
157
135
  var _handleColumnTouchMove = useCallback(function (e) {
158
136
  if (disabled || !touchingRef.current) {
159
137
  return;
160
138
  }
161
-
162
139
  isTouchMoveRef.current = true;
163
140
  var lastTransformY = lastTransformYRef.current;
164
141
  var touchMoveX = e.touches[0].screenX;
165
142
  var touchMoveY = e.touches[0].screenY;
166
143
  var distanceX = touchMoveX - touchStartXRef.current;
167
144
  var distance = touchMoveY - touchStartYRef.current;
168
-
169
145
  if (touchingXRef.current === null) {
170
146
  touchingXRef.current = Math.abs(distanceX) > Math.abs(distance);
171
147
  }
172
-
173
148
  if (touchingXRef.current) {
174
149
  return;
175
150
  }
176
-
177
151
  e.cancelable && e.preventDefault();
178
152
  var newPos = lastTransformY + distance;
179
- var maxPos = -1 * (data.length - 1) * itemHeight; // 当滚动到上边界或下边界时增加阻尼效果
153
+ var maxPos = -1 * (data.length - 1) * itemHeight;
154
+ // 当滚动到上边界或下边界时增加阻尼效果
180
155
  // @en Add damping effect when scrolling to the upper or lower border
181
-
182
156
  setTransformY(lastTransformY >= 0 && distance > 0 || lastTransformY <= maxPos && distance < 0 ? lastTransformY + distance / 4 : newPos);
183
157
  }, [data.length, disabled, itemHeight]);
184
-
185
158
  function _handleScrollEnd() {
186
159
  var maxIndex = data.length - 1;
187
- var nowIndex = Math.max(0, Math.min(maxIndex, Math.round(-1 * transformY / itemHeight))); // 滚动(包括加动量的滚动)完成之后定位到最近的一个index上
160
+ var nowIndex = Math.max(0, Math.min(maxIndex, Math.round(-1 * transformY / itemHeight)));
161
+ // 滚动(包括加动量的滚动)完成之后定位到最近的一个index上
188
162
  // @en After scrolling (including scrolling with momentum) is completed, it is positioned on the nearest index
189
-
190
163
  _scrollToIndexWithChange(nowIndex, 200);
191
- } // Reference: https://juejin.im/post/6844904185121488910
192
-
164
+ }
193
165
 
166
+ // Reference: https://juejin.im/post/6844904185121488910
194
167
  function momentum(current, start, duration, minY, maxY) {
195
168
  var durationMap = {
196
169
  noBounce: 400,
@@ -202,24 +175,23 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
202
175
  weekBounce: 'cubic-bezier(.25, .46, .45, .94)',
203
176
  strongBounce: 'cubic-bezier(.25, .46, .45, .94)'
204
177
  };
205
- var type = 'noBounce'; // 惯性滑动加速度
178
+ var type = 'noBounce';
179
+ // 惯性滑动加速度
206
180
  // @en inertial sliding acceleration
207
-
208
- var deceleration = 0.003; // 回弹阻力
181
+ var deceleration = 0.003;
182
+ // 回弹阻力
209
183
  // @en rebound resistance
210
-
211
- var bounceRate = 5; // 强弱回弹的分割值
184
+ var bounceRate = 5;
185
+ // 强弱回弹的分割值
212
186
  // @en Split value of strong and weak rebound
213
-
214
- var bounceThreshold = 300; // 回弹的最大限度
187
+ var bounceThreshold = 300;
188
+ // 回弹的最大限度
215
189
  // @en maximum rebound
216
-
217
190
  var maxOverflowY = wrapperHeight / 6;
218
191
  var overflowY;
219
192
  var distance = current - start;
220
193
  var speed = 2 * Math.abs(distance) / duration;
221
194
  var destination = current + speed / deceleration * (distance < 0 ? -1 : 1);
222
-
223
195
  if (destination < minY) {
224
196
  overflowY = minY - destination;
225
197
  type = overflowY > bounceThreshold ? 'strongBounce' : 'weekBounce';
@@ -229,37 +201,31 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
229
201
  type = overflowY > bounceThreshold ? 'strongBounce' : 'weekBounce';
230
202
  destination = Math.min(maxY + maxOverflowY, maxY + overflowY / bounceRate);
231
203
  }
232
-
233
204
  return {
234
205
  destination: destination,
235
206
  duration: durationMap[type],
236
207
  bezier: bezierMap[type]
237
208
  };
238
209
  }
239
-
240
210
  function _handleColumnTouchEnd() {
241
211
  _clearTimer();
242
-
243
212
  movingStatusRef.current = 'normal';
244
213
  var lastTransformY = lastTransformYRef.current;
245
-
246
214
  if (!isTouchMoveRef.current || transformY === lastTransformY) {
247
215
  return;
248
216
  }
249
-
250
217
  touchingRef.current = false;
251
218
  var endTime = Date.now();
252
219
  var scrollerHeight = (data.length + rowCount - 1) * itemHeight;
253
220
  var duration = endTime - touchStartTimeRef.current;
254
- var absDistY = Math.abs(transformY - lastTransformY); // 计算动量,保证滚动顺畅,条件:手势时间小于300ms && 移动距离绝对值大于30时
221
+ var absDistY = Math.abs(transformY - lastTransformY);
222
+ // 计算动量,保证滚动顺畅,条件:手势时间小于300ms && 移动距离绝对值大于30时
255
223
  // @en Calculate the momentum to ensure smooth scrolling, condition: the gesture time is less than 300ms && the absolute value of the moving distance is greater than 30
256
-
257
224
  if (duration < 300 && absDistY > 90) {
258
225
  var momentumY = momentum(transformY, lastTransformY, duration, wrapperHeight - scrollerHeight, 0);
259
226
  var newItemIndex = Math.max(0, Math.min(data.length - 1, Math.round(-1 * momentumY.destination / itemHeight)));
260
227
  setBezier(momentumY.bezier);
261
228
  movingStatusRef.current = 'scrolling';
262
-
263
229
  _scrollToIndex(newItemIndex, momentumY.duration, function () {
264
230
  _scrollingComplete(newItemIndex);
265
231
  });
@@ -267,42 +233,34 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
267
233
  _handleScrollEnd();
268
234
  }
269
235
  }
270
-
271
236
  function scrollToCurrentIndex() {
272
237
  if (!wrapRef.current) {
273
238
  return;
274
239
  }
275
-
276
240
  var curStyle = window.getComputedStyle(wrapRef.current);
277
241
  var transformMatrix = curStyle.transform || curStyle.webkitTransform || '';
278
242
  var transY = Number(transformMatrix.replace(/matrix\((.*?)\)/, '$1').split(/,\s*/).slice(-1)[0]) || 0;
279
243
  var maxIndex = data.length - 1;
280
- var nowIndex = Math.max(0, Math.min(maxIndex, Math.round(-1 * transY / itemHeight))); // 滚动(包括加动量的滚动)完成之后定位到最近的一个index上
244
+ var nowIndex = Math.max(0, Math.min(maxIndex, Math.round(-1 * transY / itemHeight)));
245
+ // 滚动(包括加动量的滚动)完成之后定位到最近的一个index上
281
246
  // @en After scrolling (including scrolling with momentum) is completed, it is positioned on the nearest index
282
-
283
247
  _scrollToIndexWithChange(nowIndex, 0);
284
248
  }
285
-
286
249
  function getCurrentCellValue() {
287
250
  var _data$currentIndex;
288
-
289
251
  return (_data$currentIndex = data[currentIndex]) == null ? void 0 : _data$currentIndex.value;
290
252
  }
291
-
292
253
  function getCurrentCellData() {
293
254
  return data[currentIndex];
294
255
  }
295
-
296
256
  function _clearTimer() {
297
257
  timeRef.current && clearTimeout(timeRef.current);
298
258
  timeRef.current = null;
299
259
  }
300
-
301
260
  function _handleItemTouchStart() {
302
261
  if (touchToStop === false) {
303
262
  return;
304
263
  }
305
-
306
264
  isTouchStopped.current = false;
307
265
  timeRef.current = window.setTimeout(function () {
308
266
  if (!isTouchMoveRef.current) {
@@ -311,15 +269,12 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
311
269
  }
312
270
  }, touchToStop === true ? 100 : touchToStop);
313
271
  }
314
-
315
272
  function _handleItemClick(itemIndex) {
316
273
  if (!clickable || disabled || touchToStop !== false && isTouchStopped.current) {
317
274
  return;
318
275
  }
319
-
320
276
  _scrollToIndexWithChange(itemIndex, 200);
321
277
  }
322
-
323
278
  useEffect(function () {
324
279
  return function () {
325
280
  // 卸载组件时,如果timer中还有未执行的onchange操作,则立刻执行该操作并移除timer
@@ -334,7 +289,6 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
334
289
  wrapRef.current.addEventListener('touchstart', _handleColumnTouchStart);
335
290
  wrapRef.current.addEventListener('touchmove', _handleColumnTouchMove);
336
291
  }
337
-
338
292
  return function () {
339
293
  if (wrapRef.current) {
340
294
  wrapRef.current.removeEventListener('touchstart', _handleColumnTouchStart);
@@ -348,7 +302,6 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
348
302
  return item.value === selectedValue;
349
303
  });
350
304
  setCurrentIndex(Math.max(curIndex, 0));
351
-
352
305
  if (curIndex >= 0) {
353
306
  _scrollToIndexWithChange(curIndex);
354
307
  }
@@ -374,7 +327,6 @@ var PickerCell = /*#__PURE__*/forwardRef(function (props, ref) {
374
327
  "aria-disabled": disabled
375
328
  }, data.map(function (item, index) {
376
329
  var _cls;
377
-
378
330
  var dis = Math.abs(index - currentIndex);
379
331
  return /*#__PURE__*/React.createElement("div", {
380
332
  "aria-label": index === currentIndex ? "" + item.value : '',
@@ -8,56 +8,50 @@ import Cascader from '../picker-view/components/cascader';
8
8
  import { useMountedState } from '../_helpers';
9
9
  export * from './type';
10
10
  export { MultiPicker, PickerCell, Cascader };
11
-
12
11
  var isArray = function isArray(dt) {
13
12
  return dt ? Array.isArray(dt[0]) : false;
14
13
  };
15
-
16
14
  var isStrOrNum = function isStrOrNum(dt) {
17
15
  return typeof dt[0][0] === 'string' || typeof dt[0][0] === 'number';
18
16
  };
19
-
20
17
  var PickerView = /*#__PURE__*/forwardRef(function (props, ref) {
21
18
  var _props$className = props.className,
22
- className = _props$className === void 0 ? '' : _props$className,
23
- itemStyle = props.itemStyle,
24
- _props$cascade = props.cascade,
25
- cascade = _props$cascade === void 0 ? true : _props$cascade,
26
- _props$cols = props.cols,
27
- cols = _props$cols === void 0 ? 3 : _props$cols,
28
- _props$rows = props.rows,
29
- rows = _props$rows === void 0 ? 5 : _props$rows,
30
- data = props.data,
31
- _props$disabled = props.disabled,
32
- disabled = _props$disabled === void 0 ? false : _props$disabled,
33
- _props$clickable = props.clickable,
34
- clickable = _props$clickable === void 0 ? true : _props$clickable,
35
- value = props.value,
36
- _props$hideEmptyCols = props.hideEmptyCols,
37
- hideEmptyCols = _props$hideEmptyCols === void 0 ? false : _props$hideEmptyCols,
38
- onPickerChange = props.onPickerChange,
39
- _props$touchToStop = props.touchToStop,
40
- touchToStop = _props$touchToStop === void 0 ? false : _props$touchToStop;
41
-
19
+ className = _props$className === void 0 ? '' : _props$className,
20
+ itemStyle = props.itemStyle,
21
+ _props$cascade = props.cascade,
22
+ cascade = _props$cascade === void 0 ? true : _props$cascade,
23
+ _props$cols = props.cols,
24
+ cols = _props$cols === void 0 ? 3 : _props$cols,
25
+ _props$rows = props.rows,
26
+ rows = _props$rows === void 0 ? 5 : _props$rows,
27
+ data = props.data,
28
+ _props$disabled = props.disabled,
29
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
30
+ _props$clickable = props.clickable,
31
+ clickable = _props$clickable === void 0 ? true : _props$clickable,
32
+ value = props.value,
33
+ _props$hideEmptyCols = props.hideEmptyCols,
34
+ hideEmptyCols = _props$hideEmptyCols === void 0 ? false : _props$hideEmptyCols,
35
+ onPickerChange = props.onPickerChange,
36
+ _props$touchToStop = props.touchToStop,
37
+ touchToStop = _props$touchToStop === void 0 ? false : _props$touchToStop;
42
38
  var _useState = useState(0),
43
- itemHeight = _useState[0],
44
- setItemHeight = _useState[1];
45
-
39
+ itemHeight = _useState[0],
40
+ setItemHeight = _useState[1];
46
41
  var _useState2 = useState(0),
47
- wrapperHeight = _useState2[0],
48
- setWrapperHeight = _useState2[1];
49
-
42
+ wrapperHeight = _useState2[0],
43
+ setWrapperHeight = _useState2[1];
50
44
  var _useMountedState = useMountedState(value),
51
- scrollValue = _useMountedState[0],
52
- setScrollValue = _useMountedState[1];
53
-
45
+ scrollValue = _useMountedState[0],
46
+ setScrollValue = _useMountedState[1];
54
47
  var wrapperRef = useRef(null);
55
48
  var domRef = useRef(null);
56
49
  var barRef = useRef(null);
57
50
  var pickerCellsRef = useRef([]);
58
- var cascaderRef = useRef(null); // itemStyle height 同时对 selection-bar 生效,这里不单独抛出 selection-bar 的高度设置属性
59
- // @en The height of itemStyle applies to the selection-bar as well, without separately exposing the height setting property for the selection-bar.
51
+ var cascaderRef = useRef(null);
60
52
 
53
+ // itemStyle height 同时对 selection-bar 生效,这里不单独抛出 selection-bar 的高度设置属性
54
+ // @en The height of itemStyle applies to the selection-bar as well, without separately exposing the height setting property for the selection-bar.
61
55
  var selectionBarHeight = useMemo(function () {
62
56
  return itemStyle != null && itemStyle.height ? {
63
57
  height: itemStyle.height
@@ -65,7 +59,6 @@ var PickerView = /*#__PURE__*/forwardRef(function (props, ref) {
65
59
  }, [itemStyle]);
66
60
  var innerData = useMemo(function () {
67
61
  var newData;
68
-
69
62
  if (isArray(data)) {
70
63
  if (isStrOrNum(data)) {
71
64
  newData = data.map(function (item) {
@@ -82,26 +75,21 @@ var PickerView = /*#__PURE__*/forwardRef(function (props, ref) {
82
75
  } else {
83
76
  newData = [data];
84
77
  }
85
-
86
78
  return newData;
87
79
  }, [data]);
88
-
89
80
  var getAllColumnValues = function getAllColumnValues() {
90
81
  var _cascaderRef$current;
91
-
92
82
  var curValues = cascade ? ((_cascaderRef$current = cascaderRef.current) == null ? void 0 : _cascaderRef$current.getAllCellsValue()) || [] : pickerCellsRef.current.map(function (cell) {
93
83
  return cell.getCurrentCellValue();
94
- }); // 移除级联带来的空列值,理论上非首尾列不会有空值
84
+ });
85
+ // 移除级联带来的空列值,理论上非首尾列不会有空值
95
86
  // @en Remove empty values from cascader
96
-
97
87
  return curValues.filter(function (v) {
98
88
  return v !== undefined;
99
89
  });
100
90
  };
101
-
102
91
  var getAllColumnData = function getAllColumnData() {
103
92
  var _cascaderRef$current2;
104
-
105
93
  var curValues = cascade ? ((_cascaderRef$current2 = cascaderRef.current) == null ? void 0 : _cascaderRef$current2.getAllCellsData()) || [] : pickerCellsRef.current.map(function (cell) {
106
94
  return cell.getCurrentCellData();
107
95
  });
@@ -109,36 +97,28 @@ var PickerView = /*#__PURE__*/forwardRef(function (props, ref) {
109
97
  return v !== undefined;
110
98
  });
111
99
  };
112
-
113
100
  function getColumnValue(index) {
114
101
  if (index === void 0) {
115
102
  index = 0;
116
103
  }
117
-
118
104
  return getAllColumnValues()[index];
119
105
  }
120
-
121
106
  function getCellMovingStatus() {
122
107
  var _cascaderRef$current3;
123
-
124
108
  return cascade ? ((_cascaderRef$current3 = cascaderRef.current) == null ? void 0 : _cascaderRef$current3.getCellMovingStatus()) || [] : pickerCellsRef.current.map(function (cell) {
125
109
  return cell.movingStatus;
126
110
  });
127
111
  }
128
-
129
112
  function scrollToCurrentIndex() {
130
113
  if (cascade) {
131
114
  var _cascaderRef$current4;
132
-
133
115
  (_cascaderRef$current4 = cascaderRef.current) == null ? void 0 : _cascaderRef$current4.scrollToCurrentIndex();
134
116
  return;
135
117
  }
136
-
137
118
  pickerCellsRef.current.forEach(function (cell) {
138
119
  return cell.scrollToCurrentIndex();
139
120
  });
140
121
  }
141
-
142
122
  useImperativeHandle(ref, function () {
143
123
  return {
144
124
  dom: domRef.current,
@@ -151,15 +131,12 @@ var PickerView = /*#__PURE__*/forwardRef(function (props, ref) {
151
131
  getAllColumnData: getAllColumnData
152
132
  };
153
133
  });
154
-
155
134
  function _onValueChange(val, index, newData) {
156
135
  setScrollValue(val);
157
-
158
136
  if (onPickerChange) {
159
137
  onPickerChange(val, index, newData);
160
138
  }
161
139
  }
162
-
163
140
  useEffect(function () {
164
141
  setScrollValue(value);
165
142
  }, [value]);
@@ -168,30 +145,24 @@ var PickerView = /*#__PURE__*/forwardRef(function (props, ref) {
168
145
  setWrapperHeight(wrapperRef.current.offsetHeight);
169
146
  }
170
147
  }, [wrapperRef, setWrapperHeight]);
171
-
172
148
  var updateItemHeight = function updateItemHeight() {
173
149
  if (barRef.current) {
174
150
  setItemHeight(barRef.current.getBoundingClientRect().height);
175
151
  }
176
152
  };
177
-
178
153
  useEffect(function () {
179
154
  updateLayout();
180
155
  }, []);
181
-
182
156
  function updateLayout() {
183
157
  updateWrapperHeight();
184
158
  updateItemHeight();
185
159
  }
186
-
187
160
  function resetValue() {
188
161
  setScrollValue(value);
189
162
  }
190
-
191
163
  var newItemStyle = _extends({
192
164
  height: itemHeight + "px"
193
165
  }, itemStyle);
194
-
195
166
  return /*#__PURE__*/React.createElement(ContextLayout, null, function (_ref) {
196
167
  var prefixCls = _ref.prefixCls;
197
168
  return /*#__PURE__*/React.createElement("div", {
@@ -262,5 +233,4 @@ var PickerView = /*#__PURE__*/forwardRef(function (props, ref) {
262
233
  * @name_en PickerView
263
234
  * @displayName PickerView
264
235
  */
265
-
266
236
  export default componentWrapper(PickerView, 'PickerView');