fix(compiler): return enableIvy true when using readConfiguration
(#32234)
PR Close #32234
This commit is contained in:
parent
62f4140634
commit
424ab48672
@ -120,10 +120,11 @@ export function calcProjectFileAndBasePath(project: string):
|
|||||||
export function createNgCompilerOptions(
|
export function createNgCompilerOptions(
|
||||||
basePath: string, config: any, tsOptions: ts.CompilerOptions): api.CompilerOptions {
|
basePath: string, config: any, tsOptions: ts.CompilerOptions): api.CompilerOptions {
|
||||||
// enableIvy `ngtsc` is an alias for `true`.
|
// enableIvy `ngtsc` is an alias for `true`.
|
||||||
if (config.angularCompilerOptions && config.angularCompilerOptions.enableIvy === 'ngtsc') {
|
const {angularCompilerOptions = {}} = config;
|
||||||
config.angularCompilerOptions.enableIvy = true;
|
const {enableIvy} = angularCompilerOptions;
|
||||||
}
|
angularCompilerOptions.enableIvy = enableIvy !== false && enableIvy !== 'tsc';
|
||||||
return {...tsOptions, ...config.angularCompilerOptions, genDir: basePath, basePath};
|
|
||||||
|
return {...tsOptions, ...angularCompilerOptions, genDir: basePath, basePath};
|
||||||
}
|
}
|
||||||
|
|
||||||
export function readConfiguration(
|
export function readConfiguration(
|
||||||
|
@ -55,4 +55,26 @@ describe('perform_compile', () => {
|
|||||||
expect(options.skipMetadataEmit).toBe(true);
|
expect(options.skipMetadataEmit).toBe(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it(`should return 'enableIvy: true' when enableIvy is not defined in "angularCompilerOptions"`,
|
||||||
|
() => {
|
||||||
|
writeSomeConfigs();
|
||||||
|
const {options} = readConfiguration(path.resolve(basePath, 'tsconfig-level-1.json'));
|
||||||
|
expect(options.enableIvy).toBe(true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it(`should return 'enableIvy: false' when enableIvy is disabled in "angularCompilerOptions"`,
|
||||||
|
() => {
|
||||||
|
writeSomeConfigs();
|
||||||
|
support.writeFiles({
|
||||||
|
'tsconfig-level-3.json': `{
|
||||||
|
"angularCompilerOptions": {
|
||||||
|
"enableIvy": false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
});
|
||||||
|
|
||||||
|
const {options} = readConfiguration(path.resolve(basePath, 'tsconfig-level-1.json'));
|
||||||
|
expect(options.enableIvy).toBe(false);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user