antd-mobile 5.15.0 → 5.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (336) hide show
  1. package/2x/README.md +30 -16
  2. package/2x/bundle/antd-mobile.cjs.js +381 -228
  3. package/2x/bundle/antd-mobile.es.js +382 -229
  4. package/2x/bundle/style.css +66 -13
  5. package/2x/cjs/components/action-sheet/action-sheet.d.ts +2 -4
  6. package/2x/cjs/components/action-sheet/action-sheet.js +6 -2
  7. package/2x/cjs/components/button/button.d.ts +5 -1
  8. package/2x/cjs/components/cascader/cascader.d.ts +29 -4
  9. package/2x/cjs/components/cascader/cascader.js +41 -19
  10. package/2x/cjs/components/cascader/index.d.ts +21 -2
  11. package/2x/cjs/components/center-popup/center-popup.css +11 -0
  12. package/2x/cjs/components/center-popup/center-popup.d.ts +4 -20
  13. package/2x/cjs/components/center-popup/center-popup.js +29 -14
  14. package/2x/cjs/components/checkbox/checkbox.d.ts +5 -1
  15. package/2x/cjs/components/checkbox/index.d.ts +5 -1
  16. package/2x/cjs/components/checkbox/native-input.js +10 -8
  17. package/2x/cjs/components/date-picker/date-picker-date-utils.js +12 -15
  18. package/2x/cjs/components/date-picker/date-picker-week-utils.js +12 -15
  19. package/2x/cjs/components/date-picker/date-picker.d.ts +7 -3
  20. package/2x/cjs/components/date-picker/date-picker.js +3 -1
  21. package/2x/cjs/components/date-picker/index.d.ts +6 -2
  22. package/2x/cjs/components/dialog/dialog.js +5 -2
  23. package/2x/cjs/components/dropdown/dropdown.d.ts +5 -1
  24. package/2x/cjs/components/dropdown/index.d.ts +5 -1
  25. package/2x/cjs/components/floating-panel/floating-panel.d.ts +5 -1
  26. package/2x/cjs/components/form/form.d.ts +5 -1
  27. package/2x/cjs/components/form/index.d.ts +5 -1
  28. package/2x/cjs/components/index-bar/index-bar.d.ts +5 -1
  29. package/2x/cjs/components/index-bar/index.d.ts +5 -1
  30. package/2x/cjs/components/input/input.css +4 -0
  31. package/2x/cjs/components/input/input.d.ts +11 -4
  32. package/2x/cjs/components/input/input.js +5 -1
  33. package/2x/cjs/components/list/index.d.ts +10 -2
  34. package/2x/cjs/components/list/list.d.ts +13 -2
  35. package/2x/cjs/components/list/list.js +16 -6
  36. package/2x/cjs/components/modal/modal-action-button.d.ts +2 -2
  37. package/2x/cjs/components/modal/modal.css +0 -9
  38. package/2x/cjs/components/modal/modal.js +6 -12
  39. package/2x/cjs/components/number-keyboard/number-keyboard.d.ts +1 -5
  40. package/2x/cjs/components/number-keyboard/number-keyboard.js +13 -7
  41. package/2x/cjs/components/passcode-input/passcode-input.d.ts +5 -1
  42. package/2x/cjs/components/picker/index.d.ts +10 -6
  43. package/2x/cjs/components/picker/picker.d.ts +6 -6
  44. package/2x/cjs/components/picker/picker.js +8 -7
  45. package/2x/cjs/components/picker-view/picker-view.css +1 -0
  46. package/2x/cjs/components/picker-view/wheel.js +10 -8
  47. package/2x/cjs/components/popover/index.d.ts +5 -1
  48. package/2x/cjs/components/popover/popover.d.ts +5 -1
  49. package/2x/cjs/components/popup/popup-base-props.d.ts +35 -0
  50. package/2x/cjs/components/popup/popup-base-props.js +18 -0
  51. package/2x/cjs/components/popup/popup.css +32 -0
  52. package/2x/cjs/components/popup/popup.d.ts +3 -19
  53. package/2x/cjs/components/popup/popup.js +43 -18
  54. package/2x/cjs/components/progress-bar/progress-bar.css +17 -3
  55. package/2x/cjs/components/progress-bar/progress-bar.d.ts +4 -2
  56. package/2x/cjs/components/progress-bar/progress-bar.js +27 -5
  57. package/2x/cjs/components/radio/radio.js +3 -3
  58. package/2x/cjs/components/search-bar/search-bar.d.ts +5 -1
  59. package/2x/cjs/components/slider/slider.js +2 -1
  60. package/2x/cjs/components/slider/thumb.d.ts +2 -1
  61. package/2x/cjs/components/slider/thumb.js +13 -1
  62. package/2x/cjs/components/stepper/stepper.js +14 -3
  63. package/2x/cjs/components/steps/steps.css +1 -1
  64. package/2x/cjs/components/swipe-action/swipe-action.d.ts +5 -1
  65. package/2x/cjs/components/swiper/index.d.ts +10 -2
  66. package/2x/cjs/components/swiper/swiper.d.ts +5 -1
  67. package/2x/cjs/components/switch/switch.js +10 -1
  68. package/2x/cjs/components/text-area/text-area.d.ts +5 -1
  69. package/2x/cjs/components/virtual-input/virtual-input.d.ts +5 -1
  70. package/2x/cjs/locales/base.d.ts +10 -0
  71. package/2x/cjs/locales/base.js +10 -0
  72. package/2x/cjs/locales/en-US.d.ts +10 -0
  73. package/2x/cjs/locales/es-ES.d.ts +10 -0
  74. package/2x/cjs/locales/fa-IR.d.ts +10 -0
  75. package/2x/cjs/locales/fr-FR.d.ts +10 -0
  76. package/2x/cjs/locales/id-ID.d.ts +118 -0
  77. package/2x/cjs/locales/id-ID.js +121 -0
  78. package/2x/cjs/locales/kk-KZ.d.ts +118 -0
  79. package/2x/cjs/locales/kk-KZ.js +124 -0
  80. package/2x/cjs/locales/ko-KR.d.ts +10 -0
  81. package/2x/cjs/locales/zh-CN.d.ts +10 -0
  82. package/2x/cjs/locales/zh-CN.js +10 -0
  83. package/2x/cjs/locales/zh-HK.d.ts +10 -0
  84. package/2x/cjs/locales/zh-TW.d.ts +10 -0
  85. package/2x/cjs/utils/native-props.d.ts +3 -3
  86. package/2x/es/components/action-sheet/action-sheet.d.ts +2 -4
  87. package/2x/es/components/action-sheet/action-sheet.js +6 -2
  88. package/2x/es/components/button/button.d.ts +5 -1
  89. package/2x/es/components/cascader/cascader.d.ts +29 -4
  90. package/2x/es/components/cascader/cascader.js +42 -18
  91. package/2x/es/components/cascader/index.d.ts +21 -2
  92. package/2x/es/components/center-popup/center-popup.css +11 -0
  93. package/2x/es/components/center-popup/center-popup.d.ts +4 -20
  94. package/2x/es/components/center-popup/center-popup.js +27 -14
  95. package/2x/es/components/checkbox/checkbox.d.ts +5 -1
  96. package/2x/es/components/checkbox/index.d.ts +5 -1
  97. package/2x/es/components/checkbox/native-input.js +9 -8
  98. package/2x/es/components/date-picker/date-picker-date-utils.js +12 -15
  99. package/2x/es/components/date-picker/date-picker-week-utils.js +12 -15
  100. package/2x/es/components/date-picker/date-picker.d.ts +7 -3
  101. package/2x/es/components/date-picker/date-picker.js +3 -1
  102. package/2x/es/components/date-picker/index.d.ts +6 -2
  103. package/2x/es/components/dialog/dialog.js +5 -2
  104. package/2x/es/components/dropdown/dropdown.d.ts +5 -1
  105. package/2x/es/components/dropdown/index.d.ts +5 -1
  106. package/2x/es/components/floating-panel/floating-panel.d.ts +5 -1
  107. package/2x/es/components/form/form.d.ts +5 -1
  108. package/2x/es/components/form/index.d.ts +5 -1
  109. package/2x/es/components/index-bar/index-bar.d.ts +5 -1
  110. package/2x/es/components/index-bar/index.d.ts +5 -1
  111. package/2x/es/components/input/input.css +4 -0
  112. package/2x/es/components/input/input.d.ts +11 -4
  113. package/2x/es/components/input/input.js +5 -1
  114. package/2x/es/components/list/index.d.ts +10 -2
  115. package/2x/es/components/list/list.d.ts +13 -2
  116. package/2x/es/components/list/list.js +12 -4
  117. package/2x/es/components/modal/modal-action-button.d.ts +2 -2
  118. package/2x/es/components/modal/modal.css +0 -9
  119. package/2x/es/components/modal/modal.js +6 -11
  120. package/2x/es/components/number-keyboard/number-keyboard.d.ts +1 -5
  121. package/2x/es/components/number-keyboard/number-keyboard.js +13 -7
  122. package/2x/es/components/passcode-input/passcode-input.d.ts +5 -1
  123. package/2x/es/components/picker/index.d.ts +10 -6
  124. package/2x/es/components/picker/picker.d.ts +6 -6
  125. package/2x/es/components/picker/picker.js +8 -6
  126. package/2x/es/components/picker-view/picker-view.css +1 -0
  127. package/2x/es/components/picker-view/wheel.js +10 -8
  128. package/2x/es/components/popover/index.d.ts +5 -1
  129. package/2x/es/components/popover/popover.d.ts +5 -1
  130. package/2x/es/components/popup/popup-base-props.d.ts +35 -0
  131. package/2x/es/components/popup/popup-base-props.js +11 -0
  132. package/2x/es/components/popup/popup.css +32 -0
  133. package/2x/es/components/popup/popup.d.ts +3 -19
  134. package/2x/es/components/popup/popup.js +41 -19
  135. package/2x/es/components/progress-bar/progress-bar.css +17 -3
  136. package/2x/es/components/progress-bar/progress-bar.d.ts +4 -2
  137. package/2x/es/components/progress-bar/progress-bar.js +25 -5
  138. package/2x/es/components/radio/radio.js +3 -3
  139. package/2x/es/components/search-bar/search-bar.d.ts +5 -1
  140. package/2x/es/components/slider/slider.js +2 -1
  141. package/2x/es/components/slider/thumb.d.ts +2 -1
  142. package/2x/es/components/slider/thumb.js +12 -1
  143. package/2x/es/components/stepper/stepper.js +13 -3
  144. package/2x/es/components/steps/steps.css +1 -1
  145. package/2x/es/components/swipe-action/swipe-action.d.ts +5 -1
  146. package/2x/es/components/swiper/index.d.ts +10 -2
  147. package/2x/es/components/swiper/swiper.d.ts +5 -1
  148. package/2x/es/components/switch/switch.js +9 -1
  149. package/2x/es/components/text-area/text-area.d.ts +5 -1
  150. package/2x/es/components/virtual-input/virtual-input.d.ts +5 -1
  151. package/2x/es/locales/base.d.ts +10 -0
  152. package/2x/es/locales/base.js +10 -0
  153. package/2x/es/locales/en-US.d.ts +10 -0
  154. package/2x/es/locales/es-ES.d.ts +10 -0
  155. package/2x/es/locales/fa-IR.d.ts +10 -0
  156. package/2x/es/locales/fr-FR.d.ts +10 -0
  157. package/2x/es/locales/id-ID.d.ts +118 -0
  158. package/2x/es/locales/id-ID.js +111 -0
  159. package/2x/es/locales/kk-KZ.d.ts +118 -0
  160. package/2x/es/locales/kk-KZ.js +114 -0
  161. package/2x/es/locales/ko-KR.d.ts +10 -0
  162. package/2x/es/locales/zh-CN.d.ts +10 -0
  163. package/2x/es/locales/zh-CN.js +10 -0
  164. package/2x/es/locales/zh-HK.d.ts +10 -0
  165. package/2x/es/locales/zh-TW.d.ts +10 -0
  166. package/2x/es/utils/native-props.d.ts +3 -3
  167. package/2x/package.json +1 -1
  168. package/2x/umd/antd-mobile.js +1 -1
  169. package/README.md +30 -16
  170. package/bundle/antd-mobile.cjs.js +381 -228
  171. package/bundle/antd-mobile.es.js +382 -229
  172. package/bundle/style.css +56 -12
  173. package/cjs/components/action-sheet/action-sheet.d.ts +2 -4
  174. package/cjs/components/action-sheet/action-sheet.js +6 -2
  175. package/cjs/components/button/button.d.ts +5 -1
  176. package/cjs/components/cascader/cascader.d.ts +29 -4
  177. package/cjs/components/cascader/cascader.js +41 -19
  178. package/cjs/components/cascader/index.d.ts +21 -2
  179. package/cjs/components/center-popup/center-popup.css +10 -0
  180. package/cjs/components/center-popup/center-popup.d.ts +4 -20
  181. package/cjs/components/center-popup/center-popup.js +29 -14
  182. package/cjs/components/checkbox/checkbox.d.ts +5 -1
  183. package/cjs/components/checkbox/index.d.ts +5 -1
  184. package/cjs/components/checkbox/native-input.js +10 -8
  185. package/cjs/components/date-picker/date-picker-date-utils.js +12 -15
  186. package/cjs/components/date-picker/date-picker-week-utils.js +12 -15
  187. package/cjs/components/date-picker/date-picker.d.ts +7 -3
  188. package/cjs/components/date-picker/date-picker.js +3 -1
  189. package/cjs/components/date-picker/index.d.ts +6 -2
  190. package/cjs/components/dialog/dialog.js +5 -2
  191. package/cjs/components/dropdown/dropdown.d.ts +5 -1
  192. package/cjs/components/dropdown/index.d.ts +5 -1
  193. package/cjs/components/floating-panel/floating-panel.d.ts +5 -1
  194. package/cjs/components/form/form.d.ts +5 -1
  195. package/cjs/components/form/index.d.ts +5 -1
  196. package/cjs/components/index-bar/index-bar.d.ts +5 -1
  197. package/cjs/components/index-bar/index.d.ts +5 -1
  198. package/cjs/components/input/input.css +3 -0
  199. package/cjs/components/input/input.d.ts +11 -4
  200. package/cjs/components/input/input.js +5 -1
  201. package/cjs/components/list/index.d.ts +10 -2
  202. package/cjs/components/list/list.d.ts +13 -2
  203. package/cjs/components/list/list.js +16 -6
  204. package/cjs/components/modal/modal-action-button.d.ts +2 -2
  205. package/cjs/components/modal/modal.css +0 -8
  206. package/cjs/components/modal/modal.js +6 -12
  207. package/cjs/components/number-keyboard/number-keyboard.d.ts +1 -5
  208. package/cjs/components/number-keyboard/number-keyboard.js +13 -7
  209. package/cjs/components/passcode-input/passcode-input.d.ts +5 -1
  210. package/cjs/components/picker/index.d.ts +10 -6
  211. package/cjs/components/picker/picker.d.ts +6 -6
  212. package/cjs/components/picker/picker.js +8 -7
  213. package/cjs/components/picker-view/picker-view.css +1 -0
  214. package/cjs/components/picker-view/wheel.js +10 -8
  215. package/cjs/components/popover/index.d.ts +5 -1
  216. package/cjs/components/popover/popover.d.ts +5 -1
  217. package/cjs/components/popup/popup-base-props.d.ts +35 -0
  218. package/cjs/components/popup/popup-base-props.js +18 -0
  219. package/cjs/components/popup/popup.css +26 -0
  220. package/cjs/components/popup/popup.d.ts +3 -19
  221. package/cjs/components/popup/popup.js +43 -18
  222. package/cjs/components/progress-bar/progress-bar.css +15 -3
  223. package/cjs/components/progress-bar/progress-bar.d.ts +4 -2
  224. package/cjs/components/progress-bar/progress-bar.js +27 -5
  225. package/cjs/components/radio/radio.js +3 -3
  226. package/cjs/components/search-bar/search-bar.d.ts +5 -1
  227. package/cjs/components/slider/slider.js +2 -1
  228. package/cjs/components/slider/thumb.d.ts +2 -1
  229. package/cjs/components/slider/thumb.js +13 -1
  230. package/cjs/components/stepper/stepper.js +14 -3
  231. package/cjs/components/steps/steps.css +1 -1
  232. package/cjs/components/swipe-action/swipe-action.d.ts +5 -1
  233. package/cjs/components/swiper/index.d.ts +10 -2
  234. package/cjs/components/swiper/swiper.d.ts +5 -1
  235. package/cjs/components/switch/switch.js +10 -1
  236. package/cjs/components/text-area/text-area.d.ts +5 -1
  237. package/cjs/components/virtual-input/virtual-input.d.ts +5 -1
  238. package/cjs/locales/base.d.ts +10 -0
  239. package/cjs/locales/base.js +10 -0
  240. package/cjs/locales/en-US.d.ts +10 -0
  241. package/cjs/locales/es-ES.d.ts +10 -0
  242. package/cjs/locales/fa-IR.d.ts +10 -0
  243. package/cjs/locales/fr-FR.d.ts +10 -0
  244. package/cjs/locales/id-ID.d.ts +118 -0
  245. package/cjs/locales/id-ID.js +121 -0
  246. package/cjs/locales/kk-KZ.d.ts +118 -0
  247. package/cjs/locales/kk-KZ.js +124 -0
  248. package/cjs/locales/ko-KR.d.ts +10 -0
  249. package/cjs/locales/zh-CN.d.ts +10 -0
  250. package/cjs/locales/zh-CN.js +10 -0
  251. package/cjs/locales/zh-HK.d.ts +10 -0
  252. package/cjs/locales/zh-TW.d.ts +10 -0
  253. package/cjs/utils/native-props.d.ts +3 -3
  254. package/es/components/action-sheet/action-sheet.d.ts +2 -4
  255. package/es/components/action-sheet/action-sheet.js +6 -2
  256. package/es/components/button/button.d.ts +5 -1
  257. package/es/components/cascader/cascader.d.ts +29 -4
  258. package/es/components/cascader/cascader.js +42 -18
  259. package/es/components/cascader/index.d.ts +21 -2
  260. package/es/components/center-popup/center-popup.css +10 -0
  261. package/es/components/center-popup/center-popup.d.ts +4 -20
  262. package/es/components/center-popup/center-popup.js +27 -14
  263. package/es/components/checkbox/checkbox.d.ts +5 -1
  264. package/es/components/checkbox/index.d.ts +5 -1
  265. package/es/components/checkbox/native-input.js +9 -8
  266. package/es/components/date-picker/date-picker-date-utils.js +12 -15
  267. package/es/components/date-picker/date-picker-week-utils.js +12 -15
  268. package/es/components/date-picker/date-picker.d.ts +7 -3
  269. package/es/components/date-picker/date-picker.js +3 -1
  270. package/es/components/date-picker/index.d.ts +6 -2
  271. package/es/components/dialog/dialog.js +5 -2
  272. package/es/components/dropdown/dropdown.d.ts +5 -1
  273. package/es/components/dropdown/index.d.ts +5 -1
  274. package/es/components/floating-panel/floating-panel.d.ts +5 -1
  275. package/es/components/form/form.d.ts +5 -1
  276. package/es/components/form/index.d.ts +5 -1
  277. package/es/components/index-bar/index-bar.d.ts +5 -1
  278. package/es/components/index-bar/index.d.ts +5 -1
  279. package/es/components/input/input.css +3 -0
  280. package/es/components/input/input.d.ts +11 -4
  281. package/es/components/input/input.js +5 -1
  282. package/es/components/list/index.d.ts +10 -2
  283. package/es/components/list/list.d.ts +13 -2
  284. package/es/components/list/list.js +12 -4
  285. package/es/components/modal/modal-action-button.d.ts +2 -2
  286. package/es/components/modal/modal.css +0 -8
  287. package/es/components/modal/modal.js +6 -11
  288. package/es/components/number-keyboard/number-keyboard.d.ts +1 -5
  289. package/es/components/number-keyboard/number-keyboard.js +13 -7
  290. package/es/components/passcode-input/passcode-input.d.ts +5 -1
  291. package/es/components/picker/index.d.ts +10 -6
  292. package/es/components/picker/picker.d.ts +6 -6
  293. package/es/components/picker/picker.js +8 -6
  294. package/es/components/picker-view/picker-view.css +1 -0
  295. package/es/components/picker-view/wheel.js +10 -8
  296. package/es/components/popover/index.d.ts +5 -1
  297. package/es/components/popover/popover.d.ts +5 -1
  298. package/es/components/popup/popup-base-props.d.ts +35 -0
  299. package/es/components/popup/popup-base-props.js +11 -0
  300. package/es/components/popup/popup.css +26 -0
  301. package/es/components/popup/popup.d.ts +3 -19
  302. package/es/components/popup/popup.js +41 -19
  303. package/es/components/progress-bar/progress-bar.css +15 -3
  304. package/es/components/progress-bar/progress-bar.d.ts +4 -2
  305. package/es/components/progress-bar/progress-bar.js +25 -5
  306. package/es/components/radio/radio.js +3 -3
  307. package/es/components/search-bar/search-bar.d.ts +5 -1
  308. package/es/components/slider/slider.js +2 -1
  309. package/es/components/slider/thumb.d.ts +2 -1
  310. package/es/components/slider/thumb.js +12 -1
  311. package/es/components/stepper/stepper.js +13 -3
  312. package/es/components/steps/steps.css +1 -1
  313. package/es/components/swipe-action/swipe-action.d.ts +5 -1
  314. package/es/components/swiper/index.d.ts +10 -2
  315. package/es/components/swiper/swiper.d.ts +5 -1
  316. package/es/components/switch/switch.js +9 -1
  317. package/es/components/text-area/text-area.d.ts +5 -1
  318. package/es/components/virtual-input/virtual-input.d.ts +5 -1
  319. package/es/locales/base.d.ts +10 -0
  320. package/es/locales/base.js +10 -0
  321. package/es/locales/en-US.d.ts +10 -0
  322. package/es/locales/es-ES.d.ts +10 -0
  323. package/es/locales/fa-IR.d.ts +10 -0
  324. package/es/locales/fr-FR.d.ts +10 -0
  325. package/es/locales/id-ID.d.ts +118 -0
  326. package/es/locales/id-ID.js +111 -0
  327. package/es/locales/kk-KZ.d.ts +118 -0
  328. package/es/locales/kk-KZ.js +114 -0
  329. package/es/locales/ko-KR.d.ts +10 -0
  330. package/es/locales/zh-CN.d.ts +10 -0
  331. package/es/locales/zh-CN.js +10 -0
  332. package/es/locales/zh-HK.d.ts +10 -0
  333. package/es/locales/zh-TW.d.ts +10 -0
  334. package/es/utils/native-props.d.ts +3 -3
  335. package/package.json +1 -1
  336. package/umd/antd-mobile.js +1 -1
