@element-plus/nightly 0.0.20240117 → 0.0.20240119

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 (318) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +80 -41
  3. package/dist/index.full.min.js +8 -8
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +9 -9
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +80 -41
  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-eg.js +1 -1
  13. package/dist/locale/ar-eg.min.js +1 -1
  14. package/dist/locale/ar-eg.min.mjs +1 -1
  15. package/dist/locale/ar-eg.mjs +1 -1
  16. package/dist/locale/ar.js +1 -1
  17. package/dist/locale/ar.min.js +1 -1
  18. package/dist/locale/ar.min.mjs +1 -1
  19. package/dist/locale/ar.mjs +1 -1
  20. package/dist/locale/az.js +1 -1
  21. package/dist/locale/az.min.js +1 -1
  22. package/dist/locale/az.min.mjs +1 -1
  23. package/dist/locale/az.mjs +1 -1
  24. package/dist/locale/bg.js +1 -1
  25. package/dist/locale/bg.min.js +1 -1
  26. package/dist/locale/bg.min.mjs +1 -1
  27. package/dist/locale/bg.mjs +1 -1
  28. package/dist/locale/bn.js +1 -1
  29. package/dist/locale/bn.min.js +1 -1
  30. package/dist/locale/bn.min.mjs +1 -1
  31. package/dist/locale/bn.mjs +1 -1
  32. package/dist/locale/ca.js +1 -1
  33. package/dist/locale/ca.min.js +1 -1
  34. package/dist/locale/ca.min.mjs +1 -1
  35. package/dist/locale/ca.mjs +1 -1
  36. package/dist/locale/ckb.js +1 -1
  37. package/dist/locale/ckb.min.js +1 -1
  38. package/dist/locale/ckb.min.mjs +1 -1
  39. package/dist/locale/ckb.mjs +1 -1
  40. package/dist/locale/cs.js +1 -1
  41. package/dist/locale/cs.min.js +1 -1
  42. package/dist/locale/cs.min.mjs +1 -1
  43. package/dist/locale/cs.mjs +1 -1
  44. package/dist/locale/da.js +1 -1
  45. package/dist/locale/da.min.js +1 -1
  46. package/dist/locale/da.min.mjs +1 -1
  47. package/dist/locale/da.mjs +1 -1
  48. package/dist/locale/de.js +1 -1
  49. package/dist/locale/de.min.js +1 -1
  50. package/dist/locale/de.min.mjs +1 -1
  51. package/dist/locale/de.mjs +1 -1
  52. package/dist/locale/el.js +1 -1
  53. package/dist/locale/el.min.js +1 -1
  54. package/dist/locale/el.min.mjs +1 -1
  55. package/dist/locale/el.mjs +1 -1
  56. package/dist/locale/en.js +1 -1
  57. package/dist/locale/en.min.js +1 -1
  58. package/dist/locale/en.min.mjs +1 -1
  59. package/dist/locale/en.mjs +1 -1
  60. package/dist/locale/eo.js +1 -1
  61. package/dist/locale/eo.min.js +1 -1
  62. package/dist/locale/eo.min.mjs +1 -1
  63. package/dist/locale/eo.mjs +1 -1
  64. package/dist/locale/es.js +1 -1
  65. package/dist/locale/es.min.js +1 -1
  66. package/dist/locale/es.min.mjs +1 -1
  67. package/dist/locale/es.mjs +1 -1
  68. package/dist/locale/et.js +1 -1
  69. package/dist/locale/et.min.js +1 -1
  70. package/dist/locale/et.min.mjs +1 -1
  71. package/dist/locale/et.mjs +1 -1
  72. package/dist/locale/eu.js +1 -1
  73. package/dist/locale/eu.min.js +1 -1
  74. package/dist/locale/eu.min.mjs +1 -1
  75. package/dist/locale/eu.mjs +1 -1
  76. package/dist/locale/fa.js +1 -1
  77. package/dist/locale/fa.min.js +1 -1
  78. package/dist/locale/fa.min.mjs +1 -1
  79. package/dist/locale/fa.mjs +1 -1
  80. package/dist/locale/fi.js +1 -1
  81. package/dist/locale/fi.min.js +1 -1
  82. package/dist/locale/fi.min.mjs +1 -1
  83. package/dist/locale/fi.mjs +1 -1
  84. package/dist/locale/fr.js +1 -1
  85. package/dist/locale/fr.min.js +1 -1
  86. package/dist/locale/fr.min.mjs +1 -1
  87. package/dist/locale/fr.mjs +1 -1
  88. package/dist/locale/he.js +1 -1
  89. package/dist/locale/he.min.js +1 -1
  90. package/dist/locale/he.min.mjs +1 -1
  91. package/dist/locale/he.mjs +1 -1
  92. package/dist/locale/hr.js +1 -1
  93. package/dist/locale/hr.min.js +1 -1
  94. package/dist/locale/hr.min.mjs +1 -1
  95. package/dist/locale/hr.mjs +1 -1
  96. package/dist/locale/hu.js +1 -1
  97. package/dist/locale/hu.min.js +1 -1
  98. package/dist/locale/hu.min.mjs +1 -1
  99. package/dist/locale/hu.mjs +1 -1
  100. package/dist/locale/hy-am.js +1 -1
  101. package/dist/locale/hy-am.min.js +1 -1
  102. package/dist/locale/hy-am.min.mjs +1 -1
  103. package/dist/locale/hy-am.mjs +1 -1
  104. package/dist/locale/id.js +1 -1
  105. package/dist/locale/id.min.js +1 -1
  106. package/dist/locale/id.min.mjs +1 -1
  107. package/dist/locale/id.mjs +1 -1
  108. package/dist/locale/it.js +1 -1
  109. package/dist/locale/it.min.js +1 -1
  110. package/dist/locale/it.min.mjs +1 -1
  111. package/dist/locale/it.mjs +1 -1
  112. package/dist/locale/ja.js +1 -1
  113. package/dist/locale/ja.min.js +1 -1
  114. package/dist/locale/ja.min.mjs +1 -1
  115. package/dist/locale/ja.mjs +1 -1
  116. package/dist/locale/kk.js +1 -1
  117. package/dist/locale/kk.min.js +1 -1
  118. package/dist/locale/kk.min.mjs +1 -1
  119. package/dist/locale/kk.mjs +1 -1
  120. package/dist/locale/km.js +1 -1
  121. package/dist/locale/km.min.js +1 -1
  122. package/dist/locale/km.min.mjs +1 -1
  123. package/dist/locale/km.mjs +1 -1
  124. package/dist/locale/ko.js +1 -1
  125. package/dist/locale/ko.min.js +1 -1
  126. package/dist/locale/ko.min.mjs +1 -1
  127. package/dist/locale/ko.mjs +1 -1
  128. package/dist/locale/ku.js +1 -1
  129. package/dist/locale/ku.min.js +1 -1
  130. package/dist/locale/ku.min.mjs +1 -1
  131. package/dist/locale/ku.mjs +1 -1
  132. package/dist/locale/ky.js +1 -1
  133. package/dist/locale/ky.min.js +1 -1
  134. package/dist/locale/ky.min.mjs +1 -1
  135. package/dist/locale/ky.mjs +1 -1
  136. package/dist/locale/lt.js +1 -1
  137. package/dist/locale/lt.min.js +1 -1
  138. package/dist/locale/lt.min.mjs +1 -1
  139. package/dist/locale/lt.mjs +1 -1
  140. package/dist/locale/lv.js +1 -1
  141. package/dist/locale/lv.min.js +1 -1
  142. package/dist/locale/lv.min.mjs +1 -1
  143. package/dist/locale/lv.mjs +1 -1
  144. package/dist/locale/mg.js +1 -1
  145. package/dist/locale/mg.min.js +1 -1
  146. package/dist/locale/mg.min.mjs +1 -1
  147. package/dist/locale/mg.mjs +1 -1
  148. package/dist/locale/mn.js +1 -1
  149. package/dist/locale/mn.min.js +1 -1
  150. package/dist/locale/mn.min.mjs +1 -1
  151. package/dist/locale/mn.mjs +1 -1
  152. package/dist/locale/nb-no.js +1 -1
  153. package/dist/locale/nb-no.min.js +1 -1
  154. package/dist/locale/nb-no.min.mjs +1 -1
  155. package/dist/locale/nb-no.mjs +1 -1
  156. package/dist/locale/nl.js +1 -1
  157. package/dist/locale/nl.min.js +1 -1
  158. package/dist/locale/nl.min.mjs +1 -1
  159. package/dist/locale/nl.mjs +1 -1
  160. package/dist/locale/pa.js +1 -1
  161. package/dist/locale/pa.min.js +1 -1
  162. package/dist/locale/pa.min.mjs +1 -1
  163. package/dist/locale/pa.mjs +1 -1
  164. package/dist/locale/pl.js +1 -1
  165. package/dist/locale/pl.min.js +1 -1
  166. package/dist/locale/pl.min.mjs +1 -1
  167. package/dist/locale/pl.mjs +1 -1
  168. package/dist/locale/pt-br.js +1 -1
  169. package/dist/locale/pt-br.min.js +1 -1
  170. package/dist/locale/pt-br.min.mjs +1 -1
  171. package/dist/locale/pt-br.mjs +1 -1
  172. package/dist/locale/pt.js +1 -1
  173. package/dist/locale/pt.min.js +1 -1
  174. package/dist/locale/pt.min.mjs +1 -1
  175. package/dist/locale/pt.mjs +1 -1
  176. package/dist/locale/ro.js +1 -1
  177. package/dist/locale/ro.min.js +1 -1
  178. package/dist/locale/ro.min.mjs +1 -1
  179. package/dist/locale/ro.mjs +1 -1
  180. package/dist/locale/ru.js +1 -1
  181. package/dist/locale/ru.min.js +1 -1
  182. package/dist/locale/ru.min.mjs +1 -1
  183. package/dist/locale/ru.mjs +1 -1
  184. package/dist/locale/sk.js +1 -1
  185. package/dist/locale/sk.min.js +1 -1
  186. package/dist/locale/sk.min.mjs +1 -1
  187. package/dist/locale/sk.mjs +1 -1
  188. package/dist/locale/sl.js +1 -1
  189. package/dist/locale/sl.min.js +1 -1
  190. package/dist/locale/sl.min.mjs +1 -1
  191. package/dist/locale/sl.mjs +1 -1
  192. package/dist/locale/sr.js +1 -1
  193. package/dist/locale/sr.min.js +1 -1
  194. package/dist/locale/sr.min.mjs +1 -1
  195. package/dist/locale/sr.mjs +1 -1
  196. package/dist/locale/sv.js +1 -1
  197. package/dist/locale/sv.min.js +1 -1
  198. package/dist/locale/sv.min.mjs +1 -1
  199. package/dist/locale/sv.mjs +1 -1
  200. package/dist/locale/sw.js +1 -1
  201. package/dist/locale/sw.min.js +1 -1
  202. package/dist/locale/sw.min.mjs +1 -1
  203. package/dist/locale/sw.mjs +1 -1
  204. package/dist/locale/ta.js +1 -1
  205. package/dist/locale/ta.min.js +1 -1
  206. package/dist/locale/ta.min.mjs +1 -1
  207. package/dist/locale/ta.mjs +1 -1
  208. package/dist/locale/th.js +1 -1
  209. package/dist/locale/th.min.js +1 -1
  210. package/dist/locale/th.min.mjs +1 -1
  211. package/dist/locale/th.mjs +1 -1
  212. package/dist/locale/tk.js +1 -1
  213. package/dist/locale/tk.min.js +1 -1
  214. package/dist/locale/tk.min.mjs +1 -1
  215. package/dist/locale/tk.mjs +1 -1
  216. package/dist/locale/tr.js +1 -1
  217. package/dist/locale/tr.min.js +1 -1
  218. package/dist/locale/tr.min.mjs +1 -1
  219. package/dist/locale/tr.mjs +1 -1
  220. package/dist/locale/ug-cn.js +1 -1
  221. package/dist/locale/ug-cn.min.js +1 -1
  222. package/dist/locale/ug-cn.min.mjs +1 -1
  223. package/dist/locale/ug-cn.mjs +1 -1
  224. package/dist/locale/uk.js +1 -1
  225. package/dist/locale/uk.min.js +1 -1
  226. package/dist/locale/uk.min.mjs +1 -1
  227. package/dist/locale/uk.mjs +1 -1
  228. package/dist/locale/uz-uz.js +1 -1
  229. package/dist/locale/uz-uz.min.js +1 -1
  230. package/dist/locale/uz-uz.min.mjs +1 -1
  231. package/dist/locale/uz-uz.mjs +1 -1
  232. package/dist/locale/vi.js +1 -1
  233. package/dist/locale/vi.min.js +1 -1
  234. package/dist/locale/vi.min.mjs +1 -1
  235. package/dist/locale/vi.mjs +1 -1
  236. package/dist/locale/zh-cn.js +1 -1
  237. package/dist/locale/zh-cn.min.js +1 -1
  238. package/dist/locale/zh-cn.min.mjs +1 -1
  239. package/dist/locale/zh-cn.mjs +1 -1
  240. package/dist/locale/zh-tw.js +1 -1
  241. package/dist/locale/zh-tw.min.js +1 -1
  242. package/dist/locale/zh-tw.min.mjs +1 -1
  243. package/dist/locale/zh-tw.mjs +1 -1
  244. package/es/components/index.mjs +1 -1
  245. package/es/components/menu/index.mjs +2 -2
  246. package/es/components/menu/src/menu-item-group.mjs +35 -4
  247. package/es/components/menu/src/menu-item-group.mjs.map +1 -1
  248. package/es/components/menu/src/menu-item-group2.mjs +4 -35
  249. package/es/components/menu/src/menu-item-group2.mjs.map +1 -1
  250. package/es/components/select/src/select2.mjs +14 -6
  251. package/es/components/select/src/select2.mjs.map +1 -1
  252. package/es/components/select/src/useSelect.mjs +5 -3
  253. package/es/components/select/src/useSelect.mjs.map +1 -1
  254. package/es/components/select-v2/src/select-dropdown.d.ts +5 -1
  255. package/es/components/select-v2/src/select-dropdown.mjs +6 -5
  256. package/es/components/select-v2/src/select-dropdown.mjs.map +1 -1
  257. package/es/components/select-v2/src/select.mjs +21 -7
  258. package/es/components/select-v2/src/select.mjs.map +1 -1
  259. package/es/components/select-v2/src/useSelect.mjs +5 -3
  260. package/es/components/select-v2/src/useSelect.mjs.map +1 -1
  261. package/es/components/space/src/use-space.mjs +7 -8
  262. package/es/components/space/src/use-space.mjs.map +1 -1
  263. package/es/components/tour/index.d.ts +9 -9
  264. package/es/components/tour/src/helper.d.ts +1 -1
  265. package/es/components/tour/src/helper.mjs +20 -7
  266. package/es/components/tour/src/helper.mjs.map +1 -1
  267. package/es/components/tour/src/step.d.ts +1 -1
  268. package/es/components/tour/src/step.mjs +1 -1
  269. package/es/components/tour/src/step.mjs.map +1 -1
  270. package/es/components/tour/src/step.vue.d.ts +3 -3
  271. package/es/components/tour/src/tour.vue.d.ts +3 -3
  272. package/es/components/tour/src/types.d.ts +1 -1
  273. package/es/index.mjs +1 -1
  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/index.js +1 -1
  278. package/lib/components/menu/index.js +2 -2
  279. package/lib/components/menu/src/menu-item-group.js +35 -4
  280. package/lib/components/menu/src/menu-item-group.js.map +1 -1
  281. package/lib/components/menu/src/menu-item-group2.js +4 -35
  282. package/lib/components/menu/src/menu-item-group2.js.map +1 -1
  283. package/lib/components/select/src/select2.js +14 -6
  284. package/lib/components/select/src/select2.js.map +1 -1
  285. package/lib/components/select/src/useSelect.js +5 -3
  286. package/lib/components/select/src/useSelect.js.map +1 -1
  287. package/lib/components/select-v2/src/select-dropdown.d.ts +5 -1
  288. package/lib/components/select-v2/src/select-dropdown.js +6 -5
  289. package/lib/components/select-v2/src/select-dropdown.js.map +1 -1
  290. package/lib/components/select-v2/src/select.js +21 -7
  291. package/lib/components/select-v2/src/select.js.map +1 -1
  292. package/lib/components/select-v2/src/useSelect.js +5 -3
  293. package/lib/components/select-v2/src/useSelect.js.map +1 -1
  294. package/lib/components/space/src/use-space.js +7 -8
  295. package/lib/components/space/src/use-space.js.map +1 -1
  296. package/lib/components/tour/index.d.ts +9 -9
  297. package/lib/components/tour/src/helper.d.ts +1 -1
  298. package/lib/components/tour/src/helper.js +19 -6
  299. package/lib/components/tour/src/helper.js.map +1 -1
  300. package/lib/components/tour/src/step.d.ts +1 -1
  301. package/lib/components/tour/src/step.js +1 -1
  302. package/lib/components/tour/src/step.js.map +1 -1
  303. package/lib/components/tour/src/step.vue.d.ts +3 -3
  304. package/lib/components/tour/src/tour.vue.d.ts +3 -3
  305. package/lib/components/tour/src/types.d.ts +1 -1
  306. package/lib/index.js +1 -1
  307. package/lib/version.d.ts +1 -1
  308. package/lib/version.js +1 -1
  309. package/lib/version.js.map +1 -1
  310. package/package.json +2 -2
  311. package/theme-chalk/el-select-dropdown-v2.css +1 -1
  312. package/theme-chalk/el-select-dropdown.css +1 -1
  313. package/theme-chalk/el-select-v2.css +1 -1
  314. package/theme-chalk/el-select.css +1 -1
  315. package/theme-chalk/index.css +1 -1
  316. package/theme-chalk/src/select-dropdown.scss +8 -0
  317. package/theme-chalk/src/select.scss +2 -1
  318. package/web-types.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"use-space.mjs","sources":["../../../../../../packages/components/space/src/use-space.ts"],"sourcesContent":["import { computed, ref, watchEffect } from 'vue'\nimport { isArray, isNumber } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { SpaceProps } from './space'\nimport type { CSSProperties, StyleValue } from 'vue'\n\nconst SIZE_MAP = {\n small: 8,\n default: 12,\n large: 16,\n} as const\n\nexport function useSpace(props: SpaceProps) {\n const ns = useNamespace('space')\n\n const classes = computed(() => [ns.b(), ns.m(props.direction), props.class])\n\n const horizontalSize = ref(0)\n const verticalSize = ref(0)\n\n const containerStyle = computed<StyleValue>(() => {\n const wrapKls: CSSProperties =\n props.wrap || props.fill\n ? { flexWrap: 'wrap', marginBottom: `-${verticalSize.value}px` }\n : {}\n const alignment: CSSProperties = {\n alignItems: props.alignment,\n }\n return [wrapKls, alignment, props.style]\n })\n\n const itemStyle = computed<StyleValue>(() => {\n const itemBaseStyle: CSSProperties = {\n paddingBottom: `${verticalSize.value}px`,\n marginRight: `${horizontalSize.value}px`,\n }\n\n const fillStyle: CSSProperties = props.fill\n ? { flexGrow: 1, minWidth: `${props.fillRatio}%` }\n : {}\n\n return [itemBaseStyle, fillStyle]\n })\n\n watchEffect(() => {\n const { size = 'small', wrap, direction: dir, fill } = props\n\n // when the specified size have been given\n if (isArray(size)) {\n const [h = 0, v = 0] = size\n horizontalSize.value = h\n verticalSize.value = v\n } else {\n let val: number\n if (isNumber(size)) {\n val = size\n } else {\n val = SIZE_MAP[size || 'small'] || SIZE_MAP.small\n }\n\n if ((wrap || fill) && dir === 'horizontal') {\n horizontalSize.value = verticalSize.value = val\n } else {\n if (dir === 'horizontal') {\n horizontalSize.value = val\n verticalSize.value = 0\n } else {\n verticalSize.value = val\n horizontalSize.value = 0\n }\n }\n }\n })\n\n return {\n classes,\n containerStyle,\n itemStyle,\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-space.mjs","sources":["../../../../../../packages/components/space/src/use-space.ts"],"sourcesContent":["import { computed, ref, watchEffect } from 'vue'\nimport { isArray, isNumber } from '@element-plus/utils'\nimport { useNamespace } from '@element-plus/hooks'\n\nimport type { SpaceProps } from './space'\nimport type { CSSProperties, StyleValue } from 'vue'\n\nconst SIZE_MAP = {\n small: 8,\n default: 12,\n large: 16,\n} as const\n\nexport function useSpace(props: SpaceProps) {\n const ns = useNamespace('space')\n\n const classes = computed(() => [ns.b(), ns.m(props.direction), props.class])\n\n const horizontalSize = ref(0)\n const verticalSize = ref(0)\n\n const containerStyle = computed<StyleValue>(() => {\n const wrapKls: CSSProperties =\n props.wrap || props.fill ? { flexWrap: 'wrap' } : {}\n const alignment: CSSProperties = {\n alignItems: props.alignment,\n }\n const gap: CSSProperties = {\n rowGap: `${verticalSize.value}px`,\n columnGap: `${horizontalSize.value}px`,\n }\n return [wrapKls, alignment, gap, props.style]\n })\n\n const itemStyle = computed<StyleValue>(() => {\n return props.fill ? { flexGrow: 1, minWidth: `${props.fillRatio}%` } : {}\n })\n\n watchEffect(() => {\n const { size = 'small', wrap, direction: dir, fill } = props\n\n // when the specified size have been given\n if (isArray(size)) {\n const [h = 0, v = 0] = size\n horizontalSize.value = h\n verticalSize.value = v\n } else {\n let val: number\n if (isNumber(size)) {\n val = size\n } else {\n val = SIZE_MAP[size || 'small'] || SIZE_MAP.small\n }\n\n if ((wrap || fill) && dir === 'horizontal') {\n horizontalSize.value = verticalSize.value = val\n } else {\n if (dir === 'horizontal') {\n horizontalSize.value = val\n verticalSize.value = 0\n } else {\n verticalSize.value = val\n horizontalSize.value = 0\n }\n }\n }\n })\n\n return {\n classes,\n containerStyle,\n itemStyle,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -108,7 +108,7 @@ export declare const ElTour: import("@element-plus/nightly/es/utils").SFCWithIns
108
108
  cssVarBlockName: (name: string) => string;
109
109
  };
110
110
  steps: import("vue").Ref<{
111
- target?: HTMLElement | null | undefined;
111
+ target?: string | HTMLElement | (() => HTMLElement | null) | null | undefined;
112
112
  showArrow?: boolean | undefined;
113
113
  placement?: import("@floating-ui/core").Placement | undefined;
114
114
  contentStyle?: {
@@ -3184,7 +3184,7 @@ export declare const ElTour: import("@element-plus/nightly/es/utils").SFCWithIns
3184
3184
  current: import("vue").Ref<number> | import("vue").WritableComputedRef<number>;
3185
3185
  total: import("vue").ComputedRef<number>;
3186
3186
  currentStep: import("vue").ComputedRef<{
3187
- target?: HTMLElement | null | undefined;
3187
+ target?: string | HTMLElement | (() => HTMLElement | null) | null | undefined;
3188
3188
  showArrow?: boolean | undefined;
3189
3189
  placement?: import("@floating-ui/core").Placement | undefined;
3190
3190
  contentStyle?: {
@@ -6257,7 +6257,7 @@ export declare const ElTour: import("@element-plus/nightly/es/utils").SFCWithIns
6257
6257
  behavior?: ScrollBehavior | undefined;
6258
6258
  } | undefined;
6259
6259
  }>;
6260
- currentTarget: import("vue").ComputedRef<HTMLElement | null | undefined>;
6260
+ currentTarget: import("vue").ComputedRef<string | HTMLElement | (() => HTMLElement | null) | null | undefined>;
6261
6261
  kls: import("vue").ComputedRef<string[]>;
6262
6262
  mergedPlacement: import("vue").ComputedRef<"top" | "bottom" | "right" | "left" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end">;
6263
6263
  mergedContentStyle: import("vue").ComputedRef<import("vue").CSSProperties | undefined>;
@@ -6537,7 +6537,7 @@ export declare const ElTour: import("@element-plus/nightly/es/utils").SFCWithIns
6537
6537
  }>> & {
6538
6538
  TourStep: import("vue").DefineComponent<{
6539
6539
  target: {
6540
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
6540
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
6541
6541
  readonly required: false;
6542
6542
  readonly validator: ((val: unknown) => boolean) | undefined;
6543
6543
  __epPropKey: true;
@@ -6592,7 +6592,7 @@ export declare const ElTour: import("@element-plus/nightly/es/utils").SFCWithIns
6592
6592
  }, {
6593
6593
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
6594
6594
  target: {
6595
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
6595
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
6596
6596
  readonly required: false;
6597
6597
  readonly validator: ((val: unknown) => boolean) | undefined;
6598
6598
  __epPropKey: true;
@@ -7020,7 +7020,7 @@ export declare const ElTour: import("@element-plus/nightly/es/utils").SFCWithIns
7020
7020
  close: () => boolean;
7021
7021
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7022
7022
  target: {
7023
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
7023
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
7024
7024
  readonly required: false;
7025
7025
  readonly validator: ((val: unknown) => boolean) | undefined;
7026
7026
  __epPropKey: true;
@@ -7082,7 +7082,7 @@ export declare const ElTour: import("@element-plus/nightly/es/utils").SFCWithIns
7082
7082
  };
7083
7083
  export declare const ElTourStep: import("@element-plus/nightly/es/utils").SFCWithInstall<import("vue").DefineComponent<{
7084
7084
  target: {
7085
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
7085
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
7086
7086
  readonly required: false;
7087
7087
  readonly validator: ((val: unknown) => boolean) | undefined;
7088
7088
  __epPropKey: true;
@@ -7137,7 +7137,7 @@ export declare const ElTourStep: import("@element-plus/nightly/es/utils").SFCWit
7137
7137
  }, {
7138
7138
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
7139
7139
  target: {
7140
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
7140
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
7141
7141
  readonly required: false;
7142
7142
  readonly validator: ((val: unknown) => boolean) | undefined;
7143
7143
  __epPropKey: true;
@@ -7565,7 +7565,7 @@ export declare const ElTourStep: import("@element-plus/nightly/es/utils").SFCWit
7565
7565
  close: () => boolean;
7566
7566
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7567
7567
  target: {
7568
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
7568
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
7569
7569
  readonly required: false;
7570
7570
  readonly validator: ((val: unknown) => boolean) | undefined;
7571
7571
  __epPropKey: true;
@@ -2,7 +2,7 @@ import type { CSSProperties, Component, ComputedRef, InjectionKey, Ref, SetupCon
2
2
  import type { UseNamespaceReturn } from '@element-plus/nightly/es/hooks';
3
3
  import type { TourGap, TourMask } from './types';
4
4
  import type { Placement, Strategy, VirtualElement } from '@floating-ui/dom';
5
- export declare const useTarget: (target: Ref<HTMLElement | null | undefined>, open: Ref<boolean>, gap: Ref<TourGap>, mergedMask: Ref<TourMask>, scrollIntoViewOptions: Ref<boolean | ScrollIntoViewOptions>) => {
5
+ export declare const useTarget: (target: Ref<string | HTMLElement | (() => HTMLElement | null) | null | undefined>, open: Ref<boolean>, gap: Ref<TourGap>, mergedMask: Ref<TourMask>, scrollIntoViewOptions: Ref<boolean | ScrollIntoViewOptions>) => {
6
6
  mergedPosInfo: ComputedRef<{
7
7
  left: number;
8
8
  top: number;
@@ -1,21 +1,33 @@
1
1
  import { ref, onMounted, watch, onBeforeUnmount, computed, isVNode, camelize, unref, watchEffect } from 'vue';
2
2
  import { offset, flip, shift, arrow, computePosition, autoUpdate, detectOverflow } from '@floating-ui/dom';
3
3
  import '../../../utils/index.mjs';
4
- import { isArray, hasOwn } from '@vue/shared';
4
+ import { isString, isFunction, isArray, hasOwn } from '@vue/shared';
5
5
  import { isClient } from '@vueuse/core';
6
6
  import { keysOf } from '../../../utils/objects.mjs';
7
7
 
8
8
  const useTarget = (target, open, gap, mergedMask, scrollIntoViewOptions) => {
9
9
  const posInfo = ref(null);
10
+ const getTargetEl = () => {
11
+ let targetEl;
12
+ if (isString(target.value)) {
13
+ targetEl = document.querySelector(target.value);
14
+ } else if (isFunction(target.value)) {
15
+ targetEl = target.value();
16
+ } else {
17
+ targetEl = target.value;
18
+ }
19
+ return targetEl;
20
+ };
10
21
  const updatePosInfo = () => {
11
- if (!target.value || !open.value) {
22
+ const targetEl = getTargetEl();
23
+ if (!targetEl || !open.value) {
12
24
  posInfo.value = null;
13
25
  return;
14
26
  }
15
- if (!isInViewPort(target.value) && open.value) {
16
- target.value.scrollIntoView(scrollIntoViewOptions.value);
27
+ if (!isInViewPort(targetEl) && open.value) {
28
+ targetEl.scrollIntoView(scrollIntoViewOptions.value);
17
29
  }
18
- const { left, top, width, height } = target.value.getBoundingClientRect();
30
+ const { left, top, width, height } = targetEl.getBoundingClientRect();
19
31
  posInfo.value = {
20
32
  left,
21
33
  top,
@@ -55,8 +67,9 @@ const useTarget = (target, open, gap, mergedMask, scrollIntoViewOptions) => {
55
67
  };
56
68
  });
57
69
  const triggerTarget = computed(() => {
58
- if (!mergedMask.value || !target.value || !window.DOMRect) {
59
- return target.value || void 0;
70
+ const targetEl = getTargetEl();
71
+ if (!mergedMask.value || !targetEl || !window.DOMRect) {
72
+ return targetEl || void 0;
60
73
  }
61
74
  return {
62
75
  getBoundingClientRect() {
@@ -1 +1 @@
1
- {"version":3,"file":"helper.mjs","sources":["../../../../../../packages/components/tour/src/helper.ts"],"sourcesContent":["import {\n camelize,\n computed,\n isVNode,\n onBeforeUnmount,\n onMounted,\n ref,\n unref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n arrow,\n autoUpdate,\n computePosition,\n detectOverflow,\n flip,\n offset as offsetMiddelware,\n shift,\n} from '@floating-ui/dom'\nimport { hasOwn, isArray, isClient, keysOf } from '@element-plus/utils'\n\nimport type {\n CSSProperties,\n Component,\n ComputedRef,\n InjectionKey,\n Ref,\n SetupContext,\n VNode,\n} from 'vue'\nimport type { UseNamespaceReturn } from '@element-plus/hooks'\nimport type { PosInfo, TourGap, TourMask } from './types'\nimport type {\n ComputePositionReturn,\n Middleware,\n Placement,\n Strategy,\n VirtualElement,\n} from '@floating-ui/dom'\n\nexport const useTarget = (\n target: Ref<HTMLElement | null | undefined>,\n open: Ref<boolean>,\n gap: Ref<TourGap>,\n mergedMask: Ref<TourMask>,\n scrollIntoViewOptions: Ref<boolean | ScrollIntoViewOptions>\n) => {\n const posInfo: Ref<PosInfo | null> = ref(null)\n\n const updatePosInfo = () => {\n if (!target.value || !open.value) {\n posInfo.value = null\n return\n }\n if (!isInViewPort(target.value) && open.value) {\n target.value.scrollIntoView(scrollIntoViewOptions.value)\n }\n const { left, top, width, height } = target.value.getBoundingClientRect()\n posInfo.value = {\n left,\n top,\n width,\n height,\n radius: 0,\n }\n }\n\n onMounted(() => {\n watch(\n [open, target],\n () => {\n updatePosInfo()\n },\n {\n immediate: true,\n }\n )\n window.addEventListener('resize', updatePosInfo)\n })\n\n onBeforeUnmount(() => {\n window.removeEventListener('resize', updatePosInfo)\n })\n\n const getGapOffset = (index: number) =>\n (isArray(gap.value.offset) ? gap.value.offset[index] : gap.value.offset) ??\n 6\n\n const mergedPosInfo = computed(() => {\n if (!posInfo.value) return posInfo.value\n\n const gapOffsetX = getGapOffset(0)\n const gapOffsetY = getGapOffset(1)\n const gapRadius = gap.value?.radius || 2\n\n return {\n left: posInfo.value.left - gapOffsetX,\n top: posInfo.value.top - gapOffsetY,\n width: posInfo.value.width + gapOffsetX * 2,\n height: posInfo.value.height + gapOffsetY * 2,\n radius: gapRadius,\n }\n })\n\n const triggerTarget = computed(() => {\n if (!mergedMask.value || !target.value || !window.DOMRect) {\n return target.value || undefined\n }\n\n return {\n getBoundingClientRect() {\n return window.DOMRect.fromRect({\n width: mergedPosInfo.value?.width || 0,\n height: mergedPosInfo.value?.height || 0,\n x: mergedPosInfo.value?.left || 0,\n y: mergedPosInfo.value?.top || 0,\n })\n },\n }\n })\n\n return {\n mergedPosInfo,\n triggerTarget,\n }\n}\n\nexport interface TourContext {\n current: Ref<number>\n total: ComputedRef<number>\n showClose: Ref<boolean>\n closeIcon: Ref<string | Component>\n mergedType: Ref<'default' | 'primary' | undefined>\n ns: UseNamespaceReturn\n slots: SetupContext['slots']\n updateModelValue(modelValue: boolean): void\n onClose(): void\n onFinish(): void\n onChange(): void\n}\n\nexport const tourKey: InjectionKey<TourContext> = Symbol('ElTour')\n\nfunction isInViewPort(element: HTMLElement) {\n const viewWidth = window.innerWidth || document.documentElement.clientWidth\n const viewHeight = window.innerHeight || document.documentElement.clientHeight\n const { top, right, bottom, left } = element.getBoundingClientRect()\n\n return top >= 0 && left >= 0 && right <= viewWidth && bottom <= viewHeight\n}\n\nconst isSameProps = (a: Record<string, any>, b: Record<string, any>) => {\n if (Object.keys(a).length !== Object.keys(b).length) return false\n for (const key in a) {\n if (a[key] !== b[key]) {\n return false\n }\n }\n return true\n}\n\nexport function isSameSteps(a: any[], b: any[]) {\n if (a.length !== b.length) return false\n for (const [index] of a.entries()) {\n if (isSameProps(a[index], b[index])) {\n return false\n }\n }\n return true\n}\n\nexport const getNormalizedProps = (node: VNode, booleanKeys: string[]) => {\n if (!isVNode(node)) {\n return {}\n }\n\n const raw = node.props || {}\n const type = (node.type as any)?.props || {}\n const props: Record<string, any> = {}\n Object.keys(type).forEach((key) => {\n if (hasOwn(type[key], 'default')) {\n props[key] = type[key].default\n }\n })\n\n Object.keys(raw).forEach((key) => {\n const cameKey = camelize(key)\n props[cameKey] = raw[key]\n if (booleanKeys.includes(cameKey) && props[cameKey] === '') {\n props[cameKey] = true\n }\n })\n\n return props\n}\n\nexport const useFloating = (\n referenceRef: Ref<HTMLElement | VirtualElement | null>,\n contentRef: Ref<HTMLElement | null>,\n arrowRef: Ref<HTMLElement | null>,\n placement: Ref<Placement | undefined>,\n strategy: Ref<Strategy>,\n offset: Ref<number>,\n zIndex: Ref<number>,\n showArrow: Ref<boolean>\n) => {\n const x = ref<number>()\n const y = ref<number>()\n const middlewareData = ref<ComputePositionReturn['middlewareData']>({})\n\n const states = {\n x,\n y,\n placement,\n strategy,\n middlewareData,\n } as const\n\n const middleware = computed(() => {\n const _middleware: Middleware[] = [\n offsetMiddelware(unref(offset)),\n flip(),\n shift(),\n overflowMiddleware(),\n ]\n\n if (unref(showArrow) && unref(arrowRef)) {\n _middleware.push(\n arrow({\n element: unref(arrowRef)!,\n })\n )\n }\n return _middleware\n })\n\n const update = async () => {\n if (!isClient) return\n\n const referenceEl = unref(referenceRef)\n const contentEl = unref(contentRef)\n if (!referenceEl || !contentEl) return\n\n const data = await computePosition(referenceEl, contentEl, {\n placement: unref(placement),\n strategy: unref(strategy),\n middleware: unref(middleware),\n })\n\n keysOf(states).forEach((key) => {\n states[key].value = data[key]\n })\n }\n\n const contentStyle = computed<CSSProperties>(() => {\n if (!unref(referenceRef)) {\n return {\n position: 'fixed',\n top: '50%',\n left: '50%',\n transform: 'translate3d(-50%, -50%, 0)',\n maxWidth: '100vw',\n zIndex: unref(zIndex),\n }\n }\n\n const { overflow } = unref(middlewareData)\n\n return {\n position: unref(strategy),\n zIndex: unref(zIndex),\n top: unref(y) != null ? `${unref(y)}px` : '',\n left: unref(x) != null ? `${unref(x)}px` : '',\n maxWidth: overflow?.maxWidth ? `${overflow?.maxWidth}px` : '',\n }\n })\n\n const arrowStyle = computed<CSSProperties>(() => {\n if (!unref(showArrow)) return {}\n\n const { arrow } = unref(middlewareData)\n return {\n left: arrow?.x != null ? `${arrow?.x}px` : '',\n top: arrow?.y != null ? `${arrow?.y}px` : '',\n }\n })\n\n let cleanup: any\n onMounted(() => {\n cleanup = autoUpdate(unref(referenceRef)!, unref(contentRef)!, update)\n\n watchEffect(() => {\n update()\n })\n })\n\n onBeforeUnmount(() => {\n cleanup && cleanup()\n })\n\n return {\n update,\n contentStyle,\n arrowStyle,\n }\n}\n\nconst overflowMiddleware = (): Middleware => {\n return {\n name: 'overflow',\n async fn(state) {\n const overflow = await detectOverflow(state)\n let overWidth = 0\n if (overflow.left > 0) overWidth = overflow.left\n if (overflow.right > 0) overWidth = overflow.right\n const floatingWidth = state.rects.floating.width\n return {\n data: {\n maxWidth: floatingWidth - overWidth,\n },\n }\n },\n }\n}\n"],"names":["offset","offsetMiddelware"],"mappings":";;;;;;;AAqBY,MAAC,SAAS,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,qBAAqB,KAAK;AACnF,EAAE,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5B,EAAE,MAAM,aAAa,GAAG,MAAM;AAC9B,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;AACtC,MAAM,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;AAC3B,MAAM,OAAO;AACb,KAAK;AACL,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE;AACnD,MAAM,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;AAC/D,KAAK;AACL,IAAI,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC;AAC9E,IAAI,OAAO,CAAC,KAAK,GAAG;AACpB,MAAM,IAAI;AACV,MAAM,GAAG;AACT,MAAM,KAAK;AACX,MAAM,MAAM;AACZ,MAAM,MAAM,EAAE,CAAC;AACf,KAAK,CAAC;AACN,GAAG,CAAC;AACJ,EAAE,SAAS,CAAC,MAAM;AAClB,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM;AAChC,MAAM,aAAa,EAAE,CAAC;AACtB,KAAK,EAAE;AACP,MAAM,SAAS,EAAE,IAAI;AACrB,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AACrD,GAAG,CAAC,CAAC;AACL,EAAE,eAAe,CAAC,MAAM;AACxB,IAAI,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;AACxD,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,YAAY,GAAG,CAAC,KAAK,KAAK;AAClC,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AAC1G,GAAG,CAAC;AACJ,EAAE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;AACvC,IAAI,IAAI,EAAE,CAAC;AACX,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK;AACtB,MAAM,OAAO,OAAO,CAAC,KAAK,CAAC;AAC3B,IAAI,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;AACvC,IAAI,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;AACvC,IAAI,MAAM,SAAS,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC;AAC3E,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,UAAU;AAC3C,MAAM,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,UAAU;AACzC,MAAM,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,UAAU,GAAG,CAAC;AACjD,MAAM,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,GAAG,CAAC;AACnD,MAAM,MAAM,EAAE,SAAS;AACvB,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM;AACvC,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AAC/D,MAAM,OAAO,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC;AACpC,KAAK;AACL,IAAI,OAAO;AACX,MAAM,qBAAqB,GAAG;AAC9B,QAAQ,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAC3B,QAAQ,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;AACvC,UAAU,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,KAAK,CAAC;AAC9E,UAAU,MAAM,EAAE,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,KAAK,CAAC;AAChF,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,KAAK,CAAC;AACzE,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,aAAa,CAAC,KAAK,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC;AACxE,SAAS,CAAC,CAAC;AACX,OAAO;AACP,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,aAAa;AACjB,IAAI,aAAa;AACjB,GAAG,CAAC;AACJ,EAAE;AACU,MAAC,OAAO,GAAG,MAAM,CAAC,QAAQ,EAAE;AACxC,SAAS,YAAY,CAAC,OAAO,EAAE;AAC/B,EAAE,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,IAAI,QAAQ,CAAC,eAAe,CAAC,WAAW,CAAC;AAC9E,EAAE,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,IAAI,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC;AACjF,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;AACvE,EAAE,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,SAAS,IAAI,MAAM,IAAI,UAAU,CAAC;AAC7E,CAAC;AACD,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC9B,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM;AACrD,IAAI,OAAO,KAAK,CAAC;AACjB,EAAE,KAAK,MAAM,GAAG,IAAI,CAAC,EAAE;AACvB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE;AAC3B,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK;AACL,GAAG;AACH,EAAE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AACK,SAAS,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE;AAClC,EAAE,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;AAC3B,IAAI,OAAO,KAAK,CAAC;AACjB,EAAE,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;AACrC,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;AACzC,MAAM,OAAO,KAAK,CAAC;AACnB,KAAK;AACL,GAAG;AACH,EAAE,OAAO,IAAI,CAAC;AACd,CAAC;AACW,MAAC,kBAAkB,GAAG,CAAC,IAAI,EAAE,WAAW,KAAK;AACzD,EAAE,IAAI,EAAE,CAAC;AACT,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;AACtB,IAAI,OAAO,EAAE,CAAC;AACd,GAAG;AACH,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;AAC/B,EAAE,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,IAAI,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC;AACpE,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;AACnB,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK;AACrC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,EAAE;AACtC,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC;AACrC,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK;AACpC,IAAI,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;AAClC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;AAC9B,IAAI,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE;AAChE,MAAM,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AAC5B,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,OAAO,KAAK,CAAC;AACf,EAAE;AACU,MAAC,WAAW,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAEA,QAAM,EAAE,MAAM,EAAE,SAAS,KAAK;AACnH,EAAE,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC;AAClB,EAAE,MAAM,CAAC,GAAG,GAAG,EAAE,CAAC;AAClB,EAAE,MAAM,cAAc,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;AACjC,EAAE,MAAM,MAAM,GAAG;AACjB,IAAI,CAAC;AACL,IAAI,CAAC;AACL,IAAI,SAAS;AACb,IAAI,QAAQ;AACZ,IAAI,cAAc;AAClB,GAAG,CAAC;AACJ,EAAE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM;AACpC,IAAI,MAAM,WAAW,GAAG;AACxB,MAAMC,MAAgB,CAAC,KAAK,CAACD,QAAM,CAAC,CAAC;AACrC,MAAM,IAAI,EAAE;AACZ,MAAM,KAAK,EAAE;AACb,MAAM,kBAAkB,EAAE;AAC1B,KAAK,CAAC;AACN,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE;AAC7C,MAAM,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;AAC7B,QAAQ,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC;AAChC,OAAO,CAAC,CAAC,CAAC;AACV,KAAK;AACL,IAAI,OAAO,WAAW,CAAC;AACvB,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,MAAM,GAAG,YAAY;AAC7B,IAAI,IAAI,CAAC,QAAQ;AACjB,MAAM,OAAO;AACb,IAAI,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;AAC5C,IAAI,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;AACxC,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS;AAClC,MAAM,OAAO;AACb,IAAI,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,WAAW,EAAE,SAAS,EAAE;AAC/D,MAAM,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC;AACjC,MAAM,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;AAC/B,MAAM,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC;AACnC,KAAK,CAAC,CAAC;AACP,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,KAAK;AACpC,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;AACpC,KAAK,CAAC,CAAC;AACP,GAAG,CAAC;AACJ,EAAE,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM;AACtC,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE;AAC9B,MAAM,OAAO;AACb,QAAQ,QAAQ,EAAE,OAAO;AACzB,QAAQ,GAAG,EAAE,KAAK;AAClB,QAAQ,IAAI,EAAE,KAAK;AACnB,QAAQ,SAAS,EAAE,4BAA4B;AAC/C,QAAQ,QAAQ,EAAE,OAAO;AACzB,QAAQ,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;AAC7B,OAAO,CAAC;AACR,KAAK;AACL,IAAI,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;AAC/C,IAAI,OAAO;AACX,MAAM,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;AAC/B,MAAM,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC;AAC3B,MAAM,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;AAClD,MAAM,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;AACnD,MAAM,QAAQ,EAAE,CAAC,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,QAAQ,IAAI,CAAC,EAAE,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE;AAC3H,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM;AACpC,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;AACzB,MAAM,OAAO,EAAE,CAAC;AAChB,IAAI,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;AACpD,IAAI,OAAO;AACX,MAAM,IAAI,EAAE,CAAC,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;AACzG,MAAM,GAAG,EAAE,CAAC,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,EAAE,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE;AACxG,KAAK,CAAC;AACN,GAAG,CAAC,CAAC;AACL,EAAE,IAAI,OAAO,CAAC;AACd,EAAE,SAAS,CAAC,MAAM;AAClB,IAAI,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;AACzE,IAAI,WAAW,CAAC,MAAM;AACtB,MAAM,MAAM,EAAE,CAAC;AACf,KAAK,CAAC,CAAC;AACP,GAAG,CAAC,CAAC;AACL,EAAE,eAAe,CAAC,MAAM;AACxB,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;AACzB,GAAG,CAAC,CAAC;AACL,EAAE,OAAO;AACT,IAAI,MAAM;AACV,IAAI,YAAY;AAChB,IAAI,UAAU;AACd,GAAG,CAAC;AACJ,EAAE;AACF,MAAM,kBAAkB,GAAG,MAAM;AACjC,EAAE,OAAO;AACT,IAAI,IAAI,EAAE,UAAU;AACpB,IAAI,MAAM,EAAE,CAAC,KAAK,EAAE;AACpB,MAAM,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;AACnD,MAAM,IAAI,SAAS,GAAG,CAAC,CAAC;AACxB,MAAM,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC;AAC3B,QAAQ,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC;AAClC,MAAM,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC;AAC5B,QAAQ,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC;AACnC,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;AACvD,MAAM,OAAO;AACb,QAAQ,IAAI,EAAE;AACd,UAAU,QAAQ,EAAE,aAAa,GAAG,SAAS;AAC7C,SAAS;AACT,OAAO,CAAC;AACR,KAAK;AACL,GAAG,CAAC;AACJ,CAAC;;;;"}
1
+ {"version":3,"file":"helper.mjs","sources":["../../../../../../packages/components/tour/src/helper.ts"],"sourcesContent":["import {\n camelize,\n computed,\n isVNode,\n onBeforeUnmount,\n onMounted,\n ref,\n unref,\n watch,\n watchEffect,\n} from 'vue'\nimport {\n arrow,\n autoUpdate,\n computePosition,\n detectOverflow,\n flip,\n offset as offsetMiddelware,\n shift,\n} from '@floating-ui/dom'\nimport {\n hasOwn,\n isArray,\n isClient,\n isFunction,\n isString,\n keysOf,\n} from '@element-plus/utils'\n\nimport type {\n CSSProperties,\n Component,\n ComputedRef,\n InjectionKey,\n Ref,\n SetupContext,\n VNode,\n} from 'vue'\nimport type { UseNamespaceReturn } from '@element-plus/hooks'\nimport type { PosInfo, TourGap, TourMask } from './types'\nimport type {\n ComputePositionReturn,\n Middleware,\n Placement,\n Strategy,\n VirtualElement,\n} from '@floating-ui/dom'\n\nexport const useTarget = (\n target: Ref<\n string | HTMLElement | (() => HTMLElement | null) | null | undefined\n >,\n open: Ref<boolean>,\n gap: Ref<TourGap>,\n mergedMask: Ref<TourMask>,\n scrollIntoViewOptions: Ref<boolean | ScrollIntoViewOptions>\n) => {\n const posInfo: Ref<PosInfo | null> = ref(null)\n\n const getTargetEl = () => {\n let targetEl: HTMLElement | null | undefined\n if (isString(target.value)) {\n targetEl = document.querySelector<HTMLElement>(target.value)\n } else if (isFunction(target.value)) {\n targetEl = target.value()\n } else {\n targetEl = target.value\n }\n return targetEl\n }\n\n const updatePosInfo = () => {\n const targetEl = getTargetEl()\n if (!targetEl || !open.value) {\n posInfo.value = null\n return\n }\n if (!isInViewPort(targetEl) && open.value) {\n targetEl.scrollIntoView(scrollIntoViewOptions.value)\n }\n const { left, top, width, height } = targetEl.getBoundingClientRect()\n posInfo.value = {\n left,\n top,\n width,\n height,\n radius: 0,\n }\n }\n\n onMounted(() => {\n watch(\n [open, target],\n () => {\n updatePosInfo()\n },\n {\n immediate: true,\n }\n )\n window.addEventListener('resize', updatePosInfo)\n })\n\n onBeforeUnmount(() => {\n window.removeEventListener('resize', updatePosInfo)\n })\n\n const getGapOffset = (index: number) =>\n (isArray(gap.value.offset) ? gap.value.offset[index] : gap.value.offset) ??\n 6\n\n const mergedPosInfo = computed(() => {\n if (!posInfo.value) return posInfo.value\n\n const gapOffsetX = getGapOffset(0)\n const gapOffsetY = getGapOffset(1)\n const gapRadius = gap.value?.radius || 2\n\n return {\n left: posInfo.value.left - gapOffsetX,\n top: posInfo.value.top - gapOffsetY,\n width: posInfo.value.width + gapOffsetX * 2,\n height: posInfo.value.height + gapOffsetY * 2,\n radius: gapRadius,\n }\n })\n\n const triggerTarget = computed(() => {\n const targetEl = getTargetEl()\n if (!mergedMask.value || !targetEl || !window.DOMRect) {\n return targetEl || undefined\n }\n\n return {\n getBoundingClientRect() {\n return window.DOMRect.fromRect({\n width: mergedPosInfo.value?.width || 0,\n height: mergedPosInfo.value?.height || 0,\n x: mergedPosInfo.value?.left || 0,\n y: mergedPosInfo.value?.top || 0,\n })\n },\n }\n })\n\n return {\n mergedPosInfo,\n triggerTarget,\n }\n}\n\nexport interface TourContext {\n current: Ref<number>\n total: ComputedRef<number>\n showClose: Ref<boolean>\n closeIcon: Ref<string | Component>\n mergedType: Ref<'default' | 'primary' | undefined>\n ns: UseNamespaceReturn\n slots: SetupContext['slots']\n updateModelValue(modelValue: boolean): void\n onClose(): void\n onFinish(): void\n onChange(): void\n}\n\nexport const tourKey: InjectionKey<TourContext> = Symbol('ElTour')\n\nfunction isInViewPort(element: HTMLElement) {\n const viewWidth = window.innerWidth || document.documentElement.clientWidth\n const viewHeight = window.innerHeight || document.documentElement.clientHeight\n const { top, right, bottom, left } = element.getBoundingClientRect()\n\n return top >= 0 && left >= 0 && right <= viewWidth && bottom <= viewHeight\n}\n\nconst isSameProps = (a: Record<string, any>, b: Record<string, any>) => {\n if (Object.keys(a).length !== Object.keys(b).length) return false\n for (const key in a) {\n if (a[key] !== b[key]) {\n return false\n }\n }\n return true\n}\n\nexport function isSameSteps(a: any[], b: any[]) {\n if (a.length !== b.length) return false\n for (const [index] of a.entries()) {\n if (isSameProps(a[index], b[index])) {\n return false\n }\n }\n return true\n}\n\nexport const getNormalizedProps = (node: VNode, booleanKeys: string[]) => {\n if (!isVNode(node)) {\n return {}\n }\n\n const raw = node.props || {}\n const type = (node.type as any)?.props || {}\n const props: Record<string, any> = {}\n Object.keys(type).forEach((key) => {\n if (hasOwn(type[key], 'default')) {\n props[key] = type[key].default\n }\n })\n\n Object.keys(raw).forEach((key) => {\n const cameKey = camelize(key)\n props[cameKey] = raw[key]\n if (booleanKeys.includes(cameKey) && props[cameKey] === '') {\n props[cameKey] = true\n }\n })\n\n return props\n}\n\nexport const useFloating = (\n referenceRef: Ref<HTMLElement | VirtualElement | null>,\n contentRef: Ref<HTMLElement | null>,\n arrowRef: Ref<HTMLElement | null>,\n placement: Ref<Placement | undefined>,\n strategy: Ref<Strategy>,\n offset: Ref<number>,\n zIndex: Ref<number>,\n showArrow: Ref<boolean>\n) => {\n const x = ref<number>()\n const y = ref<number>()\n const middlewareData = ref<ComputePositionReturn['middlewareData']>({})\n\n const states = {\n x,\n y,\n placement,\n strategy,\n middlewareData,\n } as const\n\n const middleware = computed(() => {\n const _middleware: Middleware[] = [\n offsetMiddelware(unref(offset)),\n flip(),\n shift(),\n overflowMiddleware(),\n ]\n\n if (unref(showArrow) && unref(arrowRef)) {\n _middleware.push(\n arrow({\n element: unref(arrowRef)!,\n })\n )\n }\n return _middleware\n })\n\n const update = async () => {\n if (!isClient) return\n\n const referenceEl = unref(referenceRef)\n const contentEl = unref(contentRef)\n if (!referenceEl || !contentEl) return\n\n const data = await computePosition(referenceEl, contentEl, {\n placement: unref(placement),\n strategy: unref(strategy),\n middleware: unref(middleware),\n })\n\n keysOf(states).forEach((key) => {\n states[key].value = data[key]\n })\n }\n\n const contentStyle = computed<CSSProperties>(() => {\n if (!unref(referenceRef)) {\n return {\n position: 'fixed',\n top: '50%',\n left: '50%',\n transform: 'translate3d(-50%, -50%, 0)',\n maxWidth: '100vw',\n zIndex: unref(zIndex),\n }\n }\n\n const { overflow } = unref(middlewareData)\n\n return {\n position: unref(strategy),\n zIndex: unref(zIndex),\n top: unref(y) != null ? `${unref(y)}px` : '',\n left: unref(x) != null ? `${unref(x)}px` : '',\n maxWidth: overflow?.maxWidth ? `${overflow?.maxWidth}px` : '',\n }\n })\n\n const arrowStyle = computed<CSSProperties>(() => {\n if (!unref(showArrow)) return {}\n\n const { arrow } = unref(middlewareData)\n return {\n left: arrow?.x != null ? `${arrow?.x}px` : '',\n top: arrow?.y != null ? `${arrow?.y}px` : '',\n }\n })\n\n let cleanup: any\n onMounted(() => {\n cleanup = autoUpdate(unref(referenceRef)!, unref(contentRef)!, update)\n\n watchEffect(() => {\n update()\n })\n })\n\n onBeforeUnmount(() => {\n cleanup && cleanup()\n })\n\n return {\n update,\n contentStyle,\n arrowStyle,\n }\n}\n\nconst overflowMiddleware = (): Middleware => {\n return {\n name: 'overflow',\n async fn(state) {\n const overflow = await detectOverflow(state)\n let overWidth = 0\n if (overflow.left > 0) overWidth = overflow.left\n if (overflow.right > 0) overWidth = overflow.right\n const floatingWidth = state.rects.floating.width\n return {\n data: {\n maxWidth: floatingWidth - overWidth,\n },\n }\n },\n }\n}\n"],"names":["offset","offsetMiddelware"],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { CSSProperties, ExtractPropTypes } from 'vue';
2
2
  import type { TourBtnProps, TourMask } from './types';
3
3
  export declare const tourStepProps: {
4
4
  target: {
5
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
5
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
6
6
  readonly required: false;
7
7
  readonly validator: ((val: unknown) => boolean) | undefined;
8
8
  __epPropKey: true;
@@ -5,7 +5,7 @@ import { iconPropType } from '../../../utils/vue/icon.mjs';
5
5
 
6
6
  const tourStepProps = buildProps({
7
7
  target: {
8
- type: definePropType(Object)
8
+ type: definePropType([String, Object, Function])
9
9
  },
10
10
  title: String,
11
11
  description: String,
@@ -1 +1 @@
1
- {"version":3,"file":"step.mjs","sources":["../../../../../../packages/components/tour/src/step.ts"],"sourcesContent":["import { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { tourContentProps } from './content'\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { TourBtnProps, TourMask } from './types'\n\nexport const tourStepProps = buildProps({\n /**\n * @description get the element the guide card points to. empty makes it show in center of screen\n */\n target: {\n type: definePropType<HTMLElement | null>(Object),\n },\n /**\n * @description the title of the tour content\n */\n title: String,\n /**\n * @description description\n */\n description: String,\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n /**\n * @description custom close icon, default is Close\n */\n closeIcon: {\n type: iconPropType,\n },\n /**\n * @description whether to show the arrow\n */\n showArrow: {\n type: Boolean,\n default: true,\n },\n /**\n * @description position of the guide card relative to the target element\n */\n placement: tourContentProps.placement,\n /**\n * @description whether to enable masking, change mask style and fill color by pass custom props\n */\n mask: {\n type: definePropType<TourMask>([Boolean, Object]),\n },\n /**\n * @description custom style for content\n */\n contentStyle: {\n type: definePropType<CSSProperties>([Object]),\n },\n /**\n * @description properties of the previous button\n */\n prevButtonProps: {\n type: definePropType<TourBtnProps>(Object),\n },\n /**\n * @description properties of the Next button\n */\n nextButtonProps: {\n type: definePropType<TourBtnProps>(Object),\n },\n /**\n * @description support pass custom scrollIntoView options\n */\n scrollIntoViewOptions: {\n type: definePropType<boolean | ScrollIntoViewOptions>([Boolean, Object]),\n },\n /**\n * @description type, affects the background color and text color\n */\n type: {\n type: definePropType<'defalut' | 'primary'>(String),\n },\n})\n\nexport type TourStepProps = ExtractPropTypes<typeof tourStepProps>\n\nexport const tourStepEmits = {\n close: () => true,\n}\nexport type TourStepEmits = typeof tourStepEmits\n"],"names":[],"mappings":";;;;;AAEY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE,gBAAgB,CAAC,SAAS;AACvC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3C,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAClC,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,qBAAqB,EAAE;AACzB,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3C,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;"}
1
+ {"version":3,"file":"step.mjs","sources":["../../../../../../packages/components/tour/src/step.ts"],"sourcesContent":["import { buildProps, definePropType, iconPropType } from '@element-plus/utils'\nimport { tourContentProps } from './content'\nimport type { CSSProperties, ExtractPropTypes } from 'vue'\nimport type { TourBtnProps, TourMask } from './types'\n\nexport const tourStepProps = buildProps({\n /**\n * @description get the element the guide card points to. empty makes it show in center of screen\n */\n target: {\n type: definePropType<\n string | HTMLElement | (() => HTMLElement | null) | null\n >([String, Object, Function]),\n },\n /**\n * @description the title of the tour content\n */\n title: String,\n /**\n * @description description\n */\n description: String,\n /**\n * @description whether to show a close button\n */\n showClose: {\n type: Boolean,\n default: true,\n },\n /**\n * @description custom close icon, default is Close\n */\n closeIcon: {\n type: iconPropType,\n },\n /**\n * @description whether to show the arrow\n */\n showArrow: {\n type: Boolean,\n default: true,\n },\n /**\n * @description position of the guide card relative to the target element\n */\n placement: tourContentProps.placement,\n /**\n * @description whether to enable masking, change mask style and fill color by pass custom props\n */\n mask: {\n type: definePropType<TourMask>([Boolean, Object]),\n },\n /**\n * @description custom style for content\n */\n contentStyle: {\n type: definePropType<CSSProperties>([Object]),\n },\n /**\n * @description properties of the previous button\n */\n prevButtonProps: {\n type: definePropType<TourBtnProps>(Object),\n },\n /**\n * @description properties of the Next button\n */\n nextButtonProps: {\n type: definePropType<TourBtnProps>(Object),\n },\n /**\n * @description support pass custom scrollIntoView options\n */\n scrollIntoViewOptions: {\n type: definePropType<boolean | ScrollIntoViewOptions>([Boolean, Object]),\n },\n /**\n * @description type, affects the background color and text color\n */\n type: {\n type: definePropType<'defalut' | 'primary'>(String),\n },\n})\n\nexport type TourStepProps = ExtractPropTypes<typeof tourStepProps>\n\nexport const tourStepEmits = {\n close: () => true,\n}\nexport type TourStepEmits = typeof tourStepEmits\n"],"names":[],"mappings":";;;;;AAEY,MAAC,aAAa,GAAG,UAAU,CAAC;AACxC,EAAE,MAAM,EAAE;AACV,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;AACpD,GAAG;AACH,EAAE,KAAK,EAAE,MAAM;AACf,EAAE,WAAW,EAAE,MAAM;AACrB,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG;AACH,EAAE,SAAS,EAAE;AACb,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,OAAO,EAAE,IAAI;AACjB,GAAG;AACH,EAAE,SAAS,EAAE,gBAAgB,CAAC,SAAS;AACvC,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3C,GAAG;AACH,EAAE,YAAY,EAAE;AAChB,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAClC,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,eAAe,EAAE;AACnB,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,EAAE,qBAAqB,EAAE;AACzB,IAAI,IAAI,EAAE,cAAc,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC3C,GAAG;AACH,EAAE,IAAI,EAAE;AACR,IAAI,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC;AAChC,GAAG;AACH,CAAC,EAAE;AACS,MAAC,aAAa,GAAG;AAC7B,EAAE,KAAK,EAAE,MAAM,IAAI;AACnB;;;;"}
@@ -1,6 +1,6 @@
1
1
  declare const _default: import("vue").DefineComponent<{
2
2
  target: {
3
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
3
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
4
4
  readonly required: false;
5
5
  readonly validator: ((val: unknown) => boolean) | undefined;
6
6
  __epPropKey: true;
@@ -55,7 +55,7 @@ declare const _default: import("vue").DefineComponent<{
55
55
  }, {
56
56
  props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
57
57
  target: {
58
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
58
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
59
59
  readonly required: false;
60
60
  readonly validator: ((val: unknown) => boolean) | undefined;
61
61
  __epPropKey: true;
@@ -483,7 +483,7 @@ declare const _default: import("vue").DefineComponent<{
483
483
  close: () => boolean;
484
484
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
485
485
  target: {
486
- readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => HTMLElement) | (() => HTMLElement | null) | ((new (...args: any[]) => HTMLElement) | (() => HTMLElement | null))[], unknown, unknown>>;
486
+ readonly type: import("vue").PropType<import("@element-plus/nightly/es/utils").EpPropMergeType<(new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null) | ((new (...args: any[]) => (string | HTMLElement | (() => HTMLElement | null) | null) & {}) | (() => string | HTMLElement | (() => HTMLElement | null) | null))[], unknown, unknown>>;
487
487
  readonly required: false;
488
488
  readonly validator: ((val: unknown) => boolean) | undefined;
489
489
  __epPropKey: true;
@@ -108,7 +108,7 @@ declare const _default: import("vue").DefineComponent<{
108
108
  cssVarBlockName: (name: string) => string;
109
109
  };
110
110
  steps: import("vue").Ref<{
111
- target?: HTMLElement | null | undefined;
111
+ target?: string | HTMLElement | (() => HTMLElement | null) | null | undefined;
112
112
  showArrow?: boolean | undefined;
113
113
  placement?: import("@floating-ui/core").Placement | undefined;
114
114
  contentStyle?: {
@@ -3184,7 +3184,7 @@ declare const _default: import("vue").DefineComponent<{
3184
3184
  current: import("vue").Ref<number> | import("vue").WritableComputedRef<number>;
3185
3185
  total: import("vue").ComputedRef<number>;
3186
3186
  currentStep: import("vue").ComputedRef<{
3187
- target?: HTMLElement | null | undefined;
3187
+ target?: string | HTMLElement | (() => HTMLElement | null) | null | undefined;
3188
3188
  showArrow?: boolean | undefined;
3189
3189
  placement?: import("@floating-ui/core").Placement | undefined;
3190
3190
  contentStyle?: {
@@ -6257,7 +6257,7 @@ declare const _default: import("vue").DefineComponent<{
6257
6257
  behavior?: ScrollBehavior | undefined;
6258
6258
  } | undefined;
6259
6259
  }>;
6260
- currentTarget: import("vue").ComputedRef<HTMLElement | null | undefined>;
6260
+ currentTarget: import("vue").ComputedRef<string | HTMLElement | (() => HTMLElement | null) | null | undefined>;
6261
6261
  kls: import("vue").ComputedRef<string[]>;
6262
6262
  mergedPlacement: import("vue").ComputedRef<"top" | "bottom" | "right" | "left" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "right-start" | "right-end" | "left-start" | "left-end">;
6263
6263
  mergedContentStyle: import("vue").ComputedRef<import("vue").CSSProperties | undefined>;
@@ -22,7 +22,7 @@ export interface PosInfo {
22
22
  radius: number;
23
23
  }
24
24
  export interface UsedTourStepProps {
25
- target?: HTMLElement | null;
25
+ target?: string | HTMLElement | (() => HTMLElement | null) | null;
26
26
  showArrow?: boolean;
27
27
  placement?: Placement;
28
28
  contentStyle?: CSSProperties;
package/es/index.mjs CHANGED
@@ -99,7 +99,7 @@ export { linkEmits, linkProps } from './components/link/src/link.mjs';
99
99
  export { ElLink } from './components/link/index.mjs';
100
100
  export { menuEmits, menuProps } from './components/menu/src/menu.mjs';
101
101
  export { menuItemEmits, menuItemProps } from './components/menu/src/menu-item.mjs';
102
- export { menuItemGroupProps } from './components/menu/src/menu-item-group.mjs';
102
+ export { menuItemGroupProps } from './components/menu/src/menu-item-group2.mjs';
103
103
  export { subMenuProps } from './components/menu/src/sub-menu.mjs';
104
104
  export { ElMenu, ElMenuItem, ElMenuItemGroup, ElSubMenu } from './components/menu/index.mjs';
105
105
  export { overlayEmits, overlayProps } from './components/overlay/src/overlay.mjs';
package/es/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const version = "0.0.20240117";
1
+ export declare const version = "0.0.20240119";
package/es/version.mjs CHANGED
@@ -1,4 +1,4 @@
1
- const version = "0.0.20240117";
1
+ const version = "0.0.20240119";
2
2
 
3
3
  export { version };
4
4
  //# sourceMappingURL=version.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20240117'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
1
+ {"version":3,"file":"version.mjs","sources":["../../../packages/element-plus/version.ts"],"sourcesContent":["export const version = '0.0.20240119'\n"],"names":[],"mappings":"AAAY,MAAC,OAAO,GAAG;;;;"}
@@ -138,7 +138,7 @@ var inputNumber = require('./input-number/src/input-number.js');
138
138
  var link = require('./link/src/link.js');
139
139
  var menu = require('./menu/src/menu.js');
140
140
  var menuItem = require('./menu/src/menu-item.js');
141
- var menuItemGroup = require('./menu/src/menu-item-group.js');
141
+ var menuItemGroup = require('./menu/src/menu-item-group2.js');
142
142
  var subMenu = require('./menu/src/sub-menu.js');
143
143
  var overlay = require('./overlay/src/overlay.js');
144
144
  var pageHeader = require('./page-header/src/page-header.js');
@@ -5,10 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  require('../../utils/index.js');
6
6
  var menu = require('./src/menu.js');
7
7
  var menuItem$1 = require('./src/menu-item2.js');
8
- var menuItemGroup$1 = require('./src/menu-item-group2.js');
8
+ var menuItemGroup$1 = require('./src/menu-item-group.js');
9
9
  var subMenu = require('./src/sub-menu.js');
10
10
  var menuItem = require('./src/menu-item.js');
11
- var menuItemGroup = require('./src/menu-item-group.js');
11
+ var menuItemGroup = require('./src/menu-item-group2.js');
12
12
  require('./src/types.js');
13
13
  require('./src/instance.js');
14
14
  var install = require('../../utils/vue/install.js');
@@ -2,9 +2,40 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- const menuItemGroupProps = {
6
- title: String
7
- };
5
+ var vue = require('vue');
6
+ require('../../../hooks/index.js');
7
+ var menuItemGroup = require('./menu-item-group2.js');
8
+ var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
+ var index = require('../../../hooks/use-namespace/index.js');
8
10
 
9
- exports.menuItemGroupProps = menuItemGroupProps;
11
+ const COMPONENT_NAME = "ElMenuItemGroup";
12
+ const _sfc_main = vue.defineComponent({
13
+ name: COMPONENT_NAME,
14
+ props: menuItemGroup.menuItemGroupProps,
15
+ setup() {
16
+ const ns = index.useNamespace("menu-item-group");
17
+ return {
18
+ ns
19
+ };
20
+ }
21
+ });
22
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
23
+ return vue.openBlock(), vue.createElementBlock("li", {
24
+ class: vue.normalizeClass(_ctx.ns.b())
25
+ }, [
26
+ vue.createElementVNode("div", {
27
+ class: vue.normalizeClass(_ctx.ns.e("title"))
28
+ }, [
29
+ !_ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
30
+ vue.createTextVNode(vue.toDisplayString(_ctx.title), 1)
31
+ ], 64)) : vue.renderSlot(_ctx.$slots, "title", { key: 1 })
32
+ ], 2),
33
+ vue.createElementVNode("ul", null, [
34
+ vue.renderSlot(_ctx.$slots, "default")
35
+ ])
36
+ ], 2);
37
+ }
38
+ var MenuItemGroup = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "menu-item-group.vue"]]);
39
+
40
+ exports["default"] = MenuItemGroup;
10
41
  //# sourceMappingURL=menu-item-group.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-group.js","sources":["../../../../../../packages/components/menu/src/menu-item-group.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n\nexport const menuItemGroupProps = {\n title: String,\n} as const\nexport type MenuItemGroupProps = ExtractPropTypes<typeof menuItemGroupProps>\n"],"names":[],"mappings":";;;;AAAY,MAAC,kBAAkB,GAAG;AAClC,EAAE,KAAK,EAAE,MAAM;AACf;;;;"}
1
+ {"version":3,"file":"menu-item-group.js","sources":["../../../../../../packages/components/menu/src/menu-item-group.vue"],"sourcesContent":["<template>\n <li :class=\"ns.b()\">\n <div :class=\"ns.e('title')\">\n <template v-if=\"!$slots.title\">{{ title }}</template>\n <slot v-else name=\"title\" />\n </div>\n <ul>\n <slot />\n </ul>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { menuItemGroupProps } from './menu-item-group'\n\nconst COMPONENT_NAME = 'ElMenuItemGroup'\n\nexport default defineComponent({\n name: COMPONENT_NAME,\n\n props: menuItemGroupProps,\n\n setup() {\n const ns = useNamespace('menu-item-group')\n\n return {\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","menuItemGroupProps","useNamespace","_createElementBlock","_normalizeClass","_createElementVNode","_Fragment","_createTextVNode","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;AAiBA,MAAM,cAAiB,GAAA,iBAAA,CAAA;AAEvB,MAAK,YAAaA,mBAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,cAAA;AAAA,EAEN,KAAO,EAAAC,gCAAA;AAAA,EAEP,KAAQ,GAAA;AACN,IAAM,MAAA,EAAA,GAAKC,mBAAa,iBAAiB,CAAA,CAAA;AAEzC,IAAO,OAAA;AAAA,MACL,EAAA;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAC,CAAA,CAAA;;0BA9BCC,sBAQK,CAAA,IAAA,EAAA;AAAA,IARA,KAAA,EAAKC,kBAAE,CAAA,IAAA,CAAA,EAAA,CAAG,CAAC,EAAA,CAAA;AAAA,GAAA,EAAA;IACdC,sBAGM,CAAA,KAAA,EAAA;AAAA,MAHA,KAAA,EAAKD,kBAAE,CAAA,IAAA,CAAA,EAAA,CAAG,CAAC,CAAA,OAAA,CAAA,CAAA;AAAA,KAAA,EAAA;AACE,MAAA,CAAA,IAAA,CAAA,MAAA,CAAO,0BAAxBD,sBAAqD,CAAAG,YAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,EAAA;AAAA,QAAAC,mBAAA,CAAAC,mBAAA,CAAnB,IAAK,CAAA,KAAA,CAAA,EAAA,CAAA,CAAA;AAAA,OAAA,EAAA,EAAA,CAAA,IACvCC,cAA4B,CAAA,IAAA,CAAA,MAAA,EAAA,OAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,CAAA;AAAA,KAAA,EAAA,CAAA,CAAA;IAE9BJ,sBAEK,CAAA,IAAA,EAAA,IAAA,EAAA;AAAA,MADHI,cAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA,KAAA,CAAA;;;;;;;"}
@@ -2,40 +2,9 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var vue = require('vue');
6
- require('../../../hooks/index.js');
7
- var menuItemGroup = require('./menu-item-group.js');
8
- var pluginVue_exportHelper = require('../../../_virtual/plugin-vue_export-helper.js');
9
- var index = require('../../../hooks/use-namespace/index.js');
5
+ const menuItemGroupProps = {
6
+ title: String
7
+ };
10
8
 
11
- const COMPONENT_NAME = "ElMenuItemGroup";
12
- const _sfc_main = vue.defineComponent({
13
- name: COMPONENT_NAME,
14
- props: menuItemGroup.menuItemGroupProps,
15
- setup() {
16
- const ns = index.useNamespace("menu-item-group");
17
- return {
18
- ns
19
- };
20
- }
21
- });
22
- function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
23
- return vue.openBlock(), vue.createElementBlock("li", {
24
- class: vue.normalizeClass(_ctx.ns.b())
25
- }, [
26
- vue.createElementVNode("div", {
27
- class: vue.normalizeClass(_ctx.ns.e("title"))
28
- }, [
29
- !_ctx.$slots.title ? (vue.openBlock(), vue.createElementBlock(vue.Fragment, { key: 0 }, [
30
- vue.createTextVNode(vue.toDisplayString(_ctx.title), 1)
31
- ], 64)) : vue.renderSlot(_ctx.$slots, "title", { key: 1 })
32
- ], 2),
33
- vue.createElementVNode("ul", null, [
34
- vue.renderSlot(_ctx.$slots, "default")
35
- ])
36
- ], 2);
37
- }
38
- var MenuItemGroup = /* @__PURE__ */ pluginVue_exportHelper["default"](_sfc_main, [["render", _sfc_render], ["__file", "menu-item-group.vue"]]);
39
-
40
- exports["default"] = MenuItemGroup;
9
+ exports.menuItemGroupProps = menuItemGroupProps;
41
10
  //# sourceMappingURL=menu-item-group2.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-group2.js","sources":["../../../../../../packages/components/menu/src/menu-item-group.vue"],"sourcesContent":["<template>\n <li :class=\"ns.b()\">\n <div :class=\"ns.e('title')\">\n <template v-if=\"!$slots.title\">{{ title }}</template>\n <slot v-else name=\"title\" />\n </div>\n <ul>\n <slot />\n </ul>\n </li>\n</template>\n\n<script lang=\"ts\">\nimport { defineComponent } from 'vue'\nimport { useNamespace } from '@element-plus/hooks'\nimport { menuItemGroupProps } from './menu-item-group'\n\nconst COMPONENT_NAME = 'ElMenuItemGroup'\n\nexport default defineComponent({\n name: COMPONENT_NAME,\n\n props: menuItemGroupProps,\n\n setup() {\n const ns = useNamespace('menu-item-group')\n\n return {\n ns,\n }\n },\n})\n</script>\n"],"names":["defineComponent","menuItemGroupProps","useNamespace","_createElementBlock","_normalizeClass","_createElementVNode","_Fragment","_createTextVNode","_toDisplayString","_renderSlot"],"mappings":";;;;;;;;;;AAiBA,MAAM,cAAiB,GAAA,iBAAA,CAAA;AAEvB,MAAK,YAAaA,mBAAa,CAAA;AAAA,EAC7B,IAAM,EAAA,cAAA;AAAA,EAEN,KAAO,EAAAC,gCAAA;AAAA,EAEP,KAAQ,GAAA;AACN,IAAM,MAAA,EAAA,GAAKC,mBAAa,iBAAiB,CAAA,CAAA;AAEzC,IAAO,OAAA;AAAA,MACL,EAAA;AAAA,KACF,CAAA;AAAA,GACF;AACF,CAAC,CAAA,CAAA;;0BA9BCC,sBAQK,CAAA,IAAA,EAAA;AAAA,IARA,KAAA,EAAKC,kBAAE,CAAA,IAAA,CAAA,EAAA,CAAG,CAAC,EAAA,CAAA;AAAA,GAAA,EAAA;IACdC,sBAGM,CAAA,KAAA,EAAA;AAAA,MAHA,KAAA,EAAKD,kBAAE,CAAA,IAAA,CAAA,EAAA,CAAG,CAAC,CAAA,OAAA,CAAA,CAAA;AAAA,KAAA,EAAA;AACE,MAAA,CAAA,IAAA,CAAA,MAAA,CAAO,0BAAxBD,sBAAqD,CAAAG,YAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,EAAA;AAAA,QAAAC,mBAAA,CAAAC,mBAAA,CAAnB,IAAK,CAAA,KAAA,CAAA,EAAA,CAAA,CAAA;AAAA,OAAA,EAAA,EAAA,CAAA,IACvCC,cAA4B,CAAA,IAAA,CAAA,MAAA,EAAA,OAAA,EAAA,EAAA,GAAA,EAAA,CAAA,EAAA,CAAA;AAAA,KAAA,EAAA,CAAA,CAAA;IAE9BJ,sBAEK,CAAA,IAAA,EAAA,IAAA,EAAA;AAAA,MADHI,cAAQ,CAAA,IAAA,CAAA,MAAA,EAAA,SAAA,CAAA;AAAA,KAAA,CAAA;;;;;;;"}
1
+ {"version":3,"file":"menu-item-group2.js","sources":["../../../../../../packages/components/menu/src/menu-item-group.ts"],"sourcesContent":["import type { ExtractPropTypes } from 'vue'\n\nexport const menuItemGroupProps = {\n title: String,\n} as const\nexport type MenuItemGroupProps = ExtractPropTypes<typeof menuItemGroupProps>\n"],"names":[],"mappings":";;;;AAAY,MAAC,kBAAkB,GAAG;AAClC,EAAE,KAAK,EAAE,MAAM;AACf;;;;"}
@@ -345,13 +345,21 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
345
345
  }, 8, ["id", "wrap-class", "view-class", "class", "aria-label"]), [
346
346
  [vue.vShow, _ctx.states.options.size > 0 && !_ctx.loading]
347
347
  ]),
348
- _ctx.loading || _ctx.filteredOptionsCount === 0 ? vue.renderSlot(_ctx.$slots, "empty", { key: 1 }, () => [
349
- vue.createElementVNode("p", {
350
- class: vue.normalizeClass(_ctx.nsSelect.be("dropdown", "empty"))
351
- }, vue.toDisplayString(_ctx.emptyText), 3)
352
- ]) : vue.createCommentVNode("v-if", true),
353
- _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", {
348
+ _ctx.$slots.loading && _ctx.loading ? (vue.openBlock(), vue.createElementBlock("div", {
349
+ key: 1,
350
+ class: vue.normalizeClass(_ctx.nsSelect.be("dropdown", "loading"))
351
+ }, [
352
+ vue.renderSlot(_ctx.$slots, "loading")
353
+ ], 2)) : _ctx.loading || _ctx.filteredOptionsCount === 0 ? (vue.openBlock(), vue.createElementBlock("div", {
354
354
  key: 2,
355
+ class: vue.normalizeClass(_ctx.nsSelect.be("dropdown", "empty"))
356
+ }, [
357
+ vue.renderSlot(_ctx.$slots, "empty", {}, () => [
358
+ vue.createElementVNode("span", null, vue.toDisplayString(_ctx.emptyText), 1)
359
+ ])
360
+ ], 2)) : vue.createCommentVNode("v-if", true),
361
+ _ctx.$slots.footer ? (vue.openBlock(), vue.createElementBlock("div", {
362
+ key: 3,
355
363
  class: vue.normalizeClass(_ctx.nsSelect.be("dropdown", "footer"))
356
364
  }, [
357
365
  vue.renderSlot(_ctx.$slots, "footer")