element-pe 2.2.88 → 2.2.89

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 (658) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +493 -381
  3. package/dist/index.full.min.js +21 -21
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +22 -22
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +494 -382
  8. package/dist/locale/nl.js +4 -4
  9. package/dist/locale/nl.min.js +1 -1
  10. package/dist/locale/nl.min.js.map +1 -1
  11. package/dist/locale/nl.min.mjs +1 -1
  12. package/dist/locale/nl.min.mjs.map +1 -1
  13. package/dist/locale/nl.mjs +4 -4
  14. package/es/components/affix/index.mjs +2 -2
  15. package/es/components/affix/src/affix.mjs +26 -119
  16. package/es/components/affix/src/affix.mjs.map +1 -1
  17. package/es/components/affix/src/affix2.mjs +119 -26
  18. package/es/components/affix/src/affix2.mjs.map +1 -1
  19. package/es/components/alert/index.mjs +2 -2
  20. package/es/components/alert/src/alert.mjs +38 -103
  21. package/es/components/alert/src/alert.mjs.map +1 -1
  22. package/es/components/alert/src/alert2.mjs +103 -38
  23. package/es/components/alert/src/alert2.mjs.map +1 -1
  24. package/es/components/autocomplete/index.d.ts +12 -1
  25. package/es/components/autocomplete/src/autocomplete.mjs +1 -1
  26. package/es/components/autocomplete/src/autocomplete.vue.d.ts +12 -1
  27. package/es/components/avatar/index.mjs +2 -2
  28. package/es/components/avatar/src/avatar.mjs +76 -35
  29. package/es/components/avatar/src/avatar.mjs.map +1 -1
  30. package/es/components/avatar/src/avatar2.mjs +35 -76
  31. package/es/components/avatar/src/avatar2.mjs.map +1 -1
  32. package/es/components/backtop/index.mjs +2 -2
  33. package/es/components/backtop/src/backtop.mjs +23 -61
  34. package/es/components/backtop/src/backtop.mjs.map +1 -1
  35. package/es/components/backtop/src/backtop2.mjs +61 -23
  36. package/es/components/backtop/src/backtop2.mjs.map +1 -1
  37. package/es/components/breadcrumb/index.mjs +4 -4
  38. package/es/components/breadcrumb/src/breadcrumb-item.mjs +11 -56
  39. package/es/components/breadcrumb/src/breadcrumb-item.mjs.map +1 -1
  40. package/es/components/breadcrumb/src/breadcrumb-item2.mjs +56 -11
  41. package/es/components/breadcrumb/src/breadcrumb-item2.mjs.map +1 -1
  42. package/es/components/breadcrumb/src/breadcrumb.mjs +11 -36
  43. package/es/components/breadcrumb/src/breadcrumb.mjs.map +1 -1
  44. package/es/components/breadcrumb/src/breadcrumb2.mjs +36 -11
  45. package/es/components/breadcrumb/src/breadcrumb2.mjs.map +1 -1
  46. package/es/components/button/index.d.ts +1 -1
  47. package/es/components/button/index.mjs +2 -2
  48. package/es/components/button/src/button-group2.mjs +1 -1
  49. package/es/components/button/src/button.mjs +76 -57
  50. package/es/components/button/src/button.mjs.map +1 -1
  51. package/es/components/button/src/button.vue.d.ts +1 -1
  52. package/es/components/button/src/button2.mjs +57 -76
  53. package/es/components/button/src/button2.mjs.map +1 -1
  54. package/es/components/calendar/index.d.ts +1 -1
  55. package/es/components/calendar/src/calendar.vue.d.ts +1 -1
  56. package/es/components/calendar/src/calendar2.mjs +1 -1
  57. package/es/components/calendar/src/date-table.mjs +87 -33
  58. package/es/components/calendar/src/date-table.mjs.map +1 -1
  59. package/es/components/calendar/src/date-table2.mjs +33 -87
  60. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  61. package/es/components/calendar/src/use-date-table.mjs +1 -1
  62. package/es/components/cascader/index.d.ts +24 -2
  63. package/es/components/cascader/src/cascader.mjs +1 -1
  64. package/es/components/cascader/src/cascader.vue.d.ts +12 -1
  65. package/es/components/check-tag/index.mjs +2 -2
  66. package/es/components/check-tag/src/check-tag.mjs +12 -31
  67. package/es/components/check-tag/src/check-tag.mjs.map +1 -1
  68. package/es/components/check-tag/src/check-tag2.mjs +31 -12
  69. package/es/components/check-tag/src/check-tag2.mjs.map +1 -1
  70. package/es/components/checkbox/index.mjs +2 -2
  71. package/es/components/checkbox/src/checkbox-group.mjs +33 -72
  72. package/es/components/checkbox/src/checkbox-group.mjs.map +1 -1
  73. package/es/components/checkbox/src/checkbox-group2.mjs +72 -33
  74. package/es/components/checkbox/src/checkbox-group2.mjs.map +1 -1
  75. package/es/components/col/index.mjs +2 -2
  76. package/es/components/col/src/col.mjs +43 -66
  77. package/es/components/col/src/col.mjs.map +1 -1
  78. package/es/components/col/src/col2.mjs +66 -43
  79. package/es/components/col/src/col2.mjs.map +1 -1
  80. package/es/components/collapse/index.mjs +4 -4
  81. package/es/components/collapse/src/collapse-item.mjs +14 -99
  82. package/es/components/collapse/src/collapse-item.mjs.map +1 -1
  83. package/es/components/collapse/src/collapse-item2.mjs +93 -14
  84. package/es/components/collapse/src/collapse-item2.mjs.map +1 -1
  85. package/es/components/collapse/src/collapse.mjs +17 -30
  86. package/es/components/collapse/src/collapse.mjs.map +1 -1
  87. package/es/components/collapse/src/collapse2.mjs +28 -17
  88. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  89. package/es/components/color-picker/index.d.ts +5 -1
  90. package/es/components/color-picker/index.mjs +2 -2
  91. package/es/components/color-picker/src/color-picker.mjs +354 -58
  92. package/es/components/color-picker/src/color-picker.mjs.map +1 -1
  93. package/es/components/color-picker/src/color-picker.vue.d.ts +5 -1
  94. package/es/components/color-picker/src/color-picker2.mjs +58 -353
  95. package/es/components/color-picker/src/color-picker2.mjs.map +1 -1
  96. package/es/components/color-picker/src/components/predefine.mjs +1 -1
  97. package/es/components/date-picker/src/composables/use-basic-date-table.d.ts +246 -0
  98. package/es/components/date-picker/src/composables/use-basic-date-table.mjs +354 -0
  99. package/es/components/date-picker/src/composables/use-basic-date-table.mjs.map +1 -0
  100. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs +38 -312
  101. package/es/components/date-picker/src/date-picker-com/basic-date-table.mjs.map +1 -1
  102. package/es/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +93 -354
  103. package/es/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +27 -281
  104. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs +24 -12
  105. package/es/components/date-picker/src/date-picker-com/panel-date-range.mjs.map +1 -1
  106. package/es/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +27 -281
  107. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs +1 -0
  108. package/es/components/date-picker/src/date-picker-com/panel-month-range.mjs.map +1 -1
  109. package/es/components/date-picker/src/panel-utils.d.ts +54 -562
  110. package/es/components/date-picker/src/props/basic-date-table.d.ts +2 -0
  111. package/es/components/date-picker/src/props/basic-date-table.mjs +2 -1
  112. package/es/components/date-picker/src/props/basic-date-table.mjs.map +1 -1
  113. package/es/components/date-picker/src/props/panel-month-range.mjs +5 -1
  114. package/es/components/date-picker/src/props/panel-month-range.mjs.map +1 -1
  115. package/es/components/descriptions/src/description2.mjs +1 -1
  116. package/es/components/descriptions/src/descriptions-row.mjs +64 -7
  117. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  118. package/es/components/descriptions/src/descriptions-row2.mjs +7 -64
  119. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  120. package/es/components/drawer/index.mjs +2 -2
  121. package/es/components/drawer/src/drawer.mjs +187 -29
  122. package/es/components/drawer/src/drawer.mjs.map +1 -1
  123. package/es/components/drawer/src/drawer2.mjs +29 -187
  124. package/es/components/drawer/src/drawer2.mjs.map +1 -1
  125. package/es/components/dropdown/src/dropdown.mjs +1 -1
  126. package/es/components/empty/index.mjs +2 -2
  127. package/es/components/empty/src/empty.mjs +11 -55
  128. package/es/components/empty/src/empty.mjs.map +1 -1
  129. package/es/components/empty/src/empty2.mjs +55 -11
  130. package/es/components/empty/src/empty2.mjs.map +1 -1
  131. package/es/components/form/src/types.d.ts +3 -2
  132. package/es/components/icon/index.mjs +2 -2
  133. package/es/components/icon/src/icon.mjs +8 -36
  134. package/es/components/icon/src/icon.mjs.map +1 -1
  135. package/es/components/icon/src/icon2.mjs +36 -8
  136. package/es/components/icon/src/icon2.mjs.map +1 -1
  137. package/es/components/image/index.d.ts +4 -1
  138. package/es/components/image/src/image.vue.d.ts +4 -1
  139. package/es/components/image-viewer/index.d.ts +4 -1
  140. package/es/components/image-viewer/src/image-viewer.d.ts +1 -0
  141. package/es/components/image-viewer/src/image-viewer.mjs +2 -1
  142. package/es/components/image-viewer/src/image-viewer.mjs.map +1 -1
  143. package/es/components/image-viewer/src/image-viewer.vue.d.ts +4 -1
  144. package/es/components/image-viewer/src/image-viewer2.mjs +2 -0
  145. package/es/components/image-viewer/src/image-viewer2.mjs.map +1 -1
  146. package/es/components/index.mjs +35 -35
  147. package/es/components/input/index.d.ts +4 -0
  148. package/es/components/input/index.mjs +2 -2
  149. package/es/components/input/src/input.d.ts +1 -0
  150. package/es/components/input/src/input.mjs +470 -114
  151. package/es/components/input/src/input.mjs.map +1 -1
  152. package/es/components/input/src/input.vue.d.ts +4 -0
  153. package/es/components/input/src/input2.mjs +118 -468
  154. package/es/components/input/src/input2.mjs.map +1 -1
  155. package/es/components/input-number/index.d.ts +12 -1
  156. package/es/components/input-number/src/input-number.vue.d.ts +12 -1
  157. package/es/components/link/index.mjs +2 -2
  158. package/es/components/link/src/link.mjs +50 -21
  159. package/es/components/link/src/link.mjs.map +1 -1
  160. package/es/components/link/src/link2.mjs +21 -50
  161. package/es/components/link/src/link2.mjs.map +1 -1
  162. package/es/components/menu/index.mjs +2 -2
  163. package/es/components/menu/src/menu-item-group.mjs +35 -4
  164. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  165. package/es/components/menu/src/menu-item-group2.mjs +4 -35
  166. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  167. package/es/components/message/index.mjs +1 -1
  168. package/es/components/message/src/message.mjs +151 -86
  169. package/es/components/message/src/message.mjs.map +1 -1
  170. package/es/components/message/src/message2.mjs +86 -151
  171. package/es/components/message/src/message2.mjs.map +1 -1
  172. package/es/components/message/src/method.mjs +2 -2
  173. package/es/components/pagination/index.d.ts +3 -0
  174. package/es/components/pagination/src/components/jumper.mjs +60 -9
  175. package/es/components/pagination/src/components/jumper.mjs.map +1 -1
  176. package/es/components/pagination/src/components/jumper.vue.d.ts +4 -0
  177. package/es/components/pagination/src/components/jumper2.mjs +9 -60
  178. package/es/components/pagination/src/components/jumper2.mjs.map +1 -1
  179. package/es/components/pagination/src/components/next.mjs +38 -19
  180. package/es/components/pagination/src/components/next.mjs.map +1 -1
  181. package/es/components/pagination/src/components/next2.mjs +19 -38
  182. package/es/components/pagination/src/components/next2.mjs.map +1 -1
  183. package/es/components/pagination/src/components/prev.mjs +38 -18
  184. package/es/components/pagination/src/components/prev.mjs.map +1 -1
  185. package/es/components/pagination/src/components/prev2.mjs +18 -38
  186. package/es/components/pagination/src/components/prev2.mjs.map +1 -1
  187. package/es/components/pagination/src/components/sizes.d.ts +1 -0
  188. package/es/components/pagination/src/components/sizes.mjs +1 -0
  189. package/es/components/pagination/src/components/sizes.mjs.map +1 -1
  190. package/es/components/pagination/src/components/sizes.vue.d.ts +4 -0
  191. package/es/components/pagination/src/components/sizes2.mjs +2 -1
  192. package/es/components/pagination/src/components/sizes2.mjs.map +1 -1
  193. package/es/components/pagination/src/components/total.mjs +28 -7
  194. package/es/components/pagination/src/components/total.mjs.map +1 -1
  195. package/es/components/pagination/src/components/total2.mjs +7 -28
  196. package/es/components/pagination/src/components/total2.mjs.map +1 -1
  197. package/es/components/pagination/src/pagination.d.ts +4 -0
  198. package/es/components/pagination/src/pagination.mjs +9 -4
  199. package/es/components/pagination/src/pagination.mjs.map +1 -1
  200. package/es/components/popconfirm/index.d.ts +1 -1
  201. package/es/components/popconfirm/src/popconfirm.mjs +2 -2
  202. package/es/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
  203. package/es/components/popover/src/popover.mjs +1 -1
  204. package/es/components/popper/index.mjs +2 -2
  205. package/es/components/popper/src/popper.mjs +25 -32
  206. package/es/components/popper/src/popper.mjs.map +1 -1
  207. package/es/components/popper/src/popper2.mjs +32 -25
  208. package/es/components/popper/src/popper2.mjs.map +1 -1
  209. package/es/components/progress/index.mjs +2 -2
  210. package/es/components/progress/src/progress.mjs +205 -59
  211. package/es/components/progress/src/progress.mjs.map +1 -1
  212. package/es/components/progress/src/progress2.mjs +59 -205
  213. package/es/components/progress/src/progress2.mjs.map +1 -1
  214. package/es/components/radio/index.mjs +4 -4
  215. package/es/components/radio/src/radio-button.mjs +67 -9
  216. package/es/components/radio/src/radio-button.mjs.map +1 -1
  217. package/es/components/radio/src/radio-button2.mjs +9 -67
  218. package/es/components/radio/src/radio-button2.mjs.map +1 -1
  219. package/es/components/radio/src/radio-group.mjs +1 -1
  220. package/es/components/radio/src/radio.mjs +35 -76
  221. package/es/components/radio/src/radio.mjs.map +1 -1
  222. package/es/components/radio/src/radio2.mjs +76 -35
  223. package/es/components/radio/src/radio2.mjs.map +1 -1
  224. package/es/components/rate/src/rate2.mjs +3 -2
  225. package/es/components/rate/src/rate2.mjs.map +1 -1
  226. package/es/components/resizable-columns/index.mjs +2 -2
  227. package/es/components/resizable-columns/src/resizable-columns.mjs +21 -264
  228. package/es/components/resizable-columns/src/resizable-columns.mjs.map +1 -1
  229. package/es/components/resizable-columns/src/resizable-columns2.mjs +264 -21
  230. package/es/components/resizable-columns/src/resizable-columns2.mjs.map +1 -1
  231. package/es/components/select/src/select.mjs +1 -1
  232. package/es/components/select/src/useSelect.mjs +3 -3
  233. package/es/components/select/src/useSelect.mjs.map +1 -1
  234. package/es/components/select-v2/src/defaults.mjs +1 -1
  235. package/es/components/skeleton/index.mjs +4 -4
  236. package/es/components/skeleton/src/skeleton-item.mjs +18 -23
  237. package/es/components/skeleton/src/skeleton-item.mjs.map +1 -1
  238. package/es/components/skeleton/src/skeleton-item2.mjs +23 -18
  239. package/es/components/skeleton/src/skeleton-item2.mjs.map +1 -1
  240. package/es/components/skeleton/src/skeleton.mjs +22 -49
  241. package/es/components/skeleton/src/skeleton.mjs.map +1 -1
  242. package/es/components/skeleton/src/skeleton2.mjs +49 -22
  243. package/es/components/skeleton/src/skeleton2.mjs.map +1 -1
  244. package/es/components/slider/index.d.ts +12 -1
  245. package/es/components/slider/src/slider.vue.d.ts +12 -1
  246. package/es/components/statistic/index.mjs +2 -2
  247. package/es/components/statistic/src/statistic.mjs +70 -25
  248. package/es/components/statistic/src/statistic.mjs.map +1 -1
  249. package/es/components/statistic/src/statistic2.mjs +25 -70
  250. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  251. package/es/components/switch/index.mjs +2 -2
  252. package/es/components/switch/src/switch.mjs +99 -267
  253. package/es/components/switch/src/switch.mjs.map +1 -1
  254. package/es/components/switch/src/switch2.mjs +267 -99
  255. package/es/components/switch/src/switch2.mjs.map +1 -1
  256. package/es/components/table/src/table-body/index.mjs +1 -1
  257. package/es/components/table/src/table-body/index.mjs.map +1 -1
  258. package/es/components/tabs/index.mjs +1 -1
  259. package/es/components/tabs/src/tab-bar.mjs +7 -75
  260. package/es/components/tabs/src/tab-bar.mjs.map +1 -1
  261. package/es/components/tabs/src/tab-bar2.mjs +75 -7
  262. package/es/components/tabs/src/tab-bar2.mjs.map +1 -1
  263. package/es/components/tabs/src/tab-nav.mjs +1 -1
  264. package/es/components/text/index.mjs +2 -2
  265. package/es/components/text/src/text.mjs +35 -22
  266. package/es/components/text/src/text.mjs.map +1 -1
  267. package/es/components/text/src/text2.mjs +22 -35
  268. package/es/components/text/src/text2.mjs.map +1 -1
  269. package/es/components/time-picker/src/common/picker.vue.d.ts +4 -0
  270. package/es/components/timeline/index.mjs +2 -2
  271. package/es/components/timeline/src/timeline-item.mjs +72 -42
  272. package/es/components/timeline/src/timeline-item.mjs.map +1 -1
  273. package/es/components/timeline/src/timeline-item2.mjs +42 -72
  274. package/es/components/timeline/src/timeline-item2.mjs.map +1 -1
  275. package/es/components/tooltip/index.mjs +1 -1
  276. package/es/components/tooltip/src/content.mjs +31 -179
  277. package/es/components/tooltip/src/content.mjs.map +1 -1
  278. package/es/components/tooltip/src/content2.mjs +179 -31
  279. package/es/components/tooltip/src/content2.mjs.map +1 -1
  280. package/es/components/tooltip/src/tooltip.mjs +2 -2
  281. package/es/components/tooltip/src/tooltip2.mjs +1 -1
  282. package/es/components/tooltip-v2/index.mjs +3 -3
  283. package/es/components/tooltip-v2/src/arrow.mjs +37 -22
  284. package/es/components/tooltip-v2/src/arrow.mjs.map +1 -1
  285. package/es/components/tooltip-v2/src/arrow2.mjs +22 -37
  286. package/es/components/tooltip-v2/src/arrow2.mjs.map +1 -1
  287. package/es/components/tooltip-v2/src/content2.mjs +1 -1
  288. package/es/components/tooltip-v2/src/tooltip.mjs +20 -77
  289. package/es/components/tooltip-v2/src/tooltip.mjs.map +1 -1
  290. package/es/components/tooltip-v2/src/tooltip2.mjs +77 -20
  291. package/es/components/tooltip-v2/src/tooltip2.mjs.map +1 -1
  292. package/es/components/transfer/index.d.ts +21 -1
  293. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  294. package/es/components/transfer/src/transfer-panel.mjs +128 -19
  295. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  296. package/es/components/transfer/src/transfer-panel.vue.d.ts +4 -0
  297. package/es/components/transfer/src/transfer-panel2.mjs +19 -128
  298. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  299. package/es/components/transfer/src/transfer.vue.d.ts +21 -1
  300. package/es/components/transfer/src/transfer2.mjs +1 -1
  301. package/es/components/upload/index.d.ts +58 -54
  302. package/es/components/upload/index.mjs +2 -2
  303. package/es/components/upload/src/upload-content.d.ts +1 -1
  304. package/es/components/upload/src/upload-content.vue.d.ts +20 -18
  305. package/es/components/upload/src/upload-content2.mjs +19 -7
  306. package/es/components/upload/src/upload-content2.mjs.map +1 -1
  307. package/es/components/upload/src/upload-dragger.mjs +72 -11
  308. package/es/components/upload/src/upload-dragger.mjs.map +1 -1
  309. package/es/components/upload/src/upload-dragger2.mjs +11 -72
  310. package/es/components/upload/src/upload-dragger2.mjs.map +1 -1
  311. package/es/components/upload/src/upload-list.mjs +26 -179
  312. package/es/components/upload/src/upload-list.mjs.map +1 -1
  313. package/es/components/upload/src/upload-list2.mjs +179 -26
  314. package/es/components/upload/src/upload-list2.mjs.map +1 -1
  315. package/es/components/upload/src/upload.d.ts +4 -3
  316. package/es/components/upload/src/upload.mjs +1 -1
  317. package/es/components/upload/src/upload.mjs.map +1 -1
  318. package/es/components/upload/src/upload.vue.d.ts +58 -54
  319. package/es/components/upload/src/upload2.mjs +4 -6
  320. package/es/components/upload/src/upload2.mjs.map +1 -1
  321. package/es/components/upload/src/use-handlers.d.ts +2 -1
  322. package/es/components/upload/src/use-handlers.mjs +4 -3
  323. package/es/components/upload/src/use-handlers.mjs.map +1 -1
  324. package/es/components/visual-hidden/index.mjs +3 -3
  325. package/es/components/visual-hidden/src/visual-hidden.mjs +35 -7
  326. package/es/components/visual-hidden/src/visual-hidden.mjs.map +1 -1
  327. package/es/components/visual-hidden/src/visual-hidden2.mjs +7 -35
  328. package/es/components/visual-hidden/src/visual-hidden2.mjs.map +1 -1
  329. package/es/index.mjs +35 -35
  330. package/es/locale/lang/nl.mjs +4 -4
  331. package/es/locale/lang/nl.mjs.map +1 -1
  332. package/lib/components/affix/index.js +2 -2
  333. package/lib/components/affix/src/affix.js +27 -119
  334. package/lib/components/affix/src/affix.js.map +1 -1
  335. package/lib/components/affix/src/affix2.js +119 -27
  336. package/lib/components/affix/src/affix2.js.map +1 -1
  337. package/lib/components/alert/index.js +2 -2
  338. package/lib/components/alert/src/alert.js +39 -102
  339. package/lib/components/alert/src/alert.js.map +1 -1
  340. package/lib/components/alert/src/alert2.js +102 -39
  341. package/lib/components/alert/src/alert2.js.map +1 -1
  342. package/lib/components/autocomplete/index.d.ts +12 -1
  343. package/lib/components/autocomplete/src/autocomplete.js +1 -1
  344. package/lib/components/autocomplete/src/autocomplete.vue.d.ts +12 -1
  345. package/lib/components/avatar/index.js +2 -2
  346. package/lib/components/avatar/src/avatar.js +75 -35
  347. package/lib/components/avatar/src/avatar.js.map +1 -1
  348. package/lib/components/avatar/src/avatar2.js +35 -75
  349. package/lib/components/avatar/src/avatar2.js.map +1 -1
  350. package/lib/components/backtop/index.js +2 -2
  351. package/lib/components/backtop/src/backtop.js +24 -61
  352. package/lib/components/backtop/src/backtop.js.map +1 -1
  353. package/lib/components/backtop/src/backtop2.js +61 -24
  354. package/lib/components/backtop/src/backtop2.js.map +1 -1
  355. package/lib/components/breadcrumb/index.js +4 -4
  356. package/lib/components/breadcrumb/src/breadcrumb-item.js +11 -56
  357. package/lib/components/breadcrumb/src/breadcrumb-item.js.map +1 -1
  358. package/lib/components/breadcrumb/src/breadcrumb-item2.js +56 -11
  359. package/lib/components/breadcrumb/src/breadcrumb-item2.js.map +1 -1
  360. package/lib/components/breadcrumb/src/breadcrumb.js +11 -36
  361. package/lib/components/breadcrumb/src/breadcrumb.js.map +1 -1
  362. package/lib/components/breadcrumb/src/breadcrumb2.js +36 -11
  363. package/lib/components/breadcrumb/src/breadcrumb2.js.map +1 -1
  364. package/lib/components/button/index.d.ts +1 -1
  365. package/lib/components/button/index.js +2 -2
  366. package/lib/components/button/src/button-group2.js +1 -1
  367. package/lib/components/button/src/button.js +76 -60
  368. package/lib/components/button/src/button.js.map +1 -1
  369. package/lib/components/button/src/button.vue.d.ts +1 -1
  370. package/lib/components/button/src/button2.js +60 -76
  371. package/lib/components/button/src/button2.js.map +1 -1
  372. package/lib/components/calendar/index.d.ts +1 -1
  373. package/lib/components/calendar/src/calendar.vue.d.ts +1 -1
  374. package/lib/components/calendar/src/calendar2.js +1 -1
  375. package/lib/components/calendar/src/date-table.js +87 -37
  376. package/lib/components/calendar/src/date-table.js.map +1 -1
  377. package/lib/components/calendar/src/date-table2.js +37 -87
  378. package/lib/components/calendar/src/date-table2.js.map +1 -1
  379. package/lib/components/calendar/src/use-date-table.js +1 -1
  380. package/lib/components/cascader/index.d.ts +24 -2
  381. package/lib/components/cascader/src/cascader.js +1 -1
  382. package/lib/components/cascader/src/cascader.vue.d.ts +12 -1
  383. package/lib/components/check-tag/index.js +2 -2
  384. package/lib/components/check-tag/src/check-tag.js +13 -31
  385. package/lib/components/check-tag/src/check-tag.js.map +1 -1
  386. package/lib/components/check-tag/src/check-tag2.js +31 -13
  387. package/lib/components/check-tag/src/check-tag2.js.map +1 -1
  388. package/lib/components/checkbox/index.js +2 -2
  389. package/lib/components/checkbox/src/checkbox-group.js +34 -72
  390. package/lib/components/checkbox/src/checkbox-group.js.map +1 -1
  391. package/lib/components/checkbox/src/checkbox-group2.js +72 -34
  392. package/lib/components/checkbox/src/checkbox-group2.js.map +1 -1
  393. package/lib/components/col/index.js +2 -2
  394. package/lib/components/col/src/col.js +43 -66
  395. package/lib/components/col/src/col.js.map +1 -1
  396. package/lib/components/col/src/col2.js +66 -43
  397. package/lib/components/col/src/col2.js.map +1 -1
  398. package/lib/components/collapse/index.js +4 -4
  399. package/lib/components/collapse/src/collapse-item.js +14 -99
  400. package/lib/components/collapse/src/collapse-item.js.map +1 -1
  401. package/lib/components/collapse/src/collapse-item2.js +93 -14
  402. package/lib/components/collapse/src/collapse-item2.js.map +1 -1
  403. package/lib/components/collapse/src/collapse.js +19 -30
  404. package/lib/components/collapse/src/collapse.js.map +1 -1
  405. package/lib/components/collapse/src/collapse2.js +28 -19
  406. package/lib/components/collapse/src/collapse2.js.map +1 -1
  407. package/lib/components/color-picker/index.d.ts +5 -1
  408. package/lib/components/color-picker/index.js +2 -2
  409. package/lib/components/color-picker/src/color-picker.js +352 -58
  410. package/lib/components/color-picker/src/color-picker.js.map +1 -1
  411. package/lib/components/color-picker/src/color-picker.vue.d.ts +5 -1
  412. package/lib/components/color-picker/src/color-picker2.js +58 -351
  413. package/lib/components/color-picker/src/color-picker2.js.map +1 -1
  414. package/lib/components/color-picker/src/components/predefine.js +1 -1
  415. package/lib/components/date-picker/src/composables/use-basic-date-table.d.ts +246 -0
  416. package/lib/components/date-picker/src/composables/use-basic-date-table.js +363 -0
  417. package/lib/components/date-picker/src/composables/use-basic-date-table.js.map +1 -0
  418. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js +36 -314
  419. package/lib/components/date-picker/src/date-picker-com/basic-date-table.js.map +1 -1
  420. package/lib/components/date-picker/src/date-picker-com/basic-date-table.vue.d.ts +93 -354
  421. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.vue.d.ts +27 -281
  422. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js +24 -12
  423. package/lib/components/date-picker/src/date-picker-com/panel-date-range.js.map +1 -1
  424. package/lib/components/date-picker/src/date-picker-com/panel-date-range.vue.d.ts +27 -281
  425. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js +1 -0
  426. package/lib/components/date-picker/src/date-picker-com/panel-month-range.js.map +1 -1
  427. package/lib/components/date-picker/src/panel-utils.d.ts +54 -562
  428. package/lib/components/date-picker/src/props/basic-date-table.d.ts +2 -0
  429. package/lib/components/date-picker/src/props/basic-date-table.js +2 -0
  430. package/lib/components/date-picker/src/props/basic-date-table.js.map +1 -1
  431. package/lib/components/date-picker/src/props/panel-month-range.js +5 -1
  432. package/lib/components/date-picker/src/props/panel-month-range.js.map +1 -1
  433. package/lib/components/descriptions/src/description2.js +1 -1
  434. package/lib/components/descriptions/src/descriptions-row.js +64 -7
  435. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  436. package/lib/components/descriptions/src/descriptions-row2.js +7 -64
  437. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  438. package/lib/components/drawer/index.js +2 -2
  439. package/lib/components/drawer/src/drawer.js +187 -30
  440. package/lib/components/drawer/src/drawer.js.map +1 -1
  441. package/lib/components/drawer/src/drawer2.js +30 -187
  442. package/lib/components/drawer/src/drawer2.js.map +1 -1
  443. package/lib/components/dropdown/src/dropdown.js +1 -1
  444. package/lib/components/empty/index.js +2 -2
  445. package/lib/components/empty/src/empty.js +11 -55
  446. package/lib/components/empty/src/empty.js.map +1 -1
  447. package/lib/components/empty/src/empty2.js +55 -11
  448. package/lib/components/empty/src/empty2.js.map +1 -1
  449. package/lib/components/form/src/types.d.ts +3 -2
  450. package/lib/components/icon/index.js +2 -2
  451. package/lib/components/icon/src/icon.js +8 -36
  452. package/lib/components/icon/src/icon.js.map +1 -1
  453. package/lib/components/icon/src/icon2.js +36 -8
  454. package/lib/components/icon/src/icon2.js.map +1 -1
  455. package/lib/components/image/index.d.ts +4 -1
  456. package/lib/components/image/src/image.vue.d.ts +4 -1
  457. package/lib/components/image-viewer/index.d.ts +4 -1
  458. package/lib/components/image-viewer/src/image-viewer.d.ts +1 -0
  459. package/lib/components/image-viewer/src/image-viewer.js +2 -1
  460. package/lib/components/image-viewer/src/image-viewer.js.map +1 -1
  461. package/lib/components/image-viewer/src/image-viewer.vue.d.ts +4 -1
  462. package/lib/components/image-viewer/src/image-viewer2.js +2 -0
  463. package/lib/components/image-viewer/src/image-viewer2.js.map +1 -1
  464. package/lib/components/index.js +35 -35
  465. package/lib/components/input/index.d.ts +4 -0
  466. package/lib/components/input/index.js +2 -2
  467. package/lib/components/input/src/input.d.ts +1 -0
  468. package/lib/components/input/src/input.js +469 -114
  469. package/lib/components/input/src/input.js.map +1 -1
  470. package/lib/components/input/src/input.vue.d.ts +4 -0
  471. package/lib/components/input/src/input2.js +118 -467
  472. package/lib/components/input/src/input2.js.map +1 -1
  473. package/lib/components/input-number/index.d.ts +12 -1
  474. package/lib/components/input-number/src/input-number.vue.d.ts +12 -1
  475. package/lib/components/link/index.js +2 -2
  476. package/lib/components/link/src/link.js +50 -22
  477. package/lib/components/link/src/link.js.map +1 -1
  478. package/lib/components/link/src/link2.js +22 -50
  479. package/lib/components/link/src/link2.js.map +1 -1
  480. package/lib/components/menu/index.js +2 -2
  481. package/lib/components/menu/src/menu-item-group.js +35 -4
  482. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  483. package/lib/components/menu/src/menu-item-group2.js +4 -35
  484. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  485. package/lib/components/message/index.js +1 -1
  486. package/lib/components/message/src/message.js +150 -88
  487. package/lib/components/message/src/message.js.map +1 -1
  488. package/lib/components/message/src/message2.js +88 -150
  489. package/lib/components/message/src/message2.js.map +1 -1
  490. package/lib/components/message/src/method.js +2 -2
  491. package/lib/components/pagination/index.d.ts +3 -0
  492. package/lib/components/pagination/src/components/jumper.js +60 -9
  493. package/lib/components/pagination/src/components/jumper.js.map +1 -1
  494. package/lib/components/pagination/src/components/jumper.vue.d.ts +4 -0
  495. package/lib/components/pagination/src/components/jumper2.js +9 -60
  496. package/lib/components/pagination/src/components/jumper2.js.map +1 -1
  497. package/lib/components/pagination/src/components/next.js +38 -19
  498. package/lib/components/pagination/src/components/next.js.map +1 -1
  499. package/lib/components/pagination/src/components/next2.js +19 -38
  500. package/lib/components/pagination/src/components/next2.js.map +1 -1
  501. package/lib/components/pagination/src/components/prev.js +38 -19
  502. package/lib/components/pagination/src/components/prev.js.map +1 -1
  503. package/lib/components/pagination/src/components/prev2.js +19 -38
  504. package/lib/components/pagination/src/components/prev2.js.map +1 -1
  505. package/lib/components/pagination/src/components/sizes.d.ts +1 -0
  506. package/lib/components/pagination/src/components/sizes.js +1 -0
  507. package/lib/components/pagination/src/components/sizes.js.map +1 -1
  508. package/lib/components/pagination/src/components/sizes.vue.d.ts +4 -0
  509. package/lib/components/pagination/src/components/sizes2.js +2 -1
  510. package/lib/components/pagination/src/components/sizes2.js.map +1 -1
  511. package/lib/components/pagination/src/components/total.js +28 -7
  512. package/lib/components/pagination/src/components/total.js.map +1 -1
  513. package/lib/components/pagination/src/components/total2.js +7 -28
  514. package/lib/components/pagination/src/components/total2.js.map +1 -1
  515. package/lib/components/pagination/src/pagination.d.ts +4 -0
  516. package/lib/components/pagination/src/pagination.js +9 -4
  517. package/lib/components/pagination/src/pagination.js.map +1 -1
  518. package/lib/components/popconfirm/index.d.ts +1 -1
  519. package/lib/components/popconfirm/src/popconfirm.js +2 -2
  520. package/lib/components/popconfirm/src/popconfirm.vue.d.ts +1 -1
  521. package/lib/components/popover/src/popover.js +1 -1
  522. package/lib/components/popper/index.js +2 -2
  523. package/lib/components/popper/src/popper.js +28 -32
  524. package/lib/components/popper/src/popper.js.map +1 -1
  525. package/lib/components/popper/src/popper2.js +32 -28
  526. package/lib/components/popper/src/popper2.js.map +1 -1
  527. package/lib/components/progress/index.js +2 -2
  528. package/lib/components/progress/src/progress.js +205 -59
  529. package/lib/components/progress/src/progress.js.map +1 -1
  530. package/lib/components/progress/src/progress2.js +59 -205
  531. package/lib/components/progress/src/progress2.js.map +1 -1
  532. package/lib/components/radio/index.js +4 -4
  533. package/lib/components/radio/src/radio-button.js +67 -9
  534. package/lib/components/radio/src/radio-button.js.map +1 -1
  535. package/lib/components/radio/src/radio-button2.js +9 -67
  536. package/lib/components/radio/src/radio-button2.js.map +1 -1
  537. package/lib/components/radio/src/radio-group.js +1 -1
  538. package/lib/components/radio/src/radio.js +37 -76
  539. package/lib/components/radio/src/radio.js.map +1 -1
  540. package/lib/components/radio/src/radio2.js +76 -37
  541. package/lib/components/radio/src/radio2.js.map +1 -1
  542. package/lib/components/rate/src/rate2.js +3 -2
  543. package/lib/components/rate/src/rate2.js.map +1 -1
  544. package/lib/components/resizable-columns/index.js +2 -2
  545. package/lib/components/resizable-columns/src/resizable-columns.js +21 -264
  546. package/lib/components/resizable-columns/src/resizable-columns.js.map +1 -1
  547. package/lib/components/resizable-columns/src/resizable-columns2.js +264 -21
  548. package/lib/components/resizable-columns/src/resizable-columns2.js.map +1 -1
  549. package/lib/components/select/src/select.js +1 -1
  550. package/lib/components/select/src/useSelect.js +3 -3
  551. package/lib/components/select/src/useSelect.js.map +1 -1
  552. package/lib/components/select-v2/src/defaults.js +1 -1
  553. package/lib/components/skeleton/index.js +4 -4
  554. package/lib/components/skeleton/src/skeleton-item.js +18 -23
  555. package/lib/components/skeleton/src/skeleton-item.js.map +1 -1
  556. package/lib/components/skeleton/src/skeleton-item2.js +23 -18
  557. package/lib/components/skeleton/src/skeleton-item2.js.map +1 -1
  558. package/lib/components/skeleton/src/skeleton.js +22 -49
  559. package/lib/components/skeleton/src/skeleton.js.map +1 -1
  560. package/lib/components/skeleton/src/skeleton2.js +49 -22
  561. package/lib/components/skeleton/src/skeleton2.js.map +1 -1
  562. package/lib/components/slider/index.d.ts +12 -1
  563. package/lib/components/slider/src/slider.vue.d.ts +12 -1
  564. package/lib/components/statistic/index.js +2 -2
  565. package/lib/components/statistic/src/statistic.js +70 -25
  566. package/lib/components/statistic/src/statistic.js.map +1 -1
  567. package/lib/components/statistic/src/statistic2.js +25 -70
  568. package/lib/components/statistic/src/statistic2.js.map +1 -1
  569. package/lib/components/switch/index.js +2 -2
  570. package/lib/components/switch/src/switch.js +99 -266
  571. package/lib/components/switch/src/switch.js.map +1 -1
  572. package/lib/components/switch/src/switch2.js +266 -99
  573. package/lib/components/switch/src/switch2.js.map +1 -1
  574. package/lib/components/table/src/table-body/index.js +1 -1
  575. package/lib/components/table/src/table-body/index.js.map +1 -1
  576. package/lib/components/tabs/index.js +1 -1
  577. package/lib/components/tabs/src/tab-bar.js +7 -75
  578. package/lib/components/tabs/src/tab-bar.js.map +1 -1
  579. package/lib/components/tabs/src/tab-bar2.js +75 -7
  580. package/lib/components/tabs/src/tab-bar2.js.map +1 -1
  581. package/lib/components/tabs/src/tab-nav.js +1 -1
  582. package/lib/components/text/index.js +2 -2
  583. package/lib/components/text/src/text.js +35 -22
  584. package/lib/components/text/src/text.js.map +1 -1
  585. package/lib/components/text/src/text2.js +22 -35
  586. package/lib/components/text/src/text2.js.map +1 -1
  587. package/lib/components/time-picker/src/common/picker.vue.d.ts +4 -0
  588. package/lib/components/timeline/index.js +2 -2
  589. package/lib/components/timeline/src/timeline-item.js +72 -42
  590. package/lib/components/timeline/src/timeline-item.js.map +1 -1
  591. package/lib/components/timeline/src/timeline-item2.js +42 -72
  592. package/lib/components/timeline/src/timeline-item2.js.map +1 -1
  593. package/lib/components/tooltip/index.js +1 -1
  594. package/lib/components/tooltip/src/content.js +31 -179
  595. package/lib/components/tooltip/src/content.js.map +1 -1
  596. package/lib/components/tooltip/src/content2.js +179 -31
  597. package/lib/components/tooltip/src/content2.js.map +1 -1
  598. package/lib/components/tooltip/src/tooltip.js +2 -2
  599. package/lib/components/tooltip/src/tooltip2.js +1 -1
  600. package/lib/components/tooltip-v2/index.js +3 -3
  601. package/lib/components/tooltip-v2/src/arrow.js +37 -23
  602. package/lib/components/tooltip-v2/src/arrow.js.map +1 -1
  603. package/lib/components/tooltip-v2/src/arrow2.js +23 -37
  604. package/lib/components/tooltip-v2/src/arrow2.js.map +1 -1
  605. package/lib/components/tooltip-v2/src/content2.js +1 -1
  606. package/lib/components/tooltip-v2/src/tooltip.js +20 -77
  607. package/lib/components/tooltip-v2/src/tooltip.js.map +1 -1
  608. package/lib/components/tooltip-v2/src/tooltip2.js +77 -20
  609. package/lib/components/tooltip-v2/src/tooltip2.js.map +1 -1
  610. package/lib/components/transfer/index.d.ts +21 -1
  611. package/lib/components/transfer/src/composables/use-check.js +1 -1
  612. package/lib/components/transfer/src/transfer-panel.js +128 -21
  613. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  614. package/lib/components/transfer/src/transfer-panel.vue.d.ts +4 -0
  615. package/lib/components/transfer/src/transfer-panel2.js +21 -128
  616. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  617. package/lib/components/transfer/src/transfer.vue.d.ts +21 -1
  618. package/lib/components/transfer/src/transfer2.js +1 -1
  619. package/lib/components/upload/index.d.ts +58 -54
  620. package/lib/components/upload/index.js +2 -2
  621. package/lib/components/upload/src/upload-content.d.ts +1 -1
  622. package/lib/components/upload/src/upload-content.vue.d.ts +20 -18
  623. package/lib/components/upload/src/upload-content2.js +17 -5
  624. package/lib/components/upload/src/upload-content2.js.map +1 -1
  625. package/lib/components/upload/src/upload-dragger.js +72 -12
  626. package/lib/components/upload/src/upload-dragger.js.map +1 -1
  627. package/lib/components/upload/src/upload-dragger2.js +12 -72
  628. package/lib/components/upload/src/upload-dragger2.js.map +1 -1
  629. package/lib/components/upload/src/upload-list.js +27 -179
  630. package/lib/components/upload/src/upload-list.js.map +1 -1
  631. package/lib/components/upload/src/upload-list2.js +179 -27
  632. package/lib/components/upload/src/upload-list2.js.map +1 -1
  633. package/lib/components/upload/src/upload.d.ts +4 -3
  634. package/lib/components/upload/src/upload.js +1 -1
  635. package/lib/components/upload/src/upload.js.map +1 -1
  636. package/lib/components/upload/src/upload.vue.d.ts +58 -54
  637. package/lib/components/upload/src/upload2.js +4 -6
  638. package/lib/components/upload/src/upload2.js.map +1 -1
  639. package/lib/components/upload/src/use-handlers.d.ts +2 -1
  640. package/lib/components/upload/src/use-handlers.js +4 -3
  641. package/lib/components/upload/src/use-handlers.js.map +1 -1
  642. package/lib/components/visual-hidden/index.js +2 -2
  643. package/lib/components/visual-hidden/src/visual-hidden.js +35 -7
  644. package/lib/components/visual-hidden/src/visual-hidden.js.map +1 -1
  645. package/lib/components/visual-hidden/src/visual-hidden2.js +7 -35
  646. package/lib/components/visual-hidden/src/visual-hidden2.js.map +1 -1
  647. package/lib/index.js +35 -35
  648. package/lib/locale/lang/nl.js +4 -4
  649. package/lib/locale/lang/nl.js.map +1 -1
  650. package/package.json +1 -1
  651. package/theme-chalk/el-collapse.css +1 -1
  652. package/theme-chalk/el-resizable-columns.css +1 -1
  653. package/theme-chalk/el-table.css +1 -1
  654. package/theme-chalk/index.css +1 -1
  655. package/theme-chalk/src/collapse.scss +3 -0
  656. package/theme-chalk/src/resizable-columns.scss +3 -3
  657. package/theme-chalk/src/table.scss +6 -0
  658. package/web-types.json +1 -1
