1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-05-22 01:16:07 +02:00
unleash.unleash/frontend/vite.config.mts
Jaanus Sellin 1b568d1503
chore: update SCSS preprocessor API to modern-compiler (#8659)
Configured SCSS preprocessor options to use the `modern-compiler` API,
aligning with the new Sass API standards and preparing for Dart Sass
2.0.0. This change prevents deprecation warnings and ensures future
compatibility by transitioning away from the legacy JS API.


https://sass-lang.com/documentation/breaking-changes/legacy-js-api/

Got rid of 
![Screenshot from 2024-11-05
15-25-09](https://github.com/user-attachments/assets/c13827de-6ab4-40ab-af4c-d1a4f8cb7b3e)
2024-11-06 13:55:44 +02:00

86 lines
2.5 KiB
TypeScript

import { defineConfig, mergeConfig } from 'vite';
import {
configDefaults,
defineConfig as vitestDefineConfig,
} from 'vitest/config';
import tsconfigPaths from 'vite-tsconfig-paths';
import react from '@vitejs/plugin-react';
import svgr from 'vite-plugin-svgr';
import envCompatible from 'vite-plugin-env-compatible';
const UNLEASH_API = process.env.UNLEASH_API || 'http://localhost:4242';
const UNLEASH_BASE_PATH = process.env.UNLEASH_BASE_PATH || '/';
if (!UNLEASH_BASE_PATH.startsWith('/') || !UNLEASH_BASE_PATH.endsWith('/')) {
console.error('UNLEASH_BASE_PATH must both start and end with /');
process.exit(1);
}
const vitestConfig = vitestDefineConfig({
test: {
globals: true,
setupFiles: 'src/setupTests.ts',
environment: 'jsdom',
exclude: [...configDefaults.exclude, '**/cypress/**'],
},
css: {
preprocessorOptions: {
scss: {
api: 'modern-compiler'
}
}
}
});
export default mergeConfig(
defineConfig({
base: UNLEASH_BASE_PATH,
build: {
outDir: 'build',
assetsDir: 'static',
assetsInlineLimit: 0,
modulePreload: false,
cssCodeSplit: false,
},
server: {
open: true,
host: true,
port: 3000,
proxy: {
[`${UNLEASH_BASE_PATH}api`]: {
target: UNLEASH_API,
changeOrigin: true,
},
[`${UNLEASH_BASE_PATH}auth`]: {
target: UNLEASH_API,
changeOrigin: true,
},
[`${UNLEASH_BASE_PATH}logout`]: {
target: UNLEASH_API,
changeOrigin: true,
},
[`${UNLEASH_BASE_PATH}health`]: {
target: UNLEASH_API,
changeOrigin: true,
},
[`${UNLEASH_BASE_PATH}invite`]: {
target: UNLEASH_API,
changeOrigin: true,
},
[`${UNLEASH_BASE_PATH}edge`]: {
target: UNLEASH_API,
changeOrigin: true,
},
},
fs: {
allow: ['..'],
},
},
plugins: [react(), tsconfigPaths(), svgr(), envCompatible()],
esbuild: {
logOverride: { 'this-is-undefined-in-esm': 'silent' },
},
}),
vitestConfig,
);