@element-plus/nightly 0.0.20241214 → 0.0.20241216

Sign up to get free protection for your applications and to get access to all the features.
Files changed (322) hide show
  1. package/dist/index.full.js +18 -9
  2. package/dist/index.full.min.js +12 -12
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +11 -11
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +18 -9
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar-eg.js +1 -1
  12. package/dist/locale/ar-eg.min.js +1 -1
  13. package/dist/locale/ar-eg.min.mjs +1 -1
  14. package/dist/locale/ar-eg.mjs +1 -1
  15. package/dist/locale/ar.js +1 -1
  16. package/dist/locale/ar.min.js +1 -1
  17. package/dist/locale/ar.min.mjs +1 -1
  18. package/dist/locale/ar.mjs +1 -1
  19. package/dist/locale/az.js +1 -1
  20. package/dist/locale/az.min.js +1 -1
  21. package/dist/locale/az.min.mjs +1 -1
  22. package/dist/locale/az.mjs +1 -1
  23. package/dist/locale/bg.js +1 -1
  24. package/dist/locale/bg.min.js +1 -1
  25. package/dist/locale/bg.min.mjs +1 -1
  26. package/dist/locale/bg.mjs +1 -1
  27. package/dist/locale/bn.js +1 -1
  28. package/dist/locale/bn.min.js +1 -1
  29. package/dist/locale/bn.min.mjs +1 -1
  30. package/dist/locale/bn.mjs +1 -1
  31. package/dist/locale/ca.js +1 -1
  32. package/dist/locale/ca.min.js +1 -1
  33. package/dist/locale/ca.min.mjs +1 -1
  34. package/dist/locale/ca.mjs +1 -1
  35. package/dist/locale/ckb.js +1 -1
  36. package/dist/locale/ckb.min.js +1 -1
  37. package/dist/locale/ckb.min.mjs +1 -1
  38. package/dist/locale/ckb.mjs +1 -1
  39. package/dist/locale/cs.js +1 -1
  40. package/dist/locale/cs.min.js +1 -1
  41. package/dist/locale/cs.min.mjs +1 -1
  42. package/dist/locale/cs.mjs +1 -1
  43. package/dist/locale/da.js +1 -1
  44. package/dist/locale/da.min.js +1 -1
  45. package/dist/locale/da.min.mjs +1 -1
  46. package/dist/locale/da.mjs +1 -1
  47. package/dist/locale/de.js +1 -1
  48. package/dist/locale/de.min.js +1 -1
  49. package/dist/locale/de.min.mjs +1 -1
  50. package/dist/locale/de.mjs +1 -1
  51. package/dist/locale/el.js +1 -1
  52. package/dist/locale/el.min.js +1 -1
  53. package/dist/locale/el.min.mjs +1 -1
  54. package/dist/locale/el.mjs +1 -1
  55. package/dist/locale/en.js +1 -1
  56. package/dist/locale/en.min.js +1 -1
  57. package/dist/locale/en.min.mjs +1 -1
  58. package/dist/locale/en.mjs +1 -1
  59. package/dist/locale/eo.js +1 -1
  60. package/dist/locale/eo.min.js +1 -1
  61. package/dist/locale/eo.min.mjs +1 -1
  62. package/dist/locale/eo.mjs +1 -1
  63. package/dist/locale/es.js +1 -1
  64. package/dist/locale/es.min.js +1 -1
  65. package/dist/locale/es.min.mjs +1 -1
  66. package/dist/locale/es.mjs +1 -1
  67. package/dist/locale/et.js +1 -1
  68. package/dist/locale/et.min.js +1 -1
  69. package/dist/locale/et.min.mjs +1 -1
  70. package/dist/locale/et.mjs +1 -1
  71. package/dist/locale/eu.js +1 -1
  72. package/dist/locale/eu.min.js +1 -1
  73. package/dist/locale/eu.min.mjs +1 -1
  74. package/dist/locale/eu.mjs +1 -1
  75. package/dist/locale/fa.js +1 -1
  76. package/dist/locale/fa.min.js +1 -1
  77. package/dist/locale/fa.min.mjs +1 -1
  78. package/dist/locale/fa.mjs +1 -1
  79. package/dist/locale/fi.js +1 -1
  80. package/dist/locale/fi.min.js +1 -1
  81. package/dist/locale/fi.min.mjs +1 -1
  82. package/dist/locale/fi.mjs +1 -1
  83. package/dist/locale/fr.js +1 -1
  84. package/dist/locale/fr.min.js +1 -1
  85. package/dist/locale/fr.min.mjs +1 -1
  86. package/dist/locale/fr.mjs +1 -1
  87. package/dist/locale/he.js +1 -1
  88. package/dist/locale/he.min.js +1 -1
  89. package/dist/locale/he.min.mjs +1 -1
  90. package/dist/locale/he.mjs +1 -1
  91. package/dist/locale/hr.js +1 -1
  92. package/dist/locale/hr.min.js +1 -1
  93. package/dist/locale/hr.min.mjs +1 -1
  94. package/dist/locale/hr.mjs +1 -1
  95. package/dist/locale/hu.js +1 -1
  96. package/dist/locale/hu.min.js +1 -1
  97. package/dist/locale/hu.min.mjs +1 -1
  98. package/dist/locale/hu.mjs +1 -1
  99. package/dist/locale/hy-am.js +1 -1
  100. package/dist/locale/hy-am.min.js +1 -1
  101. package/dist/locale/hy-am.min.mjs +1 -1
  102. package/dist/locale/hy-am.mjs +1 -1
  103. package/dist/locale/id.js +1 -1
  104. package/dist/locale/id.min.js +1 -1
  105. package/dist/locale/id.min.mjs +1 -1
  106. package/dist/locale/id.mjs +1 -1
  107. package/dist/locale/it.js +1 -1
  108. package/dist/locale/it.min.js +1 -1
  109. package/dist/locale/it.min.mjs +1 -1
  110. package/dist/locale/it.mjs +1 -1
  111. package/dist/locale/ja.js +1 -1
  112. package/dist/locale/ja.min.js +1 -1
  113. package/dist/locale/ja.min.mjs +1 -1
  114. package/dist/locale/ja.mjs +1 -1
  115. package/dist/locale/kk.js +1 -1
  116. package/dist/locale/kk.min.js +1 -1
  117. package/dist/locale/kk.min.mjs +1 -1
  118. package/dist/locale/kk.mjs +1 -1
  119. package/dist/locale/km.js +1 -1
  120. package/dist/locale/km.min.js +1 -1
  121. package/dist/locale/km.min.mjs +1 -1
  122. package/dist/locale/km.mjs +1 -1
  123. package/dist/locale/ko.js +1 -1
  124. package/dist/locale/ko.min.js +1 -1
  125. package/dist/locale/ko.min.mjs +1 -1
  126. package/dist/locale/ko.mjs +1 -1
  127. package/dist/locale/ku.js +1 -1
  128. package/dist/locale/ku.min.js +1 -1
  129. package/dist/locale/ku.min.mjs +1 -1
  130. package/dist/locale/ku.mjs +1 -1
  131. package/dist/locale/ky.js +1 -1
  132. package/dist/locale/ky.min.js +1 -1
  133. package/dist/locale/ky.min.mjs +1 -1
  134. package/dist/locale/ky.mjs +1 -1
  135. package/dist/locale/lt.js +1 -1
  136. package/dist/locale/lt.min.js +1 -1
  137. package/dist/locale/lt.min.mjs +1 -1
  138. package/dist/locale/lt.mjs +1 -1
  139. package/dist/locale/lv.js +1 -1
  140. package/dist/locale/lv.min.js +1 -1
  141. package/dist/locale/lv.min.mjs +1 -1
  142. package/dist/locale/lv.mjs +1 -1
  143. package/dist/locale/mg.js +1 -1
  144. package/dist/locale/mg.min.js +1 -1
  145. package/dist/locale/mg.min.mjs +1 -1
  146. package/dist/locale/mg.mjs +1 -1
  147. package/dist/locale/mn.js +1 -1
  148. package/dist/locale/mn.min.js +1 -1
  149. package/dist/locale/mn.min.mjs +1 -1
  150. package/dist/locale/mn.mjs +1 -1
  151. package/dist/locale/ms.js +1 -1
  152. package/dist/locale/ms.min.js +1 -1
  153. package/dist/locale/ms.min.mjs +1 -1
  154. package/dist/locale/ms.mjs +1 -1
  155. package/dist/locale/my.js +1 -1
  156. package/dist/locale/my.min.js +1 -1
  157. package/dist/locale/my.min.mjs +1 -1
  158. package/dist/locale/my.mjs +1 -1
  159. package/dist/locale/nb-no.js +1 -1
  160. package/dist/locale/nb-no.min.js +1 -1
  161. package/dist/locale/nb-no.min.mjs +1 -1
  162. package/dist/locale/nb-no.mjs +1 -1
  163. package/dist/locale/nl.js +1 -1
  164. package/dist/locale/nl.min.js +1 -1
  165. package/dist/locale/nl.min.mjs +1 -1
  166. package/dist/locale/nl.mjs +1 -1
  167. package/dist/locale/pa.js +1 -1
  168. package/dist/locale/pa.min.js +1 -1
  169. package/dist/locale/pa.min.mjs +1 -1
  170. package/dist/locale/pa.mjs +1 -1
  171. package/dist/locale/pl.js +1 -1
  172. package/dist/locale/pl.min.js +1 -1
  173. package/dist/locale/pl.min.mjs +1 -1
  174. package/dist/locale/pl.mjs +1 -1
  175. package/dist/locale/pt-br.js +1 -1
  176. package/dist/locale/pt-br.min.js +1 -1
  177. package/dist/locale/pt-br.min.mjs +1 -1
  178. package/dist/locale/pt-br.mjs +1 -1
  179. package/dist/locale/pt.js +1 -1
  180. package/dist/locale/pt.min.js +1 -1
  181. package/dist/locale/pt.min.mjs +1 -1
  182. package/dist/locale/pt.mjs +1 -1
  183. package/dist/locale/ro.js +1 -1
  184. package/dist/locale/ro.min.js +1 -1
  185. package/dist/locale/ro.min.mjs +1 -1
  186. package/dist/locale/ro.mjs +1 -1
  187. package/dist/locale/ru.js +1 -1
  188. package/dist/locale/ru.min.js +1 -1
  189. package/dist/locale/ru.min.mjs +1 -1
  190. package/dist/locale/ru.mjs +1 -1
  191. package/dist/locale/sk.js +1 -1
  192. package/dist/locale/sk.min.js +1 -1
  193. package/dist/locale/sk.min.mjs +1 -1
  194. package/dist/locale/sk.mjs +1 -1
  195. package/dist/locale/sl.js +1 -1
  196. package/dist/locale/sl.min.js +1 -1
  197. package/dist/locale/sl.min.mjs +1 -1
  198. package/dist/locale/sl.mjs +1 -1
  199. package/dist/locale/sr.js +1 -1
  200. package/dist/locale/sr.min.js +1 -1
  201. package/dist/locale/sr.min.mjs +1 -1
  202. package/dist/locale/sr.mjs +1 -1
  203. package/dist/locale/sv.js +1 -1
  204. package/dist/locale/sv.min.js +1 -1
  205. package/dist/locale/sv.min.mjs +1 -1
  206. package/dist/locale/sv.mjs +1 -1
  207. package/dist/locale/sw.js +1 -1
  208. package/dist/locale/sw.min.js +1 -1
  209. package/dist/locale/sw.min.mjs +1 -1
  210. package/dist/locale/sw.mjs +1 -1
  211. package/dist/locale/ta.js +1 -1
  212. package/dist/locale/ta.min.js +1 -1
  213. package/dist/locale/ta.min.mjs +1 -1
  214. package/dist/locale/ta.mjs +1 -1
  215. package/dist/locale/th.js +1 -1
  216. package/dist/locale/th.min.js +1 -1
  217. package/dist/locale/th.min.mjs +1 -1
  218. package/dist/locale/th.mjs +1 -1
  219. package/dist/locale/tk.js +1 -1
  220. package/dist/locale/tk.min.js +1 -1
  221. package/dist/locale/tk.min.mjs +1 -1
  222. package/dist/locale/tk.mjs +1 -1
  223. package/dist/locale/tr.js +1 -1
  224. package/dist/locale/tr.min.js +1 -1
  225. package/dist/locale/tr.min.mjs +1 -1
  226. package/dist/locale/tr.mjs +1 -1
  227. package/dist/locale/ug-cn.js +1 -1
  228. package/dist/locale/ug-cn.min.js +1 -1
  229. package/dist/locale/ug-cn.min.mjs +1 -1
  230. package/dist/locale/ug-cn.mjs +1 -1
  231. package/dist/locale/uk.js +1 -1
  232. package/dist/locale/uk.min.js +1 -1
  233. package/dist/locale/uk.min.mjs +1 -1
  234. package/dist/locale/uk.mjs +1 -1
  235. package/dist/locale/uz-uz.js +1 -1
  236. package/dist/locale/uz-uz.min.js +1 -1
  237. package/dist/locale/uz-uz.min.mjs +1 -1
  238. package/dist/locale/uz-uz.mjs +1 -1
  239. package/dist/locale/vi.js +1 -1
  240. package/dist/locale/vi.min.js +1 -1
  241. package/dist/locale/vi.min.mjs +1 -1
  242. package/dist/locale/vi.mjs +1 -1
  243. package/dist/locale/zh-cn.js +1 -1
  244. package/dist/locale/zh-cn.min.js +1 -1
  245. package/dist/locale/zh-cn.min.mjs +1 -1
  246. package/dist/locale/zh-cn.mjs +1 -1
  247. package/dist/locale/zh-tw.js +1 -1
  248. package/dist/locale/zh-tw.min.js +1 -1
  249. package/dist/locale/zh-tw.min.mjs +1 -1
  250. package/dist/locale/zh-tw.mjs +1 -1
  251. package/es/components/anchor/index.mjs +2 -2
  252. package/es/components/anchor/src/anchor.d.ts +1 -0
  253. package/es/components/anchor/src/anchor.mjs +42 -192
  254. package/es/components/anchor/src/anchor.mjs.map +1 -1
  255. package/es/components/anchor/src/anchor.vue.d.ts +3 -0
  256. package/es/components/anchor/src/anchor2.mjs +192 -38
  257. package/es/components/anchor/src/anchor2.mjs.map +1 -1
  258. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs +8 -5
  259. package/es/components/date-picker/src/date-picker-com/panel-date-pick.mjs.map +1 -1
  260. package/es/components/descriptions/src/description2.mjs +1 -1
  261. package/es/components/descriptions/src/descriptions-row.mjs +6 -63
  262. package/es/components/descriptions/src/descriptions-row.mjs.map +1 -1
  263. package/es/components/descriptions/src/descriptions-row2.mjs +63 -6
  264. package/es/components/descriptions/src/descriptions-row2.mjs.map +1 -1
  265. package/es/components/index.mjs +2 -2
  266. package/es/components/menu/src/menu.mjs +3 -1
  267. package/es/components/menu/src/menu.mjs.map +1 -1
  268. package/es/components/statistic/index.mjs +2 -2
  269. package/es/components/statistic/src/statistic.mjs +69 -25
  270. package/es/components/statistic/src/statistic.mjs.map +1 -1
  271. package/es/components/statistic/src/statistic2.mjs +25 -69
  272. package/es/components/statistic/src/statistic2.mjs.map +1 -1
  273. package/es/components/transfer/src/composables/use-check.mjs +1 -1
  274. package/es/components/transfer/src/transfer-panel.mjs +130 -19
  275. package/es/components/transfer/src/transfer-panel.mjs.map +1 -1
  276. package/es/components/transfer/src/transfer-panel2.mjs +19 -130
  277. package/es/components/transfer/src/transfer-panel2.mjs.map +1 -1
  278. package/es/components/transfer/src/transfer2.mjs +1 -1
  279. package/es/directives/click-outside/index.mjs +1 -1
  280. package/es/hooks/use-focus-controller/index.mjs +1 -1
  281. package/es/hooks/use-lockscreen/index.mjs +1 -1
  282. package/es/index.mjs +2 -2
  283. package/es/version.d.ts +1 -1
  284. package/es/version.mjs +1 -1
  285. package/es/version.mjs.map +1 -1
  286. package/lib/components/anchor/index.js +2 -2
  287. package/lib/components/anchor/src/anchor.d.ts +1 -0
  288. package/lib/components/anchor/src/anchor.js +42 -191
  289. package/lib/components/anchor/src/anchor.js.map +1 -1
  290. package/lib/components/anchor/src/anchor.vue.d.ts +3 -0
  291. package/lib/components/anchor/src/anchor2.js +191 -38
  292. package/lib/components/anchor/src/anchor2.js.map +1 -1
  293. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js +8 -5
  294. package/lib/components/date-picker/src/date-picker-com/panel-date-pick.js.map +1 -1
  295. package/lib/components/descriptions/src/description2.js +1 -1
  296. package/lib/components/descriptions/src/descriptions-row.js +6 -63
  297. package/lib/components/descriptions/src/descriptions-row.js.map +1 -1
  298. package/lib/components/descriptions/src/descriptions-row2.js +63 -6
  299. package/lib/components/descriptions/src/descriptions-row2.js.map +1 -1
  300. package/lib/components/index.js +2 -2
  301. package/lib/components/menu/src/menu.js +3 -1
  302. package/lib/components/menu/src/menu.js.map +1 -1
  303. package/lib/components/statistic/index.js +2 -2
  304. package/lib/components/statistic/src/statistic.js +69 -25
  305. package/lib/components/statistic/src/statistic.js.map +1 -1
  306. package/lib/components/statistic/src/statistic2.js +25 -69
  307. package/lib/components/statistic/src/statistic2.js.map +1 -1
  308. package/lib/components/transfer/src/composables/use-check.js +1 -1
  309. package/lib/components/transfer/src/transfer-panel.js +130 -21
  310. package/lib/components/transfer/src/transfer-panel.js.map +1 -1
  311. package/lib/components/transfer/src/transfer-panel2.js +21 -130
  312. package/lib/components/transfer/src/transfer-panel2.js.map +1 -1
  313. package/lib/components/transfer/src/transfer2.js +1 -1
  314. package/lib/directives/click-outside/index.js +1 -1
  315. package/lib/hooks/use-focus-controller/index.js +1 -1
  316. package/lib/hooks/use-lockscreen/index.js +1 -1
  317. package/lib/index.js +2 -2
  318. package/lib/version.d.ts +1 -1
  319. package/lib/version.js +1 -1
  320. package/lib/version.js.map +1 -1
  321. package/package.json +2 -2
  322. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"panel-date-pick.js","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-date-pick.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n dpNs.b(),\n {\n 'has-sidebar': $slots.sidebar || hasShortcuts,\n 'has-time': showTime,\n },\n ]\"\n >\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div v-if=\"showTime\" :class=\"dpNs.e('time-header')\">\n <span :class=\"dpNs.e('editor-wrap')\">\n <el-input\n :placeholder=\"t('el.datepicker.selectDate')\"\n :model-value=\"visibleDate\"\n size=\"small\"\n :validate-event=\"false\"\n @input=\"(val) => (userInputDate = val)\"\n @change=\"handleVisibleDateChange\"\n />\n </span>\n <span\n v-click-outside=\"handleTimePickClose\"\n :class=\"dpNs.e('editor-wrap')\"\n >\n <el-input\n :placeholder=\"t('el.datepicker.selectTime')\"\n :model-value=\"visibleTime\"\n size=\"small\"\n :validate-event=\"false\"\n @focus=\"onTimePickerInputFocus\"\n @input=\"(val) => (userInputTime = val)\"\n @change=\"handleVisibleTimeChange\"\n />\n <time-pick-panel\n :visible=\"timePickerVisible\"\n :format=\"timeFormat\"\n :parsed-value=\"innerDate\"\n @pick=\"handleTimePick\"\n />\n </span>\n </div>\n <div\n v-show=\"currentView !== 'time'\"\n :class=\"[\n dpNs.e('header'),\n (currentView === 'year' || currentView === 'month') &&\n dpNs.e('header--bordered'),\n ]\"\n >\n <span :class=\"dpNs.e('prev-btn')\">\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevYear`)\"\n class=\"d-arrow-left\"\n :class=\"ppNs.e('icon-btn')\"\n @click=\"moveByYear(false)\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-left\"\n @click=\"moveByMonth(false)\"\n >\n <slot name=\"prev-month\">\n <el-icon><arrow-left /></el-icon>\n </slot>\n </button>\n </span>\n <span\n role=\"button\"\n :class=\"dpNs.e('header-label')\"\n aria-live=\"polite\"\n tabindex=\"0\"\n @keydown.enter=\"showPicker('year')\"\n @click=\"showPicker('year')\"\n >{{ yearLabel }}</span\n >\n <span\n v-show=\"currentView === 'date'\"\n role=\"button\"\n aria-live=\"polite\"\n tabindex=\"0\"\n :class=\"[\n dpNs.e('header-label'),\n { active: currentView === 'month' },\n ]\"\n @keydown.enter=\"showPicker('month')\"\n @click=\"showPicker('month')\"\n >{{ t(`el.datepicker.month${month + 1}`) }}</span\n >\n <span :class=\"dpNs.e('next-btn')\">\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-right\"\n @click=\"moveByMonth(true)\"\n >\n <slot name=\"next-month\">\n <el-icon><arrow-right /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextYear`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"moveByYear(true)\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n </span>\n </div>\n <div :class=\"ppNs.e('content')\" @keydown=\"handleKeydownTable\">\n <date-table\n v-if=\"currentView === 'date'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleDatePick\"\n />\n <year-table\n v-if=\"currentView === 'year'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :disabled-date=\"disabledDate\"\n :parsed-value=\"parsedValue\"\n @pick=\"handleYearPick\"\n />\n <month-table\n v-if=\"currentView === 'month'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n @pick=\"handleMonthPick\"\n />\n </div>\n </div>\n </div>\n <div v-show=\"footerVisible\" :class=\"ppNs.e('footer')\">\n <el-button\n v-show=\"!isMultipleType && showNow\"\n text\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledNow\"\n @click=\"changeToNow\"\n >\n {{ t('el.datepicker.now') }}\n </el-button>\n <el-button\n plain\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledConfirm\"\n @click=\"onConfirm\"\n >\n {{ t('el.datepicker.confirm') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n ref,\n toRef,\n useAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport ElButton from '@element-plus/components/button'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport {\n TimePickPanel,\n extractDateFormat,\n extractTimeFormat,\n} from '@element-plus/components/time-picker'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n ArrowLeft,\n ArrowRight,\n DArrowLeft,\n DArrowRight,\n} from '@element-plus/icons-vue'\nimport { TOOLTIP_INJECTION_KEY } from '@element-plus/components/tooltip'\nimport { panelDatePickProps } from '../props/panel-date-pick'\nimport { getValidDateOfMonth, getValidDateOfYear } from '../utils'\nimport DateTable from './basic-date-table.vue'\nimport MonthTable from './basic-month-table.vue'\nimport YearTable from './basic-year-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { ConfigType, Dayjs } from 'dayjs'\nimport type { PanelDatePickProps } from '../props/panel-date-pick'\nimport type {\n DateTableEmits,\n DatesPickerEmits,\n MonthsPickerEmits,\n WeekPickerEmits,\n YearsPickerEmits,\n} from '../props/basic-date-table'\n\ntype DatePickType = PanelDatePickProps['type']\n// todo\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst timeWithinRange = (_: ConfigType, __: any, ___: string) => true\nconst props = defineProps(panelDatePickProps)\nconst contextEmit = defineEmits(['pick', 'set-picker-option', 'panel-change'])\nconst ppNs = useNamespace('picker-panel')\nconst dpNs = useNamespace('date-picker')\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { t, lang } = useLocale()\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst popper = inject(TOOLTIP_INJECTION_KEY)\nconst { shortcuts, disabledDate, cellClassName, defaultTime } = pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst currentViewRef = ref<{ focus: () => void }>()\n\nconst innerDate = ref(dayjs().locale(lang.value))\n\nconst isChangeToNow = ref(false)\n\nlet isShortcut = false\n\nconst defaultTimeD = computed(() => {\n return dayjs(defaultTime).locale(lang.value)\n})\n\nconst month = computed(() => {\n return innerDate.value.month()\n})\n\nconst year = computed(() => {\n return innerDate.value.year()\n})\n\nconst selectableRange = ref([])\nconst userInputDate = ref<string | null>(null)\nconst userInputTime = ref<string | null>(null)\n// todo update to disableHour\nconst checkDateWithinRange = (date: ConfigType) => {\n return selectableRange.value.length > 0\n ? timeWithinRange(date, selectableRange.value, props.format || 'HH:mm:ss')\n : true\n}\nconst formatEmit = (emitDayjs: Dayjs) => {\n if (\n defaultTime &&\n !visibleTime.value &&\n !isChangeToNow.value &&\n !isShortcut\n ) {\n return defaultTimeD.value\n .year(emitDayjs.year())\n .month(emitDayjs.month())\n .date(emitDayjs.date())\n }\n if (showTime.value) return emitDayjs.millisecond(0)\n return emitDayjs.startOf('day')\n}\nconst emit = (value: Dayjs | Dayjs[], ...args: any[]) => {\n if (!value) {\n contextEmit('pick', value, ...args)\n } else if (isArray(value)) {\n const dates = value.map(formatEmit)\n contextEmit('pick', dates, ...args)\n } else {\n contextEmit('pick', formatEmit(value), ...args)\n }\n userInputDate.value = null\n userInputTime.value = null\n isChangeToNow.value = false\n isShortcut = false\n}\nconst handleDatePick = async (value: DateTableEmits, keepOpen?: boolean) => {\n if (selectionMode.value === 'date') {\n value = value as Dayjs\n let newDate = props.parsedValue\n ? (props.parsedValue as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n : value\n // change default time while out of selectableRange\n if (!checkDateWithinRange(newDate)) {\n newDate = (selectableRange.value[0][0] as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n }\n innerDate.value = newDate\n emit(newDate, showTime.value || keepOpen)\n // fix: https://github.com/element-plus/element-plus/issues/14728\n if (props.type === 'datetime') {\n await nextTick()\n handleFocusPicker()\n }\n } else if (selectionMode.value === 'week') {\n emit((value as WeekPickerEmits).date)\n } else if (selectionMode.value === 'dates') {\n emit(value as DatesPickerEmits, true) // set true to keep panel open\n }\n}\n\nconst moveByMonth = (forward: boolean) => {\n const action = forward ? 'add' : 'subtract'\n innerDate.value = innerDate.value[action](1, 'month')\n handlePanelChange('month')\n}\n\nconst moveByYear = (forward: boolean) => {\n const currentDate = innerDate.value\n const action = forward ? 'add' : 'subtract'\n\n innerDate.value =\n currentView.value === 'year'\n ? currentDate[action](10, 'year')\n : currentDate[action](1, 'year')\n\n handlePanelChange('year')\n}\n\nconst currentView = ref('date')\n\nconst yearLabel = computed(() => {\n const yearTranslation = t('el.datepicker.year')\n if (currentView.value === 'year') {\n const startYear = Math.floor(year.value / 10) * 10\n if (yearTranslation) {\n return `${startYear} ${yearTranslation} - ${\n startYear + 9\n } ${yearTranslation}`\n }\n return `${startYear} - ${startYear + 9}`\n }\n return `${year.value} ${yearTranslation}`\n})\n\ntype Shortcut = {\n value: (() => Dayjs) | Dayjs\n onClick?: (ctx: Omit<SetupContext, 'expose'>) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValue = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n if (shortcutValue) {\n isShortcut = true\n emit(dayjs(shortcutValue).locale(lang.value))\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit: contextEmit as SetupContext['emit'],\n })\n }\n}\n\nconst selectionMode = computed<DatePickType>(() => {\n const { type } = props\n if (['week', 'month', 'months', 'year', 'years', 'dates'].includes(type))\n return type\n return 'date' as DatePickType\n})\n\nconst isMultipleType = computed(() => {\n return (\n selectionMode.value === 'dates' ||\n selectionMode.value === 'months' ||\n selectionMode.value === 'years'\n )\n})\n\nconst keyboardMode = computed<string>(() => {\n return selectionMode.value === 'date'\n ? currentView.value\n : selectionMode.value\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst handleMonthPick = async (\n month: number | MonthsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'month') {\n innerDate.value = getValidDateOfMonth(\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate\n )\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'months') {\n emit(month as MonthsPickerEmits, keepOpen ?? true)\n } else {\n innerDate.value = getValidDateOfMonth(\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate\n )\n currentView.value = 'date'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('month')\n}\n\nconst handleYearPick = async (\n year: number | YearsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'year') {\n const data = innerDate.value.startOf('year').year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate)\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'years') {\n emit(year as YearsPickerEmits, keepOpen ?? true)\n } else {\n const data = innerDate.value.year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate)\n currentView.value = 'month'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('year')\n}\n\nconst showPicker = async (view: 'month' | 'year') => {\n currentView.value = view\n await nextTick()\n handleFocusPicker()\n}\n\nconst showTime = computed(\n () => props.type === 'datetime' || props.type === 'datetimerange'\n)\n\nconst footerVisible = computed(() => {\n const showDateFooter = showTime.value || selectionMode.value === 'dates'\n const showYearFooter = selectionMode.value === 'years'\n const showMonthFooter = selectionMode.value === 'months'\n const isDateView = currentView.value === 'date'\n const isYearView = currentView.value === 'year'\n const isMonthView = currentView.value === 'month'\n return (\n (showDateFooter && isDateView) ||\n (showYearFooter && isYearView) ||\n (showMonthFooter && isMonthView)\n )\n})\n\nconst disabledConfirm = computed(() => {\n if (!disabledDate) return false\n if (!props.parsedValue) return true\n if (isArray(props.parsedValue)) {\n return disabledDate(props.parsedValue[0].toDate())\n }\n return disabledDate(props.parsedValue.toDate())\n})\nconst onConfirm = () => {\n if (isMultipleType.value) {\n emit(props.parsedValue as Dayjs[])\n } else {\n // deal with the scenario where: user opens the date time picker, then confirm without doing anything\n let result = props.parsedValue as Dayjs\n if (!result) {\n const defaultTimeD = dayjs(defaultTime).locale(lang.value)\n const defaultValueD = getDefaultValue()\n result = defaultTimeD\n .year(defaultValueD.year())\n .month(defaultValueD.month())\n .date(defaultValueD.date())\n }\n innerDate.value = result\n emit(result)\n }\n}\n\nconst disabledNow = computed(() => {\n if (!disabledDate) return false\n return disabledDate(dayjs().locale(lang.value).toDate())\n})\nconst changeToNow = () => {\n // NOTE: not a permanent solution\n // consider disable \"now\" button in the future\n const now = dayjs().locale(lang.value)\n const nowDate = now.toDate()\n isChangeToNow.value = true\n if (\n (!disabledDate || !disabledDate(nowDate)) &&\n checkDateWithinRange(nowDate)\n ) {\n innerDate.value = dayjs().locale(lang.value)\n emit(innerDate.value)\n }\n}\n\nconst timeFormat = computed(() => {\n return props.timeFormat || extractTimeFormat(props.format)\n})\n\nconst dateFormat = computed(() => {\n return props.dateFormat || extractDateFormat(props.format)\n})\n\nconst visibleTime = computed(() => {\n if (userInputTime.value) return userInputTime.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n timeFormat.value\n )\n})\n\nconst visibleDate = computed(() => {\n if (userInputDate.value) return userInputDate.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n dateFormat.value\n )\n})\n\nconst timePickerVisible = ref(false)\nconst onTimePickerInputFocus = () => {\n timePickerVisible.value = true\n}\nconst handleTimePickClose = () => {\n timePickerVisible.value = false\n}\n\nconst getUnits = (date: Dayjs) => {\n return {\n hour: date.hour(),\n minute: date.minute(),\n second: date.second(),\n year: date.year(),\n month: date.month(),\n date: date.date(),\n }\n}\n\nconst handleTimePick = (value: Dayjs, visible: boolean, first: boolean) => {\n const { hour, minute, second } = getUnits(value)\n const newDate = props.parsedValue\n ? (props.parsedValue as Dayjs).hour(hour).minute(minute).second(second)\n : value\n innerDate.value = newDate\n emit(innerDate.value, true)\n if (!first) {\n timePickerVisible.value = visible\n }\n}\n\nconst handleVisibleTimeChange = (value: string) => {\n const newDate = dayjs(value, timeFormat.value).locale(lang.value)\n if (newDate.isValid() && checkDateWithinRange(newDate)) {\n const { year, month, date } = getUnits(innerDate.value)\n innerDate.value = newDate.year(year).month(month).date(date)\n userInputTime.value = null\n timePickerVisible.value = false\n emit(innerDate.value, true)\n }\n}\n\nconst handleVisibleDateChange = (value: string) => {\n const newDate = dayjs(value, dateFormat.value).locale(lang.value)\n if (newDate.isValid()) {\n if (disabledDate && disabledDate(newDate.toDate())) {\n return\n }\n const { hour, minute, second } = getUnits(innerDate.value)\n innerDate.value = newDate.hour(hour).minute(minute).second(second)\n userInputDate.value = null\n emit(innerDate.value, true)\n }\n}\n\nconst isValidValue = (date: unknown) => {\n return (\n dayjs.isDayjs(date) &&\n date.isValid() &&\n (disabledDate ? !disabledDate(date.toDate()) : true)\n )\n}\n\nconst formatToString = (value: Dayjs | Dayjs[]) => {\n return isArray(value)\n ? (value as Dayjs[]).map((_) => _.format(props.format))\n : (value as Dayjs).format(props.format)\n}\n\nconst parseUserInput = (value: Dayjs) => {\n return dayjs(value, props.format).locale(lang.value)\n}\n\nconst getDefaultValue = () => {\n const parseDate = dayjs(defaultValue.value).locale(lang.value)\n if (!defaultValue.value) {\n const defaultTimeDValue = defaultTimeD.value\n return dayjs()\n .hour(defaultTimeDValue.hour())\n .minute(defaultTimeDValue.minute())\n .second(defaultTimeDValue.second())\n .locale(lang.value)\n }\n return parseDate\n}\n\nconst handleFocusPicker = async () => {\n if (['week', 'month', 'year', 'date'].includes(selectionMode.value)) {\n currentViewRef.value?.focus()\n if (selectionMode.value === 'week') {\n handleKeyControl(EVENT_CODE.down)\n }\n }\n}\n\nconst handleKeydownTable = (event: KeyboardEvent) => {\n const { code } = event\n const validCode = [\n EVENT_CODE.up,\n EVENT_CODE.down,\n EVENT_CODE.left,\n EVENT_CODE.right,\n EVENT_CODE.home,\n EVENT_CODE.end,\n EVENT_CODE.pageUp,\n EVENT_CODE.pageDown,\n ]\n if (validCode.includes(code)) {\n handleKeyControl(code)\n event.stopPropagation()\n event.preventDefault()\n }\n if (\n [EVENT_CODE.enter, EVENT_CODE.space, EVENT_CODE.numpadEnter].includes(\n code\n ) &&\n userInputDate.value === null &&\n userInputTime.value === null\n ) {\n event.preventDefault()\n emit(innerDate.value, false)\n }\n}\n\nconst handleKeyControl = (code: string) => {\n type KeyControlMappingCallableOffset = (date: Date, step?: number) => number\n type KeyControl = {\n [key: string]:\n | number\n | KeyControlMappingCallableOffset\n | ((date: Date, step: number) => any)\n offset: (date: Date, step: number) => any\n }\n interface KeyControlMapping {\n [key: string]: KeyControl\n }\n\n const { up, down, left, right, home, end, pageUp, pageDown } = EVENT_CODE\n const mapping: KeyControlMapping = {\n year: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setFullYear(date.getFullYear() + step),\n },\n month: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step),\n },\n week: {\n [up]: -1,\n [down]: 1,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setDate(date.getDate() + step * 7),\n },\n date: {\n [up]: -7,\n [down]: 7,\n [left]: -1,\n [right]: 1,\n [home]: (date: Date) => -date.getDay(),\n [end]: (date: Date) => -date.getDay() + 6,\n [pageUp]: (date: Date) =>\n -new Date(date.getFullYear(), date.getMonth(), 0).getDate(),\n [pageDown]: (date: Date) =>\n new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate(),\n offset: (date: Date, step: number) => date.setDate(date.getDate() + step),\n },\n }\n\n const newDate = innerDate.value.toDate()\n while (Math.abs(innerDate.value.diff(newDate, 'year', true)) < 1) {\n const map = mapping[keyboardMode.value]\n if (!map) return\n map.offset(\n newDate,\n isFunction(map[code])\n ? (map[code] as unknown as KeyControlMappingCallableOffset)(newDate)\n : (map[code] as number) ?? 0\n )\n if (disabledDate && disabledDate(newDate)) {\n break\n }\n const result = dayjs(newDate).locale(lang.value)\n innerDate.value = result\n contextEmit('pick', result, true)\n break\n }\n}\n\nconst handlePanelChange = (mode: 'month' | 'year') => {\n contextEmit('panel-change', innerDate.value.toDate(), mode, currentView.value)\n}\n\nwatch(\n () => selectionMode.value,\n (val) => {\n if (['month', 'year'].includes(val)) {\n currentView.value = val\n return\n } else if (val === 'years') {\n currentView.value = 'year'\n return\n } else if (val === 'months') {\n currentView.value = 'month'\n return\n }\n currentView.value = 'date'\n },\n { immediate: true }\n)\n\nwatch(\n () => currentView.value,\n () => {\n popper?.updatePopper()\n }\n)\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (val) => {\n if (val) {\n if (isMultipleType.value) return\n if (isArray(val)) return\n innerDate.value = val\n } else {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\ncontextEmit('set-picker-option', ['isValidValue', isValidValue])\ncontextEmit('set-picker-option', ['formatToString', formatToString])\ncontextEmit('set-picker-option', ['parseUserInput', parseUserInput])\ncontextEmit('set-picker-option', ['handleFocusPicker', handleFocusPicker])\n</script>\n"],"names":["useNamespace","useAttrs","useSlots","useLocale","inject","TOOLTIP_INJECTION_KEY","toRef","ref","dayjs","computed","isArray","nextTick","isFunction","month","getValidDateOfMonth","getValidDateOfYear","year","extractTimeFormat","extractDateFormat","EVENT_CODE","watch","_openBlock","_normalizeClass","_unref","_createElementVNode","_renderSlot","_createElementBlock","_Fragment","_renderList"],"mappings":"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"}
