-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathnuxt.config.js
118 lines (116 loc) · 2.67 KB
/
nuxt.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
const path = require(`path`)
const MonacoWebpackPlugin = require(`monaco-editor-webpack-plugin`)
const substruct = require(`@internalfx/substruct`)
module.exports = {
apollo: {
clientConfigs: {
default: {
httpEndpoint: `http://localhost:8000/api/graphql`,
httpLinkOptions: {
credentials: `same-origin`
}
}
}
},
auth: {
strategies: {
local: {
endpoints: {
login: { url: `/api/auth/login`, method: `post`, propertyName: `token` },
logout: { url: `/api/auth/logout`, method: `post` },
user: { url: `/api/auth/user`, method: `get`, propertyName: `user` }
}
// tokenRequired: false,
// tokenType: false
}
},
token: {
prefix: `centric.`
},
cookie: {
options: {
maxAge: 60 * 60 * 24 * 300,
secure: substruct.config.isProduction
}
},
localStorage: {},
rewriteRedirects: true,
fullPathRedirect: true
},
axios: {},
build: {
babel: {
presets: function ({ isServer }) {
return [
[
require.resolve(`@nuxt/babel-preset-app`),
// require.resolve('@nuxt/babel-preset-app-edge'), // For nuxt-edge users
{
buildTarget: isServer ? `server` : `client`,
corejs: { version: 3 }
}
]
]
}
},
extend: function (config, { isDev, isClient }) {
if (isDev && isClient) {
config.devtool = `inline-source-map`
}
},
plugins: [
new MonacoWebpackPlugin()
],
// parallel: true,
splitChunks: {
layouts: false,
pages: false,
commons: false
}
},
css: [
],
buildModules: [
`@nuxtjs/vuetify`
],
env: {},
head: {
title: `Centric Server`,
meta: [
{ charset: `utf-8` },
{ name: `viewport`, content: `width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, minimal-ui` },
{ hid: `description`, name: `description`, content: `Centric` }
],
link: [
{ rel: `icon`, type: `image/x-icon`, href: `/icon.png` }
]
},
mode: `spa`,
loading: { color: `#3B8070` },
modules: [
`@nuxtjs/apollo`,
`@nuxtjs/auth`,
`@nuxtjs/axios`
],
plugins: [
`plugins/startup.js`
],
rootDir: path.join(__dirname),
router: {
middleware: [
`auth`
],
extendRoutes: function (routes, resolve) {
routes.push({
path: `/`,
redirect: `/operations`
})
}
},
srcDir: path.join(__dirname, `client`),
vuetify: {
defaultAssets: false,
optionsPath: path.join(__dirname, `client`, `vuetify.options.js`)
},
telemetry: false
}