@element-plus/nightly 0.0.20220819 → 0.0.20220822

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 (266) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +163 -122
  3. package/dist/index.full.min.js +11 -11
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +12 -12
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +163 -122
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar.js +1 -1
  13. package/dist/locale/ar.min.js +1 -1
  14. package/dist/locale/ar.min.mjs +1 -1
  15. package/dist/locale/ar.mjs +1 -1
  16. package/dist/locale/az.js +1 -1
  17. package/dist/locale/az.min.js +1 -1
  18. package/dist/locale/az.min.mjs +1 -1
  19. package/dist/locale/az.mjs +1 -1
  20. package/dist/locale/bg.js +1 -1
  21. package/dist/locale/bg.min.js +1 -1
  22. package/dist/locale/bg.min.mjs +1 -1
  23. package/dist/locale/bg.mjs +1 -1
  24. package/dist/locale/bn.js +1 -1
  25. package/dist/locale/bn.min.js +1 -1
  26. package/dist/locale/bn.min.mjs +1 -1
  27. package/dist/locale/bn.mjs +1 -1
  28. package/dist/locale/ca.js +1 -1
  29. package/dist/locale/ca.min.js +1 -1
  30. package/dist/locale/ca.min.mjs +1 -1
  31. package/dist/locale/ca.mjs +1 -1
  32. package/dist/locale/cs.js +1 -1
  33. package/dist/locale/cs.min.js +1 -1
  34. package/dist/locale/cs.min.mjs +1 -1
  35. package/dist/locale/cs.mjs +1 -1
  36. package/dist/locale/da.js +1 -1
  37. package/dist/locale/da.min.js +1 -1
  38. package/dist/locale/da.min.mjs +1 -1
  39. package/dist/locale/da.mjs +1 -1
  40. package/dist/locale/de.js +1 -1
  41. package/dist/locale/de.min.js +1 -1
  42. package/dist/locale/de.min.mjs +1 -1
  43. package/dist/locale/de.mjs +1 -1
  44. package/dist/locale/el.js +1 -1
  45. package/dist/locale/el.min.js +1 -1
  46. package/dist/locale/el.min.mjs +1 -1
  47. package/dist/locale/el.mjs +1 -1
  48. package/dist/locale/en.js +1 -1
  49. package/dist/locale/en.min.js +1 -1
  50. package/dist/locale/en.min.mjs +1 -1
  51. package/dist/locale/en.mjs +1 -1
  52. package/dist/locale/eo.js +1 -1
  53. package/dist/locale/eo.min.js +1 -1
  54. package/dist/locale/eo.min.mjs +1 -1
  55. package/dist/locale/eo.mjs +1 -1
  56. package/dist/locale/es.js +1 -1
  57. package/dist/locale/es.min.js +1 -1
  58. package/dist/locale/es.min.mjs +1 -1
  59. package/dist/locale/es.mjs +1 -1
  60. package/dist/locale/et.js +1 -1
  61. package/dist/locale/et.min.js +1 -1
  62. package/dist/locale/et.min.mjs +1 -1
  63. package/dist/locale/et.mjs +1 -1
  64. package/dist/locale/eu.js +1 -1
  65. package/dist/locale/eu.min.js +1 -1
  66. package/dist/locale/eu.min.mjs +1 -1
  67. package/dist/locale/eu.mjs +1 -1
  68. package/dist/locale/fa.js +1 -1
  69. package/dist/locale/fa.min.js +1 -1
  70. package/dist/locale/fa.min.mjs +1 -1
  71. package/dist/locale/fa.mjs +1 -1
  72. package/dist/locale/fi.js +1 -1
  73. package/dist/locale/fi.min.js +1 -1
  74. package/dist/locale/fi.min.mjs +1 -1
  75. package/dist/locale/fi.mjs +1 -1
  76. package/dist/locale/fr.js +1 -1
  77. package/dist/locale/fr.min.js +1 -1
  78. package/dist/locale/fr.min.mjs +1 -1
  79. package/dist/locale/fr.mjs +1 -1
  80. package/dist/locale/he.js +1 -1
  81. package/dist/locale/he.min.js +1 -1
  82. package/dist/locale/he.min.mjs +1 -1
  83. package/dist/locale/he.mjs +1 -1
  84. package/dist/locale/hr.js +1 -1
  85. package/dist/locale/hr.min.js +1 -1
  86. package/dist/locale/hr.min.mjs +1 -1
  87. package/dist/locale/hr.mjs +1 -1
  88. package/dist/locale/hu.js +1 -1
  89. package/dist/locale/hu.min.js +1 -1
  90. package/dist/locale/hu.min.mjs +1 -1
  91. package/dist/locale/hu.mjs +1 -1
  92. package/dist/locale/hy-am.js +1 -1
  93. package/dist/locale/hy-am.min.js +1 -1
  94. package/dist/locale/hy-am.min.mjs +1 -1
  95. package/dist/locale/hy-am.mjs +1 -1
  96. package/dist/locale/id.js +1 -1
  97. package/dist/locale/id.min.js +1 -1
  98. package/dist/locale/id.min.mjs +1 -1
  99. package/dist/locale/id.mjs +1 -1
  100. package/dist/locale/it.js +1 -1
  101. package/dist/locale/it.min.js +1 -1
  102. package/dist/locale/it.min.mjs +1 -1
  103. package/dist/locale/it.mjs +1 -1
  104. package/dist/locale/ja.js +1 -1
  105. package/dist/locale/ja.min.js +1 -1
  106. package/dist/locale/ja.min.mjs +1 -1
  107. package/dist/locale/ja.mjs +1 -1
  108. package/dist/locale/kk.js +1 -1
  109. package/dist/locale/kk.min.js +1 -1
  110. package/dist/locale/kk.min.mjs +1 -1
  111. package/dist/locale/kk.mjs +1 -1
  112. package/dist/locale/km.js +1 -1
  113. package/dist/locale/km.min.js +1 -1
  114. package/dist/locale/km.min.mjs +1 -1
  115. package/dist/locale/km.mjs +1 -1
  116. package/dist/locale/ko.js +1 -1
  117. package/dist/locale/ko.min.js +1 -1
  118. package/dist/locale/ko.min.mjs +1 -1
  119. package/dist/locale/ko.mjs +1 -1
  120. package/dist/locale/ku.js +1 -1
  121. package/dist/locale/ku.min.js +1 -1
  122. package/dist/locale/ku.min.mjs +1 -1
  123. package/dist/locale/ku.mjs +1 -1
  124. package/dist/locale/ky.js +1 -1
  125. package/dist/locale/ky.min.js +1 -1
  126. package/dist/locale/ky.min.mjs +1 -1
  127. package/dist/locale/ky.mjs +1 -1
  128. package/dist/locale/lt.js +1 -1
  129. package/dist/locale/lt.min.js +1 -1
  130. package/dist/locale/lt.min.mjs +1 -1
  131. package/dist/locale/lt.mjs +1 -1
  132. package/dist/locale/lv.js +1 -1
  133. package/dist/locale/lv.min.js +1 -1
  134. package/dist/locale/lv.min.mjs +1 -1
  135. package/dist/locale/lv.mjs +1 -1
  136. package/dist/locale/mg.js +1 -1
  137. package/dist/locale/mg.min.js +1 -1
  138. package/dist/locale/mg.min.mjs +1 -1
  139. package/dist/locale/mg.mjs +1 -1
  140. package/dist/locale/mn.js +1 -1
  141. package/dist/locale/mn.min.js +1 -1
  142. package/dist/locale/mn.min.mjs +1 -1
  143. package/dist/locale/mn.mjs +1 -1
  144. package/dist/locale/nb-no.js +1 -1
  145. package/dist/locale/nb-no.min.js +1 -1
  146. package/dist/locale/nb-no.min.mjs +1 -1
  147. package/dist/locale/nb-no.mjs +1 -1
  148. package/dist/locale/nl.js +1 -1
  149. package/dist/locale/nl.min.js +1 -1
  150. package/dist/locale/nl.min.mjs +1 -1
  151. package/dist/locale/nl.mjs +1 -1
  152. package/dist/locale/pa.js +1 -1
  153. package/dist/locale/pa.min.js +1 -1
  154. package/dist/locale/pa.min.mjs +1 -1
  155. package/dist/locale/pa.mjs +1 -1
  156. package/dist/locale/pl.js +1 -1
  157. package/dist/locale/pl.min.js +1 -1
  158. package/dist/locale/pl.min.mjs +1 -1
  159. package/dist/locale/pl.mjs +1 -1
  160. package/dist/locale/pt-br.js +1 -1
  161. package/dist/locale/pt-br.min.js +1 -1
  162. package/dist/locale/pt-br.min.mjs +1 -1
  163. package/dist/locale/pt-br.mjs +1 -1
  164. package/dist/locale/pt.js +1 -1
  165. package/dist/locale/pt.min.js +1 -1
  166. package/dist/locale/pt.min.mjs +1 -1
  167. package/dist/locale/pt.mjs +1 -1
  168. package/dist/locale/ro.js +1 -1
  169. package/dist/locale/ro.min.js +1 -1
  170. package/dist/locale/ro.min.mjs +1 -1
  171. package/dist/locale/ro.mjs +1 -1
  172. package/dist/locale/ru.js +1 -1
  173. package/dist/locale/ru.min.js +1 -1
  174. package/dist/locale/ru.min.mjs +1 -1
  175. package/dist/locale/ru.mjs +1 -1
  176. package/dist/locale/sk.js +1 -1
  177. package/dist/locale/sk.min.js +1 -1
  178. package/dist/locale/sk.min.mjs +1 -1
  179. package/dist/locale/sk.mjs +1 -1
  180. package/dist/locale/sl.js +1 -1
  181. package/dist/locale/sl.min.js +1 -1
  182. package/dist/locale/sl.min.mjs +1 -1
  183. package/dist/locale/sl.mjs +1 -1
  184. package/dist/locale/sr.js +1 -1
  185. package/dist/locale/sr.min.js +1 -1
  186. package/dist/locale/sr.min.mjs +1 -1
  187. package/dist/locale/sr.mjs +1 -1
  188. package/dist/locale/sv.js +1 -1
  189. package/dist/locale/sv.min.js +1 -1
  190. package/dist/locale/sv.min.mjs +1 -1
  191. package/dist/locale/sv.mjs +1 -1
  192. package/dist/locale/ta.js +1 -1
  193. package/dist/locale/ta.min.js +1 -1
  194. package/dist/locale/ta.min.mjs +1 -1
  195. package/dist/locale/ta.mjs +1 -1
  196. package/dist/locale/th.js +1 -1
  197. package/dist/locale/th.min.js +1 -1
  198. package/dist/locale/th.min.mjs +1 -1
  199. package/dist/locale/th.mjs +1 -1
  200. package/dist/locale/tk.js +1 -1
  201. package/dist/locale/tk.min.js +1 -1
  202. package/dist/locale/tk.min.mjs +1 -1
  203. package/dist/locale/tk.mjs +1 -1
  204. package/dist/locale/tr.js +1 -1
  205. package/dist/locale/tr.min.js +1 -1
  206. package/dist/locale/tr.min.mjs +1 -1
  207. package/dist/locale/tr.mjs +1 -1
  208. package/dist/locale/ug-cn.js +1 -1
  209. package/dist/locale/ug-cn.min.js +1 -1
  210. package/dist/locale/ug-cn.min.mjs +1 -1
  211. package/dist/locale/ug-cn.mjs +1 -1
  212. package/dist/locale/uk.js +1 -1
  213. package/dist/locale/uk.min.js +1 -1
  214. package/dist/locale/uk.min.mjs +1 -1
  215. package/dist/locale/uk.mjs +1 -1
  216. package/dist/locale/uz-uz.js +1 -1
  217. package/dist/locale/uz-uz.min.js +1 -1
  218. package/dist/locale/uz-uz.min.mjs +1 -1
  219. package/dist/locale/uz-uz.mjs +1 -1
  220. package/dist/locale/vi.js +1 -1
  221. package/dist/locale/vi.min.js +1 -1
  222. package/dist/locale/vi.min.mjs +1 -1
  223. package/dist/locale/vi.mjs +1 -1
  224. package/dist/locale/zh-cn.js +1 -1
  225. package/dist/locale/zh-cn.min.js +1 -1
  226. package/dist/locale/zh-cn.min.mjs +1 -1
  227. package/dist/locale/zh-cn.mjs +1 -1
  228. package/dist/locale/zh-tw.js +1 -1
  229. package/dist/locale/zh-tw.min.js +1 -1
  230. package/dist/locale/zh-tw.min.mjs +1 -1
  231. package/dist/locale/zh-tw.mjs +1 -1
  232. package/es/components/calendar/src/calendar2.mjs +1 -1
  233. package/es/components/calendar/src/date-table.mjs +153 -31
  234. package/es/components/calendar/src/date-table.mjs.map +1 -1
  235. package/es/components/calendar/src/date-table2.mjs +31 -153
  236. package/es/components/calendar/src/date-table2.mjs.map +1 -1
  237. package/es/components/message-box/src/message-box.type.d.ts +1 -1
  238. package/es/components/message-box/src/messageBox.mjs +10 -9
  239. package/es/components/message-box/src/messageBox.mjs.map +1 -1
  240. package/es/components/page-header/index.d.ts +46 -0
  241. package/es/components/page-header/src/page-header.vue.d.ts +46 -0
  242. package/es/components/page-header/src/page-header2.mjs +70 -28
  243. package/es/components/page-header/src/page-header2.mjs.map +1 -1
  244. package/es/version.d.ts +1 -1
  245. package/es/version.mjs +1 -1
  246. package/es/version.mjs.map +1 -1
  247. package/lib/components/calendar/src/calendar2.js +1 -1
  248. package/lib/components/calendar/src/date-table.js +158 -35
  249. package/lib/components/calendar/src/date-table.js.map +1 -1
  250. package/lib/components/calendar/src/date-table2.js +35 -158
  251. package/lib/components/calendar/src/date-table2.js.map +1 -1
  252. package/lib/components/message-box/src/message-box.type.d.ts +1 -1
  253. package/lib/components/message-box/src/messageBox.js +10 -9
  254. package/lib/components/message-box/src/messageBox.js.map +1 -1
  255. package/lib/components/page-header/index.d.ts +46 -0
  256. package/lib/components/page-header/src/page-header.vue.d.ts +46 -0
  257. package/lib/components/page-header/src/page-header2.js +69 -27
  258. package/lib/components/page-header/src/page-header2.js.map +1 -1
  259. package/lib/version.d.ts +1 -1
  260. package/lib/version.js +1 -1
  261. package/lib/version.js.map +1 -1
  262. package/package.json +2 -2
  263. package/theme-chalk/el-page-header.css +1 -1
  264. package/theme-chalk/index.css +1 -1
  265. package/theme-chalk/src/page-header.scss +40 -26
  266. package/web-types.json +1 -1
