gancio-upstream/nuxt.config.js

105 lines
2.3 KiB
JavaScript
Raw Normal View History

2019-04-03 00:25:12 +02:00
module.exports = {
mode: 'universal',
/*
** Headers of the page
*/
head: {
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
],
link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }]
},
2019-06-06 23:54:32 +02:00
dev: (process.env.NODE_ENV !== 'production'),
2019-04-23 15:45:52 +02:00
serverMiddleware: [
{ path: '/api', handler: '@/server/api/index.js' }
],
2019-04-03 00:25:12 +02:00
/*
** Customize the progress-bar color
*/
2019-05-30 12:04:14 +02:00
// loading: { color: '#fff' },
2019-04-03 00:25:12 +02:00
/*
** Global CSS
*/
css: [
'bootstrap/dist/css/bootstrap.css',
2019-06-07 17:02:33 +02:00
'element-ui/lib/theme-chalk/index.css'
2019-04-03 00:25:12 +02:00
],
2019-04-03 00:25:12 +02:00
/*
** Plugins to load before mounting the App
*/
2019-05-30 12:04:14 +02:00
plugins: [
'@/plugins/element-ui', // UI library -> https://element.eleme.io/#/en-US/
2019-06-07 17:02:33 +02:00
'@/plugins/filters', // text filters, datetime, etc.
2019-05-30 12:04:14 +02:00
'@/plugins/vue-awesome', // icon
'@/plugins/axios', // icon
2019-06-07 17:02:33 +02:00
{ src: '@/plugins/v-calendar', ssr: false } // calendar, TO-REDO
2019-05-30 12:04:14 +02:00
],
2019-04-03 00:25:12 +02:00
/*
** Nuxt.js modules
*/
modules: [
// Doc: https://axios.nuxtjs.org/usage
2019-04-26 23:14:43 +02:00
'@nuxtjs/axios',
'@nuxtjs/auth',
['nuxt-i18n', {
locales: [
{ code: 'en', iso: 'en-US', file: './locales/en.js' },
{ code: 'it', iso: 'it-IT', file: './locales/it.js' },
],
defaultLocale: 'it',
vueI18n: {
fallbackLocale: 'it',
messages: {
it: require('./locales/it'),
en: require('./locales/en'),
}
}
}]
2019-04-03 00:25:12 +02:00
],
/*
** Axios module configuration
* See https://github.com/nuxt-community/axios-module#options
2019-04-03 00:25:12 +02:00
*/
axios: {
2019-06-07 17:02:33 +02:00
prefix: '/api'
2019-04-03 00:25:12 +02:00
},
2019-04-26 23:14:43 +02:00
auth: {
strategies: {
local: {
endpoints: {
login: { url: '/auth/login', method: 'post', propertyName: 'token' },
2019-05-30 12:04:14 +02:00
logout: false,
2019-06-07 17:02:33 +02:00
user: { url: '/auth/user', method: 'get', propertyName: false }
}
2019-04-26 23:14:43 +02:00
}
}
},
2019-04-30 15:16:50 +02:00
2019-04-03 00:25:12 +02:00
/*
** Build configuration
*/
build: {
optimization: {
splitChunks: {
cacheGroups: {
element: {
test: /[\\/]node_modules[\\/](element-ui)[\\/]/,
name: 'element-ui',
chunks: 'all'
}
}
}
},
2019-05-30 12:04:14 +02:00
transpile: [/^element-ui/, /^vue-awesome/],
splitChunks: {
layouts: true
},
cache: true,
2019-04-03 00:25:12 +02:00
}
}