antd-mobile 5.0.0-rc.1 → 5.0.0-rc.5

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 (457) hide show
  1. package/2x/README.md +2 -0
  2. package/2x/cjs/components/action-sheet/action-sheet.d.ts +3 -3
  3. package/2x/cjs/components/cascader/cascader.css +40 -0
  4. package/2x/cjs/components/cascader/cascader.d.ts +20 -0
  5. package/2x/cjs/components/cascader/cascader.js +130 -0
  6. package/2x/cjs/components/cascader/index.d.ts +9 -0
  7. package/2x/cjs/components/cascader/index.js +20 -0
  8. package/2x/cjs/components/cascader/prompt.d.ts +2 -0
  9. package/2x/cjs/components/cascader/prompt.js +51 -0
  10. package/2x/cjs/components/cascader-view/cascader-view.css +40 -0
  11. package/2x/cjs/components/cascader-view/cascader-view.d.ts +20 -0
  12. package/2x/cjs/components/cascader-view/cascader-view.js +189 -0
  13. package/2x/cjs/components/cascader-view/index.d.ts +4 -0
  14. package/2x/cjs/components/cascader-view/index.js +13 -0
  15. package/2x/cjs/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  16. package/2x/cjs/components/cascader-view/use-cascader-value-extend.js +97 -0
  17. package/2x/cjs/components/collapse/collapse.d.ts +2 -0
  18. package/2x/cjs/components/collapse/collapse.js +21 -5
  19. package/2x/cjs/components/date-picker/date-picker-date-utils.d.ts +3 -2
  20. package/2x/cjs/components/date-picker/date-picker-date-utils.js +33 -12
  21. package/2x/cjs/components/date-picker/date-picker-utils.d.ts +5 -2
  22. package/2x/cjs/components/date-picker/date-picker-utils.js +3 -3
  23. package/2x/cjs/components/date-picker/date-picker-week-utils.d.ts +3 -2
  24. package/2x/cjs/components/date-picker/date-picker-week-utils.js +28 -6
  25. package/2x/cjs/components/date-picker/date-picker.d.ts +2 -1
  26. package/2x/cjs/components/date-picker/date-picker.js +5 -8
  27. package/2x/cjs/components/date-picker/index.d.ts +1 -0
  28. package/2x/cjs/components/date-picker-view/date-picker-view.d.ts +2 -1
  29. package/2x/cjs/components/date-picker-view/date-picker-view.js +1 -1
  30. package/2x/cjs/components/date-picker-view/index.d.ts +1 -0
  31. package/2x/cjs/components/dialog/dialog.css +1 -1
  32. package/2x/cjs/components/dialog/dialog.js +11 -4
  33. package/2x/cjs/components/dropdown/dropdown.css +13 -11
  34. package/2x/cjs/components/dropdown/dropdown.d.ts +13 -4
  35. package/2x/cjs/components/dropdown/dropdown.js +13 -11
  36. package/2x/cjs/components/dropdown/index.d.ts +14 -3
  37. package/2x/cjs/components/dropdown/index.js +8 -1
  38. package/2x/cjs/components/dropdown/item.d.ts +1 -1
  39. package/2x/cjs/components/dropdown/item.js +10 -4
  40. package/2x/cjs/components/form/form-item.css +4 -1
  41. package/2x/cjs/components/form/form.css +4 -0
  42. package/2x/cjs/components/form/form.d.ts +3 -0
  43. package/2x/cjs/components/form/form.js +3 -1
  44. package/2x/cjs/components/form/index.css +8 -1
  45. package/2x/cjs/components/form/index.d.ts +1 -0
  46. package/2x/cjs/components/image-uploader/image-uploader.d.ts +9 -6
  47. package/2x/cjs/components/image-uploader/image-uploader.js +8 -6
  48. package/2x/cjs/components/image-uploader/index.d.ts +1 -1
  49. package/2x/cjs/components/image-viewer/image-viewer.d.ts +1 -7
  50. package/2x/cjs/components/image-viewer/image-viewer.js +3 -101
  51. package/2x/cjs/components/image-viewer/index.d.ts +2 -1
  52. package/2x/cjs/components/image-viewer/index.js +5 -2
  53. package/2x/cjs/components/image-viewer/methods.d.ts +8 -1
  54. package/2x/cjs/components/image-viewer/methods.js +129 -1
  55. package/2x/cjs/components/list/list.css +7 -5
  56. package/2x/cjs/components/list/list.d.ts +1 -1
  57. package/2x/cjs/components/list/list.js +1 -3
  58. package/2x/cjs/components/mask/mask.js +5 -0
  59. package/2x/cjs/components/modal/alert.d.ts +7 -0
  60. package/2x/cjs/components/modal/alert.js +33 -0
  61. package/2x/cjs/components/modal/confirm.d.ts +9 -0
  62. package/2x/cjs/components/modal/confirm.js +116 -0
  63. package/2x/cjs/components/modal/index.d.ts +16 -0
  64. package/2x/cjs/components/modal/index.js +26 -0
  65. package/2x/cjs/components/modal/modal-action-button.d.ts +14 -0
  66. package/2x/cjs/components/modal/modal-action-button.js +109 -0
  67. package/2x/cjs/components/modal/modal.css +89 -0
  68. package/2x/cjs/components/modal/modal.d.ts +26 -0
  69. package/2x/cjs/components/modal/modal.js +193 -0
  70. package/2x/cjs/components/modal/show.d.ts +8 -0
  71. package/2x/cjs/components/modal/show.js +62 -0
  72. package/2x/cjs/components/notice-bar/notice-bar.css +1 -1
  73. package/2x/cjs/components/number-keyboard/number-keyboard.css +2 -2
  74. package/2x/cjs/components/number-keyboard/number-keyboard.js +57 -11
  75. package/2x/cjs/components/page-indicator/page-indicator.css +1 -1
  76. package/2x/cjs/components/passcode-input/index.d.ts +4 -0
  77. package/2x/cjs/components/passcode-input/index.js +13 -0
  78. package/2x/cjs/components/passcode-input/passcode-input.css +166 -0
  79. package/2x/cjs/components/passcode-input/passcode-input.d.ts +35 -0
  80. package/2x/cjs/components/passcode-input/passcode-input.js +169 -0
  81. package/2x/cjs/components/picker/picker.js +1 -0
  82. package/2x/cjs/components/picker-view/column.js +47 -3
  83. package/2x/cjs/components/picker-view/picker-view.css +45 -5
  84. package/2x/cjs/components/picker-view/picker-view.js +7 -3
  85. package/2x/cjs/components/popup/popup.js +4 -0
  86. package/2x/cjs/components/search-bar/search-bar.css +1 -1
  87. package/2x/cjs/components/swipe-action/swipe-action.css +2 -1
  88. package/2x/cjs/components/swiper/swiper.js +4 -4
  89. package/2x/cjs/components/switch/switch.css +19 -16
  90. package/2x/cjs/components/switch/switch.d.ts +1 -1
  91. package/2x/cjs/components/tag/tag.css +3 -2
  92. package/2x/cjs/components/toast/index.d.ts +2 -1
  93. package/2x/cjs/components/toast/index.js +2 -1
  94. package/2x/cjs/components/toast/methods.d.ts +1 -0
  95. package/2x/cjs/components/toast/methods.js +18 -1
  96. package/2x/cjs/components/toast/toast.css +7 -4
  97. package/2x/cjs/components/toast/toast.js +3 -1
  98. package/2x/cjs/components/virtual-input/virtual-input.css +27 -9
  99. package/2x/cjs/components/virtual-input/virtual-input.d.ts +4 -0
  100. package/2x/cjs/components/virtual-input/virtual-input.js +47 -17
  101. package/2x/cjs/index.d.ts +11 -8
  102. package/2x/cjs/index.js +43 -19
  103. package/2x/cjs/locales/base.d.ts +6 -0
  104. package/2x/cjs/locales/base.js +6 -0
  105. package/2x/cjs/locales/en-US.d.ts +6 -0
  106. package/2x/cjs/locales/zh-CN.d.ts +6 -0
  107. package/2x/cjs/locales/zh-CN.js +6 -0
  108. package/2x/cjs/utils/memo-with-event-marks.d.ts +2 -0
  109. package/2x/cjs/utils/memo-with-event-marks.js +23 -0
  110. package/2x/es/components/action-sheet/action-sheet.d.ts +3 -3
  111. package/2x/es/components/cascader/cascader.css +40 -0
  112. package/2x/es/components/cascader/cascader.d.ts +20 -0
  113. package/2x/es/components/cascader/cascader.js +104 -0
  114. package/2x/es/components/cascader/index.d.ts +9 -0
  115. package/2x/es/components/cascader/index.js +7 -0
  116. package/2x/es/components/cascader/prompt.d.ts +2 -0
  117. package/2x/es/components/cascader/prompt.js +37 -0
  118. package/2x/es/components/cascader-view/cascader-view.css +40 -0
  119. package/2x/es/components/cascader-view/cascader-view.d.ts +20 -0
  120. package/2x/es/components/cascader-view/cascader-view.js +130 -0
  121. package/2x/es/components/cascader-view/index.d.ts +4 -0
  122. package/2x/es/components/cascader-view/index.js +3 -0
  123. package/2x/es/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  124. package/2x/es/components/cascader-view/use-cascader-value-extend.js +52 -0
  125. package/2x/es/components/collapse/collapse.d.ts +2 -0
  126. package/2x/es/components/collapse/collapse.js +21 -5
  127. package/2x/es/components/date-picker/date-picker-date-utils.d.ts +3 -2
  128. package/2x/es/components/date-picker/date-picker-date-utils.js +33 -11
  129. package/2x/es/components/date-picker/date-picker-utils.d.ts +5 -2
  130. package/2x/es/components/date-picker/date-picker-utils.js +3 -3
  131. package/2x/es/components/date-picker/date-picker-week-utils.d.ts +3 -2
  132. package/2x/es/components/date-picker/date-picker-week-utils.js +28 -5
  133. package/2x/es/components/date-picker/date-picker.d.ts +2 -1
  134. package/2x/es/components/date-picker/date-picker.js +4 -7
  135. package/2x/es/components/date-picker/index.d.ts +1 -0
  136. package/2x/es/components/date-picker-view/date-picker-view.d.ts +2 -1
  137. package/2x/es/components/date-picker-view/date-picker-view.js +1 -1
  138. package/2x/es/components/date-picker-view/index.d.ts +1 -0
  139. package/2x/es/components/dialog/dialog.css +1 -1
  140. package/2x/es/components/dialog/dialog.js +9 -4
  141. package/2x/es/components/dropdown/dropdown.css +13 -11
  142. package/2x/es/components/dropdown/dropdown.d.ts +13 -4
  143. package/2x/es/components/dropdown/dropdown.js +14 -12
  144. package/2x/es/components/dropdown/index.d.ts +14 -3
  145. package/2x/es/components/dropdown/index.js +5 -1
  146. package/2x/es/components/dropdown/item.d.ts +1 -1
  147. package/2x/es/components/dropdown/item.js +9 -4
  148. package/2x/es/components/form/form-item.css +4 -1
  149. package/2x/es/components/form/form.css +4 -0
  150. package/2x/es/components/form/form.d.ts +3 -0
  151. package/2x/es/components/form/form.js +3 -1
  152. package/2x/es/components/form/index.css +8 -1
  153. package/2x/es/components/form/index.d.ts +1 -0
  154. package/2x/es/components/image-uploader/image-uploader.d.ts +9 -6
  155. package/2x/es/components/image-uploader/image-uploader.js +8 -6
  156. package/2x/es/components/image-uploader/index.d.ts +1 -1
  157. package/2x/es/components/image-viewer/image-viewer.d.ts +1 -7
  158. package/2x/es/components/image-viewer/image-viewer.js +2 -91
  159. package/2x/es/components/image-viewer/index.d.ts +2 -1
  160. package/2x/es/components/image-viewer/index.js +4 -2
  161. package/2x/es/components/image-viewer/methods.d.ts +8 -1
  162. package/2x/es/components/image-viewer/methods.js +109 -0
  163. package/2x/es/components/list/list.css +7 -5
  164. package/2x/es/components/list/list.d.ts +1 -1
  165. package/2x/es/components/list/list.js +1 -3
  166. package/2x/es/components/mask/mask.js +4 -0
  167. package/2x/es/components/modal/alert.d.ts +7 -0
  168. package/2x/es/components/modal/alert.js +23 -0
  169. package/2x/es/components/modal/confirm.d.ts +9 -0
  170. package/2x/es/components/modal/confirm.js +106 -0
  171. package/2x/es/components/modal/index.d.ts +16 -0
  172. package/2x/es/components/modal/index.js +11 -0
  173. package/2x/es/components/modal/modal-action-button.d.ts +14 -0
  174. package/2x/es/components/modal/modal-action-button.js +90 -0
  175. package/2x/es/components/modal/modal.css +89 -0
  176. package/2x/es/components/modal/modal.d.ts +26 -0
  177. package/2x/es/components/modal/modal.js +164 -0
  178. package/2x/es/components/modal/show.d.ts +8 -0
  179. package/2x/es/components/modal/show.js +48 -0
  180. package/2x/es/components/notice-bar/notice-bar.css +1 -1
  181. package/2x/es/components/number-keyboard/number-keyboard.css +2 -2
  182. package/2x/es/components/number-keyboard/number-keyboard.js +56 -11
  183. package/2x/es/components/page-indicator/page-indicator.css +1 -1
  184. package/2x/es/components/passcode-input/index.d.ts +4 -0
  185. package/2x/es/components/passcode-input/index.js +3 -0
  186. package/2x/es/components/passcode-input/passcode-input.css +166 -0
  187. package/2x/es/components/passcode-input/passcode-input.d.ts +35 -0
  188. package/2x/es/components/passcode-input/passcode-input.js +149 -0
  189. package/2x/es/components/picker/picker.js +1 -0
  190. package/2x/es/components/picker-view/column.js +47 -3
  191. package/2x/es/components/picker-view/picker-view.css +45 -5
  192. package/2x/es/components/picker-view/picker-view.js +7 -3
  193. package/2x/es/components/popup/popup.js +3 -0
  194. package/2x/es/components/search-bar/search-bar.css +1 -1
  195. package/2x/es/components/swipe-action/swipe-action.css +2 -1
  196. package/2x/es/components/swiper/swiper.js +4 -4
  197. package/2x/es/components/switch/switch.css +19 -16
  198. package/2x/es/components/switch/switch.d.ts +1 -1
  199. package/2x/es/components/tag/tag.css +3 -2
  200. package/2x/es/components/toast/index.d.ts +2 -1
  201. package/2x/es/components/toast/index.js +3 -2
  202. package/2x/es/components/toast/methods.d.ts +1 -0
  203. package/2x/es/components/toast/methods.js +16 -1
  204. package/2x/es/components/toast/toast.css +7 -4
  205. package/2x/es/components/toast/toast.js +2 -1
  206. package/2x/es/components/virtual-input/virtual-input.css +27 -9
  207. package/2x/es/components/virtual-input/virtual-input.d.ts +4 -0
  208. package/2x/es/components/virtual-input/virtual-input.js +47 -18
  209. package/2x/es/index.d.ts +11 -8
  210. package/2x/es/index.js +11 -8
  211. package/2x/es/locales/base.d.ts +6 -0
  212. package/2x/es/locales/base.js +6 -0
  213. package/2x/es/locales/en-US.d.ts +6 -0
  214. package/2x/es/locales/zh-CN.d.ts +6 -0
  215. package/2x/es/locales/zh-CN.js +6 -0
  216. package/2x/es/utils/memo-with-event-marks.d.ts +2 -0
  217. package/2x/es/utils/memo-with-event-marks.js +15 -0
  218. package/2x/package.json +3 -3
  219. package/README.md +2 -0
  220. package/cjs/components/action-sheet/action-sheet.d.ts +3 -3
  221. package/cjs/components/cascader/cascader.css +35 -0
  222. package/cjs/components/cascader/cascader.d.ts +20 -0
  223. package/cjs/components/cascader/cascader.js +130 -0
  224. package/cjs/components/cascader/index.d.ts +9 -0
  225. package/cjs/components/cascader/index.js +20 -0
  226. package/cjs/components/cascader/prompt.d.ts +2 -0
  227. package/cjs/components/cascader/prompt.js +51 -0
  228. package/cjs/components/cascader-view/cascader-view.css +33 -0
  229. package/cjs/components/cascader-view/cascader-view.d.ts +20 -0
  230. package/cjs/components/cascader-view/cascader-view.js +189 -0
  231. package/cjs/components/cascader-view/index.d.ts +4 -0
  232. package/cjs/components/cascader-view/index.js +13 -0
  233. package/cjs/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  234. package/cjs/components/cascader-view/use-cascader-value-extend.js +97 -0
  235. package/cjs/components/collapse/collapse.d.ts +2 -0
  236. package/cjs/components/collapse/collapse.js +21 -5
  237. package/cjs/components/date-picker/date-picker-date-utils.d.ts +3 -2
  238. package/cjs/components/date-picker/date-picker-date-utils.js +33 -12
  239. package/cjs/components/date-picker/date-picker-utils.d.ts +5 -2
  240. package/cjs/components/date-picker/date-picker-utils.js +3 -3
  241. package/cjs/components/date-picker/date-picker-week-utils.d.ts +3 -2
  242. package/cjs/components/date-picker/date-picker-week-utils.js +28 -6
  243. package/cjs/components/date-picker/date-picker.d.ts +2 -1
  244. package/cjs/components/date-picker/date-picker.js +5 -8
  245. package/cjs/components/date-picker/index.d.ts +1 -0
  246. package/cjs/components/date-picker-view/date-picker-view.d.ts +2 -1
  247. package/cjs/components/date-picker-view/date-picker-view.js +1 -1
  248. package/cjs/components/date-picker-view/index.d.ts +1 -0
  249. package/cjs/components/dialog/dialog.css +1 -1
  250. package/cjs/components/dialog/dialog.js +11 -4
  251. package/cjs/components/dropdown/dropdown.css +12 -11
  252. package/cjs/components/dropdown/dropdown.d.ts +13 -4
  253. package/cjs/components/dropdown/dropdown.js +13 -11
  254. package/cjs/components/dropdown/index.d.ts +14 -3
  255. package/cjs/components/dropdown/index.js +8 -1
  256. package/cjs/components/dropdown/item.d.ts +1 -1
  257. package/cjs/components/dropdown/item.js +10 -4
  258. package/cjs/components/form/form-item.css +4 -1
  259. package/cjs/components/form/form.css +3 -0
  260. package/cjs/components/form/form.d.ts +3 -0
  261. package/cjs/components/form/form.js +3 -1
  262. package/cjs/components/form/index.css +7 -1
  263. package/cjs/components/form/index.d.ts +1 -0
  264. package/cjs/components/image-uploader/image-uploader.d.ts +9 -6
  265. package/cjs/components/image-uploader/image-uploader.js +8 -6
  266. package/cjs/components/image-uploader/index.d.ts +1 -1
  267. package/cjs/components/image-viewer/image-viewer.d.ts +1 -7
  268. package/cjs/components/image-viewer/image-viewer.js +3 -101
  269. package/cjs/components/image-viewer/index.d.ts +2 -1
  270. package/cjs/components/image-viewer/index.js +5 -2
  271. package/cjs/components/image-viewer/methods.d.ts +8 -1
  272. package/cjs/components/image-viewer/methods.js +129 -1
  273. package/cjs/components/list/list.css +6 -4
  274. package/cjs/components/list/list.d.ts +1 -1
  275. package/cjs/components/list/list.js +1 -3
  276. package/cjs/components/mask/mask.js +5 -0
  277. package/cjs/components/modal/alert.d.ts +7 -0
  278. package/cjs/components/modal/alert.js +33 -0
  279. package/cjs/components/modal/confirm.d.ts +9 -0
  280. package/cjs/components/modal/confirm.js +116 -0
  281. package/cjs/components/modal/index.d.ts +16 -0
  282. package/cjs/components/modal/index.js +26 -0
  283. package/cjs/components/modal/modal-action-button.d.ts +14 -0
  284. package/cjs/components/modal/modal-action-button.js +109 -0
  285. package/cjs/components/modal/modal.css +75 -0
  286. package/cjs/components/modal/modal.d.ts +26 -0
  287. package/cjs/components/modal/modal.js +193 -0
  288. package/cjs/components/modal/show.d.ts +8 -0
  289. package/cjs/components/modal/show.js +62 -0
  290. package/cjs/components/notice-bar/notice-bar.css +1 -1
  291. package/cjs/components/number-keyboard/number-keyboard.css +2 -2
  292. package/cjs/components/number-keyboard/number-keyboard.js +57 -11
  293. package/cjs/components/page-indicator/page-indicator.css +1 -1
  294. package/cjs/components/passcode-input/index.d.ts +4 -0
  295. package/cjs/components/passcode-input/index.js +13 -0
  296. package/cjs/components/passcode-input/passcode-input.css +136 -0
  297. package/cjs/components/passcode-input/passcode-input.d.ts +35 -0
  298. package/cjs/components/passcode-input/passcode-input.js +169 -0
  299. package/cjs/components/picker/picker.js +1 -0
  300. package/cjs/components/picker-view/column.js +47 -3
  301. package/cjs/components/picker-view/picker-view.css +39 -5
  302. package/cjs/components/picker-view/picker-view.js +7 -3
  303. package/cjs/components/popup/popup.js +4 -0
  304. package/cjs/components/search-bar/search-bar.css +1 -1
  305. package/cjs/components/swipe-action/swipe-action.css +2 -1
  306. package/cjs/components/swiper/swiper.js +4 -4
  307. package/cjs/components/switch/switch.css +19 -16
  308. package/cjs/components/switch/switch.d.ts +1 -1
  309. package/cjs/components/tag/tag.css +3 -2
  310. package/cjs/components/toast/index.d.ts +2 -1
  311. package/cjs/components/toast/index.js +2 -1
  312. package/cjs/components/toast/methods.d.ts +1 -0
  313. package/cjs/components/toast/methods.js +18 -1
  314. package/cjs/components/toast/toast.css +7 -4
  315. package/cjs/components/toast/toast.js +3 -1
  316. package/cjs/components/virtual-input/virtual-input.css +24 -8
  317. package/cjs/components/virtual-input/virtual-input.d.ts +4 -0
  318. package/cjs/components/virtual-input/virtual-input.js +47 -17
  319. package/cjs/index.d.ts +11 -8
  320. package/cjs/index.js +43 -19
  321. package/cjs/locales/base.d.ts +6 -0
  322. package/cjs/locales/base.js +6 -0
  323. package/cjs/locales/en-US.d.ts +6 -0
  324. package/cjs/locales/zh-CN.d.ts +6 -0
  325. package/cjs/locales/zh-CN.js +6 -0
  326. package/cjs/utils/memo-with-event-marks.d.ts +2 -0
  327. package/cjs/utils/memo-with-event-marks.js +23 -0
  328. package/es/components/action-sheet/action-sheet.d.ts +3 -3
  329. package/es/components/cascader/cascader.css +35 -0
  330. package/es/components/cascader/cascader.d.ts +20 -0
  331. package/es/components/cascader/cascader.js +104 -0
  332. package/es/components/cascader/index.d.ts +9 -0
  333. package/es/components/cascader/index.js +7 -0
  334. package/es/components/cascader/prompt.d.ts +2 -0
  335. package/es/components/cascader/prompt.js +37 -0
  336. package/es/components/cascader-view/cascader-view.css +33 -0
  337. package/es/components/cascader-view/cascader-view.d.ts +20 -0
  338. package/es/components/cascader-view/cascader-view.js +130 -0
  339. package/es/components/cascader-view/index.d.ts +4 -0
  340. package/es/components/cascader-view/index.js +3 -0
  341. package/es/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  342. package/es/components/cascader-view/use-cascader-value-extend.js +52 -0
  343. package/es/components/collapse/collapse.d.ts +2 -0
  344. package/es/components/collapse/collapse.js +21 -5
  345. package/es/components/date-picker/date-picker-date-utils.d.ts +3 -2
  346. package/es/components/date-picker/date-picker-date-utils.js +33 -11
  347. package/es/components/date-picker/date-picker-utils.d.ts +5 -2
  348. package/es/components/date-picker/date-picker-utils.js +3 -3
  349. package/es/components/date-picker/date-picker-week-utils.d.ts +3 -2
  350. package/es/components/date-picker/date-picker-week-utils.js +28 -5
  351. package/es/components/date-picker/date-picker.d.ts +2 -1
  352. package/es/components/date-picker/date-picker.js +4 -7
  353. package/es/components/date-picker/index.d.ts +1 -0
  354. package/es/components/date-picker-view/date-picker-view.d.ts +2 -1
  355. package/es/components/date-picker-view/date-picker-view.js +1 -1
  356. package/es/components/date-picker-view/index.d.ts +1 -0
  357. package/es/components/dialog/dialog.css +1 -1
  358. package/es/components/dialog/dialog.js +9 -4
  359. package/es/components/dropdown/dropdown.css +12 -11
  360. package/es/components/dropdown/dropdown.d.ts +13 -4
  361. package/es/components/dropdown/dropdown.js +14 -12
  362. package/es/components/dropdown/index.d.ts +14 -3
  363. package/es/components/dropdown/index.js +5 -1
  364. package/es/components/dropdown/item.d.ts +1 -1
  365. package/es/components/dropdown/item.js +9 -4
  366. package/es/components/form/form-item.css +4 -1
  367. package/es/components/form/form.css +3 -0
  368. package/es/components/form/form.d.ts +3 -0
  369. package/es/components/form/form.js +3 -1
  370. package/es/components/form/index.css +7 -1
  371. package/es/components/form/index.d.ts +1 -0
  372. package/es/components/image-uploader/image-uploader.d.ts +9 -6
  373. package/es/components/image-uploader/image-uploader.js +8 -6
  374. package/es/components/image-uploader/index.d.ts +1 -1
  375. package/es/components/image-viewer/image-viewer.d.ts +1 -7
  376. package/es/components/image-viewer/image-viewer.js +2 -91
  377. package/es/components/image-viewer/index.d.ts +2 -1
  378. package/es/components/image-viewer/index.js +4 -2
  379. package/es/components/image-viewer/methods.d.ts +8 -1
  380. package/es/components/image-viewer/methods.js +109 -0
  381. package/es/components/list/list.css +6 -4
  382. package/es/components/list/list.d.ts +1 -1
  383. package/es/components/list/list.js +1 -3
  384. package/es/components/mask/mask.js +4 -0
  385. package/es/components/modal/alert.d.ts +7 -0
  386. package/es/components/modal/alert.js +23 -0
  387. package/es/components/modal/confirm.d.ts +9 -0
  388. package/es/components/modal/confirm.js +106 -0
  389. package/es/components/modal/index.d.ts +16 -0
  390. package/es/components/modal/index.js +11 -0
  391. package/es/components/modal/modal-action-button.d.ts +14 -0
  392. package/es/components/modal/modal-action-button.js +90 -0
  393. package/es/components/modal/modal.css +75 -0
  394. package/es/components/modal/modal.d.ts +26 -0
  395. package/es/components/modal/modal.js +164 -0
  396. package/es/components/modal/show.d.ts +8 -0
  397. package/es/components/modal/show.js +48 -0
  398. package/es/components/notice-bar/notice-bar.css +1 -1
  399. package/es/components/number-keyboard/number-keyboard.css +2 -2
  400. package/es/components/number-keyboard/number-keyboard.js +56 -11
  401. package/es/components/page-indicator/page-indicator.css +1 -1
  402. package/es/components/passcode-input/index.d.ts +4 -0
  403. package/es/components/passcode-input/index.js +3 -0
  404. package/es/components/passcode-input/passcode-input.css +136 -0
  405. package/es/components/passcode-input/passcode-input.d.ts +35 -0
  406. package/es/components/passcode-input/passcode-input.js +149 -0
  407. package/es/components/picker/picker.js +1 -0
  408. package/es/components/picker-view/column.js +47 -3
  409. package/es/components/picker-view/picker-view.css +39 -5
  410. package/es/components/picker-view/picker-view.js +7 -3
  411. package/es/components/popup/popup.js +3 -0
  412. package/es/components/search-bar/search-bar.css +1 -1
  413. package/es/components/swipe-action/swipe-action.css +2 -1
  414. package/es/components/swiper/swiper.js +4 -4
  415. package/es/components/switch/switch.css +19 -16
  416. package/es/components/switch/switch.d.ts +1 -1
  417. package/es/components/tag/tag.css +3 -2
  418. package/es/components/toast/index.d.ts +2 -1
  419. package/es/components/toast/index.js +3 -2
  420. package/es/components/toast/methods.d.ts +1 -0
  421. package/es/components/toast/methods.js +16 -1
  422. package/es/components/toast/toast.css +7 -4
  423. package/es/components/toast/toast.js +2 -1
  424. package/es/components/virtual-input/virtual-input.css +24 -8
  425. package/es/components/virtual-input/virtual-input.d.ts +4 -0
  426. package/es/components/virtual-input/virtual-input.js +47 -18
  427. package/es/index.d.ts +11 -8
  428. package/es/index.js +11 -8
  429. package/es/locales/base.d.ts +6 -0
  430. package/es/locales/base.js +6 -0
  431. package/es/locales/en-US.d.ts +6 -0
  432. package/es/locales/zh-CN.d.ts +6 -0
  433. package/es/locales/zh-CN.js +6 -0
  434. package/es/utils/memo-with-event-marks.d.ts +2 -0
  435. package/es/utils/memo-with-event-marks.js +15 -0
  436. package/package.json +3 -3
  437. package/umd/antd-mobile.js +1 -1
  438. package/2x/cjs/components/desense-text/desense-text.css +0 -10
  439. package/2x/cjs/components/desense-text/desense-text.d.ts +0 -10
  440. package/2x/cjs/components/desense-text/desense-text.js +0 -50
  441. package/2x/cjs/components/desense-text/index.d.ts +0 -4
  442. package/2x/cjs/components/desense-text/index.js +0 -13
  443. package/2x/es/components/desense-text/desense-text.css +0 -10
  444. package/2x/es/components/desense-text/desense-text.d.ts +0 -10
  445. package/2x/es/components/desense-text/desense-text.js +0 -32
  446. package/2x/es/components/desense-text/index.d.ts +0 -4
  447. package/2x/es/components/desense-text/index.js +0 -3
  448. package/cjs/components/desense-text/desense-text.css +0 -9
  449. package/cjs/components/desense-text/desense-text.d.ts +0 -10
  450. package/cjs/components/desense-text/desense-text.js +0 -50
  451. package/cjs/components/desense-text/index.d.ts +0 -4
  452. package/cjs/components/desense-text/index.js +0 -13
  453. package/es/components/desense-text/desense-text.css +0 -9
  454. package/es/components/desense-text/desense-text.d.ts +0 -10
  455. package/es/components/desense-text/desense-text.js +0 -32
  456. package/es/components/desense-text/index.d.ts +0 -4
  457. package/es/components/desense-text/index.js +0 -3
