@cloudbase/weda-ui 3.5.3 → 3.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (849) hide show
  1. package/README.md +8 -0
  2. package/dist/configs/actions/showMessage.json +9 -5
  3. package/dist/configs/components/button.d.ts +1 -2
  4. package/dist/configs/components/button.js +1 -1
  5. package/dist/configs/components/calendar.d.ts +12 -1
  6. package/dist/configs/components/calendar.js +15 -1
  7. package/dist/configs/components/carousel.json +45 -4
  8. package/dist/configs/components/chart/bar.json +37 -1
  9. package/dist/configs/components/chart/line.d.ts +36 -0
  10. package/dist/configs/components/chart/line.js +36 -0
  11. package/dist/configs/components/chart/pie.json +37 -1
  12. package/dist/configs/components/chart/statisticsCard.json +37 -1
  13. package/dist/configs/components/common/init-name-with-id.d.ts +5 -0
  14. package/dist/configs/components/common/init-name-with-id.js +8 -0
  15. package/dist/configs/components/container.d.ts +12 -1
  16. package/dist/configs/components/container.js +18 -7
  17. package/dist/configs/components/customer-service.d.ts +13 -1
  18. package/dist/configs/components/customer-service.js +31 -7
  19. package/dist/configs/components/dataView.d.ts +6 -0
  20. package/dist/configs/components/dataView.js +14 -2
  21. package/dist/configs/components/echart.d.ts +17 -5
  22. package/dist/configs/components/echart.js +76 -19
  23. package/dist/configs/components/flow/flow.json +1 -1
  24. package/dist/configs/components/flow/flowbasic.json +1 -1
  25. package/dist/configs/components/flow/flowchart.json +1 -1
  26. package/dist/configs/components/flow/flowcontrol.json +1 -1
  27. package/dist/configs/components/flow/flowlayout.json +1 -1
  28. package/dist/configs/components/flow/flowprocess.json +1 -1
  29. package/dist/configs/components/form-checkbox.d.ts +0 -8
  30. package/dist/configs/components/form-checkbox.js +0 -10
  31. package/dist/configs/components/form-date.d.ts +2 -2
  32. package/dist/configs/components/form-depart-tree-select.d.ts +10 -17
  33. package/dist/configs/components/form-depart-tree-select.js +17 -20
  34. package/dist/configs/components/form-image-uploader.d.ts +16 -6
  35. package/dist/configs/components/form-image-uploader.js +17 -3
  36. package/dist/configs/components/form-location.d.ts +12 -4
  37. package/dist/configs/components/form-location.js +17 -2
  38. package/dist/configs/components/form-multi-region.d.ts +12 -4
  39. package/dist/configs/components/form-multi-region.js +17 -2
  40. package/dist/configs/components/form-region.d.ts +2 -2
  41. package/dist/configs/components/form-region.js +2 -2
  42. package/dist/configs/components/form-rich-text.d.ts +12 -5
  43. package/dist/configs/components/form-rich-text.js +16 -3
  44. package/dist/configs/components/form-select-multiple.d.ts +10 -2
  45. package/dist/configs/components/form-select-multiple.js +17 -2
  46. package/dist/configs/components/form-select.d.ts +22 -2
  47. package/dist/configs/components/form-select.js +26 -2
  48. package/dist/configs/components/form-text-area.d.ts +4 -4
  49. package/dist/configs/components/form-text-area.js +1 -1
  50. package/dist/configs/components/form-time.d.ts +10 -2
  51. package/dist/configs/components/form-time.js +16 -2
  52. package/dist/configs/components/form-upload-file.d.ts +10 -2
  53. package/dist/configs/components/form-upload-file.js +19 -6
  54. package/dist/configs/components/form-user-tree-select.d.ts +12 -2
  55. package/dist/configs/components/form-user-tree-select.js +17 -2
  56. package/dist/configs/components/graphicCard.json +43 -1
  57. package/dist/configs/components/grid/col.d.ts +5 -0
  58. package/dist/configs/components/grid/col.js +3 -0
  59. package/dist/configs/components/grid/grid.d.ts +14 -5
  60. package/dist/configs/components/grid/grid.js +317 -7
  61. package/dist/configs/components/grid/row.d.ts +1 -1
  62. package/dist/configs/components/image.d.ts +11 -0
  63. package/dist/configs/components/image.js +11 -0
  64. package/dist/configs/components/jsx.d.ts +155 -0
  65. package/dist/configs/components/jsx.js +203 -0
  66. package/dist/configs/components/link.d.ts +2 -1
  67. package/dist/configs/components/link.js +39 -0
  68. package/dist/configs/components/listView.d.ts +39 -6
  69. package/dist/configs/components/listView.js +424 -116
  70. package/dist/configs/components/lottery.d.ts +12 -0
  71. package/dist/configs/components/lottery.js +12 -0
  72. package/dist/configs/components/modal.d.ts +0 -1
  73. package/dist/configs/components/navLayout.json +55 -1
  74. package/dist/configs/components/navigationBar.json +1 -0
  75. package/dist/configs/components/pagelayout.json +1 -1
  76. package/dist/configs/components/qr_code.d.ts +17 -2
  77. package/dist/configs/components/qr_code.js +16 -1
  78. package/dist/configs/components/repeater-item.json +3 -0
  79. package/dist/configs/components/repeater.d.ts +1 -0
  80. package/dist/configs/components/repeater.js +1 -0
  81. package/dist/configs/components/richtextview.json +4 -5
  82. package/dist/configs/components/scrollVeiw.json +1 -0
  83. package/dist/configs/components/slot.json +31 -4
  84. package/dist/configs/components/swiper.json +3 -2
  85. package/dist/configs/components/table.json +1 -1
  86. package/dist/configs/components/tabs.d.ts +7 -4
  87. package/dist/configs/components/tabs.js +11 -3
  88. package/dist/configs/components/text.d.ts +1 -1
  89. package/dist/configs/components/text.js +1 -1
  90. package/dist/configs/components/wd-ad.d.ts +67 -0
  91. package/dist/configs/components/wd-ad.js +118 -0
  92. package/dist/configs/components/wd-audio.d.ts +186 -0
  93. package/dist/configs/components/wd-audio.js +445 -0
  94. package/dist/configs/components/wd-bubble.d.ts +15 -11
  95. package/dist/configs/components/wd-bubble.js +11 -1
  96. package/dist/configs/components/wd-button.d.ts +13 -1
  97. package/dist/configs/components/wd-button.js +24 -1
  98. package/dist/configs/components/wd-calendar.d.ts +99 -0
  99. package/dist/configs/components/wd-calendar.js +132 -0
  100. package/dist/configs/components/wd-canvas.d.ts +173 -0
  101. package/dist/configs/components/wd-canvas.js +351 -0
  102. package/dist/configs/components/wd-card.d.ts +48 -8
  103. package/dist/configs/components/wd-card.js +213 -24
  104. package/dist/configs/components/wd-checkbox.d.ts +59 -108
  105. package/dist/configs/components/wd-checkbox.js +141 -132
  106. package/dist/configs/components/wd-date-range.d.ts +81 -38
  107. package/dist/configs/components/wd-date-range.js +68 -32
  108. package/dist/configs/components/wd-date.d.ts +59 -23
  109. package/dist/configs/components/wd-date.js +36 -26
  110. package/dist/configs/components/wd-department.d.ts +263 -0
  111. package/dist/configs/components/wd-department.js +98 -0
  112. package/dist/configs/components/wd-divider.d.ts +16 -1
  113. package/dist/configs/components/wd-divider.js +16 -1
  114. package/dist/configs/components/wd-form-detail.d.ts +107 -21
  115. package/dist/configs/components/wd-form-detail.js +24 -132
  116. package/dist/configs/components/wd-form.d.ts +118 -58
  117. package/dist/configs/components/wd-form.js +379 -198
  118. package/dist/configs/components/wd-icon.d.ts +20 -1
  119. package/dist/configs/components/wd-icon.js +23 -1
  120. package/dist/configs/components/wd-image.d.ts +20 -1
  121. package/dist/configs/components/wd-image.js +24 -4
  122. package/dist/configs/components/wd-input-email.d.ts +86 -41
  123. package/dist/configs/components/wd-input-email.js +25 -3
  124. package/dist/configs/components/wd-input-number.d.ts +76 -25
  125. package/dist/configs/components/wd-input-number.js +52 -12
  126. package/dist/configs/components/wd-input-phone.d.ts +86 -41
  127. package/dist/configs/components/wd-input-phone.js +25 -3
  128. package/dist/configs/components/wd-input-url.d.ts +86 -41
  129. package/dist/configs/components/wd-input-url.js +25 -3
  130. package/dist/configs/components/wd-input.d.ts +96 -43
  131. package/dist/configs/components/wd-input.js +76 -4
  132. package/dist/configs/components/wd-layout.d.ts +14 -5
  133. package/dist/configs/components/wd-layout.js +85 -20
  134. package/dist/configs/components/wd-link.d.ts +5 -3
  135. package/dist/configs/components/wd-link.js +45 -4
  136. package/dist/configs/components/wd-location.d.ts +266 -17
  137. package/dist/configs/components/wd-location.js +113 -39
  138. package/dist/configs/components/wd-member.d.ts +267 -0
  139. package/dist/configs/components/wd-member.js +100 -0
  140. package/dist/configs/components/wd-menu-base-layout.d.ts +37 -0
  141. package/dist/configs/components/wd-menu-base-layout.js +50 -0
  142. package/dist/configs/components/wd-menu-horizontal-layout.d.ts +27 -0
  143. package/dist/configs/components/wd-menu-horizontal-layout.js +31 -0
  144. package/dist/configs/components/wd-menu-layout.d.ts +454 -0
  145. package/dist/configs/components/wd-menu-layout.js +301 -0
  146. package/dist/configs/components/wd-menu-list.d.ts +216 -0
  147. package/dist/configs/components/wd-menu-list.js +216 -0
  148. package/dist/configs/components/wd-menu-nav-layout.d.ts +27 -0
  149. package/dist/configs/components/wd-menu-nav-layout.js +31 -0
  150. package/dist/configs/components/wd-menu-plant-layout.d.ts +27 -0
  151. package/dist/configs/components/wd-menu-plant-layout.js +31 -0
  152. package/dist/configs/components/wd-menu-tab-layout.d.ts +27 -0
  153. package/dist/configs/components/wd-menu-tab-layout.js +31 -0
  154. package/dist/configs/components/wd-menu-vertical-layout.d.ts +27 -0
  155. package/dist/configs/components/wd-menu-vertical-layout.js +31 -0
  156. package/dist/configs/components/wd-modal.d.ts +35 -6
  157. package/dist/configs/components/wd-modal.js +406 -33
  158. package/dist/configs/components/wd-official-account.d.ts +4 -3
  159. package/dist/configs/components/wd-official-account.js +1 -0
  160. package/dist/configs/components/wd-progress.d.ts +194 -0
  161. package/dist/configs/components/wd-progress.js +238 -0
  162. package/dist/configs/components/wd-radio.d.ts +59 -104
  163. package/dist/configs/components/wd-radio.js +155 -131
  164. package/dist/configs/components/wd-rating.d.ts +267 -0
  165. package/dist/configs/components/wd-rating.js +383 -0
  166. package/dist/configs/components/wd-region.d.ts +237 -17
  167. package/dist/configs/components/wd-region.js +94 -24
  168. package/dist/configs/components/wd-rich-text.d.ts +221 -0
  169. package/dist/configs/components/wd-rich-text.js +163 -0
  170. package/dist/configs/components/wd-select-multiple.d.ts +286 -0
  171. package/dist/configs/components/wd-select-multiple.js +140 -0
  172. package/dist/configs/components/wd-select.d.ts +270 -18
  173. package/dist/configs/components/wd-select.js +120 -43
  174. package/dist/configs/components/wd-side-tab.d.ts +133 -0
  175. package/dist/configs/components/wd-side-tab.js +423 -0
  176. package/dist/configs/components/wd-switch.d.ts +66 -92
  177. package/dist/configs/components/wd-switch.js +82 -111
  178. package/dist/configs/components/wd-tabbar.d.ts +220 -0
  179. package/dist/configs/components/wd-tabbar.js +212 -0
  180. package/dist/configs/components/wd-table.d.ts +170 -44
  181. package/dist/configs/components/wd-table.js +594 -62
  182. package/dist/configs/components/wd-tag-select.d.ts +262 -0
  183. package/dist/configs/components/wd-tag-select.js +99 -0
  184. package/dist/configs/components/wd-tag.d.ts +158 -0
  185. package/dist/configs/components/wd-tag.js +89 -0
  186. package/dist/configs/components/wd-text.d.ts +21 -3
  187. package/dist/configs/components/wd-text.js +27 -1
  188. package/dist/configs/components/wd-textarea.d.ts +74 -21
  189. package/dist/configs/components/wd-textarea.js +36 -6
  190. package/dist/configs/components/wd-time.d.ts +69 -24
  191. package/dist/configs/components/wd-time.js +37 -31
  192. package/dist/configs/components/wd-top-tab.d.ts +133 -0
  193. package/dist/configs/components/wd-top-tab.js +423 -0
  194. package/dist/configs/components/wd-tree.d.ts +51 -3
  195. package/dist/configs/components/wd-tree.js +31 -12
  196. package/dist/configs/components/wd-unified-link.d.ts +57 -0
  197. package/dist/configs/components/wd-unified-link.js +113 -0
  198. package/dist/configs/components/wd-upload-file.d.ts +208 -21
  199. package/dist/configs/components/wd-upload-file.js +126 -24
  200. package/dist/configs/components/wd-upload-image.d.ts +217 -21
  201. package/dist/configs/components/wd-upload-image.js +185 -25
  202. package/dist/configs/components/web-view.d.ts +20 -5
  203. package/dist/configs/components/web-view.js +20 -5
  204. package/dist/configs/components/wedaVideo.d.ts +140 -11
  205. package/dist/configs/components/wedaVideo.js +284 -26
  206. package/dist/configs/components/wxOpenApi/phone.d.ts +12 -0
  207. package/dist/configs/components/wxOpenApi/phone.js +12 -0
  208. package/dist/configs/components/wxOpenApi/phoneCode.d.ts +13 -2
  209. package/dist/configs/components/wxOpenApi/phoneCode.js +13 -2
  210. package/dist/configs/components/wxOpenApi/share.d.ts +14 -0
  211. package/dist/configs/components/wxOpenApi/share.js +49 -0
  212. package/dist/configs/components/wxOpenApi/userInfo.d.ts +13 -2
  213. package/dist/configs/components/wxOpenApi/userInfo.js +13 -2
  214. package/dist/configs/index.d.ts +32705 -21114
  215. package/dist/configs/index.js +64 -29
  216. package/dist/configs/svg-tag.d.ts +1 -0
  217. package/dist/configs/svg-tag.js +19 -0
  218. package/dist/configs/type-utils/classes.d.ts +91 -0
  219. package/dist/configs/type-utils/classes.js +192 -0
  220. package/dist/configs/type-utils/index.d.ts +9 -28
  221. package/dist/configs/type-utils/index.js +9 -1
  222. package/dist/configs/type-utils/type-form.d.ts +288 -90
  223. package/dist/configs/type-utils/type-form.js +1202 -99
  224. package/dist/configs/type-utils/x-runtime-default.d.ts +87 -0
  225. package/dist/configs/type-utils/x-runtime-default.js +87 -0
  226. package/dist/configs/utils/layout.d.ts +9 -0
  227. package/dist/configs/utils/layout.js +807 -0
  228. package/dist/enum/index.d.ts +79 -0
  229. package/dist/enum/index.js +286 -6
  230. package/dist/iconConfig.json +6 -0
  231. package/dist/style/index.scss +1 -1
  232. package/dist/web/actions/showMessage/index.css +29 -0
  233. package/dist/web/actions/showModal/index.css +1 -0
  234. package/dist/web/components/calendar/index.css +20 -14
  235. package/dist/web/components/calendar/index.js +1 -1
  236. package/dist/web/components/carousel/index.d.ts +1 -0
  237. package/dist/web/components/carousel/index.js +6 -3
  238. package/dist/web/components/chart/common/chart-custom-connector.d.ts +0 -1
  239. package/dist/web/components/chart/common/data-transform.js +8 -0
  240. package/dist/web/components/common/portal.d.ts +6 -2
  241. package/dist/web/components/common/portal.js +10 -4
  242. package/dist/web/components/container/index.d.ts +5 -4
  243. package/dist/web/components/container/index.js +9 -2
  244. package/dist/web/components/echart/echart.js +9 -1
  245. package/dist/web/components/flow/common/hooks/useFlowConfig.d.ts +0 -1
  246. package/dist/web/components/flow/modules/basic/Basic.d.ts +0 -1
  247. package/dist/web/components/flow/modules/basic/BasicMobile.d.ts +0 -1
  248. package/dist/web/components/flow/modules/combination/index.d.ts +0 -1
  249. package/dist/web/components/flow/modules/operations/control.d.ts +0 -1
  250. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/{comment → comments-input}/index.d.ts +7 -2
  251. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/comments-input/index.js +82 -0
  252. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/comments-input/style.css +3 -0
  253. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/comments-input/utils.d.ts +29 -0
  254. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/comments-input/utils.js +106 -0
  255. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/drawer-form/index.d.ts +0 -1
  256. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/drawer-form/index.js +1 -1
  257. package/dist/web/components/flow/modules/operations/controls-items/flow-task-info-modal/view-model.d.ts +0 -1
  258. package/dist/web/components/flow/modules/operations/controls-items/flow-task-info-modal.d.ts +0 -1
  259. package/dist/web/components/flow/modules/operations/controls-items/index.d.ts +0 -1
  260. package/dist/web/components/flow/modules/operations/controls-items/roll-back-modal.js +11 -3
  261. package/dist/web/components/flow/modules/operations/style.css +3 -0
  262. package/dist/web/components/flow/modules/operations/view-model.d.ts +0 -1
  263. package/dist/web/components/flow/process/components/timeline/style.css +2 -2
  264. package/dist/web/components/form/enumSelect/NormalSelect.d.ts +0 -1
  265. package/dist/web/components/form/form/index.js +1 -1
  266. package/dist/web/components/form/location/common/mapChoose.css +7 -5
  267. package/dist/web/components/form/location/common/mapChoose.js +52 -14
  268. package/dist/web/components/form/location/common/selectModal.js +3 -2
  269. package/dist/web/components/form/location/common/useLocationInfo.d.ts +1 -1
  270. package/dist/web/components/form/location/common/useLocationInfo.js +9 -11
  271. package/dist/web/components/form/location/components/ChooseBtn/index.css +48 -0
  272. package/dist/web/components/form/location/components/ChooseBtn/index.d.ts +6 -0
  273. package/dist/web/components/form/location/components/ChooseBtn/index.js +17 -0
  274. package/dist/web/components/form/location/components/ChooseBtn/style.d.ts +1 -0
  275. package/dist/web/components/form/location/components/ChooseBtn/style.js +1 -0
  276. package/dist/web/components/form/location/components/LocationH5/index.css +8 -15
  277. package/dist/web/components/form/location/components/LocationH5/location.h5.js +26 -50
  278. package/dist/web/components/form/location/components/LocationPC/Header.d.ts +2 -1
  279. package/dist/web/components/form/location/components/LocationPC/Header.js +8 -7
  280. package/dist/web/components/form/location/components/LocationPC/index.css +25 -1
  281. package/dist/web/components/form/location/components/LocationPC/location.PC.js +20 -35
  282. package/dist/web/components/form/select/allTimePicker/calendar.css +2 -2
  283. package/dist/web/components/form/select/allTimePicker/index.css +3 -4
  284. package/dist/web/components/form/select/dropdown-select/h5.d.ts +2 -1
  285. package/dist/web/components/form/select/dropdown-select/h5.js +56 -45
  286. package/dist/web/components/form/select/dropdown-select/index.css +10 -8
  287. package/dist/web/components/form/select/dropdown-select/index.d.ts +3 -1
  288. package/dist/web/components/form/select/dropdown-select/index.js +17 -8
  289. package/dist/web/components/form/select/dropdown-select/pc.d.ts +2 -1
  290. package/dist/web/components/form/select/dropdown-select/pc.js +53 -46
  291. package/dist/web/components/form/select/dropdown-select/ui.d.ts +2 -0
  292. package/dist/web/components/form/select/dropdown-select/ui.js +27 -24
  293. package/dist/web/components/form/select/h5.d.ts +1 -1
  294. package/dist/web/components/form/select/h5.js +14 -43
  295. package/dist/web/components/form/select/index.css +26 -0
  296. package/dist/web/components/form/select/index.d.ts +4 -5
  297. package/dist/web/components/form/select/index.js +7 -9
  298. package/dist/web/components/form/select/request.js +1 -1
  299. package/dist/web/components/form/select/status/index.css +2 -2
  300. package/dist/web/components/form/selectMultiple/dropdown-select/h5.d.ts +2 -1
  301. package/dist/web/components/form/selectMultiple/dropdown-select/h5.js +51 -16
  302. package/dist/web/components/form/selectMultiple/dropdown-select/index.css +5 -5
  303. package/dist/web/components/form/selectMultiple/dropdown-select/index.d.ts +3 -1
  304. package/dist/web/components/form/selectMultiple/dropdown-select/index.js +14 -4
  305. package/dist/web/components/form/selectMultiple/dropdown-select/pc.d.ts +2 -1
  306. package/dist/web/components/form/selectMultiple/dropdown-select/pc.js +79 -64
  307. package/dist/web/components/form/selectMultiple/dropdown-select/ui.d.ts +3 -1
  308. package/dist/web/components/form/selectMultiple/dropdown-select/ui.js +63 -63
  309. package/dist/web/components/form/selectMultiple/h5.d.ts +1 -1
  310. package/dist/web/components/form/selectMultiple/h5.js +6 -23
  311. package/dist/web/components/form/selectMultiple/index.css +0 -7
  312. package/dist/web/components/form/selectMultiple/index.d.ts +4 -5
  313. package/dist/web/components/form/selectMultiple/index.js +8 -25
  314. package/dist/web/components/form/selectMultiple/request.js +1 -1
  315. package/dist/web/components/form/selectMultiple/status/index.css +2 -2
  316. package/dist/web/components/form/uploader/compress.d.ts +4 -0
  317. package/dist/web/components/form/uploader/compress.js +39 -0
  318. package/dist/web/components/form/uploader/index.css +19 -0
  319. package/dist/web/components/form/uploader/uploader.h5.d.ts +5 -2
  320. package/dist/web/components/form/uploader/uploader.h5.js +54 -7
  321. package/dist/web/components/form/uploader/uploader.pc.d.ts +4 -14
  322. package/dist/web/components/form/uploader/uploader.pc.js +87 -45
  323. package/dist/web/components/form/uploaderFile/index.css +18 -20
  324. package/dist/web/components/form/uploaderFile/uploadFile.h5.d.ts +3 -1
  325. package/dist/web/components/form/uploaderFile/uploadFile.h5.js +64 -24
  326. package/dist/web/components/form/uploaderFile/uploadFile.pc.d.ts +3 -1
  327. package/dist/web/components/form/uploaderFile/uploadFile.pc.js +86 -31
  328. package/dist/web/components/form/userOrgSelect/common/fetch-data-service.js +39 -32
  329. package/dist/web/components/form/userOrgSelect/common/types.d.ts +2 -0
  330. package/dist/web/components/form/userOrgSelect/component/depart-breadcrumb.d.ts +0 -1
  331. package/dist/web/components/form/userOrgSelect/component/depart-select/depart-select-pc.js +1 -2
  332. package/dist/web/components/form/userOrgSelect/component/depart-select/index.js +26 -18
  333. package/dist/web/components/form/userOrgSelect/component/depart-select/org-modal-pc.d.ts +0 -1
  334. package/dist/web/components/form/userOrgSelect/component/depart-select/org-modal-pc.js +6 -4
  335. package/dist/web/components/form/userOrgSelect/component/error-tips.d.ts +0 -1
  336. package/dist/web/components/form/userOrgSelect/component/index.css +8 -4
  337. package/dist/web/components/form/userOrgSelect/component/input-tags.d.ts +0 -1
  338. package/dist/web/components/form/userOrgSelect/component/input-tags.js +7 -3
  339. package/dist/web/components/form/userOrgSelect/component/modal-search-h5.d.ts +0 -1
  340. package/dist/web/components/form/userOrgSelect/component/modal-search.d.ts +0 -1
  341. package/dist/web/components/form/userOrgSelect/component/modal-select-h5.d.ts +0 -1
  342. package/dist/web/components/form/userOrgSelect/component/modal-select-h5.js +1 -1
  343. package/dist/web/components/form/userOrgSelect/component/org-tree-h5.d.ts +0 -1
  344. package/dist/web/components/form/userOrgSelect/component/org-tree.d.ts +0 -1
  345. package/dist/web/components/form/userOrgSelect/component/selected-list-h5.d.ts +0 -1
  346. package/dist/web/components/form/userOrgSelect/component/selected-list-h5.js +4 -4
  347. package/dist/web/components/form/userOrgSelect/component/selected-list.d.ts +0 -1
  348. package/dist/web/components/form/userOrgSelect/component/user-org-list.d.ts +0 -1
  349. package/dist/web/components/form/userOrgSelect/component/user-select-h5/index.js +18 -12
  350. package/dist/web/components/form/userOrgSelect/component/user-select-h5/style.d.ts +1 -0
  351. package/dist/web/components/form/userOrgSelect/component/user-select-h5/style.js +1 -0
  352. package/dist/web/components/form/userOrgSelect/component/user-select-h5/user-list-h5.d.ts +0 -1
  353. package/dist/web/components/form/userOrgSelect/component/user-select-h5/user-select-h5.d.ts +1 -1
  354. package/dist/web/components/form/userOrgSelect/component/user-select-h5/user-select-h5.js +3 -3
  355. package/dist/web/components/form/userOrgSelect/component/user-select-pc/error-tips.d.ts +0 -1
  356. package/dist/web/components/form/userOrgSelect/component/user-select-pc/model-user-list.d.ts +0 -1
  357. package/dist/web/components/form/userOrgSelect/component/user-select-pc/org-tree.d.ts +0 -1
  358. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-model.d.ts +0 -1
  359. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-model.js +4 -4
  360. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-select-pc.d.ts +1 -1
  361. package/dist/web/components/form/userOrgSelect/component/user-select-pc/user-select-pc.js +5 -3
  362. package/dist/web/components/form/userOrgSelect/component/userOrgSelect.css +32 -5
  363. package/dist/web/components/form/userOrgSelect/departTreeSelect/departTreeSelect.h5.js +9 -8
  364. package/dist/web/components/form-date/index.d.ts +2 -2
  365. package/dist/web/components/form-depart-tree-select/index.d.ts +3 -3
  366. package/dist/web/components/form-email/index.d.ts +1 -1
  367. package/dist/web/components/form-image-uploader/index.d.ts +4 -4
  368. package/dist/web/components/form-input/index.d.ts +3 -3
  369. package/dist/web/components/form-input-hooks/index.d.ts +6 -1
  370. package/dist/web/components/form-input-hooks/index.js +56 -41
  371. package/dist/web/components/form-location/index.d.ts +7 -7
  372. package/dist/web/components/form-multi-region/index.d.ts +2 -2
  373. package/dist/web/components/form-phone/index.d.ts +1 -1
  374. package/dist/web/components/form-radio/index.d.ts +3 -3
  375. package/dist/web/components/form-region/index.d.ts +1 -1
  376. package/dist/web/components/form-rich-text/index.d.ts +3 -3
  377. package/dist/web/components/form-select/index.d.ts +11 -5
  378. package/dist/web/components/form-select/index.js +13 -2
  379. package/dist/web/components/form-select-multiple/index.d.ts +4 -4
  380. package/dist/web/components/form-switch/index.d.ts +1 -1
  381. package/dist/web/components/form-text-area/index.d.ts +1 -1
  382. package/dist/web/components/form-time/index.d.ts +1 -1
  383. package/dist/web/components/form-upload-file/index.d.ts +3 -3
  384. package/dist/web/components/form-url/index.d.ts +1 -1
  385. package/dist/web/components/form-user-tree-select/index.d.ts +5 -5
  386. package/dist/web/components/formdetail/index.css +72 -28
  387. package/dist/web/components/formdetail/index.d.ts +10 -2
  388. package/dist/web/components/formdetail/index.js +162 -65
  389. package/dist/web/components/graphicCard/index.css +2 -1
  390. package/dist/web/components/graphicCard/index.d.ts +1 -0
  391. package/dist/web/components/graphicCard/index.js +5 -8
  392. package/dist/web/components/grid/grid.css +213 -110
  393. package/dist/web/components/grid/grid.d.ts +4 -0
  394. package/dist/web/components/grid/grid.js +2 -1
  395. package/dist/web/components/index.d.ts +31 -0
  396. package/dist/web/components/index.js +37 -9
  397. package/dist/web/components/jsx/index.d.ts +11 -0
  398. package/dist/web/components/jsx/index.js +36 -0
  399. package/dist/web/components/listView/index.css +37 -33
  400. package/dist/web/components/listView/index.js +175 -154
  401. package/dist/web/components/listView/interface.d.ts +8 -0
  402. package/dist/web/components/lottery/index.css +6 -4
  403. package/dist/web/components/lottery/index.js +2 -20
  404. package/dist/web/components/modal/modal.h5.js +2 -1
  405. package/dist/web/components/modal/modal.pc.js +2 -1
  406. package/dist/web/components/navLayout/index.d.ts +1 -0
  407. package/dist/web/components/navLayout/index.js +13 -2
  408. package/dist/web/components/navigationBar/common.js +9 -4
  409. package/dist/web/components/navigationBar/h5Menu.js +1 -1
  410. package/dist/web/components/navigationBar/horizontalMenu.js +2 -2
  411. package/dist/web/components/navigationBar/index.js +3 -2
  412. package/dist/web/components/navigationBar/verticalMenu.js +1 -1
  413. package/dist/web/components/pageLayout/PageContent/index.d.ts +0 -1
  414. package/dist/web/components/phone/index.d.ts +0 -1
  415. package/dist/web/components/phoneCode/index.d.ts +0 -1
  416. package/dist/web/components/richText/index.css +2 -2
  417. package/dist/web/components/richText/index.d.ts +1 -1
  418. package/dist/web/components/richText/index.js +17 -6
  419. package/dist/web/components/richTextView/index.css +3 -0
  420. package/dist/web/components/richTextView/index.js +1 -2
  421. package/dist/web/components/share/index.d.ts +0 -1
  422. package/dist/web/components/slot/index.d.ts +3 -1
  423. package/dist/web/components/slot/index.js +14 -3
  424. package/dist/web/components/statusContent/index.css +9 -5
  425. package/dist/web/components/statusContent/index.js +7 -3
  426. package/dist/web/components/swiper/index.css +3 -1
  427. package/dist/web/components/swiper/index.js +47 -29
  428. package/dist/web/components/table/BaseTable.d.ts +0 -1
  429. package/dist/web/components/table/BaseTable.js +7 -1
  430. package/dist/web/components/table/ExportFileModalByApi/index.js +10 -11
  431. package/dist/web/components/table/FieldRender.d.ts +0 -1
  432. package/dist/web/components/table/FieldRender.js +2 -2
  433. package/dist/web/components/table/FilterFields.d.ts +0 -1
  434. package/dist/web/components/table/Form/Enum.d.ts +0 -1
  435. package/dist/web/components/table/Form/Location.d.ts +0 -1
  436. package/dist/web/components/table/ImportFileModal/index.css +1 -1
  437. package/dist/web/components/table/ImportFileModal/index.js +12 -15
  438. package/dist/web/components/table/ImportFileModalByApi/index.js +17 -18
  439. package/dist/web/components/table/ImportFileModalByApi/uploadCSVFile.js +2 -2
  440. package/dist/web/components/table/InOrOutRecordModeal.js +15 -10
  441. package/dist/web/components/table/QuoteModal.d.ts +0 -1
  442. package/dist/web/components/table/UserDepartment/ViewCell.d.ts +0 -1
  443. package/dist/web/components/table/UserDepartment/utils.d.ts +0 -1
  444. package/dist/web/components/table/baseTable.css +1 -1
  445. package/dist/web/components/table/index.css +2 -2
  446. package/dist/web/components/table/index.js +2 -2
  447. package/dist/web/components/tabs/index.css +2 -2
  448. package/dist/web/components/uploaderFileView/index.js +1 -1
  449. package/dist/web/components/userInfo/index.d.ts +0 -1
  450. package/dist/web/components/wd-ad/ad-view.d.ts +7 -0
  451. package/dist/web/components/wd-ad/ad-view.js +40 -0
  452. package/dist/web/components/wd-ad/index.d.ts +3 -0
  453. package/dist/web/components/wd-ad/index.js +2 -0
  454. package/dist/web/components/wd-ad/style/view.css +147 -0
  455. package/dist/web/components/wd-ad/style/view.d.ts +1 -0
  456. package/dist/web/components/wd-ad/style/view.js +1 -0
  457. package/dist/web/components/wd-ad/wd-ad.d.ts +9 -0
  458. package/dist/web/components/wd-ad/wd-ad.js +21 -0
  459. package/dist/web/components/wd-audio/index.d.ts +3 -0
  460. package/dist/web/components/wd-audio/index.js +3 -0
  461. package/dist/web/components/wd-audio/wd-audio.d.ts +6 -0
  462. package/dist/web/components/wd-audio/wd-audio.js +207 -0
  463. package/dist/web/components/wd-calendar/MonthSelect.d.ts +9 -0
  464. package/dist/web/components/wd-calendar/MonthSelect.js +59 -0
  465. package/dist/web/components/wd-calendar/index.d.ts +3 -0
  466. package/dist/web/components/wd-calendar/index.js +3 -0
  467. package/dist/web/components/wd-calendar/style.d.ts +1 -0
  468. package/dist/web/components/wd-calendar/style.js +1 -0
  469. package/dist/web/components/wd-calendar/wd-calendar.d.ts +10 -0
  470. package/dist/web/components/wd-calendar/wd-calendar.js +88 -0
  471. package/dist/web/components/wd-calendar/weeks.d.ts +23 -0
  472. package/dist/web/components/wd-calendar/weeks.js +34 -0
  473. package/dist/web/components/wd-canvas/index.d.ts +3 -0
  474. package/dist/web/components/wd-canvas/index.js +3 -0
  475. package/dist/web/components/wd-canvas/wd-canvas.d.ts +6 -0
  476. package/dist/web/components/wd-canvas/wd-canvas.js +318 -0
  477. package/dist/web/components/wd-card/wd-card.js +35 -4
  478. package/dist/web/components/wd-checkbox/checkbox.js +2 -0
  479. package/dist/web/components/wd-checkbox-list/checkboxList.js +59 -53
  480. package/dist/web/components/wd-config-provider/wd-config-context.js +2 -2
  481. package/dist/web/components/wd-date/elements/Calendar.h5.d.ts +4 -2
  482. package/dist/web/components/wd-date/elements/Calendar.h5.js +14 -6
  483. package/dist/web/components/wd-date/elements/DatePicker.h5.js +16 -7
  484. package/dist/web/components/wd-date/elements/YearPicker.pc.d.ts +11 -3
  485. package/dist/web/components/wd-date/elements/YearPicker.pc.js +53 -44
  486. package/dist/web/components/wd-date/elements/YearRangePicker.pc.d.ts +6 -0
  487. package/dist/web/components/wd-date/elements/YearRangePicker.pc.js +54 -0
  488. package/dist/web/components/wd-date/elements/interface.d.ts +10 -3
  489. package/dist/web/components/wd-date/pc.js +5 -4
  490. package/dist/web/components/wd-date/wd-date.d.ts +1 -0
  491. package/dist/web/components/wd-date/wd-date.js +19 -11
  492. package/dist/web/components/wd-date-range/h5.d.ts +7 -2
  493. package/dist/web/components/wd-date-range/h5.js +65 -7
  494. package/dist/web/components/wd-date-range/index.d.ts +2 -1
  495. package/dist/web/components/wd-date-range/index.js +1 -1
  496. package/dist/web/components/wd-date-range/interface.d.ts +9 -0
  497. package/dist/web/components/wd-date-range/pc.d.ts +3 -3
  498. package/dist/web/components/wd-date-range/pc.js +36 -19
  499. package/dist/web/components/wd-date-range/wd-date-range.d.ts +3 -6
  500. package/dist/web/components/wd-date-range/wd-date-range.js +44 -73
  501. package/dist/web/components/{wd-department-select → wd-department/_design}/h5.js +5 -5
  502. package/dist/web/components/{wd-department-select → wd-department/_design}/wd-department-select.d.ts +1 -2
  503. package/dist/web/components/{wd-department-select → wd-department/_design}/wd-department-select.js +5 -5
  504. package/dist/web/components/wd-department/index.d.ts +3 -0
  505. package/dist/web/components/wd-department/index.js +3 -0
  506. package/dist/web/components/wd-department/style.d.ts +1 -0
  507. package/dist/web/components/wd-department/style.js +1 -0
  508. package/dist/web/components/wd-department/wd-department.css +35 -0
  509. package/dist/web/components/wd-department/wd-department.d.ts +8 -0
  510. package/dist/web/components/wd-department/wd-department.js +39 -0
  511. package/dist/web/components/wd-form/contexts/form-layout-context.d.ts +9 -0
  512. package/dist/web/components/wd-form/contexts/form-layout-context.js +10 -0
  513. package/dist/web/components/wd-form/contexts/form-type-context.d.ts +9 -0
  514. package/dist/web/components/wd-form/contexts/form-type-context.js +10 -0
  515. package/dist/web/components/wd-form/contexts/form-widget-context.d.ts +9 -0
  516. package/dist/web/components/wd-form/contexts/form-widget-context.js +10 -0
  517. package/dist/web/components/wd-form/form-utils.d.ts +1 -1
  518. package/dist/web/components/wd-form/form-utils.js +15 -11
  519. package/dist/web/components/wd-form/hooks/use-remote-value.d.ts +3 -3
  520. package/dist/web/components/wd-form/hooks/use-remote-value.js +26 -8
  521. package/dist/web/components/wd-form/index.d.ts +6 -1
  522. package/dist/web/components/wd-form/index.js +279 -215
  523. package/dist/web/components/wd-form/wd-form.css +5 -2
  524. package/dist/web/components/wd-form/wd-form.d.ts +4 -5
  525. package/dist/web/components/wd-form/wd-form.js +10 -2
  526. package/dist/web/components/wd-form-cell/wd-form-cell.d.ts +0 -1
  527. package/dist/web/components/wd-form-item/index.d.ts +2 -1
  528. package/dist/web/components/wd-form-item/index.js +2 -1
  529. package/dist/web/components/wd-form-item/wd-form-item-read-only.d.ts +14 -0
  530. package/dist/web/components/wd-form-item/wd-form-item-read-only.js +20 -0
  531. package/dist/web/components/wd-form-item/wd-form-item.js +25 -16
  532. package/dist/web/components/wd-form-item/wd-input-group.d.ts +0 -1
  533. package/dist/web/components/wd-form-item/wd-input-group.js +4 -5
  534. package/dist/web/components/wd-form-item/wd-input-wrap.d.ts +0 -1
  535. package/dist/web/components/wd-form-item/wd-input-wrap.js +9 -8
  536. package/dist/web/components/wd-icon/useLoadCss.d.ts +1 -0
  537. package/dist/web/components/wd-icon/useLoadCss.js +32 -0
  538. package/dist/web/components/wd-icon/wd-icon.js +11 -12
  539. package/dist/web/components/wd-image/image.js +34 -36
  540. package/dist/web/components/wd-image/index.js +18 -3
  541. package/dist/web/components/wd-input/wd-input.d.ts +31 -28
  542. package/dist/web/components/wd-input/wd-input.js +34 -20
  543. package/dist/web/components/wd-input-email/wd-input-email.d.ts +29 -26
  544. package/dist/web/components/wd-input-group/wd-input-group.d.ts +0 -1
  545. package/dist/web/components/wd-input-number/wd-input-number.js +86 -27
  546. package/dist/web/components/wd-input-phone/wd-input-phone.d.ts +31 -28
  547. package/dist/web/components/wd-input-url/wd-input-url.d.ts +29 -26
  548. package/dist/web/components/wd-layout/index.css +3 -0
  549. package/dist/web/components/wd-layout/style.d.ts +1 -0
  550. package/dist/web/components/wd-layout/style.js +1 -0
  551. package/dist/web/components/wd-layout/wd-layout.d.ts +2 -2
  552. package/dist/web/components/wd-layout/wd-layout.js +3 -2
  553. package/dist/web/components/wd-link/wd-link.js +3 -3
  554. package/dist/web/components/wd-location/_design/wd-location.d.ts +7 -0
  555. package/dist/web/components/wd-location/_design/wd-location.js +81 -0
  556. package/dist/web/components/wd-location/style.d.ts +1 -0
  557. package/dist/web/components/wd-location/style.js +1 -0
  558. package/dist/web/components/wd-location/wd-location.css +57 -0
  559. package/dist/web/components/wd-location/wd-location.d.ts +11 -6
  560. package/dist/web/components/wd-location/wd-location.js +48 -81
  561. package/dist/web/components/{wd-member-select → wd-member/_design}/h5.js +5 -5
  562. package/dist/web/components/wd-member/_design/wd-member-select.d.ts +7 -0
  563. package/dist/web/components/{wd-member-select → wd-member/_design}/wd-member-select.js +7 -7
  564. package/dist/web/components/wd-member/index.d.ts +3 -0
  565. package/dist/web/components/wd-member/index.js +3 -0
  566. package/dist/web/components/wd-member/style.d.ts +1 -0
  567. package/dist/web/components/wd-member/style.js +1 -0
  568. package/dist/web/components/wd-member/wd-member.css +31 -0
  569. package/dist/web/components/wd-member/wd-member.d.ts +8 -0
  570. package/dist/web/components/wd-member/wd-member.js +39 -0
  571. package/dist/web/components/wd-menu-base-layout/index.d.ts +6 -0
  572. package/dist/web/components/wd-menu-base-layout/index.js +5 -0
  573. package/dist/web/components/wd-menu-horizontal-layout/index.d.ts +6 -0
  574. package/dist/web/components/wd-menu-horizontal-layout/index.js +5 -0
  575. package/dist/web/components/wd-menu-layout/components/H5Menu.d.ts +3 -0
  576. package/dist/web/components/wd-menu-layout/components/H5Menu.js +18 -0
  577. package/dist/web/components/wd-menu-layout/components/HorizontalMenu.d.ts +3 -0
  578. package/dist/web/components/wd-menu-layout/components/HorizontalMenu.js +9 -0
  579. package/dist/web/components/wd-menu-layout/components/NavMenu.d.ts +3 -0
  580. package/dist/web/components/wd-menu-layout/components/NavMenu.js +7 -0
  581. package/dist/web/components/wd-menu-layout/components/PlantMenu.d.ts +3 -0
  582. package/dist/web/components/wd-menu-layout/components/PlantMenu.js +9 -0
  583. package/dist/web/components/wd-menu-layout/components/TabMenu.d.ts +3 -0
  584. package/dist/web/components/wd-menu-layout/components/TabMenu.js +7 -0
  585. package/dist/web/components/wd-menu-layout/components/VerticalMenu.d.ts +3 -0
  586. package/dist/web/components/wd-menu-layout/components/VerticalMenu.js +9 -0
  587. package/dist/web/components/wd-menu-layout/index.d.ts +3 -0
  588. package/dist/web/components/wd-menu-layout/index.js +3 -0
  589. package/dist/web/components/wd-menu-layout/utils/index.d.ts +6 -0
  590. package/dist/web/components/wd-menu-layout/utils/index.js +13 -0
  591. package/dist/web/components/wd-menu-layout/wd-menu-layout.d.ts +8 -0
  592. package/dist/web/components/wd-menu-layout/wd-menu-layout.js +21 -0
  593. package/dist/web/components/wd-menu-list/CommonMenuList.d.ts +3 -0
  594. package/dist/web/components/wd-menu-list/CommonMenuList.js +128 -0
  595. package/dist/web/components/wd-menu-list/HorizontalMenuList.d.ts +3 -0
  596. package/dist/web/components/wd-menu-list/HorizontalMenuList.js +152 -0
  597. package/dist/web/components/wd-menu-list/index.d.ts +3 -0
  598. package/dist/web/components/wd-menu-list/index.js +3 -0
  599. package/dist/web/components/wd-menu-list/utils/index.d.ts +12 -0
  600. package/dist/web/components/wd-menu-list/utils/index.js +109 -0
  601. package/dist/web/components/wd-menu-list/wd-menu-list.d.ts +7 -0
  602. package/dist/web/components/wd-menu-list/wd-menu-list.js +13 -0
  603. package/dist/web/components/wd-menu-nav-layout/index.d.ts +6 -0
  604. package/dist/web/components/wd-menu-nav-layout/index.js +5 -0
  605. package/dist/web/components/wd-menu-plant-layout/index.d.ts +6 -0
  606. package/dist/web/components/wd-menu-plant-layout/index.js +5 -0
  607. package/dist/web/components/wd-menu-tab-layout/index.d.ts +6 -0
  608. package/dist/web/components/wd-menu-tab-layout/index.js +5 -0
  609. package/dist/web/components/wd-menu-vertical-layout/index.d.ts +6 -0
  610. package/dist/web/components/wd-menu-vertical-layout/index.js +5 -0
  611. package/dist/web/components/wd-modal/wd-modal.js +35 -17
  612. package/dist/web/components/wd-progress/index.d.ts +3 -0
  613. package/dist/web/components/wd-progress/index.js +3 -0
  614. package/dist/web/components/wd-progress/util.d.ts +16 -0
  615. package/dist/web/components/wd-progress/util.js +42 -0
  616. package/dist/web/components/wd-progress/wd-progress.d.ts +7 -0
  617. package/dist/web/components/wd-progress/wd-progress.js +127 -0
  618. package/dist/web/components/wd-radio/wd-radio.d.ts +0 -1
  619. package/dist/web/components/wd-radio/wd-radio.js +1 -1
  620. package/dist/web/components/wd-radio-list/wd-radio-list.js +36 -25
  621. package/dist/web/components/wd-rating/index.d.ts +3 -0
  622. package/dist/web/components/wd-rating/index.js +3 -0
  623. package/dist/web/components/wd-rating/wd-rating.d.ts +6 -0
  624. package/dist/web/components/wd-rating/wd-rating.js +252 -0
  625. package/dist/web/components/{wd-region-select → wd-region/_design}/h5.js +3 -3
  626. package/dist/web/components/{wd-region-select → wd-region/_design}/wd-region.d.ts +1 -2
  627. package/dist/web/components/{wd-region-select → wd-region/_design}/wd-region.js +5 -5
  628. package/dist/web/components/{wd-region-select → wd-region}/index.d.ts +1 -1
  629. package/dist/web/components/wd-region/style.d.ts +1 -0
  630. package/dist/web/components/wd-region/style.js +1 -0
  631. package/dist/web/components/wd-region/wd-region.css +59 -0
  632. package/dist/web/components/wd-region/wd-region.d.ts +11 -0
  633. package/dist/web/components/wd-region/wd-region.js +50 -0
  634. package/dist/web/components/wd-retry/wd-retry.d.ts +0 -1
  635. package/dist/web/components/wd-rich-text/index.d.ts +3 -0
  636. package/dist/web/components/wd-rich-text/index.js +3 -0
  637. package/dist/web/components/wd-rich-text/style.d.ts +1 -0
  638. package/dist/web/components/wd-rich-text/style.js +1 -0
  639. package/dist/web/components/wd-rich-text/wd-rich-text.css +23 -0
  640. package/dist/web/components/wd-rich-text/wd-rich-text.d.ts +13 -0
  641. package/dist/web/components/wd-rich-text/wd-rich-text.js +26 -0
  642. package/dist/web/components/wd-select/{h5.js → _design/h5.js} +3 -3
  643. package/dist/web/components/wd-select/_design/wd-select.d.ts +11 -0
  644. package/dist/web/components/wd-select/_design/wd-select.js +87 -0
  645. package/dist/web/components/wd-select/style.d.ts +1 -0
  646. package/dist/web/components/wd-select/style.js +1 -0
  647. package/dist/web/components/wd-select/wd-select.css +59 -0
  648. package/dist/web/components/wd-select/wd-select.d.ts +13 -10
  649. package/dist/web/components/wd-select/wd-select.js +83 -87
  650. package/dist/web/components/wd-select-multiple/index.d.ts +3 -0
  651. package/dist/web/components/wd-select-multiple/index.js +3 -0
  652. package/dist/web/components/wd-select-multiple/style.d.ts +1 -0
  653. package/dist/web/components/wd-select-multiple/style.js +1 -0
  654. package/dist/web/components/wd-select-multiple/wd-select-multiple.css +77 -0
  655. package/dist/web/components/wd-select-multiple/wd-select-multiple.d.ts +15 -0
  656. package/dist/web/components/wd-select-multiple/wd-select-multiple.js +78 -0
  657. package/dist/web/components/wd-side-tab/index.d.ts +3 -0
  658. package/dist/web/components/wd-side-tab/index.js +3 -0
  659. package/dist/web/components/wd-side-tab/wd-side-tab.d.ts +6 -0
  660. package/dist/web/components/wd-side-tab/wd-side-tab.js +42 -0
  661. package/dist/web/components/wd-switch/wd-switch.js +6 -4
  662. package/dist/web/components/wd-tabbar/index.d.ts +3 -0
  663. package/dist/web/components/wd-tabbar/index.js +3 -0
  664. package/dist/web/components/wd-tabbar/wd-tabbar.d.ts +7 -0
  665. package/dist/web/components/wd-tabbar/wd-tabbar.js +84 -0
  666. package/dist/web/components/wd-table/components/ExportFileModalByApi/index.d.ts +0 -1
  667. package/dist/web/components/wd-table/components/FieldRender/Form/Enum.d.ts +0 -1
  668. package/dist/web/components/wd-table/components/FieldRender/Form/Location.d.ts +0 -1
  669. package/dist/web/components/wd-table/components/FieldRender/ImagePreview.d.ts +0 -1
  670. package/dist/web/components/wd-table/components/FieldRender/QuoteModal.d.ts +0 -1
  671. package/dist/web/components/wd-table/components/FieldRender/UserDepartment/ViewCell.d.ts +0 -1
  672. package/dist/web/components/wd-table/components/FieldRender/UserDepartment/utils.d.ts +0 -1
  673. package/dist/web/components/wd-table/components/FieldRender/VideoPreview.d.ts +7 -0
  674. package/dist/web/components/wd-table/components/FieldRender/VideoPreview.js +67 -0
  675. package/dist/web/components/wd-table/components/FieldRender/index.d.ts +4 -3
  676. package/dist/web/components/wd-table/components/FieldRender/index.js +104 -39
  677. package/dist/web/components/wd-table/components/FilterFieldsPanel/Fields.d.ts +0 -1
  678. package/dist/web/components/wd-table/components/FilterFieldsPanel/FilterFieldItem.d.ts +0 -1
  679. package/dist/web/components/wd-table/components/FilterFieldsPanel/FilterFieldItem.js +17 -16
  680. package/dist/web/components/wd-table/components/FilterFieldsPanel/InputAdornment.d.ts +0 -1
  681. package/dist/web/components/wd-table/components/FilterFieldsPanel/SelectSearch.d.ts +0 -1
  682. package/dist/web/components/wd-table/components/FilterFieldsPanel/SelectSearch.js +1 -0
  683. package/dist/web/components/wd-table/components/FilterFieldsPanel/filterFieldsGenerate.d.ts +1 -1
  684. package/dist/web/components/wd-table/components/FilterFieldsPanel/filterFieldsGenerate.js +23 -3
  685. package/dist/web/components/wd-table/components/FilterFieldsPanel/index.d.ts +2 -7
  686. package/dist/web/components/wd-table/components/FilterFieldsPanel/index.js +51 -23
  687. package/dist/web/components/wd-table/components/ImportFileModalByApi/index.d.ts +2 -2
  688. package/dist/web/components/wd-table/components/ImportFileModalByApi/index.js +21 -5
  689. package/dist/web/components/wd-table/components/InOrOutRecordModal.d.ts +0 -1
  690. package/dist/web/components/wd-table/components/ModalTable/index.js +13 -2
  691. package/dist/web/components/wd-table/components/Pagination/index.d.ts +0 -1
  692. package/dist/web/components/wd-table/components/Pagination/index.js +1 -1
  693. package/dist/web/components/wd-table/components/SearchBox/index.d.ts +0 -1
  694. package/dist/web/components/wd-table/components/SearchBox/index.js +3 -2
  695. package/dist/web/components/wd-table/components/Table/index.d.ts +4 -2
  696. package/dist/web/components/wd-table/components/Table/index.js +15 -5
  697. package/dist/web/components/wd-table/hooks/useAuthFields.d.ts +11 -1
  698. package/dist/web/components/wd-table/hooks/useAuthFields.js +3 -3
  699. package/dist/web/components/wd-table/hooks/useChooseList.d.ts +3 -2
  700. package/dist/web/components/wd-table/hooks/useChooseList.js +19 -8
  701. package/dist/web/components/wd-table/hooks/useQueryParams.d.ts +4 -1
  702. package/dist/web/components/wd-table/hooks/useQueryParams.js +11 -1
  703. package/dist/web/components/wd-table/hooks/useTableData.js +6 -6
  704. package/dist/web/components/wd-table/utils/index.d.ts +6 -12
  705. package/dist/web/components/wd-table/utils/index.js +89 -41
  706. package/dist/web/components/wd-table/utils/style.d.ts +1 -0
  707. package/dist/web/components/wd-table/utils/style.js +1 -0
  708. package/dist/web/components/wd-table/utils/tableTheme.css +117 -0
  709. package/dist/web/components/wd-table/wd-table.d.ts +3 -1
  710. package/dist/web/components/wd-table/wd-table.js +91 -22
  711. package/dist/web/components/wd-tabs/index.d.ts +3 -0
  712. package/dist/web/components/wd-tabs/index.js +3 -0
  713. package/dist/web/components/wd-tabs/tabs-h5.d.ts +2 -0
  714. package/dist/web/components/wd-tabs/tabs-h5.js +102 -0
  715. package/dist/web/components/wd-tabs/tabs-pc.d.ts +2 -0
  716. package/dist/web/components/wd-tabs/tabs-pc.js +121 -0
  717. package/dist/web/components/wd-tabs/tabs.d.ts +13 -0
  718. package/dist/web/components/wd-tabs/tabs.js +23 -0
  719. package/dist/web/components/wd-tag/_design.d.ts +5 -0
  720. package/dist/web/components/wd-tag/_design.js +11 -0
  721. package/dist/web/components/wd-tag/index.d.ts +6 -0
  722. package/dist/web/components/wd-tag/index.js +4 -0
  723. package/dist/web/components/wd-tag/tag-item.d.ts +21 -0
  724. package/dist/web/components/wd-tag/tag-item.js +79 -0
  725. package/dist/web/components/wd-tag/wd-tag-select.d.ts +10 -0
  726. package/dist/web/components/wd-tag/wd-tag-select.js +74 -0
  727. package/dist/web/components/wd-tag/wd-tag.d.ts +16 -0
  728. package/dist/web/components/wd-tag/wd-tag.js +109 -0
  729. package/dist/web/components/wd-text/wd-text.d.ts +1 -1
  730. package/dist/web/components/wd-text/wd-text.js +9 -1
  731. package/dist/web/components/wd-textarea/wd-textarea.js +39 -10
  732. package/dist/web/components/wd-time/h5.js +3 -4
  733. package/dist/web/components/wd-time/wd-time.d.ts +1 -0
  734. package/dist/web/components/wd-time/wd-time.js +13 -11
  735. package/dist/web/components/wd-top-tab/index.d.ts +3 -0
  736. package/dist/web/components/wd-top-tab/index.js +3 -0
  737. package/dist/web/components/wd-top-tab/wd-top-tab.d.ts +6 -0
  738. package/dist/web/components/wd-top-tab/wd-top-tab.js +42 -0
  739. package/dist/web/components/wd-tree/wd-tree.js +13 -5
  740. package/dist/web/components/wd-unified-link/index.d.ts +8 -0
  741. package/dist/web/components/wd-unified-link/index.js +91 -0
  742. package/dist/web/components/wd-upload-file/_design/wd-upload-file.d.ts +7 -0
  743. package/dist/web/components/wd-upload-file/_design/wd-upload-file.js +24 -0
  744. package/dist/web/components/wd-upload-file/style.d.ts +1 -0
  745. package/dist/web/components/wd-upload-file/style.js +1 -0
  746. package/dist/web/components/wd-upload-file/wd-upload-file.css +107 -0
  747. package/dist/web/components/wd-upload-file/wd-upload-file.d.ts +9 -6
  748. package/dist/web/components/wd-upload-file/wd-upload-file.js +37 -23
  749. package/dist/web/components/wd-upload-image/_design/wd-upload-image.d.ts +3 -0
  750. package/dist/web/components/wd-upload-image/_design/wd-upload-image.js +51 -0
  751. package/dist/web/components/wd-upload-image/style.d.ts +1 -0
  752. package/dist/web/components/wd-upload-image/style.js +1 -0
  753. package/dist/web/components/wd-upload-image/wd-upload-image.css +34 -0
  754. package/dist/web/components/wd-upload-image/wd-upload-image.d.ts +12 -3
  755. package/dist/web/components/wd-upload-image/wd-upload-image.js +37 -50
  756. package/dist/web/components/wedaVideo/index.css +1 -1
  757. package/dist/web/components/wedaVideo/index.d.ts +20 -4
  758. package/dist/web/components/wedaVideo/index.js +112 -7
  759. package/dist/web/utils/color.d.ts +6 -0
  760. package/dist/web/utils/color.js +81 -0
  761. package/dist/web/utils/constant.d.ts +10 -1
  762. package/dist/web/utils/constant.js +12 -1
  763. package/dist/web/utils/datasource.d.ts +8 -4
  764. package/dist/web/utils/datasource.js +17 -10
  765. package/dist/web/utils/date.d.ts +5 -0
  766. package/dist/web/utils/date.js +30 -0
  767. package/dist/web/utils/file2base64.d.ts +1 -0
  768. package/dist/web/utils/file2base64.js +6 -0
  769. package/dist/web/utils/getModelParams.js +2 -0
  770. package/dist/web/utils/getPageQuery.d.ts +0 -1
  771. package/dist/web/utils/global-context.d.ts +8 -0
  772. package/dist/web/utils/global-context.js +22 -0
  773. package/dist/web/utils/hooks/EnumHoc.js +2 -2
  774. package/dist/web/utils/hooks/context.d.ts +0 -20
  775. package/dist/web/utils/hooks/context.js +0 -16
  776. package/dist/web/utils/hooks/use-cloud-id-temp-url.d.ts +2 -2
  777. package/dist/web/utils/hooks/use-debounced-callback.d.ts +104 -0
  778. package/dist/web/utils/hooks/use-debounced-callback.js +213 -0
  779. package/dist/web/utils/hooks/use-delay-events.d.ts +8 -0
  780. package/dist/web/utils/hooks/use-delay-events.js +31 -0
  781. package/dist/web/utils/hooks/use-selected.d.ts +16 -0
  782. package/dist/web/utils/hooks/use-selected.js +38 -0
  783. package/dist/web/utils/hooks/useCanPreview.d.ts +1 -0
  784. package/dist/web/utils/hooks/useCanPreview.js +20 -0
  785. package/dist/web/utils/hooks/useDataSource.d.ts +2 -2
  786. package/dist/web/utils/hooks/useFormLegacy.d.ts +35 -23
  787. package/dist/web/utils/hooks/useFormLegacy.js +185 -117
  788. package/dist/web/utils/hooks/useRecycle.d.ts +13 -0
  789. package/dist/web/utils/hooks/useRecycle.js +19 -0
  790. package/dist/web/utils/hooks/useSyncValue.d.ts +3 -1
  791. package/dist/web/utils/hooks/useSyncValue.js +27 -4
  792. package/dist/web/utils/moment.d.ts +1 -4
  793. package/dist/web/utils/moment.js +13 -18
  794. package/dist/web/utils/platform.d.ts +4 -1
  795. package/dist/web/utils/platform.js +21 -2
  796. package/dist/web/utils/range.d.ts +16 -0
  797. package/dist/web/utils/range.js +61 -0
  798. package/dist/web/utils/tool.d.ts +10 -0
  799. package/dist/web/utils/tool.js +48 -0
  800. package/dist/web/utils/widget-api/index.d.ts +3 -0
  801. package/dist/web/utils/widget-api/index.js +7 -0
  802. package/dist/web/utils/widget-api/use-set-widget-api.d.ts +3 -0
  803. package/dist/web/utils/widget-api/use-set-widget-api.js +25 -0
  804. package/dist/web/weda-ui.css +78 -0
  805. package/package.json +34 -32
  806. package/dist/configs/components/dataView.json +0 -327
  807. package/dist/configs/components/drawer.json +0 -116
  808. package/dist/configs/components/form/label.json +0 -22
  809. package/dist/configs/components/listView.json +0 -618
  810. package/dist/configs/components/picker/picker.json +0 -18
  811. package/dist/configs/components/picker/timePicker.json +0 -23
  812. package/dist/configs/components/wd-department-select.d.ts +0 -32
  813. package/dist/configs/components/wd-department-select.js +0 -55
  814. package/dist/configs/components/wd-image-upload.d.ts +0 -56
  815. package/dist/configs/components/wd-image-upload.js +0 -92
  816. package/dist/configs/components/wd-member-select.d.ts +0 -32
  817. package/dist/configs/components/wd-member-select.js +0 -55
  818. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/comment/index.js +0 -185
  819. package/dist/web/components/flow/modules/operations/controls-items/approval-drawer/comment/style.css +0 -51
  820. package/dist/web/components/wd-date-range/elements/Calendar.h5.d.ts +0 -6
  821. package/dist/web/components/wd-date-range/elements/Calendar.h5.js +0 -63
  822. package/dist/web/components/wd-date-range/elements/DatePicker.h5.d.ts +0 -6
  823. package/dist/web/components/wd-date-range/elements/DatePicker.h5.js +0 -41
  824. package/dist/web/components/wd-date-range/elements/TimePicker.h5.d.ts +0 -6
  825. package/dist/web/components/wd-date-range/elements/TimePicker.h5.js +0 -80
  826. package/dist/web/components/wd-date-range/elements/WheelPicker.d.ts +0 -10
  827. package/dist/web/components/wd-date-range/elements/WheelPicker.js +0 -94
  828. package/dist/web/components/wd-date-range/elements/YearMonthPicker.h5.d.ts +0 -6
  829. package/dist/web/components/wd-date-range/elements/YearMonthPicker.h5.js +0 -58
  830. package/dist/web/components/wd-date-range/elements/YearPicker.h5.d.ts +0 -6
  831. package/dist/web/components/wd-date-range/elements/YearPicker.h5.js +0 -37
  832. package/dist/web/components/wd-date-range/elements/YearPicker.pc.d.ts +0 -9
  833. package/dist/web/components/wd-date-range/elements/YearPicker.pc.js +0 -78
  834. package/dist/web/components/wd-date-range/elements/interface.d.ts +0 -41
  835. package/dist/web/components/wd-department-select/index.d.ts +0 -3
  836. package/dist/web/components/wd-department-select/index.js +0 -3
  837. package/dist/web/components/wd-member-select/index.d.ts +0 -3
  838. package/dist/web/components/wd-member-select/index.js +0 -3
  839. package/dist/web/components/wd-member-select/wd-member-select.d.ts +0 -8
  840. package/dist/web/utils/hooks/CreatePortal.d.ts +0 -5
  841. package/dist/web/utils/hooks/CreatePortal.js +0 -7
  842. package/dist/web/utils/hooks/globalConnect.d.ts +0 -2
  843. package/dist/web/utils/hooks/globalConnect.js +0 -25
  844. /package/dist/web/components/wd-date-range/{elements/interface.js → interface.js} +0 -0
  845. /package/dist/web/components/{wd-department-select → wd-department/_design}/h5.d.ts +0 -0
  846. /package/dist/web/components/{wd-member-select → wd-member/_design}/h5.d.ts +0 -0
  847. /package/dist/web/components/{wd-region-select → wd-region/_design}/h5.d.ts +0 -0
  848. /package/dist/web/components/{wd-region-select → wd-region}/index.js +0 -0
  849. /package/dist/web/components/wd-select/{h5.d.ts → _design/h5.d.ts} +0 -0
