permission.ts 2.4 KB
Newer Older
陈文彬 已提交
1 2
import type { AppRouteModule } from '/@/router/types';

V
vben 已提交
3
import { getParentLayout, LAYOUT } from '/@/router/constant';
陈文彬 已提交
4
import { RoleEnum } from '/@/enums/roleEnum';
V
vben 已提交
5
import { t } from '/@/hooks/web/useI18n';
陈文彬 已提交
6

V
vben 已提交
7
const permission: AppRouteModule = {
V
vben 已提交
8 9 10 11 12 13
  path: '/permission',
  name: 'Permission',
  component: LAYOUT,
  redirect: '/permission/front/page',
  meta: {
    icon: 'carbon:user-role',
V
vben 已提交
14
    title: t('routes.demo.permission.permission'),
陈文彬 已提交
15 16
  },

V
vben 已提交
17
  children: [
陈文彬 已提交
18
    {
V
vben 已提交
19
      path: 'front',
陈文彬 已提交
20
      name: 'PermissionFrontDemo',
V
vben 已提交
21
      component: getParentLayout('PermissionFrontDemo'),
陈文彬 已提交
22
      meta: {
V
vben 已提交
23
        title: t('routes.demo.permission.front'),
陈文彬 已提交
24 25 26 27
      },
      children: [
        {
          path: 'page',
V
vben 已提交
28
          name: 'FrontPageAuth',
陈文彬 已提交
29 30
          component: () => import('/@/views/demo/permission/front/index.vue'),
          meta: {
V
vben 已提交
31
            title: t('routes.demo.permission.frontPage'),
陈文彬 已提交
32 33 34 35
          },
        },
        {
          path: 'btn',
V
vben 已提交
36
          name: 'FrontBtnAuth',
陈文彬 已提交
37 38
          component: () => import('/@/views/demo/permission/front/Btn.vue'),
          meta: {
V
vben 已提交
39
            title: t('routes.demo.permission.frontBtn'),
陈文彬 已提交
40 41 42 43
          },
        },
        {
          path: 'auth-pageA',
V
vben 已提交
44
          name: 'FrontAuthPageA',
陈文彬 已提交
45 46
          component: () => import('/@/views/demo/permission/front/AuthPageA.vue'),
          meta: {
V
vben 已提交
47
            title: t('routes.demo.permission.frontTestA'),
陈文彬 已提交
48 49 50 51 52
            roles: [RoleEnum.SUPER],
          },
        },
        {
          path: 'auth-pageB',
V
vben 已提交
53
          name: 'FrontAuthPageB',
陈文彬 已提交
54 55
          component: () => import('/@/views/demo/permission/front/AuthPageB.vue'),
          meta: {
V
vben 已提交
56
            title: t('routes.demo.permission.frontTestB'),
陈文彬 已提交
57 58 59 60 61 62
            roles: [RoleEnum.TEST],
          },
        },
      ],
    },
    {
V
vben 已提交
63
      path: 'back',
陈文彬 已提交
64
      name: 'PermissionBackDemo',
V
vben 已提交
65
      component: getParentLayout('PermissionBackDemo'),
陈文彬 已提交
66
      meta: {
V
vben 已提交
67
        title: t('routes.demo.permission.back'),
陈文彬 已提交
68 69 70 71
      },
      children: [
        {
          path: 'page',
V
vben 已提交
72
          name: 'BackAuthPage',
陈文彬 已提交
73 74
          component: () => import('/@/views/demo/permission/back/index.vue'),
          meta: {
V
vben 已提交
75
            title: t('routes.demo.permission.backPage'),
陈文彬 已提交
76 77 78 79
          },
        },
        {
          path: 'btn',
V
vben 已提交
80
          name: 'BackAuthBtn',
陈文彬 已提交
81 82
          component: () => import('/@/views/demo/permission/back/Btn.vue'),
          meta: {
V
vben 已提交
83
            title: t('routes.demo.permission.backBtn'),
陈文彬 已提交
84 85 86 87 88
          },
        },
      ],
    },
  ],
V
vben 已提交
89 90 91
};

export default permission;