@@ -4,6 +4,9 @@ export declare const ElPageHeader: import("element-plus/es/utils").SFCWithInstal
4
4
  readonly content: import("element-plus/es/utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
5
5
  }, {
6
6
  emit: (event: "back") => void;
7
+ slots: Readonly<{
8
+ [name: string]: import("vue").Slot | undefined;
9
+ }>;
7
10
  t: import("../..").Translator;
8
11
  ns: {
9
12
  namespace: import("vue").ComputedRef<string>;
@@ -23,6 +26,9 @@ export declare const ElPageHeader: import("element-plus/es/utils").SFCWithInstal
23
26
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
24
27
  cssVarBlockName: (name: string) => string;
25
28
  };
29
+ kls: import("vue").ComputedRef<(string | {
30
+ [x: string]: boolean;
31
+ })[]>;
26
32
  handleClick: () => void;
27
33
  ElIcon: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
28
34
  readonly size: {
@@ -87,6 +93,46 @@ export declare const ElPageHeader: import("element-plus/es/utils").SFCWithInstal
87
93
  __epPropKey: true;
88
94
  };
89
95
  }>>, {}>> & Record<string, any>;
96
+ ElDivider: import("element-plus/es/utils").SFCWithInstall<import("vue").DefineComponent<{
97
+ readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
98
+ readonly contentPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "center", unknown, "center", boolean>;
99
+ readonly borderStyle: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "solid", boolean>;
100
+ }, {
101
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
102
+ readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
103
+ readonly contentPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "center", unknown, "center", boolean>;
104
+ readonly borderStyle: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "solid", boolean>;
105
+ }>> & {
106
+ [x: string & `on${string}`]: ((...args: any[]) => any) | ((...args: unknown[]) => any) | undefined;
107
+ }>>;
108
+ ns: {
109
+ namespace: import("vue").ComputedRef<string>;
110
+ b: (blockSuffix?: string) => string;
111
+ e: (element?: string | undefined) => string;
112
+ m: (modifier?: string | undefined) => string;
113
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
114
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
115
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
116
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
117
+ is: {
118
+ (name: string, state: boolean | undefined): string;
119
+ (name: string): string;
120
+ };
121
+ cssVar: (object: Record<string, string>) => Record<string, string>;
122
+ cssVarName: (name: string) => string;
123
+ cssVarBlock: (object: Record<string, string>) => Record<string, string>;
124
+ cssVarBlockName: (name: string) => string;
125
+ };
126
+ dividerStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
127
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
128
+ readonly direction: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
129
+ readonly contentPosition: import("element-plus/es/utils").EpPropFinalized<StringConstructor, "left" | "right" | "center", unknown, "center", boolean>;
130
+ readonly borderStyle: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "solid", boolean>;
131
+ }>>, {
132
+ readonly direction: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "vertical" | "horizontal", unknown>;
133
+ readonly borderStyle: string;
134
+ readonly contentPosition: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "left" | "right" | "center", unknown>;
135
+ }>> & Record<string, any>;
90
136
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
91
137
  back: () => boolean;