@@ -1,23 +1,7 @@
1
- import React, { FC, PropsWithChildren } from 'react';
1
+ import { FC, PropsWithChildren } from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
- import type { MaskProps } from '../mask';
4
- import { GetContainer } from '../../utils/render-to-container';
5
- import { PropagationEvent } from '../../utils/with-stop-propagation';
6
- export declare type PopupProps = PropsWithChildren<{
7
- afterClose?: () => void;
8
- afterShow?: () => void;
9
- bodyClassName?: string;
10
- bodyStyle?: React.CSSProperties;
11
- destroyOnClose?: boolean;
12
- forceRender?: boolean;
13
- getContainer?: GetContainer;
14
- mask?: boolean;
15
- maskClassName?: string;
16
- maskStyle?: MaskProps['style'];
17
- onClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
18
- onMaskClick?: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
3
+ import { PopupBaseProps } from './popup-base-props';
4
+ export declare type PopupProps = PopupBaseProps & PropsWithChildren<{
19
5
  position?: 'bottom' | 'top' | 'left' | 'right';
20
- stopPropagation?: PropagationEvent[];
21
- visible?: boolean;
22
6
  }> & NativeProps<'--z-index'>;
23
7
  export declare const Popup: FC<PopupProps>;
@@ -1,29 +1,32 @@
1
1
  import classNames from 'classnames';
2
2
  import React, { useState, useRef } from 'react';
3
- import { useUnmountedRef } from 'ahooks';
3
+ import { useIsomorphicLayoutEffect, useUnmountedRef } from 'ahooks';
4
4
  import { withNativeProps } from '../../utils/native-props';
5
5
  import { mergeProps } from '../../utils/with-default-props';
6
6
  import Mask from '../mask';
7
7
  import { useLockScroll } from '../../utils/use-lock-scroll';
8
8
  import { renderToContainer } from '../../utils/render-to-container';
9
9
  import { useSpring, animated } from '@react-spring/web';
10
- import { useShouldRender } from '../../utils/should-render';
11
10
  import { withStopPropagation } from '../../utils/with-stop-propagation';
11
+ import { ShouldRender } from '../../utils/should-render';
12
+ import { CloseOutline } from 'antd-mobile-icons';
13
+ import { defaultPopupBaseProps } from './popup-base-props';
14
+ import { useInnerVisible } from '../../utils/use-inner-visible';
12
15
  const classPrefix = `adm-popup`;
13
- const defaultProps = {
14
- position: 'bottom',
15
- visible: false,
16
- getContainer: () => document.body,
17
- mask: true,
18
- stopPropagation: ['click']
19
- };
16
+ const defaultProps = Object.assign(Object.assign({}, defaultPopupBaseProps), {
17
+ position: 'bottom'
18
+ });
20
19
  export const Popup = p => {
21
20
  const props = mergeProps(defaultProps, p);
22
21
  const bodyCls = classNames(`${classPrefix}-body`, props.bodyClassName, `${classPrefix}-body-position-${props.position}`);
23
- const ref = useRef(null);
24
22
  const [active, setActive] = useState(props.visible);
25
- useLockScroll(ref, active);
26
- const shouldRender = useShouldRender(active, props.forceRender, props.destroyOnClose);
23
+ useIsomorphicLayoutEffect(() => {
24
+ if (props.visible) {
25
+ setActive(true);
26
+ }
27
+ }, [props.visible]);
28
+ const ref = useRef(null);
29
+ useLockScroll(ref, props.disableBodyScroll && active);
27
30
  const unmountedRef = useUnmountedRef();
28
31
  const {
29
32
  percent
@@ -35,9 +38,6 @@ export const Popup = p => {
35
38
  tension: 300,
36
39
  friction: 30
37
40
  },
38
- onStart: () => {
39
- setActive(true);
40
- },
41
41
  onRest: () => {
42
42
  var _a, _b;
43
43
 
@@ -51,6 +51,7 @@ export const Popup = p => {
51
51
  }
52
52
  }
53
53
  });
54
+ const maskVisible = useInnerVisible(active && props.visible);
54
55
  const node = withStopPropagation(props.stopPropagation, withNativeProps(props, React.createElement("div", {
55
56
  className: classPrefix,
56
57
  onClick: props.onClick,
@@ -58,8 +59,18 @@ export const Popup = p => {
58
59
  display: active ? undefined : 'none'
59
60
  }
60
61
  }, props.mask && React.createElement(Mask, {
61
- visible: props.visible,
62
- onMaskClick: props.onMaskClick,
62
+ visible: maskVisible,
63
+ forceRender: props.forceRender,
64
+ destroyOnClose: props.destroyOnClose,
65
+ onMaskClick: e => {
66
+ var _a, _b;
67
+
68
+ (_a = props.onMaskClick) === null || _a === void 0 ? void 0 : _a.call(props, e);
69
+
70
+ if (props.closeOnMaskClick) {
71
+ (_b = props.onClose) === null || _b === void 0 ? void 0 : _b.call(props);
72
+ }
73
+ },
63
74
  className: props.maskClassName,
64
75
  style: props.maskStyle,
65
76
  disableBodyScroll: false,
@@ -88,6 +99,17 @@ export const Popup = p => {
88
99
  })
89
100
  }),
90
101
  ref: ref
91
- }, shouldRender && props.children))));
92
- return renderToContainer(props.getContainer, node);
102
+ }, props.showCloseButton && React.createElement("a", {
103
+ className: classNames(`${classPrefix}-close-icon`, 'adm-plain-anchor'),
104
+ onClick: () => {
105
+ var _a;
106
+
107
+ (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props);
108
+ }
109
+ }, React.createElement(CloseOutline, null)), props.children))));
110
+ return React.createElement(ShouldRender, {
111
+ active: active,
112
+ forceRender: props.forceRender,
113
+ destroyOnClose: props.destroyOnClose
114
+ }, renderToContainer(props.getContainer, node));
93
115
  };