@@ -13,6 +13,7 @@
13
13
  user-select: none;
14
14
  touch-action: none;
15
15
  position: relative;
16
+ z-index: 0;
16
17
  }
17
18
 
18
19
  .adm-picker-view-column-wheel {
@@ -56,22 +57,61 @@
56
57
  white-space: nowrap;
57
58
  }
58
59
 
60
+ .adm-picker-view-column-accessible {
61
+ width: 100%;
62
+ height: 100%;
63
+ pointer-events: none;
64
+ opacity: 0;
65
+ display: flex;
66
+ flex-direction: column;
67
+ position: relative;
68
+ }
69
+
70
+ .adm-picker-view-column-accessible > * {
71
+ flex: 1;
72
+ text-overflow: ellipsis;
73
+ }
74
+
75
+ .adm-picker-view-column-accessible-current {
76
+ position: absolute;
77
+ width: 100%;
78
+ height: 100%;
79
+ }
80
+
81
+ .adm-picker-view-column-accessible-button {
82
+ width: 100%;
83
+ height: 100%;
84
+ }
85
+
59
86
  .adm-picker-view-mask {
60
87
  position: absolute;
88
+ z-index: 100;
61
89
  left: 0;
90
+ top: 0;
62
91
  width: 100%;
63
- height: calc(50% - 24px);
92
+ height: 100%;
93
+ display: flex;
94
+ flex-direction: column;
64
95
  pointer-events: none;
65
96
  }