92
138
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -4,6 +4,9 @@ declare const _default: import("vue").DefineComponent<{
4
4
  readonly content: import("../../../utils").EpPropFinalized<StringConstructor, unknown, unknown, "", boolean>;
5
5
  }, {
6
6
  emit: (event: "back") => void;
7
+ slots: Readonly<{
8
+ [name: string]: import("vue").Slot | undefined;
9
+ }>;
7
10
  t: import("element-plus/es/hooks").Translator;
8
11
  ns: {
9
12
  namespace: import("vue").ComputedRef<string>;
@@ -23,6 +26,9 @@ declare const _default: import("vue").DefineComponent<{
23
26
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
24
27
  cssVarBlockName: (name: string) => string;
25
28
  };
29
+ kls: import("vue").ComputedRef<(string | {
30
+ [x: string]: boolean;
31
+ })[]>;
26
32
  handleClick: () => void;
27
33
  ElIcon: import("../../../utils").SFCWithInstall<import("vue").DefineComponent<{
28
34
  readonly size: {
@@ -87,6 +93,46 @@ declare const _default: import("vue").DefineComponent<{
87
93
  __epPropKey: true;
88
94
  };
89
95
  }>>, {}>> & Record<string, any>;
96
+ ElDivider: import("../../../utils").SFCWithInstall<import("vue").DefineComponent<{
97
+ readonly direction: import("../../../utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
98
+ readonly contentPosition: import("../../../utils").EpPropFinalized<StringConstructor, "left" | "right" | "center", unknown, "center", boolean>;
99
+ readonly borderStyle: import("../../../utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "solid", boolean>;
100
+ }, {
101
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
102
+ readonly direction: import("../../../utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
103
+ readonly contentPosition: import("../../../utils").EpPropFinalized<StringConstructor, "left" | "right" | "center", unknown, "center", boolean>;
104
+ readonly borderStyle: import("../../../utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "solid", boolean>;
105
+ }>> & {
106
+ [x: string & `on${string}`]: ((...args: any[]) => any) | ((...args: unknown[]) => any) | undefined;
107
+ }>>;
108
+ ns: {
109
+ namespace: import("vue").ComputedRef<string>;
110
+ b: (blockSuffix?: string) => string;
111
+ e: (element?: string | undefined) => string;
112
+ m: (modifier?: string | undefined) => string;
113
+ be: (blockSuffix?: string | undefined, element?: string | undefined) => string;
114
+ em: (element?: string | undefined, modifier?: string | undefined) => string;
115
+ bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string;
116
+ bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string;
117
+ is: {
118
+ (name: string, state: boolean | undefined): string;
119
+ (name: string): string;
120
+ };
121
+ cssVar: (object: Record<string, string>) => Record<string, string>;
122
+ cssVarName: (name: string) => string;
123
+ cssVarBlock: (object: Record<string, string>) => Record<string, string>;
124
+ cssVarBlockName: (name: string) => string;
125
+ };
126
+ dividerStyle: import("vue").ComputedRef<import("vue").CSSProperties>;
127
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
128
+ readonly direction: import("../../../utils").EpPropFinalized<StringConstructor, "vertical" | "horizontal", unknown, "horizontal", boolean>;
129
+ readonly contentPosition: import("../../../utils").EpPropFinalized<StringConstructor, "left" | "right" | "center", unknown, "center", boolean>;
130
+ readonly borderStyle: import("../../../utils").EpPropFinalized<(new (...args: any[]) => string & {}) | (() => string) | ((new (...args: any[]) => string & {}) | (() => string))[], unknown, unknown, "solid", boolean>;
131
+ }>>, {
132
+ readonly direction: import("../../../utils").EpPropMergeType<StringConstructor, "vertical" | "horizontal", unknown>;
133
+ readonly borderStyle: string;
134
+ readonly contentPosition: import("../../../utils").EpPropMergeType<StringConstructor, "left" | "right" | "center", unknown>;
135
+ }>> & Record<string, any>;
90
136
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
91
137
  back: () => boolean;
92
138
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -1,11 +1,13 @@
1
- import { defineComponent, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, renderSlot, createBlock, withCtx, resolveDynamicComponent, createCommentVNode, createTextVNode, toDisplayString } from 'vue';
1
+ import { defineComponent, useSlots, computed, openBlock, createElementBlock, normalizeClass, unref, createElementVNode, renderSlot, createBlock, withCtx, resolveDynamicComponent, createCommentVNode, createTextVNode, toDisplayString, createVNode } from 'vue';
2
2
  import { ElIcon } from '../../icon/index.mjs';
3
+ import { ElDivider } from '../../divider/index.mjs';
3
4
  import '../../../hooks/index.mjs';
4
5
  import { pageHeaderProps, pageHeaderEmits } from './page-header.mjs';
5
6
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
6
7
  import { useLocale } from '../../../hooks/use-locale/index.mjs';
7
8
  import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
8
9
 
10
+ const _hoisted_1 = ["aria-label"];
9
11
  const __default__ = {
10
12
  name: "ElPageHeader"
11
13
  };
@@ -14,47 +16,87 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
14
16
  props: pageHeaderProps,
15
17
  emits: pageHeaderEmits,
16
18
  setup(__props, { emit }) {
19
+ const slots = useSlots();
17
20
  const { t } = useLocale();
18
21
  const ns = useNamespace("page-header");
22
+ const kls = computed(() => {
23
+ return [
24
+ ns.b(),
25
+ {
26
+ [ns.m("has-breadcrumb")]: !!slots.breadcrumb,
27
+ [ns.m("has-extra")]: !!slots.extra,
28
+ [ns.is("contentful")]: !!slots.default
29
+ }
30
+ ];
31
+ });
19
32
  function handleClick() {
20
33
  emit("back");
21
34
  }
22
35
  return (_ctx, _cache) => {
23
36
  return openBlock(), createElementBlock("div", {
24
- class: normalizeClass(unref(ns).b())
37
+ class: normalizeClass(unref(kls))
25
38
  }, [
26
39
  createElementVNode("div", {
27
- class: normalizeClass(unref(ns).e("left")),
28
- onClick: handleClick
40
+ class: normalizeClass(unref(ns).e("breadcrumb"))
41
+ }, [
42
+ renderSlot(_ctx.$slots, "breadcrumb")
43
+ ], 2),
44
+ createElementVNode("div", {
45
+ class: normalizeClass(unref(ns).e("header"))
29
46
  }, [
30
- _ctx.icon || _ctx.$slots.icon ? (openBlock(), createElementBlock("div", {
31
- key: 0,
32
- class: normalizeClass(unref(ns).e("icon"))
33
- }, [
34
- renderSlot(_ctx.$slots, "icon", {}, () => [
35
- _ctx.icon ? (openBlock(), createBlock(unref(ElIcon), { key: 0 }, {
36
- default: withCtx(() => [
37
- (openBlock(), createBlock(resolveDynamicComponent(_ctx.icon)))
38
- ]),
39
- _: 1
40
- })) : createCommentVNode("v-if", true)
41
- ])
42
- ], 2)) : createCommentVNode("v-if", true),
43
47
  createElementVNode("div", {
44
- class: normalizeClass(unref(ns).e("title"))
48
+ class: normalizeClass(unref(ns).e("left"))
49
+ }, [
50
+ createElementVNode("div", {
51
+ class: normalizeClass(unref(ns).e("back")),
52
+ role: "button",
53
+ tabindex: "0",
54
+ onClick: handleClick
55
+ }, [
56
+ _ctx.icon || _ctx.$slots.icon ? (openBlock(), createElementBlock("div", {
57
+ key: 0,
58
+ "aria-label": _ctx.title || unref(t)("el.pageHeader.title"),
59
+ class: normalizeClass(unref(ns).e("icon"))
60
+ }, [
61
+ renderSlot(_ctx.$slots, "icon", {}, () => [
62
+ _ctx.icon ? (openBlock(), createBlock(unref(ElIcon), { key: 0 }, {
63
+ default: withCtx(() => [
64
+ (openBlock(), createBlock(resolveDynamicComponent(_ctx.icon)))
65
+ ]),
66
+ _: 1
67
+ })) : createCommentVNode("v-if", true)
68
+ ])
69
+ ], 10, _hoisted_1)) : createCommentVNode("v-if", true),
70
+ createElementVNode("div", {
71
+ class: normalizeClass(unref(ns).e("title"))
72
+ }, [
73
+ renderSlot(_ctx.$slots, "title", {}, () => [
74
+ createTextVNode(toDisplayString(_ctx.title || unref(t)("el.pageHeader.title")), 1)
75
+ ])
76
+ ], 2)
77
+ ], 2),
78
+ createVNode(unref(ElDivider), { direction: "vertical" }),
79
+ createElementVNode("div", {
80
+ class: normalizeClass(unref(ns).e("content"))
81
+ }, [
82
+ renderSlot(_ctx.$slots, "content", {}, () => [
83
+ createTextVNode(toDisplayString(_ctx.content), 1)
84
+ ])
85
+ ], 2)
86
+ ], 2),
87
+ _ctx.$slots.extra ? (openBlock(), createElementBlock("div", {
88
+ key: 0,
89
+ class: normalizeClass(unref(ns).e("extra"))
45
90
  }, [
46
- renderSlot(_ctx.$slots, "title", {}, () => [
47
- createTextVNode(toDisplayString(_ctx.title || unref(t)("el.pageHeader.title")), 1)
48
- ])
49
- ], 2)
91
+ renderSlot(_ctx.$slots, "extra")
92
+ ], 2)) : createCommentVNode("v-if", true)
50
93
  ], 2),
51
- createElementVNode("div", {
52
- class: normalizeClass(unref(ns).e("content"))
94
+ _ctx.$slots.default ? (openBlock(), createElementBlock("div", {
95
+ key: 0,
96
+ class: normalizeClass(unref(ns).e("main"))
53
97
  }, [
54
- renderSlot(_ctx.$slots, "content", {}, () => [
55
- createTextVNode(toDisplayString(_ctx.content), 1)
56
- ])
57
- ], 2)
98
+ renderSlot(_ctx.$slots, "default")
99
+ ], 2)) : createCommentVNode("v-if", true)
58
100
  ], 2);
59
101
  };
60
102
  }
@@ -1 +1 @@
1
- {"version":3,"file":"page-header2.mjs","sources":["../../../../../../packages/components/page-header/src/page-header.vue"],"sourcesContent":["<template>\n <div :class=\"ns.b()\">\n <div :class=\"ns.e('left')\" @click=\"handleClick\">\n <div v-if=\"icon || $slots.icon\" :class=\"ns.e('icon')\">\n <slot name=\"icon\">\n <el-icon v-if=\"icon\">\n <component :is=\"icon\" />\n </el-icon>\n </slot>\n </div>\n <div :class=\"ns.e('title')\">\n <slot name=\"title\">{{ title || t('el.pageHeader.title') }}</slot>\n </div>\n </div>\n <div :class=\"ns.e('content')\">\n <slot name=\"content\">{{ content }}</slot>\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { ElIcon } from '@element-plus/components/icon'\n\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { pageHeaderEmits, pageHeaderProps } from './page-header'\n\ndefineOptions({\n name: 'ElPageHeader',\n})\ndefineProps(pageHeaderProps)\nconst emit = defineEmits(pageHeaderEmits)\n\nconst { t } = useLocale()\nconst ns = useNamespace('page-header')\n\nfunction handleClick() {\n emit('back')\n}\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AA+BA,IAAA,MAAA,EAAA,MAAA,SAAA,EAAA,CAAA;AACA,IAAA,MAAA,EAAA,GAAA,aAAA,aAAA,CAAA,CAAA;AAEA,IAAA,SAAA,WAAA,GAAA;AACA,MAAA,IAAA,CAAA,MAAA,CAAA,CAAA;AAAA,KACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"page-header2.mjs","sources":["../../../../../../packages/components/page-header/src/page-header.vue"],"sourcesContent":["<template>\n <div :class=\"kls\">\n <div :class=\"ns.e('breadcrumb')\">\n <slot name=\"breadcrumb\" />\n </div>\n <div :class=\"ns.e('header')\">\n <div :class=\"ns.e('left')\">\n <div\n :class=\"ns.e('back')\"\n role=\"button\"\n tabindex=\"0\"\n @click=\"handleClick\"\n >\n <div\n v-if=\"icon || $slots.icon\"\n :aria-label=\"title || t('el.pageHeader.title')\"\n :class=\"ns.e('icon')\"\n >\n <slot name=\"icon\">\n <el-icon v-if=\"icon\">\n <component :is=\"icon\" />\n </el-icon>\n </slot>\n </div>\n <div :class=\"ns.e('title')\">\n <slot name=\"title\">{{ title || t('el.pageHeader.title') }}</slot>\n </div>\n </div>\n <el-divider direction=\"vertical\" />\n <div :class=\"ns.e('content')\">\n <slot name=\"content\">{{ content }}</slot>\n </div>\n </div>\n\n <div v-if=\"$slots.extra\" :class=\"ns.e('extra')\">\n <slot name=\"extra\" />\n </div>\n </div>\n\n <div v-if=\"$slots.default\" :class=\"ns.e('main')\">\n <slot />\n </div>\n </div>\n</template>\n<script lang=\"ts\" setup>\nimport { computed, useSlots } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { ElDivider } from '@element-plus/components/divider'\n\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { pageHeaderEmits, pageHeaderProps } from './page-header'\n\ndefineOptions({\n name: 'ElPageHeader',\n})\n\ndefineProps(pageHeaderProps)\nconst emit = defineEmits(pageHeaderEmits)\nconst slots = useSlots()\n\nconst { t } = useLocale()\nconst ns = useNamespace('page-header')\nconst kls = computed(() => {\n return [\n ns.b(),\n {\n [ns.m('has-breadcrumb')]: !!slots.breadcrumb,\n [ns.m('has-extra')]: !!slots.extra,\n [ns.is('contentful')]: !!slots.default,\n },\n ]\n})\n\nfunction handleClick() {\n emit('back')\n}\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AA0DA,IAAA,MAAA,QAAA,QAAA,EAAA,CAAA;AAEA,IAAA,MAAA,EAAA,MAAA,SAAA,EAAA,CAAA;AACA,IAAA,MAAA,EAAA,GAAA,aAAA,aAAA,CAAA,CAAA;AACA,IAAA,MAAA,GAAA,GAAA,SAAA,MAAA;AACA,MAAA,OAAA;AAAA,QACA,GAAA,CAAA,EAAA;AAAA,QACA;AAAA,UACA,CAAA,EAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,GAAA,CAAA,CAAA,KAAA,CAAA,UAAA;AAAA,UACA,CAAA,EAAA,CAAA,CAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,KAAA,CAAA,KAAA;AAAA,UACA,CAAA,EAAA,CAAA,EAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,KAAA,CAAA,OAAA;AAAA,SACA;AAAA,OACA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,SAAA,WAAA,GAAA;AACA,MAAA,IAAA,CAAA,MAAA,CAAA,CAAA;AAAA,KACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20220819";
1
+ export declare const version = "0.0.20220822";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20220819";
1
+ const version = "0.0.20220822";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220819'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20220822'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -8,7 +8,7 @@ var index$2 = require('../../button/index.js');
8
8
  require('../../../hooks/index.js');
9
9
  require('../../../utils/index.js');
10
10
  require('../../../constants/index.js');
11
- var dateTable = require('./date-table2.js');
11
+ var dateTable = require('./date-table.js');
12
12
  var calendar = require('./calendar.js');
13
13
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
14
14
  var index = require('../../../hooks/use-namespace/index.js');
@@ -2,46 +2,169 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- require('../../../utils/index.js');
5
+ var vue = require('vue');
6
+ var dayjs = require('dayjs');
7
+ var localeData = require('dayjs/plugin/localeData.js');
8
+ require('../../../hooks/index.js');
6
9
  require('../../time-picker/index.js');
10
+ require('../../../constants/index.js');
11
+ var dateTable = require('./date-table2.js');
12
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
13
+ var index = require('../../../hooks/use-locale/index.js');
14
+ var index$1 = require('../../../hooks/use-namespace/index.js');
7
15
  var utils = require('../../time-picker/src/utils.js');
8
- var runtime = require('../../../utils/vue/props/runtime.js');
9
- var shared = require('@vue/shared');
16
+ var date = require('../../../constants/date.js');
10
17
 
11
- const getPrevMonthLastDays = (date, count) => {
12
- const lastDay = date.subtract(1, "month").endOf("month").date();
13
- return utils.rangeArr(count).map((_, index) => lastDay - (count - index - 1));
14
- };
15
- const getMonthDays = (date) => {
16
- const days = date.daysInMonth();
17
- return utils.rangeArr(days).map((_, index) => index + 1);
18
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
+
20
+ var dayjs__default = /*#__PURE__*/_interopDefaultLegacy(dayjs);
21
+ var localeData__default = /*#__PURE__*/_interopDefaultLegacy(localeData);
22
+
23
+ const _hoisted_1 = { key: 0 };
24
+ const _hoisted_2 = ["onClick"];
25
+ const __default__ = {
26
+ name: "DateTable"
18
27
  };
19
- const toNestedArr = (days) => utils.rangeArr(days.length / 7).map((index) => {
20
- const start = index * 7;
21
- return days.slice(start, start + 7);
22
- });
23
- const dateTableProps = runtime.buildProps({
24
- selectedDay: {
25
- type: runtime.definePropType(Object)
26
- },
27
- range: {
28
- type: runtime.definePropType(Array)
29
- },
30
- date: {
31
- type: runtime.definePropType(Object),
32
- required: true
33
- },
34
- hideHeader: {
35
- type: Boolean
28
+ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
29
+ ...__default__,
30
+ props: dateTable.dateTableProps,
31
+ emits: dateTable.dateTableEmits,
32
+ setup(__props, { expose, emit }) {
33
+ const props = __props;
34
+ dayjs__default["default"].extend(localeData__default["default"]);
35
+ const { t, lang } = index.useLocale();
36
+ const nsTable = index$1.useNamespace("calendar-table");
37
+ const nsDay = index$1.useNamespace("calendar-day");
38
+ const now = dayjs__default["default"]().locale(lang.value);
39
+ const firstDayOfWeek = now.$locale().weekStart || 0;
40
+ const isInRange = vue.computed(() => !!props.range && !!props.range.length);
41
+ const rows = vue.computed(() => {
42
+ let days = [];
43
+ if (isInRange.value) {
44
+ const [start, end] = props.range;
45
+ const currentMonthRange = utils.rangeArr(end.date() - start.date() + 1).map((index) => ({
46
+ text: start.date() + index,
47
+ type: "current"
48
+ }));
49
+ let remaining = currentMonthRange.length % 7;
50
+ remaining = remaining === 0 ? 0 : 7 - remaining;
51
+ const nextMonthRange = utils.rangeArr(remaining).map((_, index) => ({
52
+ text: index + 1,
53
+ type: "next"
54
+ }));
55
+ days = currentMonthRange.concat(nextMonthRange);
56
+ } else {
57
+ const firstDay = props.date.startOf("month").day();
58
+ const prevMonthDays = dateTable.getPrevMonthLastDays(props.date, firstDay - firstDayOfWeek).map((day) => ({
59
+ text: day,
60
+ type: "prev"
61
+ }));
62
+ const currentMonthDays = dateTable.getMonthDays(props.date).map((day) => ({
63
+ text: day,
64
+ type: "current"
65
+ }));
66
+ days = [...prevMonthDays, ...currentMonthDays];
67
+ const remaining = 7 - (days.length % 7 || 7);
68
+ const nextMonthDays = utils.rangeArr(remaining).map((_, index) => ({
69
+ text: index + 1,
70
+ type: "next"
71
+ }));
72
+ days = days.concat(nextMonthDays);
73
+ }
74
+ return dateTable.toNestedArr(days);
75
+ });
76
+ const weekDays = vue.computed(() => {
77
+ const start = firstDayOfWeek;
78
+ if (start === 0) {
79
+ return date.WEEK_DAYS.map((_) => t(`el.datepicker.weeks.${_}`));
80
+ } else {
81
+ return date.WEEK_DAYS.slice(start).concat(date.WEEK_DAYS.slice(0, start)).map((_) => t(`el.datepicker.weeks.${_}`));
82
+ }
83
+ });
84
+ const getFormattedDate = (day, type) => {
85
+ switch (type) {
86
+ case "prev":
87
+ return props.date.startOf("month").subtract(1, "month").date(day);
88
+ case "next":
89
+ return props.date.startOf("month").add(1, "month").date(day);
90
+ case "current":
91
+ return props.date.date(day);
92
+ }
93
+ };
94
+ const getCellClass = ({ text, type }) => {
95
+ const classes = [type];
96
+ if (type === "current") {
97
+ const date = getFormattedDate(text, type);
98
+ if (date.isSame(props.selectedDay, "day")) {
99
+ classes.push(nsDay.is("selected"));
100
+ }
101
+ if (date.isSame(now, "day")) {
102
+ classes.push(nsDay.is("today"));
103
+ }
104
+ }
105
+ return classes;
106
+ };
107
+ const handlePickDay = ({ text, type }) => {
108
+ const date = getFormattedDate(text, type);
109
+ emit("pick", date);
110
+ };
111
+ const getSlotData = ({ text, type }) => {
112
+ const day = getFormattedDate(text, type);
113
+ return {
114
+ isSelected: day.isSame(props.selectedDay),
115
+ type: `${type}-month`,
116
+ day: day.format("YYYY-MM-DD"),
117
+ date: day.toDate()
118
+ };
119
+ };
120
+ expose({
121
+ getFormattedDate
122
+ });
123
+ return (_ctx, _cache) => {
124
+ return vue.openBlock(), vue.createElementBlock("table", {
125
+ class: vue.normalizeClass([vue.unref(nsTable).b(), vue.unref(nsTable).is("range", vue.unref(isInRange))]),
126
+ cellspacing: "0",
127
+ cellpadding: "0"
128
+ }, [
129
+ !_ctx.hideHeader ? (vue.openBlock(), vue.createElementBlock("thead", _hoisted_1, [
130
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(weekDays), (day) => {
131
+ return vue.openBlock(), vue.createElementBlock("th", { key: day }, vue.toDisplayString(day), 1);
132
+ }), 128))
133
+ ])) : vue.createCommentVNode("v-if", true),
134
+ vue.createElementVNode("tbody", null, [
135
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(rows), (row, index) => {
136
+ return vue.openBlock(), vue.createElementBlock("tr", {
137
+ key: index,
138
+ class: vue.normalizeClass({
139
+ [vue.unref(nsTable).e("row")]: true,
140
+ [vue.unref(nsTable).em("row", "hide-border")]: index === 0 && _ctx.hideHeader
141
+ })
142
+ }, [
143
+ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(row, (cell, key) => {
144
+ return vue.openBlock(), vue.createElementBlock("td", {
145
+ key,
146
+ class: vue.normalizeClass(getCellClass(cell)),
147
+ onClick: ($event) => handlePickDay(cell)
148
+ }, [
149
+ vue.createElementVNode("div", {
150
+ class: vue.normalizeClass(vue.unref(nsDay).b())
151
+ }, [
152
+ vue.renderSlot(_ctx.$slots, "dateCell", {
153
+ data: getSlotData(cell)
154
+ }, () => [
155
+ vue.createElementVNode("span", null, vue.toDisplayString(cell.text), 1)
156
+ ])
157
+ ], 2)
158
+ ], 10, _hoisted_2);
159
+ }), 128))
160
+ ], 2);
161
+ }), 128))
162
+ ])
163
+ ], 2);
164
+ };
36
165
  }
37
166
  });