@@ -1,17 +1,29 @@
1
1
  .adm-progress-bar {
2
- --track-width: var(--adm-progress-bar-track-width, 3px);
2
+ --track-width: var(--adm-progress-bar-track-width, 8px);
3
3
  --track-color: var(--adm-progress-bar-track-color, #e5e5e5);
4
4
  --fill-color: var(--adm-progress-bar-fill-color, var(--adm-color-primary));
5
+ --text-width: var(--adm-progress-bar-text-width, 40px);
6
+ display: flex;
7
+ align-items: center;
5
8
  }
6
9
  .adm-progress-bar-trail {
10
+ flex: auto;
7
11
  background: var(--track-color);
8
12
  overflow: hidden;
9
13
  height: var(--track-width);
10
- border-radius: var(--track-width);
11
14
  }
12
15
  .adm-progress-bar-fill {
13
16
  transition: width 0.3s;
14
17
  background: var(--fill-color);
15
- height: 100%;
18
+ height: var(--track-width);
19
+ }
20
+ .adm-progress-bar-text {
21
+ flex: none;
22
+ width: calc(var(--text-width) + 8px);
23
+ padding-left: 8px;
24
+ color: #999999;
25
+ }
26
+ .adm-progress-bar-rounded .adm-progress-bar-trail,
27
+ .adm-progress-bar-rounded .adm-progress-bar-fill {
16
28
  border-radius: var(--track-width);
17
29
  }
@@ -1,6 +1,8 @@
1
- import { FC } from 'react';
1
+ import { FC, ReactNode } from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
3
  export declare type ProgressBarProps = {
4
4
  percent?: number;
5
- } & NativeProps<'--track-width' | '--track-color' | '--fill-color'>;
5
+ rounded?: boolean;
6
+ text?: boolean | ReactNode | ((percent: number) => ReactNode);
7
+ } & NativeProps<'--track-width' | '--track-color' | '--fill-color' | '--text-width'>;
6
8
  export declare const ProgressBar: FC<ProgressBarProps>;
