DFiP_Budget_planing/perf/web/rsbuild.perf.config.ts
Andrey Epifancev 627ea82321 perf: замеры открытия модалок
Перечень модалок (modals.json), measureOpen с main_thread_ms, профиль
перерисовок React (reactProfile), сценарий modals.spec.ts, подкоманда
stand.sh web-profiling (:8081), генератор modals-inventory.md.

Refs #202

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-26 00:53:55 +04:00

26 lines
864 B
TypeScript

import path from 'node:path';
import { mergeRsbuildConfig } from '../../web/node_modules/@rsbuild/core';
import baseConfig from '../../web/rsbuild.config';
const profiling = process.env.PERF_PROFILING === '1';
const root = path.resolve(__dirname, '..', '.build', profiling ? 'profiling' : 'prod');
export default mergeRsbuildConfig(baseConfig, {
output: {
distPath: { root },
// профилирующая сборка: имена компонентов нужны для отчёта «что перерисовывается» (lib/reactProfile.ts)
...(profiling ? { minify: false } : {}),
},
resolve: profiling ? { alias: { 'react-dom$': 'react-dom/profiling' } } : {},
server: {
port: Number(process.env.PERF_WEB_PORT ?? 8080),
proxy: {
'/api': {
target: 'http://localhost:8000',
ws: true,
changeOrigin: true,
},
},
},
});