antd-mobile 5.0.0-rc.0 → 5.0.0-rc.4

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 (515) hide show
  1. package/2x/cjs/components/action-sheet/action-sheet.d.ts +3 -3
  2. package/2x/cjs/components/cascader/cascader.css +40 -0
  3. package/2x/cjs/components/cascader/cascader.d.ts +20 -0
  4. package/2x/cjs/components/cascader/cascader.js +130 -0
  5. package/2x/cjs/components/cascader/index.d.ts +9 -0
  6. package/2x/cjs/components/cascader/index.js +20 -0
  7. package/2x/cjs/components/cascader/prompt.d.ts +2 -0
  8. package/2x/cjs/components/cascader/prompt.js +51 -0
  9. package/2x/cjs/components/cascader-view/cascader-view.css +40 -0
  10. package/2x/cjs/components/cascader-view/cascader-view.d.ts +20 -0
  11. package/2x/cjs/components/cascader-view/cascader-view.js +189 -0
  12. package/2x/cjs/components/cascader-view/index.d.ts +4 -0
  13. package/2x/cjs/components/cascader-view/index.js +13 -0
  14. package/2x/cjs/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  15. package/2x/cjs/components/cascader-view/use-cascader-value-extend.js +97 -0
  16. package/2x/cjs/components/check-list/check-list-item.d.ts +2 -2
  17. package/2x/cjs/components/check-list/check-list.d.ts +2 -2
  18. package/2x/cjs/components/collapse/collapse.d.ts +2 -0
  19. package/2x/cjs/components/collapse/collapse.js +21 -5
  20. package/2x/cjs/components/date-picker/date-picker-date-utils.d.ts +8 -0
  21. package/2x/cjs/components/date-picker/date-picker-date-utils.js +206 -0
  22. package/2x/cjs/components/date-picker/date-picker-utils.d.ts +10 -6
  23. package/2x/cjs/components/date-picker/date-picker-utils.js +33 -151
  24. package/2x/cjs/components/date-picker/date-picker-week-utils.d.ts +8 -0
  25. package/2x/cjs/components/date-picker/date-picker-week-utils.js +140 -0
  26. package/2x/cjs/components/date-picker/date-picker.d.ts +2 -1
  27. package/2x/cjs/components/date-picker/date-picker.js +16 -16
  28. package/2x/cjs/components/date-picker/index.d.ts +1 -0
  29. package/2x/cjs/components/date-picker-view/date-picker-view.d.ts +2 -1
  30. package/2x/cjs/components/date-picker-view/date-picker-view.js +5 -5
  31. package/2x/cjs/components/date-picker-view/index.d.ts +1 -0
  32. package/2x/cjs/components/dialog/dialog.css +26 -15
  33. package/2x/cjs/components/dialog/dialog.js +50 -29
  34. package/2x/cjs/components/dropdown/dropdown.css +13 -11
  35. package/2x/cjs/components/dropdown/dropdown.d.ts +13 -4
  36. package/2x/cjs/components/dropdown/dropdown.js +13 -11
  37. package/2x/cjs/components/dropdown/index.d.ts +14 -3
  38. package/2x/cjs/components/dropdown/index.js +8 -1
  39. package/2x/cjs/components/dropdown/item.d.ts +1 -1
  40. package/2x/cjs/components/dropdown/item.js +10 -4
  41. package/2x/cjs/components/ellipsis/ellipsis.js +1 -1
  42. package/2x/cjs/components/floating-bubble/floating-bubble.css +2 -1
  43. package/2x/cjs/components/floating-bubble/floating-bubble.d.ts +1 -1
  44. package/2x/cjs/components/form/form-item.css +4 -1
  45. package/2x/cjs/components/form/form-item.d.ts +2 -2
  46. package/2x/cjs/components/form/form.css +4 -0
  47. package/2x/cjs/components/form/form.d.ts +3 -0
  48. package/2x/cjs/components/form/form.js +3 -1
  49. package/2x/cjs/components/form/index.css +8 -1
  50. package/2x/cjs/components/form/index.d.ts +1 -0
  51. package/2x/cjs/components/image-uploader/image-uploader.d.ts +9 -6
  52. package/2x/cjs/components/image-uploader/image-uploader.js +8 -6
  53. package/2x/cjs/components/image-uploader/index.d.ts +1 -1
  54. package/2x/cjs/components/image-viewer/image-viewer.d.ts +1 -7
  55. package/2x/cjs/components/image-viewer/image-viewer.js +3 -101
  56. package/2x/cjs/components/image-viewer/index.d.ts +2 -1
  57. package/2x/cjs/components/image-viewer/index.js +5 -2
  58. package/2x/cjs/components/image-viewer/methods.d.ts +8 -1
  59. package/2x/cjs/components/image-viewer/methods.js +129 -1
  60. package/2x/cjs/components/index-bar/index-bar.css +4 -0
  61. package/2x/cjs/components/index-bar/index-bar.js +31 -23
  62. package/2x/cjs/components/index-bar/panel.d.ts +2 -2
  63. package/2x/cjs/components/index-bar/panel.js +2 -34
  64. package/2x/cjs/components/input/input.d.ts +3 -8
  65. package/2x/cjs/components/input/input.js +11 -1
  66. package/2x/cjs/components/list/list.css +8 -5
  67. package/2x/cjs/components/list/list.d.ts +1 -1
  68. package/2x/cjs/components/mask/mask.js +7 -1
  69. package/2x/cjs/components/modal/alert.d.ts +7 -0
  70. package/2x/cjs/components/modal/alert.js +33 -0
  71. package/2x/cjs/components/modal/confirm.d.ts +9 -0
  72. package/2x/cjs/components/modal/confirm.js +116 -0
  73. package/2x/cjs/components/modal/index.d.ts +16 -0
  74. package/2x/cjs/components/modal/index.js +26 -0
  75. package/2x/cjs/components/modal/modal-action-button.d.ts +14 -0
  76. package/2x/cjs/components/modal/modal-action-button.js +109 -0
  77. package/2x/cjs/components/modal/modal.css +89 -0
  78. package/2x/cjs/components/modal/modal.d.ts +26 -0
  79. package/2x/cjs/components/modal/modal.js +193 -0
  80. package/2x/cjs/components/modal/show.d.ts +8 -0
  81. package/2x/cjs/components/modal/show.js +62 -0
  82. package/2x/cjs/components/notice-bar/notice-bar.css +1 -1
  83. package/2x/cjs/components/notice-bar/notice-bar.js +0 -1
  84. package/2x/cjs/components/number-keyboard/number-keyboard.js +57 -11
  85. package/2x/cjs/components/page-indicator/page-indicator.css +1 -1
  86. package/2x/cjs/components/picker/index.d.ts +1 -1
  87. package/2x/cjs/components/picker/picker.d.ts +2 -2
  88. package/2x/cjs/components/picker/picker.js +17 -16
  89. package/2x/cjs/components/picker-view/column.js +1 -18
  90. package/2x/cjs/components/picker-view/picker-view.d.ts +2 -2
  91. package/2x/cjs/components/picker-view/picker-view.js +42 -21
  92. package/2x/cjs/components/popup/popup.js +4 -0
  93. package/2x/cjs/components/search-bar/search-bar.css +1 -1
  94. package/2x/cjs/components/search-bar/search-bar.js +1 -0
  95. package/2x/cjs/components/space/space.d.ts +2 -1
  96. package/2x/cjs/components/space/space.js +4 -2
  97. package/2x/cjs/components/stepper/stepper.css +8 -0
  98. package/2x/cjs/components/stepper/stepper.js +2 -6
  99. package/2x/cjs/components/swipe-action/swipe-action.css +2 -1
  100. package/2x/cjs/components/swiper/swiper.js +4 -4
  101. package/2x/cjs/components/switch/switch.css +19 -16
  102. package/2x/cjs/components/switch/switch.d.ts +1 -1
  103. package/2x/cjs/components/tabs/tabs.css +2 -1
  104. package/2x/cjs/components/tabs/tabs.d.ts +1 -1
  105. package/2x/cjs/components/tabs/tabs.js +2 -4
  106. package/2x/cjs/components/tag/tag.css +8 -11
  107. package/2x/cjs/components/tag/tag.d.ts +1 -1
  108. package/2x/cjs/components/tag/tag.js +4 -2
  109. package/2x/cjs/components/toast/toast.css +7 -4
  110. package/2x/cjs/components/toast/toast.js +3 -1
  111. package/2x/cjs/components/virtual-input/virtual-input.css +27 -9
  112. package/2x/cjs/components/virtual-input/virtual-input.d.ts +4 -0
  113. package/2x/cjs/components/virtual-input/virtual-input.js +47 -17
  114. package/2x/cjs/index.d.ts +10 -8
  115. package/2x/cjs/index.js +36 -20
  116. package/2x/cjs/locales/base.d.ts +6 -0
  117. package/2x/cjs/locales/base.js +6 -0
  118. package/2x/cjs/locales/en-US.d.ts +6 -0
  119. package/2x/cjs/locales/zh-CN.d.ts +6 -0
  120. package/2x/cjs/locales/zh-CN.js +6 -0
  121. package/2x/cjs/utils/use-props-value.js +2 -2
  122. package/2x/es/components/action-sheet/action-sheet.d.ts +3 -3
  123. package/2x/es/components/cascader/cascader.css +40 -0
  124. package/2x/es/components/cascader/cascader.d.ts +20 -0
  125. package/2x/es/components/cascader/cascader.js +104 -0
  126. package/2x/es/components/cascader/index.d.ts +9 -0
  127. package/2x/es/components/cascader/index.js +7 -0
  128. package/2x/es/components/cascader/prompt.d.ts +2 -0
  129. package/2x/es/components/cascader/prompt.js +37 -0
  130. package/2x/es/components/cascader-view/cascader-view.css +40 -0
  131. package/2x/es/components/cascader-view/cascader-view.d.ts +20 -0
  132. package/2x/es/components/cascader-view/cascader-view.js +130 -0
  133. package/2x/es/components/cascader-view/index.d.ts +4 -0
  134. package/2x/es/components/cascader-view/index.js +3 -0
  135. package/2x/es/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  136. package/2x/es/components/cascader-view/use-cascader-value-extend.js +52 -0
  137. package/2x/es/components/check-list/check-list-item.d.ts +2 -2
  138. package/2x/es/components/check-list/check-list.d.ts +2 -2
  139. package/2x/es/components/collapse/collapse.d.ts +2 -0
  140. package/2x/es/components/collapse/collapse.js +21 -5
  141. package/2x/es/components/date-picker/date-picker-date-utils.d.ts +8 -0
  142. package/2x/es/components/date-picker/date-picker-date-utils.js +183 -0
  143. package/2x/es/components/date-picker/date-picker-utils.d.ts +10 -6
  144. package/2x/es/components/date-picker/date-picker-utils.js +26 -150
  145. package/2x/es/components/date-picker/date-picker-week-utils.d.ts +8 -0
  146. package/2x/es/components/date-picker/date-picker-week-utils.js +117 -0
  147. package/2x/es/components/date-picker/date-picker.d.ts +2 -1
  148. package/2x/es/components/date-picker/date-picker.js +15 -16
  149. package/2x/es/components/date-picker/index.d.ts +1 -0
  150. package/2x/es/components/date-picker-view/date-picker-view.d.ts +2 -1
  151. package/2x/es/components/date-picker-view/date-picker-view.js +5 -5
  152. package/2x/es/components/date-picker-view/index.d.ts +1 -0
  153. package/2x/es/components/dialog/dialog.css +26 -15
  154. package/2x/es/components/dialog/dialog.js +44 -29
  155. package/2x/es/components/dropdown/dropdown.css +13 -11
  156. package/2x/es/components/dropdown/dropdown.d.ts +13 -4
  157. package/2x/es/components/dropdown/dropdown.js +14 -12
  158. package/2x/es/components/dropdown/index.d.ts +14 -3
  159. package/2x/es/components/dropdown/index.js +5 -1
  160. package/2x/es/components/dropdown/item.d.ts +1 -1
  161. package/2x/es/components/dropdown/item.js +9 -4
  162. package/2x/es/components/ellipsis/ellipsis.js +1 -1
  163. package/2x/es/components/floating-bubble/floating-bubble.css +2 -1
  164. package/2x/es/components/floating-bubble/floating-bubble.d.ts +1 -1
  165. package/2x/es/components/form/form-item.css +4 -1
  166. package/2x/es/components/form/form-item.d.ts +2 -2
  167. package/2x/es/components/form/form.css +4 -0
  168. package/2x/es/components/form/form.d.ts +3 -0
  169. package/2x/es/components/form/form.js +3 -1
  170. package/2x/es/components/form/index.css +8 -1
  171. package/2x/es/components/form/index.d.ts +1 -0
  172. package/2x/es/components/image-uploader/image-uploader.d.ts +9 -6
  173. package/2x/es/components/image-uploader/image-uploader.js +8 -6
  174. package/2x/es/components/image-uploader/index.d.ts +1 -1
  175. package/2x/es/components/image-viewer/image-viewer.d.ts +1 -7
  176. package/2x/es/components/image-viewer/image-viewer.js +2 -91
  177. package/2x/es/components/image-viewer/index.d.ts +2 -1
  178. package/2x/es/components/image-viewer/index.js +4 -2
  179. package/2x/es/components/image-viewer/methods.d.ts +8 -1
  180. package/2x/es/components/image-viewer/methods.js +109 -0
  181. package/2x/es/components/index-bar/index-bar.css +4 -0
  182. package/2x/es/components/index-bar/index-bar.js +29 -23
  183. package/2x/es/components/index-bar/panel.d.ts +2 -2
  184. package/2x/es/components/index-bar/panel.js +2 -26
  185. package/2x/es/components/input/input.d.ts +3 -8
  186. package/2x/es/components/input/input.js +12 -2
  187. package/2x/es/components/list/list.css +8 -5
  188. package/2x/es/components/list/list.d.ts +1 -1
  189. package/2x/es/components/mask/mask.js +6 -1
  190. package/2x/es/components/modal/alert.d.ts +7 -0
  191. package/2x/es/components/modal/alert.js +23 -0
  192. package/2x/es/components/modal/confirm.d.ts +9 -0
  193. package/2x/es/components/modal/confirm.js +106 -0
  194. package/2x/es/components/modal/index.d.ts +16 -0
  195. package/2x/es/components/modal/index.js +11 -0
  196. package/2x/es/components/modal/modal-action-button.d.ts +14 -0
  197. package/2x/es/components/modal/modal-action-button.js +90 -0
  198. package/2x/es/components/modal/modal.css +89 -0
  199. package/2x/es/components/modal/modal.d.ts +26 -0
  200. package/2x/es/components/modal/modal.js +164 -0
  201. package/2x/es/components/modal/show.d.ts +8 -0
  202. package/2x/es/components/modal/show.js +48 -0
  203. package/2x/es/components/notice-bar/notice-bar.css +1 -1
  204. package/2x/es/components/notice-bar/notice-bar.js +0 -1
  205. package/2x/es/components/number-keyboard/number-keyboard.js +56 -11
  206. package/2x/es/components/page-indicator/page-indicator.css +1 -1
  207. package/2x/es/components/picker/index.d.ts +1 -1
  208. package/2x/es/components/picker/picker.d.ts +2 -2
  209. package/2x/es/components/picker/picker.js +17 -15
  210. package/2x/es/components/picker-view/column.js +2 -18
  211. package/2x/es/components/picker-view/picker-view.d.ts +2 -2
  212. package/2x/es/components/picker-view/picker-view.js +38 -17
  213. package/2x/es/components/popup/popup.js +3 -0
  214. package/2x/es/components/search-bar/search-bar.css +1 -1
  215. package/2x/es/components/search-bar/search-bar.js +1 -0
  216. package/2x/es/components/space/space.d.ts +2 -1
  217. package/2x/es/components/space/space.js +4 -2
  218. package/2x/es/components/stepper/stepper.css +8 -0
  219. package/2x/es/components/stepper/stepper.js +2 -6
  220. package/2x/es/components/swipe-action/swipe-action.css +2 -1
  221. package/2x/es/components/swiper/swiper.js +4 -4
  222. package/2x/es/components/switch/switch.css +19 -16
  223. package/2x/es/components/switch/switch.d.ts +1 -1
  224. package/2x/es/components/tabs/tabs.css +2 -1
  225. package/2x/es/components/tabs/tabs.d.ts +1 -1
  226. package/2x/es/components/tabs/tabs.js +2 -4
  227. package/2x/es/components/tag/tag.css +8 -11
  228. package/2x/es/components/tag/tag.d.ts +1 -1
  229. package/2x/es/components/tag/tag.js +4 -2
  230. package/2x/es/components/toast/toast.css +7 -4
  231. package/2x/es/components/toast/toast.js +2 -1
  232. package/2x/es/components/virtual-input/virtual-input.css +27 -9
  233. package/2x/es/components/virtual-input/virtual-input.d.ts +4 -0
  234. package/2x/es/components/virtual-input/virtual-input.js +47 -18
  235. package/2x/es/index.d.ts +10 -8
  236. package/2x/es/index.js +11 -9
  237. package/2x/es/locales/base.d.ts +6 -0
  238. package/2x/es/locales/base.js +6 -0
  239. package/2x/es/locales/en-US.d.ts +6 -0
  240. package/2x/es/locales/zh-CN.d.ts +6 -0
  241. package/2x/es/locales/zh-CN.js +6 -0
  242. package/2x/es/utils/use-props-value.js +4 -4
  243. package/2x/package.json +4 -4
  244. package/cjs/components/action-sheet/action-sheet.d.ts +3 -3
  245. package/cjs/components/cascader/cascader.css +35 -0
  246. package/cjs/components/cascader/cascader.d.ts +20 -0
  247. package/cjs/components/cascader/cascader.js +130 -0
  248. package/cjs/components/cascader/index.d.ts +9 -0
  249. package/cjs/components/cascader/index.js +20 -0
  250. package/cjs/components/cascader/prompt.d.ts +2 -0
  251. package/cjs/components/cascader/prompt.js +51 -0
  252. package/cjs/components/cascader-view/cascader-view.css +33 -0
  253. package/cjs/components/cascader-view/cascader-view.d.ts +20 -0
  254. package/cjs/components/cascader-view/cascader-view.js +189 -0
  255. package/cjs/components/cascader-view/index.d.ts +4 -0
  256. package/cjs/components/cascader-view/index.js +13 -0
  257. package/cjs/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  258. package/cjs/components/cascader-view/use-cascader-value-extend.js +97 -0
  259. package/cjs/components/check-list/check-list-item.d.ts +2 -2
  260. package/cjs/components/check-list/check-list.d.ts +2 -2
  261. package/cjs/components/collapse/collapse.d.ts +2 -0
  262. package/cjs/components/collapse/collapse.js +21 -5
  263. package/cjs/components/date-picker/date-picker-date-utils.d.ts +8 -0
  264. package/cjs/components/date-picker/date-picker-date-utils.js +206 -0
  265. package/cjs/components/date-picker/date-picker-utils.d.ts +10 -6
  266. package/cjs/components/date-picker/date-picker-utils.js +33 -151
  267. package/cjs/components/date-picker/date-picker-week-utils.d.ts +8 -0
  268. package/cjs/components/date-picker/date-picker-week-utils.js +140 -0
  269. package/cjs/components/date-picker/date-picker.d.ts +2 -1
  270. package/cjs/components/date-picker/date-picker.js +16 -16
  271. package/cjs/components/date-picker/index.d.ts +1 -0
  272. package/cjs/components/date-picker-view/date-picker-view.d.ts +2 -1
  273. package/cjs/components/date-picker-view/date-picker-view.js +5 -5
  274. package/cjs/components/date-picker-view/index.d.ts +1 -0
  275. package/cjs/components/dialog/dialog.css +24 -15
  276. package/cjs/components/dialog/dialog.js +50 -29
  277. package/cjs/components/dropdown/dropdown.css +12 -11
  278. package/cjs/components/dropdown/dropdown.d.ts +13 -4
  279. package/cjs/components/dropdown/dropdown.js +13 -11
  280. package/cjs/components/dropdown/index.d.ts +14 -3
  281. package/cjs/components/dropdown/index.js +8 -1
  282. package/cjs/components/dropdown/item.d.ts +1 -1
  283. package/cjs/components/dropdown/item.js +10 -4
  284. package/cjs/components/ellipsis/ellipsis.js +1 -1
  285. package/cjs/components/floating-bubble/floating-bubble.css +2 -1
  286. package/cjs/components/floating-bubble/floating-bubble.d.ts +1 -1
  287. package/cjs/components/form/form-item.css +4 -1
  288. package/cjs/components/form/form-item.d.ts +2 -2
  289. package/cjs/components/form/form.css +3 -0
  290. package/cjs/components/form/form.d.ts +3 -0
  291. package/cjs/components/form/form.js +3 -1
  292. package/cjs/components/form/index.css +7 -1
  293. package/cjs/components/form/index.d.ts +1 -0
  294. package/cjs/components/image-uploader/image-uploader.d.ts +9 -6
  295. package/cjs/components/image-uploader/image-uploader.js +8 -6
  296. package/cjs/components/image-uploader/index.d.ts +1 -1
  297. package/cjs/components/image-viewer/image-viewer.d.ts +1 -7
  298. package/cjs/components/image-viewer/image-viewer.js +3 -101
  299. package/cjs/components/image-viewer/index.d.ts +2 -1
  300. package/cjs/components/image-viewer/index.js +5 -2
  301. package/cjs/components/image-viewer/methods.d.ts +8 -1
  302. package/cjs/components/image-viewer/methods.js +129 -1
  303. package/cjs/components/index-bar/index-bar.css +3 -0
  304. package/cjs/components/index-bar/index-bar.js +31 -23
  305. package/cjs/components/index-bar/panel.d.ts +2 -2
  306. package/cjs/components/index-bar/panel.js +2 -34
  307. package/cjs/components/input/input.d.ts +3 -8
  308. package/cjs/components/input/input.js +11 -1
  309. package/cjs/components/list/list.css +8 -5
  310. package/cjs/components/list/list.d.ts +1 -1
  311. package/cjs/components/mask/mask.js +7 -1
  312. package/cjs/components/modal/alert.d.ts +7 -0
  313. package/cjs/components/modal/alert.js +33 -0
  314. package/cjs/components/modal/confirm.d.ts +9 -0
  315. package/cjs/components/modal/confirm.js +116 -0
  316. package/cjs/components/modal/index.d.ts +16 -0
  317. package/cjs/components/modal/index.js +26 -0
  318. package/cjs/components/modal/modal-action-button.d.ts +14 -0
  319. package/cjs/components/modal/modal-action-button.js +109 -0
  320. package/cjs/components/modal/modal.css +75 -0
  321. package/cjs/components/modal/modal.d.ts +26 -0
  322. package/cjs/components/modal/modal.js +193 -0
  323. package/cjs/components/modal/show.d.ts +8 -0
  324. package/cjs/components/modal/show.js +62 -0
  325. package/cjs/components/notice-bar/notice-bar.css +1 -1
  326. package/cjs/components/notice-bar/notice-bar.js +0 -1
  327. package/cjs/components/number-keyboard/number-keyboard.js +57 -11
  328. package/cjs/components/page-indicator/page-indicator.css +1 -1
  329. package/cjs/components/picker/index.d.ts +1 -1
  330. package/cjs/components/picker/picker.d.ts +2 -2
  331. package/cjs/components/picker/picker.js +17 -16
  332. package/cjs/components/picker-view/column.js +1 -18
  333. package/cjs/components/picker-view/picker-view.d.ts +2 -2
  334. package/cjs/components/picker-view/picker-view.js +42 -21
  335. package/cjs/components/popup/popup.js +4 -0
  336. package/cjs/components/search-bar/search-bar.css +1 -1
  337. package/cjs/components/search-bar/search-bar.js +1 -0
  338. package/cjs/components/space/space.d.ts +2 -1
  339. package/cjs/components/space/space.js +4 -2
  340. package/cjs/components/stepper/stepper.css +7 -0
  341. package/cjs/components/stepper/stepper.js +2 -6
  342. package/cjs/components/swipe-action/swipe-action.css +2 -1
  343. package/cjs/components/swiper/swiper.js +4 -4
  344. package/cjs/components/switch/switch.css +19 -16
  345. package/cjs/components/switch/switch.d.ts +1 -1
  346. package/cjs/components/tabs/tabs.css +2 -1
  347. package/cjs/components/tabs/tabs.d.ts +1 -1
  348. package/cjs/components/tabs/tabs.js +2 -4
  349. package/cjs/components/tag/tag.css +8 -10
  350. package/cjs/components/tag/tag.d.ts +1 -1
  351. package/cjs/components/tag/tag.js +4 -2
  352. package/cjs/components/toast/toast.css +7 -4
  353. package/cjs/components/toast/toast.js +3 -1
  354. package/cjs/components/virtual-input/virtual-input.css +24 -8
  355. package/cjs/components/virtual-input/virtual-input.d.ts +4 -0
  356. package/cjs/components/virtual-input/virtual-input.js +47 -17
  357. package/cjs/index.d.ts +10 -8
  358. package/cjs/index.js +36 -20
  359. package/cjs/locales/base.d.ts +6 -0
  360. package/cjs/locales/base.js +6 -0
  361. package/cjs/locales/en-US.d.ts +6 -0
  362. package/cjs/locales/zh-CN.d.ts +6 -0
  363. package/cjs/locales/zh-CN.js +6 -0
  364. package/cjs/utils/use-props-value.js +2 -2
  365. package/es/components/action-sheet/action-sheet.d.ts +3 -3
  366. package/es/components/cascader/cascader.css +35 -0
  367. package/es/components/cascader/cascader.d.ts +20 -0
  368. package/es/components/cascader/cascader.js +104 -0
  369. package/es/components/cascader/index.d.ts +9 -0
  370. package/es/components/cascader/index.js +7 -0
  371. package/es/components/cascader/prompt.d.ts +2 -0
  372. package/es/components/cascader/prompt.js +37 -0
  373. package/es/components/cascader-view/cascader-view.css +33 -0
  374. package/es/components/cascader-view/cascader-view.d.ts +20 -0
  375. package/es/components/cascader-view/cascader-view.js +130 -0
  376. package/es/components/cascader-view/index.d.ts +4 -0
  377. package/es/components/cascader-view/index.js +3 -0
  378. package/es/components/cascader-view/use-cascader-value-extend.d.ts +2 -0
  379. package/es/components/cascader-view/use-cascader-value-extend.js +52 -0
  380. package/es/components/check-list/check-list-item.d.ts +2 -2
  381. package/es/components/check-list/check-list.d.ts +2 -2
  382. package/es/components/collapse/collapse.d.ts +2 -0
  383. package/es/components/collapse/collapse.js +21 -5
  384. package/es/components/date-picker/date-picker-date-utils.d.ts +8 -0
  385. package/es/components/date-picker/date-picker-date-utils.js +183 -0
  386. package/es/components/date-picker/date-picker-utils.d.ts +10 -6
  387. package/es/components/date-picker/date-picker-utils.js +26 -150
  388. package/es/components/date-picker/date-picker-week-utils.d.ts +8 -0
  389. package/es/components/date-picker/date-picker-week-utils.js +117 -0
  390. package/es/components/date-picker/date-picker.d.ts +2 -1
  391. package/es/components/date-picker/date-picker.js +15 -16
  392. package/es/components/date-picker/index.d.ts +1 -0
  393. package/es/components/date-picker-view/date-picker-view.d.ts +2 -1
  394. package/es/components/date-picker-view/date-picker-view.js +5 -5
  395. package/es/components/date-picker-view/index.d.ts +1 -0
  396. package/es/components/dialog/dialog.css +24 -15
  397. package/es/components/dialog/dialog.js +44 -29
  398. package/es/components/dropdown/dropdown.css +12 -11
  399. package/es/components/dropdown/dropdown.d.ts +13 -4
  400. package/es/components/dropdown/dropdown.js +14 -12
  401. package/es/components/dropdown/index.d.ts +14 -3
  402. package/es/components/dropdown/index.js +5 -1
  403. package/es/components/dropdown/item.d.ts +1 -1
  404. package/es/components/dropdown/item.js +9 -4
  405. package/es/components/ellipsis/ellipsis.js +1 -1
  406. package/es/components/floating-bubble/floating-bubble.css +2 -1
  407. package/es/components/floating-bubble/floating-bubble.d.ts +1 -1
  408. package/es/components/form/form-item.css +4 -1
  409. package/es/components/form/form-item.d.ts +2 -2
  410. package/es/components/form/form.css +3 -0
  411. package/es/components/form/form.d.ts +3 -0
  412. package/es/components/form/form.js +3 -1
  413. package/es/components/form/index.css +7 -1
  414. package/es/components/form/index.d.ts +1 -0
  415. package/es/components/image-uploader/image-uploader.d.ts +9 -6
  416. package/es/components/image-uploader/image-uploader.js +8 -6
  417. package/es/components/image-uploader/index.d.ts +1 -1
  418. package/es/components/image-viewer/image-viewer.d.ts +1 -7
  419. package/es/components/image-viewer/image-viewer.js +2 -91
  420. package/es/components/image-viewer/index.d.ts +2 -1
  421. package/es/components/image-viewer/index.js +4 -2
  422. package/es/components/image-viewer/methods.d.ts +8 -1
  423. package/es/components/image-viewer/methods.js +109 -0
  424. package/es/components/index-bar/index-bar.css +3 -0
  425. package/es/components/index-bar/index-bar.js +29 -23
  426. package/es/components/index-bar/panel.d.ts +2 -2
  427. package/es/components/index-bar/panel.js +2 -26
  428. package/es/components/input/input.d.ts +3 -8
  429. package/es/components/input/input.js +12 -2
  430. package/es/components/list/list.css +8 -5
  431. package/es/components/list/list.d.ts +1 -1
  432. package/es/components/mask/mask.js +6 -1
  433. package/es/components/modal/alert.d.ts +7 -0
  434. package/es/components/modal/alert.js +23 -0
  435. package/es/components/modal/confirm.d.ts +9 -0
  436. package/es/components/modal/confirm.js +106 -0
  437. package/es/components/modal/index.d.ts +16 -0
  438. package/es/components/modal/index.js +11 -0
  439. package/es/components/modal/modal-action-button.d.ts +14 -0
  440. package/es/components/modal/modal-action-button.js +90 -0
  441. package/es/components/modal/modal.css +75 -0
  442. package/es/components/modal/modal.d.ts +26 -0
  443. package/es/components/modal/modal.js +164 -0
  444. package/es/components/modal/show.d.ts +8 -0
  445. package/es/components/modal/show.js +48 -0
  446. package/es/components/notice-bar/notice-bar.css +1 -1
  447. package/es/components/notice-bar/notice-bar.js +0 -1
  448. package/es/components/number-keyboard/number-keyboard.js +56 -11
  449. package/es/components/page-indicator/page-indicator.css +1 -1
  450. package/es/components/picker/index.d.ts +1 -1
  451. package/es/components/picker/picker.d.ts +2 -2
  452. package/es/components/picker/picker.js +17 -15
  453. package/es/components/picker-view/column.js +2 -18
  454. package/es/components/picker-view/picker-view.d.ts +2 -2
  455. package/es/components/picker-view/picker-view.js +38 -17
  456. package/es/components/popup/popup.js +3 -0
  457. package/es/components/search-bar/search-bar.css +1 -1
  458. package/es/components/search-bar/search-bar.js +1 -0
  459. package/es/components/space/space.d.ts +2 -1
  460. package/es/components/space/space.js +4 -2
  461. package/es/components/stepper/stepper.css +7 -0
  462. package/es/components/stepper/stepper.js +2 -6
  463. package/es/components/swipe-action/swipe-action.css +2 -1
  464. package/es/components/swiper/swiper.js +4 -4
  465. package/es/components/switch/switch.css +19 -16
  466. package/es/components/switch/switch.d.ts +1 -1
  467. package/es/components/tabs/tabs.css +2 -1
  468. package/es/components/tabs/tabs.d.ts +1 -1
  469. package/es/components/tabs/tabs.js +2 -4
  470. package/es/components/tag/tag.css +8 -10
  471. package/es/components/tag/tag.d.ts +1 -1
  472. package/es/components/tag/tag.js +4 -2
  473. package/es/components/toast/toast.css +7 -4
  474. package/es/components/toast/toast.js +2 -1
  475. package/es/components/virtual-input/virtual-input.css +24 -8
  476. package/es/components/virtual-input/virtual-input.d.ts +4 -0
  477. package/es/components/virtual-input/virtual-input.js +47 -18
  478. package/es/index.d.ts +10 -8
  479. package/es/index.js +11 -9
  480. package/es/locales/base.d.ts +6 -0
  481. package/es/locales/base.js +6 -0
  482. package/es/locales/en-US.d.ts +6 -0
  483. package/es/locales/zh-CN.d.ts +6 -0
  484. package/es/locales/zh-CN.js +6 -0
  485. package/es/utils/use-props-value.js +4 -4
  486. package/package.json +4 -4
  487. package/umd/antd-mobile.js +1 -1
  488. package/2x/cjs/components/desense-text/desense-text.css +0 -10
  489. package/2x/cjs/components/desense-text/desense-text.d.ts +0 -10
  490. package/2x/cjs/components/desense-text/desense-text.js +0 -50
  491. package/2x/cjs/components/desense-text/index.d.ts +0 -4
  492. package/2x/cjs/components/desense-text/index.js +0 -13
  493. package/2x/cjs/components/index-bar/context.d.ts +0 -5
  494. package/2x/cjs/components/index-bar/context.js +0 -14
  495. package/2x/es/components/desense-text/desense-text.css +0 -10
  496. package/2x/es/components/desense-text/desense-text.d.ts +0 -10
  497. package/2x/es/components/desense-text/desense-text.js +0 -32
  498. package/2x/es/components/desense-text/index.d.ts +0 -4
  499. package/2x/es/components/desense-text/index.js +0 -3
  500. package/2x/es/components/index-bar/context.d.ts +0 -5
  501. package/2x/es/components/index-bar/context.js +0 -5
  502. package/cjs/components/desense-text/desense-text.css +0 -9
  503. package/cjs/components/desense-text/desense-text.d.ts +0 -10
  504. package/cjs/components/desense-text/desense-text.js +0 -50
  505. package/cjs/components/desense-text/index.d.ts +0 -4
  506. package/cjs/components/desense-text/index.js +0 -13
  507. package/cjs/components/index-bar/context.d.ts +0 -5
  508. package/cjs/components/index-bar/context.js +0 -14
  509. package/es/components/desense-text/desense-text.css +0 -9
  510. package/es/components/desense-text/desense-text.d.ts +0 -10
  511. package/es/components/desense-text/desense-text.js +0 -32
  512. package/es/components/desense-text/index.d.ts +0 -4
  513. package/es/components/desense-text/index.js +0 -3
  514. package/es/components/index-bar/context.d.ts +0 -5
  515. package/es/components/index-bar/context.js +0 -5