66
97
 
67
- .adm-picker-view-mask-top {
68
- top: -10px;
98
+ .adm-picker-view-mask-top,
99
+ .adm-picker-view-mask-bottom {
100
+ flex: auto;
101
+ }
102
+
103
+ .adm-picker-view-mask-middle {
104
+ height: 68px;
105
+ box-sizing: border-box;
106
+ flex: none;
107
+ border-top: solid 2px var(--adm-border-color);
69
108
  border-bottom: solid 2px var(--adm-border-color);
109
+ }
110
+
111
+ .adm-picker-view-mask-top {
70
112
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.7) 50%, #ffffff);
71
113
  }
72
114
 
73
115
  .adm-picker-view-mask-bottom {
74
- bottom: -10px;
75
- border-top: solid 2px var(--adm-border-color);
76
116
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.7) 50%, #ffffff);
77
117
  }
@@ -59,8 +59,12 @@ export var PickerView = /*#__PURE__*/memo(function (p) {
59
59
  }
60
60
  });
61
61
  }), /*#__PURE__*/React.createElement("div", {
62
- className: classPrefix + "-mask " + classPrefix + "-mask-top"
62
+ className: classPrefix + "-mask"
63
+ }, /*#__PURE__*/React.createElement("div", {
64
+ className: classPrefix + "-mask-top"
63
65
  }), /*#__PURE__*/React.createElement("div", {
64
- className: classPrefix + "-mask " + classPrefix + "-mask-bottom"
65
- })));
66
+ className: classPrefix + "-mask-middle"
67
+ }), /*#__PURE__*/React.createElement("div", {
68
+ className: classPrefix + "-mask-bottom"
69
+ }))));
66
70
  });
