Skip to content

Commit aa88e68

Browse files
committed
fix(@angular/build): check inlineSourceMap option with isolated modules optimization
The isolated modules transpilation option that was recently introduced is currently disabled when source maps are enabled. TypeScript has two mutually exclusive options that can be used to check for source map usage. Both of these options (`sourceMap` and `inlineSourceMap`) are now checked to determine if the direct transpilation optimization can be used.
1 parent 3a7537b commit aa88e68

File tree

3 files changed

+8
-3
lines changed

3 files changed

+8
-3
lines changed

packages/angular/build/src/tools/angular/compilation/aot-compilation.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,9 @@ export class AotCompilation extends AngularCompilation {
204204
const compilerOptions = typeScriptProgram.getCompilerOptions();
205205
const buildInfoFilename = compilerOptions.tsBuildInfoFile ?? '.tsbuildinfo';
206206
const useTypeScriptTranspilation =
207-
!compilerOptions.isolatedModules || !!compilerOptions.sourceMap;
207+
!compilerOptions.isolatedModules ||
208+
!!compilerOptions.sourceMap ||
209+
!!compilerOptions.inlineSourceMap;
208210

209211
const emittedFiles = new Map<ts.SourceFile, EmitFileResult>();
210212
const writeFileCallback: ts.WriteFileCallback = (filename, contents, _a, _b, sourceFiles) => {

packages/angular/build/src/tools/angular/compilation/parallel-worker.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,11 +94,12 @@ export async function initialize(request: InitRequest) {
9494

9595
return {
9696
referencedFiles,
97-
// TODO: Expand? `allowJs`, `isolatedModules`, `sourceMap` are the only fields needed currently.
97+
// TODO: Expand? `allowJs`, `isolatedModules`, `sourceMap`, `inlineSourceMap` are the only fields needed currently.
9898
compilerOptions: {
9999
allowJs: compilerOptions.allowJs,
100100
isolatedModules: compilerOptions.isolatedModules,
101101
sourceMap: compilerOptions.sourceMap,
102+
inlineSourceMap: compilerOptions.inlineSourceMap,
102103
},
103104
};
104105
}

packages/angular/build/src/tools/esbuild/angular/compiler-plugin.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,8 @@ export function createCompilerPlugin(
275275
// Typescript printing support for sourcemaps is not yet integrated.
276276
useTypeScriptTranspilation =
277277
!initializationResult.compilerOptions.isolatedModules ||
278-
!!initializationResult.compilerOptions.sourceMap;
278+
!!initializationResult.compilerOptions.sourceMap ||
279+
!!initializationResult.compilerOptions.inlineSourceMap;
279280
referencedFiles = initializationResult.referencedFiles;
280281
} catch (error) {
281282
(result.errors ??= []).push({
@@ -562,6 +563,7 @@ function createCompilerOptionsTransformer(
562563
noEmitOnError: false,
563564
inlineSources: !!pluginOptions.sourcemap,
564565
inlineSourceMap: !!pluginOptions.sourcemap,
566+
sourceMap: undefined,
565567
mapRoot: undefined,
566568
sourceRoot: undefined,
567569
preserveSymlinks,

0 commit comments

Comments
 (0)