Files
1Panel/frontend/src/routers/modules/database.ts
T
王贺 394339d7dc feat: support mongodb management (#12486)
#### What this PR does / why we need it?

Refs https://github.com/1Panel-dev/1Panel/issues/7759

#### Summary of your change

#### Please indicate you've done the following:

- [ ] Made sure tests are passing and test coverage is added if needed.
- [ ] Made sure commit message follow the rule of [Conventional Commits specification](https://www.conventionalcommits.org/).
- [ ] Considered the docs impact and opened a new docs issue or PR with docs changes if needed.
2026-04-14 10:40:44 +00:00

151 lines
5.4 KiB
Go

import { Layout } from '@/routers/constant';
const databaseRouter = {
sort: 5,
path: '/databases',
name: 'Database-Menu',
component: Layout,
redirect: '/databases/mysql',
meta: {
icon: 'p-database',
title: 'menu.database',
},
children: [
{
path: '/databases',
name: 'Database',
redirect: '/databases/mysql',
component: () => import('@/views/database/index.vue'),
meta: {},
children: [
{
path: 'mysql',
name: 'MySQL',
component: () => import('@/views/database/mysql/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'MySQL',
},
},
{
path: 'mysql/setting/:type/:database',
name: 'MySQL-Setting',
component: () => import('@/views/database/mysql/setting/index.vue'),
props: true,
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
ignoreTab: true,
},
},
{
path: 'mysql/remote',
name: 'MySQL-Remote',
component: () => import('@/views/database/mysql/remote/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'MySQL',
detail: 'database.remote',
},
},
{
path: 'postgresql',
name: 'PostgreSQL',
component: () => import('@/views/database/postgresql/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'PostgreSQL',
},
},
{
path: 'postgresql/remote',
name: 'PostgreSQL-Remote',
component: () => import('@/views/database/postgresql/remote/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'PostgreSQL',
detail: 'database.remote',
},
},
{
path: 'postgresql/setting/:type/:database',
name: 'PostgreSQL-Setting',
component: () => import('@/views/database/postgresql/setting/index.vue'),
props: true,
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
ignoreTab: true,
},
},
{
path: 'redis',
name: 'Redis',
component: () => import('@/views/database/redis/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'Redis',
},
},
{
path: 'redis/remote',
name: 'Redis-Remote',
component: () => import('@/views/database/redis/remote/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'Redis',
detail: 'database.remote',
},
},
{
path: 'mongodb',
name: 'MongoDB',
component: () => import('@/views/database/mongodb/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'MongoDB',
},
},
{
path: 'mongodb/remote',
name: 'MongoDB-Remote',
component: () => import('@/views/database/mongodb/remote/index.vue'),
hidden: true,
meta: {
activeMenu: '/databases',
requiresAuth: false,
parent: 'menu.database',
title: 'MongoDB',
detail: 'database.remote',
},
},
],
},
],
};
export default databaseRouter;