1
+ {"version":3,"file":"panel-date-pick.js","sources":["../../../../../../../packages/components/date-picker/src/date-picker-com/panel-date-pick.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n ppNs.b(),\n dpNs.b(),\n {\n 'has-sidebar': $slots.sidebar || hasShortcuts,\n 'has-time': showTime,\n },\n ]\"\n >\n <div :class=\"ppNs.e('body-wrapper')\">\n <slot name=\"sidebar\" :class=\"ppNs.e('sidebar')\" />\n <div v-if=\"hasShortcuts\" :class=\"ppNs.e('sidebar')\">\n <button\n v-for=\"(shortcut, key) in shortcuts\"\n :key=\"key\"\n type=\"button\"\n :class=\"ppNs.e('shortcut')\"\n @click=\"handleShortcutClick(shortcut)\"\n >\n {{ shortcut.text }}\n </button>\n </div>\n <div :class=\"ppNs.e('body')\">\n <div v-if=\"showTime\" :class=\"dpNs.e('time-header')\">\n <span :class=\"dpNs.e('editor-wrap')\">\n <el-input\n :placeholder=\"t('el.datepicker.selectDate')\"\n :model-value=\"visibleDate\"\n size=\"small\"\n :validate-event=\"false\"\n @input=\"(val) => (userInputDate = val)\"\n @change=\"handleVisibleDateChange\"\n />\n </span>\n <span\n v-click-outside=\"handleTimePickClose\"\n :class=\"dpNs.e('editor-wrap')\"\n >\n <el-input\n :placeholder=\"t('el.datepicker.selectTime')\"\n :model-value=\"visibleTime\"\n size=\"small\"\n :validate-event=\"false\"\n @focus=\"onTimePickerInputFocus\"\n @input=\"(val) => (userInputTime = val)\"\n @change=\"handleVisibleTimeChange\"\n />\n <time-pick-panel\n :visible=\"timePickerVisible\"\n :format=\"timeFormat\"\n :parsed-value=\"innerDate\"\n @pick=\"handleTimePick\"\n />\n </span>\n </div>\n <div\n v-show=\"currentView !== 'time'\"\n :class=\"[\n dpNs.e('header'),\n (currentView === 'year' || currentView === 'month') &&\n dpNs.e('header--bordered'),\n ]\"\n >\n <span :class=\"dpNs.e('prev-btn')\">\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevYear`)\"\n class=\"d-arrow-left\"\n :class=\"ppNs.e('icon-btn')\"\n @click=\"moveByYear(false)\"\n >\n <slot name=\"prev-year\">\n <el-icon><d-arrow-left /></el-icon>\n </slot>\n </button>\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.prevMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-left\"\n @click=\"moveByMonth(false)\"\n >\n <slot name=\"prev-month\">\n <el-icon><arrow-left /></el-icon>\n </slot>\n </button>\n </span>\n <span\n role=\"button\"\n :class=\"dpNs.e('header-label')\"\n aria-live=\"polite\"\n tabindex=\"0\"\n @keydown.enter=\"showPicker('year')\"\n @click=\"showPicker('year')\"\n >{{ yearLabel }}</span\n >\n <span\n v-show=\"currentView === 'date'\"\n role=\"button\"\n aria-live=\"polite\"\n tabindex=\"0\"\n :class=\"[\n dpNs.e('header-label'),\n { active: currentView === 'month' },\n ]\"\n @keydown.enter=\"showPicker('month')\"\n @click=\"showPicker('month')\"\n >{{ t(`el.datepicker.month${month + 1}`) }}</span\n >\n <span :class=\"dpNs.e('next-btn')\">\n <button\n v-show=\"currentView === 'date'\"\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextMonth`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"arrow-right\"\n @click=\"moveByMonth(true)\"\n >\n <slot name=\"next-month\">\n <el-icon><arrow-right /></el-icon>\n </slot>\n </button>\n <button\n type=\"button\"\n :aria-label=\"t(`el.datepicker.nextYear`)\"\n :class=\"ppNs.e('icon-btn')\"\n class=\"d-arrow-right\"\n @click=\"moveByYear(true)\"\n >\n <slot name=\"next-year\">\n <el-icon><d-arrow-right /></el-icon>\n </slot>\n </button>\n </span>\n </div>\n <div :class=\"ppNs.e('content')\" @keydown=\"handleKeydownTable\">\n <date-table\n v-if=\"currentView === 'date'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n :cell-class-name=\"cellClassName\"\n @pick=\"handleDatePick\"\n />\n <year-table\n v-if=\"currentView === 'year'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :disabled-date=\"disabledDate\"\n :parsed-value=\"parsedValue\"\n @pick=\"handleYearPick\"\n />\n <month-table\n v-if=\"currentView === 'month'\"\n ref=\"currentViewRef\"\n :selection-mode=\"selectionMode\"\n :date=\"innerDate\"\n :parsed-value=\"parsedValue\"\n :disabled-date=\"disabledDate\"\n @pick=\"handleMonthPick\"\n />\n </div>\n </div>\n </div>\n <div v-show=\"footerVisible\" :class=\"ppNs.e('footer')\">\n <el-button\n v-show=\"!isMultipleType && showNow\"\n text\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledNow\"\n @click=\"changeToNow\"\n >\n {{ t('el.datepicker.now') }}\n </el-button>\n <el-button\n plain\n size=\"small\"\n :class=\"ppNs.e('link-btn')\"\n :disabled=\"disabledConfirm\"\n @click=\"onConfirm\"\n >\n {{ t('el.datepicker.confirm') }}\n </el-button>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n inject,\n nextTick,\n ref,\n toRef,\n useAttrs,\n useSlots,\n watch,\n} from 'vue'\nimport dayjs from 'dayjs'\nimport ElButton from '@element-plus/components/button'\nimport { ClickOutside as vClickOutside } from '@element-plus/directives'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport {\n TimePickPanel,\n extractDateFormat,\n extractTimeFormat,\n} from '@element-plus/components/time-picker'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { isArray, isFunction } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport {\n ArrowLeft,\n ArrowRight,\n DArrowLeft,\n DArrowRight,\n} from '@element-plus/icons-vue'\nimport { TOOLTIP_INJECTION_KEY } from '@element-plus/components/tooltip'\nimport { panelDatePickProps } from '../props/panel-date-pick'\nimport { getValidDateOfMonth, getValidDateOfYear } from '../utils'\nimport DateTable from './basic-date-table.vue'\nimport MonthTable from './basic-month-table.vue'\nimport YearTable from './basic-year-table.vue'\n\nimport type { SetupContext } from 'vue'\nimport type { ConfigType, Dayjs } from 'dayjs'\nimport type { PanelDatePickProps } from '../props/panel-date-pick'\nimport type {\n DateTableEmits,\n DatesPickerEmits,\n MonthsPickerEmits,\n WeekPickerEmits,\n YearsPickerEmits,\n} from '../props/basic-date-table'\n\ntype DatePickType = PanelDatePickProps['type']\n// todo\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst timeWithinRange = (_: ConfigType, __: any, ___: string) => true\nconst props = defineProps(panelDatePickProps)\nconst contextEmit = defineEmits(['pick', 'set-picker-option', 'panel-change'])\nconst ppNs = useNamespace('picker-panel')\nconst dpNs = useNamespace('date-picker')\nconst attrs = useAttrs()\nconst slots = useSlots()\n\nconst { t, lang } = useLocale()\nconst pickerBase = inject('EP_PICKER_BASE') as any\nconst popper = inject(TOOLTIP_INJECTION_KEY)\nconst { shortcuts, disabledDate, cellClassName, defaultTime } = pickerBase.props\nconst defaultValue = toRef(pickerBase.props, 'defaultValue')\n\nconst currentViewRef = ref<{ focus: () => void }>()\n\nconst innerDate = ref(dayjs().locale(lang.value))\n\nconst isChangeToNow = ref(false)\n\nlet isShortcut = false\n\nconst defaultTimeD = computed(() => {\n return dayjs(defaultTime).locale(lang.value)\n})\n\nconst month = computed(() => {\n return innerDate.value.month()\n})\n\nconst year = computed(() => {\n return innerDate.value.year()\n})\n\nconst selectableRange = ref([])\nconst userInputDate = ref<string | null>(null)\nconst userInputTime = ref<string | null>(null)\n// todo update to disableHour\nconst checkDateWithinRange = (date: ConfigType) => {\n return selectableRange.value.length > 0\n ? timeWithinRange(date, selectableRange.value, props.format || 'HH:mm:ss')\n : true\n}\nconst formatEmit = (emitDayjs: Dayjs) => {\n if (\n defaultTime &&\n !visibleTime.value &&\n !isChangeToNow.value &&\n !isShortcut\n ) {\n return defaultTimeD.value\n .year(emitDayjs.year())\n .month(emitDayjs.month())\n .date(emitDayjs.date())\n }\n if (showTime.value) return emitDayjs.millisecond(0)\n return emitDayjs.startOf('day')\n}\nconst emit = (value: Dayjs | Dayjs[], ...args: any[]) => {\n if (!value) {\n contextEmit('pick', value, ...args)\n } else if (isArray(value)) {\n const dates = value.map(formatEmit)\n contextEmit('pick', dates, ...args)\n } else {\n contextEmit('pick', formatEmit(value), ...args)\n }\n userInputDate.value = null\n userInputTime.value = null\n isChangeToNow.value = false\n isShortcut = false\n}\nconst handleDatePick = async (value: DateTableEmits, keepOpen?: boolean) => {\n if (selectionMode.value === 'date') {\n value = value as Dayjs\n let newDate = props.parsedValue\n ? (props.parsedValue as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n : value\n // change default time while out of selectableRange\n if (!checkDateWithinRange(newDate)) {\n newDate = (selectableRange.value[0][0] as Dayjs)\n .year(value.year())\n .month(value.month())\n .date(value.date())\n }\n innerDate.value = newDate\n emit(newDate, showTime.value || keepOpen)\n // fix: https://github.com/element-plus/element-plus/issues/14728\n if (props.type === 'datetime') {\n await nextTick()\n handleFocusPicker()\n }\n } else if (selectionMode.value === 'week') {\n emit((value as WeekPickerEmits).date)\n } else if (selectionMode.value === 'dates') {\n emit(value as DatesPickerEmits, true) // set true to keep panel open\n }\n}\n\nconst moveByMonth = (forward: boolean) => {\n const action = forward ? 'add' : 'subtract'\n innerDate.value = innerDate.value[action](1, 'month')\n handlePanelChange('month')\n}\n\nconst moveByYear = (forward: boolean) => {\n const currentDate = innerDate.value\n const action = forward ? 'add' : 'subtract'\n\n innerDate.value =\n currentView.value === 'year'\n ? currentDate[action](10, 'year')\n : currentDate[action](1, 'year')\n\n handlePanelChange('year')\n}\n\nconst currentView = ref('date')\n\nconst yearLabel = computed(() => {\n const yearTranslation = t('el.datepicker.year')\n if (currentView.value === 'year') {\n const startYear = Math.floor(year.value / 10) * 10\n if (yearTranslation) {\n return `${startYear} ${yearTranslation} - ${\n startYear + 9\n } ${yearTranslation}`\n }\n return `${startYear} - ${startYear + 9}`\n }\n return `${year.value} ${yearTranslation}`\n})\n\ntype Shortcut = {\n value: (() => Dayjs) | Dayjs\n onClick?: (ctx: Omit<SetupContext, 'expose'>) => void\n}\n\nconst handleShortcutClick = (shortcut: Shortcut) => {\n const shortcutValue = isFunction(shortcut.value)\n ? shortcut.value()\n : shortcut.value\n if (shortcutValue) {\n isShortcut = true\n emit(dayjs(shortcutValue).locale(lang.value))\n return\n }\n if (shortcut.onClick) {\n shortcut.onClick({\n attrs,\n slots,\n emit: contextEmit as SetupContext['emit'],\n })\n }\n}\n\nconst selectionMode = computed<DatePickType>(() => {\n const { type } = props\n if (['week', 'month', 'months', 'year', 'years', 'dates'].includes(type))\n return type\n return 'date' as DatePickType\n})\n\nconst isMultipleType = computed(() => {\n return (\n selectionMode.value === 'dates' ||\n selectionMode.value === 'months' ||\n selectionMode.value === 'years'\n )\n})\n\nconst keyboardMode = computed<string>(() => {\n return selectionMode.value === 'date'\n ? currentView.value\n : selectionMode.value\n})\n\nconst hasShortcuts = computed(() => !!shortcuts.length)\n\nconst handleMonthPick = async (\n month: number | MonthsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'month') {\n innerDate.value = getValidDateOfMonth(\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate\n )\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'months') {\n emit(month as MonthsPickerEmits, keepOpen ?? true)\n } else {\n innerDate.value = getValidDateOfMonth(\n innerDate.value.year(),\n month as number,\n lang.value,\n disabledDate\n )\n currentView.value = 'date'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('month')\n}\n\nconst handleYearPick = async (\n year: number | YearsPickerEmits,\n keepOpen?: boolean\n) => {\n if (selectionMode.value === 'year') {\n const data = innerDate.value.startOf('year').year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate)\n emit(innerDate.value, false)\n } else if (selectionMode.value === 'years') {\n emit(year as YearsPickerEmits, keepOpen ?? true)\n } else {\n const data = innerDate.value.year(year as number)\n innerDate.value = getValidDateOfYear(data, lang.value, disabledDate)\n currentView.value = 'month'\n if (['month', 'year', 'date', 'week'].includes(selectionMode.value)) {\n emit(innerDate.value, true)\n await nextTick()\n handleFocusPicker()\n }\n }\n handlePanelChange('year')\n}\n\nconst showPicker = async (view: 'month' | 'year') => {\n currentView.value = view\n await nextTick()\n handleFocusPicker()\n}\n\nconst showTime = computed(\n () => props.type === 'datetime' || props.type === 'datetimerange'\n)\n\nconst footerVisible = computed(() => {\n const showDateFooter = showTime.value || selectionMode.value === 'dates'\n const showYearFooter = selectionMode.value === 'years'\n const showMonthFooter = selectionMode.value === 'months'\n const isDateView = currentView.value === 'date'\n const isYearView = currentView.value === 'year'\n const isMonthView = currentView.value === 'month'\n return (\n (showDateFooter && isDateView) ||\n (showYearFooter && isYearView) ||\n (showMonthFooter && isMonthView)\n )\n})\n\nconst disabledConfirm = computed(() => {\n if (!disabledDate) return false\n if (!props.parsedValue) return true\n if (isArray(props.parsedValue)) {\n return disabledDate(props.parsedValue[0].toDate())\n }\n return disabledDate(props.parsedValue.toDate())\n})\nconst onConfirm = () => {\n if (isMultipleType.value) {\n emit(props.parsedValue as Dayjs[])\n } else {\n // deal with the scenario where: user opens the date time picker, then confirm without doing anything\n let result = props.parsedValue as Dayjs\n if (!result) {\n const defaultTimeD = dayjs(defaultTime).locale(lang.value)\n const defaultValueD = getDefaultValue()\n result = defaultTimeD\n .year(defaultValueD.year())\n .month(defaultValueD.month())\n .date(defaultValueD.date())\n }\n innerDate.value = result\n emit(result)\n }\n}\n\nconst disabledNow = computed(() => {\n if (!disabledDate) return false\n return disabledDate(dayjs().locale(lang.value).toDate())\n})\nconst changeToNow = () => {\n // NOTE: not a permanent solution\n // consider disable \"now\" button in the future\n const now = dayjs().locale(lang.value)\n const nowDate = now.toDate()\n isChangeToNow.value = true\n if (\n (!disabledDate || !disabledDate(nowDate)) &&\n checkDateWithinRange(nowDate)\n ) {\n innerDate.value = dayjs().locale(lang.value)\n emit(innerDate.value)\n }\n}\n\nconst timeFormat = computed(() => {\n return props.timeFormat || extractTimeFormat(props.format)\n})\n\nconst dateFormat = computed(() => {\n return props.dateFormat || extractDateFormat(props.format)\n})\n\nconst visibleTime = computed(() => {\n if (userInputTime.value) return userInputTime.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n timeFormat.value\n )\n})\n\nconst visibleDate = computed(() => {\n if (userInputDate.value) return userInputDate.value\n if (!props.parsedValue && !defaultValue.value) return\n return ((props.parsedValue || innerDate.value) as Dayjs).format(\n dateFormat.value\n )\n})\n\nconst timePickerVisible = ref(false)\nconst onTimePickerInputFocus = () => {\n timePickerVisible.value = true\n}\nconst handleTimePickClose = () => {\n timePickerVisible.value = false\n}\n\nconst getUnits = (date: Dayjs) => {\n return {\n hour: date.hour(),\n minute: date.minute(),\n second: date.second(),\n year: date.year(),\n month: date.month(),\n date: date.date(),\n }\n}\n\nconst handleTimePick = (value: Dayjs, visible: boolean, first: boolean) => {\n const { hour, minute, second } = getUnits(value)\n const newDate = props.parsedValue\n ? (props.parsedValue as Dayjs).hour(hour).minute(minute).second(second)\n : value\n innerDate.value = newDate\n emit(innerDate.value, true)\n if (!first) {\n timePickerVisible.value = visible\n }\n}\n\nconst handleVisibleTimeChange = (value: string) => {\n const newDate = dayjs(value, timeFormat.value).locale(lang.value)\n if (newDate.isValid() && checkDateWithinRange(newDate)) {\n const { year, month, date } = getUnits(innerDate.value)\n innerDate.value = newDate.year(year).month(month).date(date)\n userInputTime.value = null\n timePickerVisible.value = false\n emit(innerDate.value, true)\n }\n}\n\nconst handleVisibleDateChange = (value: string) => {\n const newDate = dayjs(value, dateFormat.value).locale(lang.value)\n if (newDate.isValid()) {\n if (disabledDate && disabledDate(newDate.toDate())) {\n return\n }\n const { hour, minute, second } = getUnits(innerDate.value)\n innerDate.value = newDate.hour(hour).minute(minute).second(second)\n userInputDate.value = null\n emit(innerDate.value, true)\n }\n}\n\nconst isValidValue = (date: unknown) => {\n return (\n dayjs.isDayjs(date) &&\n date.isValid() &&\n (disabledDate ? !disabledDate(date.toDate()) : true)\n )\n}\n\nconst formatToString = (value: Dayjs | Dayjs[]) => {\n return isArray(value)\n ? (value as Dayjs[]).map((_) => _.format(props.format))\n : (value as Dayjs).format(props.format)\n}\n\nconst parseUserInput = (value: Dayjs) => {\n return dayjs(value, props.format).locale(lang.value)\n}\n\nconst getDefaultValue = () => {\n const parseDate = dayjs(defaultValue.value).locale(lang.value)\n if (!defaultValue.value) {\n const defaultTimeDValue = defaultTimeD.value\n return dayjs()\n .hour(defaultTimeDValue.hour())\n .minute(defaultTimeDValue.minute())\n .second(defaultTimeDValue.second())\n .locale(lang.value)\n }\n return parseDate\n}\n\nconst handleFocusPicker = () => {\n if (['week', 'month', 'year', 'date'].includes(selectionMode.value)) {\n currentViewRef.value?.focus()\n }\n}\n\nconst _handleFocusPicker = () => {\n handleFocusPicker()\n // TODO: After focus the date input, the first time you use the ArrowDown keys, you cannot focus on the date cell\n if (selectionMode.value === 'week') {\n handleKeyControl(EVENT_CODE.down)\n }\n}\n\nconst handleKeydownTable = (event: KeyboardEvent) => {\n const { code } = event\n const validCode = [\n EVENT_CODE.up,\n EVENT_CODE.down,\n EVENT_CODE.left,\n EVENT_CODE.right,\n EVENT_CODE.home,\n EVENT_CODE.end,\n EVENT_CODE.pageUp,\n EVENT_CODE.pageDown,\n ]\n if (validCode.includes(code)) {\n handleKeyControl(code)\n event.stopPropagation()\n event.preventDefault()\n }\n if (\n [EVENT_CODE.enter, EVENT_CODE.space, EVENT_CODE.numpadEnter].includes(\n code\n ) &&\n userInputDate.value === null &&\n userInputTime.value === null\n ) {\n event.preventDefault()\n emit(innerDate.value, false)\n }\n}\n\nconst handleKeyControl = (code: string) => {\n type KeyControlMappingCallableOffset = (date: Date, step?: number) => number\n type KeyControl = {\n [key: string]:\n | number\n | KeyControlMappingCallableOffset\n | ((date: Date, step: number) => any)\n offset: (date: Date, step: number) => any\n }\n interface KeyControlMapping {\n [key: string]: KeyControl\n }\n\n const { up, down, left, right, home, end, pageUp, pageDown } = EVENT_CODE\n const mapping: KeyControlMapping = {\n year: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setFullYear(date.getFullYear() + step),\n },\n month: {\n [up]: -4,\n [down]: 4,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setMonth(date.getMonth() + step),\n },\n week: {\n [up]: -1,\n [down]: 1,\n [left]: -1,\n [right]: 1,\n offset: (date: Date, step: number) =>\n date.setDate(date.getDate() + step * 7),\n },\n date: {\n [up]: -7,\n [down]: 7,\n [left]: -1,\n [right]: 1,\n [home]: (date: Date) => -date.getDay(),\n [end]: (date: Date) => -date.getDay() + 6,\n [pageUp]: (date: Date) =>\n -new Date(date.getFullYear(), date.getMonth(), 0).getDate(),\n [pageDown]: (date: Date) =>\n new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate(),\n offset: (date: Date, step: number) => date.setDate(date.getDate() + step),\n },\n }\n\n const newDate = innerDate.value.toDate()\n while (Math.abs(innerDate.value.diff(newDate, 'year', true)) < 1) {\n const map = mapping[keyboardMode.value]\n if (!map) return\n map.offset(\n newDate,\n isFunction(map[code])\n ? (map[code] as unknown as KeyControlMappingCallableOffset)(newDate)\n : (map[code] as number) ?? 0\n )\n if (disabledDate && disabledDate(newDate)) {\n break\n }\n const result = dayjs(newDate).locale(lang.value)\n innerDate.value = result\n contextEmit('pick', result, true)\n break\n }\n}\n\nconst handlePanelChange = (mode: 'month' | 'year') => {\n contextEmit('panel-change', innerDate.value.toDate(), mode, currentView.value)\n}\n\nwatch(\n () => selectionMode.value,\n (val) => {\n if (['month', 'year'].includes(val)) {\n currentView.value = val\n return\n } else if (val === 'years') {\n currentView.value = 'year'\n return\n } else if (val === 'months') {\n currentView.value = 'month'\n return\n }\n currentView.value = 'date'\n },\n { immediate: true }\n)\n\nwatch(\n () => currentView.value,\n () => {\n popper?.updatePopper()\n }\n)\n\nwatch(\n () => defaultValue.value,\n (val) => {\n if (val) {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\nwatch(\n () => props.parsedValue,\n (val) => {\n if (val) {\n if (isMultipleType.value) return\n if (isArray(val)) return\n innerDate.value = val\n } else {\n innerDate.value = getDefaultValue()\n }\n },\n { immediate: true }\n)\n\ncontextEmit('set-picker-option', ['isValidValue', isValidValue])\ncontextEmit('set-picker-option', ['formatToString', formatToString])\ncontextEmit('set-picker-option', ['parseUserInput', parseUserInput])\ncontextEmit('set-picker-option', ['handleFocusPicker', _handleFocusPicker])\n</script>\n"],"names":["useNamespace","useAttrs","useSlots","useLocale","inject","TOOLTIP_INJECTION_KEY","toRef","ref","dayjs","computed","isArray","nextTick","isFunction","month","getValidDateOfMonth","getValidDateOfYear","year","extractTimeFormat","extractDateFormat","EVENT_CODE","watch","_openBlock","_normalizeClass","_unref","_createElementVNode","_renderSlot","_createElementBlock","_Fragment","_renderList"],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var vue = require('vue');
6
- var descriptionsRow = require('./descriptions-row.js');
6
+ var descriptionsRow = require('./descriptions-row2.js');
7
7
  var token = require('./token.js');
8
8
  var description = require('./description.js');
9
9
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
@@ -2,71 +2,14 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- var descriptionsCell = require('./descriptions-cell.js');
7
- var token = require('./token.js');
8
- var descriptionsRow = require('./descriptions-row2.js');
9
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
5
+ var runtime = require('../../../utils/vue/props/runtime.js');
10
6
 
11
- const __default__ = vue.defineComponent({
12
- name: "ElDescriptionsRow"
13
- });
14
- const _sfc_main = /* @__PURE__ */ vue.defineComponent({
15
- ...__default__,
16
- props: descriptionsRow.descriptionsRowProps,
17
- setup(__props) {
18
- const descriptions = vue.inject(token.descriptionsKey, {});
19
- return (_ctx, _cache) => {
20
- return vue.unref(descriptions).direction === "vertical" ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
21
- vue.createElementVNode("tr", null, [
22
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.row, (cell, _index) => {
23
- return vue.openBlock(), vue.createBlock(vue.unref(descriptionsCell["default"]), {
24
- key: `tr1-${_index}`,
25
- cell,
26
- tag: "th",
27
- type: "label"
28
- }, null, 8, ["cell"]);
29
- }), 128))
30
- ]),
31
- vue.createElementVNode("tr", null, [
32
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.row, (cell, _index) => {
33
- return vue.openBlock(), vue.createBlock(vue.unref(descriptionsCell["default"]), {
34
- key: `tr2-${_index}`,
35
- cell,
36
- tag: "td",
37
- type: "content"
38
- }, null, 8, ["cell"]);
39
- }), 128))
40
- ])
41
- ], 64)) : (vue.openBlock(), vue.createElementBlock("tr", { key: 1 }, [
42
- (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.row, (cell, _index) => {
43
- return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
44
- key: `tr3-${_index}`
45
- }, [
46
- vue.unref(descriptions).border ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
47
- vue.createVNode(vue.unref(descriptionsCell["default"]), {
48
- cell,
49
- tag: "td",
50
- type: "label"
51
- }, null, 8, ["cell"]),
52
- vue.createVNode(vue.unref(descriptionsCell["default"]), {
53
- cell,
54
- tag: "td",
55
- type: "content"
56
- }, null, 8, ["cell"])
57
- ], 64)) : (vue.openBlock(), vue.createBlock(vue.unref(descriptionsCell["default"]), {
58
- key: 1,
59
- cell,
60
- tag: "td",
61
- type: "both"
62
- }, null, 8, ["cell"]))
63
- ], 64);
64
- }), 128))
65
- ]));
66
- };
7
+ const descriptionsRowProps = runtime.buildProps({
8
+ row: {
9
+ type: runtime.definePropType(Array),
10
+ default: () => []
67
11
  }
68
12
  });
