mirror of
https://github.com/Boof2015/prism.git
synced 2026-08-12 05:10:51 +02:00
42 lines
1.2 KiB
TypeScript
42 lines
1.2 KiB
TypeScript
import { resolve } from 'node:path'
|
|
import { defineConfig } from 'vite'
|
|
import react from '@vitejs/plugin-react'
|
|
|
|
/**
|
|
* Standalone Vite build for the plugin webview UI (src/plugin-ui).
|
|
*
|
|
* - dev: `npx vite --config vite.plugin-ui.config.ts` serves on :5174, which
|
|
* the JUCE plugin's WebBrowserComponent points at for hot reload.
|
|
* - build: emits a static bundle the C++ side can later serve via JUCE's
|
|
* resource provider (production path; not used by the dev-server POC).
|
|
*
|
|
* Reuses the existing visualizer source under src/renderer via relative imports.
|
|
*/
|
|
export default defineConfig({
|
|
root: resolve(__dirname, 'src/plugin-ui'),
|
|
base: './',
|
|
plugins: [react()],
|
|
resolve: {
|
|
alias: {
|
|
'@': resolve(__dirname, 'src'),
|
|
},
|
|
},
|
|
server: {
|
|
port: 5174,
|
|
strictPort: true,
|
|
},
|
|
build: {
|
|
outDir: resolve(__dirname, 'plugin/webview-dist'),
|
|
emptyOutDir: true,
|
|
// Stable (unhashed) asset names so the C++ resource provider can map them
|
|
// deterministically and CMake's embedded BinaryData symbols stay stable.
|
|
rollupOptions: {
|
|
output: {
|
|
entryFileNames: 'assets/[name].js',
|
|
chunkFileNames: 'assets/[name].js',
|
|
assetFileNames: 'assets/[name][extname]',
|
|
},
|
|
},
|
|
},
|
|
})
|