import Vue from 'vue' import VueRouter from 'vue-router' import Home from 'vuejs/components/Pages/Home' // const Home = () => import( // /* webpackMode: "lazy" */ // /* webpackPrefetch: true */ // /* webpackPreload: true */ // 'vuejs/components/Pages/Home') // // import Base from 'vuejs/components/Pages/Base' const Base = () => import( /* webpackChunkName: "module-base" */ /* webpackMode: "lazy" */ /* webpackPrefetch: true */ /* webpackPreload: true */ 'vuejs/components/Pages/Base') // import Thematique from 'vuejs/components/Pages/Thematique' const Thematique = () => import( /* webpackChunkName: "module-thematique" */ /* webpackMode: "lazy" */ /* webpackPrefetch: true */ /* webpackPreload: true */ 'vuejs/components/Pages/Thematique') // import Blabla from 'vuejs/components/Pages/Blabla' const Blabla = () => import( /* webpackChunkName: "module-blabla" */ /* webpackMode: "lazy" */ /* webpackPrefetch: true */ /* webpackPreload: true */ 'vuejs/components/Pages/Blabla') // import Article from 'vuejs/components/Pages/Article' const Article = () => import( /* webpackChunkName: "module-article" */ /* webpackMode: "lazy" */ /* webpackPrefetch: true */ /* webpackPreload: true */ 'vuejs/components/Pages/Article') // import Showrooms from 'vuejs/components/Pages/Showrooms' const Showrooms = () => import( /* webpackChunkName: "module-showrooms" */ /* webpackMode: "lazy" */ /* webpackPrefetch: true */ /* webpackPreload: true */ 'vuejs/components/Pages/Showrooms') // import Pricing from 'vuejs/components/Pages/Pricing' const Pricing = () => import( /* webpackChunkName: "module-pricing" */ /* webpackMode: "lazy" */ /* webpackPrefetch: true */ /* webpackPreload: true */ 'vuejs/components/Pages/Pricing') // import Cart from 'vuejs/components/Pages/Cart' Vue.use(VueRouter) // https://www.lullabot.com/articles/decoupled-hard-problems-routing // We could use aliases to never reload the page on language changement // BUT beforeupdate is not triggered when push alias instead of path or name // const languages = ['en', 'fr']; // console.log('path aliases', (() => languages.map(l => `/${l}/base`))()) const basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix const routes = [ { name: 'home', path: basePath, // path: '/', // alias: (() => languages.map(l => `/${l}`))(), component: Home // components: { // 'home': Home // } }, { name: 'base', path: `${basePath}base`, // path: `/base`, // alias: (() => languages.map(l => `/${l}/base`))(), component: Base // components: { // 'base': Base // } }, { name: 'thematique', path: `${basePath}thematique/:alias`, component: Thematique }, { name: 'blabla', path: `${basePath}blabla`, component: Blabla }, { name: 'article', path: `${basePath}blabla/:alias`, component: Article // meta: { uuid:null } }, { name: 'showrooms', path: `${basePath}showrooms`, component: Showrooms // meta: { uuid:null } }, // { // path: '*', // name: 'notfound', // components: { // 'notfound': NotFound // } // }, { name: 'pricing', path: `${basePath}pricing`, component: Pricing } // { // name:'cart', // path: `${basePath}cart`, // component: Cart // } ] export default new VueRouter({ mode: 'history', routes: routes })