import { config } from '@/config/axios/config' import { MockMethod } from 'vite-plugin-mock' const { result_code } = config const timeout = 1000 const adminList = [ { path: '/dashboard', component: '#', redirect: '/dashboard/analysis', name: 'Dashboard', meta: { title: 'router.dashboard', icon: 'ant-design:dashboard-filled', alwaysShow: true }, children: [ { path: 'analysis', component: 'views/Dashboard/Analysis', name: 'Analysis', meta: { title: 'router.analysis', noCache: true } }, { path: 'workplace', component: 'views/Dashboard/Workplace', name: 'Workplace', meta: { title: 'router.workplace', noCache: true } } ] }, { path: '/external-link', component: '#', meta: {}, name: 'ExternalLink', children: [ { path: 'https://element-plus-admin-doc.cn/', name: 'DocumentLink', meta: { title: 'router.document', icon: 'clarity:document-solid' } } ] }, { path: '/guide', component: '#', name: 'Guide', meta: {}, children: [ { path: 'index', component: 'views/Guide/Guide', name: 'GuideDemo', meta: { title: 'router.guide', icon: 'cib:telegram-plane' } } ] }, { path: '/components', component: '#', redirect: '/components/form/default-form', name: 'ComponentsDemo', meta: { title: 'router.component', icon: 'bx:bxs-component', alwaysShow: true }, children: [ { path: 'form', component: '##', name: 'Form', meta: { title: 'router.form', alwaysShow: true }, children: [ { path: 'default-form', component: 'views/Components/Form/DefaultForm', name: 'DefaultForm', meta: { title: 'router.defaultForm' } }, { path: 'use-form', component: 'views/Components/Form/UseFormDemo', name: 'UseForm', meta: { title: 'UseForm' } }, { path: 'ref-form', component: 'views/Components/Form/RefForm', name: 'RefForm', meta: { title: 'RefForm' } } ] }, { path: 'table', component: '##', redirect: '/components/table/default-table', name: 'TableDemo', meta: { title: 'router.table', alwaysShow: true }, children: [ { path: 'default-table', component: 'views/Components/Table/DefaultTable', name: 'DefaultTable', meta: { title: 'router.defaultTable' } }, { path: 'use-table', component: 'views/Components/Table/UseTableDemo', name: 'UseTable', meta: { title: 'UseTable' } }, { path: 'ref-table', component: 'views/Components/Table/RefTable', name: 'RefTable', meta: { title: 'RefTable' } } ] }, { path: 'editor-demo', component: '##', redirect: '/components/editor-demo/editor', name: 'EditorDemo', meta: { title: 'router.editor', alwaysShow: true }, children: [ { path: 'editor', component: 'views/Components/Editor/Editor', name: 'Editor', meta: { title: 'router.richText' } } ] }, { path: 'search', component: 'views/Components/Search', name: 'Search', meta: { title: 'router.search' } }, { path: 'descriptions', component: 'views/Components/Descriptions', name: 'Descriptions', meta: { title: 'router.descriptions' } }, { path: 'image-viewer', component: 'views/Components/ImageViewer', name: 'ImageViewer', meta: { title: 'router.imageViewer' } }, { path: 'dialog', component: 'views/Components/Dialog', name: 'Dialog', meta: { title: 'router.dialog' } }, { path: 'icon', component: 'views/Components/Icon', name: 'Icon', meta: { title: 'router.icon' } }, { path: 'echart', component: 'views/Components/Echart', name: 'Echart', meta: { title: 'router.echart' } }, { path: 'count-to', component: 'views/Components/CountTo', name: 'CountTo', meta: { title: 'router.countTo' } }, { path: 'qrcode', component: 'views/Components/Qrcode', name: 'Qrcode', meta: { title: 'router.qrcode' } }, { path: 'highlight', component: 'views/Components/Highlight', name: 'Highlight', meta: { title: 'router.highlight' } }, { path: 'infotip', component: 'views/Components/Infotip', name: 'Infotip', meta: { title: 'router.infotip' } }, { path: 'input-password', component: 'views/Components/InputPassword', name: 'InputPassword', meta: { title: 'router.inputPassword' } }, { path: 'sticky', component: 'views/Components/Sticky', name: 'Sticky', meta: { title: 'router.sticky' } } ] }, { path: '/hooks', component: '#', redirect: '/hooks/useWatermark', name: 'Hooks', meta: { title: 'hooks', icon: 'ic:outline-webhook', alwaysShow: true }, children: [ { path: 'useWatermark', component: 'views/hooks/useWatermark', name: 'UseWatermark', meta: { title: 'useWatermark' } }, { path: 'useCrudSchemas', component: 'views/hooks/useCrudSchemas', name: 'UseCrudSchemas', meta: { title: 'useCrudSchemas' } } ] }, { path: '/level', component: '#', redirect: '/level/menu1/menu1-1/menu1-1-1', name: 'Level', meta: { title: 'router.level', icon: 'carbon:skill-level-advanced' }, children: [ { path: 'menu1', name: 'Menu1', component: '##', redirect: '/level/menu1/menu1-1/menu1-1-1', meta: { title: 'router.menu1' }, children: [ { path: 'menu1-1', name: 'Menu11', component: '##', redirect: '/level/menu1/menu1-1/menu1-1-1', meta: { title: 'router.menu11', alwaysShow: true }, children: [ { path: 'menu1-1-1', name: 'Menu111', component: 'views/Level/Menu111', meta: { title: 'router.menu111' } } ] }, { path: 'menu1-2', name: 'Menu12', component: 'views/Level/Menu12', meta: { title: 'router.menu12' } } ] }, { path: 'menu2', name: 'Menu2Demo', component: 'views/Level/Menu2', meta: { title: 'router.menu2' } } ] }, { path: '/example', component: '#', redirect: '/example/example-dialog', name: 'Example', meta: { title: 'router.example', icon: 'ep:management', alwaysShow: true }, children: [ { path: 'example-dialog', component: 'views/Example/Dialog/ExampleDialog', name: 'ExampleDialog', meta: { title: 'router.exampleDialog' } }, { path: 'example-page', component: 'views/Example/Page/ExamplePage', name: 'ExamplePage', meta: { title: 'router.examplePage' } }, { path: 'example-add', component: 'views/Example/Page/ExampleAdd', name: 'ExampleAdd', meta: { title: 'router.exampleAdd', noTagsView: true, noCache: true, hidden: true, showMainRoute: true, activeMenu: '/example/example-page' } }, { path: 'example-edit', component: 'views/Example/Page/ExampleEdit', name: 'ExampleEdit', meta: { title: 'router.exampleEdit', noTagsView: true, noCache: true, hidden: true, showMainRoute: true, activeMenu: '/example/example-page' } }, { path: 'example-detail', component: 'views/Example/Page/ExampleDetail', name: 'ExampleDetail', meta: { title: 'router.exampleDetail', noTagsView: true, noCache: true, hidden: true, showMainRoute: true, activeMenu: '/example/example-page' } } ] }, { path: '/error', component: '#', redirect: '/error/404', name: 'Error', meta: { title: 'router.errorPage', icon: 'ci:error', alwaysShow: true }, children: [ { path: '404-demo', component: 'views/Error/404', name: '404Demo', meta: { title: '404' } }, { path: '403-demo', component: 'views/Error/403', name: '403Demo', meta: { title: '403' } }, { path: '500-demo', component: 'views/Error/500', name: '500Demo', meta: { title: '500' } } ] } ] const testList: string[] = [ '/dashboard', '/dashboard/analysis', '/dashboard/workplace', 'external-link', 'https://element-plus-admin-doc.cn/', '/guide', '/guide/index', '/components', '/components/form', '/components/form/default-form', '/components/form/use-form', '/components/form/ref-form', '/components/table', '/components/table/default-table', '/components/table/use-table', '/components/table/ref-table', '/components/editor-demo', '/components/editor-demo/editor', '/components/search', '/components/descriptions', '/components/image-viewer', '/components/dialog', '/components/icon', '/components/echart', '/components/count-to', '/components/qrcode', '/components/highlight', '/components/infotip', '/Components/InputPassword', '/Components/Sticky', '/hooks', '/hooks/useWatermark', '/hooks/useCrudSchemas', '/level', '/level/menu1', '/level/menu1/menu1-1', '/level/menu1/menu1-1/menu1-1-1', '/level/menu1/menu1-2', '/level/menu2', '/example', '/example/example-dialog', '/example/example-page', '/example/example-add', '/example/example-edit', '/example/example-detail', '/error', '/error/404-demo', '/error/403-demo', '/error/500-demo' ] export default [ // 列表接口 { url: '/role/list', method: 'get', timeout, response: ({ query }) => { const { roleName } = query return { code: result_code, data: roleName === 'admin' ? adminList : testList } } } ] as MockMethod[]