import { appTools, defineConfig } from '@modern-js/app-tools'; import { tailwindcssPlugin } from '@modern-js/plugin-tailwindcss'; // https://modernjs.dev/en/configure/app/usage export default defineConfig({ runtime: { router: true, state: true, }, dev: { progressBar: false, host: process.env.XHOST, port: Number(process.env.XPORT ?? 8080), }, plugins: [ appTools({ bundler: 'experimental-rspack', }), tailwindcssPlugin(), ], performance: { removeConsole: ['log', 'info', 'warn'], }, source: { globalVars: { 'process.env.MODERN_DOMAIN': process.env.MODERN_DOMAIN, 'process.env.MODERN_GRAY_TAG': process.env.MODERN_GRAY_TAG, 'process.env.MODERN_APP_ID': process.env.MODERN_APP_ID, 'process.env.MODERN_CALKEY': process.env.MODERN_CALKEY, }, }, tools: { rspack: (config, { prependPlugins, rspack }) => { prependPlugins( new rspack.ProgressPlugin({ prefix: `🐹 ${process.env.APP_NAME}`, }), ); config.experiments = { ...config.experiments, asyncWebAssembly: true, rspackFuture: { ...config.experiments?.rspackFuture, disableApplyEntryLazily: true, }, }; return config; }, devServer: { proxy: { '/api': { target: process.env.API_HOST, pathRewrite: { '^/api': '' }, }, '/api2': { target: process.env.FILE_HOST, pathRewrite: { '^/api2': '' }, }, }, }, }, });