MCPcopy Index your code
hub / github.com/angular/angular-cli / augmentHostWithReplacements

Function augmentHostWithReplacements

packages/ngtools/webpack/src/ivy/host.ts:193–220  ·  view source on GitHub ↗
(
  host: ts.CompilerHost,
  replacements: Record<string, string>,
  moduleResolutionCache?: ts.ModuleResolutionCache,
)

Source from the content-addressed store, hash-verified

191}
192
193export function augmentHostWithReplacements(
194 host: ts.CompilerHost,
195 replacements: Record<string, string>,
196 moduleResolutionCache?: ts.ModuleResolutionCache,
197): void {
198 if (Object.keys(replacements).length === 0) {
199 return;
200 }
201
202 const normalizedReplacements: Record<string, string> = {};
203 for (const [key, value] of Object.entries(replacements)) {
204 normalizedReplacements[normalizePath(key)] = normalizePath(value);
205 }
206
207 const tryReplace = (resolvedModule: ts.ResolvedModule | undefined) => {
208 const replacement = resolvedModule && normalizedReplacements[resolvedModule.resolvedFileName];
209 if (replacement) {
210 return {
211 resolvedFileName: replacement,
212 isExternalLibraryImport: /[/\\]node_modules[/\\]/.test(replacement),
213 };
214 } else {
215 return resolvedModule;
216 }
217 };
218
219 augmentResolveModuleNames(host, tryReplace, moduleResolutionCache);
220}
221
222export function augmentHostWithSubstitutions(
223 host: ts.CompilerHost,

Callers 1

setupCompilationMethod · 0.90

Calls 4

normalizePathFunction · 0.90
keysMethod · 0.45
entriesMethod · 0.45

Tested by

no test coverage detected