vite.config.js 912 B

123456789101112131415161718192021222324252627282930313233343536
  1. import path from 'node:path';
  2. import { fileURLToPath } from 'node:url';
  3. import { defineConfig } from 'vite';
  4. import viteTemplatePlugin from './scripts/vite-template-plugin.mjs';
  5. const PROJECT_ROOT = path.dirname(fileURLToPath(import.meta.url));
  6. const FRONTEND_ENTRY = path.resolve(PROJECT_ROOT, 'ui/frontend/js/frontend.js');
  7. export default defineConfig({
  8. root: PROJECT_ROOT,
  9. base: '/phengine/assets/frontend/',
  10. plugins: [
  11. viteTemplatePlugin({
  12. entry: FRONTEND_ENTRY,
  13. templates: [
  14. {
  15. source: 'ui/frontend/masterpage_template.tpl',
  16. output: 'ui/frontend/masterpage.tpl',
  17. },
  18. {
  19. source: 'ui/frontend/errors_template.tpl',
  20. output: 'ui/frontend/errors.tpl',
  21. },
  22. ],
  23. }),
  24. ],
  25. build: {
  26. outDir: path.resolve(PROJECT_ROOT, 'assets/frontend'),
  27. emptyOutDir: true,
  28. manifest: 'manifest.json',
  29. sourcemap: false,
  30. rollupOptions: {
  31. input: FRONTEND_ENTRY,
  32. },
  33. },
  34. });