@@ -1,20 +1,40 @@
1
1
  import React from 'react';
2
2
  import { withNativeProps } from '../../utils/native-props';
3
3
  import { mergeProps } from '../../utils/with-default-props';
4
+ import classNames from 'classnames';
5
+ import { isNodeWithContent } from '../../utils/is-node-with-content';
4
6
  const classPrefix = `adm-progress-bar`;
7
+ const defaultProps = {
8
+ percent: 0,
9
+ rounded: true,
10
+ text: false
11
+ };
5
12
  export const ProgressBar = p => {
6
- const props = mergeProps({
7
- percent: 0
8
- }, p);
13
+ const props = mergeProps(defaultProps, p);
9
14
  const fillStyle = {
10
15
  width: `${props.percent}%`
11
16
  };
17
+
18
+ const textElement = function () {
19
+ if (props.text === true) {
20
+ return `${props.percent}%`;
21
+ }
22
+
23
+ if (typeof props.text === 'function') {
24
+ return props.text(props.percent);
25
+ }
26
+
27
+ return props.text;
28
+ }();
29
+
12
30
  return withNativeProps(props, React.createElement("div", {
13
- className: classPrefix
31
+ className: classNames(classPrefix, props.rounded && `${classPrefix}-rounded`)
14
32
  }, React.createElement("div", {
15
33
  className: `${classPrefix}-trail`
16
34
  }, React.createElement("div", {
17
35
  className: `${classPrefix}-fill`,
18
36
  style: fillStyle
19
- }))));
37
+ })), isNodeWithContent(textElement) && React.createElement("div", {
38
+ className: `${classPrefix}-text`
39
+ }, textElement)));
20
40
  };