@@ -1,5 +1,6 @@
1
1
  import classNames from 'classnames';
2
2
  import React, { useState, useRef } from 'react';
3
+ import { useUnmountedRef } from 'ahooks';
3
4
  import { withNativeProps } from '../../utils/native-props';
4
5
  import { mergeProps } from '../../utils/with-default-props';
5
6
  import Mask from '../mask';
@@ -29,6 +30,7 @@ export var Popup = function Popup(p) {
29
30
 
30
31
  useLockScroll(ref, active);
31
32
  var shouldRender = useShouldRender(active, props.forceRender, props.destroyOnClose);
33
+ var unmountedRef = useUnmountedRef();
32
34
 
33
35
  var _useSpring = useSpring({
34
36
  percent: props.visible ? 0 : 100,
@@ -44,6 +46,7 @@ export var Popup = function Popup(p) {
44
46
  onRest: function onRest() {
45
47
  var _a, _b;
46
48
 
49
+ if (unmountedRef.current) return;
47
50
  setActive(props.visible);
48
51
 
49
52
  if (props.visible) {
@@ -37,7 +37,7 @@
37
37
 
38
38
  .adm-search-bar .adm-search-bar-input-box .adm-search-bar-input .adm-input {
39
39
  font-size: 26px;
40
- line-height: 40px;
40
+ line-height: 38px;
41
41
  }
42
42
 
43
43
  .adm-search-bar .adm-search-bar-suffix {
@@ -16,7 +16,8 @@
16
16
  display: flex;
17
17
  justify-content: center;
18
18
  align-items: stretch;
19
- width: fit-content;
19
+ width: auto;
20
+ white-space: nowrap;
20
21
  }
21
22
 
22
23
  .adm-swipe-action-actions-right {
@@ -15,11 +15,11 @@ var defaultProps = {
15
15
  allowTouchMove: true,
16
16
  autoplay: false,
17
17
  autoplayInterval: 3000,
18
- loop: true,
18
+ loop: false,
19
19
  direction: 'horizontal',
20
20
  slideSize: 100,
21
21
  trackOffset: 0,
22
- stuckAtBoundary: false,
22
+ stuckAtBoundary: true,
23
23
  rubberband: true
24
24
  };
25
25
  export var Swiper = /*#__PURE__*/forwardRef(staged(function (p, ref) {
@@ -84,7 +84,7 @@ export var Swiper = /*#__PURE__*/forwardRef(staged(function (p, ref) {
84
84
  var max = count - 1;
85
85
 
86
86
  if (props.stuckAtBoundary) {
87
- min += (1 - slideRatio - offsetRatio) / slideRatio;
87
+ min += offsetRatio / slideRatio;
88
88
  max -= (1 - slideRatio - offsetRatio) / slideRatio;
89
89
  }
90
90
 
@@ -244,7 +244,7 @@ export var Swiper = /*#__PURE__*/forwardRef(staged(function (p, ref) {
244
244
  var flagWidth = totalWidth / 2;
245
245
  finalPosition = modulus(finalPosition + flagWidth, totalWidth) - flagWidth;
246
246
  return finalPosition + "%";
247
- }), _style.left = "-" + index * 100 + "%", _style)
247
+ }), _style[isVertical ? 'top' : 'left'] = "-" + index * 100 + "%", _style)
248
248
  }, child);
249
249
  }));
250
250
  } else {
@@ -6,6 +6,9 @@
6
6
 
7
7
  .adm-switch {
8
8
  --checked-color: var(--adm-color-primary);
9
+ --height: 60px;
10
+ --width: 100px;
11
+ --border-width: 4px;
9
12
  display: inline-block;
10
13
  vertical-align: middle;
11
14
  box-sizing: border-box;
@@ -22,24 +25,24 @@
22
25
  }
23
26
 
24
27
  .adm-switch-checkbox {
25
- min-width: 102px;
26
- height: 62px;
28
+ min-width: var(--width);
29
+ height: var(--height);
27
30
  box-sizing: border-box;
28
31
  border-radius: 62px;
29
32
  background: #e5e5e5;
30
33
  z-index: 0;
31
34
  overflow: hidden;
32
- line-height: 62px;
35
+ line-height: var(--height);
33
36
  }
34
37
 
35
38
  .adm-switch-checkbox:before {
36
39
  content: ' ';
37
40
  position: absolute;
38
- left: 4px;
39
- top: 4px;
40
- width: calc(100% - 2 * 4px);
41
- height: 54px;
42
- border-radius: 54px;
41
+ left: var(--border-width);
42
+ top: var(--border-width);
43
+ width: calc(100% - 2 * var(--border-width));
44
+ height: calc(var(--height) - 2 * var(--border-width));
45
+ border-radius: calc(var(--height) - 2 * var(--border-width));
43
46
  box-sizing: border-box;
44
47
  background: #fff;
45
48
  z-index: 1;
@@ -51,14 +54,14 @@
51
54
  display: flex;
52
55
  justify-content: center;
53
56
  align-items: center;
54
- width: 54px;
55
- height: 54px;
56
- border-radius: 54px;
57
+ width: calc(var(--height) - 2 * var(--border-width));
58
+ height: calc(var(--height) - 2 * var(--border-width));
59
+ border-radius: calc(var(--height) - 2 * var(--border-width));
57
60
  background: #fff;
58
61
  position: absolute;
59
62
  z-index: 2;
60
- top: 4px;
61
- left: 4px;
63
+ top: var(--border-width);
64
+ left: var(--border-width);
62
65
  transition: all 200ms;
63
66
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2), 0 4px 23px 0 rgba(0, 0, 0, 0.08), -2px 4px 4px 0 rgba(0, 0, 0, 0.1);
64
67
  }
@@ -66,7 +69,7 @@
66
69
  .adm-switch-inner {
67
70
  position: relative;
68
71
  z-index: 1;
69
- margin: 0 20px 0 68px;
72
+ margin: 0 20px 0 calc(var(--height) - var(--border-width) + 10px);
70
73
  color: var(--adm-color-weak);
71
74
  transition: margin 200ms;
72
75
  }
@@ -80,11 +83,11 @@
80
83
  }
81
84
 
82
85
  .adm-switch.adm-switch-checked .adm-switch-handle {
83
- left: calc(100% - (62px - 4px));
86
+ left: calc(100% - (var(--height) - var(--border-width)));
84
87
  }
85
88
 
86
89
  .adm-switch.adm-switch-checked .adm-switch-inner {
87
- margin: 0 68px 0 20px;
90
+ margin: 0 calc(var(--height) - var(--border-width) + 10px) 0 20px;
88
91
  color: var(--adm-color-white);
89
92
  }
90
93
 
@@ -9,5 +9,5 @@ export declare type SwitchProps = {
9
9
  onChange?: (checked: boolean) => void;
10
10
  checkedText?: ReactNode;
11
11
  uncheckedText?: ReactNode;
12
- } & NativeProps<'--checked-color'>;
12
+ } & NativeProps<'--checked-color' | '--width' | '--height' | '--border-width'>;
13
13
  export declare const Switch: FC<SwitchProps>;
@@ -1,7 +1,8 @@
1
1
  .adm-tag {
2
2
  --border-radius: var(--adm-tag-border-radius, 4px);
3
- padding: 4px 8px;
4
- font-size: 20px;
3
+ padding: 6px 10px;
4
+ font-size: 24px;
5
+ line-height: 1;
5
6
  font-weight: normal;
6
7
  background: var(--background-color);
7
8
  color: var(--text-color);
@@ -1,8 +1,9 @@
1
1
  import './toast.less';
2
- import { clear, show } from './methods';
2
+ import { clear, show, config } from './methods';
3
3
  export type { ToastShowProps } from './methods';
4
4
  declare const Toast: {
5
5
  show: typeof show;
6
6
  clear: typeof clear;
7
+ config: typeof config;
7
8
  };
8
9
  export default Toast;
@@ -1,7 +1,8 @@
1
1
  import "./toast.css";
2
- import { clear, show } from './methods';
2
+ import { clear, show, config } from './methods';
3
3
  var Toast = {
4
4
  show: show,
5
- clear: clear
5
+ clear: clear,
6
+ config: config
6
7
  };
7
8
  export default Toast;
@@ -2,3 +2,4 @@ import { ToastProps } from './toast';
2
2
  export declare type ToastShowProps = Omit<ToastProps, 'visible'>;
3
3
  export declare function show(p: ToastShowProps | string): void;
4
4
  export declare function clear(): void;
5
+ export declare function config(val: Pick<ToastProps, 'duration' | 'position' | 'maskClickable'>): void;
@@ -14,7 +14,9 @@ function unmount(container) {
14
14
  }
15
15
 
16
16
  var defaultProps = {
17
- duration: 2000
17
+ duration: 2000,
18
+ position: 'center',
19
+ maskClickable: true
18
20
  };
19
21
  export function show(p) {
20
22
  var props = mergeProps(defaultProps, typeof p === 'string' ? {
@@ -74,4 +76,17 @@ export function clear() {
74
76
  if (!container) break;
75
77
  unmount(container);
76
78
  }
79
+ }
80
+ export function config(val) {
81
+ if (val.duration !== undefined) {
82
+ defaultProps.duration = val.duration;
83
+ }
84
+
85
+ if (val.position !== undefined) {
86
+ defaultProps.position = val.position;
87
+ }
88
+
89
+ if (val.maskClickable !== undefined) {
90
+ defaultProps.maskClickable = val.maskClickable;
91
+ }
77
92
  }
@@ -2,29 +2,32 @@
2
2
  position: absolute;
3
3
  top: 50%;
4
4
  left: 50%;
5
- width: fit-content;
5
+ width: auto;
6
6
  min-width: 192px;
7
7
  max-width: 70%;
8
8
  max-height: 70%;
9
9
  overflow: auto;
10
10
  color: white;
11
- text-align: center;
12
11
  word-break: break-all;
13
12
  background-color: rgba(0, 0, 0, 0.7);
14
13
  border-radius: 16px;
15
14
  transform: translate(-50%, -50%);
16
15
  pointer-events: all;
16
+ font-size: 30px;
17
+ line-height: 1.5;
18
+ box-sizing: border-box;
17
19
  }
18
20
 
19
21
  .adm-toast-mask .adm-toast-wrap-text {
20
- padding: 16px 24px;
22
+ padding: 24px;
21
23
  }
22
24
 
23
25
  .adm-toast-mask .adm-toast-wrap-icon {
24
- padding: 32px;
26
+ padding: 70px 80px;
25
27
  }
26
28
 
27
29
  .adm-toast-mask .adm-toast-wrap-icon .adm-toast-icon {
30
+ text-align: center;
28
31
  margin-bottom: 16px;
29
32
  font-size: 72px;
30
33
  line-height: 1;
@@ -4,6 +4,7 @@ import { CheckOutline, CloseOutline } from 'antd-mobile-icons';
4
4
  import Loading from '../loading';
5
5
  import Mask from '../mask';
6
6
  import { mergeProps } from '../../utils/with-default-props';
7
+ import AutoCenter from '../auto-center';
7
8
  var classPrefix = "adm-toast";
8
9
  var defaultProps = {
9
10
  maskClickable: true,
@@ -66,5 +67,5 @@ export var InternalToast = function InternalToast(p) {
66
67
  className: classNames(classPrefix + "-wrap", icon ? classPrefix + "-wrap-icon" : classPrefix + "-wrap-text")
67
68
  }, iconElement && /*#__PURE__*/React.createElement("div", {
68
69
  className: classPrefix + "-icon"
69
- }, iconElement), content));
70
+ }, iconElement), /*#__PURE__*/React.createElement(AutoCenter, null, content)));
70
71
  };