@@ -12,8 +12,17 @@ import fromEntries from 'object.fromentries';
12
12
  import { callWedaApi } from '../../utils/tcb';
13
13
  import destr from 'destr';
14
14
  import { useSize } from '../../utils/hooks/useFormLegacy';
15
+ import debounce from '../../utils/debounce';
16
+ import { useSetWidgetApi } from '../../utils/widget-api/use-set-widget-api';
17
+ import { useDelayEvents } from '../../utils/hooks/use-delay-events';
18
+ import { useSelected } from '../../utils/hooks/use-selected';
19
+ import { isObjHasProp, isObj } from '../../utils/tool';
15
20
  export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, inputRef) {
16
- const { range: propRange, direction, events = emptyObject, format = '', enumName = '', label, } = props;
21
+ const { range, direction, events = emptyObject, format = '', enumName = '', label, layout, } = props;
22
+ const propRange = React.useMemo(() => {
23
+ const list = Array.isArray(range) ? range : [];
24
+ return list.filter((item) => isObjHasProp(item, 'value'));
25
+ }, [range]);
17
26
  const [innerHandle, setInnerHandle] = React.useState({}); // hook里挂出的属性
18
27
  const [readValue, setReadValue] = React.useState('-'); // 只读的显示
19
28
  const size = useSize(props);
@@ -26,10 +35,11 @@ export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, in
26
35
  classList.push(`${classPrefix}-checkbox-group--inline `);
27
36
  /** 兼容从 Form 获取属性,必须引入,自动挂载组件方法 */
28
37
  const traitProps = { ...props, inputRef, setInnerHandle };
29
- const { value: defaultValue, onChange: outerOnChange, disabled, readOnly, validateErrorMsg, validateState, visible, name, value, required, layout, } = useFormInputTrait(traitProps);
38
+ const { value: defaultValue, onChange: outerOnChange, disabled, readOnly, validateErrorMsg, validateState, visible, name, value, required, } = useFormInputTrait(traitProps);
30
39
  const [options, setOptions] = React.useState(format === 'x-enum' ? [] : propRange);
31
40
  const [enumOptions, setEnumOptions] = React.useState([]);
32
41
  const [checkedItemValue, setCheckedItemValue] = React.useState(fromEntries(options.map(({ value, checked }) => [value, !!checked])));
42
+ const delayEvents = useDelayEvents(events);
33
43
  /**
34
44
  * 在ios h5端, label和input的绑定不生效
35
45
  * 导致 onChange 事件触发有问题, 所以改为监听 onClick 事件
@@ -45,7 +55,7 @@ export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, in
45
55
  .filter(([, checked]) => checked)
46
56
  .map(([value]) => value);
47
57
  outerOnChange === null || outerOnChange === void 0 ? void 0 : outerOnChange(value);
48
- events === null || events === void 0 ? void 0 : events.change({ value }, { originEvent: e });
58
+ delayEvents === null || delayEvents === void 0 ? void 0 : delayEvents.change({ value }, { originEvent: e });
49
59
  }
50
60
  };
51
61
  React.useEffect(() => {
@@ -63,18 +73,26 @@ export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, in
63
73
  setReadValue('-');
64
74
  }
65
75
  }, [options, readOnly]);
76
+ // 加上选中
77
+ const getOptions = (options, value) => {
78
+ if (!Array.isArray(options))
79
+ return [];
80
+ if (!Array.isArray(value))
81
+ return options;
82
+ const opts = options.map((item) => {
83
+ const checked = value.find((val) => `${val}` === `${item.value}`);
84
+ return {
85
+ ...item,
86
+ value: item.value,
87
+ label: item.label,
88
+ checked: !!checked,
89
+ };
90
+ });
91
+ return opts;
92
+ };
66
93
  React.useEffect(() => {
67
94
  if (format !== 'x-enum') {
68
- const opts = propRange &&
69
- propRange.map((item) => {
70
- const checked = defaultValue &&
71
- defaultValue.find((val) => `${val}` === `${item.value}`);
72
- return {
73
- value: item.value,
74
- label: item.label,
75
- checked: !!checked,
76
- };
77
- });
95
+ const opts = getOptions(propRange, defaultValue);
78
96
  setOptions(opts);
79
97
  }
80
98
  }, [propRange, defaultValue, format]);
@@ -85,16 +103,13 @@ export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, in
85
103
  }
86
104
  // eslint-disable-next-line react-hooks/exhaustive-deps
87
105
  }, []);
88
- const getSelectedLabel = (options) => {
89
- const tempLabel = [];
90
- options.forEach(({ label, checked }) => {
91
- if (checked) {
92
- tempLabel.push(label);
93
- }
94
- });
95
- return tempLabel;
96
- };
97
- React.useImperativeHandle(inputRef, () => ({
106
+ const oriOptions = React.useMemo(() => removeChecked(options), [options]);
107
+ const { selectedItem, selectedLabel } = useSelected({
108
+ range: oriOptions,
109
+ value: defaultValue,
110
+ multiple: true,
111
+ });
112
+ useSetWidgetApi(() => ({
98
113
  ...innerHandle,
99
114
  name,
100
115
  value,
@@ -103,7 +118,8 @@ export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, in
103
118
  visible,
104
119
  disabled,
105
120
  readOnly,
106
- selectedLabel: getSelectedLabel(options),
121
+ item: selectedItem,
122
+ selectedLabel,
107
123
  }), [
108
124
  innerHandle,
109
125
  name,
@@ -113,9 +129,10 @@ export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, in
113
129
  visible,
114
130
  disabled,
115
131
  readOnly,
116
- options,
117
- ]);
118
- const fetchData = async (param) => {
132
+ selectedItem,
133
+ selectedLabel,
134
+ ], inputRef);
135
+ const fetchData = debounce(async (param) => {
119
136
  var _a, _b, _c;
120
137
  const data = await callWedaApi({
121
138
  action: 'DescribeGeneralOptionsDetailList',
@@ -131,43 +148,32 @@ export const WdCheckboxList = React.forwardRef(function WdCheckboxList(props, in
131
148
  };
132
149
  });
133
150
  setEnumOptions(enumOption);
134
- const opt = enumOption &&
135
- enumOption.map((item) => {
136
- const checked = defaultValue &&
137
- defaultValue.find((val) => `${val}` === `${item.value}`);
138
- return {
139
- value: item.value,
140
- label: item.label,
141
- checked: !!checked,
142
- };
143
- });
144
- setOptions(opt);
145
- };
151
+ const opts = getOptions(enumOption, defaultValue);
152
+ setOptions(opts);
153
+ },
154
+ // eslint-disable-next-line @typescript-eslint/no-magic-numbers
155
+ 500);
146
156
  React.useEffect(() => {
147
157
  if (format === 'x-enum') {
148
- const opt = enumOptions &&
149
- enumOptions.map((item) => {
150
- const checked = defaultValue &&
151
- defaultValue.find((val) => `${val}` === `${item.value}`);
152
- return {
153
- value: item.value,
154
- label: item.label,
155
- checked: !!checked,
156
- };
157
- });
158
+ const opt = getOptions(enumOptions, defaultValue);
158
159
  setOptions(opt);
159
160
  }
160
- // eslint-disable-next-line react-hooks/exhaustive-deps
161
- }, [defaultValue, format]);
161
+ }, [defaultValue, format, enumOptions]);
162
162
  const labelSize = () => {
163
163
  if (['h5'].includes(platform) ||
164
- (['horizontal', ''].includes(layout) &&
164
+ (['horizontal', '', undefined].includes(layout) &&
165
165
  ['vertical'].includes(direction))) {
166
166
  return 'xs';
167
167
  }
168
168
  return size;
169
169
  };
170
170
  return (visible && (_jsx(WdFormItem, { ...props, testId: "form-checkbox-list", validateErrorMsg: validateErrorMsg, validateState: validateState, readValue: readValue, disabled: disabled, readOnly: readOnly, classRoot: 'checkbox', size: labelSize(), layout: layout, children: _jsx("div", { className: classNames(classList), children: options === null || options === void 0 ? void 0 : options.map((Item, index) => {
171
- return (_createElement(WdCheckbox, { ...props, size: ['h5'].includes(platform) ? 'lg' : props === null || props === void 0 ? void 0 : props.size, key: index, index: index, option: Item, disabled: disabled, getChangeHandler: getChangeHandler, checkedItemValue: checkedItemValue }));
171
+ return (_createElement(WdCheckbox, { ...props, size: ['h5'].includes(platform) ? 'lg' : props === null || props === void 0 ? void 0 : props.size, key: index, index: index, option: Item, disabled: disabled || Item.disabled, getChangeHandler: getChangeHandler, checkedItemValue: checkedItemValue }));
172
172
  }) }) })));
173
173
  });
174
+ function removeChecked(list) {
175
+ const options = (Array.isArray(list) ? list : []).filter((item) => isObj(item));
176
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
177
+ const newList = options.map(({ checked, ...rest }) => rest);
178
+ return newList;
179
+ }
@@ -1,5 +1,5 @@
1
- import { createContext } from 'react';
1
+ import { createContext } from '../../utils/global-context';
2
2
  export const DEFAULT_CLASS_PREFIX = typeof WD_CLASS_PREFIX !== 'undefined' ? WD_CLASS_PREFIX : 'wd';
3
3
  export const WdConfigContext = createContext({
4
4
  classPrefix: DEFAULT_CLASS_PREFIX,
5
- });
5
+ }, 'WdConfigContext');
@@ -1,6 +1,8 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import type { IDatePickerOptions } from './interface';
3
3
  /**
4
4
  * h5端 年月日-日历选择格式
5
5
  */
6
- export declare function Calendar(props: IDatePickerOptions): JSX.Element;
6
+ export declare const Calendar: React.ForwardRefExoticComponent<IDatePickerOptions & {
7
+ isWheelChange?: boolean;
8
+ } & React.RefAttributes<any>>;
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState, useMemo } from 'react';
2
+ import React, { useState, useMemo, useImperativeHandle, useCallback, } from 'react';
3
3
  import { useConfig } from '../../../utils/config-context';
