diff --git a/packages/angular/build/src/tools/sass/worker.ts b/packages/angular/build/src/tools/sass/worker.ts index f0d7d5cd8b06..88a2d2ecfad9 100644 --- a/packages/angular/build/src/tools/sass/worker.ts +++ b/packages/angular/build/src/tools/sass/worker.ts @@ -56,7 +56,29 @@ interface RenderRequestMessage { rebase: boolean; } -export default async function renderSassStylesheet(request: RenderRequestMessage) { +interface RenderResult { + warnings: SerializableWarningMessage[] | undefined; + result: { + css: string; + loadedUrls: string[]; + sourceMap?: RawSourceMap; + }; +} + +interface RenderError { + warnings: SerializableWarningMessage[] | undefined; + error: { + message: string; + stack?: string; + span?: Omit & { url?: string }; + sassMessage?: string; + sassStack?: string; + }; +} + +export default async function renderSassStylesheet( + request: RenderRequestMessage, +): Promise { const { importerChannel, hasLogger, source, options, rebase } = request; const entryDirectory = dirname(options.url); @@ -164,6 +186,7 @@ export default async function renderSassStylesheet(request: RenderRequestMessage warnings, result: { ...result, + sourceMap: result.sourceMap as unknown as RawSourceMap | undefined, // URL is not serializable so to convert to string here and back to URL in the parent. loadedUrls: result.loadedUrls.map((p) => fileURLToPath(p)), },