@element-plus/nightly 0.0.20220119 → 0.0.20220120

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. package/attributes.json +1 -1
  2. package/dist/index.css +1 -1
  3. package/dist/index.full.js +488 -470
  4. package/dist/index.full.min.js +6 -6
  5. package/dist/index.full.min.js.map +1 -1
  6. package/dist/index.full.min.mjs +9 -9
  7. package/dist/index.full.min.mjs.map +1 -1
  8. package/dist/index.full.mjs +488 -470
  9. package/dist/locale/af.js +1 -1
  10. package/dist/locale/af.min.js +1 -1
  11. package/dist/locale/af.min.mjs +1 -1
  12. package/dist/locale/af.mjs +1 -1
  13. package/dist/locale/ar.js +1 -1
  14. package/dist/locale/ar.min.js +1 -1
  15. package/dist/locale/ar.min.mjs +1 -1
  16. package/dist/locale/ar.mjs +1 -1
  17. package/dist/locale/bg.js +1 -1
  18. package/dist/locale/bg.min.js +1 -1
  19. package/dist/locale/bg.min.mjs +1 -1
  20. package/dist/locale/bg.mjs +1 -1
  21. package/dist/locale/bn.js +1 -1
  22. package/dist/locale/bn.min.js +1 -1
  23. package/dist/locale/bn.min.mjs +1 -1
  24. package/dist/locale/bn.mjs +1 -1
  25. package/dist/locale/ca.js +1 -1
  26. package/dist/locale/ca.min.js +1 -1
  27. package/dist/locale/ca.min.mjs +1 -1
  28. package/dist/locale/ca.mjs +1 -1
  29. package/dist/locale/cs.js +1 -1
  30. package/dist/locale/cs.min.js +1 -1
  31. package/dist/locale/cs.min.mjs +1 -1
  32. package/dist/locale/cs.mjs +1 -1
  33. package/dist/locale/da.js +1 -1
  34. package/dist/locale/da.min.js +1 -1
  35. package/dist/locale/da.min.mjs +1 -1
  36. package/dist/locale/da.mjs +1 -1
  37. package/dist/locale/de.js +1 -1
  38. package/dist/locale/de.min.js +1 -1
  39. package/dist/locale/de.min.mjs +1 -1
  40. package/dist/locale/de.mjs +1 -1
  41. package/dist/locale/el.js +1 -1
  42. package/dist/locale/el.min.js +1 -1
  43. package/dist/locale/el.min.mjs +1 -1
  44. package/dist/locale/el.mjs +1 -1
  45. package/dist/locale/en.js +1 -1
  46. package/dist/locale/en.min.js +1 -1
  47. package/dist/locale/en.min.mjs +1 -1
  48. package/dist/locale/en.mjs +1 -1
  49. package/dist/locale/eo.js +1 -1
  50. package/dist/locale/eo.min.js +1 -1
  51. package/dist/locale/eo.min.mjs +1 -1
  52. package/dist/locale/eo.mjs +1 -1
  53. package/dist/locale/es.js +1 -1
  54. package/dist/locale/es.min.js +1 -1
  55. package/dist/locale/es.min.mjs +1 -1
  56. package/dist/locale/es.mjs +1 -1
  57. package/dist/locale/et.js +1 -1
  58. package/dist/locale/et.min.js +1 -1
  59. package/dist/locale/et.min.mjs +1 -1
  60. package/dist/locale/et.mjs +1 -1
  61. package/dist/locale/eu.js +1 -1
  62. package/dist/locale/eu.min.js +1 -1
  63. package/dist/locale/eu.min.mjs +1 -1
  64. package/dist/locale/eu.mjs +1 -1
  65. package/dist/locale/fa.js +1 -1
  66. package/dist/locale/fa.min.js +1 -1
  67. package/dist/locale/fa.min.mjs +1 -1
  68. package/dist/locale/fa.mjs +1 -1
  69. package/dist/locale/fi.js +1 -1
  70. package/dist/locale/fi.min.js +1 -1
  71. package/dist/locale/fi.min.mjs +1 -1
  72. package/dist/locale/fi.mjs +1 -1
  73. package/dist/locale/fr.js +1 -1
  74. package/dist/locale/fr.min.js +1 -1
  75. package/dist/locale/fr.min.mjs +1 -1
  76. package/dist/locale/fr.mjs +1 -1
  77. package/dist/locale/he.js +1 -1
  78. package/dist/locale/he.min.js +1 -1
  79. package/dist/locale/he.min.mjs +1 -1
  80. package/dist/locale/he.mjs +1 -1
  81. package/dist/locale/hr.js +1 -1
  82. package/dist/locale/hr.min.js +1 -1
  83. package/dist/locale/hr.min.mjs +1 -1
  84. package/dist/locale/hr.mjs +1 -1
  85. package/dist/locale/hu.js +1 -1
  86. package/dist/locale/hu.min.js +1 -1
  87. package/dist/locale/hu.min.mjs +1 -1
  88. package/dist/locale/hu.mjs +1 -1
  89. package/dist/locale/hy-am.js +1 -1
  90. package/dist/locale/hy-am.min.js +1 -1
  91. package/dist/locale/hy-am.min.mjs +1 -1
  92. package/dist/locale/hy-am.mjs +1 -1
  93. package/dist/locale/id.js +1 -1
  94. package/dist/locale/id.min.js +1 -1
  95. package/dist/locale/id.min.mjs +1 -1
  96. package/dist/locale/id.mjs +1 -1
  97. package/dist/locale/it.js +1 -1
  98. package/dist/locale/it.min.js +1 -1
  99. package/dist/locale/it.min.mjs +1 -1
  100. package/dist/locale/it.mjs +1 -1
  101. package/dist/locale/ja.js +1 -1
  102. package/dist/locale/ja.min.js +1 -1
  103. package/dist/locale/ja.min.mjs +1 -1
  104. package/dist/locale/ja.mjs +1 -1
  105. package/dist/locale/kk.js +1 -1
  106. package/dist/locale/kk.min.js +1 -1
  107. package/dist/locale/kk.min.mjs +1 -1
  108. package/dist/locale/kk.mjs +1 -1
  109. package/dist/locale/km.js +1 -1
  110. package/dist/locale/km.min.js +1 -1
  111. package/dist/locale/km.min.mjs +1 -1
  112. package/dist/locale/km.mjs +1 -1
  113. package/dist/locale/ko.js +1 -1
  114. package/dist/locale/ko.min.js +1 -1
  115. package/dist/locale/ko.min.mjs +1 -1
  116. package/dist/locale/ko.mjs +1 -1
  117. package/dist/locale/ku.js +1 -1
  118. package/dist/locale/ku.min.js +1 -1
  119. package/dist/locale/ku.min.mjs +1 -1
  120. package/dist/locale/ku.mjs +1 -1
  121. package/dist/locale/ky.js +1 -1
  122. package/dist/locale/ky.min.js +1 -1
  123. package/dist/locale/ky.min.mjs +1 -1
  124. package/dist/locale/ky.mjs +1 -1
  125. package/dist/locale/lt.js +1 -1
  126. package/dist/locale/lt.min.js +1 -1
  127. package/dist/locale/lt.min.mjs +1 -1
  128. package/dist/locale/lt.mjs +1 -1
  129. package/dist/locale/lv.js +1 -1
  130. package/dist/locale/lv.min.js +1 -1
  131. package/dist/locale/lv.min.mjs +1 -1
  132. package/dist/locale/lv.mjs +1 -1
  133. package/dist/locale/mn.js +1 -1
  134. package/dist/locale/mn.min.js +1 -1
  135. package/dist/locale/mn.min.mjs +1 -1
  136. package/dist/locale/mn.mjs +1 -1
  137. package/dist/locale/nb-no.js +1 -1
  138. package/dist/locale/nb-no.min.js +1 -1
  139. package/dist/locale/nb-no.min.mjs +1 -1
  140. package/dist/locale/nb-no.mjs +1 -1
  141. package/dist/locale/nl.js +1 -1
  142. package/dist/locale/nl.min.js +1 -1
  143. package/dist/locale/nl.min.mjs +1 -1
  144. package/dist/locale/nl.mjs +1 -1
  145. package/dist/locale/pa.js +1 -1
  146. package/dist/locale/pa.min.js +1 -1
  147. package/dist/locale/pa.min.mjs +1 -1
  148. package/dist/locale/pa.mjs +1 -1
  149. package/dist/locale/pl.js +1 -1
  150. package/dist/locale/pl.min.js +1 -1
  151. package/dist/locale/pl.min.mjs +1 -1
  152. package/dist/locale/pl.mjs +1 -1
  153. package/dist/locale/pt-br.js +1 -1
  154. package/dist/locale/pt-br.min.js +1 -1
  155. package/dist/locale/pt-br.min.mjs +1 -1
  156. package/dist/locale/pt-br.mjs +1 -1
  157. package/dist/locale/pt.js +1 -1
  158. package/dist/locale/pt.min.js +1 -1
  159. package/dist/locale/pt.min.mjs +1 -1
  160. package/dist/locale/pt.mjs +1 -1
  161. package/dist/locale/ro.js +1 -1
  162. package/dist/locale/ro.min.js +1 -1
  163. package/dist/locale/ro.min.mjs +1 -1
  164. package/dist/locale/ro.mjs +1 -1
  165. package/dist/locale/ru.js +1 -1
  166. package/dist/locale/ru.min.js +1 -1
  167. package/dist/locale/ru.min.mjs +1 -1
  168. package/dist/locale/ru.mjs +1 -1
  169. package/dist/locale/sk.js +1 -1
  170. package/dist/locale/sk.min.js +1 -1
  171. package/dist/locale/sk.min.mjs +1 -1
  172. package/dist/locale/sk.mjs +1 -1
  173. package/dist/locale/sl.js +1 -1
  174. package/dist/locale/sl.min.js +1 -1
  175. package/dist/locale/sl.min.mjs +1 -1
  176. package/dist/locale/sl.mjs +1 -1
  177. package/dist/locale/sr.js +1 -1
  178. package/dist/locale/sr.min.js +1 -1
  179. package/dist/locale/sr.min.mjs +1 -1
  180. package/dist/locale/sr.mjs +1 -1
  181. package/dist/locale/sv.js +1 -1
  182. package/dist/locale/sv.min.js +1 -1
  183. package/dist/locale/sv.min.mjs +1 -1
  184. package/dist/locale/sv.mjs +1 -1
  185. package/dist/locale/ta.js +1 -1
  186. package/dist/locale/ta.min.js +1 -1
  187. package/dist/locale/ta.min.mjs +1 -1
  188. package/dist/locale/ta.mjs +1 -1
  189. package/dist/locale/th.js +1 -1
  190. package/dist/locale/th.min.js +1 -1
  191. package/dist/locale/th.min.mjs +1 -1
  192. package/dist/locale/th.mjs +1 -1
  193. package/dist/locale/tk.js +1 -1
  194. package/dist/locale/tk.min.js +1 -1
  195. package/dist/locale/tk.min.mjs +1 -1
  196. package/dist/locale/tk.mjs +1 -1
  197. package/dist/locale/tr.js +1 -1
  198. package/dist/locale/tr.min.js +1 -1
  199. package/dist/locale/tr.min.mjs +1 -1
  200. package/dist/locale/tr.mjs +1 -1
  201. package/dist/locale/ug-cn.js +1 -1
  202. package/dist/locale/ug-cn.min.js +1 -1
  203. package/dist/locale/ug-cn.min.mjs +1 -1
  204. package/dist/locale/ug-cn.mjs +1 -1
  205. package/dist/locale/uk.js +1 -1
  206. package/dist/locale/uk.min.js +1 -1
  207. package/dist/locale/uk.min.mjs +1 -1
  208. package/dist/locale/uk.mjs +1 -1
  209. package/dist/locale/uz-uz.js +1 -1
  210. package/dist/locale/uz-uz.min.js +1 -1
  211. package/dist/locale/uz-uz.min.mjs +1 -1
  212. package/dist/locale/uz-uz.mjs +1 -1
  213. package/dist/locale/vi.js +1 -1
  214. package/dist/locale/vi.min.js +1 -1
  215. package/dist/locale/vi.min.mjs +1 -1
  216. package/dist/locale/vi.mjs +1 -1
  217. package/dist/locale/zh-cn.js +1 -1
  218. package/dist/locale/zh-cn.min.js +1 -1
  219. package/dist/locale/zh-cn.min.mjs +1 -1
  220. package/dist/locale/zh-cn.mjs +1 -1
  221. package/dist/locale/zh-tw.js +1 -1
  222. package/dist/locale/zh-tw.min.js +1 -1
  223. package/dist/locale/zh-tw.min.mjs +1 -1
  224. package/dist/locale/zh-tw.mjs +1 -1
  225. package/es/components/calendar/index.d.ts +11 -0
  226. package/es/components/calendar/src/calendar.vue.d.ts +11 -0
  227. package/es/components/calendar/src/calendar.vue_vue_type_script_lang.mjs +4 -1
  228. package/es/components/calendar/src/calendar.vue_vue_type_script_lang.mjs.map +1 -1
  229. package/es/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.mjs +26 -26
  230. package/es/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.mjs.map +1 -1
  231. package/es/components/calendar/src/date-table.vue.d.ts +22 -0
  232. package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs +6 -1
  233. package/es/components/calendar/src/date-table.vue_vue_type_script_lang.mjs.map +1 -1
  234. package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs +7 -9
  235. package/es/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.mjs.map +1 -1
  236. package/es/components/container/index.d.ts +103 -2
  237. package/es/components/container/src/aside.vue.d.ts +11 -0
  238. package/es/components/container/src/aside.vue_vue_type_script_lang.mjs +5 -1
  239. package/es/components/container/src/aside.vue_vue_type_script_lang.mjs.map +1 -1
  240. package/es/components/container/src/aside.vue_vue_type_template_id_47e12f0a_lang.mjs +3 -3
  241. package/es/components/container/src/aside.vue_vue_type_template_id_47e12f0a_lang.mjs.map +1 -1
  242. package/es/components/container/src/container.vue.d.ts +11 -0
  243. package/es/components/container/src/container.vue_vue_type_script_lang.mjs +5 -1
  244. package/es/components/container/src/container.vue_vue_type_script_lang.mjs.map +1 -1
  245. package/es/components/container/src/container.vue_vue_type_template_id_60a2865a_lang.mjs +1 -1
  246. package/es/components/container/src/footer.vue.d.ts +11 -0
  247. package/es/components/container/src/footer.vue_vue_type_script_lang.mjs +5 -1
  248. package/es/components/container/src/footer.vue_vue_type_script_lang.mjs.map +1 -1
  249. package/es/components/container/src/footer.vue_vue_type_template_id_2c2b128e_lang.mjs +3 -3
  250. package/es/components/container/src/footer.vue_vue_type_template_id_2c2b128e_lang.mjs.map +1 -1
  251. package/es/components/container/src/header.vue.d.ts +11 -0
  252. package/es/components/container/src/header.vue_vue_type_script_lang.mjs +5 -1
  253. package/es/components/container/src/header.vue_vue_type_script_lang.mjs.map +1 -1
  254. package/es/components/container/src/header.vue_vue_type_template_id_0b1cdaab_lang.mjs +3 -3
  255. package/es/components/container/src/header.vue_vue_type_template_id_0b1cdaab_lang.mjs.map +1 -1
  256. package/es/components/container/src/main.vue.d.ts +13 -1
  257. package/es/components/container/src/main.vue_vue_type_script_lang.mjs +9 -1
  258. package/es/components/container/src/main.vue_vue_type_script_lang.mjs.map +1 -1
  259. package/es/components/container/src/main.vue_vue_type_template_id_526ed157_lang.mjs +5 -4
  260. package/es/components/container/src/main.vue_vue_type_template_id_526ed157_lang.mjs.map +1 -1
  261. package/es/components/descriptions/index.d.ts +11 -0
  262. package/es/components/descriptions/src/descriptions-cell.mjs +14 -15
  263. package/es/components/descriptions/src/descriptions-cell.mjs.map +1 -1
  264. package/es/components/descriptions/src/index.vue.d.ts +11 -0
  265. package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs +6 -4
  266. package/es/components/descriptions/src/index.vue_vue_type_script_lang.mjs.map +1 -1
  267. package/es/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.mjs +18 -16
  268. package/es/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.mjs.map +1 -1
  269. package/es/components/slider/src/button.vue_vue_type_script_lang.mjs.map +1 -1
  270. package/es/components/slider/src/button.vue_vue_type_template_id_9cd3e794_lang.mjs +3 -4
  271. package/es/components/slider/src/button.vue_vue_type_template_id_9cd3e794_lang.mjs.map +1 -1
  272. package/es/version.d.ts +1 -1
  273. package/es/version.mjs +1 -1
  274. package/es/version.mjs.map +1 -1
  275. package/lib/components/calendar/index.d.ts +11 -0
  276. package/lib/components/calendar/src/calendar.vue.d.ts +11 -0
  277. package/lib/components/calendar/src/calendar.vue_vue_type_script_lang.js +6 -3
  278. package/lib/components/calendar/src/calendar.vue_vue_type_script_lang.js.map +1 -1
  279. package/lib/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.js +25 -25
  280. package/lib/components/calendar/src/calendar.vue_vue_type_template_id_76705c76_lang.js.map +1 -1
  281. package/lib/components/calendar/src/date-table.vue.d.ts +22 -0
  282. package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js +6 -1
  283. package/lib/components/calendar/src/date-table.vue_vue_type_script_lang.js.map +1 -1
  284. package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js +7 -9
  285. package/lib/components/calendar/src/date-table.vue_vue_type_template_id_297fdb36_lang.js.map +1 -1
  286. package/lib/components/container/index.d.ts +103 -2
  287. package/lib/components/container/src/aside.vue.d.ts +11 -0
  288. package/lib/components/container/src/aside.vue_vue_type_script_lang.js +5 -1
  289. package/lib/components/container/src/aside.vue_vue_type_script_lang.js.map +1 -1
  290. package/lib/components/container/src/aside.vue_vue_type_template_id_47e12f0a_lang.js +2 -2
  291. package/lib/components/container/src/aside.vue_vue_type_template_id_47e12f0a_lang.js.map +1 -1
  292. package/lib/components/container/src/container.vue.d.ts +11 -0
  293. package/lib/components/container/src/container.vue_vue_type_script_lang.js +5 -1
  294. package/lib/components/container/src/container.vue_vue_type_script_lang.js.map +1 -1
  295. package/lib/components/container/src/container.vue_vue_type_template_id_60a2865a_lang.js +1 -1
  296. package/lib/components/container/src/footer.vue.d.ts +11 -0
  297. package/lib/components/container/src/footer.vue_vue_type_script_lang.js +5 -1
  298. package/lib/components/container/src/footer.vue_vue_type_script_lang.js.map +1 -1
  299. package/lib/components/container/src/footer.vue_vue_type_template_id_2c2b128e_lang.js +2 -2
  300. package/lib/components/container/src/footer.vue_vue_type_template_id_2c2b128e_lang.js.map +1 -1
  301. package/lib/components/container/src/header.vue.d.ts +11 -0
  302. package/lib/components/container/src/header.vue_vue_type_script_lang.js +5 -1
  303. package/lib/components/container/src/header.vue_vue_type_script_lang.js.map +1 -1
  304. package/lib/components/container/src/header.vue_vue_type_template_id_0b1cdaab_lang.js +2 -2
  305. package/lib/components/container/src/header.vue_vue_type_template_id_0b1cdaab_lang.js.map +1 -1
  306. package/lib/components/container/src/main.vue.d.ts +13 -1
  307. package/lib/components/container/src/main.vue_vue_type_script_lang.js +9 -1
  308. package/lib/components/container/src/main.vue_vue_type_script_lang.js.map +1 -1
  309. package/lib/components/container/src/main.vue_vue_type_template_id_526ed157_lang.js +4 -3
  310. package/lib/components/container/src/main.vue_vue_type_template_id_526ed157_lang.js.map +1 -1
  311. package/lib/components/descriptions/index.d.ts +11 -0
  312. package/lib/components/descriptions/src/descriptions-cell.js +14 -15
  313. package/lib/components/descriptions/src/descriptions-cell.js.map +1 -1
  314. package/lib/components/descriptions/src/index.vue.d.ts +11 -0
  315. package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js +6 -4
  316. package/lib/components/descriptions/src/index.vue_vue_type_script_lang.js.map +1 -1
  317. package/lib/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.js +18 -16
  318. package/lib/components/descriptions/src/index.vue_vue_type_template_id_788d3854_lang.js.map +1 -1
  319. package/lib/components/slider/src/button.vue_vue_type_script_lang.js.map +1 -1
  320. package/lib/components/slider/src/button.vue_vue_type_template_id_9cd3e794_lang.js +3 -4
  321. package/lib/components/slider/src/button.vue_vue_type_template_id_9cd3e794_lang.js.map +1 -1
  322. package/lib/version.d.ts +1 -1
  323. package/lib/version.js +1 -1
  324. package/lib/version.js.map +1 -1
  325. package/package.json +2 -2
  326. package/tags.json +1 -1
  327. package/theme-chalk/el-table.css +1 -1
  328. package/theme-chalk/index.css +1 -1
  329. package/theme-chalk/src/table.scss +2 -2
  330. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.vue_vue_type_template_id_76705c76_lang.mjs","sources":["../../../../../../packages/components/calendar/src/calendar.vue?vue&type=template&id=76705c76&lang.js"],"sourcesContent":["<template>\n <div class=\"el-calendar\">\n <div class=\"el-calendar__header\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div class=\"el-calendar__title\">{{ i18nDate }}</div>\n <div\n v-if=\"validatedRange.length === 0\"\n class=\"el-calendar__button-group\"\n >\n <el-button-group>\n <el-button size=\"small\" @click=\"selectDate('prev-month')\">\n {{ t('el.datepicker.prevMonth') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('today')\">\n {{ t('el.datepicker.today') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('next-month')\">\n {{ t('el.datepicker.nextMonth') }}\n </el-button>\n </el-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" class=\"el-calendar__body\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\" @pick=\"pickDay\">\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n <div v-else class=\"el-calendar__body\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n @pick=\"pickDay\"\n >\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ref, computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport { ElButton, ElButtonGroup } from '@element-plus/components/button'\nimport { useLocale } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils/error'\nimport DateTable from './date-table.vue'\nimport { calendarProps, calendarEmits } from './calendar'\n\nimport type { ComputedRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\ntype DateType =\n | 'prev-month'\n | 'next-month'\n | 'prev-year'\n | 'next-year'\n | 'today'\n\nexport default defineComponent({\n name: 'ElCalendar',\n\n components: {\n DateTable,\n ElButton,\n ElButtonGroup,\n },\n\n props: calendarProps,\n emits: calendarEmits,\n\n setup(props, { emit }) {\n const { t, lang } = useLocale()\n const selectedDay = ref<Dayjs>()\n const now = dayjs().locale(lang.value)\n\n const prevMonthDayjs = computed(() => {\n return date.value.subtract(1, 'month').date(1)\n })\n const curMonthDatePrefix = computed(() => {\n return dayjs(date.value).locale(lang.value).format('YYYY-MM')\n })\n\n const nextMonthDayjs = computed(() => {\n return date.value.add(1, 'month').date(1)\n })\n\n const prevYearDayjs = computed(() => {\n return date.value.subtract(1, 'year').date(1)\n })\n\n const nextYearDayjs = computed(() => {\n return date.value.add(1, 'year').date(1)\n })\n\n const i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n })\n\n const realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n const result = val.toDate()\n\n emit('input', result)\n emit('update:modelValue', result)\n },\n })\n\n const date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n if (realSelectedDay.value) {\n return realSelectedDay.value\n } else if (validatedRange.value.length) {\n return validatedRange.value[0][0]\n }\n return now\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n })\n\n // https://github.com/element-plus/element-plus/issues/3155\n // Calculate the validate date range according to the start and end dates\n const calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n ): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (firstMonth + 2 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const secondMonthFirstDay = firstDay.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(\n lastMonthFirstDay,\n 'week'\n )\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Other cases\n else {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n }\n\n // if range is valid, we get a two-digit array\n const validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn('ElCalendar', 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n })\n\n const pickDay = (day: Dayjs) => {\n realSelectedDay.value = day\n }\n\n const selectDate = (type: DateType) => {\n let day: Dayjs\n if (type === 'prev-month') {\n day = prevMonthDayjs.value\n } else if (type === 'next-month') {\n day = nextMonthDayjs.value\n } else if (type === 'prev-year') {\n day = prevYearDayjs.value\n } else if (type === 'next-year') {\n day = nextYearDayjs.value\n } else {\n day = now\n }\n\n if (day.isSame(date.value, 'day')) return\n pickDay(day)\n }\n\n return {\n selectedDay,\n curMonthDatePrefix,\n i18nDate,\n realSelectedDay,\n date,\n validatedRange,\n pickDay,\n selectDate,\n t,\n }\n },\n})\n</script>\n"],"names":["_renderSlot"],"mappings":";;;qBACO,KAAK,EAAC;qBACJ,KAAK,EAAC;;;;EAKL;;;;EAgBkC;;;;EAO5B;;;;;;;;;;gDA3BiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAoBJ,CAAC;;UACxB;YAAa;YAAaA,eAAc;YAAkB;;yBACjC;;;;oBACrB;;;;;;sBAIN;;;cAGK,SAAU;cACVA,WAAY;cACZ;cACA,KAAK;2BACM;cACX;;;;;;;"}
