dashboard-shell-shell 1.0.1000000098 → 1.0.1000000112

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.
@@ -256,7 +256,7 @@ export default {
256
256
  const defaultLocation = {
257
257
  name: 'c-cluster-product-resource',
258
258
  params: {
259
- resource: harvesterhci2cloud(this.resource),
259
+ resource: this.resource,
260
260
  product,
261
261
  }
262
262
  };
@@ -425,7 +425,7 @@ export default {
425
425
 
426
426
  const resources = this.location?.params?.resource || ''
427
427
 
428
- return this.$store.getters['type-map/groupsForVirTypes'](product, cloud2harvesterhci(resources));
428
+ return this.$store.getters['type-map/groupsForVirTypes'](product, resources);
429
429
  },
430
430
 
431
431
  location() {
@@ -96,7 +96,7 @@ export default {
96
96
  const route = this.$route;
97
97
  const params = route.params;
98
98
  const cloneParams = clone(params)
99
- let resourceType = this.resourceOverride || cloud2harvesterhci(cloneParams.resource);
99
+ let resourceType = this.resourceOverride || cloneParams.resource;
100
100
 
101
101
  const inStore = this.storeOverride || store.getters['currentStore'](resourceType);
102
102
  const realMode = this.realMode;
@@ -422,7 +422,7 @@ export default {
422
422
  const id = userId || this.$route.params.id;
423
423
  // const paramsResource = this.$route.params.resource
424
424
  const routerResource = clone(this.$route.params.resource)
425
- const resource = resourceOverride || this.resourceOverride || cloud2harvesterhci(routerResource);
425
+ const resource = resourceOverride || this.resourceOverride || routerResource;
426
426
  const options = this.$store.getters[`type-map/optionsFor`](resource);
427
427
 
428
428
  const detailResource = options.resourceDetail || options.resource || resource;
@@ -86,14 +86,14 @@ export default {
86
86
  data() {
87
87
  const params = { ...this.$route.params };
88
88
 
89
- params.resource = harvesterhci2cloud(params.resource)
89
+ params.resource = params.resource
90
90
 
91
- const formRoute = { name: `${ cloud2harvesterhci(this.$route.name) }-create`, params };
91
+ const formRoute = { name: `${ this.$route.name }-create`, params };
92
92
 
93
93
  const hasEditComponent = this.$store.getters['type-map/hasCustomEdit'](this.resource);
94
94
 
95
95
  const yamlRoute = {
96
- name: `${ cloud2harvesterhci(this.$route.name) }-create`,
96
+ name: `${ this.$route.name }-create`,
97
97
  params,
98
98
  query: { [AS]: _YAML },
99
99
  };
@@ -128,10 +128,12 @@ export default {
128
128
  return '?';
129
129
  }
130
130
 
131
+ // console.log(this.$store.getters['type-map/labelFor'](this.schema, 99), ' type-map/labelFor---------------')
132
+
131
133
  return this.$store.getters['type-map/labelFor'](this.schema, 99);
132
134
  },
133
135
  _descriptionDisplay() {
134
- const key = cloud2harvesterhci(this.$route.path.split('/').pop());
136
+ const key = this.$route.path.split('/'.pop());
135
137
 
136
138
  return this.$store.getters['i18n/t'](`typeDescription."${ key.toLowerCase() }"`);
137
139
  },
@@ -41,7 +41,7 @@ export default {
41
41
 
42
42
  async fetch() {
43
43
  const store = this.$store;
44
- const resource = cloud2harvesterhci(this.resource);
44
+ const resource = this.resource;
45
45
 
46
46
  const schema = this.schema;
47
47
 
@@ -89,7 +89,7 @@ export default {
89
89
  data() {
90
90
  const getters = this.$store.getters;
91
91
  const params = { ...this.$route.params };
92
- const resource = cloud2harvesterhci(params.resource);
92
+ const resource = params.resource;
93
93
 
94
94
  const hasListComponent = getters['type-map/hasCustomList'](resource);
95
95
 
@@ -201,7 +201,7 @@ export default {
201
201
  created() {
202
202
  let listComponent = false;
203
203
 
204
- const resource = cloud2harvesterhci(this.$route.params.resource);
204
+ const resource = this.$route.params.resource;
205
205
  const hasListComponent = this.$store.getters['type-map/hasCustomList'](resource);
206
206
 
207
207
  if ( hasListComponent ) {
@@ -155,7 +155,7 @@ export default {
155
155
  },
156
156
 
157
157
  isVirtualProduct() {
158
- return this.rootProduct.name === harvester2cloud(HARVESTER);
158
+ return this.rootProduct.name === HARVESTER;
159
159
  },
160
160
 
161
161
  allNavLinks() {
@@ -237,7 +237,7 @@ export default {
237
237
 
238
238
  getProductsGroups(out, loadProducts, namespaceMode, productMap) {
239
239
  const clusterId = this.$store.getters['clusterId'];
240
- const currentType = cloud2harvesterhci(this.$route.params.resource) || '';
240
+ const currentType = this.$route.params.resource || '';
241
241
 
242
242
  for ( const productId of loadProducts ) {
243
243
  const modes = [TYPE_MODES.BASIC];
@@ -416,7 +416,7 @@ export default {
416
416
  const isLoading = this.loading || false;
417
417
 
418
418
  let isCreatable = false;
419
- const lastPath = cloud2harvesterhci(this.$route.path.split('/').pop());
419
+ const lastPath = this.$route.path.split('/'.pop());
420
420
 
421
421
  if (lastPath?.includes('.')) {
422
422
  isCreatable = this.$store.getters['type-map/optionsFor'](lastPath).isCreatable;
@@ -424,7 +424,7 @@ export default {
424
424
  isCreatable = this.$store.getters['type-map/optionsFor'](this.$route.name).isCreatable;
425
425
  }
426
426
 
427
- const resource = cloud2harvesterhci(this.$route.params.resource);
427
+ const resource = this.$route.params.resource;
428
428
 
429
429
  let hasEditComponent = false
430
430
 
@@ -146,7 +146,7 @@ export default {
146
146
  const params = { ...this.$route.params };
147
147
  let resource = params.resource;
148
148
  if (params.resource) {
149
- resource = cloud2harvesterhci(resource)
149
+ resource = resource
150
150
  }
151
151
 
152
152
  // Sometimes, different pages may have different namespaces to filter
@@ -256,7 +256,7 @@ export default {
256
256
  const defaultLocation = {
257
257
  name: 'c-cluster-product-resource',
258
258
  params: {
259
- resource: harvesterhci2cloud(this.resource),
259
+ resource: this.resource,
260
260
  product,
261
261
  }
262
262
  };
@@ -423,7 +423,7 @@ export default {
423
423
 
424
424
  const resources = this.location?.params?.resource || ''
425
425
 
426
- return this.$store.getters['type-map/groupsForVirTypes'](product, cloud2harvesterhci(resources));
426
+ return this.$store.getters['type-map/groupsForVirTypes'](product, resources);
427
427
  },
428
428
 
429
429
  location() {
@@ -96,7 +96,7 @@ export default {
96
96
  const route = this.$route;
97
97
  const params = route.params;
98
98
  const cloneParams = clone(params)
99
- let resourceType = this.resourceOverride || cloud2harvesterhci(cloneParams.resource);
99
+ let resourceType = this.resourceOverride || cloneParams.resource;
100
100
 
101
101
  const inStore = this.storeOverride || store.getters['currentStore'](resourceType);
102
102
  const realMode = this.realMode;
@@ -422,7 +422,7 @@ export default {
422
422
  const id = userId || this.$route.params.id;
423
423
  // const paramsResource = this.$route.params.resource
424
424
  const routerResource = clone(this.$route.params.resource)
425
- const resource = resourceOverride || this.resourceOverride || cloud2harvesterhci(routerResource);
425
+ const resource = resourceOverride || this.resourceOverride || routerResource;
426
426
  const options = this.$store.getters[`type-map/optionsFor`](resource);
427
427
 
428
428
  const detailResource = options.resourceDetail || options.resource || resource;
@@ -70,14 +70,14 @@ export default {
70
70
  data() {
71
71
  const params = { ...this.$route.params };
72
72
 
73
- params.resource = harvesterhci2cloud(params.resource)
73
+ params.resource = params.resource
74
74
 
75
- const formRoute = { name: `${ cloud2harvesterhci(this.$route.name) }-create`, params };
75
+ const formRoute = { name: `${ this.$route.name }-create`, params };
76
76
 
77
77
  const hasEditComponent = this.$store.getters['type-map/hasCustomEdit'](this.resource);
78
78
 
79
79
  const yamlRoute = {
80
- name: `${ cloud2harvesterhci(this.$route.name) }-create`,
80
+ name: `${ this.$route.name }-create`,
81
81
  params,
82
82
  query: { [AS]: _YAML },
83
83
  };
@@ -91,14 +91,14 @@ export default {
91
91
  data() {
92
92
  const params = { ...this.$route.params };
93
93
 
94
- params.resource = harvesterhci2cloud(params.resource)
94
+ params.resource = params.resource
95
95
 
96
- const formRoute = { name: `${ cloud2harvesterhci(this.$route.name) }-create`, params };
96
+ const formRoute = { name: `${ this.$route.name }-create`, params };
97
97
 
98
98
  const hasEditComponent = this.$store.getters['type-map/hasCustomEdit'](this.resource);
99
99
 
100
100
  const yamlRoute = {
101
- name: `${ cloud2harvesterhci(this.$route.name) }-create`,
101
+ name: `${ this.$route.name }-create`,
102
102
  params,
103
103
  query: { [AS]: _YAML },
104
104
  };
@@ -139,7 +139,7 @@ export default {
139
139
  return this.$store.getters['type-map/labelFor'](this.schema, 99);
140
140
  },
141
141
  _descriptionDisplay() {
142
- const key = cloud2harvesterhci(this.$route.path.split('/').pop());
142
+ const key = this.$route.path.split('/'.pop());
143
143
 
144
144
  return this.$store.getters['i18n/t'](`typeDescription."${ key.toLowerCase() }"`);
145
145
  },
@@ -41,7 +41,7 @@ export default {
41
41
 
42
42
  async fetch() {
43
43
  const store = this.$store;
44
- const resource = cloud2harvesterhci(this.resource);
44
+ const resource = this.resource;
45
45
 
46
46
  const schema = this.schema;
47
47
 
@@ -89,7 +89,7 @@ export default {
89
89
  data() {
90
90
  const getters = this.$store.getters;
91
91
  const params = { ...this.$route.params };
92
- const resource = cloud2harvesterhci(params.resource);
92
+ const resource = params.resource;
93
93
 
94
94
  const hasListComponent = getters['type-map/hasCustomList'](resource);
95
95
 
@@ -201,7 +201,7 @@ export default {
201
201
  created() {
202
202
  let listComponent = false;
203
203
 
204
- const resource = cloud2harvesterhci(this.$route.params.resource);
204
+ const resource = this.$route.params.resource;
205
205
  const hasListComponent = this.$store.getters['type-map/hasCustomList'](resource);
206
206
 
207
207
  if ( hasListComponent ) {
@@ -416,7 +416,7 @@ export default {
416
416
  const isLoading = this.loading || false;
417
417
 
418
418
  let isCreatable = false;
419
- const lastPath = cloud2harvesterhci(this.$route.path.split('/').pop());
419
+ const lastPath = this.$route.path.split('/'.pop());
420
420
 
421
421
  if (lastPath.includes('.')) {
422
422
  isCreatable = this.$store.getters['type-map/optionsFor'](lastPath).isCreatable;
@@ -24,7 +24,7 @@ export function init(store) {
24
24
  spoofedType,
25
25
  virtualType,
26
26
  } = DSL(store, NAME);
27
-
27
+ console.log('------------------------------------------------2')
28
28
  product({
29
29
  ifHaveType: new RegExp(`${ MANAGEMENT.USER }|${ MANAGEMENT.AUTH_CONFIG }`, 'i'),
30
30
  ifHaveVerb: 'GET',
@@ -19,21 +19,33 @@ import { harvester2cloud } from '@shell/utils/router';
19
19
  export function installNavigationGuards(router, context) {
20
20
  // 最早执行:保证进入逻辑时 params 始终是 harvester
21
21
  router.beforeEach((to, from, next) => {
22
+ let changed = false;
23
+ const params = { ...to.params };
22
24
 
23
- console.log('-----------------------------------------------------1');
25
+ if (params?.product?.includes('cloud')) {
26
+ params.product = params.product.replace(/cloud/g, 'harvester');
27
+ changed = true;
28
+ }
29
+
30
+ if (params?.cluster?.includes('cloud')) {
31
+ params.cluster = params.cluster.replace(/cloud/g, 'harvester');
32
+ changed = true;
33
+ }
24
34
 
25
- // 内部逻辑统一用 harvesterManager
26
- if (to?.params?.product) {
27
- // to.params.product = to.params.product.replace(/harvester/g, 'cloud')
35
+ if (params?.resource?.includes('cloud')) {
36
+ params.resource = params.resource.replace(/cloud/g, 'harvester');
37
+ changed = true;
28
38
  }
29
39
 
30
- if (to?.params?.cluster) {
31
- to.params.cluster = to.params.cluster.replace(/cloud/g, 'harvester')
40
+ if (changed) {
41
+ // 触发路由重定向
42
+ return next({ ...to, params });
32
43
  }
33
44
 
34
45
  next();
35
46
  });
36
47
 
48
+
37
49
  const navigationGuardInstallers = [
38
50
  installLoadInitialSettings,
39
51
  installAttemptFirstLogin,
@@ -50,17 +62,16 @@ export function installNavigationGuards(router, context) {
50
62
 
51
63
  navigationGuardInstallers.forEach(installer => installer(router, context));
52
64
 
53
- // 最后执行:只改地址栏,不改内部
65
+ // 🔹 最后执行:只改地址栏,不改内部
54
66
  router.afterEach((to) => {
55
67
 
56
- console.log('-----------------------------------------------------3');
57
-
58
68
  const cloudPath = to.fullPath
59
69
  .replace(/harvester/g, 'cloud')
60
70
 
61
71
  if (cloudPath !== to.fullPath) {
62
72
  window.history.replaceState({}, '', cloudPath);
63
73
  }
74
+
64
75
  });
65
76
  }
66
77
 
@@ -171,7 +171,7 @@ export default {
171
171
  data() {
172
172
  serialMaker.setPrefix('container-');
173
173
  serialMaker.setSeq(0);
174
- let type = cloud2harvesterhci(this.$route.params.resource);
174
+ let type = this.$route.params.resource;
175
175
  const createSidecar = !!this.$route.query.sidecar;
176
176
 
177
177
  if (type === 'workload') {
package/list/workload.vue CHANGED
@@ -27,10 +27,10 @@ const $loadingResources = ($route, $store) => {
27
27
  }
28
28
  });
29
29
 
30
- const allTypes = cloud2harvesterhci($route.params.resource) === workloadSchema.id;
30
+ const allTypes = $route.params.resource === workloadSchema.id;
31
31
 
32
32
  return {
33
- loadResources: allTypes ? allowedResources : [cloud2harvesterhci($route.params.resource)],
33
+ loadResources: allTypes ? allowedResources : [$route.params.resource],
34
34
  loadIndeterminate: allTypes,
35
35
  };
36
36
  };
@@ -55,7 +55,7 @@ export default {
55
55
  if (this.allTypes && this.loadResources.length) {
56
56
  this.$initializeFetchData(this.loadResources[0], this.loadResources);
57
57
  } else {
58
- this.$initializeFetchData(cloud2harvesterhci(this.$route.params.resource));
58
+ this.$initializeFetchData(this.$route.params.resource);
59
59
  }
60
60
 
61
61
  try {
@@ -74,7 +74,7 @@ export default {
74
74
  return this.$fetchType(allowed, this.loadResources);
75
75
  }));
76
76
  } else {
77
- const type = cloud2harvesterhci(this.$route.params.resource);
77
+ const type = this.$route.params.resource;
78
78
 
79
79
  if ( this.$store.getters['cluster/schemaFor'](type) ) {
80
80
  const resource = await this.$fetchType(type);
@@ -89,7 +89,7 @@ export default {
89
89
  const { loadResources, loadIndeterminate } = $loadingResources(this.$route, this.$store);
90
90
 
91
91
  const { params:{ resource: type } } = this.$route;
92
- const allTypes = cloud2harvesterhci(this.$route.params.resource) === workloadSchema.id;
92
+ const allTypes = this.$route.params.resource === workloadSchema.id;
93
93
  const schema = type !== workloadSchema.id ? this.$store.getters['cluster/schemaFor'](type) : workloadSchema;
94
94
  const paginationEnabled = !allTypes && this.$store.getters[`cluster/paginationEnabled`]?.({ id: type });
95
95
 
@@ -144,7 +144,7 @@ export default {
144
144
  this.$fetchType(POD);
145
145
  this.$fetchType(WORKLOAD_TYPES.JOB);
146
146
  } else {
147
- const type = cloud2harvesterhci(this.$route.params.resource);
147
+ const type = this.$route.params.resource;
148
148
 
149
149
  if (type === WORKLOAD_TYPES.JOB || type === POD) {
150
150
  // Ignore job and pods (we're fetching this anyway, plus they contain their own state)
@@ -35,7 +35,7 @@ export default {
35
35
  // Normally owner components supply `resource` and `inStore` as part of their data, however these are needed here before parent data runs
36
36
  // So set up both here
37
37
  const params = { ...this.$route.params };
38
- const resource = cloud2harvesterhci(params.resource) || this.schema?.id; // Resource can either be on a page showing single list, or a page of a resource showing a list of another resource
38
+ const resource = params.resource || this.schema?.id; // Resource can either be on a page showing single list, or a page of a resource showing a list of another resource
39
39
  const inStore = this.$store.getters['currentStore'](resource);
40
40
 
41
41
  return {
@@ -55,7 +55,7 @@ export default class Setting extends HybridModel {
55
55
  goToEdit(moreQuery = {}) {
56
56
  if (this.$rootGetters['currentProduct'].inStore === HARVESTER) {
57
57
  location.name = `${ HARVESTER }-c-cluster-brand`;
58
- location.params = { cluster: this.$rootGetters['currentCluster'].id, product: harvester2cloud(HARVESTER) };
58
+ location.params = { cluster: this.$rootGetters['currentCluster'].id, product: HARVESTER };
59
59
 
60
60
  location.query = {
61
61
  ...location.query,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dashboard-shell-shell",
3
- "version": "1.0.1000000098",
3
+ "version": "1.0.1000000112",
4
4
  "description": "Rancher Dashboard Shell",
5
5
  "repository": "https://github.com/rancherlabs/dashboard",
6
6
  "license": "Apache-2.0",
@@ -79,7 +79,7 @@ export default {
79
79
  },
80
80
 
81
81
  isHarvester() {
82
- return this.isSingleProduct?.productName === harvester2cloud(HARVESTER);
82
+ return this.isSingleProduct?.productName === HARVESTER;
83
83
  },
84
84
 
85
85
  singleProvider() {
@@ -78,7 +78,7 @@ export default {
78
78
  },
79
79
 
80
80
  isHarvester() {
81
- return this.isSingleProduct?.productName === harvester2cloud(HARVESTER);
81
+ return this.isSingleProduct?.productName === HARVESTER;
82
82
  },
83
83
 
84
84
  singleProvider() {
package/pages/prefs.vue CHANGED
@@ -45,7 +45,7 @@ export default {
45
45
  ...mapGetters({ hasMultipleLocales: 'i18n/hasMultipleLocales' }),
46
46
 
47
47
  isHarvester() {
48
- return this.isSingleProduct?.productName === harvester2cloud(HARVESTER);
48
+ return this.isSingleProduct?.productName === HARVESTER;
49
49
  },
50
50
 
51
51
  theme: {
@@ -16,7 +16,7 @@ export function keyFieldFor(type) {
16
16
  export function normalizeType(type) {
17
17
  type = (type?.type || type || '').toLowerCase();
18
18
 
19
- return cloud2harvesterhci(type);
19
+ return type;
20
20
  }
21
21
 
22
22
  // Detect and resolve conflicts from a 409 response.
@@ -1270,7 +1270,7 @@ export default class Resource {
1270
1270
  params: {
1271
1271
  product: this.$rootGetters['productId'],
1272
1272
  cluster: this.$rootGetters['clusterId'],
1273
- resource: harvesterhci2cloud(this.type),
1273
+ resource: this.type,
1274
1274
  }
1275
1275
  };
1276
1276
  }
@@ -1285,7 +1285,7 @@ export default class Resource {
1285
1285
  params: {
1286
1286
  product: this.$rootGetters['productId'],
1287
1287
  cluster: this.$rootGetters['clusterId'],
1288
- resource: harvesterhci2cloud(this.type),
1288
+ resource: this.type,
1289
1289
  namespace: this.metadata?.namespace,
1290
1290
  id,
1291
1291
  }
package/store/type-map.js CHANGED
@@ -507,7 +507,7 @@ export const getters = {
507
507
 
508
508
  groupForBasicType(state) {
509
509
  return (product, schemaId) => {
510
- return state.basicTypes?.[product]?.[cloud2harvesterhci(schemaId)];
510
+ return state.basicTypes?.[product]?.[schemaId];
511
511
  };
512
512
  },
513
513
 
@@ -4162,7 +4162,7 @@ export function setPromiseResult(promise: any, obj: any, key: any, label: any):
4162
4162
 
4163
4163
  declare module '@shell/utils/router' {
4164
4164
  export function harvesterhci2cloud(str: any): any;
4165
- export function cloud2harvesterhci(str: any): any;
4165
+ export function str: any: any;
4166
4166
  export function harvester2cloud(str: any): any;
4167
4167
  export function cloud2harvester(str: any): any;
4168
4168
  export function queryParamsFor(current: any, qp: any, defaults?: {}): any;
package/utils/router.js CHANGED
@@ -89,7 +89,7 @@ export const getPackageFromRoute = (route) => {
89
89
  };
90
90
 
91
91
  export const getResourceFromRoute = (to) => {
92
- let resource = cloud2harvesterhci(to.params?.resource);
92
+ let resource = to.params?.resource;
93
93
 
94
94
  if (!resource) {
95
95
  resource = findMeta(to, 'resource');