element-plus 2.2.34 → 2.2.36

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 (352) hide show
  1. package/dist/index.full.js +102 -30
  2. package/dist/index.full.min.js +12 -12
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +12 -12
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +102 -30
  7. package/dist/locale/af.js +1 -1
  8. package/dist/locale/af.min.js +1 -1
  9. package/dist/locale/af.min.mjs +1 -1
  10. package/dist/locale/af.mjs +1 -1
  11. package/dist/locale/ar.js +1 -1
  12. package/dist/locale/ar.min.js +1 -1
  13. package/dist/locale/ar.min.mjs +1 -1
  14. package/dist/locale/ar.mjs +1 -1
  15. package/dist/locale/az.js +1 -1
  16. package/dist/locale/az.min.js +1 -1
  17. package/dist/locale/az.min.mjs +1 -1
  18. package/dist/locale/az.mjs +1 -1
  19. package/dist/locale/bg.js +1 -1
  20. package/dist/locale/bg.min.js +1 -1
  21. package/dist/locale/bg.min.mjs +1 -1
  22. package/dist/locale/bg.mjs +1 -1
  23. package/dist/locale/bn.js +1 -1
  24. package/dist/locale/bn.min.js +1 -1
  25. package/dist/locale/bn.min.mjs +1 -1
  26. package/dist/locale/bn.mjs +1 -1
  27. package/dist/locale/ca.js +1 -1
  28. package/dist/locale/ca.min.js +1 -1
  29. package/dist/locale/ca.min.mjs +1 -1
  30. package/dist/locale/ca.mjs +1 -1
  31. package/dist/locale/ckb.js +1 -1
  32. package/dist/locale/ckb.min.js +1 -1
  33. package/dist/locale/ckb.min.mjs +1 -1
  34. package/dist/locale/ckb.mjs +1 -1
  35. package/dist/locale/cs.js +1 -1
  36. package/dist/locale/cs.min.js +1 -1
  37. package/dist/locale/cs.min.mjs +1 -1
  38. package/dist/locale/cs.mjs +1 -1
  39. package/dist/locale/da.js +1 -1
  40. package/dist/locale/da.min.js +1 -1
  41. package/dist/locale/da.min.mjs +1 -1
  42. package/dist/locale/da.mjs +1 -1
  43. package/dist/locale/de.js +1 -1
  44. package/dist/locale/de.min.js +1 -1
  45. package/dist/locale/de.min.mjs +1 -1
  46. package/dist/locale/de.mjs +1 -1
  47. package/dist/locale/el.js +1 -1
  48. package/dist/locale/el.min.js +1 -1
  49. package/dist/locale/el.min.mjs +1 -1
  50. package/dist/locale/el.mjs +1 -1
  51. package/dist/locale/en.js +1 -1
  52. package/dist/locale/en.min.js +1 -1
  53. package/dist/locale/en.min.mjs +1 -1
  54. package/dist/locale/en.mjs +1 -1
  55. package/dist/locale/eo.js +1 -1
  56. package/dist/locale/eo.min.js +1 -1
  57. package/dist/locale/eo.min.mjs +1 -1
  58. package/dist/locale/eo.mjs +1 -1
  59. package/dist/locale/es.js +1 -1
  60. package/dist/locale/es.min.js +1 -1
  61. package/dist/locale/es.min.mjs +1 -1
  62. package/dist/locale/es.mjs +1 -1
  63. package/dist/locale/et.js +1 -1
  64. package/dist/locale/et.min.js +1 -1
  65. package/dist/locale/et.min.mjs +1 -1
  66. package/dist/locale/et.mjs +1 -1
  67. package/dist/locale/eu.js +1 -1
  68. package/dist/locale/eu.min.js +1 -1
  69. package/dist/locale/eu.min.mjs +1 -1
  70. package/dist/locale/eu.mjs +1 -1
  71. package/dist/locale/fa.js +1 -1
  72. package/dist/locale/fa.min.js +1 -1
  73. package/dist/locale/fa.min.mjs +1 -1
  74. package/dist/locale/fa.mjs +1 -1
  75. package/dist/locale/fi.js +1 -1
  76. package/dist/locale/fi.min.js +1 -1
  77. package/dist/locale/fi.min.mjs +1 -1
  78. package/dist/locale/fi.mjs +1 -1
  79. package/dist/locale/fr.js +1 -1
  80. package/dist/locale/fr.min.js +1 -1
  81. package/dist/locale/fr.min.mjs +1 -1
  82. package/dist/locale/fr.mjs +1 -1
  83. package/dist/locale/he.js +1 -1
  84. package/dist/locale/he.min.js +1 -1
  85. package/dist/locale/he.min.mjs +1 -1
  86. package/dist/locale/he.mjs +1 -1
  87. package/dist/locale/hr.js +1 -1
  88. package/dist/locale/hr.min.js +1 -1
  89. package/dist/locale/hr.min.mjs +1 -1
  90. package/dist/locale/hr.mjs +1 -1
  91. package/dist/locale/hu.js +1 -1
  92. package/dist/locale/hu.min.js +1 -1
  93. package/dist/locale/hu.min.mjs +1 -1
  94. package/dist/locale/hu.mjs +1 -1
  95. package/dist/locale/hy-am.js +1 -1
  96. package/dist/locale/hy-am.min.js +1 -1
  97. package/dist/locale/hy-am.min.mjs +1 -1
  98. package/dist/locale/hy-am.mjs +1 -1
  99. package/dist/locale/id.js +1 -1
  100. package/dist/locale/id.min.js +1 -1
  101. package/dist/locale/id.min.mjs +1 -1
  102. package/dist/locale/id.mjs +1 -1
  103. package/dist/locale/it.js +1 -1
  104. package/dist/locale/it.min.js +1 -1
  105. package/dist/locale/it.min.mjs +1 -1
  106. package/dist/locale/it.mjs +1 -1
  107. package/dist/locale/ja.js +1 -1
  108. package/dist/locale/ja.min.js +1 -1
  109. package/dist/locale/ja.min.mjs +1 -1
  110. package/dist/locale/ja.mjs +1 -1
  111. package/dist/locale/kk.js +1 -1
  112. package/dist/locale/kk.min.js +1 -1
  113. package/dist/locale/kk.min.mjs +1 -1
  114. package/dist/locale/kk.mjs +1 -1
  115. package/dist/locale/km.js +1 -1
  116. package/dist/locale/km.min.js +1 -1
  117. package/dist/locale/km.min.mjs +1 -1
  118. package/dist/locale/km.mjs +1 -1
  119. package/dist/locale/ko.js +1 -1
  120. package/dist/locale/ko.min.js +1 -1
  121. package/dist/locale/ko.min.mjs +1 -1
  122. package/dist/locale/ko.mjs +1 -1
  123. package/dist/locale/ku.js +1 -1
  124. package/dist/locale/ku.min.js +1 -1
  125. package/dist/locale/ku.min.mjs +1 -1
  126. package/dist/locale/ku.mjs +1 -1
  127. package/dist/locale/ky.js +1 -1
  128. package/dist/locale/ky.min.js +1 -1
  129. package/dist/locale/ky.min.mjs +1 -1
  130. package/dist/locale/ky.mjs +1 -1
  131. package/dist/locale/lt.js +1 -1
  132. package/dist/locale/lt.min.js +1 -1
  133. package/dist/locale/lt.min.mjs +1 -1
  134. package/dist/locale/lt.mjs +1 -1
  135. package/dist/locale/lv.js +1 -1
  136. package/dist/locale/lv.min.js +1 -1
  137. package/dist/locale/lv.min.mjs +1 -1
  138. package/dist/locale/lv.mjs +1 -1
  139. package/dist/locale/mg.js +1 -1
  140. package/dist/locale/mg.min.js +1 -1
  141. package/dist/locale/mg.min.mjs +1 -1
  142. package/dist/locale/mg.mjs +1 -1
  143. package/dist/locale/mn.js +1 -1
  144. package/dist/locale/mn.min.js +1 -1
  145. package/dist/locale/mn.min.mjs +1 -1
  146. package/dist/locale/mn.mjs +1 -1
  147. package/dist/locale/nb-no.js +1 -1
  148. package/dist/locale/nb-no.min.js +1 -1
  149. package/dist/locale/nb-no.min.mjs +1 -1
  150. package/dist/locale/nb-no.mjs +1 -1
  151. package/dist/locale/nl.js +1 -1
  152. package/dist/locale/nl.min.js +1 -1
  153. package/dist/locale/nl.min.mjs +1 -1
  154. package/dist/locale/nl.mjs +1 -1
  155. package/dist/locale/pa.js +1 -1
  156. package/dist/locale/pa.min.js +1 -1
  157. package/dist/locale/pa.min.mjs +1 -1
  158. package/dist/locale/pa.mjs +1 -1
  159. package/dist/locale/pl.js +1 -1
  160. package/dist/locale/pl.min.js +1 -1
  161. package/dist/locale/pl.min.mjs +1 -1
  162. package/dist/locale/pl.mjs +1 -1
  163. package/dist/locale/pt-br.js +1 -1
  164. package/dist/locale/pt-br.min.js +1 -1
  165. package/dist/locale/pt-br.min.mjs +1 -1
  166. package/dist/locale/pt-br.mjs +1 -1
  167. package/dist/locale/pt.js +1 -1
  168. package/dist/locale/pt.min.js +1 -1
  169. package/dist/locale/pt.min.mjs +1 -1
  170. package/dist/locale/pt.mjs +1 -1
  171. package/dist/locale/ro.js +1 -1
  172. package/dist/locale/ro.min.js +1 -1
  173. package/dist/locale/ro.min.mjs +1 -1
  174. package/dist/locale/ro.mjs +1 -1
  175. package/dist/locale/ru.js +1 -1
  176. package/dist/locale/ru.min.js +1 -1
  177. package/dist/locale/ru.min.mjs +1 -1
  178. package/dist/locale/ru.mjs +1 -1
  179. package/dist/locale/sk.js +1 -1
  180. package/dist/locale/sk.min.js +1 -1
  181. package/dist/locale/sk.min.mjs +1 -1
  182. package/dist/locale/sk.mjs +1 -1
  183. package/dist/locale/sl.js +1 -1
  184. package/dist/locale/sl.min.js +1 -1
  185. package/dist/locale/sl.min.mjs +1 -1
  186. package/dist/locale/sl.mjs +1 -1
  187. package/dist/locale/sr.js +1 -1
  188. package/dist/locale/sr.min.js +1 -1
  189. package/dist/locale/sr.min.mjs +1 -1
  190. package/dist/locale/sr.mjs +1 -1
  191. package/dist/locale/sv.js +1 -1
  192. package/dist/locale/sv.min.js +1 -1
  193. package/dist/locale/sv.min.mjs +1 -1
  194. package/dist/locale/sv.mjs +1 -1
  195. package/dist/locale/ta.js +1 -1
  196. package/dist/locale/ta.min.js +1 -1
  197. package/dist/locale/ta.min.mjs +1 -1
  198. package/dist/locale/ta.mjs +1 -1
  199. package/dist/locale/th.js +1 -1
  200. package/dist/locale/th.min.js +1 -1
  201. package/dist/locale/th.min.mjs +1 -1
  202. package/dist/locale/th.mjs +1 -1
  203. package/dist/locale/tk.js +1 -1
  204. package/dist/locale/tk.min.js +1 -1
  205. package/dist/locale/tk.min.mjs +1 -1
  206. package/dist/locale/tk.mjs +1 -1
  207. package/dist/locale/tr.js +1 -1
  208. package/dist/locale/tr.min.js +1 -1
  209. package/dist/locale/tr.min.mjs +1 -1
  210. package/dist/locale/tr.mjs +1 -1
  211. package/dist/locale/ug-cn.js +1 -1
  212. package/dist/locale/ug-cn.min.js +1 -1
  213. package/dist/locale/ug-cn.min.mjs +1 -1
  214. package/dist/locale/ug-cn.mjs +1 -1
  215. package/dist/locale/uk.js +1 -1
  216. package/dist/locale/uk.min.js +1 -1
  217. package/dist/locale/uk.min.mjs +1 -1
  218. package/dist/locale/uk.mjs +1 -1
  219. package/dist/locale/uz-uz.js +1 -1
  220. package/dist/locale/uz-uz.min.js +1 -1
  221. package/dist/locale/uz-uz.min.mjs +1 -1
  222. package/dist/locale/uz-uz.mjs +1 -1
  223. package/dist/locale/vi.js +1 -1
  224. package/dist/locale/vi.min.js +1 -1
  225. package/dist/locale/vi.min.mjs +1 -1
  226. package/dist/locale/vi.mjs +1 -1
  227. package/dist/locale/zh-cn.js +1 -1
  228. package/dist/locale/zh-cn.min.js +1 -1
  229. package/dist/locale/zh-cn.min.mjs +1 -1
  230. package/dist/locale/zh-cn.mjs +1 -1
  231. package/dist/locale/zh-tw.js +1 -1
  232. package/dist/locale/zh-tw.min.js +1 -1
  233. package/dist/locale/zh-tw.min.mjs +1 -1
  234. package/dist/locale/zh-tw.mjs +1 -1
  235. package/es/components/collapse/index.mjs +2 -2
  236. package/es/components/collapse/src/collapse.mjs +30 -17
  237. package/es/components/collapse/src/collapse.mjs.map +1 -1
  238. package/es/components/collapse/src/collapse2.mjs +17 -30
  239. package/es/components/collapse/src/collapse2.mjs.map +1 -1
  240. package/es/components/config-provider/src/hooks/use-global-config.d.ts +2 -1
  241. package/es/components/config-provider/src/hooks/use-global-config.mjs +9 -3
  242. package/es/components/config-provider/src/hooks/use-global-config.mjs.map +1 -1
  243. package/es/components/index.mjs +1 -1
  244. package/es/components/message-box/src/index.mjs +8 -6
  245. package/es/components/message-box/src/index.mjs.map +1 -1
  246. package/es/components/overlay/src/overlay.mjs +2 -1
  247. package/es/components/overlay/src/overlay.mjs.map +1 -1
  248. package/es/components/pagination/src/components/sizes.vue.d.ts +1 -0
  249. package/es/components/select/index.d.ts +1 -0
  250. package/es/components/select/src/options.d.ts +7 -0
  251. package/es/components/select/src/options.mjs +52 -0
  252. package/es/components/select/src/options.mjs.map +1 -0
  253. package/es/components/select/src/select.mjs +14 -1
  254. package/es/components/select/src/select.mjs.map +1 -1
  255. package/es/components/select/src/select.vue.d.ts +1 -0
  256. package/es/components/select/src/useSelect.d.ts +1 -0
  257. package/es/components/select/src/useSelect.mjs +2 -10
  258. package/es/components/select/src/useSelect.mjs.map +1 -1
  259. package/es/components/table/src/table-body/events-helper.mjs +4 -1
  260. package/es/components/table/src/table-body/events-helper.mjs.map +1 -1
  261. package/es/components/table/src/util.d.ts +1 -1
  262. package/es/components/table/src/util.mjs +1 -3
  263. package/es/components/table/src/util.mjs.map +1 -1
  264. package/es/components/table-v2/src/components/header-row.mjs +2 -1
  265. package/es/components/table-v2/src/components/header-row.mjs.map +1 -1
  266. package/es/components/table-v2/src/components/header.mjs +2 -1
  267. package/es/components/table-v2/src/components/header.mjs.map +1 -1
  268. package/es/components/table-v2/src/components/row.mjs +4 -2
  269. package/es/components/table-v2/src/components/row.mjs.map +1 -1
  270. package/es/components/table-v2/src/renderers/cell.mjs +3 -1
  271. package/es/components/table-v2/src/renderers/cell.mjs.map +1 -1
  272. package/es/components/table-v2/src/renderers/header-cell.mjs +4 -2
  273. package/es/components/table-v2/src/renderers/header-cell.mjs.map +1 -1
  274. package/es/components/table-v2/src/table-grid.mjs +1 -0
  275. package/es/components/table-v2/src/table-grid.mjs.map +1 -1
  276. package/es/components/time-select/index.d.ts +4 -0
  277. package/es/components/time-select/src/time-select.vue.d.ts +2 -0
  278. package/es/components/virtual-list/src/builders/build-grid.d.ts +2 -0
  279. package/es/components/virtual-list/src/builders/build-grid.mjs +2 -1
  280. package/es/components/virtual-list/src/builders/build-grid.mjs.map +1 -1
  281. package/es/components/virtual-list/src/components/dynamic-size-grid.d.ts +2 -0
  282. package/es/components/virtual-list/src/components/fixed-size-grid.d.ts +2 -0
  283. package/es/components/virtual-list/src/props.d.ts +1 -0
  284. package/es/components/virtual-list/src/props.mjs +1 -0
  285. package/es/components/virtual-list/src/props.mjs.map +1 -1
  286. package/es/hooks/use-lockscreen/index.d.ts +5 -1
  287. package/es/hooks/use-lockscreen/index.mjs +2 -2
  288. package/es/hooks/use-lockscreen/index.mjs.map +1 -1
  289. package/es/index.mjs +1 -1
  290. package/es/version.d.ts +1 -1
  291. package/es/version.mjs +1 -1
  292. package/es/version.mjs.map +1 -1
  293. package/lib/components/collapse/index.js +2 -2
  294. package/lib/components/collapse/src/collapse.js +30 -19
  295. package/lib/components/collapse/src/collapse.js.map +1 -1
  296. package/lib/components/collapse/src/collapse2.js +19 -30
  297. package/lib/components/collapse/src/collapse2.js.map +1 -1
  298. package/lib/components/config-provider/src/hooks/use-global-config.d.ts +2 -1
  299. package/lib/components/config-provider/src/hooks/use-global-config.js +8 -2
  300. package/lib/components/config-provider/src/hooks/use-global-config.js.map +1 -1
  301. package/lib/components/index.js +1 -1
  302. package/lib/components/message-box/src/index.js +7 -5
  303. package/lib/components/message-box/src/index.js.map +1 -1
  304. package/lib/components/overlay/src/overlay.js +2 -1
  305. package/lib/components/overlay/src/overlay.js.map +1 -1
  306. package/lib/components/pagination/src/components/sizes.vue.d.ts +1 -0
  307. package/lib/components/select/index.d.ts +1 -0
  308. package/lib/components/select/src/options.d.ts +7 -0
  309. package/lib/components/select/src/options.js +56 -0
  310. package/lib/components/select/src/options.js.map +1 -0
  311. package/lib/components/select/src/select.js +14 -1
  312. package/lib/components/select/src/select.js.map +1 -1
  313. package/lib/components/select/src/select.vue.d.ts +1 -0
  314. package/lib/components/select/src/useSelect.d.ts +1 -0
  315. package/lib/components/select/src/useSelect.js +1 -9
  316. package/lib/components/select/src/useSelect.js.map +1 -1
  317. package/lib/components/table/src/table-body/events-helper.js +4 -1
  318. package/lib/components/table/src/table-body/events-helper.js.map +1 -1
  319. package/lib/components/table/src/util.d.ts +1 -1
  320. package/lib/components/table/src/util.js +3 -5
  321. package/lib/components/table/src/util.js.map +1 -1
  322. package/lib/components/table-v2/src/components/header-row.js +2 -1
  323. package/lib/components/table-v2/src/components/header-row.js.map +1 -1
  324. package/lib/components/table-v2/src/components/header.js +2 -1
  325. package/lib/components/table-v2/src/components/header.js.map +1 -1
  326. package/lib/components/table-v2/src/components/row.js +4 -2
  327. package/lib/components/table-v2/src/components/row.js.map +1 -1
  328. package/lib/components/table-v2/src/renderers/cell.js +3 -1
  329. package/lib/components/table-v2/src/renderers/cell.js.map +1 -1
  330. package/lib/components/table-v2/src/renderers/header-cell.js +3 -1
  331. package/lib/components/table-v2/src/renderers/header-cell.js.map +1 -1
  332. package/lib/components/table-v2/src/table-grid.js +1 -0
  333. package/lib/components/table-v2/src/table-grid.js.map +1 -1
  334. package/lib/components/time-select/index.d.ts +4 -0
  335. package/lib/components/time-select/src/time-select.vue.d.ts +2 -0
  336. package/lib/components/virtual-list/src/builders/build-grid.d.ts +2 -0
  337. package/lib/components/virtual-list/src/builders/build-grid.js +2 -1
  338. package/lib/components/virtual-list/src/builders/build-grid.js.map +1 -1
  339. package/lib/components/virtual-list/src/components/dynamic-size-grid.d.ts +2 -0
  340. package/lib/components/virtual-list/src/components/fixed-size-grid.d.ts +2 -0
  341. package/lib/components/virtual-list/src/props.d.ts +1 -0
  342. package/lib/components/virtual-list/src/props.js +1 -0
  343. package/lib/components/virtual-list/src/props.js.map +1 -1
  344. package/lib/hooks/use-lockscreen/index.d.ts +5 -1
  345. package/lib/hooks/use-lockscreen/index.js +2 -2
  346. package/lib/hooks/use-lockscreen/index.js.map +1 -1
  347. package/lib/index.js +1 -1
  348. package/lib/version.d.ts +1 -1
  349. package/lib/version.js +1 -1
  350. package/lib/version.js.map +1 -1
  351. package/package.json +2 -2
  352. package/web-types.json +1 -1
