bmp-layout 0.0.22 → 0.0.24

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 CHANGED
@@ -1,4 +1,4 @@
1
- import { openBlock, createBlock, unref, normalizeClass, nextTick, ref, computed, watch, withCtx, createElementBlock, createElementVNode, normalizeStyle, createVNode, Fragment, resolveComponent, defineComponent, isVNode, renderList, createCommentVNode, createTextVNode, toDisplayString, renderSlot, onBeforeMount, withModifiers, Teleport, Transition, provide, KeepAlive, resolveDynamicComponent, onMounted, TransitionGroup, mergeProps, isRef, onUnmounted, withDirectives, resolveDirective, watchEffect, vShow, useSlots, useAttrs, createSlots, inject, onBeforeUnmount, reactive, onUpdated, render, useCssVars } from "vue";
1
+ import { openBlock, createBlock, unref, normalizeClass, nextTick, ref, computed, watch, withCtx, createElementBlock, createElementVNode, normalizeStyle, 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";
@@ -246,7 +246,6 @@ var webStorageCache_minExports = webStorageCache_min.exports;
246
246
  const WebStorageCache = /* @__PURE__ */ getDefaultExportFromCjs(webStorageCache_minExports);
247
247
  const CACHE_KEY = {
248
248
  // 用户相关
249
- ROLE_ROUTERS: "roleRouters",
250
249
  USER: "user",
251
250
  VisitTenantId: "visitTenantId",
252
251
  // 系统设置
@@ -269,7 +268,6 @@ const useCache = (type = "localStorage") => {
269
268
  const deleteUserCache = () => {
270
269
  const { wsCache: wsCache2 } = useCache();
271
270
  wsCache2.delete(CACHE_KEY.USER);
272
- wsCache2.delete(CACHE_KEY.ROLE_ROUTERS);
273
271
  wsCache2.delete(CACHE_KEY.VisitTenantId);
274
272
  };
275
273
  const baseLight = {
@@ -768,7 +766,7 @@ const systemTheme = {
768
766
  midAutumnFestival,
769
767
  newYearsDay
770
768
  };
771
- const { wsCache: wsCache$4 } = useCache();
769
+ const { wsCache: wsCache$3 } = useCache();
772
770
  const useAppStore = defineStore("layout-app", {
773
771
  state: () => {
774
772
  return {
@@ -805,11 +803,11 @@ const useAppStore = defineStore("layout-app", {
805
803
  // 显示页脚
806
804
  greyMode: false,
807
805
  // 是否开始灰色模式,用于特殊悼念日
808
- layout: wsCache$4.get(CACHE_KEY.LAYOUT) || "left",
806
+ layout: wsCache$3.get(CACHE_KEY.LAYOUT) || "left",
809
807
  // layout布局
810
- currentSize: wsCache$4.get("default") || "default",
808
+ currentSize: wsCache$3.get("default") || "default",
811
809
  // 组件尺寸
812
- theme: wsCache$4.get(CACHE_KEY.THEME) || "whiteLight",
810
+ theme: wsCache$3.get(CACHE_KEY.THEME) || "whiteLight",
813
811
  isSetTheme: false
814
812
  //初始化主题色
815
813
  };
@@ -915,18 +913,18 @@ const useAppStore = defineStore("layout-app", {
915
913
  },
916
914
  setLayout(layout) {
917
915
  this.layout = layout;
918
- wsCache$4.set(CACHE_KEY.LAYOUT, this.layout);
916
+ wsCache$3.set(CACHE_KEY.LAYOUT, this.layout);
919
917
  },
920
918
  setTitle(title) {
921
919
  this.title = title;
922
920
  },
923
921
  setCurrentSize(currentSize) {
924
922
  this.currentSize = currentSize;
925
- wsCache$4.set("currentSize", this.currentSize);
923
+ wsCache$3.set("currentSize", this.currentSize);
926
924
  },
927
925
  setTheme(theme) {
928
926
  this.theme = theme;
929
- wsCache$4.set(CACHE_KEY.THEME, theme);
927
+ wsCache$3.set(CACHE_KEY.THEME, theme);
930
928
  },
931
929
  setCssVarTheme() {
932
930
  this.isSetTheme = true;
@@ -1046,7 +1044,6 @@ const addToChildren = (routes, children, routeModule) => {
1046
1044
  }
1047
1045
  }
1048
1046
  };
1049
- const { wsCache: wsCache$3 } = useCache();
1050
1047
  const usePermissionStore = defineStore("layout-permission", {
1051
1048
  state: () => ({
1052
1049
  routers: [],
@@ -1054,7 +1051,9 @@ const usePermissionStore = defineStore("layout-permission", {
1054
1051
  menuTabRouters: [],
1055
1052
  leftMenuRouters: [],
1056
1053
  moduleRouters: [],
1057
- moduleId: void 0
1054
+ moduleId: void 0,
1055
+ roleRouters: []
1056
+ // 菜单数据存储到 state,确保响应式
1058
1057
  }),
1059
1058
  getters: {
1060
1059
  getRouters() {
@@ -1073,8 +1072,7 @@ const usePermissionStore = defineStore("layout-permission", {
1073
1072
  return this.leftMenuRouters;
1074
1073
  },
1075
1074
  getRoleRouters() {
1076
- const roleRouters = wsCache$3.get(CACHE_KEY.ROLE_ROUTERS);
1077
- return roleRouters || [];
1075
+ return this.roleRouters;
1078
1076
  },
1079
1077
  getModuleRouters() {
1080
1078
  return this.moduleRouters;
@@ -1094,6 +1092,9 @@ const usePermissionStore = defineStore("layout-permission", {
1094
1092
  setMenuTabRouters(routers) {
1095
1093
  this.menuTabRouters = routers;
1096
1094
  },
1095
+ setRoleRouters(roleRouters) {
1096
+ this.roleRouters = roleRouters || [];
1097
+ },
1097
1098
  setLeftMenuRouters(path = "", children = []) {
1098
1099
  const basePath = path ? path.startsWith("/") ? path : `/${path}` : "";
1099
1100
  const routers = children.map((child) => {
@@ -1118,6 +1119,15 @@ const usePermissionStore = defineStore("layout-permission", {
1118
1119
  });
1119
1120
  }
1120
1121
  },
1122
+ resetState() {
1123
+ this.routers = [];
1124
+ this.addRouters = [];
1125
+ this.menuTabRouters = [];
1126
+ this.leftMenuRouters = [];
1127
+ this.moduleRouters = [];
1128
+ this.moduleId = void 0;
1129
+ this.roleRouters = [];
1130
+ },
1121
1131
  // 处理模块对应菜单(通过模块code)
1122
1132
  setModuleRoutersByCode(moduleCode) {
1123
1133
  const findRouter = this.getRoleRouters.find((router) => router.moduleCode === moduleCode);
@@ -3592,13 +3602,9 @@ const setI18n = (i18nInstance) => {
3592
3602
  i18n$1 = i18nInstance;
3593
3603
  };
3594
3604
  const getKey = (namespace2, key) => {
3595
- if (!namespace2) {
3596
- return key;
3597
- }
3598
- if (key.startsWith(namespace2)) {
3605
+ {
3599
3606
  return key;
3600
3607
  }
3601
- return `${namespace2}.${key}`;
3602
3608
  };
3603
3609
  const useI18n = (namespace2) => {
3604
3610
  const normalFn = {
@@ -3873,7 +3879,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3873
3879
  }, null) : void 0]);
3874
3880
  }
3875
3881
  });
3876
- const Menu = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-2f747427"]]);
3882
+ const Menu = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-474ce778"]]);
3877
3883
  var BI_RM = "0123456789abcdefghijklmnopqrstuvwxyz";
3878
3884
  function int2char(n2) {
3879
3885
  return BI_RM.charAt(n2);
@@ -7553,14 +7559,15 @@ const useUserStore = defineStore("layout-user", {
7553
7559
  }
7554
7560
  },
7555
7561
  actions: {
7556
- // 从缓存加载用户信息到state
7562
+ // 加载用户信息到 state 和缓存
7557
7563
  loadUserFromCacheAction(userInfo) {
7558
7564
  this.permissions = new Set(userInfo.permissions);
7559
7565
  this.roles = userInfo.roles;
7560
7566
  this.user = userInfo.user;
7561
7567
  this.isSetUser = true;
7562
7568
  wsCache$1.set(CACHE_KEY.USER, userInfo);
7563
- wsCache$1.set(CACHE_KEY.ROLE_ROUTERS, userInfo.menus);
7569
+ const permissionStore = usePermissionStoreWithOut();
7570
+ permissionStore.setRoleRouters(userInfo.menus);
7564
7571
  },
7565
7572
  async setUserAvatarAction(avatar) {
7566
7573
  const userInfo = wsCache$1.get(CACHE_KEY.USER);
@@ -7588,6 +7595,8 @@ const useUserStore = defineStore("layout-user", {
7588
7595
  async loginOut() {
7589
7596
  removeToken();
7590
7597
  deleteUserCache();
7598
+ const permissionStore = usePermissionStoreWithOut();
7599
+ permissionStore.resetState();
7591
7600
  this.resetState();
7592
7601
  },
7593
7602
  resetState() {
@@ -7655,7 +7664,7 @@ const useTagsViewStore = defineStore("layout-tagsView", {
7655
7664
  }
7656
7665
  this.visitedViews.push(visitedView);
7657
7666
  },
7658
- // 新增缓存
7667
+ // 新增缓存 —— 根据当前 visitedViews 重新计算需要缓存的路由 name 列表
7659
7668
  addCachedView() {
7660
7669
  var _a2;
7661
7670
  const cacheMap = /* @__PURE__ */ new Set();
@@ -7666,16 +7675,19 @@ const useTagsViewStore = defineStore("layout-tagsView", {
7666
7675
  continue;
7667
7676
  }
7668
7677
  const name = item.name;
7678
+ if (!name) {
7679
+ continue;
7680
+ }
7669
7681
  cacheMap.add(name);
7670
7682
  }
7671
7683
  if (Array.from(this.cachedViews).sort().toString() === Array.from(cacheMap).sort().toString())
7672
7684
  return;
7673
7685
  this.cachedViews = cacheMap;
7674
7686
  },
7675
- // 删除某个
7687
+ // 删除某个tag及其缓存
7676
7688
  delView(view) {
7677
7689
  this.delVisitedView(view);
7678
- this.delCachedView();
7690
+ this.addCachedView();
7679
7691
  },
7680
7692
  // 删除tag
7681
7693
  delVisitedView(view) {
@@ -7686,17 +7698,18 @@ const useTagsViewStore = defineStore("layout-tagsView", {
7686
7698
  }
7687
7699
  }
7688
7700
  },
7689
- // 删除缓存
7690
- delCachedView() {
7701
+ // 删除指定视图的缓存,未传 view 时使用 selectedTag(用于刷新场景)
7702
+ delCachedView(view) {
7691
7703
  var _a2;
7692
- if (((_a2 = this.selectedTag) == null ? void 0 : _a2.name) && this.cachedViews.has(this.selectedTag.name)) {
7693
- this.cachedViews.delete(this.selectedTag.name);
7704
+ const routeName = (view == null ? void 0 : view.name) || ((_a2 = this.selectedTag) == null ? void 0 : _a2.name);
7705
+ if (routeName && this.cachedViews.has(routeName)) {
7706
+ this.cachedViews.delete(routeName);
7694
7707
  }
7695
7708
  },
7696
7709
  // 删除所有缓存和tag
7697
7710
  delAllViews() {
7698
7711
  this.delAllVisitedViews();
7699
- this.delCachedView();
7712
+ this.addCachedView();
7700
7713
  },
7701
7714
  // 删除所有tag
7702
7715
  delAllVisitedViews() {
@@ -7810,7 +7823,7 @@ const _sfc_main$u = /* @__PURE__ */ Object.assign({ name: "ContextMenu" }, {
7810
7823
  setup(__props, { expose: __expose, emit: __emit }) {
7811
7824
  const { getPrefixCls: getPrefixCls2 } = useDesign();
7812
7825
  const prefixCls2 = getPrefixCls2("context-menu");
7813
- const { t: t2 } = useI18n("layout");
7826
+ const { t: t2 } = useI18n();
7814
7827
  const emit = __emit;
7815
7828
  const props = __props;
7816
7829
  const command = (item) => {
@@ -7896,7 +7909,7 @@ const useTagsView = () => {
7896
7909
  callback2 == null ? void 0 : callback2();
7897
7910
  };
7898
7911
  const refreshPage = async (view, callback2) => {
7899
- tagsViewStore.delCachedView();
7912
+ tagsViewStore.delCachedView(view || unref(currentRoute));
7900
7913
  const { path, query } = view || unref(currentRoute);
7901
7914
  await nextTick();
7902
7915
  replace({
@@ -8123,13 +8136,12 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
8123
8136
  return (_ctx, _cache) => {
8124
8137
  const _component_Icon = resolveComponent("Icon");
8125
8138
  const _component_router_link = resolveComponent("router-link");
8126
- const _component_ElScrollbar = resolveComponent("ElScrollbar");
8127
8139
  return openBlock(), createElementBlock("div", {
8128
8140
  id: unref(prefixCls2),
8129
8141
  class: normalizeClass([unref(prefixCls2), "relative w-full flex bg-[#dbe4f880]"])
8130
8142
  }, [
8131
8143
  createElementVNode("div", _hoisted_2$b, [
8132
- createVNode(_component_ElScrollbar, {
8144
+ createVNode(unref(ElScrollbar), {
8133
8145
  ref_key: "scrollbarRef",
8134
8146
  ref: scrollbarRef,
8135
8147
  class: "h-full",
@@ -8151,28 +8163,28 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
8151
8163
  ]),
8152
8164
  schema: [
8153
8165
  {
8154
- label: unref(t2)("common.reload"),
8166
+ label: unref(t2)("layout.common.reload"),
8155
8167
  disabled: ((_a2 = unref(selectedTag)) == null ? void 0 : _a2.fullPath) !== item.fullPath,
8156
8168
  command: () => {
8157
8169
  refreshSelectedTag(item);
8158
8170
  }
8159
8171
  },
8160
8172
  {
8161
- label: unref(t2)("common.closeTab"),
8173
+ label: unref(t2)("layout.common.closeTab"),
8162
8174
  disabled: !!((_b = unref(visitedViews)) == null ? void 0 : _b.length) && ((_c = unref(selectedTag)) == null ? void 0 : _c.meta.affix) || ((_d = unref(visitedViews)) == null ? void 0 : _d.length) === 1,
8163
8175
  command: () => {
8164
8176
  closeSelectedTag(item);
8165
8177
  }
8166
8178
  },
8167
8179
  {
8168
- label: unref(t2)("common.closeOther"),
8180
+ label: unref(t2)("layout.common.closeOther"),
8169
8181
  disabled: ((_e = unref(selectedTag)) == null ? void 0 : _e.fullPath) !== item.fullPath,
8170
8182
  command: () => {
8171
8183
  closeOthersTags();
8172
8184
  }
8173
8185
  },
8174
8186
  {
8175
- label: unref(t2)("common.closeAll"),
8187
+ label: unref(t2)("layout.common.closeAll"),
8176
8188
  disabled: ((_f = unref(visitedViews)) == null ? void 0 : _f.length) === 1,
8177
8189
  command: () => {
8178
8190
  closeAllTags();
@@ -8227,7 +8239,7 @@ const _sfc_main$t = /* @__PURE__ */ Object.assign({ name: "TagsView" }, {
8227
8239
  };
8228
8240
  }
8229
8241
  });
8230
- const TagsView = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-6f94bff4"]]);
8242
+ const TagsView = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-dadb909c"]]);
8231
8243
  const _sfc_main$s = /* @__PURE__ */ Object.assign({ name: "MenuTrigger" }, {
8232
8244
  __name: "MenuTrigger",
8233
8245
  props: {
@@ -8266,6 +8278,8 @@ const _hoisted_1$c = { class: "sidebar-inner" };
8266
8278
  const _hoisted_2$a = ["onClick"];
8267
8279
  const _hoisted_3$9 = ["onClick"];
8268
8280
  const _hoisted_4$7 = ["onClick"];
8281
+ const _hoisted_5$5 = { key: 0 };
8282
+ const _hoisted_6$4 = { key: 1 };
8269
8283
  const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel" }, {
8270
8284
  __name: "ProductServicePanel",
8271
8285
  props: {
@@ -8278,58 +8292,69 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8278
8292
  setup(__props, { emit: __emit }) {
8279
8293
  const { getPrefixCls: getPrefixCls2 } = useDesign();
8280
8294
  const prefixCls2 = getPrefixCls2("product-service-panel");
8281
- const { t: t2 } = useI18n("layout");
8295
+ const { t: t2 } = useI18n();
8282
8296
  const props = __props;
8283
8297
  const emit = __emit;
8284
8298
  const router = useRouter();
8285
8299
  const permissionStore = usePermissionStore();
8300
+ const getMenuTitle = (item) => {
8301
+ var _a2;
8302
+ const rawTitle = ((_a2 = item.meta) == null ? void 0 : _a2.title) || item.name || "";
8303
+ return t2(rawTitle) || rawTitle;
8304
+ };
8305
+ const isVisible = (item) => {
8306
+ var _a2;
8307
+ return item.visible !== false && !((_a2 = item.meta) == null ? void 0 : _a2.hidden);
8308
+ };
8309
+ const searchInputRef = ref(null);
8286
8310
  const searchKeyword = ref("");
8311
+ const debouncedKeyword = ref("");
8312
+ let debounceTimer = null;
8313
+ watch(searchKeyword, (val) => {
8314
+ clearTimeout(debounceTimer);
8315
+ if (!val) {
8316
+ debouncedKeyword.value = "";
8317
+ } else {
8318
+ debounceTimer = setTimeout(() => {
8319
+ debouncedKeyword.value = val;
8320
+ }, 300);
8321
+ }
8322
+ });
8287
8323
  const activeCategory = ref(0);
8288
8324
  const routers = computed(() => permissionStore.getRoleRouters);
8289
8325
  const filteredMenus = computed(() => {
8290
- const keyword = searchKeyword.value.toLowerCase().trim();
8291
- const filterHiddenMenus = (items) => {
8292
- if (!items || !Array.isArray(items))
8293
- return [];
8294
- return items.filter((item) => !!item.visible).map((item) => ({
8295
- ...item,
8296
- children: item.children ? filterHiddenMenus(item.children) : []
8297
- }));
8298
- };
8299
- const baseMenus = filterHiddenMenus(routers.value);
8300
- if (!keyword) {
8301
- return baseMenus;
8302
- }
8303
- const filterFn = (items) => {
8304
- return items.reduce((result, item) => {
8305
- var _a2;
8306
- const title = ((_a2 = item.meta) == null ? void 0 : _a2.title) || "";
8307
- const isMatch = title.toLowerCase().includes(keyword);
8326
+ const keyword = debouncedKeyword.value.toLowerCase().trim();
8327
+ const items = routers.value;
8328
+ if (!items || !Array.isArray(items))
8329
+ return [];
8330
+ const filterFn = (list) => {
8331
+ return list.reduce((result, item) => {
8332
+ if (!item.visible)
8333
+ return result;
8334
+ const displayTitle = getMenuTitle(item);
8335
+ const isMatch = keyword && displayTitle.toLowerCase().includes(keyword);
8308
8336
  const children = item.children ? filterFn(item.children) : [];
8309
- if (isMatch || children.length > 0) {
8337
+ if (!keyword || isMatch || children.length > 0) {
8310
8338
  result.push({
8311
8339
  ...item,
8312
- children: children.length > 0 ? children : item.children
8340
+ children: isMatch ? item.children || [] : children
8313
8341
  });
8314
8342
  }
8315
8343
  return result;
8316
8344
  }, []);
8317
8345
  };
8318
- return filterFn(baseMenus);
8346
+ return filterFn(items);
8319
8347
  });
8320
8348
  const groupedMenus = computed(() => {
8321
8349
  return filteredMenus.value.map((menu) => {
8322
- var _a2, _b;
8350
+ var _a2;
8323
8351
  return {
8324
8352
  id: menu.id,
8325
- title: ((_a2 = menu.meta) == null ? void 0 : _a2.title) || menu.name,
8326
- icon: (_b = menu.meta) == null ? void 0 : _b.icon,
8353
+ title: getMenuTitle(menu),
8354
+ icon: (_a2 = menu.meta) == null ? void 0 : _a2.icon,
8327
8355
  path: menu.path,
8328
8356
  modulePath: menu.modulePath,
8329
- children: (menu.children || []).filter((item) => {
8330
- var _a3;
8331
- return !((_a3 = item.meta) == null ? void 0 : _a3.hidden);
8332
- })
8357
+ children: (menu.children || []).filter(isVisible)
8333
8358
  };
8334
8359
  });
8335
8360
  });
@@ -8351,10 +8376,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8351
8376
  const getAccessiblePath = (item, parentPath = "") => {
8352
8377
  const fullPath = joinPath(parentPath, item.path);
8353
8378
  if (item.children && item.children.length > 0) {
8354
- const visibleChildren = item.children.filter((child) => {
8355
- var _a2;
8356
- return !((_a2 = child.meta) == null ? void 0 : _a2.hidden);
8357
- });
8379
+ const visibleChildren = item.children.filter(isVisible);
8358
8380
  if (visibleChildren.length > 0) {
8359
8381
  return getAccessiblePath(visibleChildren[0], fullPath);
8360
8382
  }
@@ -8363,7 +8385,9 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8363
8385
  };
8364
8386
  const closePanel = () => {
8365
8387
  emit("update:visible", false);
8388
+ clearTimeout(debounceTimer);
8366
8389
  searchKeyword.value = "";
8390
+ debouncedKeyword.value = "";
8367
8391
  activeCategory.value = 0;
8368
8392
  };
8369
8393
  const handleSelect = (item, parentPath = "") => {
@@ -8387,12 +8411,42 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8387
8411
  const handleCategorySelect = (index) => {
8388
8412
  activeCategory.value = index;
8389
8413
  };
8414
+ watch(groupedMenus, () => {
8415
+ var _a2;
8416
+ if (activeCategory.value >= groupedMenus.value.length) {
8417
+ activeCategory.value = 0;
8418
+ }
8419
+ if (groupedMenus.value.length > 0) {
8420
+ const currentGroup = groupedMenus.value[activeCategory.value];
8421
+ if (!((_a2 = currentGroup == null ? void 0 : currentGroup.children) == null ? void 0 : _a2.length)) {
8422
+ const firstWithChildren = groupedMenus.value.findIndex((g) => {
8423
+ var _a3;
8424
+ return ((_a3 = g.children) == null ? void 0 : _a3.length) > 0;
8425
+ });
8426
+ if (firstWithChildren !== -1) {
8427
+ activeCategory.value = firstWithChildren;
8428
+ }
8429
+ }
8430
+ }
8431
+ });
8390
8432
  watch(() => props.visible, (val) => {
8391
8433
  if (val) {
8392
8434
  searchKeyword.value = "";
8435
+ debouncedKeyword.value = "";
8393
8436
  activeCategory.value = 0;
8437
+ nextTick(() => {
8438
+ var _a2;
8439
+ (_a2 = searchInputRef.value) == null ? void 0 : _a2.focus();
8440
+ });
8394
8441
  }
8395
8442
  });
8443
+ const handleKeydown = (e2) => {
8444
+ if (e2.key === "Escape" && props.visible) {
8445
+ closePanel();
8446
+ }
8447
+ };
8448
+ onMounted(() => document.addEventListener("keydown", handleKeydown));
8449
+ onUnmounted(() => document.removeEventListener("keydown", handleKeydown));
8396
8450
  return (_ctx, _cache) => {
8397
8451
  return openBlock(), createBlock(Teleport, { to: "body" }, [
8398
8452
  createVNode(Transition, { name: "fade" }, {
@@ -8419,14 +8473,14 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8419
8473
  createElementVNode("div", {
8420
8474
  class: normalizeClass([unref(prefixCls2) + "__sidebar-title"])
8421
8475
  }, [
8422
- createElementVNode("span", null, toDisplayString(unref(t2)("common.allProducts")), 1)
8476
+ createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.allProducts")), 1)
8423
8477
  ], 2),
8424
8478
  createVNode(unref(ElScrollbar), null, {
8425
8479
  default: withCtx(() => [
8426
8480
  createElementVNode("div", _hoisted_1$c, [
8427
8481
  (openBlock(true), createElementBlock(Fragment, null, renderList(groupedMenus.value, (group, index) => {
8428
8482
  return openBlock(), createElementBlock("div", {
8429
- key: index,
8483
+ key: group.id || index,
8430
8484
  class: normalizeClass([
8431
8485
  unref(prefixCls2) + "__category",
8432
8486
  { "is-active": activeCategory.value === index }
@@ -8448,9 +8502,11 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8448
8502
  class: normalizeClass([unref(prefixCls2) + "__header"])
8449
8503
  }, [
8450
8504
  createVNode(unref(ElInput), {
8505
+ ref_key: "searchInputRef",
8506
+ ref: searchInputRef,
8451
8507
  modelValue: searchKeyword.value,
8452
8508
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => searchKeyword.value = $event),
8453
- placeholder: unref(t2)("common.searchMenu"),
8509
+ placeholder: unref(t2)("layout.common.searchMenu"),
8454
8510
  clearable: "",
8455
8511
  size: "default"
8456
8512
  }, {
@@ -8477,34 +8533,29 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8477
8533
  createElementVNode("div", {
8478
8534
  class: normalizeClass([unref(prefixCls2) + "__grid-container"])
8479
8535
  }, [
8480
- currentCategoryMenus.value.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(currentCategoryMenus.value, (secondMenu, index) => {
8481
- var _a2, _b;
8536
+ currentCategoryMenus.value.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(currentCategoryMenus.value, (secondMenu) => {
8482
8537
  return openBlock(), createElementBlock("div", {
8483
- key: index,
8538
+ key: secondMenu.id || secondMenu.path,
8484
8539
  class: normalizeClass([unref(prefixCls2) + "__column"])
8485
8540
  }, [
8486
8541
  createElementVNode("div", {
8487
8542
  class: normalizeClass([unref(prefixCls2) + "__column-title"])
8488
8543
  }, [
8489
- createElementVNode("span", null, toDisplayString(((_a2 = secondMenu.meta) == null ? void 0 : _a2.title) || secondMenu.name), 1)
8544
+ createElementVNode("span", null, toDisplayString(getMenuTitle(secondMenu)), 1)
8490
8545
  ], 2),
8491
8546
  createElementVNode("div", {
8492
8547
  class: normalizeClass([unref(prefixCls2) + "__column-list"])
8493
8548
  }, [
8494
- secondMenu.children && secondMenu.children.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(secondMenu.children.filter((c) => {
8495
- var _a3;
8496
- return !((_a3 = c.meta) == null ? void 0 : _a3.hidden);
8497
- }), (thirdMenu) => {
8498
- var _a3;
8549
+ secondMenu.children && secondMenu.children.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 0 }, renderList(secondMenu.children.filter(isVisible), (thirdMenu) => {
8499
8550
  return openBlock(), createElementBlock("div", {
8500
8551
  key: thirdMenu.path,
8501
8552
  class: normalizeClass([unref(prefixCls2) + "__column-item"]),
8502
8553
  onClick: ($event) => {
8503
- var _a4;
8504
- return handleSelect(thirdMenu, joinPath((_a4 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a4.path, secondMenu.path));
8554
+ var _a2;
8555
+ return handleSelect(thirdMenu, joinPath((_a2 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a2.path, secondMenu.path));
8505
8556
  }
8506
8557
  }, [
8507
- createElementVNode("span", null, toDisplayString(((_a3 = thirdMenu.meta) == null ? void 0 : _a3.title) || thirdMenu.name), 1)
8558
+ createElementVNode("span", null, toDisplayString(getMenuTitle(thirdMenu)), 1)
8508
8559
  ], 10, _hoisted_3$9);
8509
8560
  }), 128)) : (openBlock(), createElementBlock("div", {
8510
8561
  key: 1,
@@ -8513,11 +8564,11 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8513
8564
  { [unref(prefixCls2) + "__column-item--disabled"]: secondMenu.type === 1 }
8514
8565
  ]),
8515
8566
  onClick: ($event) => {
8516
- var _a3;
8517
- return secondMenu.type === 2 && handleSelect(secondMenu, (_a3 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a3.path);
8567
+ var _a2;
8568
+ return secondMenu.type === 2 && handleSelect(secondMenu, (_a2 = groupedMenus.value[activeCategory.value]) == null ? void 0 : _a2.path);
8518
8569
  }
8519
8570
  }, [
8520
- createElementVNode("span", null, toDisplayString(secondMenu.type === 1 ? unref(t2)("common.noData") || "暂无" : ((_b = secondMenu.meta) == null ? void 0 : _b.title) || secondMenu.name), 1)
8571
+ secondMenu.type === 1 ? (openBlock(), createElementBlock("span", _hoisted_5$5, toDisplayString(unref(t2)("layout.common.noData") || "暂无"), 1)) : (openBlock(), createElementBlock("span", _hoisted_6$4, toDisplayString(getMenuTitle(secondMenu)), 1))
8521
8572
  ], 10, _hoisted_4$7))
8522
8573
  ], 2)
8523
8574
  ], 2);
@@ -8531,7 +8582,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8531
8582
  createElementVNode("div", {
8532
8583
  class: normalizeClass([unref(prefixCls2) + "__column-item", unref(prefixCls2) + "__column-item--disabled"])
8533
8584
  }, [
8534
- createElementVNode("span", null, toDisplayString(unref(t2)("common.noData") || "暂无"), 1)
8585
+ createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.noData") || "暂无"), 1)
8535
8586
  ], 2)
8536
8587
  ], 2)
8537
8588
  ], 2)) : (openBlock(), createElementBlock("div", {
@@ -8542,7 +8593,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8542
8593
  icon: "ant-design:inbox-outlined",
8543
8594
  size: 48
8544
8595
  }),
8545
- createElementVNode("span", null, toDisplayString(unref(t2)("common.noDataTitle")), 1)
8596
+ createElementVNode("span", null, toDisplayString(unref(t2)("layout.common.noDataTitle")), 1)
8546
8597
  ], 2))
8547
8598
  ], 2)
8548
8599
  ]),
@@ -8562,7 +8613,7 @@ const _sfc_main$r = /* @__PURE__ */ Object.assign({ name: "ProductServicePanel"
8562
8613
  };
8563
8614
  }
8564
8615
  });
8565
- const ProductServicePanel = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-e90309ba"]]);
8616
+ const ProductServicePanel = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-909615b6"]]);
8566
8617
  const _sfc_main$q = /* @__PURE__ */ Object.assign({ name: "Logo" }, {
8567
8618
  __name: "Logo",
8568
8619
  emits: ["logo-click"],
@@ -8633,9 +8684,28 @@ const _sfc_main$p = /* @__PURE__ */ Object.assign({ name: "AppView" }, {
8633
8684
  __name: "AppView",
8634
8685
  setup(__props) {
8635
8686
  const tagsViewStore = useTagsViewStore();
8687
+ useRoute();
8636
8688
  const getCaches = computed(() => {
8637
8689
  return tagsViewStore.getCachedViews;
8638
8690
  });
8691
+ const wrapperCache = /* @__PURE__ */ new Map();
8692
+ const getWrappedComponent = (Component, routeName) => {
8693
+ if (!Component || !routeName)
8694
+ return Component;
8695
+ if (wrapperCache.has(routeName))
8696
+ return wrapperCache.get(routeName);
8697
+ const wrapper = defineComponent({
8698
+ name: routeName,
8699
+ setup(_, { slots }) {
8700
+ return () => {
8701
+ var _a2;
8702
+ return (_a2 = slots.default) == null ? void 0 : _a2.call(slots);
8703
+ };
8704
+ }
8705
+ });
8706
+ wrapperCache.set(routeName, wrapper);
8707
+ return wrapper;
8708
+ };
8639
8709
  const routerAlive = ref(true);
8640
8710
  const reload = () => {
8641
8711
  routerAlive.value = false;
@@ -8648,9 +8718,14 @@ const _sfc_main$p = /* @__PURE__ */ Object.assign({ name: "AppView" }, {
8648
8718
  unref(routerAlive) ? (openBlock(), createBlock(_component_router_view, { key: 0 }, {
8649
8719
  default: withCtx(({ Component, route }) => [
8650
8720
  (openBlock(), createBlock(KeepAlive, { include: unref(getCaches) }, [
8651
- (openBlock(), createBlock(resolveDynamicComponent(Component), {
8652
- key: route.fullPath
8653
- }))
8721
+ (openBlock(), createBlock(resolveDynamicComponent(getWrappedComponent(Component, route.name)), {
8722
+ key: route.path
8723
+ }, {
8724
+ default: withCtx(() => [
8725
+ (openBlock(), createBlock(resolveDynamicComponent(Component)))
8726
+ ]),
8727
+ _: 2
8728
+ }, 1024))
8654
8729
  ], 1032, ["include"]))
8655
8730
  ]),
8656
8731
  _: 1
@@ -8723,7 +8798,7 @@ const _sfc_main$n = /* @__PURE__ */ Object.assign({ name: "UserInfo" }, {
8723
8798
  emits: ["logout-click"],
8724
8799
  setup(__props, { emit: __emit }) {
8725
8800
  const emit = __emit;
8726
- const { t: t2 } = useI18n("layout");
8801
+ const { t: t2 } = useI18n();
8727
8802
  const userStore = useUserStore();
8728
8803
  const { getPrefixCls: getPrefixCls2 } = useDesign();
8729
8804
  const prefixCls2 = getPrefixCls2("user-info");
@@ -8744,7 +8819,7 @@ const _sfc_main$n = /* @__PURE__ */ Object.assign({ name: "UserInfo" }, {
8744
8819
  createVNode(unref(ElDropdownItem), { onClick: handleLogoutClick }, {
8745
8820
  default: withCtx(() => [
8746
8821
  createVNode(_component_Icon, { icon: "ep:switch-button" }),
8747
- createElementVNode("div", null, toDisplayString(unref(t2)("common.loginOut")), 1)
8822
+ createElementVNode("div", null, toDisplayString(unref(t2)("layout.common.loginOut")), 1)
8748
8823
  ]),
8749
8824
  _: 1
8750
8825
  })
@@ -8778,7 +8853,7 @@ const _sfc_main$n = /* @__PURE__ */ Object.assign({ name: "UserInfo" }, {
8778
8853
  };
8779
8854
  }
8780
8855
  });
8781
- const UserInfo = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-8d3c6bbf"]]);
8856
+ const UserInfo = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-058b21ff"]]);
8782
8857
  const filterBreadcrumb = (routes, parentPath = "") => {
8783
8858
  var _a2;
8784
8859
  const res = [];
@@ -8815,7 +8890,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
8815
8890
  } = useRouter();
8816
8891
  const {
8817
8892
  t: t2
8818
- } = useI18n("layout");
8893
+ } = useI18n();
8819
8894
  const levelList = ref([]);
8820
8895
  const permissionStore = usePermissionStore();
8821
8896
  const menuRouters = computed(() => {
@@ -8876,7 +8951,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
8876
8951
  };
8877
8952
  }
8878
8953
  });
8879
- const Breadcrumb = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-ff7aeb5b"]]);
8954
+ const Breadcrumb = /* @__PURE__ */ _export_sfc(_sfc_main$m, [["__scopeId", "data-v-ae72fbd3"]]);
8880
8955
  var zhCn = {
8881
8956
  name: "zh-cn",
8882
8957
  el: {
@@ -9407,7 +9482,7 @@ const _sfc_main$k = {
9407
9482
  }
9408
9483
  ]);
9409
9484
  const emits = __emit;
9410
- const { t: t2 } = useI18n("layout");
9485
+ const { t: t2 } = useI18n();
9411
9486
  const appStore = useAppStore();
9412
9487
  const theme = computed(() => appStore.getTheme);
9413
9488
  const handleClick = (item) => {
@@ -9417,7 +9492,7 @@ const _sfc_main$k = {
9417
9492
  };
9418
9493
  return (_ctx, _cache) => {
9419
9494
  return openBlock(), createElementBlock(Fragment, null, [
9420
- createElementVNode("div", null, toDisplayString(unref(t2)("setting.theme")), 1),
9495
+ createElementVNode("div", null, toDisplayString(unref(t2)("layout.setting.theme")), 1),
9421
9496
  createElementVNode("div", _hoisted_1$9, [
9422
9497
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(themeList), (item) => {
9423
9498
  return openBlock(), createElementBlock("div", {
@@ -9442,7 +9517,7 @@ const _sfc_main$k = {
9442
9517
  };
9443
9518
  }
9444
9519
  };
9445
- const ThemeSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-49906bf4"]]);
9520
+ const ThemeSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["__scopeId", "data-v-e1d7d761"]]);
9446
9521
  const Chunjie = "data:image/png;base64,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";
9447
9522
  const Duanwu = "data:image/png;base64,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";
9448
9523
  const Zhongqiu = "data:image/png;base64,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";
@@ -9459,7 +9534,7 @@ const _sfc_main$j = {
9459
9534
  emits: ["change"],
9460
9535
  setup(__props, { emit: __emit }) {
9461
9536
  const emits = __emit;
9462
- const { t: t2 } = useI18n("layout");
9537
+ const { t: t2 } = useI18n();
9463
9538
  const appStore = useAppStore();
9464
9539
  const theme = computed(() => appStore.getTheme);
9465
9540
  const handleClick = (key) => {
@@ -9469,7 +9544,7 @@ const _sfc_main$j = {
9469
9544
  };
9470
9545
  return (_ctx, _cache) => {
9471
9546
  return openBlock(), createElementBlock(Fragment, null, [
9472
- createElementVNode("div", _hoisted_1$8, toDisplayString(unref(t2)("setting.festivalTheme")), 1),
9547
+ createElementVNode("div", _hoisted_1$8, toDisplayString(unref(t2)("layout.setting.festivalTheme")), 1),
9473
9548
  createElementVNode("div", _hoisted_2$7, [
9474
9549
  createElementVNode("div", {
9475
9550
  class: normalizeClass(["item", { "active": unref(theme) === "springFestival" }]),
@@ -9528,7 +9603,7 @@ const _sfc_main$j = {
9528
9603
  };
9529
9604
  }
9530
9605
  };
9531
- const FestivalThemeSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-86abb21f"]]);
9606
+ const FestivalThemeSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["__scopeId", "data-v-868f3996"]]);
9532
9607
  const _hoisted_1$7 = { class: "mt-24px" };
9533
9608
  const _hoisted_2$6 = { class: "layout-list" };
9534
9609
  const _hoisted_3$5 = ["onClick"];
@@ -9538,7 +9613,7 @@ const _sfc_main$i = {
9538
9613
  emits: ["change"],
9539
9614
  setup(__props, { emit: __emit }) {
9540
9615
  const emits = __emit;
9541
- const { t: t2 } = useI18n("layout");
9616
+ const { t: t2 } = useI18n();
9542
9617
  const appStore = useAppStore();
9543
9618
  const layout = computed(() => appStore.getLayout);
9544
9619
  const layoutItems = ref([
@@ -9566,7 +9641,7 @@ const _sfc_main$i = {
9566
9641
  return (_ctx, _cache) => {
9567
9642
  const _component_Icon = resolveComponent("Icon");
9568
9643
  return openBlock(), createElementBlock(Fragment, null, [
9569
- createElementVNode("div", _hoisted_1$7, toDisplayString(unref(t2)("setting.layout")), 1),
9644
+ createElementVNode("div", _hoisted_1$7, toDisplayString(unref(t2)("layout.setting.layout")), 1),
9570
9645
  createElementVNode("div", _hoisted_2$6, [
9571
9646
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref(layoutItems), (item) => {
9572
9647
  return openBlock(), createElementBlock("div", {
@@ -9593,7 +9668,7 @@ const _sfc_main$i = {
9593
9668
  };
9594
9669
  }
9595
9670
  };
9596
- const LayoutSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-f1cd8c74"]]);
9671
+ const LayoutSwitch = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["__scopeId", "data-v-265f0ebb"]]);
9597
9672
  const _hoisted_1$6 = { class: "text-16px font-500 text-[var(--text-color)]" };
9598
9673
  const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
9599
9674
  __name: "Setting",
@@ -9606,7 +9681,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
9606
9681
  emits: ["clear-cache-logout-click"],
9607
9682
  setup(__props, { emit: __emit }) {
9608
9683
  const emit = __emit;
9609
- const { t: t2 } = useI18n("layout");
9684
+ const { t: t2 } = useI18n();
9610
9685
  const appStore = useAppStore();
9611
9686
  useUserStore();
9612
9687
  const { getPrefixCls: getPrefixCls2 } = useDesign();
@@ -9624,11 +9699,11 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
9624
9699
  `
9625
9700
  });
9626
9701
  if (!isSupported) {
9627
- ElMessage.error(t2("setting.copyFailed"));
9702
+ ElMessage.error(t2("layout.setting.copyFailed"));
9628
9703
  } else {
9629
9704
  await copy();
9630
9705
  if (unref(copied)) {
9631
- ElMessage.success(t2("setting.copySuccess"));
9706
+ ElMessage.success(t2("layout.setting.copySuccess"));
9632
9707
  }
9633
9708
  }
9634
9709
  };
@@ -9651,7 +9726,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
9651
9726
  const saveTheme = async ({ theme, layout }) => {
9652
9727
  ElMessage({
9653
9728
  type: "success",
9654
- message: t2("common.updateSuccess"),
9729
+ message: t2("layout.common.updateSuccess"),
9655
9730
  // drawer遮罩层遮挡问题
9656
9731
  appendTo: document.querySelector(`.${overlayCls}`)
9657
9732
  });
@@ -9680,7 +9755,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
9680
9755
  "append-to-body": ""
9681
9756
  }, {
9682
9757
  header: withCtx(() => [
9683
- createElementVNode("span", _hoisted_1$6, toDisplayString(unref(t2)("setting.projectSetting")), 1)
9758
+ createElementVNode("span", _hoisted_1$6, toDisplayString(unref(t2)("layout.setting.projectSetting")), 1)
9684
9759
  ]),
9685
9760
  footer: withCtx(() => [
9686
9761
  createVNode(unref(ElButton), { onClick: clearCacheAndLogout }, {
@@ -9715,7 +9790,7 @@ const _sfc_main$h = /* @__PURE__ */ Object.assign({ name: "Setting" }, {
9715
9790
  };
9716
9791
  }
9717
9792
  });
9718
- const Setting = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-d30fe3cf"]]);
9793
+ const Setting = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["__scopeId", "data-v-89f387dd"]]);
9719
9794
  const _sfc_main$g = {
9720
9795
  __name: "index",
9721
9796
  props: {
@@ -10277,7 +10352,7 @@ const _sfc_main$b = /* @__PURE__ */ Object.assign({ name: "PageNavBar" }, {
10277
10352
  };
10278
10353
  }
10279
10354
  });
10280
- const PageNavBar = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-0d587176"]]);
10355
+ const PageNavBar = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-17aee006"]]);
10281
10356
  const _sfc_main$a = /* @__PURE__ */ Object.assign({ name: "Badge" }, {
10282
10357
  __name: "Badge",
10283
10358
  props: {
@@ -11243,7 +11318,7 @@ function createImageViewer(options) {
11243
11318
  render(instance, container);
11244
11319
  }
11245
11320
  const useMessage = () => {
11246
- const { t: t2 } = useI18n("layout");
11321
+ const { t: t2 } = useI18n();
11247
11322
  const scssVariables = variables$1;
11248
11323
  return {
11249
11324
  // 消息提示
@@ -11264,19 +11339,19 @@ const useMessage = () => {
11264
11339
  },
11265
11340
  // 弹出提示
11266
11341
  alert(content) {
11267
- ElMessageBox.alert(content, t2("common.confirmTitle"));
11342
+ ElMessageBox.alert(content, t2("layout.common.confirmTitle"));
11268
11343
  },
11269
11344
  // 错误提示
11270
11345
  alertError(content) {
11271
- ElMessageBox.alert(content, t2("common.confirmTitle"), { type: "error" });
11346
+ ElMessageBox.alert(content, t2("layout.common.confirmTitle"), { type: "error" });
11272
11347
  },
11273
11348
  // 成功提示
11274
11349
  alertSuccess(content) {
11275
- ElMessageBox.alert(content, t2("common.confirmTitle"), { type: "success" });
11350
+ ElMessageBox.alert(content, t2("layout.common.confirmTitle"), { type: "success" });
11276
11351
  },
11277
11352
  // 警告提示
11278
11353
  alertWarning(content) {
11279
- ElMessageBox.alert(content, t2("common.confirmTitle"), { type: "warning" });
11354
+ ElMessageBox.alert(content, t2("layout.common.confirmTitle"), { type: "warning" });
11280
11355
  },
11281
11356
  // 通知提示
11282
11357
  notify(content) {
@@ -11296,11 +11371,11 @@ const useMessage = () => {
11296
11371
  },
11297
11372
  // 确认窗体
11298
11373
  confirm(content, tip, options = {}) {
11299
- return ElMessageBox.confirm(content, tip ? tip : t2("common.confirmTitle"), {
11374
+ return ElMessageBox.confirm(content, tip ? tip : t2("layout.common.confirmTitle"), {
11300
11375
  ...options,
11301
11376
  customClass: `${options.customClass} ${scssVariables.namespace}-message-box`,
11302
- confirmButtonText: options.confirmButtonText ?? t2("common.ok"),
11303
- cancelButtonText: options.cancelButtonText ?? t2("common.cancel"),
11377
+ confirmButtonText: options.confirmButtonText ?? t2("layout.common.ok"),
11378
+ cancelButtonText: options.cancelButtonText ?? t2("layout.common.cancel"),
11304
11379
  buttonSize: "default",
11305
11380
  center: true
11306
11381
  });
@@ -11308,12 +11383,12 @@ const useMessage = () => {
11308
11383
  // 删除窗体
11309
11384
  delConfirm(content, tip) {
11310
11385
  return ElMessageBox.confirm(
11311
- content ? content : t2("common.delMessage"),
11312
- tip ? tip : t2("common.confirmTitle"),
11386
+ content ? content : t2("layout.common.delMessage"),
11387
+ tip ? tip : t2("layout.common.confirmTitle"),
11313
11388
  {
11314
11389
  customClass: `${scssVariables.namespace}-message-box`,
11315
- confirmButtonText: t2("common.ok"),
11316
- cancelButtonText: t2("common.cancel"),
11390
+ confirmButtonText: t2("layout.common.ok"),
11391
+ cancelButtonText: t2("layout.common.cancel"),
11317
11392
  buttonSize: "default",
11318
11393
  center: true,
11319
11394
  type: "warning"
@@ -11323,11 +11398,11 @@ const useMessage = () => {
11323
11398
  // 导出窗体
11324
11399
  exportConfirm(content, tip) {
11325
11400
  return ElMessageBox.confirm(
11326
- content ? content : t2("common.exportMessage"),
11327
- tip ? tip : t2("common.confirmTitle"),
11401
+ content ? content : t2("layout.common.exportMessage"),
11402
+ tip ? tip : t2("layout.common.confirmTitle"),
11328
11403
  {
11329
- confirmButtonText: t2("common.ok"),
11330
- cancelButtonText: t2("common.cancel"),
11404
+ confirmButtonText: t2("layout.common.ok"),
11405
+ cancelButtonText: t2("layout.common.cancel"),
11331
11406
  type: "warning"
11332
11407
  }
11333
11408
  );
@@ -11335,8 +11410,8 @@ const useMessage = () => {
11335
11410
  // 提交内容
11336
11411
  prompt(content, tip, options = {}) {
11337
11412
  return ElMessageBox.prompt(content, tip, {
11338
- confirmButtonText: t2("common.ok"),
11339
- cancelButtonText: t2("common.cancel"),
11413
+ confirmButtonText: t2("layout.common.ok"),
11414
+ cancelButtonText: t2("layout.common.cancel"),
11340
11415
  ...options
11341
11416
  });
11342
11417
  }
@@ -11422,12 +11497,12 @@ const _sfc_main$2 = /* @__PURE__ */ Object.assign({ name: "UploadImg", inheritAt
11422
11497
  emits: ["update:modelValue"],
11423
11498
  setup(__props, { emit: __emit }) {
11424
11499
  useCssVars((_ctx) => ({
11425
- "3d8ea9da": __props.width,
11426
- "2c0dbd7a": __props.height,
11427
- "00ef71d1": __props.borderradius
11500
+ "ed349720": __props.width,
11501
+ "ecfc4086": __props.height,
11502
+ "38f8d458": __props.borderradius
11428
11503
  }));
11429
11504
  const props = __props;
11430
- const { t: t2 } = useI18n("layout");
11505
+ const { t: t2 } = useI18n();
11431
11506
  const message = useMessage();
11432
11507
  const uuid = ref("id-" + generateUUID());
11433
11508
  const imagePreview = (imgUrl) => {
@@ -11493,7 +11568,7 @@ const _sfc_main$2 = /* @__PURE__ */ Object.assign({ name: "UploadImg", inheritAt
11493
11568
  onClick: _cache[0] || (_cache[0] = ($event) => imagePreview(__props.modelValue))
11494
11569
  }, [
11495
11570
  createVNode(unref(_sfc_main$x), { icon: "ant-design:zoom-in-outlined" }),
11496
- __props.showBtnText ? (openBlock(), createElementBlock("span", _hoisted_3$2, toDisplayString(unref(t2)("action.detail")), 1)) : createCommentVNode("", true)
11571
+ __props.showBtnText ? (openBlock(), createElementBlock("span", _hoisted_3$2, toDisplayString(unref(t2)("layout.action.detail")), 1)) : createCommentVNode("", true)
11497
11572
  ]),
11498
11573
  __props.showDelete && !__props.disabled ? (openBlock(), createElementBlock("div", {
11499
11574
  key: 0,
@@ -11501,7 +11576,7 @@ const _sfc_main$2 = /* @__PURE__ */ Object.assign({ name: "UploadImg", inheritAt
11501
11576
  onClick: deleteImg
11502
11577
  }, [
11503
11578
  createVNode(unref(_sfc_main$x), { icon: "ant-design:delete-outlined" }),
11504
- __props.showBtnText ? (openBlock(), createElementBlock("span", _hoisted_4$2, toDisplayString(unref(t2)("action.del")), 1)) : createCommentVNode("", true)
11579
+ __props.showBtnText ? (openBlock(), createElementBlock("span", _hoisted_4$2, toDisplayString(unref(t2)("layout.action.del")), 1)) : createCommentVNode("", true)
11505
11580
  ])) : createCommentVNode("", true)
11506
11581
  ])
11507
11582
  ], 64)) : (openBlock(), createElementBlock("div", _hoisted_5$2, [
@@ -11523,7 +11598,7 @@ const _sfc_main$2 = /* @__PURE__ */ Object.assign({ name: "UploadImg", inheritAt
11523
11598
  };
11524
11599
  }
11525
11600
  });
11526
- const UploadImg = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-4a1df97a"]]);
11601
+ const UploadImg = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-fb79db48"]]);
11527
11602
  const _hoisted_1$1 = { class: "upload-box" };
11528
11603
  const _hoisted_2$1 = { class: "upload-empty" };
11529
11604
  const _hoisted_3$1 = ["src"];