import { defineConfig } from 'vite';

// ライブラリビルド。TipTap 等の依存はあえて外部化せず dist に同梱し、
// <script type="module"> で直読みできる自己完結バンドルにする（Laravel の publish 済みアセット用）。
// 併せて npm 向けに ES / UMD の両形式と、単体の CSS（dist/rich-editor.css）を書き出す。
export default defineConfig({
    build: {
        lib: {
            entry: 'resources/js/index.js',
            name: 'RichEditor',
            formats: ['es', 'umd'],
            fileName: (format) => (format === 'es' ? 'rich-editor.js' : 'rich-editor.umd.cjs'),
        },
        cssCodeSplit: false, // CSS を1枚（dist/rich-editor.css）にまとめる
        outDir: 'dist',
        emptyOutDir: true,
        sourcemap: true,
    },
});
