mirror of
https://github.com/apache/skywalking-booster-ui.git
synced 2025-10-15 04:09:14 +00:00
feat: Implement customize menus (#297)
This commit is contained in:
@@ -22,7 +22,7 @@ export const routesAlarm: Array<RouteRecordRaw> = [
|
||||
path: "",
|
||||
name: "Alarm",
|
||||
meta: {
|
||||
title: "alarm",
|
||||
title: "Alerting",
|
||||
icon: "spam",
|
||||
hasGroup: false,
|
||||
},
|
||||
|
@@ -23,7 +23,7 @@ export const routesDashboard: Array<RouteRecordRaw> = [
|
||||
component: Layout,
|
||||
name: "Dashboard",
|
||||
meta: {
|
||||
title: "dashboards",
|
||||
title: "Dashboards",
|
||||
icon: "dashboard_customize",
|
||||
hasGroup: true,
|
||||
},
|
||||
@@ -33,7 +33,7 @@ export const routesDashboard: Array<RouteRecordRaw> = [
|
||||
component: () => import("@/views/dashboard/List.vue"),
|
||||
name: "List",
|
||||
meta: {
|
||||
title: "dashboardList",
|
||||
title: "Dashboard List",
|
||||
},
|
||||
},
|
||||
{
|
||||
@@ -41,7 +41,7 @@ export const routesDashboard: Array<RouteRecordRaw> = [
|
||||
component: () => import("@/views/dashboard/New.vue"),
|
||||
name: "New",
|
||||
meta: {
|
||||
title: "dashboardNew",
|
||||
title: "New Dashboard",
|
||||
},
|
||||
},
|
||||
{
|
||||
|
@@ -1,95 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "AWSCloud",
|
||||
meta: {
|
||||
title: "AWSCloud",
|
||||
icon: "cloud_queue",
|
||||
hasGroup: true,
|
||||
},
|
||||
redirect: "/aws-eks",
|
||||
children: [
|
||||
{
|
||||
path: "/aws-eks",
|
||||
name: "AWSCloudEKS",
|
||||
meta: {
|
||||
title: "AWSCloudEKS",
|
||||
layer: "AWS_EKS",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-eks/tab/:activeTabIndex",
|
||||
name: "EKSActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "AWS_EKS",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-s3",
|
||||
name: "AWSCloudS3",
|
||||
meta: {
|
||||
title: "AWSCloudS3",
|
||||
layer: "AWS_S3",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-s3/tab/:activeTabIndex",
|
||||
name: "S3ActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "AWS_S3",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-dynamodb",
|
||||
name: "AWSCloudDynamoDB",
|
||||
meta: {
|
||||
title: "AWSCloudDynamoDB",
|
||||
layer: "AWS_DYNAMODB",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-dynamodb/tab/:activeTabIndex",
|
||||
name: "DynamoDBActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "AWS_DYNAMODB",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-api-gateway",
|
||||
name: "APIGateway",
|
||||
meta: {
|
||||
title: "APIGateway",
|
||||
layer: "AWS_GATEWAY",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-api-gateway/tab/:activeTabIndex",
|
||||
name: "APIGatewayActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "AWS_GATEWAY",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,46 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "Browser",
|
||||
meta: {
|
||||
title: "browser",
|
||||
icon: "language",
|
||||
},
|
||||
redirect: "/browser",
|
||||
children: [
|
||||
{
|
||||
path: "/browser",
|
||||
name: "Browser",
|
||||
meta: {
|
||||
title: "browser",
|
||||
layer: "BROWSER",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/browser/tab/:activeTabIndex",
|
||||
name: "BrowserActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "BROWSER",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,111 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "Database",
|
||||
meta: {
|
||||
title: "database",
|
||||
icon: "storage",
|
||||
hasGroup: true,
|
||||
},
|
||||
redirect: "/mySQL",
|
||||
children: [
|
||||
{
|
||||
path: "/mySQL",
|
||||
name: "MySQL",
|
||||
meta: {
|
||||
title: "mySQL",
|
||||
layer: "MYSQL",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mySQL/tab/:activeTabIndex",
|
||||
name: "MySQLActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "MYSQL",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/postgreSQL",
|
||||
name: "PostgreSQL",
|
||||
meta: {
|
||||
title: "postgreSQL",
|
||||
layer: "POSTGRESQL",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/postgreSQL/tab/:activeTabIndex",
|
||||
name: "PostgreSQLActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "POSTGRESQL",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-dynamodb",
|
||||
name: "AWSCloudDynamoDB",
|
||||
meta: {
|
||||
title: "AWSCloudDynamoDB",
|
||||
layer: "AWS_DYNAMODB",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-dynamodb/tab/:activeTabIndex",
|
||||
name: "DynamoDBActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "AWS_DYNAMODB",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/redis",
|
||||
name: "Redis",
|
||||
meta: {
|
||||
title: "redis",
|
||||
layer: "REDIS",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/redis/tab/:activeTabIndex",
|
||||
name: "RedisActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "REDIS",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/elasticsearch",
|
||||
name: "Elasticsearch",
|
||||
meta: {
|
||||
title: "elasticsearch",
|
||||
layer: "ELASTICSEARCH",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/elasticsearch/tab/:activeTabIndex",
|
||||
name: "ElasticsearchActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "ELASTICSEARCH",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,46 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "Functions",
|
||||
meta: {
|
||||
title: "functions",
|
||||
icon: "functions",
|
||||
hasGroup: true,
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: "/openFunction",
|
||||
name: "OpenFunction",
|
||||
meta: {
|
||||
title: "openFunction",
|
||||
layer: "FAAS",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/openFunction/tab/:activeTabIndex",
|
||||
name: "OpenFunctionActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "FAAS",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,63 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "Gateway",
|
||||
meta: {
|
||||
title: "gateway",
|
||||
icon: "gateway",
|
||||
hasGroup: true,
|
||||
},
|
||||
redirect: "/apisix",
|
||||
children: [
|
||||
{
|
||||
path: "/apisix",
|
||||
name: "APISIX",
|
||||
meta: {
|
||||
title: "apisix",
|
||||
layer: "APISIX",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/apisix/tab/:activeTabIndex",
|
||||
name: "APISIXActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "APISIX",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-gateway",
|
||||
name: "AWSGateway",
|
||||
meta: {
|
||||
title: "AWSGateway",
|
||||
layer: "AWS_GATEWAY",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/aws-gateway/tab/:activeTabIndex",
|
||||
name: "GatewayActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "AWS_GATEWAY",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,94 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "General",
|
||||
meta: {
|
||||
title: "general",
|
||||
icon: "chart",
|
||||
hasGroup: true,
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: "/general",
|
||||
name: "GeneralServices",
|
||||
meta: {
|
||||
title: "services",
|
||||
layer: "GENERAL",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/general/tab/:activeTabIndex",
|
||||
name: "GeneralServicesActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "GENERAL",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/database",
|
||||
name: "VirtualDatabase",
|
||||
meta: {
|
||||
title: "virtualDatabase",
|
||||
layer: "VIRTUAL_DATABASE",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/database/tab/:activeTabIndex",
|
||||
name: "VirtualDatabaseActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "VIRTUAL_DATABASE",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/cache",
|
||||
name: "VirtualCache",
|
||||
meta: {
|
||||
title: "virtualCache",
|
||||
layer: "VIRTUAL_CACHE",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/cache/tab/:activeTabIndex",
|
||||
name: "VirtualCacheActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "VIRTUAL_CACHE",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mq",
|
||||
name: "VirtualMQ",
|
||||
meta: {
|
||||
title: "virtualMQ",
|
||||
layer: "VIRTUAL_MQ",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mq/tab/:activeTabIndex",
|
||||
name: "VirtualMQActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "VIRTUAL_MQ",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,41 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import general from "./general";
|
||||
import serviceMesh from "./serviceMesh";
|
||||
import database from "./database";
|
||||
import infrastructure from "./infrastructure";
|
||||
import selfObservability from "./selfObservability";
|
||||
import functions from "./functions";
|
||||
import browser from "./browser";
|
||||
import k8s from "./k8s";
|
||||
import gateway from "./gateway";
|
||||
import aws from "./aws";
|
||||
import mq from "./mq";
|
||||
|
||||
export default [
|
||||
...general,
|
||||
...serviceMesh,
|
||||
...functions,
|
||||
...k8s,
|
||||
...infrastructure,
|
||||
...aws,
|
||||
...browser,
|
||||
...gateway,
|
||||
...database,
|
||||
...mq,
|
||||
...selfObservability,
|
||||
];
|
@@ -1,65 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "Infrastructure",
|
||||
meta: {
|
||||
title: "infrastructure",
|
||||
icon: "scatter_plot",
|
||||
hasGroup: true,
|
||||
},
|
||||
redirect: "/linux",
|
||||
children: [
|
||||
{
|
||||
path: "/linux",
|
||||
name: "Linux",
|
||||
meta: {
|
||||
title: "linux",
|
||||
layer: "OS_LINUX",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/linux/tab/:activeTabIndex",
|
||||
name: "LinuxActiveTabIndex",
|
||||
meta: {
|
||||
title: "linux",
|
||||
notShow: true,
|
||||
layer: "OS_LINUX",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/windows",
|
||||
name: "Windows",
|
||||
meta: {
|
||||
title: "windows",
|
||||
layer: "OS_WINDOWS",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/windows/tab/:activeTabIndex",
|
||||
name: "WindowsActiveTabIndex",
|
||||
meta: {
|
||||
title: "windows",
|
||||
notShow: true,
|
||||
layer: "OS_WINDOWS",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,67 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "Kubernetes",
|
||||
meta: {
|
||||
title: "kubernetes",
|
||||
icon: "donut_small",
|
||||
hasGroup: true,
|
||||
},
|
||||
redirect: "/kubernetes/cluster",
|
||||
children: [
|
||||
{
|
||||
path: "/kubernetes/cluster",
|
||||
name: "KubernetesCluster",
|
||||
meta: {
|
||||
notShow: false,
|
||||
title: "kubernetesCluster",
|
||||
layer: "K8S",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/kubernetes/cluster/tab/:activeTabIndex",
|
||||
name: "KubernetesClusterActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
title: "kubernetesClusterActiveTabIndex",
|
||||
layer: "K8S",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/kubernetes/service",
|
||||
name: "KubernetesService",
|
||||
meta: {
|
||||
notShow: false,
|
||||
title: "kubernetesService",
|
||||
layer: "K8S_SERVICE",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/kubernetes/service/tab/:activeTabIndex",
|
||||
name: "KubernetesServiceActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
title: "kubernetesServiceActiveTabIndex",
|
||||
layer: "K8S_SERVICE",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,47 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "MQ",
|
||||
meta: {
|
||||
title: "mq",
|
||||
icon: "mq",
|
||||
hasGroup: true,
|
||||
},
|
||||
redirect: "/rabbitMQ",
|
||||
children: [
|
||||
{
|
||||
path: "/rabbitMQ",
|
||||
name: "RabbitMQ",
|
||||
meta: {
|
||||
title: "rabbitMQ",
|
||||
layer: "RABBITMQ",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/rabbitMQ/tab/:activeTabIndex",
|
||||
name: "RabbitMQActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "RABBITMQ",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,63 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "SelfObservability",
|
||||
redirect: "/self/skyWalkingServer",
|
||||
meta: {
|
||||
title: "selfObservability",
|
||||
icon: "logo",
|
||||
hasGroup: true,
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: "/self/skyWalkingServer",
|
||||
name: "SkyWalkingServer",
|
||||
meta: {
|
||||
title: "skyWalkingServer",
|
||||
layer: "SO11Y_OAP",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/self/skyWalkingServer/tab/:activeTabIndex",
|
||||
name: "SkyWalkingServerActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "SO11Y_OAP",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/self/satellite",
|
||||
name: "Satellite",
|
||||
meta: {
|
||||
title: "satellite",
|
||||
layer: "SO11Y_SATELLITE",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/self/satellite/tab/:activeTabIndex",
|
||||
name: "SatelliteActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "SO11Y_SATELLITE",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -1,83 +0,0 @@
|
||||
/**
|
||||
* Licensed to the Apache Software Foundation (ASF) under one or more
|
||||
* contributor license agreements. See the NOTICE file distributed with
|
||||
* this work for additional information regarding copyright ownership.
|
||||
* The ASF licenses this file to You under the Apache License, Version 2.0
|
||||
* (the "License"); you may not use this file except in compliance with
|
||||
* the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
export default [
|
||||
{
|
||||
path: "",
|
||||
name: "ServiceMesh",
|
||||
redirect: "/mesh/services",
|
||||
meta: {
|
||||
title: "serviceMesh",
|
||||
icon: "epic",
|
||||
hasGroup: true,
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: "/mesh/services",
|
||||
name: "MeshServices",
|
||||
meta: {
|
||||
notShow: false,
|
||||
title: "services",
|
||||
layer: "MESH",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mesh/services/tab/:activeTabIndex",
|
||||
name: "MeshServicesActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "MESH",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mesh/controlPanel",
|
||||
name: "ControlPanel",
|
||||
meta: {
|
||||
notShow: false,
|
||||
title: "controlPanel",
|
||||
layer: "MESH_CP",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mesh/controlPanel/tab/:activeTabIndex",
|
||||
name: "ControlPanelActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: "MESH_CP",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mesh/dataPanel",
|
||||
name: "DataPanel",
|
||||
meta: {
|
||||
notShow: false,
|
||||
title: "dataPanel",
|
||||
layer: "MESH_DP",
|
||||
},
|
||||
},
|
||||
{
|
||||
path: "/mesh/dataPanel/tab/:activeTabIndex",
|
||||
name: "DataPanelActiveTabIndex",
|
||||
meta: {
|
||||
notShow: true,
|
||||
title: "dataPanelActiveTabIndex",
|
||||
layer: "MESH_DP",
|
||||
},
|
||||
},
|
||||
],
|
||||
},
|
||||
];
|
@@ -17,11 +17,11 @@
|
||||
import type { RouteRecordRaw } from "vue-router";
|
||||
import { createRouter, createWebHistory } from "vue-router";
|
||||
import { routesDashboard } from "./dashboard";
|
||||
import { routesSetting } from "./setting";
|
||||
import { routesMarketplace } from "./marketplace";
|
||||
import { routesAlarm } from "./alarm";
|
||||
import routesLayers from "./layer";
|
||||
|
||||
const routes: Array<RouteRecordRaw> = [...routesLayers, ...routesDashboard, ...routesAlarm, ...routesSetting];
|
||||
const routes: Array<RouteRecordRaw> = [...routesMarketplace, ...routesLayers, ...routesDashboard, ...routesAlarm];
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHistory(import.meta.env.BASE_URL),
|
||||
@@ -30,6 +30,8 @@ const router = createRouter({
|
||||
|
||||
(window as any).axiosCancel = [];
|
||||
|
||||
const defaultPath = (routesLayers[0] && routesLayers[0].children[0].path) || "";
|
||||
|
||||
router.beforeEach((to, from, next) => {
|
||||
// const token = window.localStorage.getItem("skywalking-authority");
|
||||
if ((window as any).axiosCancel.length !== 0) {
|
||||
@@ -38,8 +40,9 @@ router.beforeEach((to, from, next) => {
|
||||
}
|
||||
(window as any).axiosCancel = [];
|
||||
}
|
||||
|
||||
if (to.path === "/") {
|
||||
next({ path: "/general" });
|
||||
next({ path: defaultPath });
|
||||
} else {
|
||||
next();
|
||||
}
|
||||
|
@@ -14,21 +14,65 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import LayerJson from "./data";
|
||||
import Layout from "@/layout/Index.vue";
|
||||
import { useAppStoreWithOut } from "@/store/modules/app";
|
||||
import type { MenuOptions } from "@/types/app";
|
||||
|
||||
function layerDashboards() {
|
||||
const routes = LayerJson.map((item: any) => {
|
||||
item.component = Layout;
|
||||
if (item.children) {
|
||||
item.children = item.children.map((d: any) => {
|
||||
d.component = () => import("@/views/Layer.vue");
|
||||
return d;
|
||||
});
|
||||
async function layerDashboards() {
|
||||
const appStore = useAppStoreWithOut();
|
||||
await appStore.getActivateMenus();
|
||||
const routes = appStore.activateMenus.map((item: MenuOptions) => {
|
||||
const route: any = {
|
||||
path: "",
|
||||
name: item.name,
|
||||
component: Layout,
|
||||
meta: {
|
||||
icon: item.icon || "cloud_queue",
|
||||
title: item.title,
|
||||
hasGroup: item.hasGroup,
|
||||
},
|
||||
children: item.subItems && item.subItems.length ? [] : undefined,
|
||||
};
|
||||
for (const child of item.subItems || []) {
|
||||
const d = {
|
||||
name: child.name,
|
||||
path: child.path,
|
||||
meta: {
|
||||
title: child.title,
|
||||
layer: child.layer,
|
||||
icon: child.icon || "cloud_queue",
|
||||
},
|
||||
component: () => import("@/views/Layer.vue"),
|
||||
};
|
||||
route.children.push(d);
|
||||
const tab = {
|
||||
name: `${child.name}ActiveTabIndex`,
|
||||
path: `/${child.name}/tab/:activeTabIndex`,
|
||||
component: () => import("@/views/Layer.vue"),
|
||||
meta: {
|
||||
notShow: true,
|
||||
layer: child.layer,
|
||||
},
|
||||
};
|
||||
route.children.push(tab);
|
||||
}
|
||||
return item;
|
||||
if (!item.hasGroup) {
|
||||
route.children = [
|
||||
{
|
||||
name: item.name,
|
||||
path: item.path,
|
||||
meta: {
|
||||
title: item.title,
|
||||
layer: item.layer,
|
||||
icon: item.icon,
|
||||
},
|
||||
component: () => import("@/views/Layer.vue"),
|
||||
},
|
||||
];
|
||||
}
|
||||
return route;
|
||||
});
|
||||
return routes;
|
||||
}
|
||||
|
||||
export default layerDashboards();
|
||||
export default await layerDashboards();
|
||||
|
@@ -17,26 +17,32 @@
|
||||
import type { RouteRecordRaw } from "vue-router";
|
||||
import Layout from "@/layout/Index.vue";
|
||||
|
||||
export const routesSetting: Array<RouteRecordRaw> = [
|
||||
export const routesMarketplace: Array<RouteRecordRaw> = [
|
||||
{
|
||||
path: "",
|
||||
name: "Settings",
|
||||
name: "Marketplace",
|
||||
meta: {
|
||||
title: "settings",
|
||||
icon: "settings",
|
||||
hasGroup: false,
|
||||
title: "Marketplace",
|
||||
icon: "marketplace",
|
||||
hasGroup: true,
|
||||
},
|
||||
component: Layout,
|
||||
children: [
|
||||
{
|
||||
path: "/settings",
|
||||
path: "/marketplace/menus",
|
||||
name: "MenusManagement",
|
||||
meta: {
|
||||
title: "Categories",
|
||||
},
|
||||
component: () => import("@/views/marketplace/Menus.vue"),
|
||||
},
|
||||
{
|
||||
path: "/marketplace/settings",
|
||||
name: "Settings",
|
||||
meta: {
|
||||
title: "settings",
|
||||
icon: "settings",
|
||||
hasGroup: false,
|
||||
title: "Settings",
|
||||
},
|
||||
component: () => import("@/views/Settings.vue"),
|
||||
component: () => import("@/views/marketplace/Settings.vue"),
|
||||
},
|
||||
],
|
||||
},
|
Reference in New Issue
Block a user