69
- var ElDescriptionsRow = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "descriptions-row.vue"]]);
70
13
 
71
- exports["default"] = ElDescriptionsRow;
14
+ exports.descriptionsRowProps = descriptionsRowProps;
72
15
  //# sourceMappingURL=descriptions-row.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"descriptions-row.js","sources":["../../../../../../packages/components/descriptions/src/descriptions-row.vue"],"sourcesContent":["<template>\n <template v-if=\"descriptions.direction === 'vertical'\">\n <tr>\n <template v-for=\"(cell, _index) in row\" :key=\"`tr1-${_index}`\">\n <el-descriptions-cell :cell=\"cell\" tag=\"th\" type=\"label\" />\n </template>\n </tr>\n <tr>\n <template v-for=\"(cell, _index) in row\" :key=\"`tr2-${_index}`\">\n <el-descriptions-cell :cell=\"cell\" tag=\"td\" type=\"content\" />\n </template>\n </tr>\n </template>\n <tr v-else>\n <template v-for=\"(cell, _index) in row\" :key=\"`tr3-${_index}`\">\n <template v-if=\"descriptions.border\">\n <el-descriptions-cell :cell=\"cell\" tag=\"td\" type=\"label\" />\n <el-descriptions-cell :cell=\"cell\" tag=\"td\" type=\"content\" />\n </template>\n <el-descriptions-cell v-else :cell=\"cell\" tag=\"td\" type=\"both\" />\n </template>\n </tr>\n</template>\n\n<script lang=\"ts\" setup>\nimport { inject } from 'vue'\n\nimport ElDescriptionsCell from './descriptions-cell'\nimport { descriptionsKey } from './token'\nimport { descriptionsRowProps } from './descriptions-row'\n\nimport type { IDescriptionsInject } from './descriptions.type'\n\ndefineOptions({\n name: 'ElDescriptionsRow',\n})\n\ndefineProps(descriptionsRowProps)\n\nconst descriptions = inject(descriptionsKey, {} as IDescriptionsInject)\n</script>\n"],"names":["inject","descriptionsKey"],"mappings":";;;;;;;;;;uCAiCc,CAAA;AAAA,EACZ,IAAM,EAAA,mBAAA;AACR,CAAA,CAAA,CAAA;;;;;AAIA,IAAA,MAAM,YAAe,GAAAA,UAAA,CAAOC,qBAAiB,EAAA,EAAyB,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"descriptions-row.js","sources":["../../../../../../packages/components/descriptions/src/descriptions-row.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { DescriptionItemVNode } from './description-item'\n\nexport const descriptionsRowProps = buildProps({\n row: {\n type: definePropType<DescriptionItemVNode[]>(Array),\n default: () => [],\n },\n} as const)\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;AACY,MAAC,oBAAoB,GAAGA,kBAAU,CAAC;AAC/C,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAEC,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,CAAC;;;;"}
