2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-05-02 21:38:48 +00:00
InvenTree/src/frontend/vite.config.ts
Matthias Mair 3b87c84ae7
[BUG] Include .vite subdir in PUI releases (#6973)
* use yarn to build

* use different path annotation

* fix path

* include vite explicitly
2024-04-08 06:50:10 +10:00

56 lines
1.5 KiB
TypeScript

import react from '@vitejs/plugin-react';
import { platform, release } from 'node:os';
import license from 'rollup-plugin-license';
import { defineConfig, splitVendorChunkPlugin } from 'vite';
import istanbul from 'vite-plugin-istanbul';
const IS_IN_WSL = platform().includes('WSL') || release().includes('WSL');
const is_coverage = process.env.VITE_COVERAGE === 'true';
if (IS_IN_WSL) {
console.log('WSL detected: using polling for file system events');
}
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
react({
babel: {
plugins: ['macros']
}
}),
splitVendorChunkPlugin(),
license({
sourcemap: true,
thirdParty: {
includePrivate: true,
multipleVersions: true,
output: {
file: '../backend/InvenTree/web/static/web/.vite/dependencies.json',
template(dependencies) {
return JSON.stringify(dependencies);
}
}
}
}),
istanbul({
include: 'src/*',
exclude: ['node_modules', 'test/'],
extension: ['.js', '.ts', '.tsx'],
requireEnv: true
})
],
build: {
manifest: true,
outDir: '../../src/backend/InvenTree/web/static/web',
sourcemap: is_coverage
},
server: {
watch: {
// use polling only for WSL as the file system doesn't trigger notifications for Linux apps
// ref: https://github.com/vitejs/vite/issues/1153#issuecomment-785467271
usePolling: IS_IN_WSL
}
}
});