1
+ {"version":3,"file":"calendar.vue_vue_type_template_id_76705c76_lang.mjs","sources":["../../../../../../packages/components/calendar/src/calendar.vue?vue&type=template&id=76705c76&lang.js"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('header')\">\n <slot name=\"header\" :date=\"i18nDate\">\n <div :class=\"ns.e('title')\">{{ i18nDate }}</div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('button-group')\">\n <el-button-group>\n <el-button size=\"small\" @click=\"selectDate('prev-month')\">\n {{ t('el.datepicker.prevMonth') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('today')\">\n {{ t('el.datepicker.today') }}\n </el-button>\n <el-button size=\"small\" @click=\"selectDate('next-month')\">\n {{ t('el.datepicker.nextMonth') }}\n </el-button>\n </el-button-group>\n </div>\n </slot>\n </div>\n <div v-if=\"validatedRange.length === 0\" :class=\"ns.e('body')\">\n <date-table :date=\"date\" :selected-day=\"realSelectedDay\" @pick=\"pickDay\">\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n <div v-else :class=\"ns.e('body')\">\n <date-table\n v-for=\"(range_, index) in validatedRange\"\n :key=\"index\"\n :date=\"range_[0]\"\n :selected-day=\"realSelectedDay\"\n :range=\"range_\"\n :hide-header=\"index !== 0\"\n @pick=\"pickDay\"\n >\n <template v-if=\"$slots.dateCell\" #dateCell=\"data\">\n <slot name=\"dateCell\" v-bind=\"data\"></slot>\n </template>\n </date-table>\n </div>\n </div>\n</template>\n\n<script lang=\"ts\">\nimport { ref, computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport { ElButton, ElButtonGroup } from '@element-plus/components/button'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils/error'\nimport DateTable from './date-table.vue'\nimport { calendarProps, calendarEmits } from './calendar'\n\nimport type { ComputedRef } from 'vue'\nimport type { Dayjs } from 'dayjs'\n\ntype DateType =\n | 'prev-month'\n | 'next-month'\n | 'prev-year'\n | 'next-year'\n | 'today'\n\nexport default defineComponent({\n name: 'ElCalendar',\n\n components: {\n DateTable,\n ElButton,\n ElButtonGroup,\n },\n\n props: calendarProps,\n emits: calendarEmits,\n\n setup(props, { emit }) {\n const ns = useNamespace('calendar')\n\n const { t, lang } = useLocale()\n const selectedDay = ref<Dayjs>()\n const now = dayjs().locale(lang.value)\n\n const prevMonthDayjs = computed(() => {\n return date.value.subtract(1, 'month').date(1)\n })\n const curMonthDatePrefix = computed(() => {\n return dayjs(date.value).locale(lang.value).format('YYYY-MM')\n })\n\n const nextMonthDayjs = computed(() => {\n return date.value.add(1, 'month').date(1)\n })\n\n const prevYearDayjs = computed(() => {\n return date.value.subtract(1, 'year').date(1)\n })\n\n const nextYearDayjs = computed(() => {\n return date.value.add(1, 'year').date(1)\n })\n\n const i18nDate = computed(() => {\n const pickedMonth = `el.datepicker.month${date.value.format('M')}`\n return `${date.value.year()} ${t('el.datepicker.year')} ${t(pickedMonth)}`\n })\n\n const realSelectedDay = computed<Dayjs | undefined>({\n get() {\n if (!props.modelValue) return selectedDay.value\n return date.value\n },\n set(val) {\n if (!val) return\n selectedDay.value = val\n const result = val.toDate()\n\n emit('input', result)\n emit('update:modelValue', result)\n },\n })\n\n const date: ComputedRef<Dayjs> = computed(() => {\n if (!props.modelValue) {\n if (realSelectedDay.value) {\n return realSelectedDay.value\n } else if (validatedRange.value.length) {\n return validatedRange.value[0][0]\n }\n return now\n } else {\n return dayjs(props.modelValue).locale(lang.value)\n }\n })\n\n // https://github.com/element-plus/element-plus/issues/3155\n // Calculate the validate date range according to the start and end dates\n const calculateValidatedDateRange = (\n startDayjs: Dayjs,\n endDayjs: Dayjs\n ): [Dayjs, Dayjs][] => {\n const firstDay = startDayjs.startOf('week')\n const lastDay = endDayjs.endOf('week')\n const firstMonth = firstDay.get('month')\n const lastMonth = lastDay.get('month')\n\n // Current mouth\n if (firstMonth === lastMonth) {\n return [[firstDay, lastDay]]\n }\n // Two adjacent months\n else if (firstMonth + 1 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the first month and the first day of the last month is in the same week\n const isSameWeek = firstMonthLastDay.isSame(lastMonthFirstDay, 'week')\n const lastMonthStartDay = isSameWeek\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Three consecutive months (compatible: 2021-01-30 to 2021-02-28)\n else if (firstMonth + 2 === lastMonth) {\n const firstMonthLastDay = firstDay.endOf('month')\n const secondMonthFirstDay = firstDay.add(1, 'month').startOf('month')\n\n // Whether the last day of the first month and the second month is in the same week\n const secondMonthStartDay = firstMonthLastDay.isSame(\n secondMonthFirstDay,\n 'week'\n )\n ? secondMonthFirstDay.add(1, 'week')\n : secondMonthFirstDay\n\n const secondMonthLastDay = secondMonthStartDay.endOf('month')\n const lastMonthFirstDay = lastDay.startOf('month')\n\n // Whether the last day of the second month and the last day of the last month is in the same week\n const lastMonthStartDay = secondMonthLastDay.isSame(\n lastMonthFirstDay,\n 'week'\n )\n ? lastMonthFirstDay.add(1, 'week')\n : lastMonthFirstDay\n\n return [\n [firstDay, firstMonthLastDay],\n [secondMonthStartDay.startOf('week'), secondMonthLastDay],\n [lastMonthStartDay.startOf('week'), lastDay],\n ]\n }\n // Other cases\n else {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n }\n\n // if range is valid, we get a two-digit array\n const validatedRange = computed(() => {\n if (!props.range) return []\n const rangeArrDayjs = props.range.map((_) => dayjs(_).locale(lang.value))\n const [startDayjs, endDayjs] = rangeArrDayjs\n if (startDayjs.isAfter(endDayjs)) {\n debugWarn('ElCalendar', 'end time should be greater than start time')\n return []\n }\n if (startDayjs.isSame(endDayjs, 'month')) {\n // same month\n return calculateValidatedDateRange(startDayjs, endDayjs)\n } else {\n // two months\n if (startDayjs.add(1, 'month').month() !== endDayjs.month()) {\n debugWarn(\n 'ElCalendar',\n 'start time and end time interval must not exceed two months'\n )\n return []\n }\n return calculateValidatedDateRange(startDayjs, endDayjs)\n }\n })\n\n const pickDay = (day: Dayjs) => {\n realSelectedDay.value = day\n }\n\n const selectDate = (type: DateType) => {\n let day: Dayjs\n if (type === 'prev-month') {\n day = prevMonthDayjs.value\n } else if (type === 'next-month') {\n day = nextMonthDayjs.value\n } else if (type === 'prev-year') {\n day = prevYearDayjs.value\n } else if (type === 'next-year') {\n day = nextYearDayjs.value\n } else {\n day = now\n }\n\n if (day.isSame(date.value, 'day')) return\n pickDay(day)\n }\n\n return {\n selectedDay,\n curMonthDatePrefix,\n i18nDate,\n realSelectedDay,\n date,\n validatedRange,\n pickDay,\n selectDate,\n t,\n\n ns,\n }\n },\n})\n</script>\n"],"names":["_createElementVNode","_renderSlot"],"mappings":";;;;;;;;;IACQA;;;MACEC,sBAAO;;0CACU;;wCACJ;;;;;mBAC+B;;;kCAE1C;;;;;;;;;;;;+EAG0C;;;;;;;;;;;;;;;;;;;;;;;;uBAUlD;;;;;gBACmB;YAAS,eAAc;YAAkBA;;;;uBACtB;;;;;;;;;;UAKzB;;4BACX;;;cAGG,WAAY;cACZA,eAAc;cACd;cACA;;;;;;;;;"}
@@ -24,6 +24,28 @@ declare const _default: import("vue").DefineComponent<{
24
24
  day: string;
25
25
  date: Date;
26
26
  };