@@ -6,30 +6,35 @@
6
6
  --text-align: left;
7
7
  --caret-width: var(--adm-virtual-input-caret-width, 4px);
8
8
  --caret-color: var(--adm-virtual-input-caret-color, var(--adm-color-primary));
9
+ display: flex;
10
+ justify-content: flex-start;
11
+ align-items: center;
9
12
  position: relative;
10
13
  text-align: var(--text-align);
11
14
  font-size: var(--font-size);
12
15
  line-height: 1.5;
13
16
  white-space: nowrap;
14
- display: block;
15
- overflow-y: hidden;
16
- overflow-x: scroll;
17
17
  color: var(--color);
18
- scrollbar-width: none;
19
18
  }
20
19
 
21
20
  .adm-virtual-input > * {
22
21
  vertical-align: top;
23
22
  }
24
23
 
25
- .adm-virtual-input::-webkit-scrollbar {
26
- display: none;
27
- }
28
-
29
24
  .adm-virtual-input-content {
25
+ flex: auto;
30
26
  display: inline-block;
31
27
  position: relative;
32
28
  z-index: 1;
29
+ width: 100%;
30
+ max-width: 100%;
31
+ overflow-y: hidden;
32
+ overflow-x: scroll;
33
+ scrollbar-width: none;
34
+ }
35
+
36
+ .adm-virtual-input-content::-webkit-scrollbar {
37
+ display: none;
33
38
  }
