@ditari/bsui 5.1.2 → 5.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/cjs/components/card/Card.cjs +1 -1
  2. package/dist/cjs/components/card/Card.cjs.map +1 -1
  3. package/dist/cjs/components/layout/AppContext.cjs.map +1 -1
  4. package/dist/cjs/components/layout/Layout.vue2.cjs +24 -6
  5. package/dist/cjs/components/layout/Layout.vue2.cjs.map +1 -1
  6. package/dist/cjs/components/layout/List.cjs +25 -22
  7. package/dist/cjs/components/layout/List.cjs.map +1 -1
  8. package/dist/cjs/components/layout/Show.cjs +6 -1
  9. package/dist/cjs/components/layout/Show.cjs.map +1 -1
  10. package/dist/cjs/components/layout/components/layout/RouterContent.vue2.cjs +57 -21
  11. package/dist/cjs/components/layout/components/layout/RouterContent.vue2.cjs.map +1 -1
  12. package/dist/cjs/components/layout/components/layout/RouterContentName.vue2.cjs +42 -27
  13. package/dist/cjs/components/layout/components/layout/RouterContentName.vue2.cjs.map +1 -1
  14. package/dist/cjs/components/tab/Tab.vue2.cjs +4 -10
  15. package/dist/cjs/components/tab/Tab.vue2.cjs.map +1 -1
  16. package/dist/esm/components/card/Card.mjs +1 -1
  17. package/dist/esm/components/card/Card.mjs.map +1 -1
  18. package/dist/esm/components/layout/AppContext.mjs.map +1 -1
  19. package/dist/esm/components/layout/Layout.vue2.mjs +26 -8
  20. package/dist/esm/components/layout/Layout.vue2.mjs.map +1 -1
  21. package/dist/esm/components/layout/List.mjs +25 -22
  22. package/dist/esm/components/layout/List.mjs.map +1 -1
  23. package/dist/esm/components/layout/Show.mjs +6 -1
  24. package/dist/esm/components/layout/Show.mjs.map +1 -1
  25. package/dist/esm/components/layout/components/layout/RouterContent.vue2.mjs +58 -22
  26. package/dist/esm/components/layout/components/layout/RouterContent.vue2.mjs.map +1 -1
  27. package/dist/esm/components/layout/components/layout/RouterContentName.vue2.mjs +43 -28
  28. package/dist/esm/components/layout/components/layout/RouterContentName.vue2.mjs.map +1 -1
  29. package/dist/esm/components/tab/Tab.vue2.mjs +4 -10
  30. package/dist/esm/components/tab/Tab.vue2.mjs.map +1 -1
  31. package/dist/types/components/card/Card.d.ts.map +1 -1
  32. package/dist/types/components/layout/AppContext.d.ts +3 -1
  33. package/dist/types/components/layout/AppContext.d.ts.map +1 -1
  34. package/dist/types/components/layout/Layout.vue.d.ts +16 -29
  35. package/dist/types/components/layout/Layout.vue.d.ts.map +1 -1
  36. package/dist/types/components/layout/List.d.ts.map +1 -1
  37. package/dist/types/components/layout/Show.d.ts +9 -0
  38. package/dist/types/components/layout/Show.d.ts.map +1 -1
  39. package/dist/types/components/layout/components/layout/HeaderLayout.vue.d.ts +2 -2
  40. package/dist/types/components/layout/components/layout/RouterContent.vue.d.ts +4 -2
  41. package/dist/types/components/layout/components/layout/RouterContent.vue.d.ts.map +1 -1
  42. package/dist/types/components/tab/Tab.vue.d.ts +2 -2
  43. package/dist/types/components/tab/Tab.vue.d.ts.map +1 -1
  44. package/package.json +3 -3
@@ -1,44 +1,80 @@
1
- import { defineComponent, computed, h, watch, resolveComponent, createBlock, openBlock, withCtx, createVNode, Transition, KeepAlive, resolveDynamicComponent, unref } from 'vue';
2
- import { useRoute } from 'vue-router';
1
+ import { defineComponent, ref, computed, h, nextTick, watch, resolveComponent, createBlock, openBlock, withCtx, createVNode, Transition, KeepAlive, resolveDynamicComponent } from 'vue';
3
2
  import { storeToRefs } from 'pinia';
4
3
  import { useNavTabStore } from '@ditari/store';
5
4
 
6
5
  "use strict";
