diff --git a/packages/core/src/config.ts b/packages/core/src/config.ts index d26fcf0df..ddf50e716 100644 --- a/packages/core/src/config.ts +++ b/packages/core/src/config.ts @@ -5,7 +5,7 @@ import { mergeRsbuildConfig, } from '@rsbuild/core'; import { dirname, isAbsolute, join, resolve } from 'pathe'; -import type { NormalizedConfig, RstestConfig } from './types'; +import type { NormalizedConfig, ProjectConfig, RstestConfig } from './types'; import { castArray, color, @@ -76,6 +76,12 @@ export async function loadConfig({ return { content: content as RstestConfig, filePath: configFilePath }; } +export const mergeProjectConfig = ( + ...configs: ProjectConfig[] +): ProjectConfig => { + return mergeRstestConfig(...configs) as ProjectConfig; +}; + export const mergeRstestConfig = (...configs: RstestConfig[]): RstestConfig => { return configs.reduce((result, config) => { const merged = mergeRsbuildConfig(result, { diff --git a/packages/core/src/index.ts b/packages/core/src/index.ts index 40f2bbf47..a93781d20 100644 --- a/packages/core/src/index.ts +++ b/packages/core/src/index.ts @@ -8,7 +8,7 @@ import type { } from './types'; export { initCli, runCLI } from './cli'; -export { loadConfig, mergeRstestConfig } from './config'; +export { loadConfig, mergeProjectConfig, mergeRstestConfig } from './config'; export { createRstest } from './core'; export * from './runtime/api/public';