34
39
 
35
40
  .adm-virtual-input-placeholder {
@@ -49,10 +54,10 @@
49
54
  width: var(--caret-width);
50
55
  height: 1.3em;
51
56
  vertical-align: top;
57
+ margin-right: 2px;
52
58
  }
53
59
 
54
60
  .adm-virtual-input-caret {
55
- display: none;
56
61
  width: 100%;
57
62
  height: 100%;
58
63
  background-color: var(--caret-color);
@@ -92,4 +97,17 @@
92
97
  to {
93
98
  opacity: 0;
94
99
  }
100
+ }
101
+
102
+ .adm-virtual-input-clear {
103
+ flex: none;
104
+ margin-left: 16px;
105
+ color: var(--placeholder-color);
106
+ padding: 6px;
107
+ cursor: pointer;
108
+ }
109
+
110
+ .adm-virtual-input-clear .antd-mobile-icon {
111
+ display: block;
112
+ font-size: 28px;
95
113
  }
@@ -7,6 +7,8 @@ export declare type VirtualInputProps = {
7
7
  onBlur?: () => void;
8
8
  onClick?: (e: React.MouseEvent<HTMLDivElement>) => void;
9
9
  keyboard?: ReactElement<NumberKeyboardProps>;
10
+ clearable?: boolean;
11
+ onClear?: () => void;
10
12
  } & Pick<InputProps, 'value' | 'onChange' | 'placeholder' | 'disabled'> & NativeProps<'--font-size' | '--color' | '--placeholder-color' | '--disabled-color' | '--text-align' | '--caret-width' | '--caret-color'>;