@@ -1,7 +1,7 @@
1
1
  import { FC, ReactNode } from 'react';
2
2
  import { NativeProps } from '../../utils/native-props';
3
3
  import { ListProps } from '../list';
4
- export declare type CheckListProps = Pick<ListProps, 'mode'> & {
4
+ export declare type CheckListProps = Pick<ListProps, 'mode' | 'style'> & {
5
5
  defaultValue?: string[];
6
6
  value?: string[];
7
7
  onChange?: (val: string[]) => void;
@@ -9,5 +9,5 @@ export declare type CheckListProps = Pick<ListProps, 'mode'> & {
9
9
  activeIcon?: ReactNode;
10
10
  disabled?: boolean;
11
11
  readOnly?: boolean;
12
- } & NativeProps<'--prefix-width' | '--align-items'>;
12
+ } & NativeProps;
13
13
  export declare const CheckList: FC<CheckListProps>;
@@ -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;
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;
16
18
  };
17
19
  export declare type CollapseProps = (({
18
20
  accordion?: false;
@@ -128,7 +128,7 @@ var Collapse = function Collapse(props) {
128
128
  return (0, _nativeProps.withNativeProps)(props, /*#__PURE__*/_react["default"].createElement("div", {
129
129
  className: classPrefix
130
130
  }, /*#__PURE__*/_react["default"].createElement(_list["default"], null, panels.map(function (panel) {
131
- var _classNames, _classNames2;
131
+ var _classNames2;
132
132
 
133
133
  var key = panel.key;
134
134
  var active = activeKeyList.includes(key);
@@ -155,14 +155,30 @@ var Collapse = function Collapse(props) {
155
155
  (_b = (_a = panel.props).onClick) === null || _b === void 0 ? void 0 : _b.call(_a, event);
156
156
  }
157
157
 
158
+ var renderArrow = function renderArrow() {
159
+ var _classNames;
160
+
161
+ var arrow = /*#__PURE__*/_react["default"].createElement(_antdMobileIcons.RightOutline, null);
162
+
163
+ if (props.arrow !== undefined) {
164
+ arrow = props.arrow;
165
+ }
166
+
167
+ if (panel.props.arrow !== undefined) {
168
+ arrow = panel.props.arrow;
169
+ }
170
+
171
+ return /*#__PURE__*/_react["default"].createElement("div", {
172
+ className: (0, _classnames["default"])(classPrefix + "-arrow", (_classNames = {}, _classNames[classPrefix + "-arrow-active"] = active, _classNames))
173
+ }, arrow);
174
+ };
175
+
158
176
  return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, {
159
177
  key: key
160
178
  }, (0, _nativeProps.withNativeProps)(panel.props, /*#__PURE__*/_react["default"].createElement(_list["default"].Item, {
161
- className: (0, _classnames["default"])(classPrefix + "-panel-header", (_classNames = {}, _classNames[classPrefix + "-panel-header-disabled"] = panel.props.disabled, _classNames)),
179
+ className: (0, _classnames["default"])(classPrefix + "-panel-header", (_classNames2 = {}, _classNames2[classPrefix + "-panel-header-disabled"] = panel.props.disabled, _classNames2)),
162
180
  onClick: panel.props.disabled ? undefined : handleClick,
163
- arrow: /*#__PURE__*/_react["default"].createElement("div", {
164
- className: (0, _classnames["default"])(classPrefix + "-arrow", (_classNames2 = {}, _classNames2[classPrefix + "-arrow-active"] = active, _classNames2))
165
- }, /*#__PURE__*/_react["default"].createElement(_antdMobileIcons.RightOutline, null))
181
+ arrow: renderArrow()
166
182
  }, panel.props.title)), /*#__PURE__*/_react["default"].createElement(CollapsePanelContent, {
167
183
  visible: active,
168
184
  forceRender: !!panel.props.forceRender,
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ import { PickerColumn } from '../picker';
3
+ import type { DatePickerFilter } from './date-picker-utils';
4
+ export declare type DatePrecision = 'year' | 'month' | 'day' | 'hour' | 'minute' | 'second';
5
+ export declare function defaultRenderLabel(type: DatePrecision, data: number): string;
6
+ export declare function generateDatePickerColumns(selected: string[], min: Date, max: Date, precision: DatePrecision, renderLabel: (type: DatePrecision, data: number) => ReactNode, filter: DatePickerFilter | undefined): PickerColumn[];
7
+ export declare function convertDateToStringArray(date: Date | undefined | null): string[];
8
+ export declare function convertStringArrayToDate(value: (string | null | undefined)[]): Date;
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.convertDateToStringArray = convertDateToStringArray;
7
+ exports.convertStringArrayToDate = convertStringArrayToDate;
8
+ exports.defaultRenderLabel = defaultRenderLabel;
9
+ exports.generateDatePickerColumns = generateDatePickerColumns;
10
+
11
+ var _dayjs = _interopRequireDefault(require("dayjs"));
12
+
13
+ var _isoWeek = _interopRequireDefault(require("dayjs/plugin/isoWeek"));
14
+
15
+ var _isoWeeksInYear = _interopRequireDefault(require("dayjs/plugin/isoWeeksInYear"));
16
+
17
+ var _isLeapYear = _interopRequireDefault(require("dayjs/plugin/isLeapYear"));
18
+
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
20
+
21
+ _dayjs["default"].extend(_isoWeek["default"]);
22
+
23
+ _dayjs["default"].extend(_isoWeeksInYear["default"]);
24
+
25
+ _dayjs["default"].extend(_isLeapYear["default"]);
26
+
27
+ var precisionRankRecord = {
28
+ year: 0,
29
+ month: 1,
30
+ day: 2,
31
+ hour: 3,
32
+ minute: 4,
33
+ second: 5
34
+ };
35
+
36
+ function defaultRenderLabel(type, data) {
37
+ switch (type) {
38
+ case 'minute':
39
+ case 'second':
40
+ case 'hour':
41
+ return ('0' + data.toString()).slice(-2);
42
+
43
+ default:
44
+ return data.toString();
45
+ }
46
+ }
47
+
48
+ function generateDatePickerColumns(selected, min, max, precision, renderLabel, filter) {
49
+ var ret = [];
50
+ var minYear = min.getFullYear();
51
+ var minMonth = min.getMonth() + 1;
52
+ var minDay = min.getDate();
53
+ var minHour = min.getHours();
54
+ var minMinute = min.getMinutes();
55
+ var minSecond = min.getSeconds();
56
+ var maxYear = max.getFullYear();
57
+ var maxMonth = max.getMonth() + 1;
58
+ var maxDay = max.getDate();
59
+ var maxHour = max.getHours();
60
+ var maxMinute = max.getMinutes();
61
+ var maxSecond = max.getSeconds();
62
+ var rank = precisionRankRecord[precision];
63
+
64
+ if (rank >= precisionRankRecord.year) {
65
+ var years = [];
66
+
67
+ for (var i = minYear; i <= maxYear; i++) {
68
+ var value = i.toString();
69
+ years.push({
70
+ label: renderLabel ? renderLabel('year', i) : value,
71
+ value: value
72
+ });
73
+ }
74
+
75
+ ret.push(years);
76
+ }
77
+
78
+ var selectedYear = parseInt(selected[0]);
79
+ var firstDayInSelectedMonth = (0, _dayjs["default"])(convertStringArrayToDate([selected[0], selected[1], '1']));
80
+ var selectedMonth = parseInt(selected[1]);
81
+ var selectedDay = parseInt(selected[2]);
82
+ var selectedHour = parseInt(selected[3]);
83
+ var selectedMinute = parseInt(selected[4]);
84
+ var isInMinYear = selectedYear === minYear;
85
+ var isInMaxYear = selectedYear === maxYear;
86
+ var isInMinMonth = isInMinYear && selectedMonth === minMonth;
87
+ var isInMaxMonth = isInMaxYear && selectedMonth === maxMonth;
88
+ var isInMinDay = isInMinMonth && selectedDay === minDay;
89
+ var isInMaxDay = isInMaxMonth && selectedDay === maxDay;
90
+ var isInMinHour = isInMinDay && selectedHour === minHour;
91
+ var isInMaxHour = isInMaxDay && selectedHour === maxHour;
92
+ var isInMinMinute = isInMinHour && selectedMinute === minMinute;
93
+ var isInMaxMinute = isInMaxHour && selectedMinute === maxMinute;
94
+
95
+ var generateColumn = function generateColumn(from, to, precision) {
96
+ var column = [];
97
+
98
+ for (var _i = from; _i <= to; _i++) {
99
+ column.push(_i);
100
+ }
101
+
102
+ var prefix = selected.slice(0, precisionRankRecord[precision]);
103
+ var currentFilter = filter === null || filter === void 0 ? void 0 : filter[precision];
104
+
105
+ if (currentFilter && typeof currentFilter === 'function') {
106
+ column = column.filter(function (i) {
107
+ return currentFilter(i, {
108
+ get date() {
109
+ var stringArray = [].concat(prefix, [i.toString()]);
110
+ return convertStringArrayToDate(stringArray);
111
+ }
112
+
113
+ });
114
+ });
115
+ }
116
+
117
+ return column;
118
+ };
119
+
120
+ if (rank >= precisionRankRecord.month) {
121
+ var lower = isInMinYear ? minMonth : 1;
122
+ var upper = isInMaxYear ? maxMonth : 12;
123
+ var months = generateColumn(lower, upper, 'month');
124
+ ret.push(months.map(function (v) {
125
+ return {
126
+ label: renderLabel('month', v),
127
+ value: v.toString()
128
+ };
129
+ }));
130
+ }
131
+
132
+ if (rank >= precisionRankRecord.day) {
133
+ var _lower = isInMinMonth ? minDay : 1;
134
+
135
+ var _upper = isInMaxMonth ? maxDay : firstDayInSelectedMonth.daysInMonth();
136
+
137
+ var days = generateColumn(_lower, _upper, 'day');
138
+ ret.push(days.map(function (v) {
139
+ return {
140
+ label: renderLabel('day', v),
141
+ value: v.toString()
142
+ };
143
+ }));
144
+ }
145
+
146
+ if (rank >= precisionRankRecord.hour) {
147
+ var _lower2 = isInMinDay ? minHour : 0;
148
+
149
+ var _upper2 = isInMaxDay ? maxHour : 23;
150
+
151
+ var hours = generateColumn(_lower2, _upper2, 'hour');
152
+ ret.push(hours.map(function (v) {
153
+ return {
154
+ label: renderLabel('hour', v),
155
+ value: v.toString()
156
+ };
157
+ }));
158
+ }
159
+
160
+ if (rank >= precisionRankRecord.minute) {
161
+ var _lower3 = isInMinHour ? minMinute : 0;
162
+
163
+ var _upper3 = isInMaxHour ? maxMinute : 59;
164
+
165
+ var minutes = generateColumn(_lower3, _upper3, 'minute');
166
+ ret.push(minutes.map(function (v) {
167
+ return {
168
+ label: renderLabel('minute', v),
169
+ value: v.toString()
170
+ };
171
+ }));
172
+ }
173
+
174
+ if (rank >= precisionRankRecord.second) {
175
+ var _lower4 = isInMinMinute ? minSecond : 0;
176
+
177
+ var _upper4 = isInMaxMinute ? maxSecond : 59;
178
+
179
+ var seconds = generateColumn(_lower4, _upper4, 'second');
180
+ ret.push(seconds.map(function (v) {
181
+ return {
182
+ label: renderLabel('second', v),
183
+ value: v.toString()
184
+ };
185
+ }));
186
+ }
187
+
188
+ return ret;
189
+ }
190
+
191
+ function convertDateToStringArray(date) {
192
+ if (!date) return [];
193
+ return [date.getFullYear().toString(), (date.getMonth() + 1).toString(), date.getDate().toString(), date.getHours().toString(), date.getMinutes().toString(), date.getSeconds().toString()];
194
+ }
195
+
196
+ function convertStringArrayToDate(value) {
197
+ var _a, _b, _c, _d, _e, _f;
198
+
199
+ var yearString = (_a = value[0]) !== null && _a !== void 0 ? _a : '1900';
200
+ var monthString = (_b = value[1]) !== null && _b !== void 0 ? _b : '1';
201
+ var dateString = (_c = value[2]) !== null && _c !== void 0 ? _c : '1';
202
+ var hourString = (_d = value[3]) !== null && _d !== void 0 ? _d : '0';
203
+ var minuteString = (_e = value[4]) !== null && _e !== void 0 ? _e : '0';
204
+ var secondString = (_f = value[5]) !== null && _f !== void 0 ? _f : '0';
205
+ return new Date(parseInt(yearString), parseInt(monthString) - 1, parseInt(dateString), parseInt(hourString), parseInt(minuteString), parseInt(secondString));
206
+ }
@@ -1,7 +1,11 @@
1
1
  import { ReactNode } from 'react';
2
- import { PickerColumn } from '../picker';
3
- export declare type Precision = 'year' | 'month' | 'day' | 'hour' | 'minute' | 'second';
4
- export declare function defaultRenderLabel(type: Precision, data: number): string;
5
- export declare function generateDatePickerColumns(selected: string[], min: Date, max: Date, precision: Precision, renderLabel: (type: Precision, data: number) => ReactNode): PickerColumn[];
6
- export declare function convertDateToStringArray(date: Date | undefined | null): string[];
7
- export declare function convertStringArrayToDate(value: (string | null | undefined)[]): Date | null;
2
+ import type { DatePrecision } from './date-picker-date-utils';
3
+ import type { WeekPrecision } from './date-picker-week-utils';
4
+ export declare type Precision = DatePrecision | WeekPrecision;
5
+ export declare type DatePickerFilter = Partial<Record<Precision, (val: number, extend: {
6
+ date: Date;
7
+ }) => boolean>>;
8
+ export declare const convertDateToStringArray: (date: Date | undefined | null, precision: Precision) => string[];
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[];
11
+ export declare const defaultRenderLabel: (precision: Precision, data: number) => string;
@@ -3,170 +3,52 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.convertDateToStringArray = convertDateToStringArray;
7
- exports.convertStringArrayToDate = convertStringArrayToDate;
8
- exports.defaultRenderLabel = defaultRenderLabel;
9
- exports.generateDatePickerColumns = generateDatePickerColumns;
10
-
11
- var _dayjs = _interopRequireDefault(require("dayjs"));
12
-
13
- var _generateIntArray = require("../../utils/generate-int-array");
14
-
15
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
16
-
17
- var precisionRankRecord = {
18
- year: 0,
19
- month: 1,
20
- day: 2,
21
- hour: 3,
22
- minute: 4,
23
- second: 5
24
- };
25
-
26
- function defaultRenderLabel(type, data) {
27
- switch (type) {
28
- case 'minute':
29
- case 'second':
30
- case 'hour':
31
- return ('0' + data.toString()).slice(-2);
32
-
33
- default:
34
- return data.toString();
35
- }
36
- }
37
-
38
- function generateDatePickerColumns(selected, min, max, precision, renderLabel) {
39
- var ret = [];
40
- var minYear = min.getFullYear();
41
- var minMonth = min.getMonth() + 1;
42
- var minDay = min.getDate();
43
- var minHour = min.getHours();
44
- var minMinute = min.getMinutes();
45
- var minSecond = min.getSeconds();
46
- var maxYear = max.getFullYear();
47
- var maxMonth = max.getMonth() + 1;
48
- var maxDay = max.getDate();
49
- var maxHour = max.getHours();
50
- var maxMinute = max.getMinutes();
51
- var maxSecond = max.getSeconds();
52
- var rank = precisionRankRecord[precision];
53
-
54
- if (rank >= precisionRankRecord.year) {
55
- var years = [];
56
-
57
- for (var i = minYear; i <= maxYear; i++) {
58
- var value = i.toString();
59
- years.push({
60
- label: renderLabel ? renderLabel('year', i) : value,
61
- value: value
62
- });
63
- }
64
-
65
- ret.push(years);
66
- }
6
+ exports.generateDatePickerColumns = exports.defaultRenderLabel = exports.convertStringArrayToDate = exports.convertDateToStringArray = void 0;
67
7
 
68
- var firstDayInSelectedMonth = (0, _dayjs["default"])(convertStringArrayToDate([selected[0], selected[1], '1']));
69
- var selectedYear = parseInt(selected[0]);
70
- var selectedMonth = parseInt(selected[1]);
71
- var selectedDay = parseInt(selected[2]);
72
- var selectedHour = parseInt(selected[3]);
73
- var selectedMinute = parseInt(selected[4]);
74
- var isInMinYear = selectedYear === minYear;
75
- var isInMaxYear = selectedYear === maxYear;
76
- var isInMinMonth = isInMinYear && selectedMonth === minMonth;
77
- var isInMaxMonth = isInMaxYear && selectedMonth === maxMonth;
78
- var isInMinDay = isInMinMonth && selectedDay === minDay;
79
- var isInMaxDay = isInMaxMonth && selectedDay === maxDay;
80
- var isInMinHour = isInMinDay && selectedHour === minHour;
81
- var isInMaxHour = isInMaxDay && selectedHour === maxHour;
82
- var isInMinMinute = isInMinHour && selectedMinute === minMinute;
83
- var isInMaxMinute = isInMaxHour && selectedMinute === maxMinute;
8
+ var dateUtils = _interopRequireWildcard(require("./date-picker-date-utils"));
84
9
 
85
- if (rank >= precisionRankRecord.month) {
86
- var lower = isInMinYear ? minMonth : 1;
87
- var upper = isInMaxYear ? maxMonth : 12;
88
- var months = (0, _generateIntArray.generateIntArray)(lower, upper);
89
- ret.push(months.map(function (v) {
90
- return {
91
- label: renderLabel('month', v),
92
- value: v.toString()
93
- };
94
- }));
95
- }
10
+ var weekUtils = _interopRequireWildcard(require("./date-picker-week-utils"));
96
11
 
97
- if (rank >= precisionRankRecord.day) {
98
- var _lower = isInMinMonth ? minDay : 1;
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
99
13
 
100
- var _upper = isInMaxMonth ? maxDay : firstDayInSelectedMonth.daysInMonth();
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
101
15
 
102
- var days = (0, _generateIntArray.generateIntArray)(_lower, _upper);
103
- ret.push(days.map(function (v) {
104
- return {
105
- label: renderLabel('day', v),
106
- value: v.toString()
107
- };
108
- }));
16
+ var convertDateToStringArray = function convertDateToStringArray(date, precision) {
17
+ if (precision.includes('week')) {
18
+ return weekUtils.convertDateToStringArray(date);
19
+ } else {
20
+ return dateUtils.convertDateToStringArray(date);
109
21
  }
22
+ };
110
23
 
111
- if (rank >= precisionRankRecord.hour) {
112
- var _lower2 = isInMinDay ? minHour : 0;
113
-
114
- var _upper2 = isInMaxDay ? maxHour : 23;
24
+ exports.convertDateToStringArray = convertDateToStringArray;
115
25
 
116
- var hours = (0, _generateIntArray.generateIntArray)(_lower2, _upper2);
117
- ret.push(hours.map(function (v) {
118
- return {
119
- label: renderLabel('hour', v),
120
- value: v.toString()
121
- };
122
- }));
26
+ var convertStringArrayToDate = function convertStringArrayToDate(value, precision) {
27
+ if (precision.includes('week')) {
28
+ return weekUtils.convertStringArrayToDate(value);
29
+ } else {
30
+ return dateUtils.convertStringArrayToDate(value);
123
31
  }
32
+ };
124
33
 
125
- if (rank >= precisionRankRecord.minute) {
126
- var _lower3 = isInMinHour ? minMinute : 0;
127
-
128
- var _upper3 = isInMaxHour ? maxMinute : 59;
34
+ exports.convertStringArrayToDate = convertStringArrayToDate;
129
35
 
130
- var minutes = (0, _generateIntArray.generateIntArray)(_lower3, _upper3);
131
- ret.push(minutes.map(function (v) {
132
- return {
133
- label: renderLabel('minute', v),
134
- value: v.toString()
135
- };
136
- }));
36
+ var generateDatePickerColumns = function generateDatePickerColumns(selected, min, max, precision, renderLabel, filter) {
37
+ if (precision.startsWith('week')) {
38
+ return weekUtils.generateDatePickerColumns(selected, min, max, precision, renderLabel, filter);
39
+ } else {
40
+ return dateUtils.generateDatePickerColumns(selected, min, max, precision, renderLabel, filter);
137
41
  }
42
+ };
138
43
 
139
- if (rank >= precisionRankRecord.second) {
140
- var _lower4 = isInMinMinute ? minSecond : 0;
141
-
142
- var _upper4 = isInMaxMinute ? maxSecond : 59;
44
+ exports.generateDatePickerColumns = generateDatePickerColumns;
143
45
 
144
- var seconds = (0, _generateIntArray.generateIntArray)(_lower4, _upper4);
145
- ret.push(seconds.map(function (v) {
146
- return {
147
- label: renderLabel('second', v),
148
- value: v.toString()
149
- };
150
- }));
46
+ var defaultRenderLabel = function defaultRenderLabel(precision, data) {
47
+ if (precision.includes('week')) {
48
+ return weekUtils.defaultRenderLabel(precision, data);
49
+ } else {
50
+ return dateUtils.defaultRenderLabel(precision, data);
151
51
  }
52
+ };
152
53
 
153
- return ret;
154
- }
155
-
156
- function convertDateToStringArray(date) {
157
- if (!date) return [];
158
- return [date.getFullYear().toString(), (date.getMonth() + 1).toString(), date.getDate().toString(), date.getHours().toString(), date.getMinutes().toString(), date.getSeconds().toString()];
159
- }
160
-
161
- function convertStringArrayToDate(value) {
162
- var _a, _b, _c, _d, _e, _f;
163
-
164
- if (value.length === 0) return null;
165
- var yearString = (_a = value[0]) !== null && _a !== void 0 ? _a : '1900';
166
- var monthString = (_b = value[1]) !== null && _b !== void 0 ? _b : '1';
167
- var dateString = (_c = value[2]) !== null && _c !== void 0 ? _c : '1';
168
- var hourString = (_d = value[3]) !== null && _d !== void 0 ? _d : '0';
169
- var minuteString = (_e = value[4]) !== null && _e !== void 0 ? _e : '0';
170
- var secondString = (_f = value[5]) !== null && _f !== void 0 ? _f : '0';
171
- return new Date(parseInt(yearString), parseInt(monthString) - 1, parseInt(dateString), parseInt(hourString), parseInt(minuteString), parseInt(secondString));
172
- }
54
+ exports.defaultRenderLabel = defaultRenderLabel;
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from 'react';
2
+ import { PickerColumn } from '../picker';
3
+ import type { DatePickerFilter } from './date-picker-utils';
4
+ export declare type WeekPrecision = 'year' | 'week' | 'week-day';
5
+ export declare function defaultRenderLabel(type: WeekPrecision, data: number): string;
6
+ export declare function generateDatePickerColumns(selected: string[], min: Date, max: Date, precision: WeekPrecision, renderLabel: (type: WeekPrecision, data: number) => ReactNode, filter: DatePickerFilter | undefined): PickerColumn[];
7
+ export declare function convertDateToStringArray(date: Date | undefined | null): string[];
8
+ export declare function convertStringArrayToDate(value: (string | null | undefined)[]): Date;
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.convertDateToStringArray = convertDateToStringArray;
7
+ exports.convertStringArrayToDate = convertStringArrayToDate;
8
+ exports.defaultRenderLabel = defaultRenderLabel;
9
+ exports.generateDatePickerColumns = generateDatePickerColumns;
10
+
11
+ var _dayjs = _interopRequireDefault(require("dayjs"));
12
+
13
+ var _isoWeek = _interopRequireDefault(require("dayjs/plugin/isoWeek"));
14
+
15
+ var _isoWeeksInYear = _interopRequireDefault(require("dayjs/plugin/isoWeeksInYear"));
16
+
17
+ var _isLeapYear = _interopRequireDefault(require("dayjs/plugin/isLeapYear"));
18
+
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
20
+
21
+ _dayjs["default"].extend(_isoWeek["default"]);
22
+
23
+ _dayjs["default"].extend(_isoWeeksInYear["default"]);
24
+
25
+ _dayjs["default"].extend(_isLeapYear["default"]);
26
+
27
+ var precisionRankRecord = {
28
+ year: 0,
29
+ week: 1,
30
+ 'week-day': 2
31
+ };
32
+
33
+ function defaultRenderLabel(type, data) {
34
+ return data.toString();
35
+ }
36
+
37
+ function generateDatePickerColumns(selected, min, max, precision, renderLabel, filter) {
38
+ var ret = [];
39
+ var minYear = min.getFullYear();
40
+ var maxYear = max.getFullYear();
41
+ var rank = precisionRankRecord[precision];
42
+
43
+ if (rank >= precisionRankRecord.year) {
44
+ var years = [];
45
+
46
+ for (var i = minYear; i <= maxYear; i++) {
47
+ var value = i.toString();
48
+ years.push({
49
+ label: renderLabel ? renderLabel('year', i) : value,
50
+ value: value
51
+ });
52
+ }
53
+
54
+ ret.push(years);
55
+ }
56
+
57
+ var selectedYear = parseInt(selected[0]);
58
+ var isInMinYear = selectedYear === minYear;
59
+ var isInMaxYear = selectedYear === maxYear;
60
+ var minDay = (0, _dayjs["default"])(min);
61
+ var maxDay = (0, _dayjs["default"])(max);
62
+ var minWeek = minDay.isoWeek();
63
+ var maxWeek = maxDay.isoWeek();
64
+ var minWeekday = minDay.isoWeekday();
65
+ var maxWeekday = maxDay.isoWeekday();
66
+ var selectedWeek = parseInt(selected[1]);
67
+ var isInMinWeek = isInMinYear && selectedWeek === minWeek;
68
+ var isInMaxWeek = isInMaxYear && selectedWeek === maxWeek;
69
+ var selectedYearWeeks = (0, _dayjs["default"])(selectedYear + "-01-01").isoWeeksInYear();
70
+
71
+ var generateColumn = function generateColumn(from, to, precision) {
72
+ var column = [];
73
+
74
+ for (var _i = from; _i <= to; _i++) {
75
+ column.push(_i);
76
+ }
77
+
78
+ var prefix = selected.slice(0, precisionRankRecord[precision]);
79
+ var currentFilter = filter === null || filter === void 0 ? void 0 : filter[precision];
80
+
81
+ if (currentFilter && typeof currentFilter === 'function') {
82
+ column = column.filter(function (i) {
83
+ return currentFilter(i, {
84
+ get date() {
85
+ var stringArray = [].concat(prefix, [i.toString()]);
86
+ return convertStringArrayToDate(stringArray);
87
+ }
88
+
89
+ });
90
+ });
91
+ }
92
+
93
+ return column;
94
+ };
95
+
96
+ if (rank >= precisionRankRecord.week) {
97
+ var lower = isInMinYear ? minWeek : 1;
98
+ var upper = isInMaxYear ? maxWeek : selectedYearWeeks;
99
+ var weeks = generateColumn(lower, upper, 'week');
100
+ ret.push(weeks.map(function (v) {
101
+ return {
102
+ label: renderLabel('week', v),
103
+ value: v.toString()
104
+ };
105
+ }));
106
+ }
107
+
108
+ if (rank >= precisionRankRecord['week-day']) {
109
+ var _lower = isInMinWeek ? minWeekday : 1;
110
+
111
+ var _upper = isInMaxWeek ? maxWeekday : 7;
112
+
113
+ var _weeks = generateColumn(_lower, _upper, 'week-day');
114
+
115
+ ret.push(_weeks.map(function (v) {
116
+ return {
117
+ label: renderLabel('week-day', v),
118
+ value: v.toString()
119
+ };
120
+ }));
121
+ }
122
+
123
+ return ret;
124
+ }
125
+
126
+ function convertDateToStringArray(date) {
127
+ if (!date) return [];
128
+ var day = (0, _dayjs["default"])(date);
129
+ return [day.isoWeekYear().toString(), day.isoWeek().toString(), day.isoWeekday().toString()];
130
+ }
131
+
132
+ function convertStringArrayToDate(value) {
133
+ var _a, _b, _c;
134
+
135
+ var yearString = (_a = value[0]) !== null && _a !== void 0 ? _a : '1900';
136
+ var weekString = (_b = value[1]) !== null && _b !== void 0 ? _b : '1';
137
+ var weekdayString = (_c = value[2]) !== null && _c !== void 0 ? _c : '1';
138
+ var day = (0, _dayjs["default"])().year(parseInt(yearString)).isoWeek(parseInt(weekString)).isoWeekday(parseInt(weekdayString)).hour(0).minute(0).second(0);
139
+ return day.toDate();
140
+ }