-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathastro.config.mjs
More file actions
84 lines (82 loc) · 2 KB
/
astro.config.mjs
File metadata and controls
84 lines (82 loc) · 2 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
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
import mdx from '@astrojs/mdx';
import netlify from '@astrojs/netlify';
import react from '@astrojs/react';
import sitemap from '@astrojs/sitemap';
import tailwindcss from '@tailwindcss/vite';
import { defineConfig, envField } from 'astro/config';
import auth from 'auth-astro';
import { loadEnv } from 'vite';
import config from './public/config.json';
const { locales, default_locale: defaultLocale } = config.i18n;
const { STATIC_BUILD } = loadEnv(process.env.STATIC_BUILD, process.cwd(), '');
// https://astro.build/config
export default defineConfig({
i18n: {
defaultLocale,
locales,
routing: {
prefixDefaultLocale: true
}
},
output: STATIC_BUILD === 'true' ? 'static' : 'server',
adapter: netlify(),
integrations: [mdx(), sitemap(), react(), auth()],
vite: {
optimizeDeps: {
esbuildOptions: {
// Node.js global to browser globalThis
define: {
global: 'globalThis',
},
},
ssr: {
noExternal: ['clsx', '@phosphor-icons/*', '@radix-ui/*']
}
},
plugins: [tailwindcss()],
resolve: {
preserveSymlinks: true,
mainFields: [
'browser',
'module',
'main',
'jsnext:main',
'jsnext'
]
}
},
env: {
schema: {
DISABLE_CACHE: envField.boolean({
access: 'public',
context: 'client',
default: false,
optional: true
}),
CONTENT_MODE: envField.string({
access: 'public',
context: 'client',
default: 'update',
optional: true
}),
PRELOAD_MAP: envField.boolean({
access: 'public',
context: 'client',
default: false,
optional: true
}),
STATIC_BUILD: envField.boolean({
access: 'public',
context: 'client',
default: false,
optional: true
}),
USE_CONTENT_CACHE: envField.boolean({
access: 'public',
context: 'client',
default: false,
optional: true
})
}
}
});