UNPKG

@ecomplus/storefront-app

Version:

Vue.js ecommerce app with cart, checkout and account pages

73 lines (66 loc) 1.71 kB
import { name, version } from './../package.json' import ecomUtils from '@ecomplus/utils' import ecomPassport from '@ecomplus/passport-client' import ecomCart from '@ecomplus/shopping-cart' import Vue from 'vue' import App from './App.vue' import router from './router/' import store from './store/' import './plugins/clipboard' import './plugins/toast' import './lib/credit-card' const { title } = document const { i18n } = ecomUtils router.afterEach(to => { let subtitle switch (to.name) { case 'cart': subtitle = i18n({ en_us: 'My cart', pt_br: 'Meu carrinho' }) break case 'checkout': subtitle = i18n({ en_us: 'Checkout', pt_br: 'Finalizar compra' }) break case 'confirmation': subtitle = i18n({ en_us: '✓ We received your order', pt_br: '✓ Recebemos seu pedido' }) break case 'account': subtitle = i18n({ en_us: 'My account', pt_br: 'Minha conta' }) } if (subtitle) { document.title = `${subtitle} · ${title}` store.commit('setTitle', subtitle) } else { document.title = title store.commit('setTitle', '') } }) window.storefrontApp = { router: { afterEach: cb => router.afterEach(cb), get currentRoute () { return router.currentRoute } } } if (!window.ecomUtils) window.ecomUtils = ecomUtils if (!window.$ecomConfig) window.$ecomConfig = ecomUtils.$ecomConfig if (!window.ecomPassport) window.ecomPassport = ecomPassport if (!window.ecomCart) window.ecomCart = ecomCart new Vue({ router, store, render: h => h(App) }).$mount('#storefront-app') console.log(`// Starting ${name}@${version} SPA`)