6
+ var __async = (__this, __arguments, generator) => {
7
+ return new Promise((resolve, reject) => {
8
+ var fulfilled = (value) => {
9
+ try {
10
+ step(generator.next(value));
11
+ } catch (e) {
12
+ reject(e);
13
+ }
14
+ };
15
+ var rejected = (value) => {
16
+ try {
17
+ step(generator.throw(value));
18
+ } catch (e) {
19
+ reject(e);
20
+ }
21
+ };
22
+ var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
23
+ step((generator = generator.apply(__this, __arguments)).next());
24
+ });
25
+ };
7
26
  var _sfc_main = /* @__PURE__ */ defineComponent({
8
27
  __name: "RouterContent",
9
- setup(__props) {
28
+ setup(__props, { expose: __expose }) {
10
29
  const { list } = storeToRefs(useNavTabStore());
11
- const route = useRoute();
30
+ const toPascalCase = (str) => {
31
+ return str.replace(/[^a-zA-Z0-9]/g, " ").split(" ").filter(Boolean).map(
32
+ (word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()
33
+ ).join("");
34
+ };
35
+ const refreshingPath = ref(null);
36
+ const wrapperMap = /* @__PURE__ */ new Map();
12
37
  const cachedViews = computed(() => {
13
- return list.value.filter(
14
- (tab) => {
15
- var _a;
16
- return ((_a = tab.meta) == null ? void 0 : _a.keepAlive) === true && tab.fullPath;
17
- }
18
- ).map((tab) => tab.fullPath);
38
+ return list.value.filter((tab) => {
39
+ var _a;
40
+ const isKeepAlive = ((_a = tab.meta) == null ? void 0 : _a.keepAlive) === true;
41
+ const isNotRefreshing = tab.fullPath !== refreshingPath.value;
42
+ return isKeepAlive && tab.fullPath && isNotRefreshing;
43
+ }).map((tab) => {
44
+ return tab.name || toPascalCase(tab.fullPath);
45
+ });
19
46
  });
20
- const wrapperMap = /* @__PURE__ */ new Map();
21
- const getWrapper = (Component, route2) => {
47
+ const getWrapper = (Component, route) => {
22
48
  if (!Component) return null;
23
- const wrapperName = route2.fullPath;
24
- if (wrapperMap.has(wrapperName)) {
25
- return wrapperMap.get(wrapperName);
49
+ const fullPath = route.fullPath;
50
+ const wrapperName = route.name || toPascalCase(fullPath);
51
+ if (wrapperMap.has(fullPath)) {
52
+ return wrapperMap.get(fullPath);
26
53
  }
27
54
  const wrapper = defineComponent({
28
55
  name: wrapperName,
29
- // 这确保了 keep-alive 的 include 能够匹配到
56
+ // KeepAlive 识别
30
57
  setup() {
31
58
  return () => h(Component);
32
59
  }
33
60
  });
34
- wrapperMap.set(wrapperName, wrapper);
61
+ wrapperMap.set(fullPath, wrapper);
35
62
  return wrapper;
36
63
  };
64
+ const reloadPage = (fullPath) => __async(null, null, function* () {
65
+ refreshingPath.value = fullPath;
66
+ wrapperMap.delete(fullPath);
67
+ yield nextTick();
68
+ yield nextTick();
69
+ refreshingPath.value = null;
70
+ });
71
+ __expose({ reloadPage });
37
72
  watch(
38
73
  cachedViews,
39
74
  (names) => {
40
- wrapperMap.forEach((_, key) => {
41
- if (!names.includes(key)) {
75
+ const activeNames = new Set(names);
76
+ wrapperMap.forEach((wrapper, key) => {
77
+ if (!activeNames.has(wrapper.name)) {
42
78
  wrapperMap.delete(key);
43
79
  }
44
80
  });
@@ -48,7 +84,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
48
84
  return (_ctx, _cache) => {
49
85
  const _component_router_view = resolveComponent("router-view");
50
86
  return openBlock(), createBlock(_component_router_view, null, {
51
- default: withCtx(({ Component }) => [
87
+ default: withCtx(({ Component, route: currentRoute }) => [
52
88
  createVNode(
53
89
  Transition,
54
90
  {
@@ -59,8 +95,8 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
59
95
  {
60
96
  default: withCtx(() => [
61
97
  (openBlock(), createBlock(KeepAlive, { include: cachedViews.value }, [
62
- (openBlock(), createBlock(resolveDynamicComponent(getWrapper(Component, unref(route))), {
63
- key: unref(route).fullPath
98
+ (openBlock(), createBlock(resolveDynamicComponent(getWrapper(Component, currentRoute)), {
99
+ key: currentRoute.fullPath
64
100
  }))
65
101
  ], 1032, ["include"]))
66
102
  ]),
@@ -1 +1 @@
1
- {"version":3,"file":"RouterContent.vue2.mjs","sources":["../../../../../../src/components/layout/components/layout/RouterContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed, defineComponent, h, watch } from \"vue\";\r\nimport { useRoute } from \"vue-router\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { useNavTabStore } from \"@ditari/store\";\r\n\r\nconst { list } = storeToRefs(useNavTabStore());\r\nconst route = useRoute();\r\n\r\n// 1. 依然保留 cachedViews,它存储的是 fullPath 数组\r\nconst cachedViews = computed<string[]>(() => {\r\n return list.value\r\n .filter(\r\n tab => tab.meta?.keepAlive === true && tab.fullPath\r\n ) // 确保 fullPath 存在\r\n .map(tab => tab.fullPath as string); // 明确断言为 string\r\n});\r\n\r\n// 2. 使用 shallowRef 存储包装组件,避免不必要的深层响应式开销\r\nconst wrapperMap = new Map();\r\n\r\nconst getWrapper = (Component: any, route: any) => {\r\n if (!Component) return null;\r\n\r\n // 使用 fullPath 作为唯一的组件名\r\n const wrapperName = route.fullPath;\r\n\r\n if (wrapperMap.has(wrapperName)) {\r\n return wrapperMap.get(wrapperName);\r\n }\r\n\r\n // 3. 关键:创建一个新组件,其 name 必须在 cachedViews 数组中\r\n const wrapper = defineComponent({\r\n name: wrapperName, // 这确保了 keep-alive 的 include 能够匹配到\r\n setup() {\r\n return () => h(Component);\r\n }\r\n });\r\n\r\n wrapperMap.set(wrapperName, wrapper);\r\n return wrapper;\r\n};\r\nwatch(\r\n cachedViews,\r\n names => {\r\n wrapperMap.forEach((_, key) => {\r\n if (!names.includes(key)) {\r\n wrapperMap.delete(key);\r\n }\r\n });\r\n },\r\n { deep: true }\r\n);\r\n</script>\r\n<template>\r\n <router-view v-slot=\"{ Component }\">\r\n <transition name=\"main\" mode=\"out-in\" appear>\r\n <keep-alive :include=\"cachedViews\">\r\n <component\r\n :is=\"getWrapper(Component, route)\"\r\n :key=\"route.fullPath\"\r\n />\r\n </keep-alive>\r\n </transition>\r\n </router-view>\r\n</template>\r\n"],"names":["route","_createBlock","_withCtx","_createVNode","_Transition","_KeepAlive","_openBlock","_resolveDynamicComponent","_unref"],"mappings":";;;;;;;;;AAOA,IAAA,MAAM,EAAE,IAAA,EAAK,GAAI,WAAA,CAAY,gBAAgB,CAAA;AAC7C,IAAA,MAAM,QAAQ,QAAA,EAAS;AAGvB,IAAA,MAAM,WAAA,GAAc,SAAmB,MAAM;AAC3C,MAAA,OAAO,KAAK,KAAA,CACT,MAAA;AAAA,QACC,CAAA,GAAA,KAAI;;AAAG,UAAA,OAAA,CAAA,CAAA,EAAA,GAAA,GAAA,CAAI,IAAA,KAAJ,IAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAU,SAAA,MAAc,IAAA,IAAQ,GAAA,CAAI,QAAA;AAAA,QAAA;AAAA,OAC7C,CACC,GAAA,CAAI,CAAA,GAAA,KAAO,GAAA,CAAI,QAAkB,CAAA;AAAA,IACtC,CAAC,CAAA;AAGD,IAAA,MAAM,UAAA,uBAAiB,GAAA,EAAI;AAE3B,IAAA,MAAM,UAAA,GAAa,CAAC,SAAA,EAAgBA,MAAAA,KAAe;AACjD,MAAA,IAAI,CAAC,WAAW,OAAO,IAAA;AAGvB,MAAA,MAAM,cAAcA,MAAAA,CAAM,QAAA;AAE1B,MAAA,IAAI,UAAA,CAAW,GAAA,CAAI,WAAW,CAAA,EAAG;AAC/B,QAAA,OAAO,UAAA,CAAW,IAAI,WAAW,CAAA;AAAA,MACnC;AAGA,MAAA,MAAM,UAAU,eAAA,CAAgB;AAAA,QAC9B,IAAA,EAAM,WAAA;AAAA;AAAA,QACN,KAAA,GAAQ;AACN,UAAA,OAAO,MAAM,EAAE,SAAS,CAAA;AAAA,QAC1B;AAAA,OACD,CAAA;AAED,MAAA,UAAA,CAAW,GAAA,CAAI,aAAa,OAAO,CAAA;AACnC,MAAA,OAAO,OAAA;AAAA,IACT,CAAA;AACA,IAAA,KAAA;AAAA,MACE,WAAA;AAAA,MACA,CAAA,KAAA,KAAS;AACP,QAAA,UAAA,CAAW,OAAA,CAAQ,CAAC,CAAA,EAAG,GAAA,KAAQ;AAC7B,UAAA,IAAI,CAAC,KAAA,CAAM,QAAA,CAAS,GAAG,CAAA,EAAG;AACxB,YAAA,UAAA,CAAW,OAAO,GAAG,CAAA;AAAA,UACvB;AAAA,QACF,CAAC,CAAA;AAAA,MACH,CAAA;AAAA,MACA,EAAE,MAAM,IAAA;AAAK,KACf;;;0BAGEC,WAAA,CASc,sBAAA,EAAA,IAAA,EAAA;AAAA,QARZ,OAAA,EAAAC,OAAA,CAAA,CAOa,EARQ,WAAS,KAAA;AAAA,UAC9BC,WAAA;AAAA,YAOaC,UAAA;AAAA,YAAA;AAAA,cAPD,IAAA,EAAK,MAAA;AAAA,cAAO,IAAA,EAAK,QAAA;AAAA,cAAS,MAAA,EAAA;AAAA;;+BACpC,MAKa;AAAA,8BALbH,WAAA,CAKaI,SAAA,EAAA,EALA,OAAA,EAAS,WAAA,CAAA,OAAW,EAAA;AAAA,mBAC/BC,SAAA,EAAA,EAAAL,WAAA,CAGEM,uBAAA,CAFK,UAAA,CAAW,WAAWC,KAAA,CAAA,KAAA,CAAK,CAAA,CAAA,EAAA;AAAA,oBAC/B,GAAA,EAAKA,KAAA,CAAA,KAAA,CAAA,CAAM;AAAA;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"RouterContent.vue2.mjs","sources":["../../../../../../src/components/layout/components/layout/RouterContent.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport {\r\n computed,\r\n defineComponent,\r\n h,\r\n nextTick,\r\n ref,\r\n watch\r\n} from \"vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { useNavTabStore } from \"@ditari/store\";\r\n\r\nconst { list } = storeToRefs(useNavTabStore());\r\n\r\n/**\r\n * 工具函数:大驼峰转换\r\n */\r\nconst toPascalCase = (str: string) => {\r\n return str\r\n .replace(/[^a-zA-Z0-9]/g, \" \")\r\n .split(\" \")\r\n .filter(Boolean)\r\n .map(\r\n word =>\r\n word.charAt(0).toUpperCase() +\r\n word.slice(1).toLowerCase()\r\n )\r\n .join(\"\");\r\n};\r\n\r\n/**\r\n * 1. 状态管理\r\n * refreshingPath: 记录当前正在执行重载的路径。\r\n * wrapperMap: 存储包装组件的缓存。\r\n */\r\nconst refreshingPath = ref<string | null>(null);\r\nconst wrapperMap = new Map();\r\n\r\n/**\r\n * 2. 计算缓存名单 (KeepAlive 的 include 属性)\r\n * 逻辑:meta.keepAlive 为 true,且当前路径不在“重载黑名单”中。\r\n */\r\nconst cachedViews = computed<string[]>(() => {\r\n return list.value\r\n .filter(tab => {\r\n const isKeepAlive = tab.meta?.keepAlive === true;\r\n const isNotRefreshing =\r\n tab.fullPath !== refreshingPath.value;\r\n return isKeepAlive && tab.fullPath && isNotRefreshing;\r\n })\r\n .map(tab => {\r\n // 这里的生成逻辑必须与 getWrapper 中的 name 保持严格一致\r\n return (\r\n (tab.name as string) ||\r\n toPascalCase(tab.fullPath as string)\r\n );\r\n });\r\n});\r\n\r\n/**\r\n * 3. 动态包装组件逻辑\r\n */\r\nconst getWrapper = (Component: any, route: any) => {\r\n if (!Component) return null;\r\n\r\n const fullPath = route.fullPath;\r\n const wrapperName =\r\n (route.name as string) || toPascalCase(fullPath);\r\n\r\n // 如果缓存中有,直接返回。\r\n // 注意:重载时我们会从 wrapperMap 中 delete 掉它,强制这里重新生成。\r\n if (wrapperMap.has(fullPath)) {\r\n return wrapperMap.get(fullPath);\r\n }\r\n\r\n // 创建一个全新的组件定义\r\n const wrapper = defineComponent({\r\n name: wrapperName, // KeepAlive 识别\r\n setup() {\r\n return () => h(Component);\r\n }\r\n });\r\n\r\n wrapperMap.set(fullPath, wrapper);\r\n return wrapper;\r\n};\r\n\r\n/**\r\n * 4. 暴露重载方法 (供父组件调用)\r\n * 核心:先从 include 移除触发销毁,清理定义,再恢复。\r\n */\r\nconst reloadPage = async (fullPath: string) => {\r\n // A. 将路径加入“黑名单”,cachedViews 会立即更新\r\n // KeepAlive 发现 include 不再包含此组件,会执行正常的销毁流程(避免 deactivate 报错)\r\n refreshingPath.value = fullPath;\r\n\r\n // B. 清理包装组件的内存缓存,确保下次进入时 setup 重新执行\r\n wrapperMap.delete(fullPath);\r\n\r\n // C. 等待两个 Tick,确保 Vue 渲染器完成了销毁动作\r\n await nextTick();\r\n await nextTick();\r\n\r\n // D. 移除黑名单,KeepAlive 重新将该路径加入缓存范围\r\n refreshingPath.value = null;\r\n};\r\n\r\ndefineExpose({ reloadPage });\r\n\r\n/**\r\n * 5. 监听标签页关闭\r\n * 当从标签栏删除某个页面时,同步清理包装组件内存\r\n */\r\nwatch(\r\n cachedViews,\r\n names => {\r\n const activeNames = new Set(names);\r\n wrapperMap.forEach((wrapper, key) => {\r\n if (!activeNames.has(wrapper.name)) {\r\n wrapperMap.delete(key);\r\n }\r\n });\r\n },\r\n { deep: true }\r\n);\r\n</script>\r\n\r\n<template>\r\n <router-view v-slot=\"{ Component, route: currentRoute }\">\r\n <transition name=\"main\" mode=\"out-in\" appear>\r\n <keep-alive :include=\"cachedViews\">\r\n <component\r\n :is=\"getWrapper(Component, currentRoute)\"\r\n :key=\"currentRoute.fullPath\"\r\n />\r\n </keep-alive>\r\n </transition>\r\n </router-view>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["_createBlock","_createVNode","_Transition","_KeepAlive","_openBlock","_resolveDynamicComponent"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { defineComponent, computed, resolveComponent, createBlock, openBlock, withCtx, createVNode, Transition, KeepAlive, resolveDynamicComponent, unref } from 'vue';
1
+ import { defineComponent, computed, resolveComponent, createElementBlock, openBlock, Fragment, createElementVNode, createVNode, withCtx, Transition, createBlock, KeepAlive, resolveDynamicComponent, unref } from 'vue';
2
2
  import { useRoute } from 'vue-router';
3
3
  import { storeToRefs } from 'pinia';
4
4
  import { useKeepAliveStore } from '@ditari/store';
@@ -13,33 +13,48 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
13
13
  const route = useRoute();
14
14
  return (_ctx, _cache) => {
15
15
  const _component_router_view = resolveComponent("router-view");
16
- return openBlock(), createBlock(_component_router_view, null, {
17
- default: withCtx(({ Component }) => [
18
- createVNode(
19
- Transition,
20
- {
21
- name: "main",
22
- mode: "out-in",
23
- appear: ""
24
- },
25
- {
26
- default: withCtx(() => [
27
- (openBlock(), createBlock(KeepAlive, { include: keepAliveNames.value }, [
28
- (openBlock(), createBlock(resolveDynamicComponent(Component), {
29
- key: unref(route).path
30
- }))
31
- ], 1032, ["include"]))
32
- ]),
33
- _: 2
34
- /* DYNAMIC */
35
- },
36
- 1024
37
- /* DYNAMIC_SLOTS */
38
- )
39
- ]),
40
- _: 1
41
- /* STABLE */
42
- });
16
+ return openBlock(), createElementBlock(
17
+ Fragment,
18
+ null,
19
+ [
20
+ _cache[0] || (_cache[0] = createElementVNode(
21
+ "div",
22
+ null,
23
+ "name",
24
+ -1
25
+ /* CACHED */
26
+ )),
27
+ createVNode(_component_router_view, null, {
28
+ default: withCtx(({ Component }) => [
29
+ createVNode(
30
+ Transition,
31
+ {
32
+ name: "main",
33
+ mode: "out-in",
34
+ appear: ""
35
+ },
36
+ {
37
+ default: withCtx(() => [
38
+ (openBlock(), createBlock(KeepAlive, { include: keepAliveNames.value }, [
39
+ (openBlock(), createBlock(resolveDynamicComponent(Component), {
40
+ key: unref(route).fullPath
41
+ }))
42
+ ], 1032, ["include"]))
43
+ ]),
44
+ _: 2
45
+ /* DYNAMIC */
46
+ },
47
+ 1024
48
+ /* DYNAMIC_SLOTS */
49
+ )
50
+ ]),
51
+ _: 1
52
+ /* STABLE */
53
+ })
54
+ ],
55
+ 64
56
+ /* STABLE_FRAGMENT */
57
+ );
43
58
  };
44
59
  }
45
60
  });
@@ -1 +1 @@
1
- {"version":3,"file":"RouterContentName.vue2.mjs","sources":["../../../../../../src/components/layout/components/layout/RouterContentName.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed } from \"vue\";\r\nimport { useRoute } from \"vue-router\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { useKeepAliveStore } from \"@ditari/store\";\r\n\r\nconst keepAliveStore = useKeepAliveStore();\r\n\r\nconst { get } = storeToRefs(keepAliveStore);\r\nconst keepAliveNames = computed<string[]>(() => get.value);\r\n\r\nconst route = useRoute();\r\n</script>\r\n\r\n<template>\r\n <router-view v-slot=\"{ Component }\">\r\n <transition name=\"main\" mode=\"out-in\" appear>\r\n <keep-alive :include=\"keepAliveNames\">\r\n <component :is=\"Component\" :key=\"route.path\" />\r\n </keep-alive>\r\n </transition>\r\n </router-view>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["_createBlock","_withCtx","_createVNode","_Transition","_KeepAlive","_openBlock","_resolveDynamicComponent","_unref"],"mappings":";;;;;;;;;AAOA,IAAA,MAAM,iBAAiB,iBAAA,EAAkB;AAEzC,IAAA,MAAM,EAAE,GAAA,EAAI,GAAI,WAAA,CAAY,cAAc,CAAA;AAC1C,IAAA,MAAM,cAAA,GAAiB,QAAA,CAAmB,MAAM,GAAA,CAAI,KAAK,CAAA;AAEzD,IAAA,MAAM,QAAQ,QAAA,EAAS;;;0BAIrBA,WAAA,CAMc,sBAAA,EAAA,IAAA,EAAA;AAAA,QALZ,OAAA,EAAAC,OAAA,CAAA,CAIa,EALQ,WAAS,KAAA;AAAA,UAC9BC,WAAA;AAAA,YAIaC,UAAA;AAAA,YAAA;AAAA,cAJD,IAAA,EAAK,MAAA;AAAA,cAAO,IAAA,EAAK,QAAA;AAAA,cAAS,MAAA,EAAA;AAAA;;+BACpC,MAEa;AAAA,8BAFbH,WAAA,CAEaI,SAAA,EAAA,EAFA,OAAA,EAAS,cAAA,CAAA,OAAc,EAAA;AAAA,mBAClCC,SAAA,EAAA,EAAAL,WAAA,CAA+CM,uBAAA,CAA/B,SAAS,CAAA,EAAA;AAAA,oBAAG,GAAA,EAAKC,KAAA,CAAA,KAAA,CAAA,CAAM;AAAA;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"RouterContentName.vue2.mjs","sources":["../../../../../../src/components/layout/components/layout/RouterContentName.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { computed } from \"vue\";\r\nimport { useRoute } from \"vue-router\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport { useKeepAliveStore } from \"@ditari/store\";\r\n\r\nconst keepAliveStore = useKeepAliveStore();\r\n\r\nconst { get } = storeToRefs(keepAliveStore);\r\nconst keepAliveNames = computed<string[]>(() => get.value);\r\n\r\nconst route = useRoute();\r\n</script>\r\n\r\n<template>\r\n <div>name</div>\r\n <router-view v-slot=\"{ Component }\">\r\n <transition name=\"main\" mode=\"out-in\" appear>\r\n <keep-alive :include=\"keepAliveNames\">\r\n <component :is=\"Component\" :key=\"route.fullPath\" />\r\n </keep-alive>\r\n </transition>\r\n </router-view>\r\n</template>\r\n\r\n<style scoped></style>\r\n"],"names":["_createElementVNode","_createVNode","_withCtx","_Transition","_createBlock","_KeepAlive","_openBlock","_resolveDynamicComponent","_unref"],"mappings":";;;;;;;;;AAOA,IAAA,MAAM,iBAAiB,iBAAA,EAAkB;AAEzC,IAAA,MAAM,EAAE,GAAA,EAAI,GAAI,WAAA,CAAY,cAAc,CAAA;AAC1C,IAAA,MAAM,cAAA,GAAiB,QAAA,CAAmB,MAAM,GAAA,CAAI,KAAK,CAAA;AAEzD,IAAA,MAAM,QAAQ,QAAA,EAAS;;;;;;;UAIrB,MAAA,CAAA,CAAA,CAAA,KAAA,MAAA,CAAA,CAAA,CAAA,GAAAA,kBAAA;AAAA,YAAe,KAAA;AAAA;YAAV,MAAA;AAAA,YAAI,CAAA;AAAA;AAAA,WAAA,CAAA;AAAA,UACTC,WAAA,CAMc,wBAAA,IAAA,EAAA;AAAA,YALZ,OAAA,EAAAC,OAAA,CAAA,CAIa,EALQ,WAAS,KAAA;AAAA,cAC9BD,WAAA;AAAA,gBAIaE,UAAA;AAAA,gBAAA;AAAA,kBAJD,IAAA,EAAK,MAAA;AAAA,kBAAO,IAAA,EAAK,QAAA;AAAA,kBAAS,MAAA,EAAA;AAAA;;mCACpC,MAEa;AAAA,kCAFbC,WAAA,CAEaC,SAAA,EAAA,EAFA,OAAA,EAAS,cAAA,CAAA,OAAc,EAAA;AAAA,uBAClCC,SAAA,EAAA,EAAAF,WAAA,CAAmDG,uBAAA,CAAnC,SAAS,CAAA,EAAA;AAAA,wBAAG,GAAA,EAAKC,KAAA,CAAA,KAAA,CAAA,CAAM;AAAA;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -126,18 +126,12 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
126
126
  );
127
127
  const store = useNavTabStore();
128
128
  const router = useRouter();
129
- const onContextMenuClick2 = ({ key }, targetKey) => {
129
+ const onContextMenuClick2 = ({ key }, item) => {
130
130
  var _a, _b, _c, _d;
131
+ const targetKey = item.fullPath;
131
132
  switch (key) {
132
133
  case "reload":
133
- if (targetKey !== activeKey.value) {
134
- router.push(targetKey).then(() => {
135
- var _a2;
136
- return (_a2 = appContext == null ? void 0 : appContext.onReloadPage) == null ? void 0 : _a2.call(appContext);
137
- });
138
- } else {
139
- (_a = appContext == null ? void 0 : appContext.onReloadPage) == null ? void 0 : _a.call(appContext);
140
- }
134
+ (_a = appContext == null ? void 0 : appContext.onReloadPage) == null ? void 0 : _a.call(appContext, item);
141
135
  break;
142
136
  case "other":
143
137
  (_b = store.closeOtherTabs) == null ? void 0 : _b.call(store, targetKey);
@@ -225,7 +219,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
225
219
  {
226
220
  overlay: withCtx(() => [
227
221
  createVNode(_component_a_menu, {
228
- onClick: (e) => unref(onContextMenuClick)(e, item.fullPath)
222
+ onClick: (e) => unref(onContextMenuClick)(e, item)
229
223
  }, {
230
224
  default: withCtx(() => [
231
225
  createVNode(_component_a_menu_item, { key: "reload" }, {
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.vue2.mjs","sources":["../../../../src/components/tab/Tab.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport {\r\n computed,\r\n type ComputedRef,\r\n inject,\r\n watch\r\n} from \"vue\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport {\r\n AppContext,\r\n AppContextKey\r\n} from \"../layout/AppContext\";\r\nimport Search from \"./Search\";\r\nimport {\r\n CloseOutlined,\r\n ReloadOutlined\r\n} from \"@ant-design/icons-vue\";\r\nimport {\r\n type NavTabsState,\r\n useNavTabStore\r\n} from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nconst { tabsNavStyle, tabHoverBgStyle, closeBtnStyle } =\r\n useStyle();\r\n\r\nconst {\r\n activeKey,\r\n list,\r\n closeBtnStatus,\r\n onChange,\r\n onClose\r\n} = useTab();\r\n\r\nconst { enableTabContextMenu, onContextMenuClick } =\r\n useTabsContextMenu();\r\n\r\nfunction useStyle(): {\r\n tabsNavStyle: ComputedRef<string>;\r\n tabHoverBgStyle: ComputedRef<string>;\r\n closeBtnStyle: ComputedRef<string>;\r\n} {\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } =\r\n useToken();\r\n\r\n const activeTabColor = computed(\r\n () => token.value.colorBgLayout\r\n );\r\n const splitColor = computed(\r\n () => token.value.colorBorderSecondary\r\n );\r\n\r\n const tabsNavStyle = computed(() => {\r\n return css`\r\n --active-tab-color: ${activeTabColor.value};\r\n --splitColor: ${splitColor.value};\r\n padding-top: 10px;\r\n display: flex;\r\n `;\r\n });\r\n\r\n const tabHoverBgStyle = computed(() => {\r\n return css`\r\n &:before {\r\n background: ${token.value.colorPrimaryBgHover};\r\n }\r\n `;\r\n });\r\n\r\n const closeBtnStyle = computed(() => {\r\n return css`\r\n &:hover {\r\n background: ${token.value.colorPrimaryBorderHover};\r\n border-radius: 50%;\r\n }\r\n `;\r\n });\r\n\r\n return {\r\n tabsNavStyle,\r\n tabHoverBgStyle,\r\n closeBtnStyle\r\n };\r\n}\r\n\r\nfunction useTab() {\r\n const route = useRoute();\r\n const router = useRouter();\r\n\r\n const store = useNavTabStore();\r\n const { list, activeKey } = storeToRefs(store);\r\n const { save, deleteTabs } = store;\r\n\r\n watch(\r\n () => route.fullPath,\r\n val => {\r\n save(route);\r\n activeKey.value = val;\r\n },\r\n {\r\n immediate: true\r\n }\r\n );\r\n\r\n const onChange = (key: string) => {\r\n if (key !== route.path) {\r\n // 匹配打开的标签路由数据\r\n const rs = list.value.filter(\r\n item => item.fullPath === key\r\n )[0];\r\n router.push(rs);\r\n }\r\n };\r\n\r\n const onClose = (\r\n $event: Event,\r\n key: string | undefined\r\n ) => {\r\n if (!key) return;\r\n //阻止冒泡\r\n $event.stopPropagation();\r\n // 删除标签\r\n deleteTabs(key);\r\n // 重新push已打开的路由\r\n const backRoute = list.value[list.value.length - 1];\r\n if (backRoute.fullPath) {\r\n router.push(backRoute.fullPath);\r\n }\r\n };\r\n\r\n const closeBtnStatus = (item: NavTabsState) => {\r\n // 如果meta有设置keepOpen则隐藏关闭按钮\r\n if (item.meta?.keepOpen) {\r\n return false;\r\n } else {\r\n // 如果只有一个标签,则隐藏关闭按钮\r\n return list.value.length !== 1;\r\n }\r\n };\r\n\r\n return {\r\n activeKey,\r\n list,\r\n closeBtnStatus,\r\n onChange,\r\n onClose\r\n };\r\n}\r\n\r\nfunction useTabsContextMenu() {\r\n const appContext = inject<AppContext | null>(\r\n AppContextKey,\r\n null\r\n );\r\n const store = useNavTabStore();\r\n const router = useRouter();\r\n\r\n const onContextMenuClick = (\r\n { key }: { key: string },\r\n targetKey: string\r\n ) => {\r\n switch (key) {\r\n case \"reload\":\r\n // 如果点击的不是当前激活页,先跳转再刷新\r\n if (targetKey !== activeKey.value) {\r\n router\r\n .push(targetKey)\r\n .then(() => appContext?.onReloadPage?.());\r\n } else {\r\n appContext?.onReloadPage?.();\r\n }\r\n break;\r\n case \"other\":\r\n store.closeOtherTabs?.(targetKey);\r\n router.push(targetKey);\r\n break;\r\n case \"left\":\r\n store.closeLeftTabs?.(targetKey);\r\n router.push(targetKey);\r\n break;\r\n case \"right\":\r\n store.closeRightTabs?.(targetKey);\r\n router.push(targetKey);\r\n break;\r\n }\r\n };\r\n\r\n return {\r\n enableTabContextMenu:\r\n appContext?.enableTabContextMenu || false,\r\n onContextMenuClick\r\n };\r\n}\r\n</script>\r\n<template>\r\n <div class=\"tabs-nav-wrapper\" :class=\"tabsNavStyle\">\r\n <Search />\r\n <div class=\"d-tabs-nav\">\r\n <a-tabs\r\n size=\"small\"\r\n v-model:activeKey=\"activeKey\"\r\n type=\"card\"\r\n hide-add\r\n @change=\"onChange\"\r\n >\r\n <a-tab-pane\r\n :key=\"item.fullPath\"\r\n :closable=\"false\"\r\n v-for=\"item in list\"\r\n :class=\"{ active: activeKey === item.fullPath }\"\r\n >\r\n <template #tab>\r\n <div\r\n class=\"tab-hover-bg\"\r\n :class=\"tabHoverBgStyle\"\r\n ></div>\r\n <div class=\"tab-dividers\"></div>\r\n <div\r\n class=\"tab-item\"\r\n v-if=\"!enableTabContextMenu\"\r\n >\r\n {{ item.meta?.title || \"无标题\" }}\r\n </div>\r\n <a-dropdown\r\n :trigger=\"['contextmenu']\"\r\n v-if=\"enableTabContextMenu\"\r\n >\r\n <div class=\"tab-item\">\r\n {{ item.meta?.title || \"无标题\" }}\r\n </div>\r\n <template #overlay>\r\n <a-menu\r\n @click=\"\r\n e =>\r\n onContextMenuClick(e, item.fullPath)\r\n \"\r\n >\r\n <a-menu-item key=\"reload\">\r\n <ReloadOutlined />\r\n 重新加载\r\n </a-menu-item>\r\n <a-menu-item key=\"other\">\r\n <CloseOutlined />\r\n 关闭其他\r\n </a-menu-item>\r\n <a-menu-item key=\"right\"\r\n >关闭右侧标签\r\n </a-menu-item>\r\n <a-menu-item key=\"left\"\r\n >关闭左侧标签\r\n </a-menu-item>\r\n </a-menu>\r\n </template>\r\n </a-dropdown>\r\n\r\n <div\r\n class=\"tab-close\"\r\n v-if=\"closeBtnStatus(item)\"\r\n >\r\n <div\r\n class=\"close-btn\"\r\n :class=\"closeBtnStyle\"\r\n @click=\"onClose($event, item.fullPath)\"\r\n >\r\n <CloseOutlined />\r\n </div>\r\n </div>\r\n </template>\r\n </a-tab-pane>\r\n </a-tabs>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<style lang=\"scss\"></style>\r\n"],"names":["tabsNavStyle","tabHoverBgStyle","closeBtnStyle","list","activeKey","onChange","onClose","closeBtnStatus","onContextMenuClick","_a","_createElementBlock","_normalizeClass","_unref","_createVNode","_createElementVNode","_Fragment","_renderList","_createBlock","_openBlock","_toDisplayString"],"mappings":"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"}
1
+ {"version":3,"file":"Tab.vue2.mjs","sources":["../../../../src/components/tab/Tab.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport {\r\n computed,\r\n type ComputedRef,\r\n inject,\r\n watch\r\n} from \"vue\";\r\nimport { useRoute, useRouter } from \"vue-router\";\r\nimport { theme } from \"ant-design-vue\";\r\nimport { storeToRefs } from \"pinia\";\r\n\r\nimport {\r\n AppContext,\r\n AppContextKey\r\n} from \"../layout/AppContext\";\r\nimport Search from \"./Search\";\r\nimport {\r\n CloseOutlined,\r\n ReloadOutlined\r\n} from \"@ant-design/icons-vue\";\r\nimport {\r\n type NavTabsState,\r\n useNavTabStore\r\n} from \"@ditari/store\";\r\nimport { css } from \"@emotion/css\";\r\nimport type { GlobalToken } from \"ant-design-vue/es/theme/interface\";\r\n\r\nconst { tabsNavStyle, tabHoverBgStyle, closeBtnStyle } =\r\n useStyle();\r\n\r\nconst {\r\n activeKey,\r\n list,\r\n closeBtnStatus,\r\n onChange,\r\n onClose\r\n} = useTab();\r\n\r\nconst { enableTabContextMenu, onContextMenuClick } =\r\n useTabsContextMenu();\r\n\r\nfunction useStyle(): {\r\n tabsNavStyle: ComputedRef<string>;\r\n tabHoverBgStyle: ComputedRef<string>;\r\n closeBtnStyle: ComputedRef<string>;\r\n} {\r\n const { useToken } = theme;\r\n const { token }: { token: ComputedRef<GlobalToken> } =\r\n useToken();\r\n\r\n const activeTabColor = computed(\r\n () => token.value.colorBgLayout\r\n );\r\n const splitColor = computed(\r\n () => token.value.colorBorderSecondary\r\n );\r\n\r\n const tabsNavStyle = computed(() => {\r\n return css`\r\n --active-tab-color: ${activeTabColor.value};\r\n --splitColor: ${splitColor.value};\r\n padding-top: 10px;\r\n display: flex;\r\n `;\r\n });\r\n\r\n const tabHoverBgStyle = computed(() => {\r\n return css`\r\n &:before {\r\n background: ${token.value.colorPrimaryBgHover};\r\n }\r\n `;\r\n });\r\n\r\n const closeBtnStyle = computed(() => {\r\n return css`\r\n &:hover {\r\n background: ${token.value.colorPrimaryBorderHover};\r\n border-radius: 50%;\r\n }\r\n `;\r\n });\r\n\r\n return {\r\n tabsNavStyle,\r\n tabHoverBgStyle,\r\n closeBtnStyle\r\n };\r\n}\r\n\r\nfunction useTab() {\r\n const route = useRoute();\r\n const router = useRouter();\r\n\r\n const store = useNavTabStore();\r\n const { list, activeKey } = storeToRefs(store);\r\n const { save, deleteTabs } = store;\r\n\r\n watch(\r\n () => route.fullPath,\r\n val => {\r\n save(route);\r\n activeKey.value = val;\r\n },\r\n {\r\n immediate: true\r\n }\r\n );\r\n\r\n const onChange = (key: string) => {\r\n if (key !== route.path) {\r\n // 匹配打开的标签路由数据\r\n const rs = list.value.filter(\r\n item => item.fullPath === key\r\n )[0];\r\n router.push(rs);\r\n }\r\n };\r\n\r\n const onClose = (\r\n $event: Event,\r\n key: string | undefined\r\n ) => {\r\n if (!key) return;\r\n //阻止冒泡\r\n $event.stopPropagation();\r\n // 删除标签\r\n deleteTabs(key);\r\n // 重新push已打开的路由\r\n const backRoute = list.value[list.value.length - 1];\r\n if (backRoute.fullPath) {\r\n router.push(backRoute.fullPath);\r\n }\r\n };\r\n\r\n const closeBtnStatus = (item: NavTabsState) => {\r\n // 如果meta有设置keepOpen则隐藏关闭按钮\r\n if (item.meta?.keepOpen) {\r\n return false;\r\n } else {\r\n // 如果只有一个标签,则隐藏关闭按钮\r\n return list.value.length !== 1;\r\n }\r\n };\r\n\r\n return {\r\n activeKey,\r\n list,\r\n closeBtnStatus,\r\n onChange,\r\n onClose\r\n };\r\n}\r\n\r\nfunction useTabsContextMenu() {\r\n const appContext = inject<AppContext | null>(\r\n AppContextKey,\r\n null\r\n );\r\n const store = useNavTabStore();\r\n const router = useRouter();\r\n\r\n const onContextMenuClick = (\r\n { key }: { key: string },\r\n item: any\r\n ) => {\r\n const targetKey = item.fullPath;\r\n switch (key) {\r\n case \"reload\":\r\n appContext?.onReloadPage?.(item);\r\n break;\r\n case \"other\":\r\n store.closeOtherTabs?.(targetKey);\r\n router.push(targetKey);\r\n break;\r\n case \"left\":\r\n store.closeLeftTabs?.(targetKey);\r\n router.push(targetKey);\r\n break;\r\n case \"right\":\r\n store.closeRightTabs?.(targetKey);\r\n router.push(targetKey);\r\n break;\r\n }\r\n };\r\n\r\n return {\r\n enableTabContextMenu:\r\n appContext?.enableTabContextMenu || false,\r\n onContextMenuClick\r\n };\r\n}\r\n</script>\r\n<template>\r\n <div class=\"tabs-nav-wrapper\" :class=\"tabsNavStyle\">\r\n <Search />\r\n <div class=\"d-tabs-nav\">\r\n <a-tabs\r\n size=\"small\"\r\n v-model:activeKey=\"activeKey\"\r\n type=\"card\"\r\n hide-add\r\n @change=\"onChange\"\r\n >\r\n <a-tab-pane\r\n :key=\"item.fullPath\"\r\n :closable=\"false\"\r\n v-for=\"item in list\"\r\n :class=\"{ active: activeKey === item.fullPath }\"\r\n >\r\n <template #tab>\r\n <div\r\n class=\"tab-hover-bg\"\r\n :class=\"tabHoverBgStyle\"\r\n ></div>\r\n <div class=\"tab-dividers\"></div>\r\n <div\r\n class=\"tab-item\"\r\n v-if=\"!enableTabContextMenu\"\r\n >\r\n {{ item.meta?.title || \"无标题\" }}\r\n </div>\r\n <a-dropdown\r\n :trigger=\"['contextmenu']\"\r\n v-if=\"enableTabContextMenu\"\r\n >\r\n <div class=\"tab-item\">\r\n {{ item.meta?.title || \"无标题\" }}\r\n </div>\r\n <template #overlay>\r\n <a-menu\r\n @click=\"e => onContextMenuClick(e, item)\"\r\n >\r\n <a-menu-item key=\"reload\">\r\n <ReloadOutlined />\r\n 重新加载\r\n </a-menu-item>\r\n <a-menu-item key=\"other\">\r\n <CloseOutlined />\r\n 关闭其他\r\n </a-menu-item>\r\n <a-menu-item key=\"right\"\r\n >关闭右侧标签\r\n </a-menu-item>\r\n <a-menu-item key=\"left\"\r\n >关闭左侧标签\r\n </a-menu-item>\r\n </a-menu>\r\n </template>\r\n </a-dropdown>\r\n\r\n <div\r\n class=\"tab-close\"\r\n v-if=\"closeBtnStatus(item)\"\r\n >\r\n <div\r\n class=\"close-btn\"\r\n :class=\"closeBtnStyle\"\r\n @click=\"onClose($event, item.fullPath)\"\r\n >\r\n <CloseOutlined />\r\n </div>\r\n </div>\r\n </template>\r\n </a-tab-pane>\r\n </a-tabs>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<style lang=\"scss\"></style>\r\n"],"names":["tabsNavStyle","tabHoverBgStyle","closeBtnStyle","list","activeKey","onChange","onClose","closeBtnStatus","onContextMenuClick","_createElementBlock","_normalizeClass","_unref","_createVNode","_createElementVNode","_Fragment","_renderList","_createBlock","_openBlock","_toDisplayString","_a"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/card/Card.tsx"],"names":[],"mappings":"AAiDA,eAAO,MAAM,IAAI;;;;kGAAqB,CAAC"}
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/card/Card.tsx"],"names":[],"mappings":"AA6DA,eAAO,MAAM,IAAI;;;;kGAAqB,CAAC"}
@@ -8,7 +8,9 @@ export interface AppContext {
8
8
  icon: string;
9
9
  }) => VNode | VNode[];
10
10
  keepAliveMode: "Name" | "Path";
11
- onReloadPage?: () => void;
11
+ onReloadPage?: (item: {
12
+ [key: string]: unknown;
13
+ }) => void;
12
14
  enableTabContextMenu?: boolean;
13
15
  }
14
16
  //# sourceMappingURL=AppContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AppContext.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/AppContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC;AAEzC,eAAO,MAAM,aAAa,eAA2B,CAAC;AACtD,MAAM,WAAW,UAAU;IAEzB,gBAAgB,CAAC,EAAE,WAAW,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QACtB,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,KAAK,GAAG,KAAK,EAAE,CAAC;IAEtB,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;IAE/B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAE1B,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC"}
1
+ {"version":3,"file":"AppContext.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/AppContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC;AAEzC,eAAO,MAAM,aAAa,eAA2B,CAAC;AACtD,MAAM,WAAW,UAAU;IAEzB,gBAAgB,CAAC,EAAE,WAAW,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QACtB,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,KAAK,GAAG,KAAK,EAAE,CAAC;IAEtB,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;IAE/B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IAE1D,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC"}
@@ -21,10 +21,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
21
21
  required: false;
22
22
  default: string;
23
23
  };
24
- onReloadPage: {
25
- type: FunctionConstructor;
26
- required: false;
27
- };
28
24
  enableTabContextMenu: {
29
25
  type: BooleanConstructor;
30
26
  required: false;
@@ -47,10 +43,20 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
47
43
  modeConfig: import("vue").Ref<import("@ditari/store/dist/types/modules/useAppStore").Mode, import("@ditari/store/dist/types/modules/useAppStore").Mode>;
48
44
  sideTokenStyle: import("vue").Ref<Record<string, string>, Record<string, string>>;
49
45
  onMenuClick: (item: never) => void;
46
+ routerContentRef: import("vue").Ref<any, any>;
47
+ onReloadPage: (item: {
48
+ [key: string]: unknown;
49
+ }) => void;
50
50
  layoutStyle: string;
51
51
  siderStyle: import("vue").ComputedRef<string>;
52
52
  rightStyle: import("vue").ComputedRef<string>;
53
53
  rightContentStyle: import("vue").ComputedRef<string>;
54
+ useReloadPage: () => {
55
+ routerContentRef: import("vue").Ref<any, any>;
56
+ onReloadPage: (item: {
57
+ [key: string]: unknown;
58
+ }) => void;
59
+ };
54
60
  useKeepAlive: () => void;
55
61
  useStyle: () => {
56
62
  layoutStyle: string;
@@ -177,7 +183,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
177
183
  enableTabContextMenu: boolean;
178
184
  onContextMenuClick: ({ key }: {
179
185
  key: string;
180
- }, targetKey: string) => void;
186
+ }, item: any) => void;
181
187
  useStyle: () => {
182
188
  tabsNavStyle: import("vue").ComputedRef<string>;
183
189
  tabHoverBgStyle: import("vue").ComputedRef<string>;
@@ -194,7 +200,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
194
200
  enableTabContextMenu: boolean;
195
201
  onContextMenuClick: ({ key }: {
196
202
  key: string;
197
- }, targetKey: string) => void;
203
+ }, item: any) => void;
198
204
  };
199
205
  readonly Search: import("vue").DefineComponent<{}, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
200
206
  readonly CloseOutlined: import("@ant-design/icons-vue/lib/icons/CloseOutlined").CloseOutlinedIconType;
@@ -203,27 +209,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
203
209
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
204
210
  RouterContent: import("vue").DefineComponent<{}, {
205
211
  list: import("vue").Ref<import("@ditari/store").NavTabsState[], import("@ditari/store").NavTabsState[]>;
206
- route: import("vue-router").RouteLocationNormalizedLoadedGeneric;
207
- cachedViews: import("vue").ComputedRef<string[]>;
212
+ toPascalCase: (str: string) => string;
213
+ refreshingPath: import("vue").Ref<string | null, string | null>;
208
214
  wrapperMap: Map<any, any>;
215
+ cachedViews: import("vue").ComputedRef<string[]>;
209
216
  getWrapper: (Component: any, route: any) => any;
210
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
211
- RouterContentName: import("vue").DefineComponent<{}, {
212
- keepAliveStore: import("pinia").Store<"_STORE_KEEP_ALIVE_ID", {
213
- list: string[];
214
- }, {
215
- get: (state: {
216
- list: string[];
217
- } & import("pinia").PiniaCustomStateProperties<{
218
- list: string[];
219
- }>) => string[];
220
- }, {
221
- deleteKeepAlive(name: string): void;
222
- save(route: import("vue-router").RouteLocationNormalized): void;
223
- }>;
224
- get: import("vue").ComputedRef<string[]>;
225
- keepAliveNames: import("vue").ComputedRef<string[]>;
226
- route: import("vue-router").RouteLocationNormalizedLoadedGeneric;
217
+ reloadPage: (fullPath: string) => Promise<void>;
227
218
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
228
219
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "onMenuClick"[], "onMenuClick", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
229
220
  watermark: {
@@ -248,10 +239,6 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
248
239
  required: false;
249
240
  default: string;
250
241
  };
251
- onReloadPage: {
252
- type: FunctionConstructor;
253
- required: false;
254
- };
255
242
  enableTabContextMenu: {
256
243
  type: BooleanConstructor;
257
244
  required: false;
@@ -1 +1 @@
1
- {"version":3,"file":"Layout.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Layout.vue.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAqI6B,KAAK;;;;;;;;;;;;;4BAAL,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA/HhC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaT,wBAgIE"}
1
+ {"version":3,"file":"Layout.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Layout.vue.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAgJ6B,KAAK;;yBApFJ;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE;;;;;;;6BAA1B;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE;;;;;;;;;;4BAoF3B,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA9HlC,wBA4IE"}
@@ -1 +1 @@
1
- {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/List.tsx"],"names":[],"mappings":"AAiCA,QAAA,MAAM,IAAI;;iFAoPR,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/List.tsx"],"names":[],"mappings":"AAiCA,QAAA,MAAM,IAAI;;iFAqPR,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -3,12 +3,21 @@ declare const show: import("vue").DefineComponent<import("vue").ExtractPropTypes
3
3
  type: BooleanConstructor;
4
4
  default: boolean;
5
5
  };
6
+ loading: {
7
+ type: BooleanConstructor;
8
+ default: boolean;
9
+ };
6
10
  }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
7
11
  close: {
8
12
  type: BooleanConstructor;
9
13
  default: boolean;
10
14
  };
15
+ loading: {
16
+ type: BooleanConstructor;
17
+ default: boolean;
18
+ };
11
19
  }>> & Readonly<{}>, {
20
+ loading: boolean;
12
21
  close: boolean;
13
22
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
14
23
  export default show;
@@ -1 +1 @@
1
- {"version":3,"file":"Show.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Show.tsx"],"names":[],"mappings":"AA+BA,QAAA,MAAM,IAAI;;;;;;;;;;;;4EA+IR,CAAC;AAEH,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"Show.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/Show.tsx"],"names":[],"mappings":"AAoCA,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;4EAuJR,CAAC;AAEH,eAAe,IAAI,CAAC"}
@@ -65,7 +65,7 @@ declare const _default: import("vue").DefineComponent<{}, {
65
65
  enableTabContextMenu: boolean;
66
66
  onContextMenuClick: ({ key }: {
67
67
  key: string;
68
- }, targetKey: string) => void;
68
+ }, item: any) => void;
69
69
  useStyle: () => {
70
70
  tabsNavStyle: ComputedRef<string>;
71
71
  tabHoverBgStyle: ComputedRef<string>;
@@ -82,7 +82,7 @@ declare const _default: import("vue").DefineComponent<{}, {
82
82
  enableTabContextMenu: boolean;
83
83
  onContextMenuClick: ({ key }: {
84
84
  key: string;
85
- }, targetKey: string) => void;
85
+ }, item: any) => void;
86
86
  };
87
87
  readonly Search: import("vue").DefineComponent<{}, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
88
88
  readonly CloseOutlined: import("@ant-design/icons-vue/lib/icons/CloseOutlined").CloseOutlinedIconType;
@@ -1,9 +1,11 @@
1
1
  declare const _default: import("vue").DefineComponent<{}, {
2
2
  list: import("vue").Ref<import("@ditari/store").NavTabsState[], import("@ditari/store").NavTabsState[]>;
3
- route: import("vue-router").RouteLocationNormalizedLoadedGeneric;
4
- cachedViews: import("vue").ComputedRef<string[]>;
3
+ toPascalCase: (str: string) => string;
4
+ refreshingPath: import("vue").Ref<string | null, string | null>;
5
5
  wrapperMap: Map<any, any>;
6
+ cachedViews: import("vue").ComputedRef<string[]>;
6
7
  getWrapper: (Component: any, route: any) => any;
8
+ reloadPage: (fullPath: string) => Promise<void>;
7
9
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
8
10
  export default _default;
9
11
  //# sourceMappingURL=RouterContent.vue.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RouterContent.vue.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/components/layout/RouterContent.vue.ts"],"names":[],"mappings":";;;;;4BA2B+B,GAAG,SAAS,GAAG;;AAnB9C,wBAyDE"}
1
+ {"version":3,"file":"RouterContent.vue.d.ts","sourceRoot":"","sources":["../../../../../../src/components/layout/components/layout/RouterContent.vue.ts"],"names":[],"mappings":";;wBAsB2B,MAAM;;;;4BA6CF,GAAG,SAAS,GAAG;2BA6BV,MAAM;;AAlF1C,wBA0HE"}
@@ -12,7 +12,7 @@ declare const _default: import("vue").DefineComponent<{}, {
12
12
  enableTabContextMenu: boolean;
13
13
  onContextMenuClick: ({ key }: {
14
14
  key: string;
15
- }, targetKey: string) => void;
15
+ }, item: any) => void;
16
16
  useStyle: () => {
17
17
  tabsNavStyle: ComputedRef<string>;
18
18
  tabHoverBgStyle: ComputedRef<string>;
@@ -29,7 +29,7 @@ declare const _default: import("vue").DefineComponent<{}, {
29
29
  enableTabContextMenu: boolean;
30
30
  onContextMenuClick: ({ key }: {
31
31
  key: string;
32
- }, targetKey: string) => void;
32
+ }, item: any) => void;
33
33
  };
34
34
  readonly Search: import("vue").DefineComponent<{}, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
35
35
  readonly CloseOutlined: import("@ant-design/icons-vue/lib/icons/CloseOutlined").CloseOutlinedIconType;
@@ -1 +1 @@
1
- {"version":3,"file":"Tab.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tab/Tab.vue.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,WAAW,EAGjB,MAAM,KAAK,CAAC;AAcb,OAAO,EACL,KAAK,YAAY,EAElB,MAAM,eAAe,CAAC;;;;;;;2BAqHS,YAAY;oBA1BnB,MAAM;sBAWnB,KAAK,OACR,MAAM,GAAG,SAAS;;kCA0Cd;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,aACb,MAAM;oBA3HA;QACnB,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAClC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QACrC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;KACpC;;;;+BA0F+B,YAAY;wBA1BnB,MAAM;0BAWnB,KAAK,OACR,MAAM,GAAG,SAAS;;;;sCA0Cd;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,aACb,MAAM;;;;;;AA7IrB,wBAqLE"}
1
+ {"version":3,"file":"Tab.vue.d.ts","sourceRoot":"","sources":["../../../../src/components/tab/Tab.vue.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,WAAW,EAGjB,MAAM,KAAK,CAAC;AAcb,OAAO,EACL,KAAK,YAAY,EAElB,MAAM,eAAe,CAAC;;;;;;;2BAqHS,YAAY;oBA1BnB,MAAM;sBAWnB,KAAK,OACR,MAAM,GAAG,SAAS;;kCA0Cd;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,QAClB,GAAG;oBA3HQ;QACnB,YAAY,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAClC,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QACrC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;KACpC;;;;+BA0F+B,YAAY;wBA1BnB,MAAM;0BAWnB,KAAK,OACR,MAAM,GAAG,SAAS;;;;sCA0Cd;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,QAClB,GAAG;;;;;;AA7Ib,wBA+KE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ditari/bsui",
3
- "version": "5.1.2",
3
+ "version": "5.1.3",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -29,7 +29,7 @@
29
29
  "./theme/*": "./dist/style/*"
30
30
  },
31
31
  "dependencies": {
32
- "@ditari/core": "^5.1.0",
33
- "@ditari/store": "^5.1.1"
32
+ "@ditari/store": "^5.1.1",
33
+ "@ditari/core": "^5.1.0"
34
34
  }
35
35
  }