4
4
  import { convertYearMonthToWeeks, convertDateItemToValue, getFullDay, convertValueToDateItem, getYMD, useDateValue, } from '../../../utils/hooks/useFormLegacy';
5
5
  import { useSyncValue } from '../../../utils/hooks/useSyncValue';
@@ -12,8 +12,8 @@ const ONE = 1;
12
12
  /**
13
13
  * h5端 年月日-日历选择格式
14
14
  */
15
- export function Calendar(props) {
16
- const { start, end, onChange = noop } = props;
15
+ export const Calendar = React.forwardRef(function Calendar(props, ref) {
16
+ const { start, end, onChange = noop, isWheelChange } = props;
17
17
  const { classPrefix } = useConfig();
18
18
  const [showMode, setShowMode] = useState('day'); // 切换模式
19
19
  const _value = useDateValue({ ...props, mode: 'day' });
@@ -28,7 +28,7 @@ export function Calendar(props) {
28
28
  });
29
29
  const opStyle = showMode === 'month' ? { visibility: 'hidden' } : {};
30
30
  // 切换模式
31
- const handleClickMode = () => setShowMode((d) => (d === 'day' ? 'month' : 'day'));
31
+ const handleClickMode = useCallback(() => setShowMode((d) => (d === 'day' ? 'month' : 'day')), []);
32
32
  // 切换月
33
33
  const handleSelectMonth = (month) => {
34
34
  const value = convertDateItemToValue({ ...dateItem, month });
@@ -39,16 +39,24 @@ export function Calendar(props) {
39
39
  const handleSelectYearMonth = (v) => {
40
40
  const item = convertValueToDateItem(v);
41
41
  setDateItem(item);
42
+ if (isWheelChange) {
43
+ setValue(v);
44
+ onChange(v);
45
+ }
42
46
  };
43
47
  // 选中日期
44
48
  const handleSelectDay = (item) => {
45
- if ((item === null || item === void 0 ? void 0 : item.disabled) || getYMD(item) === getYMD(dateItem)) {
49
+ if (item === null || item === void 0 ? void 0 : item.disabled) {
46
50
  return;
47
51
  }
48
52
  const value = convertDateItemToValue({ ...dateItem, day: item.day });
49
53
  setValue(value);
50
54
  onChange(value);
51
55
  };
56
+ useImperativeHandle(ref, () => ({ showMode, handleClickMode }), [
57
+ showMode,
58
+ handleClickMode,
59
+ ]);
52
60
  return (_jsxs(_Fragment, { children: [_jsxs("div", { className: `${classPrefix}-custom-calendar-op`, children: [_jsx("div", { className: `${classPrefix}-custom-calendar-op__start`, children: _jsxs("span", { className: yearMonthCls, onClick: handleClickMode, children: [yearMonthDisplay, _jsx("i", { className: `${classPrefix}-icon-arrow-right` })] }) }), _jsxs("div", { className: `${classPrefix}-custom-calendar-op__end`, style: opStyle, children: [_jsx("span", { "data-testid": "pre-calendar-page", className: `${classPrefix}-icon-turn-pre`, onClick: () => handleSelectMonth(dateItem.month - ONE) }), _jsx("span", { "data-testid": "next-calendar-page", className: `${classPrefix}-icon-turn-next`, onClick: () => handleSelectMonth(dateItem.month + ONE) })] })] }), _jsxs("div", { className: `${classPrefix}-custom-picker__box${showMode === 'day' ? '' : '--month'}`, children: [showMode === 'day' && (_jsxs("div", { className: `${classPrefix}-custom-calendar`, children: [_jsx("div", { className: `${classPrefix}-custom-calendar__weeks`, children: WEEKS.map((d) => (_jsx("span", { className: `${classPrefix}-custom-calendar__weeks-item`, children: d }, d))) }), _jsx("div", { className: `${classPrefix}-custom-calendar__days`, children: weeks.map((week, index) => {
53
61
  return (_jsx("div", { className: `${classPrefix}-custom-calendar__days-row`, children: week.map((item, index) => {
54
62
  return (_jsx("span", { className: classNames(`${classPrefix}-custom-calendar__days-item`, {
@@ -59,4 +67,4 @@ export function Calendar(props) {
59
67
  }, children: item.day }, index));
60
68
  }) }, index));
61
69
  }) })] })), showMode === 'month' && (_jsx(YearMonthPicker, { ...props, value: dateItemValue, onChange: handleSelectYearMonth }))] })] }));
62
- }
70
+ });
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState, useMemo } from 'react';
3
- import { convertMoment, useDateValue, } from '../../../utils/hooks/useFormLegacy';
2
+ import { useState, useMemo, useRef } from 'react';
3
+ import { convertMoment, useDateValue, getStartMoment, } from '../../../utils/hooks/useFormLegacy';
4
4
  import { Portal } from '../../common/portal';
5
5
  import { noop } from '../../../utils/constant';
6
6
  import { useSyncValue } from '../../../utils/hooks/useSyncValue';
@@ -9,18 +9,18 @@ import { TimePicker } from './TimePicker.h5';
9
9
  import { YearPicker } from './YearPicker.h5';
10
10
  import { YearMonthPicker } from './YearMonthPicker.h5';
11
11
  import { useConfig } from '../../../utils/config-context';
12
- import { getDayNow } from '../../../utils/moment';
13
12
  /**
14
13
  * 年-月-日 时:分:秒 选择器
15
14
  */
16
15
  export function DatePicker(props) {
17
- const { mode, onOk = noop, onClose = noop } = props;
18
- const nowDate = useMemo(() => getDayNow(mode), [mode]);
16
+ const { mode, onOk = noop, onClose = noop, okText = '确定', cancelText = '取消', maskClosable = true, className, } = props;
17
+ const nowDate = useMemo(() => getStartMoment(mode), [mode]);
19
18
  const _value = useDateValue(props);
20
19
  const [value, setValue] = useSyncValue(_value);
21
20
  const [dateOrTime, setDateOrTime] = useState('date');
22
21
  const [_key, _setKey] = useState(0); // 切换到日期时强制刷新
23
22
  const { classPrefix } = useConfig();
23
+ const calendarRef = useRef({});
24
24
  const timeFormat = mode === 'datetimeMinute' ? 'HH:mm' : 'HH:mm:ss';
25
25
  const m = useMemo(() => convertMoment(value), [value]) || nowDate;
26
26
  const dateTimeDisplay = {
@@ -28,13 +28,22 @@ export function DatePicker(props) {
28
28
  time: m === null || m === void 0 ? void 0 : m.format(timeFormat),
29
29
  };
30
30
  const handleOk = () => {
31
+ if (mode === 'day' &&
32
+ calendarRef.current.showMode === 'month' &&
33
+ calendarRef.current.handleClickMode) {
34
+ calendarRef.current.handleClickMode();
35
+ return;
36
+ }
31
37
  onOk(value);
32
38
  };
39
+ const handleClose = () => {
40
+ onClose(value);
41
+ };
33
42
  const handleChange = (v) => {
34
43
  setValue(v);
35
44
  };
36
- return (_jsx(Portal, { type: "div", children: _jsxs("div", { className: `${classPrefix}-custom-picker`, children: [_jsx("div", { className: `${classPrefix}-custom-backdrop`, onClick: onClose }), _jsxs("div", { className: `${classPrefix}-custom-picker__inner`, children: [_jsxs("div", { className: `${classPrefix}-custom-picker__header`, children: [_jsx("div", { className: `${classPrefix}-custom-picker__header-cancle`, onClick: onClose, children: "\u53D6\u6D88" }), _jsx("div", { className: `${classPrefix}-custom-picker__header-confirm`, onClick: handleOk, children: "\u786E\u5B9A" })] }), _jsxs("div", { className: `${classPrefix}-custom-picker__body`, children: [['datetime', 'datetimeMinute'].includes(mode) && (_jsxs(_Fragment, { children: [_jsx("div", { className: `${classPrefix}-custom-picker__select`, children: ['date', 'time'].map((d) => (_jsx("span", { className: `${classPrefix}-custom-picker__select-item ${dateOrTime === d ? 'is-current' : ''}`, onClick: () => {
45
+ return (_jsx(Portal, { type: "div", children: _jsxs("div", { className: `${classPrefix}-custom-picker ${className}`, children: [_jsx("div", { className: `${classPrefix}-custom-backdrop`, onClick: () => maskClosable && handleClose() }), _jsxs("div", { className: `${classPrefix}-custom-picker__inner`, children: [_jsxs("div", { className: `${classPrefix}-custom-picker__header`, children: [_jsx("div", { className: `${classPrefix}-custom-picker__header-cancle`, onClick: handleClose, children: cancelText }), _jsx("div", { className: `${classPrefix}-custom-picker__header-confirm`, onClick: handleOk, children: okText })] }), _jsxs("div", { className: `${classPrefix}-custom-picker__body`, children: [['datetime', 'datetimeMinute'].includes(mode) && (_jsxs(_Fragment, { children: [_jsx("div", { className: `${classPrefix}-custom-picker__select`, children: ['date', 'time'].map((d) => (_jsx("span", { className: `${classPrefix}-custom-picker__select-item ${classPrefix}-custom-picker__select-item-${d} ${dateOrTime === d ? 'is-current' : ''}`, onClick: () => {
37
46
  setDateOrTime(d);
38
47
  _setKey((d) => d + 1); // eslint-disable-line @typescript-eslint/no-magic-numbers
39
- }, children: dateTimeDisplay[d] }, d))) }), dateOrTime === 'date' && (_jsx("div", { className: `${classPrefix}-custom-picker__select-date`, children: _jsx(Calendar, { ...props, value: value, onChange: handleChange }, _key) })), dateOrTime === 'time' && (_jsx("div", { className: `${classPrefix}-custom-picker__select-time`, children: _jsx(TimePicker, { ...props, value: value, onChange: handleChange }) }))] })), mode === 'year' && (_jsx(YearPicker, { ...props, value: value, onChange: handleChange })), mode === 'month' && (_jsx(YearMonthPicker, { ...props, value: value, onChange: handleChange })), mode === 'day' && (_jsx(Calendar, { ...props, value: value, onChange: handleChange }, _key))] })] })] }) }));
48
+ }, children: dateTimeDisplay[d] }, d))) }), dateOrTime === 'date' && (_jsx("div", { className: `${classPrefix}-custom-picker__select-date`, children: _jsx(Calendar, { ...props, isWheelChange: true, value: value, onChange: handleChange }, _key) })), dateOrTime === 'time' && (_jsx("div", { className: `${classPrefix}-custom-picker__select-time`, children: _jsx(TimePicker, { ...props, value: value, onChange: handleChange }) }))] })), mode === 'year' && (_jsx(YearPicker, { ...props, value: value, onChange: handleChange })), mode === 'month' && (_jsx(YearMonthPicker, { ...props, value: value, onChange: handleChange })), mode === 'day' && (_jsx(Calendar, { ...props, isWheelChange: true, value: value, onChange: handleChange, ref: calendarRef }, _key))] })] })] }) }));
40
49
  }
@@ -1,9 +1,17 @@
1
1
  /// <reference types="react" />
2
- import { MonthPickerProps } from 'tea-component';
2
+ import { type MonthPickerProps } from 'tea-component';
3
+ import { type IDatePickerOptions } from './interface';
3
4
  /**
4
- * pc 版简易年份选择器
5
- * 传参与 MonthPicker 保持一致
5
+ * 年份选择器 pc
6
6
  */
7
7
  export declare function YearPicker(props: MonthPickerProps & {
8
8
  id?: string;
9
9
  }): JSX.Element;
10
+ /**
11
+ * 单个年选择面板 pc
12
+ */
13
+ export declare function YearPanel(props: IDatePickerOptions & {
14
+ row?: number;
15
+ col?: number;
16
+ selectedYears?: number[];
17
+ }): JSX.Element;
@@ -5,70 +5,79 @@ import { Popover, ConfigProvider } from 'tea-component';
5
5
  import { useConfig } from '../../../utils/config-context';
6
6
  import classNames from '../../../utils/classnames';
7
7
  import { useSyncValue } from '../../../utils/hooks/useSyncValue';
8
- import { convertMoment, convertYears, convertValueToDateItem, convertDateItemToValue, } from '../../../utils/hooks/useFormLegacy';
9
- import { getDayNow } from '../../../utils/moment';
10
- import { noop } from '../../../utils/constant';
8
+ import { convertMoment, convertYears, convertValueToDateItem, convertDateItemToValue, getStartMoment, } from '../../../utils/hooks/useFormLegacy';
9
+ import { noop, emptyArray } from '../../../utils/constant';
11
10
  import isEqual from '../../../utils/isObjectEqual';
11
+ import { useDeepCompareMemo } from '@react-hookz/web';
12
12
  /**
13
- * pc 版简易年份选择器
14
- * 传参与 MonthPicker 保持一致
13
+ * 年份选择器 pc
15
14
  */
16
15
  export function YearPicker(props) {
17
- const { value: _value, range = [], disabled, className, placeholder, format = 'YYYY', onChange = noop, id, } = props;
18
- const nowYear = useMemo(() => getDayNow().year(), []);
19
- const [value, setValue] = useSyncValue(_value, isEqual);
16
+ const { range = emptyArray, disabled, className, placeholder, format = 'YYYY', onChange = noop, id, } = props;
17
+ const [value, setValue] = useSyncValue(props.value, isEqual);
20
18
  const [visible, setVisible] = useState(false);
21
- const [page, setPage] = useState(0);
22
19
  const { classPrefix } = useConfig();
23
- const dateItem = useMemo(() => convertValueToDateItem(value), [value]);
24
- const year = value ? dateItem.year : nowYear;
25
- const valueDisplay = useMemo(() => (value === null || value === void 0 ? void 0 : value.format(format)) || '', [value, format]);
26
- const { years, yearStart, yearEnd } = useMemo(() => convertYears(year, page), [year, page]);
27
- const [start, end] = useMemo(() => {
28
- var _a, _b;
29
- return [
30
- (_a = convertMoment(range[0])) === null || _a === void 0 ? void 0 : _a.format('YYYY'),
31
- (_b = convertMoment(range[1])) === null || _b === void 0 ? void 0 : _b.format('YYYY'),
32
- ];
33
- },
34
- // eslint-disable-next-line react-hooks/exhaustive-deps
35
- [range[0], range[1]]);
36
- // 选中年
37
- const handleSelect = (v) => {
38
- if (isDisabled(v))
39
- return;
40
- const m = convertMoment(convertDateItemToValue({ ...dateItem, year: v }));
20
+ const valueDisplay = useMemo(() => { var _a; return ((_a = convertMoment(value)) === null || _a === void 0 ? void 0 : _a.format(format)) || ''; }, [value, format]);
21
+ // 更改年
22
+ const handleChange = (v) => {
23
+ const m = convertMoment(v);
41
24
  setValue(m);
42
- setPage(0);
43
25
  setVisible(false);
44
26
  onChange === null || onChange === void 0 ? void 0 : onChange(m, null);
45
27
  };
28
+ return (_jsx(ConfigProvider, { classPrefix: classPrefix, children: _jsx(Popover, { placement: "bottom-start", trigger: "click", visible: visible, onVisibleChange: (v) => !v && setVisible(v), overlayClassName: `${classPrefix}-dropdown--picker`, overlay: _jsx("div", { className: `${classPrefix}-dropdown-box `, children: _jsx("div", { className: `${classPrefix}-calendar`, children: _jsx(YearPanel, { value: value, onChange: handleChange, start: range[0], end: range[1] }) }) }), children: _jsx("div", { onClick: () => !disabled && setVisible(true), className: `${classPrefix}-datepicker ${className}`, children: _jsx("div", { className: `${classPrefix}-datepicker__input`, children: _jsx("input", { id: id, disabled: disabled, placeholder: placeholder, value: valueDisplay, autoComplete: "off" }) }) }) }) }));
29
+ }
30
+ /**
31
+ * 单个年选择面板 pc
32
+ */
33
+ export function YearPanel(props) {
34
+ const { value, onChange = noop, row = 5, col = 4, selectedYears = [], } = props;
35
+ const { classPrefix } = useConfig();
36
+ const [page, setPage] = useState(0);
37
+ const count = row * col;
38
+ const nowYear = useMemo(() => getStartMoment().year(), []); // 当年
39
+ const dateItem = useMemo(() => convertValueToDateItem(value), [value]); // 输入值年
40
+ const year = value ? dateItem.year : nowYear;
41
+ const { years, yearStart, yearEnd } = useMemo(() => convertYears(year, page, row, col), [year, page, row, col]);
42
+ const [start, end] = useDeepCompareMemo(() => {
43
+ var _a, _b;
44
+ return [
45
+ (_a = convertMoment(props.start)) === null || _a === void 0 ? void 0 : _a.format('YYYY'),
46
+ (_b = convertMoment(props.end)) === null || _b === void 0 ? void 0 : _b.format('YYYY'),
47
+ ];
48
+ }, [props.start, props.end]);
46
49
  // 上一年
47
50
  const handlePre = (e) => {
48
51
  e.stopPropagation();
49
52
  setPage((d) => d - 1);
50
53
  };
51
- // 下一年
52
- const handleNext = (e) => {
53
- e.stopPropagation();
54
- setPage((d) => d + 1);
55
- };
56
54
  // 回到当前
57
55
  const handleCurrent = (e) => {
58
56
  e.stopPropagation();
59
57
  setPage(0);
60
58
  };
61
- // 是否禁用
62
- const isDisabled = (v) => {
63
- return ((start && Number(v) < Number(start)) || (end && Number(v) > Number(end)));
59
+ // 下一年
60
+ const handleNext = (e) => {
61
+ e.stopPropagation();
62
+ setPage((d) => d + 1);
64
63
  };
64
+ // 是否禁用
65
+ const isDisabled = (v) => (start && Number(v) < Number(start)) || (end && Number(v) > Number(end));
65
66
  // 是否选中
66
- const isSelected = (v) => value && v === year;
67
- // 是否当前年
68
- const isNowYear = (v) => v === nowYear;
69
- return (_jsx(ConfigProvider, { classPrefix: classPrefix, children: _jsx(Popover, { placement: "bottom-start", trigger: "click", visible: visible, onVisibleChange: (v) => !v && setVisible(v), overlay: _jsx("div", { className: `${classPrefix}-dropdown-box`, children: _jsx("div", { className: `${classPrefix}-calendar`, children: _jsxs("div", { className: `${classPrefix}-calendar__table`, children: [_jsx("div", { className: `${classPrefix}-calendar__caption`, children: _jsxs(_Fragment, { children: [yearStart, "-", yearEnd] }) }), _jsxs("div", { className: `${classPrefix}-pagination ${classPrefix}-pagination--bordernone`, children: [_jsx("a", { className: `${classPrefix}-pagination__turnbtn ${classPrefix}-pagination__prebtn`, title: "\u4E0A\u4E8C\u5341\u5E74", onClick: handlePre, children: _jsx("i", { className: `${classPrefix}-icon ${classPrefix}-icon-arrowleft` }) }), _jsx("a", { className: `${classPrefix}-pagination__turnbtn ${classPrefix}-pagination__curbtn`, title: "\u5F53\u524D\u4E8C\u5341\u5E74", onClick: handleCurrent, children: _jsx("i", { className: `${classPrefix}-icon ${classPrefix}-icon-cur` }) }), _jsx("a", { className: `${classPrefix}-pagination__turnbtn ${classPrefix}-pagination__nextbtn`, title: "\u4E0B\u4E8C\u5341\u5E74", onClick: handleNext, children: _jsx("i", { className: `${classPrefix}-icon ${classPrefix}-icon-arrowright` }) })] }), _jsx("div", { className: `${classPrefix}-calendar__row-group`, children: _jsx("div", { className: `${classPrefix}-calendar__type-wrap ${classPrefix}-calendar__type--year`, children: years.map((rows) => (_jsx("div", { className: `${classPrefix}-calendar__row`, children: rows.map((item) => (_jsx("div", { className: classNames(`${classPrefix}-calendar__cell`, {
70
- [`${classPrefix}-calendar__cell--now`]: isNowYear(item),
71
- 'is-selected': isSelected(item),
72
- 'is-disabled': isDisabled(item),
73
- }), onClick: () => handleSelect(item), children: _jsx("span", { children: item }) }, item))) }, rows.join()))) }) })] }) }) }), children: _jsx("div", { onClick: () => !disabled && setVisible(true), className: classNames(`${classPrefix}-datepicker`, className), children: _jsx("div", { className: `${classPrefix}-datepicker__input`, children: _jsx("input", { id: id, disabled: disabled, placeholder: placeholder, value: valueDisplay, autoComplete: "off" }) }) }) }) }));
67
+ const isSelected = (v) => {
68
+ return (value && v === year) || selectedYears.find((d) => d == v);
69
+ };
70
+ // 选中年,传值 number 类型
71
+ const handleSelect = (v) => {
72
+ if (isDisabled(v))
73
+ return;
74
+ const m = convertDateItemToValue({ ...dateItem, year: v });
75
+ setPage(0);
76
+ onChange === null || onChange === void 0 ? void 0 : onChange(m);
77
+ };
78
+ return (_jsxs("div", { className: `${classPrefix}-calendar__table`, children: [_jsx("div", { className: `${classPrefix}-calendar__caption`, children: _jsxs(_Fragment, { children: [yearStart, "-", yearEnd] }) }), _jsxs("div", { className: `${classPrefix}-pagination ${classPrefix}-pagination--bordernone`, children: [_jsx("a", { className: `${classPrefix}-pagination__turnbtn ${classPrefix}-pagination__prebtn`, title: `上 ${count} 年`, onClick: handlePre, children: _jsx("i", { className: `${classPrefix}-icon ${classPrefix}-icon-arrowleft` }) }), _jsx("a", { className: `${classPrefix}-pagination__turnbtn ${classPrefix}-pagination__curbtn`, title: `当前 ${count} 年`, onClick: handleCurrent, children: _jsx("i", { className: `${classPrefix}-icon ${classPrefix}-icon-cur` }) }), _jsx("a", { className: `${classPrefix}-pagination__turnbtn ${classPrefix}-pagination__nextbtn`, title: `下 ${count} 年`, onClick: handleNext, children: _jsx("i", { className: `${classPrefix}-icon ${classPrefix}-icon-arrowright` }) })] }), _jsx("div", { className: `${classPrefix}-calendar__row-group`, children: _jsx("div", { className: `${classPrefix}-calendar__type-wrap ${classPrefix}-calendar__type--year`, children: years.map((rows) => (_jsx("div", { className: `${classPrefix}-calendar__row`, children: rows.map((d) => (_jsx("div", { className: classNames(`${classPrefix}-calendar__cell`, {
79
+ [`${classPrefix}-calendar__cell--now`]: d === nowYear,
80
+ 'is-selected': isSelected(d),
81
+ 'is-disabled': isDisabled(d),
82
+ }), onClick: () => handleSelect(d), children: _jsx("span", { children: d }) }, d))) }, rows.join()))) }) })] }));
74
83
  }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ import { RangePickerProps } from 'tea-component';
3
+ /**
4
+ * 年范围选择器 pc
5
+ */
6
+ export declare function YearRangePicker(props: RangePickerProps): JSX.Element;
@@ -0,0 +1,54 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /* eslint-disable @typescript-eslint/no-magic-numbers */
3
+ import { useState } from 'react';
4
+ import { Popover, ConfigProvider } from 'tea-component';
5
+ import { useConfig } from '../../../utils/config-context';
6
+ import { useSyncValue } from '../../../utils/hooks/useSyncValue';
7
+ import { convertMoment, convertValueToDateItem, } from '../../../utils/hooks/useFormLegacy';
8
+ import { convertDateRangeToString, convertStartEndValue, } from '../../../utils/date';
9
+ import { noop, emptyArray } from '../../../utils/constant';
10
+ import isEqual from '../../../utils/isObjectEqual';
11
+ import { YearPanel } from './YearPicker.pc';
12
+ import { useDeepCompareMemo } from '@react-hookz/web';
13
+ /**
14
+ * 年范围选择器 pc
15
+ */
16
+ export function YearRangePicker(props) {
17
+ const { range = emptyArray, disabled, className = '', format = 'YYYY', onChange = noop, placeholder = emptyArray, overlayClassName, separator = '~', } = props;
18
+ const [value, setValue] = useSyncValue(props.value, isEqual);
19
+ const [visible, setVisible] = useState(false);
20
+ const [step, setStep] = useState(0);
21
+ const { classPrefix } = useConfig();
22
+ const valueDisplay = useDeepCompareMemo(() => convertDateRangeToString(value, format) || ['', ''], [value, format]);
23
+ const placeholders = useDeepCompareMemo(() => Array.isArray(placeholder) ? placeholder : [placeholder, placeholder], [placeholder]);
24
+ // 更改年
25
+ const handleChange = (v) => {
26
+ const stepTemp = step + 1;
27
+ const m = convertMoment(v);
28
+ let temp = [];
29
+ if (stepTemp === 1) {
30
+ temp = [m, null];
31
+ }
32
+ else if (stepTemp === 2) {
33
+ temp = convertStartEndValue([value === null || value === void 0 ? void 0 : value[0], m], true);
34
+ setVisible(false);
35
+ onChange === null || onChange === void 0 ? void 0 : onChange(temp, null);
36
+ }
37
+ setValue(temp);
38
+ setStep(stepTemp);
39
+ };
40
+ // 打开弹窗
41
+ const handleVisible = (v) => {
42
+ if (step === 1) {
43
+ setValue(props.value);
44
+ }
45
+ setVisible(v);
46
+ setStep(0);
47
+ };
48
+ // 选中的年份
49
+ const selectedYears = []
50
+ .concat(value)
51
+ .filter((d) => convertMoment(d))
52
+ .map((d) => { var _a; return (_a = convertValueToDateItem(d)) === null || _a === void 0 ? void 0 : _a.year; });
53
+ return (_jsx(ConfigProvider, { classPrefix: classPrefix, children: _jsx(Popover, { placement: "bottom-start", trigger: "click", visible: visible, onVisibleChange: handleVisible, overlayClassName: overlayClassName, overlay: _jsx("div", { className: `${classPrefix}-dropdown-box `, children: _jsx("div", { className: `${classPrefix}-calendar ${classPrefix}-calendar--date-range`, children: _jsx("div", { className: `${classPrefix}-calendar__body`, children: _jsx(YearPanel, { value: value === null || value === void 0 ? void 0 : value[0], onChange: handleChange, start: range[0], end: range[1], col: 8, selectedYears: selectedYears }) }) }) }), children: _jsx("div", { onClick: () => !disabled && setVisible(true), className: `${classPrefix}-datepicker ${className}`, children: _jsxs("div", { className: `${classPrefix}-datepicker__input wd-datepicker__input--range`, children: [_jsx("input", { disabled: disabled, placeholder: placeholders[0], value: step !== 1 ? valueDisplay[0] : '', autoComplete: "off" }), _jsx("span", { children: separator }), _jsx("input", { disabled: disabled, placeholder: placeholders[1], value: step !== 1 ? valueDisplay[1] : '', autoComplete: "off" })] }) }) }) }));
54
+ }
@@ -1,14 +1,20 @@
1
+ /// <reference types="react" />
1
2
  import type { DataType } from '../../../../configs/components/wd-date';
3
+ type IDateValue = number | string | moment.Moment;
2
4
  export interface IDatePickerOptions {
3
- value?: number | string | moment.Moment;
4
- start?: string;
5
- end?: string;
5
+ value?: IDateValue;
6
+ start?: IDateValue;
7
+ end?: IDateValue;
6
8
  mode?: string;
7
9
  onChange?: any;
8
10
  }
9
11
  export interface IDatePicker extends Omit<IDatePickerOptions, 'onChange'> {
12
+ className?: string;
10
13
  onOk?: any;
11
14
  onClose?: any;
15
+ cancelText?: React.ReactNode;
16
+ okText?: React.ReactNode;
17
+ maskClosable?: boolean;
12
18
  }
13
19
  export interface IPureDate extends DataType {
14
20
  onChange?: (v: number) => any;
@@ -39,3 +45,4 @@ export interface IWheelPicker {
39
45
  onChange?: (value?: any[]) => void;
40
46
  items?: IOption[][];
41
47
  }
48
+ export {};
@@ -18,6 +18,7 @@ export function DatePc(props) {
18
18
  const value = moment.isMoment(m) ? m.valueOf() : null;
19
19
  onChange === null || onChange === void 0 ? void 0 : onChange(value);
20
20
  };
21
+ const pickerOverlay = `${classPrefix}-dropdown--picker `;
21
22
  const dateProps = {
22
23
  disabled,
23
24
  placeholder,
@@ -34,16 +35,16 @@ export function DatePc(props) {
34
35
  Elem = _jsx(YearPicker, { ...dateProps });
35
36
  }
36
37
  else if (mode === 'month') {
37
- Elem = _jsx(DatePicker.MonthPicker, { ...dateProps });
38
+ Elem = (_jsx(DatePicker.MonthPicker, { overlayClassName: pickerOverlay, ...dateProps }));
38
39
  }
39
40
  else if (mode === 'datetime') {
40
- Elem = _jsx(DatePicker, { ...dateProps, showTime: true });
41
+ Elem = (_jsx(DatePicker, { overlayClassName: pickerOverlay, ...dateProps, showTime: true }));
41
42
  }
42
43
  else if (mode === 'datetimeMinute') {
43
- Elem = _jsx(DatePicker, { ...dateProps, showTime: { format: 'HH:mm' } });
44
+ Elem = (_jsx(DatePicker, { overlayClassName: pickerOverlay, ...dateProps, showTime: { format: 'HH:mm' } }));
44
45
  }
45
46
  else {
46
- Elem = _jsx(DatePicker, { ...dateProps });
47
+ Elem = _jsx(DatePicker, { ...dateProps, overlayClassName: pickerOverlay });
47
48
  }
48
49
  // 返回
49
50
  return _jsx(ConfigProvider, { classPrefix: classPrefix, children: Elem });
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import '../form/select/moment-locale';
2
3
  import type { DataType } from '../../../configs/components/wd-date';
3
4
  import type { CommonPropsType } from '../../types';
4
5
  /**