element-plus 2.2.33 → 2.2.34

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 (324) hide show
  1. package/dist/index.full.js +65 -29
  2. package/dist/index.full.min.js +19 -19
  3. package/dist/index.full.min.js.map +1 -1
  4. package/dist/index.full.min.mjs +19 -19
  5. package/dist/index.full.min.mjs.map +1 -1
  6. package/dist/index.full.mjs +64 -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/config-provider/index.mjs +1 -1
  236. package/es/components/config-provider/src/hooks/use-global-config.d.ts +26 -0
  237. package/es/components/config-provider/src/hooks/use-global-config.mjs +24 -4
  238. package/es/components/config-provider/src/hooks/use-global-config.mjs.map +1 -1
  239. package/es/components/index.mjs +1 -1
  240. package/es/components/loading/src/loading.mjs +13 -6
  241. package/es/components/loading/src/loading.mjs.map +1 -1
  242. package/es/components/loading/src/service.mjs +2 -5
  243. package/es/components/loading/src/service.mjs.map +1 -1
  244. package/es/components/message/src/message.vue.d.ts +5 -0
  245. package/es/components/message/src/message2.mjs +4 -5
  246. package/es/components/message/src/message2.mjs.map +1 -1
  247. package/es/components/message-box/src/index.mjs +5 -6
  248. package/es/components/message-box/src/index.mjs.map +1 -1
  249. package/es/components/message-box/src/index.vue.d.ts +2 -1852
  250. package/es/components/notification/src/notification.vue.d.ts +7 -0
  251. package/es/components/notification/src/notification2.mjs +6 -4
  252. package/es/components/notification/src/notification2.mjs.map +1 -1
  253. package/es/components/notification/src/notify.mjs +0 -4
  254. package/es/components/notification/src/notify.mjs.map +1 -1
  255. package/es/components/table-v2/src/renderers/cell.mjs +1 -1
  256. package/es/components/table-v2/src/renderers/cell.mjs.map +1 -1
  257. package/es/components/tooltip/src/tooltip.vue.d.ts +9 -12
  258. package/es/components/tree-select/src/cache-options.mjs +6 -2
  259. package/es/components/tree-select/src/cache-options.mjs.map +1 -1
  260. package/es/hooks/index.mjs +1 -1
  261. package/es/hooks/use-locale/index.d.ts +1 -1
  262. package/es/hooks/use-locale/index.mjs +2 -2
  263. package/es/hooks/use-locale/index.mjs.map +1 -1
  264. package/es/hooks/use-namespace/index.d.ts +2 -2
  265. package/es/hooks/use-namespace/index.mjs +4 -4
  266. package/es/hooks/use-namespace/index.mjs.map +1 -1
  267. package/es/hooks/use-popper-container/index.d.ts +4 -1
  268. package/es/hooks/use-popper-container/index.mjs +5 -1
  269. package/es/hooks/use-popper-container/index.mjs.map +1 -1
  270. package/es/hooks/use-z-index/index.d.ts +3 -1
  271. package/es/hooks/use-z-index/index.mjs +3 -3
  272. package/es/hooks/use-z-index/index.mjs.map +1 -1
  273. package/es/index.mjs +2 -2
  274. package/es/version.d.ts +1 -1
  275. package/es/version.mjs +1 -1
  276. package/es/version.mjs.map +1 -1
  277. package/lib/components/config-provider/index.js +1 -0
  278. package/lib/components/config-provider/index.js.map +1 -1
  279. package/lib/components/config-provider/src/hooks/use-global-config.d.ts +26 -0
  280. package/lib/components/config-provider/src/hooks/use-global-config.js +26 -5
  281. package/lib/components/config-provider/src/hooks/use-global-config.js.map +1 -1
  282. package/lib/components/index.js +1 -0
  283. package/lib/components/index.js.map +1 -1
  284. package/lib/components/loading/src/loading.js +12 -5
  285. package/lib/components/loading/src/loading.js.map +1 -1
  286. package/lib/components/loading/src/service.js +2 -5
  287. package/lib/components/loading/src/service.js.map +1 -1
  288. package/lib/components/message/src/message.vue.d.ts +5 -0
  289. package/lib/components/message/src/message2.js +9 -10
  290. package/lib/components/message/src/message2.js.map +1 -1
  291. package/lib/components/message-box/src/index.js +16 -17
  292. package/lib/components/message-box/src/index.js.map +1 -1
  293. package/lib/components/message-box/src/index.vue.d.ts +2 -1852
  294. package/lib/components/notification/src/notification.vue.d.ts +7 -0
  295. package/lib/components/notification/src/notification2.js +9 -7
  296. package/lib/components/notification/src/notification2.js.map +1 -1
  297. package/lib/components/notification/src/notify.js +0 -4
  298. package/lib/components/notification/src/notify.js.map +1 -1
  299. package/lib/components/table-v2/src/renderers/cell.js +1 -1
  300. package/lib/components/table-v2/src/renderers/cell.js.map +1 -1
  301. package/lib/components/tooltip/src/tooltip.vue.d.ts +9 -12
  302. package/lib/components/tree-select/src/cache-options.js +6 -2
  303. package/lib/components/tree-select/src/cache-options.js.map +1 -1
  304. package/lib/hooks/index.js +1 -0
  305. package/lib/hooks/index.js.map +1 -1
  306. package/lib/hooks/use-locale/index.d.ts +1 -1
  307. package/lib/hooks/use-locale/index.js +2 -2
  308. package/lib/hooks/use-locale/index.js.map +1 -1
  309. package/lib/hooks/use-namespace/index.d.ts +2 -2
  310. package/lib/hooks/use-namespace/index.js +4 -4
  311. package/lib/hooks/use-namespace/index.js.map +1 -1
  312. package/lib/hooks/use-popper-container/index.d.ts +4 -1
  313. package/lib/hooks/use-popper-container/index.js +5 -1
  314. package/lib/hooks/use-popper-container/index.js.map +1 -1
  315. package/lib/hooks/use-z-index/index.d.ts +3 -1
  316. package/lib/hooks/use-z-index/index.js +3 -2
  317. package/lib/hooks/use-z-index/index.js.map +1 -1
  318. package/lib/index.js +2 -0
  319. package/lib/index.js.map +1 -1
  320. package/lib/version.d.ts +1 -1
  321. package/lib/version.js +1 -1
  322. package/lib/version.js.map +1 -1
  323. package/package.json +2 -2
  324. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"loading.mjs","sources":["../../../../../../packages/components/loading/src/loading.ts"],"sourcesContent":["import {\n Transition,\n createApp,\n createVNode,\n h,\n reactive,\n ref,\n toRefs,\n vShow,\n withCtx,\n withDirectives,\n} from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { removeClass } from '@element-plus/utils'\n\nimport type { LoadingOptionsResolved } from './types'\n\nexport function createLoadingComponent(options: LoadingOptionsResolved) {\n let afterLeaveTimer: number\n\n const ns = useNamespace('loading')\n const afterLeaveFlag = ref(false)\n const data = reactive({\n ...options,\n originalPosition: '',\n originalOverflow: '',\n visible: false,\n })\n\n function setText(text: string) {\n data.text = text\n }\n\n function destroySelf() {\n const target = data.parent\n if (!target.vLoadingAddClassList) {\n let loadingNumber: number | string | null =\n target.getAttribute('loading-number')\n loadingNumber = Number.parseInt(loadingNumber as any) - 1\n if (!loadingNumber) {\n removeClass(target, ns.bm('parent', 'relative'))\n target.removeAttribute('loading-number')\n } else {\n target.setAttribute('loading-number', loadingNumber.toString())\n }\n removeClass(target, ns.bm('parent', 'hidden'))\n }\n removeElLoadingChild()\n loadingInstance.unmount()\n }\n function removeElLoadingChild(): void {\n vm.$el?.parentNode?.removeChild(vm.$el)\n }\n function close() {\n if (options.beforeClose && !options.beforeClose()) return\n\n afterLeaveFlag.value = true\n clearTimeout(afterLeaveTimer)\n\n afterLeaveTimer = window.setTimeout(handleAfterLeave, 400)\n data.visible = false\n\n options.closed?.()\n }\n\n function handleAfterLeave() {\n if (!afterLeaveFlag.value) return\n const target = data.parent\n afterLeaveFlag.value = false\n target.vLoadingAddClassList = undefined\n destroySelf()\n }\n\n const elLoadingComponent = {\n name: 'ElLoading',\n setup() {\n return () => {\n const svg = data.spinner || data.svg\n const spinner = h(\n 'svg',\n {\n class: 'circular',\n viewBox: data.svgViewBox ? data.svgViewBox : '0 0 50 50',\n ...(svg ? { innerHTML: svg } : {}),\n },\n [\n h('circle', {\n class: 'path',\n cx: '25',\n cy: '25',\n r: '20',\n fill: 'none',\n }),\n ]\n )\n\n const spinnerText = data.text\n ? h('p', { class: ns.b('text') }, [data.text])\n : undefined\n\n return h(\n Transition,\n {\n name: ns.b('fade'),\n onAfterLeave: handleAfterLeave,\n },\n {\n default: withCtx(() => [\n withDirectives(\n createVNode(\n 'div',\n {\n style: {\n backgroundColor: data.background || '',\n },\n class: [\n ns.b('mask'),\n data.customClass,\n data.fullscreen ? 'is-fullscreen' : '',\n ],\n },\n [\n h(\n 'div',\n {\n class: ns.b('spinner'),\n },\n [spinner, spinnerText]\n ),\n ]\n ),\n [[vShow, data.visible]]\n ),\n ]),\n }\n )\n }\n },\n }\n\n const loadingInstance = createApp(elLoadingComponent)\n const vm = loadingInstance.mount(document.createElement('div'))\n\n return {\n ...toRefs(data),\n setText,\n removeElLoadingChild,\n close,\n handleAfterLeave,\n vm,\n get $el(): HTMLElement {\n return vm.$el\n },\n }\n}\n\nexport type LoadingInstance = ReturnType<typeof createLoadingComponent>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loading.mjs","sources":["../../../../../../packages/components/loading/src/loading.ts"],"sourcesContent":["import {\n Transition,\n createApp,\n createVNode,\n defineComponent,\n h,\n reactive,\n ref,\n toRefs,\n vShow,\n withCtx,\n withDirectives,\n} from 'vue'\nimport { useNamespace, useZIndex } from '@element-plus/hooks'\nimport { removeClass } from '@element-plus/utils'\n\nimport type { UseNamespaceReturn } from '@element-plus/hooks'\nimport type { LoadingOptionsResolved } from './types'\n\nexport function createLoadingComponent(options: LoadingOptionsResolved) {\n let afterLeaveTimer: number\n // IMPORTANT NOTE: this is only a hacking way to expose the injections on an\n // instance, DO NOT FOLLOW this pattern in your own code.\n const afterLeaveFlag = ref(false)\n const data = reactive({\n ...options,\n originalPosition: '',\n originalOverflow: '',\n visible: false,\n })\n\n function setText(text: string) {\n data.text = text\n }\n\n function destroySelf() {\n const target = data.parent\n const ns = (vm as any).ns as UseNamespaceReturn\n if (!target.vLoadingAddClassList) {\n let loadingNumber: number | string | null =\n target.getAttribute('loading-number')\n loadingNumber = Number.parseInt(loadingNumber as any) - 1\n if (!loadingNumber) {\n removeClass(target, ns.bm('parent', 'relative'))\n target.removeAttribute('loading-number')\n } else {\n target.setAttribute('loading-number', loadingNumber.toString())\n }\n removeClass(target, ns.bm('parent', 'hidden'))\n }\n removeElLoadingChild()\n loadingInstance.unmount()\n }\n function removeElLoadingChild(): void {\n vm.$el?.parentNode?.removeChild(vm.$el)\n }\n function close() {\n if (options.beforeClose && !options.beforeClose()) return\n\n afterLeaveFlag.value = true\n clearTimeout(afterLeaveTimer)\n\n afterLeaveTimer = window.setTimeout(handleAfterLeave, 400)\n data.visible = false\n\n options.closed?.()\n }\n\n function handleAfterLeave() {\n if (!afterLeaveFlag.value) return\n const target = data.parent\n afterLeaveFlag.value = false\n target.vLoadingAddClassList = undefined\n destroySelf()\n }\n\n const elLoadingComponent = defineComponent({\n name: 'ElLoading',\n setup(_, { expose }) {\n const ns = useNamespace('loading')\n const zIndex = useZIndex()\n\n expose({\n ns,\n zIndex,\n })\n\n return () => {\n const svg = data.spinner || data.svg\n const spinner = h(\n 'svg',\n {\n class: 'circular',\n viewBox: data.svgViewBox ? data.svgViewBox : '0 0 50 50',\n ...(svg ? { innerHTML: svg } : {}),\n },\n [\n h('circle', {\n class: 'path',\n cx: '25',\n cy: '25',\n r: '20',\n fill: 'none',\n }),\n ]\n )\n\n const spinnerText = data.text\n ? h('p', { class: ns.b('text') }, [data.text])\n : undefined\n\n return h(\n Transition,\n {\n name: ns.b('fade'),\n onAfterLeave: handleAfterLeave,\n },\n {\n default: withCtx(() => [\n withDirectives(\n createVNode(\n 'div',\n {\n style: {\n backgroundColor: data.background || '',\n },\n class: [\n ns.b('mask'),\n data.customClass,\n data.fullscreen ? 'is-fullscreen' : '',\n ],\n },\n [\n h(\n 'div',\n {\n class: ns.b('spinner'),\n },\n [spinner, spinnerText]\n ),\n ]\n ),\n [[vShow, data.visible]]\n ),\n ]),\n }\n )\n }\n },\n })\n\n const loadingInstance = createApp(elLoadingComponent)\n const vm = loadingInstance.mount(document.createElement('div'))\n\n return {\n ...toRefs(data),\n setText,\n removeElLoadingChild,\n close,\n handleAfterLeave,\n vm,\n get $el(): HTMLElement {\n return vm.$el\n },\n }\n}\n\nexport type LoadingInstance = ReturnType<typeof createLoadingComponent>\n"],"names":[],"mappings":"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"}
