ele-admin-plus 1.1.3 → 1.1.4-beta.1

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 (269) hide show
  1. package/es/ele-alert/index.d.ts +10 -10
  2. package/es/ele-alert/props.d.ts +6 -6
  3. package/es/ele-app/style/message.scss +1 -0
  4. package/es/ele-app/style/overwrite.scss +79 -3
  5. package/es/ele-app/types/index.d.ts +7 -6
  6. package/es/ele-avatar-group/index.d.ts +7 -8
  7. package/es/ele-avatar-group/props.d.ts +3 -4
  8. package/es/ele-basic-select/style/index.scss +4 -6
  9. package/es/ele-bottom-bar/index.d.ts +4 -4
  10. package/es/ele-bottom-bar/props.d.ts +2 -3
  11. package/es/ele-card/index.d.ts +6 -6
  12. package/es/ele-card/props.d.ts +3 -4
  13. package/es/ele-check-card/components/card-item.d.ts +2 -3
  14. package/es/ele-check-card/index.d.ts +4 -4
  15. package/es/ele-check-card/props.d.ts +3 -3
  16. package/es/ele-config-provider/receiver.d.ts +1 -1
  17. package/es/ele-config-provider/receiver.js +29 -29
  18. package/es/ele-copyable/index.d.ts +8 -8
  19. package/es/ele-copyable/index.js +5 -4
  20. package/es/ele-copyable/props.d.ts +5 -5
  21. package/es/ele-copyable/style/index.scss +4 -0
  22. package/es/ele-cropper/index.js +2 -2
  23. package/es/ele-dashboard/index.d.ts +1 -2
  24. package/es/ele-drawer/index.d.ts +16 -10
  25. package/es/ele-drawer/props.d.ts +7 -6
  26. package/es/ele-dropdown/index.d.ts +2 -2
  27. package/es/ele-dropdown/props.d.ts +1 -2
  28. package/es/ele-edit-tag/index.d.ts +4 -4
  29. package/es/ele-edit-tag/props.d.ts +2 -3
  30. package/es/ele-ellipsis/index.d.ts +4 -5
  31. package/es/ele-ellipsis/props.d.ts +1 -1
  32. package/es/ele-ellipsis/style/index.scss +4 -0
  33. package/es/ele-file-list/index.d.ts +2 -7
  34. package/es/ele-file-list/index.js +2 -2
  35. package/es/ele-file-list/types/index.d.ts +0 -4
  36. package/es/ele-icon-select/components/icon-grid.d.ts +5 -5
  37. package/es/ele-icon-select/components/icon-popper.d.ts +15 -15
  38. package/es/ele-icon-select/index.d.ts +15 -16
  39. package/es/ele-icon-select/props.d.ts +8 -8
  40. package/es/ele-loading/index.d.ts +26 -1
  41. package/es/ele-loading/index.js +53 -11
  42. package/es/ele-loading/props.d.ts +11 -1
  43. package/es/ele-loading/props.js +16 -1
  44. package/es/ele-loading/style/css-var.scss +7 -0
  45. package/es/ele-loading/style/index.js +1 -0
  46. package/es/ele-loading/style/index.scss +90 -0
  47. package/es/ele-loading/types/index.d.ts +17 -0
  48. package/es/ele-map-picker/components/map-view.d.ts +2 -2
  49. package/es/ele-map-picker/index.d.ts +2 -2
  50. package/es/ele-map-picker/props.d.ts +3 -3
  51. package/es/ele-menus/index.d.ts +2 -0
  52. package/es/ele-menus/index.js +11 -5
  53. package/es/ele-menus/props.d.ts +10 -0
  54. package/es/ele-menus/props.js +7 -1
  55. package/es/ele-menus/style/index.scss +18 -18
  56. package/es/ele-menus/types/index.d.ts +4 -0
  57. package/es/ele-menus/util.d.ts +4 -3
  58. package/es/ele-menus/util.js +23 -12
  59. package/es/ele-modal/index.d.ts +19 -13
  60. package/es/ele-modal/props.d.ts +8 -7
  61. package/es/ele-modal/util.js +2 -2
  62. package/es/ele-pagination/index.d.ts +1 -1
  63. package/es/ele-popconfirm/index.d.ts +10 -10
  64. package/es/ele-popconfirm/index.js +8 -2
  65. package/es/ele-popconfirm/props.d.ts +6 -6
  66. package/es/ele-popover/index.d.ts +6 -6
  67. package/es/ele-popover/props.d.ts +3 -4
  68. package/es/ele-printer/index.d.ts +6 -6
  69. package/es/ele-printer/props.d.ts +3 -4
  70. package/es/ele-pro-layout/components/pro-header.d.ts +7 -2
  71. package/es/ele-pro-layout/components/pro-header.js +15 -5
  72. package/es/ele-pro-layout/components/pro-iframe.js +10 -7
  73. package/es/ele-pro-layout/components/pro-sidebar.d.ts +7 -2
  74. package/es/ele-pro-layout/components/pro-sidebar.js +14 -5
  75. package/es/ele-pro-layout/components/pro-sidebox.d.ts +11 -4
  76. package/es/ele-pro-layout/components/pro-sidebox.js +16 -5
  77. package/es/ele-pro-layout/components/tab-dropdown.js +1 -4
  78. package/es/ele-pro-layout/index.d.ts +17 -3
  79. package/es/ele-pro-layout/index.js +208 -105
  80. package/es/ele-pro-layout/props.d.ts +6 -1
  81. package/es/ele-pro-layout/props.js +10 -0
  82. package/es/ele-pro-layout/style/collapse.scss +9 -10
  83. package/es/ele-pro-layout/style/index.js +0 -1
  84. package/es/ele-pro-layout/types/index.d.ts +9 -0
  85. package/es/ele-pro-layout/util.d.ts +4 -2
  86. package/es/ele-pro-layout/util.js +20 -17
  87. package/es/ele-pro-table/components/table-view.d.ts +9 -3
  88. package/es/ele-pro-table/components/table-view.js +27 -24
  89. package/es/ele-pro-table/components/tool-column.d.ts +2 -1
  90. package/es/ele-pro-table/components/tool-column.js +26 -18
  91. package/es/ele-pro-table/index.d.ts +46 -25
  92. package/es/ele-pro-table/index.js +182 -196
  93. package/es/ele-pro-table/props.d.ts +27 -15
  94. package/es/ele-pro-table/props.js +15 -3
  95. package/es/ele-pro-table/style/index.js +1 -1
  96. package/es/ele-pro-table/style/index.scss +64 -8
  97. package/es/ele-pro-table/types/index.d.ts +39 -5
  98. package/es/ele-pro-table/util.d.ts +84 -49
  99. package/es/ele-pro-table/util.js +193 -78
  100. package/es/ele-qr-code/index.d.ts +3 -3
  101. package/es/ele-qr-code/props.d.ts +1 -2
  102. package/es/ele-qr-code-svg/index.d.ts +3 -3
  103. package/es/ele-split-panel/index.d.ts +6 -6
  104. package/es/ele-split-panel/props.d.ts +3 -4
  105. package/es/ele-table/style/index.scss +1 -0
  106. package/es/ele-tabs/index.js +3 -3
  107. package/es/ele-tabs/types/index.d.ts +3 -0
  108. package/es/ele-text/index.d.ts +3 -3
  109. package/es/ele-text/props.d.ts +2 -2
  110. package/es/ele-toolbar/index.d.ts +6 -6
  111. package/es/ele-toolbar/props.d.ts +3 -4
  112. package/es/ele-tooltip/index.d.ts +3 -3
  113. package/es/ele-tooltip/props.d.ts +1 -2
  114. package/es/ele-tour/index.d.ts +2 -3
  115. package/es/ele-tour/style/index.scss +1 -1
  116. package/es/ele-tour/util.js +3 -3
  117. package/es/ele-upload-list/index.d.ts +8 -7
  118. package/es/ele-upload-list/index.js +18 -11
  119. package/es/ele-upload-list/props.d.ts +4 -4
  120. package/es/ele-upload-list/props.js +1 -1
  121. package/es/ele-watermark/index.d.ts +16 -8
  122. package/es/ele-watermark/index.js +18 -12
  123. package/es/ele-watermark/props.d.ts +3 -1
  124. package/es/ele-watermark/props.js +5 -1
  125. package/es/ele-watermark/util.js +1 -1
  126. package/es/style/index.scss +1 -0
  127. package/es/style/nprogress.scss +2 -2
  128. package/es/style/themes/default.scss +36 -12
  129. package/es/style/themes/rounded.scss +4 -2
  130. package/es/style/themes/theme-util.scss +2 -0
  131. package/es/utils/core.d.ts +1 -1
  132. package/es/utils/core.js +17 -15
  133. package/es/utils/resolvers.js +2 -2
  134. package/lib/ele-alert/index.d.ts +10 -10
  135. package/lib/ele-alert/props.d.ts +6 -6
  136. package/lib/ele-app/style/message.scss +1 -0
  137. package/lib/ele-app/style/overwrite.scss +79 -3
  138. package/lib/ele-app/types/index.d.ts +7 -6
  139. package/lib/ele-avatar-group/index.d.ts +7 -8
  140. package/lib/ele-avatar-group/props.d.ts +3 -4
  141. package/lib/ele-basic-select/style/index.scss +4 -6
  142. package/lib/ele-bottom-bar/index.d.ts +4 -4
  143. package/lib/ele-bottom-bar/props.d.ts +2 -3
  144. package/lib/ele-card/index.d.ts +6 -6
  145. package/lib/ele-card/props.d.ts +3 -4
  146. package/lib/ele-check-card/components/card-item.d.ts +2 -3
  147. package/lib/ele-check-card/index.d.ts +4 -4
  148. package/lib/ele-check-card/props.d.ts +3 -3
  149. package/lib/ele-config-provider/receiver.d.ts +1 -1
  150. package/lib/ele-config-provider/receiver.js +2 -2
  151. package/lib/ele-copyable/index.d.ts +8 -8
  152. package/lib/ele-copyable/index.js +4 -3
  153. package/lib/ele-copyable/props.d.ts +5 -5
  154. package/lib/ele-copyable/style/index.scss +4 -0
  155. package/lib/ele-cropper/index.js +2 -2
  156. package/lib/ele-dashboard/index.d.ts +1 -2
  157. package/lib/ele-drawer/index.d.ts +16 -10
  158. package/lib/ele-drawer/props.d.ts +7 -6
  159. package/lib/ele-dropdown/index.d.ts +2 -2
  160. package/lib/ele-dropdown/props.d.ts +1 -2
  161. package/lib/ele-edit-tag/index.d.ts +4 -4
  162. package/lib/ele-edit-tag/props.d.ts +2 -3
  163. package/lib/ele-ellipsis/index.d.ts +4 -5
  164. package/lib/ele-ellipsis/props.d.ts +1 -1
  165. package/lib/ele-ellipsis/style/index.scss +4 -0
  166. package/lib/ele-file-list/index.d.ts +2 -7
  167. package/lib/ele-file-list/index.js +2 -2
  168. package/lib/ele-file-list/types/index.d.ts +0 -4
  169. package/lib/ele-icon-select/components/icon-grid.d.ts +5 -5
  170. package/lib/ele-icon-select/components/icon-popper.d.ts +15 -15
  171. package/lib/ele-icon-select/index.d.ts +15 -16
  172. package/lib/ele-icon-select/props.d.ts +8 -8
  173. package/lib/ele-loading/index.d.ts +26 -1
  174. package/lib/ele-loading/index.js +52 -10
  175. package/lib/ele-loading/props.d.ts +11 -1
  176. package/lib/ele-loading/props.js +16 -1
  177. package/lib/ele-loading/style/css-var.scss +7 -0
  178. package/lib/ele-loading/style/index.js +1 -0
  179. package/lib/ele-loading/style/index.scss +90 -0
  180. package/lib/ele-loading/types/index.d.ts +17 -0
  181. package/lib/ele-map-picker/components/map-view.d.ts +2 -2
  182. package/lib/ele-map-picker/index.d.ts +2 -2
  183. package/lib/ele-map-picker/props.d.ts +3 -3
  184. package/lib/ele-menus/index.d.ts +2 -0
  185. package/lib/ele-menus/index.js +9 -3
  186. package/lib/ele-menus/props.d.ts +10 -0
  187. package/lib/ele-menus/props.js +6 -0
  188. package/lib/ele-menus/style/index.scss +18 -18
  189. package/lib/ele-menus/types/index.d.ts +4 -0
  190. package/lib/ele-menus/util.d.ts +4 -3
  191. package/lib/ele-menus/util.js +23 -12
  192. package/lib/ele-modal/index.d.ts +19 -13
  193. package/lib/ele-modal/props.d.ts +8 -7
  194. package/lib/ele-modal/util.js +2 -2
  195. package/lib/ele-pagination/index.d.ts +1 -1
  196. package/lib/ele-popconfirm/index.d.ts +10 -10
  197. package/lib/ele-popconfirm/index.js +8 -2
  198. package/lib/ele-popconfirm/props.d.ts +6 -6
  199. package/lib/ele-popover/index.d.ts +6 -6
  200. package/lib/ele-popover/props.d.ts +3 -4
  201. package/lib/ele-printer/index.d.ts +6 -6
  202. package/lib/ele-printer/props.d.ts +3 -4
  203. package/lib/ele-pro-layout/components/pro-header.d.ts +7 -2
  204. package/lib/ele-pro-layout/components/pro-header.js +15 -5
  205. package/lib/ele-pro-layout/components/pro-iframe.js +10 -7
  206. package/lib/ele-pro-layout/components/pro-sidebar.d.ts +7 -2
  207. package/lib/ele-pro-layout/components/pro-sidebar.js +14 -5
  208. package/lib/ele-pro-layout/components/pro-sidebox.d.ts +11 -4
  209. package/lib/ele-pro-layout/components/pro-sidebox.js +16 -5
  210. package/lib/ele-pro-layout/components/tab-dropdown.js +1 -4
  211. package/lib/ele-pro-layout/index.d.ts +17 -3
  212. package/lib/ele-pro-layout/index.js +205 -102
  213. package/lib/ele-pro-layout/props.d.ts +6 -1
  214. package/lib/ele-pro-layout/props.js +10 -0
  215. package/lib/ele-pro-layout/style/collapse.scss +9 -10
  216. package/lib/ele-pro-layout/style/index.js +0 -1
  217. package/lib/ele-pro-layout/types/index.d.ts +9 -0
  218. package/lib/ele-pro-layout/util.d.ts +4 -2
  219. package/lib/ele-pro-layout/util.js +19 -16
  220. package/lib/ele-pro-table/components/table-view.d.ts +9 -3
  221. package/lib/ele-pro-table/components/table-view.js +25 -22
  222. package/lib/ele-pro-table/components/tool-column.d.ts +2 -1
  223. package/lib/ele-pro-table/components/tool-column.js +25 -17
  224. package/lib/ele-pro-table/index.d.ts +46 -25
  225. package/lib/ele-pro-table/index.js +180 -194
  226. package/lib/ele-pro-table/props.d.ts +27 -15
  227. package/lib/ele-pro-table/props.js +15 -3
  228. package/lib/ele-pro-table/style/index.js +1 -1
  229. package/lib/ele-pro-table/style/index.scss +64 -8
  230. package/lib/ele-pro-table/types/index.d.ts +39 -5
  231. package/lib/ele-pro-table/util.d.ts +84 -49
  232. package/lib/ele-pro-table/util.js +192 -77
  233. package/lib/ele-qr-code/index.d.ts +3 -3
  234. package/lib/ele-qr-code/props.d.ts +1 -2
  235. package/lib/ele-qr-code-svg/index.d.ts +3 -3
  236. package/lib/ele-split-panel/index.d.ts +6 -6
  237. package/lib/ele-split-panel/props.d.ts +3 -4
  238. package/lib/ele-table/style/index.scss +1 -0
  239. package/lib/ele-tabs/index.js +3 -3
  240. package/lib/ele-tabs/types/index.d.ts +3 -0
  241. package/lib/ele-text/index.d.ts +3 -3
  242. package/lib/ele-text/props.d.ts +2 -2
  243. package/lib/ele-toolbar/index.d.ts +6 -6
  244. package/lib/ele-toolbar/props.d.ts +3 -4
  245. package/lib/ele-tooltip/index.d.ts +3 -3
  246. package/lib/ele-tooltip/props.d.ts +1 -2
  247. package/lib/ele-tour/index.d.ts +2 -3
  248. package/lib/ele-tour/style/index.scss +1 -1
  249. package/lib/ele-tour/util.js +3 -3
  250. package/lib/ele-upload-list/index.d.ts +8 -7
  251. package/lib/ele-upload-list/index.js +17 -10
  252. package/lib/ele-upload-list/props.d.ts +4 -4
  253. package/lib/ele-upload-list/props.js +1 -1
  254. package/lib/ele-watermark/index.d.ts +16 -8
  255. package/lib/ele-watermark/index.js +17 -11
  256. package/lib/ele-watermark/props.d.ts +3 -1
  257. package/lib/ele-watermark/props.js +5 -1
  258. package/lib/ele-watermark/util.js +1 -1
  259. package/lib/style/index.scss +1 -0
  260. package/lib/style/nprogress.scss +2 -2
  261. package/lib/style/themes/default.scss +36 -12
  262. package/lib/style/themes/rounded.scss +4 -2
  263. package/lib/style/themes/theme-util.scss +2 -0
  264. package/lib/utils/core.d.ts +1 -1
  265. package/lib/utils/core.js +17 -15
  266. package/lib/utils/resolvers.js +2 -2
  267. package/package.json +26 -24
  268. package/es/ele-alert/types/index.d.ts +0 -0
  269. package/lib/ele-alert/types/index.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import type { PropType } from 'vue';
