-
Notifications
You must be signed in to change notification settings - Fork 18
Expand file tree
/
Copy pathnuxt.config.js
More file actions
68 lines (63 loc) · 2.18 KB
/
nuxt.config.js
File metadata and controls
68 lines (63 loc) · 2.18 KB
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
import { envManager, defineModelWConfig } from "@model-w/preset-nuxt3";
import { defu } from "defu";
const fs = require("fs");
const packageJson = fs.readFileSync("./package.json");
const widgetVersion = JSON.parse(packageJson)["dependencies"]["chatfaq-widget"] || 0;
export default envManager((env) => {
const config = defineModelWConfig(env, {
siteName: "ChatFAQ Admin",
head: {
title: "ChatFAQ Admin",
meta: [
{ charset: "utf-8" },
{
name: "viewport",
content: "width=device-width, initial-scale=1",
},
{ name: "format-detection", content: "telephone=no" },
],
},
});
const viteNuxtConfig = defineNuxtConfig({
ssr: true,
devServer: {
port: process.env.NUXT_PORT || 3000,
},
css: ["@/assets/styles/global.scss"],
buildModules: [],
modules: [...config.modules, "@pinia/nuxt", "@element-plus/nuxt"],
vite: {
css: {
preprocessorOptions: {
scss: {
additionalData: `
@import "@/assets/styles/settings/settings.colors.scss";
@import "@/assets/styles/settings/settings.global.scss";
@import "@/assets/styles/reusable/breakpoints.scss";
@import "@/assets/styles/mixins.scss";
`,
},
},
},
},
// app: { baseURL: process.env.BASE_URL || "/" },
runtimeConfig: {
public: {
chatfaqWS: (process.env.NUXT_PUBLIC_CHATFAQ_WS || process.env.CHATFAQ_WS) ?? "",
widgetVersion: widgetVersion,
},
},
vue: {
compilerOptions: {
isCustomElement: (tag) => ["chatfaq-widget"].includes(tag),
},
},
i18n: {
locales: ["en", "es", "fr"],
defaultLocale: "en",
},
});
const out = defu(config, viteNuxtConfig);
delete out.app.head.titleTemplate;
return out;
});