bmp-layout 0.0.24 → 0.0.25-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.
- package/bmp-layout.es.js +677 -362
- package/bmp-layout.umd.js +4 -4
- package/{en-BXmz6NO1.mjs → en-BLMsUBCM.mjs} +4 -3
- package/locales/en.js +6 -4
- package/locales/zh-CN.js +4 -3
- package/logo.svg +2 -25
- package/package.json +1 -1
- package/style.css +1 -1
- package/svgs/arrow-left.svg +3 -0
- package/svgs/arrow-right.svg +3 -0
- package/svgs/bar-chart.svg +5 -0
- package/svgs/bell.svg +3 -0
- package/svgs/branch.svg +4 -0
- package/svgs/clipboard.svg +4 -0
- package/svgs/company.svg +8 -0
- package/svgs/currency.svg +4 -0
- package/svgs/database.svg +4 -0
- package/svgs/document.svg +4 -0
- package/svgs/folder.svg +4 -0
- package/svgs/grid-view.svg +18 -0
- package/svgs/hexagon-node.svg +4 -0
- package/svgs/hexagon.svg +3 -0
- package/svgs/inbox.svg +4 -0
- package/svgs/inspur-xinlian.svg +7 -0
- package/svgs/list-view.svg +8 -0
- package/svgs/location.svg +4 -0
- package/svgs/logo.svg +2 -25
- package/svgs/menu-trigger-filled.svg +24 -0
- package/svgs/menu-trigger.svg +4 -3
- package/svgs/refresh.svg +3 -0
- package/svgs/secure-doc.svg +4 -0
- package/svgs/user.svg +4 -0
- package/svgs/zoom-in.svg +4 -0
- package/svgs/zoom-out.svg +3 -0
- package/{zh-CN-CY7gEVUl.mjs → zh-CN-i4M-o5m6.mjs} +4 -3
package/bmp-layout.es.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { openBlock, createBlock, unref, normalizeClass,
|
|
1
|
+
import { openBlock, createBlock, unref, normalizeClass, ref, computed, watch, withCtx, createElementBlock, createElementVNode, normalizeStyle, nextTick, createVNode, Fragment, resolveComponent, defineComponent, isVNode, renderList, createCommentVNode, createTextVNode, toDisplayString, renderSlot, onBeforeMount, withModifiers, onMounted, onUnmounted, Teleport, Transition, provide, KeepAlive, resolveDynamicComponent, TransitionGroup, mergeProps, isRef, withDirectives, resolveDirective, watchEffect, vShow, useSlots, useAttrs, createSlots, inject, onBeforeUnmount, reactive, onUpdated, render, useCssVars } from "vue";
|
|
2
2
|
import { createPinia, setActivePinia, defineStore } from "pinia";
|
|
3
3
|
import piniaPluginPersistedstate from "pinia-plugin-persistedstate";
|
|
4
4
|
import { cloneDeep, omit } from "lodash-es";
|
|
5
|
-
import { ElBacktop, ElIcon, ElMenuItem, ElSubMenu, ElScrollbar, ElMenu, ElDropdown, ElDropdownMenu, ElDropdownItem, ElInput, ElBadge, ElAvatar, ElBreadcrumb, ElBreadcrumbItem, ElDrawer, ElButton, ElMessage, ElConfigProvider, ElCard, ElPagination, ElDialog, ElAlert, ElAffix, ElImageViewer, ElMessageBox, ElNotification, ElUpload, ElLink, ElAutocomplete, ElButtonGroup, ElCarousel, ElCarouselItem, ElCollapse, ElCollapseItem, ElCollapseTransition, ElDivider, ElEmpty, ElOverlay, ElPageHeader, ElProgress, ElResult, ElSkeleton, ElSkeletonItem, ElSpace, ElTag, ElText, ElCascader, ElCascaderPanel, ElCheckbox, ElCheckboxButton, ElCheckboxGroup, ElColorPicker, ElDatePicker, ElForm, ElFormItem, ElInputNumber, ElInputTag, ElRadio, ElRadioButton, ElRadioGroup, ElRate, ElSelect, ElOption, ElOptionGroup, ElSelectV2, ElSlider, ElSwitch, ElTimePicker, ElTimeSelect, ElTransfer, ElTreeSelect, ElMention, ElCalendar, ElCheckTag, ElCountdown, ElDescriptions, ElDescriptionsItem, ElImage, ElStatistic, ElTable, ElTableColumn, ElTimeline, ElTimelineItem, ElTree, ElTreeV2, ElMenuItemGroup, ElTabs, ElTabPane,
|
|
5
|
+
import { ElBacktop, ElIcon, ElMenuItem, ElSubMenu, ElScrollbar, ElMenu, ElDropdown, ElDropdownMenu, ElDropdownItem, ElInput, ElBadge, ElAvatar, ElBreadcrumb, ElBreadcrumbItem, ElDrawer, ElButton, ElMessage, ElPopover, ElConfigProvider, ElCard, ElPagination, ElDialog, ElAlert, ElAffix, ElImageViewer, ElMessageBox, ElNotification, ElUpload, ElLink, ElAutocomplete, ElButtonGroup, ElCarousel, ElCarouselItem, ElCollapse, ElCollapseItem, ElCollapseTransition, ElDivider, ElEmpty, ElOverlay, ElPageHeader, ElProgress, ElResult, ElSkeleton, ElSkeletonItem, ElSpace, ElTag, ElText, ElCascader, ElCascaderPanel, ElCheckbox, ElCheckboxButton, ElCheckboxGroup, ElColorPicker, ElDatePicker, ElForm, ElFormItem, ElInputNumber, ElInputTag, ElRadio, ElRadioButton, ElRadioGroup, ElRate, ElSelect, ElOption, ElOptionGroup, ElSelectV2, ElSlider, ElSwitch, ElTimePicker, ElTimeSelect, ElTransfer, ElTreeSelect, ElMention, ElCalendar, ElCheckTag, ElCountdown, ElDescriptions, ElDescriptionsItem, ElImage, ElStatistic, ElTable, ElTableColumn, ElTimeline, ElTimelineItem, ElTree, ElTreeV2, ElMenuItemGroup, ElTabs, ElTabPane, ElPopconfirm, ElTooltip, ElContainer, ElAside, ElFooter, ElHeader, ElMain, ElRow, ElCol, ElSplitter, ElSplitterPanel, ElSegmented, ElTour, ElTourStep, ElWatermark, ElPopper, ElAnchor, ElSteps } from "element-plus";
|
|
6
6
|
import { ElAffix as ElAffix2, ElAlert as ElAlert2, ElAnchor as ElAnchor2, ElAside as ElAside2, ElAutocomplete as ElAutocomplete2, ElAvatar as ElAvatar2, ElBacktop as ElBacktop2, ElBadge as ElBadge2, ElBreadcrumb as ElBreadcrumb2, ElBreadcrumbItem as ElBreadcrumbItem2, ElButton as ElButton2, ElButtonGroup as ElButtonGroup2, ElCalendar as ElCalendar2, ElCard as ElCard2, ElCarousel as ElCarousel2, ElCarouselItem as ElCarouselItem2, ElCascader as ElCascader2, ElCascaderPanel as ElCascaderPanel2, ElCheckTag as ElCheckTag2, ElCheckbox as ElCheckbox2, ElCheckboxButton as ElCheckboxButton2, ElCheckboxGroup as ElCheckboxGroup2, ElCol as ElCol2, ElCollapse as ElCollapse2, ElCollapseItem as ElCollapseItem2, ElCollapseTransition as ElCollapseTransition2, ElColorPicker as ElColorPicker2, ElConfigProvider as ElConfigProvider2, ElContainer as ElContainer2, ElCountdown as ElCountdown2, ElDatePicker as ElDatePicker2, ElDescriptions as ElDescriptions2, ElDescriptionsItem as ElDescriptionsItem2, ElDialog as ElDialog2, ElDivider as ElDivider2, ElDrawer as ElDrawer2, ElDropdown as ElDropdown2, ElDropdownItem as ElDropdownItem2, ElDropdownMenu as ElDropdownMenu2, ElEmpty as ElEmpty2, ElFooter as ElFooter2, ElForm as ElForm2, ElFormItem as ElFormItem2, ElHeader as ElHeader2, ElIcon as ElIcon2, ElImage as ElImage2, ElImageViewer as ElImageViewer2, ElInfiniteScroll, ElInput as ElInput2, ElInputNumber as ElInputNumber2, ElInputTag as ElInputTag2, ElLink as ElLink2, ElLoading, ElMain as ElMain2, ElMention as ElMention2, ElMenu as ElMenu2, ElMenuItem as ElMenuItem2, ElMenuItemGroup as ElMenuItemGroup2, ElMessage as ElMessage2, ElMessageBox as ElMessageBox2, ElNotification as ElNotification2, ElOption as ElOption2, ElOptionGroup as ElOptionGroup2, ElOverlay as ElOverlay2, ElPageHeader as ElPageHeader2, ElPagination as ElPagination2, ElPopconfirm as ElPopconfirm2, ElPopover as ElPopover2, ElPopper as ElPopper2, ElProgress as ElProgress2, ElRadio as ElRadio2, ElRadioButton as ElRadioButton2, ElRadioGroup as ElRadioGroup2, ElRate as ElRate2, ElResult as ElResult2, ElRow as ElRow2, ElScrollbar as ElScrollbar2, ElSegmented as ElSegmented2, ElSelect as ElSelect2, ElSelectV2 as ElSelectV22, ElSkeleton as ElSkeleton2, ElSkeletonItem as ElSkeletonItem2, ElSlider as ElSlider2, ElSpace as ElSpace2, ElSplitter as ElSplitter2, ElSplitterPanel as ElSplitterPanel2, ElStatistic as ElStatistic2, ElSteps as ElSteps2, ElSubMenu as ElSubMenu2, ElSwitch as ElSwitch2, ElTabPane as ElTabPane2, ElTable as ElTable2, ElTableColumn as ElTableColumn2, ElTabs as ElTabs2, ElTag as ElTag2, ElText as ElText2, ElTimePicker as ElTimePicker2, ElTimeSelect as ElTimeSelect2, ElTimeline as ElTimeline2, ElTimelineItem as ElTimelineItem2, ElTooltip as ElTooltip2, ElTour as ElTour2, ElTourStep as ElTourStep2, ElTransfer as ElTransfer2, ElTree as ElTree2, ElTreeSelect as ElTreeSelect2, ElTreeV2 as ElTreeV22, ElUpload as ElUpload2, ElWatermark as ElWatermark2 } from "element-plus";
|
|
7
7
|
import { createRouter, createWebHashHistory, useRoute, useRouter } from "vue-router";
|
|
8
8
|
import { useTemplateRefsList, useClipboard, useWindowSize } from "@vueuse/core";
|
|
@@ -48,6 +48,27 @@ const generateUUID = () => {
|
|
|
48
48
|
return (c === "x" ? random : random & 3 | 8).toString(16);
|
|
49
49
|
});
|
|
50
50
|
};
|
|
51
|
+
const deepClone = (obj) => {
|
|
52
|
+
if (obj === null || typeof obj !== "object") {
|
|
53
|
+
return obj;
|
|
54
|
+
}
|
|
55
|
+
if (obj instanceof Date) {
|
|
56
|
+
return new Date(obj.getTime());
|
|
57
|
+
}
|
|
58
|
+
if (obj instanceof Array) {
|
|
59
|
+
return obj.map((item) => deepClone(item));
|
|
60
|
+
}
|
|
61
|
+
if (typeof obj === "object") {
|
|
62
|
+
const clonedObj = {};
|
|
63
|
+
for (const key in obj) {
|
|
64
|
+
if (obj.hasOwnProperty(key)) {
|
|
65
|
+
clonedObj[key] = deepClone(obj[key]);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return clonedObj;
|
|
69
|
+
}
|
|
70
|
+
return obj;
|
|
71
|
+
};
|
|
51
72
|
var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {};
|
|
52
73
|
function getDefaultExportFromCjs(x) {
|
|
53
74
|
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, "default") ? x["default"] : x;
|
|
@@ -252,6 +273,7 @@ const CACHE_KEY = {
|
|
|
252
273
|
LANG: "lang",
|
|
253
274
|
THEME: "theme",
|
|
254
275
|
LAYOUT: "layout",
|
|
276
|
+
TOPNAV: "TopNav",
|
|
255
277
|
DICT_CACHE: "dictCache",
|
|
256
278
|
// 登录表单
|
|
257
279
|
LoginForm: "loginForm",
|
|
@@ -375,20 +397,25 @@ const whiteLight = {
|
|
|
375
397
|
// 默认背景色
|
|
376
398
|
bgColor: "#edf1ff",
|
|
377
399
|
// 左侧菜单背景颜色
|
|
378
|
-
leftMenuBgColor: "
|
|
400
|
+
leftMenuBgColor: "rgba(255,255,255,0.8)",
|
|
379
401
|
// 左侧菜单项选中颜色
|
|
380
402
|
leftMenuItemBgActiveColor: "rgba(36,104,242,1)",
|
|
381
403
|
// 左侧菜单项移入颜色
|
|
382
|
-
leftMenuItemBgHoverColor: "
|
|
404
|
+
leftMenuItemBgHoverColor: "#eef4ff",
|
|
383
405
|
// 左侧菜单文字颜色
|
|
384
406
|
leftMenuTextColor: "#333",
|
|
407
|
+
leftMenuTextHoverColor: "#333",
|
|
385
408
|
// 顶部菜单项移入颜色
|
|
386
409
|
topMenuItemBgActiveColor: "rgba(36,104,242,1)",
|
|
387
410
|
topMenuItemBgHoverColor: "rgba(36,104,242,0.8)",
|
|
388
411
|
// 头部背景颜色
|
|
389
412
|
topHeaderBgColor: "#fff",
|
|
390
413
|
// 头部文字颜色
|
|
391
|
-
|
|
414
|
+
topHeaderIconColor: "#3f5172",
|
|
415
|
+
topHeaderTextColor: "#333",
|
|
416
|
+
topHeaderHoverColor: "#2567f0",
|
|
417
|
+
topHeaderCompanyIconColor: "#88a0c3",
|
|
418
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,1)",
|
|
392
419
|
// 菜单触发器背景颜色
|
|
393
420
|
menuTriggerBgColor: "#2468F2"
|
|
394
421
|
};
|
|
@@ -434,13 +461,18 @@ const blueLight = {
|
|
|
434
461
|
leftMenuItemBgHoverColor: "rgba(103,153,255,0.5)",
|
|
435
462
|
// 左侧菜单文字颜色
|
|
436
463
|
leftMenuTextColor: "#fff",
|
|
464
|
+
leftMenuTextHoverColor: "#fff",
|
|
437
465
|
// 顶部菜单项移入颜色
|
|
438
466
|
topMenuItemBgActiveColor: "rgba(103,153,255,1)",
|
|
439
467
|
topMenuItemBgHoverColor: "rgba(103,153,255,0.5)",
|
|
440
468
|
// 头部背景颜色
|
|
441
469
|
topHeaderBgColor: "270deg, #29ACFE 0%, #2468F2 100%",
|
|
442
470
|
// 头部文字颜色
|
|
471
|
+
topHeaderIconColor: "#fff",
|
|
443
472
|
topHeaderTextColor: "#fff",
|
|
473
|
+
topHeaderHoverColor: "#f6f6f6",
|
|
474
|
+
topHeaderCompanyIconColor: "#fff",
|
|
475
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,.3)",
|
|
444
476
|
// 菜单触发器背景颜色
|
|
445
477
|
menuTriggerBgColor: "transparent"
|
|
446
478
|
};
|
|
@@ -492,7 +524,11 @@ const redLight = {
|
|
|
492
524
|
// 头部背景颜色
|
|
493
525
|
topHeaderBgColor: "0, #ea4636, #ea4636",
|
|
494
526
|
// 头部文字颜色
|
|
527
|
+
topHeaderIconColor: "#fff",
|
|
495
528
|
topHeaderTextColor: "#fff",
|
|
529
|
+
topHeaderHoverColor: "#f6f6f6",
|
|
530
|
+
topHeaderCompanyIconColor: "#fff",
|
|
531
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,.3)",
|
|
496
532
|
// 菜单触发器背景颜色
|
|
497
533
|
menuTriggerBgColor: "transparent"
|
|
498
534
|
};
|
|
@@ -544,7 +580,11 @@ const greenLight = {
|
|
|
544
580
|
// 头部背景颜色
|
|
545
581
|
topHeaderBgColor: "0, #0acfa5, #0acfa5",
|
|
546
582
|
// 头部文字颜色
|
|
583
|
+
topHeaderIconColor: "#fff",
|
|
547
584
|
topHeaderTextColor: "#fff",
|
|
585
|
+
topHeaderHoverColor: "#f6f6f6",
|
|
586
|
+
topHeaderCompanyIconColor: "#fff",
|
|
587
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,.3)",
|
|
548
588
|
// 菜单触发器背景颜色
|
|
549
589
|
menuTriggerBgColor: "transparent"
|
|
550
590
|
};
|
|
@@ -596,7 +636,11 @@ const springFestival = {
|
|
|
596
636
|
// 头部背景颜色
|
|
597
637
|
topHeaderBgColor: "270deg, #f25416 0%, #ef2704 100%",
|
|
598
638
|
// 头部文字颜色
|
|
639
|
+
topHeaderIconColor: "#fff",
|
|
599
640
|
topHeaderTextColor: "#fff",
|
|
641
|
+
topHeaderHoverColor: "#f6f6f6",
|
|
642
|
+
topHeaderCompanyIconColor: "#fff",
|
|
643
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,.3)",
|
|
600
644
|
// 菜单触发器背景颜色
|
|
601
645
|
menuTriggerBgColor: "transparent"
|
|
602
646
|
};
|
|
@@ -648,7 +692,11 @@ const dragonBoatFestival = {
|
|
|
648
692
|
// 头部背景颜色
|
|
649
693
|
topHeaderBgColor: "270deg, #3ac677 0%, #0dc35c 100%",
|
|
650
694
|
// 头部文字颜色
|
|
695
|
+
topHeaderIconColor: "#fff",
|
|
651
696
|
topHeaderTextColor: "#fff",
|
|
697
|
+
topHeaderHoverColor: "#f6f6f6",
|
|
698
|
+
topHeaderCompanyIconColor: "#fff",
|
|
699
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,.3)",
|
|
652
700
|
// 菜单触发器背景颜色
|
|
653
701
|
menuTriggerBgColor: "transparent"
|
|
654
702
|
};
|
|
@@ -700,7 +748,11 @@ const midAutumnFestival = {
|
|
|
700
748
|
// 头部背景颜色
|
|
701
749
|
topHeaderBgColor: "270deg, #fc9b4b 0%, #fa771d 100%",
|
|
702
750
|
// 头部文字颜色
|
|
751
|
+
topHeaderIconColor: "#fff",
|
|
703
752
|
topHeaderTextColor: "#fff",
|
|
753
|
+
topHeaderHoverColor: "#f6f6f6",
|
|
754
|
+
topHeaderCompanyIconColor: "#fff",
|
|
755
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,.3)",
|
|
704
756
|
// 菜单触发器背景颜色
|
|
705
757
|
menuTriggerBgColor: "transparent"
|
|
706
758
|
};
|
|
@@ -752,7 +804,11 @@ const newYearsDay = {
|
|
|
752
804
|
// 头部背景颜色
|
|
753
805
|
topHeaderBgColor: "270deg, #f84958 0%, #f63344 100%",
|
|
754
806
|
// 头部文字颜色
|
|
807
|
+
topHeaderIconColor: "#fff",
|
|
755
808
|
topHeaderTextColor: "#fff",
|
|
809
|
+
topHeaderHoverColor: "#f6f6f6",
|
|
810
|
+
topHeaderCompanyIconColor: "#fff",
|
|
811
|
+
topHeaderCompanyBgColor: "rgba(246,248,255,.3)",
|
|
756
812
|
// 菜单触发器背景颜色
|
|
757
813
|
menuTriggerBgColor: "transparent"
|
|
758
814
|
};
|
|
@@ -773,7 +829,7 @@ const useAppStore = defineStore("layout-app", {
|
|
|
773
829
|
userInfo: "userInfo",
|
|
774
830
|
// 登录信息存储字段-建议每个项目换一个字段,避免与其他项目冲突
|
|
775
831
|
sizeMap: ["default", "large", "small"],
|
|
776
|
-
title: "
|
|
832
|
+
title: "浪潮信链",
|
|
777
833
|
// 标题
|
|
778
834
|
pageLoading: false,
|
|
779
835
|
// 路由跳转loading
|
|
@@ -803,13 +859,15 @@ const useAppStore = defineStore("layout-app", {
|
|
|
803
859
|
// 显示页脚
|
|
804
860
|
greyMode: false,
|
|
805
861
|
// 是否开始灰色模式,用于特殊悼念日
|
|
806
|
-
layout: wsCache
|
|
807
|
-
|
|
862
|
+
// layout: wsCache.get(CACHE_KEY.LAYOUT) || 'left', // layout布局
|
|
863
|
+
layout: "top",
|
|
808
864
|
currentSize: wsCache$3.get("default") || "default",
|
|
809
865
|
// 组件尺寸
|
|
810
866
|
theme: wsCache$3.get(CACHE_KEY.THEME) || "whiteLight",
|
|
811
|
-
isSetTheme: false
|
|
867
|
+
isSetTheme: false,
|
|
812
868
|
//初始化主题色
|
|
869
|
+
// topNav: wsCache.get(CACHE_KEY.TOPNAV) || 'normal', // 顶部导航栏 normal、floating、collapsed
|
|
870
|
+
topNav: "normal"
|
|
813
871
|
};
|
|
814
872
|
},
|
|
815
873
|
getters: {
|
|
@@ -875,6 +933,9 @@ const useAppStore = defineStore("layout-app", {
|
|
|
875
933
|
},
|
|
876
934
|
getIsSetTheme() {
|
|
877
935
|
return this.isSetTheme;
|
|
936
|
+
},
|
|
937
|
+
getTopNav() {
|
|
938
|
+
return this.topNav;
|
|
878
939
|
}
|
|
879
940
|
},
|
|
880
941
|
actions: {
|
|
@@ -936,6 +997,10 @@ const useAppStore = defineStore("layout-app", {
|
|
|
936
997
|
setFooter(footer) {
|
|
937
998
|
this.footer = footer;
|
|
938
999
|
},
|
|
1000
|
+
setTopNav(topNav) {
|
|
1001
|
+
this.topNav = topNav;
|
|
1002
|
+
wsCache$3.set(CACHE_KEY.TOPNAV, topNav);
|
|
1003
|
+
},
|
|
939
1004
|
async setUserTheme() {
|
|
940
1005
|
}
|
|
941
1006
|
},
|
|
@@ -1044,6 +1109,26 @@ const addToChildren = (routes, children, routeModule) => {
|
|
|
1044
1109
|
}
|
|
1045
1110
|
}
|
|
1046
1111
|
};
|
|
1112
|
+
function findRouterBy(routers, key, value) {
|
|
1113
|
+
var _a2;
|
|
1114
|
+
for (const router of routers) {
|
|
1115
|
+
if (router[key] === value)
|
|
1116
|
+
return router;
|
|
1117
|
+
if ((_a2 = router.children) == null ? void 0 : _a2.length) {
|
|
1118
|
+
const found = findRouterBy(router.children, key, value);
|
|
1119
|
+
if (found)
|
|
1120
|
+
return found;
|
|
1121
|
+
}
|
|
1122
|
+
}
|
|
1123
|
+
return void 0;
|
|
1124
|
+
}
|
|
1125
|
+
function buildChildPaths(router) {
|
|
1126
|
+
const parentPath = router.path ? router.path.startsWith("/") ? router.path : `/${router.path}` : "";
|
|
1127
|
+
return (router.children || []).map((child) => {
|
|
1128
|
+
const childPath = child.path ? parentPath.endsWith("/") ? child.path.startsWith("/") ? child.path.substring(1) : child.path : child.path.startsWith("/") ? child.path : `/${child.path}` : "";
|
|
1129
|
+
return { ...child, path: `${parentPath}${childPath}` };
|
|
1130
|
+
});
|
|
1131
|
+
}
|
|
1047
1132
|
const usePermissionStore = defineStore("layout-permission", {
|
|
1048
1133
|
state: () => ({
|
|
1049
1134
|
routers: [],
|
|
@@ -1052,6 +1137,7 @@ const usePermissionStore = defineStore("layout-permission", {
|
|
|
1052
1137
|
leftMenuRouters: [],
|
|
1053
1138
|
moduleRouters: [],
|
|
1054
1139
|
moduleId: void 0,
|
|
1140
|
+
moduleName: void 0,
|
|
1055
1141
|
roleRouters: []
|
|
1056
1142
|
// 菜单数据存储到 state,确保响应式
|
|
1057
1143
|
}),
|
|
@@ -1079,6 +1165,9 @@ const usePermissionStore = defineStore("layout-permission", {
|
|
|
1079
1165
|
},
|
|
1080
1166
|
getModuleId() {
|
|
1081
1167
|
return this.moduleId;
|
|
1168
|
+
},
|
|
1169
|
+
getModuleName() {
|
|
1170
|
+
return this.moduleName;
|
|
1082
1171
|
}
|
|
1083
1172
|
},
|
|
1084
1173
|
actions: {
|
|
@@ -1101,22 +1190,15 @@ const usePermissionStore = defineStore("layout-permission", {
|
|
|
1101
1190
|
const childPath = child.path ? child.path.startsWith("/") ? child.path : `/${child.path}` : "";
|
|
1102
1191
|
return { ...child, path: `${basePath}${childPath}` };
|
|
1103
1192
|
});
|
|
1104
|
-
this.leftMenuRouters =
|
|
1105
|
-
nextTick(() => {
|
|
1106
|
-
this.leftMenuRouters = routers;
|
|
1107
|
-
});
|
|
1193
|
+
this.leftMenuRouters = routers;
|
|
1108
1194
|
},
|
|
1109
1195
|
// 处理模块对应菜单
|
|
1110
1196
|
setModuleRouters(menuId) {
|
|
1111
|
-
this.
|
|
1112
|
-
const findRouter = this.getRoleRouters.find((router) => router.id === menuId);
|
|
1197
|
+
const findRouter = findRouterBy(this.getRoleRouters, "id", menuId);
|
|
1113
1198
|
if (findRouter) {
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
this.moduleRouters =
|
|
1117
|
-
const childPath = child.path ? parentPath.endsWith("/") ? child.path.startsWith("/") ? child.path.substring(1) : child.path : child.path.startsWith("/") ? child.path : `/${child.path}` : "";
|
|
1118
|
-
return { ...child, path: `${parentPath}${childPath}` };
|
|
1119
|
-
});
|
|
1199
|
+
this.moduleId = findRouter.id;
|
|
1200
|
+
this.moduleName = findRouter.name;
|
|
1201
|
+
this.moduleRouters = buildChildPaths(findRouter);
|
|
1120
1202
|
}
|
|
1121
1203
|
},
|
|
1122
1204
|
resetState() {
|
|
@@ -1126,19 +1208,16 @@ const usePermissionStore = defineStore("layout-permission", {
|
|
|
1126
1208
|
this.leftMenuRouters = [];
|
|
1127
1209
|
this.moduleRouters = [];
|
|
1128
1210
|
this.moduleId = void 0;
|
|
1211
|
+
this.moduleName = void 0;
|
|
1129
1212
|
this.roleRouters = [];
|
|
1130
1213
|
},
|
|
1131
1214
|
// 处理模块对应菜单(通过模块code)
|
|
1132
1215
|
setModuleRoutersByCode(moduleCode) {
|
|
1133
|
-
const findRouter = this.getRoleRouters
|
|
1216
|
+
const findRouter = findRouterBy(this.getRoleRouters, "moduleCode", moduleCode);
|
|
1134
1217
|
if (findRouter) {
|
|
1135
1218
|
this.moduleId = findRouter.id;
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
this.moduleRouters = children.map((child) => {
|
|
1139
|
-
const childPath = child.path ? parentPath.endsWith("/") ? child.path.startsWith("/") ? child.path.substring(1) : child.path : child.path.startsWith("/") ? child.path : `/${child.path}` : "";
|
|
1140
|
-
return { ...child, path: `${parentPath}${childPath}` };
|
|
1141
|
-
});
|
|
1219
|
+
this.moduleName = findRouter.name;
|
|
1220
|
+
this.moduleRouters = buildChildPaths(findRouter);
|
|
1142
1221
|
}
|
|
1143
1222
|
}
|
|
1144
1223
|
},
|
|
@@ -3489,8 +3568,8 @@ try {
|
|
|
3489
3568
|
}
|
|
3490
3569
|
} catch (err) {
|
|
3491
3570
|
}
|
|
3492
|
-
const _hoisted_1$
|
|
3493
|
-
const _hoisted_2$
|
|
3571
|
+
const _hoisted_1$d = ["xlink:href"];
|
|
3572
|
+
const _hoisted_2$b = ["data-icon"];
|
|
3494
3573
|
const _sfc_main$x = /* @__PURE__ */ Object.assign({ name: "Icon" }, {
|
|
3495
3574
|
__name: "Icon",
|
|
3496
3575
|
props: {
|
|
@@ -3571,7 +3650,7 @@ const _sfc_main$x = /* @__PURE__ */ Object.assign({ name: "Icon" }, {
|
|
|
3571
3650
|
key: 0,
|
|
3572
3651
|
class: normalizeClass(unref(getSvgClass))
|
|
3573
3652
|
}, [
|
|
3574
|
-
createElementVNode("use", { "xlink:href": unref(symbolId) }, null, 8, _hoisted_1$
|
|
3653
|
+
createElementVNode("use", { "xlink:href": unref(symbolId) }, null, 8, _hoisted_1$d)
|
|
3575
3654
|
], 2)) : (openBlock(), createElementBlock("span", {
|
|
3576
3655
|
key: 1,
|
|
3577
3656
|
ref_key: "elRef",
|
|
@@ -3582,7 +3661,7 @@ const _sfc_main$x = /* @__PURE__ */ Object.assign({ name: "Icon" }, {
|
|
|
3582
3661
|
createElementVNode("span", {
|
|
3583
3662
|
class: normalizeClass(unref(getSvgClass)),
|
|
3584
3663
|
"data-icon": unref(symbolId)
|
|
3585
|
-
}, null, 10, _hoisted_2$
|
|
3664
|
+
}, null, 10, _hoisted_2$b)
|
|
3586
3665
|
], 6))
|
|
3587
3666
|
]),
|
|
3588
3667
|
_: 1
|
|
@@ -3643,19 +3722,10 @@ const useRenderMenuTitle = () => {
|
|
|
3643
3722
|
title = "Please set title",
|
|
3644
3723
|
icon
|
|
3645
3724
|
} = meta;
|
|
3646
|
-
const
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
case "top":
|
|
3651
|
-
return false;
|
|
3652
|
-
case "topLeft":
|
|
3653
|
-
return mode == "vertical" && level == 0;
|
|
3654
|
-
}
|
|
3655
|
-
});
|
|
3656
|
-
return createVNode(Fragment, null, [isIcon.value && icon ? createVNode(_sfc_main$x, {
|
|
3657
|
-
"icon": meta.icon
|
|
3658
|
-
}, null) : void 0, createVNode("span", {
|
|
3725
|
+
const showIcon = computed(() => layout.value !== "top");
|
|
3726
|
+
return createVNode(Fragment, null, [showIcon.value && createVNode(_sfc_main$x, {
|
|
3727
|
+
"icon": icon ? icon : "ep:house"
|
|
3728
|
+
}, null), createVNode("span", {
|
|
3659
3729
|
"class": [`${prefixCls$5}__title`, "overflow-hidden overflow-ellipsis whitespace-nowrap text-ellipsis"]
|
|
3660
3730
|
}, [t2(title)])]);
|
|
3661
3731
|
};
|
|
@@ -3865,21 +3935,30 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
|
|
|
3865
3935
|
}
|
|
3866
3936
|
});
|
|
3867
3937
|
};
|
|
3938
|
+
const showCollapse = computed(() => {
|
|
3939
|
+
return layout.value == "left" || unref(layout) == "topLeft" && props.mode == "vertical";
|
|
3940
|
+
});
|
|
3941
|
+
const moduleName = computed(() => permissionStore.getModuleName);
|
|
3942
|
+
const showModuleName = computed(() => (layout.value == "left" || layout.value == "topLeft" && props.mode == "vertical") && !collapse.value);
|
|
3868
3943
|
return () => createVNode("div", {
|
|
3869
3944
|
"id": prefixCls$4,
|
|
3870
|
-
"class": [`${prefixCls$4} ${prefixCls$4}__${unref(menuMode)}`, "
|
|
3945
|
+
"class": [`${prefixCls$4} ${prefixCls$4}__${unref(menuMode)}`, "flex flex-col", {
|
|
3871
3946
|
"w-[var(--left-menu-min-width)]": unref(collapse),
|
|
3872
3947
|
"w-[var(--left-menu-max-width)]": !unref(collapse),
|
|
3873
|
-
"bg-[linear-gradient(var(--left-menu-bg-color))]": unref(layout) == "left" || unref(layout) == "topLeft" && props.mode == "vertical"
|
|
3948
|
+
"bg-[linear-gradient(var(--left-menu-bg-color))]": unref(layout) == "left" || unref(layout) == "topLeft" && props.mode == "vertical",
|
|
3949
|
+
"collapse": unref(collapse),
|
|
3950
|
+
"un-collapse": !unref(collapse)
|
|
3874
3951
|
}]
|
|
3875
|
-
}, [createVNode("div", {
|
|
3952
|
+
}, [showModuleName.value && createVNode("div", {
|
|
3953
|
+
"class": "text-center text-16px font-500 p-16px pb-10px text-[var(--left-menu-text-color)]"
|
|
3954
|
+
}, [moduleName.value]), createVNode("div", {
|
|
3876
3955
|
"class": "flex-1 overflow-hidden"
|
|
3877
|
-
}, [renderMenuWrap()]),
|
|
3956
|
+
}, [renderMenuWrap()]), unref(showCollapse) ? createVNode(Collapse, {
|
|
3878
3957
|
"color": "var(--top-header-text-color)"
|
|
3879
3958
|
}, null) : void 0]);
|
|
3880
3959
|
}
|
|
3881
3960
|
});
|
|
3882
|
-
const Menu = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-
|
|
3961
|
+
const Menu = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-ca95b9cd"]]);
|
|
3883
3962
|
var BI_RM = "0123456789abcdefghijklmnopqrstuvwxyz";
|
|
3884
3963
|
function int2char(n2) {
|
|
3885
3964
|
return BI_RM.charAt(n2);
|
|
@@ -7535,10 +7614,15 @@ const useUserStore = defineStore("layout-user", {
|
|
|
7535
7614
|
avatar: "",
|
|
7536
7615
|
nickname: "",
|
|
7537
7616
|
deptId: 0,
|
|
7617
|
+
deptName: "",
|
|
7538
7618
|
mobile: "",
|
|
7539
7619
|
email: "",
|
|
7540
|
-
username: ""
|
|
7541
|
-
|
|
7620
|
+
username: "",
|
|
7621
|
+
orgId: "",
|
|
7622
|
+
orgName: ""
|
|
7623
|
+
},
|
|
7624
|
+
// 公司列表
|
|
7625
|
+
companyList: []
|
|
7542
7626
|
}),
|
|
7543
7627
|
getters: {
|
|
7544
7628
|
getPermissions() {
|
|
@@ -7556,6 +7640,9 @@ const useUserStore = defineStore("layout-user", {
|
|
|
7556
7640
|
getUserInfo() {
|
|
7557
7641
|
const userInfo = wsCache$1.get(CACHE_KEY.USER);
|
|
7558
7642
|
return userInfo;
|
|
7643
|
+
},
|
|
7644
|
+
getCompanyList() {
|
|
7645
|
+
return this.companyList;
|
|
7559
7646
|
}
|
|
7560
7647
|
},
|
|
7561
7648
|
actions: {
|
|
@@ -7592,6 +7679,10 @@ const useUserStore = defineStore("layout-user", {
|
|
|
7592
7679
|
userInfo.user.email = user.email;
|
|
7593
7680
|
wsCache$1.set(CACHE_KEY.USER, userInfo);
|
|
7594
7681
|
},
|
|
7682
|
+
// 更新用户企业列表信息
|
|
7683
|
+
setCompanyListAction(companyList) {
|
|
7684
|
+
this.companyList = companyList || [];
|
|
7685
|
+
},
|
|
7595
7686
|
async loginOut() {
|
|
7596
7687
|
removeToken();
|
|
7597
7688
|
deleteUserCache();
|
|
@@ -7978,9 +8069,9 @@ function useScrollTo({
|
|
|
7978
8069
|
}
|
|
7979
8070
|
return { start: run, stop };
|
|
7980
8071
|
}
|
|
7981
|
-
const _hoisted_1$
|
|
7982
|
-
const _hoisted_2$
|
|
7983
|
-
const _hoisted_3$
|
|
8072
|
+
const _hoisted_1$c = ["id"];
|
|
8073
|
+
const _hoisted_2$a = { class: "flex-1 overflow-hidden px-16px" };
|
|
8074
|
+
const _hoisted_3$9 = { class: "h-[var(--tags-view-height)] flex" };
|
|
7984
8075
|
const _hoisted_4$8 = ["onClick"];
|
|
7985
8076
|
const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
7986
8077
|
__name: "TagsView",
|
|
@@ -8058,6 +8149,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8058
8149
|
const wrap$ = (_a2 = unref(scrollbarRef)) == null ? void 0 : _a2.wrapRef;
|
|
8059
8150
|
if (!wrap$)
|
|
8060
8151
|
return;
|
|
8152
|
+
scrollStopFn == null ? void 0 : scrollStopFn();
|
|
8061
8153
|
let firstTag = null;
|
|
8062
8154
|
let lastTag = null;
|
|
8063
8155
|
const tagList = unref(tagLinksRefs);
|
|
@@ -8066,12 +8158,22 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8066
8158
|
lastTag = tagList[tagList.length - 1];
|
|
8067
8159
|
}
|
|
8068
8160
|
if ((firstTag == null ? void 0 : firstTag.to).fullPath === currentTag.fullPath) {
|
|
8069
|
-
const { start } = useScrollTo({
|
|
8161
|
+
const { start, stop } = useScrollTo({
|
|
8070
8162
|
el: wrap$,
|
|
8071
8163
|
position: "scrollLeft",
|
|
8072
8164
|
to: 0,
|
|
8073
8165
|
duration: 500
|
|
8074
8166
|
});
|
|
8167
|
+
scrollStopFn = stop;
|
|
8168
|
+
start();
|
|
8169
|
+
} else if ((lastTag == null ? void 0 : lastTag.to).fullPath === currentTag.fullPath) {
|
|
8170
|
+
const { start, stop } = useScrollTo({
|
|
8171
|
+
el: wrap$,
|
|
8172
|
+
position: "scrollLeft",
|
|
8173
|
+
to: wrap$.scrollWidth - wrap$.offsetWidth,
|
|
8174
|
+
duration: 500
|
|
8175
|
+
});
|
|
8176
|
+
scrollStopFn = stop;
|
|
8075
8177
|
start();
|
|
8076
8178
|
} else if ((lastTag == null ? void 0 : lastTag.to).fullPath === currentTag.fullPath) {
|
|
8077
8179
|
const { start } = useScrollTo({
|
|
@@ -8082,9 +8184,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8082
8184
|
});
|
|
8083
8185
|
start();
|
|
8084
8186
|
} else {
|
|
8085
|
-
const currentIndex = tagList.findIndex(
|
|
8086
|
-
(item) => (item == null ? void 0 : item.to).fullPath === currentTag.fullPath
|
|
8087
|
-
);
|
|
8187
|
+
const currentIndex = tagList.findIndex((item) => (item == null ? void 0 : item.to).fullPath === currentTag.fullPath);
|
|
8088
8188
|
const tgsRefs = document.getElementsByClassName(`${prefixCls2}__item`);
|
|
8089
8189
|
const prevTag = tgsRefs[currentIndex - 1];
|
|
8090
8190
|
const nextTag = tgsRefs[currentIndex + 1];
|
|
@@ -8093,20 +8193,22 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8093
8193
|
const afterNextTagOffsetLeft = nextTag.offsetLeft + nextTag.offsetWidth;
|
|
8094
8194
|
const beforePrevTagOffsetLeft = prevTag.offsetLeft;
|
|
8095
8195
|
if (afterNextTagOffsetLeft > unref(scrollLeftNumber) + wrap$.offsetWidth) {
|
|
8096
|
-
const { start } = useScrollTo({
|
|
8196
|
+
const { start, stop } = useScrollTo({
|
|
8097
8197
|
el: wrap$,
|
|
8098
8198
|
position: "scrollLeft",
|
|
8099
8199
|
to: afterNextTagOffsetLeft - wrap$.offsetWidth,
|
|
8100
8200
|
duration: 500
|
|
8101
8201
|
});
|
|
8202
|
+
scrollStopFn = stop;
|
|
8102
8203
|
start();
|
|
8103
8204
|
} else if (beforePrevTagOffsetLeft < unref(scrollLeftNumber)) {
|
|
8104
|
-
const { start } = useScrollTo({
|
|
8205
|
+
const { start, stop } = useScrollTo({
|
|
8105
8206
|
el: wrap$,
|
|
8106
8207
|
position: "scrollLeft",
|
|
8107
8208
|
to: beforePrevTagOffsetLeft,
|
|
8108
8209
|
duration: 500
|
|
8109
8210
|
});
|
|
8211
|
+
scrollStopFn = stop;
|
|
8110
8212
|
start();
|
|
8111
8213
|
}
|
|
8112
8214
|
}
|
|
@@ -8119,6 +8221,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8119
8221
|
};
|
|
8120
8222
|
const scrollbarRef = ref();
|
|
8121
8223
|
const scrollLeftNumber = ref(0);
|
|
8224
|
+
let scrollStopFn = null;
|
|
8122
8225
|
const scroll = ({ scrollLeft }) => {
|
|
8123
8226
|
scrollLeftNumber.value = scrollLeft;
|
|
8124
8227
|
};
|
|
@@ -8138,9 +8241,9 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8138
8241
|
const _component_router_link = resolveComponent("router-link");
|
|
8139
8242
|
return openBlock(), createElementBlock("div", {
|
|
8140
8243
|
id: unref(prefixCls2),
|
|
8141
|
-
class: normalizeClass([unref(prefixCls2), "relative
|
|
8244
|
+
class: normalizeClass([unref(prefixCls2), "relative flex"])
|
|
8142
8245
|
}, [
|
|
8143
|
-
createElementVNode("div", _hoisted_2$
|
|
8246
|
+
createElementVNode("div", _hoisted_2$a, [
|
|
8144
8247
|
createVNode(unref(ElScrollbar), {
|
|
8145
8248
|
ref_key: "scrollbarRef",
|
|
8146
8249
|
ref: scrollbarRef,
|
|
@@ -8148,7 +8251,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8148
8251
|
onScroll: scroll
|
|
8149
8252
|
}, {
|
|
8150
8253
|
default: withCtx(() => [
|
|
8151
|
-
createElementVNode("div", _hoisted_3$
|
|
8254
|
+
createElementVNode("div", _hoisted_3$9, [
|
|
8152
8255
|
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(visitedViews), (item) => {
|
|
8153
8256
|
var _a2, _b, _c, _d, _e, _f;
|
|
8154
8257
|
return openBlock(), createBlock(unref(_sfc_main$u), {
|
|
@@ -8208,18 +8311,22 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8208
8311
|
var _a3, _b2;
|
|
8209
8312
|
return [
|
|
8210
8313
|
createElementVNode("div", {
|
|
8211
|
-
class: normalizeClass(`h-full flex items-center justify-center gap-
|
|
8314
|
+
class: normalizeClass(`h-full flex items-center justify-center gap-16px whitespace-nowrap ${unref(prefixCls2)}__item--label`),
|
|
8212
8315
|
onClick: navigate
|
|
8213
8316
|
}, [
|
|
8214
8317
|
createElementVNode("span", null, toDisplayString(unref(t2)((_a3 = item == null ? void 0 : item.meta) == null ? void 0 : _a3.title)), 1),
|
|
8215
|
-
((_b2 = unref(visitedViews)) == null ? void 0 : _b2.length) > 1 ? (openBlock(),
|
|
8216
|
-
|
|
8217
|
-
|
|
8218
|
-
|
|
8219
|
-
|
|
8220
|
-
|
|
8221
|
-
|
|
8222
|
-
|
|
8318
|
+
((_b2 = unref(visitedViews)) == null ? void 0 : _b2.length) > 1 ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
8319
|
+
createVNode(_component_Icon, {
|
|
8320
|
+
class: normalizeClass(`${unref(prefixCls2)}__item--close`),
|
|
8321
|
+
size: 8,
|
|
8322
|
+
color: "#7b7e904ff",
|
|
8323
|
+
icon: "svg-icon:tag-close",
|
|
8324
|
+
onClick: withModifiers(($event) => closeSelectedTag(item), ["prevent", "stop"])
|
|
8325
|
+
}, null, 8, ["class", "onClick"]),
|
|
8326
|
+
createElementVNode("span", {
|
|
8327
|
+
class: normalizeClass(`${unref(prefixCls2)}__item--dot`)
|
|
8328
|
+
}, null, 2)
|
|
8329
|
+
], 64)) : createCommentVNode("", true)
|
|
8223
8330
|
], 10, _hoisted_4$8)
|
|
8224
8331
|
];
|
|
8225
8332
|
}),
|
|
@@ -8235,11 +8342,11 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8235
8342
|
_: 1
|
|
8236
8343
|
}, 512)
|
|
8237
8344
|
])
|
|
8238
|
-
], 10, _hoisted_1$
|
|
8345
|
+
], 10, _hoisted_1$c);
|
|
8239
8346
|
};
|
|
8240
8347
|
}
|
|
8241
8348
|
});
|
|
8242
|
-
const TagsView = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-
|
|
8349
|
+
const TagsView = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-3ab01e0b"]]);
|
|
8243
8350
|
const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
8244
8351
|
__name: "MenuTrigger",
|
|
8245
8352
|
props: {
|
|
@@ -8250,9 +8357,12 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
|
8250
8357
|
},
|
|
8251
8358
|
emits: ["click", "toggle"],
|
|
8252
8359
|
setup(__props, { emit: __emit }) {
|
|
8360
|
+
const appStore = useAppStore();
|
|
8253
8361
|
const { getPrefixCls: getPrefixCls2 } = useDesign();
|
|
8254
8362
|
const prefixCls2 = getPrefixCls2("menu-trigger");
|
|
8255
8363
|
const props = __props;
|
|
8364
|
+
const theme = computed(() => appStore.getTheme);
|
|
8365
|
+
const triggerIcon = computed(() => props.active ? "ant-design:close-outlined" : theme.value === "whiteLight" ? "svg-icon:menu-trigger-filled" : "svg-icon:menu-trigger");
|
|
8256
8366
|
const emit = __emit;
|
|
8257
8367
|
const handleClick = () => {
|
|
8258
8368
|
emit("click");
|
|
@@ -8265,7 +8375,7 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
|
8265
8375
|
onClick: handleClick
|
|
8266
8376
|
}, [
|
|
8267
8377
|
createVNode(_component_Icon, {
|
|
8268
|
-
icon:
|
|
8378
|
+
icon: unref(triggerIcon),
|
|
8269
8379
|
svgClass: "!w-full !h-full",
|
|
8270
8380
|
class: normalizeClass(["!w-18px", "!h-18px", "icon-color"])
|
|
8271
8381
|
}, null, 8, ["icon"])
|
|
@@ -8273,13 +8383,12 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
|
8273
8383
|
};
|
|
8274
8384
|
}
|
|
8275
8385
|
});
|
|
8276
|
-
const MenuTrigger = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-
|
|
8277
|
-
const _hoisted_1$
|
|
8278
|
-
const _hoisted_2$
|
|
8279
|
-
const _hoisted_3$
|
|
8386
|
+
const MenuTrigger = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-aedf94f7"]]);
|
|
8387
|
+
const _hoisted_1$b = { class: "sidebar-inner" };
|
|
8388
|
+
const _hoisted_2$9 = ["onClick"];
|
|
8389
|
+
const _hoisted_3$8 = ["onClick"];
|
|
8280
8390
|
const _hoisted_4$7 = ["onClick"];
|
|
8281
|
-
const _hoisted_5$
|
|
8282
|
-
const _hoisted_6$4 = { key: 1 };
|
|
8391
|
+
const _hoisted_5$6 = ["onClick"];
|
|
8283
8392
|
const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel" }, {
|
|
8284
8393
|
__name: "ProductServicePanel",
|
|
8285
8394
|
props: {
|
|
@@ -8320,11 +8429,15 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8320
8429
|
}, 300);
|
|
8321
8430
|
}
|
|
8322
8431
|
});
|
|
8323
|
-
const
|
|
8432
|
+
const activeProductIndex = ref(0);
|
|
8433
|
+
const activeModuleIndex = ref(0);
|
|
8324
8434
|
const routers = computed(() => permissionStore.getRoleRouters);
|
|
8435
|
+
const productMenuRouters = computed(() => {
|
|
8436
|
+
return (routers.value || []).filter((item) => item.type === 10);
|
|
8437
|
+
});
|
|
8325
8438
|
const filteredMenus = computed(() => {
|
|
8326
8439
|
const keyword = debouncedKeyword.value.toLowerCase().trim();
|
|
8327
|
-
const items =
|
|
8440
|
+
const items = productMenuRouters.value;
|
|
8328
8441
|
if (!items || !Array.isArray(items))
|
|
8329
8442
|
return [];
|
|
8330
8443
|
const filterFn = (list) => {
|
|
@@ -8345,7 +8458,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8345
8458
|
};
|
|
8346
8459
|
return filterFn(items);
|
|
8347
8460
|
});
|
|
8348
|
-
const
|
|
8461
|
+
const productList = computed(() => {
|
|
8349
8462
|
return filteredMenus.value.map((menu) => {
|
|
8350
8463
|
var _a2;
|
|
8351
8464
|
return {
|
|
@@ -8358,11 +8471,34 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8358
8471
|
};
|
|
8359
8472
|
});
|
|
8360
8473
|
});
|
|
8361
|
-
const
|
|
8362
|
-
if (
|
|
8474
|
+
const activeProduct = computed(() => {
|
|
8475
|
+
if (productList.value.length === 0)
|
|
8476
|
+
return null;
|
|
8477
|
+
return productList.value[activeProductIndex.value] || null;
|
|
8478
|
+
});
|
|
8479
|
+
const activeModules = computed(() => {
|
|
8480
|
+
var _a2;
|
|
8481
|
+
return ((_a2 = activeProduct.value) == null ? void 0 : _a2.children) || [];
|
|
8482
|
+
});
|
|
8483
|
+
const activeModule = computed(() => {
|
|
8484
|
+
if (activeModules.value.length === 0)
|
|
8485
|
+
return null;
|
|
8486
|
+
return activeModules.value[activeModuleIndex.value] || null;
|
|
8487
|
+
});
|
|
8488
|
+
const contentGroups = computed(() => {
|
|
8489
|
+
if (!activeModule.value)
|
|
8363
8490
|
return [];
|
|
8364
|
-
const
|
|
8365
|
-
return (
|
|
8491
|
+
const thirdMenus = (activeModule.value.children || []).filter(isVisible);
|
|
8492
|
+
return thirdMenus.map((third) => ({
|
|
8493
|
+
id: third.id,
|
|
8494
|
+
title: getMenuTitle(third),
|
|
8495
|
+
path: third.path,
|
|
8496
|
+
items: (third.children || []).filter(isVisible).map((fourth) => ({
|
|
8497
|
+
id: fourth.id,
|
|
8498
|
+
title: getMenuTitle(fourth),
|
|
8499
|
+
path: fourth.path
|
|
8500
|
+
}))
|
|
8501
|
+
}));
|
|
8366
8502
|
});
|
|
8367
8503
|
const joinPath = (...paths) => {
|
|
8368
8504
|
return paths.filter(Boolean).reduce((result, path) => {
|
|
@@ -8388,19 +8524,20 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8388
8524
|
clearTimeout(debounceTimer);
|
|
8389
8525
|
searchKeyword.value = "";
|
|
8390
8526
|
debouncedKeyword.value = "";
|
|
8391
|
-
|
|
8527
|
+
activeProductIndex.value = 0;
|
|
8528
|
+
activeModuleIndex.value = 0;
|
|
8392
8529
|
};
|
|
8393
8530
|
const handleSelect = (item, parentPath = "") => {
|
|
8394
|
-
var _a2, _b;
|
|
8531
|
+
var _a2, _b, _c;
|
|
8395
8532
|
const fullPath = getAccessiblePath(item, parentPath);
|
|
8396
8533
|
if (fullPath) {
|
|
8397
8534
|
const currentModuleId = permissionStore.getModuleId;
|
|
8398
|
-
const selectedModuleId = (_a2 =
|
|
8535
|
+
const selectedModuleId = (_b = (_a2 = productList.value[activeProductIndex.value]) == null ? void 0 : _a2.children[activeModuleIndex.value]) == null ? void 0 : _b.id;
|
|
8399
8536
|
if (selectedModuleId === currentModuleId) {
|
|
8400
8537
|
router.push(fullPath.startsWith("/") ? fullPath : `/${fullPath}`);
|
|
8401
8538
|
} else {
|
|
8402
8539
|
const currentOrigin = window.location.origin;
|
|
8403
|
-
const modulePath = ((
|
|
8540
|
+
const modulePath = ((_c = productList.value[activeProductIndex.value]) == null ? void 0 : _c.modulePath) || "";
|
|
8404
8541
|
const moduleFullPath = joinPath(modulePath, fullPath);
|
|
8405
8542
|
const targetUrl = `${currentOrigin}${moduleFullPath.startsWith("/") ? moduleFullPath : `/${moduleFullPath}`}`;
|
|
8406
8543
|
window.location.href = targetUrl;
|
|
@@ -8408,38 +8545,64 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8408
8545
|
closePanel();
|
|
8409
8546
|
}
|
|
8410
8547
|
};
|
|
8411
|
-
const
|
|
8412
|
-
|
|
8548
|
+
const handleProductSelect = (index) => {
|
|
8549
|
+
activeProductIndex.value = index;
|
|
8550
|
+
activeModuleIndex.value = 0;
|
|
8413
8551
|
};
|
|
8414
|
-
|
|
8415
|
-
|
|
8416
|
-
|
|
8417
|
-
|
|
8418
|
-
|
|
8419
|
-
|
|
8420
|
-
|
|
8421
|
-
|
|
8422
|
-
|
|
8423
|
-
|
|
8424
|
-
|
|
8425
|
-
|
|
8426
|
-
|
|
8427
|
-
|
|
8428
|
-
|
|
8552
|
+
const handleModuleSelect = (index) => {
|
|
8553
|
+
activeModuleIndex.value = index;
|
|
8554
|
+
};
|
|
8555
|
+
const handleItemClick = (fourthItem, group) => {
|
|
8556
|
+
var _a2, _b;
|
|
8557
|
+
const parentPath = joinPath((_a2 = activeProduct.value) == null ? void 0 : _a2.path, (_b = activeModule.value) == null ? void 0 : _b.path, group.path);
|
|
8558
|
+
handleSelect(fourthItem, parentPath);
|
|
8559
|
+
};
|
|
8560
|
+
const handleGroupClick = (group) => {
|
|
8561
|
+
var _a2, _b;
|
|
8562
|
+
const parentPath = joinPath((_a2 = activeProduct.value) == null ? void 0 : _a2.path, (_b = activeModule.value) == null ? void 0 : _b.path);
|
|
8563
|
+
handleSelect({ path: group.path, children: [] }, parentPath);
|
|
8564
|
+
};
|
|
8565
|
+
const syncActiveSelection = () => {
|
|
8566
|
+
const currentModuleId = permissionStore.getModuleId;
|
|
8567
|
+
if (!currentModuleId)
|
|
8568
|
+
return false;
|
|
8569
|
+
for (let pIndex = 0; pIndex < productList.value.length; pIndex++) {
|
|
8570
|
+
const mIndex = productList.value[pIndex].children.findIndex(
|
|
8571
|
+
(mod) => mod.id === currentModuleId
|
|
8572
|
+
);
|
|
8573
|
+
if (mIndex !== -1) {
|
|
8574
|
+
activeProductIndex.value = pIndex;
|
|
8575
|
+
activeModuleIndex.value = mIndex;
|
|
8576
|
+
return true;
|
|
8429
8577
|
}
|
|
8430
8578
|
}
|
|
8431
|
-
|
|
8432
|
-
|
|
8433
|
-
|
|
8434
|
-
|
|
8435
|
-
|
|
8436
|
-
|
|
8437
|
-
|
|
8438
|
-
|
|
8439
|
-
(_a2 = searchInputRef.value) == null ? void 0 : _a2.focus();
|
|
8440
|
-
});
|
|
8579
|
+
return false;
|
|
8580
|
+
};
|
|
8581
|
+
watch(productList, () => {
|
|
8582
|
+
if (!syncActiveSelection()) {
|
|
8583
|
+
if (activeProductIndex.value >= productList.value.length) {
|
|
8584
|
+
activeProductIndex.value = 0;
|
|
8585
|
+
}
|
|
8586
|
+
activeModuleIndex.value = 0;
|
|
8441
8587
|
}
|
|
8442
8588
|
});
|
|
8589
|
+
watch(
|
|
8590
|
+
() => props.visible,
|
|
8591
|
+
(val) => {
|
|
8592
|
+
if (val) {
|
|
8593
|
+
searchKeyword.value = "";
|
|
8594
|
+
debouncedKeyword.value = "";
|
|
8595
|
+
if (!syncActiveSelection()) {
|
|
8596
|
+
activeProductIndex.value = 0;
|
|
8597
|
+
activeModuleIndex.value = 0;
|
|
8598
|
+
}
|
|
8599
|
+
nextTick(() => {
|
|
8600
|
+
var _a2;
|
|
8601
|
+
(_a2 = searchInputRef.value) == null ? void 0 : _a2.focus();
|
|
8602
|
+
});
|
|
8603
|
+
}
|
|
8604
|
+
}
|
|
8605
|
+
);
|
|
8443
8606
|
const handleKeydown = (e2) => {
|
|
8444
8607
|
if (e2.key === "Escape" && props.visible) {
|
|
8445
8608
|
closePanel();
|
|
@@ -8473,22 +8636,43 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8473
8636
|
createElementVNode("div", {
|
|
8474
8637
|
class: normalizeClass([unref(prefixCls2) + "__sidebar-title"])
|
|
8475
8638
|
}, [
|
|
8476
|
-
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.
|
|
8639
|
+
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.productNavigation")), 1)
|
|
8477
8640
|
], 2),
|
|
8478
8641
|
createVNode(unref(ElScrollbar), null, {
|
|
8479
8642
|
default: withCtx(() => [
|
|
8480
|
-
createElementVNode("div", _hoisted_1$
|
|
8481
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
8643
|
+
createElementVNode("div", _hoisted_1$b, [
|
|
8644
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(productList.value, (product, pIndex) => {
|
|
8482
8645
|
return openBlock(), createElementBlock("div", {
|
|
8483
|
-
key:
|
|
8646
|
+
key: product.id || pIndex,
|
|
8484
8647
|
class: normalizeClass([
|
|
8485
|
-
unref(prefixCls2) + "
|
|
8486
|
-
{ "is-active":
|
|
8648
|
+
unref(prefixCls2) + "__product-card",
|
|
8649
|
+
{ "is-active": activeProductIndex.value === pIndex }
|
|
8487
8650
|
]),
|
|
8488
|
-
onClick: ($event) =>
|
|
8651
|
+
onClick: ($event) => handleProductSelect(pIndex)
|
|
8489
8652
|
}, [
|
|
8490
|
-
createElementVNode("
|
|
8491
|
-
|
|
8653
|
+
createElementVNode("div", {
|
|
8654
|
+
class: normalizeClass([unref(prefixCls2) + "__product-name"])
|
|
8655
|
+
}, [
|
|
8656
|
+
createElementVNode("span", null, toDisplayString(product.title), 1)
|
|
8657
|
+
], 2),
|
|
8658
|
+
product.children.length > 0 ? (openBlock(), createElementBlock("div", {
|
|
8659
|
+
key: 0,
|
|
8660
|
+
class: normalizeClass([unref(prefixCls2) + "__product-modules"])
|
|
8661
|
+
}, [
|
|
8662
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(product.children, (mod, mIndex) => {
|
|
8663
|
+
return openBlock(), createElementBlock("span", {
|
|
8664
|
+
key: mod.id || mIndex,
|
|
8665
|
+
class: normalizeClass([
|
|
8666
|
+
unref(prefixCls2) + "__module-tag",
|
|
8667
|
+
{
|
|
8668
|
+
"is-active": activeProductIndex.value === pIndex && activeModuleIndex.value === mIndex
|
|
8669
|
+
}
|
|
8670
|
+
]),
|
|
8671
|
+
onClick: withModifiers(($event) => (handleProductSelect(pIndex), handleModuleSelect(mIndex)), ["stop"])
|
|
8672
|
+
}, toDisplayString(getMenuTitle(mod)), 11, _hoisted_3$8);
|
|
8673
|
+
}), 128))
|
|
8674
|
+
], 2)) : createCommentVNode("", true)
|
|
8675
|
+
], 10, _hoisted_2$9);
|
|
8492
8676
|
}), 128))
|
|
8493
8677
|
])
|
|
8494
8678
|
]),
|
|
@@ -8533,60 +8717,38 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8533
8717
|
createElementVNode("div", {
|
|
8534
8718
|
class: normalizeClass([unref(prefixCls2) + "__grid-container"])
|
|
8535
8719
|
}, [
|
|
8536
|
-
|
|
8720
|
+
contentGroups.value.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(contentGroups.value, (group) => {
|
|
8537
8721
|
return openBlock(), createElementBlock("div", {
|
|
8538
|
-
key:
|
|
8539
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8722
|
+
key: group.id || group.title,
|
|
8723
|
+
class: normalizeClass([unref(prefixCls2) + "__group"])
|
|
8540
8724
|
}, [
|
|
8541
8725
|
createElementVNode("div", {
|
|
8542
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8726
|
+
class: normalizeClass([unref(prefixCls2) + "__group-title"])
|
|
8543
8727
|
}, [
|
|
8544
|
-
createElementVNode("span", null, toDisplayString(
|
|
8728
|
+
createElementVNode("span", null, toDisplayString(group.title), 1)
|
|
8545
8729
|
], 2),
|
|
8546
8730
|
createElementVNode("div", {
|
|
8547
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8731
|
+
class: normalizeClass([unref(prefixCls2) + "__group-grid"])
|
|
8548
8732
|
}, [
|
|
8549
|
-
|
|
8733
|
+
group.items.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(group.items, (item) => {
|
|
8550
8734
|
return openBlock(), createElementBlock("div", {
|
|
8551
|
-
key:
|
|
8552
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8553
|
-
onClick: ($event) =>
|
|
8554
|
-
var _a2;
|
|
8555
|
-
return handleSelect(thirdMenu, joinPath((_a2 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a2.path, secondMenu.path));
|
|
8556
|
-
}
|
|
8735
|
+
key: item.id || item.path,
|
|
8736
|
+
class: normalizeClass([unref(prefixCls2) + "__group-item"]),
|
|
8737
|
+
onClick: ($event) => handleItemClick(item, group)
|
|
8557
8738
|
}, [
|
|
8558
|
-
createElementVNode("span", null, toDisplayString(
|
|
8559
|
-
], 10,
|
|
8739
|
+
createElementVNode("span", null, toDisplayString(item.title), 1)
|
|
8740
|
+
], 10, _hoisted_4$7);
|
|
8560
8741
|
}), 128)) : (openBlock(), createElementBlock("div", {
|
|
8561
8742
|
key: 1,
|
|
8562
|
-
class: normalizeClass([
|
|
8563
|
-
|
|
8564
|
-
{ [unref(prefixCls2) + "__column-item--disabled"]: secondMenu.type === 1 }
|
|
8565
|
-
]),
|
|
8566
|
-
onClick: ($event) => {
|
|
8567
|
-
var _a2;
|
|
8568
|
-
return secondMenu.type === 2 && handleSelect(secondMenu, (_a2 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a2.path);
|
|
8569
|
-
}
|
|
8743
|
+
class: normalizeClass([unref(prefixCls2) + "__group-item"]),
|
|
8744
|
+
onClick: ($event) => handleGroupClick(group)
|
|
8570
8745
|
}, [
|
|
8571
|
-
|
|
8572
|
-
], 10,
|
|
8746
|
+
createElementVNode("span", null, toDisplayString(group.title), 1)
|
|
8747
|
+
], 10, _hoisted_5$6))
|
|
8573
8748
|
], 2)
|
|
8574
8749
|
], 2);
|
|
8575
|
-
}), 128)) :
|
|
8750
|
+
}), 128)) : activeProduct.value ? (openBlock(), createElementBlock("div", {
|
|
8576
8751
|
key: 1,
|
|
8577
|
-
class: normalizeClass([unref(prefixCls2) + "__column"])
|
|
8578
|
-
}, [
|
|
8579
|
-
createElementVNode("div", {
|
|
8580
|
-
class: normalizeClass([unref(prefixCls2) + "__column-list"])
|
|
8581
|
-
}, [
|
|
8582
|
-
createElementVNode("div", {
|
|
8583
|
-
class: normalizeClass([unref(prefixCls2) + "__column-item", unref(prefixCls2) + "__column-item--disabled"])
|
|
8584
|
-
}, [
|
|
8585
|
-
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.noData") || "暂无"), 1)
|
|
8586
|
-
], 2)
|
|
8587
|
-
], 2)
|
|
8588
|
-
], 2)) : (openBlock(), createElementBlock("div", {
|
|
8589
|
-
key: 2,
|
|
8590
8752
|
class: normalizeClass([unref(prefixCls2) + "__empty"])
|
|
8591
8753
|
}, [
|
|
8592
8754
|
createVNode(unref(_sfc_main$x), {
|
|
@@ -8594,7 +8756,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8594
8756
|
size: 48
|
|
8595
8757
|
}),
|
|
8596
8758
|
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.noDataTitle")), 1)
|
|
8597
|
-
], 2))
|
|
8759
|
+
], 2)) : createCommentVNode("", true)
|
|
8598
8760
|
], 2)
|
|
8599
8761
|
]),
|
|
8600
8762
|
_: 1
|
|
@@ -8613,7 +8775,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8613
8775
|
};
|
|
8614
8776
|
}
|
|
8615
8777
|
});
|
|
8616
|
-
const ProductServicePanel = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-
|
|
8778
|
+
const ProductServicePanel = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-130420a1"]]);
|
|
8617
8779
|
const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
8618
8780
|
__name: "Logo",
|
|
8619
8781
|
emits: ["logo-click"],
|
|
@@ -8622,8 +8784,7 @@ const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
|
8622
8784
|
const { getPrefixCls: getPrefixCls2 } = useDesign();
|
|
8623
8785
|
const prefixCls2 = getPrefixCls2("logo");
|
|
8624
8786
|
const appStore = useAppStore();
|
|
8625
|
-
|
|
8626
|
-
const layout = computed(() => appStore.getLayout);
|
|
8787
|
+
computed(() => appStore.getLayout);
|
|
8627
8788
|
const theme = computed(() => appStore.getTheme);
|
|
8628
8789
|
const panelVisible = ref(false);
|
|
8629
8790
|
const togglePanel = (isActive) => {
|
|
@@ -8655,20 +8816,11 @@ const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
|
8655
8816
|
onClick: handleClickLogo
|
|
8656
8817
|
}, [
|
|
8657
8818
|
createVNode(_component_Icon, {
|
|
8658
|
-
icon: "svg-icon:
|
|
8819
|
+
icon: "svg-icon:inspur-xinlian",
|
|
8659
8820
|
color: fontColor.value,
|
|
8660
8821
|
svgClass: "!w-full !h-full",
|
|
8661
|
-
class: normalizeClass(["!w-[var(--logo-
|
|
8662
|
-
}, null, 8, ["color"])
|
|
8663
|
-
createElementVNode("div", {
|
|
8664
|
-
class: normalizeClass([
|
|
8665
|
-
"ml-10px text-16px font-700",
|
|
8666
|
-
{
|
|
8667
|
-
"text-[var(--top-header-text-color)]": ["left", "top", "topLeft"].includes(layout.value)
|
|
8668
|
-
}
|
|
8669
|
-
]),
|
|
8670
|
-
style: normalizeStyle({ color: fontColor.value })
|
|
8671
|
-
}, toDisplayString(title.value), 7)
|
|
8822
|
+
class: normalizeClass(["!w-[var(--logo-width)]", "!h-[var(--logo-height)]"])
|
|
8823
|
+
}, null, 8, ["color"])
|
|
8672
8824
|
])
|
|
8673
8825
|
], 2),
|
|
8674
8826
|
createVNode(unref(ProductServicePanel), {
|
|
@@ -8679,7 +8831,7 @@ const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
|
8679
8831
|
};
|
|
8680
8832
|
}
|
|
8681
8833
|
});
|
|
8682
|
-
const _hoisted_1$
|
|
8834
|
+
const _hoisted_1$a = { class: "w-full min-w-1000px" };
|
|
8683
8835
|
const _sfc_main$p = /* @__PURE__ */ Object.assign({ name: "AppView" }, {
|
|
8684
8836
|
__name: "AppView",
|
|
8685
8837
|
setup(__props) {
|
|
@@ -8714,7 +8866,7 @@ const _sfc_main$p = /* @__PURE__ */ Object.assign({ name: "AppView" }, {
|
|
|
8714
8866
|
provide("reload", reload);
|
|
8715
8867
|
return (_ctx, _cache) => {
|
|
8716
8868
|
const _component_router_view = resolveComponent("router-view");
|
|
8717
|
-
return openBlock(), createElementBlock("section", _hoisted_1$
|
|
8869
|
+
return openBlock(), createElementBlock("section", _hoisted_1$a, [
|
|
8718
8870
|
unref(routerAlive) ? (openBlock(), createBlock(_component_router_view, { key: 0 }, {
|
|
8719
8871
|
default: withCtx(({ Component, route }) => [
|
|
8720
8872
|
(openBlock(), createBlock(KeepAlive, { include: unref(getCaches) }, [
|
|
@@ -8779,7 +8931,7 @@ const _sfc_main$o = /* @__PURE__ */ Object.assign({ name: "Message" }, {
|
|
|
8779
8931
|
createVNode(_component_Icon, {
|
|
8780
8932
|
color: __props.color,
|
|
8781
8933
|
size: 18,
|
|
8782
|
-
icon: "
|
|
8934
|
+
icon: "svg-icon:bell"
|
|
8783
8935
|
}, null, 8, ["color"])
|
|
8784
8936
|
]),
|
|
8785
8937
|
_: 1
|
|
@@ -8788,72 +8940,213 @@ const _sfc_main$o = /* @__PURE__ */ Object.assign({ name: "Message" }, {
|
|
|
8788
8940
|
};
|
|
8789
8941
|
}
|
|
8790
8942
|
});
|
|
8791
|
-
const Message = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-
|
|
8943
|
+
const Message = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-fdaeb8e4"]]);
|
|
8792
8944
|
const avatarImg = "data:image/gif;base64,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";
|
|
8793
|
-
const _hoisted_1$
|
|
8794
|
-
const _hoisted_2$
|
|
8795
|
-
const _hoisted_3$
|
|
8945
|
+
const _hoisted_1$9 = { class: "flex items-center px-10px py-8px text-[var(--top-header-text-color)] hover:text-[var(--top-header-hover-color)] rounded-6px bg-[var(--top-header-company-bg-color)]" };
|
|
8946
|
+
const _hoisted_2$8 = { class: "pl-6px text-12px <lg:hidden" };
|
|
8947
|
+
const _hoisted_3$7 = { class: "ml-6px" };
|
|
8948
|
+
const _hoisted_4$6 = { class: "flex items-center text-[var(--top-header-text-color)] hover:text-[var(--top-header-hover-color)] mr-18px" };
|
|
8949
|
+
const _hoisted_5$5 = { class: "pl-5px text-12px <lg:hidden" };
|
|
8950
|
+
const _hoisted_6$4 = { class: "ml-6px" };
|
|
8951
|
+
const _hoisted_7$2 = { class: "flex items-center text-#e0e0e0" };
|
|
8952
|
+
const _hoisted_8$1 = { class: "flex flex-col gap-3px pl-5px text-12px <lg:hidden" };
|
|
8953
|
+
const _hoisted_9 = { class: "text-#fff" };
|
|
8954
|
+
const _hoisted_10 = { key: 0 };
|
|
8955
|
+
const _hoisted_11 = { class: "ml-6px" };
|
|
8796
8956
|
const _sfc_main$n = /* @__PURE__ */ Object.assign({ name: "UserInfo" }, {
|
|
8797
8957
|
__name: "UserInfo",
|
|
8798
|
-
emits: ["logout-click"],
|
|
8958
|
+
emits: ["logout-click", "switch-company-click"],
|
|
8799
8959
|
setup(__props, { emit: __emit }) {
|
|
8800
8960
|
const emit = __emit;
|
|
8801
8961
|
const { t: t2 } = useI18n();
|
|
8802
8962
|
const userStore = useUserStore();
|
|
8963
|
+
const appStore = useAppStore();
|
|
8803
8964
|
const { getPrefixCls: getPrefixCls2 } = useDesign();
|
|
8804
|
-
const prefixCls2 = getPrefixCls2("
|
|
8965
|
+
const prefixCls2 = getPrefixCls2("info");
|
|
8805
8966
|
const avatar = computed(() => userStore.user.avatar || avatarImg);
|
|
8806
8967
|
const userName = computed(() => userStore.user.nickname ?? "Admin");
|
|
8968
|
+
const topNav = computed(() => appStore.getTopNav);
|
|
8969
|
+
const topNavNormal = computed(() => topNav.value === "normal");
|
|
8970
|
+
const topNavFloating = computed(() => topNav.value === "floating");
|
|
8971
|
+
const orgId = computed(() => {
|
|
8972
|
+
var _a2;
|
|
8973
|
+
return (_a2 = userStore.user) == null ? void 0 : _a2.orgId;
|
|
8974
|
+
});
|
|
8975
|
+
const orgName = computed(() => {
|
|
8976
|
+
var _a2;
|
|
8977
|
+
return (_a2 = userStore.user) == null ? void 0 : _a2.orgName;
|
|
8978
|
+
});
|
|
8979
|
+
const companyList = computed(() => userStore.getCompanyList);
|
|
8980
|
+
const showCompanyList = computed(() => companyList.value.length > 0);
|
|
8807
8981
|
const handleLogoutClick = () => {
|
|
8808
8982
|
emit("logout-click");
|
|
8809
8983
|
};
|
|
8984
|
+
const handleSwitchCompany = (company) => {
|
|
8985
|
+
emit("switch-company-click", deepClone(company));
|
|
8986
|
+
};
|
|
8810
8987
|
return (_ctx, _cache) => {
|
|
8811
8988
|
const _component_Icon = resolveComponent("Icon");
|
|
8812
|
-
return openBlock(),
|
|
8813
|
-
|
|
8814
|
-
|
|
8815
|
-
|
|
8816
|
-
|
|
8817
|
-
|
|
8989
|
+
return openBlock(), createElementBlock(Fragment, null, [
|
|
8990
|
+
unref(topNavNormal) ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
|
|
8991
|
+
unref(showCompanyList) && unref(orgId) ? (openBlock(), createBlock(unref(ElDropdown), {
|
|
8992
|
+
key: 0,
|
|
8993
|
+
class: normalizeClass(["custom-hover cursor-pointer", `${unref(prefixCls2)}-company`]),
|
|
8994
|
+
trigger: "click"
|
|
8995
|
+
}, {
|
|
8996
|
+
dropdown: withCtx(() => [
|
|
8997
|
+
createVNode(unref(ElDropdownMenu), null, {
|
|
8998
|
+
default: withCtx(() => [
|
|
8999
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(companyList), (company) => {
|
|
9000
|
+
return openBlock(), createBlock(unref(ElDropdownItem), {
|
|
9001
|
+
key: company.enterpriseId,
|
|
9002
|
+
disabled: company.enterpriseId == unref(orgId),
|
|
9003
|
+
onClick: ($event) => handleSwitchCompany(company)
|
|
9004
|
+
}, {
|
|
9005
|
+
default: withCtx(() => [
|
|
9006
|
+
createTextVNode(toDisplayString(company.enterpriseName), 1)
|
|
9007
|
+
]),
|
|
9008
|
+
_: 2
|
|
9009
|
+
}, 1032, ["disabled", "onClick"]);
|
|
9010
|
+
}), 128))
|
|
9011
|
+
]),
|
|
9012
|
+
_: 1
|
|
9013
|
+
})
|
|
9014
|
+
]),
|
|
8818
9015
|
default: withCtx(() => [
|
|
8819
|
-
|
|
9016
|
+
createElementVNode("div", _hoisted_1$9, [
|
|
9017
|
+
createVNode(_component_Icon, {
|
|
9018
|
+
icon: "svg-icon:company",
|
|
9019
|
+
color: "var(--top-header-company-icon-color)",
|
|
9020
|
+
svgClass: "!w-full !h-full",
|
|
9021
|
+
class: normalizeClass(["!w-14px", "!h-14px"])
|
|
9022
|
+
}),
|
|
9023
|
+
createElementVNode("span", _hoisted_2$8, toDisplayString(unref(orgName)), 1),
|
|
9024
|
+
createElementVNode("span", _hoisted_3$7, [
|
|
9025
|
+
createVNode(_component_Icon, {
|
|
9026
|
+
icon: "ep:arrow-down",
|
|
9027
|
+
svgClass: "!w-full !h-full",
|
|
9028
|
+
class: normalizeClass(["!w-12px", "!h-12px"])
|
|
9029
|
+
})
|
|
9030
|
+
])
|
|
9031
|
+
])
|
|
9032
|
+
]),
|
|
9033
|
+
_: 1
|
|
9034
|
+
}, 8, ["class"])) : createCommentVNode("", true),
|
|
9035
|
+
createVNode(unref(ElDropdown), {
|
|
9036
|
+
class: normalizeClass(["custom-hover cursor-pointer", `${unref(prefixCls2)}-user`]),
|
|
9037
|
+
trigger: "click"
|
|
9038
|
+
}, {
|
|
9039
|
+
dropdown: withCtx(() => [
|
|
9040
|
+
createVNode(unref(ElDropdownMenu), null, {
|
|
8820
9041
|
default: withCtx(() => [
|
|
8821
|
-
createVNode(
|
|
8822
|
-
|
|
9042
|
+
createVNode(unref(ElDropdownItem), { onClick: handleLogoutClick }, {
|
|
9043
|
+
default: withCtx(() => [
|
|
9044
|
+
createVNode(_component_Icon, { icon: "ep:switch-button" }),
|
|
9045
|
+
createElementVNode("div", null, toDisplayString(unref(t2)("layout.common.loginOut")), 1)
|
|
9046
|
+
]),
|
|
9047
|
+
_: 1
|
|
9048
|
+
})
|
|
8823
9049
|
]),
|
|
8824
9050
|
_: 1
|
|
8825
9051
|
})
|
|
8826
9052
|
]),
|
|
9053
|
+
default: withCtx(() => [
|
|
9054
|
+
createElementVNode("div", _hoisted_4$6, [
|
|
9055
|
+
createVNode(unref(ElAvatar), {
|
|
9056
|
+
src: unref(avatar),
|
|
9057
|
+
size: 24,
|
|
9058
|
+
class: "!bg-transparent"
|
|
9059
|
+
}, {
|
|
9060
|
+
default: withCtx(() => [
|
|
9061
|
+
createVNode(_component_Icon, {
|
|
9062
|
+
icon: "fa:user-circle-o",
|
|
9063
|
+
size: 24
|
|
9064
|
+
})
|
|
9065
|
+
]),
|
|
9066
|
+
_: 1
|
|
9067
|
+
}, 8, ["src"]),
|
|
9068
|
+
createElementVNode("span", _hoisted_5$5, toDisplayString(unref(userName)), 1),
|
|
9069
|
+
createElementVNode("span", _hoisted_6$4, [
|
|
9070
|
+
createVNode(_component_Icon, {
|
|
9071
|
+
icon: "ep:arrow-down",
|
|
9072
|
+
svgClass: "!w-full !h-full",
|
|
9073
|
+
class: normalizeClass(["!w-12px", "!h-12px"])
|
|
9074
|
+
})
|
|
9075
|
+
])
|
|
9076
|
+
])
|
|
9077
|
+
]),
|
|
8827
9078
|
_: 1
|
|
8828
|
-
})
|
|
8829
|
-
]),
|
|
8830
|
-
|
|
8831
|
-
|
|
8832
|
-
|
|
8833
|
-
|
|
8834
|
-
|
|
8835
|
-
|
|
8836
|
-
|
|
9079
|
+
}, 8, ["class"])
|
|
9080
|
+
], 64)) : createCommentVNode("", true),
|
|
9081
|
+
unref(topNavFloating) ? (openBlock(), createBlock(unref(ElDropdown), {
|
|
9082
|
+
key: 1,
|
|
9083
|
+
class: normalizeClass(["custom-hover cursor-pointer", `${unref(prefixCls2)}-company-user`]),
|
|
9084
|
+
trigger: "click"
|
|
9085
|
+
}, {
|
|
9086
|
+
dropdown: withCtx(() => [
|
|
9087
|
+
createVNode(unref(ElDropdownMenu), null, {
|
|
8837
9088
|
default: withCtx(() => [
|
|
8838
|
-
|
|
8839
|
-
|
|
8840
|
-
|
|
8841
|
-
|
|
9089
|
+
unref(showCompanyList) ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(unref(companyList), (company) => {
|
|
9090
|
+
return openBlock(), createBlock(unref(ElDropdownItem), {
|
|
9091
|
+
key: company.enterpriseId,
|
|
9092
|
+
disabled: company.enterpriseId == unref(orgId),
|
|
9093
|
+
onClick: ($event) => handleSwitchCompany(company)
|
|
9094
|
+
}, {
|
|
9095
|
+
default: withCtx(() => [
|
|
9096
|
+
createTextVNode(toDisplayString(company.enterpriseName), 1)
|
|
9097
|
+
]),
|
|
9098
|
+
_: 2
|
|
9099
|
+
}, 1032, ["disabled", "onClick"]);
|
|
9100
|
+
}), 128)) : createCommentVNode("", true),
|
|
9101
|
+
createVNode(unref(ElDropdownItem), {
|
|
9102
|
+
divided: unref(showCompanyList),
|
|
9103
|
+
onClick: handleLogoutClick
|
|
9104
|
+
}, {
|
|
9105
|
+
default: withCtx(() => [
|
|
9106
|
+
createVNode(_component_Icon, { icon: "ep:switch-button" }),
|
|
9107
|
+
createElementVNode("div", null, toDisplayString(unref(t2)("layout.common.loginOut")), 1)
|
|
9108
|
+
]),
|
|
9109
|
+
_: 1
|
|
9110
|
+
}, 8, ["divided"])
|
|
8842
9111
|
]),
|
|
8843
9112
|
_: 1
|
|
8844
|
-
}
|
|
8845
|
-
|
|
8846
|
-
|
|
8847
|
-
|
|
9113
|
+
})
|
|
9114
|
+
]),
|
|
9115
|
+
default: withCtx(() => [
|
|
9116
|
+
createElementVNode("div", _hoisted_7$2, [
|
|
9117
|
+
createVNode(unref(ElAvatar), {
|
|
9118
|
+
src: unref(avatar),
|
|
9119
|
+
size: 24,
|
|
9120
|
+
class: "!bg-transparent"
|
|
9121
|
+
}, {
|
|
9122
|
+
default: withCtx(() => [
|
|
9123
|
+
createVNode(_component_Icon, {
|
|
9124
|
+
icon: "fa:user-circle-o",
|
|
9125
|
+
size: 24
|
|
9126
|
+
})
|
|
9127
|
+
]),
|
|
9128
|
+
_: 1
|
|
9129
|
+
}, 8, ["src"]),
|
|
9130
|
+
createElementVNode("div", _hoisted_8$1, [
|
|
9131
|
+
createElementVNode("span", _hoisted_9, toDisplayString(unref(userName)), 1),
|
|
9132
|
+
unref(showCompanyList) ? (openBlock(), createElementBlock("span", _hoisted_10, toDisplayString(unref(orgName)), 1)) : createCommentVNode("", true)
|
|
9133
|
+
]),
|
|
9134
|
+
createElementVNode("span", _hoisted_11, [
|
|
9135
|
+
createVNode(_component_Icon, {
|
|
9136
|
+
icon: "ep:arrow-down",
|
|
9137
|
+
svgClass: "!w-full !h-full",
|
|
9138
|
+
class: normalizeClass(["!w-12px", "!h-12px"])
|
|
9139
|
+
})
|
|
9140
|
+
])
|
|
8848
9141
|
])
|
|
8849
|
-
])
|
|
8850
|
-
|
|
8851
|
-
|
|
8852
|
-
|
|
9142
|
+
]),
|
|
9143
|
+
_: 1
|
|
9144
|
+
}, 8, ["class"])) : createCommentVNode("", true)
|
|
9145
|
+
], 64);
|
|
8853
9146
|
};
|
|
8854
9147
|
}
|
|
8855
9148
|
});
|
|
8856
|
-
const UserInfo = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-
|
|
9149
|
+
const UserInfo = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-31268ba6"]]);
|
|
8857
9150
|
const filterBreadcrumb = (routes, parentPath = "") => {
|
|
8858
9151
|
var _a2;
|
|
8859
9152
|
const res = [];
|
|
@@ -9382,7 +9675,7 @@ const setI18nLanguage = (locale) => {
|
|
|
9382
9675
|
const useLocale = () => {
|
|
9383
9676
|
const changeLocale = async (locale) => {
|
|
9384
9677
|
const globalI18n = i18n.global;
|
|
9385
|
-
const langModule = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../../locales/en.js": () => import("./en-
|
|
9678
|
+
const langModule = await __variableDynamicImportRuntimeHelper(/* @__PURE__ */ Object.assign({ "../../locales/en.js": () => import("./en-BLMsUBCM.mjs"), "../../locales/zh-CN.js": () => import("./zh-CN-i4M-o5m6.mjs") }), `../../locales/${locale}.js`);
|
|
9386
9679
|
globalI18n.setLocaleMessage(locale, langModule.default);
|
|
9387
9680
|
setI18nLanguage(locale);
|
|
9388
9681
|
};
|
|
@@ -9452,9 +9745,9 @@ const _sfc_main$l = /* @__PURE__ */ Object.assign({ name: "LocaleDropdown" }, {
|
|
|
9452
9745
|
};
|
|
9453
9746
|
}
|
|
9454
9747
|
});
|
|
9455
|
-
const _hoisted_1$
|
|
9456
|
-
const _hoisted_2$
|
|
9457
|
-
const _hoisted_3$
|
|
9748
|
+
const _hoisted_1$8 = { class: "theme-list" };
|
|
9749
|
+
const _hoisted_2$7 = ["onClick"];
|
|
9750
|
+
const _hoisted_3$6 = { class: "name" };
|
|
9458
9751
|
const _sfc_main$k = {
|
|
9459
9752
|
__name: "ThemeSwitch",
|
|
9460
9753
|
emits: ["change"],
|
|
@@ -9493,7 +9786,7 @@ const _sfc_main$k = {
|
|
|
9493
9786
|
return (_ctx, _cache) => {
|
|
9494
9787
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
9495
9788
|
createElementVNode("div", null, toDisplayString(unref(t2)("layout.setting.theme")), 1),
|
|
9496
|
-
createElementVNode("div", _hoisted_1$
|
|
9789
|
+
createElementVNode("div", _hoisted_1$8, [
|
|
9497
9790
|
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(themeList), (item) => {
|
|
9498
9791
|
return openBlock(), createElementBlock("div", {
|
|
9499
9792
|
class: normalizeClass(["item", { "active": unref(theme) === item.key }]),
|
|
@@ -9509,8 +9802,8 @@ const _sfc_main$k = {
|
|
|
9509
9802
|
style: normalizeStyle({ backgroundColor: item.color === "#fff" ? "#fafafa" : item.color })
|
|
9510
9803
|
}, null, 4)
|
|
9511
9804
|
], 4),
|
|
9512
|
-
createElementVNode("div", _hoisted_3$
|
|
9513
|
-
], 10, _hoisted_2$
|
|
9805
|
+
createElementVNode("div", _hoisted_3$6, toDisplayString(item.name), 1)
|
|
9806
|
+
], 10, _hoisted_2$7);
|
|
9514
9807
|
}), 128))
|
|
9515
9808
|
])
|
|
9516
9809
|
], 64);
|
|
@@ -9522,10 +9815,10 @@ const Chunjie = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIUAAABGCAYAAADip
|
|
|
9522
9815
|
const Duanwu = "data:image/png;base64,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";
|
|
9523
9816
|
const Zhongqiu = "data:image/png;base64,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";
|
|
9524
9817
|
const Yuandan = "data:image/png;base64,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";
|
|
9525
|
-
const _hoisted_1$
|
|
9526
|
-
const _hoisted_2$
|
|
9527
|
-
const _hoisted_3$
|
|
9528
|
-
const _hoisted_4$
|
|
9818
|
+
const _hoisted_1$7 = { class: "mt-24px" };
|
|
9819
|
+
const _hoisted_2$6 = { class: "theme-list" };
|
|
9820
|
+
const _hoisted_3$5 = ["src"];
|
|
9821
|
+
const _hoisted_4$5 = ["src"];
|
|
9529
9822
|
const _hoisted_5$4 = ["src"];
|
|
9530
9823
|
const _hoisted_6$3 = { class: "theme-list" };
|
|
9531
9824
|
const _hoisted_7$1 = ["src"];
|
|
@@ -9544,8 +9837,8 @@ const _sfc_main$j = {
|
|
|
9544
9837
|
};
|
|
9545
9838
|
return (_ctx, _cache) => {
|
|
9546
9839
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
9547
|
-
createElementVNode("div", _hoisted_1$
|
|
9548
|
-
createElementVNode("div", _hoisted_2$
|
|
9840
|
+
createElementVNode("div", _hoisted_1$7, toDisplayString(unref(t2)("layout.setting.festivalTheme")), 1),
|
|
9841
|
+
createElementVNode("div", _hoisted_2$6, [
|
|
9549
9842
|
createElementVNode("div", {
|
|
9550
9843
|
class: normalizeClass(["item", { "active": unref(theme) === "springFestival" }]),
|
|
9551
9844
|
onClick: _cache[0] || (_cache[0] = ($event) => handleClick("springFestival"))
|
|
@@ -9554,7 +9847,7 @@ const _sfc_main$j = {
|
|
|
9554
9847
|
class: "border",
|
|
9555
9848
|
style: normalizeStyle({ borderColor: unref(theme) === "springFestival" ? "var(--el-color-primary)" : "#d2d5e4" })
|
|
9556
9849
|
}, [
|
|
9557
|
-
createElementVNode("img", { src: unref(Chunjie) }, null, 8, _hoisted_3$
|
|
9850
|
+
createElementVNode("img", { src: unref(Chunjie) }, null, 8, _hoisted_3$5)
|
|
9558
9851
|
], 4),
|
|
9559
9852
|
_cache[4] || (_cache[4] = createElementVNode("div", { class: "name" }, "春节", -1))
|
|
9560
9853
|
], 2),
|
|
@@ -9566,7 +9859,7 @@ const _sfc_main$j = {
|
|
|
9566
9859
|
class: "border",
|
|
9567
9860
|
style: normalizeStyle({ borderColor: unref(theme) === "dragonBoatFestival" ? "var(--el-color-primary)" : "#d2d5e4" })
|
|
9568
9861
|
}, [
|
|
9569
|
-
createElementVNode("img", { src: unref(Duanwu) }, null, 8, _hoisted_4$
|
|
9862
|
+
createElementVNode("img", { src: unref(Duanwu) }, null, 8, _hoisted_4$5)
|
|
9570
9863
|
], 4),
|
|
9571
9864
|
_cache[5] || (_cache[5] = createElementVNode("div", { class: "name" }, "端午", -1))
|
|
9572
9865
|
], 2),
|
|
@@ -9604,73 +9897,8 @@ const _sfc_main$j = {
|
|
|
9604
9897
|
}
|
|
9605
9898
|
};
|
|
9606
9899
|
const FestivalThemeSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-868f3996"]]);
|
|
9607
|
-
const _hoisted_1$7 = { class: "mt-24px" };
|
|
9608
|
-
const _hoisted_2$6 = { class: "layout-list" };
|
|
9609
|
-
const _hoisted_3$5 = ["onClick"];
|
|
9610
|
-
const _hoisted_4$5 = { class: "name" };
|
|
9611
|
-
const _sfc_main$i = {
|
|
9612
|
-
__name: "LayoutSwitch",
|
|
9613
|
-
emits: ["change"],
|
|
9614
|
-
setup(__props, { emit: __emit }) {
|
|
9615
|
-
const emits = __emit;
|
|
9616
|
-
const { t: t2 } = useI18n();
|
|
9617
|
-
const appStore = useAppStore();
|
|
9618
|
-
const layout = computed(() => appStore.getLayout);
|
|
9619
|
-
const layoutItems = ref([
|
|
9620
|
-
{
|
|
9621
|
-
key: "left",
|
|
9622
|
-
name: "侧边导航",
|
|
9623
|
-
icon: "svg-icon:menu-left"
|
|
9624
|
-
},
|
|
9625
|
-
{
|
|
9626
|
-
key: "top",
|
|
9627
|
-
name: "顶部导航",
|
|
9628
|
-
icon: "svg-icon:menu-top"
|
|
9629
|
-
},
|
|
9630
|
-
{
|
|
9631
|
-
key: "topLeft",
|
|
9632
|
-
name: "混合导航",
|
|
9633
|
-
icon: "svg-icon:menu-top-left"
|
|
9634
|
-
}
|
|
9635
|
-
]);
|
|
9636
|
-
const handleClick = (item) => {
|
|
9637
|
-
if (layout.value === item.key)
|
|
9638
|
-
return;
|
|
9639
|
-
emits("change", item.key);
|
|
9640
|
-
};
|
|
9641
|
-
return (_ctx, _cache) => {
|
|
9642
|
-
const _component_Icon = resolveComponent("Icon");
|
|
9643
|
-
return openBlock(), createElementBlock(Fragment, null, [
|
|
9644
|
-
createElementVNode("div", _hoisted_1$7, toDisplayString(unref(t2)("layout.setting.layout")), 1),
|
|
9645
|
-
createElementVNode("div", _hoisted_2$6, [
|
|
9646
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(layoutItems), (item) => {
|
|
9647
|
-
return openBlock(), createElementBlock("div", {
|
|
9648
|
-
class: "item",
|
|
9649
|
-
key: item.key,
|
|
9650
|
-
onClick: ($event) => handleClick(item)
|
|
9651
|
-
}, [
|
|
9652
|
-
createElementVNode("div", {
|
|
9653
|
-
class: "border",
|
|
9654
|
-
style: normalizeStyle({ borderColor: unref(layout) === item.key ? "var(--el-color-primary)" : "#d2d5e4" })
|
|
9655
|
-
}, [
|
|
9656
|
-
createVNode(_component_Icon, {
|
|
9657
|
-
icon: item.icon,
|
|
9658
|
-
color: "var(--el-color-primary)",
|
|
9659
|
-
svgClass: "!w-full !h-full",
|
|
9660
|
-
class: "!w-full !h-70px"
|
|
9661
|
-
}, null, 8, ["icon"])
|
|
9662
|
-
], 4),
|
|
9663
|
-
createElementVNode("div", _hoisted_4$5, toDisplayString(item.name), 1)
|
|
9664
|
-
], 8, _hoisted_3$5);
|
|
9665
|
-
}), 128))
|
|
9666
|
-
])
|
|
9667
|
-
], 64);
|
|
9668
|
-
};
|
|
9669
|
-
}
|
|
9670
|
-
};
|
|
9671
|
-
const LayoutSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-265f0ebb"]]);
|
|
9672
9900
|
const _hoisted_1$6 = { class: "text-16px font-500 text-[var(--text-color)]" };
|
|
9673
|
-
const _sfc_main$
|
|
9901
|
+
const _sfc_main$i = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
9674
9902
|
__name: "Setting",
|
|
9675
9903
|
props: {
|
|
9676
9904
|
color: {
|
|
@@ -9693,10 +9921,11 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9693
9921
|
const { copy, copied, isSupported } = useClipboard({
|
|
9694
9922
|
source: `
|
|
9695
9923
|
// 主题相关
|
|
9696
|
-
theme: '${appStore.getTheme}'
|
|
9697
|
-
|
|
9698
|
-
|
|
9699
|
-
|
|
9924
|
+
theme: '${appStore.getTheme}'
|
|
9925
|
+
`
|
|
9926
|
+
// ,
|
|
9927
|
+
// // 布局相关
|
|
9928
|
+
// layout: '${appStore.getLayout}'
|
|
9700
9929
|
});
|
|
9701
9930
|
if (!isSupported) {
|
|
9702
9931
|
ElMessage.error(t2("layout.setting.copyFailed"));
|
|
@@ -9719,10 +9948,6 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9719
9948
|
appStore.setTheme(theme);
|
|
9720
9949
|
appStore.setCssVarTheme();
|
|
9721
9950
|
};
|
|
9722
|
-
const layoutChange = async (layout) => {
|
|
9723
|
-
await saveTheme({ theme: appStore.getTheme, layout });
|
|
9724
|
-
appStore.setLayout(layout);
|
|
9725
|
-
};
|
|
9726
9951
|
const saveTheme = async ({ theme, layout }) => {
|
|
9727
9952
|
ElMessage({
|
|
9728
9953
|
type: "success",
|
|
@@ -9740,7 +9965,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9740
9965
|
}), [
|
|
9741
9966
|
createVNode(_component_Icon, {
|
|
9742
9967
|
color: __props.color,
|
|
9743
|
-
icon: "
|
|
9968
|
+
icon: "svg-icon:hexagon",
|
|
9744
9969
|
size: 18
|
|
9745
9970
|
}, null, 8, ["color"])
|
|
9746
9971
|
], 16),
|
|
@@ -9780,8 +10005,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9780
10005
|
default: withCtx(() => [
|
|
9781
10006
|
createElementVNode("div", null, [
|
|
9782
10007
|
createVNode(ThemeSwitch, { onChange: themeChange }),
|
|
9783
|
-
createVNode(FestivalThemeSwitch, { onChange: themeChange })
|
|
9784
|
-
createVNode(LayoutSwitch, { onChange: layoutChange })
|
|
10008
|
+
createVNode(FestivalThemeSwitch, { onChange: themeChange })
|
|
9785
10009
|
])
|
|
9786
10010
|
]),
|
|
9787
10011
|
_: 1
|
|
@@ -9790,7 +10014,51 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9790
10014
|
};
|
|
9791
10015
|
}
|
|
9792
10016
|
});
|
|
9793
|
-
const Setting = /* @__PURE__ */ _export_sfc(_sfc_main$
|
|
10017
|
+
const Setting = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-b213e887"]]);
|
|
10018
|
+
const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Arrow" }, {
|
|
10019
|
+
__name: "Arrow",
|
|
10020
|
+
props: {
|
|
10021
|
+
color: {
|
|
10022
|
+
type: String,
|
|
10023
|
+
default: ""
|
|
10024
|
+
}
|
|
10025
|
+
},
|
|
10026
|
+
setup(__props) {
|
|
10027
|
+
const appStore = useAppStore();
|
|
10028
|
+
const { t: t2 } = useI18n();
|
|
10029
|
+
const topNav = computed(() => appStore.getTopNav);
|
|
10030
|
+
const topNavCollapsed = computed(() => topNav.value === "collapsed");
|
|
10031
|
+
const arrowIcon = computed(
|
|
10032
|
+
() => topNavCollapsed.value ? "svg-icon:arrow-left" : "svg-icon:arrow-right"
|
|
10033
|
+
);
|
|
10034
|
+
const handleArrowClick = () => {
|
|
10035
|
+
appStore.setTopNav(topNavCollapsed.value ? "floating" : "collapsed");
|
|
10036
|
+
};
|
|
10037
|
+
return (_ctx, _cache) => {
|
|
10038
|
+
const _component_Icon = resolveComponent("Icon");
|
|
10039
|
+
return openBlock(), createElementBlock("div", {
|
|
10040
|
+
class: "arrow",
|
|
10041
|
+
onClick: handleArrowClick
|
|
10042
|
+
}, [
|
|
10043
|
+
createVNode(unref(ElPopover), {
|
|
10044
|
+
disabled: !unref(topNavCollapsed),
|
|
10045
|
+
content: unref(t2)("layout.common.expandAppMenu"),
|
|
10046
|
+
placement: "left",
|
|
10047
|
+
"show-after": 100
|
|
10048
|
+
}, {
|
|
10049
|
+
reference: withCtx(() => [
|
|
10050
|
+
createVNode(_component_Icon, {
|
|
10051
|
+
color: __props.color,
|
|
10052
|
+
size: 11,
|
|
10053
|
+
icon: unref(arrowIcon)
|
|
10054
|
+
}, null, 8, ["color", "icon"])
|
|
10055
|
+
]),
|
|
10056
|
+
_: 1
|
|
10057
|
+
}, 8, ["disabled", "content"])
|
|
10058
|
+
]);
|
|
10059
|
+
};
|
|
10060
|
+
}
|
|
10061
|
+
});
|
|
9794
10062
|
const _sfc_main$g = {
|
|
9795
10063
|
__name: "index",
|
|
9796
10064
|
props: {
|
|
@@ -9941,6 +10209,10 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
9941
10209
|
onClearCacheLogoutClick: {
|
|
9942
10210
|
type: Function,
|
|
9943
10211
|
default: null
|
|
10212
|
+
},
|
|
10213
|
+
onSwitchCompanyClick: {
|
|
10214
|
+
type: Function,
|
|
10215
|
+
default: null
|
|
9944
10216
|
}
|
|
9945
10217
|
},
|
|
9946
10218
|
setup(props, {
|
|
@@ -9948,49 +10220,67 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
9948
10220
|
}) {
|
|
9949
10221
|
const appStore = useAppStore();
|
|
9950
10222
|
const breadcrumb = computed(() => appStore.getBreadcrumb);
|
|
9951
|
-
computed(() => appStore.getHamburger);
|
|
9952
10223
|
const search = computed(() => appStore.search);
|
|
9953
10224
|
const layout = computed(() => appStore.getLayout);
|
|
9954
10225
|
const locale = computed(() => appStore.getLocale);
|
|
9955
10226
|
const message = computed(() => appStore.getMessage);
|
|
9956
10227
|
const setting = computed(() => appStore.getSetting);
|
|
10228
|
+
const topNav = computed(() => appStore.getTopNav);
|
|
10229
|
+
const topNavNormal = computed(() => topNav.value === "normal");
|
|
10230
|
+
const topNavCollapsed = computed(() => topNav.value === "collapsed");
|
|
10231
|
+
const iconColor = computed(() => topNavNormal.value ? "var(--top-header-icon-color)" : "#dae0e9");
|
|
9957
10232
|
return () => {
|
|
9958
10233
|
var _a2;
|
|
9959
10234
|
return createVNode("div", {
|
|
9960
10235
|
"id": `${variables.namespace}-tool-header`,
|
|
9961
|
-
"class": [prefixCls$2, "
|
|
10236
|
+
"class": [prefixCls$2, "px-[var(--top-tool-p-x)] flex items-center justify-between", "dark:bg-[var(--el-bg-color)]", {
|
|
10237
|
+
"tool-header-normal": topNavNormal.value,
|
|
10238
|
+
"tool-header-floating": topNav.value === "floating",
|
|
10239
|
+
"tool-header-collapsed": topNav.value === "collapsed"
|
|
10240
|
+
}],
|
|
10241
|
+
"style": "transition: all var(--transition-time-02);"
|
|
9962
10242
|
}, [layout.value !== "top" ? createVNode("div", {
|
|
9963
10243
|
"class": "h-full flex items-center"
|
|
9964
10244
|
}, [breadcrumb.value ? createVNode(Breadcrumb, {
|
|
9965
10245
|
"class": "lt-md:hidden"
|
|
9966
10246
|
}, null) : void 0]) : void 0, (_a2 = slots.default) == null ? void 0 : _a2.call(slots), createVNode("div", {
|
|
9967
10247
|
"class": "h-full flex items-center"
|
|
9968
|
-
}, [search.value ? createVNode(_sfc_main$g, {
|
|
10248
|
+
}, [!topNavCollapsed.value && createVNode(Fragment, null, [search.value ? createVNode(_sfc_main$g, {
|
|
9969
10249
|
"isModal": false
|
|
10250
|
+
}, null) : void 0, message.value ? createVNode(Message, {
|
|
10251
|
+
"class": "custom-hover cursor-pointer",
|
|
10252
|
+
"color": iconColor.value,
|
|
10253
|
+
"onMessageClick": props.onMessageClick
|
|
9970
10254
|
}, null) : void 0, setting.value ? createVNode(Setting, {
|
|
9971
10255
|
"class": "custom-hover cursor-pointer",
|
|
9972
|
-
"color":
|
|
10256
|
+
"color": iconColor.value,
|
|
9973
10257
|
"onClearCacheLogoutClick": props.onClearCacheLogoutClick
|
|
9974
10258
|
}, null) : void 0, locale.value ? createVNode(_sfc_main$l, {
|
|
9975
10259
|
"class": "custom-hover",
|
|
9976
10260
|
"color": "var(--top-header-text-color)"
|
|
9977
|
-
}, null) : void 0,
|
|
10261
|
+
}, null) : void 0, createVNode("div", {
|
|
10262
|
+
"class": `h-12px mx-10px`,
|
|
10263
|
+
"style": `border-left: 1px solid ${iconColor.value}`
|
|
10264
|
+
}, null), createVNode(UserInfo, {
|
|
10265
|
+
"onLogoutClick": props.onLogoutClick,
|
|
10266
|
+
"onSwitchCompanyClick": props.onSwitchCompanyClick
|
|
10267
|
+
}, null)]), !topNavNormal.value && createVNode(Fragment, null, [!topNavCollapsed.value && createVNode("div", {
|
|
10268
|
+
"class": `h-12px mx-10px`,
|
|
10269
|
+
"style": `border-left: 1px solid ${iconColor.value}`
|
|
10270
|
+
}, null), createVNode(_sfc_main$h, {
|
|
9978
10271
|
"class": "custom-hover cursor-pointer",
|
|
9979
|
-
"color":
|
|
9980
|
-
|
|
9981
|
-
}, null) : void 0, createVNode(UserInfo, {
|
|
9982
|
-
"onLogoutClick": props.onLogoutClick
|
|
9983
|
-
}, null)])]);
|
|
10272
|
+
"color": iconColor.value
|
|
10273
|
+
}, null)])])]);
|
|
9984
10274
|
};
|
|
9985
10275
|
}
|
|
9986
10276
|
});
|
|
9987
|
-
const ToolHeader = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-
|
|
10277
|
+
const ToolHeader = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-c654093f"]]);
|
|
9988
10278
|
const {
|
|
9989
10279
|
getPrefixCls: getPrefixCls$1
|
|
9990
10280
|
} = useDesign();
|
|
9991
10281
|
const prefixCls$1 = getPrefixCls$1("layout");
|
|
9992
10282
|
const scrollRef = ref();
|
|
9993
|
-
const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick) => {
|
|
10283
|
+
const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick, onSwitchCompanyClick) => {
|
|
9994
10284
|
const appStore = useAppStore();
|
|
9995
10285
|
const permissionStore = usePermissionStore();
|
|
9996
10286
|
const pageLoading = computed(() => appStore.getPageLoading);
|
|
@@ -10019,28 +10309,51 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
10019
10309
|
});
|
|
10020
10310
|
const zIndexClass = computed(() => {
|
|
10021
10311
|
return {
|
|
10022
|
-
"z-
|
|
10312
|
+
"z-2000": theme.value === "whiteLight"
|
|
10023
10313
|
};
|
|
10024
10314
|
});
|
|
10315
|
+
const topNav = computed(() => appStore.getTopNav);
|
|
10316
|
+
const topNavNormal = computed(() => topNav.value === "normal");
|
|
10025
10317
|
const renderLeft = () => {
|
|
10026
|
-
return createVNode(Fragment, null, [createVNode("div", {
|
|
10027
|
-
"class": ["relative flex items-center bg-[linear-gradient(var(--top-header-bg-color))] layout-border__bottom dark:bg-[var(--el-bg-color)] shadow-[0px_2px_6px_0px_rgba(197,206,225,0.35)]", festivalTopClass.value, zIndexClass.value]
|
|
10318
|
+
return createVNode(Fragment, null, [topNavNormal.value && createVNode("div", {
|
|
10319
|
+
"class": ["relative flex items-center bg-[linear-gradient(var(--top-header-bg-color))] layout-border__bottom dark:bg-[var(--el-bg-color)] shadow-[0px_2px_6px_0px_rgba(197,206,225,0.35)]", festivalTopClass.value, zIndexClass.value],
|
|
10320
|
+
"style": "transition: all var(--transition-time-02);"
|
|
10028
10321
|
}, [logo.value ? createVNode(_sfc_main$q, {
|
|
10029
10322
|
"class": [{
|
|
10030
|
-
"w-[var(--left-menu-min-width)]":
|
|
10031
|
-
"w-[var(--left-menu-max-width)]": !
|
|
10323
|
+
"w-[var(--left-menu-min-width)]": collapse.value,
|
|
10324
|
+
"w-[var(--left-menu-max-width)]": !collapse.value
|
|
10032
10325
|
}],
|
|
10033
10326
|
"onLogoClick": onLogoClick
|
|
10034
10327
|
}, null) : void 0, createVNode(ToolHeader, {
|
|
10035
10328
|
"class": "flex-1",
|
|
10036
10329
|
"onMessageClick": onMessageClick,
|
|
10037
10330
|
"onLogoutClick": onLogoutClick,
|
|
10038
|
-
"onClearCacheLogoutClick": onClearCacheLogoutClick
|
|
10331
|
+
"onClearCacheLogoutClick": onClearCacheLogoutClick,
|
|
10332
|
+
"onSwitchCompanyClick": onSwitchCompanyClick
|
|
10333
|
+
}, null)]), createVNode("div", {
|
|
10334
|
+
"class": ["w-full flex", {
|
|
10335
|
+
"h-[calc(100%-var(--top-header-height))]": topNavNormal.value,
|
|
10336
|
+
"h-full": !topNavNormal.value
|
|
10337
|
+
}]
|
|
10338
|
+
}, [createVNode("div", null, [!topNavNormal.value && createVNode(Fragment, null, [logo.value ? createVNode(_sfc_main$q, {
|
|
10339
|
+
"class": ["relative bg-[linear-gradient(var(--top-header-bg-color))] shadow-[0px_2px_6px_0px_rgba(197,206,225,0.35)]", zIndexClass.value, {
|
|
10340
|
+
"w-[var(--left-menu-min-width)]": collapse.value,
|
|
10341
|
+
"w-[var(--left-menu-max-width)]": !collapse.value
|
|
10342
|
+
}],
|
|
10343
|
+
"onLogoClick": onLogoClick,
|
|
10344
|
+
"style": "transition: all var(--transition-time-02);"
|
|
10345
|
+
}, null) : void 0, createVNode(ToolHeader, {
|
|
10346
|
+
"class": "flex-1",
|
|
10347
|
+
"onMessageClick": onMessageClick,
|
|
10348
|
+
"onLogoutClick": onLogoutClick,
|
|
10349
|
+
"onClearCacheLogoutClick": onClearCacheLogoutClick,
|
|
10350
|
+
"onSwitchCompanyClick": onSwitchCompanyClick
|
|
10351
|
+
}, null)]), createVNode(Menu, {
|
|
10352
|
+
"class": ["relative layout-border__right", festivalMenuClass.value, {
|
|
10353
|
+
"!h-full": topNavNormal.value,
|
|
10354
|
+
"h-[calc(100%-var(--top-header-height))]": !topNavNormal.value
|
|
10355
|
+
}]
|
|
10039
10356
|
}, null)]), createVNode("div", {
|
|
10040
|
-
"class": "h-[calc(100%-var(--top-header-height))] w-full flex"
|
|
10041
|
-
}, [createVNode(Menu, {
|
|
10042
|
-
"class": ["relative layout-border__right !h-full", festivalMenuClass.value]
|
|
10043
|
-
}, null), createVNode("div", {
|
|
10044
10357
|
"class": [`${prefixCls$1}-content`, "h-[100%]", {
|
|
10045
10358
|
"w-[calc(100%-var(--left-menu-min-width))] left-[var(--left-menu-min-width)]": collapse.value,
|
|
10046
10359
|
"w-[calc(100%-var(--left-menu-max-width))] left-[var(--left-menu-max-width)]": !collapse.value
|
|
@@ -10050,12 +10363,14 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
10050
10363
|
"class": [`${prefixCls$1}-content-scrollbar`, {
|
|
10051
10364
|
"!h-[calc(100%-var(--tags-view-height))] mt-[calc(var(--tags-view-height))]": tagsView.value
|
|
10052
10365
|
}],
|
|
10053
|
-
"ref": scrollRef
|
|
10366
|
+
"ref": scrollRef,
|
|
10367
|
+
"style": "transition: all var(--transition-time-02);"
|
|
10054
10368
|
}, {
|
|
10055
10369
|
default: () => [tagsView.value ? createVNode(TagsView, {
|
|
10056
|
-
"class": ["layout-border__bottom
|
|
10057
|
-
"w-[calc(100%-var(--left-menu-min-width))] !left-[var(--left-menu-min-width)]
|
|
10058
|
-
"w-[calc(100%-var(--left-menu-max-width))] !left-[var(--left-menu-max-width)]
|
|
10370
|
+
"class": ["layout-border__bottom", "!fixed top-0 left-0 z-10", {
|
|
10371
|
+
"w-[calc(100%-var(--left-menu-min-width))] !left-[var(--left-menu-min-width)]": collapse.value,
|
|
10372
|
+
"w-[calc(100%-var(--left-menu-max-width))] !left-[var(--left-menu-max-width)]": !collapse.value,
|
|
10373
|
+
"mt-[var(--top-header-height)]": topNavNormal.value
|
|
10059
10374
|
}],
|
|
10060
10375
|
"style": "transition: width var(--transition-time-02), left var(--transition-time-02);"
|
|
10061
10376
|
}, null) : void 0, createVNode(_sfc_main$p, null, null)]
|
|
@@ -10063,30 +10378,26 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
10063
10378
|
};
|
|
10064
10379
|
const renderTop = () => {
|
|
10065
10380
|
return createVNode(Fragment, null, [createVNode("div", {
|
|
10066
|
-
"class": ["relative flex items-center justify-between bg-[linear-gradient(var(--top-header-bg-color))]", {
|
|
10381
|
+
"class": ["relative flex items-center justify-between bg-[linear-gradient(var(--top-header-bg-color))] shadow-[0px_2px_6px_0px_rgba(197,206,225,0.35)] z-100", {
|
|
10067
10382
|
"layout-border__bottom": !tagsView.value
|
|
10068
10383
|
}, festivalTopClass.value]
|
|
10069
10384
|
}, [logo.value ? createVNode(_sfc_main$q, {
|
|
10070
10385
|
"class": ["w-[var(--left-menu-max-width)]"],
|
|
10071
10386
|
"onLogoClick": onLogoClick
|
|
10072
|
-
}, null) : void 0, createVNode(
|
|
10073
|
-
"class": "
|
|
10387
|
+
}, null) : void 0, tagsView.value && createVNode(TagsView, {
|
|
10388
|
+
"class": ["layout-border__bottom flex-1"]
|
|
10074
10389
|
}, null), createVNode(ToolHeader, {
|
|
10075
10390
|
"onMessageClick": onMessageClick,
|
|
10076
10391
|
"onLogoutClick": onLogoutClick,
|
|
10077
|
-
"onClearCacheLogoutClick": onClearCacheLogoutClick
|
|
10392
|
+
"onClearCacheLogoutClick": onClearCacheLogoutClick,
|
|
10393
|
+
"onSwitchCompanyClick": onSwitchCompanyClick
|
|
10078
10394
|
}, null)]), createVNode("div", {
|
|
10079
10395
|
"class": [`${prefixCls$1}-content`, "w-full h-[calc(100%-var(--top-tool-height))]"]
|
|
10080
10396
|
}, [withDirectives(createVNode(ElScrollbar, {
|
|
10081
|
-
"class": [`${prefixCls$1}-content-scrollbar
|
|
10082
|
-
"!h-[calc(100%-var(--tags-view-height))] mt-[calc(var(--tags-view-height))]": tagsView.value
|
|
10083
|
-
}],
|
|
10397
|
+
"class": [`${prefixCls$1}-content-scrollbar`],
|
|
10084
10398
|
"ref": scrollRef
|
|
10085
10399
|
}, {
|
|
10086
|
-
default: () => [
|
|
10087
|
-
"class": ["layout-border__bottom layout-border__top relative", "!fixed w-full top-[var(--top-tool-height)] left-0"],
|
|
10088
|
-
"style": "transition: width var(--transition-time-02), left var(--transition-time-02);"
|
|
10089
|
-
}, null) : void 0, createVNode(_sfc_main$p, null, null)]
|
|
10400
|
+
default: () => [createVNode(_sfc_main$p, null, null)]
|
|
10090
10401
|
}), [[resolveDirective("loading"), pageLoading.value]])])]);
|
|
10091
10402
|
};
|
|
10092
10403
|
const renderTopLeft = () => {
|
|
@@ -10104,7 +10415,8 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
10104
10415
|
"class": "flex-1",
|
|
10105
10416
|
"onMessageClick": onMessageClick,
|
|
10106
10417
|
"onLogoutClick": onLogoutClick,
|
|
10107
|
-
"onClearCacheLogoutClick": onClearCacheLogoutClick
|
|
10418
|
+
"onClearCacheLogoutClick": onClearCacheLogoutClick,
|
|
10419
|
+
"onSwitchCompanyClick": onSwitchCompanyClick
|
|
10108
10420
|
}, {
|
|
10109
10421
|
default: () => createVNode(Menu, {
|
|
10110
10422
|
"mode": "horizontal",
|
|
@@ -10151,13 +10463,13 @@ const {
|
|
|
10151
10463
|
} = useDesign();
|
|
10152
10464
|
const prefixCls = getPrefixCls("layout");
|
|
10153
10465
|
const layoutScrollRef = ref();
|
|
10154
|
-
const renderLayout = (layout, onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick) => {
|
|
10466
|
+
const renderLayout = (layout, onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick, onSwitchCompanyClick) => {
|
|
10155
10467
|
const {
|
|
10156
10468
|
renderLeft,
|
|
10157
10469
|
renderTop,
|
|
10158
10470
|
renderTopLeft,
|
|
10159
10471
|
scrollRef: scrollRef2
|
|
10160
|
-
} = useRenderLayout(onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick);
|
|
10472
|
+
} = useRenderLayout(onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick, onSwitchCompanyClick);
|
|
10161
10473
|
layoutScrollRef.value = scrollRef2.value;
|
|
10162
10474
|
switch (unref(layout)) {
|
|
10163
10475
|
case "left":
|
|
@@ -10170,7 +10482,7 @@ const renderLayout = (layout, onLogoClick, onMessageClick, onLogoutClick, onClea
|
|
|
10170
10482
|
};
|
|
10171
10483
|
const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
10172
10484
|
name: "Layout",
|
|
10173
|
-
emits: ["logo-click", "message-click", "logout-click", "clear-cache-logout-click"],
|
|
10485
|
+
emits: ["logo-click", "message-click", "logout-click", "clear-cache-logout-click", "switch-company-click"],
|
|
10174
10486
|
setup(props, {
|
|
10175
10487
|
emit
|
|
10176
10488
|
}) {
|
|
@@ -10190,12 +10502,15 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
10190
10502
|
const handleClearCacheLogoutClick = () => {
|
|
10191
10503
|
emit("clear-cache-logout-click");
|
|
10192
10504
|
};
|
|
10505
|
+
const handleSwitchCompanyClick = (company) => {
|
|
10506
|
+
emit("switch-company-click", company);
|
|
10507
|
+
};
|
|
10193
10508
|
return () => createVNode("section", {
|
|
10194
10509
|
"class": [prefixCls, `${prefixCls}__${layout.value}`, "w-[100%] h-[100%] relative", `${prefixCls}__${theme.value}`]
|
|
10195
|
-
}, [renderLayout(layout, handleLogoClick, handleMessageClick, handleLogoutClick, handleClearCacheLogoutClick), createVNode(_sfc_main$y, null, null)]);
|
|
10510
|
+
}, [renderLayout(layout, handleLogoClick, handleMessageClick, handleLogoutClick, handleClearCacheLogoutClick, handleSwitchCompanyClick), createVNode(_sfc_main$y, null, null)]);
|
|
10196
10511
|
}
|
|
10197
10512
|
});
|
|
10198
|
-
const Layout = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-
|
|
10513
|
+
const Layout = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-6f98299c"]]);
|
|
10199
10514
|
const _sfc_main$d = {
|
|
10200
10515
|
__name: "ConfigGlobal",
|
|
10201
10516
|
props: {
|
|
@@ -10276,7 +10591,7 @@ const _sfc_main$c = /* @__PURE__ */ Object.assign({ name: "PageCard" }, {
|
|
|
10276
10591
|
return openBlock(), createBlock(unref(ElCard), {
|
|
10277
10592
|
"body-style": __props.bodyStyle,
|
|
10278
10593
|
header: __props.title,
|
|
10279
|
-
class: normalizeClass([unref(prefixCls2), "
|
|
10594
|
+
class: normalizeClass([unref(prefixCls2), "mx-16px my-16px"])
|
|
10280
10595
|
}, {
|
|
10281
10596
|
default: withCtx(() => [
|
|
10282
10597
|
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
@@ -10286,7 +10601,7 @@ const _sfc_main$c = /* @__PURE__ */ Object.assign({ name: "PageCard" }, {
|
|
|
10286
10601
|
};
|
|
10287
10602
|
}
|
|
10288
10603
|
});
|
|
10289
|
-
const PageCard = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-
|
|
10604
|
+
const PageCard = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-f55a8642"]]);
|
|
10290
10605
|
const _hoisted_1$5 = { class: "ml-2px" };
|
|
10291
10606
|
const _hoisted_2$5 = { class: "flex items-center" };
|
|
10292
10607
|
const _sfc_main$b = /* @__PURE__ */ Object.assign({ name: "PageNavBar" }, {
|