2
2
  import type { ElScrollbarInstance } from '../../ele-app/types';
3
- import type { MenuItem, SidebarStyle } from '../types';
3
+ import type { MenuItem, SidebarStyle, MenuItemTrigger, MenuItemProps } from '../types';
4
4
  declare const _default: import("vue").DefineComponent<{
5
5
  menus: {
6
6
  type: PropType<MenuItem[]>;
@@ -12,12 +12,16 @@ declare const _default: import("vue").DefineComponent<{
12
12
  compact: BooleanConstructor;
13
13
  collapse: BooleanConstructor;
14
14
  popperEffect: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "light" | "dark", unknown>>;
15
+ itemTrigger: PropType<MenuItemTrigger>;
15
16
  titleSlot: StringConstructor;
16
17
  iconSlot: StringConstructor;
17
18
  }, {
18
19
  menusRef: import("vue").Ref<ElScrollbarInstance>;
19
- menuItems: import("vue").ComputedRef<import("../../ele-menus/types").MenuItem[]>;
20
- }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
20
+ menuItems: import("vue").ComputedRef<MenuItemProps[]>;
21
+ onItemClick: (item: MenuItemProps) => void;
22
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
23
+ itemClick: (_item: MenuItemProps) => true;
24
+ }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
21
25
  menus: {
22
26
  type: PropType<MenuItem[]>;
23
27
  required: true;
@@ -28,9 +32,12 @@ declare const _default: import("vue").DefineComponent<{
28
32
  compact: BooleanConstructor;
29
33
  collapse: BooleanConstructor;
30
34
  popperEffect: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "light" | "dark", unknown>>;
35
+ itemTrigger: PropType<MenuItemTrigger>;
31
36
  titleSlot: StringConstructor;
32
37
  iconSlot: StringConstructor;
33
- }>>, {
38
+ }>> & {
39
+ onItemClick?: ((_item: MenuItemProps) => any) | undefined;
40
+ }, {
34
41
  collapse: boolean;
35
42
  compact: boolean;
36
43
  colorfulIcon: boolean;
@@ -23,18 +23,28 @@ const _sfc_main = defineComponent({
23
23
  collapse: Boolean,
24
24
  // tooltip 主题
25
25
  popperEffect: String,
26
+ // 菜单项触发模式
27
+ itemTrigger: String,
26
28
  // 标题插槽名称
27
29
  titleSlot: String,
28
30
  // 图标插槽名称
29
31
  iconSlot: String
30
32
  },
31
- setup(props) {
33
+ emits: {
34
+ itemClick: (_item) => true
35
+ },
36
+ setup(props, { emit }) {
32
37
  const { scrollIntoView } = useMenuScroll(() => {
33
38
  var _a;
34
39
  return (_a = menusRef.value) == null ? void 0 : _a.$el;
35
40
  });
36
41
  const menusRef = ref(null);
37
- const menuItems = computed(() => getMenuItems(props.menus));
42
+ const menuItems = computed(() => {
43
+ return getMenuItems(props.menus, props.itemTrigger != "click");
44
+ });
45
+ const onItemClick = (item) => {
46
+ emit("itemClick", item);
47
+ };
38
48
  watch(
39
49
  () => props.active,
40
50
  () => {
@@ -43,7 +53,7 @@ const _sfc_main = defineComponent({
43
53
  });
44
54
  }
45
55
  );
46
- return { menusRef, menuItems };
56
+ return { menusRef, menuItems, onItemClick };
47
57
  }
48
58
  });
49
59
  const _export_sfc = (sfc, props) => {
@@ -74,7 +84,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
74
84
  popperEffect: _ctx.popperEffect,
75
85
  collapseTransition: false,
76
86
  firstPopperClass: "ele-admin-sidebox-popup",
77
- tooltipDisabled: !_ctx.compact
87
+ tooltipDisabled: !_ctx.compact,
88
+ onItemClick: _ctx.onItemClick
78
89
  }, createSlots({ _: 2 }, [
79
90
  _ctx.iconSlot && _ctx.$slots[_ctx.iconSlot] ? {
80
91
  name: "icon",
@@ -90,7 +101,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
90
101
  ]),
91
102
  key: "1"
92
103
  } : void 0
93
- ]), 1032, ["items", "theme", "popupColorful", "collapse", "defaultActive", "popperEffect", "tooltipDisabled"])
104
+ ]), 1032, ["items", "theme", "popupColorful", "collapse", "defaultActive", "popperEffect", "tooltipDisabled", "onItemClick"])
94
105
  ]),
