element-plus 2.2.1 → 2.2.2

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 (288) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +11 -8
  3. package/dist/index.full.min.js +16 -16
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +16 -16
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +11 -8
  8. package/dist/locale/af.js +1 -1
  9. package/dist/locale/af.min.js +1 -1
  10. package/dist/locale/af.min.mjs +1 -1
  11. package/dist/locale/af.mjs +1 -1
  12. package/dist/locale/ar.js +1 -1
  13. package/dist/locale/ar.min.js +1 -1
  14. package/dist/locale/ar.min.mjs +1 -1
  15. package/dist/locale/ar.mjs +1 -1
  16. package/dist/locale/az.js +1 -1
  17. package/dist/locale/az.min.js +1 -1
  18. package/dist/locale/az.min.mjs +1 -1
  19. package/dist/locale/az.mjs +1 -1
  20. package/dist/locale/bg.js +1 -1
  21. package/dist/locale/bg.min.js +1 -1
  22. package/dist/locale/bg.min.mjs +1 -1
  23. package/dist/locale/bg.mjs +1 -1
  24. package/dist/locale/bn.js +1 -1
  25. package/dist/locale/bn.min.js +1 -1
  26. package/dist/locale/bn.min.mjs +1 -1
  27. package/dist/locale/bn.mjs +1 -1
  28. package/dist/locale/ca.js +1 -1
  29. package/dist/locale/ca.min.js +1 -1
  30. package/dist/locale/ca.min.mjs +1 -1
  31. package/dist/locale/ca.mjs +1 -1
  32. package/dist/locale/cs.js +1 -1
  33. package/dist/locale/cs.min.js +1 -1
  34. package/dist/locale/cs.min.mjs +1 -1
  35. package/dist/locale/cs.mjs +1 -1
  36. package/dist/locale/da.js +1 -1
  37. package/dist/locale/da.min.js +1 -1
  38. package/dist/locale/da.min.mjs +1 -1
  39. package/dist/locale/da.mjs +1 -1
  40. package/dist/locale/de.js +1 -1
  41. package/dist/locale/de.min.js +1 -1
  42. package/dist/locale/de.min.mjs +1 -1
  43. package/dist/locale/de.mjs +1 -1
  44. package/dist/locale/el.js +1 -1
  45. package/dist/locale/el.min.js +1 -1
  46. package/dist/locale/el.min.mjs +1 -1
  47. package/dist/locale/el.mjs +1 -1
  48. package/dist/locale/en.js +1 -1
  49. package/dist/locale/en.min.js +1 -1
  50. package/dist/locale/en.min.mjs +1 -1
  51. package/dist/locale/en.mjs +1 -1
  52. package/dist/locale/eo.js +1 -1
  53. package/dist/locale/eo.min.js +1 -1
  54. package/dist/locale/eo.min.mjs +1 -1
  55. package/dist/locale/eo.mjs +1 -1
  56. package/dist/locale/es.js +1 -1
  57. package/dist/locale/es.min.js +1 -1
  58. package/dist/locale/es.min.mjs +1 -1
  59. package/dist/locale/es.mjs +1 -1
  60. package/dist/locale/et.js +1 -1
  61. package/dist/locale/et.min.js +1 -1
  62. package/dist/locale/et.min.mjs +1 -1
  63. package/dist/locale/et.mjs +1 -1
  64. package/dist/locale/eu.js +1 -1
  65. package/dist/locale/eu.min.js +1 -1
  66. package/dist/locale/eu.min.mjs +1 -1
  67. package/dist/locale/eu.mjs +1 -1
  68. package/dist/locale/fa.js +1 -1
  69. package/dist/locale/fa.min.js +1 -1
  70. package/dist/locale/fa.min.mjs +1 -1
  71. package/dist/locale/fa.mjs +1 -1
  72. package/dist/locale/fi.js +1 -1
  73. package/dist/locale/fi.min.js +1 -1
  74. package/dist/locale/fi.min.mjs +1 -1
  75. package/dist/locale/fi.mjs +1 -1
  76. package/dist/locale/fr.js +1 -1
  77. package/dist/locale/fr.min.js +1 -1
  78. package/dist/locale/fr.min.mjs +1 -1
  79. package/dist/locale/fr.mjs +1 -1
  80. package/dist/locale/he.js +1 -1
  81. package/dist/locale/he.min.js +1 -1
  82. package/dist/locale/he.min.mjs +1 -1
  83. package/dist/locale/he.mjs +1 -1
  84. package/dist/locale/hr.js +1 -1
  85. package/dist/locale/hr.min.js +1 -1
  86. package/dist/locale/hr.min.mjs +1 -1
  87. package/dist/locale/hr.mjs +1 -1
  88. package/dist/locale/hu.js +1 -1
  89. package/dist/locale/hu.min.js +1 -1
  90. package/dist/locale/hu.min.mjs +1 -1
  91. package/dist/locale/hu.mjs +1 -1
  92. package/dist/locale/hy-am.js +1 -1
  93. package/dist/locale/hy-am.min.js +1 -1
  94. package/dist/locale/hy-am.min.mjs +1 -1
  95. package/dist/locale/hy-am.mjs +1 -1
  96. package/dist/locale/id.js +1 -1
  97. package/dist/locale/id.min.js +1 -1
  98. package/dist/locale/id.min.mjs +1 -1
  99. package/dist/locale/id.mjs +1 -1
  100. package/dist/locale/it.js +1 -1
  101. package/dist/locale/it.min.js +1 -1
  102. package/dist/locale/it.min.mjs +1 -1
  103. package/dist/locale/it.mjs +1 -1
  104. package/dist/locale/ja.js +1 -1
  105. package/dist/locale/ja.min.js +1 -1
  106. package/dist/locale/ja.min.mjs +1 -1
  107. package/dist/locale/ja.mjs +1 -1
  108. package/dist/locale/kk.js +1 -1
  109. package/dist/locale/kk.min.js +1 -1
  110. package/dist/locale/kk.min.mjs +1 -1
  111. package/dist/locale/kk.mjs +1 -1
  112. package/dist/locale/km.js +1 -1
  113. package/dist/locale/km.min.js +1 -1
  114. package/dist/locale/km.min.mjs +1 -1
  115. package/dist/locale/km.mjs +1 -1
  116. package/dist/locale/ko.js +1 -1
  117. package/dist/locale/ko.min.js +1 -1
  118. package/dist/locale/ko.min.mjs +1 -1
  119. package/dist/locale/ko.mjs +1 -1
  120. package/dist/locale/ku.js +1 -1
  121. package/dist/locale/ku.min.js +1 -1
  122. package/dist/locale/ku.min.mjs +1 -1
  123. package/dist/locale/ku.mjs +1 -1
  124. package/dist/locale/ky.js +1 -1
  125. package/dist/locale/ky.min.js +1 -1
  126. package/dist/locale/ky.min.mjs +1 -1
  127. package/dist/locale/ky.mjs +1 -1
  128. package/dist/locale/lt.js +1 -1
  129. package/dist/locale/lt.min.js +1 -1
  130. package/dist/locale/lt.min.mjs +1 -1
  131. package/dist/locale/lt.mjs +1 -1
  132. package/dist/locale/lv.js +1 -1
  133. package/dist/locale/lv.min.js +1 -1
  134. package/dist/locale/lv.min.mjs +1 -1
  135. package/dist/locale/lv.mjs +1 -1
  136. package/dist/locale/mg.js +1 -1
  137. package/dist/locale/mg.min.js +1 -1
  138. package/dist/locale/mg.min.mjs +1 -1
  139. package/dist/locale/mg.mjs +1 -1
  140. package/dist/locale/mn.js +1 -1
  141. package/dist/locale/mn.min.js +1 -1
  142. package/dist/locale/mn.min.mjs +1 -1
  143. package/dist/locale/mn.mjs +1 -1
  144. package/dist/locale/nb-no.js +1 -1
  145. package/dist/locale/nb-no.min.js +1 -1
  146. package/dist/locale/nb-no.min.mjs +1 -1
  147. package/dist/locale/nb-no.mjs +1 -1
  148. package/dist/locale/nl.js +1 -1
  149. package/dist/locale/nl.min.js +1 -1
  150. package/dist/locale/nl.min.mjs +1 -1
  151. package/dist/locale/nl.mjs +1 -1
  152. package/dist/locale/pa.js +1 -1
  153. package/dist/locale/pa.min.js +1 -1
  154. package/dist/locale/pa.min.mjs +1 -1
  155. package/dist/locale/pa.mjs +1 -1
  156. package/dist/locale/pl.js +1 -1
  157. package/dist/locale/pl.min.js +1 -1
  158. package/dist/locale/pl.min.mjs +1 -1
  159. package/dist/locale/pl.mjs +1 -1
  160. package/dist/locale/pt-br.js +1 -1
  161. package/dist/locale/pt-br.min.js +1 -1
  162. package/dist/locale/pt-br.min.mjs +1 -1
  163. package/dist/locale/pt-br.mjs +1 -1
  164. package/dist/locale/pt.js +1 -1
  165. package/dist/locale/pt.min.js +1 -1
  166. package/dist/locale/pt.min.mjs +1 -1
  167. package/dist/locale/pt.mjs +1 -1
  168. package/dist/locale/ro.js +1 -1
  169. package/dist/locale/ro.min.js +1 -1
  170. package/dist/locale/ro.min.mjs +1 -1
  171. package/dist/locale/ro.mjs +1 -1
  172. package/dist/locale/ru.js +1 -1
  173. package/dist/locale/ru.min.js +1 -1
  174. package/dist/locale/ru.min.mjs +1 -1
  175. package/dist/locale/ru.mjs +1 -1
  176. package/dist/locale/sk.js +1 -1
  177. package/dist/locale/sk.min.js +1 -1
  178. package/dist/locale/sk.min.mjs +1 -1
  179. package/dist/locale/sk.mjs +1 -1
  180. package/dist/locale/sl.js +1 -1
  181. package/dist/locale/sl.min.js +1 -1
  182. package/dist/locale/sl.min.mjs +1 -1
  183. package/dist/locale/sl.mjs +1 -1
  184. package/dist/locale/sr.js +1 -1
  185. package/dist/locale/sr.min.js +1 -1
  186. package/dist/locale/sr.min.mjs +1 -1
  187. package/dist/locale/sr.mjs +1 -1
  188. package/dist/locale/sv.js +1 -1
  189. package/dist/locale/sv.min.js +1 -1
  190. package/dist/locale/sv.min.mjs +1 -1
  191. package/dist/locale/sv.mjs +1 -1
  192. package/dist/locale/ta.js +1 -1
  193. package/dist/locale/ta.min.js +1 -1
  194. package/dist/locale/ta.min.mjs +1 -1
  195. package/dist/locale/ta.mjs +1 -1
  196. package/dist/locale/th.js +1 -1
  197. package/dist/locale/th.min.js +1 -1
  198. package/dist/locale/th.min.mjs +1 -1
  199. package/dist/locale/th.mjs +1 -1
  200. package/dist/locale/tk.js +1 -1
  201. package/dist/locale/tk.min.js +1 -1
  202. package/dist/locale/tk.min.mjs +1 -1
  203. package/dist/locale/tk.mjs +1 -1
  204. package/dist/locale/tr.js +1 -1
  205. package/dist/locale/tr.min.js +1 -1
  206. package/dist/locale/tr.min.mjs +1 -1
  207. package/dist/locale/tr.mjs +1 -1
  208. package/dist/locale/ug-cn.js +1 -1
  209. package/dist/locale/ug-cn.min.js +1 -1
  210. package/dist/locale/ug-cn.min.mjs +1 -1
  211. package/dist/locale/ug-cn.mjs +1 -1
  212. package/dist/locale/uk.js +1 -1
  213. package/dist/locale/uk.min.js +1 -1
  214. package/dist/locale/uk.min.mjs +1 -1
  215. package/dist/locale/uk.mjs +1 -1
  216. package/dist/locale/uz-uz.js +1 -1
  217. package/dist/locale/uz-uz.min.js +1 -1
  218. package/dist/locale/uz-uz.min.mjs +1 -1
  219. package/dist/locale/uz-uz.mjs +1 -1
  220. package/dist/locale/vi.js +1 -1
  221. package/dist/locale/vi.min.js +1 -1
  222. package/dist/locale/vi.min.mjs +1 -1
  223. package/dist/locale/vi.mjs +1 -1
  224. package/dist/locale/zh-cn.js +1 -1
  225. package/dist/locale/zh-cn.min.js +1 -1
  226. package/dist/locale/zh-cn.min.mjs +1 -1
  227. package/dist/locale/zh-cn.mjs +1 -1
  228. package/dist/locale/zh-tw.js +1 -1
  229. package/dist/locale/zh-tw.min.js +1 -1
  230. package/dist/locale/zh-tw.min.mjs +1 -1
  231. package/dist/locale/zh-tw.mjs +1 -1
  232. package/es/components/button/src/button4.mjs +2 -2
  233. package/es/components/button/src/button4.mjs.map +1 -1
  234. package/es/components/dialog/index.d.ts +1 -0
  235. package/es/components/dialog/src/dialog.vue.d.ts +1 -0
  236. package/es/components/dialog/src/dialog4.mjs +5 -1
  237. package/es/components/dialog/src/dialog4.mjs.map +1 -1
  238. package/es/components/index.mjs +1 -1
  239. package/es/components/menu/index.mjs +1 -1
  240. package/es/components/menu/index2.mjs +2 -2
  241. package/es/components/menu/src/menu-item.mjs +1 -1
  242. package/es/components/menu/src/menu-item3.mjs +14 -100
  243. package/es/components/menu/src/menu-item3.mjs.map +1 -1
  244. package/es/components/menu/src/menu-item4.mjs +100 -14
  245. package/es/components/menu/src/menu-item4.mjs.map +1 -1
  246. package/es/components/menu-item/style/css.d.ts +1 -1
  247. package/es/components/menu-item/style/css2.mjs +1 -1
  248. package/es/components/menu-item-group/style/css.d.ts +1 -1
  249. package/es/components/menu-item-group/style/css2.mjs +1 -1
  250. package/es/components/radio/index.d.ts +2 -4
  251. package/es/components/radio/src/radio-group.vue.d.ts +1 -2
  252. package/es/components/radio/src/radio-group4.mjs +3 -3
  253. package/es/components/radio/src/radio-group4.mjs.map +1 -1
  254. package/es/index.mjs +1 -1
  255. package/es/version.d.ts +1 -1
  256. package/es/version2.mjs +1 -1
  257. package/es/version2.mjs.map +1 -1
  258. package/lib/components/button/src/button4.js +2 -2
  259. package/lib/components/button/src/button4.js.map +1 -1
  260. package/lib/components/dialog/index.d.ts +1 -0
  261. package/lib/components/dialog/src/dialog.vue.d.ts +1 -0
  262. package/lib/components/dialog/src/dialog4.js +5 -1
  263. package/lib/components/dialog/src/dialog4.js.map +1 -1
  264. package/lib/components/index.js +1 -1
  265. package/lib/components/menu/index.js +1 -1
  266. package/lib/components/menu/index2.js +2 -2
  267. package/lib/components/menu/src/menu-item.js +1 -1
  268. package/lib/components/menu/src/menu-item3.js +15 -100
  269. package/lib/components/menu/src/menu-item3.js.map +1 -1
  270. package/lib/components/menu/src/menu-item4.js +100 -15
  271. package/lib/components/menu/src/menu-item4.js.map +1 -1
  272. package/lib/components/menu-item/style/css.d.ts +1 -1
  273. package/lib/components/menu-item/style/css2.js +1 -1
  274. package/lib/components/menu-item-group/style/css.d.ts +1 -1
  275. package/lib/components/menu-item-group/style/css2.js +1 -1
  276. package/lib/components/radio/index.d.ts +2 -4
  277. package/lib/components/radio/src/radio-group.vue.d.ts +1 -2
  278. package/lib/components/radio/src/radio-group4.js +6 -6
  279. package/lib/components/radio/src/radio-group4.js.map +1 -1
  280. package/lib/index.js +1 -1
  281. package/lib/version.d.ts +1 -1
  282. package/lib/version2.js +1 -1
  283. package/lib/version2.js.map +1 -1
  284. package/package.json +2 -2
  285. package/theme-chalk/el-form.css +1 -1
  286. package/theme-chalk/index.css +1 -1
  287. package/theme-chalk/src/form.scss +1 -1
  288. package/web-types.json +1 -1