@@ -38,16 +38,16 @@ export const Radio = p => {
38
38
 
39
39
  checked = groupContext.value.includes(value);
40
40
 
41
- setChecked = checked => {
41
+ setChecked = innerChecked => {
42
42
  var _a;
43
43
 
44
- if (checked) {
44
+ if (innerChecked) {
45
45
  groupContext.check(value);
46
46
  } else {
47
47
  groupContext.uncheck(value);
48
48
  }
49
49
 
50
- (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, checked);
50
+ (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, innerChecked);
51
51
  };
52
52
 
53
53
  disabled = disabled || groupContext.disabled;
@@ -31,4 +31,8 @@ export declare const SearchBar: React.ForwardRefExoticComponent<Pick<InputProps,
31
31
  onSearch?: ((val: string) => void) | undefined;
32
32
  onChange?: ((val: string) => void) | undefined;
33
33
  onCancel?: (() => void) | undefined;
34
- } & NativeProps<"--height" | "--border-radius" | "--padding-left" | "--background" | "--placeholder-color"> & React.RefAttributes<InputRef>>;
34
+ } & {
35
+ className?: string | undefined;
36
+ style?: (React.CSSProperties & Partial<Record<"--height" | "--border-radius" | "--padding-left" | "--background" | "--placeholder-color", string>>) | undefined;
37
+ tabIndex?: number | undefined;
38
+ } & React.AriaAttributes & React.RefAttributes<InputRef>>;
@@ -155,7 +155,8 @@ export const Slider = p => {
155
155
  dragLockRef.current -= 1;
156
156
  }, 100);
