@vc-shell/framework 1.0.150 → 1.0.152

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.
@@ -1 +1 @@
1
- {"version":3,"file":"vc-blade-navigation.vue.d.ts","sourceRoot":"","sources":["../../../../../../shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.ts"],"names":[],"mappings":";AAiJA,wBAKG"}
1
+ {"version":3,"file":"vc-blade-navigation.vue.d.ts","sourceRoot":"","sources":["../../../../../../shared/components/blade-navigation/components/vc-blade-navigation/vc-blade-navigation.vue.ts"],"names":[],"mappings":";AA2HA,wBAKG"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../shared/components/blade-navigation/composables/useBladeNavigation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,SAAS,EAKT,WAAW,EACZ,MAAM,KAAK,CAAC;AAIb,OAAO,EAAE,uBAAuB,EAAY,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElF,OAAO,EAGL,UAAU,EACV,WAAW,EACX,eAAe,EACf,wBAAwB,EAEzB,MAAM,aAAa,CAAC;AAIrB,OAAO,gCAAgC,CAAC;AACxC,OAAO,sCAAsC,CAAC;AAG9C,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3C,QAAQ,CAAC,0BAA0B,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IACpF,SAAS,EAAE,CAAC,KAAK,SAAS,SAAS,EACjC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,KAAK,CAAC,EAC9D,WAAW,CAAC,EAAE,OAAO,KAClB,OAAO,CAAC,IAAI,GAAG,iBAAiB,CAAC,CAAC;IACvC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,YAAY,EAAE,CAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACzF,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,IAAI,CAAC;IAChE,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,wBAAwB,CAAC;IAC/D,aAAa,EAAE,CAAC,EAAE,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,GAAG,iBAAiB,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IAC1G,eAAe,EAAE,MAAM,UAAU,CAAC;CACnC;AAkJD,wBAAgB,kBAAkB,IAAI,mBAAmB,CA+NxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../shared/components/blade-navigation/composables/useBladeNavigation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,SAAS,EAKT,WAAW,EACZ,MAAM,KAAK,CAAC;AAIb,OAAO,EAAE,uBAAuB,EAAY,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAElF,OAAO,EAGL,UAAU,EACV,WAAW,EACX,eAAe,EACf,wBAAwB,EAEzB,MAAM,aAAa,CAAC;AAIrB,OAAO,gCAAgC,CAAC;AACxC,OAAO,sCAAsC,CAAC;AAG9C,UAAU,mBAAmB;IAC3B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAC;IAC3C,QAAQ,CAAC,0BAA0B,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IACpF,SAAS,EAAE,CAAC,KAAK,SAAS,SAAS,EACjC,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,KAAK,CAAC,EAC9D,WAAW,CAAC,EAAE,OAAO,KAClB,OAAO,CAAC,IAAI,GAAG,iBAAiB,CAAC,CAAC;IACvC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,YAAY,EAAE,CAAC,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;IACzF,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,KAAK,IAAI,CAAC;IAChE,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,wBAAwB,CAAC;IAC/D,aAAa,EAAE,CAAC,EAAE,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,GAAG,iBAAiB,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IAC1G,eAAe,EAAE,MAAM,UAAU,CAAC;CACnC;AA4JD,wBAAgB,kBAAkB,IAAI,mBAAmB,CA4QxD"}
@@ -17,6 +17,7 @@ export type CoreBladeAdditionalSettings = {
17
17
  routable?: boolean;
18
18
  permissions?: string | string[];
19
19
  isWorkspace?: boolean;
20
+ isBlade?: boolean;
20
21
  name?: string;
21
22
  menuItem?: MenuItemConfig;
22
23
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../shared/components/blade-navigation/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../shared/components/blade-navigation/types/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../../../../shared/components/error-interceptor/interceptor.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,EAAE,MAAM,KAAK,CAAC;AAE7C,MAAM,WAAW,KAAK;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,KAAK;IACpB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE;QACL,OAAO,EAAE,CAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,KAAK,EAAE,MAAM,IAAI,CAAA;SAAE,KAAK,KAAK,EAAE,CAAC;KACzE,CAAC;CACH,CAAC;;;;;;;;;iBAUe,KAAK,GAAG,MAAM;;;;;;;;;;;;;AAR/B,wBAwBG"}
1
+ {"version":3,"file":"interceptor.d.ts","sourceRoot":"","sources":["../../../../shared/components/error-interceptor/interceptor.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,KAAK,EAAE,MAAM,KAAK,CAAC;AAE7C,MAAM,WAAW,KAAK;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,KAAK;IACpB,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE;QACL,OAAO,EAAE,CAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,KAAK,EAAE,MAAM,IAAI,CAAA;SAAE,KAAK,KAAK,EAAE,CAAC;KACzE,CAAC;CACH,CAAC;;;;;;;;;iBAWe,KAAK,GAAG,MAAM;;;;;;;;;;;;;AAT/B,wBAyBG"}
@@ -1 +1 @@
1
- {"version":3,"file":"user-dropdown-button.vue.d.ts","sourceRoot":"","sources":["../../../../shared/components/user-dropdown-button/user-dropdown-button.vue.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAKhD,MAAM,WAAW,KAAK;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;;;;;;;;AAuPD,wBAMG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"user-dropdown-button.vue.d.ts","sourceRoot":"","sources":["../../../../shared/components/user-dropdown-button/user-dropdown-button.vue.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAKhD,MAAM,WAAW,KAAK;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,SAAS,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;;;;;;;;AAkPD,wBAMG;AACH,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,kBAAkB,CAAC,CAAC,EAAE,CAAC,IAAI;KAE1B,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG;QACxE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;KACb,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACT,CAAC;AACN,KAAK,cAAc,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAG,GAAG,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"vc-app.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/organisms/vc-app/vc-app.vue.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoaD,wBAAwG;AACxG,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"vc-app.vue.d.ts","sourceRoot":"","sources":["../../../../../ui/components/organisms/vc-app/vc-app.vue.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2aD,wBAAwG;AACxG,KAAK,sBAAsB,CAAC,CAAC,IAAI,CAAC,SAAS,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;AACjE,KAAK,6BAA6B,CAAC,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAE;CAAE,CAAC;AAC9M,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG;IAAE,QAAO;QAClD,MAAM,EAAE,CAAC,CAAC;KACT,CAAA;CAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vc-shell/framework",
3
- "version": "1.0.150",
3
+ "version": "1.0.152",
4
4
  "type": "module",
5
5
  "main": "./dist/framework.js",
6
6
  "types": "./dist/index.d.ts",
@@ -53,9 +53,9 @@
53
53
  "whatwg-fetch": "^3.6.19"
54
54
  },
55
55
  "devDependencies": {
56
- "@vc-shell/api-client-generator": "^1.0.150",
57
- "@vc-shell/config-generator": "^1.0.150",
58
- "@vc-shell/ts-config": "^1.0.150",
56
+ "@vc-shell/api-client-generator": "^1.0.152",
57
+ "@vc-shell/config-generator": "^1.0.152",
58
+ "@vc-shell/ts-config": "^1.0.152",
59
59
  "@vitejs/plugin-vue": "^5.0.3",
60
60
  "sass": "^1.69.6",
61
61
  "typescript": "^5.3.3",
@@ -1,39 +1,13 @@
1
1
  <template>
2
2
  <div class="tw-w-full tw-overflow-hidden tw-flex tw-grow tw-basis-0 tw-relative">
3
- <ErrorInterceptor
4
- v-for="(bladeVNode, index) in blades"
5
- v-slot="{ error, reset }"
6
- :key="index"
7
- capture
8
- >
9
- <router-view v-show="index >= quantity - ($isMobile.value ? 1 : 2)">
10
- <VcBladeView
11
- v-slot="{ Component }"
12
- :key="bladeVNode.type?.name || `blade_${index}`"
13
- :blade="bladeVNode"
14
- >
15
- <component
16
- :is="Component"
17
- :ref="refs.set"
18
- :error="error"
19
- :closable="index >= 1"
20
- :expandable="quantity > 1"
21
- :expanded="index === quantity - 1"
22
- @close:blade="closeBlade(index)"
23
- @parent:call="onParentCall(refs[index - 1], $event)"
24
- @vue:before-unmount="reset"
25
- >
26
- </component>
27
- </VcBladeView>
28
- </router-view>
29
- </ErrorInterceptor>
3
+ <render></render>
30
4
  </div>
31
5
  </template>
32
6
 
33
7
  <script lang="ts" setup>
34
- import { computed } from "vue";
8
+ import { Ref, computed, inject, withDirectives, h, vShow } from "vue";
35
9
  import { RouterView } from "vue-router";
36
- import { useBladeNavigation } from "./../../../../../shared";
10
+ import { BladeVNode, IParentCallArgs, useBladeNavigation } from "./../../../../../shared";
37
11
  import { ErrorInterceptor } from "./../../../error-interceptor";
38
12
  import { VcBladeView } from "./../vc-blade-view/vc-blade-view";
39
13
  import { useTemplateRefsList } from "@vueuse/core";
@@ -44,5 +18,54 @@ const quantity = computed(() => {
44
18
  return blades.value.length || 0;
45
19
  });
46
20
 
21
+ const isMobile = inject("isMobile") as Ref<boolean>;
22
+
47
23
  const refs = useTemplateRefsList<HTMLDivElement>();
24
+
25
+ const render = () => {
26
+ if (!blades.value.length) {
27
+ return h(RouterView);
28
+ }
29
+ return blades.value.map((bladeVNode, index) => {
30
+ if (bladeVNode.type.isBlade) {
31
+ return h(
32
+ ErrorInterceptor,
33
+ {
34
+ key: index,
35
+ capture: true,
36
+ },
37
+ {
38
+ default: ({ error, reset }: Parameters<InstanceType<typeof ErrorInterceptor>["$slots"]["default"]>["0"]) => {
39
+ return withDirectives(
40
+ h(
41
+ VcBladeView,
42
+ { key: bladeVNode.type?.name || `blade_${index}`, blade: bladeVNode },
43
+ {
44
+ default: ({ Component }: { Component: BladeVNode }) =>
45
+ h(Component, {
46
+ ref: refs.value.set,
47
+ error,
48
+ closable: index >= 1,
49
+ expandable: quantity.value > 1,
50
+ expanded: index === quantity.value - 1,
51
+ "onUpdate:expanded": (value: boolean) => {
52
+ if (value) {
53
+ closeBlade(index + 1);
54
+ }
55
+ },
56
+ "onClose:blade": () => closeBlade(index),
57
+ "onParent:call": (args: IParentCallArgs) => onParentCall(refs.value[index - 1], args),
58
+ "onVue:before-unmount": reset,
59
+ }),
60
+ },
61
+ ),
62
+
63
+ [[vShow, index >= quantity.value - (isMobile.value ? 1 : 2)]],
64
+ );
65
+ },
66
+ },
67
+ );
68
+ }
69
+ });
70
+ };
48
71
  </script>
@@ -48,7 +48,7 @@ interface IUseBladeNavigation {
48
48
  }
49
49
 
50
50
  const activeWorkspace = shallowRef<BladeVNode>();
51
- const baseUrl = shallowRef<string>();
51
+ const mainRouteBaseParamURL = shallowRef<string>();
52
52
 
53
53
  function parseUrl(url: string) {
54
54
  const urlRegex = /^\/([a-zA-Z0-9_-]+)(?:\/([a-zA-Z0-9_-]+))?(?:\/([a-zA-Z0-9_-]+))?$/;
@@ -78,10 +78,12 @@ const useBladeNavigationSingleton = createSharedComposable(() => {
78
78
 
79
79
  function parseWorkspaceUrl(path: string): string {
80
80
  // Object.values(route.params)[0] will always be base path of the app
81
- if (!baseUrl.value) {
82
- baseUrl.value = "/" + (Object.values(route.params)?.[0] ?? "");
81
+ if (!mainRouteBaseParamURL.value) {
82
+ mainRouteBaseParamURL.value = "/" + (Object.values(route.params)?.[0] ?? "");
83
83
  }
84
- const pathWithoutBase = path.startsWith(baseUrl.value) ? path.slice(baseUrl.value.length) : path;
84
+ const pathWithoutBase = path.startsWith(mainRouteBaseParamURL.value)
85
+ ? path.slice(mainRouteBaseParamURL.value.length)
86
+ : path;
85
87
  const segments = pathWithoutBase.split("/").filter(Boolean);
86
88
  const workspaceUrl = segments.slice(0, 1).join("/");
87
89
  return "/" + workspaceUrl;
@@ -97,7 +99,8 @@ const useBladeNavigationSingleton = createSharedComposable(() => {
97
99
  (router.resolve({ path: workspaceUrl })?.matched?.[1]?.components?.default as BladeVNode);
98
100
 
99
101
  if (wsRouteComponent !== undefined) {
100
- if (isVNode(wsRouteComponent)) {
102
+ if (isVNode(wsRouteComponent) && wsRouteComponent.type.isBlade) {
103
+ //&& wsRouteComponent.type.isBlade
101
104
  navigationInstance.blades.value[0] = markRaw(wsRouteComponent);
102
105
  activeWorkspace.value = wsRouteComponent;
103
106
  } else {
@@ -106,7 +109,7 @@ const useBladeNavigationSingleton = createSharedComposable(() => {
106
109
  if (!isPrevented) {
107
110
  // add not blade page to blades array to show simple routes as
108
111
  // we use only one router-view for all routes
109
- navigationInstance.blades.value = [markRaw(wsRouteComponent)];
112
+ navigationInstance.blades.value = [];
110
113
  } else {
111
114
  if (oldVal) router.replace({ path: oldVal });
112
115
  }
@@ -149,7 +152,13 @@ const useBladeNavigationSingleton = createSharedComposable(() => {
149
152
  url = wsBladeUrl;
150
153
  }
151
154
 
152
- if (url) history.replaceState({}, "", "#" + url);
155
+ if (url) {
156
+ router.options.history.replace(
157
+ (mainRouteBaseParamURL.value && !url.startsWith(mainRouteBaseParamURL.value)
158
+ ? mainRouteBaseParamURL.value
159
+ : "") + url,
160
+ );
161
+ }
153
162
  }
154
163
  },
155
164
  { deep: true },
@@ -187,6 +196,7 @@ const useBladeNavigationSingleton = createSharedComposable(() => {
187
196
  return {
188
197
  navigationInstance,
189
198
  router,
199
+ route,
190
200
  closeBlade,
191
201
  };
192
202
  });
@@ -198,7 +208,7 @@ export function useBladeNavigation(): IUseBladeNavigation {
198
208
 
199
209
  const instance: BladeComponentInternalInstance = getCurrentInstance() as BladeComponentInternalInstance;
200
210
 
201
- const { router, navigationInstance, closeBlade } = useBladeNavigationSingleton();
211
+ const { router, route, navigationInstance, closeBlade } = useBladeNavigationSingleton();
202
212
 
203
213
  const mainRoute = router.getRoutes().find((r) => r.meta?.root)!;
204
214
 
@@ -331,33 +341,73 @@ export function useBladeNavigation(): IUseBladeNavigation {
331
341
  return router.getRoutes().find((route) => route.path === to.path);
332
342
  }
333
343
 
344
+ /**
345
+ * Generates and handles navigation for dynamic routes based on the provided route information.
346
+ *
347
+ * Supports App component URLs with variable like '/:userId?'.
348
+ * @link https://router.vuejs.org/guide/essentials/dynamic-matching.html
349
+ *
350
+ * @param to - The target route.
351
+ * @param routes - The array of BladeRoutesRecord containing the registered routes.
352
+ */
334
353
  async function generateRoute(to: RouteLocationNormalized, routes: BladeRoutesRecord[]) {
335
- const parsedRoutes = parseUrl(to.path);
354
+ // Extract parameters excluding "pathMatch". This is necessary if a variable is used as the App component URL, for example, /:userId?
355
+ const params = Object.entries(to.params)
356
+ .filter(([key]) => key !== "pathMatch")
357
+ .reduce(
358
+ (acc, [key, value]) => {
359
+ acc[key] = value;
360
+ return acc;
361
+ },
362
+ {} as Record<string, string | string[]>,
363
+ );
364
+
365
+ // Get the raw path of the main route.
366
+ const parentRawPath = router.getRoutes().find((route) => route.name === mainRoute.name)!.path!;
367
+
368
+ // Determine the parent path based on the parameters.
369
+ const parentPath = parentRawPath.includes(Object.keys(params)?.[0] as string)
370
+ ? "/" + (Object.values(params)?.[0] ?? "")
371
+ : "";
372
+
373
+ // Set the base param value.
374
+ mainRouteBaseParamURL.value = parentPath;
375
+
376
+ // Check if the current path matches the parent path.
377
+ const isCorrectParentPath = parentRawPath !== "/" && to.path.startsWith(parentPath);
378
+
379
+ // Check if the current route is a parent route.
380
+ const isRouteParent = router.getRoutes().find((x) => x.path.endsWith(parentPath));
381
+
382
+ // Parse the URL to extract relevant route information.
383
+ const parsedRoutes = parseUrl(!isRouteParent ? to.path.slice(parentPath.length) : to.path);
336
384
 
337
385
  if (parsedRoutes) {
338
- // here we check if route is registered in bladeRoutes
386
+ // Find the registered route component.
339
387
  const registeredRouteComponent = routes.find((route) => route.route === "/" + parsedRoutes?.blade)?.component;
340
388
 
341
389
  if (registeredRouteComponent) {
342
390
  if (registeredRouteComponent.type?.isWorkspace) {
343
- // if route is workspace we just push it to router
391
+ // If the route is a workspace, navigate to it directly.
344
392
  router.replace({ path: registeredRouteComponent.type.url as string });
345
393
  } else {
346
- // if route is not workspace we need to add it to router and push
394
+ // If the route is not a workspace, add it to the router and navigate to it.
347
395
  const url =
396
+ (!isRouteParent ? parentPath : "") +
348
397
  "/" +
349
398
  parsedRoutes?.workspace +
350
399
  "/" +
351
400
  parsedRoutes.blade +
352
401
  (parsedRoutes.param ? "/" + parsedRoutes.param : "");
353
402
 
354
- // if route is not routable we will redirect to workspace
403
+ // If the route is not routable, redirect to the workspace.
355
404
  if (!parsedRoutes.param && !registeredRouteComponent.type?.routable) {
356
405
  return router.replace("/" + parsedRoutes?.workspace);
357
406
  } else {
407
+ // Add the route to the router.
358
408
  router.addRoute(mainRoute.name as string, {
359
409
  name: url,
360
- path: url,
410
+ path: parentRawPath !== "/" ? parentRawPath + url : "" + url,
361
411
  components: {
362
412
  default: _.merge({}, registeredRouteComponent, {
363
413
  props: {
@@ -374,11 +424,16 @@ export function useBladeNavigation(): IUseBladeNavigation {
374
424
  },
375
425
  });
376
426
 
377
- return router.replace(url);
427
+ // Navigate to the newly added route.
428
+ return router.replace({ name: url, params: isCorrectParentPath ? params : {} });
378
429
  }
379
430
  }
380
431
  } else {
381
- return router.replace({ name: mainRoute.name as string });
432
+ // If the registered route component is not found, navigate to the main route.
433
+ const mainRoute = router.getRoutes().find((route) => route.meta?.root);
434
+ const mainRouteAlias = router.getRoutes().find((route) => route.aliasOf?.path === mainRoute?.path) ?? mainRoute;
435
+
436
+ router.replace({ name: mainRouteAlias?.name, params: route.params });
382
437
  }
383
438
  }
384
439
  }
@@ -30,6 +30,7 @@ export type CoreBladeAdditionalSettings = {
30
30
  routable?: boolean;
31
31
  permissions?: string | string[];
32
32
  isWorkspace?: boolean;
33
+ isBlade?: boolean;
33
34
  name?: string;
34
35
  menuItem?: MenuItemConfig;
35
36
  };
@@ -17,6 +17,7 @@ export type Slots = {
17
17
  };
18
18
 
19
19
  export default defineComponent({
20
+ name: "ErrorInterceptor",
20
21
  props: {
21
22
  capture: {
22
23
  default: false,
@@ -5,7 +5,7 @@
5
5
  :class="{
6
6
  'user-dropdown-button_active': accountMenuVisible,
7
7
  }"
8
- @click.stop="!disabled ? toggleAccountMenuVisible : null"
8
+ @click.stop="toggleAccountMenuVisible"
9
9
  >
10
10
  <div class="user-dropdown-button__wrap tw-flex tw-justify-between tw-items-center tw-flex-auto">
11
11
  <div
@@ -111,7 +111,7 @@ const menu = computed(() => [
111
111
  ]);
112
112
 
113
113
  const toggleAccountMenuVisible = () => {
114
- if (menu.value && menu.value.length) {
114
+ if (!props.disabled && menu.value && menu.value.length) {
115
115
  accountMenuVisible.value = !accountMenuVisible.value;
116
116
  }
117
117
  };
@@ -28,7 +28,7 @@ export default {
28
28
 
29
29
  if (component && typeof component === "object" && !Array.isArray(component)) {
30
30
  if (Array.isArray(component.children) && component.children.length > 0) {
31
- // Рекурсивная проверка для вложенных компонентов
31
+ // Recursive check for nested components
32
32
  return hasNoCommentNodes(component.children);
33
33
  }
34
34
 
@@ -165,7 +165,14 @@ const onMenuItemClick = function (item: MenuItem) {
165
165
  };
166
166
 
167
167
  const openRoot = async () => {
168
- router.push("/");
168
+ const isPrevented = await closeBlade(1);
169
+
170
+ if (!isPrevented) {
171
+ const mainRoute = router.getRoutes().find((route) => route.meta?.root);
172
+ const mainRouteAlias = router.getRoutes().find((route) => route.aliasOf?.path === mainRoute?.path) ?? mainRoute;
173
+
174
+ router.replace({ name: mainRouteAlias?.name, params: route.params });
175
+ }
169
176
  };
170
177
 
171
178
  watchOnce(