@@ -2,14 +2,71 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var runtime = require('../../../utils/vue/props/runtime.js');
5
+ var vue = require('vue');
6
+ var descriptionsCell = require('./descriptions-cell.js');
7
+ var token = require('./token.js');
8
+ var descriptionsRow = require('./descriptions-row.js');
9
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
6
10
 
7
- const descriptionsRowProps = runtime.buildProps({
8
- row: {
9
- type: runtime.definePropType(Array),
10
- default: () => []
11
+ const __default__ = vue.defineComponent({
12
+ name: "ElDescriptionsRow"
13
+ });
14
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
15
+ ...__default__,
16
+ props: descriptionsRow.descriptionsRowProps,
17
+ setup(__props) {
18
+ const descriptions = vue.inject(token.descriptionsKey, {});
19
+ return (_ctx, _cache) => {
20
+ return vue.unref(descriptions).direction === "vertical" ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
21
+ vue.createElementVNode("tr", null, [
22
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.row, (cell, _index) => {
23
+ return vue.openBlock(), vue.createBlock(vue.unref(descriptionsCell["default"]), {
24
+ key: `tr1-${_index}`,
25
+ cell,
26
+ tag: "th",
27
+ type: "label"
28
+ }, null, 8, ["cell"]);
29
+ }), 128))
30
+ ]),
31
+ vue.createElementVNode("tr", null, [
32
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.row, (cell, _index) => {
33
+ return vue.openBlock(), vue.createBlock(vue.unref(descriptionsCell["default"]), {
34
+ key: `tr2-${_index}`,
35
+ cell,
36
+ tag: "td",
37
+ type: "content"
38
+ }, null, 8, ["cell"]);
39
+ }), 128))
40
+ ])
41
+ ], 64)) : (vue.openBlock(), vue.createElementBlock("tr", { key: 1 }, [
42
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.row, (cell, _index) => {
43
+ return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
44
+ key: `tr3-${_index}`
45
+ }, [
46
+ vue.unref(descriptions).border ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
47
+ vue.createVNode(vue.unref(descriptionsCell["default"]), {
48
+ cell,
49
+ tag: "td",
50
+ type: "label"
51
+ }, null, 8, ["cell"]),
52
+ vue.createVNode(vue.unref(descriptionsCell["default"]), {
53
+ cell,
54
+ tag: "td",
55
+ type: "content"
56
+ }, null, 8, ["cell"])
57
+ ], 64)) : (vue.openBlock(), vue.createBlock(vue.unref(descriptionsCell["default"]), {
58
+ key: 1,
59
+ cell,
60
+ tag: "td",
61
+ type: "both"
62
+ }, null, 8, ["cell"]))
63
+ ], 64);
64
+ }), 128))
65
+ ]));
66
+ };
11
67
  }
