forked from activist-org/activist
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnuxt.config.ts
124 lines (105 loc) · 2.23 KB
/
nuxt.config.ts
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
119
120
121
122
123
124
// SPDX-License-Identifier: AGPL-3.0-or-later
// https://nuxt.com/docs/api/configuration/nuxt-config
import tailwindTypography from "@tailwindcss/typography";
import type { NuxtPage } from "nuxt/schema";
import { resolve } from "path";
import applyMiddleware from "./applyMiddleware";
import head from "./head";
import locales from "./locales";
import modules from "./modules";
export default defineNuxtConfig({
app: {
head,
},
modules: modules,
ssr: false,
typescript: {
// strict: true,
// typeCheck: true,
},
devtools: {
enabled: true,
},
alias: {
"@": resolve(__dirname, "./"),
},
plugins: ["~/plugins/i18n-head.ts"],
content: {
watch: { enabled: false },
},
imports: {
dirs: ["./stores"],
},
vite: {
server: {
watch: {
usePolling: true,
ignored: [
"**/playwright/**",
"**/playwright-report/**",
"**/test/**",
"**/test-e2e/**",
"**/test-results/**",
"**/frontend/test-results/**",
"**/frontend/test-results/accessibility-results/**",
],
},
},
},
colorMode: {
classSuffix: "",
},
css: ["reduced-motion/css"],
tailwindcss: {
cssPath: "~/assets/css/tailwind.css",
configPath: "tailwind.config.ts",
config: {
plugins: [tailwindTypography],
},
},
postcss: {
plugins: {
tailwindcss: {},
autoprefixer: {},
},
},
i18n: {
lazy: true,
strategy: "prefix_and_default",
langDir: "./i18n",
vueI18n: "./i18n.config.ts",
baseUrl: "https://activist.org",
locales,
defaultLocale: "en",
customRoutes: "config",
pages: {},
detectBrowserLanguage: {
useCookie: false,
redirectOn: "root",
},
},
components: [
{
path: "~/components",
global: true,
},
],
vue: {
compilerOptions: {
isCustomElement: (tag) =>
["swiper-slide", "swiper-container"].includes(tag),
},
},
hooks: {
"pages:extend": (pages: NuxtPage[]) => {
applyMiddleware(pages);
},
"app:resolve": (app) => {
console.log("App instance resolved:", app);
},
},
nitro: {
preset: "netlify-static",
},
compatibilityDate: "2025-03-12",
});