in vite.config.ts [20:84]
export default defineConfig({
test: {
root: "dashboard/new-dashboard",
include: [...configDefaults.include, "**/*.{test,spec}.ts"],
globals: true,
environment: "jsdom",
setupFiles: ["tests/setup.ts"],
testTimeout: 10000,
},
plugins: [
vue(),
tailwindcss(),
// visualizer({template: "sunburst"}),
Components({
directoryAsNamespace: true,
dts: path.resolve(__dirname, "dashboard/new-dashboard/src/components.d.ts"),
resolvers: [
PrimeVueResolver(),
// HeadlessUiResolver(),
(name) => {
// @ts-ignore
const kind = process.env.NODE_ENV === "test" ? "" : "esm/"
if (name.endsWith("Icon")) {
return {
path: `@heroicons/vue/24/outline/${kind}${name}.js`,
}
} else if (name.endsWith("IconSolid")) {
return {
path: `@heroicons/vue/20/solid/${kind}${name.substring(0, name.length - "Solid".length)}.js`,
}
} else {
return null
}
},
],
}),
brotli(),
viteStaticCopy({
targets: [
{
dest: "../../degradation-analyzer/kodata",
src: path.resolve(__dirname, "dashboard/new-dashboard/resources/projects"),
},
],
}),
],
root: "dashboard/app",
publicDir: path.resolve(__dirname, "dashboard/app/public"),
server: {
host: "localhost",
port: 8080,
},
build: {
// sourcemap: true,
reportCompressedSize: false,
emptyOutDir: true,
chunkSizeWarningLimit: 600,
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
// @ts-ignore
outDir: path.resolve(__dirname, "cmd/frontend/resources"),
},
css: {
preprocessorMaxWorkers: true,
},
})