114 lines
2.7 KiB
TypeScript
114 lines
2.7 KiB
TypeScript
import type { RouteRecordRaw } from 'vue-router'
|
|
import AboutView from './pages/about-us/index.vue'
|
|
import HomeView from './pages/home/index.vue'
|
|
import ProductsView from './pages/ProductsView.vue'
|
|
import { LANGS } from './lang'
|
|
export const routes: RouteRecordRaw[] = [
|
|
{
|
|
path: `/:lang(${LANGS.join('|')})?`,
|
|
children: [
|
|
{
|
|
path: '',
|
|
name: 'home',
|
|
component: HomeView,
|
|
},
|
|
{
|
|
path: 'about-us',
|
|
name: 'about-us',
|
|
component: AboutView
|
|
},
|
|
{
|
|
path: 'products',
|
|
name: 'products',
|
|
component: ProductsView
|
|
},
|
|
{
|
|
path: 'media',
|
|
name: 'media',
|
|
component: () => import('./pages/media/index.vue')
|
|
},
|
|
{
|
|
path: 'contact-us',
|
|
name: 'contact-us',
|
|
component: () => import('./pages/contact-us/index.vue')
|
|
},
|
|
{
|
|
path: 'aida',
|
|
name: 'Aida',
|
|
component: () => import('./pages/aida/index.vue')
|
|
},
|
|
{ path: 'events',
|
|
name: 'events',
|
|
component: () => import('./pages/events/index.vue')
|
|
},
|
|
{ path: 'user-stories',
|
|
name: 'user-stories',
|
|
component: () => import('./pages/user-stories/index.vue')
|
|
},
|
|
{ path: 'help-centre',
|
|
name: 'help-centre',
|
|
component: () => import('./pages/help-centre/index.vue')
|
|
},
|
|
{
|
|
path: 'my-account',
|
|
name: 'MyAccount',
|
|
component: () => import('./pages/my-account/index.vue'),
|
|
children: [
|
|
{
|
|
path: '',
|
|
name: 'welcome',
|
|
component: () => import('./pages/my-account/welcome.vue'),
|
|
},
|
|
{
|
|
path: 'orders',
|
|
name: 'orders',
|
|
component: () => import('./pages/my-account/orders.vue'),
|
|
},
|
|
{
|
|
path: 'subscriptions',
|
|
name: 'subscriptions',
|
|
component: () => import('./pages/my-account/subscriptions.vue'),
|
|
},
|
|
{
|
|
path: 'address',
|
|
name: 'address',
|
|
component: () => import('./pages/my-account/address.vue'),
|
|
},
|
|
{
|
|
path: 'payment-methods',
|
|
name: 'payment-methods',
|
|
component: () => import('./pages/my-account/payment-methods.vue'),
|
|
},
|
|
{
|
|
path: ':pathMatch(.*)*',
|
|
name: 'not-found-welcome',
|
|
component: () => import('./pages/my-account/welcome.vue'),
|
|
},
|
|
]
|
|
},
|
|
{ path: 'privacy-policy',
|
|
name: 'privacy-policy',
|
|
component: () => import('./pages/others/privacy-policy.vue')
|
|
},
|
|
{ path: 'terms-of-use',
|
|
name: 'terms-of-use',
|
|
component: () => import('./pages/others/terms-of-use.vue')
|
|
},
|
|
{ path: 'disclaimer',
|
|
name: 'disclaimer',
|
|
component: () => import('./pages/others/disclaimer.vue')
|
|
},
|
|
{ path: 'site-map',
|
|
name: 'site-map',
|
|
component: () => import('./pages/others/site-map.vue')
|
|
},
|
|
{
|
|
path: ':pathMatch(.*)*',
|
|
name: 'not-found-404',
|
|
component: () => import('./pages/others/not-found-404.vue'),
|
|
},
|
|
]
|
|
}
|
|
]
|
|
|