@@ -2,11 +2,8 @@ import { nextTick } from 'vue';
2
2
  import { isString } from '@vue/shared';
3
3
  import { isClient } from '@vueuse/core';
4
4
  import '../../../utils/index.mjs';
5
- import '../../../hooks/index.mjs';
6
5
  import { createLoadingComponent } from './loading.mjs';
7
- import { useZIndex } from '../../../hooks/use-z-index/index.mjs';
8
6
  import { getStyle, addClass, removeClass } from '../../../utils/dom/style.mjs';
9
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
10
7
 
11
8
  let fullscreenInstance = void 0;
12
9
  const Loading = function(options = {}) {
@@ -65,7 +62,7 @@ const resolveOptions = (options) => {
65
62
  };
66
63
  };
67
64
  const addStyle = async (options, parent, instance) => {
68
- const { nextZIndex } = useZIndex();
65
+ const { nextZIndex } = instance.vm.zIndex;
69
66
  const maskStyle = {};
70
67
  if (options.fullscreen) {
71
68
  instance.originalPosition.value = getStyle(document.body, "position");
@@ -89,7 +86,7 @@ const addStyle = async (options, parent, instance) => {
89
86
  }
90
87
  };
91
88
  const addClassList = (options, parent, instance) => {
92
- const ns = useNamespace("loading");
89
+ const ns = instance.vm.ns;
93
90
  if (!["absolute", "fixed", "sticky"].includes(instance.originalPosition.value)) {
94
91
  addClass(parent, ns.bm("parent", "relative"));
95
92
  } else {
@@ -1 +1 @@
1
- {"version":3,"file":"service.mjs","sources":["../../../../../../packages/components/loading/src/service.ts"],"sourcesContent":["// @ts-nocheck\nimport { nextTick } from 'vue'\nimport { isString } from '@vue/shared'\nimport { isClient } from '@vueuse/core'\nimport { addClass, getStyle, removeClass } from '@element-plus/utils'\nimport { useNamespace, useZIndex } from '@element-plus/hooks'\nimport { createLoadingComponent } from './loading'\nimport type { LoadingInstance } from './loading'\nimport type { LoadingOptionsResolved } from '..'\nimport type { LoadingOptions } from './types'\nimport type { CSSProperties } from 'vue'\n\nlet fullscreenInstance: LoadingInstance | undefined = undefined\n\nexport const Loading = function (\n options: LoadingOptions = {}\n): LoadingInstance {\n if (!isClient) return undefined as any\n\n const resolved = resolveOptions(options)\n\n if (resolved.fullscreen && fullscreenInstance) {\n return fullscreenInstance\n }\n\n const instance = createLoadingComponent({\n ...resolved,\n closed: () => {\n resolved.closed?.()\n if (resolved.fullscreen) fullscreenInstance = undefined\n },\n })\n\n addStyle(resolved, resolved.parent, instance)\n addClassList(resolved, resolved.parent, instance)\n\n resolved.parent.vLoadingAddClassList = () =>\n addClassList(resolved, resolved.parent, instance)\n\n /**\n * add loading-number to parent.\n * because if a fullscreen loading is triggered when somewhere\n * a v-loading.body was triggered before and it's parent is\n * document.body which with a margin , the fullscreen loading's\n * destroySelf function will remove 'el-loading-parent--relative',\n * and then the position of v-loading.body will be error.\n */\n let loadingNumber: string | null =\n resolved.parent.getAttribute('loading-number')\n if (!loadingNumber) {\n loadingNumber = '1'\n } else {\n loadingNumber = `${Number.parseInt(loadingNumber) + 1}`\n }\n resolved.parent.setAttribute('loading-number', loadingNumber)\n\n resolved.parent.appendChild(instance.$el)\n\n // after instance render, then modify visible to trigger transition\n nextTick(() => (instance.visible.value = resolved.visible))\n\n if (resolved.fullscreen) {\n fullscreenInstance = instance\n }\n return instance\n}\n\nconst resolveOptions = (options: LoadingOptions): LoadingOptionsResolved => {\n let target: HTMLElement\n if (isString(options.target)) {\n target =\n document.querySelector<HTMLElement>(options.target) ?? document.body\n } else {\n target = options.target || document.body\n }\n return {\n parent: target === document.body || options.body ? document.body : target,\n background: options.background || '',\n svg: options.svg || '',\n svgViewBox: options.svgViewBox || '',\n spinner: options.spinner || false,\n text: options.text || '',\n fullscreen: target === document.body && (options.fullscreen ?? true),\n lock: options.lock ?? false,\n customClass: options.customClass || '',\n visible: options.visible ?? true,\n target,\n }\n}\n\nconst addStyle = async (\n options: LoadingOptionsResolved,\n parent: HTMLElement,\n instance: LoadingInstance\n) => {\n const { nextZIndex } = useZIndex()\n\n const maskStyle: CSSProperties = {}\n if (options.fullscreen) {\n instance.originalPosition.value = getStyle(document.body, 'position')\n instance.originalOverflow.value = getStyle(document.body, 'overflow')\n maskStyle.zIndex = nextZIndex()\n } else if (options.parent === document.body) {\n instance.originalPosition.value = getStyle(document.body, 'position')\n /**\n * await dom render when visible is true in init,\n * because some component's height maybe 0.\n * e.g. el-table.\n */\n await nextTick()\n for (const property of ['top', 'left']) {\n const scroll = property === 'top' ? 'scrollTop' : 'scrollLeft'\n maskStyle[property] = `${\n (options.target as HTMLElement).getBoundingClientRect()[property] +\n document.body[scroll] +\n document.documentElement[scroll] -\n Number.parseInt(getStyle(document.body, `margin-${property}`), 10)\n }px`\n }\n for (const property of ['height', 'width']) {\n maskStyle[property] = `${\n (options.target as HTMLElement).getBoundingClientRect()[property]\n }px`\n }\n } else {\n instance.originalPosition.value = getStyle(parent, 'position')\n }\n for (const [key, value] of Object.entries(maskStyle)) {\n instance.$el.style[key] = value\n }\n}\n\nconst addClassList = (\n options: LoadingOptions,\n parent: HTMLElement,\n instance: LoadingInstance\n) => {\n const ns = useNamespace('loading')\n\n if (\n !['absolute', 'fixed', 'sticky'].includes(instance.originalPosition.value)\n ) {\n addClass(parent, ns.bm('parent', 'relative'))\n } else {\n removeClass(parent, ns.bm('parent', 'relative'))\n }\n if (options.fullscreen && options.lock) {\n addClass(parent, ns.bm('parent', 'hidden'))\n } else {\n removeClass(parent, ns.bm('parent', 'hidden'))\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.mjs","sources":["../../../../../../packages/components/loading/src/service.ts"],"sourcesContent":["// @ts-nocheck\nimport { nextTick } from 'vue'\nimport { isString } from '@vue/shared'\nimport { isClient } from '@vueuse/core'\nimport { addClass, getStyle, removeClass } from '@element-plus/utils'\nimport { createLoadingComponent } from './loading'\n\nimport type { UseNamespaceReturn, UseZIndexReturn } from '@element-plus/hooks'\nimport type { LoadingInstance } from './loading'\nimport type { LoadingOptionsResolved } from '..'\nimport type { LoadingOptions } from './types'\nimport type { CSSProperties } from 'vue'\n\nlet fullscreenInstance: LoadingInstance | undefined = undefined\n\nexport const Loading = function (\n options: LoadingOptions = {}\n): LoadingInstance {\n if (!isClient) return undefined as any\n\n const resolved = resolveOptions(options)\n\n if (resolved.fullscreen && fullscreenInstance) {\n return fullscreenInstance\n }\n\n const instance = createLoadingComponent({\n ...resolved,\n closed: () => {\n resolved.closed?.()\n if (resolved.fullscreen) fullscreenInstance = undefined\n },\n })\n\n addStyle(resolved, resolved.parent, instance)\n addClassList(resolved, resolved.parent, instance)\n\n resolved.parent.vLoadingAddClassList = () =>\n addClassList(resolved, resolved.parent, instance)\n\n /**\n * add loading-number to parent.\n * because if a fullscreen loading is triggered when somewhere\n * a v-loading.body was triggered before and it's parent is\n * document.body which with a margin , the fullscreen loading's\n * destroySelf function will remove 'el-loading-parent--relative',\n * and then the position of v-loading.body will be error.\n */\n let loadingNumber: string | null =\n resolved.parent.getAttribute('loading-number')\n if (!loadingNumber) {\n loadingNumber = '1'\n } else {\n loadingNumber = `${Number.parseInt(loadingNumber) + 1}`\n }\n resolved.parent.setAttribute('loading-number', loadingNumber)\n\n resolved.parent.appendChild(instance.$el)\n\n // after instance render, then modify visible to trigger transition\n nextTick(() => (instance.visible.value = resolved.visible))\n\n if (resolved.fullscreen) {\n fullscreenInstance = instance\n }\n return instance\n}\n\nconst resolveOptions = (options: LoadingOptions): LoadingOptionsResolved => {\n let target: HTMLElement\n if (isString(options.target)) {\n target =\n document.querySelector<HTMLElement>(options.target) ?? document.body\n } else {\n target = options.target || document.body\n }\n return {\n parent: target === document.body || options.body ? document.body : target,\n background: options.background || '',\n svg: options.svg || '',\n svgViewBox: options.svgViewBox || '',\n spinner: options.spinner || false,\n text: options.text || '',\n fullscreen: target === document.body && (options.fullscreen ?? true),\n lock: options.lock ?? false,\n customClass: options.customClass || '',\n visible: options.visible ?? true,\n target,\n }\n}\n\nconst addStyle = async (\n options: LoadingOptionsResolved,\n parent: HTMLElement,\n instance: LoadingInstance\n) => {\n const { nextZIndex } = (instance.vm as any).zIndex as UseZIndexReturn\n\n const maskStyle: CSSProperties = {}\n if (options.fullscreen) {\n instance.originalPosition.value = getStyle(document.body, 'position')\n instance.originalOverflow.value = getStyle(document.body, 'overflow')\n maskStyle.zIndex = nextZIndex()\n } else if (options.parent === document.body) {\n instance.originalPosition.value = getStyle(document.body, 'position')\n /**\n * await dom render when visible is true in init,\n * because some component's height maybe 0.\n * e.g. el-table.\n */\n await nextTick()\n for (const property of ['top', 'left']) {\n const scroll = property === 'top' ? 'scrollTop' : 'scrollLeft'\n maskStyle[property] = `${\n (options.target as HTMLElement).getBoundingClientRect()[property] +\n document.body[scroll] +\n document.documentElement[scroll] -\n Number.parseInt(getStyle(document.body, `margin-${property}`), 10)\n }px`\n }\n for (const property of ['height', 'width']) {\n maskStyle[property] = `${\n (options.target as HTMLElement).getBoundingClientRect()[property]\n }px`\n }\n } else {\n instance.originalPosition.value = getStyle(parent, 'position')\n }\n for (const [key, value] of Object.entries(maskStyle)) {\n instance.$el.style[key] = value\n }\n}\n\nconst addClassList = (\n options: LoadingOptions,\n parent: HTMLElement,\n instance: LoadingInstance\n) => {\n const ns = (instance.vm as any).ns as UseNamespaceReturn\n\n if (\n !['absolute', 'fixed', 'sticky'].includes(instance.originalPosition.value)\n ) {\n addClass(parent, ns.bm('parent', 'relative'))\n } else {\n removeClass(parent, ns.bm('parent', 'relative'))\n }\n if (options.fullscreen && options.lock) {\n addClass(parent, ns.bm('parent', 'hidden'))\n } else {\n removeClass(parent, ns.bm('parent', 'hidden'))\n }\n}\n"],"names":[],"mappings":"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"}
@@ -94,6 +94,11 @@ declare const _default: import("vue").DefineComponent<{
94
94
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
95
95
  cssVarBlockName: (name: string) => string;
96
96
  };
97
+ zIndex: {
98
+ initialZIndex: import("vue").ComputedRef<number>;
99
+ currentZIndex: import("vue").ComputedRef<number>;
100
+ nextZIndex: () => number;
101
+ };
97
102
  currentZIndex: import("vue").ComputedRef<number>;
98
103
  nextZIndex: () => number;
99
104
  messageRef: import("vue").Ref<HTMLDivElement | undefined>;
@@ -3,14 +3,13 @@ import { useTimeoutFn, useEventListener, useResizeObserver } from '@vueuse/core'
3
3
  import '../../../utils/index.mjs';
4
4
  import '../../../constants/index.mjs';
5
5
  import { ElBadge } from '../../badge/index.mjs';
6
+ import '../../config-provider/index.mjs';
6
7
  import { ElIcon } from '../../icon/index.mjs';
7
- import '../../../hooks/index.mjs';
8
8
  import { messageProps, messageEmits } from './message.mjs';
9
9
  import { getLastOffset, getOffsetOrSpace } from './instance.mjs';
10
10
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
11
11
  import { TypeComponents, TypeComponentsMap } from '../../../utils/vue/icon.mjs';
12
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
13
- import { useZIndex } from '../../../hooks/use-z-index/index.mjs';
12
+ import { useGlobalComponentSettings } from '../../config-provider/src/hooks/use-global-config.mjs';
14
13
  import { EVENT_CODE } from '../../../constants/aria.mjs';
15
14
 
16
15
  const _hoisted_1 = ["id"];
@@ -25,8 +24,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
25
24
  setup(__props, { expose }) {
26
25
  const props = __props;
27
26
  const { Close } = TypeComponents;
28
- const ns = useNamespace("message");
29
- const { currentZIndex, nextZIndex } = useZIndex();
27
+ const { ns, zIndex } = useGlobalComponentSettings("message");
28
+ const { currentZIndex, nextZIndex } = zIndex;
30
29
  const messageRef = ref();
31
30
  const visible = ref(false);
32
31
  const height = ref(0);
@@ -1 +1 @@
1
- {"version":3,"file":"message2.mjs","sources":["../../../../../../packages/components/message/src/message.vue"],"sourcesContent":["<template>\n <transition\n :name=\"ns.b('fade')\"\n @before-leave=\"onClose\"\n @after-leave=\"$emit('destroy')\"\n >\n <div\n v-show=\"visible\"\n :id=\"id\"\n ref=\"messageRef\"\n :class=\"[\n ns.b(),\n { [ns.m(type)]: type && !icon },\n ns.is('center', center),\n ns.is('closable', showClose),\n customClass,\n ]\"\n :style=\"customStyle\"\n role=\"alert\"\n @mouseenter=\"clearTimer\"\n @mouseleave=\"startTimer\"\n >\n <el-badge\n v-if=\"repeatNum > 1\"\n :value=\"repeatNum\"\n :type=\"badgeType\"\n :class=\"ns.e('badge')\"\n />\n <el-icon v-if=\"iconComponent\" :class=\"[ns.e('icon'), typeClass]\">\n <component :is=\"iconComponent\" />\n </el-icon>\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\" :class=\"ns.e('content')\">\n {{ message }}\n </p>\n <!-- Caution here, message could've been compromised, never use user's input as message -->\n <p v-else :class=\"ns.e('content')\" v-html=\"message\" />\n </slot>\n <el-icon v-if=\"showClose\" :class=\"ns.e('closeBtn')\" @click.stop=\"close\">\n <Close />\n </el-icon>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { useEventListener, useResizeObserver, useTimeoutFn } from '@vueuse/core'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport ElBadge from '@element-plus/components/badge'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { useNamespace, useZIndex } from '@element-plus/hooks'\nimport { messageEmits, messageProps } from './message'\nimport { getLastOffset, getOffsetOrSpace } from './instance'\nimport type { BadgeProps } from '@element-plus/components/badge'\nimport type { CSSProperties } from 'vue'\n\nconst { Close } = TypeComponents\n\ndefineOptions({\n name: 'ElMessage',\n})\n\nconst props = defineProps(messageProps)\ndefineEmits(messageEmits)\n\nconst ns = useNamespace('message')\nconst { currentZIndex, nextZIndex } = useZIndex()\n\nconst messageRef = ref<HTMLDivElement>()\nconst visible = ref(false)\nconst height = ref(0)\n\nlet stopTimer: (() => void) | undefined = undefined\n\nconst badgeType = computed<BadgeProps['type']>(() =>\n props.type ? (props.type === 'error' ? 'danger' : props.type) : 'info'\n)\nconst typeClass = computed(() => {\n const type = props.type\n return { [ns.bm('icon', type)]: type && TypeComponentsMap[type] }\n})\nconst iconComponent = computed(\n () => props.icon || TypeComponentsMap[props.type] || ''\n)\n\nconst lastOffset = computed(() => getLastOffset(props.id))\nconst offset = computed(\n () => getOffsetOrSpace(props.id, props.offset) + lastOffset.value\n)\nconst bottom = computed((): number => height.value + offset.value)\nconst customStyle = computed<CSSProperties>(() => ({\n top: `${offset.value}px`,\n zIndex: currentZIndex.value,\n}))\n\nfunction startTimer() {\n if (props.duration === 0) return\n ;({ stop: stopTimer } = useTimeoutFn(() => {\n close()\n }, props.duration))\n}\n\nfunction clearTimer() {\n stopTimer?.()\n}\n\nfunction close() {\n visible.value = false\n}\n\nfunction keydown({ code }: KeyboardEvent) {\n if (code === EVENT_CODE.esc) {\n // press esc to close the message\n close()\n }\n}\n\nonMounted(() => {\n startTimer()\n nextZIndex()\n visible.value = true\n})\n\nwatch(\n () => props.repeatNum,\n () => {\n clearTimer()\n startTimer()\n }\n)\n\nuseEventListener(document, 'keydown', keydown)\n\nuseResizeObserver(messageRef, () => {\n height.value = messageRef.value!.getBoundingClientRect().height\n})\n\ndefineExpose({\n visible,\n bottom,\n close,\n})\n</script>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message2.mjs","sources":["../../../../../../packages/components/message/src/message.vue"],"sourcesContent":["<template>\n <transition\n :name=\"ns.b('fade')\"\n @before-leave=\"onClose\"\n @after-leave=\"$emit('destroy')\"\n >\n <div\n v-show=\"visible\"\n :id=\"id\"\n ref=\"messageRef\"\n :class=\"[\n ns.b(),\n { [ns.m(type)]: type && !icon },\n ns.is('center', center),\n ns.is('closable', showClose),\n customClass,\n ]\"\n :style=\"customStyle\"\n role=\"alert\"\n @mouseenter=\"clearTimer\"\n @mouseleave=\"startTimer\"\n >\n <el-badge\n v-if=\"repeatNum > 1\"\n :value=\"repeatNum\"\n :type=\"badgeType\"\n :class=\"ns.e('badge')\"\n />\n <el-icon v-if=\"iconComponent\" :class=\"[ns.e('icon'), typeClass]\">\n <component :is=\"iconComponent\" />\n </el-icon>\n <slot>\n <p v-if=\"!dangerouslyUseHTMLString\" :class=\"ns.e('content')\">\n {{ message }}\n </p>\n <!-- Caution here, message could've been compromised, never use user's input as message -->\n <p v-else :class=\"ns.e('content')\" v-html=\"message\" />\n </slot>\n <el-icon v-if=\"showClose\" :class=\"ns.e('closeBtn')\" @click.stop=\"close\">\n <Close />\n </el-icon>\n </div>\n </transition>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, onMounted, ref, watch } from 'vue'\nimport { useEventListener, useResizeObserver, useTimeoutFn } from '@vueuse/core'\nimport { TypeComponents, TypeComponentsMap } from '@element-plus/utils'\nimport { EVENT_CODE } from '@element-plus/constants'\nimport ElBadge from '@element-plus/components/badge'\nimport { useGlobalComponentSettings } from '@element-plus/components/config-provider'\nimport { ElIcon } from '@element-plus/components/icon'\nimport { messageEmits, messageProps } from './message'\nimport { getLastOffset, getOffsetOrSpace } from './instance'\nimport type { BadgeProps } from '@element-plus/components/badge'\nimport type { CSSProperties } from 'vue'\n\nconst { Close } = TypeComponents\n\ndefineOptions({\n name: 'ElMessage',\n})\n\nconst props = defineProps(messageProps)\ndefineEmits(messageEmits)\n\nconst { ns, zIndex } = useGlobalComponentSettings('message')\nconst { currentZIndex, nextZIndex } = zIndex\n\nconst messageRef = ref<HTMLDivElement>()\nconst visible = ref(false)\nconst height = ref(0)\n\nlet stopTimer: (() => void) | undefined = undefined\n\nconst badgeType = computed<BadgeProps['type']>(() =>\n props.type ? (props.type === 'error' ? 'danger' : props.type) : 'info'\n)\nconst typeClass = computed(() => {\n const type = props.type\n return { [ns.bm('icon', type)]: type && TypeComponentsMap[type] }\n})\nconst iconComponent = computed(\n () => props.icon || TypeComponentsMap[props.type] || ''\n)\n\nconst lastOffset = computed(() => getLastOffset(props.id))\nconst offset = computed(\n () => getOffsetOrSpace(props.id, props.offset) + lastOffset.value\n)\nconst bottom = computed((): number => height.value + offset.value)\nconst customStyle = computed<CSSProperties>(() => ({\n top: `${offset.value}px`,\n zIndex: currentZIndex.value,\n}))\n\nfunction startTimer() {\n if (props.duration === 0) return\n ;({ stop: stopTimer } = useTimeoutFn(() => {\n close()\n }, props.duration))\n}\n\nfunction clearTimer() {\n stopTimer?.()\n}\n\nfunction close() {\n visible.value = false\n}\n\nfunction keydown({ code }: KeyboardEvent) {\n if (code === EVENT_CODE.esc) {\n // press esc to close the message\n close()\n }\n}\n\nonMounted(() => {\n startTimer()\n nextZIndex()\n visible.value = true\n})\n\nwatch(\n () => props.repeatNum,\n () => {\n clearTimer()\n startTimer()\n }\n)\n\nuseEventListener(document, 'keydown', keydown)\n\nuseResizeObserver(messageRef, () => {\n height.value = messageRef.value!.getBoundingClientRect().height\n})\n\ndefineExpose({\n visible,\n bottom,\n close,\n})\n</script>\n"],"names":[],"mappings":"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"}
@@ -8,14 +8,13 @@ import { ElOverlay } from '../../overlay/index.mjs';
8
8
  import '../../../utils/index.mjs';
9
9
  import { ElIcon } from '../../icon/index.mjs';
10
10
  import '../../focus-trap/index.mjs';
11
+ import '../../config-provider/index.mjs';
11
12
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
12
13
  import TrapFocus from '../../../directives/trap-focus/index.mjs';
13
14
  import ElFocusTrap from '../../focus-trap/src/focus-trap.mjs';
14
15
  import { TypeComponents, TypeComponentsMap } from '../../../utils/vue/icon.mjs';
15
16
  import { isValidComponentSize } from '../../../utils/vue/validator.mjs';
16
- import { useLocale } from '../../../hooks/use-locale/index.mjs';
17
- import { useNamespace } from '../../../hooks/use-namespace/index.mjs';
18
- import { useZIndex } from '../../../hooks/use-z-index/index.mjs';
17
+ import { useGlobalComponentSettings } from '../../config-provider/src/hooks/use-global-config.mjs';
19
18
  import { useId } from '../../../hooks/use-id/index.mjs';
20
19
  import { useFormSize } from '../../form/src/hooks/use-form-common-props.mjs';
21
20
  import { useDraggable } from '../../../hooks/use-draggable/index.mjs';
@@ -83,10 +82,10 @@ const _sfc_main = defineComponent({
83
82
  },
84
83
  emits: ["vanish", "action"],
85
84
  setup(props, { emit }) {
86
- const { t } = useLocale();
87
- const ns = useNamespace("message-box");
85
+ const { locale, zIndex, ns } = useGlobalComponentSettings("message-box");
86
+ const { t } = locale;
87
+ const { nextZIndex } = zIndex;
88
88
  const visible = ref(false);
89
- const { nextZIndex } = useZIndex();
90
89
  const state = reactive({
91
90
  autofocus: true,
92
91
  beforeClose: null,
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","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 useLocale,\n useLockscreen,\n useNamespace,\n useRestoreActive,\n useSameTarget,\n useZIndex,\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'\n\nimport type { ComponentPublicInstance, 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 { t } = useLocale()\n const ns = useNamespace('message-box')\n const visible = ref(false)\n const { nextZIndex } = useZIndex()\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})\n</script>\n"],"names":["_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.mjs","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":["_resolveComponent","_openBlock","_createBlock","_Transition","_withCtx","_withDirectives","_createVNode","_createElementVNode","_normalizeClass","_normalizeStyle","_withModifiers","_createElementBlock","_createCommentVNode","_toDisplayString","_withKeys","_renderSlot","_resolveDynamicComponent","_createTextVNode","_vShow"],"mappings":"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"}