Refactor project to modularize constants and utilities.

Moved reusable constants and helper functions to dedicated modules for improved maintainability and reusability. Improved build configuration to differentiate output directories for development and production. Enhanced server error handling and added safeguards for disabled web UI scenarios.
This commit is contained in:
2025-12-05 19:25:13 +00:00
parent e9173a6894
commit 8ef3114f5c
18 changed files with 1081 additions and 441 deletions

View File

@@ -9,6 +9,10 @@ import copy from "rollup-plugin-copy";
const production = !process.env.ROLLUP_WATCH;
// In dev mode, output to public/ so sirv can serve it
// In production, output to dist/ for embedding
const outputDir = production ? "dist" : "public";
function serve() {
let server;
@@ -36,7 +40,7 @@ export default {
sourcemap: true,
format: "iife",
name: "app",
file: "dist/bundle.js",
file: `${outputDir}/bundle.js`,
},
plugins: [
svelte({
@@ -73,8 +77,8 @@ export default {
// instead of npm run dev), minify
production && terser(),
// Copy static files from public to dist
copy({
// Copy static files from public to dist (only in production)
production && copy({
targets: [
{ src: 'public/index.html', dest: 'dist' },
{ src: 'public/global.css', dest: 'dist' },