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
@@ -0,0 +1,130 @@
1
+ function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
2
+
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+
5
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
6
+
7
+ import React, { useState, useEffect, useMemo } from 'react';
8
+ import classNames from 'classnames';
9
+ import Tabs from '../tabs';
10
+ import CheckList from '../check-list';
11
+ import { withNativeProps } from '../../utils/native-props';
12
+ import { mergeProps } from '../../utils/with-default-props';
13
+ import { usePropsValue } from '../../utils/use-props-value';
14
+ import { useCascaderValueExtend } from './use-cascader-value-extend';
15
+ import { useConfig } from '../config-provider';
16
+ var classPrefix = "adm-cascader-view";
17
+ var defaultProps = {
18
+ defaultValue: []
19
+ };
20
+ export var CascaderView = function CascaderView(p) {
21
+ var _useConfig = useConfig(),
22
+ locale = _useConfig.locale;
23
+
24
+ var props = mergeProps(defaultProps, {
25
+ placeholder: locale.Cascader.placeholder
26
+ }, p);
27
+
28
+ var _usePropsValue = usePropsValue(Object.assign(Object.assign({}, props), {
29
+ onChange: function onChange(val) {
30
+ var _a;
31
+
32
+ (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, val, generateValueExtend(val));
33
+ }
34
+ })),
35
+ value = _usePropsValue[0],
36
+ setValue = _usePropsValue[1];
37
+
38
+ var _useState = useState(0),
39
+ tabActiveKey = _useState[0],
40
+ setTabActiveKey = _useState[1];
41
+
42
+ var generateValueExtend = useCascaderValueExtend(props.options);
43
+ var levels = useMemo(function () {
44
+ var ret = [];
45
+ var currentOptions = props.options;
46
+ var reachedEnd = false;
47
+
48
+ var _loop = function _loop() {
49
+ var v = _step.value;
50
+ var target = currentOptions.find(function (option) {
51
+ return option.value === v;
52
+ });
53
+ ret.push({
54
+ selected: target,
55
+ options: currentOptions
56
+ });
57
+
58
+ if (!target || !target.children || target.children.length === 0) {
59
+ reachedEnd = true;
60
+ return "break";
61
+ }
62
+
63
+ currentOptions = target.children;
64
+ };
65
+
66
+ for (var _iterator = _createForOfIteratorHelperLoose(value), _step; !(_step = _iterator()).done;) {
67
+ var _ret = _loop();
68
+
69
+ if (_ret === "break") break;
70
+ }
71
+
72
+ if (!reachedEnd) {
73
+ ret.push({
74
+ selected: undefined,
75
+ options: currentOptions
76
+ });
77
+ }
78
+
79
+ return ret;
80
+ }, [value, props.options]);
81
+ useEffect(function () {
82
+ setTabActiveKey(levels.length - 1);
83
+ }, [value]);
84
+
85
+ var onItemSelect = function onItemSelect(selectValue, depth) {
86
+ var next = value.slice(0, depth);
87
+
88
+ if (selectValue !== undefined) {
89
+ next[depth] = selectValue;
90
+ }
91
+
92
+ setValue(next);
93
+ };
94
+
95
+ return withNativeProps(props, /*#__PURE__*/React.createElement("div", {
96
+ className: classPrefix
97
+ }, /*#__PURE__*/React.createElement(Tabs, {
98
+ activeKey: tabActiveKey.toString(),
99
+ onChange: function onChange(key) {
100
+ return setTabActiveKey(parseInt(key));
101
+ },
102
+ stretch: false,
103
+ className: classPrefix + "-tabs"
104
+ }, levels.map(function (level, index) {
105
+ var selected = level.selected;
106
+ return /*#__PURE__*/React.createElement(Tabs.Tab, {
107
+ key: index,
108
+ title: /*#__PURE__*/React.createElement("div", {
109
+ className: classPrefix + "-header-title"
110
+ }, selected ? selected.label : props.placeholder),
111
+ forceRender: true
112
+ }, /*#__PURE__*/React.createElement(CheckList, {
113
+ value: [value[index]],
114
+ onChange: function onChange(selectValue) {
115
+ return onItemSelect(selectValue[0], index);
116
+ },
117
+ className: classPrefix + "-content"
118
+ }, level.options.map(function (option) {
119
+ var _classNames;
120
+
121
+ var active = value[index] === option.value;
122
+ return /*#__PURE__*/React.createElement(CheckList.Item, {
123
+ value: option.value,
124
+ key: option.value,
125
+ disabled: option.disabled,
126
+ className: classNames(classPrefix + "-item", (_classNames = {}, _classNames[classPrefix + "-item-active"] = active, _classNames))
127
+ }, option.label);
128
+ })));
129
+ }))));
130
+ };
@@ -0,0 +1,4 @@
1
+ import './cascader-view.less';
2
+ import { CascaderView } from './cascader-view';
3
+ export type { CascaderViewProps, CascaderValue, CascaderValueExtend, CascaderOption, } from './cascader-view';
4
+ export default CascaderView;
@@ -0,0 +1,3 @@
1
+ import "./cascader-view.css";
2
+ import { CascaderView } from './cascader-view';
3
+ export default CascaderView;
@@ -0,0 +1,2 @@
1
+ import { CascaderValue, CascaderValueExtend, CascaderOption } from './cascader-view';
2
+ export declare function useCascaderValueExtend(options: CascaderOption[]): (val: CascaderValue[]) => CascaderValueExtend;
@@ -0,0 +1,52 @@
1
+ function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
2
+
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+
5
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
6
+
7
+ import { useMemo } from 'react';
8
+ import memoize from 'lodash/memoize';
9
+ export function useCascaderValueExtend(options) {
10
+ var generateItems = useMemo(function () {
11
+ return memoize(function (val) {
12
+ var ret = [];
13
+ var currentOptions = options;
14
+
15
+ var _loop = function _loop() {
16
+ var v = _step.value;
17
+ var target = currentOptions.find(function (option) {
18
+ return option.value === v;
19
+ });
20
+
21
+ if (!target) {
22
+ return "break";
23
+ }
24
+
25
+ ret.push(target);
26
+ if (!target.children) return "break";
27
+ currentOptions = target.children;
28
+ };
29
+
30
+ for (var _iterator = _createForOfIteratorHelperLoose(val), _step; !(_step = _iterator()).done;) {
31
+ var _ret = _loop();
32
+
33
+ if (_ret === "break") break;
34
+ }
35
+
36
+ return ret;
37
+ }, function (val) {
38
+ return JSON.stringify(val);
39
+ });
40
+ }, [options]);
41
+
42
+ function generateValueExtend(val) {
43
+ return {
44
+ get items() {
45
+ return generateItems(val);
46
+ }
47
+
48
+ };
49
+ }
50
+
51
+ return generateValueExtend;
52
+ }
@@ -7,12 +7,14 @@ export declare type CollapsePanelProps = {
7
7
  forceRender?: boolean;
8
8
  destroyOnClose?: boolean;
9
9
  onClick?: (event: React.MouseEvent<Element, MouseEvent>) => void;
10
+ arrow?: React.ReactNode | ((active: boolean) => React.ReactNode);
10
11
  } & NativeProps;