157
157
  }
158
- }
158
+ },
159
+ "aria-label": props['aria-label']
159
160
  });
160
161
  };
161
162
 
@@ -1,4 +1,5 @@
1
1
  import React, { FC, RefObject, ReactNode } from 'react';
2
+ import { NativeProps } from '../../utils/native-props';
2
3
  declare type ThumbProps = {
3
4
  value: number;
4
5
  min: number;
@@ -8,6 +9,6 @@ declare type ThumbProps = {
8
9
  trackRef: RefObject<HTMLDivElement>;
9
10
  icon?: React.ReactNode;
10
11
  popover: boolean | ((value: number) => ReactNode);
11
- };
12
+ } & NativeProps;
12
13
  declare const Thumb: FC<ThumbProps>;
13
14
  export default Thumb;
@@ -2,6 +2,7 @@ import React, { useRef, useState } from 'react';
2
2
  import { useDrag } from '@use-gesture/react';
3
3
  import { ThumbIcon } from './thumb-icon';
4
4
  import { Popover } from '../popover/popover';
5
+ import { useConfig } from '../config-provider';
5
6
  const classPrefix = `adm-slider`;
6
7
 
7
8
  const Thumb = props => {
@@ -14,6 +15,9 @@ const Thumb = props => {
14
15
  icon
15
16
  } = props;
16
17
  const prevValue = useRef(value);
18
+ const {
19
+ locale
20
+ } = useConfig();
17
21
 
18
22
  const currentPosition = () => {
19
23
  return {
@@ -53,7 +57,14 @@ const Thumb = props => {
53
57
  return React.createElement("div", Object.assign({
54
58
  className: `${classPrefix}-thumb-container`,
55
59
  style: currentPosition()
56
- }, bind()), renderPopoverContent ? React.createElement(Popover, {
60
+ }, bind(), {
61
+ role: 'slider',
62
+ "aria-label": props['aria-label'] || locale.Slider.name,
63
+ "aria-valuemax": max,
64
+ "aria-valuemin": min,
65
+ "aria-valuenow": value,
66
+ "aria-disabled": disabled
67
+ }), renderPopoverContent ? React.createElement(Popover, {
57
68
  content: renderPopoverContent(value),
58
69
  placement: 'top',
59
70
  visible: dragging,
@@ -8,6 +8,7 @@ import { bound } from '../../utils/bound';
8
8
  import Input from '../input';
9
9
  import Button from '../button';
10
10
  import Big from 'big.js';
11
+ import { useConfig } from '../config-provider';
11
12
  const classPrefix = `adm-stepper`;
12
13
  const defaultProps = {
13
14
  defaultValue: 0,
@@ -24,6 +25,9 @@ export const Stepper = p => {
24
25
  min,
25
26
  inputReadOnly
26
27
  } = props;
28
+ const {
29
+ locale
30
+ } = useConfig();
27
31
  const [value, setValue] = usePropsValue(props);
28
32
  const [inputValue, setInputValue] = useState(() => convertValueToText(value, props.digits));
29
33
 
@@ -105,7 +109,8 @@ export const Stepper = p => {
105
109
  disabled: minusDisabled(),
106
110
  fill: 'none',
107
111
  shape: 'rectangular',
108
- color: 'primary'
112
+ color: 'primary',
113
+ "aria-label": locale.Stepper.decrease
109
114
  }, React.createElement(MinusOutline, null)), React.createElement("div", {
110
115
  className: `${classPrefix}-middle`
111
116
  }, React.createElement(Input, {
@@ -127,14 +132,19 @@ export const Stepper = p => {
127
132
  setHasFocus(false);
128
133
  (_a = props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, e);
129
134
  },
130
- readOnly: inputReadOnly
135
+ readOnly: inputReadOnly,
136
+ role: 'spinbutton',
137
+ "aria-valuenow": Number(inputValue),
138
+ "aria-valuemax": max,
139
+ "aria-valuemin": min
131
140
  })), React.createElement(Button, {
132
141
  className: `${classPrefix}-plus`,
133
142
  onClick: handlePlus,
134
143
  disabled: plusDisabled(),
135
144
  fill: 'none',
136
145
  shape: 'rectangular',
137
- color: 'primary'
146
+ color: 'primary',
147
+ "aria-label": locale.Stepper.increase
138
148
  }, React.createElement(AddOutline, null))));
139
149
  };
140
150
 
@@ -14,7 +14,7 @@
14
14
  .adm-step .adm-step-indicator .adm-step-icon-container {
15
15
  position: absolute;
16
16
  z-index: 1;
17
- background: var(--adm-color-white);
17
+ background: var(--adm-color-background);
18
18
  color: var(--icon-color);
19
19
  }
20
20
  .adm-step .adm-step-indicator .adm-step-icon-container > .antd-mobile-icon {
@@ -29,5 +29,9 @@ export declare const SwipeAction: React.ForwardRefExoticComponent<{
29
29
  closeOnAction?: boolean | undefined;
30
30
  children: ReactNode;
31
31
  stopPropagation?: "click"[] | undefined;
32
- } & NativeProps<"--background"> & React.RefAttributes<SwipeActionRef>>;
32
+ } & {
33
+ className?: string | undefined;
34
+ style?: (React.CSSProperties & Partial<Record<"--background", string>>) | undefined;
35
+ tabIndex?: number | undefined;
36
+ } & React.AriaAttributes & React.RefAttributes<SwipeActionRef>>;
33
37
  export {};
@@ -16,10 +16,18 @@ declare const _default: import("react").ForwardRefExoticComponent<{
16
16
  stuckAtBoundary?: boolean | undefined;
17
17
  rubberband?: boolean | undefined;
18
18
  children?: import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>[] | undefined;
19
- } & import("../../utils/native-props").NativeProps<"--width" | "--height" | "--border-radius" | "--track-padding"> & import("react").RefAttributes<import("./swiper").SwiperRef>> & {
19
+ } & {
20
+ className?: string | undefined;
21
+ style?: (import("react").CSSProperties & Partial<Record<"--width" | "--height" | "--border-radius" | "--track-padding", string>>) | undefined;
22
+ tabIndex?: number | undefined;
23
+ } & import("react").AriaAttributes & import("react").RefAttributes<import("./swiper").SwiperRef>> & {
20
24
  Item: import("react").FC<{
21
25
  onClick?: ((e: import("react").MouseEvent<HTMLDivElement, MouseEvent>) => void) | undefined;
22
26
  children?: import("react").ReactNode;
23
- } & import("../../utils/native-props").NativeProps<never>>;
27
+ } & {
28
+ className?: string | undefined;
29
+ style?: (import("react").CSSProperties & Partial<Record<never, string>>) | undefined;
30
+ tabIndex?: number | undefined;
31
+ } & import("react").AriaAttributes>;
24
32
  };
25
33
  export default _default;
@@ -37,4 +37,8 @@ export declare const Swiper: React.ForwardRefExoticComponent<{
37
37
  stuckAtBoundary?: boolean | undefined;
38
38
  rubberband?: boolean | undefined;
39
39
  children?: React.ReactElement<any, string | React.JSXElementConstructor<any>> | React.ReactElement<any, string | React.JSXElementConstructor<any>>[] | undefined;
40
- } & NativeProps<"--width" | "--height" | "--border-radius" | "--track-padding"> & React.RefAttributes<SwiperRef>>;
40
+ } & {
41
+ className?: string | undefined;
42
+ style?: (React.CSSProperties & Partial<Record<"--width" | "--height" | "--border-radius" | "--track-padding", string>>) | undefined;
43
+ tabIndex?: number | undefined;
44
+ } & React.AriaAttributes & React.RefAttributes<SwiperRef>>;
@@ -5,6 +5,7 @@ import { withNativeProps } from '../../utils/native-props';
5
5
  import { usePropsValue } from '../../utils/use-props-value';
6
6
  import { mergeProps } from '../../utils/with-default-props';
7
7
  import { SpinIcon } from './spin-icon';
8
+ import { useConfig } from '../config-provider';
8
9
  const classPrefix = `adm-switch`;
9
10
  const defaultProps = {
10
11
  defaultChecked: false
@@ -13,6 +14,9 @@ export const Switch = p => {
13
14
  const props = mergeProps(defaultProps, p);
14
15
  const disabled = props.disabled || props.loading || false;
15
16
  const [changing, setChanging] = useState(false);
17
+ const {
18
+ locale
19
+ } = useConfig();
16
20
  const [checked, setChecked] = usePropsValue({
17
21
  value: props.checked,
18
22
  defaultValue: props.defaultChecked,
@@ -49,7 +53,11 @@ export const Switch = p => {
49
53
  className: classNames(classPrefix, {
50
54
  [`${classPrefix}-checked`]: checked,
51
55
  [`${classPrefix}-disabled`]: disabled || changing
52
- })
56
+ }),
57
+ role: 'switch',
58
+ "aria-label": locale.Switch.name,
59
+ "aria-checked": checked,
60
+ "aria-disabled": disabled
53
61
  }, React.createElement("div", {
54
62
  className: `${classPrefix}-checkbox`
55
63
  }, React.createElement("div", {
@@ -34,4 +34,8 @@ export declare const TextArea: React.ForwardRefExoticComponent<Pick<React.Detail
34
34
  maxRows?: number | undefined;
35
35
  } | undefined;
36
36
  id?: string | undefined;
37
- } & NativeProps<"--color" | "--font-size" | "--placeholder-color" | "--text-align" | "--disabled-color" | "--count-text-align"> & React.RefAttributes<TextAreaRef>>;
37
+ } & {
38
+ className?: string | undefined;
39
+ style?: (React.CSSProperties & Partial<Record<"--color" | "--font-size" | "--placeholder-color" | "--text-align" | "--disabled-color" | "--count-text-align", string>>) | undefined;
40
+ tabIndex?: number | undefined;
41
+ } & React.AriaAttributes & React.RefAttributes<TextAreaRef>>;
@@ -21,4 +21,8 @@ export declare const VirtualInput: React.ForwardRefExoticComponent<{
21
21
  keyboard?: React.ReactElement<NumberKeyboardProps, string | React.JSXElementConstructor<any>> | undefined;
22
22
  clearable?: boolean | undefined;
23
23
  onClear?: (() => void) | undefined;
24
- } & Pick<InputProps, "value" | "onChange" | "disabled" | "placeholder"> & NativeProps<"--color" | "--font-size" | "--placeholder-color" | "--text-align" | "--disabled-color" | "--caret-width" | "--caret-color"> & React.RefAttributes<VirtualInputRef>>;
24
+ } & Pick<InputProps, "value" | "onChange" | "disabled" | "placeholder"> & {
25
+ className?: string | undefined;
26
+ style?: (React.CSSProperties & Partial<Record<"--color" | "--font-size" | "--placeholder-color" | "--text-align" | "--disabled-color" | "--caret-width" | "--caret-color", string>>) | undefined;
27
+ tabIndex?: number | undefined;
28
+ } & React.AriaAttributes & React.RefAttributes<VirtualInputRef>>;
@@ -104,5 +104,15 @@ export declare const base: {
104
104
  canRelease: string;
105
105
  complete: string;
106
106
  };
107
+ Slider: {
108
+ name: string;
109
+ };
110
+ Stepper: {
111
+ decrease: string;
112
+ increase: string;
113
+ };
114
+ Switch: {
115
+ name: string;
116
+ };
107
117
  };
108
118
  export declare type Locale = typeof base;
@@ -104,5 +104,15 @@ export const base = {
104
104
  pulling: 'Scroll down to refresh',
105
105
  canRelease: 'Release to refresh immediately',
106
106
  complete: 'Refresh successful'
107
+ },
108
+ Slider: {
109
+ name: 'Slider'
110
+ },
111
+ Stepper: {
112
+ decrease: 'decrease',
113
+ increase: 'increase'
114
+ },
115
+ Switch: {
116
+ name: 'Switch'
107
117
  }
108
118
  };
@@ -104,5 +104,15 @@ declare const enUS: {
104
104
  canRelease: string;
105
105
  complete: string;
106
106
  };
107
+ Slider: {
108
+ name: string;
109
+ };
110
+ Stepper: {
111
+ decrease: string;
112
+ increase: string;
113
+ };
114
+ Switch: {
115
+ name: string;
116
+ };
107
117
  };
108
118
  export default enUS;
@@ -104,5 +104,15 @@ declare const esES: {
104
104
  canRelease: string;
105
105
  complete: string;
106
106
  };
107
+ Slider: {
108
+ name: string;
109
+ };
110
+ Stepper: {
111
+ decrease: string;
112
+ increase: string;
113
+ };
114
+ Switch: {
115
+ name: string;
116
+ };
107
117
  };
108
118
  export default esES;
@@ -104,5 +104,15 @@ declare const faIR: {
104
104
  canRelease: string;
105
105
  complete: string;
106
106
  };
107
+ Slider: {
108
+ name: string;
109
+ };
110
+ Stepper: {
111
+ decrease: string;
112
+ increase: string;
113
+ };
114
+ Switch: {
115
+ name: string;
116
+ };
107
117
  };
108
118
  export default faIR;
@@ -104,5 +104,15 @@ declare const frFR: {
104
104
  canRelease: string;
105
105
  complete: string;
106
106
  };
107
+ Slider: {
108
+ name: string;
109
+ };
110
+ Stepper: {
111
+ decrease: string;
112
+ increase: string;
113
+ };
114
+ Switch: {
115
+ name: string;
116
+ };
107
117
  };
108
118
  export default frFR;