27
+ nsTable: {
28
+ namespace: import("vue").ComputedRef<string>;
29
+ b: (blockSuffix?: string) => string;
30
+ e: (element?: string | undefined) => string;
31
+ m: (modifier?: string | undefined) => string;
32
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
33
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
34
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
35
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
36
+ is: (name: string, state?: boolean) => string;
37
+ };
38
+ nsDay: {
39
+ namespace: import("vue").ComputedRef<string>;
40
+ b: (blockSuffix?: string) => string;
41
+ e: (element?: string | undefined) => string;
42
+ m: (modifier?: string | undefined) => string;
43
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
44
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
45
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
46
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
47
+ is: (name: string, state?: boolean) => string;
48
+ };
27
49
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
28
50
  pick: (value: dayjs.Dayjs) => boolean;
29
51
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -6,6 +6,7 @@ import '../../time-picker/index.mjs';
6
6
  import { dateTableProps, dateTableEmits } from './date-table.mjs';
7
7
  import { rangeArr } from '../../time-picker/src/common/date-utils.mjs';
8
8
  import { useLocale } from '../../../hooks/use-locale/index.mjs';
9
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
9
10
 
10
11
  dayjs.extend(localeData);
11
12
  const WEEK_DAYS = ["sun", "mon", "tue", "wed", "thu", "fri", "sat"];