@@ -0,0 +1,246 @@
1
+ import dayjs from 'dayjs';
2
+ import type { SetupContext } from 'vue';
3
+ import type { DateCell } from '../date-picker.type';
4
+ import type { BasicDateTableEmits, BasicDateTableProps } from '../props/basic-date-table';
5
+ export declare const useBasicDateTable: (props: BasicDateTableProps, emit: SetupContext<BasicDateTableEmits>['emit']) => {
6
+ WEEKS: import("vue").ComputedRef<string[]>;
7
+ rows: import("vue").ComputedRef<{
8
+ column?: number | undefined;
9
+ customClass?: string | undefined;
10
+ disabled?: boolean | undefined;
11
+ end?: boolean | undefined;
12
+ inRange?: boolean | undefined;
13
+ row?: number | undefined;
14
+ selected?: {
15
+ clone: () => dayjs.Dayjs;
16
+ isValid: () => boolean;
17
+ year: {
18
+ (): number;
19
+ (value: number): dayjs.Dayjs;
20
+ };
21
+ month: {
22
+ (): number;
23
+ (value: number): dayjs.Dayjs;
24
+ };
25
+ date: {
26
+ (): number;
27
+ (value: number): dayjs.Dayjs;
28
+ };
29
+ day: {
30
+ (): number;
31
+ (value: number): dayjs.Dayjs;
32
+ };
33
+ hour: {
34
+ (): number;
35
+ (value: number): dayjs.Dayjs;
36
+ };
37
+ minute: {
38
+ (): number;
39
+ (value: number): dayjs.Dayjs;
40
+ };
41
+ second: {
42
+ (): number;
43
+ (value: number): dayjs.Dayjs;
44
+ };
45
+ millisecond: {
46
+ (): number;
47
+ (value: number): dayjs.Dayjs;
48
+ };
49
+ set: (unit: dayjs.UnitType, value: number) => dayjs.Dayjs;
50
+ get: (unit: dayjs.UnitType) => number;
51
+ add: (value: number, unit?: dayjs.ManipulateType | undefined) => dayjs.Dayjs;
52
+ subtract: (value: number, unit?: dayjs.ManipulateType | undefined) => dayjs.Dayjs;
53
+ startOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
54
+ endOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
55
+ format: (template?: string | undefined) => string;
56
+ diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "m" | "s" | "day" | "hour" | "minute" | "second" | "millisecond" | "hours" | "minutes" | "seconds" | "milliseconds" | "days" | "years" | "d" | "h" | "ms" | "w" | "quarter" | "quarters" | "Q" | undefined, float?: boolean | undefined) => number;
57
+ valueOf: () => number;
58
+ unix: () => number;
59
+ daysInMonth: () => number;
60
+ toDate: () => Date;
61
+ toJSON: () => string;
62
+ toISOString: () => string;
63
+ toString: () => string;
64
+ utcOffset: () => number;
65
+ isBefore: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
66
+ isSame: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
67
+ isAfter: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
68
+ locale: {
69
+ (): string;
70
+ (preset: string | ILocale, object?: Partial<ILocale> | undefined): dayjs.Dayjs;
71
+ };
72
+ localeData: () => dayjs.InstanceLocaleDataReturn;
73
+ week: {
74
+ (): number;
75
+ (value: number): dayjs.Dayjs;
76
+ };
77
+ weekYear: () => number;
78
+ dayOfYear: {
79
+ (): number;
80
+ (value: number): dayjs.Dayjs;
81
+ };
82
+ isSameOrAfter: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
83
+ isSameOrBefore: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
84
+ } | undefined;
85
+ isCurrent?: boolean | undefined;
86
+ isSelected?: boolean | undefined;
87
+ start?: boolean | undefined;
88
+ text?: number | undefined;
89
+ timestamp?: number | undefined;
90
+ date?: {
91
+ toString: () => string;
92
+ toDateString: () => string;
93
+ toTimeString: () => string;
94
+ toLocaleString: {
95
+ (): string;
96
+ (locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
97
+ };
98
+ toLocaleDateString: {
99
+ (): string;
100
+ (locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
101
+ };
102
+ toLocaleTimeString: {
103
+ (): string;
104
+ (locales?: string | string[] | undefined, options?: Intl.DateTimeFormatOptions | undefined): string;
105
+ };
106
+ valueOf: () => number;
107
+ getTime: () => number;
108
+ getFullYear: () => number;
109
+ getUTCFullYear: () => number;
110
+ getMonth: () => number;
111
+ getUTCMonth: () => number;
112
+ getDate: () => number;
113
+ getUTCDate: () => number;
114
+ getDay: () => number;
115
+ getUTCDay: () => number;
116
+ getHours: () => number;
117
+ getUTCHours: () => number;
118
+ getMinutes: () => number;
119
+ getUTCMinutes: () => number;
120
+ getSeconds: () => number;
121
+ getUTCSeconds: () => number;
122
+ getMilliseconds: () => number;
123
+ getUTCMilliseconds: () => number;
124
+ getTimezoneOffset: () => number;
125
+ setTime: (time: number) => number;
126
+ setMilliseconds: (ms: number) => number;
127
+ setUTCMilliseconds: (ms: number) => number;
128
+ setSeconds: (sec: number, ms?: number | undefined) => number;
129
+ setUTCSeconds: (sec: number, ms?: number | undefined) => number;
130
+ setMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
131
+ setUTCMinutes: (min: number, sec?: number | undefined, ms?: number | undefined) => number;
132
+ setHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
133
+ setUTCHours: (hours: number, min?: number | undefined, sec?: number | undefined, ms?: number | undefined) => number;
134
+ setDate: (date: number) => number;
135
+ setUTCDate: (date: number) => number;
136
+ setMonth: (month: number, date?: number | undefined) => number;
137
+ setUTCMonth: (month: number, date?: number | undefined) => number;
138
+ setFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
139
+ setUTCFullYear: (year: number, month?: number | undefined, date?: number | undefined) => number;
140
+ toUTCString: () => string;
141
+ toISOString: () => string;
142
+ toJSON: (key?: any) => string;
143
+ [Symbol.toPrimitive]: {
144
+ (hint: "default"): string;
145
+ (hint: "string"): string;
146
+ (hint: "number"): number;
147
+ (hint: string): string | number;
148
+ };
149
+ } | undefined;
150
+ dayjs?: {
151
+ clone: () => dayjs.Dayjs;
152
+ isValid: () => boolean;
153
+ year: {
154
+ (): number;
155
+ (value: number): dayjs.Dayjs;
156
+ };
157
+ month: {
158
+ (): number;
159
+ (value: number): dayjs.Dayjs;
160
+ };
161
+ date: {
162
+ (): number;
163
+ (value: number): dayjs.Dayjs;
164
+ };
165
+ day: {
166
+ (): number;
167
+ (value: number): dayjs.Dayjs;
168
+ };
169
+ hour: {
170
+ (): number;
171
+ (value: number): dayjs.Dayjs;
172
+ };
173
+ minute: {
174
+ (): number;
175
+ (value: number): dayjs.Dayjs;
176
+ };
177
+ second: {
178
+ (): number;
179
+ (value: number): dayjs.Dayjs;
180
+ };
181
+ millisecond: {
182
+ (): number;
183
+ (value: number): dayjs.Dayjs;
184
+ };
185
+ set: (unit: dayjs.UnitType, value: number) => dayjs.Dayjs;
186
+ get: (unit: dayjs.UnitType) => number;
187
+ add: (value: number, unit?: dayjs.ManipulateType | undefined) => dayjs.Dayjs;
188
+ subtract: (value: number, unit?: dayjs.ManipulateType | undefined) => dayjs.Dayjs;
189
+ startOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
190
+ endOf: (unit: dayjs.OpUnitType) => dayjs.Dayjs;
191
+ format: (template?: string | undefined) => string;
192
+ diff: (date?: string | number | Date | dayjs.Dayjs | null | undefined, unit?: "year" | "month" | "date" | "dates" | "week" | "D" | "M" | "y" | "weeks" | "months" | "m" | "s" | "day" | "hour" | "minute" | "second" | "millisecond" | "hours" | "minutes" | "seconds" | "milliseconds" | "days" | "years" | "d" | "h" | "ms" | "w" | "quarter" | "quarters" | "Q" | undefined, float?: boolean | undefined) => number;
193
+ valueOf: () => number;
194
+ unix: () => number;
195
+ daysInMonth: () => number;
196
+ toDate: () => Date;
197
+ toJSON: () => string;
198
+ toISOString: () => string;
199
+ toString: () => string;
200
+ utcOffset: () => number;
201
+ isBefore: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
202
+ isSame: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
203
+ isAfter: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
204
+ locale: {
205
+ (): string;
206
+ (preset: string | ILocale, object?: Partial<ILocale> | undefined): dayjs.Dayjs;
207
+ };
208
+ localeData: () => dayjs.InstanceLocaleDataReturn;
209
+ week: {
210
+ (): number;
211
+ (value: number): dayjs.Dayjs;
212
+ };
213
+ weekYear: () => number;
214
+ dayOfYear: {
215
+ (): number;
216
+ (value: number): dayjs.Dayjs;
217
+ };
218
+ isSameOrAfter: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
219
+ isSameOrBefore: (date: string | number | Date | dayjs.Dayjs | null | undefined, unit?: dayjs.OpUnitType | undefined) => boolean;
220
+ } | undefined;
221
+ type?: ("week" | "normal" | "prev-month" | "next-month" | "today") | undefined;
222
+ }[][]>;
223
+ tbodyRef: import("vue").Ref<HTMLElement | undefined>;
224
+ currentCellRef: import("vue").Ref<HTMLElement | undefined>;
225
+ focus: () => Promise<void | undefined>;
226
+ isCurrent: (cell: DateCell) => boolean;
227
+ isWeekActive: (cell: DateCell) => boolean;
228
+ isSelectedCell: (cell: DateCell) => boolean | undefined;
229
+ handlePickDate: (event: FocusEvent | MouseEvent, isKeyboardMovement?: boolean) => void;
230
+ handleMouseUp: (event: MouseEvent) => void;
231
+ handleMouseDown: (event: MouseEvent) => void;
232
+ handleMouseMove: (event: MouseEvent) => void;
233
+ handleFocus: (event: FocusEvent) => void;
234
+ };
235
+ export declare const useBasicDateTableDOM: (props: BasicDateTableProps, { isCurrent, isWeekActive, }: Pick<ReturnType<typeof useBasicDateTable>, 'isCurrent' | 'isWeekActive'>) => {
236
+ tableKls: import("vue").ComputedRef<(string | {
237
+ 'is-week-mode': boolean;
238
+ })[]>;
239
+ tableLabel: import("vue").ComputedRef<string>;
240
+ weekLabel: import("vue").ComputedRef<string>;
241
+ getCellClasses: (cell: DateCell) => string;
242
+ getRowKls: (cell: DateCell) => (string | {
243
+ current: boolean;
244
+ })[];
245
+ t: import("element-pe/es/hooks").Translator;
246
+ };
@@ -0,0 +1,354 @@
1
+ import { ref, computed, unref, nextTick } from 'vue';
2
+ import '../../../config-provider/index.mjs';
3
+ import dayjs from 'dayjs';
4
+ import { flatten } from 'lodash-unified';
5
+ import '../../../../hooks/index.mjs';
6
+ import '../../../../utils/index.mjs';
7
+ import { buildPickerTable } from '../utils.mjs';
8
+ import { useLocale } from '../../../../hooks/use-locale/index.mjs';
9
+ import { castArray } from '../../../../utils/arrays.mjs';
10
+ import { watch } from '../../../config-provider/src/for-editor.mjs';
11
+ import { useNamespace } from '../../../../hooks/use-namespace/index.mjs';
12
+
13
+ const isNormalDay = (type = "") => {
14
+ return ["normal", "today"].includes(type);
15
+ };
16
+ const useBasicDateTable = (props, emit) => {
17
+ const { lang } = useLocale();
18
+ const tbodyRef = ref();
19
+ const currentCellRef = ref();
20
+ const lastRow = ref();
21
+ const lastColumn = ref();
22
+ const tableRows = ref([[], [], [], [], [], []]);
23
+ let focusWithClick = false;
24
+ const firstDayOfWeek = props.date.$locale().weekStart || 7;
25
+ const WEEKS_CONSTANT = props.date.locale("en").localeData().weekdaysShort().map((_) => _.toLowerCase());
26
+ const offsetDay = computed(() => {
27
+ return firstDayOfWeek > 3 ? 7 - firstDayOfWeek : -firstDayOfWeek;
28
+ });
29
+ const startDate = computed(() => {
30
+ const startDayOfMonth = props.date.startOf("month");
31
+ return startDayOfMonth.subtract(startDayOfMonth.day() || 7, "day");
32
+ });
33
+ const WEEKS = computed(() => {
34
+ return WEEKS_CONSTANT.concat(WEEKS_CONSTANT).slice(firstDayOfWeek, firstDayOfWeek + 7);
35
+ });
36
+ const hasCurrent = computed(() => {
37
+ return flatten(unref(rows)).some((row) => {
38
+ return row.isCurrent;
39
+ });
40
+ });
41
+ const days = computed(() => {
42
+ const startOfMonth = props.date.startOf("month");
43
+ const startOfMonthDay = startOfMonth.day() || 7;
44
+ const dateCountOfMonth = startOfMonth.daysInMonth();
45
+ const dateCountOfLastMonth = startOfMonth.subtract(1, "month").daysInMonth();
46
+ return {
47
+ startOfMonthDay,
48
+ dateCountOfMonth,
49
+ dateCountOfLastMonth
50
+ };
51
+ });
52
+ const selectedDate = computed(() => {
53
+ return props.selectionMode === "dates" ? castArray(props.parsedValue) : [];
54
+ });
55
+ const setDateText = (cell, { count, rowIndex, columnIndex }) => {
56
+ const { startOfMonthDay, dateCountOfMonth, dateCountOfLastMonth } = unref(days);
57
+ const offset = unref(offsetDay);
58
+ if (rowIndex >= 0 && rowIndex <= 1) {
59
+ const numberOfDaysFromPreviousMonth = startOfMonthDay + offset < 0 ? 7 + startOfMonthDay + offset : startOfMonthDay + offset;
60
+ if (columnIndex + rowIndex * 7 >= numberOfDaysFromPreviousMonth) {
61
+ cell.text = count;
62
+ return true;
63
+ } else {
64
+ cell.text = dateCountOfLastMonth - (numberOfDaysFromPreviousMonth - columnIndex % 7) + 1 + rowIndex * 7;
65
+ cell.type = "prev-month";
66
+ }
67
+ } else {
68
+ if (count <= dateCountOfMonth) {
69
+ cell.text = count;
70
+ } else {
71
+ cell.text = count - dateCountOfMonth;
72
+ cell.type = "next-month";
73
+ }
74
+ return true;
75
+ }
76
+ return false;
77
+ };
78
+ const setCellMetadata = (cell, { columnIndex, rowIndex }, count) => {
79
+ const { disabledDate, cellClassName } = props;
80
+ const _selectedDate = unref(selectedDate);
81
+ const shouldIncrement = setDateText(cell, { count, rowIndex, columnIndex });
82
+ const cellDate = cell.dayjs.toDate();
83
+ cell.selected = _selectedDate.find((d) => d.valueOf() === cell.dayjs.valueOf());
84
+ cell.isSelected = !!cell.selected;
85
+ cell.isCurrent = isCurrent(cell);
86
+ cell.disabled = disabledDate == null ? void 0 : disabledDate(cellDate);
87
+ cell.customClass = cellClassName == null ? void 0 : cellClassName(cellDate);
88
+ return shouldIncrement;
89
+ };
90
+ const setRowMetadata = (row) => {
91
+ if (props.selectionMode === "week") {
92
+ const [start, end] = props.showWeekNumber ? [1, 7] : [0, 6];
93
+ const isActive = isWeekActive(row[start + 1]);
94
+ row[start].inRange = isActive;
95
+ row[start].start = isActive;
96
+ row[end].inRange = isActive;
97
+ row[end].end = isActive;
98
+ }
99
+ };
100
+ const rows = computed(() => {
101
+ const { minDate, maxDate, rangeState, showWeekNumber } = props;
102
+ const offset = unref(offsetDay);
103
+ const rows_ = unref(tableRows);
104
+ const dateUnit = "day";
105
+ let count = 1;
106
+ if (showWeekNumber) {
107
+ for (let rowIndex = 0; rowIndex < 6; rowIndex++) {
108
+ if (!rows_[rowIndex][0]) {
109
+ rows_[rowIndex][0] = {
110
+ type: "week",
111
+ text: unref(startDate).add(rowIndex * 7 + 1, dateUnit).week()
112
+ };
113
+ }
114
+ }
115
+ }
116
+ buildPickerTable({ row: 6, column: 7 }, rows_, {
117
+ startDate: minDate,
118
+ columnIndexOffset: showWeekNumber ? 1 : 0,
119
+ nextEndDate: rangeState.endDate || maxDate || rangeState.selecting && minDate || null,
120
+ now: dayjs().locale(unref(lang)).startOf(dateUnit),
121
+ unit: dateUnit,
122
+ relativeDateGetter: (idx) => unref(startDate).add(idx - offset, dateUnit),
123
+ setCellMetadata: (...args) => {
124
+ if (setCellMetadata(...args, count)) {
125
+ count += 1;
126
+ }
127
+ },
128
+ setRowMetadata
129
+ });
130
+ return rows_;
131
+ });
132
+ watch(() => props.date, async () => {
133
+ var _a;
134
+ if ((_a = unref(tbodyRef)) == null ? void 0 : _a.contains(document.activeElement)) {
135
+ await nextTick();
136
+ await focus();
137
+ }
138
+ });
139
+ const focus = async () => {
140
+ var _a;
141
+ return (_a = unref(currentCellRef)) == null ? void 0 : _a.focus();
142
+ };
143
+ const isCurrent = (cell) => {
144
+ return props.selectionMode === "date" && isNormalDay(cell.type) && cellMatchesDate(cell, props.parsedValue);
145
+ };
146
+ const cellMatchesDate = (cell, date) => {
147
+ if (!date)
148
+ return false;
149
+ return dayjs(date).locale(unref(lang)).isSame(props.date.date(Number(cell.text)), "day");
150
+ };
151
+ const getDateOfCell = (row, column) => {
152
+ const offsetFromStart = row * 7 + (column - (props.showWeekNumber ? 1 : 0)) - unref(offsetDay);
153
+ return unref(startDate).add(offsetFromStart, "day");
154
+ };
155
+ const handleMouseMove = (event) => {
156
+ var _a;
157
+ if (!props.rangeState.selecting)
158
+ return;
159
+ let target = event.target;
160
+ if (target.tagName === "SPAN") {
161
+ target = (_a = target.parentNode) == null ? void 0 : _a.parentNode;
162
+ }
163
+ if (target.tagName === "DIV") {
164
+ target = target.parentNode;
165
+ }
166
+ if (target.tagName !== "TD")
167
+ return;
168
+ const row = target.parentNode.rowIndex - 1;
169
+ const column = target.cellIndex;
170
+ if (unref(rows)[row][column].disabled)
171
+ return;
172
+ if (row !== unref(lastRow) || column !== unref(lastColumn)) {
173
+ lastRow.value = row;
174
+ lastColumn.value = column;
175
+ emit("changerange", {
176
+ selecting: true,
177
+ endDate: getDateOfCell(row, column)
178
+ });
179
+ }
180
+ };
181
+ const isSelectedCell = (cell) => {
182
+ return !unref(hasCurrent) && (cell == null ? void 0 : cell.text) === 1 && cell.type === "normal" || cell.isCurrent;
183
+ };
184
+ const handleFocus = (event) => {
185
+ if (focusWithClick || unref(hasCurrent) || props.selectionMode !== "date")
186
+ return;
187
+ handlePickDate(event, true);
188
+ };
189
+ const handleMouseDown = (event) => {
190
+ const target = event.target.closest("td");
191
+ if (!target)
192
+ return;
193
+ focusWithClick = true;
194
+ };
195
+ const handleMouseUp = (event) => {
196
+ const target = event.target.closest("td");
197
+ if (!target)
198
+ return;
199
+ focusWithClick = false;
200
+ };
201
+ const handleRangePick = (newDate) => {
202
+ if (!props.rangeState.selecting || !props.minDate) {
203
+ emit("pick", { minDate: newDate, maxDate: null });
204
+ emit("select", true);
205
+ } else {
206
+ if (newDate >= props.minDate) {
207
+ emit("pick", { minDate: props.minDate, maxDate: newDate });
208
+ } else {
209
+ emit("pick", { minDate: newDate, maxDate: props.minDate });
210
+ }
211
+ emit("select", false);
212
+ }
213
+ };
214
+ const handleWeekPick = (newDate) => {
215
+ const weekNumber = newDate.week();
216
+ const value = `${newDate.year()}w${weekNumber}`;
217
+ emit("pick", {
218
+ year: newDate.year(),
219
+ week: weekNumber,
220
+ value,
221
+ date: newDate.startOf("week")
222
+ });
223
+ };
224
+ const handleDatesPick = (newDate, selected) => {
225
+ const newValue = selected ? castArray(props.parsedValue).filter((d) => (d == null ? void 0 : d.valueOf()) !== newDate.valueOf()) : castArray(props.parsedValue).concat([newDate]);
226
+ emit("pick", newValue);
227
+ };
228
+ const handlePickDate = (event, isKeyboardMovement = false) => {
229
+ const target = event.target.closest("td");
230
+ if (!target)
231
+ return;
232
+ const row = target.parentNode.rowIndex - 1;
233
+ const column = target.cellIndex;
234
+ const cell = unref(rows)[row][column];
235
+ if (cell.disabled || cell.type === "week")
236
+ return;
237
+ const newDate = getDateOfCell(row, column);
238
+ switch (props.selectionMode) {
239
+ case "range": {
240
+ handleRangePick(newDate);
241
+ break;
242
+ }
243
+ case "date": {
244
+ emit("pick", newDate, isKeyboardMovement);
245
+ break;
246
+ }
247
+ case "week": {
248
+ handleWeekPick(newDate);
249
+ break;
250
+ }
251
+ case "dates": {
252
+ handleDatesPick(newDate, !!cell.selected);
253
+ break;
254
+ }
255
+ default: {
256
+ break;
257
+ }
258
+ }
259
+ };
260
+ const isWeekActive = (cell) => {
261
+ if (props.selectionMode !== "week")
262
+ return false;
263
+ let newDate = props.date.startOf("day");
264
+ if (cell.type === "prev-month") {
265
+ newDate = newDate.subtract(1, "month");
266
+ }
267
+ if (cell.type === "next-month") {
268
+ newDate = newDate.add(1, "month");
269
+ }
270
+ newDate = newDate.date(Number.parseInt(cell.text, 10));
271
+ if (props.parsedValue && !Array.isArray(props.parsedValue)) {
272
+ const dayOffset = (props.parsedValue.day() - firstDayOfWeek + 7) % 7 - 1;
273
+ const weekDate = props.parsedValue.subtract(dayOffset, "day");
274
+ return weekDate.isSame(newDate, "day");
275
+ }
276
+ return false;
277
+ };
278
+ return {
279
+ WEEKS,
280
+ rows,
281
+ tbodyRef,
282
+ currentCellRef,
283
+ focus,
284
+ isCurrent,
285
+ isWeekActive,
286
+ isSelectedCell,
287
+ handlePickDate,
288
+ handleMouseUp,
289
+ handleMouseDown,
290
+ handleMouseMove,
291
+ handleFocus
292
+ };
293
+ };
294
+ const useBasicDateTableDOM = (props, {
295
+ isCurrent,
296
+ isWeekActive
297
+ }) => {
298
+ const ns = useNamespace("date-table");
299
+ const { t } = useLocale();
300
+ const tableKls = computed(() => [
301
+ ns.b(),
302
+ { "is-week-mode": props.selectionMode === "week" }
303
+ ]);
304
+ const tableLabel = computed(() => t("el.datepicker.dateTablePrompt"));
305
+ const weekLabel = computed(() => t("el.datepicker.week"));
306
+ const getCellClasses = (cell) => {
307
+ const classes = [];
308
+ if (isNormalDay(cell.type) && !cell.disabled) {
309
+ classes.push("available");
310
+ if (cell.type === "today") {
311
+ classes.push("today");
312
+ }
313
+ } else {
314
+ classes.push(cell.type);
315
+ }
316
+ if (isCurrent(cell)) {
317
+ classes.push("current");
318
+ }
319
+ if (cell.inRange && (isNormalDay(cell.type) || props.selectionMode === "week")) {
320
+ classes.push("in-range");
321
+ if (cell.start) {
322
+ classes.push("start-date");
323
+ }
324
+ if (cell.end) {
325
+ classes.push("end-date");
326
+ }
327
+ }
328
+ if (cell.disabled) {
329
+ classes.push("disabled");
330
+ }
331
+ if (cell.selected) {
332
+ classes.push("selected");
333
+ }
334
+ if (cell.customClass) {
335
+ classes.push(cell.customClass);
336
+ }
337
+ return classes.join(" ");
338
+ };
339
+ const getRowKls = (cell) => [
340
+ ns.e("row"),
341
+ { current: isWeekActive(cell) }
342
+ ];
343
+ return {
344
+ tableKls,
345
+ tableLabel,
346
+ weekLabel,
347
+ getCellClasses,
348
+ getRowKls,
349
+ t
350
+ };
351
+ };
352
+
353
+ export { useBasicDateTable, useBasicDateTableDOM };
354
+ //# sourceMappingURL=use-basic-date-table.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-basic-date-table.mjs","sources":["../../../../../../../packages/components/date-picker/src/composables/use-basic-date-table.ts"],"sourcesContent":["import { computed, nextTick, ref, unref } from 'vue'\nimport { watch } from '../../../config-provider'\nimport dayjs from 'dayjs'\nimport { flatten } from 'lodash-unified'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { castArray } from '@element-plus/utils'\nimport { buildPickerTable } from '../utils'\n\nimport type { SetupContext } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type { DateCell } from '../date-picker.type'\nimport type {\n BasicDateTableEmits,\n BasicDateTableProps,\n} from '../props/basic-date-table'\n\nconst isNormalDay = (type = '') => {\n return ['normal', 'today'].includes(type)\n}\n\nexport const useBasicDateTable = (\n props: BasicDateTableProps,\n emit: SetupContext<BasicDateTableEmits>['emit']\n) => {\n const { lang } = useLocale()\n const tbodyRef = ref<HTMLElement>()\n const currentCellRef = ref<HTMLElement>()\n // data\n const lastRow = ref<number>()\n const lastColumn = ref<number>()\n const tableRows = ref<DateCell[][]>([[], [], [], [], [], []])\n\n let focusWithClick = false\n\n // todo better way to get Day.js locale object\n const firstDayOfWeek = (props.date as any).$locale().weekStart || 7\n const WEEKS_CONSTANT = props.date\n .locale('en')\n .localeData()\n .weekdaysShort()\n .map((_) => _.toLowerCase())\n\n const offsetDay = computed(() => {\n // Sunday 7(0), cal the left and right offset days, 3217654, such as Monday is -1, the is to adjust the position of the first two rows of dates\n return firstDayOfWeek > 3 ? 7 - firstDayOfWeek : -firstDayOfWeek\n })\n\n const startDate = computed(() => {\n const startDayOfMonth = props.date.startOf('month')\n return startDayOfMonth.subtract(startDayOfMonth.day() || 7, 'day')\n })\n\n const WEEKS = computed(() => {\n return WEEKS_CONSTANT.concat(WEEKS_CONSTANT).slice(\n firstDayOfWeek,\n firstDayOfWeek + 7\n )\n })\n\n const hasCurrent = computed<boolean>(() => {\n return flatten(unref(rows)).some((row) => {\n return row.isCurrent\n })\n })\n\n const days = computed(() => {\n const startOfMonth = props.date.startOf('month')\n const startOfMonthDay = startOfMonth.day() || 7 // day of first day\n const dateCountOfMonth = startOfMonth.daysInMonth()\n\n const dateCountOfLastMonth = startOfMonth.subtract(1, 'month').daysInMonth()\n\n return {\n startOfMonthDay,\n dateCountOfMonth,\n dateCountOfLastMonth,\n }\n })\n\n const selectedDate = computed(() => {\n return props.selectionMode === 'dates'\n ? (castArray(props.parsedValue) as Dayjs[])\n : ([] as Dayjs[])\n })\n\n // Return value indicates should the counter be incremented\n type CellCoordinate = { columnIndex: number; rowIndex: number }\n type CellMeta = CellCoordinate & {\n count: number\n }\n const setDateText = (\n cell: DateCell,\n { count, rowIndex, columnIndex }: CellMeta\n ): boolean => {\n const { startOfMonthDay, dateCountOfMonth, dateCountOfLastMonth } =\n unref(days)\n const offset = unref(offsetDay)\n if (rowIndex >= 0 && rowIndex <= 1) {\n const numberOfDaysFromPreviousMonth =\n startOfMonthDay + offset < 0\n ? 7 + startOfMonthDay + offset\n : startOfMonthDay + offset\n\n if (columnIndex + rowIndex * 7 >= numberOfDaysFromPreviousMonth) {\n cell.text = count\n return true\n } else {\n cell.text =\n dateCountOfLastMonth -\n (numberOfDaysFromPreviousMonth - (columnIndex % 7)) +\n 1 +\n rowIndex * 7\n cell.type = 'prev-month'\n }\n } else {\n if (count <= dateCountOfMonth) {\n cell.text = count\n } else {\n cell.text = count - dateCountOfMonth\n cell.type = 'next-month'\n }\n return true\n }\n return false\n }\n\n const setCellMetadata = (\n cell: DateCell,\n { columnIndex, rowIndex }: CellCoordinate,\n count: number\n ) => {\n const { disabledDate, cellClassName } = props\n const _selectedDate = unref(selectedDate)\n const shouldIncrement = setDateText(cell, { count, rowIndex, columnIndex })\n\n const cellDate = cell.dayjs!.toDate()\n cell.selected = _selectedDate.find(\n (d) => d.valueOf() === cell.dayjs!.valueOf()\n )\n cell.isSelected = !!cell.selected\n cell.isCurrent = isCurrent(cell)\n cell.disabled = disabledDate?.(cellDate)\n cell.customClass = cellClassName?.(cellDate)\n return shouldIncrement\n }\n\n const setRowMetadata = (row: DateCell[]) => {\n if (props.selectionMode === 'week') {\n const [start, end] = props.showWeekNumber ? [1, 7] : [0, 6]\n const isActive = isWeekActive(row[start + 1])\n row[start].inRange = isActive\n row[start].start = isActive\n row[end].inRange = isActive\n row[end].end = isActive\n }\n }\n\n const rows = computed(() => {\n const { minDate, maxDate, rangeState, showWeekNumber } = props\n\n const offset = unref(offsetDay)\n const rows_ = unref(tableRows)\n const dateUnit = 'day'\n let count = 1\n\n if (showWeekNumber) {\n for (let rowIndex = 0; rowIndex < 6; rowIndex++) {\n if (!rows_[rowIndex][0]) {\n rows_[rowIndex][0] = {\n type: 'week',\n text: unref(startDate)\n .add(rowIndex * 7 + 1, dateUnit)\n .week(),\n }\n }\n }\n }\n\n buildPickerTable({ row: 6, column: 7 }, rows_, {\n startDate: minDate,\n columnIndexOffset: showWeekNumber ? 1 : 0,\n nextEndDate:\n rangeState.endDate ||\n maxDate ||\n (rangeState.selecting && minDate) ||\n null,\n now: dayjs().locale(unref(lang)).startOf(dateUnit),\n unit: dateUnit,\n relativeDateGetter: (idx: number) =>\n unref(startDate).add(idx - offset, dateUnit),\n setCellMetadata: (...args) => {\n if (setCellMetadata(...args, count)) {\n count += 1\n }\n },\n\n setRowMetadata,\n })\n\n return rows_\n })\n\n watch(\n () => props.date,\n async () => {\n if (unref(tbodyRef)?.contains(document.activeElement)) {\n await nextTick()\n await focus()\n // currentCellRef.value?.focus()\n }\n }\n )\n\n const focus = async () => unref(currentCellRef)?.focus()\n\n const isCurrent = (cell: DateCell): boolean => {\n return (\n props.selectionMode === 'date' &&\n isNormalDay(cell.type) &&\n cellMatchesDate(cell, props.parsedValue as Dayjs)\n )\n }\n\n const cellMatchesDate = (cell: DateCell, date: Dayjs) => {\n if (!date) return false\n return dayjs(date)\n .locale(unref(lang))\n .isSame(props.date.date(Number(cell.text)), 'day')\n }\n\n const getDateOfCell = (row: number, column: number) => {\n const offsetFromStart =\n row * 7 + (column - (props.showWeekNumber ? 1 : 0)) - unref(offsetDay)\n return unref(startDate).add(offsetFromStart, 'day')\n }\n\n const handleMouseMove = (event: MouseEvent) => {\n if (!props.rangeState.selecting) return\n\n let target = event.target as HTMLElement\n if (target.tagName === 'SPAN') {\n target = target.parentNode?.parentNode as HTMLElement\n }\n if (target.tagName === 'DIV') {\n target = target.parentNode as HTMLElement\n }\n if (target.tagName !== 'TD') return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex - 1\n const column = (target as HTMLTableCellElement).cellIndex\n\n // can not select disabled date\n if (unref(rows)[row][column].disabled) return\n\n // only update rangeState when mouse moves to a new cell\n // this avoids frequent Date object creation and improves performance\n if (row !== unref(lastRow) || column !== unref(lastColumn)) {\n lastRow.value = row\n lastColumn.value = column\n emit('changerange', {\n selecting: true,\n endDate: getDateOfCell(row, column),\n })\n }\n }\n\n const isSelectedCell = (cell: DateCell) => {\n return (\n (!unref(hasCurrent) && cell?.text === 1 && cell.type === 'normal') ||\n cell.isCurrent\n )\n }\n\n const handleFocus = (event: FocusEvent) => {\n if (focusWithClick || unref(hasCurrent) || props.selectionMode !== 'date')\n return\n handlePickDate(event, true)\n }\n\n const handleMouseDown = (event: MouseEvent) => {\n const target = (event.target as HTMLElement).closest('td')\n if (!target) return\n focusWithClick = true\n }\n\n const handleMouseUp = (event: MouseEvent) => {\n const target = (event.target as HTMLElement).closest('td')\n if (!target) return\n focusWithClick = false\n }\n\n const handleRangePick = (newDate: Dayjs) => {\n if (!props.rangeState.selecting || !props.minDate) {\n emit('pick', { minDate: newDate, maxDate: null })\n emit('select', true)\n } else {\n if (newDate >= props.minDate) {\n emit('pick', { minDate: props.minDate, maxDate: newDate })\n } else {\n emit('pick', { minDate: newDate, maxDate: props.minDate })\n }\n emit('select', false)\n }\n }\n\n const handleWeekPick = (newDate: Dayjs) => {\n const weekNumber = newDate.week()\n const value = `${newDate.year()}w${weekNumber}`\n emit('pick', {\n year: newDate.year(),\n week: weekNumber,\n value,\n date: newDate.startOf('week'),\n })\n }\n\n const handleDatesPick = (newDate: Dayjs, selected: boolean) => {\n const newValue = selected\n ? castArray(props.parsedValue).filter(\n (d) => d?.valueOf() !== newDate.valueOf()\n )\n : castArray(props.parsedValue).concat([newDate])\n emit('pick', newValue)\n }\n\n const handlePickDate = (\n event: FocusEvent | MouseEvent,\n isKeyboardMovement = false\n ) => {\n const target = (event.target as HTMLElement).closest('td')\n\n if (!target) return\n\n const row = (target.parentNode as HTMLTableRowElement).rowIndex - 1\n const column = (target as HTMLTableCellElement).cellIndex\n const cell = unref(rows)[row][column]\n\n if (cell.disabled || cell.type === 'week') return\n\n const newDate = getDateOfCell(row, column)\n\n switch (props.selectionMode) {\n case 'range': {\n handleRangePick(newDate)\n break\n }\n case 'date': {\n emit('pick', newDate, isKeyboardMovement)\n break\n }\n case 'week': {\n handleWeekPick(newDate)\n break\n }\n case 'dates': {\n handleDatesPick(newDate, !!cell.selected)\n break\n }\n default: {\n break\n }\n }\n }\n\n const isWeekActive = (cell: DateCell) => {\n if (props.selectionMode !== 'week') return false\n let newDate = props.date.startOf('day')\n\n if (cell.type === 'prev-month') {\n newDate = newDate.subtract(1, 'month')\n }\n\n if (cell.type === 'next-month') {\n newDate = newDate.add(1, 'month')\n }\n\n newDate = newDate.date(Number.parseInt(cell.text as any, 10))\n\n if (props.parsedValue && !Array.isArray(props.parsedValue)) {\n const dayOffset = ((props.parsedValue.day() - firstDayOfWeek + 7) % 7) - 1\n const weekDate = props.parsedValue.subtract(dayOffset, 'day')\n return weekDate.isSame(newDate, 'day')\n }\n return false\n }\n\n return {\n WEEKS,\n rows,\n tbodyRef,\n currentCellRef,\n\n // cellMatchesDate,\n // getDateOfCell,\n focus,\n isCurrent,\n isWeekActive,\n isSelectedCell,\n\n handlePickDate,\n handleMouseUp,\n handleMouseDown,\n handleMouseMove,\n handleFocus,\n }\n}\n\nexport const useBasicDateTableDOM = (\n props: BasicDateTableProps,\n {\n isCurrent,\n isWeekActive,\n }: Pick<ReturnType<typeof useBasicDateTable>, 'isCurrent' | 'isWeekActive'>\n) => {\n const ns = useNamespace('date-table')\n const { t } = useLocale()\n\n const tableKls = computed(() => [\n ns.b(),\n { 'is-week-mode': props.selectionMode === 'week' },\n ])\n\n const tableLabel = computed(() => t('el.datepicker.dateTablePrompt'))\n const weekLabel = computed(() => t('el.datepicker.week'))\n\n const getCellClasses = (cell: DateCell) => {\n const classes: string[] = []\n if (isNormalDay(cell.type) && !cell.disabled) {\n classes.push('available')\n if (cell.type === 'today') {\n classes.push('today')\n }\n } else {\n classes.push(cell.type!)\n }\n\n if (isCurrent(cell)) {\n classes.push('current')\n }\n\n if (\n cell.inRange &&\n (isNormalDay(cell.type) || props.selectionMode === 'week')\n ) {\n classes.push('in-range')\n\n if (cell.start) {\n classes.push('start-date')\n }\n\n if (cell.end) {\n classes.push('end-date')\n }\n }\n\n if (cell.disabled) {\n classes.push('disabled')\n }\n\n if (cell.selected) {\n classes.push('selected')\n }\n\n if (cell.customClass) {\n classes.push(cell.customClass)\n }\n\n return classes.join(' ')\n }\n\n const getRowKls = (cell: DateCell) => [\n ns.e('row'),\n { current: isWeekActive(cell) },\n ]\n\n return {\n tableKls,\n tableLabel,\n weekLabel,\n\n getCellClasses,\n getRowKls,\n t,\n }\n}\n"],"names":[],"mappings":"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"}