-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnuxt.config.ts
77 lines (76 loc) · 1.92 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
import transformerVariantGroup from '@unocss/transformer-variant-group';
import transformerDirectives from '@unocss/transformer-directives';
import Components from 'unplugin-vue-components/vite';
import IconsResolver from 'unplugin-icons/resolver';
import Icons from 'unplugin-icons/vite';
import PurgeIcons from 'vite-plugin-purge-icons';
import './server/env';
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
ssr: false,
pages: true,
devtools: { enabled: true },
experimental: { typedPages: true },
build: { transpile: ['trpc-nuxt'] },
alias: { '@/.': './' },
typescript: { typeCheck: process.env.APP_ENV !== 'production' && false },
nitro: {
imports: {
dirs: ['@/db', '@/utils/server', '@/db/schema'],
},
plugins: ['@/nitro/ws', '@/nitro/scheduler'],
storage: {
db: {
driver: 'fs',
base: './data/db',
},
},
},
modules: [
'@unocss/nuxt',
'@pinia/nuxt',
'@huntersofbook/naive-ui-nuxt',
'@vueuse/nuxt',
'@nuxt/image-edge',
'@vue-macros/nuxt',
'nuxt-scheduler',
],
imports: {
dirs: [
'stores',
'config',
'composables',
'utils',
'services',
'services/_utils',
'utils/**/*',
'utils/**',
'server/dto/*',
'db/*',
'entities/**/*',
],
},
components: {
dirs: [{ path: 'components', pathPrefix: false }],
},
app: {
head: {
title: 'Midi friendly',
script: [{ src: 'https://code.iconify.design/1/1.0.0/iconify.min.js' }],
},
pageTransition: { name: 'slide-fade-reverse', mode: 'out-in' },
},
css: ['@unocss/reset/tailwind.css'],
vite: {
plugins: [
Components({
resolvers: [IconsResolver({ componentPrefix: 'i' })], // Automatically register all components in the `components` directory
}),
Icons({
autoInstall: true,
}),
PurgeIcons(),
],
},
plugins: [],
});