@@ -13618,10 +13618,10 @@ var SingleShimTypeCheckingHost = class extends SingleFileTypeCheckingHost {
1361813618// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/hmr/src/metadata.mjs
1361913619import { outputAst as o3 } from "@angular/compiler";
1362013620
13621- // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/hmr/src/extract_locals .mjs
13621+ // bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/hmr/src/extract_dependencies .mjs
1362213622import { outputAst as o2 } from "@angular/compiler";
1362313623import ts45 from "typescript";
13624- function extractHmrLocals (node, definition, factory, classMetadata, debugInfo) {
13624+ function extractHmrDependencies (node, definition, factory, classMetadata, debugInfo) {
1362513625 var _a;
1362613626 const name = ts45.isClassDeclaration(node) && node.name ? node.name.text : null;
1362713627 const visitor = new PotentialTopLevelReadsVisitor();
@@ -13633,7 +13633,13 @@ function extractHmrLocals(node, definition, factory, classMetadata, debugInfo) {
1363313633 classMetadata == null ? void 0 : classMetadata.visitStatement(visitor, null);
1363413634 debugInfo == null ? void 0 : debugInfo.visitStatement(visitor, null);
1363513635 const availableTopLevel = getTopLevelDeclarationNames(sourceFile);
13636- return Array.from(visitor.allReads).filter((r) => r !== name && availableTopLevel.has(r));
13636+ return {
13637+ local: Array.from(visitor.allReads).filter((r) => r !== name && availableTopLevel.has(r)),
13638+ external: Array.from(visitor.namespaceReads, (name2, index) => ({
13639+ moduleName: name2,
13640+ assignedName: `\u0275hmr${index}`
13641+ }))
13642+ };
1363713643}
1363813644function getTopLevelDeclarationNames(sourceFile) {
1363913645 var _a;
@@ -13689,6 +13695,13 @@ function trackBindingName(node, results) {
1368913695}
1369013696var PotentialTopLevelReadsVisitor = class extends o2.RecursiveAstVisitor {
1369113697 allReads = /* @__PURE__ */ new Set();
13698+ namespaceReads = /* @__PURE__ */ new Set();
13699+ visitExternalExpr(ast, context) {
13700+ if (ast.value.moduleName !== null) {
13701+ this.namespaceReads.add(ast.value.moduleName);
13702+ }
13703+ super.visitExternalExpr(ast, context);
13704+ }
1369213705 visitReadVarExpr(ast, context) {
1369313706 this.allReads.add(ast.name);
1369413707 super.visitReadVarExpr(ast, context);
@@ -13743,12 +13756,13 @@ function extractHmrMetatadata(clazz, reflection, compilerHost, rootDirs, definit
1374313756 }
1374413757 const sourceFile = clazz.getSourceFile();
1374513758 const filePath = getProjectRelativePath(sourceFile, rootDirs, compilerHost) || compilerHost.getCanonicalFileName(sourceFile.fileName);
13759+ const dependencies = extractHmrDependencies(clazz, definition, factory, classMetadata, debugInfo);
1374613760 const meta = {
1374713761 type: new o3.WrappedNodeExpr(clazz.name),
1374813762 className: clazz.name.text,
1374913763 filePath,
13750- locals: extractHmrLocals(clazz, definition, factory, classMetadata, debugInfo) ,
13751- coreName: "__ngCore__"
13764+ localDependencies: dependencies.local ,
13765+ namespaceDependencies: dependencies.external
1375213766 };
1375313767 return meta;
1375413768}
@@ -13757,7 +13771,11 @@ function extractHmrMetatadata(clazz, reflection, compilerHost, rootDirs, definit
1375713771import { compileHmrUpdateCallback } from "@angular/compiler";
1375813772import ts46 from "typescript";
1375913773function getHmrUpdateDeclaration(compilationResults, constantStatements, meta, sourceFile) {
13760- const importRewriter = new HmrModuleImportRewriter(meta.coreName);
13774+ const namespaceSpecifiers = meta.namespaceDependencies.reduce((result, current) => {
13775+ result.set(current.moduleName, current.assignedName);
13776+ return result;
13777+ }, /* @__PURE__ */ new Map());
13778+ const importRewriter = new HmrModuleImportRewriter(namespaceSpecifiers);
1376113779 const importManager = new ImportManager({
1376213780 ...presetImportManagerForceNamespaceImports,
1376313781 rewriter: importRewriter
@@ -13770,12 +13788,12 @@ function getHmrUpdateDeclaration(compilationResults, constantStatements, meta, s
1377013788 ], node.asteriskToken, node.name, node.typeParameters, node.parameters, node.type, node.body);
1377113789}
1377213790var HmrModuleImportRewriter = class {
13773- coreName ;
13774- constructor(coreName ) {
13775- this.coreName = coreName ;
13791+ lookup ;
13792+ constructor(lookup ) {
13793+ this.lookup = lookup ;
1377613794 }
1377713795 rewriteNamespaceImportIdentifier(specifier, moduleName) {
13778- return moduleName === "@angular/core" ? this.coreName : specifier;
13796+ return this.lookup.has( moduleName) ? this.lookup.get(moduleName) : specifier;
1377913797 }
1378013798 rewriteSymbol(symbol) {
1378113799 return symbol;
@@ -15428,4 +15446,4 @@ export {
1542815446 * Use of this source code is governed by an MIT-style license that can be
1542915447 * found in the LICENSE file at https://angular.dev/license
1543015448 */
15431- //# sourceMappingURL=chunk-ZEPJHGBL .js.map
15449+ //# sourceMappingURL=chunk-RCYKQXTN .js.map
0 commit comments