-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnuxt.config.ts
126 lines (113 loc) · 2.79 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
125
126
import { fileURLToPath } from 'url'
import { dirname, join } from 'path'
const currentDir = dirname(fileURLToPath(import.meta.url))
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
ssr: process.env.NUXT_SSR !== 'false',
modules: [
'@pinia/nuxt',
'pinia-plugin-persistedstate/nuxt',
'@nuxtjs/i18n',
],
i18n: {
vueI18n: join(currentDir, './i18n.config.ts'),
},
runtimeConfig: {
public: {
title: 'VVEB3 STARTER',
blockExplorer: 'https://etherscan.io',
chainId: 1,
rpc1: 'https://eth.llamarpc.com',
rpc2: 'https://ethereum-rpc.publicnode.com',
rpc3: 'https://eth.drpc.org',
walletConnectProjectId: '',
}
},
app: {
head: {
viewport: 'width=device-width, initial-scale=1, viewport-fit=cover',
htmlAttrs: { lang: 'en' },
title: process.env.NUXT_PUBLIC_TITLE,
link: [
{ rel: 'icon', href: '/icon.svg', type: 'image/svg+xml' },
]
},
},
css: [
join(currentDir, './assets/styles/index.css'),
],
postcss: {
plugins: {
'@csstools/postcss-global-data': {
files: [
join(currentDir, './assets/styles/custom-selectors.css'),
join(currentDir, './assets/styles/custom-media.css'),
]
},
'postcss-mixins': {
mixinsDir: join(currentDir, './assets/styles/mixins'),
},
'postcss-nested': {},
'postcss-custom-selectors': {},
'postcss-custom-media': {},
'postcss-preset-env': {
stage: 3,
features: {},
},
'autoprefixer': {},
},
},
hooks: {
'vite:extendConfig': (config) => {
config.optimizeDeps ??= {}
config.optimizeDeps.include = config.optimizeDeps.include || []
config.optimizeDeps.include.push('@visualizevalue/vveb3-layer > eventemitter3')
config.optimizeDeps.include.push('@visualizevalue/vveb3-layer > buffer/')
config.optimizeDeps.include.push('@visualizevalue/vveb3-layer > @wagmi/connectors')
}
},
nitro: {
preset: 'node-cluster',
esbuild: {
options: {
target: 'esnext'
}
},
},
imports: {
presets: [
{
from: 'luxon',
imports: [
'DateTime',
]
},
{
from: '@wagmi/core',
imports: [
'readContract',
'waitForTransactionReceipt',
'writeContract',
]
},
{
from: 'viem',
imports: [
'decodeEventLog',
'isAddress',
'getAddress',
'toBytes',
'toHex',
'getContract',
'encodeAbiParameters',
'parseAbiParameters',
'parseAbiParameter',
]
}
]
},
piniaPersistedstate: {
storage: 'localStorage'
},
compatibilityDate: '2024-08-14',
})