Files
RenewCMS/web/vite.config.ts
T

61 lines
1.3 KiB
TypeScript

import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueDevTools from 'vite-plugin-vue-devtools'
import ui from '@nuxt/ui/vite'
import { renewUi } from './src/theme/ui.config'
import { lucideSubset } from './vite/lucideSubset'
export default defineConfig({
build: {
outDir: '../internal/infrastructure/assets/dist/',
emptyOutDir: true,
},
server: {
proxy: {
'/v1': 'http://localhost:8080',
'/healthz': 'http://localhost:8080',
'/static': 'http://localhost:8080',
},
},
plugins: [
vue(),
vueDevTools(),
lucideSubset([
fileURLToPath(new URL('./src', import.meta.url)),
fileURLToPath(new URL('./node_modules/@nuxt/ui/dist', import.meta.url)),
]),
ui({
ui: renewUi,
colorMode: true,
theme: {
colors: ['primary', 'secondary', 'success', 'info', 'warning', 'error'],
},
}),
],
optimizeDeps: {
include: [
'@tiptap/core',
'@tiptap/pm/state',
'@tiptap/pm/view',
'@tiptap/pm/model',
'@tiptap/vue-3',
'@tiptap/starter-kit',
],
},
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url)),
},
dedupe: [
'@tiptap/core',
'@tiptap/pm',
'prosemirror-state',
'prosemirror-view',
'prosemirror-model',
'prosemirror-transform',
],
},
})