@@ -26,6 +27,8 @@ var script = defineComponent({
26
27
  emits: dateTableEmits,
27
28
  setup(props, { emit }) {
28
29
  const { t, lang } = useLocale();
30
+ const nsTable = useNamespace("calendar-table");
31
+ const nsDay = useNamespace("calendar-day");
29
32
  const now = dayjs().locale(lang.value);
30
33
  const firstDayOfWeek = now.$locale().weekStart || 0;
31
34
  const isInRange = computed(() => !!props.range && !!props.range.length);
@@ -113,7 +116,9 @@ var script = defineComponent({
113
116
  rows,
114
117
  getCellClass,
115
118
  handlePickDay,
116
- getSlotData
119
+ getSlotData,
120
+ nsTable,
121
+ nsDay
117
122
  };
118
123
  }
119
124
  });
@@ -1 +1 @@
1
- {"version":3,"file":"date-table.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"handlePickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { dateTableProps, dateTableEmits } from './date-table'\nimport type { Dayjs } from 'dayjs'\ndayjs.extend(localeData)\n\ntype CellType = 'next' | 'prev' | 'current'\ninterface Cell {\n text: number\n type: CellType\n}\n\nconst WEEK_DAYS = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'] as const\n\nexport const getPrevMonthLastDays = (date: Dayjs, count: number) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(count).map((_, index) => lastDay - (count - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nconst toNestedArr = (days: Cell[]) =>\n rangeArr(days.length / 7).map((index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n\nexport default defineComponent({\n props: dateTableProps,\n emits: dateTableEmits,\n\n setup(props, { emit }) {\n const { t, lang } = useLocale()\n\n const now = dayjs().locale(lang.value)\n // todo better way to get Day.js locale object\n const firstDayOfWeek: number = (now as any).$locale().weekStart || 0\n\n const isInRange = computed(() => !!props.range && !!props.range.length)\n\n const rows = computed(() => {\n let days: Cell[] = []\n if (isInRange.value) {\n const [start, end] = props.range!\n const currentMonthRange: Cell[] = rangeArr(\n end.date() - start.date() + 1\n ).map((index) => ({\n text: start.date() + index,\n type: 'current',\n }))\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange: Cell[] = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays: Cell[] = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays: Cell[] = getMonthDays(props.date).map(\n (day) => ({\n text: day,\n type: 'current',\n })\n )\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays: Cell[] = rangeArr(42 - days.length).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n if (start === 0) {\n return WEEK_DAYS.map((_) => t(`el.datepicker.weeks.${_}`))\n } else {\n return WEEK_DAYS.slice(start)\n .concat(WEEK_DAYS.slice(0, start))\n .map((_) => t(`el.datepicker.weeks.${_}`))\n }\n })\n\n const getFormattedDate = (day: number, type: CellType): Dayjs => {\n switch (type) {\n case 'prev':\n return props.date.startOf('month').subtract(1, 'month').date(day)\n case 'next':\n return props.date.startOf('month').add(1, 'month').date(day)\n case 'current':\n return props.date.date(day)\n }\n }\n\n const getCellClass = ({ text, type }: Cell) => {\n const classes: string[] = [type]\n if (type === 'current') {\n const date = getFormattedDate(text, type)\n if (date.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const handlePickDay = ({ text, type }: Cell) => {\n const date = getFormattedDate(text, type)\n emit('pick', date)\n }\n\n const getSlotData = ({ text, type }: Cell) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n handlePickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;AA6CA,KAAK,OAAO,CAAC,UAAU,EAAE;AACzB,eAAe,GAAG,MAAM,OAAO,EAAE;AACrB,MAAC;;AAEb,EAAE,OAAO,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ;AACtC,EAAE;AACU,MAAC;EACX,MAAM,IAAI,GAAG;AACf;;AAEA,MAAM,cAAc,CAAC,SAAS,QAAQ,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK;;AAEvE,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC;EACpC,CAAC;aACY,eAAe,CAAC;AAC/B;;AAEA,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE;IACnB,MAAM,GAAG,EAAE,IAAI,EAAE,GAAG;IACpB,MAAM,GAAG,GAAG,KAAK,EAAE,CAAC,MAAM,KAAK,CAAC,MAAM,CAAC;AAC3C;;AAEA,IAAI,MAAM,IAAI,WAAW,OAAO;MAC1B,IAAI,IAAI,GAAG,EAAE,CAAC;MACd,IAAI,SAAS,CAAC;QACZ,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,MAAM;;;AAGnC,UAAU,MAAM,SAAS;SAChB,CAAC,CAAC,CAAC;YACA,SAAS;;QAEb;UACE,MAAM,QAAQ,CAAC;;UAEf,CAAC,CAAC;QACJ,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC;OACjC,MAAM;;QAEL,MAAM,aAAa,GAAG,qBAAqB,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG;;UAEhE,YAAY;UACZ,CAAC,CAAC;cACE;UACJ,IAAI,EAAE,GAAG;UACT,IAAI,EAAE,SAAS;UACf,CAAC,CAAC;QACJ,IAAI,GAAG,CAAC,GAAG;cACL,aAAa;UACjB,IAAI,EAAE,KAAK,GAAG,CAAC;UACf;;QAEF,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;;wBAElB,CAAC,KAAK,CAAC;;UAErB,QAAQ,GAAG;;UAEX,KAAK,KAAK,CAAC,EAAE;QACf;;QAEA,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC;;;UAG7C;cACI,IAAI;aACL,MAAM;UACT;QACF,WAAW;UACT,OAAO;aACJ;sBACS,CAAC,IAAI;;;UAGjB,YAAY,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK;YACjC,OAAO,GAAG,CAAC,IAAI,EAAE;UACnB,IAAI,KAAK;cACL,IAAI,GAAG;YACT,IAAI,OAAO,CAAC;UACd;;QAEF,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;;SAE5B;;;KAGJ,CAAC;UACI,aAAa,GAAG,CAAC,EAAE,IAAI;MAC3B,MAAM,IAAI;UACN,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;MACnB;UACI,WAAW,GAAG,CAAC,EAAE,IAAI,EAAE;YACrB,GAAG,GAAG,gBAAgB,CAAC,IAAI,EAAE;aAC5B;;;;QAIL,IAAI,EAAE,GAAG,CAAC,MAAM;OACjB,CAAC;;WAEG;eACI;cACD;UACJ;kBACQ;MACZ;;;;;;;;"}
1
+ {"version":3,"file":"date-table.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/calendar/src/date-table.vue"],"sourcesContent":["<template>\n <table\n :class=\"[nsTable.b(), nsTable.is('range', isInRange)]\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n [nsTable.e('row')]: true,\n [nsTable.em('row', 'hide-border')]: index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"handlePickDay(cell)\"\n >\n <div :class=\"nsDay.b()\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { dateTableProps, dateTableEmits } from './date-table'\nimport type { Dayjs } from 'dayjs'\ndayjs.extend(localeData)\n\ntype CellType = 'next' | 'prev' | 'current'\ninterface Cell {\n text: number\n type: CellType\n}\n\nconst WEEK_DAYS = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'] as const\n\nexport const getPrevMonthLastDays = (date: Dayjs, count: number) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(count).map((_, index) => lastDay - (count - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nconst toNestedArr = (days: Cell[]) =>\n rangeArr(days.length / 7).map((index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n\nexport default defineComponent({\n props: dateTableProps,\n emits: dateTableEmits,\n\n setup(props, { emit }) {\n const { t, lang } = useLocale()\n const nsTable = useNamespace('calendar-table')\n const nsDay = useNamespace('calendar-day')\n\n const now = dayjs().locale(lang.value)\n // todo better way to get Day.js locale object\n const firstDayOfWeek: number = (now as any).$locale().weekStart || 0\n\n const isInRange = computed(() => !!props.range && !!props.range.length)\n\n const rows = computed(() => {\n let days: Cell[] = []\n if (isInRange.value) {\n const [start, end] = props.range!\n const currentMonthRange: Cell[] = rangeArr(\n end.date() - start.date() + 1\n ).map((index) => ({\n text: start.date() + index,\n type: 'current',\n }))\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange: Cell[] = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays: Cell[] = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays: Cell[] = getMonthDays(props.date).map(\n (day) => ({\n text: day,\n type: 'current',\n })\n )\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays: Cell[] = rangeArr(42 - days.length).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n if (start === 0) {\n return WEEK_DAYS.map((_) => t(`el.datepicker.weeks.${_}`))\n } else {\n return WEEK_DAYS.slice(start)\n .concat(WEEK_DAYS.slice(0, start))\n .map((_) => t(`el.datepicker.weeks.${_}`))\n }\n })\n\n const getFormattedDate = (day: number, type: CellType): Dayjs => {\n switch (type) {\n case 'prev':\n return props.date.startOf('month').subtract(1, 'month').date(day)\n case 'next':\n return props.date.startOf('month').add(1, 'month').date(day)\n case 'current':\n return props.date.date(day)\n }\n }\n\n const getCellClass = ({ text, type }: Cell) => {\n const classes: string[] = [type]\n if (type === 'current') {\n const date = getFormattedDate(text, type)\n if (date.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const handlePickDay = ({ text, type }: Cell) => {\n const date = getFormattedDate(text, type)\n emit('pick', date)\n }\n\n const getSlotData = ({ text, type }: Cell) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n handlePickDay,\n getSlotData,\n\n nsTable,\n nsDay,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;AA0CA,KAAK,OAAO,CAAC,UAAU,EAAE;AACzB,eAAe,GAAG,MAAM,OAAO,EAAE;AACrB,MAAC;;AAEb,EAAE,OAAO,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,QAAQ;AACtC,EAAE;AACU,MAAC;EACX,MAAM,IAAI,GAAG;AACf;;AAEA,MAAM,cAAc,CAAC,SAAS,QAAQ,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,KAAK;;AAEvE,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC;EACpC,CAAC;aACY,eAAe,CAAC;AAC/B;;AAEA,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE;IACnB,MAAM,GAAG,EAAE,IAAI,EAAE,GAAG;IACpB,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAAC;AACnD;;AAEA,IAAI,MAAM,cAAc,GAAG,GAAG,CAAC;IAC3B,MAAM,SAAS,WAAW,CAAC,MAAM,CAAC;IAClC,MAAM,IAAI,YAAY;MACpB,QAAQ,GAAG,EAAE,CAAC;;;AAGpB,QAAQ,uBAAuB;UACrB,IAAI,EAAE,KAAK,CAAC;UACZ,IAAI,EAAE;;QAER,IAAI;QACJ,SAAS,GAAG,SAAS,KAAK;QAC1B,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS;UACvC,IAAI,EAAE,KAAK,GAAG,CAAC;;UAEf,CAAC,CAAC;QACJ,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC;OACjC,MAAM;;QAEL,MAAM,aAAa,GAAG,qBAAqB,KAAK,CAAC,IAAI,EAAE,QAAQ,GAAG;;UAEhE,YAAY;UACZ,CAAC,CAAC;cACE;UACJ,IAAI,EAAE,GAAG;UACT,IAAI,EAAE,SAAS;UACf,CAAC,CAAC;QACJ,IAAI,GAAG,CAAC,GAAG;cACL,aAAa;UACjB,IAAI,EAAE,KAAK,GAAG,CAAC;UACf;;QAEF,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;;wBAElB,CAAC,KAAK,CAAC;;UAErB,QAAQ,GAAG;;UAEX,KAAK,KAAK,CAAC,EAAE;QACf;;QAEA,OAAO,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC;;;UAG7C;cACI,IAAI;aACL,MAAM;UACT;QACF,WAAW;UACT,OAAO;aACJ;sBACS,CAAC,IAAI;;;UAGjB,YAAY,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK;YACjC,OAAO,GAAG,CAAC,IAAI,EAAE;UACnB,IAAI,KAAK;cACL,IAAI,GAAG;YACT,IAAI,OAAO,CAAC;UACd;;QAEF,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE;;SAE5B;;;KAGJ,CAAC;UACI,aAAa,GAAG,CAAC,EAAE,IAAI;MAC3B,MAAM,IAAI;UACN,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;MACnB;UACI,WAAW,GAAG,CAAC,EAAE,IAAI,EAAE;YACrB,GAAG,GAAG,gBAAgB,CAAC,IAAI,EAAE;aAC5B;;;;QAIL,IAAI,EAAE,GAAG,CAAC,MAAM;OACjB,CAAC;;WAEG;eACI;cACD;UACJ;kBACQ;MACZ;;;MAGA,KAAK;MACL;;;;;;"}
@@ -2,13 +2,9 @@ import { openBlock, createElementBlock, normalizeClass, Fragment, renderList, to
2
2
 
3
3
  const _hoisted_1 = { key: 0 };
4
4
  const _hoisted_2 = ["onClick"];
5
- const _hoisted_3 = { class: "el-calendar-day" };
6
5
  function render(_ctx, _cache, $props, $setup, $data, $options) {
7
6
  return openBlock(), createElementBlock("table", {
8
- class: normalizeClass({
9
- "el-calendar-table": true,
10
- "is-range": _ctx.isInRange
11
- }),
7
+ class: normalizeClass([_ctx.nsTable.b(), _ctx.nsTable.is("range", _ctx.isInRange)]),
12
8
  cellspacing: "0",
13
9
  cellpadding: "0"
14
10
  }, [
@@ -22,8 +18,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
22
18
  return openBlock(), createElementBlock("tr", {
23
19
  key: index,
24
20
  class: normalizeClass({
25
- "el-calendar-table__row": true,
26
- "el-calendar-table__row--hide-border": index === 0 && _ctx.hideHeader
21
+ [_ctx.nsTable.e("row")]: true,
22
+ [_ctx.nsTable.em("row", "hide-border")]: index === 0 && _ctx.hideHeader
27
23
  })
28
24
  }, [
29
25
  (openBlock(true), createElementBlock(Fragment, null, renderList(row, (cell, key) => {
@@ -32,13 +28,15 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
32
28
  class: normalizeClass(_ctx.getCellClass(cell)),
33
29
  onClick: ($event) => _ctx.handlePickDay(cell)
34
30
  }, [
35
- createElementVNode("div", _hoisted_3, [
31
+ createElementVNode("div", {
32
+ class: normalizeClass(_ctx.nsDay.b())
33
+ }, [
36
34
  renderSlot(_ctx.$slots, "dateCell", {
37
35
  data: _ctx.getSlotData(cell)
38
36
  }, () => [
39
37
  createElementVNode("span", null, toDisplayString(cell.text), 1)
40
38
  ])
41
- ])
39
+ ], 2)
42
40
  ], 10, _hoisted_2);
43
41
  }), 128))
44
42
  ], 2);
@@ -1 +1 @@
1
- {"version":3,"file":"date-table.vue_vue_type_template_id_297fdb36_lang.mjs","sources":["../../../../../../packages/components/calendar/src/date-table.vue?vue&type=template&id=297fdb36&lang.js"],"sourcesContent":["<template>\n <table\n :class=\"{\n 'el-calendar-table': true,\n 'is-range': isInRange,\n }\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n 'el-calendar-table__row': true,\n 'el-calendar-table__row--hide-border': index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"handlePickDay(cell)\"\n >\n <div class=\"el-calendar-day\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { dateTableProps, dateTableEmits } from './date-table'\nimport type { Dayjs } from 'dayjs'\ndayjs.extend(localeData)\n\ntype CellType = 'next' | 'prev' | 'current'\ninterface Cell {\n text: number\n type: CellType\n}\n\nconst WEEK_DAYS = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'] as const\n\nexport const getPrevMonthLastDays = (date: Dayjs, count: number) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(count).map((_, index) => lastDay - (count - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nconst toNestedArr = (days: Cell[]) =>\n rangeArr(days.length / 7).map((index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n\nexport default defineComponent({\n props: dateTableProps,\n emits: dateTableEmits,\n\n setup(props, { emit }) {\n const { t, lang } = useLocale()\n\n const now = dayjs().locale(lang.value)\n // todo better way to get Day.js locale object\n const firstDayOfWeek: number = (now as any).$locale().weekStart || 0\n\n const isInRange = computed(() => !!props.range && !!props.range.length)\n\n const rows = computed(() => {\n let days: Cell[] = []\n if (isInRange.value) {\n const [start, end] = props.range!\n const currentMonthRange: Cell[] = rangeArr(\n end.date() - start.date() + 1\n ).map((index) => ({\n text: start.date() + index,\n type: 'current',\n }))\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange: Cell[] = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays: Cell[] = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays: Cell[] = getMonthDays(props.date).map(\n (day) => ({\n text: day,\n type: 'current',\n })\n )\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays: Cell[] = rangeArr(42 - days.length).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n if (start === 0) {\n return WEEK_DAYS.map((_) => t(`el.datepicker.weeks.${_}`))\n } else {\n return WEEK_DAYS.slice(start)\n .concat(WEEK_DAYS.slice(0, start))\n .map((_) => t(`el.datepicker.weeks.${_}`))\n }\n })\n\n const getFormattedDate = (day: number, type: CellType): Dayjs => {\n switch (type) {\n case 'prev':\n return props.date.startOf('month').subtract(1, 'month').date(day)\n case 'next':\n return props.date.startOf('month').add(1, 'month').date(day)\n case 'current':\n return props.date.date(day)\n }\n }\n\n const getCellClass = ({ text, type }: Cell) => {\n const classes: string[] = [type]\n if (type === 'current') {\n const date = getFormattedDate(text, type)\n if (date.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const handlePickDay = ({ text, type }: Cell) => {\n const date = getFormattedDate(text, type)\n emit('pick', date)\n }\n\n const getSlotData = ({ text, type }: Cell) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n handlePickDay,\n getSlotData,\n }\n },\n})\n</script>\n"],"names":["_createElementVNode"],"mappings":";;;;;sCA4BsC;;;;;;;;;IArBlC;;;;4BAGE;;;;;;;;;;;;;;;;cAcKA;;;;;;;mBAKC;kBACE;;;;;;;;;"}
1
+ {"version":3,"file":"date-table.vue_vue_type_template_id_297fdb36_lang.mjs","sources":["../../../../../../packages/components/calendar/src/date-table.vue?vue&type=template&id=297fdb36&lang.js"],"sourcesContent":["<template>\n <table\n :class=\"[nsTable.b(), nsTable.is('range', isInRange)]\"\n cellspacing=\"0\"\n cellpadding=\"0\"\n >\n <thead v-if=\"!hideHeader\">\n <th v-for=\"day in weekDays\" :key=\"day\">{{ day }}</th>\n </thead>\n\n <tbody>\n <tr\n v-for=\"(row, index) in rows\"\n :key=\"index\"\n :class=\"{\n [nsTable.e('row')]: true,\n [nsTable.em('row', 'hide-border')]: index === 0 && hideHeader,\n }\"\n >\n <td\n v-for=\"(cell, key) in row\"\n :key=\"key\"\n :class=\"getCellClass(cell)\"\n @click=\"handlePickDay(cell)\"\n >\n <div :class=\"nsDay.b()\">\n <slot name=\"dateCell\" :data=\"getSlotData(cell)\">\n <span>{{ cell.text }}</span>\n </slot>\n </div>\n </td>\n </tr>\n </tbody>\n </table>\n</template>\n\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { dateTableProps, dateTableEmits } from './date-table'\nimport type { Dayjs } from 'dayjs'\ndayjs.extend(localeData)\n\ntype CellType = 'next' | 'prev' | 'current'\ninterface Cell {\n text: number\n type: CellType\n}\n\nconst WEEK_DAYS = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'] as const\n\nexport const getPrevMonthLastDays = (date: Dayjs, count: number) => {\n const lastDay = date.subtract(1, 'month').endOf('month').date()\n return rangeArr(count).map((_, index) => lastDay - (count - index - 1))\n}\n\nexport const getMonthDays = (date: Dayjs) => {\n const days = date.daysInMonth()\n return rangeArr(days).map((_, index) => index + 1)\n}\n\nconst toNestedArr = (days: Cell[]) =>\n rangeArr(days.length / 7).map((index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n\nexport default defineComponent({\n props: dateTableProps,\n emits: dateTableEmits,\n\n setup(props, { emit }) {\n const { t, lang } = useLocale()\n const nsTable = useNamespace('calendar-table')\n const nsDay = useNamespace('calendar-day')\n\n const now = dayjs().locale(lang.value)\n // todo better way to get Day.js locale object\n const firstDayOfWeek: number = (now as any).$locale().weekStart || 0\n\n const isInRange = computed(() => !!props.range && !!props.range.length)\n\n const rows = computed(() => {\n let days: Cell[] = []\n if (isInRange.value) {\n const [start, end] = props.range!\n const currentMonthRange: Cell[] = rangeArr(\n end.date() - start.date() + 1\n ).map((index) => ({\n text: start.date() + index,\n type: 'current',\n }))\n\n let remaining = currentMonthRange.length % 7\n remaining = remaining === 0 ? 0 : 7 - remaining\n const nextMonthRange: Cell[] = rangeArr(remaining).map((_, index) => ({\n text: index + 1,\n type: 'next',\n }))\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day() || 7\n const prevMonthDays: Cell[] = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays: Cell[] = getMonthDays(props.date).map(\n (day) => ({\n text: day,\n type: 'current',\n })\n )\n days = [...prevMonthDays, ...currentMonthDays]\n const nextMonthDays: Cell[] = rangeArr(42 - days.length).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n })\n\n const weekDays = computed(() => {\n const start = firstDayOfWeek\n if (start === 0) {\n return WEEK_DAYS.map((_) => t(`el.datepicker.weeks.${_}`))\n } else {\n return WEEK_DAYS.slice(start)\n .concat(WEEK_DAYS.slice(0, start))\n .map((_) => t(`el.datepicker.weeks.${_}`))\n }\n })\n\n const getFormattedDate = (day: number, type: CellType): Dayjs => {\n switch (type) {\n case 'prev':\n return props.date.startOf('month').subtract(1, 'month').date(day)\n case 'next':\n return props.date.startOf('month').add(1, 'month').date(day)\n case 'current':\n return props.date.date(day)\n }\n }\n\n const getCellClass = ({ text, type }: Cell) => {\n const classes: string[] = [type]\n if (type === 'current') {\n const date = getFormattedDate(text, type)\n if (date.isSame(props.selectedDay, 'day')) {\n classes.push('is-selected')\n }\n if (date.isSame(now, 'day')) {\n classes.push('is-today')\n }\n }\n return classes\n }\n\n const handlePickDay = ({ text, type }: Cell) => {\n const date = getFormattedDate(text, type)\n emit('pick', date)\n }\n\n const getSlotData = ({ text, type }: Cell) => {\n const day = getFormattedDate(text, type)\n return {\n isSelected: day.isSame(props.selectedDay),\n type: `${type}-month`,\n day: day.format('YYYY-MM-DD'),\n date: day.toDate(),\n }\n }\n\n return {\n isInRange,\n weekDays,\n rows,\n getCellClass,\n handlePickDay,\n getSlotData,\n\n nsTable,\n nsDay,\n }\n },\n})\n</script>\n"],"names":["_createElementVNode"],"mappings":";;;;;;;;IAEK;;IAED;;;;4BAGE;;;;;;yBAIA;;;;;;;;;;cAUKA;qDACmB;;;;;;;kBAIK;mBAAvB;kBACE;;;;;;;;;"}
@@ -5,6 +5,17 @@ export declare const ElContainer: import("../../utils/types").SFCWithInstall<imp
5
5
  };
6
6
  }, {
7
7
  isVertical: import("vue").ComputedRef<boolean>;
8
+ ns: {
9
+ namespace: import("vue").ComputedRef<string>;
10
+ b: (blockSuffix?: string) => string;
11
+ e: (element?: string | undefined) => string;
12
+ m: (modifier?: string | undefined) => string;
13
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
14
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
15
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
16
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
17
+ is: (name: string, state?: boolean) => string;
18
+ };
8
19
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
9
20
  direction: {
10
21
  type: StringConstructor;
@@ -20,6 +31,17 @@ export declare const ElContainer: import("../../utils/types").SFCWithInstall<imp
20
31
  };
21
32
  }, {
22
33
  style: import("vue").ComputedRef<import("vue").CSSProperties>;
34
+ ns: {
35
+ namespace: import("vue").ComputedRef<string>;
36
+ b: (blockSuffix?: string) => string;
37
+ e: (element?: string | undefined) => string;
38
+ m: (modifier?: string | undefined) => string;
39
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
40
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
41
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
42
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
43
+ is: (name: string, state?: boolean) => string;
44
+ };
23
45
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
24
46
  width: {
25
47
  type: StringConstructor;
@@ -35,6 +57,17 @@ export declare const ElContainer: import("../../utils/types").SFCWithInstall<imp
35
57
  };
36
58
  }, {
37
59
  style: import("vue").ComputedRef<import("vue").CSSProperties>;
60
+ ns: {
61
+ namespace: import("vue").ComputedRef<string>;
62
+ b: (blockSuffix?: string) => string;
63
+ e: (element?: string | undefined) => string;
64
+ m: (modifier?: string | undefined) => string;
65
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
66
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
67
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
68
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
69
+ is: (name: string, state?: boolean) => string;
70
+ };
38
71
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
39
72
  height: {
40
73
  type: StringConstructor;
@@ -50,6 +83,17 @@ export declare const ElContainer: import("../../utils/types").SFCWithInstall<imp
50
83
  };
51
84
  }, {
52
85
  style: import("vue").ComputedRef<import("vue").CSSProperties>;
86
+ ns: {
87
+ namespace: import("vue").ComputedRef<string>;
88
+ b: (blockSuffix?: string) => string;
89
+ e: (element?: string | undefined) => string;
90
+ m: (modifier?: string | undefined) => string;
91
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
92
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
93
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
94
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
95
+ is: (name: string, state?: boolean) => string;
96
+ };
53
97
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
54
98
  height: {
55
99
  type: StringConstructor;
@@ -58,7 +102,19 @@ export declare const ElContainer: import("../../utils/types").SFCWithInstall<imp
58
102
  }>>, {
59
103
  height: string;
60
104
  }>;
61
- Main: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
105
+ Main: import("vue").DefineComponent<{}, {
106
+ ns: {
107
+ namespace: import("vue").ComputedRef<string>;
108
+ b: (blockSuffix?: string) => string;
109
+ e: (element?: string | undefined) => string;
110
+ m: (modifier?: string | undefined) => string;
111
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
112
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
113
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
114
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
115
+ is: (name: string, state?: boolean) => string;
116
+ };
117
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
62
118
  };
63
119
  export default ElContainer;
64
120
  export declare const ElAside: import("../../utils/types").SFCWithInstall<import("vue").DefineComponent<{
@@ -68,6 +124,17 @@ export declare const ElAside: import("../../utils/types").SFCWithInstall<import(
68
124
  };
69
125
  }, {
70
126
  style: import("vue").ComputedRef<import("vue").CSSProperties>;
127
+ ns: {
128
+ namespace: import("vue").ComputedRef<string>;
129
+ b: (blockSuffix?: string) => string;
130
+ e: (element?: string | undefined) => string;
131
+ m: (modifier?: string | undefined) => string;
132
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
133
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
134
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
135
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
136
+ is: (name: string, state?: boolean) => string;
137
+ };
71
138
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
72
139
  width: {
73
140
  type: StringConstructor;
@@ -83,6 +150,17 @@ export declare const ElFooter: import("../../utils/types").SFCWithInstall<import
83
150
  };
84
151
  }, {
85
152
  style: import("vue").ComputedRef<import("vue").CSSProperties>;
153
+ ns: {
154
+ namespace: import("vue").ComputedRef<string>;
155
+ b: (blockSuffix?: string) => string;
156
+ e: (element?: string | undefined) => string;
157
+ m: (modifier?: string | undefined) => string;
158
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
159
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
160
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
161
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
162
+ is: (name: string, state?: boolean) => string;
163
+ };
86
164
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
87
165
  height: {
88
166
  type: StringConstructor;
@@ -98,6 +176,17 @@ export declare const ElHeader: import("../../utils/types").SFCWithInstall<import
98
176
  };
99
177
  }, {
100
178
  style: import("vue").ComputedRef<import("vue").CSSProperties>;
179
+ ns: {
180
+ namespace: import("vue").ComputedRef<string>;
181
+ b: (blockSuffix?: string) => string;
182
+ e: (element?: string | undefined) => string;
183
+ m: (modifier?: string | undefined) => string;
184
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
185
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
186
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
187
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
188
+ is: (name: string, state?: boolean) => string;
189
+ };
101
190
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
102
191
  height: {
103
192
  type: StringConstructor;
@@ -106,4 +195,16 @@ export declare const ElHeader: import("../../utils/types").SFCWithInstall<import
106
195
  }>>, {
107
196
  height: string;
108
197
  }>>;
109
- export declare const ElMain: import("../../utils/types").SFCWithInstall<import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>>;
198
+ export declare const ElMain: import("../../utils/types").SFCWithInstall<import("vue").DefineComponent<{}, {
199
+ ns: {
200
+ namespace: import("vue").ComputedRef<string>;
201
+ b: (blockSuffix?: string) => string;
202
+ e: (element?: string | undefined) => string;
203
+ m: (modifier?: string | undefined) => string;
204
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
205
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
206
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
207
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
208
+ is: (name: string, state?: boolean) => string;
209
+ };
210
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>>;
@@ -6,6 +6,17 @@ declare const _default: import("vue").DefineComponent<{
6
6
  };
7
7
  }, {
8
8
  style: import("vue").ComputedRef<CSSProperties>;
9
+ ns: {
10
+ namespace: import("vue").ComputedRef<string>;
11
+ b: (blockSuffix?: string) => string;
12
+ e: (element?: string | undefined) => string;
13
+ m: (modifier?: string | undefined) => string;
14
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
15
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
16
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
17
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
18
+ is: (name: string, state?: boolean) => string;
19
+ };
9
20
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
10
21
  width: {
11
22
  type: StringConstructor;
@@ -1,4 +1,6 @@
1
1
  import { defineComponent, computed } from 'vue';
2
+ import '../../../hooks/index.mjs';
3
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
2
4
 
3
5
  var script = defineComponent({
4
6
  name: "ElAside",
@@ -9,10 +11,12 @@ var script = defineComponent({
9
11
  }
10
12
  },
11
13
  setup(props) {
14
+ const ns = useNamespace("aside");
12
15
  return {
13
16
  style: computed(() => {
14
17
  return props.width ? { "--el-aside-width": props.width } : {};
15
- })
18
+ }),
19
+ ns
16
20
  };
17
21
  }
18
22
  });
@@ -1 +1 @@
1
- {"version":3,"file":"aside.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/container/src/aside.vue"],"sourcesContent":["<template>\n <aside class=\"el-aside\" :style=\"style\">\n <slot></slot>\n </aside>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElAside',\n props: {\n width: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n return {\n style: computed(() => {\n return props.width\n ? ({ '--el-aside-width': props.width } as CSSProperties)\n : {}\n }),\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;AAMA,aAAe,eAAe,CAAC;;AAE/B,EAAE,KAAK,EAAE;;AAET,UAAU,EAAE,MAAM;MACZ,OAAO,EAAE;KACV;;OAEE,CAAC,KAAK,EAAE;WACJ;;;OAGJ,CAAC;KACH,CAAC;;;;;;"}
1
+ {"version":3,"file":"aside.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/container/src/aside.vue"],"sourcesContent":["<template>\n <aside :class=\"ns.b()\" :style=\"style\">\n <slot></slot>\n </aside>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElAside',\n props: {\n width: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n const ns = useNamespace('aside')\n\n return {\n style: computed(() => {\n return props.width\n ? ({ '--el-aside-width': props.width } as CSSProperties)\n : {}\n }),\n ns,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;AAOA,aAAe,eAAe,CAAC;;AAE/B,EAAE,KAAK,EAAE;;AAET,UAAU,EAAE,MAAM;MACZ,OAAO,EAAE;KACV;;OAEE,CAAC,KAAK,EAAE;UACL,EAAE,GAAG;IACX;;QAEI,OAAO;OACR,CAAC;;KAEH,CAAC;;;;;;"}
@@ -1,12 +1,12 @@
1
- import { openBlock, createElementBlock, normalizeStyle, renderSlot } from 'vue';
1
+ import { openBlock, createElementBlock, normalizeClass, normalizeStyle, renderSlot } from 'vue';
2
2
 
3
3
  function render(_ctx, _cache, $props, $setup, $data, $options) {
4
4
  return openBlock(), createElementBlock("aside", {
5
- class: "el-aside",
5
+ class: normalizeClass(_ctx.ns.b()),
6
6
  style: normalizeStyle(_ctx.style)
7
7
  }, [
8
8
  renderSlot(_ctx.$slots, "default")
9
- ], 4);
9
+ ], 6);
10
10
  }
11
11
 
12
12
  export { render };
@@ -1 +1 @@
1
- {"version":3,"file":"aside.vue_vue_type_template_id_47e12f0a_lang.mjs","sources":["../../../../../../packages/components/container/src/aside.vue?vue&type=template&id=47e12f0a&lang.js"],"sourcesContent":["<template>\n <aside class=\"el-aside\" :style=\"style\">\n <slot></slot>\n </aside>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElAside',\n props: {\n width: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n return {\n style: computed(() => {\n return props.width\n ? ({ '--el-aside-width': props.width } as CSSProperties)\n : {}\n }),\n }\n },\n})\n</script>\n"],"names":["_normalizeStyle"],"mappings":";;;;;IACS,KAAK,EAACA;;;;;;;;"}
1
+ {"version":3,"file":"aside.vue_vue_type_template_id_47e12f0a_lang.mjs","sources":["../../../../../../packages/components/container/src/aside.vue?vue&type=template&id=47e12f0a&lang.js"],"sourcesContent":["<template>\n <aside :class=\"ns.b()\" :style=\"style\">\n <slot></slot>\n </aside>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElAside',\n props: {\n width: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n const ns = useNamespace('aside')\n\n return {\n style: computed(() => {\n return props.width\n ? ({ '--el-aside-width': props.width } as CSSProperties)\n : {}\n }),\n ns,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;IACU,KAAK,iBAAE;;;;;;;;"}
@@ -5,6 +5,17 @@ declare const _default: import("vue").DefineComponent<{
5
5
  };
6
6
  }, {
7
7
  isVertical: import("vue").ComputedRef<boolean>;
8
+ ns: {
9
+ namespace: import("vue").ComputedRef<string>;
10
+ b: (blockSuffix?: string) => string;
11
+ e: (element?: string | undefined) => string;
12
+ m: (modifier?: string | undefined) => string;
13
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
14
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
15
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
16
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
17
+ is: (name: string, state?: boolean) => string;
18
+ };
8
19
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
9
20
  direction: {
10
21
  type: StringConstructor;
@@ -1,4 +1,6 @@
1
1
  import { defineComponent, computed } from 'vue';
2
+ import '../../../hooks/index.mjs';
3
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
2
4
 
3
5
  var script = defineComponent({
4
6
  name: "ElContainer",
@@ -9,6 +11,7 @@ var script = defineComponent({
9
11
  }
10
12
  },
11
13
  setup(props, { slots }) {
14
+ const ns = useNamespace("container");
12
15
  const isVertical = computed(() => {
13
16
  if (props.direction === "vertical") {
14
17
  return true;
@@ -26,7 +29,8 @@ var script = defineComponent({
26
29
  }
27
30
  });
28
31
  return {
29
- isVertical
32
+ isVertical,
33
+ ns
30
34
  };
31
35
  }
32
36
  });
@@ -1 +1 @@
1
- {"version":3,"file":"container.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/container/src/container.vue"],"sourcesContent":["<template>\n <section class=\"el-container\" :class=\"{ 'is-vertical': isVertical }\">\n <slot></slot>\n </section>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from 'vue'\n\nimport type { Component, VNode } from 'vue'\n\nexport default defineComponent({\n name: 'ElContainer',\n props: {\n direction: {\n type: String,\n default: '',\n },\n },\n setup(props, { slots }) {\n const isVertical = computed(() => {\n if (props.direction === 'vertical') {\n return true\n } else if (props.direction === 'horizontal') {\n return false\n }\n if (slots && slots.default) {\n const vNodes: VNode[] = slots.default()\n return vNodes.some((vNode) => {\n const tag = (vNode.type as Component).name\n return tag === 'ElHeader' || tag === 'ElFooter'\n })\n } else {\n return false\n }\n })\n return {\n isVertical,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;AAMA,aAAe,eAAe,CAAC;;AAE/B,EAAE,KAAK,EAAE;;AAET,UAAU,EAAE,MAAM;MACZ,OAAO,EAAE,EAAE;KACZ;;OAEE,CAAC,KAAK,EAAE,EAAE;UACP;;;OAGH,MAAM,IAAI,MAAM;QACf,OAAO,MAAM;OACd;UACG,KAAK;QACP,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC;QAC/B,OAAO;;UAEL,OAAO,GAAG,KAAK;SAChB,CAAC,CAAC;aACE;oBACO;;;WAGT;gBACK;MACV;;;;;;"}
1
+ {"version":3,"file":"container.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/container/src/container.vue"],"sourcesContent":["<template>\n <section :class=\"[ns.b(), ns.is('vertical', isVertical)]\">\n <slot></slot>\n </section>\n</template>\n<script lang=\"ts\">\nimport { defineComponent, computed } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { Component, VNode } from 'vue'\n\nexport default defineComponent({\n name: 'ElContainer',\n props: {\n direction: {\n type: String,\n default: '',\n },\n },\n setup(props, { slots }) {\n const ns = useNamespace('container')\n\n const isVertical = computed(() => {\n if (props.direction === 'vertical') {\n return true\n } else if (props.direction === 'horizontal') {\n return false\n }\n if (slots && slots.default) {\n const vNodes: VNode[] = slots.default()\n return vNodes.some((vNode) => {\n const tag = (vNode.type as Component).name\n return tag === 'ElHeader' || tag === 'ElFooter'\n })\n } else {\n return false\n }\n })\n return {\n isVertical,\n ns,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;AAOA,aAAe,eAAe,CAAC;;AAE/B,EAAE,KAAK,EAAE;;AAET,UAAU,EAAE,MAAM;MACZ,OAAO,EAAE,EAAE;KACZ;;OAEE,CAAC,KAAK,EAAE,EAAE;UACP,EAAE,GAAG;IACX;;QAEI,OAAO,IAAI,CAAC;OACb,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK;;OAE9B;MACD,IAAI,KAAK,IAAI,KAAK,QAAQ,EAAE;QAC1B;QACA,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK;UAC5B,MAAM,GAAG;;SAEV,CAAC,CAAC;;QAEH,OAAO,KAAK,CAAC;;;;MAIf;QACE;MACF;;;;;;"}
@@ -2,7 +2,7 @@ import { openBlock, createElementBlock, normalizeClass, renderSlot } from 'vue';
2
2
 
3
3
  function render(_ctx, _cache, $props, $setup, $data, $options) {
4
4
  return openBlock(), createElementBlock("section", {
5
- class: normalizeClass(["el-container", { "is-vertical": _ctx.isVertical }])
5
+ class: normalizeClass([_ctx.ns.b(), _ctx.ns.is("vertical", _ctx.isVertical)])
6
6
  }, [
7
7
  renderSlot(_ctx.$slots, "default")
8
8
  ], 2);
@@ -6,6 +6,17 @@ declare const _default: import("vue").DefineComponent<{
6
6
  };
7
7
  }, {
8
8
  style: import("vue").ComputedRef<CSSProperties>;
9
+ ns: {
10
+ namespace: import("vue").ComputedRef<string>;
11
+ b: (blockSuffix?: string) => string;
12
+ e: (element?: string | undefined) => string;
13
+ m: (modifier?: string | undefined) => string;
14
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
15
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
16
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
17
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
18
+ is: (name: string, state?: boolean) => string;
19
+ };
9
20
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
10
21
  height: {
11
22
  type: StringConstructor;
@@ -1,4 +1,6 @@
1
1
  import { defineComponent, computed } from 'vue';
2
+ import '../../../hooks/index.mjs';
3
+ import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
2
4
 
3
5
  var script = defineComponent({
4
6
  name: "ElFooter",
@@ -9,10 +11,12 @@ var script = defineComponent({
9
11
  }
10
12
  },
11
13
  setup(props) {
14
+ const ns = useNamespace("footer");
12
15
  return {
13
16
  style: computed(() => props.height ? {
14
17
  "--el-footer-height": props.height
15
- } : {})
18
+ } : {}),
19
+ ns
16
20
  };
17
21
  }
18
22
  });
@@ -1 +1 @@
1
- {"version":3,"file":"footer.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/container/src/footer.vue"],"sourcesContent":["<template>\n <footer class=\"el-footer\" :style=\"style\">\n <slot></slot>\n </footer>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElFooter',\n props: {\n height: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n return {\n style: computed(\n () =>\n (props.height\n ? {\n '--el-footer-height': props.height,\n }\n : {}) as CSSProperties\n ),\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;AAMA,aAAe,eAAe,CAAC;;AAE/B,EAAE,KAAK,EAAE;;AAET,UAAU,EAAE,MAAM;MACZ,OAAO,EAAE;KACV;;OAEE,CAAC,KAAK,EAAE;WACJ;;;OAGJ,GAAG,EAAE,CAAC;KACR,CAAC;;;;;;"}
1
+ {"version":3,"file":"footer.vue_vue_type_script_lang.mjs","sources":["../../../../../../packages/components/container/src/footer.vue"],"sourcesContent":["<template>\n <footer :class=\"ns.b()\" :style=\"style\">\n <slot></slot>\n </footer>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElFooter',\n props: {\n height: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n const ns = useNamespace('footer')\n\n return {\n style: computed(\n () =>\n (props.height\n ? {\n '--el-footer-height': props.height,\n }\n : {}) as CSSProperties\n ),\n ns,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;AAOA,aAAe,eAAe,CAAC;;AAE/B,EAAE,KAAK,EAAE;;AAET,UAAU,EAAE,MAAM;MACZ,OAAO,EAAE;KACV;;OAEE,CAAC,KAAK,EAAE;UACL,EAAE,GAAG;IACX;;QAEI;OACD,GAAG,GAAG;;KAER,CAAC;;;;;;"}
@@ -1,12 +1,12 @@
1
- import { openBlock, createElementBlock, normalizeStyle, renderSlot } from 'vue';
1
+ import { openBlock, createElementBlock, normalizeClass, normalizeStyle, renderSlot } from 'vue';
2
2
 
3
3
  function render(_ctx, _cache, $props, $setup, $data, $options) {
4
4
  return openBlock(), createElementBlock("footer", {
5
- class: "el-footer",
5
+ class: normalizeClass(_ctx.ns.b()),
6
6
  style: normalizeStyle(_ctx.style)
7
7
  }, [
8
8
  renderSlot(_ctx.$slots, "default")
9
- ], 4);
9
+ ], 6);
10
10
  }
11
11
 
12
12
  export { render };
@@ -1 +1 @@
1
- {"version":3,"file":"footer.vue_vue_type_template_id_2c2b128e_lang.mjs","sources":["../../../../../../packages/components/container/src/footer.vue?vue&type=template&id=2c2b128e&lang.js"],"sourcesContent":["<template>\n <footer class=\"el-footer\" :style=\"style\">\n <slot></slot>\n </footer>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElFooter',\n props: {\n height: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n return {\n style: computed(\n () =>\n (props.height\n ? {\n '--el-footer-height': props.height,\n }\n : {}) as CSSProperties\n ),\n }\n },\n})\n</script>\n"],"names":["_normalizeStyle"],"mappings":";;;;;IACU,KAAK,EAACA;;;;;;;;"}
1
+ {"version":3,"file":"footer.vue_vue_type_template_id_2c2b128e_lang.mjs","sources":["../../../../../../packages/components/container/src/footer.vue?vue&type=template&id=2c2b128e&lang.js"],"sourcesContent":["<template>\n <footer :class=\"ns.b()\" :style=\"style\">\n <slot></slot>\n </footer>\n</template>\n<script lang=\"ts\">\nimport { computed, defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { CSSProperties } from 'vue'\n\nexport default defineComponent({\n name: 'ElFooter',\n props: {\n height: {\n type: String,\n default: null,\n },\n },\n setup(props) {\n const ns = useNamespace('footer')\n\n return {\n style: computed(\n () =>\n (props.height\n ? {\n '--el-footer-height': props.height,\n }\n : {}) as CSSProperties\n ),\n ns,\n }\n },\n})\n</script>\n"],"names":[],"mappings":";;;;;IACW,KAAK,iBAAE;;;;;;;;"}