Initial import of Forge app
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
import { defineConfig, configDefaults } from 'vitest/config';
|
||||
import react from '@vitejs/plugin-react';
|
||||
import { readFileSync } from 'node:fs';
|
||||
|
||||
const { version } = JSON.parse(
|
||||
readFileSync(new URL('./package.json', import.meta.url), 'utf-8'),
|
||||
) as { version: string };
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [react()],
|
||||
define: {
|
||||
__APP_VERSION__: JSON.stringify(version),
|
||||
},
|
||||
css: {
|
||||
modules: { localsConvention: 'camelCaseOnly' },
|
||||
preprocessorOptions: { scss: { api: 'modern-compiler' } },
|
||||
},
|
||||
resolve: { alias: { '@': '/src' } },
|
||||
server: {
|
||||
proxy: {
|
||||
// FORGE server runs on 3100 (port 3000 is taken by the time-machine project).
|
||||
'/api': 'http://localhost:3100',
|
||||
'/healthz': 'http://localhost:3100',
|
||||
'/login': 'http://localhost:3100',
|
||||
'/logout': 'http://localhost:3100',
|
||||
},
|
||||
},
|
||||
build: { outDir: 'dist', emptyOutDir: true },
|
||||
test: {
|
||||
environment: 'node',
|
||||
include: ['src/**/*.{test,spec}.ts'],
|
||||
// Ignore macOS AppleDouble sidecars (`._*`). Syncing the tree to the NAS
|
||||
// over SMB/tar can split xattrs into `._foo.test.ts` files whose binary
|
||||
// content matches the test glob; esbuild then dies on the leading NUL byte.
|
||||
exclude: [...configDefaults.exclude, '**/._*'],
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user