11
12
  export declare const CollapsePanel: FC<CollapsePanelProps>;
12
13
  declare type ValueProps<T> = {
13
14
  activeKey?: T;
14
15
  defaultActiveKey?: T;
15
16
  onChange?: (activeKey: T) => void;
17
+ arrow?: React.ReactNode | ((active: boolean) => React.ReactNode);
16
18
  };
17
19
  export declare type CollapseProps = (({
18
20
  accordion?: false;
@@ -102,7 +102,7 @@ export var Collapse = function Collapse(props) {
102
102
  return withNativeProps(props, /*#__PURE__*/React.createElement("div", {
103
103
  className: classPrefix
104
104
  }, /*#__PURE__*/React.createElement(List, null, panels.map(function (panel) {
105
- var _classNames, _classNames2;
105
+ var _classNames2;
106
106
 
107
107
  var key = panel.key;
108
108
  var active = activeKeyList.includes(key);
@@ -129,14 +129,30 @@ export var Collapse = function Collapse(props) {
129
129
  (_b = (_a = panel.props).onClick) === null || _b === void 0 ? void 0 : _b.call(_a, event);
130
130
  }
131
131
 
132
+ var renderArrow = function renderArrow() {
133
+ var _classNames;
134
+
135
+ var arrow = /*#__PURE__*/React.createElement(RightOutline, null);
136
+
137
+ if (props.arrow !== undefined) {
138
+ arrow = props.arrow;
139
+ }
140
+
141
+ if (panel.props.arrow !== undefined) {
142
+ arrow = panel.props.arrow;
143
+ }
144
+
145
+ return typeof arrow === 'function' ? arrow(active) : /*#__PURE__*/React.createElement("div", {
146
+ className: classNames(classPrefix + "-arrow", (_classNames = {}, _classNames[classPrefix + "-arrow-active"] = active, _classNames))
147
+ }, arrow);
148
+ };
149
+
132
150
  return /*#__PURE__*/React.createElement(React.Fragment, {
133
151
  key: key
134
152
  }, withNativeProps(panel.props, /*#__PURE__*/React.createElement(List.Item, {
135
- className: classNames(classPrefix + "-panel-header", (_classNames = {}, _classNames[classPrefix + "-panel-header-disabled"] = panel.props.disabled, _classNames)),
153
+ className: classNames(classPrefix + "-panel-header", (_classNames2 = {}, _classNames2[classPrefix + "-panel-header-disabled"] = panel.props.disabled, _classNames2)),
136
154
  onClick: panel.props.disabled ? undefined : handleClick,
137
- arrow: /*#__PURE__*/React.createElement("div", {
138
- className: classNames(classPrefix + "-arrow", (_classNames2 = {}, _classNames2[classPrefix + "-arrow-active"] = active, _classNames2))
139
- }, /*#__PURE__*/React.createElement(RightOutline, null))
155
+ arrow: renderArrow()
140
156
  }, panel.props.title)), /*#__PURE__*/React.createElement(CollapsePanelContent, {
141
157
  visible: active,
142
158
  forceRender: !!panel.props.forceRender,
@@ -1,7 +1,8 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { PickerColumn } from '../picker';
3
+ import type { DatePickerFilter } from './date-picker-utils';
3
4
  export declare type DatePrecision = 'year' | 'month' | 'day' | 'hour' | 'minute' | 'second';
4
5
  export declare function defaultRenderLabel(type: DatePrecision, data: number): string;
5
- export declare function generateDatePickerColumns(selected: string[], min: Date, max: Date, precision: DatePrecision, renderLabel: (type: DatePrecision, data: number) => ReactNode): PickerColumn[];
6
+ export declare function generateDatePickerColumns(selected: string[], min: Date, max: Date, precision: DatePrecision, renderLabel: (type: DatePrecision, data: number) => ReactNode, filter: DatePickerFilter | undefined): PickerColumn[];
6
7
  export declare function convertDateToStringArray(date: Date | undefined | null): string[];
7
- export declare function convertStringArrayToDate(value: (string | null | undefined)[]): Date | null;
8
+ export declare function convertStringArrayToDate(value: (string | null | undefined)[]): Date;
@@ -2,7 +2,6 @@ import dayjs from 'dayjs';
2
2
  import isoWeek from 'dayjs/plugin/isoWeek';
3
3
  import isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear';
4
4
  import isLeapYear from 'dayjs/plugin/isLeapYear';
5
- import { generateIntArray } from '../../utils/generate-int-array';
6
5
  dayjs.extend(isoWeek);
7
6
  dayjs.extend(isoWeeksInYear);
8
7
  dayjs.extend(isLeapYear);
@@ -25,7 +24,7 @@ export function defaultRenderLabel(type, data) {
25
24
  return data.toString();
26
25
  }
27
26
  }
28
- export function generateDatePickerColumns(selected, min, max, precision, renderLabel) {
27
+ export function generateDatePickerColumns(selected, min, max, precision, renderLabel, filter) {
29
28
  var ret = [];
30
29
  var minYear = min.getFullYear();
31
30
  var minMonth = min.getMonth() + 1;
@@ -56,14 +55,13 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
56
55
  }
57
56
 
58
57
  var selectedYear = parseInt(selected[0]);
59
- var isInMinYear = selectedYear === minYear;
60
- var isInMaxYear = selectedYear === maxYear; // rank < 10 的情况:标准时间选择
61
-
62
58
  var firstDayInSelectedMonth = dayjs(convertStringArrayToDate([selected[0], selected[1], '1']));
63
59
  var selectedMonth = parseInt(selected[1]);
64
60
  var selectedDay = parseInt(selected[2]);
65
61
  var selectedHour = parseInt(selected[3]);
66
62
  var selectedMinute = parseInt(selected[4]);
63
+ var isInMinYear = selectedYear === minYear;
64
+ var isInMaxYear = selectedYear === maxYear;
67
65
  var isInMinMonth = isInMinYear && selectedMonth === minMonth;
68
66
  var isInMaxMonth = isInMaxYear && selectedMonth === maxMonth;
69
67
  var isInMinDay = isInMinMonth && selectedDay === minDay;
@@ -73,10 +71,35 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
73
71
  var isInMinMinute = isInMinHour && selectedMinute === minMinute;
74
72
  var isInMaxMinute = isInMaxHour && selectedMinute === maxMinute;
75
73
 
74
+ var generateColumn = function generateColumn(from, to, precision) {
75
+ var column = [];
76
+
77
+ for (var _i = from; _i <= to; _i++) {
78
+ column.push(_i);
79
+ }
80
+
81
+ var prefix = selected.slice(0, precisionRankRecord[precision]);
82
+ var currentFilter = filter === null || filter === void 0 ? void 0 : filter[precision];
83
+
84
+ if (currentFilter && typeof currentFilter === 'function') {
85
+ column = column.filter(function (i) {
86
+ return currentFilter(i, {
87
+ get date() {
88
+ var stringArray = [].concat(prefix, [i.toString()]);
89
+ return convertStringArrayToDate(stringArray);
90
+ }
91
+
92
+ });
93
+ });
94
+ }
95
+
96
+ return column;
97
+ };
98
+
76
99
  if (rank >= precisionRankRecord.month) {
77
100
  var lower = isInMinYear ? minMonth : 1;
78
101
  var upper = isInMaxYear ? maxMonth : 12;
79
- var months = generateIntArray(lower, upper);
102
+ var months = generateColumn(lower, upper, 'month');
80
103
  ret.push(months.map(function (v) {
81
104
  return {
82
105
  label: renderLabel('month', v),
@@ -90,7 +113,7 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
90
113
 
91
114
  var _upper = isInMaxMonth ? maxDay : firstDayInSelectedMonth.daysInMonth();
92
115
 
93
- var days = generateIntArray(_lower, _upper);
116
+ var days = generateColumn(_lower, _upper, 'day');
94
117
  ret.push(days.map(function (v) {
95
118
  return {
96
119
  label: renderLabel('day', v),
@@ -104,7 +127,7 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
104
127
 
105
128
  var _upper2 = isInMaxDay ? maxHour : 23;
106
129
 
107
- var hours = generateIntArray(_lower2, _upper2);
130
+ var hours = generateColumn(_lower2, _upper2, 'hour');
108
131
  ret.push(hours.map(function (v) {
109
132
  return {
110
133
  label: renderLabel('hour', v),
@@ -118,7 +141,7 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
118
141
 
119
142
  var _upper3 = isInMaxHour ? maxMinute : 59;
120
143
 
121
- var minutes = generateIntArray(_lower3, _upper3);
144
+ var minutes = generateColumn(_lower3, _upper3, 'minute');
122
145
  ret.push(minutes.map(function (v) {
123
146
  return {
124
147
  label: renderLabel('minute', v),
@@ -132,7 +155,7 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
132
155
 
133
156
  var _upper4 = isInMaxMinute ? maxSecond : 59;
134
157
 
135
- var seconds = generateIntArray(_lower4, _upper4);
158
+ var seconds = generateColumn(_lower4, _upper4, 'second');
136
159
  ret.push(seconds.map(function (v) {
137
160
  return {
138
161
  label: renderLabel('second', v),
@@ -150,7 +173,6 @@ export function convertDateToStringArray(date) {
150
173
  export function convertStringArrayToDate(value) {
151
174
  var _a, _b, _c, _d, _e, _f;
152
175
 
153
- if (value.length === 0) return null;
154
176
  var yearString = (_a = value[0]) !== null && _a !== void 0 ? _a : '1900';
155
177
  var monthString = (_b = value[1]) !== null && _b !== void 0 ? _b : '1';
156
178
  var dateString = (_c = value[2]) !== null && _c !== void 0 ? _c : '1';
@@ -2,7 +2,10 @@ import { ReactNode } from 'react';
2
2
  import type { DatePrecision } from './date-picker-date-utils';
3
3
  import type { WeekPrecision } from './date-picker-week-utils';
4
4
  export declare type Precision = DatePrecision | WeekPrecision;
5
+ export declare type DatePickerFilter = Partial<Record<Precision, (val: number, extend: {
6
+ date: Date;
7
+ }) => boolean>>;
5
8
  export declare const convertDateToStringArray: (date: Date | undefined | null, precision: Precision) => string[];
6
- export declare const convertStringArrayToDate: (value: (string | null | undefined)[], precision: Precision) => Date | null;
7
- export declare const generateDatePickerColumns: (selected: string[], min: Date, max: Date, precision: Precision, renderLabel: (type: Precision, data: number) => ReactNode) => import("../picker-view").PickerColumn[];
9
+ export declare const convertStringArrayToDate: (value: (string | null | undefined)[], precision: Precision) => Date;
10
+ export declare const generateDatePickerColumns: (selected: string[], min: Date, max: Date, precision: Precision, renderLabel: (type: Precision, data: number) => ReactNode, filter: DatePickerFilter | undefined) => import("../picker-view").PickerColumn[];
8
11
  export declare const defaultRenderLabel: (precision: Precision, data: number) => string;
@@ -14,11 +14,11 @@ export var convertStringArrayToDate = function convertStringArrayToDate(value, p
14
14
  return dateUtils.convertStringArrayToDate(value);
15
15
  }
16
16
  };
17
- export var generateDatePickerColumns = function generateDatePickerColumns(selected, min, max, precision, renderLabel) {
17
+ export var generateDatePickerColumns = function generateDatePickerColumns(selected, min, max, precision, renderLabel, filter) {
18
18
  if (precision.startsWith('week')) {
19
- return weekUtils.generateDatePickerColumns(selected, min, max, precision, renderLabel);
19
+ return weekUtils.generateDatePickerColumns(selected, min, max, precision, renderLabel, filter);
20
20
  } else {
21
- return dateUtils.generateDatePickerColumns(selected, min, max, precision, renderLabel);
21
+ return dateUtils.generateDatePickerColumns(selected, min, max, precision, renderLabel, filter);
22
22
  }
23
23
  };
24
24
  export var defaultRenderLabel = function defaultRenderLabel(precision, data) {
@@ -1,7 +1,8 @@
1
1
  import { ReactNode } from 'react';
2
2
  import { PickerColumn } from '../picker';
3
+ import type { DatePickerFilter } from './date-picker-utils';
3
4
  export declare type WeekPrecision = 'year' | 'week' | 'week-day';
4
5
  export declare function defaultRenderLabel(type: WeekPrecision, data: number): string;
5
- export declare function generateDatePickerColumns(selected: string[], min: Date, max: Date, precision: WeekPrecision, renderLabel: (type: WeekPrecision, data: number) => ReactNode): PickerColumn[];
6
+ export declare function generateDatePickerColumns(selected: string[], min: Date, max: Date, precision: WeekPrecision, renderLabel: (type: WeekPrecision, data: number) => ReactNode, filter: DatePickerFilter | undefined): PickerColumn[];
6
7
  export declare function convertDateToStringArray(date: Date | undefined | null): string[];
7
- export declare function convertStringArrayToDate(value: (string | null | undefined)[]): Date | null;
8
+ export declare function convertStringArrayToDate(value: (string | null | undefined)[]): Date;
@@ -2,7 +2,6 @@ import dayjs from 'dayjs';
2
2
  import isoWeek from 'dayjs/plugin/isoWeek';
3
3
  import isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear';
4
4
  import isLeapYear from 'dayjs/plugin/isLeapYear';
5
- import { generateIntArray } from '../../utils/generate-int-array';
6
5
  dayjs.extend(isoWeek);
7
6
  dayjs.extend(isoWeeksInYear);
8
7
  dayjs.extend(isLeapYear);
@@ -14,7 +13,7 @@ var precisionRankRecord = {
14
13
  export function defaultRenderLabel(type, data) {
15
14
  return data.toString();
16
15
  }
17
- export function generateDatePickerColumns(selected, min, max, precision, renderLabel) {
16
+ export function generateDatePickerColumns(selected, min, max, precision, renderLabel, filter) {
18
17
  var ret = [];
19
18
  var minYear = min.getFullYear();
20
19
  var maxYear = max.getFullYear();
@@ -48,10 +47,35 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
48
47
  var isInMaxWeek = isInMaxYear && selectedWeek === maxWeek;
49
48
  var selectedYearWeeks = dayjs(selectedYear + "-01-01").isoWeeksInYear();
50
49
 
50
+ var generateColumn = function generateColumn(from, to, precision) {
51
+ var column = [];
52
+
53
+ for (var _i = from; _i <= to; _i++) {
54
+ column.push(_i);
55
+ }
56
+
57
+ var prefix = selected.slice(0, precisionRankRecord[precision]);
58
+ var currentFilter = filter === null || filter === void 0 ? void 0 : filter[precision];
59
+
60
+ if (currentFilter && typeof currentFilter === 'function') {
61
+ column = column.filter(function (i) {
62
+ return currentFilter(i, {
63
+ get date() {
64
+ var stringArray = [].concat(prefix, [i.toString()]);
65
+ return convertStringArrayToDate(stringArray);
66
+ }
67
+
68
+ });
69
+ });
70
+ }
71
+
72
+ return column;
73
+ };
74
+
51
75
  if (rank >= precisionRankRecord.week) {
52
76
  var lower = isInMinYear ? minWeek : 1;
53
77
  var upper = isInMaxYear ? maxWeek : selectedYearWeeks;
54
- var weeks = generateIntArray(lower, upper);
78
+ var weeks = generateColumn(lower, upper, 'week');
55
79
  ret.push(weeks.map(function (v) {
56
80
  return {
57
81
  label: renderLabel('week', v),
@@ -65,7 +89,7 @@ export function generateDatePickerColumns(selected, min, max, precision, renderL
65
89
 
66
90
  var _upper = isInMaxWeek ? maxWeekday : 7;
67
91
 
68
- var _weeks = generateIntArray(_lower, _upper);
92
+ var _weeks = generateColumn(_lower, _upper, 'week-day');
69
93
 
70
94
  ret.push(_weeks.map(function (v) {
71
95
  return {
@@ -85,7 +109,6 @@ export function convertDateToStringArray(date) {
85
109
  export function convertStringArrayToDate(value) {
86
110
  var _a, _b, _c;
87
111
 
88
- if (value.length === 0) return null;
89
112
  var yearString = (_a = value[0]) !== null && _a !== void 0 ? _a : '1900';
90
113
  var weekString = (_b = value[1]) !== null && _b !== void 0 ? _b : '1';
91
114
  var weekdayString = (_c = value[2]) !== null && _c !== void 0 ? _c : '1';
@@ -1,7 +1,7 @@
1
1
  import { FC, ReactNode } from 'react';
2
2
  import { PickerProps } from '../picker';
3
3
  import { NativeProps } from '../../utils/native-props';
4
- import { Precision } from './date-picker-utils';
4
+ import type { Precision, DatePickerFilter } from './date-picker-utils';
5
5
  export declare type DatePickerProps = Pick<PickerProps, 'onCancel' | 'onClose' | 'visible' | 'confirmText' | 'cancelText' | 'getContainer' | 'afterShow' | 'afterClose' | 'onClick' | 'title' | 'stopPropagation'> & {
6
6
  value?: Date;
7
7
  defaultValue?: Date;
@@ -12,5 +12,6 @@ export declare type DatePickerProps = Pick<PickerProps, 'onCancel' | 'onClose' |
12
12
  precision?: Precision;
13
13
  children?: (value: Date | null) => ReactNode;
14
14
  renderLabel?: (type: Precision, data: number) => ReactNode;
15
+ filter?: DatePickerFilter;
15
16
  } & NativeProps;
16
17
  export declare const DatePicker: FC<DatePickerProps>;
@@ -1,10 +1,10 @@
1
1
  import React, { useCallback, useMemo } from 'react';
2
+ import { usePersistFn } from 'ahooks';
2
3
  import Picker from '../picker';
3
4
  import { withNativeProps } from '../../utils/native-props';
4
5
  import { mergeProps } from '../../utils/with-default-props';
5
6
  import { usePropsValue } from '../../utils/use-props-value';
6
7
  import { convertDateToStringArray, convertStringArrayToDate, generateDatePickerColumns, defaultRenderLabel } from './date-picker-utils';
7
- import { usePersistFn } from 'ahooks';
8
8
  var thisYear = new Date().getFullYear();
9
9
  var defaultProps = {
10
10
  min: new Date(new Date().setFullYear(thisYear - 10)),
@@ -35,13 +35,10 @@ export var DatePicker = function DatePicker(p) {
35
35
  var _a;
36
36
 
37
37
  var date = convertStringArrayToDate(val, props.precision);
38
-
39
- if (date) {
40
- (_a = props.onSelect) === null || _a === void 0 ? void 0 : _a.call(props, date);
41
- }
38
+ (_a = props.onSelect) === null || _a === void 0 ? void 0 : _a.call(props, date);
42
39
  });
43
40
  var columns = useCallback(function (selected) {
44
- return generateDatePickerColumns(selected, props.min, props.max, props.precision, props.renderLabel);
41
+ return generateDatePickerColumns(selected, props.min, props.max, props.precision, props.renderLabel, props.filter);
45
42
  }, [props.min, props.max, props.precision, props.renderLabel]);
46
43
  return withNativeProps(props, /*#__PURE__*/React.createElement(Picker, {
47
44
  columns: columns,
@@ -62,7 +59,7 @@ export var DatePicker = function DatePicker(p) {
62
59
  }, function (items) {
63
60
  var _a;
64
61
 
65
- return (_a = props.children) === null || _a === void 0 ? void 0 : _a.call(props, convertStringArrayToDate(items.map(function (item) {
62
+ return (_a = props.children) === null || _a === void 0 ? void 0 : _a.call(props, items.length === 0 ? null : convertStringArrayToDate(items.map(function (item) {
66
63
  return item === null || item === void 0 ? void 0 : item.value;
67
64
  }), props.precision));
68
65
  }));
@@ -2,6 +2,7 @@
2
2
  import './date-picker.less';
3
3
  import { prompt } from './prompt';
4
4
  export type { DatePickerProps } from './date-picker';
5
+ export type { DatePickerFilter } from './date-picker-utils';
5
6
  declare const _default: import("react").FC<import("./date-picker").DatePickerProps> & {
6
7
  prompt: typeof prompt;
7
8
  };
@@ -1,6 +1,6 @@
1
1
  import { FC, ReactNode } from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
- import { Precision } from '../date-picker/date-picker-utils';
3
+ import type { Precision, DatePickerFilter } from '../date-picker/date-picker-utils';
4
4
  export declare type DatePickerViewProps = {
5
5
  value?: Date;
6
6
  defaultValue?: Date;
@@ -9,5 +9,6 @@ export declare type DatePickerViewProps = {
9
9
  max?: Date;
10
10
  precision?: Precision;
11
11
  renderLabel?: (type: Precision, data: number) => ReactNode;
12
+ filter?: DatePickerFilter;
12
13
  } & NativeProps<'--height'>;
13
14
  export declare const DatePickerView: FC<DatePickerViewProps>;
@@ -38,7 +38,7 @@ export var DatePickerView = function DatePickerView(p) {
38
38
  }, [props.onChange, props.precision]);
39
39
  return withNativeProps(props, /*#__PURE__*/React.createElement(PickerView, {
40
40
  columns: function columns(selected) {
41
- return generateDatePickerColumns(selected, props.min, props.max, props.precision, props.renderLabel);
41
+ return generateDatePickerColumns(selected, props.min, props.max, props.precision, props.renderLabel, props.filter);
42
42
  },
43
43
  value: pickerValue,
44
44
  onChange: onChange
@@ -1,3 +1,4 @@
1
1
  import { DatePickerView } from './date-picker-view';
2
2
  export type { DatePickerViewProps } from './date-picker-view';
3
+ export type { DatePickerFilter } from '../date-picker';
3
4
  export default DatePickerView;
@@ -46,7 +46,7 @@
46
46
  max-height: 70vh;
47
47
  overflow-x: hidden;
48
48
  overflow-y: auto;
49
- font-size: var(--adm-font-size-main);
49
+ font-size: 30px;
50
50
  line-height: 1.4;
51
51
  color: #333;
52
52
  }
@@ -33,10 +33,12 @@ var __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, gene
33
33
  import React, { useState } from 'react';
34
34
  import { mergeProps } from '../../utils/with-default-props';
35
35
  import classNames from 'classnames';
36
+ import { useUnmountedRef } from 'ahooks';
36
37
  import Mask from '../mask';
37
38
  import { DialogActionButton } from './dialog-action-button';
38
39
  import Image from '../image';
39
40
  import Space from '../space';
41
+ import { renderToContainer } from '../../utils/render-to-container';
40
42
  import { withStopPropagation } from '../../utils/with-stop-propagation';
41
43
  import AutoCenter from '../auto-center';
42
44
  import { useSpring, animated } from '@react-spring/web';
@@ -47,10 +49,12 @@ var defaultProps = {
47
49
  actions: [],
48
50
  closeOnAction: false,
49
51
  closeOnMaskClick: false,
50
- stopPropagation: ['click']
52
+ stopPropagation: ['click'],
53
+ getContainer: null
51
54
  };
52
55
  export var Dialog = function Dialog(p) {
53
56
  var props = mergeProps(defaultProps, p);
57
+ var unmountedRef = useUnmountedRef();
54
58
  var style = useSpring({
55
59
  scale: props.visible ? 1 : 0.8,
56
60
  opacity: props.visible ? 1 : 0,
@@ -66,6 +70,7 @@ export var Dialog = function Dialog(p) {
66
70
  onRest: function onRest() {
67
71
  var _a;
68
72
 
73
+ if (unmountedRef.current) return;
69
74
  setActive(props.visible);
70
75
 
71
76
  if (!props.visible) {
@@ -78,14 +83,13 @@ export var Dialog = function Dialog(p) {
78
83
  active = _useState[0],
79
84
  setActive = _useState[1];
80
85
 
81
- return withStopPropagation(props.stopPropagation, withNativeProps(props, /*#__PURE__*/React.createElement("div", {
86
+ var node = withNativeProps(props, /*#__PURE__*/React.createElement("div", {
82
87
  className: classPrefix,
83
88
  style: {
84
89
  display: active ? 'unset' : 'none'
85
90
  }
86
91
  }, /*#__PURE__*/React.createElement(Mask, {
87
92
  visible: props.visible,
88
- getContainer: props.getContainer,
89
93
  onMaskClick: props.closeOnMaskClick ? props.onClose : undefined,
90
94
  style: props.maskStyle,
91
95
  className: classNames(classPrefix + "-mask", props.maskClassName)
@@ -155,5 +159,6 @@ export var Dialog = function Dialog(p) {
155
159
  }
156
160
  });
157
161
  }));
158
- })))))));
162
+ }))))));
163
+ return renderToContainer(props.getContainer, withStopPropagation(props.stopPropagation, node));
159
164
  };