11
13
  export declare type VirtualInputRef = {
12
14
  focus: () => void;
@@ -17,4 +19,6 @@ export declare const VirtualInput: React.ForwardRefExoticComponent<{
17
19
  onBlur?: (() => void) | undefined;
18
20
  onClick?: ((e: React.MouseEvent<HTMLDivElement>) => void) | undefined;
19
21
  keyboard?: React.ReactElement<NumberKeyboardProps, string | ((props: any) => React.ReactElement<any, any> | null) | (new (props: any) => React.Component<any, any, any>)> | undefined;
22
+ clearable?: boolean | undefined;
23
+ onClear?: (() => void) | undefined;
20
24
  } & Pick<InputProps, "value" | "disabled" | "onChange" | "placeholder"> & NativeProps<"--font-size" | "--color" | "--placeholder-color" | "--disabled-color" | "--text-align" | "--caret-width" | "--caret-color"> & React.RefAttributes<VirtualInputRef>>;
@@ -1,8 +1,9 @@
1
- import React, { forwardRef, useImperativeHandle, useLayoutEffect, useRef, useState } from 'react';
1
+ import React, { forwardRef, useEffect, useImperativeHandle, useLayoutEffect, useRef, useState } from 'react';
2
2
  import { withNativeProps } from '../../utils/native-props';
3
3
  import { mergeProps } from '../../utils/with-default-props';
4
4
  import { usePropsValue } from '../../utils/use-props-value';
5
5
  import classNames from 'classnames';
6
+ import { CloseCircleFill } from 'antd-mobile-icons';
6
7
  var classPrefix = 'adm-virtual-input';
7
8
  var defaultProps = {
8
9
  defaultValue: ''
@@ -17,12 +18,13 @@ export var VirtualInput = /*#__PURE__*/forwardRef(function (p, ref) {
17
18
  setValue = _usePropsValue[1];
18
19
 
19
20
  var rootRef = useRef(null);
21
+ var contentRef = useRef(null);
20
22
 
21
23
  var _useState = useState(false),
22
- keyboardVisible = _useState[0],
23
- setKeyboardVisible = _useState[1];
24
+ hasFocus = _useState[0],
25
+ setHasFocus = _useState[1];
24
26
 
25
- useLayoutEffect(function () {
27
+ function scrollToEnd() {
26
28
  var root = rootRef.current;
27
29
  if (!root) return;
28
30
 
@@ -30,10 +32,21 @@ export var VirtualInput = /*#__PURE__*/forwardRef(function (p, ref) {
30
32
  return;
31
33
  }
32
34
 
33
- root.scrollTo({
34
- left: root.clientWidth
35
+ var content = contentRef.current;
36
+ if (!content) return;
37
+ content.scrollTo({
38
+ left: content.clientWidth
35
39
  });
40
+ }
41
+
42
+ useLayoutEffect(function () {
43
+ scrollToEnd();
36
44
  }, [value]);
45
+ useEffect(function () {
46
+ if (hasFocus) {
47
+ scrollToEnd();
48
+ }
49
+ }, [hasFocus]);
37
50
  useImperativeHandle(ref, function () {
38
51
  return {
39
52
  focus: function focus() {
@@ -49,10 +62,17 @@ export var VirtualInput = /*#__PURE__*/forwardRef(function (p, ref) {
49
62
  };
50
63
  });
51
64
 
65
+ function onFocus() {
66
+ var _a;
67
+
68
+ setHasFocus(true);
69
+ (_a = props.onFocus) === null || _a === void 0 ? void 0 : _a.call(props);
70
+ }
71
+
52
72
  function onBlur() {
53
73
  var _a;
54
74
 
55
- setKeyboardVisible(false);
75
+ setHasFocus(false);
56
76
  (_a = props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props);
57
77
  }
58
78
 
@@ -60,21 +80,26 @@ export var VirtualInput = /*#__PURE__*/forwardRef(function (p, ref) {
60
80
  ref: rootRef,
61
81
  className: classNames(classPrefix, (_classNames = {}, _classNames[classPrefix + "-disabled"] = props.disabled, _classNames)),
62
82
  tabIndex: props.disabled ? undefined : 0,
63
- onFocus: function onFocus() {
64
- var _a;
65
-
66
- setKeyboardVisible(true);
67
- (_a = props.onFocus) === null || _a === void 0 ? void 0 : _a.call(props);
68
- },
83
+ onFocus: onFocus,
69
84
  onBlur: onBlur,
70
85
  onClick: props.onClick
71
86
  }, /*#__PURE__*/React.createElement("div", {
72
- className: classPrefix + "-content"
87
+ className: classPrefix + "-content",
88
+ ref: contentRef
73
89
  }, value, /*#__PURE__*/React.createElement("div", {
74
90
  className: classPrefix + "-caret-container"
75
- }, /*#__PURE__*/React.createElement("div", {
91
+ }, hasFocus && /*#__PURE__*/React.createElement("div", {
76
92
  className: classPrefix + "-caret"
77
- }))), !value && /*#__PURE__*/React.createElement("div", {
93
+ }))), props.clearable && !!value && hasFocus && /*#__PURE__*/React.createElement("div", {
94
+ className: classPrefix + "-clear",
95
+ onClick: function onClick(e) {
96
+ var _a;
97
+
98
+ e.stopPropagation();
99
+ setValue('');
100
+ (_a = props.onClear) === null || _a === void 0 ? void 0 : _a.call(props);
101
+ }
102
+ }, /*#__PURE__*/React.createElement(CloseCircleFill, null)), !value && /*#__PURE__*/React.createElement("div", {
78
103
  className: classPrefix + "-placeholder"
79
104
  }, props.placeholder), props.keyboard && /*#__PURE__*/React.cloneElement(props.keyboard, {
80
105
  onInput: function onInput(v) {
@@ -83,7 +108,11 @@ export var VirtualInput = /*#__PURE__*/forwardRef(function (p, ref) {
83
108
  onDelete: function onDelete() {
84
109
  setValue(value.slice(0, -1));
85
110
  },
86
- visible: keyboardVisible,
87
- onClose: onBlur
111
+ visible: hasFocus,
112
+ onClose: function onClose() {
113
+ var _a;
114
+
115
+ (_a = rootRef.current) === null || _a === void 0 ? void 0 : _a.blur();
116
+ }
88
117
  })));
89
118
  });
package/2x/es/index.d.ts CHANGED
@@ -4,22 +4,25 @@ export { default as ActionSheet } from './components/action-sheet';
4
4
  export { default as AutoCenter } from './components/auto-center';
5
5
  export { default as Badge } from './components/badge';
6
6
  export { default as Button } from './components/button';
7
+ export { default as CapsuleTabs } from './components/capsule-tabs';
7
8
  export { default as Card } from './components/card';
8
9
  export { default as CascadePicker } from './components/cascade-picker';
9
10
  export { default as CascadePickerView } from './components/cascade-picker-view';
11
+ export { default as Cascader } from './components/cascader';
12
+ export { default as CascaderView } from './components/cascader-view';
10
13
  export { default as CheckList } from './components/check-list';
11
14
  export { default as Checkbox } from './components/checkbox';
12
15
  export { default as Collapse } from './components/collapse';
13
16
  export { default as ConfigProvider } from './components/config-provider';
14
17
  export { default as DatePicker } from './components/date-picker';
15
18
  export { default as DatePickerView } from './components/date-picker-view';
16
- export { default as DesenseText } from './components/desense-text';
17
19
  export { default as Dialog } from './components/dialog';
18
20
  export { default as Divider } from './components/divider';
19
21
  export { default as Dropdown } from './components/dropdown';
20
22
  export { default as Ellipsis } from './components/ellipsis';
21
23
  export { default as Empty } from './components/empty';
22
24
  export { default as ErrorBlock } from './components/error-block';
25
+ export { default as FloatingBubble } from './components/floating-bubble';
23
26
  export { default as FloatingPanel } from './components/floating-panel';
24
27
  export { default as Form } from './components/form';
25
28
  export { default as Grid } from './components/grid';
@@ -29,11 +32,14 @@ export { default as ImageViewer } from './components/image-viewer';
29
32
  export { default as IndexBar } from './components/index-bar';
30
33
  export { default as InfiniteScroll } from './components/infinite-scroll';
31
34
  export { default as Input } from './components/input';
35
+ export { default as JumboTabs } from './components/jumbo-tabs';
32
36
  export { default as List } from './components/list';
33
37
  export { default as Loading } from './components/loading';
34
38
  export { default as Mask } from './components/mask';
39
+ export { default as Modal } from './components/modal';
35
40
  export { default as NavBar } from './components/nav-bar';
36
41
  export { default as NoticeBar } from './components/notice-bar';
42
+ export { default as NumberKeyboard } from './components/number-keyboard';
37
43
  export { default as PageIndicator } from './components/page-indicator';
38
44
  export { default as Picker } from './components/picker';
39
45
  export { default as PickerView } from './components/picker-view';
@@ -46,9 +52,11 @@ export { default as Radio } from './components/radio';
46
52
  export { default as Rate } from './components/rate';
47
53
  export { default as Result } from './components/result';
48
54
  export { default as SafeArea } from './components/safe-area';
49
- export { default as SearchBar } from './components/search-bar';
55
+ export { default as ScrollMask } from './components/scroll-mask';
50
56
  export { default as Search } from './components/search-bar';
57
+ export { default as SearchBar } from './components/search-bar';
51
58
  export { default as Selector } from './components/selector';
59
+ export { default as SideBar } from './components/side-bar';
52
60
  export { default as Slider } from './components/slider';
53
61
  export { default as Space } from './components/space';
54
62
  export { default as Stepper } from './components//stepper';
@@ -58,15 +66,10 @@ export { default as Swiper } from './components/swiper';
58
66
  export { default as Switch } from './components/switch';
59
67
  export { default as TabBar } from './components/tab-bar';
60
68
  export { default as Tabs } from './components/tabs';
61
- export { default as CapsuleTabs } from './components/capsule-tabs';
62
- export { default as JumboTabs } from './components/jumbo-tabs';
63
69
  export { default as Tag } from './components/tag';
64
70
  export { default as TextArea } from './components/text-area';
65
71
  export { default as Toast } from './components/toast';
66
72
  export { default as TreeSelect } from './components/tree-select';
67
73
  export { default as VirtualInput } from './components/virtual-input';
68
74
  export { default as WaterMark } from './components/water-mark';
69
- export { default as NumberKeyboard } from './components/number-keyboard';
70
- export { default as SideBar } from './components/side-bar';
71
- export { default as ScrollMask } from './components/scroll-mask';
72
- export { default as FloatingBubble } from './components/floating-bubble';
75
+ export { default as PasscodeInput } from './components/passcode-input';