@angular/compiler-cli 15.2.0 → 16.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/{chunk-PKSKJEUS.js → chunk-2DMH5JXJ.js} +9 -18
- package/bundles/{chunk-PKSKJEUS.js.map → chunk-2DMH5JXJ.js.map} +1 -1
- package/bundles/{chunk-P6SWFK2U.js → chunk-4TCRZYAK.js} +2 -2
- package/bundles/{chunk-NJMZRTB6.js → chunk-54RHUHYB.js} +1 -2
- package/bundles/{chunk-2PLRZDNU.js → chunk-6CARGXRJ.js} +5 -5
- package/bundles/{chunk-O4JLZZWJ.js → chunk-EDWIBG7R.js} +1 -10
- package/bundles/chunk-EDWIBG7R.js.map +6 -0
- package/bundles/{chunk-6ZJFIQBG.js → chunk-GYHDNUIK.js} +1 -2
- package/bundles/{chunk-2OF2AI57.js → chunk-IS6KZYEA.js} +377 -609
- package/bundles/chunk-IS6KZYEA.js.map +6 -0
- package/bundles/{chunk-J3L7WZP3.js → chunk-JHMH3CX2.js} +3 -3
- package/bundles/{chunk-ZCBRXUPO.js → chunk-K2A5WD7L.js} +1 -6
- package/bundles/chunk-K2A5WD7L.js.map +6 -0
- package/bundles/{chunk-QRHWLC7U.js → chunk-PSGRCFPQ.js} +2 -2
- package/bundles/index.js +13 -13
- package/bundles/linker/babel/index.js +8 -8
- package/bundles/linker/index.js +4 -4
- package/bundles/private/bazel.js +1 -1
- package/bundles/private/localize.js +1 -1
- package/bundles/private/migrations.js +5 -5
- package/bundles/private/tooling.js +3 -3
- package/bundles/src/bin/ng_xi18n.js +7 -7
- package/bundles/src/bin/ngc.js +7 -7
- package/bundles_metadata.json +1 -1
- package/package.json +2 -15
- package/src/ngtsc/annotations/ng_module/src/handler.d.ts +1 -3
- package/src/ngtsc/core/api/src/adapter.d.ts +0 -7
- package/src/ngtsc/core/api/src/options.d.ts +2 -2
- package/src/ngtsc/core/api/src/public_options.d.ts +0 -25
- package/src/ngtsc/core/src/host.d.ts +3 -5
- package/src/ngtsc/shims/api.d.ts +0 -19
- package/src/ngtsc/shims/index.d.ts +0 -2
- package/src/transformers/api.d.ts +0 -5
- package/bundles/chunk-2OF2AI57.js.map +0 -6
- package/bundles/chunk-7DUI3BSX.js +0 -29
- package/bundles/chunk-7DUI3BSX.js.map +0 -6
- package/bundles/chunk-MLCT4AWL.js +0 -2187
- package/bundles/chunk-MLCT4AWL.js.map +0 -6
- package/bundles/chunk-NXCQCU6C.js +0 -5265
- package/bundles/chunk-NXCQCU6C.js.map +0 -6
- package/bundles/chunk-O4JLZZWJ.js.map +0 -6
- package/bundles/chunk-YRDMG3GM.js +0 -115
- package/bundles/chunk-YRDMG3GM.js.map +0 -6
- package/bundles/chunk-ZCBRXUPO.js.map +0 -6
- package/bundles/ngcc/index.js +0 -52
- package/bundles/ngcc/index.js.map +0 -6
- package/bundles/ngcc/main-ngcc.js +0 -49
- package/bundles/ngcc/main-ngcc.js.map +0 -6
- package/bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js +0 -114
- package/bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js.map +0 -6
- package/bundles/ngcc/src/locking/lock_file_with_child_process/ngcc_lock_unlocker.js +0 -34
- package/bundles/ngcc/src/locking/lock_file_with_child_process/ngcc_lock_unlocker.js.map +0 -6
- package/ngcc/index.d.ts +0 -19
- package/ngcc/main-ngcc.d.ts +0 -2
- package/ngcc/src/analysis/decoration_analyzer.d.ts +0 -80
- package/ngcc/src/analysis/migration_host.d.ts +0 -22
- package/ngcc/src/analysis/module_with_providers_analyzer.d.ts +0 -61
- package/ngcc/src/analysis/ngcc_references_registry.d.ts +0 -34
- package/ngcc/src/analysis/ngcc_trait_compiler.d.ts +0 -42
- package/ngcc/src/analysis/private_declarations_analyzer.d.ts +0 -29
- package/ngcc/src/analysis/types.d.ts +0 -29
- package/ngcc/src/analysis/util.d.ts +0 -11
- package/ngcc/src/command_line_options.d.ts +0 -3
- package/ngcc/src/constants.d.ts +0 -9
- package/ngcc/src/dependencies/commonjs_dependency_host.d.ts +0 -20
- package/ngcc/src/dependencies/dependency_host.d.ts +0 -77
- package/ngcc/src/dependencies/dependency_resolver.d.ts +0 -102
- package/ngcc/src/dependencies/dts_dependency_host.d.ts +0 -20
- package/ngcc/src/dependencies/esm_dependency_host.d.ts +0 -93
- package/ngcc/src/dependencies/module_resolver.d.ts +0 -134
- package/ngcc/src/dependencies/umd_dependency_host.d.ts +0 -9
- package/ngcc/src/entry_point_finder/directory_walker_entry_point_finder.d.ts +0 -41
- package/ngcc/src/entry_point_finder/entry_point_collector.d.ts +0 -41
- package/ngcc/src/entry_point_finder/interface.d.ts +0 -14
- package/ngcc/src/entry_point_finder/program_based_entry_point_finder.d.ts +0 -61
- package/ngcc/src/entry_point_finder/targeted_entry_point_finder.d.ts +0 -95
- package/ngcc/src/entry_point_finder/tracing_entry_point_finder.d.ts +0 -67
- package/ngcc/src/entry_point_finder/utils.d.ts +0 -38
- package/ngcc/src/execution/analyze_entry_points.d.ts +0 -9
- package/ngcc/src/execution/api.d.ts +0 -27
- package/ngcc/src/execution/cluster/api.d.ts +0 -51
- package/ngcc/src/execution/cluster/executor.d.ts +0 -29
- package/ngcc/src/execution/cluster/master.d.ts +0 -57
- package/ngcc/src/execution/cluster/ngcc_cluster_worker.d.ts +0 -8
- package/ngcc/src/execution/cluster/package_json_updater.d.ts +0 -22
- package/ngcc/src/execution/cluster/utils.d.ts +0 -44
- package/ngcc/src/execution/cluster/worker.d.ts +0 -10
- package/ngcc/src/execution/create_compile_function.d.ts +0 -10
- package/ngcc/src/execution/single_process_executor.d.ts +0 -34
- package/ngcc/src/execution/tasks/api.d.ts +0 -141
- package/ngcc/src/execution/tasks/completion.d.ts +0 -41
- package/ngcc/src/execution/tasks/queues/base_task_queue.d.ts +0 -38
- package/ngcc/src/execution/tasks/queues/parallel_task_queue.d.ts +0 -27
- package/ngcc/src/execution/tasks/queues/serial_task_queue.d.ts +0 -16
- package/ngcc/src/execution/tasks/utils.d.ts +0 -57
- package/ngcc/src/host/commonjs_host.d.ts +0 -69
- package/ngcc/src/host/commonjs_umd_utils.d.ts +0 -146
- package/ngcc/src/host/delegating_host.d.ts +0 -43
- package/ngcc/src/host/esm2015_host.d.ts +0 -935
- package/ngcc/src/host/esm5_host.d.ts +0 -299
- package/ngcc/src/host/ngcc_host.d.ts +0 -87
- package/ngcc/src/host/umd_host.d.ts +0 -85
- package/ngcc/src/host/utils.d.ts +0 -9
- package/ngcc/src/locking/async_locker.d.ts +0 -34
- package/ngcc/src/locking/lock_file.d.ts +0 -31
- package/ngcc/src/locking/lock_file_with_child_process/index.d.ts +0 -44
- package/ngcc/src/locking/lock_file_with_child_process/ngcc_lock_unlocker.d.ts +0 -1
- package/ngcc/src/locking/lock_file_with_child_process/util.d.ts +0 -16
- package/ngcc/src/locking/sync_locker.d.ts +0 -35
- package/ngcc/src/main.d.ts +0 -17
- package/ngcc/src/migrations/migration.d.ts +0 -59
- package/ngcc/src/migrations/missing_injectable_migration.d.ts +0 -35
- package/ngcc/src/migrations/undecorated_child_migration.d.ts +0 -15
- package/ngcc/src/migrations/undecorated_parent_migration.d.ts +0 -51
- package/ngcc/src/migrations/utils.d.ts +0 -41
- package/ngcc/src/ngcc_options.d.ts +0 -155
- package/ngcc/src/packages/adjust_cjs_umd_exports.d.ts +0 -16
- package/ngcc/src/packages/build_marker.d.ts +0 -44
- package/ngcc/src/packages/bundle_program.d.ts +0 -35
- package/ngcc/src/packages/configuration.d.ts +0 -222
- package/ngcc/src/packages/entry_point.d.ts +0 -109
- package/ngcc/src/packages/entry_point_bundle.d.ts +0 -46
- package/ngcc/src/packages/entry_point_manifest.d.ts +0 -79
- package/ngcc/src/packages/ngcc_compiler_host.d.ts +0 -36
- package/ngcc/src/packages/patch_ts_expando_initializer.d.ts +0 -41
- package/ngcc/src/packages/source_file_cache.d.ts +0 -97
- package/ngcc/src/packages/transformer.d.ts +0 -70
- package/ngcc/src/path_mappings.d.ts +0 -19
- package/ngcc/src/rendering/commonjs_rendering_formatter.d.ts +0 -34
- package/ngcc/src/rendering/dts_renderer.d.ts +0 -51
- package/ngcc/src/rendering/esm5_rendering_formatter.d.ts +0 -35
- package/ngcc/src/rendering/esm_rendering_formatter.d.ts +0 -84
- package/ngcc/src/rendering/ngcc_import_rewriter.d.ts +0 -13
- package/ngcc/src/rendering/renderer.d.ts +0 -72
- package/ngcc/src/rendering/rendering_formatter.d.ts +0 -37
- package/ngcc/src/rendering/source_maps.d.ts +0 -23
- package/ngcc/src/rendering/umd_rendering_formatter.d.ts +0 -54
- package/ngcc/src/rendering/utils.d.ts +0 -24
- package/ngcc/src/utils.d.ts +0 -112
- package/ngcc/src/writing/cleaning/cleaning_strategies.d.ts +0 -44
- package/ngcc/src/writing/cleaning/package_cleaner.d.ts +0 -38
- package/ngcc/src/writing/cleaning/utils.d.ts +0 -15
- package/ngcc/src/writing/file_writer.d.ts +0 -28
- package/ngcc/src/writing/in_place_file_writer.d.ts +0 -28
- package/ngcc/src/writing/new_entry_point_file_writer.d.ts +0 -48
- package/ngcc/src/writing/package_json_updater.d.ts +0 -98
- package/src/ngtsc/shims/src/factory_generator.d.ts +0 -24
- package/src/ngtsc/shims/src/summary_generator.d.ts +0 -15
- /package/bundles/{chunk-P6SWFK2U.js.map → chunk-4TCRZYAK.js.map} +0 -0
- /package/bundles/{chunk-NJMZRTB6.js.map → chunk-54RHUHYB.js.map} +0 -0
- /package/bundles/{chunk-2PLRZDNU.js.map → chunk-6CARGXRJ.js.map} +0 -0
- /package/bundles/{chunk-6ZJFIQBG.js.map → chunk-GYHDNUIK.js.map} +0 -0
- /package/bundles/{chunk-J3L7WZP3.js.map → chunk-JHMH3CX2.js.map} +0 -0
- /package/bundles/{chunk-QRHWLC7U.js.map → chunk-PSGRCFPQ.js.map} +0 -0
|
@@ -35,18 +35,18 @@ import {
|
|
|
35
35
|
aliasTransformFactory,
|
|
36
36
|
declarationTransformFactory,
|
|
37
37
|
ivyTransformFactory
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-2DMH5JXJ.js";
|
|
39
39
|
import {
|
|
40
40
|
TypeScriptReflectionHost,
|
|
41
41
|
isNamedClassDeclaration
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-EDWIBG7R.js";
|
|
43
43
|
import {
|
|
44
44
|
ImportManager,
|
|
45
45
|
createFunctionDeclaration,
|
|
46
46
|
createParameterDeclaration,
|
|
47
47
|
translateExpression,
|
|
48
48
|
translateType
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-PSGRCFPQ.js";
|
|
50
50
|
import {
|
|
51
51
|
AbsoluteModuleStrategy,
|
|
52
52
|
AliasStrategy,
|
|
@@ -84,25 +84,24 @@ import {
|
|
|
84
84
|
relativePathBetween,
|
|
85
85
|
replaceTsWithNgInErrors,
|
|
86
86
|
toUnredirectedSourceFile
|
|
87
|
-
} from "./chunk-
|
|
87
|
+
} from "./chunk-K2A5WD7L.js";
|
|
88
|
+
import {
|
|
89
|
+
ActivePerfRecorder,
|
|
90
|
+
DelegatingPerfRecorder,
|
|
91
|
+
PerfCheckpoint,
|
|
92
|
+
PerfEvent,
|
|
93
|
+
PerfPhase
|
|
94
|
+
} from "./chunk-54RHUHYB.js";
|
|
88
95
|
import {
|
|
89
96
|
LogicalFileSystem,
|
|
90
97
|
absoluteFrom,
|
|
91
98
|
absoluteFromSourceFile,
|
|
92
|
-
basename,
|
|
93
99
|
dirname,
|
|
94
100
|
getFileSystem,
|
|
95
101
|
getSourceFileOrError,
|
|
96
102
|
join,
|
|
97
103
|
resolve
|
|
98
104
|
} from "./chunk-EC5K6QPP.js";
|
|
99
|
-
import {
|
|
100
|
-
ActivePerfRecorder,
|
|
101
|
-
DelegatingPerfRecorder,
|
|
102
|
-
PerfCheckpoint,
|
|
103
|
-
PerfEvent,
|
|
104
|
-
PerfPhase
|
|
105
|
-
} from "./chunk-NJMZRTB6.js";
|
|
106
105
|
|
|
107
106
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/api.mjs
|
|
108
107
|
var DEFAULT_ERROR_CODE = 100;
|
|
@@ -134,7 +133,7 @@ function createCompilerHost({ options, tsHost = ts.createCompilerHost(options, t
|
|
|
134
133
|
|
|
135
134
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/program.mjs
|
|
136
135
|
import { HtmlParser, MessageBundle } from "@angular/compiler";
|
|
137
|
-
import
|
|
136
|
+
import ts32 from "typescript";
|
|
138
137
|
|
|
139
138
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/i18n.mjs
|
|
140
139
|
import { Xliff, Xliff2, Xmb } from "@angular/compiler";
|
|
@@ -239,7 +238,7 @@ function verifySupportedTypeScriptVersion() {
|
|
|
239
238
|
}
|
|
240
239
|
|
|
241
240
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/compiler.mjs
|
|
242
|
-
import
|
|
241
|
+
import ts30 from "typescript";
|
|
243
242
|
|
|
244
243
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/cycles/src/analyzer.mjs
|
|
245
244
|
var CycleAnalyzer = class {
|
|
@@ -588,7 +587,7 @@ var UpdateMode;
|
|
|
588
587
|
})(UpdateMode || (UpdateMode = {}));
|
|
589
588
|
|
|
590
589
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/program_driver/src/ts_create_program_driver.mjs
|
|
591
|
-
import
|
|
590
|
+
import ts7 from "typescript";
|
|
592
591
|
|
|
593
592
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/adapter.mjs
|
|
594
593
|
import ts6 from "typescript";
|
|
@@ -658,15 +657,6 @@ var TS_EXTENSIONS = /\.tsx?$/i;
|
|
|
658
657
|
function makeShimFileName(fileName, suffix) {
|
|
659
658
|
return absoluteFrom(fileName.replace(TS_EXTENSIONS, suffix));
|
|
660
659
|
}
|
|
661
|
-
function generatedModuleName(originalModuleName, originalFileName, genSuffix) {
|
|
662
|
-
let moduleName;
|
|
663
|
-
if (originalFileName.endsWith("/index.ts")) {
|
|
664
|
-
moduleName = originalModuleName + "/index" + genSuffix;
|
|
665
|
-
} else {
|
|
666
|
-
moduleName = originalModuleName + genSuffix;
|
|
667
|
-
}
|
|
668
|
-
return moduleName;
|
|
669
|
-
}
|
|
670
660
|
|
|
671
661
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/adapter.mjs
|
|
672
662
|
var ShimAdapter = class {
|
|
@@ -763,166 +753,6 @@ var ShimAdapter = class {
|
|
|
763
753
|
}
|
|
764
754
|
};
|
|
765
755
|
|
|
766
|
-
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/factory_generator.mjs
|
|
767
|
-
import ts7 from "typescript";
|
|
768
|
-
var TS_DTS_SUFFIX = /(\.d)?\.ts$/;
|
|
769
|
-
var STRIP_NG_FACTORY = /(.*)NgFactory$/;
|
|
770
|
-
var FactoryGenerator = class {
|
|
771
|
-
constructor() {
|
|
772
|
-
this.sourceInfo = /* @__PURE__ */ new Map();
|
|
773
|
-
this.sourceToFactorySymbols = /* @__PURE__ */ new Map();
|
|
774
|
-
this.shouldEmit = true;
|
|
775
|
-
this.extensionPrefix = "ngfactory";
|
|
776
|
-
}
|
|
777
|
-
generateShimForFile(sf, genFilePath) {
|
|
778
|
-
const absoluteSfPath = absoluteFromSourceFile(sf);
|
|
779
|
-
const relativePathToSource = "./" + basename(sf.fileName).replace(TS_DTS_SUFFIX, "");
|
|
780
|
-
const symbolNames = sf.statements.filter(ts7.isClassDeclaration).filter((decl) => isExported(decl) && ts7.getDecorators(decl) !== void 0 && decl.name !== void 0).map((decl) => decl.name.text);
|
|
781
|
-
let sourceText = "";
|
|
782
|
-
const leadingComment = getFileoverviewComment(sf);
|
|
783
|
-
if (leadingComment !== null) {
|
|
784
|
-
sourceText = leadingComment + "\n\n";
|
|
785
|
-
}
|
|
786
|
-
if (symbolNames.length > 0) {
|
|
787
|
-
const varLines = symbolNames.map((name) => `export const ${name}NgFactory: i0.\u0275NgModuleFactory<any> = new i0.\u0275NgModuleFactory(${name});`);
|
|
788
|
-
sourceText += [
|
|
789
|
-
`import * as i0 from '@angular/core';`,
|
|
790
|
-
`import {${symbolNames.join(", ")}} from '${relativePathToSource}';`,
|
|
791
|
-
...varLines
|
|
792
|
-
].join("\n");
|
|
793
|
-
}
|
|
794
|
-
sourceText += "\nexport const \u0275NonEmptyModule = true;";
|
|
795
|
-
const genFile = ts7.createSourceFile(genFilePath, sourceText, sf.languageVersion, true, ts7.ScriptKind.TS);
|
|
796
|
-
if (sf.moduleName !== void 0) {
|
|
797
|
-
genFile.moduleName = generatedModuleName(sf.moduleName, sf.fileName, ".ngfactory");
|
|
798
|
-
}
|
|
799
|
-
const moduleSymbols = /* @__PURE__ */ new Map();
|
|
800
|
-
this.sourceToFactorySymbols.set(absoluteSfPath, moduleSymbols);
|
|
801
|
-
this.sourceInfo.set(genFilePath, {
|
|
802
|
-
sourceFilePath: absoluteSfPath,
|
|
803
|
-
moduleSymbols
|
|
804
|
-
});
|
|
805
|
-
return genFile;
|
|
806
|
-
}
|
|
807
|
-
track(sf, moduleInfo) {
|
|
808
|
-
if (this.sourceToFactorySymbols.has(sf.fileName)) {
|
|
809
|
-
this.sourceToFactorySymbols.get(sf.fileName).set(moduleInfo.name, moduleInfo);
|
|
810
|
-
}
|
|
811
|
-
}
|
|
812
|
-
};
|
|
813
|
-
function isExported(decl) {
|
|
814
|
-
const modifiers = ts7.canHaveModifiers(decl) ? ts7.getModifiers(decl) : void 0;
|
|
815
|
-
return modifiers !== void 0 && modifiers.some((mod) => mod.kind == ts7.SyntaxKind.ExportKeyword);
|
|
816
|
-
}
|
|
817
|
-
function generatedFactoryTransform(factoryMap, importRewriter) {
|
|
818
|
-
return (context) => {
|
|
819
|
-
return (file) => {
|
|
820
|
-
return transformFactorySourceFile(factoryMap, context, importRewriter, file);
|
|
821
|
-
};
|
|
822
|
-
};
|
|
823
|
-
}
|
|
824
|
-
function transformFactorySourceFile(factoryMap, context, importRewriter, file) {
|
|
825
|
-
if (!factoryMap.has(file.fileName)) {
|
|
826
|
-
return file;
|
|
827
|
-
}
|
|
828
|
-
const { moduleSymbols, sourceFilePath } = factoryMap.get(file.fileName);
|
|
829
|
-
const transformedStatements = [];
|
|
830
|
-
let nonEmptyExport = null;
|
|
831
|
-
const coreImportIdentifiers = /* @__PURE__ */ new Set();
|
|
832
|
-
for (const stmt of file.statements) {
|
|
833
|
-
if (ts7.isImportDeclaration(stmt) && ts7.isStringLiteral(stmt.moduleSpecifier) && stmt.moduleSpecifier.text === "@angular/core") {
|
|
834
|
-
const rewrittenModuleSpecifier = importRewriter.rewriteSpecifier("@angular/core", sourceFilePath);
|
|
835
|
-
if (rewrittenModuleSpecifier !== stmt.moduleSpecifier.text) {
|
|
836
|
-
transformedStatements.push(ts7.factory.updateImportDeclaration(stmt, ts7.getModifiers(stmt), stmt.importClause, ts7.factory.createStringLiteral(rewrittenModuleSpecifier), void 0));
|
|
837
|
-
if (stmt.importClause !== void 0 && stmt.importClause.namedBindings !== void 0 && ts7.isNamespaceImport(stmt.importClause.namedBindings)) {
|
|
838
|
-
coreImportIdentifiers.add(stmt.importClause.namedBindings.name.text);
|
|
839
|
-
}
|
|
840
|
-
} else {
|
|
841
|
-
transformedStatements.push(stmt);
|
|
842
|
-
}
|
|
843
|
-
} else if (ts7.isVariableStatement(stmt) && stmt.declarationList.declarations.length === 1) {
|
|
844
|
-
const decl = stmt.declarationList.declarations[0];
|
|
845
|
-
if (ts7.isIdentifier(decl.name)) {
|
|
846
|
-
if (decl.name.text === "\u0275NonEmptyModule") {
|
|
847
|
-
nonEmptyExport = stmt;
|
|
848
|
-
continue;
|
|
849
|
-
}
|
|
850
|
-
const match = STRIP_NG_FACTORY.exec(decl.name.text);
|
|
851
|
-
const module = match ? moduleSymbols.get(match[1]) : null;
|
|
852
|
-
if (module) {
|
|
853
|
-
transformedStatements.push(updateInitializers(stmt, (init) => init ? wrapInNoSideEffects(init) : void 0));
|
|
854
|
-
}
|
|
855
|
-
} else {
|
|
856
|
-
transformedStatements.push(stmt);
|
|
857
|
-
}
|
|
858
|
-
} else {
|
|
859
|
-
transformedStatements.push(stmt);
|
|
860
|
-
}
|
|
861
|
-
}
|
|
862
|
-
if (!transformedStatements.some(ts7.isVariableStatement) && nonEmptyExport !== null) {
|
|
863
|
-
transformedStatements.push(nonEmptyExport);
|
|
864
|
-
}
|
|
865
|
-
file = ts7.factory.updateSourceFile(file, transformedStatements);
|
|
866
|
-
if (coreImportIdentifiers.size > 0) {
|
|
867
|
-
const visit = (node) => {
|
|
868
|
-
node = ts7.visitEachChild(node, (child) => visit(child), context);
|
|
869
|
-
if (ts7.isPropertyAccessExpression(node) && ts7.isIdentifier(node.expression) && coreImportIdentifiers.has(node.expression.text)) {
|
|
870
|
-
const rewrittenSymbol = importRewriter.rewriteSymbol(node.name.text, "@angular/core");
|
|
871
|
-
if (rewrittenSymbol !== node.name.text) {
|
|
872
|
-
const updated = ts7.factory.updatePropertyAccessExpression(node, node.expression, ts7.factory.createIdentifier(rewrittenSymbol));
|
|
873
|
-
node = updated;
|
|
874
|
-
}
|
|
875
|
-
}
|
|
876
|
-
return node;
|
|
877
|
-
};
|
|
878
|
-
file = visit(file);
|
|
879
|
-
}
|
|
880
|
-
return file;
|
|
881
|
-
}
|
|
882
|
-
function getFileoverviewComment(sourceFile) {
|
|
883
|
-
const text = sourceFile.getFullText();
|
|
884
|
-
const trivia = text.substring(0, sourceFile.getStart());
|
|
885
|
-
const leadingComments = ts7.getLeadingCommentRanges(trivia, 0);
|
|
886
|
-
if (!leadingComments || leadingComments.length === 0) {
|
|
887
|
-
return null;
|
|
888
|
-
}
|
|
889
|
-
const comment = leadingComments[0];
|
|
890
|
-
if (comment.kind !== ts7.SyntaxKind.MultiLineCommentTrivia) {
|
|
891
|
-
return null;
|
|
892
|
-
}
|
|
893
|
-
if (text.substring(comment.end, comment.end + 2) !== "\n\n") {
|
|
894
|
-
return null;
|
|
895
|
-
}
|
|
896
|
-
const commentText = text.substring(comment.pos, comment.end);
|
|
897
|
-
if (commentText.indexOf("@license") !== -1) {
|
|
898
|
-
return null;
|
|
899
|
-
}
|
|
900
|
-
return commentText;
|
|
901
|
-
}
|
|
902
|
-
function wrapInNoSideEffects(expr) {
|
|
903
|
-
const noSideEffects = ts7.factory.createPropertyAccessExpression(ts7.factory.createIdentifier("i0"), "\u0275noSideEffects");
|
|
904
|
-
return ts7.factory.createCallExpression(
|
|
905
|
-
noSideEffects,
|
|
906
|
-
[],
|
|
907
|
-
[
|
|
908
|
-
ts7.factory.createFunctionExpression(
|
|
909
|
-
[],
|
|
910
|
-
void 0,
|
|
911
|
-
void 0,
|
|
912
|
-
[],
|
|
913
|
-
[],
|
|
914
|
-
void 0,
|
|
915
|
-
ts7.factory.createBlock([
|
|
916
|
-
ts7.factory.createReturnStatement(expr)
|
|
917
|
-
])
|
|
918
|
-
)
|
|
919
|
-
]
|
|
920
|
-
);
|
|
921
|
-
}
|
|
922
|
-
function updateInitializers(stmt, update) {
|
|
923
|
-
return ts7.factory.updateVariableStatement(stmt, ts7.getModifiers(stmt), ts7.factory.updateVariableDeclarationList(stmt.declarationList, stmt.declarationList.declarations.map((decl) => ts7.factory.updateVariableDeclaration(decl, decl.name, decl.exclamationToken, decl.type, update(decl.initializer)))));
|
|
924
|
-
}
|
|
925
|
-
|
|
926
756
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/reference_tagger.mjs
|
|
927
757
|
var ShimReferenceTagger = class {
|
|
928
758
|
constructor(shimExtensions) {
|
|
@@ -957,47 +787,6 @@ var ShimReferenceTagger = class {
|
|
|
957
787
|
}
|
|
958
788
|
};
|
|
959
789
|
|
|
960
|
-
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/summary_generator.mjs
|
|
961
|
-
import ts8 from "typescript";
|
|
962
|
-
var SummaryGenerator = class {
|
|
963
|
-
constructor() {
|
|
964
|
-
this.shouldEmit = true;
|
|
965
|
-
this.extensionPrefix = "ngsummary";
|
|
966
|
-
}
|
|
967
|
-
generateShimForFile(sf, genFilePath) {
|
|
968
|
-
const symbolNames = [];
|
|
969
|
-
for (const stmt of sf.statements) {
|
|
970
|
-
if (ts8.isClassDeclaration(stmt)) {
|
|
971
|
-
if (!isExported2(stmt) || stmt.name === void 0 || ts8.getDecorators(stmt) === void 0) {
|
|
972
|
-
continue;
|
|
973
|
-
}
|
|
974
|
-
symbolNames.push(stmt.name.text);
|
|
975
|
-
} else if (ts8.isExportDeclaration(stmt)) {
|
|
976
|
-
if (stmt.exportClause === void 0 || stmt.moduleSpecifier !== void 0 || !ts8.isNamedExports(stmt.exportClause)) {
|
|
977
|
-
continue;
|
|
978
|
-
}
|
|
979
|
-
for (const specifier of stmt.exportClause.elements) {
|
|
980
|
-
symbolNames.push(specifier.name.text);
|
|
981
|
-
}
|
|
982
|
-
}
|
|
983
|
-
}
|
|
984
|
-
const varLines = symbolNames.map((name) => `export const ${name}NgSummary: any = null;`);
|
|
985
|
-
if (varLines.length === 0) {
|
|
986
|
-
varLines.push(`export const \u0275empty = null;`);
|
|
987
|
-
}
|
|
988
|
-
const sourceText = varLines.join("\n");
|
|
989
|
-
const genFile = ts8.createSourceFile(genFilePath, sourceText, sf.languageVersion, true, ts8.ScriptKind.TS);
|
|
990
|
-
if (sf.moduleName !== void 0) {
|
|
991
|
-
genFile.moduleName = generatedModuleName(sf.moduleName, sf.fileName, ".ngsummary");
|
|
992
|
-
}
|
|
993
|
-
return genFile;
|
|
994
|
-
}
|
|
995
|
-
};
|
|
996
|
-
function isExported2(decl) {
|
|
997
|
-
const modifiers = ts8.canHaveModifiers(decl) ? ts8.getModifiers(decl) : void 0;
|
|
998
|
-
return modifiers !== void 0 && modifiers.some((mod) => mod.kind == ts8.SyntaxKind.ExportKeyword) || false;
|
|
999
|
-
}
|
|
1000
|
-
|
|
1001
790
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/program_driver/src/ts_create_program_driver.mjs
|
|
1002
791
|
var DelegatingCompilerHost = class {
|
|
1003
792
|
constructor(delegate) {
|
|
@@ -1088,7 +877,7 @@ var TsCreateProgramDriver = class {
|
|
|
1088
877
|
this.sfMap.clear();
|
|
1089
878
|
}
|
|
1090
879
|
for (const [filePath, { newText, originalFile }] of contents.entries()) {
|
|
1091
|
-
const sf =
|
|
880
|
+
const sf = ts7.createSourceFile(filePath, newText, ts7.ScriptTarget.Latest, true);
|
|
1092
881
|
if (originalFile !== null) {
|
|
1093
882
|
sf[NgOriginalFile] = originalFile;
|
|
1094
883
|
}
|
|
@@ -1097,7 +886,7 @@ var TsCreateProgramDriver = class {
|
|
|
1097
886
|
const host = new UpdatedProgramHost(this.sfMap, this.originalProgram, this.originalHost, this.shimExtensionPrefixes);
|
|
1098
887
|
const oldProgram = this.program;
|
|
1099
888
|
retagAllTsFiles(oldProgram);
|
|
1100
|
-
this.program =
|
|
889
|
+
this.program = ts7.createProgram({
|
|
1101
890
|
host,
|
|
1102
891
|
rootNames: this.program.getRootFileNames(),
|
|
1103
892
|
options: this.options,
|
|
@@ -1815,7 +1604,7 @@ var NgModuleIndexImpl = class {
|
|
|
1815
1604
|
};
|
|
1816
1605
|
|
|
1817
1606
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/resource/src/loader.mjs
|
|
1818
|
-
import
|
|
1607
|
+
import ts8 from "typescript";
|
|
1819
1608
|
var CSS_PREPROCESSOR_EXT = /(\.scss|\.sass|\.less|\.styl)$/;
|
|
1820
1609
|
var RESOURCE_MARKER = ".$ngresource$";
|
|
1821
1610
|
var RESOURCE_MARKER_TS = RESOURCE_MARKER + ".ts";
|
|
@@ -1925,7 +1714,7 @@ var AdapterResourceLoader = class {
|
|
|
1925
1714
|
return this.adapter.rootDirs.map((rootDir) => join(rootDir, segment));
|
|
1926
1715
|
}
|
|
1927
1716
|
getResolvedCandidateLocations(url, fromFile) {
|
|
1928
|
-
const failedLookup =
|
|
1717
|
+
const failedLookup = ts8.resolveModuleName(url + RESOURCE_MARKER, fromFile, this.options, this.lookupResolutionHost);
|
|
1929
1718
|
if (failedLookup.failedLookupLocations === void 0) {
|
|
1930
1719
|
throw new Error(`Internal error: expected to find failedLookupLocations during resolution of resource '${url}' in context of ${fromFile}`);
|
|
1931
1720
|
}
|
|
@@ -2042,7 +1831,7 @@ var StandaloneComponentScopeReader = class {
|
|
|
2042
1831
|
import { CssSelector, DomElementSchemaRegistry as DomElementSchemaRegistry2, ExternalExpr as ExternalExpr2, WrappedNodeExpr } from "@angular/compiler";
|
|
2043
1832
|
|
|
2044
1833
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/diagnostics/src/diagnostic.mjs
|
|
2045
|
-
import
|
|
1834
|
+
import ts9 from "typescript";
|
|
2046
1835
|
function makeTemplateDiagnostic(templateId, mapping, span, category, code, messageText, relatedMessages) {
|
|
2047
1836
|
var _a;
|
|
2048
1837
|
if (mapping.type === "direct") {
|
|
@@ -2051,7 +1840,7 @@ function makeTemplateDiagnostic(templateId, mapping, span, category, code, messa
|
|
|
2051
1840
|
relatedInformation = [];
|
|
2052
1841
|
for (const relatedMessage of relatedMessages) {
|
|
2053
1842
|
relatedInformation.push({
|
|
2054
|
-
category:
|
|
1843
|
+
category: ts9.DiagnosticCategory.Message,
|
|
2055
1844
|
code: 0,
|
|
2056
1845
|
file: relatedMessage.sourceFile,
|
|
2057
1846
|
start: relatedMessage.start,
|
|
@@ -2080,7 +1869,7 @@ function makeTemplateDiagnostic(templateId, mapping, span, category, code, messa
|
|
|
2080
1869
|
if (relatedMessages !== void 0) {
|
|
2081
1870
|
for (const relatedMessage of relatedMessages) {
|
|
2082
1871
|
relatedInformation.push({
|
|
2083
|
-
category:
|
|
1872
|
+
category: ts9.DiagnosticCategory.Message,
|
|
2084
1873
|
code: 0,
|
|
2085
1874
|
file: relatedMessage.sourceFile,
|
|
2086
1875
|
start: relatedMessage.start,
|
|
@@ -2110,7 +1899,7 @@ function makeTemplateDiagnostic(templateId, mapping, span, category, code, messa
|
|
|
2110
1899
|
};
|
|
2111
1900
|
}
|
|
2112
1901
|
relatedInformation.push({
|
|
2113
|
-
category:
|
|
1902
|
+
category: ts9.DiagnosticCategory.Message,
|
|
2114
1903
|
code: 0,
|
|
2115
1904
|
file: componentSf,
|
|
2116
1905
|
start: mapping.node.getStart(),
|
|
@@ -2145,7 +1934,7 @@ function parseTemplateAsSourceFile(fileName, template) {
|
|
|
2145
1934
|
if (parseTemplateAsSourceFileForTest !== null) {
|
|
2146
1935
|
return parseTemplateAsSourceFileForTest(fileName, template);
|
|
2147
1936
|
}
|
|
2148
|
-
return
|
|
1937
|
+
return ts9.createSourceFile(fileName, template, ts9.ScriptTarget.Latest, false, ts9.ScriptKind.JSX);
|
|
2149
1938
|
}
|
|
2150
1939
|
|
|
2151
1940
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/diagnostics/src/id.mjs
|
|
@@ -2167,15 +1956,15 @@ function allocateTemplateId(sf) {
|
|
|
2167
1956
|
|
|
2168
1957
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/completion.mjs
|
|
2169
1958
|
import { EmptyExpr, ImplicitReceiver as ImplicitReceiver2, PropertyRead as PropertyRead2, PropertyWrite as PropertyWrite2, SafePropertyRead, TmplAstReference as TmplAstReference2, TmplAstTextAttribute } from "@angular/compiler";
|
|
2170
|
-
import
|
|
1959
|
+
import ts11 from "typescript";
|
|
2171
1960
|
|
|
2172
1961
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/comments.mjs
|
|
2173
1962
|
import { AbsoluteSourceSpan as AbsoluteSourceSpan2 } from "@angular/compiler";
|
|
2174
|
-
import
|
|
1963
|
+
import ts10 from "typescript";
|
|
2175
1964
|
var parseSpanComment = /^(\d+),(\d+)$/;
|
|
2176
1965
|
function readSpanComment(node, sourceFile = node.getSourceFile()) {
|
|
2177
|
-
return
|
|
2178
|
-
if (kind !==
|
|
1966
|
+
return ts10.forEachTrailingCommentRange(sourceFile.text, node.getEnd(), (pos, end, kind) => {
|
|
1967
|
+
if (kind !== ts10.SyntaxKind.MultiLineCommentTrivia) {
|
|
2179
1968
|
return null;
|
|
2180
1969
|
}
|
|
2181
1970
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -2198,25 +1987,25 @@ var ExpressionIdentifier;
|
|
|
2198
1987
|
ExpressionIdentifier2["EVENT_PARAMETER"] = "EP";
|
|
2199
1988
|
})(ExpressionIdentifier || (ExpressionIdentifier = {}));
|
|
2200
1989
|
function addExpressionIdentifier(node, identifier) {
|
|
2201
|
-
|
|
1990
|
+
ts10.addSyntheticTrailingComment(
|
|
2202
1991
|
node,
|
|
2203
|
-
|
|
1992
|
+
ts10.SyntaxKind.MultiLineCommentTrivia,
|
|
2204
1993
|
`${CommentTriviaType.EXPRESSION_TYPE_IDENTIFIER}:${identifier}`,
|
|
2205
1994
|
false
|
|
2206
1995
|
);
|
|
2207
1996
|
}
|
|
2208
1997
|
var IGNORE_FOR_DIAGNOSTICS_MARKER = `${CommentTriviaType.DIAGNOSTIC}:ignore`;
|
|
2209
1998
|
function markIgnoreDiagnostics(node) {
|
|
2210
|
-
|
|
1999
|
+
ts10.addSyntheticTrailingComment(
|
|
2211
2000
|
node,
|
|
2212
|
-
|
|
2001
|
+
ts10.SyntaxKind.MultiLineCommentTrivia,
|
|
2213
2002
|
IGNORE_FOR_DIAGNOSTICS_MARKER,
|
|
2214
2003
|
false
|
|
2215
2004
|
);
|
|
2216
2005
|
}
|
|
2217
2006
|
function hasIgnoreForDiagnosticsMarker(node, sourceFile) {
|
|
2218
|
-
return
|
|
2219
|
-
if (kind !==
|
|
2007
|
+
return ts10.forEachTrailingCommentRange(sourceFile.text, node.getEnd(), (pos, end, kind) => {
|
|
2008
|
+
if (kind !== ts10.SyntaxKind.MultiLineCommentTrivia) {
|
|
2220
2009
|
return null;
|
|
2221
2010
|
}
|
|
2222
2011
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -2290,8 +2079,8 @@ function findAllMatchingNodes(tcb, opts) {
|
|
|
2290
2079
|
return results;
|
|
2291
2080
|
}
|
|
2292
2081
|
function hasExpressionIdentifier(sourceFile, node, identifier) {
|
|
2293
|
-
return
|
|
2294
|
-
if (kind !==
|
|
2082
|
+
return ts10.forEachTrailingCommentRange(sourceFile.text, node.getEnd(), (pos, end, kind) => {
|
|
2083
|
+
if (kind !== ts10.SyntaxKind.MultiLineCommentTrivia) {
|
|
2295
2084
|
return false;
|
|
2296
2085
|
}
|
|
2297
2086
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -2309,7 +2098,7 @@ var CompletionEngine = class {
|
|
|
2309
2098
|
this.templateContextCache = /* @__PURE__ */ new Map();
|
|
2310
2099
|
this.expressionCompletionCache = /* @__PURE__ */ new Map();
|
|
2311
2100
|
const globalRead = findFirstMatchingNode(this.tcb, {
|
|
2312
|
-
filter:
|
|
2101
|
+
filter: ts11.isPropertyAccessExpression,
|
|
2313
2102
|
withExpressionIdentifier: ExpressionIdentifier.COMPONENT_COMPLETION
|
|
2314
2103
|
});
|
|
2315
2104
|
if (globalRead !== null) {
|
|
@@ -2333,7 +2122,7 @@ var CompletionEngine = class {
|
|
|
2333
2122
|
let nodeContext = null;
|
|
2334
2123
|
if (node instanceof EmptyExpr) {
|
|
2335
2124
|
const nodeLocation = findFirstMatchingNode(this.tcb, {
|
|
2336
|
-
filter:
|
|
2125
|
+
filter: ts11.isIdentifier,
|
|
2337
2126
|
withSpan: node.sourceSpan
|
|
2338
2127
|
});
|
|
2339
2128
|
if (nodeLocation !== null) {
|
|
@@ -2346,7 +2135,7 @@ var CompletionEngine = class {
|
|
|
2346
2135
|
}
|
|
2347
2136
|
if (node instanceof PropertyRead2 && node.receiver instanceof ImplicitReceiver2) {
|
|
2348
2137
|
const nodeLocation = findFirstMatchingNode(this.tcb, {
|
|
2349
|
-
filter:
|
|
2138
|
+
filter: ts11.isPropertyAccessExpression,
|
|
2350
2139
|
withSpan: node.sourceSpan
|
|
2351
2140
|
});
|
|
2352
2141
|
if (nodeLocation) {
|
|
@@ -2370,21 +2159,21 @@ var CompletionEngine = class {
|
|
|
2370
2159
|
let tsExpr = null;
|
|
2371
2160
|
if (expr instanceof PropertyRead2 || expr instanceof PropertyWrite2) {
|
|
2372
2161
|
tsExpr = findFirstMatchingNode(this.tcb, {
|
|
2373
|
-
filter:
|
|
2162
|
+
filter: ts11.isPropertyAccessExpression,
|
|
2374
2163
|
withSpan: expr.nameSpan
|
|
2375
2164
|
});
|
|
2376
2165
|
} else if (expr instanceof SafePropertyRead) {
|
|
2377
2166
|
const ternaryExpr = findFirstMatchingNode(this.tcb, {
|
|
2378
|
-
filter:
|
|
2167
|
+
filter: ts11.isParenthesizedExpression,
|
|
2379
2168
|
withSpan: expr.sourceSpan
|
|
2380
2169
|
});
|
|
2381
|
-
if (ternaryExpr === null || !
|
|
2170
|
+
if (ternaryExpr === null || !ts11.isConditionalExpression(ternaryExpr.expression)) {
|
|
2382
2171
|
return null;
|
|
2383
2172
|
}
|
|
2384
2173
|
const whenTrue = ternaryExpr.expression.whenTrue;
|
|
2385
|
-
if (
|
|
2174
|
+
if (ts11.isPropertyAccessExpression(whenTrue)) {
|
|
2386
2175
|
tsExpr = whenTrue;
|
|
2387
|
-
} else if (
|
|
2176
|
+
} else if (ts11.isCallExpression(whenTrue) && ts11.isPropertyAccessExpression(whenTrue.expression)) {
|
|
2388
2177
|
tsExpr = whenTrue.expression;
|
|
2389
2178
|
}
|
|
2390
2179
|
}
|
|
@@ -2406,15 +2195,15 @@ var CompletionEngine = class {
|
|
|
2406
2195
|
let tsExpr = null;
|
|
2407
2196
|
if (expr instanceof TmplAstTextAttribute) {
|
|
2408
2197
|
const strNode = findFirstMatchingNode(this.tcb, {
|
|
2409
|
-
filter:
|
|
2198
|
+
filter: ts11.isParenthesizedExpression,
|
|
2410
2199
|
withSpan: expr.sourceSpan
|
|
2411
2200
|
});
|
|
2412
|
-
if (strNode !== null &&
|
|
2201
|
+
if (strNode !== null && ts11.isStringLiteral(strNode.expression)) {
|
|
2413
2202
|
tsExpr = strNode.expression;
|
|
2414
2203
|
}
|
|
2415
2204
|
} else {
|
|
2416
2205
|
tsExpr = findFirstMatchingNode(this.tcb, {
|
|
2417
|
-
filter: (n) =>
|
|
2206
|
+
filter: (n) => ts11.isStringLiteral(n) || ts11.isNumericLiteral(n),
|
|
2418
2207
|
withSpan: expr.sourceSpan
|
|
2419
2208
|
});
|
|
2420
2209
|
}
|
|
@@ -2422,7 +2211,7 @@ var CompletionEngine = class {
|
|
|
2422
2211
|
return null;
|
|
2423
2212
|
}
|
|
2424
2213
|
let positionInShimFile = tsExpr.getEnd();
|
|
2425
|
-
if (
|
|
2214
|
+
if (ts11.isStringLiteral(tsExpr)) {
|
|
2426
2215
|
positionInShimFile -= 1;
|
|
2427
2216
|
}
|
|
2428
2217
|
const res = {
|
|
@@ -2457,11 +2246,11 @@ var CompletionEngine = class {
|
|
|
2457
2246
|
};
|
|
2458
2247
|
|
|
2459
2248
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/context.mjs
|
|
2460
|
-
import
|
|
2249
|
+
import ts25 from "typescript";
|
|
2461
2250
|
|
|
2462
2251
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/dom.mjs
|
|
2463
2252
|
import { DomElementSchemaRegistry } from "@angular/compiler";
|
|
2464
|
-
import
|
|
2253
|
+
import ts12 from "typescript";
|
|
2465
2254
|
var REGISTRY = new DomElementSchemaRegistry();
|
|
2466
2255
|
var REMOVE_XHTML_REGEX = /^:xhtml:/;
|
|
2467
2256
|
var RegistryDomSchemaChecker = class {
|
|
@@ -2486,7 +2275,7 @@ var RegistryDomSchemaChecker = class {
|
|
|
2486
2275
|
} else {
|
|
2487
2276
|
errorMsg += `2. To allow any element add 'NO_ERRORS_SCHEMA' to the ${schemas2} of this component.`;
|
|
2488
2277
|
}
|
|
2489
|
-
const diag = makeTemplateDiagnostic(id, mapping, element.startSourceSpan,
|
|
2278
|
+
const diag = makeTemplateDiagnostic(id, mapping, element.startSourceSpan, ts12.DiagnosticCategory.Error, ngErrorCode(ErrorCode.SCHEMA_INVALID_ELEMENT), errorMsg);
|
|
2490
2279
|
this._diagnostics.push(diag);
|
|
2491
2280
|
}
|
|
2492
2281
|
}
|
|
@@ -2506,7 +2295,7 @@ var RegistryDomSchemaChecker = class {
|
|
|
2506
2295
|
2. If '${element.name}' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the ${schemas2} of this component to suppress this message.
|
|
2507
2296
|
3. To allow any property add 'NO_ERRORS_SCHEMA' to the ${schemas2} of this component.`;
|
|
2508
2297
|
}
|
|
2509
|
-
const diag = makeTemplateDiagnostic(id, mapping, span,
|
|
2298
|
+
const diag = makeTemplateDiagnostic(id, mapping, span, ts12.DiagnosticCategory.Error, ngErrorCode(ErrorCode.SCHEMA_INVALID_ATTRIBUTE), errorMsg);
|
|
2510
2299
|
this._diagnostics.push(diag);
|
|
2511
2300
|
}
|
|
2512
2301
|
}
|
|
@@ -2514,93 +2303,93 @@ var RegistryDomSchemaChecker = class {
|
|
|
2514
2303
|
|
|
2515
2304
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/environment.mjs
|
|
2516
2305
|
import { ExpressionType, ExternalExpr, TypeModifier } from "@angular/compiler";
|
|
2517
|
-
import
|
|
2306
|
+
import ts18 from "typescript";
|
|
2518
2307
|
|
|
2519
2308
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/ts_util.mjs
|
|
2520
|
-
import
|
|
2309
|
+
import ts13 from "typescript";
|
|
2521
2310
|
var SAFE_TO_CAST_WITHOUT_PARENS = /* @__PURE__ */ new Set([
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
|
|
2526
|
-
|
|
2527
|
-
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2311
|
+
ts13.SyntaxKind.ParenthesizedExpression,
|
|
2312
|
+
ts13.SyntaxKind.Identifier,
|
|
2313
|
+
ts13.SyntaxKind.CallExpression,
|
|
2314
|
+
ts13.SyntaxKind.NonNullExpression,
|
|
2315
|
+
ts13.SyntaxKind.ElementAccessExpression,
|
|
2316
|
+
ts13.SyntaxKind.PropertyAccessExpression,
|
|
2317
|
+
ts13.SyntaxKind.ArrayLiteralExpression,
|
|
2318
|
+
ts13.SyntaxKind.ObjectLiteralExpression,
|
|
2319
|
+
ts13.SyntaxKind.StringLiteral,
|
|
2320
|
+
ts13.SyntaxKind.NumericLiteral,
|
|
2321
|
+
ts13.SyntaxKind.TrueKeyword,
|
|
2322
|
+
ts13.SyntaxKind.FalseKeyword,
|
|
2323
|
+
ts13.SyntaxKind.NullKeyword,
|
|
2324
|
+
ts13.SyntaxKind.UndefinedKeyword
|
|
2536
2325
|
]);
|
|
2537
2326
|
function tsCastToAny(expr) {
|
|
2538
2327
|
if (!SAFE_TO_CAST_WITHOUT_PARENS.has(expr.kind)) {
|
|
2539
|
-
expr =
|
|
2328
|
+
expr = ts13.factory.createParenthesizedExpression(expr);
|
|
2540
2329
|
}
|
|
2541
|
-
return
|
|
2330
|
+
return ts13.factory.createParenthesizedExpression(ts13.factory.createAsExpression(expr, ts13.factory.createKeywordTypeNode(ts13.SyntaxKind.AnyKeyword)));
|
|
2542
2331
|
}
|
|
2543
2332
|
function tsCreateElement(tagName) {
|
|
2544
|
-
const createElement =
|
|
2545
|
-
|
|
2333
|
+
const createElement = ts13.factory.createPropertyAccessExpression(
|
|
2334
|
+
ts13.factory.createIdentifier("document"),
|
|
2546
2335
|
"createElement"
|
|
2547
2336
|
);
|
|
2548
|
-
return
|
|
2337
|
+
return ts13.factory.createCallExpression(
|
|
2549
2338
|
createElement,
|
|
2550
2339
|
void 0,
|
|
2551
|
-
[
|
|
2340
|
+
[ts13.factory.createStringLiteral(tagName)]
|
|
2552
2341
|
);
|
|
2553
2342
|
}
|
|
2554
2343
|
function tsDeclareVariable(id, type) {
|
|
2555
|
-
const decl =
|
|
2344
|
+
const decl = ts13.factory.createVariableDeclaration(
|
|
2556
2345
|
id,
|
|
2557
2346
|
void 0,
|
|
2558
2347
|
type,
|
|
2559
|
-
|
|
2348
|
+
ts13.factory.createNonNullExpression(ts13.factory.createNull())
|
|
2560
2349
|
);
|
|
2561
|
-
return
|
|
2350
|
+
return ts13.factory.createVariableStatement(
|
|
2562
2351
|
void 0,
|
|
2563
2352
|
[decl]
|
|
2564
2353
|
);
|
|
2565
2354
|
}
|
|
2566
2355
|
function tsCreateTypeQueryForCoercedInput(typeName, coercedInputName) {
|
|
2567
|
-
return
|
|
2356
|
+
return ts13.factory.createTypeQueryNode(ts13.factory.createQualifiedName(typeName, `ngAcceptInputType_${coercedInputName}`));
|
|
2568
2357
|
}
|
|
2569
2358
|
function tsCreateVariable(id, initializer) {
|
|
2570
|
-
const decl =
|
|
2359
|
+
const decl = ts13.factory.createVariableDeclaration(
|
|
2571
2360
|
id,
|
|
2572
2361
|
void 0,
|
|
2573
2362
|
void 0,
|
|
2574
2363
|
initializer
|
|
2575
2364
|
);
|
|
2576
|
-
return
|
|
2365
|
+
return ts13.factory.createVariableStatement(
|
|
2577
2366
|
void 0,
|
|
2578
2367
|
[decl]
|
|
2579
2368
|
);
|
|
2580
2369
|
}
|
|
2581
2370
|
function tsCallMethod(receiver, methodName, args = []) {
|
|
2582
|
-
const methodAccess =
|
|
2583
|
-
return
|
|
2371
|
+
const methodAccess = ts13.factory.createPropertyAccessExpression(receiver, methodName);
|
|
2372
|
+
return ts13.factory.createCallExpression(
|
|
2584
2373
|
methodAccess,
|
|
2585
2374
|
void 0,
|
|
2586
2375
|
args
|
|
2587
2376
|
);
|
|
2588
2377
|
}
|
|
2589
2378
|
function isAccessExpression(node) {
|
|
2590
|
-
return
|
|
2379
|
+
return ts13.isPropertyAccessExpression(node) || ts13.isElementAccessExpression(node);
|
|
2591
2380
|
}
|
|
2592
2381
|
|
|
2593
2382
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_constructor.mjs
|
|
2594
|
-
import
|
|
2383
|
+
import ts17 from "typescript";
|
|
2595
2384
|
|
|
2596
2385
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/tcb_util.mjs
|
|
2597
|
-
import
|
|
2386
|
+
import ts16 from "typescript";
|
|
2598
2387
|
|
|
2599
2388
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_parameter_emitter.mjs
|
|
2600
|
-
import
|
|
2389
|
+
import ts15 from "typescript";
|
|
2601
2390
|
|
|
2602
2391
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_emitter.mjs
|
|
2603
|
-
import
|
|
2392
|
+
import ts14 from "typescript";
|
|
2604
2393
|
var INELIGIBLE = {};
|
|
2605
2394
|
function canEmitType(type, canEmit) {
|
|
2606
2395
|
return canEmitTypeWorker(type);
|
|
@@ -2608,13 +2397,13 @@ function canEmitType(type, canEmit) {
|
|
|
2608
2397
|
return visitNode(type2) !== INELIGIBLE;
|
|
2609
2398
|
}
|
|
2610
2399
|
function visitNode(node) {
|
|
2611
|
-
if (
|
|
2400
|
+
if (ts14.isImportTypeNode(node)) {
|
|
2612
2401
|
return INELIGIBLE;
|
|
2613
2402
|
}
|
|
2614
|
-
if (
|
|
2403
|
+
if (ts14.isTypeReferenceNode(node) && !canEmitTypeReference(node)) {
|
|
2615
2404
|
return INELIGIBLE;
|
|
2616
2405
|
} else {
|
|
2617
|
-
return
|
|
2406
|
+
return ts14.forEachChild(node, visitNode);
|
|
2618
2407
|
}
|
|
2619
2408
|
}
|
|
2620
2409
|
function canEmitTypeReference(type2) {
|
|
@@ -2631,35 +2420,35 @@ var TypeEmitter = class {
|
|
|
2631
2420
|
emitType(type) {
|
|
2632
2421
|
const typeReferenceTransformer = (context) => {
|
|
2633
2422
|
const visitNode = (node) => {
|
|
2634
|
-
if (
|
|
2423
|
+
if (ts14.isImportTypeNode(node)) {
|
|
2635
2424
|
throw new Error("Unable to emit import type");
|
|
2636
2425
|
}
|
|
2637
|
-
if (
|
|
2426
|
+
if (ts14.isTypeReferenceNode(node)) {
|
|
2638
2427
|
return this.emitTypeReference(node);
|
|
2639
|
-
} else if (
|
|
2428
|
+
} else if (ts14.isLiteralExpression(node)) {
|
|
2640
2429
|
let clone;
|
|
2641
|
-
if (
|
|
2642
|
-
clone =
|
|
2643
|
-
} else if (
|
|
2644
|
-
clone =
|
|
2645
|
-
} else if (
|
|
2646
|
-
clone =
|
|
2647
|
-
} else if (
|
|
2648
|
-
clone =
|
|
2649
|
-
} else if (
|
|
2650
|
-
clone =
|
|
2430
|
+
if (ts14.isStringLiteral(node)) {
|
|
2431
|
+
clone = ts14.factory.createStringLiteral(node.text);
|
|
2432
|
+
} else if (ts14.isNumericLiteral(node)) {
|
|
2433
|
+
clone = ts14.factory.createNumericLiteral(node.text);
|
|
2434
|
+
} else if (ts14.isBigIntLiteral(node)) {
|
|
2435
|
+
clone = ts14.factory.createBigIntLiteral(node.text);
|
|
2436
|
+
} else if (ts14.isNoSubstitutionTemplateLiteral(node)) {
|
|
2437
|
+
clone = ts14.factory.createNoSubstitutionTemplateLiteral(node.text, node.rawText);
|
|
2438
|
+
} else if (ts14.isRegularExpressionLiteral(node)) {
|
|
2439
|
+
clone = ts14.factory.createRegularExpressionLiteral(node.text);
|
|
2651
2440
|
} else {
|
|
2652
|
-
throw new Error(`Unsupported literal kind ${
|
|
2441
|
+
throw new Error(`Unsupported literal kind ${ts14.SyntaxKind[node.kind]}`);
|
|
2653
2442
|
}
|
|
2654
|
-
|
|
2443
|
+
ts14.setTextRange(clone, { pos: -1, end: -1 });
|
|
2655
2444
|
return clone;
|
|
2656
2445
|
} else {
|
|
2657
|
-
return
|
|
2446
|
+
return ts14.visitEachChild(node, visitNode, context);
|
|
2658
2447
|
}
|
|
2659
2448
|
};
|
|
2660
|
-
return (node) =>
|
|
2449
|
+
return (node) => ts14.visitNode(node, visitNode);
|
|
2661
2450
|
};
|
|
2662
|
-
return
|
|
2451
|
+
return ts14.transform(type, [typeReferenceTransformer]).transformed[0];
|
|
2663
2452
|
}
|
|
2664
2453
|
emitTypeReference(type) {
|
|
2665
2454
|
const translatedType = this.translator(type);
|
|
@@ -2668,9 +2457,9 @@ var TypeEmitter = class {
|
|
|
2668
2457
|
}
|
|
2669
2458
|
let typeArguments = void 0;
|
|
2670
2459
|
if (type.typeArguments !== void 0) {
|
|
2671
|
-
typeArguments =
|
|
2460
|
+
typeArguments = ts14.factory.createNodeArray(type.typeArguments.map((typeArg) => this.emitType(typeArg)));
|
|
2672
2461
|
}
|
|
2673
|
-
return
|
|
2462
|
+
return ts14.factory.updateTypeReferenceNode(type, translatedType.typeName, typeArguments);
|
|
2674
2463
|
}
|
|
2675
2464
|
};
|
|
2676
2465
|
|
|
@@ -2711,11 +2500,11 @@ var TypeParameterEmitter = class {
|
|
|
2711
2500
|
return this.typeParameters.map((typeParam) => {
|
|
2712
2501
|
const constraint = typeParam.constraint !== void 0 ? emitter.emitType(typeParam.constraint) : void 0;
|
|
2713
2502
|
const defaultType = typeParam.default !== void 0 ? emitter.emitType(typeParam.default) : void 0;
|
|
2714
|
-
return
|
|
2503
|
+
return ts15.factory.updateTypeParameterDeclaration(typeParam, typeParam.modifiers, typeParam.name, constraint, defaultType);
|
|
2715
2504
|
});
|
|
2716
2505
|
}
|
|
2717
2506
|
resolveTypeReference(type) {
|
|
2718
|
-
const target =
|
|
2507
|
+
const target = ts15.isIdentifier(type.typeName) ? type.typeName : type.typeName.right;
|
|
2719
2508
|
const declaration = this.reflector.getDeclarationOfIdentifier(target);
|
|
2720
2509
|
if (declaration === null || declaration.node === null) {
|
|
2721
2510
|
return null;
|
|
@@ -2741,8 +2530,8 @@ var TypeParameterEmitter = class {
|
|
|
2741
2530
|
if (typeNode === null) {
|
|
2742
2531
|
return null;
|
|
2743
2532
|
}
|
|
2744
|
-
if (!
|
|
2745
|
-
throw new Error(`Expected TypeReferenceNode for emitted reference, got ${
|
|
2533
|
+
if (!ts15.isTypeReferenceNode(typeNode)) {
|
|
2534
|
+
throw new Error(`Expected TypeReferenceNode for emitted reference, got ${ts15.SyntaxKind[typeNode.kind]}.`);
|
|
2746
2535
|
}
|
|
2747
2536
|
return typeNode;
|
|
2748
2537
|
}
|
|
@@ -2784,14 +2573,14 @@ function getTemplateMapping(shimSf, position, resolver, isDiagnosticRequest) {
|
|
|
2784
2573
|
}
|
|
2785
2574
|
function findTypeCheckBlock(file, id, isDiagnosticRequest) {
|
|
2786
2575
|
for (const stmt of file.statements) {
|
|
2787
|
-
if (
|
|
2576
|
+
if (ts16.isFunctionDeclaration(stmt) && getTemplateId2(stmt, file, isDiagnosticRequest) === id) {
|
|
2788
2577
|
return stmt;
|
|
2789
2578
|
}
|
|
2790
2579
|
}
|
|
2791
2580
|
return null;
|
|
2792
2581
|
}
|
|
2793
2582
|
function findSourceLocation(node, sourceFile, isDiagnosticsRequest) {
|
|
2794
|
-
while (node !== void 0 && !
|
|
2583
|
+
while (node !== void 0 && !ts16.isFunctionDeclaration(node)) {
|
|
2795
2584
|
if (hasIgnoreForDiagnosticsMarker(node, sourceFile) && isDiagnosticsRequest) {
|
|
2796
2585
|
return null;
|
|
2797
2586
|
}
|
|
@@ -2808,7 +2597,7 @@ function findSourceLocation(node, sourceFile, isDiagnosticsRequest) {
|
|
|
2808
2597
|
return null;
|
|
2809
2598
|
}
|
|
2810
2599
|
function getTemplateId2(node, sourceFile, isDiagnosticRequest) {
|
|
2811
|
-
while (!
|
|
2600
|
+
while (!ts16.isFunctionDeclaration(node)) {
|
|
2812
2601
|
if (hasIgnoreForDiagnosticsMarker(node, sourceFile) && isDiagnosticRequest) {
|
|
2813
2602
|
return null;
|
|
2814
2603
|
}
|
|
@@ -2818,8 +2607,8 @@ function getTemplateId2(node, sourceFile, isDiagnosticRequest) {
|
|
|
2818
2607
|
}
|
|
2819
2608
|
}
|
|
2820
2609
|
const start = node.getFullStart();
|
|
2821
|
-
return
|
|
2822
|
-
if (kind !==
|
|
2610
|
+
return ts16.forEachLeadingCommentRange(sourceFile.text, start, (pos, end, kind) => {
|
|
2611
|
+
if (kind !== ts16.SyntaxKind.MultiLineCommentTrivia) {
|
|
2823
2612
|
return null;
|
|
2824
2613
|
}
|
|
2825
2614
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -2834,29 +2623,29 @@ function checkIfGenericTypeBoundsCanBeEmitted(node, reflector, env) {
|
|
|
2834
2623
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_constructor.mjs
|
|
2835
2624
|
function generateTypeCtorDeclarationFn(node, meta, nodeTypeRef, typeParams) {
|
|
2836
2625
|
const rawTypeArgs = typeParams !== void 0 ? generateGenericArgs(typeParams) : void 0;
|
|
2837
|
-
const rawType =
|
|
2626
|
+
const rawType = ts17.factory.createTypeReferenceNode(nodeTypeRef, rawTypeArgs);
|
|
2838
2627
|
const initParam = constructTypeCtorParameter(node, meta, rawType);
|
|
2839
2628
|
const typeParameters = typeParametersWithDefaultTypes(typeParams);
|
|
2840
2629
|
if (meta.body) {
|
|
2841
|
-
const fnType =
|
|
2630
|
+
const fnType = ts17.factory.createFunctionTypeNode(
|
|
2842
2631
|
typeParameters,
|
|
2843
2632
|
[initParam],
|
|
2844
2633
|
rawType
|
|
2845
2634
|
);
|
|
2846
|
-
const decl =
|
|
2635
|
+
const decl = ts17.factory.createVariableDeclaration(
|
|
2847
2636
|
meta.fnName,
|
|
2848
2637
|
void 0,
|
|
2849
2638
|
fnType,
|
|
2850
|
-
|
|
2639
|
+
ts17.factory.createNonNullExpression(ts17.factory.createNull())
|
|
2851
2640
|
);
|
|
2852
|
-
const declList =
|
|
2853
|
-
return
|
|
2641
|
+
const declList = ts17.factory.createVariableDeclarationList([decl], ts17.NodeFlags.Const);
|
|
2642
|
+
return ts17.factory.createVariableStatement(
|
|
2854
2643
|
void 0,
|
|
2855
2644
|
declList
|
|
2856
2645
|
);
|
|
2857
2646
|
} else {
|
|
2858
2647
|
return createFunctionDeclaration(
|
|
2859
|
-
[
|
|
2648
|
+
[ts17.factory.createModifier(ts17.SyntaxKind.DeclareKeyword)],
|
|
2860
2649
|
void 0,
|
|
2861
2650
|
meta.fnName,
|
|
2862
2651
|
typeParameters,
|
|
@@ -2868,16 +2657,16 @@ function generateTypeCtorDeclarationFn(node, meta, nodeTypeRef, typeParams) {
|
|
|
2868
2657
|
}
|
|
2869
2658
|
function generateInlineTypeCtor(node, meta) {
|
|
2870
2659
|
const rawTypeArgs = node.typeParameters !== void 0 ? generateGenericArgs(node.typeParameters) : void 0;
|
|
2871
|
-
const rawType =
|
|
2660
|
+
const rawType = ts17.factory.createTypeReferenceNode(node.name, rawTypeArgs);
|
|
2872
2661
|
const initParam = constructTypeCtorParameter(node, meta, rawType);
|
|
2873
2662
|
let body = void 0;
|
|
2874
2663
|
if (meta.body) {
|
|
2875
|
-
body =
|
|
2876
|
-
|
|
2664
|
+
body = ts17.factory.createBlock([
|
|
2665
|
+
ts17.factory.createReturnStatement(ts17.factory.createNonNullExpression(ts17.factory.createNull()))
|
|
2877
2666
|
]);
|
|
2878
2667
|
}
|
|
2879
|
-
return
|
|
2880
|
-
[
|
|
2668
|
+
return ts17.factory.createMethodDeclaration(
|
|
2669
|
+
[ts17.factory.createModifier(ts17.SyntaxKind.StaticKeyword)],
|
|
2881
2670
|
void 0,
|
|
2882
2671
|
meta.fnName,
|
|
2883
2672
|
void 0,
|
|
@@ -2894,9 +2683,9 @@ function constructTypeCtorParameter(node, meta, rawType) {
|
|
|
2894
2683
|
const coercedKeys = [];
|
|
2895
2684
|
for (const key of keys) {
|
|
2896
2685
|
if (!meta.coercedInputFields.has(key)) {
|
|
2897
|
-
plainKeys.push(
|
|
2686
|
+
plainKeys.push(ts17.factory.createLiteralTypeNode(ts17.factory.createStringLiteral(key)));
|
|
2898
2687
|
} else {
|
|
2899
|
-
coercedKeys.push(
|
|
2688
|
+
coercedKeys.push(ts17.factory.createPropertySignature(
|
|
2900
2689
|
void 0,
|
|
2901
2690
|
key,
|
|
2902
2691
|
void 0,
|
|
@@ -2905,15 +2694,15 @@ function constructTypeCtorParameter(node, meta, rawType) {
|
|
|
2905
2694
|
}
|
|
2906
2695
|
}
|
|
2907
2696
|
if (plainKeys.length > 0) {
|
|
2908
|
-
const keyTypeUnion =
|
|
2909
|
-
initType =
|
|
2697
|
+
const keyTypeUnion = ts17.factory.createUnionTypeNode(plainKeys);
|
|
2698
|
+
initType = ts17.factory.createTypeReferenceNode("Pick", [rawType, keyTypeUnion]);
|
|
2910
2699
|
}
|
|
2911
2700
|
if (coercedKeys.length > 0) {
|
|
2912
|
-
const coercedLiteral =
|
|
2913
|
-
initType = initType !== null ?
|
|
2701
|
+
const coercedLiteral = ts17.factory.createTypeLiteralNode(coercedKeys);
|
|
2702
|
+
initType = initType !== null ? ts17.factory.createIntersectionTypeNode([initType, coercedLiteral]) : coercedLiteral;
|
|
2914
2703
|
}
|
|
2915
2704
|
if (initType === null) {
|
|
2916
|
-
initType =
|
|
2705
|
+
initType = ts17.factory.createTypeLiteralNode([]);
|
|
2917
2706
|
}
|
|
2918
2707
|
return createParameterDeclaration(
|
|
2919
2708
|
void 0,
|
|
@@ -2925,7 +2714,7 @@ function constructTypeCtorParameter(node, meta, rawType) {
|
|
|
2925
2714
|
);
|
|
2926
2715
|
}
|
|
2927
2716
|
function generateGenericArgs(params) {
|
|
2928
|
-
return params.map((param) =>
|
|
2717
|
+
return params.map((param) => ts17.factory.createTypeReferenceNode(param.name, void 0));
|
|
2929
2718
|
}
|
|
2930
2719
|
function requiresInlineTypeCtor(node, host, env) {
|
|
2931
2720
|
return !checkIfGenericTypeBoundsCanBeEmitted(node, host, env);
|
|
@@ -2936,7 +2725,7 @@ function typeParametersWithDefaultTypes(params) {
|
|
|
2936
2725
|
}
|
|
2937
2726
|
return params.map((param) => {
|
|
2938
2727
|
if (param.default === void 0) {
|
|
2939
|
-
return
|
|
2728
|
+
return ts17.factory.updateTypeParameterDeclaration(param, param.modifiers, param.name, param.constraint, ts17.factory.createKeywordTypeNode(ts17.SyntaxKind.AnyKeyword));
|
|
2940
2729
|
} else {
|
|
2941
2730
|
return param;
|
|
2942
2731
|
}
|
|
@@ -2968,13 +2757,13 @@ var Environment = class {
|
|
|
2968
2757
|
}
|
|
2969
2758
|
if (requiresInlineTypeCtor(node, this.reflector, this)) {
|
|
2970
2759
|
const ref = this.reference(dirRef);
|
|
2971
|
-
const typeCtorExpr =
|
|
2760
|
+
const typeCtorExpr = ts18.factory.createPropertyAccessExpression(ref, "ngTypeCtor");
|
|
2972
2761
|
this.typeCtors.set(node, typeCtorExpr);
|
|
2973
2762
|
return typeCtorExpr;
|
|
2974
2763
|
} else {
|
|
2975
2764
|
const fnName = `_ctor${this.nextIds.typeCtor++}`;
|
|
2976
2765
|
const nodeTypeRef = this.referenceType(dirRef);
|
|
2977
|
-
if (!
|
|
2766
|
+
if (!ts18.isTypeReferenceNode(nodeTypeRef)) {
|
|
2978
2767
|
throw new Error(`Expected TypeReferenceNode from reference to ${dirRef.debugName}`);
|
|
2979
2768
|
}
|
|
2980
2769
|
const meta = {
|
|
@@ -2990,7 +2779,7 @@ var Environment = class {
|
|
|
2990
2779
|
const typeParams = this.emitTypeParameters(node);
|
|
2991
2780
|
const typeCtor = generateTypeCtorDeclarationFn(node, meta, nodeTypeRef.typeName, typeParams);
|
|
2992
2781
|
this.typeCtorStatements.push(typeCtor);
|
|
2993
|
-
const fnId =
|
|
2782
|
+
const fnId = ts18.factory.createIdentifier(fnName);
|
|
2994
2783
|
this.typeCtors.set(node, fnId);
|
|
2995
2784
|
return fnId;
|
|
2996
2785
|
}
|
|
@@ -3000,7 +2789,7 @@ var Environment = class {
|
|
|
3000
2789
|
return this.pipeInsts.get(ref.node);
|
|
3001
2790
|
}
|
|
3002
2791
|
const pipeType = this.referenceType(ref);
|
|
3003
|
-
const pipeInstId =
|
|
2792
|
+
const pipeInstId = ts18.factory.createIdentifier(`_pipe${this.nextIds.pipeInst++}`);
|
|
3004
2793
|
this.pipeInstStatements.push(tsDeclareVariable(pipeInstId, pipeType));
|
|
3005
2794
|
this.pipeInsts.set(ref.node, pipeInstId);
|
|
3006
2795
|
return pipeInstId;
|
|
@@ -3037,7 +2826,7 @@ var Environment = class {
|
|
|
3037
2826
|
|
|
3038
2827
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/oob.mjs
|
|
3039
2828
|
import { TmplAstElement as TmplAstElement2 } from "@angular/compiler";
|
|
3040
|
-
import
|
|
2829
|
+
import ts19 from "typescript";
|
|
3041
2830
|
var OutOfBandDiagnosticRecorderImpl = class {
|
|
3042
2831
|
constructor(resolver) {
|
|
3043
2832
|
this.resolver = resolver;
|
|
@@ -3051,7 +2840,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3051
2840
|
const mapping = this.resolver.getSourceMapping(templateId);
|
|
3052
2841
|
const value = ref.value.trim();
|
|
3053
2842
|
const errorMsg = `No directive found with exportAs '${value}'.`;
|
|
3054
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, ref.valueSpan || ref.sourceSpan,
|
|
2843
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, ref.valueSpan || ref.sourceSpan, ts19.DiagnosticCategory.Error, ngErrorCode(ErrorCode.MISSING_REFERENCE_TARGET), errorMsg));
|
|
3055
2844
|
}
|
|
3056
2845
|
missingPipe(templateId, ast) {
|
|
3057
2846
|
if (this.recordedPipes.has(ast)) {
|
|
@@ -3063,7 +2852,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3063
2852
|
if (sourceSpan === null) {
|
|
3064
2853
|
throw new Error(`Assertion failure: no SourceLocation found for usage of pipe '${ast.name}'.`);
|
|
3065
2854
|
}
|
|
3066
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan,
|
|
2855
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan, ts19.DiagnosticCategory.Error, ngErrorCode(ErrorCode.MISSING_PIPE), errorMsg));
|
|
3067
2856
|
this.recordedPipes.add(ast);
|
|
3068
2857
|
}
|
|
3069
2858
|
illegalAssignmentToTemplateVar(templateId, assignment, target) {
|
|
@@ -3074,7 +2863,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3074
2863
|
if (sourceSpan === null) {
|
|
3075
2864
|
throw new Error(`Assertion failure: no SourceLocation found for property binding.`);
|
|
3076
2865
|
}
|
|
3077
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan,
|
|
2866
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan, ts19.DiagnosticCategory.Error, ngErrorCode(ErrorCode.WRITE_TO_READ_ONLY_VARIABLE), errorMsg, [{
|
|
3078
2867
|
text: `The variable ${assignment.name} is declared here.`,
|
|
3079
2868
|
start: ((_a = target.valueSpan) == null ? void 0 : _a.start.offset) || target.sourceSpan.start.offset,
|
|
3080
2869
|
end: ((_b = target.valueSpan) == null ? void 0 : _b.end.offset) || target.sourceSpan.end.offset,
|
|
@@ -3084,7 +2873,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3084
2873
|
duplicateTemplateVar(templateId, variable, firstDecl) {
|
|
3085
2874
|
const mapping = this.resolver.getSourceMapping(templateId);
|
|
3086
2875
|
const errorMsg = `Cannot redeclare variable '${variable.name}' as it was previously declared elsewhere for the same template.`;
|
|
3087
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, variable.sourceSpan,
|
|
2876
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, variable.sourceSpan, ts19.DiagnosticCategory.Error, ngErrorCode(ErrorCode.DUPLICATE_VARIABLE_DECLARATION), errorMsg, [{
|
|
3088
2877
|
text: `The variable '${firstDecl.name}' was first declared here.`,
|
|
3089
2878
|
start: firstDecl.sourceSpan.start.offset,
|
|
3090
2879
|
end: firstDecl.sourceSpan.end.offset,
|
|
@@ -3123,7 +2912,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3123
2912
|
const message = `This structural directive supports advanced type inference, but the current compiler configuration prevents its usage. The variable ${varIdentification} will have type 'any' as a result.
|
|
3124
2913
|
|
|
3125
2914
|
Consider enabling the 'strictTemplates' option in your tsconfig.json for better type inference within this template.`;
|
|
3126
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, diagnosticVar.keySpan,
|
|
2915
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, diagnosticVar.keySpan, ts19.DiagnosticCategory.Suggestion, ngErrorCode(ErrorCode.SUGGEST_SUBOPTIMAL_TYPE_INFERENCE), message));
|
|
3127
2916
|
}
|
|
3128
2917
|
splitTwoWayBinding(templateId, input, output, inputConsumer, outputConsumer) {
|
|
3129
2918
|
const mapping = this.resolver.getSourceMapping(templateId);
|
|
@@ -3157,7 +2946,7 @@ Consider enabling the 'strictTemplates' option in your tsconfig.json for better
|
|
|
3157
2946
|
sourceFile: outputConsumer.name.getSourceFile()
|
|
3158
2947
|
});
|
|
3159
2948
|
}
|
|
3160
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, input.keySpan,
|
|
2949
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, input.keySpan, ts19.DiagnosticCategory.Error, ngErrorCode(ErrorCode.SPLIT_TWO_WAY_BINDING), errorMsg, relatedMessages));
|
|
3161
2950
|
}
|
|
3162
2951
|
};
|
|
3163
2952
|
function makeInlineDiagnostic(templateId, code, node, messageText, relatedInformation) {
|
|
@@ -3169,7 +2958,7 @@ function makeInlineDiagnostic(templateId, code, node, messageText, relatedInform
|
|
|
3169
2958
|
}
|
|
3170
2959
|
|
|
3171
2960
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/shim.mjs
|
|
3172
|
-
import
|
|
2961
|
+
import ts20 from "typescript";
|
|
3173
2962
|
var TypeCheckShimGenerator = class {
|
|
3174
2963
|
constructor() {
|
|
3175
2964
|
this.extensionPrefix = "ngtypecheck";
|
|
@@ -3179,7 +2968,7 @@ var TypeCheckShimGenerator = class {
|
|
|
3179
2968
|
if (priorShimSf !== null) {
|
|
3180
2969
|
return priorShimSf;
|
|
3181
2970
|
}
|
|
3182
|
-
return
|
|
2971
|
+
return ts20.createSourceFile(genFilePath, "export const USED_FOR_NG_TYPE_CHECKING = true;", ts20.ScriptTarget.Latest, true, ts20.ScriptKind.TS);
|
|
3183
2972
|
}
|
|
3184
2973
|
static shimFor(fileName) {
|
|
3185
2974
|
return absoluteFrom(fileName.replace(/\.tsx?$/, ".ngtypecheck.ts"));
|
|
@@ -3188,16 +2977,16 @@ var TypeCheckShimGenerator = class {
|
|
|
3188
2977
|
|
|
3189
2978
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_check_block.mjs
|
|
3190
2979
|
import { BindingPipe, Call as Call2, DYNAMIC_TYPE, ImplicitReceiver as ImplicitReceiver4, PropertyRead as PropertyRead4, PropertyWrite as PropertyWrite3, SafeCall, SafePropertyRead as SafePropertyRead3, ThisReceiver, TmplAstBoundAttribute, TmplAstBoundText, TmplAstElement as TmplAstElement3, TmplAstIcu, TmplAstReference as TmplAstReference3, TmplAstTemplate as TmplAstTemplate2, TmplAstTextAttribute as TmplAstTextAttribute2, TmplAstVariable as TmplAstVariable2 } from "@angular/compiler";
|
|
3191
|
-
import
|
|
2980
|
+
import ts23 from "typescript";
|
|
3192
2981
|
|
|
3193
2982
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/diagnostics.mjs
|
|
3194
2983
|
import { AbsoluteSourceSpan as AbsoluteSourceSpan3 } from "@angular/compiler";
|
|
3195
|
-
import
|
|
2984
|
+
import ts21 from "typescript";
|
|
3196
2985
|
function wrapForDiagnostics(expr) {
|
|
3197
|
-
return
|
|
2986
|
+
return ts21.factory.createParenthesizedExpression(expr);
|
|
3198
2987
|
}
|
|
3199
2988
|
function wrapForTypeChecker(expr) {
|
|
3200
|
-
return
|
|
2989
|
+
return ts21.factory.createParenthesizedExpression(expr);
|
|
3201
2990
|
}
|
|
3202
2991
|
function addParseSpanInfo(node, span) {
|
|
3203
2992
|
let commentText;
|
|
@@ -3206,10 +2995,10 @@ function addParseSpanInfo(node, span) {
|
|
|
3206
2995
|
} else {
|
|
3207
2996
|
commentText = `${span.start.offset},${span.end.offset}`;
|
|
3208
2997
|
}
|
|
3209
|
-
|
|
2998
|
+
ts21.addSyntheticTrailingComment(node, ts21.SyntaxKind.MultiLineCommentTrivia, commentText, false);
|
|
3210
2999
|
}
|
|
3211
3000
|
function addTemplateId(tcb, id) {
|
|
3212
|
-
|
|
3001
|
+
ts21.addSyntheticLeadingComment(tcb, ts21.SyntaxKind.MultiLineCommentTrivia, id, true);
|
|
3213
3002
|
}
|
|
3214
3003
|
function shouldReportDiagnostic(diagnostic) {
|
|
3215
3004
|
const { code } = diagnostic;
|
|
@@ -3238,32 +3027,32 @@ function translateDiagnostic(diagnostic, resolver) {
|
|
|
3238
3027
|
|
|
3239
3028
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/expression.mjs
|
|
3240
3029
|
import { ASTWithSource as ASTWithSource2, Call, EmptyExpr as EmptyExpr2, PropertyRead as PropertyRead3, SafeKeyedRead, SafePropertyRead as SafePropertyRead2 } from "@angular/compiler";
|
|
3241
|
-
import
|
|
3242
|
-
var NULL_AS_ANY =
|
|
3243
|
-
var UNDEFINED =
|
|
3030
|
+
import ts22 from "typescript";
|
|
3031
|
+
var NULL_AS_ANY = ts22.factory.createAsExpression(ts22.factory.createNull(), ts22.factory.createKeywordTypeNode(ts22.SyntaxKind.AnyKeyword));
|
|
3032
|
+
var UNDEFINED = ts22.factory.createIdentifier("undefined");
|
|
3244
3033
|
var UNARY_OPS = /* @__PURE__ */ new Map([
|
|
3245
|
-
["+",
|
|
3246
|
-
["-",
|
|
3034
|
+
["+", ts22.SyntaxKind.PlusToken],
|
|
3035
|
+
["-", ts22.SyntaxKind.MinusToken]
|
|
3247
3036
|
]);
|
|
3248
3037
|
var BINARY_OPS = /* @__PURE__ */ new Map([
|
|
3249
|
-
["+",
|
|
3250
|
-
["-",
|
|
3251
|
-
["<",
|
|
3252
|
-
[">",
|
|
3253
|
-
["<=",
|
|
3254
|
-
[">=",
|
|
3255
|
-
["==",
|
|
3256
|
-
["===",
|
|
3257
|
-
["*",
|
|
3258
|
-
["/",
|
|
3259
|
-
["%",
|
|
3260
|
-
["!=",
|
|
3261
|
-
["!==",
|
|
3262
|
-
["||",
|
|
3263
|
-
["&&",
|
|
3264
|
-
["&",
|
|
3265
|
-
["|",
|
|
3266
|
-
["??",
|
|
3038
|
+
["+", ts22.SyntaxKind.PlusToken],
|
|
3039
|
+
["-", ts22.SyntaxKind.MinusToken],
|
|
3040
|
+
["<", ts22.SyntaxKind.LessThanToken],
|
|
3041
|
+
[">", ts22.SyntaxKind.GreaterThanToken],
|
|
3042
|
+
["<=", ts22.SyntaxKind.LessThanEqualsToken],
|
|
3043
|
+
[">=", ts22.SyntaxKind.GreaterThanEqualsToken],
|
|
3044
|
+
["==", ts22.SyntaxKind.EqualsEqualsToken],
|
|
3045
|
+
["===", ts22.SyntaxKind.EqualsEqualsEqualsToken],
|
|
3046
|
+
["*", ts22.SyntaxKind.AsteriskToken],
|
|
3047
|
+
["/", ts22.SyntaxKind.SlashToken],
|
|
3048
|
+
["%", ts22.SyntaxKind.PercentToken],
|
|
3049
|
+
["!=", ts22.SyntaxKind.ExclamationEqualsToken],
|
|
3050
|
+
["!==", ts22.SyntaxKind.ExclamationEqualsEqualsToken],
|
|
3051
|
+
["||", ts22.SyntaxKind.BarBarToken],
|
|
3052
|
+
["&&", ts22.SyntaxKind.AmpersandAmpersandToken],
|
|
3053
|
+
["&", ts22.SyntaxKind.AmpersandToken],
|
|
3054
|
+
["|", ts22.SyntaxKind.BarToken],
|
|
3055
|
+
["??", ts22.SyntaxKind.QuestionQuestionToken]
|
|
3267
3056
|
]);
|
|
3268
3057
|
function astToTypescript(ast, maybeResolve, config) {
|
|
3269
3058
|
const translator = new AstTranslator(maybeResolve, config);
|
|
@@ -3279,7 +3068,7 @@ var AstTranslator = class {
|
|
|
3279
3068
|
ast = ast.ast;
|
|
3280
3069
|
}
|
|
3281
3070
|
if (ast instanceof EmptyExpr2) {
|
|
3282
|
-
const res =
|
|
3071
|
+
const res = ts22.factory.createIdentifier("undefined");
|
|
3283
3072
|
addParseSpanInfo(res, ast.sourceSpan);
|
|
3284
3073
|
return res;
|
|
3285
3074
|
}
|
|
@@ -3295,7 +3084,7 @@ var AstTranslator = class {
|
|
|
3295
3084
|
if (op === void 0) {
|
|
3296
3085
|
throw new Error(`Unsupported Unary.operator: ${ast.operator}`);
|
|
3297
3086
|
}
|
|
3298
|
-
const node = wrapForDiagnostics(
|
|
3087
|
+
const node = wrapForDiagnostics(ts22.factory.createPrefixUnaryExpression(op, expr));
|
|
3299
3088
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3300
3089
|
return node;
|
|
3301
3090
|
}
|
|
@@ -3306,13 +3095,13 @@ var AstTranslator = class {
|
|
|
3306
3095
|
if (op === void 0) {
|
|
3307
3096
|
throw new Error(`Unsupported Binary.operation: ${ast.operation}`);
|
|
3308
3097
|
}
|
|
3309
|
-
const node =
|
|
3098
|
+
const node = ts22.factory.createBinaryExpression(lhs, op, rhs);
|
|
3310
3099
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3311
3100
|
return node;
|
|
3312
3101
|
}
|
|
3313
3102
|
visitChain(ast) {
|
|
3314
3103
|
const elements = ast.expressions.map((expr) => this.translate(expr));
|
|
3315
|
-
const node = wrapForDiagnostics(
|
|
3104
|
+
const node = wrapForDiagnostics(ts22.factory.createCommaListExpression(elements));
|
|
3316
3105
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3317
3106
|
return node;
|
|
3318
3107
|
}
|
|
@@ -3320,7 +3109,7 @@ var AstTranslator = class {
|
|
|
3320
3109
|
const condExpr = this.translate(ast.condition);
|
|
3321
3110
|
const trueExpr = this.translate(ast.trueExp);
|
|
3322
3111
|
const falseExpr = wrapForTypeChecker(this.translate(ast.falseExp));
|
|
3323
|
-
const node =
|
|
3112
|
+
const node = ts22.factory.createParenthesizedExpression(ts22.factory.createConditionalExpression(condExpr, void 0, trueExpr, void 0, falseExpr));
|
|
3324
3113
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3325
3114
|
return node;
|
|
3326
3115
|
}
|
|
@@ -3331,26 +3120,26 @@ var AstTranslator = class {
|
|
|
3331
3120
|
throw new Error("Method not implemented.");
|
|
3332
3121
|
}
|
|
3333
3122
|
visitInterpolation(ast) {
|
|
3334
|
-
return ast.expressions.reduce((lhs, ast2) =>
|
|
3123
|
+
return ast.expressions.reduce((lhs, ast2) => ts22.factory.createBinaryExpression(lhs, ts22.SyntaxKind.PlusToken, wrapForTypeChecker(this.translate(ast2))), ts22.factory.createStringLiteral(""));
|
|
3335
3124
|
}
|
|
3336
3125
|
visitKeyedRead(ast) {
|
|
3337
3126
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3338
3127
|
const key = this.translate(ast.key);
|
|
3339
|
-
const node =
|
|
3128
|
+
const node = ts22.factory.createElementAccessExpression(receiver, key);
|
|
3340
3129
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3341
3130
|
return node;
|
|
3342
3131
|
}
|
|
3343
3132
|
visitKeyedWrite(ast) {
|
|
3344
3133
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3345
|
-
const left =
|
|
3134
|
+
const left = ts22.factory.createElementAccessExpression(receiver, this.translate(ast.key));
|
|
3346
3135
|
const right = wrapForTypeChecker(this.translate(ast.value));
|
|
3347
|
-
const node = wrapForDiagnostics(
|
|
3136
|
+
const node = wrapForDiagnostics(ts22.factory.createBinaryExpression(left, ts22.SyntaxKind.EqualsToken, right));
|
|
3348
3137
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3349
3138
|
return node;
|
|
3350
3139
|
}
|
|
3351
3140
|
visitLiteralArray(ast) {
|
|
3352
3141
|
const elements = ast.expressions.map((expr) => this.translate(expr));
|
|
3353
|
-
const literal =
|
|
3142
|
+
const literal = ts22.factory.createArrayLiteralExpression(elements);
|
|
3354
3143
|
const node = this.config.strictLiteralTypes ? literal : tsCastToAny(literal);
|
|
3355
3144
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3356
3145
|
return node;
|
|
@@ -3358,9 +3147,9 @@ var AstTranslator = class {
|
|
|
3358
3147
|
visitLiteralMap(ast) {
|
|
3359
3148
|
const properties = ast.keys.map(({ key }, idx) => {
|
|
3360
3149
|
const value = this.translate(ast.values[idx]);
|
|
3361
|
-
return
|
|
3150
|
+
return ts22.factory.createPropertyAssignment(ts22.factory.createStringLiteral(key), value);
|
|
3362
3151
|
});
|
|
3363
|
-
const literal =
|
|
3152
|
+
const literal = ts22.factory.createObjectLiteralExpression(properties, true);
|
|
3364
3153
|
const node = this.config.strictLiteralTypes ? literal : tsCastToAny(literal);
|
|
3365
3154
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3366
3155
|
return node;
|
|
@@ -3368,15 +3157,15 @@ var AstTranslator = class {
|
|
|
3368
3157
|
visitLiteralPrimitive(ast) {
|
|
3369
3158
|
let node;
|
|
3370
3159
|
if (ast.value === void 0) {
|
|
3371
|
-
node =
|
|
3160
|
+
node = ts22.factory.createIdentifier("undefined");
|
|
3372
3161
|
} else if (ast.value === null) {
|
|
3373
|
-
node =
|
|
3162
|
+
node = ts22.factory.createNull();
|
|
3374
3163
|
} else if (typeof ast.value === "string") {
|
|
3375
|
-
node =
|
|
3164
|
+
node = ts22.factory.createStringLiteral(ast.value);
|
|
3376
3165
|
} else if (typeof ast.value === "number") {
|
|
3377
|
-
node =
|
|
3166
|
+
node = ts22.factory.createNumericLiteral(ast.value);
|
|
3378
3167
|
} else if (typeof ast.value === "boolean") {
|
|
3379
|
-
node = ast.value ?
|
|
3168
|
+
node = ast.value ? ts22.factory.createTrue() : ts22.factory.createFalse();
|
|
3380
3169
|
} else {
|
|
3381
3170
|
throw Error(`Unsupported AST value of type ${typeof ast.value}`);
|
|
3382
3171
|
}
|
|
@@ -3385,7 +3174,7 @@ var AstTranslator = class {
|
|
|
3385
3174
|
}
|
|
3386
3175
|
visitNonNullAssert(ast) {
|
|
3387
3176
|
const expr = wrapForDiagnostics(this.translate(ast.expression));
|
|
3388
|
-
const node =
|
|
3177
|
+
const node = ts22.factory.createNonNullExpression(expr);
|
|
3389
3178
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3390
3179
|
return node;
|
|
3391
3180
|
}
|
|
@@ -3394,13 +3183,13 @@ var AstTranslator = class {
|
|
|
3394
3183
|
}
|
|
3395
3184
|
visitPrefixNot(ast) {
|
|
3396
3185
|
const expression = wrapForDiagnostics(this.translate(ast.expression));
|
|
3397
|
-
const node =
|
|
3186
|
+
const node = ts22.factory.createLogicalNot(expression);
|
|
3398
3187
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3399
3188
|
return node;
|
|
3400
3189
|
}
|
|
3401
3190
|
visitPropertyRead(ast) {
|
|
3402
3191
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3403
|
-
const name =
|
|
3192
|
+
const name = ts22.factory.createPropertyAccessExpression(receiver, ast.name);
|
|
3404
3193
|
addParseSpanInfo(name, ast.nameSpan);
|
|
3405
3194
|
const node = wrapForDiagnostics(name);
|
|
3406
3195
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
@@ -3408,12 +3197,12 @@ var AstTranslator = class {
|
|
|
3408
3197
|
}
|
|
3409
3198
|
visitPropertyWrite(ast) {
|
|
3410
3199
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3411
|
-
const left =
|
|
3200
|
+
const left = ts22.factory.createPropertyAccessExpression(receiver, ast.name);
|
|
3412
3201
|
addParseSpanInfo(left, ast.nameSpan);
|
|
3413
3202
|
const leftWithPath = wrapForDiagnostics(left);
|
|
3414
3203
|
addParseSpanInfo(leftWithPath, ast.sourceSpan);
|
|
3415
3204
|
const right = wrapForTypeChecker(this.translate(ast.value));
|
|
3416
|
-
const node = wrapForDiagnostics(
|
|
3205
|
+
const node = wrapForDiagnostics(ts22.factory.createBinaryExpression(leftWithPath, ts22.SyntaxKind.EqualsToken, right));
|
|
3417
3206
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3418
3207
|
return node;
|
|
3419
3208
|
}
|
|
@@ -3421,13 +3210,13 @@ var AstTranslator = class {
|
|
|
3421
3210
|
let node;
|
|
3422
3211
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3423
3212
|
if (this.config.strictSafeNavigationTypes) {
|
|
3424
|
-
const expr =
|
|
3213
|
+
const expr = ts22.factory.createPropertyAccessExpression(ts22.factory.createNonNullExpression(receiver), ast.name);
|
|
3425
3214
|
addParseSpanInfo(expr, ast.nameSpan);
|
|
3426
|
-
node =
|
|
3215
|
+
node = ts22.factory.createParenthesizedExpression(ts22.factory.createConditionalExpression(NULL_AS_ANY, void 0, expr, void 0, UNDEFINED));
|
|
3427
3216
|
} else if (VeSafeLhsInferenceBugDetector.veWillInferAnyFor(ast)) {
|
|
3428
|
-
node =
|
|
3217
|
+
node = ts22.factory.createPropertyAccessExpression(tsCastToAny(receiver), ast.name);
|
|
3429
3218
|
} else {
|
|
3430
|
-
const expr =
|
|
3219
|
+
const expr = ts22.factory.createPropertyAccessExpression(ts22.factory.createNonNullExpression(receiver), ast.name);
|
|
3431
3220
|
addParseSpanInfo(expr, ast.nameSpan);
|
|
3432
3221
|
node = tsCastToAny(expr);
|
|
3433
3222
|
}
|
|
@@ -3439,13 +3228,13 @@ var AstTranslator = class {
|
|
|
3439
3228
|
const key = this.translate(ast.key);
|
|
3440
3229
|
let node;
|
|
3441
3230
|
if (this.config.strictSafeNavigationTypes) {
|
|
3442
|
-
const expr =
|
|
3231
|
+
const expr = ts22.factory.createElementAccessExpression(ts22.factory.createNonNullExpression(receiver), key);
|
|
3443
3232
|
addParseSpanInfo(expr, ast.sourceSpan);
|
|
3444
|
-
node =
|
|
3233
|
+
node = ts22.factory.createParenthesizedExpression(ts22.factory.createConditionalExpression(NULL_AS_ANY, void 0, expr, void 0, UNDEFINED));
|
|
3445
3234
|
} else if (VeSafeLhsInferenceBugDetector.veWillInferAnyFor(ast)) {
|
|
3446
|
-
node =
|
|
3235
|
+
node = ts22.factory.createElementAccessExpression(tsCastToAny(receiver), key);
|
|
3447
3236
|
} else {
|
|
3448
|
-
const expr =
|
|
3237
|
+
const expr = ts22.factory.createElementAccessExpression(ts22.factory.createNonNullExpression(receiver), key);
|
|
3449
3238
|
addParseSpanInfo(expr, ast.sourceSpan);
|
|
3450
3239
|
node = tsCastToAny(expr);
|
|
3451
3240
|
}
|
|
@@ -3462,7 +3251,7 @@ var AstTranslator = class {
|
|
|
3462
3251
|
expr = resolved;
|
|
3463
3252
|
} else {
|
|
3464
3253
|
const propertyReceiver = wrapForDiagnostics(this.translate(receiver.receiver));
|
|
3465
|
-
expr =
|
|
3254
|
+
expr = ts22.factory.createPropertyAccessExpression(propertyReceiver, receiver.name);
|
|
3466
3255
|
addParseSpanInfo(expr, receiver.nameSpan);
|
|
3467
3256
|
}
|
|
3468
3257
|
} else {
|
|
@@ -3472,7 +3261,7 @@ var AstTranslator = class {
|
|
|
3472
3261
|
if (ast.receiver instanceof SafePropertyRead2 || ast.receiver instanceof SafeKeyedRead) {
|
|
3473
3262
|
node = this.convertToSafeCall(ast, expr, args);
|
|
3474
3263
|
} else {
|
|
3475
|
-
node =
|
|
3264
|
+
node = ts22.factory.createCallExpression(expr, void 0, args);
|
|
3476
3265
|
}
|
|
3477
3266
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3478
3267
|
return node;
|
|
@@ -3486,13 +3275,13 @@ var AstTranslator = class {
|
|
|
3486
3275
|
}
|
|
3487
3276
|
convertToSafeCall(ast, expr, args) {
|
|
3488
3277
|
if (this.config.strictSafeNavigationTypes) {
|
|
3489
|
-
const call =
|
|
3490
|
-
return
|
|
3278
|
+
const call = ts22.factory.createCallExpression(ts22.factory.createNonNullExpression(expr), void 0, args);
|
|
3279
|
+
return ts22.factory.createParenthesizedExpression(ts22.factory.createConditionalExpression(NULL_AS_ANY, void 0, call, void 0, UNDEFINED));
|
|
3491
3280
|
}
|
|
3492
3281
|
if (VeSafeLhsInferenceBugDetector.veWillInferAnyFor(ast)) {
|
|
3493
|
-
return
|
|
3282
|
+
return ts22.factory.createCallExpression(tsCastToAny(expr), void 0, args);
|
|
3494
3283
|
}
|
|
3495
|
-
return tsCastToAny(
|
|
3284
|
+
return tsCastToAny(ts22.factory.createCallExpression(ts22.factory.createNonNullExpression(expr), void 0, args));
|
|
3496
3285
|
}
|
|
3497
3286
|
};
|
|
3498
3287
|
var VeSafeLhsInferenceBugDetector = class {
|
|
@@ -3601,7 +3390,7 @@ function generateTypeCheckBlock(env, ref, name, meta, domSchemaChecker, oobRecor
|
|
|
3601
3390
|
const tcb = new Context(env, domSchemaChecker, oobRecorder, meta.id, meta.boundTarget, meta.pipes, meta.schemas, meta.isStandalone);
|
|
3602
3391
|
const scope = Scope.forNodes(tcb, null, tcb.boundTarget.target.template, null);
|
|
3603
3392
|
const ctxRawType = env.referenceType(ref);
|
|
3604
|
-
if (!
|
|
3393
|
+
if (!ts23.isTypeReferenceNode(ctxRawType)) {
|
|
3605
3394
|
throw new Error(`Expected TypeReferenceNode when referencing the ctx param for ${ref.debugName}`);
|
|
3606
3395
|
}
|
|
3607
3396
|
let typeParameters = void 0;
|
|
@@ -3613,24 +3402,24 @@ function generateTypeCheckBlock(env, ref, name, meta, domSchemaChecker, oobRecor
|
|
|
3613
3402
|
switch (genericContextBehavior) {
|
|
3614
3403
|
case TcbGenericContextBehavior.UseEmitter:
|
|
3615
3404
|
typeParameters = new TypeParameterEmitter(ref.node.typeParameters, env.reflector).emit((typeRef) => env.referenceType(typeRef));
|
|
3616
|
-
typeArguments = typeParameters.map((param) =>
|
|
3405
|
+
typeArguments = typeParameters.map((param) => ts23.factory.createTypeReferenceNode(param.name));
|
|
3617
3406
|
break;
|
|
3618
3407
|
case TcbGenericContextBehavior.CopyClassNodes:
|
|
3619
3408
|
typeParameters = [...ref.node.typeParameters];
|
|
3620
|
-
typeArguments = typeParameters.map((param) =>
|
|
3409
|
+
typeArguments = typeParameters.map((param) => ts23.factory.createTypeReferenceNode(param.name));
|
|
3621
3410
|
break;
|
|
3622
3411
|
case TcbGenericContextBehavior.FallbackToAny:
|
|
3623
|
-
typeArguments = ref.node.typeParameters.map(() =>
|
|
3412
|
+
typeArguments = ref.node.typeParameters.map(() => ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword));
|
|
3624
3413
|
break;
|
|
3625
3414
|
}
|
|
3626
3415
|
}
|
|
3627
3416
|
const paramList = [tcbThisParam(ctxRawType.typeName, typeArguments)];
|
|
3628
3417
|
const scopeStatements = scope.render();
|
|
3629
|
-
const innerBody =
|
|
3418
|
+
const innerBody = ts23.factory.createBlock([
|
|
3630
3419
|
...env.getPreludeStatements(),
|
|
3631
3420
|
...scopeStatements
|
|
3632
3421
|
]);
|
|
3633
|
-
const body =
|
|
3422
|
+
const body = ts23.factory.createBlock([ts23.factory.createIfStatement(ts23.factory.createTrue(), innerBody, void 0)]);
|
|
3634
3423
|
const fnDecl = createFunctionDeclaration(
|
|
3635
3424
|
void 0,
|
|
3636
3425
|
void 0,
|
|
@@ -3680,7 +3469,7 @@ var TcbVariableOp = class extends TcbOp {
|
|
|
3680
3469
|
execute() {
|
|
3681
3470
|
const ctx = this.scope.resolve(this.template);
|
|
3682
3471
|
const id = this.tcb.allocateId();
|
|
3683
|
-
const initializer =
|
|
3472
|
+
const initializer = ts23.factory.createPropertyAccessExpression(
|
|
3684
3473
|
ctx,
|
|
3685
3474
|
this.variable.value || "$implicit"
|
|
3686
3475
|
);
|
|
@@ -3706,7 +3495,7 @@ var TcbTemplateContextOp = class extends TcbOp {
|
|
|
3706
3495
|
}
|
|
3707
3496
|
execute() {
|
|
3708
3497
|
const ctx = this.tcb.allocateId();
|
|
3709
|
-
const type =
|
|
3498
|
+
const type = ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword);
|
|
3710
3499
|
this.scope.addStatement(tsDeclareVariable(ctx, type));
|
|
3711
3500
|
return ctx;
|
|
3712
3501
|
}
|
|
@@ -3759,16 +3548,16 @@ var TcbTemplateBodyOp = class extends TcbOp {
|
|
|
3759
3548
|
}
|
|
3760
3549
|
let guard = null;
|
|
3761
3550
|
if (directiveGuards.length > 0) {
|
|
3762
|
-
guard = directiveGuards.reduce((expr, dirGuard) =>
|
|
3551
|
+
guard = directiveGuards.reduce((expr, dirGuard) => ts23.factory.createBinaryExpression(expr, ts23.SyntaxKind.AmpersandAmpersandToken, dirGuard), directiveGuards.pop());
|
|
3763
3552
|
}
|
|
3764
3553
|
const tmplScope = Scope.forNodes(this.tcb, this.scope, this.template, guard);
|
|
3765
3554
|
const statements = tmplScope.render();
|
|
3766
3555
|
if (statements.length === 0) {
|
|
3767
3556
|
return null;
|
|
3768
3557
|
}
|
|
3769
|
-
let tmplBlock =
|
|
3558
|
+
let tmplBlock = ts23.factory.createBlock(statements);
|
|
3770
3559
|
if (guard !== null) {
|
|
3771
|
-
tmplBlock =
|
|
3560
|
+
tmplBlock = ts23.factory.createIfStatement(guard, tmplBlock);
|
|
3772
3561
|
}
|
|
3773
3562
|
this.scope.addStatement(tmplBlock);
|
|
3774
3563
|
return null;
|
|
@@ -3786,7 +3575,7 @@ var TcbTextInterpolationOp = class extends TcbOp {
|
|
|
3786
3575
|
}
|
|
3787
3576
|
execute() {
|
|
3788
3577
|
const expr = tcbExpression(this.binding.value, this.tcb, this.scope);
|
|
3789
|
-
this.scope.addStatement(
|
|
3578
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(expr));
|
|
3790
3579
|
return null;
|
|
3791
3580
|
}
|
|
3792
3581
|
};
|
|
@@ -3808,11 +3597,11 @@ var TcbDirectiveTypeOpBase = class extends TcbOp {
|
|
|
3808
3597
|
if (this.dir.isGeneric === false || dirRef.node.typeParameters === void 0) {
|
|
3809
3598
|
type = rawType;
|
|
3810
3599
|
} else {
|
|
3811
|
-
if (!
|
|
3600
|
+
if (!ts23.isTypeReferenceNode(rawType)) {
|
|
3812
3601
|
throw new Error(`Expected TypeReferenceNode when referencing the type for ${this.dir.ref.debugName}`);
|
|
3813
3602
|
}
|
|
3814
|
-
const typeArguments = dirRef.node.typeParameters.map(() =>
|
|
3815
|
-
type =
|
|
3603
|
+
const typeArguments = dirRef.node.typeParameters.map(() => ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword));
|
|
3604
|
+
type = ts23.factory.createTypeReferenceNode(rawType.typeName, typeArguments);
|
|
3816
3605
|
}
|
|
3817
3606
|
const id = this.tcb.allocateId();
|
|
3818
3607
|
addExpressionIdentifier(type, ExpressionIdentifier.DIRECTIVE);
|
|
@@ -3853,11 +3642,11 @@ var TcbReferenceOp = class extends TcbOp {
|
|
|
3853
3642
|
const id = this.tcb.allocateId();
|
|
3854
3643
|
let initializer = this.target instanceof TmplAstTemplate2 || this.target instanceof TmplAstElement3 ? this.scope.resolve(this.target) : this.scope.resolve(this.host, this.target);
|
|
3855
3644
|
if (this.target instanceof TmplAstElement3 && !this.tcb.env.config.checkTypeOfDomReferences || !this.tcb.env.config.checkTypeOfNonDomReferences) {
|
|
3856
|
-
initializer =
|
|
3645
|
+
initializer = ts23.factory.createAsExpression(initializer, ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword));
|
|
3857
3646
|
} else if (this.target instanceof TmplAstTemplate2) {
|
|
3858
|
-
initializer =
|
|
3859
|
-
initializer =
|
|
3860
|
-
initializer =
|
|
3647
|
+
initializer = ts23.factory.createAsExpression(initializer, ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword));
|
|
3648
|
+
initializer = ts23.factory.createAsExpression(initializer, this.tcb.env.referenceExternalType("@angular/core", "TemplateRef", [DYNAMIC_TYPE]));
|
|
3649
|
+
initializer = ts23.factory.createParenthesizedExpression(initializer);
|
|
3861
3650
|
}
|
|
3862
3651
|
addParseSpanInfo(initializer, this.node.sourceSpan);
|
|
3863
3652
|
addParseSpanInfo(id, this.node.keySpan);
|
|
@@ -3947,7 +3736,7 @@ var TcbDirectiveInputsOp = class extends TcbOp {
|
|
|
3947
3736
|
let target;
|
|
3948
3737
|
if (this.dir.coercedInputFields.has(fieldName)) {
|
|
3949
3738
|
const dirTypeRef = this.tcb.env.referenceType(this.dir.ref);
|
|
3950
|
-
if (!
|
|
3739
|
+
if (!ts23.isTypeReferenceNode(dirTypeRef)) {
|
|
3951
3740
|
throw new Error(`Expected TypeReferenceNode from reference to ${this.dir.ref.debugName}`);
|
|
3952
3741
|
}
|
|
3953
3742
|
const id = this.tcb.allocateId();
|
|
@@ -3962,10 +3751,10 @@ var TcbDirectiveInputsOp = class extends TcbOp {
|
|
|
3962
3751
|
}
|
|
3963
3752
|
const id = this.tcb.allocateId();
|
|
3964
3753
|
const dirTypeRef = this.tcb.env.referenceType(this.dir.ref);
|
|
3965
|
-
if (!
|
|
3754
|
+
if (!ts23.isTypeReferenceNode(dirTypeRef)) {
|
|
3966
3755
|
throw new Error(`Expected TypeReferenceNode from reference to ${this.dir.ref.debugName}`);
|
|
3967
3756
|
}
|
|
3968
|
-
const type =
|
|
3757
|
+
const type = ts23.factory.createIndexedAccessTypeNode(ts23.factory.createTypeQueryNode(dirId), ts23.factory.createLiteralTypeNode(ts23.factory.createStringLiteral(fieldName)));
|
|
3969
3758
|
const temp = tsDeclareVariable(id, type);
|
|
3970
3759
|
this.scope.addStatement(temp);
|
|
3971
3760
|
target = id;
|
|
@@ -3973,18 +3762,18 @@ var TcbDirectiveInputsOp = class extends TcbOp {
|
|
|
3973
3762
|
if (dirId === null) {
|
|
3974
3763
|
dirId = this.scope.resolve(this.node, this.dir);
|
|
3975
3764
|
}
|
|
3976
|
-
target = this.dir.stringLiteralInputFields.has(fieldName) ?
|
|
3765
|
+
target = this.dir.stringLiteralInputFields.has(fieldName) ? ts23.factory.createElementAccessExpression(dirId, ts23.factory.createStringLiteral(fieldName)) : ts23.factory.createPropertyAccessExpression(dirId, ts23.factory.createIdentifier(fieldName));
|
|
3977
3766
|
}
|
|
3978
3767
|
if (input.attribute.keySpan !== void 0) {
|
|
3979
3768
|
addParseSpanInfo(target, input.attribute.keySpan);
|
|
3980
3769
|
}
|
|
3981
|
-
assignment =
|
|
3770
|
+
assignment = ts23.factory.createBinaryExpression(target, ts23.SyntaxKind.EqualsToken, assignment);
|
|
3982
3771
|
}
|
|
3983
3772
|
addParseSpanInfo(assignment, input.attribute.sourceSpan);
|
|
3984
3773
|
if (!this.tcb.env.config.checkTypeOfAttributes && input.attribute instanceof TmplAstTextAttribute2) {
|
|
3985
3774
|
markIgnoreDiagnostics(assignment);
|
|
3986
3775
|
}
|
|
3987
|
-
this.scope.addStatement(
|
|
3776
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(assignment));
|
|
3988
3777
|
}
|
|
3989
3778
|
return null;
|
|
3990
3779
|
}
|
|
@@ -4003,7 +3792,7 @@ var TcbDirectiveCtorCircularFallbackOp = class extends TcbOp {
|
|
|
4003
3792
|
execute() {
|
|
4004
3793
|
const id = this.tcb.allocateId();
|
|
4005
3794
|
const typeCtor = this.tcb.env.typeCtorFor(this.dir);
|
|
4006
|
-
const circularPlaceholder =
|
|
3795
|
+
const circularPlaceholder = ts23.factory.createCallExpression(typeCtor, void 0, [ts23.factory.createNonNullExpression(ts23.factory.createNull())]);
|
|
4007
3796
|
this.scope.addStatement(tsCreateVariable(id, circularPlaceholder));
|
|
4008
3797
|
return id;
|
|
4009
3798
|
}
|
|
@@ -4071,15 +3860,15 @@ var TcbUnclaimedInputsOp = class extends TcbOp {
|
|
|
4071
3860
|
elId = this.scope.resolve(this.element);
|
|
4072
3861
|
}
|
|
4073
3862
|
const propertyName = (_a = ATTR_TO_PROP.get(binding.name)) != null ? _a : binding.name;
|
|
4074
|
-
const prop =
|
|
4075
|
-
const stmt =
|
|
3863
|
+
const prop = ts23.factory.createElementAccessExpression(elId, ts23.factory.createStringLiteral(propertyName));
|
|
3864
|
+
const stmt = ts23.factory.createBinaryExpression(prop, ts23.SyntaxKind.EqualsToken, wrapForDiagnostics(expr));
|
|
4076
3865
|
addParseSpanInfo(stmt, binding.sourceSpan);
|
|
4077
|
-
this.scope.addStatement(
|
|
3866
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(stmt));
|
|
4078
3867
|
} else {
|
|
4079
|
-
this.scope.addStatement(
|
|
3868
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(expr));
|
|
4080
3869
|
}
|
|
4081
3870
|
} else {
|
|
4082
|
-
this.scope.addStatement(
|
|
3871
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(expr));
|
|
4083
3872
|
}
|
|
4084
3873
|
}
|
|
4085
3874
|
return null;
|
|
@@ -4111,18 +3900,18 @@ var TcbDirectiveOutputsOp = class extends TcbOp {
|
|
|
4111
3900
|
if (dirId === null) {
|
|
4112
3901
|
dirId = this.scope.resolve(this.node, this.dir);
|
|
4113
3902
|
}
|
|
4114
|
-
const outputField =
|
|
3903
|
+
const outputField = ts23.factory.createElementAccessExpression(dirId, ts23.factory.createStringLiteral(field));
|
|
4115
3904
|
addParseSpanInfo(outputField, output.keySpan);
|
|
4116
3905
|
if (this.tcb.env.config.checkTypeOfOutputEvents) {
|
|
4117
3906
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 0);
|
|
4118
|
-
const subscribeFn =
|
|
4119
|
-
const call =
|
|
3907
|
+
const subscribeFn = ts23.factory.createPropertyAccessExpression(outputField, "subscribe");
|
|
3908
|
+
const call = ts23.factory.createCallExpression(subscribeFn, void 0, [handler]);
|
|
4120
3909
|
addParseSpanInfo(call, output.sourceSpan);
|
|
4121
|
-
this.scope.addStatement(
|
|
3910
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(call));
|
|
4122
3911
|
} else {
|
|
4123
|
-
this.scope.addStatement(
|
|
3912
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(outputField));
|
|
4124
3913
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 1);
|
|
4125
|
-
this.scope.addStatement(
|
|
3914
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(handler));
|
|
4126
3915
|
}
|
|
4127
3916
|
ExpressionSemanticVisitor.visit(output.handler, this.tcb.id, this.tcb.boundTarget, this.tcb.oobRecorder);
|
|
4128
3917
|
}
|
|
@@ -4155,24 +3944,24 @@ var TcbUnclaimedOutputsOp = class extends TcbOp {
|
|
|
4155
3944
|
if (output.type === 1) {
|
|
4156
3945
|
const eventType = this.tcb.env.config.checkTypeOfAnimationEvents ? this.tcb.env.referenceExternalType("@angular/animations", "AnimationEvent") : 1;
|
|
4157
3946
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, eventType);
|
|
4158
|
-
this.scope.addStatement(
|
|
3947
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(handler));
|
|
4159
3948
|
} else if (this.tcb.env.config.checkTypeOfDomEvents) {
|
|
4160
3949
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 0);
|
|
4161
3950
|
if (elId === null) {
|
|
4162
3951
|
elId = this.scope.resolve(this.element);
|
|
4163
3952
|
}
|
|
4164
|
-
const propertyAccess =
|
|
3953
|
+
const propertyAccess = ts23.factory.createPropertyAccessExpression(elId, "addEventListener");
|
|
4165
3954
|
addParseSpanInfo(propertyAccess, output.keySpan);
|
|
4166
|
-
const call =
|
|
3955
|
+
const call = ts23.factory.createCallExpression(
|
|
4167
3956
|
propertyAccess,
|
|
4168
3957
|
void 0,
|
|
4169
|
-
[
|
|
3958
|
+
[ts23.factory.createStringLiteral(output.name), handler]
|
|
4170
3959
|
);
|
|
4171
3960
|
addParseSpanInfo(call, output.sourceSpan);
|
|
4172
|
-
this.scope.addStatement(
|
|
3961
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(call));
|
|
4173
3962
|
} else {
|
|
4174
3963
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 1);
|
|
4175
|
-
this.scope.addStatement(
|
|
3964
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(handler));
|
|
4176
3965
|
}
|
|
4177
3966
|
ExpressionSemanticVisitor.visit(output.handler, this.tcb.id, this.tcb.boundTarget, this.tcb.oobRecorder);
|
|
4178
3967
|
}
|
|
@@ -4186,15 +3975,15 @@ var TcbComponentContextCompletionOp = class extends TcbOp {
|
|
|
4186
3975
|
this.optional = false;
|
|
4187
3976
|
}
|
|
4188
3977
|
execute() {
|
|
4189
|
-
const ctx =
|
|
4190
|
-
const ctxDot =
|
|
3978
|
+
const ctx = ts23.factory.createThis();
|
|
3979
|
+
const ctxDot = ts23.factory.createPropertyAccessExpression(ctx, "");
|
|
4191
3980
|
markIgnoreDiagnostics(ctxDot);
|
|
4192
3981
|
addExpressionIdentifier(ctxDot, ExpressionIdentifier.COMPONENT_COMPLETION);
|
|
4193
|
-
this.scope.addStatement(
|
|
3982
|
+
this.scope.addStatement(ts23.factory.createExpressionStatement(ctxDot));
|
|
4194
3983
|
return null;
|
|
4195
3984
|
}
|
|
4196
3985
|
};
|
|
4197
|
-
var INFER_TYPE_FOR_CIRCULAR_OP_EXPR =
|
|
3986
|
+
var INFER_TYPE_FOR_CIRCULAR_OP_EXPR = ts23.factory.createNonNullExpression(ts23.factory.createNull());
|
|
4198
3987
|
var Context = class {
|
|
4199
3988
|
constructor(env, domSchemaChecker, oobRecorder, id, boundTarget, pipes, schemas, hostIsStandalone) {
|
|
4200
3989
|
this.env = env;
|
|
@@ -4208,7 +3997,7 @@ var Context = class {
|
|
|
4208
3997
|
this.nextId = 1;
|
|
4209
3998
|
}
|
|
4210
3999
|
allocateId() {
|
|
4211
|
-
return
|
|
4000
|
+
return ts23.factory.createIdentifier(`_t${this.nextId++}`);
|
|
4212
4001
|
}
|
|
4213
4002
|
getPipeByName(name) {
|
|
4214
4003
|
if (!this.pipes.has(name)) {
|
|
@@ -4261,16 +4050,16 @@ var Scope = class {
|
|
|
4261
4050
|
const res = this.resolveLocal(node, directive);
|
|
4262
4051
|
if (res !== null) {
|
|
4263
4052
|
let clone;
|
|
4264
|
-
if (
|
|
4265
|
-
clone =
|
|
4266
|
-
} else if (
|
|
4267
|
-
clone =
|
|
4053
|
+
if (ts23.isIdentifier(res)) {
|
|
4054
|
+
clone = ts23.factory.createIdentifier(res.text);
|
|
4055
|
+
} else if (ts23.isNonNullExpression(res)) {
|
|
4056
|
+
clone = ts23.factory.createNonNullExpression(res.expression);
|
|
4268
4057
|
} else {
|
|
4269
4058
|
throw new Error(`Could not resolve ${node} to an Identifier or a NonNullExpression`);
|
|
4270
4059
|
}
|
|
4271
|
-
|
|
4060
|
+
ts23.setOriginalNode(clone, res);
|
|
4272
4061
|
clone.parent = clone.parent;
|
|
4273
|
-
return
|
|
4062
|
+
return ts23.setSyntheticTrailingComments(clone, []);
|
|
4274
4063
|
} else if (this.parent !== null) {
|
|
4275
4064
|
return this.parent.resolve(node, directive);
|
|
4276
4065
|
} else {
|
|
@@ -4297,7 +4086,7 @@ var Scope = class {
|
|
|
4297
4086
|
} else if (parentGuards === null) {
|
|
4298
4087
|
return this.guard;
|
|
4299
4088
|
} else {
|
|
4300
|
-
return
|
|
4089
|
+
return ts23.factory.createBinaryExpression(parentGuards, ts23.SyntaxKind.AmpersandAmpersandToken, this.guard);
|
|
4301
4090
|
}
|
|
4302
4091
|
}
|
|
4303
4092
|
resolveLocal(ref, directive) {
|
|
@@ -4482,7 +4271,7 @@ function tcbThisParam(name, typeArguments) {
|
|
|
4482
4271
|
void 0,
|
|
4483
4272
|
"this",
|
|
4484
4273
|
void 0,
|
|
4485
|
-
|
|
4274
|
+
ts23.factory.createTypeReferenceNode(name, typeArguments),
|
|
4486
4275
|
void 0
|
|
4487
4276
|
);
|
|
4488
4277
|
}
|
|
@@ -4507,11 +4296,11 @@ var TcbExpressionTranslator = class {
|
|
|
4507
4296
|
return null;
|
|
4508
4297
|
}
|
|
4509
4298
|
const expr = this.translate(ast.value);
|
|
4510
|
-
const result =
|
|
4299
|
+
const result = ts23.factory.createParenthesizedExpression(ts23.factory.createBinaryExpression(target, ts23.SyntaxKind.EqualsToken, expr));
|
|
4511
4300
|
addParseSpanInfo(result, ast.sourceSpan);
|
|
4512
4301
|
return result;
|
|
4513
4302
|
} else if (ast instanceof ImplicitReceiver4) {
|
|
4514
|
-
return
|
|
4303
|
+
return ts23.factory.createThis();
|
|
4515
4304
|
} else if (ast instanceof BindingPipe) {
|
|
4516
4305
|
const expr = this.translate(ast.exp);
|
|
4517
4306
|
const pipeRef = this.tcb.getPipeByName(ast.name);
|
|
@@ -4523,12 +4312,12 @@ var TcbExpressionTranslator = class {
|
|
|
4523
4312
|
pipe = this.tcb.env.pipeInst(pipeRef);
|
|
4524
4313
|
}
|
|
4525
4314
|
const args = ast.args.map((arg) => this.translate(arg));
|
|
4526
|
-
let methodAccess =
|
|
4315
|
+
let methodAccess = ts23.factory.createPropertyAccessExpression(pipe, "transform");
|
|
4527
4316
|
addParseSpanInfo(methodAccess, ast.nameSpan);
|
|
4528
4317
|
if (!this.tcb.env.config.checkTypeOfPipes) {
|
|
4529
|
-
methodAccess =
|
|
4318
|
+
methodAccess = ts23.factory.createAsExpression(methodAccess, ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword));
|
|
4530
4319
|
}
|
|
4531
|
-
const result =
|
|
4320
|
+
const result = ts23.factory.createCallExpression(
|
|
4532
4321
|
methodAccess,
|
|
4533
4322
|
void 0,
|
|
4534
4323
|
[expr, ...args]
|
|
@@ -4538,8 +4327,8 @@ var TcbExpressionTranslator = class {
|
|
|
4538
4327
|
} else if ((ast instanceof Call2 || ast instanceof SafeCall) && (ast.receiver instanceof PropertyRead4 || ast.receiver instanceof SafePropertyRead3)) {
|
|
4539
4328
|
if (ast.receiver.receiver instanceof ImplicitReceiver4 && !(ast.receiver.receiver instanceof ThisReceiver) && ast.receiver.name === "$any" && ast.args.length === 1) {
|
|
4540
4329
|
const expr = this.translate(ast.args[0]);
|
|
4541
|
-
const exprAsAny =
|
|
4542
|
-
const result =
|
|
4330
|
+
const exprAsAny = ts23.factory.createAsExpression(expr, ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword));
|
|
4331
|
+
const result = ts23.factory.createParenthesizedExpression(exprAsAny);
|
|
4543
4332
|
addParseSpanInfo(result, ast.sourceSpan);
|
|
4544
4333
|
return result;
|
|
4545
4334
|
}
|
|
@@ -4550,7 +4339,7 @@ var TcbExpressionTranslator = class {
|
|
|
4550
4339
|
const method = wrapForDiagnostics(receiver);
|
|
4551
4340
|
addParseSpanInfo(method, ast.receiver.nameSpan);
|
|
4552
4341
|
const args = ast.args.map((arg) => this.translate(arg));
|
|
4553
|
-
const node =
|
|
4342
|
+
const node = ts23.factory.createCallExpression(method, void 0, args);
|
|
4554
4343
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
4555
4344
|
return node;
|
|
4556
4345
|
} else {
|
|
@@ -4570,20 +4359,20 @@ var TcbExpressionTranslator = class {
|
|
|
4570
4359
|
function tcbCallTypeCtor(dir, tcb, inputs) {
|
|
4571
4360
|
const typeCtor = tcb.env.typeCtorFor(dir);
|
|
4572
4361
|
const members = inputs.map((input) => {
|
|
4573
|
-
const propertyName =
|
|
4362
|
+
const propertyName = ts23.factory.createStringLiteral(input.field);
|
|
4574
4363
|
if (input.type === "binding") {
|
|
4575
4364
|
const expr = widenBinding(input.expression, tcb);
|
|
4576
|
-
const assignment =
|
|
4365
|
+
const assignment = ts23.factory.createPropertyAssignment(propertyName, wrapForDiagnostics(expr));
|
|
4577
4366
|
addParseSpanInfo(assignment, input.sourceSpan);
|
|
4578
4367
|
return assignment;
|
|
4579
4368
|
} else {
|
|
4580
|
-
return
|
|
4369
|
+
return ts23.factory.createPropertyAssignment(propertyName, NULL_AS_ANY);
|
|
4581
4370
|
}
|
|
4582
4371
|
});
|
|
4583
|
-
return
|
|
4372
|
+
return ts23.factory.createCallExpression(
|
|
4584
4373
|
typeCtor,
|
|
4585
4374
|
void 0,
|
|
4586
|
-
[
|
|
4375
|
+
[ts23.factory.createObjectLiteralExpression(members)]
|
|
4587
4376
|
);
|
|
4588
4377
|
}
|
|
4589
4378
|
function getBoundInputs(directive, node, tcb) {
|
|
@@ -4610,17 +4399,17 @@ function translateInput(attr, tcb, scope) {
|
|
|
4610
4399
|
if (attr instanceof TmplAstBoundAttribute) {
|
|
4611
4400
|
return tcbExpression(attr.value, tcb, scope);
|
|
4612
4401
|
} else {
|
|
4613
|
-
return
|
|
4402
|
+
return ts23.factory.createStringLiteral(attr.value);
|
|
4614
4403
|
}
|
|
4615
4404
|
}
|
|
4616
4405
|
function widenBinding(expr, tcb) {
|
|
4617
4406
|
if (!tcb.env.config.checkTypeOfInputBindings) {
|
|
4618
4407
|
return tsCastToAny(expr);
|
|
4619
4408
|
} else if (!tcb.env.config.strictNullInputBindings) {
|
|
4620
|
-
if (
|
|
4409
|
+
if (ts23.isObjectLiteralExpression(expr) || ts23.isArrayLiteralExpression(expr)) {
|
|
4621
4410
|
return expr;
|
|
4622
4411
|
} else {
|
|
4623
|
-
return
|
|
4412
|
+
return ts23.factory.createNonNullExpression(expr);
|
|
4624
4413
|
}
|
|
4625
4414
|
} else {
|
|
4626
4415
|
return expr;
|
|
@@ -4633,14 +4422,14 @@ function tcbCreateEventHandler(event, tcb, scope, eventType) {
|
|
|
4633
4422
|
if (eventType === 0) {
|
|
4634
4423
|
eventParamType = void 0;
|
|
4635
4424
|
} else if (eventType === 1) {
|
|
4636
|
-
eventParamType =
|
|
4425
|
+
eventParamType = ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword);
|
|
4637
4426
|
} else {
|
|
4638
4427
|
eventParamType = eventType;
|
|
4639
4428
|
}
|
|
4640
4429
|
const guards = scope.guards();
|
|
4641
|
-
let body =
|
|
4430
|
+
let body = ts23.factory.createExpressionStatement(handler);
|
|
4642
4431
|
if (guards !== null) {
|
|
4643
|
-
body =
|
|
4432
|
+
body = ts23.factory.createIfStatement(guards, body);
|
|
4644
4433
|
}
|
|
4645
4434
|
const eventParam = createParameterDeclaration(
|
|
4646
4435
|
void 0,
|
|
@@ -4650,13 +4439,13 @@ function tcbCreateEventHandler(event, tcb, scope, eventType) {
|
|
|
4650
4439
|
eventParamType
|
|
4651
4440
|
);
|
|
4652
4441
|
addExpressionIdentifier(eventParam, ExpressionIdentifier.EVENT_PARAMETER);
|
|
4653
|
-
return
|
|
4442
|
+
return ts23.factory.createArrowFunction(
|
|
4654
4443
|
void 0,
|
|
4655
4444
|
void 0,
|
|
4656
4445
|
[eventParam],
|
|
4657
|
-
|
|
4446
|
+
ts23.factory.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword),
|
|
4658
4447
|
void 0,
|
|
4659
|
-
|
|
4448
|
+
ts23.factory.createBlock([body])
|
|
4660
4449
|
);
|
|
4661
4450
|
}
|
|
4662
4451
|
function tcbEventHandlerExpression(ast, tcb, scope) {
|
|
@@ -4685,7 +4474,7 @@ function isSplitTwoWayBinding(inputName, output, inputs, tcb) {
|
|
|
4685
4474
|
var TcbEventHandlerTranslator = class extends TcbExpressionTranslator {
|
|
4686
4475
|
resolve(ast) {
|
|
4687
4476
|
if (ast instanceof PropertyRead4 && ast.receiver instanceof ImplicitReceiver4 && !(ast.receiver instanceof ThisReceiver) && ast.name === EVENT_PARAMETER) {
|
|
4688
|
-
const event =
|
|
4477
|
+
const event = ts23.factory.createIdentifier(EVENT_PARAMETER);
|
|
4689
4478
|
addParseSpanInfo(event, ast.nameSpan);
|
|
4690
4479
|
return event;
|
|
4691
4480
|
}
|
|
@@ -4694,32 +4483,32 @@ var TcbEventHandlerTranslator = class extends TcbExpressionTranslator {
|
|
|
4694
4483
|
};
|
|
4695
4484
|
|
|
4696
4485
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_check_file.mjs
|
|
4697
|
-
import
|
|
4486
|
+
import ts24 from "typescript";
|
|
4698
4487
|
var TypeCheckFile = class extends Environment {
|
|
4699
4488
|
constructor(fileName, config, refEmitter, reflector, compilerHost) {
|
|
4700
|
-
super(config, new ImportManager(new NoopImportRewriter(), "i"), refEmitter, reflector,
|
|
4489
|
+
super(config, new ImportManager(new NoopImportRewriter(), "i"), refEmitter, reflector, ts24.createSourceFile(compilerHost.getCanonicalFileName(fileName), "", ts24.ScriptTarget.Latest, true));
|
|
4701
4490
|
this.fileName = fileName;
|
|
4702
4491
|
this.nextTcbId = 1;
|
|
4703
4492
|
this.tcbStatements = [];
|
|
4704
4493
|
}
|
|
4705
4494
|
addTypeCheckBlock(ref, meta, domSchemaChecker, oobRecorder, genericContextBehavior) {
|
|
4706
|
-
const fnId =
|
|
4495
|
+
const fnId = ts24.factory.createIdentifier(`_tcb${this.nextTcbId++}`);
|
|
4707
4496
|
const fn = generateTypeCheckBlock(this, ref, fnId, meta, domSchemaChecker, oobRecorder, genericContextBehavior);
|
|
4708
4497
|
this.tcbStatements.push(fn);
|
|
4709
4498
|
}
|
|
4710
4499
|
render(removeComments) {
|
|
4711
4500
|
let source = this.importManager.getAllImports(this.contextFile.fileName).map((i) => `import * as ${i.qualifier.text} from '${i.specifier}';`).join("\n") + "\n\n";
|
|
4712
|
-
const printer =
|
|
4501
|
+
const printer = ts24.createPrinter({ removeComments });
|
|
4713
4502
|
source += "\n";
|
|
4714
4503
|
for (const stmt of this.pipeInstStatements) {
|
|
4715
|
-
source += printer.printNode(
|
|
4504
|
+
source += printer.printNode(ts24.EmitHint.Unspecified, stmt, this.contextFile) + "\n";
|
|
4716
4505
|
}
|
|
4717
4506
|
for (const stmt of this.typeCtorStatements) {
|
|
4718
|
-
source += printer.printNode(
|
|
4507
|
+
source += printer.printNode(ts24.EmitHint.Unspecified, stmt, this.contextFile) + "\n";
|
|
4719
4508
|
}
|
|
4720
4509
|
source += "\n";
|
|
4721
4510
|
for (const stmt of this.tcbStatements) {
|
|
4722
|
-
source += printer.printNode(
|
|
4511
|
+
source += printer.printNode(ts24.EmitHint.Unspecified, stmt, this.contextFile) + "\n";
|
|
4723
4512
|
}
|
|
4724
4513
|
source += "\nexport const IS_A_MODULE = true;\n";
|
|
4725
4514
|
return source;
|
|
@@ -4835,7 +4624,7 @@ var TypeCheckContextImpl = class {
|
|
|
4835
4624
|
const importManager = new ImportManager(new NoopImportRewriter(), "_i");
|
|
4836
4625
|
const ops = this.opMap.get(sf).sort(orderOps);
|
|
4837
4626
|
const textParts = splitStringAtPoints(sf.text, ops.map((op) => op.splitPoint));
|
|
4838
|
-
const printer =
|
|
4627
|
+
const printer = ts25.createPrinter({ omitTrailingSemicolon: true });
|
|
4839
4628
|
let code = textParts[0];
|
|
4840
4629
|
ops.forEach((op, idx) => {
|
|
4841
4630
|
const text = op.execute(importManager, sf, this.refEmitter, printer);
|
|
@@ -4916,7 +4705,7 @@ var TypeCheckContextImpl = class {
|
|
|
4916
4705
|
if (span.start.offset === span.end.offset) {
|
|
4917
4706
|
span.end.offset++;
|
|
4918
4707
|
}
|
|
4919
|
-
return makeTemplateDiagnostic(templateId, sourceMapping, span,
|
|
4708
|
+
return makeTemplateDiagnostic(templateId, sourceMapping, span, ts25.DiagnosticCategory.Error, ngErrorCode(ErrorCode.TEMPLATE_PARSE_ERROR), error.msg);
|
|
4920
4709
|
});
|
|
4921
4710
|
}
|
|
4922
4711
|
};
|
|
@@ -4934,9 +4723,9 @@ var InlineTcbOp = class {
|
|
|
4934
4723
|
}
|
|
4935
4724
|
execute(im, sf, refEmitter, printer) {
|
|
4936
4725
|
const env = new Environment(this.config, im, refEmitter, this.reflector, sf);
|
|
4937
|
-
const fnName =
|
|
4726
|
+
const fnName = ts25.factory.createIdentifier(`_tcb_${this.ref.node.pos}`);
|
|
4938
4727
|
const fn = generateTypeCheckBlock(env, this.ref, fnName, this.meta, this.domSchemaChecker, this.oobRecorder, TcbGenericContextBehavior.CopyClassNodes);
|
|
4939
|
-
return printer.printNode(
|
|
4728
|
+
return printer.printNode(ts25.EmitHint.Unspecified, fn, sf);
|
|
4940
4729
|
}
|
|
4941
4730
|
};
|
|
4942
4731
|
var TypeCtorOp = class {
|
|
@@ -4949,7 +4738,7 @@ var TypeCtorOp = class {
|
|
|
4949
4738
|
}
|
|
4950
4739
|
execute(im, sf, refEmitter, printer) {
|
|
4951
4740
|
const tcb = generateInlineTypeCtor(this.ref.node, this.meta);
|
|
4952
|
-
return printer.printNode(
|
|
4741
|
+
return printer.printNode(ts25.EmitHint.Unspecified, tcb, sf);
|
|
4953
4742
|
}
|
|
4954
4743
|
};
|
|
4955
4744
|
function orderOps(op1, op2) {
|
|
@@ -5064,7 +4853,7 @@ var TemplateSourceManager = class {
|
|
|
5064
4853
|
|
|
5065
4854
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/template_symbol_builder.mjs
|
|
5066
4855
|
import { AST, ASTWithSource as ASTWithSource3, BindingPipe as BindingPipe2, PropertyRead as PropertyRead5, PropertyWrite as PropertyWrite4, SafePropertyRead as SafePropertyRead4, TmplAstBoundAttribute as TmplAstBoundAttribute2, TmplAstBoundEvent, TmplAstElement as TmplAstElement4, TmplAstReference as TmplAstReference4, TmplAstTemplate as TmplAstTemplate3, TmplAstTextAttribute as TmplAstTextAttribute3, TmplAstVariable as TmplAstVariable3 } from "@angular/compiler";
|
|
5067
|
-
import
|
|
4856
|
+
import ts26 from "typescript";
|
|
5068
4857
|
var SymbolBuilder = class {
|
|
5069
4858
|
constructor(tcbPath, tcbIsShim, typeCheckBlock, templateData, componentScopeReader, getTypeChecker) {
|
|
5070
4859
|
this.tcbPath = tcbPath;
|
|
@@ -5108,7 +4897,7 @@ var SymbolBuilder = class {
|
|
|
5108
4897
|
getSymbolOfElement(element) {
|
|
5109
4898
|
var _a;
|
|
5110
4899
|
const elementSourceSpan = (_a = element.startSourceSpan) != null ? _a : element.sourceSpan;
|
|
5111
|
-
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: elementSourceSpan, filter:
|
|
4900
|
+
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: elementSourceSpan, filter: ts26.isVariableDeclaration });
|
|
5112
4901
|
if (node === null) {
|
|
5113
4902
|
return null;
|
|
5114
4903
|
}
|
|
@@ -5128,12 +4917,12 @@ var SymbolBuilder = class {
|
|
|
5128
4917
|
var _a;
|
|
5129
4918
|
const elementSourceSpan = (_a = element.startSourceSpan) != null ? _a : element.sourceSpan;
|
|
5130
4919
|
const tcbSourceFile = this.typeCheckBlock.getSourceFile();
|
|
5131
|
-
const isDirectiveDeclaration = (node) => (
|
|
4920
|
+
const isDirectiveDeclaration = (node) => (ts26.isTypeNode(node) || ts26.isIdentifier(node)) && ts26.isVariableDeclaration(node.parent) && hasExpressionIdentifier(tcbSourceFile, node, ExpressionIdentifier.DIRECTIVE);
|
|
5132
4921
|
const nodes = findAllMatchingNodes(this.typeCheckBlock, { withSpan: elementSourceSpan, filter: isDirectiveDeclaration });
|
|
5133
4922
|
const symbols = [];
|
|
5134
4923
|
for (const node of nodes) {
|
|
5135
4924
|
const symbol = this.getSymbolOfTsNode(node.parent);
|
|
5136
|
-
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !
|
|
4925
|
+
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !ts26.isClassDeclaration(symbol.tsSymbol.valueDeclaration)) {
|
|
5137
4926
|
continue;
|
|
5138
4927
|
}
|
|
5139
4928
|
const meta = this.getDirectiveMeta(element, symbol.tsSymbol.valueDeclaration);
|
|
@@ -5161,7 +4950,7 @@ var SymbolBuilder = class {
|
|
|
5161
4950
|
}
|
|
5162
4951
|
addHostDirectiveSymbols(host, hostDirectives, symbols) {
|
|
5163
4952
|
for (const current of hostDirectives) {
|
|
5164
|
-
if (!
|
|
4953
|
+
if (!ts26.isClassDeclaration(current.directive.node)) {
|
|
5165
4954
|
continue;
|
|
5166
4955
|
}
|
|
5167
4956
|
const symbol = this.getSymbolOfTsNode(current.directive.node);
|
|
@@ -5234,17 +5023,17 @@ var SymbolBuilder = class {
|
|
|
5234
5023
|
if (!isAccessExpression(n)) {
|
|
5235
5024
|
return false;
|
|
5236
5025
|
}
|
|
5237
|
-
if (
|
|
5026
|
+
if (ts26.isPropertyAccessExpression(n)) {
|
|
5238
5027
|
return n.name.getText() === expectedAccess;
|
|
5239
5028
|
} else {
|
|
5240
|
-
return
|
|
5029
|
+
return ts26.isStringLiteral(n.argumentExpression) && n.argumentExpression.text === expectedAccess;
|
|
5241
5030
|
}
|
|
5242
5031
|
}
|
|
5243
5032
|
const outputFieldAccesses = findAllMatchingNodes(this.typeCheckBlock, { withSpan: eventBinding.keySpan, filter });
|
|
5244
5033
|
const bindings = [];
|
|
5245
5034
|
for (const outputFieldAccess of outputFieldAccesses) {
|
|
5246
5035
|
if (consumer instanceof TmplAstTemplate3 || consumer instanceof TmplAstElement4) {
|
|
5247
|
-
if (!
|
|
5036
|
+
if (!ts26.isPropertyAccessExpression(outputFieldAccess)) {
|
|
5248
5037
|
continue;
|
|
5249
5038
|
}
|
|
5250
5039
|
const addEventListener = outputFieldAccess.name;
|
|
@@ -5267,7 +5056,7 @@ var SymbolBuilder = class {
|
|
|
5267
5056
|
}
|
|
5268
5057
|
});
|
|
5269
5058
|
} else {
|
|
5270
|
-
if (!
|
|
5059
|
+
if (!ts26.isElementAccessExpression(outputFieldAccess)) {
|
|
5271
5060
|
continue;
|
|
5272
5061
|
}
|
|
5273
5062
|
const tsSymbol = this.getTypeChecker().getSymbolAtLocation(outputFieldAccess.argumentExpression);
|
|
@@ -5340,7 +5129,7 @@ var SymbolBuilder = class {
|
|
|
5340
5129
|
return null;
|
|
5341
5130
|
}
|
|
5342
5131
|
const [declaration] = tsSymbol.declarations;
|
|
5343
|
-
if (!
|
|
5132
|
+
if (!ts26.isVariableDeclaration(declaration) || !hasExpressionIdentifier(
|
|
5344
5133
|
declaration.getSourceFile(),
|
|
5345
5134
|
(_a = declaration.type) != null ? _a : declaration.name,
|
|
5346
5135
|
ExpressionIdentifier.DIRECTIVE
|
|
@@ -5348,7 +5137,7 @@ var SymbolBuilder = class {
|
|
|
5348
5137
|
return null;
|
|
5349
5138
|
}
|
|
5350
5139
|
const symbol = this.getSymbolOfTsNode(declaration);
|
|
5351
|
-
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !
|
|
5140
|
+
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !ts26.isClassDeclaration(symbol.tsSymbol.valueDeclaration)) {
|
|
5352
5141
|
return null;
|
|
5353
5142
|
}
|
|
5354
5143
|
const ref = new Reference(symbol.tsSymbol.valueDeclaration);
|
|
@@ -5368,7 +5157,7 @@ var SymbolBuilder = class {
|
|
|
5368
5157
|
};
|
|
5369
5158
|
}
|
|
5370
5159
|
getSymbolOfVariable(variable) {
|
|
5371
|
-
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: variable.sourceSpan, filter:
|
|
5160
|
+
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: variable.sourceSpan, filter: ts26.isVariableDeclaration });
|
|
5372
5161
|
if (node === null || node.initializer === void 0) {
|
|
5373
5162
|
return null;
|
|
5374
5163
|
}
|
|
@@ -5391,11 +5180,11 @@ var SymbolBuilder = class {
|
|
|
5391
5180
|
}
|
|
5392
5181
|
getSymbolOfReference(ref) {
|
|
5393
5182
|
const target = this.templateData.boundTarget.getReferenceTarget(ref);
|
|
5394
|
-
let node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: ref.sourceSpan, filter:
|
|
5183
|
+
let node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: ref.sourceSpan, filter: ts26.isVariableDeclaration });
|
|
5395
5184
|
if (node === null || target === null || node.initializer === void 0) {
|
|
5396
5185
|
return null;
|
|
5397
5186
|
}
|
|
5398
|
-
const originalDeclaration =
|
|
5187
|
+
const originalDeclaration = ts26.isParenthesizedExpression(node.initializer) && ts26.isAsExpression(node.initializer.expression) ? this.getTypeChecker().getSymbolAtLocation(node.name) : this.getTypeChecker().getSymbolAtLocation(node.initializer);
|
|
5399
5188
|
if (originalDeclaration === void 0 || originalDeclaration.valueDeclaration === void 0) {
|
|
5400
5189
|
return null;
|
|
5401
5190
|
}
|
|
@@ -5419,7 +5208,7 @@ var SymbolBuilder = class {
|
|
|
5419
5208
|
referenceVarLocation: referenceVarTcbLocation
|
|
5420
5209
|
};
|
|
5421
5210
|
} else {
|
|
5422
|
-
if (!
|
|
5211
|
+
if (!ts26.isClassDeclaration(target.directive.ref.node)) {
|
|
5423
5212
|
return null;
|
|
5424
5213
|
}
|
|
5425
5214
|
return {
|
|
@@ -5434,7 +5223,7 @@ var SymbolBuilder = class {
|
|
|
5434
5223
|
}
|
|
5435
5224
|
}
|
|
5436
5225
|
getSymbolOfPipe(expression) {
|
|
5437
|
-
const methodAccess = findFirstMatchingNode(this.typeCheckBlock, { withSpan: expression.nameSpan, filter:
|
|
5226
|
+
const methodAccess = findFirstMatchingNode(this.typeCheckBlock, { withSpan: expression.nameSpan, filter: ts26.isPropertyAccessExpression });
|
|
5438
5227
|
if (methodAccess === null) {
|
|
5439
5228
|
return null;
|
|
5440
5229
|
}
|
|
@@ -5474,7 +5263,7 @@ var SymbolBuilder = class {
|
|
|
5474
5263
|
}
|
|
5475
5264
|
let node = null;
|
|
5476
5265
|
if (expression instanceof PropertyRead5) {
|
|
5477
|
-
node = findFirstMatchingNode(this.typeCheckBlock, { withSpan, filter:
|
|
5266
|
+
node = findFirstMatchingNode(this.typeCheckBlock, { withSpan, filter: ts26.isPropertyAccessExpression });
|
|
5478
5267
|
}
|
|
5479
5268
|
if (node === null) {
|
|
5480
5269
|
node = findFirstMatchingNode(this.typeCheckBlock, { withSpan, filter: anyNodeFilter });
|
|
@@ -5482,10 +5271,10 @@ var SymbolBuilder = class {
|
|
|
5482
5271
|
if (node === null) {
|
|
5483
5272
|
return null;
|
|
5484
5273
|
}
|
|
5485
|
-
while (
|
|
5274
|
+
while (ts26.isParenthesizedExpression(node)) {
|
|
5486
5275
|
node = node.expression;
|
|
5487
5276
|
}
|
|
5488
|
-
if (expression instanceof SafePropertyRead4 &&
|
|
5277
|
+
if (expression instanceof SafePropertyRead4 && ts26.isConditionalExpression(node)) {
|
|
5489
5278
|
const whenTrueSymbol = this.getSymbolOfTsNode(node.whenTrue);
|
|
5490
5279
|
if (whenTrueSymbol === null) {
|
|
5491
5280
|
return null;
|
|
@@ -5502,13 +5291,13 @@ var SymbolBuilder = class {
|
|
|
5502
5291
|
}
|
|
5503
5292
|
getSymbolOfTsNode(node) {
|
|
5504
5293
|
var _a;
|
|
5505
|
-
while (
|
|
5294
|
+
while (ts26.isParenthesizedExpression(node)) {
|
|
5506
5295
|
node = node.expression;
|
|
5507
5296
|
}
|
|
5508
5297
|
let tsSymbol;
|
|
5509
|
-
if (
|
|
5298
|
+
if (ts26.isPropertyAccessExpression(node)) {
|
|
5510
5299
|
tsSymbol = this.getTypeChecker().getSymbolAtLocation(node.name);
|
|
5511
|
-
} else if (
|
|
5300
|
+
} else if (ts26.isElementAccessExpression(node)) {
|
|
5512
5301
|
tsSymbol = this.getTypeChecker().getSymbolAtLocation(node.argumentExpression);
|
|
5513
5302
|
} else {
|
|
5514
5303
|
tsSymbol = this.getTypeChecker().getSymbolAtLocation(node);
|
|
@@ -5526,13 +5315,13 @@ var SymbolBuilder = class {
|
|
|
5526
5315
|
};
|
|
5527
5316
|
}
|
|
5528
5317
|
getTcbPositionForNode(node) {
|
|
5529
|
-
if (
|
|
5318
|
+
if (ts26.isTypeReferenceNode(node)) {
|
|
5530
5319
|
return this.getTcbPositionForNode(node.typeName);
|
|
5531
|
-
} else if (
|
|
5320
|
+
} else if (ts26.isQualifiedName(node)) {
|
|
5532
5321
|
return node.right.getStart();
|
|
5533
|
-
} else if (
|
|
5322
|
+
} else if (ts26.isPropertyAccessExpression(node)) {
|
|
5534
5323
|
return node.name.getStart();
|
|
5535
|
-
} else if (
|
|
5324
|
+
} else if (ts26.isElementAccessExpression(node)) {
|
|
5536
5325
|
return node.argumentExpression.getStart();
|
|
5537
5326
|
} else {
|
|
5538
5327
|
return node.getStart();
|
|
@@ -6425,7 +6214,7 @@ var factory3 = {
|
|
|
6425
6214
|
|
|
6426
6215
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/nullish_coalescing_not_nullable/index.mjs
|
|
6427
6216
|
import { Binary } from "@angular/compiler";
|
|
6428
|
-
import
|
|
6217
|
+
import ts27 from "typescript";
|
|
6429
6218
|
var NullishCoalescingNotNullableCheck = class extends TemplateCheckWithVisitor {
|
|
6430
6219
|
constructor() {
|
|
6431
6220
|
super(...arguments);
|
|
@@ -6439,7 +6228,7 @@ var NullishCoalescingNotNullableCheck = class extends TemplateCheckWithVisitor {
|
|
|
6439
6228
|
return [];
|
|
6440
6229
|
}
|
|
6441
6230
|
const typeLeft = symbolLeft.tsType;
|
|
6442
|
-
if (typeLeft.flags & (
|
|
6231
|
+
if (typeLeft.flags & (ts27.TypeFlags.Any | ts27.TypeFlags.Unknown)) {
|
|
6443
6232
|
return [];
|
|
6444
6233
|
}
|
|
6445
6234
|
if (typeLeft.getNonNullableType() !== typeLeft)
|
|
@@ -6470,7 +6259,7 @@ var factory4 = {
|
|
|
6470
6259
|
|
|
6471
6260
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/optional_chain_not_nullable/index.mjs
|
|
6472
6261
|
import { SafeCall as SafeCall2, SafeKeyedRead as SafeKeyedRead2, SafePropertyRead as SafePropertyRead5 } from "@angular/compiler";
|
|
6473
|
-
import
|
|
6262
|
+
import ts28 from "typescript";
|
|
6474
6263
|
var OptionalChainNotNullableCheck = class extends TemplateCheckWithVisitor {
|
|
6475
6264
|
constructor() {
|
|
6476
6265
|
super(...arguments);
|
|
@@ -6484,7 +6273,7 @@ var OptionalChainNotNullableCheck = class extends TemplateCheckWithVisitor {
|
|
|
6484
6273
|
return [];
|
|
6485
6274
|
}
|
|
6486
6275
|
const typeLeft = symbolLeft.tsType;
|
|
6487
|
-
if (typeLeft.flags & (
|
|
6276
|
+
if (typeLeft.flags & (ts28.TypeFlags.Any | ts28.TypeFlags.Unknown)) {
|
|
6488
6277
|
return [];
|
|
6489
6278
|
}
|
|
6490
6279
|
if (typeLeft.getNonNullableType() !== typeLeft)
|
|
@@ -6578,7 +6367,7 @@ var factory7 = {
|
|
|
6578
6367
|
};
|
|
6579
6368
|
|
|
6580
6369
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/src/extended_template_checker.mjs
|
|
6581
|
-
import
|
|
6370
|
+
import ts29 from "typescript";
|
|
6582
6371
|
|
|
6583
6372
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/api/src/public_options.mjs
|
|
6584
6373
|
var DiagnosticCategoryLabel;
|
|
@@ -6627,9 +6416,9 @@ var ExtendedTemplateCheckerImpl = class {
|
|
|
6627
6416
|
function diagnosticLabelToCategory(label) {
|
|
6628
6417
|
switch (label) {
|
|
6629
6418
|
case DiagnosticCategoryLabel.Warning:
|
|
6630
|
-
return
|
|
6419
|
+
return ts29.DiagnosticCategory.Warning;
|
|
6631
6420
|
case DiagnosticCategoryLabel.Error:
|
|
6632
|
-
return
|
|
6421
|
+
return ts29.DiagnosticCategory.Error;
|
|
6633
6422
|
case DiagnosticCategoryLabel.Suppress:
|
|
6634
6423
|
return null;
|
|
6635
6424
|
default:
|
|
@@ -6742,7 +6531,7 @@ var NgCompiler = class {
|
|
|
6742
6531
|
this.currentProgram = inputProgram;
|
|
6743
6532
|
this.closureCompilerEnabled = !!this.options.annotateForClosureCompiler;
|
|
6744
6533
|
this.entryPoint = adapter.entryPoint !== null ? getSourceFileOrNull(inputProgram, adapter.entryPoint) : null;
|
|
6745
|
-
const moduleResolutionCache =
|
|
6534
|
+
const moduleResolutionCache = ts30.createModuleResolutionCache(
|
|
6746
6535
|
this.adapter.getCurrentDirectory(),
|
|
6747
6536
|
this.adapter.getCanonicalFileName.bind(this.adapter)
|
|
6748
6537
|
);
|
|
@@ -6789,7 +6578,7 @@ var NgCompiler = class {
|
|
|
6789
6578
|
}
|
|
6790
6579
|
for (const clazz of classesToUpdate) {
|
|
6791
6580
|
this.compilation.traitCompiler.updateResources(clazz);
|
|
6792
|
-
if (!
|
|
6581
|
+
if (!ts30.isClassDeclaration(clazz)) {
|
|
6793
6582
|
continue;
|
|
6794
6583
|
}
|
|
6795
6584
|
this.compilation.templateTypeChecker.invalidateClass(clazz);
|
|
@@ -6926,9 +6715,6 @@ var NgCompiler = class {
|
|
|
6926
6715
|
if (compilation.aliasingHost !== null && compilation.aliasingHost.aliasExportsInDts) {
|
|
6927
6716
|
afterDeclarations.push(aliasTransformFactory(compilation.traitCompiler.exportStatements));
|
|
6928
6717
|
}
|
|
6929
|
-
if (this.adapter.factoryTracker !== null) {
|
|
6930
|
-
before.push(generatedFactoryTransform(this.adapter.factoryTracker.sourceInfo, importRewriter));
|
|
6931
|
-
}
|
|
6932
6718
|
return { transformers: { before, afterDeclarations } };
|
|
6933
6719
|
}
|
|
6934
6720
|
getIndexedComponents() {
|
|
@@ -7171,7 +6957,7 @@ var NgCompiler = class {
|
|
|
7171
6957
|
new DirectiveDecoratorHandler(reflector, evaluator, metaRegistry, ngModuleScopeRegistry, metaReader, injectableRegistry, refEmitter, isCore, strictCtorDeps, semanticDepGraphUpdater, this.closureCompilerEnabled, false, this.delegatingPerfRecorder),
|
|
7172
6958
|
new PipeDecoratorHandler(reflector, evaluator, metaRegistry, ngModuleScopeRegistry, injectableRegistry, isCore, this.delegatingPerfRecorder),
|
|
7173
6959
|
new InjectableDecoratorHandler(reflector, evaluator, isCore, strictCtorDeps, injectableRegistry, this.delegatingPerfRecorder),
|
|
7174
|
-
new NgModuleDecoratorHandler(reflector, evaluator, metaReader, metaRegistry, ngModuleScopeRegistry, referencesRegistry, isCore, refEmitter, this.
|
|
6960
|
+
new NgModuleDecoratorHandler(reflector, evaluator, metaReader, metaRegistry, ngModuleScopeRegistry, referencesRegistry, isCore, refEmitter, this.closureCompilerEnabled, (_a = this.options.onlyPublishPublicTypingsForNgModules) != null ? _a : false, injectableRegistry, this.delegatingPerfRecorder)
|
|
7175
6961
|
];
|
|
7176
6962
|
const traitCompiler = new TraitCompiler(handlers, reflector, this.delegatingPerfRecorder, this.incrementalCompilation, this.options.compileNonExportedClasses !== false, compilationMode, dtsTransforms, semanticDepGraphUpdater, this.adapter);
|
|
7177
6963
|
const notifyingDriver = new NotifyingProgramDriverWrapper(this.programDriver, (program) => {
|
|
@@ -7203,18 +6989,18 @@ function isAngularCorePackage(program) {
|
|
|
7203
6989
|
return false;
|
|
7204
6990
|
}
|
|
7205
6991
|
return r3Symbols.statements.some((stmt) => {
|
|
7206
|
-
if (!
|
|
6992
|
+
if (!ts30.isVariableStatement(stmt)) {
|
|
7207
6993
|
return false;
|
|
7208
6994
|
}
|
|
7209
|
-
const modifiers =
|
|
7210
|
-
if (modifiers === void 0 || !modifiers.some((mod) => mod.kind ===
|
|
6995
|
+
const modifiers = ts30.getModifiers(stmt);
|
|
6996
|
+
if (modifiers === void 0 || !modifiers.some((mod) => mod.kind === ts30.SyntaxKind.ExportKeyword)) {
|
|
7211
6997
|
return false;
|
|
7212
6998
|
}
|
|
7213
6999
|
return stmt.declarationList.declarations.some((decl) => {
|
|
7214
|
-
if (!
|
|
7000
|
+
if (!ts30.isIdentifier(decl.name) || decl.name.text !== "ITS_JUST_ANGULAR") {
|
|
7215
7001
|
return false;
|
|
7216
7002
|
}
|
|
7217
|
-
if (decl.initializer === void 0 || decl.initializer.kind !==
|
|
7003
|
+
if (decl.initializer === void 0 || decl.initializer.kind !== ts30.SyntaxKind.TrueKeyword) {
|
|
7218
7004
|
return false;
|
|
7219
7005
|
}
|
|
7220
7006
|
return true;
|
|
@@ -7228,7 +7014,7 @@ function* verifyCompatibleTypeCheckOptions(options) {
|
|
|
7228
7014
|
var _a, _b, _c;
|
|
7229
7015
|
if (options.fullTemplateTypeCheck === false && options.strictTemplates === true) {
|
|
7230
7016
|
yield makeConfigDiagnostic({
|
|
7231
|
-
category:
|
|
7017
|
+
category: ts30.DiagnosticCategory.Error,
|
|
7232
7018
|
code: ErrorCode.CONFIG_STRICT_TEMPLATES_IMPLIES_FULL_TEMPLATE_TYPECHECK,
|
|
7233
7019
|
messageText: `
|
|
7234
7020
|
Angular compiler option "strictTemplates" is enabled, however "fullTemplateTypeCheck" is disabled.
|
|
@@ -7247,7 +7033,7 @@ https://angular.io/guide/template-typecheck
|
|
|
7247
7033
|
}
|
|
7248
7034
|
if (options.extendedDiagnostics && options.strictTemplates === false) {
|
|
7249
7035
|
yield makeConfigDiagnostic({
|
|
7250
|
-
category:
|
|
7036
|
+
category: ts30.DiagnosticCategory.Error,
|
|
7251
7037
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_IMPLIES_STRICT_TEMPLATES,
|
|
7252
7038
|
messageText: `
|
|
7253
7039
|
Angular compiler option "extendedDiagnostics" is configured, however "strictTemplates" is disabled.
|
|
@@ -7264,7 +7050,7 @@ One of the following actions is required:
|
|
|
7264
7050
|
const defaultCategory = (_a = options.extendedDiagnostics) == null ? void 0 : _a.defaultCategory;
|
|
7265
7051
|
if (defaultCategory && !allowedCategoryLabels.includes(defaultCategory)) {
|
|
7266
7052
|
yield makeConfigDiagnostic({
|
|
7267
|
-
category:
|
|
7053
|
+
category: ts30.DiagnosticCategory.Error,
|
|
7268
7054
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_UNKNOWN_CATEGORY_LABEL,
|
|
7269
7055
|
messageText: `
|
|
7270
7056
|
Angular compiler option "extendedDiagnostics.defaultCategory" has an unknown diagnostic category: "${defaultCategory}".
|
|
@@ -7278,7 +7064,7 @@ ${allowedCategoryLabels.join("\n")}
|
|
|
7278
7064
|
for (const [checkName, category] of Object.entries((_c = (_b = options.extendedDiagnostics) == null ? void 0 : _b.checks) != null ? _c : {})) {
|
|
7279
7065
|
if (!allExtendedDiagnosticNames.includes(checkName)) {
|
|
7280
7066
|
yield makeConfigDiagnostic({
|
|
7281
|
-
category:
|
|
7067
|
+
category: ts30.DiagnosticCategory.Error,
|
|
7282
7068
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_UNKNOWN_CHECK,
|
|
7283
7069
|
messageText: `
|
|
7284
7070
|
Angular compiler option "extendedDiagnostics.checks" has an unknown check: "${checkName}".
|
|
@@ -7290,7 +7076,7 @@ ${allExtendedDiagnosticNames.join("\n")}
|
|
|
7290
7076
|
}
|
|
7291
7077
|
if (!allowedCategoryLabels.includes(category)) {
|
|
7292
7078
|
yield makeConfigDiagnostic({
|
|
7293
|
-
category:
|
|
7079
|
+
category: ts30.DiagnosticCategory.Error,
|
|
7294
7080
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_UNKNOWN_CATEGORY_LABEL,
|
|
7295
7081
|
messageText: `
|
|
7296
7082
|
Angular compiler option "extendedDiagnostics.checks['${checkName}']" has an unknown diagnostic category: "${category}".
|
|
@@ -7320,7 +7106,7 @@ var ReferenceGraphAdapter = class {
|
|
|
7320
7106
|
for (const { node } of references) {
|
|
7321
7107
|
let sourceFile = node.getSourceFile();
|
|
7322
7108
|
if (sourceFile === void 0) {
|
|
7323
|
-
sourceFile =
|
|
7109
|
+
sourceFile = ts30.getOriginalNode(node).getSourceFile();
|
|
7324
7110
|
}
|
|
7325
7111
|
if (sourceFile === void 0 || !isDtsPath(sourceFile.fileName)) {
|
|
7326
7112
|
this.graph.add(source, node);
|
|
@@ -7359,7 +7145,7 @@ function versionMapFromProgram(program, driver) {
|
|
|
7359
7145
|
}
|
|
7360
7146
|
|
|
7361
7147
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/host.mjs
|
|
7362
|
-
import
|
|
7148
|
+
import ts31 from "typescript";
|
|
7363
7149
|
var DelegatingCompilerHost2 = class {
|
|
7364
7150
|
constructor(delegate) {
|
|
7365
7151
|
this.delegate = delegate;
|
|
@@ -7396,13 +7182,11 @@ var DelegatingCompilerHost2 = class {
|
|
|
7396
7182
|
}
|
|
7397
7183
|
};
|
|
7398
7184
|
var NgCompilerHost = class extends DelegatingCompilerHost2 {
|
|
7399
|
-
constructor(delegate, inputFiles, rootDirs, shimAdapter, shimTagger, entryPoint,
|
|
7185
|
+
constructor(delegate, inputFiles, rootDirs, shimAdapter, shimTagger, entryPoint, diagnostics) {
|
|
7400
7186
|
super(delegate);
|
|
7401
7187
|
this.shimAdapter = shimAdapter;
|
|
7402
7188
|
this.shimTagger = shimTagger;
|
|
7403
|
-
this.factoryTracker = null;
|
|
7404
7189
|
this.entryPoint = null;
|
|
7405
|
-
this.factoryTracker = factoryTracker;
|
|
7406
7190
|
this.entryPoint = entryPoint;
|
|
7407
7191
|
this.constructionDiagnostics = diagnostics;
|
|
7408
7192
|
this.inputFiles = [...inputFiles, ...shimAdapter.extraInputFiles];
|
|
@@ -7421,20 +7205,8 @@ var NgCompilerHost = class extends DelegatingCompilerHost2 {
|
|
|
7421
7205
|
this.shimTagger.finalize();
|
|
7422
7206
|
}
|
|
7423
7207
|
static wrap(delegate, inputFiles, options, oldProgram) {
|
|
7424
|
-
const allowEmptyCodegenFiles = options.allowEmptyCodegenFiles || false;
|
|
7425
|
-
const shouldGenerateFactoryShims = options.generateNgFactoryShims !== void 0 ? options.generateNgFactoryShims : allowEmptyCodegenFiles;
|
|
7426
|
-
const shouldGenerateSummaryShims = options.generateNgSummaryShims !== void 0 ? options.generateNgSummaryShims : allowEmptyCodegenFiles;
|
|
7427
7208
|
const topLevelShimGenerators = [];
|
|
7428
7209
|
const perFileShimGenerators = [];
|
|
7429
|
-
if (shouldGenerateSummaryShims) {
|
|
7430
|
-
perFileShimGenerators.push(new SummaryGenerator());
|
|
7431
|
-
}
|
|
7432
|
-
let factoryTracker = null;
|
|
7433
|
-
if (shouldGenerateFactoryShims) {
|
|
7434
|
-
const factoryGenerator = new FactoryGenerator();
|
|
7435
|
-
perFileShimGenerators.push(factoryGenerator);
|
|
7436
|
-
factoryTracker = factoryGenerator;
|
|
7437
|
-
}
|
|
7438
7210
|
const rootDirs = getRootDirs(delegate, options);
|
|
7439
7211
|
perFileShimGenerators.push(new TypeCheckShimGenerator());
|
|
7440
7212
|
let diagnostics = [];
|
|
@@ -7450,7 +7222,7 @@ var NgCompilerHost = class extends DelegatingCompilerHost2 {
|
|
|
7450
7222
|
entryPoint = findFlatIndexEntryPoint(normalizedTsInputFiles);
|
|
7451
7223
|
if (entryPoint === null) {
|
|
7452
7224
|
diagnostics.push({
|
|
7453
|
-
category:
|
|
7225
|
+
category: ts31.DiagnosticCategory.Error,
|
|
7454
7226
|
code: ngErrorCode(ErrorCode.CONFIG_FLAT_MODULE_NO_INDEX),
|
|
7455
7227
|
file: void 0,
|
|
7456
7228
|
start: void 0,
|
|
@@ -7466,7 +7238,7 @@ var NgCompilerHost = class extends DelegatingCompilerHost2 {
|
|
|
7466
7238
|
}
|
|
7467
7239
|
const shimAdapter = new ShimAdapter(delegate, normalizedTsInputFiles, topLevelShimGenerators, perFileShimGenerators, oldProgram);
|
|
7468
7240
|
const shimTagger = new ShimReferenceTagger(perFileShimGenerators.map((gen) => gen.extensionPrefix));
|
|
7469
|
-
return new NgCompilerHost(delegate, inputFiles, rootDirs, shimAdapter, shimTagger, entryPoint,
|
|
7241
|
+
return new NgCompilerHost(delegate, inputFiles, rootDirs, shimAdapter, shimTagger, entryPoint, diagnostics);
|
|
7470
7242
|
}
|
|
7471
7243
|
isShim(sf) {
|
|
7472
7244
|
return isShim(sf);
|
|
@@ -7493,10 +7265,10 @@ var NgCompilerHost = class extends DelegatingCompilerHost2 {
|
|
|
7493
7265
|
return this.fileNameToModuleName !== void 0 ? this : null;
|
|
7494
7266
|
}
|
|
7495
7267
|
createCachedResolveModuleNamesFunction() {
|
|
7496
|
-
const moduleResolutionCache =
|
|
7268
|
+
const moduleResolutionCache = ts31.createModuleResolutionCache(this.getCurrentDirectory(), this.getCanonicalFileName.bind(this));
|
|
7497
7269
|
return (moduleNames, containingFile, reusedNames, redirectedReference, options) => {
|
|
7498
7270
|
return moduleNames.map((moduleName) => {
|
|
7499
|
-
const module =
|
|
7271
|
+
const module = ts31.resolveModuleName(moduleName, containingFile, options, this, moduleResolutionCache, redirectedReference);
|
|
7500
7272
|
return module.resolvedModule;
|
|
7501
7273
|
});
|
|
7502
7274
|
};
|
|
@@ -7517,7 +7289,7 @@ var NgtscProgram = class {
|
|
|
7517
7289
|
if (reuseProgram !== void 0) {
|
|
7518
7290
|
retagAllTsFiles(reuseProgram);
|
|
7519
7291
|
}
|
|
7520
|
-
this.tsProgram = perfRecorder.inPhase(PerfPhase.TypeScriptProgramCreate, () =>
|
|
7292
|
+
this.tsProgram = perfRecorder.inPhase(PerfPhase.TypeScriptProgramCreate, () => ts32.createProgram(this.host.inputFiles, options, this.host, reuseProgram));
|
|
7521
7293
|
perfRecorder.phase(PerfPhase.Unaccounted);
|
|
7522
7294
|
perfRecorder.memory(PerfCheckpoint.TypeScriptProgramCreate);
|
|
7523
7295
|
this.host.postProgramCreationCleanup();
|
|
@@ -7727,16 +7499,16 @@ function createProgram({ rootNames, options, host, oldProgram }) {
|
|
|
7727
7499
|
}
|
|
7728
7500
|
|
|
7729
7501
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/perform_compile.mjs
|
|
7730
|
-
import
|
|
7502
|
+
import ts34 from "typescript";
|
|
7731
7503
|
|
|
7732
7504
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/transformers/util.mjs
|
|
7733
|
-
import
|
|
7505
|
+
import ts33 from "typescript";
|
|
7734
7506
|
function createMessageDiagnostic(messageText) {
|
|
7735
7507
|
return {
|
|
7736
7508
|
file: void 0,
|
|
7737
7509
|
start: void 0,
|
|
7738
7510
|
length: void 0,
|
|
7739
|
-
category:
|
|
7511
|
+
category: ts33.DiagnosticCategory.Message,
|
|
7740
7512
|
messageText,
|
|
7741
7513
|
code: DEFAULT_ERROR_CODE,
|
|
7742
7514
|
source: SOURCE
|
|
@@ -7745,13 +7517,13 @@ function createMessageDiagnostic(messageText) {
|
|
|
7745
7517
|
|
|
7746
7518
|
// bazel-out/darwin_arm64-fastbuild/bin/packages/compiler-cli/src/perform_compile.mjs
|
|
7747
7519
|
var defaultFormatHost = {
|
|
7748
|
-
getCurrentDirectory: () =>
|
|
7520
|
+
getCurrentDirectory: () => ts34.sys.getCurrentDirectory(),
|
|
7749
7521
|
getCanonicalFileName: (fileName) => fileName,
|
|
7750
|
-
getNewLine: () =>
|
|
7522
|
+
getNewLine: () => ts34.sys.newLine
|
|
7751
7523
|
};
|
|
7752
7524
|
function formatDiagnostics(diags, host = defaultFormatHost) {
|
|
7753
7525
|
if (diags && diags.length) {
|
|
7754
|
-
return diags.map((diagnostic) => replaceTsWithNgInErrors(
|
|
7526
|
+
return diags.map((diagnostic) => replaceTsWithNgInErrors(ts34.formatDiagnosticsWithColorAndContext([diagnostic], host))).join("");
|
|
7755
7527
|
} else {
|
|
7756
7528
|
return "";
|
|
7757
7529
|
}
|
|
@@ -7768,7 +7540,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7768
7540
|
var _a;
|
|
7769
7541
|
try {
|
|
7770
7542
|
const fs = getFileSystem();
|
|
7771
|
-
const readConfigFile = (configFile) =>
|
|
7543
|
+
const readConfigFile = (configFile) => ts34.readConfigFile(configFile, (file) => host.readFile(host.resolve(file)));
|
|
7772
7544
|
const readAngularCompilerOptions = (configFile, parentOptions = {}) => {
|
|
7773
7545
|
const { config: config2, error: error2 } = readConfigFile(configFile);
|
|
7774
7546
|
if (error2) {
|
|
@@ -7802,7 +7574,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7802
7574
|
...existingOptions
|
|
7803
7575
|
};
|
|
7804
7576
|
const parseConfigHost = createParseConfigHost(host, fs);
|
|
7805
|
-
const { options, errors, fileNames: rootNames, projectReferences } =
|
|
7577
|
+
const { options, errors, fileNames: rootNames, projectReferences } = ts34.parseJsonConfigFileContent(config, parseConfigHost, basePath, existingCompilerOptions, configFileName);
|
|
7806
7578
|
let emitFlags = EmitFlags.Default;
|
|
7807
7579
|
if (!(options.skipMetadataEmit || options.flatModuleOutFile)) {
|
|
7808
7580
|
emitFlags |= EmitFlags.Metadata;
|
|
@@ -7813,7 +7585,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7813
7585
|
return { project: projectFile, rootNames, projectReferences, options, errors, emitFlags };
|
|
7814
7586
|
} catch (e) {
|
|
7815
7587
|
const errors = [{
|
|
7816
|
-
category:
|
|
7588
|
+
category: ts34.DiagnosticCategory.Error,
|
|
7817
7589
|
messageText: (_a = e.stack) != null ? _a : e.message,
|
|
7818
7590
|
file: void 0,
|
|
7819
7591
|
start: void 0,
|
|
@@ -7827,7 +7599,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7827
7599
|
function createParseConfigHost(host, fs = getFileSystem()) {
|
|
7828
7600
|
return {
|
|
7829
7601
|
fileExists: host.exists.bind(host),
|
|
7830
|
-
readDirectory:
|
|
7602
|
+
readDirectory: ts34.sys.readDirectory,
|
|
7831
7603
|
readFile: host.readFile.bind(host),
|
|
7832
7604
|
useCaseSensitiveFileNames: fs.isCaseSensitive()
|
|
7833
7605
|
};
|
|
@@ -7847,7 +7619,7 @@ function getExtendedConfigPathWorker(configFile, extendsValue, host, fs) {
|
|
|
7847
7619
|
}
|
|
7848
7620
|
} else {
|
|
7849
7621
|
const parseConfigHost = createParseConfigHost(host, fs);
|
|
7850
|
-
const { resolvedModule } =
|
|
7622
|
+
const { resolvedModule } = ts34.nodeModuleNameResolver(extendsValue, configFile, { moduleResolution: ts34.ModuleResolutionKind.NodeJs, resolveJsonModule: true }, parseConfigHost);
|
|
7851
7623
|
if (resolvedModule) {
|
|
7852
7624
|
return absoluteFrom(resolvedModule.resolvedFileName);
|
|
7853
7625
|
}
|
|
@@ -7857,7 +7629,7 @@ function getExtendedConfigPathWorker(configFile, extendsValue, host, fs) {
|
|
|
7857
7629
|
function exitCodeFromResult(diags) {
|
|
7858
7630
|
if (!diags)
|
|
7859
7631
|
return 0;
|
|
7860
|
-
if (diags.every((diag) => diag.category !==
|
|
7632
|
+
if (diags.every((diag) => diag.category !== ts34.DiagnosticCategory.Error)) {
|
|
7861
7633
|
return 0;
|
|
7862
7634
|
}
|
|
7863
7635
|
return diags.some((d) => d.source === "angular" && d.code === UNKNOWN_ERROR_CODE) ? 2 : 1;
|
|
@@ -7890,7 +7662,7 @@ function performCompilation({ rootNames, options, host, oldProgram, emitCallback
|
|
|
7890
7662
|
} catch (e) {
|
|
7891
7663
|
program = void 0;
|
|
7892
7664
|
allDiagnostics.push({
|
|
7893
|
-
category:
|
|
7665
|
+
category: ts34.DiagnosticCategory.Error,
|
|
7894
7666
|
messageText: (_a = e.stack) != null ? _a : e.message,
|
|
7895
7667
|
code: UNKNOWN_ERROR_CODE,
|
|
7896
7668
|
file: void 0,
|
|
@@ -7917,7 +7689,7 @@ function defaultGatherDiagnostics(program) {
|
|
|
7917
7689
|
return allDiagnostics;
|
|
7918
7690
|
}
|
|
7919
7691
|
function hasErrors(diags) {
|
|
7920
|
-
return diags.some((d) => d.category ===
|
|
7692
|
+
return diags.some((d) => d.category === ts34.DiagnosticCategory.Error);
|
|
7921
7693
|
}
|
|
7922
7694
|
|
|
7923
7695
|
export {
|
|
@@ -7927,9 +7699,6 @@ export {
|
|
|
7927
7699
|
isTsDiagnostic,
|
|
7928
7700
|
EmitFlags,
|
|
7929
7701
|
createCompilerHost,
|
|
7930
|
-
CycleAnalyzer,
|
|
7931
|
-
ImportGraph,
|
|
7932
|
-
isShim,
|
|
7933
7702
|
untagAllTsFiles,
|
|
7934
7703
|
TsCreateProgramDriver,
|
|
7935
7704
|
PatchedProgramIncrementalBuildStrategy,
|
|
@@ -7954,5 +7723,4 @@ export {
|
|
|
7954
7723
|
* Use of this source code is governed by an MIT-style license that can be
|
|
7955
7724
|
* found in the LICENSE file at https://angular.io/license
|
|
7956
7725
|
*/
|
|
7957
|
-
|
|
7958
|
-
//# sourceMappingURL=chunk-2OF2AI57.js.map
|
|
7726
|
+
//# sourceMappingURL=chunk-IS6KZYEA.js.map
|