38
- const dateTableEmits = {
39
- pick: (value) => shared.isObject(value)
40
- };
167
+ var DateTable = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["__file", "/home/runner/work/element-plus/element-plus/packages/components/calendar/src/date-table.vue"]]);
41
168
 
42
- exports.dateTableEmits = dateTableEmits;
43
- exports.dateTableProps = dateTableProps;
44
- exports.getMonthDays = getMonthDays;
45
- exports.getPrevMonthLastDays = getPrevMonthLastDays;
46
- exports.toNestedArr = toNestedArr;
169
+ exports["default"] = DateTable;
47
170
  //# sourceMappingURL=date-table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-table.js","sources":["../../../../../../packages/components/calendar/src/date-table.ts"],"sourcesContent":["import { buildProps, definePropType, isObject } from '@element-plus/utils'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport type { ExtractPropTypes } from 'vue'\nimport type { Dayjs } from 'dayjs'\nimport type DateTable from './date-table.vue'\n\nexport type CalendarDateCellType = 'next' | 'prev' | 'current'\nexport type CalendarDateCell = {\n text: number\n type: CalendarDateCellType\n}\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\nexport const toNestedArr = (days: CalendarDateCell[]) =>\n rangeArr(days.length / 7).map((index) => {\n const start = index * 7\n return days.slice(start, start + 7)\n })\n\nexport const dateTableProps = buildProps({\n selectedDay: {\n type: definePropType<Dayjs>(Object),\n },\n range: {\n type: definePropType<[Dayjs, Dayjs]>(Array),\n },\n date: {\n type: definePropType<Dayjs>(Object),\n required: true,\n },\n hideHeader: {\n type: Boolean,\n },\n} as const)\nexport type DateTableProps = ExtractPropTypes<typeof dateTableProps>\n\nexport const dateTableEmits = {\n pick: (value: Dayjs) => isObject(value),\n}\nexport type DateTableEmits = typeof dateTableEmits\n\nexport type DateTableInstance = InstanceType<typeof DateTable>\n"],"names":["rangeArr","buildProps","definePropType","isObject"],"mappings":";;;;;;;;;;AAEY,MAAC,oBAAoB,GAAG,CAAC,IAAI,EAAE,KAAK,KAAK;AACrD,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AAClE,EAAE,OAAOA,cAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,OAAO,IAAI,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;AAC1E,EAAE;AACU,MAAC,YAAY,GAAG,CAAC,IAAI,KAAK;AACtC,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;AAClC,EAAE,OAAOA,cAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC;AACrD,EAAE;AACU,MAAC,WAAW,GAAG,CAAC,IAAI,KAAKA,cAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;AAC9E,EAAE,MAAM,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;AAC1B,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;AACtC,CAAC,EAAE;AACS,MAAC,cAAc,GAAGC,kBAAU,CAAC;AACzC,EAAE,WAAW,EAAE;AACf,IAAI,IAAI,EAAEC,sBAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAEA,sBAAc,CAAC,KAAK,CAAC;AAC/B,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAEA,sBAAc,CAAC,MAAM,CAAC;AAChC,IAAI,QAAQ,EAAE,IAAI;AAClB,GAAG;AACH,EAAE,UAAU,EAAE;AACd,IAAI,IAAI,EAAE,OAAO;AACjB,GAAG;AACH,CAAC,EAAE;AACS,MAAC,cAAc,GAAG;AAC9B,EAAE,IAAI,EAAE,CAAC,KAAK,KAAKC,eAAQ,CAAC,KAAK,CAAC;AAClC;;;;;;;;"}