95
106
  _: 3
96
107
  }, 512),
@@ -63,10 +63,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
63
63
  placement: "bottom-end",
64
64
  popperClass: "ele-tab-popup",
65
65
  popperOptions: {
66
- modifiers: [
67
- { name: "arrow", options: { padding: 12 } },
68
- { name: "offset", options: { offset: [12, 8] } }
69
- ]
66
+ modifiers: [{ name: "offset", options: { offset: [12, 8] } }]
70
67
  },
71
68
  items: _ctx.items,
72
69
  onCommand: _ctx.onCommand
@@ -1,6 +1,6 @@
1
1
  import type { Ref } from 'vue';
2
2
  import type { ClassValues } from '../ele-app/types';
3
- import type { MenuItem, TabItem, LevelItem, TabItemEventOption } from './types';
3
+ import type { MenuItem, TabItem, LevelItem, TabItemEventOption, MenuItemProps } from './types';
4
4
  declare const _default: import("vue").DefineComponent<{
5
5
  menus: import("vue").PropType<MenuItem[] | null>;
6
6
  tabs: import("vue").PropType<TabItem[] | null>;
@@ -35,6 +35,7 @@ declare const _default: import("vue").DefineComponent<{
35
35
  type: NumberConstructor;
36
36
  default: number;
37
37
  };
38
+ backTopTarget: StringConstructor;
38
39
  ellipsis: {
39
40
  type: BooleanConstructor;
40
41
  default: boolean;
@@ -126,6 +127,10 @@ declare const _default: import("vue").DefineComponent<{
126
127
  default: string;
127
128
  };
128
129
  tooltipEffect: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "light" | "dark", unknown> | undefined>;
130
+ navTrigger: import("vue").PropType<import("./types").MenuItemTrigger>;
131
+ boxTrigger: import("vue").PropType<import("./types").MenuItemTrigger>;
132
+ itemTrigger: import("vue").PropType<import("./types").MenuItemTrigger>;
133
+ beforeClick: import("vue").PropType<import("./types").BeforeClick>;
129
134
  keepAlive: BooleanConstructor;
130
135
  transitionName: StringConstructor;
131
136
  transitionDelay: {
@@ -137,8 +142,8 @@ declare const _default: import("vue").DefineComponent<{
137
142
  default: boolean;
138
143
  };
139
144
  }, {
140
- UNAUTHORIZED_TIP: string;
141
145
  authenticated: Ref<boolean>;
146
+ watermark: Ref<string[]>;
142
147
  contentRef: Ref<HTMLElement | null>;
143
148
  levelData: import("vue").ShallowRef<LevelItem[]>;
144
149
  tabData: import("vue").ShallowRef<TabItem[]>;
@@ -155,6 +160,7 @@ declare const _default: import("vue").DefineComponent<{
155
160
  sidebox: import("vue").ComputedRef<boolean>;
156
161
  sidebar: import("vue").ComputedRef<boolean>;
157
162
  layoutClass: import("vue").ComputedRef<ClassValues>;
163
+ backTopSelector: import("vue").ComputedRef<string | undefined>;
158
164
  sidebarCollapse: import("vue").ComputedRef<boolean>;
159
165
  sidebarTheme: import("vue").ComputedRef<"light" | "dark">;
160
166
  updateCollapse: (val?: boolean | MouseEvent) => void;
@@ -167,6 +173,9 @@ declare const _default: import("vue").DefineComponent<{
167
173
  onSideMenuClose: (index: string, indexPath: string[]) => void;
168
174
  onHeadMenuOpen: (index: string, indexPath: string[]) => void;
169
175
  onHeadMenuClose: (index: string, indexPath: string[]) => void;
176
+ onNavItemClick: (item: MenuItemProps) => void;
177
+ onBoxItemClick: (item: MenuItemProps) => void;
178
+ onMenuItemClick: (item: MenuItemProps) => void;
170
179
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
171
180
  'update:collapse': (_collapse: boolean) => boolean;
172
181
  'update:maximized': (_val: boolean) => boolean;
@@ -215,6 +224,7 @@ declare const _default: import("vue").DefineComponent<{
215
224
  type: NumberConstructor;
216
225
  default: number;
217
226
  };
227
+ backTopTarget: StringConstructor;
218
228
  ellipsis: {
219
229
  type: BooleanConstructor;
220
230
  default: boolean;
@@ -306,6 +316,10 @@ declare const _default: import("vue").DefineComponent<{
306
316
  default: string;
307
317
  };
308
318
  tooltipEffect: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "light" | "dark", unknown> | undefined>;
319
+ navTrigger: import("vue").PropType<import("./types").MenuItemTrigger>;
320
+ boxTrigger: import("vue").PropType<import("./types").MenuItemTrigger>;
321
+ itemTrigger: import("vue").PropType<import("./types").MenuItemTrigger>;
322
+ beforeClick: import("vue").PropType<import("./types").BeforeClick>;
309
323
  keepAlive: BooleanConstructor;
310
324
  transitionName: StringConstructor;
311
325
  transitionDelay: {
@@ -335,6 +349,7 @@ declare const _default: import("vue").DefineComponent<{
335
349
  menuTrigger: import("element-plus/es/utils").EpPropMergeType<StringConstructor, "hover" | "click", unknown> | undefined;
336
350
  collapse: boolean;
337
351
  ellipsis: boolean;
352
+ transitionDelay: number;
338
353
  layout: import("./types").Layout;
339
354
  maximized: boolean;
340
355
  compact: boolean;
@@ -342,7 +357,6 @@ declare const _default: import("vue").DefineComponent<{
342
357
  tabBar: boolean;
343
358
  keepAlive: boolean;
344
359
  responsive: boolean;
345
- transitionDelay: number;
346
360
  breadcrumb: boolean;
347
361
  breadcrumbSeparator: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) | ((new (...args: any[]) => (string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>) & {}) | (() => string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>))[], unknown, unknown> | undefined;
348
362
  backTop: boolean;
@@ -1,9 +1,9 @@
1
- import { defineComponent, ref, shallowRef, computed, watch, unref, provide, resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps, createElementVNode, createBlock, createCommentVNode } from "vue";
1
+ import { defineComponent, ref, shallowRef, computed, watch, unref, provide, resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, createSlots, renderList, withCtx, renderSlot, normalizeProps, guardReactiveProps, createBlock, createCommentVNode, createElementVNode } from "vue";
2
2
  import { useRouter } from "vue-router";
3
3
  import { ElBacktop } from "element-plus";
4
- import { mapTree } from "../utils/core";
5
- import { useLicense, LAYOUT_KEY, UNAUTHORIZED_TIP } from "../ele-config-provider/receiver";
6
- import EleAlert from "../ele-alert/index";
4
+ import { mapTree, isExternalLink } from "../utils/core";
5
+ import { useLicense, UNAUTHORIZED_TIP, LAYOUT_KEY } from "../ele-config-provider/receiver";
6
+ import EleWatermark from "../ele-watermark/index";
7
7
  import ProHeader from "./components/pro-header";
8
8
  import ProSidebar from "./components/pro-sidebar";
9
9
  import ProSidebox from "./components/pro-sidebox";
@@ -15,7 +15,7 @@ const _sfc_main = defineComponent({
15
15
  name: "EleProLayout",
16
16
  components: {
17
17
  ElBacktop,
18
- EleAlert,
18
+ EleWatermark,
19
19
  ProHeader,
20
20
  ProSidebar,
21
21
  ProSidebox,
@@ -26,7 +26,7 @@ const _sfc_main = defineComponent({
26
26
  emits: proLayoutEmits,
27
27
  setup(props, { emit }) {
28
28
  const { authenticated } = useLicense();
29
- const { currentRoute } = useRouter();
29
+ const { currentRoute, push } = useRouter();
30
30
  const { disableTransition } = useDisableTransition();
31
31
  const contentRef = ref(null);
32
32
  const levelData = shallowRef([]);
@@ -45,6 +45,7 @@ const _sfc_main = defineComponent({
45
45
  const homeMenuPath = ref(getHomePath(props.homePath));
46
46
  const isHome = ref(false);
47
47
  const mobile = ref(false);
48
+ const watermark = ref(UNAUTHORIZED_TIP.split(",") || "Error");
48
49
  const topLayout = computed(() => props.layout === "top");
49
50
  const mixLayout = computed(() => props.layout === "mix");
50
51
  const mixSidebar = computed(() => props.sidebarLayout === "mix");
@@ -64,6 +65,7 @@ const _sfc_main = defineComponent({
64
65
  const hasSide = sidebox.value || sidebar.value;
65
66
  const fixedSide = props.fixedSidebar && !props.fixedBody && hasSide;
66
67
  const logoAuto = props.logoInHeader || topLayout.value || !hasSide;
68
+ const hasMix = mixSidebar.value && sidebox.value;
67
69
  return [
68
70
  "ele-admin-layout",
69
71
  // 折叠侧栏
@@ -71,7 +73,9 @@ const _sfc_main = defineComponent({
71
73
  // 双侧栏折叠一级
72
74
  { "ele-admin-compact": props.compact && sidebox.value },
73
75
  // 双侧栏
74
- { "ele-admin-mix-sidebar": mixSidebar.value && sidebox.value },
76
+ { "ele-admin-mix-sidebar": hasMix },
77
+ // 双侧栏时侧栏空数据
78
+ { "ele-admin-none-sidebar": hasMix && !sidebar.value },
75
79
  // 固定顶栏
76
80
  { "ele-admin-fixed-header": props.fixedHeader && !props.fixedBody },
77
81
  // 固定侧栏
@@ -96,6 +100,15 @@ const _sfc_main = defineComponent({
96
100
  { "ele-admin-mobile": mobile.value }
97
101
  ];
98
102
  });
103
+ const backTopSelector = computed(() => {
104
+ if (props.backTopTarget) {
105
+ return props.backTopTarget;
106
+ }
107
+ if (props.fixedBody) {
108
+ return ".ele-admin-layout.ele-admin-fixed-body>.ele-admin-main>.ele-admin-body>.ele-admin-content";
109
+ }
110
+ return void 0;
111
+ });
99
112
  const sidebarCollapse = computed(() => {
100
113
  return mobile.value || mixSidebar.value ? false : props.collapse;
101
114
  });
@@ -224,7 +237,8 @@ const _sfc_main = defineComponent({
224
237
  path: d.path,
225
238
  component: d.component,
226
239
  redirect: d.redirect,
227
- meta: d.meta
240
+ meta: d.meta,
241
+ tempChildren: d.children
228
242
  };
229
243
  });
230
244
  const childMenus = getActiveChilds(
@@ -322,6 +336,90 @@ const _sfc_main = defineComponent({
322
336
  });
323
337
  }
324
338
  };
339
+ const onNavItemClick = (item) => {
340
+ if (!item.index || props.navTrigger != "click") {
341
+ return;
342
+ }
343
+ if (props.beforeClick && props.beforeClick(item) === false) {
344
+ return;
345
+ }
346
+ if (isExternalLink(item.index)) {
347
+ window.open(item.index);
348
+ return;
349
+ }
350
+ headerActive.value = item.index;
351
+ const temp = getActiveChilds(
352
+ headerData.value,
353
+ headerActive.value,
354
+ "tempChildren"
355
+ );
356
+ const isChild = !temp.some((d) => {
357
+ var _a;
358
+ return !((_a = d.meta) == null ? void 0 : _a.hide);
359
+ });
360
+ if (isChild && item.index !== unref(currentRoute).fullPath) {
361
+ push(item.index);
362
+ return;
363
+ }
364
+ if (mixSidebar.value) {
365
+ sideboxData.value = temp.map((d) => {
366
+ return {
367
+ name: d.name,
368
+ path: d.path,
369
+ component: d.component,
370
+ redirect: d.redirect,
371
+ meta: d.meta,
372
+ children: props.collapse ? d.children : void 0,
373
+ tempChildren: d.children
374
+ };
375
+ });
376
+ return;
377
+ }
378
+ sidebarData.value = temp;
379
+ };
380
+ const onBoxItemClick = (item) => {
381
+ if (!item.index || props.boxTrigger != "click") {
382
+ return;
383
+ }
384
+ if (props.beforeClick && props.beforeClick(item) === false) {
385
+ return;
386
+ }
387
+ if (isExternalLink(item.index)) {
388
+ window.open(item.index);
389
+ return;
390
+ }
391
+ sideboxActive.value = item.index;
392
+ const temp = getActiveChilds(
393
+ sideboxData.value,
394
+ sideboxActive.value,
395
+ "tempChildren"
396
+ );
397
+ const isChild = !temp.some((d) => {
398
+ var _a;
399
+ return !((_a = d.meta) == null ? void 0 : _a.hide);
400
+ });
401
+ if (isChild && item.index !== unref(currentRoute).fullPath) {
402
+ push(item.index);
403
+ return;
404
+ }
405
+ sidebarData.value = temp;
406
+ };
407
+ const onMenuItemClick = (item) => {
408
+ if (!item.index || props.itemTrigger != "click") {
409
+ return;
410
+ }
411
+ if (props.beforeClick && props.beforeClick(item) === false) {
412
+ return;
413
+ }
414
+ if (isExternalLink(item.index)) {
415
+ window.open(item.index);
416
+ return;
417
+ }
418
+ sidebarActive.value = item.index;
419
+ if (item.index !== unref(currentRoute).fullPath) {
420
+ push(item.index);
421
+ }
422
+ };
325
423
  watch(
326
424
  () => props.menus,
327
425
  () => {
@@ -446,8 +544,8 @@ const _sfc_main = defineComponent({
446
544
  });
447
545
  provide(LAYOUT_KEY, layoutProvide);
448
546
  return {
449
- UNAUTHORIZED_TIP,
450
547
  authenticated,
548
+ watermark,
451
549
  contentRef,
452
550
  levelData,
453
551
  tabData,
@@ -464,6 +562,7 @@ const _sfc_main = defineComponent({
464
562
  sidebox,
465
563
  sidebar,
466
564
  layoutClass,
565
+ backTopSelector,
467
566
  sidebarCollapse,
468
567
  sidebarTheme,
469
568
  updateCollapse,
@@ -475,7 +574,10 @@ const _sfc_main = defineComponent({
475
574
  onSideMenuOpen,
476
575
  onSideMenuClose,
477
576
  onHeadMenuOpen,
478
- onHeadMenuClose
577
+ onHeadMenuClose,
578
+ onNavItemClick,
579
+ onBoxItemClick,
580
+ onMenuItemClick
479
581
  };
480
582
  }
481
583
  });
@@ -486,25 +588,18 @@ const _export_sfc = (sfc, props) => {
486
588
  }
487
589
  return target;
488
590
  };
489
- const _hoisted_1 = { class: "ele-admin-main" };
490
- const _hoisted_2 = { class: "ele-admin-body" };
491
- const _hoisted_3 = {
492
- key: 1,
591
+ const _hoisted_1 = { class: "ele-admin-body" };
592
+ const _hoisted_2 = {
493
593
  ref: "contentRef",
494
594
  class: "ele-admin-content"
495
595
  };
496
- const _hoisted_4 = {
497
- key: 2,
498
- class: "ele-admin-content",
499
- style: { "padding": "16px" }
500
- };
501
596
  function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
502
597
  const _component_ProHeader = resolveComponent("ProHeader");
503
598
  const _component_ProSidebox = resolveComponent("ProSidebox");
504
599
  const _component_ProSidebar = resolveComponent("ProSidebar");
505
600
  const _component_ProTabs = resolveComponent("ProTabs");
506
601
  const _component_ProIframe = resolveComponent("ProIframe");
507
- const _component_EleAlert = resolveComponent("EleAlert");
602
+ const _component_EleWatermark = resolveComponent("EleWatermark");
508
603
  const _component_ElBacktop = resolveComponent("ElBacktop");
509
604
  return openBlock(), createElementBlock("div", {
510
605
  class: normalizeClass(_ctx.layoutClass)
@@ -516,6 +611,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
516
611
  ellipsis: _ctx.ellipsis,
517
612
  ellipsisProps: _ctx.ellipsisProps,
518
613
  menuTrigger: _ctx.menuTrigger,
614
+ itemTrigger: _ctx.navTrigger,
519
615
  collapse: _ctx.collapse,
520
616
  sidebar: _ctx.sidebar,
521
617
  titleSlot: _ctx.headerTitleSlot,
@@ -527,7 +623,8 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
527
623
  isHome: _ctx.isHome,
528
624
  onLogoClick: _ctx.onLogoClick,
529
625
  onOpen: _ctx.onHeadMenuOpen,
530
- onClsoe: _ctx.onHeadMenuClose
626
+ onClsoe: _ctx.onHeadMenuClose,
627
+ onItemClick: _ctx.onNavItemClick
531
628
  }, createSlots({ _: 2 }, [
532
629
  renderList(Object.keys(_ctx.$slots), (name) => {
533
630
  return {
@@ -537,69 +634,54 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
537
634
  ])
538
635
  };
539
636
  })
540
- ]), 1032, ["menus", "headerStyle", "active", "ellipsis", "ellipsisProps", "menuTrigger", "collapse", "sidebar", "titleSlot", "iconSlot", "levels", "breadcrumb", "breadcrumbSeparator", "homePath", "isHome", "onLogoClick", "onOpen", "onClsoe"]),
541
- createElementVNode("div", _hoisted_1, [
542
- _ctx.sidebox ? (openBlock(), createBlock(_component_ProSidebox, {
543
- key: 0,
544
- menus: _ctx.sideboxData,
545
- sidebarStyle: _ctx.sidebarStyle,
546
- colorfulIcon: _ctx.colorfulIcon,
547
- active: _ctx.collapse ? _ctx.sidebarActive : _ctx.sideboxActive,
548
- compact: _ctx.compact,
549
- collapse: _ctx.collapse,
550
- popperEffect: _ctx.tooltipEffect,
551
- titleSlot: _ctx.sideboxTitleSlot,
552
- iconSlot: _ctx.sideboxIconSlot
553
- }, createSlots({ _: 2 }, [
554
- renderList(Object.keys(_ctx.$slots), (name) => {
555
- return {
556
- name,
557
- fn: withCtx((slotProps) => [
558
- renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps || {})))
559
- ])
560
- };
561
- })
562
- ]), 1032, ["menus", "sidebarStyle", "colorfulIcon", "active", "compact", "collapse", "popperEffect", "titleSlot", "iconSlot"])) : createCommentVNode("", true),
563
- _ctx.sidebar ? (openBlock(), createBlock(_component_ProSidebar, {
564
- key: 1,
565
- menus: _ctx.authenticated ? _ctx.sidebarData : [],
566
- sidebarStyle: _ctx.sidebarTheme,
567
- colorfulIcon: _ctx.colorfulIcon,
568
- active: _ctx.sidebarActive,
569
- collapse: _ctx.sidebarCollapse,
570
- uniqueOpened: _ctx.uniqueOpened,
571
- defaultOpeneds: _ctx.sidebarOpeneds,
572
- popperEffect: _ctx.tooltipEffect,
573
- titleSlot: _ctx.sidebarTitleSlot,
574
- iconSlot: _ctx.sidebarIconSlot,
575
- onOpen: _ctx.onSideMenuOpen,
576
- onClsoe: _ctx.onSideMenuClose
577
- }, createSlots({ _: 2 }, [
578
- renderList(Object.keys(_ctx.$slots), (name) => {
579
- return {
580
- name,
581
- fn: withCtx((slotProps) => [
582
- renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps || {})))
583
- ])
584
- };
585
- })
586
- ]), 1032, ["menus", "sidebarStyle", "colorfulIcon", "active", "collapse", "uniqueOpened", "defaultOpeneds", "popperEffect", "titleSlot", "iconSlot", "onOpen", "onClsoe"])) : createCommentVNode("", true),
587
- createElementVNode("div", _hoisted_2, [
588
- _ctx.authenticated && _ctx.tabBar ? (openBlock(), createBlock(_component_ProTabs, {
637
+ ]), 1032, ["menus", "headerStyle", "active", "ellipsis", "ellipsisProps", "menuTrigger", "itemTrigger", "collapse", "sidebar", "titleSlot", "iconSlot", "levels", "breadcrumb", "breadcrumbSeparator", "homePath", "isHome", "onLogoClick", "onOpen", "onClsoe", "onItemClick"]),
638
+ createVNode(_component_EleWatermark, {
639
+ fixed: true,
640
+ height: 68,
641
+ content: _ctx.watermark,
642
+ disabled: _ctx.authenticated,
643
+ class: "ele-admin-main"
644
+ }, {
645
+ default: withCtx(() => [
646
+ _ctx.sidebox ? (openBlock(), createBlock(_component_ProSidebox, {
589
647
  key: 0,
590
- tabs: _ctx.tabData,
591
- active: _ctx.tabActive,
592
- tabStyle: _ctx.tabStyle,
593
- fixedHome: _ctx.fixedHome,
594
- homePath: _ctx.homeMenuPath,
595
- isHome: _ctx.isHome,
596
- tabContextMenu: _ctx.tabContextMenu,
597
- tabContextMenus: _ctx.tabContextMenus,
598
- tabSortable: _ctx.tabSortable,
599
- onTabClick: _ctx.onTabClick,
600
- onTabRemove: _ctx.onTabRemove,
601
- onTabContextMenu: _ctx.onTabContextMenu,
602
- onTabSortChange: _ctx.onTabSortChange
648
+ menus: _ctx.sideboxData,
649
+ sidebarStyle: _ctx.sidebarStyle,
650
+ colorfulIcon: _ctx.colorfulIcon,
651
+ active: _ctx.collapse ? _ctx.sidebarActive : _ctx.sideboxActive,
652
+ compact: _ctx.compact,
653
+ collapse: _ctx.collapse,
654
+ popperEffect: _ctx.tooltipEffect,
655
+ itemTrigger: _ctx.boxTrigger,
656
+ titleSlot: _ctx.sideboxTitleSlot,
657
+ iconSlot: _ctx.sideboxIconSlot,
658
+ onItemClick: _ctx.onBoxItemClick
659
+ }, createSlots({ _: 2 }, [
660
+ renderList(Object.keys(_ctx.$slots), (name) => {
661
+ return {
662
+ name,
663
+ fn: withCtx((slotProps) => [
664
+ renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps || {})))
665
+ ])
666
+ };
667
+ })
668
+ ]), 1032, ["menus", "sidebarStyle", "colorfulIcon", "active", "compact", "collapse", "popperEffect", "itemTrigger", "titleSlot", "iconSlot", "onItemClick"])) : createCommentVNode("", true),
669
+ _ctx.sidebar ? (openBlock(), createBlock(_component_ProSidebar, {
670
+ key: 1,
671
+ menus: _ctx.sidebarData,
672
+ sidebarStyle: _ctx.sidebarTheme,
673
+ colorfulIcon: _ctx.colorfulIcon,
674
+ active: _ctx.sidebarActive,
675
+ collapse: _ctx.sidebarCollapse,
676
+ uniqueOpened: _ctx.uniqueOpened,
677
+ defaultOpeneds: _ctx.sidebarOpeneds,
678
+ popperEffect: _ctx.tooltipEffect,
679
+ itemTrigger: _ctx.itemTrigger,
680
+ titleSlot: _ctx.sidebarTitleSlot,
681
+ iconSlot: _ctx.sidebarIconSlot,
682
+ onOpen: _ctx.onSideMenuOpen,
683
+ onClsoe: _ctx.onSideMenuClose,
684
+ onItemClick: _ctx.onMenuItemClick
603
685
  }, createSlots({ _: 2 }, [
604
686
  renderList(Object.keys(_ctx.$slots), (name) => {
605
687
  return {
@@ -609,28 +691,49 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
609
691
  ])
610
692
  };
611
693
  })
612
- ]), 1032, ["tabs", "active", "tabStyle", "fixedHome", "homePath", "isHome", "tabContextMenu", "tabContextMenus", "tabSortable", "onTabClick", "onTabRemove", "onTabContextMenu", "onTabSortChange"])) : createCommentVNode("", true),
613
- _ctx.authenticated ? (openBlock(), createElementBlock("div", _hoisted_3, [
614
- _ctx.tabBar && _ctx.keepAlive ? (openBlock(), createBlock(_component_ProIframe, {
694
+ ]), 1032, ["menus", "sidebarStyle", "colorfulIcon", "active", "collapse", "uniqueOpened", "defaultOpeneds", "popperEffect", "itemTrigger", "titleSlot", "iconSlot", "onOpen", "onClsoe", "onItemClick"])) : createCommentVNode("", true),
695
+ createElementVNode("div", _hoisted_1, [
696
+ _ctx.tabBar ? (openBlock(), createBlock(_component_ProTabs, {
615
697
  key: 0,
616
- keepAlive: _ctx.keepAlive,
617
- transitionName: _ctx.transitionName,
618
- transitionDelay: _ctx.transitionDelay,
619
- tabData: _ctx.tabData,
620
- tabActive: _ctx.tabActive
621
- }, null, 8, ["keepAlive", "transitionName", "transitionDelay", "tabData", "tabActive"])) : createCommentVNode("", true),
622
- renderSlot(_ctx.$slots, "default"),
623
- !_ctx.hideFooter ? renderSlot(_ctx.$slots, "footer", { key: 1 }) : createCommentVNode("", true)
624
- ], 512)) : (openBlock(), createElementBlock("div", _hoisted_4, [
625
- createVNode(_component_EleAlert, {
626
- type: "warning",
627
- showIcon: true,
628
- closable: false,
629
- title: _ctx.UNAUTHORIZED_TIP
630
- }, null, 8, ["title"])
631
- ]))
632
- ])
633
- ]),
698
+ tabs: _ctx.tabData,
699
+ active: _ctx.tabActive,
700
+ tabStyle: _ctx.tabStyle,
701
+ fixedHome: _ctx.fixedHome,
702
+ homePath: _ctx.homeMenuPath,
703
+ isHome: _ctx.isHome,
704
+ tabContextMenu: _ctx.tabContextMenu,
705
+ tabContextMenus: _ctx.tabContextMenus,
706
+ tabSortable: _ctx.tabSortable,
707
+ onTabClick: _ctx.onTabClick,
708
+ onTabRemove: _ctx.onTabRemove,
709
+ onTabContextMenu: _ctx.onTabContextMenu,
710
+ onTabSortChange: _ctx.onTabSortChange
711
+ }, createSlots({ _: 2 }, [
712
+ renderList(Object.keys(_ctx.$slots), (name) => {
713
+ return {
714
+ name,
715
+ fn: withCtx((slotProps) => [
716
+ renderSlot(_ctx.$slots, name, normalizeProps(guardReactiveProps(slotProps || {})))
717
+ ])
718
+ };
719
+ })
720
+ ]), 1032, ["tabs", "active", "tabStyle", "fixedHome", "homePath", "isHome", "tabContextMenu", "tabContextMenus", "tabSortable", "onTabClick", "onTabRemove", "onTabContextMenu", "onTabSortChange"])) : createCommentVNode("", true),
721
+ createElementVNode("div", _hoisted_2, [
722
+ _ctx.tabBar && _ctx.keepAlive ? (openBlock(), createBlock(_component_ProIframe, {
723
+ key: 0,
724
+ keepAlive: _ctx.keepAlive,
725
+ transitionName: _ctx.transitionName,
726
+ transitionDelay: _ctx.transitionDelay,
727
+ tabData: _ctx.tabData,
728
+ tabActive: _ctx.tabActive
729
+ }, null, 8, ["keepAlive", "transitionName", "transitionDelay", "tabData", "tabActive"])) : createCommentVNode("", true),
730
+ renderSlot(_ctx.$slots, "default"),
731
+ !_ctx.hideFooter ? renderSlot(_ctx.$slots, "footer", { key: 1 }) : createCommentVNode("", true)
732
+ ], 512)
733
+ ])
734
+ ]),
735
+ _: 3
736
+ }, 8, ["content", "disabled"]),
634
737
  createElementVNode("div", {
635
738
  class: "ele-admin-mask",
636
739
  onClick: _cache[0] || (_cache[0] = (...args) => _ctx.updateCollapse && _ctx.updateCollapse(...args))
@@ -640,7 +743,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
640
743
  right: _ctx.backTopRight,
641
744
  bottom: _ctx.backTopBottom,
642
745
  visibilityHeight: _ctx.backTopVisibilityHeight,
643
- target: _ctx.fixedBody ? ".ele-admin-layout .ele-admin-content" : void 0
746
+ target: _ctx.backTopSelector
644
747
  }, null, 8, ["right", "bottom", "visibilityHeight", "target"])) : createCommentVNode("", true)
645
748
  ], 2);
646
749
  }