@@ -35,6 +35,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
35
35
  const ns = useNamespace("dialog");
36
36
  const dialogRef = ref();
37
37
  const headerRef = ref();
38
+ const dialogContentRef = ref();
38
39
  const {
39
40
  visible,
40
41
  titleId,
@@ -63,7 +64,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
63
64
  const draggable = computed(() => props.draggable && !props.fullscreen);
64
65
  useDraggable(dialogRef, headerRef, draggable);
65
66
  expose({
66
- visible
67
+ visible,
68
+ dialogContentRef
67
69
  });
68
70
  return (_ctx, _cache) => {
69
71
  return openBlock(), createBlock(Teleport, {
@@ -106,6 +108,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
106
108
  default: withCtx(() => [
107
109
  unref(rendered) ? (openBlock(), createBlock(ElDialogContent, {
108
110
  key: 0,
111
+ ref_key: "dialogContentRef",
112
+ ref: dialogContentRef,
109
113
  "custom-class": _ctx.customClass,
110
114
  center: _ctx.center,
111
115
  "close-icon": _ctx.closeIcon,
@@ -1 +1 @@
1
- {"version":3,"file":"dialog4.mjs","sources":["../../../../../../packages/components/dialog/src/dialog.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!appendToBody\">\n <transition\n name=\"dialog-fade\"\n @after-enter=\"afterEnter\"\n @after-leave=\"afterLeave\"\n @before-leave=\"beforeLeave\"\n >\n <el-overlay\n v-show=\"visible\"\n custom-mask-event\n :mask=\"modal\"\n :overlay-class=\"modalClass\"\n :z-index=\"zIndex\"\n >\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n :aria-label=\"title || undefined\"\n :aria-labelledby=\"!title ? titleId : undefined\"\n :aria-describedby=\"bodyId\"\n :class=\"`${ns.namespace.value}-overlay-dialog`\"\n @click=\"overlayEvent.onClick\"\n @mousedown=\"overlayEvent.onMousedown\"\n @mouseup=\"overlayEvent.onMouseup\"\n >\n <el-focus-trap\n loop\n :trapped=\"visible\"\n focus-start-el=\"container\"\n @focus-after-trapped=\"onOpenAutoFocus\"\n @focus-after-released=\"onCloseAutoFocus\"\n @release-requested=\"onCloseRequested\"\n >\n <el-dialog-content\n v-if=\"rendered\"\n :custom-class=\"customClass\"\n :center=\"center\"\n :close-icon=\"closeIcon\"\n :draggable=\"draggable\"\n :fullscreen=\"fullscreen\"\n :show-close=\"showClose\"\n :style=\"style\"\n :title=\"title\"\n @close=\"handleClose\"\n >\n <template #header>\n <slot\n v-if=\"!$slots.title\"\n name=\"header\"\n :close=\"handleClose\"\n :title-id=\"titleId\"\n :title-class=\"ns.e('title')\"\n />\n <slot v-else name=\"title\" />\n </template>\n <slot />\n <template v-if=\"$slots.footer\" #footer>\n <slot name=\"footer\" />\n </template>\n </el-dialog-content>\n </el-focus-trap>\n </div>\n </el-overlay>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, ref, useSlots } from 'vue'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport {\n useDeprecated,\n useDraggable,\n useNamespace,\n useSameTarget,\n} from '@element-plus/hooks'\nimport { dialogInjectionKey } from '@element-plus/tokens'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport ElDialogContent from './dialog-content.vue'\nimport { dialogEmits, dialogProps } from './dialog'\nimport { useDialog } from './use-dialog'\n\ndefineOptions({\n name: 'ElDialog',\n})\n\nconst props = defineProps(dialogProps)\ndefineEmits(dialogEmits)\nconst slots = useSlots()\n\nuseDeprecated(\n {\n scope: 'el-dialog',\n from: 'the title slot',\n replacement: 'the header slot',\n version: '3.0.0',\n ref: 'https://element-plus.org/en-US/component/dialog.html#slots',\n },\n computed(() => !!slots.title)\n)\n\nconst ns = useNamespace('dialog')\nconst dialogRef = ref<HTMLElement>()\nconst headerRef = ref<HTMLElement>()\n\nconst {\n visible,\n titleId,\n bodyId,\n style,\n rendered,\n zIndex,\n afterEnter,\n afterLeave,\n beforeLeave,\n handleClose,\n onModalClick,\n onOpenAutoFocus,\n onCloseAutoFocus,\n onCloseRequested,\n} = useDialog(props, dialogRef)\n\nprovide(dialogInjectionKey, {\n dialogRef,\n headerRef,\n bodyId,\n ns,\n rendered,\n style,\n})\n\nconst overlayEvent = useSameTarget(onModalClick)\n\nconst draggable = computed(() => props.draggable && !props.fullscreen)\n\nuseDraggable(dialogRef, headerRef, draggable)\n\ndefineExpose({\n /** @description whether the dialog is visible */\n visible,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAyFA,IAAA,MAAA,QAAA,QAAA,EAAA,CAAA;AAEA,IACA,aAAA,CAAA;AAAA,MACA,KAAA,EAAA,WAAA;AAAA,MACA,IAAA,EAAA,gBAAA;AAAA,MACA,WAAA,EAAA,iBAAA;AAAA,MACA,OAAA,EAAA,OAAA;AAAA,MACA,GAAA,EAAA,4DAAA;AAAA,OAEA,QAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,KAAA,CACA,CAAA,CAAA;AAEA,IAAA,MAAA,EAAA,GAAA,aAAA,QAAA,CAAA,CAAA;AACA,IAAA,MAAA,YAAA,GAAA,EAAA,CAAA;AACA,IAAA,MAAA,YAAA,GAAA,EAAA,CAAA;AAEA,IAAA,MAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,YAAA;AAAA,MACA,eAAA;AAAA,MACA,gBAAA;AAAA,MACA,gBAAA;AAAA,KACA,GAAA,SAAA,CAAA,OAAA,SAAA,CAAA,CAAA;AAEA,IAAA,OAAA,CAAA,kBAAA,EAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,EAAA;AAAA,MACA,QAAA;AAAA,MACA,KAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,GAAA,cAAA,YAAA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,QAAA,CAAA,MAAA,MAAA,SAAA,IAAA,CAAA,MAAA,UAAA,CAAA,CAAA;AAEA,IAAA,YAAA,CAAA,SAAA,EAAA,WAAA,SAAA,CAAA,CAAA;AAEA,IAAA,MAAA,CAAA;AAAA,MAEA,OAAA;AAAA,KACA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"dialog4.mjs","sources":["../../../../../../packages/components/dialog/src/dialog.vue"],"sourcesContent":["<template>\n <teleport to=\"body\" :disabled=\"!appendToBody\">\n <transition\n name=\"dialog-fade\"\n @after-enter=\"afterEnter\"\n @after-leave=\"afterLeave\"\n @before-leave=\"beforeLeave\"\n >\n <el-overlay\n v-show=\"visible\"\n custom-mask-event\n :mask=\"modal\"\n :overlay-class=\"modalClass\"\n :z-index=\"zIndex\"\n >\n <div\n role=\"dialog\"\n aria-modal=\"true\"\n :aria-label=\"title || undefined\"\n :aria-labelledby=\"!title ? titleId : undefined\"\n :aria-describedby=\"bodyId\"\n :class=\"`${ns.namespace.value}-overlay-dialog`\"\n @click=\"overlayEvent.onClick\"\n @mousedown=\"overlayEvent.onMousedown\"\n @mouseup=\"overlayEvent.onMouseup\"\n >\n <el-focus-trap\n loop\n :trapped=\"visible\"\n focus-start-el=\"container\"\n @focus-after-trapped=\"onOpenAutoFocus\"\n @focus-after-released=\"onCloseAutoFocus\"\n @release-requested=\"onCloseRequested\"\n >\n <el-dialog-content\n v-if=\"rendered\"\n ref=\"dialogContentRef\"\n :custom-class=\"customClass\"\n :center=\"center\"\n :close-icon=\"closeIcon\"\n :draggable=\"draggable\"\n :fullscreen=\"fullscreen\"\n :show-close=\"showClose\"\n :style=\"style\"\n :title=\"title\"\n @close=\"handleClose\"\n >\n <template #header>\n <slot\n v-if=\"!$slots.title\"\n name=\"header\"\n :close=\"handleClose\"\n :title-id=\"titleId\"\n :title-class=\"ns.e('title')\"\n />\n <slot v-else name=\"title\" />\n </template>\n <slot />\n <template v-if=\"$slots.footer\" #footer>\n <slot name=\"footer\" />\n </template>\n </el-dialog-content>\n </el-focus-trap>\n </div>\n </el-overlay>\n </transition>\n </teleport>\n</template>\n\n<script lang=\"ts\" setup>\nimport { computed, provide, ref, useSlots } from 'vue'\nimport { ElOverlay } from '@element-plus/components/overlay'\nimport {\n useDeprecated,\n useDraggable,\n useNamespace,\n useSameTarget,\n} from '@element-plus/hooks'\nimport { dialogInjectionKey } from '@element-plus/tokens'\nimport ElFocusTrap from '@element-plus/components/focus-trap'\nimport ElDialogContent from './dialog-content.vue'\nimport { dialogEmits, dialogProps } from './dialog'\nimport { useDialog } from './use-dialog'\n\ndefineOptions({\n name: 'ElDialog',\n})\n\nconst props = defineProps(dialogProps)\ndefineEmits(dialogEmits)\nconst slots = useSlots()\n\nuseDeprecated(\n {\n scope: 'el-dialog',\n from: 'the title slot',\n replacement: 'the header slot',\n version: '3.0.0',\n ref: 'https://element-plus.org/en-US/component/dialog.html#slots',\n },\n computed(() => !!slots.title)\n)\n\nconst ns = useNamespace('dialog')\nconst dialogRef = ref<HTMLElement>()\nconst headerRef = ref<HTMLElement>()\nconst dialogContentRef = ref()\n\nconst {\n visible,\n titleId,\n bodyId,\n style,\n rendered,\n zIndex,\n afterEnter,\n afterLeave,\n beforeLeave,\n handleClose,\n onModalClick,\n onOpenAutoFocus,\n onCloseAutoFocus,\n onCloseRequested,\n} = useDialog(props, dialogRef)\n\nprovide(dialogInjectionKey, {\n dialogRef,\n headerRef,\n bodyId,\n ns,\n rendered,\n style,\n})\n\nconst overlayEvent = useSameTarget(onModalClick)\n\nconst draggable = computed(() => props.draggable && !props.fullscreen)\n\nuseDraggable(dialogRef, headerRef, draggable)\n\ndefineExpose({\n /** @description whether the dialog is visible */\n visible,\n dialogContentRef,\n})\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AA0FA,IAAA,MAAA,QAAA,QAAA,EAAA,CAAA;AAEA,IACA,aAAA,CAAA;AAAA,MACA,KAAA,EAAA,WAAA;AAAA,MACA,IAAA,EAAA,gBAAA;AAAA,MACA,WAAA,EAAA,iBAAA;AAAA,MACA,OAAA,EAAA,OAAA;AAAA,MACA,GAAA,EAAA,4DAAA;AAAA,OAEA,QAAA,CAAA,MAAA,CAAA,CAAA,KAAA,CAAA,KAAA,CACA,CAAA,CAAA;AAEA,IAAA,MAAA,EAAA,GAAA,aAAA,QAAA,CAAA,CAAA;AACA,IAAA,MAAA,YAAA,GAAA,EAAA,CAAA;AACA,IAAA,MAAA,YAAA,GAAA,EAAA,CAAA;AACA,IAAA,MAAA,mBAAA,GAAA,EAAA,CAAA;AAEA,IAAA,MAAA;AAAA,MACA,OAAA;AAAA,MACA,OAAA;AAAA,MACA,MAAA;AAAA,MACA,KAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,MACA,WAAA;AAAA,MACA,YAAA;AAAA,MACA,eAAA;AAAA,MACA,gBAAA;AAAA,MACA,gBAAA;AAAA,KACA,GAAA,SAAA,CAAA,OAAA,SAAA,CAAA,CAAA;AAEA,IAAA,OAAA,CAAA,kBAAA,EAAA;AAAA,MACA,SAAA;AAAA,MACA,SAAA;AAAA,MACA,MAAA;AAAA,MACA,EAAA;AAAA,MACA,QAAA;AAAA,MACA,KAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,GAAA,cAAA,YAAA,CAAA,CAAA;AAEA,IAAA,MAAA,YAAA,QAAA,CAAA,MAAA,MAAA,SAAA,IAAA,CAAA,MAAA,UAAA,CAAA,CAAA;AAEA,IAAA,YAAA,CAAA,SAAA,EAAA,WAAA,SAAA,CAAA,CAAA;AAEA,IAAA,MAAA,CAAA;AAAA,MAEA,OAAA;AAAA,MACA,gBAAA;AAAA,KACA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -71,7 +71,7 @@ export { ElInputNumber } from './input-number/index2.mjs';
71
71
  export { linkEmits, linkProps } from './link/src/link3.mjs';
72
72
  export { ElLink } from './link/index2.mjs';
73
73
  export { menuEmits, menuProps } from './menu/src/menu2.mjs';
74
- export { menuItemEmits, menuItemProps } from './menu/src/menu-item4.mjs';
74
+ export { menuItemEmits, menuItemProps } from './menu/src/menu-item3.mjs';
75
75
  export { menuItemGroupProps } from './menu/src/menu-item-group3.mjs';
76
76
  export { subMenuProps } from './menu/src/sub-menu2.mjs';
77
77
  export { ElMenu, ElMenuItem, ElMenuItemGroup, ElSubMenu } from './menu/index2.mjs';
@@ -1,6 +1,6 @@
1
1
  export { ElMenu, ElMenuItem, ElMenuItemGroup, ElSubMenu, ElMenu as default } from './index2.mjs';
2
2
  export { menuEmits, menuProps } from './src/menu2.mjs';
3
- export { menuItemEmits, menuItemProps } from './src/menu-item4.mjs';
3
+ export { menuItemEmits, menuItemProps } from './src/menu-item3.mjs';
4
4
  export { menuItemGroupProps } from './src/menu-item-group3.mjs';
5
5
  export { subMenuProps } from './src/sub-menu2.mjs';
6
6
  //# sourceMappingURL=index.mjs.map
@@ -1,11 +1,11 @@
1
1
  import '../../utils/index2.mjs';
2
2
  import Menu from './src/menu2.mjs';
3
3
  export { menuEmits, menuProps } from './src/menu2.mjs';
4
- import MenuItem from './src/menu-item3.mjs';
4
+ import MenuItem from './src/menu-item4.mjs';
5
5
  import MenuItemGroup from './src/menu-item-group4.mjs';
6
6
  import SubMenu from './src/sub-menu2.mjs';
7
7
  export { subMenuProps } from './src/sub-menu2.mjs';
8
- export { menuItemEmits, menuItemProps } from './src/menu-item4.mjs';
8
+ export { menuItemEmits, menuItemProps } from './src/menu-item3.mjs';
9
9
  export { menuItemGroupProps } from './src/menu-item-group3.mjs';
10
10
  import './src/types2.mjs';
11
11
  import { withInstall, withNoopInstall } from '../../utils/vue/install2.mjs';
@@ -1,2 +1,2 @@
1
- export { menuItemEmits, menuItemProps } from './menu-item4.mjs';
1
+ export { menuItemEmits, menuItemProps } from './menu-item3.mjs';
2
2
  //# sourceMappingURL=menu-item.mjs.map
@@ -1,106 +1,20 @@
1
- import { defineComponent, getCurrentInstance, inject, toRef, computed, reactive, onMounted, onBeforeUnmount, resolveComponent, openBlock, createElementBlock, normalizeClass, createBlock, withCtx, renderSlot, createElementVNode, Fragment } from 'vue';
2
- import { ElTooltip } from '../../tooltip/index2.mjs';
3
- import '../../popper/index2.mjs';
4
1
  import '../../../utils/index2.mjs';
5
- import '../../../hooks/index2.mjs';
6
- import useMenu from './use-menu2.mjs';
7
- import { menuItemProps, menuItemEmits } from './menu-item4.mjs';
8
- import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
- import { useNamespace } from '../../../hooks/use-namespace/index2.mjs';
10
- import { throwError } from '../../../utils/error2.mjs';
11
- import { Effect } from '../../popper/src/popper3.mjs';
2
+ import { buildProps, definePropType } from '../../../utils/vue/props2.mjs';
3
+ import { isString } from '@vue/shared';
12
4
 
13
- const COMPONENT_NAME = "ElMenuItem";
14
- const _sfc_main = defineComponent({
15
- name: COMPONENT_NAME,
16
- components: {
17
- ElTooltip
5
+ const menuItemProps = buildProps({
6
+ index: {
7
+ type: definePropType([String, null]),
8
+ default: null
18
9
  },
19
- props: menuItemProps,
20
- emits: menuItemEmits,
21
- setup(props, { emit }) {
22
- const instance = getCurrentInstance();
23
- const rootMenu = inject("rootMenu");
24
- const nsMenu = useNamespace("menu");
25
- const nsMenuItem = useNamespace("menu-item");
26
- if (!rootMenu)
27
- throwError(COMPONENT_NAME, "can not inject root menu");
28
- const { parentMenu, indexPath } = useMenu(instance, toRef(props, "index"));
29
- const subMenu = inject(`subMenu:${parentMenu.value.uid}`);
30
- if (!subMenu)
31
- throwError(COMPONENT_NAME, "can not inject sub menu");
32
- const active = computed(() => props.index === rootMenu.activeIndex);
33
- const item = reactive({
34
- index: props.index,
35
- indexPath,
36
- active
37
- });
38
- const handleClick = () => {
39
- if (!props.disabled) {
40
- rootMenu.handleMenuItemClick({
41
- index: props.index,
42
- indexPath: indexPath.value,
43
- route: props.route
44
- });
45
- emit("click", item);
46
- }
47
- };
48
- onMounted(() => {
49
- subMenu.addSubMenu(item);
50
- rootMenu.addMenuItem(item);
51
- });
52
- onBeforeUnmount(() => {
53
- subMenu.removeSubMenu(item);
54
- rootMenu.removeMenuItem(item);
55
- });
56
- return {
57
- Effect,
58
- parentMenu,
59
- rootMenu,
60
- active,
61
- nsMenu,
62
- nsMenuItem,
63
- handleClick
64
- };
65
- }
10
+ route: {
11
+ type: definePropType([String, Object])
12
+ },
13
+ disabled: Boolean
66
14
  });
67
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
68
- const _component_el_tooltip = resolveComponent("el-tooltip");
69
- return openBlock(), createElementBlock("li", {
70
- class: normalizeClass([
71
- _ctx.nsMenuItem.b(),
72
- _ctx.nsMenuItem.is("active", _ctx.active),
73
- _ctx.nsMenuItem.is("disabled", _ctx.disabled)
74
- ]),
75
- role: "menuitem",
76
- tabindex: "-1",
77
- onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
78
- }, [
79
- _ctx.parentMenu.type.name === "ElMenu" && _ctx.rootMenu.props.collapse && _ctx.$slots.title ? (openBlock(), createBlock(_component_el_tooltip, {
80
- key: 0,
81
- effect: _ctx.Effect.DARK,
82
- placement: "right",
83
- "fallback-placements": ["left"],
84
- persistent: ""
85
- }, {
86
- content: withCtx(() => [
87
- renderSlot(_ctx.$slots, "title")
88
- ]),
89
- default: withCtx(() => [
90
- createElementVNode("div", {
91
- class: normalizeClass(_ctx.nsMenu.be("tooltip", "trigger"))
92
- }, [
93
- renderSlot(_ctx.$slots, "default")
94
- ], 2)
95
- ]),
96
- _: 3
97
- }, 8, ["effect"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
98
- renderSlot(_ctx.$slots, "default"),
99
- renderSlot(_ctx.$slots, "title")
100
- ], 64))
101
- ], 2);
102
- }
103
- var MenuItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item.vue"]]);
15
+ const menuItemEmits = {
16
+ click: (item) => isString(item.index) && Array.isArray(item.indexPath)
17
+ };
104
18
 
105
- export { MenuItem as default };
19
+ export { menuItemEmits, menuItemProps };
106
20
  //# sourceMappingURL=menu-item3.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item3.mjs","sources":["../../../../../../packages/components/menu/src/menu-item.vue"],"sourcesContent":["<template>\n <li\n :class=\"[\n nsMenuItem.b(),\n nsMenuItem.is('active', active),\n nsMenuItem.is('disabled', disabled),\n ]\"\n role=\"menuitem\"\n tabindex=\"-1\"\n @click=\"handleClick\"\n >\n <el-tooltip\n v-if=\"\n parentMenu.type.name === 'ElMenu' &&\n rootMenu.props.collapse &&\n $slots.title\n \"\n :effect=\"Effect.DARK\"\n placement=\"right\"\n :fallback-placements=\"['left']\"\n persistent\n >\n <template #content>\n <slot name=\"title\" />\n </template>\n <div :class=\"nsMenu.be('tooltip', 'trigger')\">\n <slot />\n </div>\n </el-tooltip>\n <template v-else>\n <slot />\n <slot name=\"title\" />\n </template>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n inject,\n onBeforeUnmount,\n onMounted,\n reactive,\n toRef,\n} from 'vue'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { Effect } from '@element-plus/components/popper'\nimport { throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport useMenu from './use-menu'\nimport { menuItemEmits, menuItemProps } from './menu-item'\n\nimport type { MenuItemRegistered, MenuProvider, SubMenuProvider } from './types'\n\nconst COMPONENT_NAME = 'ElMenuItem'\nexport default defineComponent({\n name: COMPONENT_NAME,\n components: {\n ElTooltip,\n },\n\n props: menuItemProps,\n emits: menuItemEmits,\n\n setup(props, { emit }) {\n const instance = getCurrentInstance()!\n const rootMenu = inject<MenuProvider>('rootMenu')\n const nsMenu = useNamespace('menu')\n const nsMenuItem = useNamespace('menu-item')\n if (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\n const { parentMenu, indexPath } = useMenu(instance, toRef(props, 'index'))\n\n const subMenu = inject<SubMenuProvider>(`subMenu:${parentMenu.value.uid}`)\n if (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\n const active = computed(() => props.index === rootMenu.activeIndex)\n const item: MenuItemRegistered = reactive({\n index: props.index,\n indexPath,\n active,\n })\n\n const handleClick = () => {\n if (!props.disabled) {\n rootMenu.handleMenuItemClick({\n index: props.index,\n indexPath: indexPath.value,\n route: props.route,\n })\n emit('click', item)\n }\n }\n\n onMounted(() => {\n subMenu.addSubMenu(item)\n rootMenu.addMenuItem(item)\n })\n\n onBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeMenuItem(item)\n })\n\n return {\n Effect,\n parentMenu,\n rootMenu,\n active,\n nsMenu,\n nsMenuItem,\n handleClick,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createBlock","_withCtx","_renderSlot","_createElementVNode","_Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"menu-item3.mjs","sources":["../../../../../../packages/components/menu/src/menu-item.ts"],"sourcesContent":["import { buildProps, definePropType, isString } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport type { MenuItemRegistered } from './types'\n\nexport const menuItemProps = buildProps({\n index: {\n type: definePropType<string | null>([String, null]),\n default: null,\n },\n route: {\n type: definePropType<RouteLocationRaw>([String, Object]),\n },\n disabled: Boolean,\n} as const)\nexport type MenuItemProps = ExtractPropTypes<typeof menuItemProps>\n\nexport const menuItemEmits = {\n click: (item: MenuItemRegistered) =>\n isString(item.index) && Array.isArray(item.indexPath),\n}\nexport type MenuItemEmits = typeof menuItemEmits\n"],"names":[],"mappings":";;;;AACY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACxC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,KAAK,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;AACxE;;;;"}
@@ -1,20 +1,106 @@
1
+ import { defineComponent, getCurrentInstance, inject, toRef, computed, reactive, onMounted, onBeforeUnmount, resolveComponent, openBlock, createElementBlock, normalizeClass, createBlock, withCtx, renderSlot, createElementVNode, Fragment } from 'vue';
2
+ import { ElTooltip } from '../../tooltip/index2.mjs';
3
+ import '../../popper/index2.mjs';
1
4
  import '../../../utils/index2.mjs';
2
- import { buildProps, definePropType } from '../../../utils/vue/props2.mjs';
3
- import { isString } from '@vue/shared';
5
+ import '../../../hooks/index2.mjs';
6
+ import useMenu from './use-menu2.mjs';
7
+ import { menuItemProps, menuItemEmits } from './menu-item3.mjs';
8
+ import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
9
+ import { useNamespace } from '../../../hooks/use-namespace/index2.mjs';
10
+ import { throwError } from '../../../utils/error2.mjs';
11
+ import { Effect } from '../../popper/src/popper3.mjs';
4
12
 
5
- const menuItemProps = buildProps({
6
- index: {
7
- type: definePropType([String, null]),
8
- default: null
13
+ const COMPONENT_NAME = "ElMenuItem";
14
+ const _sfc_main = defineComponent({
15
+ name: COMPONENT_NAME,
16
+ components: {
17
+ ElTooltip
9
18
  },
10
- route: {
11
- type: definePropType([String, Object])
12
- },
13
- disabled: Boolean
19
+ props: menuItemProps,
20
+ emits: menuItemEmits,
21
+ setup(props, { emit }) {
22
+ const instance = getCurrentInstance();
23
+ const rootMenu = inject("rootMenu");
24
+ const nsMenu = useNamespace("menu");
25
+ const nsMenuItem = useNamespace("menu-item");
26
+ if (!rootMenu)
27
+ throwError(COMPONENT_NAME, "can not inject root menu");
28
+ const { parentMenu, indexPath } = useMenu(instance, toRef(props, "index"));
29
+ const subMenu = inject(`subMenu:${parentMenu.value.uid}`);
30
+ if (!subMenu)
31
+ throwError(COMPONENT_NAME, "can not inject sub menu");
32
+ const active = computed(() => props.index === rootMenu.activeIndex);
33
+ const item = reactive({
34
+ index: props.index,
35
+ indexPath,
36
+ active
37
+ });
38
+ const handleClick = () => {
39
+ if (!props.disabled) {
40
+ rootMenu.handleMenuItemClick({
41
+ index: props.index,
42
+ indexPath: indexPath.value,
43
+ route: props.route
44
+ });
45
+ emit("click", item);
46
+ }
47
+ };
48
+ onMounted(() => {
49
+ subMenu.addSubMenu(item);
50
+ rootMenu.addMenuItem(item);
51
+ });
52
+ onBeforeUnmount(() => {
53
+ subMenu.removeSubMenu(item);
54
+ rootMenu.removeMenuItem(item);
55
+ });
56
+ return {
57
+ Effect,
58
+ parentMenu,
59
+ rootMenu,
60
+ active,
61
+ nsMenu,
62
+ nsMenuItem,
63
+ handleClick
64
+ };
65
+ }
14
66
  });
15
- const menuItemEmits = {
16
- click: (item) => isString(item.index) && Array.isArray(item.indexPath)
17
- };
67
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
68
+ const _component_el_tooltip = resolveComponent("el-tooltip");
69
+ return openBlock(), createElementBlock("li", {
70
+ class: normalizeClass([
71
+ _ctx.nsMenuItem.b(),
72
+ _ctx.nsMenuItem.is("active", _ctx.active),
73
+ _ctx.nsMenuItem.is("disabled", _ctx.disabled)
74
+ ]),
75
+ role: "menuitem",
76
+ tabindex: "-1",
77
+ onClick: _cache[0] || (_cache[0] = (...args) => _ctx.handleClick && _ctx.handleClick(...args))
78
+ }, [
79
+ _ctx.parentMenu.type.name === "ElMenu" && _ctx.rootMenu.props.collapse && _ctx.$slots.title ? (openBlock(), createBlock(_component_el_tooltip, {
80
+ key: 0,
81
+ effect: _ctx.Effect.DARK,
82
+ placement: "right",
83
+ "fallback-placements": ["left"],
84
+ persistent: ""
85
+ }, {
86
+ content: withCtx(() => [
87
+ renderSlot(_ctx.$slots, "title")
88
+ ]),
89
+ default: withCtx(() => [
90
+ createElementVNode("div", {
91
+ class: normalizeClass(_ctx.nsMenu.be("tooltip", "trigger"))
92
+ }, [
93
+ renderSlot(_ctx.$slots, "default")
94
+ ], 2)
95
+ ]),
96
+ _: 3
97
+ }, 8, ["effect"])) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
98
+ renderSlot(_ctx.$slots, "default"),
99
+ renderSlot(_ctx.$slots, "title")
100
+ ], 64))
101
+ ], 2);
102
+ }
103
+ var MenuItem = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__file", "/home/runner/work/element-plus/element-plus/packages/components/menu/src/menu-item.vue"]]);
18
104
 
19
- export { menuItemEmits, menuItemProps };
105
+ export { MenuItem as default };
20
106
  //# sourceMappingURL=menu-item4.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item4.mjs","sources":["../../../../../../packages/components/menu/src/menu-item.ts"],"sourcesContent":["import { buildProps, definePropType, isString } from '@element-plus/utils'\n\nimport type { ExtractPropTypes } from 'vue'\nimport type { RouteLocationRaw } from 'vue-router'\nimport type { MenuItemRegistered } from './types'\n\nexport const menuItemProps = buildProps({\n index: {\n type: definePropType<string | null>([String, null]),\n default: null,\n },\n route: {\n type: definePropType<RouteLocationRaw>([String, Object]),\n },\n disabled: Boolean,\n} as const)\nexport type MenuItemProps = ExtractPropTypes<typeof menuItemProps>\n\nexport const menuItemEmits = {\n click: (item: MenuItemRegistered) =>\n isString(item.index) && Array.isArray(item.indexPath),\n}\nexport type MenuItemEmits = typeof menuItemEmits\n"],"names":[],"mappings":";;;;AACY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACxC,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,KAAK,EAAE;AACT,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1C,GAAG;AACH,EAAE,QAAQ,EAAE,OAAO;AACnB,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,KAAK,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;AACxE;;;;"}
1
+ {"version":3,"file":"menu-item4.mjs","sources":["../../../../../../packages/components/menu/src/menu-item.vue"],"sourcesContent":["<template>\n <li\n :class=\"[\n nsMenuItem.b(),\n nsMenuItem.is('active', active),\n nsMenuItem.is('disabled', disabled),\n ]\"\n role=\"menuitem\"\n tabindex=\"-1\"\n @click=\"handleClick\"\n >\n <el-tooltip\n v-if=\"\n parentMenu.type.name === 'ElMenu' &&\n rootMenu.props.collapse &&\n $slots.title\n \"\n :effect=\"Effect.DARK\"\n placement=\"right\"\n :fallback-placements=\"['left']\"\n persistent\n >\n <template #content>\n <slot name=\"title\" />\n </template>\n <div :class=\"nsMenu.be('tooltip', 'trigger')\">\n <slot />\n </div>\n </el-tooltip>\n <template v-else>\n <slot />\n <slot name=\"title\" />\n </template>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport {\n computed,\n defineComponent,\n getCurrentInstance,\n inject,\n onBeforeUnmount,\n onMounted,\n reactive,\n toRef,\n} from 'vue'\nimport ElTooltip from '@element-plus/components/tooltip'\nimport { Effect } from '@element-plus/components/popper'\nimport { throwError } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\nimport useMenu from './use-menu'\nimport { menuItemEmits, menuItemProps } from './menu-item'\n\nimport type { MenuItemRegistered, MenuProvider, SubMenuProvider } from './types'\n\nconst COMPONENT_NAME = 'ElMenuItem'\nexport default defineComponent({\n name: COMPONENT_NAME,\n components: {\n ElTooltip,\n },\n\n props: menuItemProps,\n emits: menuItemEmits,\n\n setup(props, { emit }) {\n const instance = getCurrentInstance()!\n const rootMenu = inject<MenuProvider>('rootMenu')\n const nsMenu = useNamespace('menu')\n const nsMenuItem = useNamespace('menu-item')\n if (!rootMenu) throwError(COMPONENT_NAME, 'can not inject root menu')\n\n const { parentMenu, indexPath } = useMenu(instance, toRef(props, 'index'))\n\n const subMenu = inject<SubMenuProvider>(`subMenu:${parentMenu.value.uid}`)\n if (!subMenu) throwError(COMPONENT_NAME, 'can not inject sub menu')\n\n const active = computed(() => props.index === rootMenu.activeIndex)\n const item: MenuItemRegistered = reactive({\n index: props.index,\n indexPath,\n active,\n })\n\n const handleClick = () => {\n if (!props.disabled) {\n rootMenu.handleMenuItemClick({\n index: props.index,\n indexPath: indexPath.value,\n route: props.route,\n })\n emit('click', item)\n }\n }\n\n onMounted(() => {\n subMenu.addSubMenu(item)\n rootMenu.addMenuItem(item)\n })\n\n onBeforeUnmount(() => {\n subMenu.removeSubMenu(item)\n rootMenu.removeMenuItem(item)\n })\n\n return {\n Effect,\n parentMenu,\n rootMenu,\n active,\n nsMenu,\n nsMenuItem,\n handleClick,\n }\n },\n})\n</script>\n"],"names":["_createElementBlock","_normalizeClass","_createBlock","_withCtx","_renderSlot","_createElementVNode","_Fragment"],"mappings":";;;;;;;;;;;;AAwDA,MAAM,cAAiB,GAAA,YAAA,CAAA;AACvB,MAAK,YAAa,eAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,cAAA;AAAA,EACN,UAAY,EAAA;AAAA,IACV,SAAA;AAAA,GACF;AAAA,EAEA,KAAO,EAAA,aAAA;AAAA,EACP,KAAO,EAAA,aAAA;AAAA,EAEP,KAAA,CAAM,KAAO,EAAA,EAAE,IAAQ,EAAA,EAAA;AACrB,IAAA,MAAM,WAAW,kBAAmB,EAAA,CAAA;AACpC,IAAM,MAAA,QAAA,GAAW,OAAqB,UAAU,CAAA,CAAA;AAChD,IAAM,MAAA,MAAA,GAAS,aAAa,MAAM,CAAA,CAAA;AAClC,IAAM,MAAA,UAAA,GAAa,aAAa,WAAW,CAAA,CAAA;AAC3C,IAAA,IAAI,CAAC,QAAA;AAAU,MAAA,UAAA,CAAW,gBAAgB,0BAA0B,CAAA,CAAA;AAEpE,IAAM,MAAA,EAAE,YAAY,SAAc,EAAA,GAAA,OAAA,CAAQ,UAAU,KAAM,CAAA,KAAA,EAAO,OAAO,CAAC,CAAA,CAAA;AAEzE,IAAA,MAAM,OAAU,GAAA,MAAA,CAAwB,CAAW,QAAA,EAAA,UAAA,CAAW,MAAM,GAAK,CAAA,CAAA,CAAA,CAAA;AACzE,IAAA,IAAI,CAAC,OAAA;AAAS,MAAA,UAAA,CAAW,gBAAgB,yBAAyB,CAAA,CAAA;AAElE,IAAA,MAAM,SAAS,QAAS,CAAA,MAAM,KAAM,CAAA,KAAA,KAAU,SAAS,WAAW,CAAA,CAAA;AAClE,IAAA,MAAM,OAA2B,QAAS,CAAA;AAAA,MACxC,OAAO,KAAM,CAAA,KAAA;AAAA,MACb,SAAA;AAAA,MACA,MAAA;AAAA,KACD,CAAA,CAAA;AAED,IAAA,MAAM,cAAc,MAAM;AACxB,MAAI,IAAA,CAAC,MAAM,QAAU,EAAA;AACnB,QAAA,QAAA,CAAS,mBAAoB,CAAA;AAAA,UAC3B,OAAO,KAAM,CAAA,KAAA;AAAA,UACb,WAAW,SAAU,CAAA,KAAA;AAAA,UACrB,OAAO,KAAM,CAAA,KAAA;AAAA,SACd,CAAA,CAAA;AACD,QAAA,IAAA,CAAK,SAAS,IAAI,CAAA,CAAA;AAAA,OACpB;AAAA,KACF,CAAA;AAEA,IAAA,SAAA,CAAU,MAAM;AACd,MAAA,OAAA,CAAQ,WAAW,IAAI,CAAA,CAAA;AACvB,MAAA,QAAA,CAAS,YAAY,IAAI,CAAA,CAAA;AAAA,KAC1B,CAAA,CAAA;AAED,IAAA,eAAA,CAAgB,MAAM;AACpB,MAAA,OAAA,CAAQ,cAAc,IAAI,CAAA,CAAA;AAC1B,MAAA,QAAA,CAAS,eAAe,IAAI,CAAA,CAAA;AAAA,KAC7B,CAAA,CAAA;AAED,IAAO,OAAA;AAAA,MACL,MAAA;AAAA,MACA,UAAA;AAAA,MACA,QAAA;AAAA,MACA,MAAA;AAAA,MACA,MAAA;AAAA,MACA,UAAA;AAAA,MACA,WAAA;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAC,CAAA,CAAA;;;sBAnHCA,kBAgCK,CAAA,IAAA,EAAA;AAAA,IA/BF,KAAK,EAAAC,cAAA,CAAA;AAAA,MAAU,gBAAW,CAAC,EAAA;AAAA,MAAU,IAAA,CAAA,UAAA,CAAW,EAAE,CAAA,QAAA,EAAW,IAAM,CAAA,MAAA,CAAA;AAAA,MAAS,IAAA,CAAA,UAAA,CAAW,EAAE,CAAA,UAAA,EAAa,IAAQ,CAAA,QAAA,CAAA;AAAA,KAAA,CAAA;IAK/G,IAAK,EAAA,UAAA;AAAA,IACL,QAAS,EAAA,IAAA;AAAA,IACR,SAAK,MAAE,CAAA,CAAA,CAAA,KAAA,MAAA,CAAA,CAAA,CAAA,GAAA,CAAA,GAAA,IAAA,KAAA,IAAA,CAAA,WAAA,IAAA,IAAA,CAAA,WAAA,CAAA,GAAA,IAAA,CAAA,CAAA;AAAA,GAAA,EAAA;IAGS,IAAW,CAAA,UAAA,CAAA,IAAA,CAAK,SAAI,QAAyB,IAAA,IAAA,CAAA,QAAA,CAAS,MAAM,QAAoB,IAAA,IAAA,CAAA,MAAA,CAAO,sBADxGC,WAiBa,CAAA,qBAAA,EAAA;AAAA,MAAA,GAAA,EAAA,CAAA;AAXV,MAAA,MAAA,EAAQ,IAAO,CAAA,MAAA,CAAA,IAAA;AAAA,MAChB,SAAU,EAAA,OAAA;AAAA,MACT,qBAAqB,EAAA,CAAA,MAAA,CAAA;AAAA,MACtB,UAAA,EAAA,EAAA;AAAA,KAAA,EAAA;AAEW,MAAA,OAAA,EAAOC,QAChB,MAAqB;AAAA,QAArBC,UAAqB,CAAA,IAAA,CAAA,MAAA,EAAA,OAAA,CAAA;AAAA,OAAA,CAAA;uBAEvB,MAEM;AAAA,QAFNC,kBAEM,CAAA,KAAA,EAAA;AAAA,UAFA,KAAA,EAAKJ,cAAE,CAAA,IAAA,CAAA,MAAA,CAAO,EAAE,CAAA,SAAA,EAAA,SAAA,CAAA,CAAA;AAAA,SAAA,EAAA;UACpBG,UAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA,SAAA,EAAA,CAAA,CAAA;;;uCAGZJ,kBAGW,CAAAM,QAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,EAAA;AAAA,MAFTF,UAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA,MACRA,UAAqB,CAAA,IAAA,CAAA,MAAA,EAAA,OAAA,CAAA;AAAA,KAAA,EAAA,EAAA,CAAA,CAAA;;;;;;;"}
@@ -1,2 +1,2 @@
1
1
  import 'element-plus/es/components/base/style/css';
2
- import 'element-plus/theme-chalk/menu-item.css';
2
+ import 'element-plus/theme-chalk/el-menu-item.css';
@@ -1,3 +1,3 @@
1
1
  import '../../base/style/css2.mjs';
2
- import 'element-plus/theme-chalk/menu-item.css';
2
+ import 'element-plus/theme-chalk/el-menu-item.css';
3
3
  //# sourceMappingURL=css2.mjs.map
@@ -1,2 +1,2 @@
1
1
  import 'element-plus/es/components/base/style/css';
2
- import 'element-plus/theme-chalk/menu-item-group.css';
2
+ import 'element-plus/theme-chalk/el-menu-item-group.css';
@@ -1,3 +1,3 @@
1
1
  import '../../base/style/css2.mjs';
2
- import 'element-plus/theme-chalk/menu-item-group.css';
2
+ import 'element-plus/theme-chalk/el-menu-item-group.css';
3
3
  //# sourceMappingURL=css2.mjs.map
@@ -124,7 +124,6 @@ export declare const ElRadio: import("element-plus/es/utils").SFCWithInstall<imp
124
124
  readonly textColor: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
125
125
  readonly name: import("element-plus/es/utils").BuildPropReturn<StringConstructor, undefined, unknown, unknown, unknown>;
126
126
  }, {
127
- id: number;
128
127
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
129
128
  readonly id: import("element-plus/es/utils").BuildPropReturn<StringConstructor, undefined, unknown, unknown, unknown>;
130
129
  readonly size: import("element-plus/es/utils").BuildPropReturn<StringConstructor, never, false, "" | "default" | "small" | "large", never>;
@@ -157,12 +156,12 @@ export declare const ElRadio: import("element-plus/es/utils").SFCWithInstall<imp
157
156
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
158
157
  cssVarBlockName: (name: string) => string;
159
158
  };
159
+ radioId: import("vue").Ref<string>;
160
160
  radioGroupRef: import("vue").Ref<HTMLDivElement | undefined>;
161
161
  formItem: import("../..").FormItemContext | undefined;
162
162
  groupId: import("vue").Ref<string | undefined>;
163
163
  isLabeledByFormItem: import("vue").ComputedRef<boolean>;
164
164
  changeEvent: (value: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, NumberConstructor, BooleanConstructor], unknown, unknown>) => void;
165
- randomName: string;
166
165
  name: import("vue").ComputedRef<string>;
167
166
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
168
167
  "update:modelValue": (val: string | number | boolean) => boolean;
@@ -201,7 +200,6 @@ export declare const ElRadioGroup: import("element-plus/es/utils").SFCWithInstal
201
200
  readonly textColor: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
202
201
  readonly name: import("element-plus/es/utils").BuildPropReturn<StringConstructor, undefined, unknown, unknown, unknown>;
203
202
  }, {
204
- id: number;
205
203
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
206
204
  readonly id: import("element-plus/es/utils").BuildPropReturn<StringConstructor, undefined, unknown, unknown, unknown>;
207
205
  readonly size: import("element-plus/es/utils").BuildPropReturn<StringConstructor, never, false, "" | "default" | "small" | "large", never>;
@@ -234,12 +232,12 @@ export declare const ElRadioGroup: import("element-plus/es/utils").SFCWithInstal
234
232
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
235
233
  cssVarBlockName: (name: string) => string;
236
234
  };
235
+ radioId: import("vue").Ref<string>;
237
236
  radioGroupRef: import("vue").Ref<HTMLDivElement | undefined>;
238
237
  formItem: import("../..").FormItemContext | undefined;
239
238
  groupId: import("vue").Ref<string | undefined>;
240
239
  isLabeledByFormItem: import("vue").ComputedRef<boolean>;
241
240
  changeEvent: (value: import("element-plus/es/utils").BuildPropType<readonly [StringConstructor, NumberConstructor, BooleanConstructor], unknown, unknown>) => void;
242
- randomName: string;
243
241
  name: import("vue").ComputedRef<string>;
244
242
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
245
243
  "update:modelValue": (val: string | number | boolean) => boolean;
@@ -9,7 +9,6 @@ declare const _default: import("vue").DefineComponent<{
9
9
  readonly textColor: import("element-plus/es/utils").BuildPropReturn<StringConstructor, "", unknown, unknown, unknown>;
10
10
  readonly name: import("element-plus/es/utils").BuildPropReturn<StringConstructor, undefined, unknown, unknown, unknown>;
11
11
  }, {
12
- id: number;
13
12
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
14
13
  readonly id: import("element-plus/es/utils").BuildPropReturn<StringConstructor, undefined, unknown, unknown, unknown>;
15
14
  readonly size: import("element-plus/es/utils").BuildPropReturn<StringConstructor, never, false, "" | "default" | "small" | "large", never>;
@@ -42,12 +41,12 @@ declare const _default: import("vue").DefineComponent<{
42
41
  cssVarBlock: (object: Record<string, string>) => Record<string, string>;
43
42
  cssVarBlockName: (name: string) => string;
44
43
  };
44
+ radioId: import("vue").Ref<string>;
45
45
  radioGroupRef: import("vue").Ref<HTMLDivElement | undefined>;
46
46
  formItem: import("element-plus/es/tokens").FormItemContext | undefined;
47
47
  groupId: import("vue").Ref<string | undefined>;
48
48
  isLabeledByFormItem: import("vue").ComputedRef<boolean>;
49
49
  changeEvent: (value: RadioGroupProps['modelValue']) => void;
50
- randomName: string;
51
50
  name: import("vue").ComputedRef<string>;
52
51
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
53
52
  "update:modelValue": (val: string | number | boolean) => boolean;
@@ -6,6 +6,7 @@ import '../../../utils/index2.mjs';
6
6
  import { radioGroupProps, radioGroupEmits } from './radio-group3.mjs';
7
7
  import _export_sfc from '../../../_virtual/plugin-vue_export-helper.mjs';
8
8
  import { useNamespace } from '../../../hooks/use-namespace/index2.mjs';
9
+ import { useId } from '../../../hooks/use-id/index2.mjs';
9
10
  import { useFormItem, useFormItemInputId } from '../../../hooks/use-form-item/index2.mjs';
10
11
  import { UPDATE_MODEL_EVENT } from '../../../constants/event2.mjs';
11
12
  import { radioGroupKey } from '../../../tokens/radio2.mjs';
@@ -21,8 +22,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
21
22
  emits: radioGroupEmits,
22
23
  setup(__props, { emit }) {
23
24
  const props = __props;
24
- let id = 1;
25
25
  const ns = useNamespace("radio");
26
+ const radioId = useId();
26
27
  const radioGroupRef = ref();
27
28
  const { formItem } = useFormItem();
28
29
  const { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {
@@ -39,9 +40,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
39
40
  firstLabel.tabIndex = 0;
40
41
  }
41
42
  });
42
- const randomName = `el-radio-group-${id++}`;
43
43
  const name = computed(() => {
44
- return props.name || randomName;
44
+ return props.name || radioId.value;
45
45
  });
46
46
  provide(radioGroupKey, reactive({
47
47
  ...toRefs(props),
@@ -1 +1 @@
1
- {"version":3,"file":"radio-group4.mjs","sources":["../../../../../../packages/components/radio/src/radio-group.vue"],"sourcesContent":["<template>\n <div\n :id=\"groupId\"\n ref=\"radioGroupRef\"\n :class=\"ns.b('group')\"\n role=\"radiogroup\"\n :aria-label=\"!isLabeledByFormItem ? label || 'radio-group' : undefined\"\n :aria-labelledby=\"isLabeledByFormItem ? formItem!.labelId : undefined\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { radioGroupKey } from '@element-plus/tokens'\nimport {\n useFormItem,\n useFormItemInputId,\n useNamespace,\n} from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport { radioGroupEmits, radioGroupProps } from './radio-group'\nimport type { RadioGroupProps } from '..'\n\ndefineOptions({\n name: 'ElRadioGroup',\n})\n\nlet id = 1\nconst props = defineProps(radioGroupProps)\nconst emit = defineEmits(radioGroupEmits)\n\nconst ns = useNamespace('radio')\nconst radioGroupRef = ref<HTMLDivElement>()\nconst { formItem } = useFormItem()\nconst { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst changeEvent = (value: RadioGroupProps['modelValue']) => {\n emit(UPDATE_MODEL_EVENT, value)\n nextTick(() => emit('change', value))\n}\n\nonMounted(() => {\n const radios =\n radioGroupRef.value!.querySelectorAll<HTMLInputElement>('[type=radio]')\n const firstLabel = radios[0]\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0\n }\n})\n\nconst randomName = `el-radio-group-${id++}`\n\nconst name = computed(() => {\n return props.name || randomName\n})\n\nprovide(\n radioGroupKey,\n reactive({\n ...toRefs(props),\n changeEvent,\n name,\n })\n)\n\nwatch(\n () => props.modelValue,\n () => formItem?.validate('change').catch((err) => debugWarn(err))\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAuCA,IAAA,IAAA,EAAA,GAAA,CAAA,CAAA;AAIA,IAAA,MAAA,EAAA,GAAA,aAAA,OAAA,CAAA,CAAA;AACA,IAAA,MAAA,gBAAA,GAAA,EAAA,CAAA;AACA,IAAA,MAAA,EAAA,aAAA,WAAA,EAAA,CAAA;AACA,IAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,GAAA,mBAAA,KAAA,EAAA;AAAA,MACA,eAAA,EAAA,QAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,WAAA,GAAA,CAAA,KAAA,KAAA;AACA,MAAA,IAAA,CAAA,oBAAA,KAAA,CAAA,CAAA;AACA,MAAA,QAAA,CAAA,MAAA,IAAA,CAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAAA,KACA,CAAA;AAEA,IAAA,SAAA,CAAA,MAAA;AACA,MAAA,MAAA,MACA,GAAA,aAAA,CAAA,KAAA,CAAA,gBAAA,CAAA,cAAA,CAAA,CAAA;AACA,MAAA,MAAA,aAAA,MAAA,CAAA,CAAA,CAAA,CAAA;AACA,MAAA,IAAA,CAAA,KAAA,CAAA,IAAA,CAAA,MAAA,CAAA,CAAA,IAAA,CAAA,CAAA,KAAA,KAAA,KAAA,CAAA,OAAA,CAAA,IAAA,UAAA,EAAA;AACA,QAAA,UAAA,CAAA,QAAA,GAAA,CAAA,CAAA;AAAA,OACA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,aAAA,CAAA,eAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA;AAEA,IAAA,MAAA,IAAA,GAAA,SAAA,MAAA;AACA,MAAA,OAAA,MAAA,IAAA,IAAA,UAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,OAAA,CACA,eACA,QAAA,CAAA;AAAA,MAAA,GACA,OAAA,KAAA,CAAA;AAAA,MACA,WAAA;AAAA,MACA,IAAA;AAAA,KACA,CACA,CAAA,CAAA;AAEA,IAAA,KAAA,CACA,MAAA,KAAA,CAAA,UACA,EAAA,MAAA,YAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,CAAA,KACA,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"radio-group4.mjs","sources":["../../../../../../packages/components/radio/src/radio-group.vue"],"sourcesContent":["<template>\n <div\n :id=\"groupId\"\n ref=\"radioGroupRef\"\n :class=\"ns.b('group')\"\n role=\"radiogroup\"\n :aria-label=\"!isLabeledByFormItem ? label || 'radio-group' : undefined\"\n :aria-labelledby=\"isLabeledByFormItem ? formItem!.labelId : undefined\"\n >\n <slot />\n </div>\n</template>\n\n<script lang=\"ts\" setup>\nimport {\n computed,\n nextTick,\n onMounted,\n provide,\n reactive,\n ref,\n toRefs,\n watch,\n} from 'vue'\nimport { UPDATE_MODEL_EVENT } from '@element-plus/constants'\nimport { radioGroupKey } from '@element-plus/tokens'\nimport {\n useFormItem,\n useFormItemInputId,\n useId,\n useNamespace,\n} from '@element-plus/hooks'\nimport { debugWarn } from '@element-plus/utils'\nimport { radioGroupEmits, radioGroupProps } from './radio-group'\nimport type { RadioGroupProps } from '..'\n\ndefineOptions({\n name: 'ElRadioGroup',\n})\n\nconst props = defineProps(radioGroupProps)\nconst emit = defineEmits(radioGroupEmits)\n\nconst ns = useNamespace('radio')\nconst radioId = useId()\nconst radioGroupRef = ref<HTMLDivElement>()\nconst { formItem } = useFormItem()\nconst { inputId: groupId, isLabeledByFormItem } = useFormItemInputId(props, {\n formItemContext: formItem,\n})\n\nconst changeEvent = (value: RadioGroupProps['modelValue']) => {\n emit(UPDATE_MODEL_EVENT, value)\n nextTick(() => emit('change', value))\n}\n\nonMounted(() => {\n const radios =\n radioGroupRef.value!.querySelectorAll<HTMLInputElement>('[type=radio]')\n const firstLabel = radios[0]\n if (!Array.from(radios).some((radio) => radio.checked) && firstLabel) {\n firstLabel.tabIndex = 0\n }\n})\n\nconst name = computed(() => {\n return props.name || radioId.value\n})\n\nprovide(\n radioGroupKey,\n reactive({\n ...toRefs(props),\n changeEvent,\n name,\n })\n)\n\nwatch(\n () => props.modelValue,\n () => formItem?.validate('change').catch((err) => debugWarn(err))\n)\n</script>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AA2CA,IAAA,MAAA,EAAA,GAAA,aAAA,OAAA,CAAA,CAAA;AACA,IAAA,MAAA,UAAA,KAAA,EAAA,CAAA;AACA,IAAA,MAAA,gBAAA,GAAA,EAAA,CAAA;AACA,IAAA,MAAA,EAAA,aAAA,WAAA,EAAA,CAAA;AACA,IAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,mBAAA,EAAA,GAAA,mBAAA,KAAA,EAAA;AAAA,MACA,eAAA,EAAA,QAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,WAAA,GAAA,CAAA,KAAA,KAAA;AACA,MAAA,IAAA,CAAA,oBAAA,KAAA,CAAA,CAAA;AACA,MAAA,QAAA,CAAA,MAAA,IAAA,CAAA,QAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAAA,KACA,CAAA;AAEA,IAAA,SAAA,CAAA,MAAA;AACA,MAAA,MAAA,MACA,GAAA,aAAA,CAAA,KAAA,CAAA,gBAAA,CAAA,cAAA,CAAA,CAAA;AACA,MAAA,MAAA,aAAA,MAAA,CAAA,CAAA,CAAA,CAAA;AACA,MAAA,IAAA,CAAA,KAAA,CAAA,IAAA,CAAA,MAAA,CAAA,CAAA,IAAA,CAAA,CAAA,KAAA,KAAA,KAAA,CAAA,OAAA,CAAA,IAAA,UAAA,EAAA;AACA,QAAA,UAAA,CAAA,QAAA,GAAA,CAAA,CAAA;AAAA,OACA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,MAAA,IAAA,GAAA,SAAA,MAAA;AACA,MAAA,OAAA,KAAA,CAAA,QAAA,OAAA,CAAA,KAAA,CAAA;AAAA,KACA,CAAA,CAAA;AAEA,IAAA,OAAA,CACA,eACA,QAAA,CAAA;AAAA,MAAA,GACA,OAAA,KAAA,CAAA;AAAA,MACA,WAAA;AAAA,MACA,IAAA;AAAA,KACA,CACA,CAAA,CAAA;AAEA,IAAA,KAAA,CACA,MAAA,KAAA,CAAA,UACA,EAAA,MAAA,YAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,QAAA,CAAA,QAAA,CAAA,CAAA,KACA,CAAA,CAAA,GAAA,KAAA,SAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;"}
package/es/index.mjs CHANGED
@@ -74,7 +74,7 @@ export { ElInputNumber } from './components/input-number/index2.mjs';
74
74
  export { linkEmits, linkProps } from './components/link/src/link3.mjs';
75
75
  export { ElLink } from './components/link/index2.mjs';
76
76
  export { menuEmits, menuProps } from './components/menu/src/menu2.mjs';
77
- export { menuItemEmits, menuItemProps } from './components/menu/src/menu-item4.mjs';
77
+ export { menuItemEmits, menuItemProps } from './components/menu/src/menu-item3.mjs';
78
78
  export { menuItemGroupProps } from './components/menu/src/menu-item-group3.mjs';
79
79
  export { subMenuProps } from './components/menu/src/sub-menu2.mjs';
80
80
  export { ElMenu, ElMenuItem, ElMenuItemGroup, ElSubMenu } from './components/menu/index2.mjs';
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "2.2.1";
1
+ export declare const version = "2.2.2";
package/es/version2.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "2.2.1";
1
+ const version = "2.2.2";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version2.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version2.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '2.2.1'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version2.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '2.2.2'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -28,8 +28,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
28
28
  const props = __props;
29
29
  const slots = vue.useSlots();
30
30
  index.useDeprecated({
31
- from: "type.link",
32
- replacement: "text",
31
+ from: "type.text",
32
+ replacement: "type.link",
33
33
  version: "3.0.0",
34
34
  scope: "props",
35
35
  ref: "https://element-plus.org/en-US/component/button.html#button-attributes"
@@ -1 +1 @@
1
- {"version":3,"file":"button4.js","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ns.is('text', text),\n ns.is('link', link),\n ns.is('has-bg', bg),\n ]\"\n :aria-disabled=\"_disabled || loading\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\" />\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon || $slots.icon\">\n <component :is=\"icon\" v-if=\"icon\" />\n <slot v-else name=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot />\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { Text, computed, inject, ref, useSlots } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useDeprecated,\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\nimport { buttonEmits, buttonProps } from './button'\nimport { useButtonCustomStyle } from './button-custom'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\nconst slots = useSlots()\n\nuseDeprecated(\n {\n from: 'type.link',\n replacement: 'text',\n version: '3.0.0',\n scope: 'props',\n ref: 'https://element-plus.org/en-US/component/button.html#button-attributes',\n },\n computed(() => props.type === 'text')\n)\n\nconst buttonGroupContext = inject(buttonGroupContextKey, undefined)\nconst globalConfig = useGlobalConfig('button')\nconst ns = useNamespace('button')\nconst { form } = useFormItem()\nconst _size = useSize(computed(() => buttonGroupContext?.size))\nconst _disabled = useDisabled()\nconst _ref = ref<HTMLButtonElement>()\n\nconst _type = computed(() => props.type || buttonGroupContext?.type || '')\nconst autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n)\n\n// add space between two characters in Chinese\nconst shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children as string\n return /^\\p{Unified_Ideograph}{2}$/u.test(text.trim())\n }\n }\n return false\n})\n\nconst buttonStyle = useButtonCustomStyle(props)\n\nconst handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n}\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":["useSlots","useDeprecated","computed","inject","buttonGroupContextKey","useGlobalConfig","useNamespace","useFormItem","useSize","useDisabled","ref","Text","useButtonCustomStyle"],"mappings":"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"}
1
+ {"version":3,"file":"button4.js","sources":["../../../../../../packages/components/button/src/button.vue"],"sourcesContent":["<template>\n <button\n ref=\"_ref\"\n :class=\"[\n ns.b(),\n ns.m(_type),\n ns.m(_size),\n ns.is('disabled', _disabled),\n ns.is('loading', loading),\n ns.is('plain', plain),\n ns.is('round', round),\n ns.is('circle', circle),\n ns.is('text', text),\n ns.is('link', link),\n ns.is('has-bg', bg),\n ]\"\n :aria-disabled=\"_disabled || loading\"\n :disabled=\"_disabled || loading\"\n :autofocus=\"autofocus\"\n :type=\"nativeType\"\n :style=\"buttonStyle\"\n @click=\"handleClick\"\n >\n <template v-if=\"loading\">\n <slot v-if=\"$slots.loading\" name=\"loading\" />\n <el-icon v-else :class=\"ns.is('loading')\">\n <component :is=\"loadingIcon\" />\n </el-icon>\n </template>\n <el-icon v-else-if=\"icon || $slots.icon\">\n <component :is=\"icon\" v-if=\"icon\" />\n <slot v-else name=\"icon\" />\n </el-icon>\n <span\n v-if=\"$slots.default\"\n :class=\"{ [ns.em('text', 'expand')]: shouldAddSpace }\"\n >\n <slot />\n </span>\n </button>\n</template>\n\n<script lang=\"ts\" setup>\nimport { Text, computed, inject, ref, useSlots } from 'vue'\nimport { ElIcon } from '@element-plus/components/icon'\nimport {\n useDeprecated,\n useDisabled,\n useFormItem,\n useGlobalConfig,\n useNamespace,\n useSize,\n} from '@element-plus/hooks'\nimport { buttonGroupContextKey } from '@element-plus/tokens'\nimport { buttonEmits, buttonProps } from './button'\nimport { useButtonCustomStyle } from './button-custom'\n\ndefineOptions({\n name: 'ElButton',\n})\n\nconst props = defineProps(buttonProps)\nconst emit = defineEmits(buttonEmits)\nconst slots = useSlots()\n\nuseDeprecated(\n {\n from: 'type.text',\n replacement: 'type.link',\n version: '3.0.0',\n scope: 'props',\n ref: 'https://element-plus.org/en-US/component/button.html#button-attributes',\n },\n computed(() => props.type === 'text')\n)\n\nconst buttonGroupContext = inject(buttonGroupContextKey, undefined)\nconst globalConfig = useGlobalConfig('button')\nconst ns = useNamespace('button')\nconst { form } = useFormItem()\nconst _size = useSize(computed(() => buttonGroupContext?.size))\nconst _disabled = useDisabled()\nconst _ref = ref<HTMLButtonElement>()\n\nconst _type = computed(() => props.type || buttonGroupContext?.type || '')\nconst autoInsertSpace = computed(\n () => props.autoInsertSpace ?? globalConfig.value?.autoInsertSpace ?? false\n)\n\n// add space between two characters in Chinese\nconst shouldAddSpace = computed(() => {\n const defaultSlot = slots.default?.()\n if (autoInsertSpace.value && defaultSlot?.length === 1) {\n const slot = defaultSlot[0]\n if (slot?.type === Text) {\n const text = slot.children as string\n return /^\\p{Unified_Ideograph}{2}$/u.test(text.trim())\n }\n }\n return false\n})\n\nconst buttonStyle = useButtonCustomStyle(props)\n\nconst handleClick = (evt: MouseEvent) => {\n if (props.nativeType === 'reset') {\n form?.resetFields()\n }\n emit('click', evt)\n}\n\ndefineExpose({\n /** @description button html element */\n ref: _ref,\n /** @description button size */\n size: _size,\n /** @description button type */\n type: _type,\n /** @description button disabled */\n disabled: _disabled,\n /** @description whether adding space */\n shouldAddSpace,\n})\n</script>\n"],"names":["useSlots","useDeprecated","computed","inject","buttonGroupContextKey","useGlobalConfig","useNamespace","useFormItem","useSize","useDisabled","ref","Text","useButtonCustomStyle"],"mappings":"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"}
@@ -77,6 +77,7 @@ export declare const ElDialog: import("element-plus/es/utils").SFCWithInstall<im
77
77
  };
78
78
  dialogRef: import("vue").Ref<HTMLElement | undefined>;
79
79
  headerRef: import("vue").Ref<HTMLElement | undefined>;
80
+ dialogContentRef: import("vue").Ref<any>;
80
81
  visible: import("vue").Ref<boolean>;
81
82
  titleId: import("vue").Ref<string>;
82
83
  bodyId: import("vue").Ref<string>;