12
68
  });
69
+ var ElDescriptionsRow = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "descriptions-row.vue"]]);
13
70
 
14
- exports.descriptionsRowProps = descriptionsRowProps;
71
+ exports["default"] = ElDescriptionsRow;
15
72
  //# sourceMappingURL=descriptions-row2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"descriptions-row2.js","sources":["../../../../../../packages/components/descriptions/src/descriptions-row.ts"],"sourcesContent":["import { buildProps, definePropType } from '@element-plus/utils'\n\nimport type { DescriptionItemVNode } from './description-item'\n\nexport const descriptionsRowProps = buildProps({\n row: {\n type: definePropType<DescriptionItemVNode[]>(Array),\n default: () => [],\n },\n} as const)\n"],"names":["buildProps","definePropType"],"mappings":";;;;;;AACY,MAAC,oBAAoB,GAAGA,kBAAU,CAAC;AAC/C,EAAE,GAAG,EAAE;AACP,IAAI,IAAI,EAAEC,sBAAc,CAAC,KAAK,CAAC;AAC/B,IAAI,OAAO,EAAE,MAAM,EAAE;AACrB,GAAG;AACH,CAAC;;;;"}
1
+ {"version":3,"file":"descriptions-row2.js","sources":["../../../../../../packages/components/descriptions/src/descriptions-row.vue"],"sourcesContent":["<template>\n <template v-if=\"descriptions.direction === 'vertical'\">\n <tr>\n <template v-for=\"(cell, _index) in row\" :key=\"`tr1-${_index}`\">\n <el-descriptions-cell :cell=\"cell\" tag=\"th\" type=\"label\" />\n </template>\n </tr>\n <tr>\n <template v-for=\"(cell, _index) in row\" :key=\"`tr2-${_index}`\">\n <el-descriptions-cell :cell=\"cell\" tag=\"td\" type=\"content\" />\n </template>\n </tr>\n </template>\n <tr v-else>\n <template v-for=\"(cell, _index) in row\" :key=\"`tr3-${_index}`\">\n <template v-if=\"descriptions.border\">\n <el-descriptions-cell :cell=\"cell\" tag=\"td\" type=\"label\" />\n <el-descriptions-cell :cell=\"cell\" tag=\"td\" type=\"content\" />\n </template>\n <el-descriptions-cell v-else :cell=\"cell\" tag=\"td\" type=\"both\" />\n </template>\n </tr>\n</template>\n\n<script lang=\"ts\" setup>\nimport { inject } from 'vue'\n\nimport ElDescriptionsCell from './descriptions-cell'\nimport { descriptionsKey } from './token'\nimport { descriptionsRowProps } from './descriptions-row'\n\nimport type { IDescriptionsInject } from './descriptions.type'\n\ndefineOptions({\n name: 'ElDescriptionsRow',\n})\n\ndefineProps(descriptionsRowProps)\n\nconst descriptions = inject(descriptionsKey, {} as IDescriptionsInject)\n</script>\n"],"names":["inject","descriptionsKey"],"mappings":";;;;;;;;;;uCAiCc,CAAA;AAAA,EACZ,IAAM,EAAA,mBAAA;AACR,CAAA,CAAA,CAAA;;;;;AAIA,IAAA,MAAM,YAAe,GAAAA,UAAA,CAAOC,qBAAiB,EAAA,EAAyB,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -182,7 +182,7 @@ var constants$e = require('./slider/src/constants.js');
182
182
  var space = require('./space/src/space.js');
183
183
  var item = require('./space/src/item.js');
184
184
  var useSpace = require('./space/src/use-space.js');
185
- var statistic = require('./statistic/src/statistic.js');
185
+ var statistic = require('./statistic/src/statistic2.js');
186
186
  var item$1 = require('./steps/src/item.js');
187
187
  var steps = require('./steps/src/steps.js');
188
188
  var _switch = require('./switch/src/switch.js');
@@ -223,7 +223,7 @@ var watermark = require('./watermark/src/watermark.js');
223
223
  var tour = require('./tour/src/tour.js');
224
224
  var step = require('./tour/src/step.js');
225
225
  var content$3 = require('./tour/src/content.js');
226
- var anchor = require('./anchor/src/anchor2.js');
226
+ var anchor = require('./anchor/src/anchor.js');
227
227
  var segmented = require('./segmented/src/segmented.js');
228
228
  var mention = require('./mention/src/mention.js');
229
229
  var directive = require('./loading/src/directive.js');
@@ -178,7 +178,7 @@ var Menu = vue.defineComponent({
178
178
  var _a, _b;
179
179
  if (!menu.value)
180
180
  return -1;
181
- const items2 = Array.from((_b = (_a = menu.value) == null ? void 0 : _a.childNodes) != null ? _b : []).filter((item) => item.nodeName !== "#comment" && (item.nodeName !== "#text" || item.nodeValue));
181
+ const items2 = Array.from((_b = (_a = menu.value) == null ? void 0 : _a.childNodes) != null ? _b : []).filter((item) => item.nodeName !== "#text" || item.nodeValue);
182
182
  const moreItemWidth = 64;
183
183
  const computedMenuStyle = getComputedStyle(menu.value);
184
184
  const paddingLeft = Number.parseInt(computedMenuStyle.paddingLeft, 10);
@@ -187,6 +187,8 @@ var Menu = vue.defineComponent({
187
187
  let calcWidth = 0;
188
188
  let sliceIndex2 = 0;
189
189
  items2.forEach((item, index) => {
190
+ if (item.nodeName === "#comment")
191
+ return;
190
192
  calcWidth += calcMenuItemWidth(item);
191
193
  if (calcWidth <= menuWidth - moreItemWidth) {
192
194
  sliceIndex2 = index + 1;
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sources":["../../../../../../packages/components/menu/src/menu.ts"],"sourcesContent":["import {\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n watchEffect,\n withDirectives,\n} from 'vue'\n\nimport { useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport ElIcon from '@element-plus/components/icon'\nimport { More } from '@element-plus/icons-vue'\nimport {\n buildProps,\n definePropType,\n flattedChildren,\n iconPropType,\n isArray,\n isObject,\n isString,\n mutable,\n} from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ClickOutside as vClickoutside } from '@element-plus/directives'\nimport Menubar from './utils/menu-bar'\nimport ElMenuCollapseTransition from './menu-collapse-transition.vue'\nimport ElSubMenu from './sub-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\nimport type { PopperEffect } from '@element-plus/components/popper'\n\nimport type { MenuItemClicked, MenuProvider, SubMenuProvider } from './types'\nimport type { NavigationFailure, Router } from 'vue-router'\nimport type {\n Component,\n DirectiveArguments,\n ExtractPropTypes,\n VNode,\n VNodeArrayChildren,\n} from 'vue'\nimport type { UseResizeObserverReturn } from '@vueuse/core'\n\nexport const menuProps = buildProps({\n /**\n * @description menu display mode\n */\n mode: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'vertical',\n },\n /**\n * @description index of active menu on page load\n */\n defaultActive: {\n type: String,\n default: '',\n },\n /**\n * @description array that contains indexes of currently active sub-menus\n */\n defaultOpeneds: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n /**\n * @description whether only one sub-menu can be active\n */\n uniqueOpened: Boolean,\n /**\n * @description whether `vue-router` mode is activated. If true, index will be used as 'path' to activate the route action. Use with `default-active` to set the active item on load.\n */\n router: Boolean,\n /**\n * @description how sub-menus are triggered, only works when `mode` is 'horizontal'\n */\n menuTrigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n /**\n * @description whether the menu is collapsed (available only in vertical mode)\n */\n collapse: Boolean,\n /**\n * @description background color of Menu (hex format) (deprecated, use `--bg-color` instead)\n * @deprecated use `--bg-color` instead\n */\n backgroundColor: String,\n /**\n * @description text color of Menu (hex format) (deprecated, use `--text-color` instead)\n * @deprecated use `--text-color` instead\n */\n textColor: String,\n /**\n * @description text color of currently active menu item (hex format) (deprecated, use `--active-color` instead)\n * @deprecated use `--active-color` instead\n */\n activeTextColor: String,\n /**\n * @description optional, whether menu is collapsed when clicking outside\n */\n closeOnClickOutside: Boolean,\n /**\n * @description whether to enable the collapse transition\n */\n collapseTransition: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the menu is ellipsis (available only in horizontal mode)\n */\n ellipsis: {\n type: Boolean,\n default: true,\n },\n /**\n * @description offset of the popper (effective for all submenus)\n */\n popperOffset: {\n type: Number,\n default: 6,\n },\n /**\n * @description custom ellipsis icon (available only in horizontal mode and ellipsis is true)\n */\n ellipsisIcon: {\n type: iconPropType,\n default: () => More,\n },\n /**\n * @description Tooltip theme, built-in theme: `dark` / `light` when menu is collapsed\n */\n popperEffect: {\n type: definePropType<PopperEffect>(String),\n default: 'dark',\n },\n /**\n * @description custom class name for all popup menus\n */\n popperClass: String,\n /**\n * @description control timeout for all menus before showing\n */\n showTimeout: {\n type: Number,\n default: 300,\n },\n /**\n * @description control timeout for all menus before hiding\n */\n hideTimeout: {\n type: Number,\n default: 300,\n },\n} as const)\nexport type MenuProps = ExtractPropTypes<typeof menuProps>\n\nconst checkIndexPath = (indexPath: unknown): indexPath is string[] =>\n isArray(indexPath) && indexPath.every((path) => isString(path))\n\nexport const menuEmits = {\n close: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n open: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n select: (\n index: string,\n indexPath: string[],\n item: MenuItemClicked,\n routerResult?: Promise<void | NavigationFailure>\n ) =>\n isString(index) &&\n checkIndexPath(indexPath) &&\n isObject(item) &&\n (routerResult === undefined || routerResult instanceof Promise),\n}\nexport type MenuEmits = typeof menuEmits\n\nexport default defineComponent({\n name: 'ElMenu',\n\n props: menuProps,\n emits: menuEmits,\n\n setup(props, { emit, slots, expose }) {\n const instance = getCurrentInstance()!\n const router = instance.appContext.config.globalProperties.$router as Router\n const menu = ref<HTMLUListElement>()\n const nsMenu = useNamespace('menu')\n const nsSubMenu = useNamespace('sub-menu')\n\n // data\n const sliceIndex = ref(-1)\n\n const openedMenus = ref<MenuProvider['openedMenus']>(\n props.defaultOpeneds && !props.collapse\n ? props.defaultOpeneds.slice(0)\n : []\n )\n const activeIndex = ref<MenuProvider['activeIndex']>(props.defaultActive)\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n // computed\n const isMenuPopup = computed<MenuProvider['isMenuPopup']>(() => {\n return (\n props.mode === 'horizontal' ||\n (props.mode === 'vertical' && props.collapse)\n )\n })\n\n // methods\n const initMenu = () => {\n const activeItem = activeIndex.value && items.value[activeIndex.value]\n if (!activeItem || props.mode === 'horizontal' || props.collapse) return\n\n const indexPath = activeItem.indexPath\n\n // 展开该菜单项的路径上所有子菜单\n // expand all subMenus of the menu item\n indexPath.forEach((index) => {\n const subMenu = subMenus.value[index]\n subMenu && openMenu(index, subMenu.indexPath)\n })\n }\n\n const openMenu: MenuProvider['openMenu'] = (index, indexPath) => {\n if (openedMenus.value.includes(index)) return\n // 将不在该菜单路径下的其余菜单收起\n // collapse all menu that are not under current menu item\n if (props.uniqueOpened) {\n openedMenus.value = openedMenus.value.filter((index: string) =>\n indexPath.includes(index)\n )\n }\n openedMenus.value.push(index)\n emit('open', index, indexPath)\n }\n\n const close = (index: string) => {\n const i = openedMenus.value.indexOf(index)\n if (i !== -1) {\n openedMenus.value.splice(i, 1)\n }\n }\n\n const closeMenu: MenuProvider['closeMenu'] = (index, indexPath) => {\n close(index)\n emit('close', index, indexPath)\n }\n\n const handleSubMenuClick: MenuProvider['handleSubMenuClick'] = ({\n index,\n indexPath,\n }) => {\n const isOpened = openedMenus.value.includes(index)\n\n if (isOpened) {\n closeMenu(index, indexPath)\n } else {\n openMenu(index, indexPath)\n }\n }\n\n const handleMenuItemClick: MenuProvider['handleMenuItemClick'] = (\n menuItem\n ) => {\n if (props.mode === 'horizontal' || props.collapse) {\n openedMenus.value = []\n }\n\n const { index, indexPath } = menuItem\n if (isNil(index) || isNil(indexPath)) return\n\n if (props.router && router) {\n const route = menuItem.route || index\n const routerResult = router.push(route).then((res) => {\n if (!res) activeIndex.value = index\n return res\n })\n emit(\n 'select',\n index,\n indexPath,\n { index, indexPath, route },\n routerResult\n )\n } else {\n activeIndex.value = index\n emit('select', index, indexPath, { index, indexPath })\n }\n }\n\n const updateActiveIndex = (val: string) => {\n const itemsInData = items.value\n const item =\n itemsInData[val] ||\n (activeIndex.value && itemsInData[activeIndex.value]) ||\n itemsInData[props.defaultActive]\n\n if (item) {\n activeIndex.value = item.index\n } else {\n activeIndex.value = val\n }\n }\n\n const calcMenuItemWidth = (menuItem: HTMLElement) => {\n const computedStyle = getComputedStyle(menuItem)\n const marginLeft = Number.parseInt(computedStyle.marginLeft, 10)\n const marginRight = Number.parseInt(computedStyle.marginRight, 10)\n return menuItem.offsetWidth + marginLeft + marginRight || 0\n }\n\n const calcSliceIndex = () => {\n if (!menu.value) return -1\n const items = Array.from(menu.value?.childNodes ?? []).filter(\n (item) =>\n // remove comment type node #12634\n item.nodeName !== '#comment' &&\n (item.nodeName !== '#text' || item.nodeValue)\n ) as HTMLElement[]\n const moreItemWidth = 64\n const computedMenuStyle = getComputedStyle(menu.value!)\n const paddingLeft = Number.parseInt(computedMenuStyle.paddingLeft, 10)\n const paddingRight = Number.parseInt(computedMenuStyle.paddingRight, 10)\n const menuWidth = menu.value!.clientWidth - paddingLeft - paddingRight\n let calcWidth = 0\n let sliceIndex = 0\n items.forEach((item, index) => {\n calcWidth += calcMenuItemWidth(item)\n if (calcWidth <= menuWidth - moreItemWidth) {\n sliceIndex = index + 1\n }\n })\n return sliceIndex === items.length ? -1 : sliceIndex\n }\n\n const getIndexPath = (index: string) => subMenus.value[index].indexPath\n\n // Common computer monitor FPS is 60Hz, which means 60 redraws per second. Calculation formula: 1000ms/60 ≈ 16.67ms, In order to avoid a certain chance of repeated triggering when `resize`, set wait to 16.67 * 2 = 33.34\n const debounce = (fn: () => void, wait = 33.34) => {\n let timmer: ReturnType<typeof setTimeout> | null\n return () => {\n timmer && clearTimeout(timmer)\n timmer = setTimeout(() => {\n fn()\n }, wait)\n }\n }\n\n let isFirstTimeRender = true\n const handleResize = () => {\n if (sliceIndex.value === calcSliceIndex()) return\n const callback = () => {\n sliceIndex.value = -1\n nextTick(() => {\n sliceIndex.value = calcSliceIndex()\n })\n }\n // execute callback directly when first time resize to avoid shaking\n isFirstTimeRender ? callback() : debounce(callback)()\n isFirstTimeRender = false\n }\n\n watch(\n () => props.defaultActive,\n (currentActive) => {\n if (!items.value[currentActive]) {\n activeIndex.value = ''\n }\n updateActiveIndex(currentActive)\n }\n )\n\n watch(\n () => props.collapse,\n (value) => {\n if (value) openedMenus.value = []\n }\n )\n\n watch(items.value, initMenu)\n\n let resizeStopper: UseResizeObserverReturn['stop']\n watchEffect(() => {\n if (props.mode === 'horizontal' && props.ellipsis)\n resizeStopper = useResizeObserver(menu, handleResize).stop\n else resizeStopper?.()\n })\n\n const mouseInChild = ref(false)\n\n // provide\n {\n const addSubMenu: MenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n\n const removeSubMenu: MenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n\n const addMenuItem: MenuProvider['addMenuItem'] = (item) => {\n items.value[item.index] = item\n }\n\n const removeMenuItem: MenuProvider['removeMenuItem'] = (item) => {\n delete items.value[item.index]\n }\n provide<MenuProvider>(\n 'rootMenu',\n reactive({\n props,\n openedMenus,\n items,\n subMenus,\n activeIndex,\n isMenuPopup,\n\n addMenuItem,\n removeMenuItem,\n addSubMenu,\n removeSubMenu,\n openMenu,\n closeMenu,\n handleMenuItemClick,\n handleSubMenuClick,\n })\n )\n provide<SubMenuProvider>(`subMenu:${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n mouseInChild,\n level: 0,\n })\n }\n\n // lifecycle\n onMounted(() => {\n if (props.mode === 'horizontal') {\n new Menubar(instance.vnode.el!, nsMenu.namespace.value)\n }\n })\n\n {\n const open = (index: string) => {\n const { indexPath } = subMenus.value[index]\n indexPath.forEach((i) => openMenu(i, indexPath))\n }\n\n expose({\n open,\n close,\n handleResize,\n })\n }\n\n const ulStyle = useMenuCssVar(props, 0)\n\n return () => {\n let slot: VNodeArrayChildren = slots.default?.() ?? []\n const vShowMore: VNode[] = []\n\n if (props.mode === 'horizontal' && menu.value) {\n const originalSlot = flattedChildren(slot) as VNodeArrayChildren\n const slotDefault =\n sliceIndex.value === -1\n ? originalSlot\n : originalSlot.slice(0, sliceIndex.value)\n\n const slotMore =\n sliceIndex.value === -1 ? [] : originalSlot.slice(sliceIndex.value)\n\n if (slotMore?.length && props.ellipsis) {\n slot = slotDefault\n vShowMore.push(\n h(\n ElSubMenu,\n {\n index: 'sub-menu-more',\n class: nsSubMenu.e('hide-arrow'),\n popperOffset: props.popperOffset,\n },\n {\n title: () =>\n h(\n ElIcon,\n {\n class: nsSubMenu.e('icon-more'),\n },\n {\n default: () => h(props.ellipsisIcon as Component),\n }\n ),\n default: () => slotMore,\n }\n )\n )\n }\n }\n\n const directives: DirectiveArguments = props.closeOnClickOutside\n ? [\n [\n vClickoutside,\n () => {\n if (!openedMenus.value.length) return\n\n if (!mouseInChild.value) {\n openedMenus.value.forEach((openedMenu) =>\n emit('close', openedMenu, getIndexPath(openedMenu))\n )\n\n openedMenus.value = []\n }\n },\n ],\n ]\n : []\n\n const vMenu = withDirectives(\n h(\n 'ul',\n {\n key: String(props.collapse),\n role: 'menubar',\n ref: menu,\n style: ulStyle.value,\n class: {\n [nsMenu.b()]: true,\n [nsMenu.m(props.mode)]: true,\n [nsMenu.m('collapse')]: props.collapse,\n },\n },\n [...slot, ...vShowMore]\n ),\n directives\n )\n\n if (props.collapseTransition && props.mode === 'vertical') {\n return h(ElMenuCollapseTransition, () => vMenu)\n }\n\n return vMenu\n }\n },\n})\n"],"names":["buildProps","definePropType","mutable","iconPropType","More","isArray","isString","isObject","defineComponent","getCurrentInstance","ref","useNamespace","computed","isNil","nextTick","watch","watchEffect","useResizeObserver","provide","reactive","onMounted","Menubar","useMenuCssVar","flattedChildren","h","ElSubMenu","ElIcon","vClickoutside","withDirectives","ElMenuCollapseTransition"],"mappings":"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"}
1
+ {"version":3,"file":"menu.js","sources":["../../../../../../packages/components/menu/src/menu.ts"],"sourcesContent":["import {\n computed,\n defineComponent,\n getCurrentInstance,\n h,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n watch,\n watchEffect,\n withDirectives,\n} from 'vue'\n\nimport { useResizeObserver } from '@vueuse/core'\nimport { isNil } from 'lodash-unified'\nimport ElIcon from '@element-plus/components/icon'\nimport { More } from '@element-plus/icons-vue'\nimport {\n buildProps,\n definePropType,\n flattedChildren,\n iconPropType,\n isArray,\n isObject,\n isString,\n mutable,\n} from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport { ClickOutside as vClickoutside } from '@element-plus/directives'\nimport Menubar from './utils/menu-bar'\nimport ElMenuCollapseTransition from './menu-collapse-transition.vue'\nimport ElSubMenu from './sub-menu'\nimport { useMenuCssVar } from './use-menu-css-var'\nimport type { PopperEffect } from '@element-plus/components/popper'\n\nimport type { MenuItemClicked, MenuProvider, SubMenuProvider } from './types'\nimport type { NavigationFailure, Router } from 'vue-router'\nimport type {\n Component,\n DirectiveArguments,\n ExtractPropTypes,\n VNode,\n VNodeArrayChildren,\n} from 'vue'\nimport type { UseResizeObserverReturn } from '@vueuse/core'\n\nexport const menuProps = buildProps({\n /**\n * @description menu display mode\n */\n mode: {\n type: String,\n values: ['horizontal', 'vertical'],\n default: 'vertical',\n },\n /**\n * @description index of active menu on page load\n */\n defaultActive: {\n type: String,\n default: '',\n },\n /**\n * @description array that contains indexes of currently active sub-menus\n */\n defaultOpeneds: {\n type: definePropType<string[]>(Array),\n default: () => mutable([] as const),\n },\n /**\n * @description whether only one sub-menu can be active\n */\n uniqueOpened: Boolean,\n /**\n * @description whether `vue-router` mode is activated. If true, index will be used as 'path' to activate the route action. Use with `default-active` to set the active item on load.\n */\n router: Boolean,\n /**\n * @description how sub-menus are triggered, only works when `mode` is 'horizontal'\n */\n menuTrigger: {\n type: String,\n values: ['hover', 'click'],\n default: 'hover',\n },\n /**\n * @description whether the menu is collapsed (available only in vertical mode)\n */\n collapse: Boolean,\n /**\n * @description background color of Menu (hex format) (deprecated, use `--bg-color` instead)\n * @deprecated use `--bg-color` instead\n */\n backgroundColor: String,\n /**\n * @description text color of Menu (hex format) (deprecated, use `--text-color` instead)\n * @deprecated use `--text-color` instead\n */\n textColor: String,\n /**\n * @description text color of currently active menu item (hex format) (deprecated, use `--active-color` instead)\n * @deprecated use `--active-color` instead\n */\n activeTextColor: String,\n /**\n * @description optional, whether menu is collapsed when clicking outside\n */\n closeOnClickOutside: Boolean,\n /**\n * @description whether to enable the collapse transition\n */\n collapseTransition: {\n type: Boolean,\n default: true,\n },\n /**\n * @description whether the menu is ellipsis (available only in horizontal mode)\n */\n ellipsis: {\n type: Boolean,\n default: true,\n },\n /**\n * @description offset of the popper (effective for all submenus)\n */\n popperOffset: {\n type: Number,\n default: 6,\n },\n /**\n * @description custom ellipsis icon (available only in horizontal mode and ellipsis is true)\n */\n ellipsisIcon: {\n type: iconPropType,\n default: () => More,\n },\n /**\n * @description Tooltip theme, built-in theme: `dark` / `light` when menu is collapsed\n */\n popperEffect: {\n type: definePropType<PopperEffect>(String),\n default: 'dark',\n },\n /**\n * @description custom class name for all popup menus\n */\n popperClass: String,\n /**\n * @description control timeout for all menus before showing\n */\n showTimeout: {\n type: Number,\n default: 300,\n },\n /**\n * @description control timeout for all menus before hiding\n */\n hideTimeout: {\n type: Number,\n default: 300,\n },\n} as const)\nexport type MenuProps = ExtractPropTypes<typeof menuProps>\n\nconst checkIndexPath = (indexPath: unknown): indexPath is string[] =>\n isArray(indexPath) && indexPath.every((path) => isString(path))\n\nexport const menuEmits = {\n close: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n open: (index: string, indexPath: string[]) =>\n isString(index) && checkIndexPath(indexPath),\n\n select: (\n index: string,\n indexPath: string[],\n item: MenuItemClicked,\n routerResult?: Promise<void | NavigationFailure>\n ) =>\n isString(index) &&\n checkIndexPath(indexPath) &&\n isObject(item) &&\n (routerResult === undefined || routerResult instanceof Promise),\n}\nexport type MenuEmits = typeof menuEmits\n\nexport default defineComponent({\n name: 'ElMenu',\n\n props: menuProps,\n emits: menuEmits,\n\n setup(props, { emit, slots, expose }) {\n const instance = getCurrentInstance()!\n const router = instance.appContext.config.globalProperties.$router as Router\n const menu = ref<HTMLUListElement>()\n const nsMenu = useNamespace('menu')\n const nsSubMenu = useNamespace('sub-menu')\n\n // data\n const sliceIndex = ref(-1)\n\n const openedMenus = ref<MenuProvider['openedMenus']>(\n props.defaultOpeneds && !props.collapse\n ? props.defaultOpeneds.slice(0)\n : []\n )\n const activeIndex = ref<MenuProvider['activeIndex']>(props.defaultActive)\n const items = ref<MenuProvider['items']>({})\n const subMenus = ref<MenuProvider['subMenus']>({})\n\n // computed\n const isMenuPopup = computed<MenuProvider['isMenuPopup']>(() => {\n return (\n props.mode === 'horizontal' ||\n (props.mode === 'vertical' && props.collapse)\n )\n })\n\n // methods\n const initMenu = () => {\n const activeItem = activeIndex.value && items.value[activeIndex.value]\n if (!activeItem || props.mode === 'horizontal' || props.collapse) return\n\n const indexPath = activeItem.indexPath\n\n // 展开该菜单项的路径上所有子菜单\n // expand all subMenus of the menu item\n indexPath.forEach((index) => {\n const subMenu = subMenus.value[index]\n subMenu && openMenu(index, subMenu.indexPath)\n })\n }\n\n const openMenu: MenuProvider['openMenu'] = (index, indexPath) => {\n if (openedMenus.value.includes(index)) return\n // 将不在该菜单路径下的其余菜单收起\n // collapse all menu that are not under current menu item\n if (props.uniqueOpened) {\n openedMenus.value = openedMenus.value.filter((index: string) =>\n indexPath.includes(index)\n )\n }\n openedMenus.value.push(index)\n emit('open', index, indexPath)\n }\n\n const close = (index: string) => {\n const i = openedMenus.value.indexOf(index)\n if (i !== -1) {\n openedMenus.value.splice(i, 1)\n }\n }\n\n const closeMenu: MenuProvider['closeMenu'] = (index, indexPath) => {\n close(index)\n emit('close', index, indexPath)\n }\n\n const handleSubMenuClick: MenuProvider['handleSubMenuClick'] = ({\n index,\n indexPath,\n }) => {\n const isOpened = openedMenus.value.includes(index)\n\n if (isOpened) {\n closeMenu(index, indexPath)\n } else {\n openMenu(index, indexPath)\n }\n }\n\n const handleMenuItemClick: MenuProvider['handleMenuItemClick'] = (\n menuItem\n ) => {\n if (props.mode === 'horizontal' || props.collapse) {\n openedMenus.value = []\n }\n\n const { index, indexPath } = menuItem\n if (isNil(index) || isNil(indexPath)) return\n\n if (props.router && router) {\n const route = menuItem.route || index\n const routerResult = router.push(route).then((res) => {\n if (!res) activeIndex.value = index\n return res\n })\n emit(\n 'select',\n index,\n indexPath,\n { index, indexPath, route },\n routerResult\n )\n } else {\n activeIndex.value = index\n emit('select', index, indexPath, { index, indexPath })\n }\n }\n\n const updateActiveIndex = (val: string) => {\n const itemsInData = items.value\n const item =\n itemsInData[val] ||\n (activeIndex.value && itemsInData[activeIndex.value]) ||\n itemsInData[props.defaultActive]\n\n if (item) {\n activeIndex.value = item.index\n } else {\n activeIndex.value = val\n }\n }\n\n const calcMenuItemWidth = (menuItem: HTMLElement) => {\n const computedStyle = getComputedStyle(menuItem)\n const marginLeft = Number.parseInt(computedStyle.marginLeft, 10)\n const marginRight = Number.parseInt(computedStyle.marginRight, 10)\n return menuItem.offsetWidth + marginLeft + marginRight || 0\n }\n\n const calcSliceIndex = () => {\n if (!menu.value) return -1\n const items = Array.from(menu.value?.childNodes ?? []).filter(\n (item) => item.nodeName !== '#text' || item.nodeValue\n ) as HTMLElement[]\n const moreItemWidth = 64\n const computedMenuStyle = getComputedStyle(menu.value!)\n const paddingLeft = Number.parseInt(computedMenuStyle.paddingLeft, 10)\n const paddingRight = Number.parseInt(computedMenuStyle.paddingRight, 10)\n const menuWidth = menu.value!.clientWidth - paddingLeft - paddingRight\n let calcWidth = 0\n let sliceIndex = 0\n items.forEach((item, index) => {\n if (item.nodeName === '#comment') return\n calcWidth += calcMenuItemWidth(item)\n if (calcWidth <= menuWidth - moreItemWidth) {\n sliceIndex = index + 1\n }\n })\n return sliceIndex === items.length ? -1 : sliceIndex\n }\n\n const getIndexPath = (index: string) => subMenus.value[index].indexPath\n\n // Common computer monitor FPS is 60Hz, which means 60 redraws per second. Calculation formula: 1000ms/60 ≈ 16.67ms, In order to avoid a certain chance of repeated triggering when `resize`, set wait to 16.67 * 2 = 33.34\n const debounce = (fn: () => void, wait = 33.34) => {\n let timmer: ReturnType<typeof setTimeout> | null\n return () => {\n timmer && clearTimeout(timmer)\n timmer = setTimeout(() => {\n fn()\n }, wait)\n }\n }\n\n let isFirstTimeRender = true\n const handleResize = () => {\n if (sliceIndex.value === calcSliceIndex()) return\n const callback = () => {\n sliceIndex.value = -1\n nextTick(() => {\n sliceIndex.value = calcSliceIndex()\n })\n }\n // execute callback directly when first time resize to avoid shaking\n isFirstTimeRender ? callback() : debounce(callback)()\n isFirstTimeRender = false\n }\n\n watch(\n () => props.defaultActive,\n (currentActive) => {\n if (!items.value[currentActive]) {\n activeIndex.value = ''\n }\n updateActiveIndex(currentActive)\n }\n )\n\n watch(\n () => props.collapse,\n (value) => {\n if (value) openedMenus.value = []\n }\n )\n\n watch(items.value, initMenu)\n\n let resizeStopper: UseResizeObserverReturn['stop']\n watchEffect(() => {\n if (props.mode === 'horizontal' && props.ellipsis)\n resizeStopper = useResizeObserver(menu, handleResize).stop\n else resizeStopper?.()\n })\n\n const mouseInChild = ref(false)\n\n // provide\n {\n const addSubMenu: MenuProvider['addSubMenu'] = (item) => {\n subMenus.value[item.index] = item\n }\n\n const removeSubMenu: MenuProvider['removeSubMenu'] = (item) => {\n delete subMenus.value[item.index]\n }\n\n const addMenuItem: MenuProvider['addMenuItem'] = (item) => {\n items.value[item.index] = item\n }\n\n const removeMenuItem: MenuProvider['removeMenuItem'] = (item) => {\n delete items.value[item.index]\n }\n provide<MenuProvider>(\n 'rootMenu',\n reactive({\n props,\n openedMenus,\n items,\n subMenus,\n activeIndex,\n isMenuPopup,\n\n addMenuItem,\n removeMenuItem,\n addSubMenu,\n removeSubMenu,\n openMenu,\n closeMenu,\n handleMenuItemClick,\n handleSubMenuClick,\n })\n )\n provide<SubMenuProvider>(`subMenu:${instance.uid}`, {\n addSubMenu,\n removeSubMenu,\n mouseInChild,\n level: 0,\n })\n }\n\n // lifecycle\n onMounted(() => {\n if (props.mode === 'horizontal') {\n new Menubar(instance.vnode.el!, nsMenu.namespace.value)\n }\n })\n\n {\n const open = (index: string) => {\n const { indexPath } = subMenus.value[index]\n indexPath.forEach((i) => openMenu(i, indexPath))\n }\n\n expose({\n open,\n close,\n handleResize,\n })\n }\n\n const ulStyle = useMenuCssVar(props, 0)\n\n return () => {\n let slot: VNodeArrayChildren = slots.default?.() ?? []\n const vShowMore: VNode[] = []\n\n if (props.mode === 'horizontal' && menu.value) {\n const originalSlot = flattedChildren(slot) as VNodeArrayChildren\n const slotDefault =\n sliceIndex.value === -1\n ? originalSlot\n : originalSlot.slice(0, sliceIndex.value)\n\n const slotMore =\n sliceIndex.value === -1 ? [] : originalSlot.slice(sliceIndex.value)\n\n if (slotMore?.length && props.ellipsis) {\n slot = slotDefault\n vShowMore.push(\n h(\n ElSubMenu,\n {\n index: 'sub-menu-more',\n class: nsSubMenu.e('hide-arrow'),\n popperOffset: props.popperOffset,\n },\n {\n title: () =>\n h(\n ElIcon,\n {\n class: nsSubMenu.e('icon-more'),\n },\n {\n default: () => h(props.ellipsisIcon as Component),\n }\n ),\n default: () => slotMore,\n }\n )\n )\n }\n }\n\n const directives: DirectiveArguments = props.closeOnClickOutside\n ? [\n [\n vClickoutside,\n () => {\n if (!openedMenus.value.length) return\n\n if (!mouseInChild.value) {\n openedMenus.value.forEach((openedMenu) =>\n emit('close', openedMenu, getIndexPath(openedMenu))\n )\n\n openedMenus.value = []\n }\n },\n ],\n ]\n : []\n\n const vMenu = withDirectives(\n h(\n 'ul',\n {\n key: String(props.collapse),\n role: 'menubar',\n ref: menu,\n style: ulStyle.value,\n class: {\n [nsMenu.b()]: true,\n [nsMenu.m(props.mode)]: true,\n [nsMenu.m('collapse')]: props.collapse,\n },\n },\n [...slot, ...vShowMore]\n ),\n directives\n )\n\n if (props.collapseTransition && props.mode === 'vertical') {\n return h(ElMenuCollapseTransition, () => vMenu)\n }\n\n return vMenu\n }\n },\n})\n"],"names":["buildProps","definePropType","mutable","iconPropType","More","isArray","isString","isObject","defineComponent","getCurrentInstance","ref","useNamespace","computed","isNil","nextTick","watch","watchEffect","useResizeObserver","provide","reactive","onMounted","Menubar","useMenuCssVar","flattedChildren","h","ElSubMenu","ElIcon","vClickoutside","withDirectives","ElMenuCollapseTransition"],"mappings":"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"}