Files
Gnuboard7/vite.config.core.js
T
2026-07-01 10:30:32 +09:00

45 lines
1.3 KiB
JavaScript

import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
import path from 'path';
export default defineConfig({
plugins: [react()],
publicDir: false,
// 환경 변수 정의 (React 빌드용)
define: {
'process.env.NODE_ENV': JSON.stringify('production'),
},
build: {
outDir: 'public/build/core',
emptyOutDir: false,
lib: {
entry: path.resolve(__dirname, 'resources/js/core/template-engine.ts'),
name: 'G7Core',
formats: ['iife'],
fileName: () => 'template-engine.min.js',
},
rollupOptions: {
// React/ReactDOM을 external에서 제거하여 번들에 포함
// external: ['react', 'react-dom'],
output: {
// React/ReactDOM이 번들에 포함되므로 globals 불필요
// globals: {
// react: 'React',
// 'react-dom': 'ReactDOM',
// },
exports: 'named',
// IIFE 번들에서 전역 변수 자동 할당
extend: true,
},
},
minify: 'esbuild',
sourcemap: true,
target: 'es2020',
},
resolve: {
alias: {
'@': path.resolve(__dirname, 'resources/js'),
},
},
});