Files
modeling-app/vite.preload.config.ts
2024-08-08 12:32:44 -04:00

44 lines
1.1 KiB
TypeScript

import type { ConfigEnv, UserConfig } from 'vite'
import { defineConfig, mergeConfig } from 'vite'
import { configDefaults } from 'vitest/config'
import viteTsconfigPaths from 'vite-tsconfig-paths'
import {
getBuildConfig,
getBuildDefine,
external,
pluginHotRestart,
} from './vite.base.config'
// https://vitejs.dev/config
export default defineConfig((env) => {
const forgeEnv = env as ConfigEnv<'build'>
const define = getBuildDefine(forgeEnv)
const { root, mode, forgeConfigSelf } = forgeEnv
const config: UserConfig = {
root,
mode,
base: './',
build: {
lib: {
entry: forgeConfigSelf.entry!,
fileName: () => '[name].js',
formats: ['cjs'],
},
rollupOptions: {
external,
},
},
resolve: {
// Load the Node.js entry.
mainFields: ['module', 'jsnext:main', 'jsnext'],
},
plugins: [pluginHotRestart('restart'), viteTsconfigPaths()],
worker: {
plugins: () => [viteTsconfigPaths()],
},
define,
}
return mergeConfig(getBuildConfig(forgeEnv), config)
})