vben.ts 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. import type { RouteRecordRaw } from 'vue-router';
  2. import {
  3. VBEN_ANT_PREVIEW_URL,
  4. VBEN_DOC_URL,
  5. VBEN_GITHUB_URL,
  6. VBEN_LOGO_URL,
  7. VBEN_NAIVE_PREVIEW_URL,
  8. VBEN_TD_PREVIEW_URL,
  9. } from '@vben/constants';
  10. import { SvgAntdvLogoIcon, SvgTDesignIcon } from '@vben/icons';
  11. import { IFrameView } from '#/layouts';
  12. import { $t } from '#/locales';
  13. const routes: RouteRecordRaw[] = [
  14. {
  15. meta: {
  16. badgeType: 'dot',
  17. icon: VBEN_LOGO_URL,
  18. order: 9998,
  19. title: $t('demos.vben.title'),
  20. },
  21. name: 'VbenProject',
  22. path: '/vben-admin',
  23. children: [
  24. {
  25. name: 'VbenDocument',
  26. path: '/vben-admin/document',
  27. component: IFrameView,
  28. meta: {
  29. icon: 'lucide:book-open-text',
  30. link: VBEN_DOC_URL,
  31. title: $t('demos.vben.document'),
  32. },
  33. },
  34. {
  35. name: 'VbenGithub',
  36. path: '/vben-admin/github',
  37. component: IFrameView,
  38. meta: {
  39. icon: 'mdi:github',
  40. link: VBEN_GITHUB_URL,
  41. title: 'Github',
  42. },
  43. },
  44. {
  45. name: 'VbenNaive',
  46. path: '/vben-admin/naive',
  47. component: IFrameView,
  48. meta: {
  49. badgeType: 'dot',
  50. icon: 'logos:naiveui',
  51. link: VBEN_NAIVE_PREVIEW_URL,
  52. title: $t('demos.vben.naive-ui'),
  53. },
  54. },
  55. {
  56. name: 'VbenAntd',
  57. path: '/vben-admin/antd',
  58. component: IFrameView,
  59. meta: {
  60. badgeType: 'dot',
  61. icon: SvgAntdvLogoIcon,
  62. link: VBEN_ANT_PREVIEW_URL,
  63. title: $t('demos.vben.antdv'),
  64. },
  65. },
  66. {
  67. name: 'VbenTDesign',
  68. path: '/vben-admin/tdesign',
  69. component: IFrameView,
  70. meta: {
  71. badgeType: 'dot',
  72. icon: SvgTDesignIcon,
  73. link: VBEN_TD_PREVIEW_URL,
  74. title: $t('demos.vben.tdesign'),
  75. },
  76. },
  77. ],
  78. },
  79. {
  80. name: 'VbenAbout',
  81. path: '/vben-admin/about',
  82. component: () => import('#/views/_core/about/index.vue'),
  83. meta: {
  84. icon: 'lucide:copyright',
  85. title: $t('demos.vben.about'),
  86. order: 9999,
  87. },
  88. },
  89. ];
  90. export default routes;