1
+ {"version":3,"file":"date-table.js","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\" setup>\nimport { computed } from 'vue'\nimport dayjs from 'dayjs'\nimport localeData from 'dayjs/plugin/localeData.js'\nimport { useLocale, useNamespace } from '@element-plus/hooks'\nimport { rangeArr } from '@element-plus/components/time-picker'\nimport { WEEK_DAYS } from '@element-plus/constants'\nimport {\n dateTableEmits,\n dateTableProps,\n getMonthDays,\n getPrevMonthLastDays,\n toNestedArr,\n} from './date-table'\n\nimport type { CalendarDateCell, CalendarDateCellType } from './date-table'\nimport type { Dayjs } from 'dayjs'\n\ndefineOptions({\n name: 'DateTable',\n})\n\nconst props = defineProps(dateTableProps)\nconst emit = defineEmits(dateTableEmits)\n\ndayjs.extend(localeData)\n\nconst { t, lang } = useLocale()\nconst nsTable = useNamespace('calendar-table')\nconst nsDay = useNamespace('calendar-day')\n\nconst now = dayjs().locale(lang.value)\n// todo better way to get Day.js locale object\nconst firstDayOfWeek: number = (now as any).$locale().weekStart || 0\n\nconst isInRange = computed(() => !!props.range && !!props.range.length)\n\nconst rows = computed(() => {\n let days: CalendarDateCell[] = []\n if (isInRange.value) {\n const [start, end] = props.range!\n const currentMonthRange: CalendarDateCell[] = 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: CalendarDateCell[] = rangeArr(remaining).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = currentMonthRange.concat(nextMonthRange)\n } else {\n const firstDay = props.date.startOf('month').day()\n const prevMonthDays: CalendarDateCell[] = getPrevMonthLastDays(\n props.date,\n firstDay - firstDayOfWeek\n ).map((day) => ({\n text: day,\n type: 'prev',\n }))\n const currentMonthDays: CalendarDateCell[] = getMonthDays(props.date).map(\n (day) => ({\n text: day,\n type: 'current',\n })\n )\n days = [...prevMonthDays, ...currentMonthDays]\n const remaining = 7 - (days.length % 7 || 7)\n const nextMonthDays: CalendarDateCell[] = rangeArr(remaining).map(\n (_, index) => ({\n text: index + 1,\n type: 'next',\n })\n )\n days = days.concat(nextMonthDays)\n }\n return toNestedArr(days)\n})\n\nconst 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\nconst getFormattedDate = (day: number, type: CalendarDateCellType): 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\nconst getCellClass = ({ text, type }: CalendarDateCell) => {\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(nsDay.is('selected'))\n }\n if (date.isSame(now, 'day')) {\n classes.push(nsDay.is('today'))\n }\n }\n return classes\n}\n\nconst handlePickDay = ({ text, type }: CalendarDateCell) => {\n const date = getFormattedDate(text, type)\n emit('pick', date)\n}\n\nconst getSlotData = ({ text, type }: CalendarDateCell) => {\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\ndefineExpose({\n /** @description toggle date panel */\n getFormattedDate,\n})\n</script>\n"],"names":["dayjs","localeData","useLocale","useNamespace","computed","rangeArr","getPrevMonthLastDays","getMonthDays","toNestedArr","WEEK_DAYS"],"mappings":"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"}