-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathnuxt.config.ts
65 lines (58 loc) · 1.42 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
export default defineNuxtConfig({
devtools: { enabled: true },
modules: [
'nuxt-icon',
'nuxt-mongoose',
'@pinia/nuxt',
'@nuxt/image',
'nuxt-vercel-analytics',
],
app: {
head: {
charset: 'utf-8',
viewport: 'width=device-width, initial-scale=1',
script: [
{ src: 'https://upload-widget.cloudinary.com/global/all.js', defer: true },
],
},
},
hooks: {
'build:manifest': manifest => {
const css = manifest['node_modules/nuxt/dist/app/entry.js']?.css
if (css) {
for (let i = css.length - 1; i >= 0; i--) {
if (css[i].startsWith('entry')) css.splice(i, 1)
}
}
},
},
nitro: {
compressPublicAssets: true,
},
image: {
cloudinary: {
baseURL: process.env.CLOUDINARY,
},
},
runtimeConfig: {
public: {
imageUrl: process.env.CLOUDINARY,
cloudinaryName: process.env.CLOUDINARY_NAME,
cloudinaryFolder: process.env.CLOUDINARY_FOLDER,
stripePublic: process.env.STRIPE_PUBLIC_KEY,
},
},
routeRules: {
'/': { prerender: true },
'/product/**': { isr: 3600 },
'/login': { prerender: true },
'/register': { prerender: true },
'/order/**': { ssr: false },
'/profile': { ssr: false },
'/admin/**': { ssr: false },
'/shipping': { ssr: false },
'/payment': { ssr: false },
'/placeorder': { ssr: false },
},
compatibilityDate: '2024-08-26',
})