bmp-layout 0.0.23 → 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 +770 -388
- 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();
|
|
@@ -7664,7 +7755,7 @@ const useTagsViewStore = defineStore("layout-tagsView", {
|
|
|
7664
7755
|
}
|
|
7665
7756
|
this.visitedViews.push(visitedView);
|
|
7666
7757
|
},
|
|
7667
|
-
// 新增缓存
|
|
7758
|
+
// 新增缓存 —— 根据当前 visitedViews 重新计算需要缓存的路由 name 列表
|
|
7668
7759
|
addCachedView() {
|
|
7669
7760
|
var _a2;
|
|
7670
7761
|
const cacheMap = /* @__PURE__ */ new Set();
|
|
@@ -7675,16 +7766,19 @@ const useTagsViewStore = defineStore("layout-tagsView", {
|
|
|
7675
7766
|
continue;
|
|
7676
7767
|
}
|
|
7677
7768
|
const name = item.name;
|
|
7769
|
+
if (!name) {
|
|
7770
|
+
continue;
|
|
7771
|
+
}
|
|
7678
7772
|
cacheMap.add(name);
|
|
7679
7773
|
}
|
|
7680
7774
|
if (Array.from(this.cachedViews).sort().toString() === Array.from(cacheMap).sort().toString())
|
|
7681
7775
|
return;
|
|
7682
7776
|
this.cachedViews = cacheMap;
|
|
7683
7777
|
},
|
|
7684
|
-
// 删除某个
|
|
7778
|
+
// 删除某个tag及其缓存
|
|
7685
7779
|
delView(view) {
|
|
7686
7780
|
this.delVisitedView(view);
|
|
7687
|
-
this.
|
|
7781
|
+
this.addCachedView();
|
|
7688
7782
|
},
|
|
7689
7783
|
// 删除tag
|
|
7690
7784
|
delVisitedView(view) {
|
|
@@ -7695,17 +7789,18 @@ const useTagsViewStore = defineStore("layout-tagsView", {
|
|
|
7695
7789
|
}
|
|
7696
7790
|
}
|
|
7697
7791
|
},
|
|
7698
|
-
//
|
|
7699
|
-
delCachedView() {
|
|
7792
|
+
// 删除指定视图的缓存,未传 view 时使用 selectedTag(用于刷新场景)
|
|
7793
|
+
delCachedView(view) {
|
|
7700
7794
|
var _a2;
|
|
7701
|
-
|
|
7702
|
-
|
|
7795
|
+
const routeName = (view == null ? void 0 : view.name) || ((_a2 = this.selectedTag) == null ? void 0 : _a2.name);
|
|
7796
|
+
if (routeName && this.cachedViews.has(routeName)) {
|
|
7797
|
+
this.cachedViews.delete(routeName);
|
|
7703
7798
|
}
|
|
7704
7799
|
},
|
|
7705
7800
|
// 删除所有缓存和tag
|
|
7706
7801
|
delAllViews() {
|
|
7707
7802
|
this.delAllVisitedViews();
|
|
7708
|
-
this.
|
|
7803
|
+
this.addCachedView();
|
|
7709
7804
|
},
|
|
7710
7805
|
// 删除所有tag
|
|
7711
7806
|
delAllVisitedViews() {
|
|
@@ -7905,7 +8000,7 @@ const useTagsView = () => {
|
|
|
7905
8000
|
callback2 == null ? void 0 : callback2();
|
|
7906
8001
|
};
|
|
7907
8002
|
const refreshPage = async (view, callback2) => {
|
|
7908
|
-
tagsViewStore.delCachedView();
|
|
8003
|
+
tagsViewStore.delCachedView(view || unref(currentRoute));
|
|
7909
8004
|
const { path, query } = view || unref(currentRoute);
|
|
7910
8005
|
await nextTick();
|
|
7911
8006
|
replace({
|
|
@@ -7974,9 +8069,9 @@ function useScrollTo({
|
|
|
7974
8069
|
}
|
|
7975
8070
|
return { start: run, stop };
|
|
7976
8071
|
}
|
|
7977
|
-
const _hoisted_1$
|
|
7978
|
-
const _hoisted_2$
|
|
7979
|
-
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" };
|
|
7980
8075
|
const _hoisted_4$8 = ["onClick"];
|
|
7981
8076
|
const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
7982
8077
|
__name: "TagsView",
|
|
@@ -8054,6 +8149,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8054
8149
|
const wrap$ = (_a2 = unref(scrollbarRef)) == null ? void 0 : _a2.wrapRef;
|
|
8055
8150
|
if (!wrap$)
|
|
8056
8151
|
return;
|
|
8152
|
+
scrollStopFn == null ? void 0 : scrollStopFn();
|
|
8057
8153
|
let firstTag = null;
|
|
8058
8154
|
let lastTag = null;
|
|
8059
8155
|
const tagList = unref(tagLinksRefs);
|
|
@@ -8062,12 +8158,22 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8062
8158
|
lastTag = tagList[tagList.length - 1];
|
|
8063
8159
|
}
|
|
8064
8160
|
if ((firstTag == null ? void 0 : firstTag.to).fullPath === currentTag.fullPath) {
|
|
8065
|
-
const { start } = useScrollTo({
|
|
8161
|
+
const { start, stop } = useScrollTo({
|
|
8066
8162
|
el: wrap$,
|
|
8067
8163
|
position: "scrollLeft",
|
|
8068
8164
|
to: 0,
|
|
8069
8165
|
duration: 500
|
|
8070
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;
|
|
8071
8177
|
start();
|
|
8072
8178
|
} else if ((lastTag == null ? void 0 : lastTag.to).fullPath === currentTag.fullPath) {
|
|
8073
8179
|
const { start } = useScrollTo({
|
|
@@ -8078,9 +8184,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8078
8184
|
});
|
|
8079
8185
|
start();
|
|
8080
8186
|
} else {
|
|
8081
|
-
const currentIndex = tagList.findIndex(
|
|
8082
|
-
(item) => (item == null ? void 0 : item.to).fullPath === currentTag.fullPath
|
|
8083
|
-
);
|
|
8187
|
+
const currentIndex = tagList.findIndex((item) => (item == null ? void 0 : item.to).fullPath === currentTag.fullPath);
|
|
8084
8188
|
const tgsRefs = document.getElementsByClassName(`${prefixCls2}__item`);
|
|
8085
8189
|
const prevTag = tgsRefs[currentIndex - 1];
|
|
8086
8190
|
const nextTag = tgsRefs[currentIndex + 1];
|
|
@@ -8089,20 +8193,22 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8089
8193
|
const afterNextTagOffsetLeft = nextTag.offsetLeft + nextTag.offsetWidth;
|
|
8090
8194
|
const beforePrevTagOffsetLeft = prevTag.offsetLeft;
|
|
8091
8195
|
if (afterNextTagOffsetLeft > unref(scrollLeftNumber) + wrap$.offsetWidth) {
|
|
8092
|
-
const { start } = useScrollTo({
|
|
8196
|
+
const { start, stop } = useScrollTo({
|
|
8093
8197
|
el: wrap$,
|
|
8094
8198
|
position: "scrollLeft",
|
|
8095
8199
|
to: afterNextTagOffsetLeft - wrap$.offsetWidth,
|
|
8096
8200
|
duration: 500
|
|
8097
8201
|
});
|
|
8202
|
+
scrollStopFn = stop;
|
|
8098
8203
|
start();
|
|
8099
8204
|
} else if (beforePrevTagOffsetLeft < unref(scrollLeftNumber)) {
|
|
8100
|
-
const { start } = useScrollTo({
|
|
8205
|
+
const { start, stop } = useScrollTo({
|
|
8101
8206
|
el: wrap$,
|
|
8102
8207
|
position: "scrollLeft",
|
|
8103
8208
|
to: beforePrevTagOffsetLeft,
|
|
8104
8209
|
duration: 500
|
|
8105
8210
|
});
|
|
8211
|
+
scrollStopFn = stop;
|
|
8106
8212
|
start();
|
|
8107
8213
|
}
|
|
8108
8214
|
}
|
|
@@ -8115,6 +8221,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8115
8221
|
};
|
|
8116
8222
|
const scrollbarRef = ref();
|
|
8117
8223
|
const scrollLeftNumber = ref(0);
|
|
8224
|
+
let scrollStopFn = null;
|
|
8118
8225
|
const scroll = ({ scrollLeft }) => {
|
|
8119
8226
|
scrollLeftNumber.value = scrollLeft;
|
|
8120
8227
|
};
|
|
@@ -8134,9 +8241,9 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8134
8241
|
const _component_router_link = resolveComponent("router-link");
|
|
8135
8242
|
return openBlock(), createElementBlock("div", {
|
|
8136
8243
|
id: unref(prefixCls2),
|
|
8137
|
-
class: normalizeClass([unref(prefixCls2), "relative
|
|
8244
|
+
class: normalizeClass([unref(prefixCls2), "relative flex"])
|
|
8138
8245
|
}, [
|
|
8139
|
-
createElementVNode("div", _hoisted_2$
|
|
8246
|
+
createElementVNode("div", _hoisted_2$a, [
|
|
8140
8247
|
createVNode(unref(ElScrollbar), {
|
|
8141
8248
|
ref_key: "scrollbarRef",
|
|
8142
8249
|
ref: scrollbarRef,
|
|
@@ -8144,7 +8251,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8144
8251
|
onScroll: scroll
|
|
8145
8252
|
}, {
|
|
8146
8253
|
default: withCtx(() => [
|
|
8147
|
-
createElementVNode("div", _hoisted_3$
|
|
8254
|
+
createElementVNode("div", _hoisted_3$9, [
|
|
8148
8255
|
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(visitedViews), (item) => {
|
|
8149
8256
|
var _a2, _b, _c, _d, _e, _f;
|
|
8150
8257
|
return openBlock(), createBlock(unref(_sfc_main$u), {
|
|
@@ -8204,18 +8311,22 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8204
8311
|
var _a3, _b2;
|
|
8205
8312
|
return [
|
|
8206
8313
|
createElementVNode("div", {
|
|
8207
|
-
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`),
|
|
8208
8315
|
onClick: navigate
|
|
8209
8316
|
}, [
|
|
8210
8317
|
createElementVNode("span", null, toDisplayString(unref(t2)((_a3 = item == null ? void 0 : item.meta) == null ? void 0 : _a3.title)), 1),
|
|
8211
|
-
((_b2 = unref(visitedViews)) == null ? void 0 : _b2.length) > 1 ? (openBlock(),
|
|
8212
|
-
|
|
8213
|
-
|
|
8214
|
-
|
|
8215
|
-
|
|
8216
|
-
|
|
8217
|
-
|
|
8218
|
-
|
|
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)
|
|
8219
8330
|
], 10, _hoisted_4$8)
|
|
8220
8331
|
];
|
|
8221
8332
|
}),
|
|
@@ -8231,11 +8342,11 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
|
|
|
8231
8342
|
_: 1
|
|
8232
8343
|
}, 512)
|
|
8233
8344
|
])
|
|
8234
|
-
], 10, _hoisted_1$
|
|
8345
|
+
], 10, _hoisted_1$c);
|
|
8235
8346
|
};
|
|
8236
8347
|
}
|
|
8237
8348
|
});
|
|
8238
|
-
const TagsView = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-
|
|
8349
|
+
const TagsView = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-3ab01e0b"]]);
|
|
8239
8350
|
const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
8240
8351
|
__name: "MenuTrigger",
|
|
8241
8352
|
props: {
|
|
@@ -8246,9 +8357,12 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
|
8246
8357
|
},
|
|
8247
8358
|
emits: ["click", "toggle"],
|
|
8248
8359
|
setup(__props, { emit: __emit }) {
|
|
8360
|
+
const appStore = useAppStore();
|
|
8249
8361
|
const { getPrefixCls: getPrefixCls2 } = useDesign();
|
|
8250
8362
|
const prefixCls2 = getPrefixCls2("menu-trigger");
|
|
8251
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");
|
|
8252
8366
|
const emit = __emit;
|
|
8253
8367
|
const handleClick = () => {
|
|
8254
8368
|
emit("click");
|
|
@@ -8261,7 +8375,7 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
|
8261
8375
|
onClick: handleClick
|
|
8262
8376
|
}, [
|
|
8263
8377
|
createVNode(_component_Icon, {
|
|
8264
|
-
icon:
|
|
8378
|
+
icon: unref(triggerIcon),
|
|
8265
8379
|
svgClass: "!w-full !h-full",
|
|
8266
8380
|
class: normalizeClass(["!w-18px", "!h-18px", "icon-color"])
|
|
8267
8381
|
}, null, 8, ["icon"])
|
|
@@ -8269,11 +8383,12 @@ const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
|
|
|
8269
8383
|
};
|
|
8270
8384
|
}
|
|
8271
8385
|
});
|
|
8272
|
-
const MenuTrigger = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-
|
|
8273
|
-
const _hoisted_1$
|
|
8274
|
-
const _hoisted_2$
|
|
8275
|
-
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"];
|
|
8276
8390
|
const _hoisted_4$7 = ["onClick"];
|
|
8391
|
+
const _hoisted_5$6 = ["onClick"];
|
|
8277
8392
|
const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel" }, {
|
|
8278
8393
|
__name: "ProductServicePanel",
|
|
8279
8394
|
props: {
|
|
@@ -8291,61 +8406,99 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8291
8406
|
const emit = __emit;
|
|
8292
8407
|
const router = useRouter();
|
|
8293
8408
|
const permissionStore = usePermissionStore();
|
|
8409
|
+
const getMenuTitle = (item) => {
|
|
8410
|
+
var _a2;
|
|
8411
|
+
const rawTitle = ((_a2 = item.meta) == null ? void 0 : _a2.title) || item.name || "";
|
|
8412
|
+
return t2(rawTitle) || rawTitle;
|
|
8413
|
+
};
|
|
8414
|
+
const isVisible = (item) => {
|
|
8415
|
+
var _a2;
|
|
8416
|
+
return item.visible !== false && !((_a2 = item.meta) == null ? void 0 : _a2.hidden);
|
|
8417
|
+
};
|
|
8418
|
+
const searchInputRef = ref(null);
|
|
8294
8419
|
const searchKeyword = ref("");
|
|
8295
|
-
const
|
|
8420
|
+
const debouncedKeyword = ref("");
|
|
8421
|
+
let debounceTimer = null;
|
|
8422
|
+
watch(searchKeyword, (val) => {
|
|
8423
|
+
clearTimeout(debounceTimer);
|
|
8424
|
+
if (!val) {
|
|
8425
|
+
debouncedKeyword.value = "";
|
|
8426
|
+
} else {
|
|
8427
|
+
debounceTimer = setTimeout(() => {
|
|
8428
|
+
debouncedKeyword.value = val;
|
|
8429
|
+
}, 300);
|
|
8430
|
+
}
|
|
8431
|
+
});
|
|
8432
|
+
const activeProductIndex = ref(0);
|
|
8433
|
+
const activeModuleIndex = ref(0);
|
|
8296
8434
|
const routers = computed(() => permissionStore.getRoleRouters);
|
|
8435
|
+
const productMenuRouters = computed(() => {
|
|
8436
|
+
return (routers.value || []).filter((item) => item.type === 10);
|
|
8437
|
+
});
|
|
8297
8438
|
const filteredMenus = computed(() => {
|
|
8298
|
-
const keyword =
|
|
8299
|
-
const
|
|
8300
|
-
|
|
8301
|
-
|
|
8302
|
-
|
|
8303
|
-
|
|
8304
|
-
|
|
8305
|
-
|
|
8306
|
-
|
|
8307
|
-
|
|
8308
|
-
if (!keyword) {
|
|
8309
|
-
return baseMenus;
|
|
8310
|
-
}
|
|
8311
|
-
const filterFn = (items) => {
|
|
8312
|
-
return items.reduce((result, item) => {
|
|
8313
|
-
var _a2;
|
|
8314
|
-
const title = ((_a2 = item.meta) == null ? void 0 : _a2.title) || "";
|
|
8315
|
-
const isMatch = title.toLowerCase().includes(keyword);
|
|
8439
|
+
const keyword = debouncedKeyword.value.toLowerCase().trim();
|
|
8440
|
+
const items = productMenuRouters.value;
|
|
8441
|
+
if (!items || !Array.isArray(items))
|
|
8442
|
+
return [];
|
|
8443
|
+
const filterFn = (list) => {
|
|
8444
|
+
return list.reduce((result, item) => {
|
|
8445
|
+
if (!item.visible)
|
|
8446
|
+
return result;
|
|
8447
|
+
const displayTitle = getMenuTitle(item);
|
|
8448
|
+
const isMatch = keyword && displayTitle.toLowerCase().includes(keyword);
|
|
8316
8449
|
const children = item.children ? filterFn(item.children) : [];
|
|
8317
|
-
if (isMatch || children.length > 0) {
|
|
8450
|
+
if (!keyword || isMatch || children.length > 0) {
|
|
8318
8451
|
result.push({
|
|
8319
8452
|
...item,
|
|
8320
|
-
children:
|
|
8453
|
+
children: isMatch ? item.children || [] : children
|
|
8321
8454
|
});
|
|
8322
8455
|
}
|
|
8323
8456
|
return result;
|
|
8324
8457
|
}, []);
|
|
8325
8458
|
};
|
|
8326
|
-
return filterFn(
|
|
8459
|
+
return filterFn(items);
|
|
8327
8460
|
});
|
|
8328
|
-
const
|
|
8461
|
+
const productList = computed(() => {
|
|
8329
8462
|
return filteredMenus.value.map((menu) => {
|
|
8330
|
-
var _a2
|
|
8463
|
+
var _a2;
|
|
8331
8464
|
return {
|
|
8332
8465
|
id: menu.id,
|
|
8333
|
-
title: (
|
|
8334
|
-
icon: (
|
|
8466
|
+
title: getMenuTitle(menu),
|
|
8467
|
+
icon: (_a2 = menu.meta) == null ? void 0 : _a2.icon,
|
|
8335
8468
|
path: menu.path,
|
|
8336
8469
|
modulePath: menu.modulePath,
|
|
8337
|
-
children: (menu.children || []).filter(
|
|
8338
|
-
var _a3;
|
|
8339
|
-
return !((_a3 = item.meta) == null ? void 0 : _a3.hidden);
|
|
8340
|
-
})
|
|
8470
|
+
children: (menu.children || []).filter(isVisible)
|
|
8341
8471
|
};
|
|
8342
8472
|
});
|
|
8343
8473
|
});
|
|
8344
|
-
const
|
|
8345
|
-
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)
|
|
8346
8490
|
return [];
|
|
8347
|
-
const
|
|
8348
|
-
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
|
+
}));
|
|
8349
8502
|
});
|
|
8350
8503
|
const joinPath = (...paths) => {
|
|
8351
8504
|
return paths.filter(Boolean).reduce((result, path) => {
|
|
@@ -8359,10 +8512,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8359
8512
|
const getAccessiblePath = (item, parentPath = "") => {
|
|
8360
8513
|
const fullPath = joinPath(parentPath, item.path);
|
|
8361
8514
|
if (item.children && item.children.length > 0) {
|
|
8362
|
-
const visibleChildren = item.children.filter(
|
|
8363
|
-
var _a2;
|
|
8364
|
-
return !((_a2 = child.meta) == null ? void 0 : _a2.hidden);
|
|
8365
|
-
});
|
|
8515
|
+
const visibleChildren = item.children.filter(isVisible);
|
|
8366
8516
|
if (visibleChildren.length > 0) {
|
|
8367
8517
|
return getAccessiblePath(visibleChildren[0], fullPath);
|
|
8368
8518
|
}
|
|
@@ -8371,20 +8521,23 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8371
8521
|
};
|
|
8372
8522
|
const closePanel = () => {
|
|
8373
8523
|
emit("update:visible", false);
|
|
8524
|
+
clearTimeout(debounceTimer);
|
|
8374
8525
|
searchKeyword.value = "";
|
|
8375
|
-
|
|
8526
|
+
debouncedKeyword.value = "";
|
|
8527
|
+
activeProductIndex.value = 0;
|
|
8528
|
+
activeModuleIndex.value = 0;
|
|
8376
8529
|
};
|
|
8377
8530
|
const handleSelect = (item, parentPath = "") => {
|
|
8378
|
-
var _a2, _b;
|
|
8531
|
+
var _a2, _b, _c;
|
|
8379
8532
|
const fullPath = getAccessiblePath(item, parentPath);
|
|
8380
8533
|
if (fullPath) {
|
|
8381
8534
|
const currentModuleId = permissionStore.getModuleId;
|
|
8382
|
-
const selectedModuleId = (_a2 =
|
|
8535
|
+
const selectedModuleId = (_b = (_a2 = productList.value[activeProductIndex.value]) == null ? void 0 : _a2.children[activeModuleIndex.value]) == null ? void 0 : _b.id;
|
|
8383
8536
|
if (selectedModuleId === currentModuleId) {
|
|
8384
8537
|
router.push(fullPath.startsWith("/") ? fullPath : `/${fullPath}`);
|
|
8385
8538
|
} else {
|
|
8386
8539
|
const currentOrigin = window.location.origin;
|
|
8387
|
-
const modulePath = ((
|
|
8540
|
+
const modulePath = ((_c = productList.value[activeProductIndex.value]) == null ? void 0 : _c.modulePath) || "";
|
|
8388
8541
|
const moduleFullPath = joinPath(modulePath, fullPath);
|
|
8389
8542
|
const targetUrl = `${currentOrigin}${moduleFullPath.startsWith("/") ? moduleFullPath : `/${moduleFullPath}`}`;
|
|
8390
8543
|
window.location.href = targetUrl;
|
|
@@ -8392,15 +8545,71 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8392
8545
|
closePanel();
|
|
8393
8546
|
}
|
|
8394
8547
|
};
|
|
8395
|
-
const
|
|
8396
|
-
|
|
8548
|
+
const handleProductSelect = (index) => {
|
|
8549
|
+
activeProductIndex.value = index;
|
|
8550
|
+
activeModuleIndex.value = 0;
|
|
8551
|
+
};
|
|
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);
|
|
8397
8559
|
};
|
|
8398
|
-
|
|
8399
|
-
|
|
8400
|
-
|
|
8401
|
-
|
|
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;
|
|
8577
|
+
}
|
|
8578
|
+
}
|
|
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;
|
|
8402
8587
|
}
|
|
8403
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
|
+
);
|
|
8606
|
+
const handleKeydown = (e2) => {
|
|
8607
|
+
if (e2.key === "Escape" && props.visible) {
|
|
8608
|
+
closePanel();
|
|
8609
|
+
}
|
|
8610
|
+
};
|
|
8611
|
+
onMounted(() => document.addEventListener("keydown", handleKeydown));
|
|
8612
|
+
onUnmounted(() => document.removeEventListener("keydown", handleKeydown));
|
|
8404
8613
|
return (_ctx, _cache) => {
|
|
8405
8614
|
return openBlock(), createBlock(Teleport, { to: "body" }, [
|
|
8406
8615
|
createVNode(Transition, { name: "fade" }, {
|
|
@@ -8427,22 +8636,43 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8427
8636
|
createElementVNode("div", {
|
|
8428
8637
|
class: normalizeClass([unref(prefixCls2) + "__sidebar-title"])
|
|
8429
8638
|
}, [
|
|
8430
|
-
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.
|
|
8639
|
+
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.productNavigation")), 1)
|
|
8431
8640
|
], 2),
|
|
8432
8641
|
createVNode(unref(ElScrollbar), null, {
|
|
8433
8642
|
default: withCtx(() => [
|
|
8434
|
-
createElementVNode("div", _hoisted_1$
|
|
8435
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(
|
|
8643
|
+
createElementVNode("div", _hoisted_1$b, [
|
|
8644
|
+
(openBlock(true), createElementBlock(Fragment, null, renderList(productList.value, (product, pIndex) => {
|
|
8436
8645
|
return openBlock(), createElementBlock("div", {
|
|
8437
|
-
key:
|
|
8646
|
+
key: product.id || pIndex,
|
|
8438
8647
|
class: normalizeClass([
|
|
8439
|
-
unref(prefixCls2) + "
|
|
8440
|
-
{ "is-active":
|
|
8648
|
+
unref(prefixCls2) + "__product-card",
|
|
8649
|
+
{ "is-active": activeProductIndex.value === pIndex }
|
|
8441
8650
|
]),
|
|
8442
|
-
onClick: ($event) =>
|
|
8651
|
+
onClick: ($event) => handleProductSelect(pIndex)
|
|
8443
8652
|
}, [
|
|
8444
|
-
createElementVNode("
|
|
8445
|
-
|
|
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);
|
|
8446
8676
|
}), 128))
|
|
8447
8677
|
])
|
|
8448
8678
|
]),
|
|
@@ -8456,6 +8686,8 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8456
8686
|
class: normalizeClass([unref(prefixCls2) + "__header"])
|
|
8457
8687
|
}, [
|
|
8458
8688
|
createVNode(unref(ElInput), {
|
|
8689
|
+
ref_key: "searchInputRef",
|
|
8690
|
+
ref: searchInputRef,
|
|
8459
8691
|
modelValue: searchKeyword.value,
|
|
8460
8692
|
"onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchKeyword.value = $event),
|
|
8461
8693
|
placeholder: unref(t2)("layout.common.searchMenu"),
|
|
@@ -8485,65 +8717,38 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8485
8717
|
createElementVNode("div", {
|
|
8486
8718
|
class: normalizeClass([unref(prefixCls2) + "__grid-container"])
|
|
8487
8719
|
}, [
|
|
8488
|
-
|
|
8489
|
-
var _a2, _b;
|
|
8720
|
+
contentGroups.value.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(contentGroups.value, (group) => {
|
|
8490
8721
|
return openBlock(), createElementBlock("div", {
|
|
8491
|
-
key:
|
|
8492
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8722
|
+
key: group.id || group.title,
|
|
8723
|
+
class: normalizeClass([unref(prefixCls2) + "__group"])
|
|
8493
8724
|
}, [
|
|
8494
8725
|
createElementVNode("div", {
|
|
8495
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8726
|
+
class: normalizeClass([unref(prefixCls2) + "__group-title"])
|
|
8496
8727
|
}, [
|
|
8497
|
-
createElementVNode("span", null, toDisplayString(
|
|
8728
|
+
createElementVNode("span", null, toDisplayString(group.title), 1)
|
|
8498
8729
|
], 2),
|
|
8499
8730
|
createElementVNode("div", {
|
|
8500
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8731
|
+
class: normalizeClass([unref(prefixCls2) + "__group-grid"])
|
|
8501
8732
|
}, [
|
|
8502
|
-
|
|
8503
|
-
var _a3;
|
|
8504
|
-
return !((_a3 = c.meta) == null ? void 0 : _a3.hidden);
|
|
8505
|
-
}), (thirdMenu) => {
|
|
8506
|
-
var _a3;
|
|
8733
|
+
group.items.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(group.items, (item) => {
|
|
8507
8734
|
return openBlock(), createElementBlock("div", {
|
|
8508
|
-
key:
|
|
8509
|
-
class: normalizeClass([unref(prefixCls2) + "
|
|
8510
|
-
onClick: ($event) =>
|
|
8511
|
-
var _a4;
|
|
8512
|
-
return handleSelect(thirdMenu, joinPath((_a4 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a4.path, secondMenu.path));
|
|
8513
|
-
}
|
|
8735
|
+
key: item.id || item.path,
|
|
8736
|
+
class: normalizeClass([unref(prefixCls2) + "__group-item"]),
|
|
8737
|
+
onClick: ($event) => handleItemClick(item, group)
|
|
8514
8738
|
}, [
|
|
8515
|
-
createElementVNode("span", null, toDisplayString(
|
|
8516
|
-
], 10,
|
|
8739
|
+
createElementVNode("span", null, toDisplayString(item.title), 1)
|
|
8740
|
+
], 10, _hoisted_4$7);
|
|
8517
8741
|
}), 128)) : (openBlock(), createElementBlock("div", {
|
|
8518
8742
|
key: 1,
|
|
8519
|
-
class: normalizeClass([
|
|
8520
|
-
|
|
8521
|
-
{ [unref(prefixCls2) + "__column-item--disabled"]: secondMenu.type === 1 }
|
|
8522
|
-
]),
|
|
8523
|
-
onClick: ($event) => {
|
|
8524
|
-
var _a3;
|
|
8525
|
-
return secondMenu.type === 2 && handleSelect(secondMenu, (_a3 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a3.path);
|
|
8526
|
-
}
|
|
8743
|
+
class: normalizeClass([unref(prefixCls2) + "__group-item"]),
|
|
8744
|
+
onClick: ($event) => handleGroupClick(group)
|
|
8527
8745
|
}, [
|
|
8528
|
-
createElementVNode("span", null, toDisplayString(
|
|
8529
|
-
], 10,
|
|
8746
|
+
createElementVNode("span", null, toDisplayString(group.title), 1)
|
|
8747
|
+
], 10, _hoisted_5$6))
|
|
8530
8748
|
], 2)
|
|
8531
8749
|
], 2);
|
|
8532
|
-
}), 128)) :
|
|
8750
|
+
}), 128)) : activeProduct.value ? (openBlock(), createElementBlock("div", {
|
|
8533
8751
|
key: 1,
|
|
8534
|
-
class: normalizeClass([unref(prefixCls2) + "__column"])
|
|
8535
|
-
}, [
|
|
8536
|
-
createElementVNode("div", {
|
|
8537
|
-
class: normalizeClass([unref(prefixCls2) + "__column-list"])
|
|
8538
|
-
}, [
|
|
8539
|
-
createElementVNode("div", {
|
|
8540
|
-
class: normalizeClass([unref(prefixCls2) + "__column-item", unref(prefixCls2) + "__column-item--disabled"])
|
|
8541
|
-
}, [
|
|
8542
|
-
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.noData") || "暂无"), 1)
|
|
8543
|
-
], 2)
|
|
8544
|
-
], 2)
|
|
8545
|
-
], 2)) : (openBlock(), createElementBlock("div", {
|
|
8546
|
-
key: 2,
|
|
8547
8752
|
class: normalizeClass([unref(prefixCls2) + "__empty"])
|
|
8548
8753
|
}, [
|
|
8549
8754
|
createVNode(unref(_sfc_main$x), {
|
|
@@ -8551,7 +8756,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8551
8756
|
size: 48
|
|
8552
8757
|
}),
|
|
8553
8758
|
createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.noDataTitle")), 1)
|
|
8554
|
-
], 2))
|
|
8759
|
+
], 2)) : createCommentVNode("", true)
|
|
8555
8760
|
], 2)
|
|
8556
8761
|
]),
|
|
8557
8762
|
_: 1
|
|
@@ -8570,7 +8775,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
|
|
|
8570
8775
|
};
|
|
8571
8776
|
}
|
|
8572
8777
|
});
|
|
8573
|
-
const ProductServicePanel = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-
|
|
8778
|
+
const ProductServicePanel = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-130420a1"]]);
|
|
8574
8779
|
const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
8575
8780
|
__name: "Logo",
|
|
8576
8781
|
emits: ["logo-click"],
|
|
@@ -8579,8 +8784,7 @@ const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
|
8579
8784
|
const { getPrefixCls: getPrefixCls2 } = useDesign();
|
|
8580
8785
|
const prefixCls2 = getPrefixCls2("logo");
|
|
8581
8786
|
const appStore = useAppStore();
|
|
8582
|
-
|
|
8583
|
-
const layout = computed(() => appStore.getLayout);
|
|
8787
|
+
computed(() => appStore.getLayout);
|
|
8584
8788
|
const theme = computed(() => appStore.getTheme);
|
|
8585
8789
|
const panelVisible = ref(false);
|
|
8586
8790
|
const togglePanel = (isActive) => {
|
|
@@ -8612,20 +8816,11 @@ const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
|
8612
8816
|
onClick: handleClickLogo
|
|
8613
8817
|
}, [
|
|
8614
8818
|
createVNode(_component_Icon, {
|
|
8615
|
-
icon: "svg-icon:
|
|
8819
|
+
icon: "svg-icon:inspur-xinlian",
|
|
8616
8820
|
color: fontColor.value,
|
|
8617
8821
|
svgClass: "!w-full !h-full",
|
|
8618
|
-
class: normalizeClass(["!w-[var(--logo-
|
|
8619
|
-
}, null, 8, ["color"])
|
|
8620
|
-
createElementVNode("div", {
|
|
8621
|
-
class: normalizeClass([
|
|
8622
|
-
"ml-10px text-16px font-700",
|
|
8623
|
-
{
|
|
8624
|
-
"text-[var(--top-header-text-color)]": ["left", "top", "topLeft"].includes(layout.value)
|
|
8625
|
-
}
|
|
8626
|
-
]),
|
|
8627
|
-
style: normalizeStyle({ color: fontColor.value })
|
|
8628
|
-
}, toDisplayString(title.value), 7)
|
|
8822
|
+
class: normalizeClass(["!w-[var(--logo-width)]", "!h-[var(--logo-height)]"])
|
|
8823
|
+
}, null, 8, ["color"])
|
|
8629
8824
|
])
|
|
8630
8825
|
], 2),
|
|
8631
8826
|
createVNode(unref(ProductServicePanel), {
|
|
@@ -8636,14 +8831,33 @@ const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
|
|
|
8636
8831
|
};
|
|
8637
8832
|
}
|
|
8638
8833
|
});
|
|
8639
|
-
const _hoisted_1$
|
|
8834
|
+
const _hoisted_1$a = { class: "w-full min-w-1000px" };
|
|
8640
8835
|
const _sfc_main$p = /* @__PURE__ */ Object.assign({ name: "AppView" }, {
|
|
8641
8836
|
__name: "AppView",
|
|
8642
8837
|
setup(__props) {
|
|
8643
8838
|
const tagsViewStore = useTagsViewStore();
|
|
8839
|
+
useRoute();
|
|
8644
8840
|
const getCaches = computed(() => {
|
|
8645
8841
|
return tagsViewStore.getCachedViews;
|
|
8646
8842
|
});
|
|
8843
|
+
const wrapperCache = /* @__PURE__ */ new Map();
|
|
8844
|
+
const getWrappedComponent = (Component, routeName) => {
|
|
8845
|
+
if (!Component || !routeName)
|
|
8846
|
+
return Component;
|
|
8847
|
+
if (wrapperCache.has(routeName))
|
|
8848
|
+
return wrapperCache.get(routeName);
|
|
8849
|
+
const wrapper = defineComponent({
|
|
8850
|
+
name: routeName,
|
|
8851
|
+
setup(_, { slots }) {
|
|
8852
|
+
return () => {
|
|
8853
|
+
var _a2;
|
|
8854
|
+
return (_a2 = slots.default) == null ? void 0 : _a2.call(slots);
|
|
8855
|
+
};
|
|
8856
|
+
}
|
|
8857
|
+
});
|
|
8858
|
+
wrapperCache.set(routeName, wrapper);
|
|
8859
|
+
return wrapper;
|
|
8860
|
+
};
|
|
8647
8861
|
const routerAlive = ref(true);
|
|
8648
8862
|
const reload = () => {
|
|
8649
8863
|
routerAlive.value = false;
|
|
@@ -8652,13 +8866,18 @@ const _sfc_main$p = /* @__PURE__ */ Object.assign({ name: "AppView" }, {
|
|
|
8652
8866
|
provide("reload", reload);
|
|
8653
8867
|
return (_ctx, _cache) => {
|
|
8654
8868
|
const _component_router_view = resolveComponent("router-view");
|
|
8655
|
-
return openBlock(), createElementBlock("section", _hoisted_1$
|
|
8869
|
+
return openBlock(), createElementBlock("section", _hoisted_1$a, [
|
|
8656
8870
|
unref(routerAlive) ? (openBlock(), createBlock(_component_router_view, { key: 0 }, {
|
|
8657
8871
|
default: withCtx(({ Component, route }) => [
|
|
8658
8872
|
(openBlock(), createBlock(KeepAlive, { include: unref(getCaches) }, [
|
|
8659
|
-
(openBlock(), createBlock(resolveDynamicComponent(Component), {
|
|
8660
|
-
key: route.
|
|
8661
|
-
}
|
|
8873
|
+
(openBlock(), createBlock(resolveDynamicComponent(getWrappedComponent(Component, route.name)), {
|
|
8874
|
+
key: route.path
|
|
8875
|
+
}, {
|
|
8876
|
+
default: withCtx(() => [
|
|
8877
|
+
(openBlock(), createBlock(resolveDynamicComponent(Component)))
|
|
8878
|
+
]),
|
|
8879
|
+
_: 2
|
|
8880
|
+
}, 1024))
|
|
8662
8881
|
], 1032, ["include"]))
|
|
8663
8882
|
]),
|
|
8664
8883
|
_: 1
|
|
@@ -8712,7 +8931,7 @@ const _sfc_main$o = /* @__PURE__ */ Object.assign({ name: "Message" }, {
|
|
|
8712
8931
|
createVNode(_component_Icon, {
|
|
8713
8932
|
color: __props.color,
|
|
8714
8933
|
size: 18,
|
|
8715
|
-
icon: "
|
|
8934
|
+
icon: "svg-icon:bell"
|
|
8716
8935
|
}, null, 8, ["color"])
|
|
8717
8936
|
]),
|
|
8718
8937
|
_: 1
|
|
@@ -8721,72 +8940,213 @@ const _sfc_main$o = /* @__PURE__ */ Object.assign({ name: "Message" }, {
|
|
|
8721
8940
|
};
|
|
8722
8941
|
}
|
|
8723
8942
|
});
|
|
8724
|
-
const Message = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-
|
|
8943
|
+
const Message = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-fdaeb8e4"]]);
|
|
8725
8944
|
const avatarImg = "data:image/gif;base64,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";
|
|
8726
|
-
const _hoisted_1$
|
|
8727
|
-
const _hoisted_2$
|
|
8728
|
-
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" };
|
|
8729
8956
|
const _sfc_main$n = /* @__PURE__ */ Object.assign({ name: "UserInfo" }, {
|
|
8730
8957
|
__name: "UserInfo",
|
|
8731
|
-
emits: ["logout-click"],
|
|
8958
|
+
emits: ["logout-click", "switch-company-click"],
|
|
8732
8959
|
setup(__props, { emit: __emit }) {
|
|
8733
8960
|
const emit = __emit;
|
|
8734
8961
|
const { t: t2 } = useI18n();
|
|
8735
8962
|
const userStore = useUserStore();
|
|
8963
|
+
const appStore = useAppStore();
|
|
8736
8964
|
const { getPrefixCls: getPrefixCls2 } = useDesign();
|
|
8737
|
-
const prefixCls2 = getPrefixCls2("
|
|
8965
|
+
const prefixCls2 = getPrefixCls2("info");
|
|
8738
8966
|
const avatar = computed(() => userStore.user.avatar || avatarImg);
|
|
8739
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);
|
|
8740
8981
|
const handleLogoutClick = () => {
|
|
8741
8982
|
emit("logout-click");
|
|
8742
8983
|
};
|
|
8984
|
+
const handleSwitchCompany = (company) => {
|
|
8985
|
+
emit("switch-company-click", deepClone(company));
|
|
8986
|
+
};
|
|
8743
8987
|
return (_ctx, _cache) => {
|
|
8744
8988
|
const _component_Icon = resolveComponent("Icon");
|
|
8745
|
-
return openBlock(),
|
|
8746
|
-
|
|
8747
|
-
|
|
8748
|
-
|
|
8749
|
-
|
|
8750
|
-
|
|
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
|
+
]),
|
|
8751
9015
|
default: withCtx(() => [
|
|
8752
|
-
|
|
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, {
|
|
8753
9041
|
default: withCtx(() => [
|
|
8754
|
-
createVNode(
|
|
8755
|
-
|
|
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
|
+
})
|
|
8756
9049
|
]),
|
|
8757
9050
|
_: 1
|
|
8758
9051
|
})
|
|
8759
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
|
+
]),
|
|
8760
9078
|
_: 1
|
|
8761
|
-
})
|
|
8762
|
-
]),
|
|
8763
|
-
|
|
8764
|
-
|
|
8765
|
-
|
|
8766
|
-
|
|
8767
|
-
|
|
8768
|
-
|
|
8769
|
-
|
|
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, {
|
|
8770
9088
|
default: withCtx(() => [
|
|
8771
|
-
|
|
8772
|
-
|
|
8773
|
-
|
|
8774
|
-
|
|
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"])
|
|
8775
9111
|
]),
|
|
8776
9112
|
_: 1
|
|
8777
|
-
}
|
|
8778
|
-
|
|
8779
|
-
|
|
8780
|
-
|
|
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
|
+
])
|
|
8781
9141
|
])
|
|
8782
|
-
])
|
|
8783
|
-
|
|
8784
|
-
|
|
8785
|
-
|
|
9142
|
+
]),
|
|
9143
|
+
_: 1
|
|
9144
|
+
}, 8, ["class"])) : createCommentVNode("", true)
|
|
9145
|
+
], 64);
|
|
8786
9146
|
};
|
|
8787
9147
|
}
|
|
8788
9148
|
});
|
|
8789
|
-
const UserInfo = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-
|
|
9149
|
+
const UserInfo = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-31268ba6"]]);
|
|
8790
9150
|
const filterBreadcrumb = (routes, parentPath = "") => {
|
|
8791
9151
|
var _a2;
|
|
8792
9152
|
const res = [];
|
|
@@ -9315,7 +9675,7 @@ const setI18nLanguage = (locale) => {
|
|
|
9315
9675
|
const useLocale = () => {
|
|
9316
9676
|
const changeLocale = async (locale) => {
|
|
9317
9677
|
const globalI18n = i18n.global;
|
|
9318
|
-
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`);
|
|
9319
9679
|
globalI18n.setLocaleMessage(locale, langModule.default);
|
|
9320
9680
|
setI18nLanguage(locale);
|
|
9321
9681
|
};
|
|
@@ -9385,9 +9745,9 @@ const _sfc_main$l = /* @__PURE__ */ Object.assign({ name: "LocaleDropdown" }, {
|
|
|
9385
9745
|
};
|
|
9386
9746
|
}
|
|
9387
9747
|
});
|
|
9388
|
-
const _hoisted_1$
|
|
9389
|
-
const _hoisted_2$
|
|
9390
|
-
const _hoisted_3$
|
|
9748
|
+
const _hoisted_1$8 = { class: "theme-list" };
|
|
9749
|
+
const _hoisted_2$7 = ["onClick"];
|
|
9750
|
+
const _hoisted_3$6 = { class: "name" };
|
|
9391
9751
|
const _sfc_main$k = {
|
|
9392
9752
|
__name: "ThemeSwitch",
|
|
9393
9753
|
emits: ["change"],
|
|
@@ -9426,7 +9786,7 @@ const _sfc_main$k = {
|
|
|
9426
9786
|
return (_ctx, _cache) => {
|
|
9427
9787
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
9428
9788
|
createElementVNode("div", null, toDisplayString(unref(t2)("layout.setting.theme")), 1),
|
|
9429
|
-
createElementVNode("div", _hoisted_1$
|
|
9789
|
+
createElementVNode("div", _hoisted_1$8, [
|
|
9430
9790
|
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(themeList), (item) => {
|
|
9431
9791
|
return openBlock(), createElementBlock("div", {
|
|
9432
9792
|
class: normalizeClass(["item", { "active": unref(theme) === item.key }]),
|
|
@@ -9442,8 +9802,8 @@ const _sfc_main$k = {
|
|
|
9442
9802
|
style: normalizeStyle({ backgroundColor: item.color === "#fff" ? "#fafafa" : item.color })
|
|
9443
9803
|
}, null, 4)
|
|
9444
9804
|
], 4),
|
|
9445
|
-
createElementVNode("div", _hoisted_3$
|
|
9446
|
-
], 10, _hoisted_2$
|
|
9805
|
+
createElementVNode("div", _hoisted_3$6, toDisplayString(item.name), 1)
|
|
9806
|
+
], 10, _hoisted_2$7);
|
|
9447
9807
|
}), 128))
|
|
9448
9808
|
])
|
|
9449
9809
|
], 64);
|
|
@@ -9455,10 +9815,10 @@ const Chunjie = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIUAAABGCAYAAADip
|
|
|
9455
9815
|
const Duanwu = "data:image/png;base64,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";
|
|
9456
9816
|
const Zhongqiu = "data:image/png;base64,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";
|
|
9457
9817
|
const Yuandan = "data:image/png;base64,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";
|
|
9458
|
-
const _hoisted_1$
|
|
9459
|
-
const _hoisted_2$
|
|
9460
|
-
const _hoisted_3$
|
|
9461
|
-
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"];
|
|
9462
9822
|
const _hoisted_5$4 = ["src"];
|
|
9463
9823
|
const _hoisted_6$3 = { class: "theme-list" };
|
|
9464
9824
|
const _hoisted_7$1 = ["src"];
|
|
@@ -9477,8 +9837,8 @@ const _sfc_main$j = {
|
|
|
9477
9837
|
};
|
|
9478
9838
|
return (_ctx, _cache) => {
|
|
9479
9839
|
return openBlock(), createElementBlock(Fragment, null, [
|
|
9480
|
-
createElementVNode("div", _hoisted_1$
|
|
9481
|
-
createElementVNode("div", _hoisted_2$
|
|
9840
|
+
createElementVNode("div", _hoisted_1$7, toDisplayString(unref(t2)("layout.setting.festivalTheme")), 1),
|
|
9841
|
+
createElementVNode("div", _hoisted_2$6, [
|
|
9482
9842
|
createElementVNode("div", {
|
|
9483
9843
|
class: normalizeClass(["item", { "active": unref(theme) === "springFestival" }]),
|
|
9484
9844
|
onClick: _cache[0] || (_cache[0] = ($event) => handleClick("springFestival"))
|
|
@@ -9487,7 +9847,7 @@ const _sfc_main$j = {
|
|
|
9487
9847
|
class: "border",
|
|
9488
9848
|
style: normalizeStyle({ borderColor: unref(theme) === "springFestival" ? "var(--el-color-primary)" : "#d2d5e4" })
|
|
9489
9849
|
}, [
|
|
9490
|
-
createElementVNode("img", { src: unref(Chunjie) }, null, 8, _hoisted_3$
|
|
9850
|
+
createElementVNode("img", { src: unref(Chunjie) }, null, 8, _hoisted_3$5)
|
|
9491
9851
|
], 4),
|
|
9492
9852
|
_cache[4] || (_cache[4] = createElementVNode("div", { class: "name" }, "春节", -1))
|
|
9493
9853
|
], 2),
|
|
@@ -9499,7 +9859,7 @@ const _sfc_main$j = {
|
|
|
9499
9859
|
class: "border",
|
|
9500
9860
|
style: normalizeStyle({ borderColor: unref(theme) === "dragonBoatFestival" ? "var(--el-color-primary)" : "#d2d5e4" })
|
|
9501
9861
|
}, [
|
|
9502
|
-
createElementVNode("img", { src: unref(Duanwu) }, null, 8, _hoisted_4$
|
|
9862
|
+
createElementVNode("img", { src: unref(Duanwu) }, null, 8, _hoisted_4$5)
|
|
9503
9863
|
], 4),
|
|
9504
9864
|
_cache[5] || (_cache[5] = createElementVNode("div", { class: "name" }, "端午", -1))
|
|
9505
9865
|
], 2),
|
|
@@ -9537,73 +9897,8 @@ const _sfc_main$j = {
|
|
|
9537
9897
|
}
|
|
9538
9898
|
};
|
|
9539
9899
|
const FestivalThemeSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-868f3996"]]);
|
|
9540
|
-
const _hoisted_1$7 = { class: "mt-24px" };
|
|
9541
|
-
const _hoisted_2$6 = { class: "layout-list" };
|
|
9542
|
-
const _hoisted_3$5 = ["onClick"];
|
|
9543
|
-
const _hoisted_4$5 = { class: "name" };
|
|
9544
|
-
const _sfc_main$i = {
|
|
9545
|
-
__name: "LayoutSwitch",
|
|
9546
|
-
emits: ["change"],
|
|
9547
|
-
setup(__props, { emit: __emit }) {
|
|
9548
|
-
const emits = __emit;
|
|
9549
|
-
const { t: t2 } = useI18n();
|
|
9550
|
-
const appStore = useAppStore();
|
|
9551
|
-
const layout = computed(() => appStore.getLayout);
|
|
9552
|
-
const layoutItems = ref([
|
|
9553
|
-
{
|
|
9554
|
-
key: "left",
|
|
9555
|
-
name: "侧边导航",
|
|
9556
|
-
icon: "svg-icon:menu-left"
|
|
9557
|
-
},
|
|
9558
|
-
{
|
|
9559
|
-
key: "top",
|
|
9560
|
-
name: "顶部导航",
|
|
9561
|
-
icon: "svg-icon:menu-top"
|
|
9562
|
-
},
|
|
9563
|
-
{
|
|
9564
|
-
key: "topLeft",
|
|
9565
|
-
name: "混合导航",
|
|
9566
|
-
icon: "svg-icon:menu-top-left"
|
|
9567
|
-
}
|
|
9568
|
-
]);
|
|
9569
|
-
const handleClick = (item) => {
|
|
9570
|
-
if (layout.value === item.key)
|
|
9571
|
-
return;
|
|
9572
|
-
emits("change", item.key);
|
|
9573
|
-
};
|
|
9574
|
-
return (_ctx, _cache) => {
|
|
9575
|
-
const _component_Icon = resolveComponent("Icon");
|
|
9576
|
-
return openBlock(), createElementBlock(Fragment, null, [
|
|
9577
|
-
createElementVNode("div", _hoisted_1$7, toDisplayString(unref(t2)("layout.setting.layout")), 1),
|
|
9578
|
-
createElementVNode("div", _hoisted_2$6, [
|
|
9579
|
-
(openBlock(true), createElementBlock(Fragment, null, renderList(unref(layoutItems), (item) => {
|
|
9580
|
-
return openBlock(), createElementBlock("div", {
|
|
9581
|
-
class: "item",
|
|
9582
|
-
key: item.key,
|
|
9583
|
-
onClick: ($event) => handleClick(item)
|
|
9584
|
-
}, [
|
|
9585
|
-
createElementVNode("div", {
|
|
9586
|
-
class: "border",
|
|
9587
|
-
style: normalizeStyle({ borderColor: unref(layout) === item.key ? "var(--el-color-primary)" : "#d2d5e4" })
|
|
9588
|
-
}, [
|
|
9589
|
-
createVNode(_component_Icon, {
|
|
9590
|
-
icon: item.icon,
|
|
9591
|
-
color: "var(--el-color-primary)",
|
|
9592
|
-
svgClass: "!w-full !h-full",
|
|
9593
|
-
class: "!w-full !h-70px"
|
|
9594
|
-
}, null, 8, ["icon"])
|
|
9595
|
-
], 4),
|
|
9596
|
-
createElementVNode("div", _hoisted_4$5, toDisplayString(item.name), 1)
|
|
9597
|
-
], 8, _hoisted_3$5);
|
|
9598
|
-
}), 128))
|
|
9599
|
-
])
|
|
9600
|
-
], 64);
|
|
9601
|
-
};
|
|
9602
|
-
}
|
|
9603
|
-
};
|
|
9604
|
-
const LayoutSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-265f0ebb"]]);
|
|
9605
9900
|
const _hoisted_1$6 = { class: "text-16px font-500 text-[var(--text-color)]" };
|
|
9606
|
-
const _sfc_main$
|
|
9901
|
+
const _sfc_main$i = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
9607
9902
|
__name: "Setting",
|
|
9608
9903
|
props: {
|
|
9609
9904
|
color: {
|
|
@@ -9626,10 +9921,11 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9626
9921
|
const { copy, copied, isSupported } = useClipboard({
|
|
9627
9922
|
source: `
|
|
9628
9923
|
// 主题相关
|
|
9629
|
-
theme: '${appStore.getTheme}'
|
|
9630
|
-
|
|
9631
|
-
|
|
9632
|
-
|
|
9924
|
+
theme: '${appStore.getTheme}'
|
|
9925
|
+
`
|
|
9926
|
+
// ,
|
|
9927
|
+
// // 布局相关
|
|
9928
|
+
// layout: '${appStore.getLayout}'
|
|
9633
9929
|
});
|
|
9634
9930
|
if (!isSupported) {
|
|
9635
9931
|
ElMessage.error(t2("layout.setting.copyFailed"));
|
|
@@ -9652,10 +9948,6 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9652
9948
|
appStore.setTheme(theme);
|
|
9653
9949
|
appStore.setCssVarTheme();
|
|
9654
9950
|
};
|
|
9655
|
-
const layoutChange = async (layout) => {
|
|
9656
|
-
await saveTheme({ theme: appStore.getTheme, layout });
|
|
9657
|
-
appStore.setLayout(layout);
|
|
9658
|
-
};
|
|
9659
9951
|
const saveTheme = async ({ theme, layout }) => {
|
|
9660
9952
|
ElMessage({
|
|
9661
9953
|
type: "success",
|
|
@@ -9673,7 +9965,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9673
9965
|
}), [
|
|
9674
9966
|
createVNode(_component_Icon, {
|
|
9675
9967
|
color: __props.color,
|
|
9676
|
-
icon: "
|
|
9968
|
+
icon: "svg-icon:hexagon",
|
|
9677
9969
|
size: 18
|
|
9678
9970
|
}, null, 8, ["color"])
|
|
9679
9971
|
], 16),
|
|
@@ -9713,8 +10005,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9713
10005
|
default: withCtx(() => [
|
|
9714
10006
|
createElementVNode("div", null, [
|
|
9715
10007
|
createVNode(ThemeSwitch, { onChange: themeChange }),
|
|
9716
|
-
createVNode(FestivalThemeSwitch, { onChange: themeChange })
|
|
9717
|
-
createVNode(LayoutSwitch, { onChange: layoutChange })
|
|
10008
|
+
createVNode(FestivalThemeSwitch, { onChange: themeChange })
|
|
9718
10009
|
])
|
|
9719
10010
|
]),
|
|
9720
10011
|
_: 1
|
|
@@ -9723,7 +10014,51 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
|
|
|
9723
10014
|
};
|
|
9724
10015
|
}
|
|
9725
10016
|
});
|
|
9726
|
-
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
|
+
});
|
|
9727
10062
|
const _sfc_main$g = {
|
|
9728
10063
|
__name: "index",
|
|
9729
10064
|
props: {
|
|
@@ -9874,6 +10209,10 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
9874
10209
|
onClearCacheLogoutClick: {
|
|
9875
10210
|
type: Function,
|
|
9876
10211
|
default: null
|
|
10212
|
+
},
|
|
10213
|
+
onSwitchCompanyClick: {
|
|
10214
|
+
type: Function,
|
|
10215
|
+
default: null
|
|
9877
10216
|
}
|
|
9878
10217
|
},
|
|
9879
10218
|
setup(props, {
|
|
@@ -9881,49 +10220,67 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
|
|
|
9881
10220
|
}) {
|
|
9882
10221
|
const appStore = useAppStore();
|
|
9883
10222
|
const breadcrumb = computed(() => appStore.getBreadcrumb);
|
|
9884
|
-
computed(() => appStore.getHamburger);
|
|
9885
10223
|
const search = computed(() => appStore.search);
|
|
9886
10224
|
const layout = computed(() => appStore.getLayout);
|
|
9887
10225
|
const locale = computed(() => appStore.getLocale);
|
|
9888
10226
|
const message = computed(() => appStore.getMessage);
|
|
9889
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");
|
|
9890
10232
|
return () => {
|
|
9891
10233
|
var _a2;
|
|
9892
10234
|
return createVNode("div", {
|
|
9893
10235
|
"id": `${variables.namespace}-tool-header`,
|
|
9894
|
-
"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);"
|
|
9895
10242
|
}, [layout.value !== "top" ? createVNode("div", {
|
|
9896
10243
|
"class": "h-full flex items-center"
|
|
9897
10244
|
}, [breadcrumb.value ? createVNode(Breadcrumb, {
|
|
9898
10245
|
"class": "lt-md:hidden"
|
|
9899
10246
|
}, null) : void 0]) : void 0, (_a2 = slots.default) == null ? void 0 : _a2.call(slots), createVNode("div", {
|
|
9900
10247
|
"class": "h-full flex items-center"
|
|
9901
|
-
}, [search.value ? createVNode(_sfc_main$g, {
|
|
10248
|
+
}, [!topNavCollapsed.value && createVNode(Fragment, null, [search.value ? createVNode(_sfc_main$g, {
|
|
9902
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
|
|
9903
10254
|
}, null) : void 0, setting.value ? createVNode(Setting, {
|
|
9904
10255
|
"class": "custom-hover cursor-pointer",
|
|
9905
|
-
"color":
|
|
10256
|
+
"color": iconColor.value,
|
|
9906
10257
|
"onClearCacheLogoutClick": props.onClearCacheLogoutClick
|
|
9907
10258
|
}, null) : void 0, locale.value ? createVNode(_sfc_main$l, {
|
|
9908
10259
|
"class": "custom-hover",
|
|
9909
10260
|
"color": "var(--top-header-text-color)"
|
|
9910
|
-
}, 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, {
|
|
9911
10271
|
"class": "custom-hover cursor-pointer",
|
|
9912
|
-
"color":
|
|
9913
|
-
|
|
9914
|
-
}, null) : void 0, createVNode(UserInfo, {
|
|
9915
|
-
"onLogoutClick": props.onLogoutClick
|
|
9916
|
-
}, null)])]);
|
|
10272
|
+
"color": iconColor.value
|
|
10273
|
+
}, null)])])]);
|
|
9917
10274
|
};
|
|
9918
10275
|
}
|
|
9919
10276
|
});
|
|
9920
|
-
const ToolHeader = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-
|
|
10277
|
+
const ToolHeader = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-c654093f"]]);
|
|
9921
10278
|
const {
|
|
9922
10279
|
getPrefixCls: getPrefixCls$1
|
|
9923
10280
|
} = useDesign();
|
|
9924
10281
|
const prefixCls$1 = getPrefixCls$1("layout");
|
|
9925
10282
|
const scrollRef = ref();
|
|
9926
|
-
const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick) => {
|
|
10283
|
+
const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick, onSwitchCompanyClick) => {
|
|
9927
10284
|
const appStore = useAppStore();
|
|
9928
10285
|
const permissionStore = usePermissionStore();
|
|
9929
10286
|
const pageLoading = computed(() => appStore.getPageLoading);
|
|
@@ -9952,28 +10309,51 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
9952
10309
|
});
|
|
9953
10310
|
const zIndexClass = computed(() => {
|
|
9954
10311
|
return {
|
|
9955
|
-
"z-
|
|
10312
|
+
"z-2000": theme.value === "whiteLight"
|
|
9956
10313
|
};
|
|
9957
10314
|
});
|
|
10315
|
+
const topNav = computed(() => appStore.getTopNav);
|
|
10316
|
+
const topNavNormal = computed(() => topNav.value === "normal");
|
|
9958
10317
|
const renderLeft = () => {
|
|
9959
|
-
return createVNode(Fragment, null, [createVNode("div", {
|
|
9960
|
-
"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);"
|
|
9961
10321
|
}, [logo.value ? createVNode(_sfc_main$q, {
|
|
9962
10322
|
"class": [{
|
|
9963
|
-
"w-[var(--left-menu-min-width)]":
|
|
9964
|
-
"w-[var(--left-menu-max-width)]": !
|
|
10323
|
+
"w-[var(--left-menu-min-width)]": collapse.value,
|
|
10324
|
+
"w-[var(--left-menu-max-width)]": !collapse.value
|
|
9965
10325
|
}],
|
|
9966
10326
|
"onLogoClick": onLogoClick
|
|
9967
10327
|
}, null) : void 0, createVNode(ToolHeader, {
|
|
9968
10328
|
"class": "flex-1",
|
|
9969
10329
|
"onMessageClick": onMessageClick,
|
|
9970
10330
|
"onLogoutClick": onLogoutClick,
|
|
9971
|
-
"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
|
+
}]
|
|
9972
10356
|
}, null)]), createVNode("div", {
|
|
9973
|
-
"class": "h-[calc(100%-var(--top-header-height))] w-full flex"
|
|
9974
|
-
}, [createVNode(Menu, {
|
|
9975
|
-
"class": ["relative layout-border__right !h-full", festivalMenuClass.value]
|
|
9976
|
-
}, null), createVNode("div", {
|
|
9977
10357
|
"class": [`${prefixCls$1}-content`, "h-[100%]", {
|
|
9978
10358
|
"w-[calc(100%-var(--left-menu-min-width))] left-[var(--left-menu-min-width)]": collapse.value,
|
|
9979
10359
|
"w-[calc(100%-var(--left-menu-max-width))] left-[var(--left-menu-max-width)]": !collapse.value
|
|
@@ -9983,12 +10363,14 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
9983
10363
|
"class": [`${prefixCls$1}-content-scrollbar`, {
|
|
9984
10364
|
"!h-[calc(100%-var(--tags-view-height))] mt-[calc(var(--tags-view-height))]": tagsView.value
|
|
9985
10365
|
}],
|
|
9986
|
-
"ref": scrollRef
|
|
10366
|
+
"ref": scrollRef,
|
|
10367
|
+
"style": "transition: all var(--transition-time-02);"
|
|
9987
10368
|
}, {
|
|
9988
10369
|
default: () => [tagsView.value ? createVNode(TagsView, {
|
|
9989
|
-
"class": ["layout-border__bottom
|
|
9990
|
-
"w-[calc(100%-var(--left-menu-min-width))] !left-[var(--left-menu-min-width)]
|
|
9991
|
-
"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
|
|
9992
10374
|
}],
|
|
9993
10375
|
"style": "transition: width var(--transition-time-02), left var(--transition-time-02);"
|
|
9994
10376
|
}, null) : void 0, createVNode(_sfc_main$p, null, null)]
|
|
@@ -9996,30 +10378,26 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
9996
10378
|
};
|
|
9997
10379
|
const renderTop = () => {
|
|
9998
10380
|
return createVNode(Fragment, null, [createVNode("div", {
|
|
9999
|
-
"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", {
|
|
10000
10382
|
"layout-border__bottom": !tagsView.value
|
|
10001
10383
|
}, festivalTopClass.value]
|
|
10002
10384
|
}, [logo.value ? createVNode(_sfc_main$q, {
|
|
10003
10385
|
"class": ["w-[var(--left-menu-max-width)]"],
|
|
10004
10386
|
"onLogoClick": onLogoClick
|
|
10005
|
-
}, null) : void 0, createVNode(
|
|
10006
|
-
"class": "
|
|
10387
|
+
}, null) : void 0, tagsView.value && createVNode(TagsView, {
|
|
10388
|
+
"class": ["layout-border__bottom flex-1"]
|
|
10007
10389
|
}, null), createVNode(ToolHeader, {
|
|
10008
10390
|
"onMessageClick": onMessageClick,
|
|
10009
10391
|
"onLogoutClick": onLogoutClick,
|
|
10010
|
-
"onClearCacheLogoutClick": onClearCacheLogoutClick
|
|
10392
|
+
"onClearCacheLogoutClick": onClearCacheLogoutClick,
|
|
10393
|
+
"onSwitchCompanyClick": onSwitchCompanyClick
|
|
10011
10394
|
}, null)]), createVNode("div", {
|
|
10012
10395
|
"class": [`${prefixCls$1}-content`, "w-full h-[calc(100%-var(--top-tool-height))]"]
|
|
10013
10396
|
}, [withDirectives(createVNode(ElScrollbar, {
|
|
10014
|
-
"class": [`${prefixCls$1}-content-scrollbar
|
|
10015
|
-
"!h-[calc(100%-var(--tags-view-height))] mt-[calc(var(--tags-view-height))]": tagsView.value
|
|
10016
|
-
}],
|
|
10397
|
+
"class": [`${prefixCls$1}-content-scrollbar`],
|
|
10017
10398
|
"ref": scrollRef
|
|
10018
10399
|
}, {
|
|
10019
|
-
default: () => [
|
|
10020
|
-
"class": ["layout-border__bottom layout-border__top relative", "!fixed w-full top-[var(--top-tool-height)] left-0"],
|
|
10021
|
-
"style": "transition: width var(--transition-time-02), left var(--transition-time-02);"
|
|
10022
|
-
}, null) : void 0, createVNode(_sfc_main$p, null, null)]
|
|
10400
|
+
default: () => [createVNode(_sfc_main$p, null, null)]
|
|
10023
10401
|
}), [[resolveDirective("loading"), pageLoading.value]])])]);
|
|
10024
10402
|
};
|
|
10025
10403
|
const renderTopLeft = () => {
|
|
@@ -10037,7 +10415,8 @@ const useRenderLayout = (onLogoClick, onMessageClick, onLogoutClick, onClearCach
|
|
|
10037
10415
|
"class": "flex-1",
|
|
10038
10416
|
"onMessageClick": onMessageClick,
|
|
10039
10417
|
"onLogoutClick": onLogoutClick,
|
|
10040
|
-
"onClearCacheLogoutClick": onClearCacheLogoutClick
|
|
10418
|
+
"onClearCacheLogoutClick": onClearCacheLogoutClick,
|
|
10419
|
+
"onSwitchCompanyClick": onSwitchCompanyClick
|
|
10041
10420
|
}, {
|
|
10042
10421
|
default: () => createVNode(Menu, {
|
|
10043
10422
|
"mode": "horizontal",
|
|
@@ -10084,13 +10463,13 @@ const {
|
|
|
10084
10463
|
} = useDesign();
|
|
10085
10464
|
const prefixCls = getPrefixCls("layout");
|
|
10086
10465
|
const layoutScrollRef = ref();
|
|
10087
|
-
const renderLayout = (layout, onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick) => {
|
|
10466
|
+
const renderLayout = (layout, onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick, onSwitchCompanyClick) => {
|
|
10088
10467
|
const {
|
|
10089
10468
|
renderLeft,
|
|
10090
10469
|
renderTop,
|
|
10091
10470
|
renderTopLeft,
|
|
10092
10471
|
scrollRef: scrollRef2
|
|
10093
|
-
} = useRenderLayout(onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick);
|
|
10472
|
+
} = useRenderLayout(onLogoClick, onMessageClick, onLogoutClick, onClearCacheLogoutClick, onSwitchCompanyClick);
|
|
10094
10473
|
layoutScrollRef.value = scrollRef2.value;
|
|
10095
10474
|
switch (unref(layout)) {
|
|
10096
10475
|
case "left":
|
|
@@ -10103,7 +10482,7 @@ const renderLayout = (layout, onLogoClick, onMessageClick, onLogoutClick, onClea
|
|
|
10103
10482
|
};
|
|
10104
10483
|
const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
10105
10484
|
name: "Layout",
|
|
10106
|
-
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"],
|
|
10107
10486
|
setup(props, {
|
|
10108
10487
|
emit
|
|
10109
10488
|
}) {
|
|
@@ -10123,12 +10502,15 @@ const _sfc_main$e = /* @__PURE__ */ defineComponent({
|
|
|
10123
10502
|
const handleClearCacheLogoutClick = () => {
|
|
10124
10503
|
emit("clear-cache-logout-click");
|
|
10125
10504
|
};
|
|
10505
|
+
const handleSwitchCompanyClick = (company) => {
|
|
10506
|
+
emit("switch-company-click", company);
|
|
10507
|
+
};
|
|
10126
10508
|
return () => createVNode("section", {
|
|
10127
10509
|
"class": [prefixCls, `${prefixCls}__${layout.value}`, "w-[100%] h-[100%] relative", `${prefixCls}__${theme.value}`]
|
|
10128
|
-
}, [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)]);
|
|
10129
10511
|
}
|
|
10130
10512
|
});
|
|
10131
|
-
const Layout = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-
|
|
10513
|
+
const Layout = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["__scopeId", "data-v-6f98299c"]]);
|
|
10132
10514
|
const _sfc_main$d = {
|
|
10133
10515
|
__name: "ConfigGlobal",
|
|
10134
10516
|
props: {
|
|
@@ -10209,7 +10591,7 @@ const _sfc_main$c = /* @__PURE__ */ Object.assign({ name: "PageCard" }, {
|
|
|
10209
10591
|
return openBlock(), createBlock(unref(ElCard), {
|
|
10210
10592
|
"body-style": __props.bodyStyle,
|
|
10211
10593
|
header: __props.title,
|
|
10212
|
-
class: normalizeClass([unref(prefixCls2), "
|
|
10594
|
+
class: normalizeClass([unref(prefixCls2), "mx-16px my-16px"])
|
|
10213
10595
|
}, {
|
|
10214
10596
|
default: withCtx(() => [
|
|
10215
10597
|
renderSlot(_ctx.$slots, "default", {}, void 0, true)
|
|
@@ -10219,7 +10601,7 @@ const _sfc_main$c = /* @__PURE__ */ Object.assign({ name: "PageCard" }, {
|
|
|
10219
10601
|
};
|
|
10220
10602
|
}
|
|
10221
10603
|
});
|
|
10222
|
-
const PageCard = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-
|
|
10604
|
+
const PageCard = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-f55a8642"]]);
|
|
10223
10605
|
const _hoisted_1$5 = { class: "ml-2px" };
|
|
10224
10606
|
const _hoisted_2$5 = { class: "flex items-center" };
|
|
10225
10607
|
const _sfc_main$b = /* @__PURE__ */ Object.assign({ name: "PageNavBar" }, {
|
|
@@ -10285,7 +10667,7 @@ const _sfc_main$b = /* @__PURE__ */ Object.assign({ name: "PageNavBar" }, {
|
|
|
10285
10667
|
};
|
|
10286
10668
|
}
|
|
10287
10669
|
});
|
|
10288
|
-
const PageNavBar = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-
|
|
10670
|
+
const PageNavBar = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-17aee006"]]);
|
|
10289
10671
|
const _sfc_main$a = /* @__PURE__ */ Object.assign({ name: "Badge" }, {
|
|
10290
10672
|
__name: "Badge",
|
|
10291
10673
|
props: {
|