@@ -3,7 +3,7 @@ import type { App, Ref } from 'vue';
3
3
  import type { ConfigProviderContext } from '../constants';
4
4
  export declare function useGlobalConfig<K extends keyof ConfigProviderContext, D extends ConfigProviderContext[K]>(key: K, defaultValue?: D): Ref<Exclude<ConfigProviderContext[K], undefined> | D>;
5
5
  export declare function useGlobalConfig(): Ref<ConfigProviderContext>;
6
- export declare function useGlobalComponentSettings(block: string): {
6
+ export declare function useGlobalComponentSettings(block: string, sizeFallback?: MaybeRef<ConfigProviderContext['size']>): {
7
7
  ns: {
8
8
  namespace: import("vue").ComputedRef<string>;
9
9
  b: (blockSuffix?: string) => string;
@@ -28,5 +28,6 @@ export declare function useGlobalComponentSettings(block: string): {
28
28
  currentZIndex: import("vue").ComputedRef<number>;
29
29
  nextZIndex: () => number;
30
30
  };
31
+ size: import("vue").ComputedRef<"" | "default" | "small" | "large">;
31
32
  };
32
33
  export declare const provideGlobalConfig: (config: MaybeRef<ConfigProviderContext>, app?: App<any> | undefined, global?: boolean) => import("vue").ComputedRef<Partial<import("../config-provider-props").ConfigProviderProps>> | undefined;
@@ -25,7 +25,7 @@ function useGlobalConfig(key, defaultValue = void 0) {
25
25
  return config;
26
26
  }
27
27
  }
28
- function useGlobalComponentSettings(block) {
28
+ function useGlobalComponentSettings(block, sizeFallback) {
29
29
  const config = useGlobalConfig();
30
30
  const ns = index.useNamespace(block, vue.computed(() => {
31
31
  var _a;
@@ -39,10 +39,16 @@ function useGlobalComponentSettings(block) {
39
39
  var _a;
40
40
  return ((_a = config.value) == null ? void 0 : _a.zIndex) || index$2.defaultInitialZIndex;
41
41
  }));
42
+ const size = vue.computed(() => {
43
+ var _a;
44
+ return vue.unref(sizeFallback) || ((_a = config.value) == null ? void 0 : _a.size) || "";
45
+ });
46
+ provideGlobalConfig(vue.computed(() => vue.unref(config) || {}));
42
47
  return {
43
48
  ns,
44
49
  locale,
45
- zIndex
50
+ zIndex,
51
+ size
46
52
  };
47
53
  }
48
54
  const provideGlobalConfig = (config, app, global = false) => {
@@ -1 +1 @@
1
- {"version":3,"file":"use-global-config.js","sources":["../../../../../../../packages/components/config-provider/src/hooks/use-global-config.ts"],"sourcesContent":["import { computed, getCurrentInstance, inject, provide, ref, unref } from 'vue'\nimport { debugWarn, keysOf } from '@element-plus/utils'\nimport {\n SIZE_INJECTION_KEY,\n defaultInitialZIndex,\n defaultNamespace,\n localeContextKey,\n namespaceContextKey,\n useLocale,\n useNamespace,\n useZIndex,\n zIndexContextKey,\n} from '@element-plus/hooks'\nimport { configProviderContextKey } from '../constants'\n\nimport type { MaybeRef } from '@vueuse/core'\nimport type { App, Ref } from 'vue'\nimport type { ConfigProviderContext } from '../constants'\n\n// this is meant to fix global methods like `ElMessage(opts)`, this way we can inject current locale\n// into the component as default injection value.\n// refer to: https://github.com/element-plus/element-plus/issues/2610#issuecomment-887965266\nconst globalConfig = ref<ConfigProviderContext>()\n\nexport function useGlobalConfig<\n K extends keyof ConfigProviderContext,\n D extends ConfigProviderContext[K]\n>(\n key: K,\n defaultValue?: D\n): Ref<Exclude<ConfigProviderContext[K], undefined> | D>\nexport function useGlobalConfig(): Ref<ConfigProviderContext>\nexport function useGlobalConfig(\n key?: keyof ConfigProviderContext,\n defaultValue = undefined\n) {\n const config = getCurrentInstance()\n ? inject(configProviderContextKey, globalConfig)\n : globalConfig\n if (key) {\n return computed(() => config.value?.[key] ?? defaultValue)\n } else {\n return config\n }\n}\n\n// for components like `ElMessage` `ElNotification` `ElMessageBox`.\nexport function useGlobalComponentSettings(block: string) {\n const config = useGlobalConfig()\n\n const ns = useNamespace(\n block,\n computed(() => config.value?.namespace || defaultNamespace)\n )\n\n const locale = useLocale(computed(() => config.value?.locale))\n const zIndex = useZIndex(\n computed(() => config.value?.zIndex || defaultInitialZIndex)\n )\n\n return {\n ns,\n locale,\n zIndex,\n }\n}\n\nexport const provideGlobalConfig = (\n config: MaybeRef<ConfigProviderContext>,\n app?: App,\n global = false\n) => {\n const inSetup = !!getCurrentInstance()\n const oldConfig = inSetup ? useGlobalConfig() : undefined\n\n const provideFn = app?.provide ?? (inSetup ? provide : undefined)\n if (!provideFn) {\n debugWarn(\n 'provideGlobalConfig',\n 'provideGlobalConfig() can only be used inside setup().'\n )\n return\n }\n\n const context = computed(() => {\n const cfg = unref(config)\n if (!oldConfig?.value) return cfg\n return mergeConfig(oldConfig.value, cfg)\n })\n provideFn(configProviderContextKey, context)\n provideFn(\n localeContextKey,\n computed(() => context.value.locale)\n )\n provideFn(\n namespaceContextKey,\n computed(() => context.value.namespace)\n )\n provideFn(\n zIndexContextKey,\n computed(() => context.value.zIndex)\n )\n\n provideFn(SIZE_INJECTION_KEY, {\n size: computed(() => context.value.size || ''),\n })\n\n if (global || !globalConfig.value) {\n globalConfig.value = context.value\n }\n return context\n}\n\nconst mergeConfig = (\n a: ConfigProviderContext,\n b: ConfigProviderContext\n): ConfigProviderContext => {\n const keys = [...new Set([...keysOf(a), ...keysOf(b)])]\n const obj: Record<string, any> = {}\n for (const key of keys) {\n obj[key] = b[key] ?? a[key]\n }\n return obj\n}\n"],"names":["ref","getCurrentInstance","inject","configProviderContextKey","computed","useNamespace","defaultNamespace","useLocale","useZIndex","defaultInitialZIndex","provide","debugWarn","unref","localeContextKey","namespaceContextKey","zIndexContextKey","SIZE_INJECTION_KEY","keysOf"],"mappings":"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"}
1
+ {"version":3,"file":"use-global-config.js","sources":["../../../../../../../packages/components/config-provider/src/hooks/use-global-config.ts"],"sourcesContent":["import { computed, getCurrentInstance, inject, provide, ref, unref } from 'vue'\nimport { debugWarn, keysOf } from '@element-plus/utils'\nimport {\n SIZE_INJECTION_KEY,\n defaultInitialZIndex,\n defaultNamespace,\n localeContextKey,\n namespaceContextKey,\n useLocale,\n useNamespace,\n useZIndex,\n zIndexContextKey,\n} from '@element-plus/hooks'\nimport { configProviderContextKey } from '../constants'\n\nimport type { MaybeRef } from '@vueuse/core'\nimport type { App, Ref } from 'vue'\nimport type { ConfigProviderContext } from '../constants'\n\n// this is meant to fix global methods like `ElMessage(opts)`, this way we can inject current locale\n// into the component as default injection value.\n// refer to: https://github.com/element-plus/element-plus/issues/2610#issuecomment-887965266\nconst globalConfig = ref<ConfigProviderContext>()\n\nexport function useGlobalConfig<\n K extends keyof ConfigProviderContext,\n D extends ConfigProviderContext[K]\n>(\n key: K,\n defaultValue?: D\n): Ref<Exclude<ConfigProviderContext[K], undefined> | D>\nexport function useGlobalConfig(): Ref<ConfigProviderContext>\nexport function useGlobalConfig(\n key?: keyof ConfigProviderContext,\n defaultValue = undefined\n) {\n const config = getCurrentInstance()\n ? inject(configProviderContextKey, globalConfig)\n : globalConfig\n if (key) {\n return computed(() => config.value?.[key] ?? defaultValue)\n } else {\n return config\n }\n}\n\n// for components like `ElMessage` `ElNotification` `ElMessageBox`.\nexport function useGlobalComponentSettings(\n block: string,\n sizeFallback?: MaybeRef<ConfigProviderContext['size']>\n) {\n const config = useGlobalConfig()\n\n const ns = useNamespace(\n block,\n computed(() => config.value?.namespace || defaultNamespace)\n )\n\n const locale = useLocale(computed(() => config.value?.locale))\n const zIndex = useZIndex(\n computed(() => config.value?.zIndex || defaultInitialZIndex)\n )\n const size = computed(() => unref(sizeFallback) || config.value?.size || '')\n provideGlobalConfig(computed(() => unref(config) || {}))\n\n return {\n ns,\n locale,\n zIndex,\n size,\n }\n}\n\nexport const provideGlobalConfig = (\n config: MaybeRef<ConfigProviderContext>,\n app?: App,\n global = false\n) => {\n const inSetup = !!getCurrentInstance()\n const oldConfig = inSetup ? useGlobalConfig() : undefined\n\n const provideFn = app?.provide ?? (inSetup ? provide : undefined)\n if (!provideFn) {\n debugWarn(\n 'provideGlobalConfig',\n 'provideGlobalConfig() can only be used inside setup().'\n )\n return\n }\n\n const context = computed(() => {\n const cfg = unref(config)\n if (!oldConfig?.value) return cfg\n return mergeConfig(oldConfig.value, cfg)\n })\n provideFn(configProviderContextKey, context)\n provideFn(\n localeContextKey,\n computed(() => context.value.locale)\n )\n provideFn(\n namespaceContextKey,\n computed(() => context.value.namespace)\n )\n provideFn(\n zIndexContextKey,\n computed(() => context.value.zIndex)\n )\n\n provideFn(SIZE_INJECTION_KEY, {\n size: computed(() => context.value.size || ''),\n })\n\n if (global || !globalConfig.value) {\n globalConfig.value = context.value\n }\n return context\n}\n\nconst mergeConfig = (\n a: ConfigProviderContext,\n b: ConfigProviderContext\n): ConfigProviderContext => {\n const keys = [...new Set([...keysOf(a), ...keysOf(b)])]\n const obj: Record<string, any> = {}\n for (const key of keys) {\n obj[key] = b[key] ?? a[key]\n }\n return obj\n}\n"],"names":["ref","getCurrentInstance","inject","configProviderContextKey","computed","useNamespace","defaultNamespace","useLocale","useZIndex","defaultInitialZIndex","unref","provide","debugWarn","localeContextKey","namespaceContextKey","zIndexContextKey","SIZE_INJECTION_KEY","keysOf"],"mappings":"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"}
@@ -102,7 +102,7 @@ var checkboxGroup = require('./checkbox/src/checkbox-group.js');
102
102
  var checkbox = require('./checkbox/src/checkbox.js');
103
103
  var constants$3 = require('./checkbox/src/constants.js');
104
104
  var col = require('./col/src/col.js');
105
- var collapse = require('./collapse/src/collapse.js');
105
+ var collapse = require('./collapse/src/collapse2.js');
106
106
  var collapseItem = require('./collapse/src/collapse-item.js');
107
107
  var constants$4 = require('./collapse/src/constants.js');
108
108
  var colorPicker = require('./color-picker/src/color-picker.js');
@@ -7,7 +7,6 @@ var index$1 = require('../../button/index.js');
7
7
  require('../../../directives/index.js');
8
8
  require('../../../hooks/index.js');
9
9
  var index$2 = require('../../input/index.js');
10
- require('../../form/index.js');
11
10
  var index$3 = require('../../overlay/index.js');
12
11
  require('../../../utils/index.js');
13
12
  var index$4 = require('../../icon/index.js');
@@ -20,7 +19,6 @@ var icon = require('../../../utils/vue/icon.js');
20
19
  var validator = require('../../../utils/vue/validator.js');
21
20
  var useGlobalConfig = require('../../config-provider/src/hooks/use-global-config.js');
22
21
  var index$5 = require('../../../hooks/use-id/index.js');
23
- var useFormCommonProps = require('../../form/src/hooks/use-form-common-props.js');
24
22
  var index$6 = require('../../../hooks/use-draggable/index.js');
25
23
  var index$7 = require('../../../hooks/use-same-target/index.js');
26
24
  var index$8 = require('../../../hooks/use-lockscreen/index.js');
@@ -86,7 +84,12 @@ const _sfc_main = vue.defineComponent({
86
84
  },
87
85
  emits: ["vanish", "action"],
88
86
  setup(props, { emit }) {
89
- const { locale, zIndex, ns } = useGlobalConfig.useGlobalComponentSettings("message-box");
87
+ const {
88
+ locale,
89
+ zIndex,
90
+ ns,
91
+ size: btnSize
92
+ } = useGlobalConfig.useGlobalComponentSettings("message-box", vue.computed(() => props.buttonSize));
90
93
  const { t } = locale;
91
94
  const { nextZIndex } = zIndex;
92
95
  const visible = vue.ref(false);
@@ -131,7 +134,6 @@ const _sfc_main = vue.defineComponent({
131
134
  });
132
135
  const contentId = index$5.useId();
133
136
  const inputId = index$5.useId();
134
- const btnSize = useFormCommonProps.useFormSize(vue.computed(() => props.buttonSize), { prop: true, form: true, formItem: true });
135
137
  const iconComponent = vue.computed(() => state.icon || icon.TypeComponentsMap[state.type] || "");
136
138
  const hasMessage = vue.computed(() => !!state.message);
137
139
  const rootRef = vue.ref();
@@ -262,7 +264,7 @@ const _sfc_main = vue.defineComponent({
262
264
  }
263
265
  };
264
266
  if (props.lockScroll) {
265
- index$8.useLockscreen(visible);
267
+ index$8.useLockscreen(visible, { ns });
266
268
  }
267
269
  index$9.useRestoreActive(visible);
268
270
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../packages/components/message-box/src/index.vue"],"sourcesContent":["<template>\n <transition name=\"fade-in-linear\" @after-leave=\"$emit('vanish')\">\n <el-overlay\n v-show=\"visible\"\n :z-index=\"zIndex\"\n :overlay-class=\"[ns.is('message-box'), modalClass]\"\n :mask=\"modal\"\n >\n <div\n role=\"dialog\"\n :aria-label=\"title\"\n aria-modal=\"true\"\n :aria-describedby=\"!showInput ? contentId : undefined\"\n :class=\"`${ns.namespace.value}-overlay-message-box`\"\n @click=\"overlayEvent.onClick\"\n @mousedown=\"overlayEvent.onMousedown\"\n @mouseup=\"overlayEvent.onMouseup\"\n >\n <el-focus-trap\n loop\n :trapped=\"visible\"\n :focus-trap-el=\"rootRef\"\n :focus-start-el=\"focusStartRef\"\n @release-requested=\"onCloseRequested\"\n >\n <div\n ref=\"rootRef\"\n :class=\"[\n ns.b(),\n customClass,\n ns.is('draggable', draggable),\n { [ns.m('center')]: center },\n ]\"\n :style=\"customStyle\"\n tabindex=\"-1\"\n @click.stop=\"\"\n >\n <div\n v-if=\"title !== null && title !== undefined\"\n ref=\"headerRef\"\n :class=\"ns.e('header')\"\n >\n <div :class=\"ns.e('title')\">\n <el-icon\n v-if=\"iconComponent && center\"\n :class=\"[ns.e('status'), typeClass]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <span>{{ title }}</span>\n </div>\n <button\n v-if=\"showClose\"\n type=\"button\"\n :class=\"ns.e('headerbtn')\"\n :aria-label=\"t('el.messagebox.close')\"\n @click=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n @keydown.prevent.enter=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n >\n <el-icon :class=\"ns.e('close')\">\n <close />\n </el-icon>\n </button>\n </div>\n <div :id=\"contentId\" :class=\"ns.e('content')\">\n <div :class=\"ns.e('container')\">\n <el-icon\n v-if=\"iconComponent && !center && hasMessage\"\n :class=\"[ns.e('status'), typeClass]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <div v-if=\"hasMessage\" :class=\"ns.e('message')\">\n <slot>\n <component\n :is=\"showInput ? 'label' : 'p'\"\n v-if=\"!dangerouslyUseHTMLString\"\n :for=\"showInput ? inputId : undefined\"\n >\n {{ !dangerouslyUseHTMLString ? message : '' }}\n </component>\n <component\n :is=\"showInput ? 'label' : 'p'\"\n v-else\n :for=\"showInput ? inputId : undefined\"\n v-html=\"message\"\n />\n </slot>\n </div>\n </div>\n <div v-show=\"showInput\" :class=\"ns.e('input')\">\n <el-input\n :id=\"inputId\"\n ref=\"inputRef\"\n v-model=\"inputValue\"\n :type=\"inputType\"\n :placeholder=\"inputPlaceholder\"\n :aria-invalid=\"validateError\"\n :class=\"{ invalid: validateError }\"\n @keydown.enter=\"handleInputEnter\"\n />\n <div\n :class=\"ns.e('errormsg')\"\n :style=\"{\n visibility: !!editorErrorMessage ? 'visible' : 'hidden',\n }\"\n >\n {{ editorErrorMessage }}\n </div>\n </div>\n </div>\n <div :class=\"ns.e('btns')\">\n <el-button\n v-if=\"showCancelButton\"\n :loading=\"cancelButtonLoading\"\n :class=\"[cancelButtonClass]\"\n :round=\"roundButton\"\n :size=\"btnSize\"\n @click=\"handleAction('cancel')\"\n @keydown.prevent.enter=\"handleAction('cancel')\"\n >\n {{ cancelButtonText || t('el.messagebox.cancel') }}\n </el-button>\n <el-button\n v-show=\"showConfirmButton\"\n ref=\"confirmRef\"\n type=\"primary\"\n :loading=\"confirmButtonLoading\"\n :class=\"[confirmButtonClasses]\"\n :round=\"roundButton\"\n :disabled=\"confirmButtonDisabled\"\n :size=\"btnSize\"\n @click=\"handleAction('confirm')\"\n @keydown.prevent.enter=\"handleAction('confirm')\"\n >\n {{ confirmButtonText || t('el.messagebox.confirm') }}\n </el-button>\n </div>\n </div>\n </el-focus-trap>\n </div>\n </el-overlay>\n </transition>\n</template>\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n nextTick,\n onBeforeUnmount,\n onMounted,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport { TrapFocus } from '@element-plus/directives'\nimport {\n useDraggable,\n useId,\n useLockscreen,\n useRestoreActive,\n useSameTarget,\n} from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { useFormSize } from '@element-plus/components/form'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport {\n TypeComponents,\n TypeComponentsMap,\n isValidComponentSize,\n} from '@element-plus/utils'\nimport { ElIcon } from '@element-plus/components/icon'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport { useGlobalComponentSettings } from '@element-plus/components/config-provider'\n\nimport type { ComponentPublicInstance, DefineComponent, PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type {\n Action,\n MessageBoxState,\n MessageBoxType,\n} from './message-box.type'\n\nexport default defineComponent({\n name: 'ElMessageBox',\n directives: {\n TrapFocus,\n },\n components: {\n ElButton,\n ElFocusTrap,\n ElInput,\n ElOverlay,\n ElIcon,\n ...TypeComponents,\n },\n inheritAttrs: false,\n props: {\n buttonSize: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n modal: {\n type: Boolean,\n default: true,\n },\n lockScroll: {\n type: Boolean,\n default: true,\n },\n showClose: {\n type: Boolean,\n default: true,\n },\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n closeOnHashChange: {\n type: Boolean,\n default: true,\n },\n center: Boolean,\n draggable: Boolean,\n roundButton: {\n default: false,\n type: Boolean,\n },\n container: {\n type: String, // default append to body\n default: 'body',\n },\n boxType: {\n type: String as PropType<MessageBoxType>,\n default: '',\n },\n },\n emits: ['vanish', 'action'],\n setup(props, { emit }) {\n // const popup = usePopup(props, doClose)\n const { locale, zIndex, ns } = useGlobalComponentSettings('message-box')\n\n const { t } = locale\n const { nextZIndex } = zIndex\n\n const visible = ref(false)\n // s represents state\n const state = reactive<MessageBoxState>({\n // autofocus element when open message-box\n autofocus: true,\n beforeClose: null,\n callback: null,\n cancelButtonText: '',\n cancelButtonClass: '',\n confirmButtonText: '',\n confirmButtonClass: '',\n customClass: '',\n customStyle: {},\n dangerouslyUseHTMLString: false,\n distinguishCancelAndClose: false,\n icon: '',\n inputPattern: null,\n inputPlaceholder: '',\n inputType: 'text',\n inputValue: null,\n inputValidator: null,\n inputErrorMessage: '',\n message: null,\n modalFade: true,\n modalClass: '',\n showCancelButton: false,\n showConfirmButton: true,\n type: '',\n title: undefined,\n showInput: false,\n action: '' as Action,\n confirmButtonLoading: false,\n cancelButtonLoading: false,\n confirmButtonDisabled: false,\n editorErrorMessage: '',\n // refer to: https://github.com/ElemeFE/element/commit/2999279ae34ef10c373ca795c87b020ed6753eed\n // seemed ok for now without this state.\n // isOnComposition: false, // temporary remove\n validateError: false,\n zIndex: nextZIndex(),\n })\n\n const typeClass = computed(() => {\n const type = state.type\n return { [ns.bm('icon', type)]: type && TypeComponentsMap[type] }\n })\n\n const contentId = useId()\n const inputId = useId()\n\n const btnSize = useFormSize(\n computed(() => props.buttonSize),\n { prop: true, form: true, formItem: true }\n )\n\n const iconComponent = computed(\n () => state.icon || TypeComponentsMap[state.type] || ''\n )\n const hasMessage = computed(() => !!state.message)\n const rootRef = ref<HTMLElement>()\n const headerRef = ref<HTMLElement>()\n const focusStartRef = ref<HTMLElement>()\n const inputRef = ref<ComponentPublicInstance>()\n const confirmRef = ref<ComponentPublicInstance>()\n\n const confirmButtonClasses = computed(() => state.confirmButtonClass)\n\n watch(\n () => state.inputValue,\n async (val) => {\n await nextTick()\n if (props.boxType === 'prompt' && val !== null) {\n validate()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => visible.value,\n (val) => {\n if (val) {\n if (props.boxType !== 'prompt') {\n if (state.autofocus) {\n focusStartRef.value = confirmRef.value?.$el ?? rootRef.value\n } else {\n focusStartRef.value = rootRef.value\n }\n }\n state.zIndex = nextZIndex()\n }\n if (props.boxType !== 'prompt') return\n if (val) {\n nextTick().then(() => {\n if (inputRef.value && inputRef.value.$el) {\n if (state.autofocus) {\n focusStartRef.value = getInputElement() ?? rootRef.value\n } else {\n focusStartRef.value = rootRef.value\n }\n }\n })\n } else {\n state.editorErrorMessage = ''\n state.validateError = false\n }\n }\n )\n\n const draggable = computed(() => props.draggable)\n useDraggable(rootRef, headerRef, draggable)\n\n onMounted(async () => {\n await nextTick()\n if (props.closeOnHashChange) {\n window.addEventListener('hashchange', doClose)\n }\n })\n\n onBeforeUnmount(() => {\n if (props.closeOnHashChange) {\n window.removeEventListener('hashchange', doClose)\n }\n })\n\n function doClose() {\n if (!visible.value) return\n visible.value = false\n nextTick(() => {\n if (state.action) emit('action', state.action)\n })\n }\n\n const handleWrapperClick = () => {\n if (props.closeOnClickModal) {\n handleAction(state.distinguishCancelAndClose ? 'close' : 'cancel')\n }\n }\n\n const overlayEvent = useSameTarget(handleWrapperClick)\n\n const handleInputEnter = (e: KeyboardEvent) => {\n if (state.inputType !== 'textarea') {\n e.preventDefault()\n return handleAction('confirm')\n }\n }\n\n const handleAction = (action: Action) => {\n if (props.boxType === 'prompt' && action === 'confirm' && !validate()) {\n return\n }\n\n state.action = action\n\n if (state.beforeClose) {\n state.beforeClose?.(action, state, doClose)\n } else {\n doClose()\n }\n }\n\n const validate = () => {\n if (props.boxType === 'prompt') {\n const inputPattern = state.inputPattern\n if (inputPattern && !inputPattern.test(state.inputValue || '')) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n const inputValidator = state.inputValidator\n if (typeof inputValidator === 'function') {\n const validateResult = inputValidator(state.inputValue)\n if (validateResult === false) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n if (typeof validateResult === 'string') {\n state.editorErrorMessage = validateResult\n state.validateError = true\n return false\n }\n }\n }\n state.editorErrorMessage = ''\n state.validateError = false\n return true\n }\n\n const getInputElement = () => {\n const inputRefs = inputRef.value.$refs\n return (inputRefs.input || inputRefs.textarea) as HTMLElement\n }\n\n const handleClose = () => {\n handleAction('close')\n }\n\n // when close on press escape is disabled, pressing esc should not callout\n // any other message box and close any other dialog-ish elements\n // e.g. Dialog has a close on press esc feature, and when it closes, it calls\n // props.beforeClose method to make a intermediate state by callout a message box\n // for some verification or alerting. then if we allow global event liek this\n // to dispatch, it could callout another message box.\n const onCloseRequested = () => {\n if (props.closeOnPressEscape) {\n handleClose()\n }\n }\n\n // locks the screen to prevent scroll\n if (props.lockScroll) {\n useLockscreen(visible)\n }\n\n // restore to prev active element.\n useRestoreActive(visible)\n\n return {\n ...toRefs(state),\n ns,\n overlayEvent,\n visible,\n hasMessage,\n typeClass,\n contentId,\n inputId,\n btnSize,\n iconComponent,\n confirmButtonClasses,\n rootRef,\n focusStartRef,\n headerRef,\n inputRef,\n confirmRef,\n doClose, // for outside usage\n handleClose, // for out side usage\n onCloseRequested,\n handleWrapperClick,\n handleInputEnter,\n handleAction,\n t,\n }\n },\n}) as DefineComponent\n</script>\n"],"names":["defineComponent","TrapFocus","ElButton","ElFocusTrap","ElInput","ElOverlay","ElIcon","TypeComponents","isValidComponentSize","useGlobalComponentSettings","ref","reactive","computed","TypeComponentsMap","useId","useFormSize","watch","nextTick","useDraggable","onMounted","onBeforeUnmount","useLockscreen","useRestoreActive","toRefs","_resolveComponent","_openBlock","_createBlock","_Transition","_withCtx","_withDirectives","_createVNode","_createElementVNode","_normalizeClass","_normalizeStyle","_withModifiers","_createElementBlock","_createCommentVNode","_toDisplayString","_withKeys","_renderSlot","_resolveDynamicComponent","_createTextVNode","_vShow"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../packages/components/message-box/src/index.vue"],"sourcesContent":["<template>\n <transition name=\"fade-in-linear\" @after-leave=\"$emit('vanish')\">\n <el-overlay\n v-show=\"visible\"\n :z-index=\"zIndex\"\n :overlay-class=\"[ns.is('message-box'), modalClass]\"\n :mask=\"modal\"\n >\n <div\n role=\"dialog\"\n :aria-label=\"title\"\n aria-modal=\"true\"\n :aria-describedby=\"!showInput ? contentId : undefined\"\n :class=\"`${ns.namespace.value}-overlay-message-box`\"\n @click=\"overlayEvent.onClick\"\n @mousedown=\"overlayEvent.onMousedown\"\n @mouseup=\"overlayEvent.onMouseup\"\n >\n <el-focus-trap\n loop\n :trapped=\"visible\"\n :focus-trap-el=\"rootRef\"\n :focus-start-el=\"focusStartRef\"\n @release-requested=\"onCloseRequested\"\n >\n <div\n ref=\"rootRef\"\n :class=\"[\n ns.b(),\n customClass,\n ns.is('draggable', draggable),\n { [ns.m('center')]: center },\n ]\"\n :style=\"customStyle\"\n tabindex=\"-1\"\n @click.stop=\"\"\n >\n <div\n v-if=\"title !== null && title !== undefined\"\n ref=\"headerRef\"\n :class=\"ns.e('header')\"\n >\n <div :class=\"ns.e('title')\">\n <el-icon\n v-if=\"iconComponent && center\"\n :class=\"[ns.e('status'), typeClass]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <span>{{ title }}</span>\n </div>\n <button\n v-if=\"showClose\"\n type=\"button\"\n :class=\"ns.e('headerbtn')\"\n :aria-label=\"t('el.messagebox.close')\"\n @click=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n @keydown.prevent.enter=\"\n handleAction(distinguishCancelAndClose ? 'close' : 'cancel')\n \"\n >\n <el-icon :class=\"ns.e('close')\">\n <close />\n </el-icon>\n </button>\n </div>\n <div :id=\"contentId\" :class=\"ns.e('content')\">\n <div :class=\"ns.e('container')\">\n <el-icon\n v-if=\"iconComponent && !center && hasMessage\"\n :class=\"[ns.e('status'), typeClass]\"\n >\n <component :is=\"iconComponent\" />\n </el-icon>\n <div v-if=\"hasMessage\" :class=\"ns.e('message')\">\n <slot>\n <component\n :is=\"showInput ? 'label' : 'p'\"\n v-if=\"!dangerouslyUseHTMLString\"\n :for=\"showInput ? inputId : undefined\"\n >\n {{ !dangerouslyUseHTMLString ? message : '' }}\n </component>\n <component\n :is=\"showInput ? 'label' : 'p'\"\n v-else\n :for=\"showInput ? inputId : undefined\"\n v-html=\"message\"\n />\n </slot>\n </div>\n </div>\n <div v-show=\"showInput\" :class=\"ns.e('input')\">\n <el-input\n :id=\"inputId\"\n ref=\"inputRef\"\n v-model=\"inputValue\"\n :type=\"inputType\"\n :placeholder=\"inputPlaceholder\"\n :aria-invalid=\"validateError\"\n :class=\"{ invalid: validateError }\"\n @keydown.enter=\"handleInputEnter\"\n />\n <div\n :class=\"ns.e('errormsg')\"\n :style=\"{\n visibility: !!editorErrorMessage ? 'visible' : 'hidden',\n }\"\n >\n {{ editorErrorMessage }}\n </div>\n </div>\n </div>\n <div :class=\"ns.e('btns')\">\n <el-button\n v-if=\"showCancelButton\"\n :loading=\"cancelButtonLoading\"\n :class=\"[cancelButtonClass]\"\n :round=\"roundButton\"\n :size=\"btnSize\"\n @click=\"handleAction('cancel')\"\n @keydown.prevent.enter=\"handleAction('cancel')\"\n >\n {{ cancelButtonText || t('el.messagebox.cancel') }}\n </el-button>\n <el-button\n v-show=\"showConfirmButton\"\n ref=\"confirmRef\"\n type=\"primary\"\n :loading=\"confirmButtonLoading\"\n :class=\"[confirmButtonClasses]\"\n :round=\"roundButton\"\n :disabled=\"confirmButtonDisabled\"\n :size=\"btnSize\"\n @click=\"handleAction('confirm')\"\n @keydown.prevent.enter=\"handleAction('confirm')\"\n >\n {{ confirmButtonText || t('el.messagebox.confirm') }}\n </el-button>\n </div>\n </div>\n </el-focus-trap>\n </div>\n </el-overlay>\n </transition>\n</template>\n<script lang=\"ts\">\n// @ts-nocheck\nimport {\n computed,\n defineComponent,\n nextTick,\n onBeforeUnmount,\n onMounted,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport ElButton from '@element-plus/components/button'\nimport { TrapFocus } from '@element-plus/directives'\nimport {\n useDraggable,\n useId,\n useLockscreen,\n useRestoreActive,\n useSameTarget,\n} from '@element-plus/hooks'\nimport ElInput from '@element-plus/components/input'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport {\n TypeComponents,\n TypeComponentsMap,\n isValidComponentSize,\n} from '@element-plus/utils'\nimport { ElIcon } from '@element-plus/components/icon'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport { useGlobalComponentSettings } from '@element-plus/components/config-provider'\n\nimport type { ComponentPublicInstance, DefineComponent, PropType } from 'vue'\nimport type { ComponentSize } from '@element-plus/constants'\nimport type {\n Action,\n MessageBoxState,\n MessageBoxType,\n} from './message-box.type'\n\nexport default defineComponent({\n name: 'ElMessageBox',\n directives: {\n TrapFocus,\n },\n components: {\n ElButton,\n ElFocusTrap,\n ElInput,\n ElOverlay,\n ElIcon,\n ...TypeComponents,\n },\n inheritAttrs: false,\n props: {\n buttonSize: {\n type: String as PropType<ComponentSize>,\n validator: isValidComponentSize,\n },\n modal: {\n type: Boolean,\n default: true,\n },\n lockScroll: {\n type: Boolean,\n default: true,\n },\n showClose: {\n type: Boolean,\n default: true,\n },\n closeOnClickModal: {\n type: Boolean,\n default: true,\n },\n closeOnPressEscape: {\n type: Boolean,\n default: true,\n },\n closeOnHashChange: {\n type: Boolean,\n default: true,\n },\n center: Boolean,\n draggable: Boolean,\n roundButton: {\n default: false,\n type: Boolean,\n },\n container: {\n type: String, // default append to body\n default: 'body',\n },\n boxType: {\n type: String as PropType<MessageBoxType>,\n default: '',\n },\n },\n emits: ['vanish', 'action'],\n setup(props, { emit }) {\n // const popup = usePopup(props, doClose)\n const {\n locale,\n zIndex,\n ns,\n size: btnSize,\n } = useGlobalComponentSettings(\n 'message-box',\n computed(() => props.buttonSize)\n )\n\n const { t } = locale\n const { nextZIndex } = zIndex\n\n const visible = ref(false)\n // s represents state\n const state = reactive<MessageBoxState>({\n // autofocus element when open message-box\n autofocus: true,\n beforeClose: null,\n callback: null,\n cancelButtonText: '',\n cancelButtonClass: '',\n confirmButtonText: '',\n confirmButtonClass: '',\n customClass: '',\n customStyle: {},\n dangerouslyUseHTMLString: false,\n distinguishCancelAndClose: false,\n icon: '',\n inputPattern: null,\n inputPlaceholder: '',\n inputType: 'text',\n inputValue: null,\n inputValidator: null,\n inputErrorMessage: '',\n message: null,\n modalFade: true,\n modalClass: '',\n showCancelButton: false,\n showConfirmButton: true,\n type: '',\n title: undefined,\n showInput: false,\n action: '' as Action,\n confirmButtonLoading: false,\n cancelButtonLoading: false,\n confirmButtonDisabled: false,\n editorErrorMessage: '',\n // refer to: https://github.com/ElemeFE/element/commit/2999279ae34ef10c373ca795c87b020ed6753eed\n // seemed ok for now without this state.\n // isOnComposition: false, // temporary remove\n validateError: false,\n zIndex: nextZIndex(),\n })\n\n const typeClass = computed(() => {\n const type = state.type\n return { [ns.bm('icon', type)]: type && TypeComponentsMap[type] }\n })\n\n const contentId = useId()\n const inputId = useId()\n\n const iconComponent = computed(\n () => state.icon || TypeComponentsMap[state.type] || ''\n )\n const hasMessage = computed(() => !!state.message)\n const rootRef = ref<HTMLElement>()\n const headerRef = ref<HTMLElement>()\n const focusStartRef = ref<HTMLElement>()\n const inputRef = ref<ComponentPublicInstance>()\n const confirmRef = ref<ComponentPublicInstance>()\n\n const confirmButtonClasses = computed(() => state.confirmButtonClass)\n\n watch(\n () => state.inputValue,\n async (val) => {\n await nextTick()\n if (props.boxType === 'prompt' && val !== null) {\n validate()\n }\n },\n { immediate: true }\n )\n\n watch(\n () => visible.value,\n (val) => {\n if (val) {\n if (props.boxType !== 'prompt') {\n if (state.autofocus) {\n focusStartRef.value = confirmRef.value?.$el ?? rootRef.value\n } else {\n focusStartRef.value = rootRef.value\n }\n }\n state.zIndex = nextZIndex()\n }\n if (props.boxType !== 'prompt') return\n if (val) {\n nextTick().then(() => {\n if (inputRef.value && inputRef.value.$el) {\n if (state.autofocus) {\n focusStartRef.value = getInputElement() ?? rootRef.value\n } else {\n focusStartRef.value = rootRef.value\n }\n }\n })\n } else {\n state.editorErrorMessage = ''\n state.validateError = false\n }\n }\n )\n\n const draggable = computed(() => props.draggable)\n useDraggable(rootRef, headerRef, draggable)\n\n onMounted(async () => {\n await nextTick()\n if (props.closeOnHashChange) {\n window.addEventListener('hashchange', doClose)\n }\n })\n\n onBeforeUnmount(() => {\n if (props.closeOnHashChange) {\n window.removeEventListener('hashchange', doClose)\n }\n })\n\n function doClose() {\n if (!visible.value) return\n visible.value = false\n nextTick(() => {\n if (state.action) emit('action', state.action)\n })\n }\n\n const handleWrapperClick = () => {\n if (props.closeOnClickModal) {\n handleAction(state.distinguishCancelAndClose ? 'close' : 'cancel')\n }\n }\n\n const overlayEvent = useSameTarget(handleWrapperClick)\n\n const handleInputEnter = (e: KeyboardEvent) => {\n if (state.inputType !== 'textarea') {\n e.preventDefault()\n return handleAction('confirm')\n }\n }\n\n const handleAction = (action: Action) => {\n if (props.boxType === 'prompt' && action === 'confirm' && !validate()) {\n return\n }\n\n state.action = action\n\n if (state.beforeClose) {\n state.beforeClose?.(action, state, doClose)\n } else {\n doClose()\n }\n }\n\n const validate = () => {\n if (props.boxType === 'prompt') {\n const inputPattern = state.inputPattern\n if (inputPattern && !inputPattern.test(state.inputValue || '')) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n const inputValidator = state.inputValidator\n if (typeof inputValidator === 'function') {\n const validateResult = inputValidator(state.inputValue)\n if (validateResult === false) {\n state.editorErrorMessage =\n state.inputErrorMessage || t('el.messagebox.error')\n state.validateError = true\n return false\n }\n if (typeof validateResult === 'string') {\n state.editorErrorMessage = validateResult\n state.validateError = true\n return false\n }\n }\n }\n state.editorErrorMessage = ''\n state.validateError = false\n return true\n }\n\n const getInputElement = () => {\n const inputRefs = inputRef.value.$refs\n return (inputRefs.input || inputRefs.textarea) as HTMLElement\n }\n\n const handleClose = () => {\n handleAction('close')\n }\n\n // when close on press escape is disabled, pressing esc should not callout\n // any other message box and close any other dialog-ish elements\n // e.g. Dialog has a close on press esc feature, and when it closes, it calls\n // props.beforeClose method to make a intermediate state by callout a message box\n // for some verification or alerting. then if we allow global event liek this\n // to dispatch, it could callout another message box.\n const onCloseRequested = () => {\n if (props.closeOnPressEscape) {\n handleClose()\n }\n }\n\n // locks the screen to prevent scroll\n if (props.lockScroll) {\n useLockscreen(visible, { ns })\n }\n\n // restore to prev active element.\n useRestoreActive(visible)\n\n return {\n ...toRefs(state),\n ns,\n overlayEvent,\n visible,\n hasMessage,\n typeClass,\n contentId,\n inputId,\n btnSize,\n iconComponent,\n confirmButtonClasses,\n rootRef,\n focusStartRef,\n headerRef,\n inputRef,\n confirmRef,\n doClose, // for outside usage\n handleClose, // for out side usage\n onCloseRequested,\n handleWrapperClick,\n handleInputEnter,\n handleAction,\n t,\n }\n },\n}) as DefineComponent\n</script>\n"],"names":["defineComponent","TrapFocus","ElButton","ElFocusTrap","ElInput","ElOverlay","ElIcon","TypeComponents","isValidComponentSize","useGlobalComponentSettings","computed","ref","reactive","TypeComponentsMap","useId","watch","nextTick","useDraggable","onMounted","onBeforeUnmount","useLockscreen","useRestoreActive","toRefs","_resolveComponent","_openBlock","_createBlock","_Transition","_withCtx","_withDirectives","_createVNode","_createElementVNode","_normalizeClass","_normalizeStyle","_withModifiers","_createElementBlock","_createCommentVNode","_toDisplayString","_withKeys","_renderSlot","_resolveDynamicComponent","_createTextVNode","_vShow"],"mappings":"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"}
@@ -33,12 +33,13 @@ const overlayProps = runtime.buildProps({
33
33
  const overlayEmits = {
34
34
  click: (evt) => evt instanceof MouseEvent
35
35
  };
36
+ const BLOCK = "overlay";
36
37
  var Overlay = vue.defineComponent({
37
38
  name: "ElOverlay",
38
39
  props: overlayProps,
39
40
  emits: overlayEmits,
40
41
  setup(props, { slots, emit }) {
41
- const ns = index.useNamespace("overlay");
42
+ const ns = index.useNamespace(BLOCK);
42
43
  const onMaskClick = (e) => {
43
44
  emit("click", e);
44
45
  };
@@ -1 +1 @@
1
- {"version":3,"file":"overlay.js","sources":["../../../../../../packages/components/overlay/src/overlay.ts"],"sourcesContent":["import { createVNode, defineComponent, h, renderSlot } from 'vue'\nimport { PatchFlags, buildProps, definePropType } from '@element-plus/utils'\nimport { useNamespace, useSameTarget } from '@element-plus/hooks'\n\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { ZIndexProperty } from 'csstype'\n\nexport const overlayProps = buildProps({\n mask: {\n type: Boolean,\n default: true,\n },\n customMaskEvent: {\n type: Boolean,\n default: false,\n },\n overlayClass: {\n type: definePropType<string | string[] | Record<string, boolean>>([\n String,\n Array,\n Object,\n ]),\n },\n zIndex: {\n type: definePropType<ZIndexProperty>([String, Number]),\n },\n} as const)\nexport type OverlayProps = ExtractPropTypes<typeof overlayProps>\n\nexport const overlayEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\nexport type OverlayEmits = typeof overlayEmits\n\nexport default defineComponent({\n name: 'ElOverlay',\n\n props: overlayProps,\n emits: overlayEmits,\n\n setup(props, { slots, emit }) {\n const ns = useNamespace('overlay')\n\n const onMaskClick = (e: MouseEvent) => {\n emit('click', e)\n }\n\n const { onClick, onMousedown, onMouseup } = useSameTarget(\n props.customMaskEvent ? undefined : onMaskClick\n )\n\n // init here\n return () => {\n // when the vnode meets the same structure but with different change trigger\n // it will not automatically update, thus we simply use h function to manage updating\n return props.mask\n ? createVNode(\n 'div',\n {\n class: [ns.b(), props.overlayClass],\n style: {\n zIndex: props.zIndex,\n },\n onClick,\n onMousedown,\n onMouseup,\n },\n [renderSlot(slots, 'default')],\n PatchFlags.STYLE | PatchFlags.CLASS | PatchFlags.PROPS,\n ['onClick', 'onMouseup', 'onMousedown']\n )\n : h(\n 'div',\n {\n class: props.overlayClass,\n style: {\n zIndex: props.zIndex,\n position: 'fixed',\n top: '0px',\n right: '0px',\n bottom: '0px',\n left: '0px',\n } as CSSProperties,\n },\n [renderSlot(slots, 'default')]\n )\n }\n },\n})\n"],"names":["buildProps","definePropType","defineComponent","useNamespace","useSameTarget","createVNode","renderSlot","PatchFlags","h"],"mappings":";;;;;;;;;;;;AAGY,MAAC,YAAY,GAAGA,kBAAU,CAAC;AACvC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEC,sBAAc,CAAC;AACzB,MAAM,MAAM;AACZ,MAAM,KAAK;AACX,MAAM,MAAM;AACZ,KAAK,CAAC;AACN,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAEA,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,CAAC,EAAE;AACS,MAAC,YAAY,GAAG;AAC5B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C,EAAE;AACF,cAAeC,mBAAe,CAAC;AAC/B,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,KAAK,EAAE,YAAY;AACrB,EAAE,KAAK,EAAE,YAAY;AACrB,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;AAChC,IAAI,MAAM,EAAE,GAAGC,kBAAY,CAAC,SAAS,CAAC,CAAC;AACvC,IAAI,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK;AAC/B,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACvB,KAAK,CAAC;AACN,IAAI,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,GAAGC,qBAAa,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,CAAC;AAC5G,IAAI,OAAO,MAAM;AACjB,MAAM,OAAO,KAAK,CAAC,IAAI,GAAGC,eAAW,CAAC,KAAK,EAAE;AAC7C,QAAQ,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC;AAC3C,QAAQ,KAAK,EAAE;AACf,UAAU,MAAM,EAAE,KAAK,CAAC,MAAM;AAC9B,SAAS;AACT,QAAQ,OAAO;AACf,QAAQ,WAAW;AACnB,QAAQ,SAAS;AACjB,OAAO,EAAE,CAACC,cAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAEC,gBAAU,CAAC,KAAK,GAAGA,gBAAU,CAAC,KAAK,GAAGA,gBAAU,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,GAAGC,KAAC,CAAC,KAAK,EAAE;AACrJ,QAAQ,KAAK,EAAE,KAAK,CAAC,YAAY;AACjC,QAAQ,KAAK,EAAE;AACf,UAAU,MAAM,EAAE,KAAK,CAAC,MAAM;AAC9B,UAAU,QAAQ,EAAE,OAAO;AAC3B,UAAU,GAAG,EAAE,KAAK;AACpB,UAAU,KAAK,EAAE,KAAK;AACtB,UAAU,MAAM,EAAE,KAAK;AACvB,UAAU,IAAI,EAAE,KAAK;AACrB,SAAS;AACT,OAAO,EAAE,CAACF,cAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AACzC,KAAK,CAAC;AACN,GAAG;AACH,CAAC,CAAC;;;;;;"}
1
+ {"version":3,"file":"overlay.js","sources":["../../../../../../packages/components/overlay/src/overlay.ts"],"sourcesContent":["import { createVNode, defineComponent, h, renderSlot } from 'vue'\nimport { PatchFlags, buildProps, definePropType } from '@element-plus/utils'\nimport { useNamespace, useSameTarget } from '@element-plus/hooks'\n\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { ZIndexProperty } from 'csstype'\n\nexport const overlayProps = buildProps({\n mask: {\n type: Boolean,\n default: true,\n },\n customMaskEvent: {\n type: Boolean,\n default: false,\n },\n overlayClass: {\n type: definePropType<string | string[] | Record<string, boolean>>([\n String,\n Array,\n Object,\n ]),\n },\n zIndex: {\n type: definePropType<ZIndexProperty>([String, Number]),\n },\n} as const)\nexport type OverlayProps = ExtractPropTypes<typeof overlayProps>\n\nexport const overlayEmits = {\n click: (evt: MouseEvent) => evt instanceof MouseEvent,\n}\nexport type OverlayEmits = typeof overlayEmits\n\nconst BLOCK = 'overlay'\n\nexport default defineComponent({\n name: 'ElOverlay',\n\n props: overlayProps,\n emits: overlayEmits,\n\n setup(props, { slots, emit }) {\n // No reactivity on this prop because when its rendering with a global\n // component, this will be a constant flag.\n const ns = useNamespace(BLOCK)\n\n const onMaskClick = (e: MouseEvent) => {\n emit('click', e)\n }\n\n const { onClick, onMousedown, onMouseup } = useSameTarget(\n props.customMaskEvent ? undefined : onMaskClick\n )\n\n // init here\n return () => {\n // when the vnode meets the same structure but with different change trigger\n // it will not automatically update, thus we simply use h function to manage updating\n return props.mask\n ? createVNode(\n 'div',\n {\n class: [ns.b(), props.overlayClass],\n style: {\n zIndex: props.zIndex,\n },\n onClick,\n onMousedown,\n onMouseup,\n },\n [renderSlot(slots, 'default')],\n PatchFlags.STYLE | PatchFlags.CLASS | PatchFlags.PROPS,\n ['onClick', 'onMouseup', 'onMousedown']\n )\n : h(\n 'div',\n {\n class: props.overlayClass,\n style: {\n zIndex: props.zIndex,\n position: 'fixed',\n top: '0px',\n right: '0px',\n bottom: '0px',\n left: '0px',\n } as CSSProperties,\n },\n [renderSlot(slots, 'default')]\n )\n }\n },\n})\n"],"names":["buildProps","definePropType","defineComponent","useNamespace","useSameTarget","createVNode","renderSlot","PatchFlags","h"],"mappings":";;;;;;;;;;;;AAGY,MAAC,YAAY,GAAGA,kBAAU,CAAC;AACvC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,KAAK;AAClB,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAEC,sBAAc,CAAC;AACzB,MAAM,MAAM;AACZ,MAAM,KAAK;AACX,MAAM,MAAM;AACZ,KAAK,CAAC;AACN,GAAG;AACH,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAEA,sBAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,CAAC,EAAE;AACS,MAAC,YAAY,GAAG;AAC5B,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,GAAG,YAAY,UAAU;AAC3C,EAAE;AACF,MAAM,KAAK,GAAG,SAAS,CAAC;AACxB,cAAeC,mBAAe,CAAC;AAC/B,EAAE,IAAI,EAAE,WAAW;AACnB,EAAE,KAAK,EAAE,YAAY;AACrB,EAAE,KAAK,EAAE,YAAY;AACrB,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;AAChC,IAAI,MAAM,EAAE,GAAGC,kBAAY,CAAC,KAAK,CAAC,CAAC;AACnC,IAAI,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK;AAC/B,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AACvB,KAAK,CAAC;AACN,IAAI,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,GAAGC,qBAAa,CAAC,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,GAAG,WAAW,CAAC,CAAC;AAC5G,IAAI,OAAO,MAAM;AACjB,MAAM,OAAO,KAAK,CAAC,IAAI,GAAGC,eAAW,CAAC,KAAK,EAAE;AAC7C,QAAQ,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC;AAC3C,QAAQ,KAAK,EAAE;AACf,UAAU,MAAM,EAAE,KAAK,CAAC,MAAM;AAC9B,SAAS;AACT,QAAQ,OAAO;AACf,QAAQ,WAAW;AACnB,QAAQ,SAAS;AACjB,OAAO,EAAE,CAACC,cAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAEC,gBAAU,CAAC,KAAK,GAAGA,gBAAU,CAAC,KAAK,GAAGA,gBAAU,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,GAAGC,KAAC,CAAC,KAAK,EAAE;AACrJ,QAAQ,KAAK,EAAE,KAAK,CAAC,YAAY;AACjC,QAAQ,KAAK,EAAE;AACf,UAAU,MAAM,EAAE,KAAK,CAAC,MAAM;AAC9B,UAAU,QAAQ,EAAE,OAAO;AAC3B,UAAU,GAAG,EAAE,KAAK;AACpB,UAAU,KAAK,EAAE,KAAK;AACtB,UAAU,MAAM,EAAE,KAAK;AACvB,UAAU,IAAI,EAAE,KAAK;AACrB,SAAS;AACT,OAAO,EAAE,CAACF,cAAU,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AACzC,KAAK,CAAC;AACN,GAAG;AACH,CAAC,CAAC;;;;;;"}
@@ -231,6 +231,7 @@ declare const _default: import("vue").DefineComponent<{
231
231
  default: string;
232
232
  };
233
233
  }, {
234
+ onOptionsRendered: (v: any) => void;
234
235
  tagInMultiLine: import("vue").Ref<boolean>;
235
236
  prefixWidth: import("vue").Ref<number>;
236
237
  selectSize: import("vue").ComputedRef<"" | "default" | "small" | "large">;
@@ -101,6 +101,7 @@ export declare const ElSelect: import("element-plus/es/utils").SFCWithInstall<im
101
101
  default: string;
102
102
  };
103
103
  }, {
104
+ onOptionsRendered: (v: any) => void;
104
105
  tagInMultiLine: import("vue").Ref<boolean>;
105
106
  prefixWidth: import("vue").Ref<number>;
106
107
  selectSize: import("vue").ComputedRef<"" | "default" | "small" | "large">;
@@ -0,0 +1,7 @@
1
+ import type { VNode } from 'vue';
2
+ declare const _default: import("vue").DefineComponent<{}, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
3
+ [key: string]: any;
4
+ }>[], {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "update-options"[], "update-options", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>> & {
5
+ "onUpdate-options"?: ((...args: any[]) => any) | undefined;
6
+ }, {}>;
7
+ export default _default;
@@ -0,0 +1,56 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var vue = require('vue');
6
+ require('../../../utils/index.js');
7
+ var shared = require('@vue/shared');
8
+
9
+ var ElOptions = vue.defineComponent({
10
+ name: "ElOptions",
11
+ emits: ["update-options"],
12
+ setup(_, { slots, emit }) {
13
+ let cachedOptions = [];
14
+ function isSameOptions(a, b) {
15
+ if (a.length !== b.length)
16
+ return false;
17
+ for (const [index] of a.entries()) {
18
+ if (a[index] != b[index]) {
19
+ return false;
20
+ }
21
+ }
22
+ return true;
23
+ }
24
+ return () => {
25
+ var _a, _b;
26
+ const children = (_a = slots.default) == null ? void 0 : _a.call(slots);
27
+ const filteredOptions = [];
28
+ function filterOptions(children2) {
29
+ if (!Array.isArray(children2))
30
+ return;
31
+ children2.forEach((item) => {
32
+ var _a2, _b2, _c, _d;
33
+ const name = (_a2 = (item == null ? void 0 : item.type) || {}) == null ? void 0 : _a2.name;
34
+ if (name === "ElOptionGroup") {
35
+ filterOptions(!shared.isString(item.children) && !Array.isArray(item.children) && shared.isFunction((_b2 = item.children) == null ? void 0 : _b2.default) ? (_c = item.children) == null ? void 0 : _c.default() : item.children);
36
+ } else if (name === "ElOption") {
37
+ filteredOptions.push((_d = item.props) == null ? void 0 : _d.label);
38
+ } else if (Array.isArray(item.children)) {
39
+ filterOptions(item.children);
40
+ }
41
+ });
42
+ }
43
+ if (children.length) {
44
+ filterOptions((_b = children[0]) == null ? void 0 : _b.children);
45
+ }
46
+ if (!isSameOptions(filteredOptions, cachedOptions)) {
47
+ cachedOptions = filteredOptions;
48
+ emit("update-options", filteredOptions);
49
+ }
50
+ return children;
51
+ };
52
+ }
53
+ });
54
+
55
+ exports["default"] = ElOptions;
56
+ //# sourceMappingURL=options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"options.js","sources":["../../../../../../packages/components/select/src/options.ts"],"sourcesContent":["import { defineComponent } from 'vue'\nimport { isFunction, isString } from '@element-plus/utils'\nimport type { Component, VNode, VNodeNormalizedChildren } from 'vue'\n\nexport default defineComponent({\n name: 'ElOptions',\n emits: ['update-options'],\n setup(_, { slots, emit }) {\n let cachedOptions: any[] = []\n\n function isSameOptions(a: any[], b: any[]) {\n if (a.length !== b.length) return false\n for (const [index] of a.entries()) {\n if (a[index] != b[index]) {\n return false\n }\n }\n return true\n }\n\n return () => {\n const children = slots.default?.()!\n const filteredOptions: any[] = []\n\n function filterOptions(children?: VNodeNormalizedChildren) {\n if (!Array.isArray(children)) return\n ;(children as VNode[]).forEach((item) => {\n const name = ((item?.type || {}) as Component)?.name\n\n if (name === 'ElOptionGroup') {\n filterOptions(\n !isString(item.children) &&\n !Array.isArray(item.children) &&\n isFunction(item.children?.default)\n ? item.children?.default()\n : item.children\n )\n } else if (name === 'ElOption') {\n filteredOptions.push(item.props?.label)\n } else if (Array.isArray(item.children)) {\n filterOptions(item.children)\n }\n })\n }\n\n if (children.length) {\n filterOptions(children![0]?.children)\n }\n\n if (!isSameOptions(filteredOptions, cachedOptions)) {\n cachedOptions = filteredOptions\n emit('update-options', filteredOptions)\n }\n\n return children\n }\n },\n})\n"],"names":["defineComponent","isString","isFunction"],"mappings":"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"}
@@ -19,6 +19,7 @@ var option = require('./option.js');
19
19
  var selectDropdown = require('./select-dropdown.js');
20
20
  var useSelect = require('./useSelect.js');
21
21
  var token = require('./token.js');
22
+ var options = require('./options.js');
22
23
  var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
23
24
  var index$5 = require('../../../directives/click-outside/index.js');
24
25
  var validator = require('../../../utils/vue/validator.js');
@@ -38,6 +39,7 @@ const _sfc_main = vue.defineComponent({
38
39
  ElInput: index.ElInput,
39
40
  ElSelectMenu: selectDropdown["default"],
40
41
  ElOption: option["default"],
42
+ ElOptions: options["default"],
41
43
  ElTag: index$1.ElTag,
42
44
  ElScrollbar: index$2.ElScrollbar,
43
45
  ElTooltip: index$3.ElTooltip,
@@ -156,6 +158,7 @@ const _sfc_main = vue.defineComponent({
156
158
  const { t } = index$7.useLocale();
157
159
  const states = useSelect.useSelectStates(props);
158
160
  const {
161
+ optionList,
159
162
  optionsArray,
160
163
  selectSize,
161
164
  readonly,
@@ -294,7 +297,11 @@ const _sfc_main = vue.defineComponent({
294
297
  var _a, _b;
295
298
  return (_b = (_a = tooltipRef.value) == null ? void 0 : _a.popperRef) == null ? void 0 : _b.contentRef;
296
299
  });
300
+ const onOptionsRendered = (v) => {
301
+ optionList.value = v;
302
+ };
297
303
  return {
304
+ onOptionsRendered,
298
305
  tagInMultiLine,
299
306
  prefixWidth,
300
307
  selectSize,
@@ -371,6 +378,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
371
378
  const _component_el_icon = vue.resolveComponent("el-icon");
372
379
  const _component_el_input = vue.resolveComponent("el-input");
373
380
  const _component_el_option = vue.resolveComponent("el-option");
381
+ const _component_el_options = vue.resolveComponent("el-options");
374
382
  const _component_el_scrollbar = vue.resolveComponent("el-scrollbar");
375
383
  const _component_el_select_menu = vue.resolveComponent("el-select-menu");
376
384
  const _directive_click_outside = vue.resolveDirective("click-outside");
@@ -649,7 +657,12 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
649
657
  value: _ctx.query,
650
658
  created: true
651
659
  }, null, 8, ["value"])) : vue.createCommentVNode("v-if", true),
652
- vue.renderSlot(_ctx.$slots, "default")
660
+ vue.createVNode(_component_el_options, { onUpdateOptions: _ctx.onOptionsRendered }, {
661
+ default: vue.withCtx(() => [
662
+ vue.renderSlot(_ctx.$slots, "default")
663
+ ]),
664
+ _: 3
665
+ }, 8, ["onUpdateOptions"])
653
666
  ]),
654
667
  _: 3
655
668
  }, 8, ["wrap-class", "view-class", "class"]), [