@angular/compiler-cli 13.1.2 → 13.1.3
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-O4XVCXRT.js → chunk-7UHLQOIO.js} +4 -4
- package/bundles/{chunk-O4XVCXRT.js.map → chunk-7UHLQOIO.js.map} +0 -0
- package/bundles/{chunk-QDWL7SZJ.js → chunk-BPCUCINV.js} +2 -2
- package/bundles/{chunk-QDWL7SZJ.js.map → chunk-BPCUCINV.js.map} +0 -0
- package/bundles/{chunk-TUNE6DP3.js → chunk-CKZCKW5B.js} +437 -831
- package/bundles/chunk-CKZCKW5B.js.map +6 -0
- package/bundles/{chunk-GLCRIILX.js → chunk-J6CW3T62.js} +5 -5
- package/bundles/{chunk-GLCRIILX.js.map → chunk-J6CW3T62.js.map} +0 -0
- package/bundles/{chunk-SKBLJA43.js → chunk-JTYUTYS2.js} +3 -3
- package/bundles/{chunk-SKBLJA43.js.map → chunk-JTYUTYS2.js.map} +0 -0
- package/bundles/{chunk-6VRWTEQB.js → chunk-K5FPDA5B.js} +40 -40
- package/bundles/{chunk-6VRWTEQB.js.map → chunk-K5FPDA5B.js.map} +0 -0
- package/bundles/{chunk-UESD6FVI.js → chunk-KU4D2JVX.js} +31 -31
- package/bundles/{chunk-UESD6FVI.js.map → chunk-KU4D2JVX.js.map} +0 -0
- package/bundles/{chunk-JOLPJ2E4.js → chunk-KXVQ4SSM.js} +5 -5
- package/bundles/{chunk-JOLPJ2E4.js.map → chunk-KXVQ4SSM.js.map} +0 -0
- package/bundles/{chunk-FUZ3CSDO.js → chunk-L23I4NJT.js} +577 -163
- package/bundles/chunk-L23I4NJT.js.map +6 -0
- package/bundles/{chunk-ADHVDA4A.js → chunk-RDTZZXLZ.js} +7 -7
- package/bundles/{chunk-ADHVDA4A.js.map → chunk-RDTZZXLZ.js.map} +0 -0
- package/bundles/{chunk-676MI6WZ.js → chunk-RGGJJ7ZZ.js} +7 -7
- package/bundles/{chunk-676MI6WZ.js.map → chunk-RGGJJ7ZZ.js.map} +0 -0
- package/bundles/{chunk-A5PL3TE6.js → chunk-RNVIUKDY.js} +6 -6
- package/bundles/{chunk-A5PL3TE6.js.map → chunk-RNVIUKDY.js.map} +0 -0
- package/bundles/{chunk-QBU7RUKB.js → chunk-VUEDWBJP.js} +26 -26
- package/bundles/{chunk-QBU7RUKB.js.map → chunk-VUEDWBJP.js.map} +0 -0
- package/bundles/{chunk-7PY7XEFH.js → chunk-XXMNTCYN.js} +6 -6
- package/bundles/{chunk-7PY7XEFH.js.map → chunk-XXMNTCYN.js.map} +0 -0
- package/bundles/{chunk-5TY44ZS3.js → chunk-ZLL7BXGD.js} +194 -147
- package/bundles/{chunk-5TY44ZS3.js.map → chunk-ZLL7BXGD.js.map} +2 -2
- package/bundles/index.js +14 -13
- package/bundles/index.js.map +1 -1
- package/bundles/linker/babel/index.js +12 -12
- package/bundles/linker/index.js +4 -4
- package/bundles/ngcc/index.js +12 -12
- package/bundles/ngcc/main-ngcc.js +13 -13
- package/bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js +13 -13
- package/bundles/ngcc/src/locking/lock_file_with_child_process/ngcc_lock_unlocker.js +4 -4
- package/bundles/private/bazel.js +1 -1
- package/bundles/private/localize.js +3 -3
- package/bundles/private/migrations.js +5 -5
- package/bundles/private/tooling.js +2 -2
- package/bundles/src/bin/ng_xi18n.js +10 -10
- package/bundles/src/bin/ngc.js +8 -8
- package/bundles_metadata.json +1 -1
- package/ngcc/src/packages/adjust_cjs_umd_exports.d.ts +17 -0
- package/ngcc/src/packages/build_marker.d.ts +1 -1
- package/ngcc/src/packages/source_file_cache.d.ts +2 -1
- package/package.json +2 -2
- package/bundles/chunk-FUZ3CSDO.js.map +0 -6
- package/bundles/chunk-TUNE6DP3.js.map +0 -6
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
DirectiveDecoratorHandler,
|
|
12
12
|
DtsMetadataReader,
|
|
13
13
|
DtsTransformRegistry,
|
|
14
|
+
FactoryGenerator,
|
|
14
15
|
InjectableClassRegistry,
|
|
15
16
|
InjectableDecoratorHandler,
|
|
16
17
|
LocalMetadataRegistry,
|
|
@@ -20,16 +21,24 @@ import {
|
|
|
20
21
|
PipeDecoratorHandler,
|
|
21
22
|
ResourceRegistry,
|
|
22
23
|
SemanticDepGraphUpdater,
|
|
24
|
+
ShimAdapter,
|
|
25
|
+
ShimReferenceTagger,
|
|
26
|
+
SummaryGenerator,
|
|
23
27
|
TraitCompiler,
|
|
24
28
|
aliasTransformFactory,
|
|
29
|
+
copyFileShimData,
|
|
25
30
|
declarationTransformFactory,
|
|
26
31
|
flattenInheritedDirectiveMetadata,
|
|
27
|
-
|
|
28
|
-
|
|
32
|
+
generatedFactoryTransform,
|
|
33
|
+
isShim,
|
|
34
|
+
ivyTransformFactory,
|
|
35
|
+
retagAllTsFiles,
|
|
36
|
+
untagAllTsFiles
|
|
37
|
+
} from "./chunk-L23I4NJT.js";
|
|
29
38
|
import {
|
|
30
39
|
TypeScriptReflectionHost,
|
|
31
40
|
isNamedClassDeclaration
|
|
32
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-XXMNTCYN.js";
|
|
33
42
|
import {
|
|
34
43
|
AbsoluteModuleStrategy,
|
|
35
44
|
AliasStrategy,
|
|
@@ -70,31 +79,30 @@ import {
|
|
|
70
79
|
toUnredirectedSourceFile,
|
|
71
80
|
translateExpression,
|
|
72
81
|
translateType
|
|
73
|
-
} from "./chunk-
|
|
82
|
+
} from "./chunk-VUEDWBJP.js";
|
|
74
83
|
import {
|
|
75
84
|
LogicalFileSystem,
|
|
76
85
|
absoluteFrom,
|
|
77
86
|
absoluteFromSourceFile,
|
|
78
|
-
basename,
|
|
79
87
|
dirname,
|
|
80
88
|
getFileSystem,
|
|
81
89
|
getSourceFileOrError,
|
|
82
90
|
join,
|
|
83
91
|
resolve
|
|
84
|
-
} from "./chunk-
|
|
92
|
+
} from "./chunk-RGGJJ7ZZ.js";
|
|
85
93
|
import {
|
|
86
94
|
ActivePerfRecorder,
|
|
87
95
|
DelegatingPerfRecorder,
|
|
88
96
|
PerfCheckpoint,
|
|
89
97
|
PerfEvent,
|
|
90
98
|
PerfPhase
|
|
91
|
-
} from "./chunk-
|
|
99
|
+
} from "./chunk-J6CW3T62.js";
|
|
92
100
|
import {
|
|
93
101
|
__spreadProps,
|
|
94
102
|
__spreadValues
|
|
95
103
|
} from "./chunk-WQ3TNYTD.js";
|
|
96
104
|
|
|
97
|
-
// bazel-out/
|
|
105
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/transformers/api.mjs
|
|
98
106
|
var DEFAULT_ERROR_CODE = 100;
|
|
99
107
|
var UNKNOWN_ERROR_CODE = 500;
|
|
100
108
|
var SOURCE = "angular";
|
|
@@ -112,7 +120,7 @@ var EmitFlags;
|
|
|
112
120
|
EmitFlags2[EmitFlags2["All"] = 31] = "All";
|
|
113
121
|
})(EmitFlags || (EmitFlags = {}));
|
|
114
122
|
|
|
115
|
-
// bazel-out/
|
|
123
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/transformers/compiler_host.mjs
|
|
116
124
|
import ts from "typescript";
|
|
117
125
|
var wrapHostForTest = null;
|
|
118
126
|
function createCompilerHost({ options, tsHost = ts.createCompilerHost(options, true) }) {
|
|
@@ -122,21 +130,21 @@ function createCompilerHost({ options, tsHost = ts.createCompilerHost(options, t
|
|
|
122
130
|
return tsHost;
|
|
123
131
|
}
|
|
124
132
|
|
|
125
|
-
// bazel-out/
|
|
133
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/checker.mjs
|
|
126
134
|
var OptimizeFor;
|
|
127
135
|
(function(OptimizeFor2) {
|
|
128
136
|
OptimizeFor2[OptimizeFor2["SingleFile"] = 0] = "SingleFile";
|
|
129
137
|
OptimizeFor2[OptimizeFor2["WholeProgram"] = 1] = "WholeProgram";
|
|
130
138
|
})(OptimizeFor || (OptimizeFor = {}));
|
|
131
139
|
|
|
132
|
-
// bazel-out/
|
|
140
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/completion.mjs
|
|
133
141
|
var CompletionKind;
|
|
134
142
|
(function(CompletionKind2) {
|
|
135
143
|
CompletionKind2[CompletionKind2["Reference"] = 0] = "Reference";
|
|
136
144
|
CompletionKind2[CompletionKind2["Variable"] = 1] = "Variable";
|
|
137
145
|
})(CompletionKind || (CompletionKind = {}));
|
|
138
146
|
|
|
139
|
-
// bazel-out/
|
|
147
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/api/symbols.mjs
|
|
140
148
|
var SymbolKind;
|
|
141
149
|
(function(SymbolKind2) {
|
|
142
150
|
SymbolKind2[SymbolKind2["Input"] = 0] = "Input";
|
|
@@ -152,11 +160,11 @@ var SymbolKind;
|
|
|
152
160
|
SymbolKind2[SymbolKind2["Pipe"] = 10] = "Pipe";
|
|
153
161
|
})(SymbolKind || (SymbolKind = {}));
|
|
154
162
|
|
|
155
|
-
// bazel-out/
|
|
163
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/program.mjs
|
|
156
164
|
import { HtmlParser, MessageBundle } from "@angular/compiler";
|
|
157
|
-
import
|
|
165
|
+
import ts31 from "typescript";
|
|
158
166
|
|
|
159
|
-
// bazel-out/
|
|
167
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/transformers/i18n.mjs
|
|
160
168
|
import { Xliff, Xliff2, Xmb } from "@angular/compiler";
|
|
161
169
|
import * as path from "path";
|
|
162
170
|
function i18nGetExtension(formatName) {
|
|
@@ -207,10 +215,10 @@ function getPathNormalizer(basePath) {
|
|
|
207
215
|
};
|
|
208
216
|
}
|
|
209
217
|
|
|
210
|
-
// bazel-out/
|
|
218
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/typescript_support.mjs
|
|
211
219
|
import ts2 from "typescript";
|
|
212
220
|
|
|
213
|
-
// bazel-out/
|
|
221
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/version_helpers.mjs
|
|
214
222
|
function toNumbers(value) {
|
|
215
223
|
const suffixIndex = value.lastIndexOf("-");
|
|
216
224
|
return value.slice(0, suffixIndex === -1 ? value.length : suffixIndex).split(".").map((segment) => {
|
|
@@ -245,7 +253,7 @@ function compareVersions(v1, v2) {
|
|
|
245
253
|
return compareNumbers(toNumbers(v1), toNumbers(v2));
|
|
246
254
|
}
|
|
247
255
|
|
|
248
|
-
// bazel-out/
|
|
256
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/typescript_support.mjs
|
|
249
257
|
var MIN_TS_VERSION = "4.4.2";
|
|
250
258
|
var MAX_TS_VERSION = "4.6.0";
|
|
251
259
|
var tsVersion = ts2.version;
|
|
@@ -258,10 +266,10 @@ function verifySupportedTypeScriptVersion() {
|
|
|
258
266
|
checkVersion(tsVersion, MIN_TS_VERSION, MAX_TS_VERSION);
|
|
259
267
|
}
|
|
260
268
|
|
|
261
|
-
// bazel-out/
|
|
262
|
-
import
|
|
269
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/compiler.mjs
|
|
270
|
+
import ts29 from "typescript";
|
|
263
271
|
|
|
264
|
-
// bazel-out/
|
|
272
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/cycles/src/analyzer.mjs
|
|
265
273
|
var CycleAnalyzer = class {
|
|
266
274
|
constructor(importGraph) {
|
|
267
275
|
this.importGraph = importGraph;
|
|
@@ -332,7 +340,7 @@ var Cycle = class {
|
|
|
332
340
|
}
|
|
333
341
|
};
|
|
334
342
|
|
|
335
|
-
// bazel-out/
|
|
343
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/cycles/src/imports.mjs
|
|
336
344
|
import ts3 from "typescript";
|
|
337
345
|
var ImportGraph = class {
|
|
338
346
|
constructor(checker, perf) {
|
|
@@ -424,7 +432,7 @@ var Found = class {
|
|
|
424
432
|
}
|
|
425
433
|
};
|
|
426
434
|
|
|
427
|
-
// bazel-out/
|
|
435
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/generator.mjs
|
|
428
436
|
import ts4 from "typescript";
|
|
429
437
|
var FlatIndexGenerator = class {
|
|
430
438
|
constructor(entryPoint, relativeFlatIndexPath, moduleName) {
|
|
@@ -449,7 +457,7 @@ export * from '${relativeEntryPoint}';
|
|
|
449
457
|
}
|
|
450
458
|
};
|
|
451
459
|
|
|
452
|
-
// bazel-out/
|
|
460
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/logic.mjs
|
|
453
461
|
function findFlatIndexEntryPoint(rootFiles) {
|
|
454
462
|
const tsFiles = rootFiles.filter((file) => isNonDeclarationTsPath(file));
|
|
455
463
|
let resolvedEntryPoint = null;
|
|
@@ -465,7 +473,7 @@ function findFlatIndexEntryPoint(rootFiles) {
|
|
|
465
473
|
return resolvedEntryPoint;
|
|
466
474
|
}
|
|
467
475
|
|
|
468
|
-
// bazel-out/
|
|
476
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/private_export_checker.mjs
|
|
469
477
|
import ts5 from "typescript";
|
|
470
478
|
function checkForPrivateExports(entryPoint, checker, refGraph) {
|
|
471
479
|
const diagnostics = [];
|
|
@@ -545,7 +553,7 @@ function getDescriptorOfDeclaration(decl) {
|
|
|
545
553
|
}
|
|
546
554
|
}
|
|
547
555
|
|
|
548
|
-
// bazel-out/
|
|
556
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/entry_point/src/reference_graph.mjs
|
|
549
557
|
var ReferenceGraph = class {
|
|
550
558
|
constructor() {
|
|
551
559
|
this.references = /* @__PURE__ */ new Map();
|
|
@@ -599,7 +607,7 @@ var ReferenceGraph = class {
|
|
|
599
607
|
}
|
|
600
608
|
};
|
|
601
609
|
|
|
602
|
-
// bazel-out/
|
|
610
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/program_driver/src/api.mjs
|
|
603
611
|
var NgOriginalFile = Symbol("NgOriginalFile");
|
|
604
612
|
var UpdateMode;
|
|
605
613
|
(function(UpdateMode2) {
|
|
@@ -607,408 +615,8 @@ var UpdateMode;
|
|
|
607
615
|
UpdateMode2[UpdateMode2["Incremental"] = 1] = "Incremental";
|
|
608
616
|
})(UpdateMode || (UpdateMode = {}));
|
|
609
617
|
|
|
610
|
-
// bazel-out/
|
|
611
|
-
import ts9 from "typescript";
|
|
612
|
-
|
|
613
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/adapter.mjs
|
|
618
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/program_driver/src/ts_create_program_driver.mjs
|
|
614
619
|
import ts6 from "typescript";
|
|
615
|
-
|
|
616
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/expando.mjs
|
|
617
|
-
var NgExtension = Symbol("NgExtension");
|
|
618
|
-
function isExtended(sf) {
|
|
619
|
-
return sf[NgExtension] !== void 0;
|
|
620
|
-
}
|
|
621
|
-
function sfExtensionData(sf) {
|
|
622
|
-
const extSf = sf;
|
|
623
|
-
if (extSf[NgExtension] !== void 0) {
|
|
624
|
-
return extSf[NgExtension];
|
|
625
|
-
}
|
|
626
|
-
const extension = {
|
|
627
|
-
isTopLevelShim: false,
|
|
628
|
-
fileShim: null,
|
|
629
|
-
originalReferencedFiles: null,
|
|
630
|
-
taggedReferenceFiles: null
|
|
631
|
-
};
|
|
632
|
-
extSf[NgExtension] = extension;
|
|
633
|
-
return extension;
|
|
634
|
-
}
|
|
635
|
-
function isFileShimSourceFile(sf) {
|
|
636
|
-
return isExtended(sf) && sf[NgExtension].fileShim !== null;
|
|
637
|
-
}
|
|
638
|
-
function isShim(sf) {
|
|
639
|
-
return isExtended(sf) && (sf[NgExtension].fileShim !== null || sf[NgExtension].isTopLevelShim);
|
|
640
|
-
}
|
|
641
|
-
function copyFileShimData(from, to) {
|
|
642
|
-
if (!isFileShimSourceFile(from)) {
|
|
643
|
-
return;
|
|
644
|
-
}
|
|
645
|
-
sfExtensionData(to).fileShim = sfExtensionData(from).fileShim;
|
|
646
|
-
}
|
|
647
|
-
function untagAllTsFiles(program) {
|
|
648
|
-
for (const sf of program.getSourceFiles()) {
|
|
649
|
-
untagTsFile(sf);
|
|
650
|
-
}
|
|
651
|
-
}
|
|
652
|
-
function retagAllTsFiles(program) {
|
|
653
|
-
for (const sf of program.getSourceFiles()) {
|
|
654
|
-
retagTsFile(sf);
|
|
655
|
-
}
|
|
656
|
-
}
|
|
657
|
-
function untagTsFile(sf) {
|
|
658
|
-
if (sf.isDeclarationFile || !isExtended(sf)) {
|
|
659
|
-
return;
|
|
660
|
-
}
|
|
661
|
-
const ext = sfExtensionData(sf);
|
|
662
|
-
if (ext.originalReferencedFiles !== null) {
|
|
663
|
-
sf.referencedFiles = ext.originalReferencedFiles;
|
|
664
|
-
}
|
|
665
|
-
}
|
|
666
|
-
function retagTsFile(sf) {
|
|
667
|
-
if (sf.isDeclarationFile || !isExtended(sf)) {
|
|
668
|
-
return;
|
|
669
|
-
}
|
|
670
|
-
const ext = sfExtensionData(sf);
|
|
671
|
-
if (ext.taggedReferenceFiles !== null) {
|
|
672
|
-
sf.referencedFiles = ext.taggedReferenceFiles;
|
|
673
|
-
}
|
|
674
|
-
}
|
|
675
|
-
|
|
676
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/util.mjs
|
|
677
|
-
var TS_EXTENSIONS = /\.tsx?$/i;
|
|
678
|
-
function makeShimFileName(fileName, suffix) {
|
|
679
|
-
return absoluteFrom(fileName.replace(TS_EXTENSIONS, suffix));
|
|
680
|
-
}
|
|
681
|
-
function generatedModuleName(originalModuleName, originalFileName, genSuffix) {
|
|
682
|
-
let moduleName;
|
|
683
|
-
if (originalFileName.endsWith("/index.ts")) {
|
|
684
|
-
moduleName = originalModuleName + "/index" + genSuffix;
|
|
685
|
-
} else {
|
|
686
|
-
moduleName = originalModuleName + genSuffix;
|
|
687
|
-
}
|
|
688
|
-
return moduleName;
|
|
689
|
-
}
|
|
690
|
-
|
|
691
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/adapter.mjs
|
|
692
|
-
var ShimAdapter = class {
|
|
693
|
-
constructor(delegate, tsRootFiles, topLevelGenerators, perFileGenerators, oldProgram) {
|
|
694
|
-
this.delegate = delegate;
|
|
695
|
-
this.shims = /* @__PURE__ */ new Map();
|
|
696
|
-
this.priorShims = /* @__PURE__ */ new Map();
|
|
697
|
-
this.notShims = /* @__PURE__ */ new Set();
|
|
698
|
-
this.generators = [];
|
|
699
|
-
this.ignoreForEmit = /* @__PURE__ */ new Set();
|
|
700
|
-
this.extensionPrefixes = [];
|
|
701
|
-
for (const gen of perFileGenerators) {
|
|
702
|
-
const pattern = `^(.*)\\.${gen.extensionPrefix}\\.ts$`;
|
|
703
|
-
const regexp = new RegExp(pattern, "i");
|
|
704
|
-
this.generators.push({
|
|
705
|
-
generator: gen,
|
|
706
|
-
test: regexp,
|
|
707
|
-
suffix: `.${gen.extensionPrefix}.ts`
|
|
708
|
-
});
|
|
709
|
-
this.extensionPrefixes.push(gen.extensionPrefix);
|
|
710
|
-
}
|
|
711
|
-
const extraInputFiles = [];
|
|
712
|
-
for (const gen of topLevelGenerators) {
|
|
713
|
-
const sf = gen.makeTopLevelShim();
|
|
714
|
-
sfExtensionData(sf).isTopLevelShim = true;
|
|
715
|
-
if (!gen.shouldEmit) {
|
|
716
|
-
this.ignoreForEmit.add(sf);
|
|
717
|
-
}
|
|
718
|
-
const fileName = absoluteFromSourceFile(sf);
|
|
719
|
-
this.shims.set(fileName, sf);
|
|
720
|
-
extraInputFiles.push(fileName);
|
|
721
|
-
}
|
|
722
|
-
for (const rootFile of tsRootFiles) {
|
|
723
|
-
for (const gen of this.generators) {
|
|
724
|
-
extraInputFiles.push(makeShimFileName(rootFile, gen.suffix));
|
|
725
|
-
}
|
|
726
|
-
}
|
|
727
|
-
this.extraInputFiles = extraInputFiles;
|
|
728
|
-
if (oldProgram !== null) {
|
|
729
|
-
for (const oldSf of oldProgram.getSourceFiles()) {
|
|
730
|
-
if (oldSf.isDeclarationFile || !isFileShimSourceFile(oldSf)) {
|
|
731
|
-
continue;
|
|
732
|
-
}
|
|
733
|
-
this.priorShims.set(absoluteFromSourceFile(oldSf), oldSf);
|
|
734
|
-
}
|
|
735
|
-
}
|
|
736
|
-
}
|
|
737
|
-
maybeGenerate(fileName) {
|
|
738
|
-
if (this.notShims.has(fileName)) {
|
|
739
|
-
return null;
|
|
740
|
-
} else if (this.shims.has(fileName)) {
|
|
741
|
-
return this.shims.get(fileName);
|
|
742
|
-
}
|
|
743
|
-
if (isDtsPath(fileName)) {
|
|
744
|
-
this.notShims.add(fileName);
|
|
745
|
-
return null;
|
|
746
|
-
}
|
|
747
|
-
for (const record of this.generators) {
|
|
748
|
-
const match = record.test.exec(fileName);
|
|
749
|
-
if (match === null) {
|
|
750
|
-
continue;
|
|
751
|
-
}
|
|
752
|
-
const prefix = match[1];
|
|
753
|
-
let baseFileName = absoluteFrom(prefix + ".ts");
|
|
754
|
-
if (!this.delegate.fileExists(baseFileName)) {
|
|
755
|
-
baseFileName = absoluteFrom(prefix + ".tsx");
|
|
756
|
-
if (!this.delegate.fileExists(baseFileName)) {
|
|
757
|
-
return void 0;
|
|
758
|
-
}
|
|
759
|
-
}
|
|
760
|
-
const inputFile = this.delegate.getSourceFile(baseFileName, ts6.ScriptTarget.Latest);
|
|
761
|
-
if (inputFile === void 0 || isShim(inputFile)) {
|
|
762
|
-
return void 0;
|
|
763
|
-
}
|
|
764
|
-
return this.generateSpecific(fileName, record.generator, inputFile);
|
|
765
|
-
}
|
|
766
|
-
this.notShims.add(fileName);
|
|
767
|
-
return null;
|
|
768
|
-
}
|
|
769
|
-
generateSpecific(fileName, generator, inputFile) {
|
|
770
|
-
let priorShimSf = null;
|
|
771
|
-
if (this.priorShims.has(fileName)) {
|
|
772
|
-
priorShimSf = this.priorShims.get(fileName);
|
|
773
|
-
this.priorShims.delete(fileName);
|
|
774
|
-
}
|
|
775
|
-
const shimSf = generator.generateShimForFile(inputFile, fileName, priorShimSf);
|
|
776
|
-
sfExtensionData(shimSf).fileShim = {
|
|
777
|
-
extension: generator.extensionPrefix,
|
|
778
|
-
generatedFrom: absoluteFromSourceFile(inputFile)
|
|
779
|
-
};
|
|
780
|
-
if (!generator.shouldEmit) {
|
|
781
|
-
this.ignoreForEmit.add(shimSf);
|
|
782
|
-
}
|
|
783
|
-
this.shims.set(fileName, shimSf);
|
|
784
|
-
return shimSf;
|
|
785
|
-
}
|
|
786
|
-
};
|
|
787
|
-
|
|
788
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/factory_generator.mjs
|
|
789
|
-
import ts7 from "typescript";
|
|
790
|
-
var TS_DTS_SUFFIX = /(\.d)?\.ts$/;
|
|
791
|
-
var STRIP_NG_FACTORY = /(.*)NgFactory$/;
|
|
792
|
-
var FactoryGenerator = class {
|
|
793
|
-
constructor() {
|
|
794
|
-
this.sourceInfo = /* @__PURE__ */ new Map();
|
|
795
|
-
this.sourceToFactorySymbols = /* @__PURE__ */ new Map();
|
|
796
|
-
this.shouldEmit = true;
|
|
797
|
-
this.extensionPrefix = "ngfactory";
|
|
798
|
-
}
|
|
799
|
-
generateShimForFile(sf, genFilePath) {
|
|
800
|
-
const absoluteSfPath = absoluteFromSourceFile(sf);
|
|
801
|
-
const relativePathToSource = "./" + basename(sf.fileName).replace(TS_DTS_SUFFIX, "");
|
|
802
|
-
const symbolNames = sf.statements.filter(ts7.isClassDeclaration).filter((decl) => isExported(decl) && decl.decorators !== void 0 && decl.name !== void 0).map((decl) => decl.name.text);
|
|
803
|
-
let sourceText = "";
|
|
804
|
-
const leadingComment = getFileoverviewComment(sf);
|
|
805
|
-
if (leadingComment !== null) {
|
|
806
|
-
sourceText = leadingComment + "\n\n";
|
|
807
|
-
}
|
|
808
|
-
if (symbolNames.length > 0) {
|
|
809
|
-
const varLines = symbolNames.map((name) => `export const ${name}NgFactory: i0.\u0275NgModuleFactory<any> = new i0.\u0275NgModuleFactory(${name});`);
|
|
810
|
-
sourceText += [
|
|
811
|
-
`import * as i0 from '@angular/core';`,
|
|
812
|
-
`import {${symbolNames.join(", ")}} from '${relativePathToSource}';`,
|
|
813
|
-
...varLines
|
|
814
|
-
].join("\n");
|
|
815
|
-
}
|
|
816
|
-
sourceText += "\nexport const \u0275NonEmptyModule = true;";
|
|
817
|
-
const genFile = ts7.createSourceFile(genFilePath, sourceText, sf.languageVersion, true, ts7.ScriptKind.TS);
|
|
818
|
-
if (sf.moduleName !== void 0) {
|
|
819
|
-
genFile.moduleName = generatedModuleName(sf.moduleName, sf.fileName, ".ngfactory");
|
|
820
|
-
}
|
|
821
|
-
const moduleSymbols = /* @__PURE__ */ new Map();
|
|
822
|
-
this.sourceToFactorySymbols.set(absoluteSfPath, moduleSymbols);
|
|
823
|
-
this.sourceInfo.set(genFilePath, {
|
|
824
|
-
sourceFilePath: absoluteSfPath,
|
|
825
|
-
moduleSymbols
|
|
826
|
-
});
|
|
827
|
-
return genFile;
|
|
828
|
-
}
|
|
829
|
-
track(sf, moduleInfo) {
|
|
830
|
-
if (this.sourceToFactorySymbols.has(sf.fileName)) {
|
|
831
|
-
this.sourceToFactorySymbols.get(sf.fileName).set(moduleInfo.name, moduleInfo);
|
|
832
|
-
}
|
|
833
|
-
}
|
|
834
|
-
};
|
|
835
|
-
function isExported(decl) {
|
|
836
|
-
return decl.modifiers !== void 0 && decl.modifiers.some((mod) => mod.kind == ts7.SyntaxKind.ExportKeyword);
|
|
837
|
-
}
|
|
838
|
-
function generatedFactoryTransform(factoryMap, importRewriter) {
|
|
839
|
-
return (context) => {
|
|
840
|
-
return (file) => {
|
|
841
|
-
return transformFactorySourceFile(factoryMap, context, importRewriter, file);
|
|
842
|
-
};
|
|
843
|
-
};
|
|
844
|
-
}
|
|
845
|
-
function transformFactorySourceFile(factoryMap, context, importRewriter, file) {
|
|
846
|
-
if (!factoryMap.has(file.fileName)) {
|
|
847
|
-
return file;
|
|
848
|
-
}
|
|
849
|
-
const { moduleSymbols, sourceFilePath } = factoryMap.get(file.fileName);
|
|
850
|
-
const transformedStatements = [];
|
|
851
|
-
let nonEmptyExport = null;
|
|
852
|
-
const coreImportIdentifiers = /* @__PURE__ */ new Set();
|
|
853
|
-
for (const stmt of file.statements) {
|
|
854
|
-
if (ts7.isImportDeclaration(stmt) && ts7.isStringLiteral(stmt.moduleSpecifier) && stmt.moduleSpecifier.text === "@angular/core") {
|
|
855
|
-
const rewrittenModuleSpecifier = importRewriter.rewriteSpecifier("@angular/core", sourceFilePath);
|
|
856
|
-
if (rewrittenModuleSpecifier !== stmt.moduleSpecifier.text) {
|
|
857
|
-
transformedStatements.push(ts7.updateImportDeclaration(stmt, stmt.decorators, stmt.modifiers, stmt.importClause, ts7.createStringLiteral(rewrittenModuleSpecifier), void 0));
|
|
858
|
-
if (stmt.importClause !== void 0 && stmt.importClause.namedBindings !== void 0 && ts7.isNamespaceImport(stmt.importClause.namedBindings)) {
|
|
859
|
-
coreImportIdentifiers.add(stmt.importClause.namedBindings.name.text);
|
|
860
|
-
}
|
|
861
|
-
} else {
|
|
862
|
-
transformedStatements.push(stmt);
|
|
863
|
-
}
|
|
864
|
-
} else if (ts7.isVariableStatement(stmt) && stmt.declarationList.declarations.length === 1) {
|
|
865
|
-
const decl = stmt.declarationList.declarations[0];
|
|
866
|
-
if (ts7.isIdentifier(decl.name)) {
|
|
867
|
-
if (decl.name.text === "\u0275NonEmptyModule") {
|
|
868
|
-
nonEmptyExport = stmt;
|
|
869
|
-
continue;
|
|
870
|
-
}
|
|
871
|
-
const match = STRIP_NG_FACTORY.exec(decl.name.text);
|
|
872
|
-
const module = match ? moduleSymbols.get(match[1]) : null;
|
|
873
|
-
if (module) {
|
|
874
|
-
const moduleIsTreeShakable = !module.hasId;
|
|
875
|
-
const newStmt = !moduleIsTreeShakable ? stmt : updateInitializers(stmt, (init) => init ? wrapInNoSideEffects(init) : void 0);
|
|
876
|
-
transformedStatements.push(newStmt);
|
|
877
|
-
}
|
|
878
|
-
} else {
|
|
879
|
-
transformedStatements.push(stmt);
|
|
880
|
-
}
|
|
881
|
-
} else {
|
|
882
|
-
transformedStatements.push(stmt);
|
|
883
|
-
}
|
|
884
|
-
}
|
|
885
|
-
if (!transformedStatements.some(ts7.isVariableStatement) && nonEmptyExport !== null) {
|
|
886
|
-
transformedStatements.push(nonEmptyExport);
|
|
887
|
-
}
|
|
888
|
-
file = ts7.updateSourceFileNode(file, transformedStatements);
|
|
889
|
-
if (coreImportIdentifiers.size > 0) {
|
|
890
|
-
const visit = (node) => {
|
|
891
|
-
node = ts7.visitEachChild(node, (child) => visit(child), context);
|
|
892
|
-
if (ts7.isPropertyAccessExpression(node) && ts7.isIdentifier(node.expression) && coreImportIdentifiers.has(node.expression.text)) {
|
|
893
|
-
const rewrittenSymbol = importRewriter.rewriteSymbol(node.name.text, "@angular/core");
|
|
894
|
-
if (rewrittenSymbol !== node.name.text) {
|
|
895
|
-
const updated = ts7.updatePropertyAccess(node, node.expression, ts7.createIdentifier(rewrittenSymbol));
|
|
896
|
-
node = updated;
|
|
897
|
-
}
|
|
898
|
-
}
|
|
899
|
-
return node;
|
|
900
|
-
};
|
|
901
|
-
file = visit(file);
|
|
902
|
-
}
|
|
903
|
-
return file;
|
|
904
|
-
}
|
|
905
|
-
function getFileoverviewComment(sourceFile) {
|
|
906
|
-
const text = sourceFile.getFullText();
|
|
907
|
-
const trivia = text.substring(0, sourceFile.getStart());
|
|
908
|
-
const leadingComments = ts7.getLeadingCommentRanges(trivia, 0);
|
|
909
|
-
if (!leadingComments || leadingComments.length === 0) {
|
|
910
|
-
return null;
|
|
911
|
-
}
|
|
912
|
-
const comment = leadingComments[0];
|
|
913
|
-
if (comment.kind !== ts7.SyntaxKind.MultiLineCommentTrivia) {
|
|
914
|
-
return null;
|
|
915
|
-
}
|
|
916
|
-
if (text.substring(comment.end, comment.end + 2) !== "\n\n") {
|
|
917
|
-
return null;
|
|
918
|
-
}
|
|
919
|
-
const commentText = text.substring(comment.pos, comment.end);
|
|
920
|
-
if (commentText.indexOf("@license") !== -1) {
|
|
921
|
-
return null;
|
|
922
|
-
}
|
|
923
|
-
return commentText;
|
|
924
|
-
}
|
|
925
|
-
function wrapInNoSideEffects(expr) {
|
|
926
|
-
const noSideEffects = ts7.createPropertyAccess(ts7.createIdentifier("i0"), "\u0275noSideEffects");
|
|
927
|
-
return ts7.createCall(noSideEffects, [], [
|
|
928
|
-
ts7.createFunctionExpression([], void 0, void 0, [], [], void 0, ts7.createBlock([
|
|
929
|
-
ts7.createReturn(expr)
|
|
930
|
-
]))
|
|
931
|
-
]);
|
|
932
|
-
}
|
|
933
|
-
function updateInitializers(stmt, update) {
|
|
934
|
-
return ts7.updateVariableStatement(stmt, stmt.modifiers, ts7.updateVariableDeclarationList(stmt.declarationList, stmt.declarationList.declarations.map((decl) => ts7.updateVariableDeclaration(decl, decl.name, decl.type, update(decl.initializer)))));
|
|
935
|
-
}
|
|
936
|
-
|
|
937
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/reference_tagger.mjs
|
|
938
|
-
var ShimReferenceTagger = class {
|
|
939
|
-
constructor(shimExtensions) {
|
|
940
|
-
this.tagged = /* @__PURE__ */ new Set();
|
|
941
|
-
this.enabled = true;
|
|
942
|
-
this.suffixes = shimExtensions.map((extension) => `.${extension}.ts`);
|
|
943
|
-
}
|
|
944
|
-
tag(sf) {
|
|
945
|
-
if (!this.enabled || sf.isDeclarationFile || isShim(sf) || this.tagged.has(sf) || !isNonDeclarationTsPath(sf.fileName)) {
|
|
946
|
-
return;
|
|
947
|
-
}
|
|
948
|
-
const ext = sfExtensionData(sf);
|
|
949
|
-
if (ext.originalReferencedFiles === null) {
|
|
950
|
-
ext.originalReferencedFiles = sf.referencedFiles;
|
|
951
|
-
}
|
|
952
|
-
const referencedFiles = [...ext.originalReferencedFiles];
|
|
953
|
-
const sfPath = absoluteFromSourceFile(sf);
|
|
954
|
-
for (const suffix of this.suffixes) {
|
|
955
|
-
referencedFiles.push({
|
|
956
|
-
fileName: makeShimFileName(sfPath, suffix),
|
|
957
|
-
pos: 0,
|
|
958
|
-
end: 0
|
|
959
|
-
});
|
|
960
|
-
}
|
|
961
|
-
ext.taggedReferenceFiles = referencedFiles;
|
|
962
|
-
sf.referencedFiles = referencedFiles;
|
|
963
|
-
this.tagged.add(sf);
|
|
964
|
-
}
|
|
965
|
-
finalize() {
|
|
966
|
-
this.enabled = false;
|
|
967
|
-
this.tagged.clear();
|
|
968
|
-
}
|
|
969
|
-
};
|
|
970
|
-
|
|
971
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/shims/src/summary_generator.mjs
|
|
972
|
-
import ts8 from "typescript";
|
|
973
|
-
var SummaryGenerator = class {
|
|
974
|
-
constructor() {
|
|
975
|
-
this.shouldEmit = true;
|
|
976
|
-
this.extensionPrefix = "ngsummary";
|
|
977
|
-
}
|
|
978
|
-
generateShimForFile(sf, genFilePath) {
|
|
979
|
-
const symbolNames = [];
|
|
980
|
-
for (const stmt of sf.statements) {
|
|
981
|
-
if (ts8.isClassDeclaration(stmt)) {
|
|
982
|
-
if (!isExported2(stmt) || stmt.decorators === void 0 || stmt.name === void 0) {
|
|
983
|
-
continue;
|
|
984
|
-
}
|
|
985
|
-
symbolNames.push(stmt.name.text);
|
|
986
|
-
} else if (ts8.isExportDeclaration(stmt)) {
|
|
987
|
-
if (stmt.exportClause === void 0 || stmt.moduleSpecifier !== void 0 || !ts8.isNamedExports(stmt.exportClause)) {
|
|
988
|
-
continue;
|
|
989
|
-
}
|
|
990
|
-
for (const specifier of stmt.exportClause.elements) {
|
|
991
|
-
symbolNames.push(specifier.name.text);
|
|
992
|
-
}
|
|
993
|
-
}
|
|
994
|
-
}
|
|
995
|
-
const varLines = symbolNames.map((name) => `export const ${name}NgSummary: any = null;`);
|
|
996
|
-
if (varLines.length === 0) {
|
|
997
|
-
varLines.push(`export const \u0275empty = null;`);
|
|
998
|
-
}
|
|
999
|
-
const sourceText = varLines.join("\n");
|
|
1000
|
-
const genFile = ts8.createSourceFile(genFilePath, sourceText, sf.languageVersion, true, ts8.ScriptKind.TS);
|
|
1001
|
-
if (sf.moduleName !== void 0) {
|
|
1002
|
-
genFile.moduleName = generatedModuleName(sf.moduleName, sf.fileName, ".ngsummary");
|
|
1003
|
-
}
|
|
1004
|
-
return genFile;
|
|
1005
|
-
}
|
|
1006
|
-
};
|
|
1007
|
-
function isExported2(decl) {
|
|
1008
|
-
return decl.modifiers !== void 0 && decl.modifiers.some((mod) => mod.kind == ts8.SyntaxKind.ExportKeyword);
|
|
1009
|
-
}
|
|
1010
|
-
|
|
1011
|
-
// bazel-out/k8-fastbuild/bin/packages/compiler-cli/src/ngtsc/program_driver/src/ts_create_program_driver.mjs
|
|
1012
620
|
var DelegatingCompilerHost = class {
|
|
1013
621
|
constructor(delegate) {
|
|
1014
622
|
this.delegate = delegate;
|
|
@@ -1097,7 +705,7 @@ var TsCreateProgramDriver = class {
|
|
|
1097
705
|
this.sfMap.clear();
|
|
1098
706
|
}
|
|
1099
707
|
for (const [filePath, { newText, originalFile }] of contents.entries()) {
|
|
1100
|
-
const sf =
|
|
708
|
+
const sf = ts6.createSourceFile(filePath, newText, ts6.ScriptTarget.Latest, true);
|
|
1101
709
|
if (originalFile !== null) {
|
|
1102
710
|
sf[NgOriginalFile] = originalFile;
|
|
1103
711
|
}
|
|
@@ -1106,7 +714,7 @@ var TsCreateProgramDriver = class {
|
|
|
1106
714
|
const host = new UpdatedProgramHost(this.sfMap, this.originalProgram, this.originalHost, this.shimExtensionPrefixes);
|
|
1107
715
|
const oldProgram = this.program;
|
|
1108
716
|
retagAllTsFiles(oldProgram);
|
|
1109
|
-
this.program =
|
|
717
|
+
this.program = ts6.createProgram({
|
|
1110
718
|
host,
|
|
1111
719
|
rootNames: this.program.getRootFileNames(),
|
|
1112
720
|
options: this.options,
|
|
@@ -1118,7 +726,7 @@ var TsCreateProgramDriver = class {
|
|
|
1118
726
|
}
|
|
1119
727
|
};
|
|
1120
728
|
|
|
1121
|
-
// bazel-out/
|
|
729
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/dependency_tracking.mjs
|
|
1122
730
|
var FileDependencyGraph = class {
|
|
1123
731
|
constructor() {
|
|
1124
732
|
this.nodes = /* @__PURE__ */ new Map();
|
|
@@ -1185,7 +793,7 @@ function isLogicallyChanged(sf, node, changedTsPaths, deletedTsPaths, changedRes
|
|
|
1185
793
|
return false;
|
|
1186
794
|
}
|
|
1187
795
|
|
|
1188
|
-
// bazel-out/
|
|
796
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/state.mjs
|
|
1189
797
|
var IncrementalStateKind;
|
|
1190
798
|
(function(IncrementalStateKind2) {
|
|
1191
799
|
IncrementalStateKind2[IncrementalStateKind2["Fresh"] = 0] = "Fresh";
|
|
@@ -1193,7 +801,7 @@ var IncrementalStateKind;
|
|
|
1193
801
|
IncrementalStateKind2[IncrementalStateKind2["Analyzed"] = 2] = "Analyzed";
|
|
1194
802
|
})(IncrementalStateKind || (IncrementalStateKind = {}));
|
|
1195
803
|
|
|
1196
|
-
// bazel-out/
|
|
804
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/incremental.mjs
|
|
1197
805
|
var PhaseKind;
|
|
1198
806
|
(function(PhaseKind2) {
|
|
1199
807
|
PhaseKind2[PhaseKind2["Analysis"] = 0] = "Analysis";
|
|
@@ -1394,7 +1002,7 @@ function toOriginalSourceFile(sf) {
|
|
|
1394
1002
|
}
|
|
1395
1003
|
}
|
|
1396
1004
|
|
|
1397
|
-
// bazel-out/
|
|
1005
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/incremental/src/strategy.mjs
|
|
1398
1006
|
var TrackedIncrementalBuildStrategy = class {
|
|
1399
1007
|
constructor() {
|
|
1400
1008
|
this.state = null;
|
|
@@ -1430,7 +1038,7 @@ var PatchedProgramIncrementalBuildStrategy = class {
|
|
|
1430
1038
|
};
|
|
1431
1039
|
var SYM_INCREMENTAL_STATE = Symbol("NgIncrementalState");
|
|
1432
1040
|
|
|
1433
|
-
// bazel-out/
|
|
1041
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/api.mjs
|
|
1434
1042
|
var IdentifierKind;
|
|
1435
1043
|
(function(IdentifierKind2) {
|
|
1436
1044
|
IdentifierKind2[IdentifierKind2["Property"] = 0] = "Property";
|
|
@@ -1448,7 +1056,7 @@ var AbsoluteSourceSpan = class {
|
|
|
1448
1056
|
}
|
|
1449
1057
|
};
|
|
1450
1058
|
|
|
1451
|
-
// bazel-out/
|
|
1059
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/context.mjs
|
|
1452
1060
|
var IndexingContext = class {
|
|
1453
1061
|
constructor() {
|
|
1454
1062
|
this.components = /* @__PURE__ */ new Set();
|
|
@@ -1458,10 +1066,10 @@ var IndexingContext = class {
|
|
|
1458
1066
|
}
|
|
1459
1067
|
};
|
|
1460
1068
|
|
|
1461
|
-
// bazel-out/
|
|
1069
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/transform.mjs
|
|
1462
1070
|
import { ParseSourceFile } from "@angular/compiler";
|
|
1463
1071
|
|
|
1464
|
-
// bazel-out/
|
|
1072
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/template.mjs
|
|
1465
1073
|
import { ASTWithSource, ImplicitReceiver, PropertyRead, PropertyWrite, RecursiveAstVisitor, TmplAstElement, TmplAstRecursiveVisitor, TmplAstReference, TmplAstTemplate } from "@angular/compiler";
|
|
1466
1074
|
var ExpressionVisitor = class extends RecursiveAstVisitor {
|
|
1467
1075
|
constructor(expressionStr, absoluteOffset, boundTemplate, targetToIdentifier) {
|
|
@@ -1672,7 +1280,7 @@ function getTemplateIdentifiers(boundTemplate) {
|
|
|
1672
1280
|
return visitor.identifiers;
|
|
1673
1281
|
}
|
|
1674
1282
|
|
|
1675
|
-
// bazel-out/
|
|
1283
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/indexer/src/transform.mjs
|
|
1676
1284
|
function generateAnalysis(context) {
|
|
1677
1285
|
const analysis = /* @__PURE__ */ new Map();
|
|
1678
1286
|
context.components.forEach(({ declaration, selector, boundTemplate, templateMeta }) => {
|
|
@@ -1706,8 +1314,8 @@ function generateAnalysis(context) {
|
|
|
1706
1314
|
return analysis;
|
|
1707
1315
|
}
|
|
1708
1316
|
|
|
1709
|
-
// bazel-out/
|
|
1710
|
-
import
|
|
1317
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/resource/src/loader.mjs
|
|
1318
|
+
import ts7 from "typescript";
|
|
1711
1319
|
var CSS_PREPROCESSOR_EXT = /(\.scss|\.sass|\.less|\.styl)$/;
|
|
1712
1320
|
var RESOURCE_MARKER = ".$ngresource$";
|
|
1713
1321
|
var RESOURCE_MARKER_TS = RESOURCE_MARKER + ".ts";
|
|
@@ -1817,7 +1425,7 @@ var AdapterResourceLoader = class {
|
|
|
1817
1425
|
return this.adapter.rootDirs.map((rootDir) => join(rootDir, segment));
|
|
1818
1426
|
}
|
|
1819
1427
|
getResolvedCandidateLocations(url, fromFile) {
|
|
1820
|
-
const failedLookup =
|
|
1428
|
+
const failedLookup = ts7.resolveModuleName(url + RESOURCE_MARKER, fromFile, this.options, this.lookupResolutionHost);
|
|
1821
1429
|
if (failedLookup.failedLookupLocations === void 0) {
|
|
1822
1430
|
throw new Error(`Internal error: expected to find failedLookupLocations during resolution of resource '${url}' in context of ${fromFile}`);
|
|
1823
1431
|
}
|
|
@@ -1852,7 +1460,7 @@ function createLookupResolutionHost(adapter) {
|
|
|
1852
1460
|
};
|
|
1853
1461
|
}
|
|
1854
1462
|
|
|
1855
|
-
// bazel-out/
|
|
1463
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/dependency.mjs
|
|
1856
1464
|
var MetadataDtsModuleScopeResolver = class {
|
|
1857
1465
|
constructor(dtsMetaReader, aliasingHost) {
|
|
1858
1466
|
this.dtsMetaReader = dtsMetaReader;
|
|
@@ -1938,9 +1546,9 @@ var MetadataDtsModuleScopeResolver = class {
|
|
|
1938
1546
|
}
|
|
1939
1547
|
};
|
|
1940
1548
|
|
|
1941
|
-
// bazel-out/
|
|
1549
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/local.mjs
|
|
1942
1550
|
import { ExternalExpr } from "@angular/compiler";
|
|
1943
|
-
import
|
|
1551
|
+
import ts8 from "typescript";
|
|
1944
1552
|
var LocalModuleScopeRegistry = class {
|
|
1945
1553
|
constructor(localReader, dependencyScopeReader, refEmitter, aliasingHost) {
|
|
1946
1554
|
this.localReader = localReader;
|
|
@@ -2141,7 +1749,7 @@ var LocalModuleScopeRegistry = class {
|
|
|
2141
1749
|
}
|
|
2142
1750
|
getExportedScope(ref, diagnostics, ownerForErrors, type) {
|
|
2143
1751
|
if (ref.node.getSourceFile().isDeclarationFile) {
|
|
2144
|
-
if (!
|
|
1752
|
+
if (!ts8.isClassDeclaration(ref.node)) {
|
|
2145
1753
|
const code = type === "import" ? ErrorCode.NGMODULE_INVALID_IMPORT : ErrorCode.NGMODULE_INVALID_EXPORT;
|
|
2146
1754
|
diagnostics.push(makeDiagnostic(code, identifierOfNode(ref.node) || ref.node, `Appears in the NgModule.${type}s of ${nodeNameForError(ownerForErrors)}, but could not be resolved to an NgModule`));
|
|
2147
1755
|
return "invalid";
|
|
@@ -2248,9 +1856,9 @@ function reexportCollision(module, refA, refB) {
|
|
|
2248
1856
|
]);
|
|
2249
1857
|
}
|
|
2250
1858
|
|
|
2251
|
-
// bazel-out/
|
|
1859
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/scope/src/typecheck.mjs
|
|
2252
1860
|
import { CssSelector, SelectorMatcher } from "@angular/compiler";
|
|
2253
|
-
import
|
|
1861
|
+
import ts9 from "typescript";
|
|
2254
1862
|
var TypeCheckScopeRegistry = class {
|
|
2255
1863
|
constructor(scopeReader, metaReader) {
|
|
2256
1864
|
this.scopeReader = scopeReader;
|
|
@@ -2283,8 +1891,8 @@ var TypeCheckScopeRegistry = class {
|
|
|
2283
1891
|
}
|
|
2284
1892
|
}
|
|
2285
1893
|
for (const { name, ref } of scope.compilation.pipes) {
|
|
2286
|
-
if (!
|
|
2287
|
-
throw new Error(`Unexpected non-class declaration ${
|
|
1894
|
+
if (!ts9.isClassDeclaration(ref.node)) {
|
|
1895
|
+
throw new Error(`Unexpected non-class declaration ${ts9.SyntaxKind[ref.node.kind]} for pipe ${ref.debugName}`);
|
|
2288
1896
|
}
|
|
2289
1897
|
pipes.set(name, ref);
|
|
2290
1898
|
}
|
|
@@ -2309,11 +1917,11 @@ var TypeCheckScopeRegistry = class {
|
|
|
2309
1917
|
}
|
|
2310
1918
|
};
|
|
2311
1919
|
|
|
2312
|
-
// bazel-out/
|
|
1920
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/checker.mjs
|
|
2313
1921
|
import { CssSelector as CssSelector2, DomElementSchemaRegistry as DomElementSchemaRegistry2 } from "@angular/compiler";
|
|
2314
1922
|
|
|
2315
|
-
// bazel-out/
|
|
2316
|
-
import
|
|
1923
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/diagnostics/src/diagnostic.mjs
|
|
1924
|
+
import ts10 from "typescript";
|
|
2317
1925
|
function makeTemplateDiagnostic(templateId, mapping, span, category, code, messageText, relatedMessages) {
|
|
2318
1926
|
if (mapping.type === "direct") {
|
|
2319
1927
|
let relatedInformation = void 0;
|
|
@@ -2321,7 +1929,7 @@ function makeTemplateDiagnostic(templateId, mapping, span, category, code, messa
|
|
|
2321
1929
|
relatedInformation = [];
|
|
2322
1930
|
for (const relatedMessage of relatedMessages) {
|
|
2323
1931
|
relatedInformation.push({
|
|
2324
|
-
category:
|
|
1932
|
+
category: ts10.DiagnosticCategory.Message,
|
|
2325
1933
|
code: 0,
|
|
2326
1934
|
file: relatedMessage.sourceFile,
|
|
2327
1935
|
start: relatedMessage.start,
|
|
@@ -2346,12 +1954,12 @@ function makeTemplateDiagnostic(templateId, mapping, span, category, code, messa
|
|
|
2346
1954
|
const componentSf = mapping.componentClass.getSourceFile();
|
|
2347
1955
|
const componentName = mapping.componentClass.name.text;
|
|
2348
1956
|
const fileName = mapping.type === "indirect" ? `${componentSf.fileName} (${componentName} template)` : mapping.templateUrl;
|
|
2349
|
-
const sf =
|
|
1957
|
+
const sf = ts10.createSourceFile(fileName, mapping.template, ts10.ScriptTarget.Latest, false, ts10.ScriptKind.JSX);
|
|
2350
1958
|
let relatedInformation = [];
|
|
2351
1959
|
if (relatedMessages !== void 0) {
|
|
2352
1960
|
for (const relatedMessage of relatedMessages) {
|
|
2353
1961
|
relatedInformation.push({
|
|
2354
|
-
category:
|
|
1962
|
+
category: ts10.DiagnosticCategory.Message,
|
|
2355
1963
|
code: 0,
|
|
2356
1964
|
file: relatedMessage.sourceFile,
|
|
2357
1965
|
start: relatedMessage.start,
|
|
@@ -2361,7 +1969,7 @@ function makeTemplateDiagnostic(templateId, mapping, span, category, code, messa
|
|
|
2361
1969
|
}
|
|
2362
1970
|
}
|
|
2363
1971
|
relatedInformation.push({
|
|
2364
|
-
category:
|
|
1972
|
+
category: ts10.DiagnosticCategory.Message,
|
|
2365
1973
|
code: 0,
|
|
2366
1974
|
file: componentSf,
|
|
2367
1975
|
start: mapping.node.getStart(),
|
|
@@ -2385,7 +1993,7 @@ function makeTemplateDiagnostic(templateId, mapping, span, category, code, messa
|
|
|
2385
1993
|
}
|
|
2386
1994
|
}
|
|
2387
1995
|
|
|
2388
|
-
// bazel-out/
|
|
1996
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/diagnostics/src/id.mjs
|
|
2389
1997
|
var TEMPLATE_ID = Symbol("ngTemplateId");
|
|
2390
1998
|
var NEXT_TEMPLATE_ID = Symbol("ngNextTemplateId");
|
|
2391
1999
|
function getTemplateId(clazz) {
|
|
@@ -2402,17 +2010,17 @@ function allocateTemplateId(sf) {
|
|
|
2402
2010
|
return `tcb${sf[NEXT_TEMPLATE_ID]++}`;
|
|
2403
2011
|
}
|
|
2404
2012
|
|
|
2405
|
-
// bazel-out/
|
|
2013
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/completion.mjs
|
|
2406
2014
|
import { EmptyExpr, ImplicitReceiver as ImplicitReceiver2, PropertyRead as PropertyRead2, PropertyWrite as PropertyWrite2, SafePropertyRead, TmplAstReference as TmplAstReference2, TmplAstTextAttribute } from "@angular/compiler";
|
|
2407
|
-
import
|
|
2015
|
+
import ts12 from "typescript";
|
|
2408
2016
|
|
|
2409
|
-
// bazel-out/
|
|
2017
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/comments.mjs
|
|
2410
2018
|
import { AbsoluteSourceSpan as AbsoluteSourceSpan2 } from "@angular/compiler";
|
|
2411
|
-
import
|
|
2019
|
+
import ts11 from "typescript";
|
|
2412
2020
|
var parseSpanComment = /^(\d+),(\d+)$/;
|
|
2413
2021
|
function readSpanComment(node, sourceFile = node.getSourceFile()) {
|
|
2414
|
-
return
|
|
2415
|
-
if (kind !==
|
|
2022
|
+
return ts11.forEachTrailingCommentRange(sourceFile.text, node.getEnd(), (pos, end, kind) => {
|
|
2023
|
+
if (kind !== ts11.SyntaxKind.MultiLineCommentTrivia) {
|
|
2416
2024
|
return null;
|
|
2417
2025
|
}
|
|
2418
2026
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -2435,15 +2043,15 @@ var ExpressionIdentifier;
|
|
|
2435
2043
|
ExpressionIdentifier2["EVENT_PARAMETER"] = "EP";
|
|
2436
2044
|
})(ExpressionIdentifier || (ExpressionIdentifier = {}));
|
|
2437
2045
|
function addExpressionIdentifier(node, identifier) {
|
|
2438
|
-
|
|
2046
|
+
ts11.addSyntheticTrailingComment(node, ts11.SyntaxKind.MultiLineCommentTrivia, `${CommentTriviaType.EXPRESSION_TYPE_IDENTIFIER}:${identifier}`, false);
|
|
2439
2047
|
}
|
|
2440
2048
|
var IGNORE_FOR_DIAGNOSTICS_MARKER = `${CommentTriviaType.DIAGNOSTIC}:ignore`;
|
|
2441
2049
|
function markIgnoreDiagnostics(node) {
|
|
2442
|
-
|
|
2050
|
+
ts11.addSyntheticTrailingComment(node, ts11.SyntaxKind.MultiLineCommentTrivia, IGNORE_FOR_DIAGNOSTICS_MARKER, false);
|
|
2443
2051
|
}
|
|
2444
2052
|
function hasIgnoreForDiagnosticsMarker(node, sourceFile) {
|
|
2445
|
-
return
|
|
2446
|
-
if (kind !==
|
|
2053
|
+
return ts11.forEachTrailingCommentRange(sourceFile.text, node.getEnd(), (pos, end, kind) => {
|
|
2054
|
+
if (kind !== ts11.SyntaxKind.MultiLineCommentTrivia) {
|
|
2447
2055
|
return null;
|
|
2448
2056
|
}
|
|
2449
2057
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -2517,8 +2125,8 @@ function findAllMatchingNodes(tcb, opts) {
|
|
|
2517
2125
|
return results;
|
|
2518
2126
|
}
|
|
2519
2127
|
function hasExpressionIdentifier(sourceFile, node, identifier) {
|
|
2520
|
-
return
|
|
2521
|
-
if (kind !==
|
|
2128
|
+
return ts11.forEachTrailingCommentRange(sourceFile.text, node.getEnd(), (pos, end, kind) => {
|
|
2129
|
+
if (kind !== ts11.SyntaxKind.MultiLineCommentTrivia) {
|
|
2522
2130
|
return false;
|
|
2523
2131
|
}
|
|
2524
2132
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -2526,7 +2134,7 @@ function hasExpressionIdentifier(sourceFile, node, identifier) {
|
|
|
2526
2134
|
}) || false;
|
|
2527
2135
|
}
|
|
2528
2136
|
|
|
2529
|
-
// bazel-out/
|
|
2137
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/completion.mjs
|
|
2530
2138
|
var CompletionEngine = class {
|
|
2531
2139
|
constructor(tcb, data, shimPath) {
|
|
2532
2140
|
this.tcb = tcb;
|
|
@@ -2535,7 +2143,7 @@ var CompletionEngine = class {
|
|
|
2535
2143
|
this.templateContextCache = /* @__PURE__ */ new Map();
|
|
2536
2144
|
this.expressionCompletionCache = /* @__PURE__ */ new Map();
|
|
2537
2145
|
const globalRead = findFirstMatchingNode(this.tcb, {
|
|
2538
|
-
filter:
|
|
2146
|
+
filter: ts12.isPropertyAccessExpression,
|
|
2539
2147
|
withExpressionIdentifier: ExpressionIdentifier.COMPONENT_COMPLETION
|
|
2540
2148
|
});
|
|
2541
2149
|
if (globalRead !== null) {
|
|
@@ -2558,7 +2166,7 @@ var CompletionEngine = class {
|
|
|
2558
2166
|
let nodeContext = null;
|
|
2559
2167
|
if (node instanceof EmptyExpr) {
|
|
2560
2168
|
const nodeLocation = findFirstMatchingNode(this.tcb, {
|
|
2561
|
-
filter:
|
|
2169
|
+
filter: ts12.isIdentifier,
|
|
2562
2170
|
withSpan: node.sourceSpan
|
|
2563
2171
|
});
|
|
2564
2172
|
if (nodeLocation !== null) {
|
|
@@ -2570,7 +2178,7 @@ var CompletionEngine = class {
|
|
|
2570
2178
|
}
|
|
2571
2179
|
if (node instanceof PropertyRead2 && node.receiver instanceof ImplicitReceiver2) {
|
|
2572
2180
|
const nodeLocation = findFirstMatchingNode(this.tcb, {
|
|
2573
|
-
filter:
|
|
2181
|
+
filter: ts12.isPropertyAccessExpression,
|
|
2574
2182
|
withSpan: node.sourceSpan
|
|
2575
2183
|
});
|
|
2576
2184
|
if (nodeLocation) {
|
|
@@ -2593,21 +2201,21 @@ var CompletionEngine = class {
|
|
|
2593
2201
|
let tsExpr = null;
|
|
2594
2202
|
if (expr instanceof PropertyRead2 || expr instanceof PropertyWrite2) {
|
|
2595
2203
|
tsExpr = findFirstMatchingNode(this.tcb, {
|
|
2596
|
-
filter:
|
|
2204
|
+
filter: ts12.isPropertyAccessExpression,
|
|
2597
2205
|
withSpan: expr.nameSpan
|
|
2598
2206
|
});
|
|
2599
2207
|
} else if (expr instanceof SafePropertyRead) {
|
|
2600
2208
|
const ternaryExpr = findFirstMatchingNode(this.tcb, {
|
|
2601
|
-
filter:
|
|
2209
|
+
filter: ts12.isParenthesizedExpression,
|
|
2602
2210
|
withSpan: expr.sourceSpan
|
|
2603
2211
|
});
|
|
2604
|
-
if (ternaryExpr === null || !
|
|
2212
|
+
if (ternaryExpr === null || !ts12.isConditionalExpression(ternaryExpr.expression)) {
|
|
2605
2213
|
return null;
|
|
2606
2214
|
}
|
|
2607
2215
|
const whenTrue = ternaryExpr.expression.whenTrue;
|
|
2608
|
-
if (
|
|
2216
|
+
if (ts12.isPropertyAccessExpression(whenTrue)) {
|
|
2609
2217
|
tsExpr = whenTrue;
|
|
2610
|
-
} else if (
|
|
2218
|
+
} else if (ts12.isCallExpression(whenTrue) && ts12.isPropertyAccessExpression(whenTrue.expression)) {
|
|
2611
2219
|
tsExpr = whenTrue.expression;
|
|
2612
2220
|
}
|
|
2613
2221
|
}
|
|
@@ -2628,15 +2236,15 @@ var CompletionEngine = class {
|
|
|
2628
2236
|
let tsExpr = null;
|
|
2629
2237
|
if (expr instanceof TmplAstTextAttribute) {
|
|
2630
2238
|
const strNode = findFirstMatchingNode(this.tcb, {
|
|
2631
|
-
filter:
|
|
2239
|
+
filter: ts12.isParenthesizedExpression,
|
|
2632
2240
|
withSpan: expr.sourceSpan
|
|
2633
2241
|
});
|
|
2634
|
-
if (strNode !== null &&
|
|
2242
|
+
if (strNode !== null && ts12.isStringLiteral(strNode.expression)) {
|
|
2635
2243
|
tsExpr = strNode.expression;
|
|
2636
2244
|
}
|
|
2637
2245
|
} else {
|
|
2638
2246
|
tsExpr = findFirstMatchingNode(this.tcb, {
|
|
2639
|
-
filter: (n) =>
|
|
2247
|
+
filter: (n) => ts12.isStringLiteral(n) || ts12.isNumericLiteral(n),
|
|
2640
2248
|
withSpan: expr.sourceSpan
|
|
2641
2249
|
});
|
|
2642
2250
|
}
|
|
@@ -2644,7 +2252,7 @@ var CompletionEngine = class {
|
|
|
2644
2252
|
return null;
|
|
2645
2253
|
}
|
|
2646
2254
|
let positionInShimFile = tsExpr.getEnd();
|
|
2647
|
-
if (
|
|
2255
|
+
if (ts12.isStringLiteral(tsExpr)) {
|
|
2648
2256
|
positionInShimFile -= 1;
|
|
2649
2257
|
}
|
|
2650
2258
|
const res = {
|
|
@@ -2677,12 +2285,12 @@ var CompletionEngine = class {
|
|
|
2677
2285
|
}
|
|
2678
2286
|
};
|
|
2679
2287
|
|
|
2680
|
-
// bazel-out/
|
|
2681
|
-
import
|
|
2288
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/context.mjs
|
|
2289
|
+
import ts26 from "typescript";
|
|
2682
2290
|
|
|
2683
|
-
// bazel-out/
|
|
2291
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/dom.mjs
|
|
2684
2292
|
import { DomElementSchemaRegistry } from "@angular/compiler";
|
|
2685
|
-
import
|
|
2293
|
+
import ts13 from "typescript";
|
|
2686
2294
|
var REGISTRY = new DomElementSchemaRegistry();
|
|
2687
2295
|
var REMOVE_XHTML_REGEX = /^:xhtml:/;
|
|
2688
2296
|
var RegistryDomSchemaChecker = class {
|
|
@@ -2706,7 +2314,7 @@ var RegistryDomSchemaChecker = class {
|
|
|
2706
2314
|
} else {
|
|
2707
2315
|
errorMsg += `2. To allow any element add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component.`;
|
|
2708
2316
|
}
|
|
2709
|
-
const diag = makeTemplateDiagnostic(id, mapping, element.startSourceSpan,
|
|
2317
|
+
const diag = makeTemplateDiagnostic(id, mapping, element.startSourceSpan, ts13.DiagnosticCategory.Error, ngErrorCode(ErrorCode.SCHEMA_INVALID_ELEMENT), errorMsg);
|
|
2710
2318
|
this._diagnostics.push(diag);
|
|
2711
2319
|
}
|
|
2712
2320
|
}
|
|
@@ -2724,70 +2332,70 @@ var RegistryDomSchemaChecker = class {
|
|
|
2724
2332
|
2. If '${element.name}' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the '@NgModule.schemas' of this component to suppress this message.
|
|
2725
2333
|
3. To allow any property add 'NO_ERRORS_SCHEMA' to the '@NgModule.schemas' of this component.`;
|
|
2726
2334
|
}
|
|
2727
|
-
const diag = makeTemplateDiagnostic(id, mapping, span,
|
|
2335
|
+
const diag = makeTemplateDiagnostic(id, mapping, span, ts13.DiagnosticCategory.Error, ngErrorCode(ErrorCode.SCHEMA_INVALID_ATTRIBUTE), errorMsg);
|
|
2728
2336
|
this._diagnostics.push(diag);
|
|
2729
2337
|
}
|
|
2730
2338
|
}
|
|
2731
2339
|
};
|
|
2732
2340
|
|
|
2733
|
-
// bazel-out/
|
|
2734
|
-
import { ExpressionType, ExternalExpr as ExternalExpr2 } from "@angular/compiler";
|
|
2735
|
-
import
|
|
2341
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/environment.mjs
|
|
2342
|
+
import { ExpressionType, ExternalExpr as ExternalExpr2, TypeModifier } from "@angular/compiler";
|
|
2343
|
+
import ts19 from "typescript";
|
|
2736
2344
|
|
|
2737
|
-
// bazel-out/
|
|
2738
|
-
import
|
|
2345
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/ts_util.mjs
|
|
2346
|
+
import ts14 from "typescript";
|
|
2739
2347
|
var SAFE_TO_CAST_WITHOUT_PARENS = /* @__PURE__ */ new Set([
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
|
|
2744
|
-
|
|
2745
|
-
|
|
2746
|
-
|
|
2747
|
-
|
|
2748
|
-
|
|
2749
|
-
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
|
|
2753
|
-
|
|
2348
|
+
ts14.SyntaxKind.ParenthesizedExpression,
|
|
2349
|
+
ts14.SyntaxKind.Identifier,
|
|
2350
|
+
ts14.SyntaxKind.CallExpression,
|
|
2351
|
+
ts14.SyntaxKind.NonNullExpression,
|
|
2352
|
+
ts14.SyntaxKind.ElementAccessExpression,
|
|
2353
|
+
ts14.SyntaxKind.PropertyAccessExpression,
|
|
2354
|
+
ts14.SyntaxKind.ArrayLiteralExpression,
|
|
2355
|
+
ts14.SyntaxKind.ObjectLiteralExpression,
|
|
2356
|
+
ts14.SyntaxKind.StringLiteral,
|
|
2357
|
+
ts14.SyntaxKind.NumericLiteral,
|
|
2358
|
+
ts14.SyntaxKind.TrueKeyword,
|
|
2359
|
+
ts14.SyntaxKind.FalseKeyword,
|
|
2360
|
+
ts14.SyntaxKind.NullKeyword,
|
|
2361
|
+
ts14.SyntaxKind.UndefinedKeyword
|
|
2754
2362
|
]);
|
|
2755
2363
|
function tsCastToAny(expr) {
|
|
2756
2364
|
if (!SAFE_TO_CAST_WITHOUT_PARENS.has(expr.kind)) {
|
|
2757
|
-
expr =
|
|
2365
|
+
expr = ts14.createParen(expr);
|
|
2758
2366
|
}
|
|
2759
|
-
return
|
|
2367
|
+
return ts14.createParen(ts14.createAsExpression(expr, ts14.createKeywordTypeNode(ts14.SyntaxKind.AnyKeyword)));
|
|
2760
2368
|
}
|
|
2761
2369
|
function tsCreateElement(tagName) {
|
|
2762
|
-
const createElement =
|
|
2763
|
-
return
|
|
2370
|
+
const createElement = ts14.createPropertyAccess(ts14.createIdentifier("document"), "createElement");
|
|
2371
|
+
return ts14.createCall(createElement, void 0, [ts14.createLiteral(tagName)]);
|
|
2764
2372
|
}
|
|
2765
2373
|
function tsDeclareVariable(id, type) {
|
|
2766
|
-
const decl =
|
|
2767
|
-
return
|
|
2374
|
+
const decl = ts14.createVariableDeclaration(id, type, ts14.createNonNullExpression(ts14.createNull()));
|
|
2375
|
+
return ts14.createVariableStatement(void 0, [decl]);
|
|
2768
2376
|
}
|
|
2769
2377
|
function tsCreateTypeQueryForCoercedInput(typeName, coercedInputName) {
|
|
2770
|
-
return
|
|
2378
|
+
return ts14.createTypeQueryNode(ts14.createQualifiedName(typeName, `ngAcceptInputType_${coercedInputName}`));
|
|
2771
2379
|
}
|
|
2772
2380
|
function tsCreateVariable(id, initializer) {
|
|
2773
|
-
const decl =
|
|
2774
|
-
return
|
|
2381
|
+
const decl = ts14.createVariableDeclaration(id, void 0, initializer);
|
|
2382
|
+
return ts14.createVariableStatement(void 0, [decl]);
|
|
2775
2383
|
}
|
|
2776
2384
|
function tsCallMethod(receiver, methodName, args = []) {
|
|
2777
|
-
const methodAccess =
|
|
2778
|
-
return
|
|
2385
|
+
const methodAccess = ts14.createPropertyAccess(receiver, methodName);
|
|
2386
|
+
return ts14.createCall(methodAccess, void 0, args);
|
|
2779
2387
|
}
|
|
2780
2388
|
function checkIfClassIsExported(node) {
|
|
2781
|
-
if (node.modifiers !== void 0 && node.modifiers.some((mod) => mod.kind ===
|
|
2389
|
+
if (node.modifiers !== void 0 && node.modifiers.some((mod) => mod.kind === ts14.SyntaxKind.ExportKeyword)) {
|
|
2782
2390
|
return true;
|
|
2783
|
-
} else if (node.parent !== void 0 &&
|
|
2391
|
+
} else if (node.parent !== void 0 && ts14.isSourceFile(node.parent) && checkIfFileHasExport(node.parent, node.name.text)) {
|
|
2784
2392
|
return true;
|
|
2785
2393
|
}
|
|
2786
2394
|
return false;
|
|
2787
2395
|
}
|
|
2788
2396
|
function checkIfFileHasExport(sf, name) {
|
|
2789
2397
|
for (const stmt of sf.statements) {
|
|
2790
|
-
if (
|
|
2398
|
+
if (ts14.isExportDeclaration(stmt) && stmt.exportClause !== void 0 && ts14.isNamedExports(stmt.exportClause)) {
|
|
2791
2399
|
for (const element of stmt.exportClause.elements) {
|
|
2792
2400
|
if (element.propertyName === void 0 && element.name.text === name) {
|
|
2793
2401
|
return true;
|
|
@@ -2800,20 +2408,20 @@ function checkIfFileHasExport(sf, name) {
|
|
|
2800
2408
|
return false;
|
|
2801
2409
|
}
|
|
2802
2410
|
function isAccessExpression(node) {
|
|
2803
|
-
return
|
|
2411
|
+
return ts14.isPropertyAccessExpression(node) || ts14.isElementAccessExpression(node);
|
|
2804
2412
|
}
|
|
2805
2413
|
|
|
2806
|
-
// bazel-out/
|
|
2807
|
-
import
|
|
2414
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_constructor.mjs
|
|
2415
|
+
import ts18 from "typescript";
|
|
2808
2416
|
|
|
2809
|
-
// bazel-out/
|
|
2810
|
-
import
|
|
2417
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/tcb_util.mjs
|
|
2418
|
+
import ts17 from "typescript";
|
|
2811
2419
|
|
|
2812
|
-
// bazel-out/
|
|
2813
|
-
import
|
|
2420
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_parameter_emitter.mjs
|
|
2421
|
+
import ts16 from "typescript";
|
|
2814
2422
|
|
|
2815
|
-
// bazel-out/
|
|
2816
|
-
import
|
|
2423
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_emitter.mjs
|
|
2424
|
+
import ts15 from "typescript";
|
|
2817
2425
|
var INELIGIBLE = {};
|
|
2818
2426
|
function canEmitType(type, canEmit) {
|
|
2819
2427
|
return canEmitTypeWorker(type);
|
|
@@ -2821,13 +2429,13 @@ function canEmitType(type, canEmit) {
|
|
|
2821
2429
|
return visitNode(type2) !== INELIGIBLE;
|
|
2822
2430
|
}
|
|
2823
2431
|
function visitNode(node) {
|
|
2824
|
-
if (
|
|
2432
|
+
if (ts15.isImportTypeNode(node)) {
|
|
2825
2433
|
return INELIGIBLE;
|
|
2826
2434
|
}
|
|
2827
|
-
if (
|
|
2435
|
+
if (ts15.isTypeReferenceNode(node) && !canEmitTypeReference(node)) {
|
|
2828
2436
|
return INELIGIBLE;
|
|
2829
2437
|
} else {
|
|
2830
|
-
return
|
|
2438
|
+
return ts15.forEachChild(node, visitNode);
|
|
2831
2439
|
}
|
|
2832
2440
|
}
|
|
2833
2441
|
function canEmitTypeReference(type2) {
|
|
@@ -2844,22 +2452,22 @@ var TypeEmitter = class {
|
|
|
2844
2452
|
emitType(type) {
|
|
2845
2453
|
const typeReferenceTransformer = (context) => {
|
|
2846
2454
|
const visitNode = (node) => {
|
|
2847
|
-
if (
|
|
2455
|
+
if (ts15.isImportTypeNode(node)) {
|
|
2848
2456
|
throw new Error("Unable to emit import type");
|
|
2849
2457
|
}
|
|
2850
|
-
if (
|
|
2458
|
+
if (ts15.isTypeReferenceNode(node)) {
|
|
2851
2459
|
return this.emitTypeReference(node);
|
|
2852
|
-
} else if (
|
|
2853
|
-
const clone =
|
|
2854
|
-
|
|
2460
|
+
} else if (ts15.isLiteralExpression(node)) {
|
|
2461
|
+
const clone = ts15.getMutableClone(node);
|
|
2462
|
+
ts15.setTextRange(clone, { pos: -1, end: -1 });
|
|
2855
2463
|
return clone;
|
|
2856
2464
|
} else {
|
|
2857
|
-
return
|
|
2465
|
+
return ts15.visitEachChild(node, visitNode, context);
|
|
2858
2466
|
}
|
|
2859
2467
|
};
|
|
2860
|
-
return (node) =>
|
|
2468
|
+
return (node) => ts15.visitNode(node, visitNode);
|
|
2861
2469
|
};
|
|
2862
|
-
return
|
|
2470
|
+
return ts15.transform(type, [typeReferenceTransformer]).transformed[0];
|
|
2863
2471
|
}
|
|
2864
2472
|
emitTypeReference(type) {
|
|
2865
2473
|
const translatedType = this.translator(type);
|
|
@@ -2868,13 +2476,13 @@ var TypeEmitter = class {
|
|
|
2868
2476
|
}
|
|
2869
2477
|
let typeArguments = void 0;
|
|
2870
2478
|
if (type.typeArguments !== void 0) {
|
|
2871
|
-
typeArguments =
|
|
2479
|
+
typeArguments = ts15.createNodeArray(type.typeArguments.map((typeArg) => this.emitType(typeArg)));
|
|
2872
2480
|
}
|
|
2873
|
-
return
|
|
2481
|
+
return ts15.updateTypeReferenceNode(type, translatedType.typeName, typeArguments);
|
|
2874
2482
|
}
|
|
2875
2483
|
};
|
|
2876
2484
|
|
|
2877
|
-
// bazel-out/
|
|
2485
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_parameter_emitter.mjs
|
|
2878
2486
|
var TypeParameterEmitter = class {
|
|
2879
2487
|
constructor(typeParameters, reflector) {
|
|
2880
2488
|
this.typeParameters = typeParameters;
|
|
@@ -2911,11 +2519,11 @@ var TypeParameterEmitter = class {
|
|
|
2911
2519
|
return this.typeParameters.map((typeParam) => {
|
|
2912
2520
|
const constraint = typeParam.constraint !== void 0 ? emitter.emitType(typeParam.constraint) : void 0;
|
|
2913
2521
|
const defaultType = typeParam.default !== void 0 ? emitter.emitType(typeParam.default) : void 0;
|
|
2914
|
-
return
|
|
2522
|
+
return ts16.updateTypeParameterDeclaration(typeParam, typeParam.name, constraint, defaultType);
|
|
2915
2523
|
});
|
|
2916
2524
|
}
|
|
2917
2525
|
resolveTypeReference(type) {
|
|
2918
|
-
const target =
|
|
2526
|
+
const target = ts16.isIdentifier(type.typeName) ? type.typeName : type.typeName.right;
|
|
2919
2527
|
const declaration = this.reflector.getDeclarationOfIdentifier(target);
|
|
2920
2528
|
if (declaration === null || declaration.node === null) {
|
|
2921
2529
|
return null;
|
|
@@ -2941,8 +2549,8 @@ var TypeParameterEmitter = class {
|
|
|
2941
2549
|
if (typeNode === null) {
|
|
2942
2550
|
return null;
|
|
2943
2551
|
}
|
|
2944
|
-
if (!
|
|
2945
|
-
throw new Error(`Expected TypeReferenceNode for emitted reference, got ${
|
|
2552
|
+
if (!ts16.isTypeReferenceNode(typeNode)) {
|
|
2553
|
+
throw new Error(`Expected TypeReferenceNode for emitted reference, got ${ts16.SyntaxKind[typeNode.kind]}.`);
|
|
2946
2554
|
}
|
|
2947
2555
|
return typeNode;
|
|
2948
2556
|
}
|
|
@@ -2951,7 +2559,7 @@ var TypeParameterEmitter = class {
|
|
|
2951
2559
|
}
|
|
2952
2560
|
};
|
|
2953
2561
|
|
|
2954
|
-
// bazel-out/
|
|
2562
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/tcb_util.mjs
|
|
2955
2563
|
var TcbInliningRequirement;
|
|
2956
2564
|
(function(TcbInliningRequirement2) {
|
|
2957
2565
|
TcbInliningRequirement2[TcbInliningRequirement2["MustInline"] = 0] = "MustInline";
|
|
@@ -2984,14 +2592,14 @@ function getTemplateMapping(shimSf, position, resolver, isDiagnosticRequest) {
|
|
|
2984
2592
|
}
|
|
2985
2593
|
function findTypeCheckBlock(file, id, isDiagnosticRequest) {
|
|
2986
2594
|
for (const stmt of file.statements) {
|
|
2987
|
-
if (
|
|
2595
|
+
if (ts17.isFunctionDeclaration(stmt) && getTemplateId2(stmt, file, isDiagnosticRequest) === id) {
|
|
2988
2596
|
return stmt;
|
|
2989
2597
|
}
|
|
2990
2598
|
}
|
|
2991
2599
|
return null;
|
|
2992
2600
|
}
|
|
2993
2601
|
function findSourceLocation(node, sourceFile, isDiagnosticsRequest) {
|
|
2994
|
-
while (node !== void 0 && !
|
|
2602
|
+
while (node !== void 0 && !ts17.isFunctionDeclaration(node)) {
|
|
2995
2603
|
if (hasIgnoreForDiagnosticsMarker(node, sourceFile) && isDiagnosticsRequest) {
|
|
2996
2604
|
return null;
|
|
2997
2605
|
}
|
|
@@ -3008,7 +2616,7 @@ function findSourceLocation(node, sourceFile, isDiagnosticsRequest) {
|
|
|
3008
2616
|
return null;
|
|
3009
2617
|
}
|
|
3010
2618
|
function getTemplateId2(node, sourceFile, isDiagnosticRequest) {
|
|
3011
|
-
while (!
|
|
2619
|
+
while (!ts17.isFunctionDeclaration(node)) {
|
|
3012
2620
|
if (hasIgnoreForDiagnosticsMarker(node, sourceFile) && isDiagnosticRequest) {
|
|
3013
2621
|
return null;
|
|
3014
2622
|
}
|
|
@@ -3018,8 +2626,8 @@ function getTemplateId2(node, sourceFile, isDiagnosticRequest) {
|
|
|
3018
2626
|
}
|
|
3019
2627
|
}
|
|
3020
2628
|
const start = node.getFullStart();
|
|
3021
|
-
return
|
|
3022
|
-
if (kind !==
|
|
2629
|
+
return ts17.forEachLeadingCommentRange(sourceFile.text, start, (pos, end, kind) => {
|
|
2630
|
+
if (kind !== ts17.SyntaxKind.MultiLineCommentTrivia) {
|
|
3023
2631
|
return null;
|
|
3024
2632
|
}
|
|
3025
2633
|
const commentText = sourceFile.text.substring(pos + 2, end - 2);
|
|
@@ -3031,32 +2639,32 @@ function checkIfGenericTypeBoundsCanBeEmitted(node, reflector, env) {
|
|
|
3031
2639
|
return emitter.canEmit((ref) => env.canReferenceType(ref));
|
|
3032
2640
|
}
|
|
3033
2641
|
|
|
3034
|
-
// bazel-out/
|
|
2642
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_constructor.mjs
|
|
3035
2643
|
function generateTypeCtorDeclarationFn(node, meta, nodeTypeRef, typeParams) {
|
|
3036
2644
|
const rawTypeArgs = typeParams !== void 0 ? generateGenericArgs(typeParams) : void 0;
|
|
3037
|
-
const rawType =
|
|
2645
|
+
const rawType = ts18.createTypeReferenceNode(nodeTypeRef, rawTypeArgs);
|
|
3038
2646
|
const initParam = constructTypeCtorParameter(node, meta, rawType);
|
|
3039
2647
|
const typeParameters = typeParametersWithDefaultTypes(typeParams);
|
|
3040
2648
|
if (meta.body) {
|
|
3041
|
-
const fnType =
|
|
3042
|
-
const decl =
|
|
3043
|
-
const declList =
|
|
3044
|
-
return
|
|
2649
|
+
const fnType = ts18.createFunctionTypeNode(typeParameters, [initParam], rawType);
|
|
2650
|
+
const decl = ts18.createVariableDeclaration(meta.fnName, fnType, ts18.createNonNullExpression(ts18.createNull()));
|
|
2651
|
+
const declList = ts18.createVariableDeclarationList([decl], ts18.NodeFlags.Const);
|
|
2652
|
+
return ts18.createVariableStatement(void 0, declList);
|
|
3045
2653
|
} else {
|
|
3046
|
-
return
|
|
2654
|
+
return ts18.createFunctionDeclaration(void 0, [ts18.createModifier(ts18.SyntaxKind.DeclareKeyword)], void 0, meta.fnName, typeParameters, [initParam], rawType, void 0);
|
|
3047
2655
|
}
|
|
3048
2656
|
}
|
|
3049
2657
|
function generateInlineTypeCtor(node, meta) {
|
|
3050
2658
|
const rawTypeArgs = node.typeParameters !== void 0 ? generateGenericArgs(node.typeParameters) : void 0;
|
|
3051
|
-
const rawType =
|
|
2659
|
+
const rawType = ts18.createTypeReferenceNode(node.name, rawTypeArgs);
|
|
3052
2660
|
const initParam = constructTypeCtorParameter(node, meta, rawType);
|
|
3053
2661
|
let body = void 0;
|
|
3054
2662
|
if (meta.body) {
|
|
3055
|
-
body =
|
|
3056
|
-
|
|
2663
|
+
body = ts18.createBlock([
|
|
2664
|
+
ts18.createReturn(ts18.createNonNullExpression(ts18.createNull()))
|
|
3057
2665
|
]);
|
|
3058
2666
|
}
|
|
3059
|
-
return
|
|
2667
|
+
return ts18.createMethod(void 0, [ts18.createModifier(ts18.SyntaxKind.StaticKeyword)], void 0, meta.fnName, void 0, typeParametersWithDefaultTypes(node.typeParameters), [initParam], rawType, body);
|
|
3060
2668
|
}
|
|
3061
2669
|
function constructTypeCtorParameter(node, meta, rawType) {
|
|
3062
2670
|
let initType = null;
|
|
@@ -3065,26 +2673,26 @@ function constructTypeCtorParameter(node, meta, rawType) {
|
|
|
3065
2673
|
const coercedKeys = [];
|
|
3066
2674
|
for (const key of keys) {
|
|
3067
2675
|
if (!meta.coercedInputFields.has(key)) {
|
|
3068
|
-
plainKeys.push(
|
|
2676
|
+
plainKeys.push(ts18.createLiteralTypeNode(ts18.createStringLiteral(key)));
|
|
3069
2677
|
} else {
|
|
3070
|
-
coercedKeys.push(
|
|
2678
|
+
coercedKeys.push(ts18.createPropertySignature(void 0, key, void 0, tsCreateTypeQueryForCoercedInput(rawType.typeName, key), void 0));
|
|
3071
2679
|
}
|
|
3072
2680
|
}
|
|
3073
2681
|
if (plainKeys.length > 0) {
|
|
3074
|
-
const keyTypeUnion =
|
|
3075
|
-
initType =
|
|
2682
|
+
const keyTypeUnion = ts18.createUnionTypeNode(plainKeys);
|
|
2683
|
+
initType = ts18.createTypeReferenceNode("Pick", [rawType, keyTypeUnion]);
|
|
3076
2684
|
}
|
|
3077
2685
|
if (coercedKeys.length > 0) {
|
|
3078
|
-
const coercedLiteral =
|
|
3079
|
-
initType = initType !== null ?
|
|
2686
|
+
const coercedLiteral = ts18.createTypeLiteralNode(coercedKeys);
|
|
2687
|
+
initType = initType !== null ? ts18.createIntersectionTypeNode([initType, coercedLiteral]) : coercedLiteral;
|
|
3080
2688
|
}
|
|
3081
2689
|
if (initType === null) {
|
|
3082
|
-
initType =
|
|
2690
|
+
initType = ts18.createTypeLiteralNode([]);
|
|
3083
2691
|
}
|
|
3084
|
-
return
|
|
2692
|
+
return ts18.createParameter(void 0, void 0, void 0, "init", void 0, initType, void 0);
|
|
3085
2693
|
}
|
|
3086
2694
|
function generateGenericArgs(params) {
|
|
3087
|
-
return params.map((param) =>
|
|
2695
|
+
return params.map((param) => ts18.createTypeReferenceNode(param.name, void 0));
|
|
3088
2696
|
}
|
|
3089
2697
|
function requiresInlineTypeCtor(node, host, env) {
|
|
3090
2698
|
return !checkIfGenericTypeBoundsCanBeEmitted(node, host, env);
|
|
@@ -3095,14 +2703,14 @@ function typeParametersWithDefaultTypes(params) {
|
|
|
3095
2703
|
}
|
|
3096
2704
|
return params.map((param) => {
|
|
3097
2705
|
if (param.default === void 0) {
|
|
3098
|
-
return
|
|
2706
|
+
return ts18.updateTypeParameterDeclaration(param, param.name, param.constraint, ts18.createKeywordTypeNode(ts18.SyntaxKind.AnyKeyword));
|
|
3099
2707
|
} else {
|
|
3100
2708
|
return param;
|
|
3101
2709
|
}
|
|
3102
2710
|
});
|
|
3103
2711
|
}
|
|
3104
2712
|
|
|
3105
|
-
// bazel-out/
|
|
2713
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/environment.mjs
|
|
3106
2714
|
var Environment = class {
|
|
3107
2715
|
constructor(config, importManager, refEmitter, reflector, contextFile) {
|
|
3108
2716
|
this.config = config;
|
|
@@ -3127,13 +2735,13 @@ var Environment = class {
|
|
|
3127
2735
|
}
|
|
3128
2736
|
if (requiresInlineTypeCtor(node, this.reflector, this)) {
|
|
3129
2737
|
const ref = this.reference(dirRef);
|
|
3130
|
-
const typeCtorExpr =
|
|
2738
|
+
const typeCtorExpr = ts19.createPropertyAccess(ref, "ngTypeCtor");
|
|
3131
2739
|
this.typeCtors.set(node, typeCtorExpr);
|
|
3132
2740
|
return typeCtorExpr;
|
|
3133
2741
|
} else {
|
|
3134
2742
|
const fnName = `_ctor${this.nextIds.typeCtor++}`;
|
|
3135
2743
|
const nodeTypeRef = this.referenceType(dirRef);
|
|
3136
|
-
if (!
|
|
2744
|
+
if (!ts19.isTypeReferenceNode(nodeTypeRef)) {
|
|
3137
2745
|
throw new Error(`Expected TypeReferenceNode from reference to ${dirRef.debugName}`);
|
|
3138
2746
|
}
|
|
3139
2747
|
const meta = {
|
|
@@ -3149,7 +2757,7 @@ var Environment = class {
|
|
|
3149
2757
|
const typeParams = this.emitTypeParameters(node);
|
|
3150
2758
|
const typeCtor = generateTypeCtorDeclarationFn(node, meta, nodeTypeRef.typeName, typeParams);
|
|
3151
2759
|
this.typeCtorStatements.push(typeCtor);
|
|
3152
|
-
const fnId =
|
|
2760
|
+
const fnId = ts19.createIdentifier(fnName);
|
|
3153
2761
|
this.typeCtors.set(node, fnId);
|
|
3154
2762
|
return fnId;
|
|
3155
2763
|
}
|
|
@@ -3159,7 +2767,7 @@ var Environment = class {
|
|
|
3159
2767
|
return this.pipeInsts.get(ref.node);
|
|
3160
2768
|
}
|
|
3161
2769
|
const pipeType = this.referenceType(ref);
|
|
3162
|
-
const pipeInstId =
|
|
2770
|
+
const pipeInstId = ts19.createIdentifier(`_pipe${this.nextIds.pipeInst++}`);
|
|
3163
2771
|
this.pipeInstStatements.push(tsDeclareVariable(pipeInstId, pipeType));
|
|
3164
2772
|
this.pipeInsts.set(ref.node, pipeInstId);
|
|
3165
2773
|
return pipeInstId;
|
|
@@ -3184,7 +2792,7 @@ var Environment = class {
|
|
|
3184
2792
|
}
|
|
3185
2793
|
referenceExternalType(moduleName, name, typeParams) {
|
|
3186
2794
|
const external = new ExternalExpr2({ moduleName, name });
|
|
3187
|
-
return translateType(new ExpressionType(external,
|
|
2795
|
+
return translateType(new ExpressionType(external, TypeModifier.None, typeParams), this.importManager);
|
|
3188
2796
|
}
|
|
3189
2797
|
getPreludeStatements() {
|
|
3190
2798
|
return [
|
|
@@ -3194,9 +2802,9 @@ var Environment = class {
|
|
|
3194
2802
|
}
|
|
3195
2803
|
};
|
|
3196
2804
|
|
|
3197
|
-
// bazel-out/
|
|
2805
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/oob.mjs
|
|
3198
2806
|
import { TmplAstElement as TmplAstElement2 } from "@angular/compiler";
|
|
3199
|
-
import
|
|
2807
|
+
import ts20 from "typescript";
|
|
3200
2808
|
var OutOfBandDiagnosticRecorderImpl = class {
|
|
3201
2809
|
constructor(resolver) {
|
|
3202
2810
|
this.resolver = resolver;
|
|
@@ -3210,7 +2818,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3210
2818
|
const mapping = this.resolver.getSourceMapping(templateId);
|
|
3211
2819
|
const value = ref.value.trim();
|
|
3212
2820
|
const errorMsg = `No directive found with exportAs '${value}'.`;
|
|
3213
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, ref.valueSpan || ref.sourceSpan,
|
|
2821
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, ref.valueSpan || ref.sourceSpan, ts20.DiagnosticCategory.Error, ngErrorCode(ErrorCode.MISSING_REFERENCE_TARGET), errorMsg));
|
|
3214
2822
|
}
|
|
3215
2823
|
missingPipe(templateId, ast) {
|
|
3216
2824
|
if (this.recordedPipes.has(ast)) {
|
|
@@ -3222,7 +2830,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3222
2830
|
if (sourceSpan === null) {
|
|
3223
2831
|
throw new Error(`Assertion failure: no SourceLocation found for usage of pipe '${ast.name}'.`);
|
|
3224
2832
|
}
|
|
3225
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan,
|
|
2833
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan, ts20.DiagnosticCategory.Error, ngErrorCode(ErrorCode.MISSING_PIPE), errorMsg));
|
|
3226
2834
|
this.recordedPipes.add(ast);
|
|
3227
2835
|
}
|
|
3228
2836
|
illegalAssignmentToTemplateVar(templateId, assignment, target) {
|
|
@@ -3233,7 +2841,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3233
2841
|
if (sourceSpan === null) {
|
|
3234
2842
|
throw new Error(`Assertion failure: no SourceLocation found for property binding.`);
|
|
3235
2843
|
}
|
|
3236
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan,
|
|
2844
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, sourceSpan, ts20.DiagnosticCategory.Error, ngErrorCode(ErrorCode.WRITE_TO_READ_ONLY_VARIABLE), errorMsg, [{
|
|
3237
2845
|
text: `The variable ${assignment.name} is declared here.`,
|
|
3238
2846
|
start: ((_a = target.valueSpan) == null ? void 0 : _a.start.offset) || target.sourceSpan.start.offset,
|
|
3239
2847
|
end: ((_b = target.valueSpan) == null ? void 0 : _b.end.offset) || target.sourceSpan.end.offset,
|
|
@@ -3243,7 +2851,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3243
2851
|
duplicateTemplateVar(templateId, variable, firstDecl) {
|
|
3244
2852
|
const mapping = this.resolver.getSourceMapping(templateId);
|
|
3245
2853
|
const errorMsg = `Cannot redeclare variable '${variable.name}' as it was previously declared elsewhere for the same template.`;
|
|
3246
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, variable.sourceSpan,
|
|
2854
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, variable.sourceSpan, ts20.DiagnosticCategory.Error, ngErrorCode(ErrorCode.DUPLICATE_VARIABLE_DECLARATION), errorMsg, [{
|
|
3247
2855
|
text: `The variable '${firstDecl.name}' was first declared here.`,
|
|
3248
2856
|
start: firstDecl.sourceSpan.start.offset,
|
|
3249
2857
|
end: firstDecl.sourceSpan.end.offset,
|
|
@@ -3282,7 +2890,7 @@ var OutOfBandDiagnosticRecorderImpl = class {
|
|
|
3282
2890
|
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.
|
|
3283
2891
|
|
|
3284
2892
|
Consider enabling the 'strictTemplates' option in your tsconfig.json for better type inference within this template.`;
|
|
3285
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, diagnosticVar.keySpan,
|
|
2893
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, diagnosticVar.keySpan, ts20.DiagnosticCategory.Suggestion, ngErrorCode(ErrorCode.SUGGEST_SUBOPTIMAL_TYPE_INFERENCE), message));
|
|
3286
2894
|
}
|
|
3287
2895
|
splitTwoWayBinding(templateId, input, output, inputConsumer, outputConsumer) {
|
|
3288
2896
|
const mapping = this.resolver.getSourceMapping(templateId);
|
|
@@ -3316,7 +2924,7 @@ Consider enabling the 'strictTemplates' option in your tsconfig.json for better
|
|
|
3316
2924
|
sourceFile: outputConsumer.name.getSourceFile()
|
|
3317
2925
|
});
|
|
3318
2926
|
}
|
|
3319
|
-
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, input.keySpan,
|
|
2927
|
+
this._diagnostics.push(makeTemplateDiagnostic(templateId, mapping, input.keySpan, ts20.DiagnosticCategory.Error, ngErrorCode(ErrorCode.SPLIT_TWO_WAY_BINDING), errorMsg, relatedMessages));
|
|
3320
2928
|
}
|
|
3321
2929
|
};
|
|
3322
2930
|
function makeInlineDiagnostic(templateId, code, node, messageText, relatedInformation) {
|
|
@@ -3326,8 +2934,8 @@ function makeInlineDiagnostic(templateId, code, node, messageText, relatedInform
|
|
|
3326
2934
|
});
|
|
3327
2935
|
}
|
|
3328
2936
|
|
|
3329
|
-
// bazel-out/
|
|
3330
|
-
import
|
|
2937
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/shim.mjs
|
|
2938
|
+
import ts21 from "typescript";
|
|
3331
2939
|
var TypeCheckShimGenerator = class {
|
|
3332
2940
|
constructor() {
|
|
3333
2941
|
this.extensionPrefix = "ngtypecheck";
|
|
@@ -3337,25 +2945,25 @@ var TypeCheckShimGenerator = class {
|
|
|
3337
2945
|
if (priorShimSf !== null) {
|
|
3338
2946
|
return priorShimSf;
|
|
3339
2947
|
}
|
|
3340
|
-
return
|
|
2948
|
+
return ts21.createSourceFile(genFilePath, "export const USED_FOR_NG_TYPE_CHECKING = true;", ts21.ScriptTarget.Latest, true, ts21.ScriptKind.TS);
|
|
3341
2949
|
}
|
|
3342
2950
|
static shimFor(fileName) {
|
|
3343
2951
|
return absoluteFrom(fileName.replace(/\.tsx?$/, ".ngtypecheck.ts"));
|
|
3344
2952
|
}
|
|
3345
2953
|
};
|
|
3346
2954
|
|
|
3347
|
-
// bazel-out/
|
|
2955
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_check_block.mjs
|
|
3348
2956
|
import { BindingPipe, Call as Call2, DYNAMIC_TYPE, ImplicitReceiver as ImplicitReceiver4, PropertyRead as PropertyRead4, PropertyWrite as PropertyWrite3, 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";
|
|
3349
|
-
import
|
|
2957
|
+
import ts24 from "typescript";
|
|
3350
2958
|
|
|
3351
|
-
// bazel-out/
|
|
2959
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/diagnostics.mjs
|
|
3352
2960
|
import { AbsoluteSourceSpan as AbsoluteSourceSpan3 } from "@angular/compiler";
|
|
3353
|
-
import
|
|
2961
|
+
import ts22 from "typescript";
|
|
3354
2962
|
function wrapForDiagnostics(expr) {
|
|
3355
|
-
return
|
|
2963
|
+
return ts22.createParen(expr);
|
|
3356
2964
|
}
|
|
3357
2965
|
function wrapForTypeChecker(expr) {
|
|
3358
|
-
return
|
|
2966
|
+
return ts22.createParen(expr);
|
|
3359
2967
|
}
|
|
3360
2968
|
function addParseSpanInfo(node, span) {
|
|
3361
2969
|
let commentText;
|
|
@@ -3364,10 +2972,10 @@ function addParseSpanInfo(node, span) {
|
|
|
3364
2972
|
} else {
|
|
3365
2973
|
commentText = `${span.start.offset},${span.end.offset}`;
|
|
3366
2974
|
}
|
|
3367
|
-
|
|
2975
|
+
ts22.addSyntheticTrailingComment(node, ts22.SyntaxKind.MultiLineCommentTrivia, commentText, false);
|
|
3368
2976
|
}
|
|
3369
2977
|
function addTemplateId(tcb, id) {
|
|
3370
|
-
|
|
2978
|
+
ts22.addSyntheticLeadingComment(tcb, ts22.SyntaxKind.MultiLineCommentTrivia, id, true);
|
|
3371
2979
|
}
|
|
3372
2980
|
function shouldReportDiagnostic(diagnostic) {
|
|
3373
2981
|
const { code } = diagnostic;
|
|
@@ -3394,34 +3002,34 @@ function translateDiagnostic(diagnostic, resolver) {
|
|
|
3394
3002
|
return makeTemplateDiagnostic(sourceLocation.id, templateSourceMapping, span, diagnostic.category, diagnostic.code, diagnostic.messageText);
|
|
3395
3003
|
}
|
|
3396
3004
|
|
|
3397
|
-
// bazel-out/
|
|
3005
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/expression.mjs
|
|
3398
3006
|
import { ASTWithSource as ASTWithSource2, Call, EmptyExpr as EmptyExpr2, PropertyRead as PropertyRead3, SafeKeyedRead, SafePropertyRead as SafePropertyRead2 } from "@angular/compiler";
|
|
3399
|
-
import
|
|
3400
|
-
var NULL_AS_ANY =
|
|
3401
|
-
var UNDEFINED =
|
|
3007
|
+
import ts23 from "typescript";
|
|
3008
|
+
var NULL_AS_ANY = ts23.createAsExpression(ts23.createNull(), ts23.createKeywordTypeNode(ts23.SyntaxKind.AnyKeyword));
|
|
3009
|
+
var UNDEFINED = ts23.createIdentifier("undefined");
|
|
3402
3010
|
var UNARY_OPS = /* @__PURE__ */ new Map([
|
|
3403
|
-
["+",
|
|
3404
|
-
["-",
|
|
3011
|
+
["+", ts23.SyntaxKind.PlusToken],
|
|
3012
|
+
["-", ts23.SyntaxKind.MinusToken]
|
|
3405
3013
|
]);
|
|
3406
3014
|
var BINARY_OPS = /* @__PURE__ */ new Map([
|
|
3407
|
-
["+",
|
|
3408
|
-
["-",
|
|
3409
|
-
["<",
|
|
3410
|
-
[">",
|
|
3411
|
-
["<=",
|
|
3412
|
-
[">=",
|
|
3413
|
-
["==",
|
|
3414
|
-
["===",
|
|
3415
|
-
["*",
|
|
3416
|
-
["/",
|
|
3417
|
-
["%",
|
|
3418
|
-
["!=",
|
|
3419
|
-
["!==",
|
|
3420
|
-
["||",
|
|
3421
|
-
["&&",
|
|
3422
|
-
["&",
|
|
3423
|
-
["|",
|
|
3424
|
-
["??",
|
|
3015
|
+
["+", ts23.SyntaxKind.PlusToken],
|
|
3016
|
+
["-", ts23.SyntaxKind.MinusToken],
|
|
3017
|
+
["<", ts23.SyntaxKind.LessThanToken],
|
|
3018
|
+
[">", ts23.SyntaxKind.GreaterThanToken],
|
|
3019
|
+
["<=", ts23.SyntaxKind.LessThanEqualsToken],
|
|
3020
|
+
[">=", ts23.SyntaxKind.GreaterThanEqualsToken],
|
|
3021
|
+
["==", ts23.SyntaxKind.EqualsEqualsToken],
|
|
3022
|
+
["===", ts23.SyntaxKind.EqualsEqualsEqualsToken],
|
|
3023
|
+
["*", ts23.SyntaxKind.AsteriskToken],
|
|
3024
|
+
["/", ts23.SyntaxKind.SlashToken],
|
|
3025
|
+
["%", ts23.SyntaxKind.PercentToken],
|
|
3026
|
+
["!=", ts23.SyntaxKind.ExclamationEqualsToken],
|
|
3027
|
+
["!==", ts23.SyntaxKind.ExclamationEqualsEqualsToken],
|
|
3028
|
+
["||", ts23.SyntaxKind.BarBarToken],
|
|
3029
|
+
["&&", ts23.SyntaxKind.AmpersandAmpersandToken],
|
|
3030
|
+
["&", ts23.SyntaxKind.AmpersandToken],
|
|
3031
|
+
["|", ts23.SyntaxKind.BarToken],
|
|
3032
|
+
["??", ts23.SyntaxKind.QuestionQuestionToken]
|
|
3425
3033
|
]);
|
|
3426
3034
|
function astToTypescript(ast, maybeResolve, config) {
|
|
3427
3035
|
const translator = new AstTranslator(maybeResolve, config);
|
|
@@ -3437,7 +3045,7 @@ var AstTranslator = class {
|
|
|
3437
3045
|
ast = ast.ast;
|
|
3438
3046
|
}
|
|
3439
3047
|
if (ast instanceof EmptyExpr2) {
|
|
3440
|
-
const res =
|
|
3048
|
+
const res = ts23.factory.createIdentifier("undefined");
|
|
3441
3049
|
addParseSpanInfo(res, ast.sourceSpan);
|
|
3442
3050
|
return res;
|
|
3443
3051
|
}
|
|
@@ -3453,7 +3061,7 @@ var AstTranslator = class {
|
|
|
3453
3061
|
if (op === void 0) {
|
|
3454
3062
|
throw new Error(`Unsupported Unary.operator: ${ast.operator}`);
|
|
3455
3063
|
}
|
|
3456
|
-
const node = wrapForDiagnostics(
|
|
3064
|
+
const node = wrapForDiagnostics(ts23.createPrefix(op, expr));
|
|
3457
3065
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3458
3066
|
return node;
|
|
3459
3067
|
}
|
|
@@ -3464,13 +3072,13 @@ var AstTranslator = class {
|
|
|
3464
3072
|
if (op === void 0) {
|
|
3465
3073
|
throw new Error(`Unsupported Binary.operation: ${ast.operation}`);
|
|
3466
3074
|
}
|
|
3467
|
-
const node =
|
|
3075
|
+
const node = ts23.createBinary(lhs, op, rhs);
|
|
3468
3076
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3469
3077
|
return node;
|
|
3470
3078
|
}
|
|
3471
3079
|
visitChain(ast) {
|
|
3472
3080
|
const elements = ast.expressions.map((expr) => this.translate(expr));
|
|
3473
|
-
const node = wrapForDiagnostics(
|
|
3081
|
+
const node = wrapForDiagnostics(ts23.createCommaList(elements));
|
|
3474
3082
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3475
3083
|
return node;
|
|
3476
3084
|
}
|
|
@@ -3478,7 +3086,7 @@ var AstTranslator = class {
|
|
|
3478
3086
|
const condExpr = this.translate(ast.condition);
|
|
3479
3087
|
const trueExpr = this.translate(ast.trueExp);
|
|
3480
3088
|
const falseExpr = wrapForTypeChecker(this.translate(ast.falseExp));
|
|
3481
|
-
const node =
|
|
3089
|
+
const node = ts23.createParen(ts23.createConditional(condExpr, trueExpr, falseExpr));
|
|
3482
3090
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3483
3091
|
return node;
|
|
3484
3092
|
}
|
|
@@ -3489,26 +3097,26 @@ var AstTranslator = class {
|
|
|
3489
3097
|
throw new Error("Method not implemented.");
|
|
3490
3098
|
}
|
|
3491
3099
|
visitInterpolation(ast) {
|
|
3492
|
-
return ast.expressions.reduce((lhs, ast2) =>
|
|
3100
|
+
return ast.expressions.reduce((lhs, ast2) => ts23.createBinary(lhs, ts23.SyntaxKind.PlusToken, wrapForTypeChecker(this.translate(ast2))), ts23.createLiteral(""));
|
|
3493
3101
|
}
|
|
3494
3102
|
visitKeyedRead(ast) {
|
|
3495
3103
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3496
3104
|
const key = this.translate(ast.key);
|
|
3497
|
-
const node =
|
|
3105
|
+
const node = ts23.createElementAccess(receiver, key);
|
|
3498
3106
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3499
3107
|
return node;
|
|
3500
3108
|
}
|
|
3501
3109
|
visitKeyedWrite(ast) {
|
|
3502
3110
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3503
|
-
const left =
|
|
3111
|
+
const left = ts23.createElementAccess(receiver, this.translate(ast.key));
|
|
3504
3112
|
const right = wrapForTypeChecker(this.translate(ast.value));
|
|
3505
|
-
const node = wrapForDiagnostics(
|
|
3113
|
+
const node = wrapForDiagnostics(ts23.createBinary(left, ts23.SyntaxKind.EqualsToken, right));
|
|
3506
3114
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3507
3115
|
return node;
|
|
3508
3116
|
}
|
|
3509
3117
|
visitLiteralArray(ast) {
|
|
3510
3118
|
const elements = ast.expressions.map((expr) => this.translate(expr));
|
|
3511
|
-
const literal =
|
|
3119
|
+
const literal = ts23.createArrayLiteral(elements);
|
|
3512
3120
|
const node = this.config.strictLiteralTypes ? literal : tsCastToAny(literal);
|
|
3513
3121
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3514
3122
|
return node;
|
|
@@ -3516,9 +3124,9 @@ var AstTranslator = class {
|
|
|
3516
3124
|
visitLiteralMap(ast) {
|
|
3517
3125
|
const properties = ast.keys.map(({ key }, idx) => {
|
|
3518
3126
|
const value = this.translate(ast.values[idx]);
|
|
3519
|
-
return
|
|
3127
|
+
return ts23.createPropertyAssignment(ts23.createStringLiteral(key), value);
|
|
3520
3128
|
});
|
|
3521
|
-
const literal =
|
|
3129
|
+
const literal = ts23.createObjectLiteral(properties, true);
|
|
3522
3130
|
const node = this.config.strictLiteralTypes ? literal : tsCastToAny(literal);
|
|
3523
3131
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3524
3132
|
return node;
|
|
@@ -3526,18 +3134,18 @@ var AstTranslator = class {
|
|
|
3526
3134
|
visitLiteralPrimitive(ast) {
|
|
3527
3135
|
let node;
|
|
3528
3136
|
if (ast.value === void 0) {
|
|
3529
|
-
node =
|
|
3137
|
+
node = ts23.createIdentifier("undefined");
|
|
3530
3138
|
} else if (ast.value === null) {
|
|
3531
|
-
node =
|
|
3139
|
+
node = ts23.createNull();
|
|
3532
3140
|
} else {
|
|
3533
|
-
node =
|
|
3141
|
+
node = ts23.createLiteral(ast.value);
|
|
3534
3142
|
}
|
|
3535
3143
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3536
3144
|
return node;
|
|
3537
3145
|
}
|
|
3538
3146
|
visitNonNullAssert(ast) {
|
|
3539
3147
|
const expr = wrapForDiagnostics(this.translate(ast.expression));
|
|
3540
|
-
const node =
|
|
3148
|
+
const node = ts23.createNonNullExpression(expr);
|
|
3541
3149
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3542
3150
|
return node;
|
|
3543
3151
|
}
|
|
@@ -3546,13 +3154,13 @@ var AstTranslator = class {
|
|
|
3546
3154
|
}
|
|
3547
3155
|
visitPrefixNot(ast) {
|
|
3548
3156
|
const expression = wrapForDiagnostics(this.translate(ast.expression));
|
|
3549
|
-
const node =
|
|
3157
|
+
const node = ts23.createLogicalNot(expression);
|
|
3550
3158
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3551
3159
|
return node;
|
|
3552
3160
|
}
|
|
3553
3161
|
visitPropertyRead(ast) {
|
|
3554
3162
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3555
|
-
const name =
|
|
3163
|
+
const name = ts23.createPropertyAccess(receiver, ast.name);
|
|
3556
3164
|
addParseSpanInfo(name, ast.nameSpan);
|
|
3557
3165
|
const node = wrapForDiagnostics(name);
|
|
3558
3166
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
@@ -3560,12 +3168,12 @@ var AstTranslator = class {
|
|
|
3560
3168
|
}
|
|
3561
3169
|
visitPropertyWrite(ast) {
|
|
3562
3170
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3563
|
-
const left =
|
|
3171
|
+
const left = ts23.createPropertyAccess(receiver, ast.name);
|
|
3564
3172
|
addParseSpanInfo(left, ast.nameSpan);
|
|
3565
3173
|
const leftWithPath = wrapForDiagnostics(left);
|
|
3566
3174
|
addParseSpanInfo(leftWithPath, ast.sourceSpan);
|
|
3567
3175
|
const right = wrapForTypeChecker(this.translate(ast.value));
|
|
3568
|
-
const node = wrapForDiagnostics(
|
|
3176
|
+
const node = wrapForDiagnostics(ts23.createBinary(leftWithPath, ts23.SyntaxKind.EqualsToken, right));
|
|
3569
3177
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3570
3178
|
return node;
|
|
3571
3179
|
}
|
|
@@ -3576,13 +3184,13 @@ var AstTranslator = class {
|
|
|
3576
3184
|
let node;
|
|
3577
3185
|
const receiver = wrapForDiagnostics(this.translate(ast.receiver));
|
|
3578
3186
|
if (this.config.strictSafeNavigationTypes) {
|
|
3579
|
-
const expr =
|
|
3187
|
+
const expr = ts23.createPropertyAccess(ts23.createNonNullExpression(receiver), ast.name);
|
|
3580
3188
|
addParseSpanInfo(expr, ast.nameSpan);
|
|
3581
|
-
node =
|
|
3189
|
+
node = ts23.createParen(ts23.createConditional(NULL_AS_ANY, expr, UNDEFINED));
|
|
3582
3190
|
} else if (VeSafeLhsInferenceBugDetector.veWillInferAnyFor(ast)) {
|
|
3583
|
-
node =
|
|
3191
|
+
node = ts23.createPropertyAccess(tsCastToAny(receiver), ast.name);
|
|
3584
3192
|
} else {
|
|
3585
|
-
const expr =
|
|
3193
|
+
const expr = ts23.createPropertyAccess(ts23.createNonNullExpression(receiver), ast.name);
|
|
3586
3194
|
addParseSpanInfo(expr, ast.nameSpan);
|
|
3587
3195
|
node = tsCastToAny(expr);
|
|
3588
3196
|
}
|
|
@@ -3594,13 +3202,13 @@ var AstTranslator = class {
|
|
|
3594
3202
|
const key = this.translate(ast.key);
|
|
3595
3203
|
let node;
|
|
3596
3204
|
if (this.config.strictSafeNavigationTypes) {
|
|
3597
|
-
const expr =
|
|
3205
|
+
const expr = ts23.createElementAccess(ts23.createNonNullExpression(receiver), key);
|
|
3598
3206
|
addParseSpanInfo(expr, ast.sourceSpan);
|
|
3599
|
-
node =
|
|
3207
|
+
node = ts23.createParen(ts23.createConditional(NULL_AS_ANY, expr, UNDEFINED));
|
|
3600
3208
|
} else if (VeSafeLhsInferenceBugDetector.veWillInferAnyFor(ast)) {
|
|
3601
|
-
node =
|
|
3209
|
+
node = ts23.createElementAccess(tsCastToAny(receiver), key);
|
|
3602
3210
|
} else {
|
|
3603
|
-
const expr =
|
|
3211
|
+
const expr = ts23.createElementAccess(ts23.createNonNullExpression(receiver), key);
|
|
3604
3212
|
addParseSpanInfo(expr, ast.sourceSpan);
|
|
3605
3213
|
node = tsCastToAny(expr);
|
|
3606
3214
|
}
|
|
@@ -3617,7 +3225,7 @@ var AstTranslator = class {
|
|
|
3617
3225
|
expr = resolved;
|
|
3618
3226
|
} else {
|
|
3619
3227
|
const propertyReceiver = wrapForDiagnostics(this.translate(receiver.receiver));
|
|
3620
|
-
expr =
|
|
3228
|
+
expr = ts23.createPropertyAccess(propertyReceiver, receiver.name);
|
|
3621
3229
|
addParseSpanInfo(expr, receiver.nameSpan);
|
|
3622
3230
|
}
|
|
3623
3231
|
} else {
|
|
@@ -3626,15 +3234,15 @@ var AstTranslator = class {
|
|
|
3626
3234
|
let node;
|
|
3627
3235
|
if (receiver instanceof SafePropertyRead2 || receiver instanceof SafeKeyedRead) {
|
|
3628
3236
|
if (this.config.strictSafeNavigationTypes) {
|
|
3629
|
-
const call =
|
|
3630
|
-
node =
|
|
3237
|
+
const call = ts23.createCall(ts23.createNonNullExpression(expr), void 0, args);
|
|
3238
|
+
node = ts23.createParen(ts23.createConditional(NULL_AS_ANY, call, UNDEFINED));
|
|
3631
3239
|
} else if (VeSafeLhsInferenceBugDetector.veWillInferAnyFor(ast)) {
|
|
3632
|
-
node =
|
|
3240
|
+
node = ts23.createCall(tsCastToAny(expr), void 0, args);
|
|
3633
3241
|
} else {
|
|
3634
|
-
node = tsCastToAny(
|
|
3242
|
+
node = tsCastToAny(ts23.createCall(ts23.createNonNullExpression(expr), void 0, args));
|
|
3635
3243
|
}
|
|
3636
3244
|
} else {
|
|
3637
|
-
node =
|
|
3245
|
+
node = ts23.createCall(expr, void 0, args);
|
|
3638
3246
|
}
|
|
3639
3247
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
3640
3248
|
return node;
|
|
@@ -3711,7 +3319,7 @@ var VeSafeLhsInferenceBugDetector = class {
|
|
|
3711
3319
|
};
|
|
3712
3320
|
VeSafeLhsInferenceBugDetector.SINGLETON = new VeSafeLhsInferenceBugDetector();
|
|
3713
3321
|
|
|
3714
|
-
// bazel-out/
|
|
3322
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/template_semantics.mjs
|
|
3715
3323
|
import { ImplicitReceiver as ImplicitReceiver3, RecursiveAstVisitor as RecursiveAstVisitor2, TmplAstVariable } from "@angular/compiler";
|
|
3716
3324
|
var ExpressionSemanticVisitor = class extends RecursiveAstVisitor2 {
|
|
3717
3325
|
constructor(templateId, boundTarget, oob) {
|
|
@@ -3735,7 +3343,7 @@ var ExpressionSemanticVisitor = class extends RecursiveAstVisitor2 {
|
|
|
3735
3343
|
}
|
|
3736
3344
|
};
|
|
3737
3345
|
|
|
3738
|
-
// bazel-out/
|
|
3346
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_check_block.mjs
|
|
3739
3347
|
var TcbGenericContextBehavior;
|
|
3740
3348
|
(function(TcbGenericContextBehavior2) {
|
|
3741
3349
|
TcbGenericContextBehavior2[TcbGenericContextBehavior2["UseEmitter"] = 0] = "UseEmitter";
|
|
@@ -3746,7 +3354,7 @@ function generateTypeCheckBlock(env, ref, name, meta, domSchemaChecker, oobRecor
|
|
|
3746
3354
|
const tcb = new Context(env, domSchemaChecker, oobRecorder, meta.id, meta.boundTarget, meta.pipes, meta.schemas);
|
|
3747
3355
|
const scope = Scope.forNodes(tcb, null, tcb.boundTarget.target.template, null);
|
|
3748
3356
|
const ctxRawType = env.referenceType(ref);
|
|
3749
|
-
if (!
|
|
3357
|
+
if (!ts24.isTypeReferenceNode(ctxRawType)) {
|
|
3750
3358
|
throw new Error(`Expected TypeReferenceNode when referencing the ctx param for ${ref.debugName}`);
|
|
3751
3359
|
}
|
|
3752
3360
|
let typeParameters = void 0;
|
|
@@ -3758,25 +3366,25 @@ function generateTypeCheckBlock(env, ref, name, meta, domSchemaChecker, oobRecor
|
|
|
3758
3366
|
switch (genericContextBehavior) {
|
|
3759
3367
|
case TcbGenericContextBehavior.UseEmitter:
|
|
3760
3368
|
typeParameters = new TypeParameterEmitter(ref.node.typeParameters, env.reflector).emit((typeRef) => env.referenceType(typeRef));
|
|
3761
|
-
typeArguments = typeParameters.map((param) =>
|
|
3369
|
+
typeArguments = typeParameters.map((param) => ts24.factory.createTypeReferenceNode(param.name));
|
|
3762
3370
|
break;
|
|
3763
3371
|
case TcbGenericContextBehavior.CopyClassNodes:
|
|
3764
3372
|
typeParameters = [...ref.node.typeParameters];
|
|
3765
|
-
typeArguments = typeParameters.map((param) =>
|
|
3373
|
+
typeArguments = typeParameters.map((param) => ts24.factory.createTypeReferenceNode(param.name));
|
|
3766
3374
|
break;
|
|
3767
3375
|
case TcbGenericContextBehavior.FallbackToAny:
|
|
3768
|
-
typeArguments = ref.node.typeParameters.map(() =>
|
|
3376
|
+
typeArguments = ref.node.typeParameters.map(() => ts24.factory.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword));
|
|
3769
3377
|
break;
|
|
3770
3378
|
}
|
|
3771
3379
|
}
|
|
3772
3380
|
const paramList = [tcbCtxParam(ref.node, ctxRawType.typeName, typeArguments)];
|
|
3773
3381
|
const scopeStatements = scope.render();
|
|
3774
|
-
const innerBody =
|
|
3382
|
+
const innerBody = ts24.createBlock([
|
|
3775
3383
|
...env.getPreludeStatements(),
|
|
3776
3384
|
...scopeStatements
|
|
3777
3385
|
]);
|
|
3778
|
-
const body =
|
|
3779
|
-
const fnDecl =
|
|
3386
|
+
const body = ts24.createBlock([ts24.createIf(ts24.createTrue(), innerBody, void 0)]);
|
|
3387
|
+
const fnDecl = ts24.createFunctionDeclaration(void 0, void 0, void 0, name, env.config.useContextGenericType ? typeParameters : void 0, paramList, void 0, body);
|
|
3780
3388
|
addTemplateId(fnDecl, meta.id);
|
|
3781
3389
|
return fnDecl;
|
|
3782
3390
|
}
|
|
@@ -3817,7 +3425,7 @@ var TcbVariableOp = class extends TcbOp {
|
|
|
3817
3425
|
execute() {
|
|
3818
3426
|
const ctx = this.scope.resolve(this.template);
|
|
3819
3427
|
const id = this.tcb.allocateId();
|
|
3820
|
-
const initializer =
|
|
3428
|
+
const initializer = ts24.createPropertyAccess(ctx, this.variable.value || "$implicit");
|
|
3821
3429
|
addParseSpanInfo(id, this.variable.keySpan);
|
|
3822
3430
|
let variable;
|
|
3823
3431
|
if (this.variable.valueSpan !== void 0) {
|
|
@@ -3840,7 +3448,7 @@ var TcbTemplateContextOp = class extends TcbOp {
|
|
|
3840
3448
|
}
|
|
3841
3449
|
execute() {
|
|
3842
3450
|
const ctx = this.tcb.allocateId();
|
|
3843
|
-
const type =
|
|
3451
|
+
const type = ts24.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword);
|
|
3844
3452
|
this.scope.addStatement(tsDeclareVariable(ctx, type));
|
|
3845
3453
|
return ctx;
|
|
3846
3454
|
}
|
|
@@ -3893,16 +3501,16 @@ var TcbTemplateBodyOp = class extends TcbOp {
|
|
|
3893
3501
|
}
|
|
3894
3502
|
let guard = null;
|
|
3895
3503
|
if (directiveGuards.length > 0) {
|
|
3896
|
-
guard = directiveGuards.reduce((expr, dirGuard) =>
|
|
3504
|
+
guard = directiveGuards.reduce((expr, dirGuard) => ts24.createBinary(expr, ts24.SyntaxKind.AmpersandAmpersandToken, dirGuard), directiveGuards.pop());
|
|
3897
3505
|
}
|
|
3898
3506
|
const tmplScope = Scope.forNodes(this.tcb, this.scope, this.template, guard);
|
|
3899
3507
|
const statements = tmplScope.render();
|
|
3900
3508
|
if (statements.length === 0) {
|
|
3901
3509
|
return null;
|
|
3902
3510
|
}
|
|
3903
|
-
let tmplBlock =
|
|
3511
|
+
let tmplBlock = ts24.createBlock(statements);
|
|
3904
3512
|
if (guard !== null) {
|
|
3905
|
-
tmplBlock =
|
|
3513
|
+
tmplBlock = ts24.createIf(guard, tmplBlock);
|
|
3906
3514
|
}
|
|
3907
3515
|
this.scope.addStatement(tmplBlock);
|
|
3908
3516
|
return null;
|
|
@@ -3920,7 +3528,7 @@ var TcbTextInterpolationOp = class extends TcbOp {
|
|
|
3920
3528
|
}
|
|
3921
3529
|
execute() {
|
|
3922
3530
|
const expr = tcbExpression(this.binding.value, this.tcb, this.scope);
|
|
3923
|
-
this.scope.addStatement(
|
|
3531
|
+
this.scope.addStatement(ts24.createExpressionStatement(expr));
|
|
3924
3532
|
return null;
|
|
3925
3533
|
}
|
|
3926
3534
|
};
|
|
@@ -3942,11 +3550,11 @@ var TcbDirectiveTypeOpBase = class extends TcbOp {
|
|
|
3942
3550
|
if (this.dir.isGeneric === false || dirRef.node.typeParameters === void 0) {
|
|
3943
3551
|
type = rawType;
|
|
3944
3552
|
} else {
|
|
3945
|
-
if (!
|
|
3553
|
+
if (!ts24.isTypeReferenceNode(rawType)) {
|
|
3946
3554
|
throw new Error(`Expected TypeReferenceNode when referencing the type for ${this.dir.ref.debugName}`);
|
|
3947
3555
|
}
|
|
3948
|
-
const typeArguments = dirRef.node.typeParameters.map(() =>
|
|
3949
|
-
type =
|
|
3556
|
+
const typeArguments = dirRef.node.typeParameters.map(() => ts24.factory.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword));
|
|
3557
|
+
type = ts24.factory.createTypeReferenceNode(rawType.typeName, typeArguments);
|
|
3950
3558
|
}
|
|
3951
3559
|
const id = this.tcb.allocateId();
|
|
3952
3560
|
addExpressionIdentifier(type, ExpressionIdentifier.DIRECTIVE);
|
|
@@ -3987,11 +3595,11 @@ var TcbReferenceOp = class extends TcbOp {
|
|
|
3987
3595
|
const id = this.tcb.allocateId();
|
|
3988
3596
|
let initializer = this.target instanceof TmplAstTemplate2 || this.target instanceof TmplAstElement3 ? this.scope.resolve(this.target) : this.scope.resolve(this.host, this.target);
|
|
3989
3597
|
if (this.target instanceof TmplAstElement3 && !this.tcb.env.config.checkTypeOfDomReferences || !this.tcb.env.config.checkTypeOfNonDomReferences) {
|
|
3990
|
-
initializer =
|
|
3598
|
+
initializer = ts24.createAsExpression(initializer, ts24.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword));
|
|
3991
3599
|
} else if (this.target instanceof TmplAstTemplate2) {
|
|
3992
|
-
initializer =
|
|
3993
|
-
initializer =
|
|
3994
|
-
initializer =
|
|
3600
|
+
initializer = ts24.createAsExpression(initializer, ts24.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword));
|
|
3601
|
+
initializer = ts24.createAsExpression(initializer, this.tcb.env.referenceExternalType("@angular/core", "TemplateRef", [DYNAMIC_TYPE]));
|
|
3602
|
+
initializer = ts24.createParen(initializer);
|
|
3995
3603
|
}
|
|
3996
3604
|
addParseSpanInfo(initializer, this.node.sourceSpan);
|
|
3997
3605
|
addParseSpanInfo(id, this.node.keySpan);
|
|
@@ -4081,7 +3689,7 @@ var TcbDirectiveInputsOp = class extends TcbOp {
|
|
|
4081
3689
|
let target;
|
|
4082
3690
|
if (this.dir.coercedInputFields.has(fieldName)) {
|
|
4083
3691
|
const dirTypeRef = this.tcb.env.referenceType(this.dir.ref);
|
|
4084
|
-
if (!
|
|
3692
|
+
if (!ts24.isTypeReferenceNode(dirTypeRef)) {
|
|
4085
3693
|
throw new Error(`Expected TypeReferenceNode from reference to ${this.dir.ref.debugName}`);
|
|
4086
3694
|
}
|
|
4087
3695
|
const id = this.tcb.allocateId();
|
|
@@ -4096,10 +3704,10 @@ var TcbDirectiveInputsOp = class extends TcbOp {
|
|
|
4096
3704
|
}
|
|
4097
3705
|
const id = this.tcb.allocateId();
|
|
4098
3706
|
const dirTypeRef = this.tcb.env.referenceType(this.dir.ref);
|
|
4099
|
-
if (!
|
|
3707
|
+
if (!ts24.isTypeReferenceNode(dirTypeRef)) {
|
|
4100
3708
|
throw new Error(`Expected TypeReferenceNode from reference to ${this.dir.ref.debugName}`);
|
|
4101
3709
|
}
|
|
4102
|
-
const type =
|
|
3710
|
+
const type = ts24.createIndexedAccessTypeNode(ts24.createTypeQueryNode(dirId), ts24.createLiteralTypeNode(ts24.createStringLiteral(fieldName)));
|
|
4103
3711
|
const temp = tsDeclareVariable(id, type);
|
|
4104
3712
|
this.scope.addStatement(temp);
|
|
4105
3713
|
target = id;
|
|
@@ -4107,18 +3715,18 @@ var TcbDirectiveInputsOp = class extends TcbOp {
|
|
|
4107
3715
|
if (dirId === null) {
|
|
4108
3716
|
dirId = this.scope.resolve(this.node, this.dir);
|
|
4109
3717
|
}
|
|
4110
|
-
target = this.dir.stringLiteralInputFields.has(fieldName) ?
|
|
3718
|
+
target = this.dir.stringLiteralInputFields.has(fieldName) ? ts24.createElementAccess(dirId, ts24.createStringLiteral(fieldName)) : ts24.createPropertyAccess(dirId, ts24.createIdentifier(fieldName));
|
|
4111
3719
|
}
|
|
4112
3720
|
if (input.attribute.keySpan !== void 0) {
|
|
4113
3721
|
addParseSpanInfo(target, input.attribute.keySpan);
|
|
4114
3722
|
}
|
|
4115
|
-
assignment =
|
|
3723
|
+
assignment = ts24.createBinary(target, ts24.SyntaxKind.EqualsToken, assignment);
|
|
4116
3724
|
}
|
|
4117
3725
|
addParseSpanInfo(assignment, input.attribute.sourceSpan);
|
|
4118
3726
|
if (!this.tcb.env.config.checkTypeOfAttributes && input.attribute instanceof TmplAstTextAttribute2) {
|
|
4119
3727
|
markIgnoreDiagnostics(assignment);
|
|
4120
3728
|
}
|
|
4121
|
-
this.scope.addStatement(
|
|
3729
|
+
this.scope.addStatement(ts24.createExpressionStatement(assignment));
|
|
4122
3730
|
}
|
|
4123
3731
|
return null;
|
|
4124
3732
|
}
|
|
@@ -4137,7 +3745,7 @@ var TcbDirectiveCtorCircularFallbackOp = class extends TcbOp {
|
|
|
4137
3745
|
execute() {
|
|
4138
3746
|
const id = this.tcb.allocateId();
|
|
4139
3747
|
const typeCtor = this.tcb.env.typeCtorFor(this.dir);
|
|
4140
|
-
const circularPlaceholder =
|
|
3748
|
+
const circularPlaceholder = ts24.createCall(typeCtor, void 0, [ts24.createNonNullExpression(ts24.createNull())]);
|
|
4141
3749
|
this.scope.addStatement(tsCreateVariable(id, circularPlaceholder));
|
|
4142
3750
|
return id;
|
|
4143
3751
|
}
|
|
@@ -4203,15 +3811,15 @@ var TcbUnclaimedInputsOp = class extends TcbOp {
|
|
|
4203
3811
|
elId = this.scope.resolve(this.element);
|
|
4204
3812
|
}
|
|
4205
3813
|
const propertyName = ATTR_TO_PROP[binding.name] || binding.name;
|
|
4206
|
-
const prop =
|
|
4207
|
-
const stmt =
|
|
3814
|
+
const prop = ts24.createElementAccess(elId, ts24.createStringLiteral(propertyName));
|
|
3815
|
+
const stmt = ts24.createBinary(prop, ts24.SyntaxKind.EqualsToken, wrapForDiagnostics(expr));
|
|
4208
3816
|
addParseSpanInfo(stmt, binding.sourceSpan);
|
|
4209
|
-
this.scope.addStatement(
|
|
3817
|
+
this.scope.addStatement(ts24.createExpressionStatement(stmt));
|
|
4210
3818
|
} else {
|
|
4211
|
-
this.scope.addStatement(
|
|
3819
|
+
this.scope.addStatement(ts24.createExpressionStatement(expr));
|
|
4212
3820
|
}
|
|
4213
3821
|
} else {
|
|
4214
|
-
this.scope.addStatement(
|
|
3822
|
+
this.scope.addStatement(ts24.createExpressionStatement(expr));
|
|
4215
3823
|
}
|
|
4216
3824
|
}
|
|
4217
3825
|
return null;
|
|
@@ -4243,18 +3851,18 @@ var TcbDirectiveOutputsOp = class extends TcbOp {
|
|
|
4243
3851
|
if (dirId === null) {
|
|
4244
3852
|
dirId = this.scope.resolve(this.node, this.dir);
|
|
4245
3853
|
}
|
|
4246
|
-
const outputField =
|
|
3854
|
+
const outputField = ts24.createElementAccess(dirId, ts24.createStringLiteral(field));
|
|
4247
3855
|
addParseSpanInfo(outputField, output.keySpan);
|
|
4248
3856
|
if (this.tcb.env.config.checkTypeOfOutputEvents) {
|
|
4249
3857
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 0);
|
|
4250
|
-
const subscribeFn =
|
|
4251
|
-
const call =
|
|
3858
|
+
const subscribeFn = ts24.createPropertyAccess(outputField, "subscribe");
|
|
3859
|
+
const call = ts24.createCall(subscribeFn, void 0, [handler]);
|
|
4252
3860
|
addParseSpanInfo(call, output.sourceSpan);
|
|
4253
|
-
this.scope.addStatement(
|
|
3861
|
+
this.scope.addStatement(ts24.createExpressionStatement(call));
|
|
4254
3862
|
} else {
|
|
4255
|
-
this.scope.addStatement(
|
|
3863
|
+
this.scope.addStatement(ts24.createExpressionStatement(outputField));
|
|
4256
3864
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 1);
|
|
4257
|
-
this.scope.addStatement(
|
|
3865
|
+
this.scope.addStatement(ts24.createExpressionStatement(handler));
|
|
4258
3866
|
}
|
|
4259
3867
|
ExpressionSemanticVisitor.visit(output.handler, this.tcb.id, this.tcb.boundTarget, this.tcb.oobRecorder);
|
|
4260
3868
|
}
|
|
@@ -4287,20 +3895,20 @@ var TcbUnclaimedOutputsOp = class extends TcbOp {
|
|
|
4287
3895
|
if (output.type === 1) {
|
|
4288
3896
|
const eventType = this.tcb.env.config.checkTypeOfAnimationEvents ? this.tcb.env.referenceExternalType("@angular/animations", "AnimationEvent") : 1;
|
|
4289
3897
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, eventType);
|
|
4290
|
-
this.scope.addStatement(
|
|
3898
|
+
this.scope.addStatement(ts24.createExpressionStatement(handler));
|
|
4291
3899
|
} else if (this.tcb.env.config.checkTypeOfDomEvents) {
|
|
4292
3900
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 0);
|
|
4293
3901
|
if (elId === null) {
|
|
4294
3902
|
elId = this.scope.resolve(this.element);
|
|
4295
3903
|
}
|
|
4296
|
-
const propertyAccess =
|
|
3904
|
+
const propertyAccess = ts24.createPropertyAccess(elId, "addEventListener");
|
|
4297
3905
|
addParseSpanInfo(propertyAccess, output.keySpan);
|
|
4298
|
-
const call =
|
|
3906
|
+
const call = ts24.createCall(propertyAccess, void 0, [ts24.createStringLiteral(output.name), handler]);
|
|
4299
3907
|
addParseSpanInfo(call, output.sourceSpan);
|
|
4300
|
-
this.scope.addStatement(
|
|
3908
|
+
this.scope.addStatement(ts24.createExpressionStatement(call));
|
|
4301
3909
|
} else {
|
|
4302
3910
|
const handler = tcbCreateEventHandler(output, this.tcb, this.scope, 1);
|
|
4303
|
-
this.scope.addStatement(
|
|
3911
|
+
this.scope.addStatement(ts24.createExpressionStatement(handler));
|
|
4304
3912
|
}
|
|
4305
3913
|
ExpressionSemanticVisitor.visit(output.handler, this.tcb.id, this.tcb.boundTarget, this.tcb.oobRecorder);
|
|
4306
3914
|
}
|
|
@@ -4314,15 +3922,15 @@ var TcbComponentContextCompletionOp = class extends TcbOp {
|
|
|
4314
3922
|
this.optional = false;
|
|
4315
3923
|
}
|
|
4316
3924
|
execute() {
|
|
4317
|
-
const ctx =
|
|
4318
|
-
const ctxDot =
|
|
3925
|
+
const ctx = ts24.createIdentifier("ctx");
|
|
3926
|
+
const ctxDot = ts24.createPropertyAccess(ctx, "");
|
|
4319
3927
|
markIgnoreDiagnostics(ctxDot);
|
|
4320
3928
|
addExpressionIdentifier(ctxDot, ExpressionIdentifier.COMPONENT_COMPLETION);
|
|
4321
|
-
this.scope.addStatement(
|
|
3929
|
+
this.scope.addStatement(ts24.createExpressionStatement(ctxDot));
|
|
4322
3930
|
return null;
|
|
4323
3931
|
}
|
|
4324
3932
|
};
|
|
4325
|
-
var INFER_TYPE_FOR_CIRCULAR_OP_EXPR =
|
|
3933
|
+
var INFER_TYPE_FOR_CIRCULAR_OP_EXPR = ts24.createNonNullExpression(ts24.createNull());
|
|
4326
3934
|
var Context = class {
|
|
4327
3935
|
constructor(env, domSchemaChecker, oobRecorder, id, boundTarget, pipes, schemas) {
|
|
4328
3936
|
this.env = env;
|
|
@@ -4335,7 +3943,7 @@ var Context = class {
|
|
|
4335
3943
|
this.nextId = 1;
|
|
4336
3944
|
}
|
|
4337
3945
|
allocateId() {
|
|
4338
|
-
return
|
|
3946
|
+
return ts24.createIdentifier(`_t${this.nextId++}`);
|
|
4339
3947
|
}
|
|
4340
3948
|
getPipeByName(name) {
|
|
4341
3949
|
if (!this.pipes.has(name)) {
|
|
@@ -4387,8 +3995,8 @@ var Scope = class {
|
|
|
4387
3995
|
resolve(node, directive) {
|
|
4388
3996
|
const res = this.resolveLocal(node, directive);
|
|
4389
3997
|
if (res !== null) {
|
|
4390
|
-
const clone =
|
|
4391
|
-
|
|
3998
|
+
const clone = ts24.getMutableClone(res);
|
|
3999
|
+
ts24.setSyntheticTrailingComments(clone, []);
|
|
4392
4000
|
return clone;
|
|
4393
4001
|
} else if (this.parent !== null) {
|
|
4394
4002
|
return this.parent.resolve(node, directive);
|
|
@@ -4416,7 +4024,7 @@ var Scope = class {
|
|
|
4416
4024
|
} else if (parentGuards === null) {
|
|
4417
4025
|
return this.guard;
|
|
4418
4026
|
} else {
|
|
4419
|
-
return
|
|
4027
|
+
return ts24.createBinary(parentGuards, ts24.SyntaxKind.AmpersandAmpersandToken, this.guard);
|
|
4420
4028
|
}
|
|
4421
4029
|
}
|
|
4422
4030
|
resolveLocal(ref, directive) {
|
|
@@ -4596,8 +4204,8 @@ var Scope = class {
|
|
|
4596
4204
|
}
|
|
4597
4205
|
};
|
|
4598
4206
|
function tcbCtxParam(node, name, typeArguments) {
|
|
4599
|
-
const type =
|
|
4600
|
-
return
|
|
4207
|
+
const type = ts24.factory.createTypeReferenceNode(name, typeArguments);
|
|
4208
|
+
return ts24.factory.createParameterDeclaration(void 0, void 0, void 0, "ctx", void 0, type, void 0);
|
|
4601
4209
|
}
|
|
4602
4210
|
function tcbExpression(ast, tcb, scope) {
|
|
4603
4211
|
const translator = new TcbExpressionTranslator(tcb, scope);
|
|
@@ -4620,11 +4228,11 @@ var TcbExpressionTranslator = class {
|
|
|
4620
4228
|
return null;
|
|
4621
4229
|
}
|
|
4622
4230
|
const expr = this.translate(ast.value);
|
|
4623
|
-
const result =
|
|
4231
|
+
const result = ts24.createParen(ts24.createBinary(target, ts24.SyntaxKind.EqualsToken, expr));
|
|
4624
4232
|
addParseSpanInfo(result, ast.sourceSpan);
|
|
4625
4233
|
return result;
|
|
4626
4234
|
} else if (ast instanceof ImplicitReceiver4) {
|
|
4627
|
-
return
|
|
4235
|
+
return ts24.createIdentifier("ctx");
|
|
4628
4236
|
} else if (ast instanceof BindingPipe) {
|
|
4629
4237
|
const expr = this.translate(ast.exp);
|
|
4630
4238
|
const pipeRef = this.tcb.getPipeByName(ast.name);
|
|
@@ -4636,19 +4244,19 @@ var TcbExpressionTranslator = class {
|
|
|
4636
4244
|
pipe = this.tcb.env.pipeInst(pipeRef);
|
|
4637
4245
|
}
|
|
4638
4246
|
const args = ast.args.map((arg) => this.translate(arg));
|
|
4639
|
-
let methodAccess =
|
|
4247
|
+
let methodAccess = ts24.factory.createPropertyAccessExpression(pipe, "transform");
|
|
4640
4248
|
addParseSpanInfo(methodAccess, ast.nameSpan);
|
|
4641
4249
|
if (!this.tcb.env.config.checkTypeOfPipes) {
|
|
4642
|
-
methodAccess =
|
|
4250
|
+
methodAccess = ts24.factory.createAsExpression(methodAccess, ts24.factory.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword));
|
|
4643
4251
|
}
|
|
4644
|
-
const result =
|
|
4252
|
+
const result = ts24.createCall(methodAccess, void 0, [expr, ...args]);
|
|
4645
4253
|
addParseSpanInfo(result, ast.sourceSpan);
|
|
4646
4254
|
return result;
|
|
4647
4255
|
} else if (ast instanceof Call2 && (ast.receiver instanceof PropertyRead4 || ast.receiver instanceof SafePropertyRead3)) {
|
|
4648
4256
|
if (ast.receiver.receiver instanceof ImplicitReceiver4 && !(ast.receiver.receiver instanceof ThisReceiver) && ast.receiver.name === "$any" && ast.args.length === 1) {
|
|
4649
4257
|
const expr = this.translate(ast.args[0]);
|
|
4650
|
-
const exprAsAny =
|
|
4651
|
-
const result =
|
|
4258
|
+
const exprAsAny = ts24.createAsExpression(expr, ts24.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword));
|
|
4259
|
+
const result = ts24.createParen(exprAsAny);
|
|
4652
4260
|
addParseSpanInfo(result, ast.sourceSpan);
|
|
4653
4261
|
return result;
|
|
4654
4262
|
}
|
|
@@ -4659,7 +4267,7 @@ var TcbExpressionTranslator = class {
|
|
|
4659
4267
|
const method = wrapForDiagnostics(receiver);
|
|
4660
4268
|
addParseSpanInfo(method, ast.receiver.nameSpan);
|
|
4661
4269
|
const args = ast.args.map((arg) => this.translate(arg));
|
|
4662
|
-
const node =
|
|
4270
|
+
const node = ts24.createCall(method, void 0, args);
|
|
4663
4271
|
addParseSpanInfo(node, ast.sourceSpan);
|
|
4664
4272
|
return node;
|
|
4665
4273
|
} else {
|
|
@@ -4679,17 +4287,17 @@ var TcbExpressionTranslator = class {
|
|
|
4679
4287
|
function tcbCallTypeCtor(dir, tcb, inputs) {
|
|
4680
4288
|
const typeCtor = tcb.env.typeCtorFor(dir);
|
|
4681
4289
|
const members = inputs.map((input) => {
|
|
4682
|
-
const propertyName =
|
|
4290
|
+
const propertyName = ts24.createStringLiteral(input.field);
|
|
4683
4291
|
if (input.type === "binding") {
|
|
4684
4292
|
const expr = widenBinding(input.expression, tcb);
|
|
4685
|
-
const assignment =
|
|
4293
|
+
const assignment = ts24.createPropertyAssignment(propertyName, wrapForDiagnostics(expr));
|
|
4686
4294
|
addParseSpanInfo(assignment, input.sourceSpan);
|
|
4687
4295
|
return assignment;
|
|
4688
4296
|
} else {
|
|
4689
|
-
return
|
|
4297
|
+
return ts24.createPropertyAssignment(propertyName, NULL_AS_ANY);
|
|
4690
4298
|
}
|
|
4691
4299
|
});
|
|
4692
|
-
return
|
|
4300
|
+
return ts24.createCall(typeCtor, void 0, [ts24.createObjectLiteral(members)]);
|
|
4693
4301
|
}
|
|
4694
4302
|
function getBoundInputs(directive, node, tcb) {
|
|
4695
4303
|
const boundInputs = [];
|
|
@@ -4715,17 +4323,17 @@ function translateInput(attr, tcb, scope) {
|
|
|
4715
4323
|
if (attr instanceof TmplAstBoundAttribute) {
|
|
4716
4324
|
return tcbExpression(attr.value, tcb, scope);
|
|
4717
4325
|
} else {
|
|
4718
|
-
return
|
|
4326
|
+
return ts24.createStringLiteral(attr.value);
|
|
4719
4327
|
}
|
|
4720
4328
|
}
|
|
4721
4329
|
function widenBinding(expr, tcb) {
|
|
4722
4330
|
if (!tcb.env.config.checkTypeOfInputBindings) {
|
|
4723
4331
|
return tsCastToAny(expr);
|
|
4724
4332
|
} else if (!tcb.env.config.strictNullInputBindings) {
|
|
4725
|
-
if (
|
|
4333
|
+
if (ts24.isObjectLiteralExpression(expr) || ts24.isArrayLiteralExpression(expr)) {
|
|
4726
4334
|
return expr;
|
|
4727
4335
|
} else {
|
|
4728
|
-
return
|
|
4336
|
+
return ts24.createNonNullExpression(expr);
|
|
4729
4337
|
}
|
|
4730
4338
|
} else {
|
|
4731
4339
|
return expr;
|
|
@@ -4738,18 +4346,18 @@ function tcbCreateEventHandler(event, tcb, scope, eventType) {
|
|
|
4738
4346
|
if (eventType === 0) {
|
|
4739
4347
|
eventParamType = void 0;
|
|
4740
4348
|
} else if (eventType === 1) {
|
|
4741
|
-
eventParamType =
|
|
4349
|
+
eventParamType = ts24.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword);
|
|
4742
4350
|
} else {
|
|
4743
4351
|
eventParamType = eventType;
|
|
4744
4352
|
}
|
|
4745
4353
|
const guards = scope.guards();
|
|
4746
|
-
let body =
|
|
4354
|
+
let body = ts24.createExpressionStatement(handler);
|
|
4747
4355
|
if (guards !== null) {
|
|
4748
|
-
body =
|
|
4356
|
+
body = ts24.createIf(guards, body);
|
|
4749
4357
|
}
|
|
4750
|
-
const eventParam =
|
|
4358
|
+
const eventParam = ts24.createParameter(void 0, void 0, void 0, EVENT_PARAMETER, void 0, eventParamType);
|
|
4751
4359
|
addExpressionIdentifier(eventParam, ExpressionIdentifier.EVENT_PARAMETER);
|
|
4752
|
-
return
|
|
4360
|
+
return ts24.createFunctionExpression(void 0, void 0, void 0, void 0, [eventParam], ts24.createKeywordTypeNode(ts24.SyntaxKind.AnyKeyword), ts24.createBlock([body]));
|
|
4753
4361
|
}
|
|
4754
4362
|
function tcbEventHandlerExpression(ast, tcb, scope) {
|
|
4755
4363
|
const translator = new TcbEventHandlerTranslator(tcb, scope);
|
|
@@ -4777,7 +4385,7 @@ function isSplitTwoWayBinding(inputName, output, inputs, tcb) {
|
|
|
4777
4385
|
var TcbEventHandlerTranslator = class extends TcbExpressionTranslator {
|
|
4778
4386
|
resolve(ast) {
|
|
4779
4387
|
if (ast instanceof PropertyRead4 && ast.receiver instanceof ImplicitReceiver4 && !(ast.receiver instanceof ThisReceiver) && ast.name === EVENT_PARAMETER) {
|
|
4780
|
-
const event =
|
|
4388
|
+
const event = ts24.createIdentifier(EVENT_PARAMETER);
|
|
4781
4389
|
addParseSpanInfo(event, ast.nameSpan);
|
|
4782
4390
|
return event;
|
|
4783
4391
|
}
|
|
@@ -4785,33 +4393,33 @@ var TcbEventHandlerTranslator = class extends TcbExpressionTranslator {
|
|
|
4785
4393
|
}
|
|
4786
4394
|
};
|
|
4787
4395
|
|
|
4788
|
-
// bazel-out/
|
|
4789
|
-
import
|
|
4396
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/type_check_file.mjs
|
|
4397
|
+
import ts25 from "typescript";
|
|
4790
4398
|
var TypeCheckFile = class extends Environment {
|
|
4791
4399
|
constructor(fileName, config, refEmitter, reflector, compilerHost) {
|
|
4792
|
-
super(config, new ImportManager(new NoopImportRewriter(), "i"), refEmitter, reflector,
|
|
4400
|
+
super(config, new ImportManager(new NoopImportRewriter(), "i"), refEmitter, reflector, ts25.createSourceFile(compilerHost.getCanonicalFileName(fileName), "", ts25.ScriptTarget.Latest, true));
|
|
4793
4401
|
this.fileName = fileName;
|
|
4794
4402
|
this.nextTcbId = 1;
|
|
4795
4403
|
this.tcbStatements = [];
|
|
4796
4404
|
}
|
|
4797
4405
|
addTypeCheckBlock(ref, meta, domSchemaChecker, oobRecorder, genericContextBehavior) {
|
|
4798
|
-
const fnId =
|
|
4406
|
+
const fnId = ts25.createIdentifier(`_tcb${this.nextTcbId++}`);
|
|
4799
4407
|
const fn = generateTypeCheckBlock(this, ref, fnId, meta, domSchemaChecker, oobRecorder, genericContextBehavior);
|
|
4800
4408
|
this.tcbStatements.push(fn);
|
|
4801
4409
|
}
|
|
4802
4410
|
render(removeComments) {
|
|
4803
4411
|
let source = this.importManager.getAllImports(this.contextFile.fileName).map((i) => `import * as ${i.qualifier.text} from '${i.specifier}';`).join("\n") + "\n\n";
|
|
4804
|
-
const printer =
|
|
4412
|
+
const printer = ts25.createPrinter({ removeComments });
|
|
4805
4413
|
source += "\n";
|
|
4806
4414
|
for (const stmt of this.pipeInstStatements) {
|
|
4807
|
-
source += printer.printNode(
|
|
4415
|
+
source += printer.printNode(ts25.EmitHint.Unspecified, stmt, this.contextFile) + "\n";
|
|
4808
4416
|
}
|
|
4809
4417
|
for (const stmt of this.typeCtorStatements) {
|
|
4810
|
-
source += printer.printNode(
|
|
4418
|
+
source += printer.printNode(ts25.EmitHint.Unspecified, stmt, this.contextFile) + "\n";
|
|
4811
4419
|
}
|
|
4812
4420
|
source += "\n";
|
|
4813
4421
|
for (const stmt of this.tcbStatements) {
|
|
4814
|
-
source += printer.printNode(
|
|
4422
|
+
source += printer.printNode(ts25.EmitHint.Unspecified, stmt, this.contextFile) + "\n";
|
|
4815
4423
|
}
|
|
4816
4424
|
source += "\nexport const IS_A_MODULE = true;\n";
|
|
4817
4425
|
return source;
|
|
@@ -4821,7 +4429,7 @@ var TypeCheckFile = class extends Environment {
|
|
|
4821
4429
|
}
|
|
4822
4430
|
};
|
|
4823
4431
|
|
|
4824
|
-
// bazel-out/
|
|
4432
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/context.mjs
|
|
4825
4433
|
var InliningMode;
|
|
4826
4434
|
(function(InliningMode2) {
|
|
4827
4435
|
InliningMode2[InliningMode2["InlineOps"] = 0] = "InlineOps";
|
|
@@ -4919,7 +4527,7 @@ var TypeCheckContextImpl = class {
|
|
|
4919
4527
|
const importManager = new ImportManager(new NoopImportRewriter(), "_i");
|
|
4920
4528
|
const ops = this.opMap.get(sf).sort(orderOps);
|
|
4921
4529
|
const textParts = splitStringAtPoints(sf.text, ops.map((op) => op.splitPoint));
|
|
4922
|
-
const printer =
|
|
4530
|
+
const printer = ts26.createPrinter({ omitTrailingSemicolon: true });
|
|
4923
4531
|
let code = textParts[0];
|
|
4924
4532
|
ops.forEach((op, idx) => {
|
|
4925
4533
|
const text = op.execute(importManager, sf, this.refEmitter, printer);
|
|
@@ -5000,7 +4608,7 @@ var TypeCheckContextImpl = class {
|
|
|
5000
4608
|
if (span.start.offset === span.end.offset) {
|
|
5001
4609
|
span.end.offset++;
|
|
5002
4610
|
}
|
|
5003
|
-
return makeTemplateDiagnostic(templateId, sourceMapping, span,
|
|
4611
|
+
return makeTemplateDiagnostic(templateId, sourceMapping, span, ts26.DiagnosticCategory.Error, ngErrorCode(ErrorCode.TEMPLATE_PARSE_ERROR), error.msg);
|
|
5004
4612
|
});
|
|
5005
4613
|
}
|
|
5006
4614
|
};
|
|
@@ -5018,9 +4626,9 @@ var InlineTcbOp = class {
|
|
|
5018
4626
|
}
|
|
5019
4627
|
execute(im, sf, refEmitter, printer) {
|
|
5020
4628
|
const env = new Environment(this.config, im, refEmitter, this.reflector, sf);
|
|
5021
|
-
const fnName =
|
|
4629
|
+
const fnName = ts26.createIdentifier(`_tcb_${this.ref.node.pos}`);
|
|
5022
4630
|
const fn = generateTypeCheckBlock(env, this.ref, fnName, this.meta, this.domSchemaChecker, this.oobRecorder, TcbGenericContextBehavior.CopyClassNodes);
|
|
5023
|
-
return printer.printNode(
|
|
4631
|
+
return printer.printNode(ts26.EmitHint.Unspecified, fn, sf);
|
|
5024
4632
|
}
|
|
5025
4633
|
};
|
|
5026
4634
|
var TypeCtorOp = class {
|
|
@@ -5033,7 +4641,7 @@ var TypeCtorOp = class {
|
|
|
5033
4641
|
}
|
|
5034
4642
|
execute(im, sf, refEmitter, printer) {
|
|
5035
4643
|
const tcb = generateInlineTypeCtor(this.ref.node, this.meta);
|
|
5036
|
-
return printer.printNode(
|
|
4644
|
+
return printer.printNode(ts26.EmitHint.Unspecified, tcb, sf);
|
|
5037
4645
|
}
|
|
5038
4646
|
};
|
|
5039
4647
|
function orderOps(op1, op2) {
|
|
@@ -5051,10 +4659,10 @@ function splitStringAtPoints(str, points) {
|
|
|
5051
4659
|
return splits;
|
|
5052
4660
|
}
|
|
5053
4661
|
|
|
5054
|
-
// bazel-out/
|
|
4662
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/source.mjs
|
|
5055
4663
|
import { ParseLocation, ParseSourceSpan } from "@angular/compiler";
|
|
5056
4664
|
|
|
5057
|
-
// bazel-out/
|
|
4665
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/line_mappings.mjs
|
|
5058
4666
|
var LF_CHAR = 10;
|
|
5059
4667
|
var CR_CHAR = 13;
|
|
5060
4668
|
var LINE_SEP_CHAR = 8232;
|
|
@@ -5095,7 +4703,7 @@ function findClosestLineStartPosition(linesMap, position, low = 0, high = linesM
|
|
|
5095
4703
|
return low - 1;
|
|
5096
4704
|
}
|
|
5097
4705
|
|
|
5098
|
-
// bazel-out/
|
|
4706
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/source.mjs
|
|
5099
4707
|
var TemplateSource = class {
|
|
5100
4708
|
constructor(mapping, file) {
|
|
5101
4709
|
this.mapping = mapping;
|
|
@@ -5146,9 +4754,9 @@ var TemplateSourceManager = class {
|
|
|
5146
4754
|
}
|
|
5147
4755
|
};
|
|
5148
4756
|
|
|
5149
|
-
// bazel-out/
|
|
4757
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/template_symbol_builder.mjs
|
|
5150
4758
|
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";
|
|
5151
|
-
import
|
|
4759
|
+
import ts27 from "typescript";
|
|
5152
4760
|
var SymbolBuilder = class {
|
|
5153
4761
|
constructor(shimPath, typeCheckBlock, templateData, componentScopeReader, getTypeChecker) {
|
|
5154
4762
|
this.shimPath = shimPath;
|
|
@@ -5191,7 +4799,7 @@ var SymbolBuilder = class {
|
|
|
5191
4799
|
getSymbolOfElement(element) {
|
|
5192
4800
|
var _a;
|
|
5193
4801
|
const elementSourceSpan = (_a = element.startSourceSpan) != null ? _a : element.sourceSpan;
|
|
5194
|
-
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: elementSourceSpan, filter:
|
|
4802
|
+
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: elementSourceSpan, filter: ts27.isVariableDeclaration });
|
|
5195
4803
|
if (node === null) {
|
|
5196
4804
|
return null;
|
|
5197
4805
|
}
|
|
@@ -5210,12 +4818,12 @@ var SymbolBuilder = class {
|
|
|
5210
4818
|
var _a;
|
|
5211
4819
|
const elementSourceSpan = (_a = element.startSourceSpan) != null ? _a : element.sourceSpan;
|
|
5212
4820
|
const tcbSourceFile = this.typeCheckBlock.getSourceFile();
|
|
5213
|
-
const isDirectiveDeclaration = (node) => (
|
|
4821
|
+
const isDirectiveDeclaration = (node) => (ts27.isTypeNode(node) || ts27.isIdentifier(node)) && ts27.isVariableDeclaration(node.parent) && hasExpressionIdentifier(tcbSourceFile, node, ExpressionIdentifier.DIRECTIVE);
|
|
5214
4822
|
const nodes = findAllMatchingNodes(this.typeCheckBlock, { withSpan: elementSourceSpan, filter: isDirectiveDeclaration });
|
|
5215
4823
|
return nodes.map((node) => {
|
|
5216
4824
|
var _a2;
|
|
5217
4825
|
const symbol = this.getSymbolOfTsNode(node.parent);
|
|
5218
|
-
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !
|
|
4826
|
+
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !ts27.isClassDeclaration(symbol.tsSymbol.valueDeclaration)) {
|
|
5219
4827
|
return null;
|
|
5220
4828
|
}
|
|
5221
4829
|
const meta = this.getDirectiveMeta(element, symbol.tsSymbol.valueDeclaration);
|
|
@@ -5284,17 +4892,17 @@ var SymbolBuilder = class {
|
|
|
5284
4892
|
if (!isAccessExpression(n)) {
|
|
5285
4893
|
return false;
|
|
5286
4894
|
}
|
|
5287
|
-
if (
|
|
4895
|
+
if (ts27.isPropertyAccessExpression(n)) {
|
|
5288
4896
|
return n.name.getText() === expectedAccess;
|
|
5289
4897
|
} else {
|
|
5290
|
-
return
|
|
4898
|
+
return ts27.isStringLiteral(n.argumentExpression) && n.argumentExpression.text === expectedAccess;
|
|
5291
4899
|
}
|
|
5292
4900
|
}
|
|
5293
4901
|
const outputFieldAccesses = findAllMatchingNodes(this.typeCheckBlock, { withSpan: eventBinding.keySpan, filter });
|
|
5294
4902
|
const bindings = [];
|
|
5295
4903
|
for (const outputFieldAccess of outputFieldAccesses) {
|
|
5296
4904
|
if (consumer instanceof TmplAstTemplate3 || consumer instanceof TmplAstElement4) {
|
|
5297
|
-
if (!
|
|
4905
|
+
if (!ts27.isPropertyAccessExpression(outputFieldAccess)) {
|
|
5298
4906
|
continue;
|
|
5299
4907
|
}
|
|
5300
4908
|
const addEventListener = outputFieldAccess.name;
|
|
@@ -5313,7 +4921,7 @@ var SymbolBuilder = class {
|
|
|
5313
4921
|
shimLocation: { shimPath: this.shimPath, positionInShimFile }
|
|
5314
4922
|
});
|
|
5315
4923
|
} else {
|
|
5316
|
-
if (!
|
|
4924
|
+
if (!ts27.isElementAccessExpression(outputFieldAccess)) {
|
|
5317
4925
|
continue;
|
|
5318
4926
|
}
|
|
5319
4927
|
const tsSymbol = this.getTypeChecker().getSymbolAtLocation(outputFieldAccess.argumentExpression);
|
|
@@ -5381,11 +4989,11 @@ var SymbolBuilder = class {
|
|
|
5381
4989
|
return null;
|
|
5382
4990
|
}
|
|
5383
4991
|
const [declaration] = tsSymbol.declarations;
|
|
5384
|
-
if (!
|
|
4992
|
+
if (!ts27.isVariableDeclaration(declaration) || !hasExpressionIdentifier(declaration.getSourceFile(), (_a = declaration.type) != null ? _a : declaration.name, ExpressionIdentifier.DIRECTIVE)) {
|
|
5385
4993
|
return null;
|
|
5386
4994
|
}
|
|
5387
4995
|
const symbol = this.getSymbolOfTsNode(declaration);
|
|
5388
|
-
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !
|
|
4996
|
+
if (symbol === null || !isSymbolWithValueDeclaration(symbol.tsSymbol) || !ts27.isClassDeclaration(symbol.tsSymbol.valueDeclaration)) {
|
|
5389
4997
|
return null;
|
|
5390
4998
|
}
|
|
5391
4999
|
const ngModule = this.getDirectiveModule(symbol.tsSymbol.valueDeclaration);
|
|
@@ -5401,7 +5009,7 @@ var SymbolBuilder = class {
|
|
|
5401
5009
|
};
|
|
5402
5010
|
}
|
|
5403
5011
|
getSymbolOfVariable(variable) {
|
|
5404
|
-
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: variable.sourceSpan, filter:
|
|
5012
|
+
const node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: variable.sourceSpan, filter: ts27.isVariableDeclaration });
|
|
5405
5013
|
if (node === null || node.initializer === void 0) {
|
|
5406
5014
|
return null;
|
|
5407
5015
|
}
|
|
@@ -5423,11 +5031,11 @@ var SymbolBuilder = class {
|
|
|
5423
5031
|
}
|
|
5424
5032
|
getSymbolOfReference(ref) {
|
|
5425
5033
|
const target = this.templateData.boundTarget.getReferenceTarget(ref);
|
|
5426
|
-
let node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: ref.sourceSpan, filter:
|
|
5034
|
+
let node = findFirstMatchingNode(this.typeCheckBlock, { withSpan: ref.sourceSpan, filter: ts27.isVariableDeclaration });
|
|
5427
5035
|
if (node === null || target === null || node.initializer === void 0) {
|
|
5428
5036
|
return null;
|
|
5429
5037
|
}
|
|
5430
|
-
const originalDeclaration =
|
|
5038
|
+
const originalDeclaration = ts27.isParenthesizedExpression(node.initializer) && ts27.isAsExpression(node.initializer.expression) ? this.getTypeChecker().getSymbolAtLocation(node.name) : this.getTypeChecker().getSymbolAtLocation(node.initializer);
|
|
5431
5039
|
if (originalDeclaration === void 0 || originalDeclaration.valueDeclaration === void 0) {
|
|
5432
5040
|
return null;
|
|
5433
5041
|
}
|
|
@@ -5450,7 +5058,7 @@ var SymbolBuilder = class {
|
|
|
5450
5058
|
referenceVarLocation: referenceVarShimLocation
|
|
5451
5059
|
};
|
|
5452
5060
|
} else {
|
|
5453
|
-
if (!
|
|
5061
|
+
if (!ts27.isClassDeclaration(target.directive.ref.node)) {
|
|
5454
5062
|
return null;
|
|
5455
5063
|
}
|
|
5456
5064
|
return {
|
|
@@ -5465,7 +5073,7 @@ var SymbolBuilder = class {
|
|
|
5465
5073
|
}
|
|
5466
5074
|
}
|
|
5467
5075
|
getSymbolOfPipe(expression) {
|
|
5468
|
-
const methodAccess = findFirstMatchingNode(this.typeCheckBlock, { withSpan: expression.nameSpan, filter:
|
|
5076
|
+
const methodAccess = findFirstMatchingNode(this.typeCheckBlock, { withSpan: expression.nameSpan, filter: ts27.isPropertyAccessExpression });
|
|
5469
5077
|
if (methodAccess === null) {
|
|
5470
5078
|
return null;
|
|
5471
5079
|
}
|
|
@@ -5504,7 +5112,7 @@ var SymbolBuilder = class {
|
|
|
5504
5112
|
}
|
|
5505
5113
|
let node = null;
|
|
5506
5114
|
if (expression instanceof PropertyRead5) {
|
|
5507
|
-
node = findFirstMatchingNode(this.typeCheckBlock, { withSpan, filter:
|
|
5115
|
+
node = findFirstMatchingNode(this.typeCheckBlock, { withSpan, filter: ts27.isPropertyAccessExpression });
|
|
5508
5116
|
}
|
|
5509
5117
|
if (node === null) {
|
|
5510
5118
|
node = findFirstMatchingNode(this.typeCheckBlock, { withSpan, filter: anyNodeFilter });
|
|
@@ -5512,10 +5120,10 @@ var SymbolBuilder = class {
|
|
|
5512
5120
|
if (node === null) {
|
|
5513
5121
|
return null;
|
|
5514
5122
|
}
|
|
5515
|
-
while (
|
|
5123
|
+
while (ts27.isParenthesizedExpression(node)) {
|
|
5516
5124
|
node = node.expression;
|
|
5517
5125
|
}
|
|
5518
|
-
if (expression instanceof SafePropertyRead4 &&
|
|
5126
|
+
if (expression instanceof SafePropertyRead4 && ts27.isConditionalExpression(node)) {
|
|
5519
5127
|
const whenTrueSymbol = this.getSymbolOfTsNode(node.whenTrue);
|
|
5520
5128
|
if (whenTrueSymbol === null) {
|
|
5521
5129
|
return null;
|
|
@@ -5531,13 +5139,13 @@ var SymbolBuilder = class {
|
|
|
5531
5139
|
}
|
|
5532
5140
|
getSymbolOfTsNode(node) {
|
|
5533
5141
|
var _a;
|
|
5534
|
-
while (
|
|
5142
|
+
while (ts27.isParenthesizedExpression(node)) {
|
|
5535
5143
|
node = node.expression;
|
|
5536
5144
|
}
|
|
5537
5145
|
let tsSymbol;
|
|
5538
|
-
if (
|
|
5146
|
+
if (ts27.isPropertyAccessExpression(node)) {
|
|
5539
5147
|
tsSymbol = this.getTypeChecker().getSymbolAtLocation(node.name);
|
|
5540
|
-
} else if (
|
|
5148
|
+
} else if (ts27.isElementAccessExpression(node)) {
|
|
5541
5149
|
tsSymbol = this.getTypeChecker().getSymbolAtLocation(node.argumentExpression);
|
|
5542
5150
|
} else {
|
|
5543
5151
|
tsSymbol = this.getTypeChecker().getSymbolAtLocation(node);
|
|
@@ -5551,13 +5159,13 @@ var SymbolBuilder = class {
|
|
|
5551
5159
|
};
|
|
5552
5160
|
}
|
|
5553
5161
|
getShimPositionForNode(node) {
|
|
5554
|
-
if (
|
|
5162
|
+
if (ts27.isTypeReferenceNode(node)) {
|
|
5555
5163
|
return this.getShimPositionForNode(node.typeName);
|
|
5556
|
-
} else if (
|
|
5164
|
+
} else if (ts27.isQualifiedName(node)) {
|
|
5557
5165
|
return node.right.getStart();
|
|
5558
|
-
} else if (
|
|
5166
|
+
} else if (ts27.isPropertyAccessExpression(node)) {
|
|
5559
5167
|
return node.name.getStart();
|
|
5560
|
-
} else if (
|
|
5168
|
+
} else if (ts27.isElementAccessExpression(node)) {
|
|
5561
5169
|
return node.argumentExpression.getStart();
|
|
5562
5170
|
} else {
|
|
5563
5171
|
return node.getStart();
|
|
@@ -5571,7 +5179,7 @@ function sourceSpanEqual(a, b) {
|
|
|
5571
5179
|
return a.start.offset === b.start.offset && a.end.offset === b.end.offset;
|
|
5572
5180
|
}
|
|
5573
5181
|
|
|
5574
|
-
// bazel-out/
|
|
5182
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/src/checker.mjs
|
|
5575
5183
|
var REGISTRY2 = new DomElementSchemaRegistry2();
|
|
5576
5184
|
var TemplateTypeCheckerImpl = class {
|
|
5577
5185
|
constructor(originalProgram, programDriver, typeCheckAdapter, config, refEmitter, reflector, compilerHost, priorBuild, componentScopeReader, typeCheckScopeRegistry, perf) {
|
|
@@ -6087,10 +5695,10 @@ var SingleShimTypeCheckingHost = class extends SingleFileTypeCheckingHost {
|
|
|
6087
5695
|
}
|
|
6088
5696
|
};
|
|
6089
5697
|
|
|
6090
|
-
// bazel-out/
|
|
5698
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/invalid_banana_in_box/index.mjs
|
|
6091
5699
|
import { TmplAstBoundEvent as TmplAstBoundEvent2 } from "@angular/compiler";
|
|
6092
5700
|
|
|
6093
|
-
// bazel-out/
|
|
5701
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/api/api.mjs
|
|
6094
5702
|
import { ASTWithSource as ASTWithSource4, RecursiveAstVisitor as RecursiveAstVisitor3 } from "@angular/compiler";
|
|
6095
5703
|
var TemplateCheckWithVisitor = class {
|
|
6096
5704
|
run(ctx, component, template) {
|
|
@@ -6167,7 +5775,7 @@ var TemplateVisitor2 = class extends RecursiveAstVisitor3 {
|
|
|
6167
5775
|
}
|
|
6168
5776
|
};
|
|
6169
5777
|
|
|
6170
|
-
// bazel-out/
|
|
5778
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/invalid_banana_in_box/index.mjs
|
|
6171
5779
|
var InvalidBananaInBoxCheck = class extends TemplateCheckWithVisitor {
|
|
6172
5780
|
constructor() {
|
|
6173
5781
|
super(...arguments);
|
|
@@ -6192,7 +5800,7 @@ var factory = {
|
|
|
6192
5800
|
create: () => new InvalidBananaInBoxCheck()
|
|
6193
5801
|
};
|
|
6194
5802
|
|
|
6195
|
-
// bazel-out/
|
|
5803
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/checks/nullish_coalescing_not_nullable/index.mjs
|
|
6196
5804
|
import { Binary } from "@angular/compiler";
|
|
6197
5805
|
var NullishCoalescingNotNullableCheck = class extends TemplateCheckWithVisitor {
|
|
6198
5806
|
constructor() {
|
|
@@ -6229,10 +5837,10 @@ var factory2 = {
|
|
|
6229
5837
|
}
|
|
6230
5838
|
};
|
|
6231
5839
|
|
|
6232
|
-
// bazel-out/
|
|
6233
|
-
import
|
|
5840
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/src/extended_template_checker.mjs
|
|
5841
|
+
import ts28 from "typescript";
|
|
6234
5842
|
|
|
6235
|
-
// bazel-out/
|
|
5843
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/api/src/public_options.mjs
|
|
6236
5844
|
var DiagnosticCategoryLabel;
|
|
6237
5845
|
(function(DiagnosticCategoryLabel2) {
|
|
6238
5846
|
DiagnosticCategoryLabel2["Warning"] = "warning";
|
|
@@ -6240,7 +5848,7 @@ var DiagnosticCategoryLabel;
|
|
|
6240
5848
|
DiagnosticCategoryLabel2["Suppress"] = "suppress";
|
|
6241
5849
|
})(DiagnosticCategoryLabel || (DiagnosticCategoryLabel = {}));
|
|
6242
5850
|
|
|
6243
|
-
// bazel-out/
|
|
5851
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/src/extended_template_checker.mjs
|
|
6244
5852
|
var ExtendedTemplateCheckerImpl = class {
|
|
6245
5853
|
constructor(templateTypeChecker, typeChecker, templateCheckFactories, options) {
|
|
6246
5854
|
var _a, _b, _c, _d, _e;
|
|
@@ -6278,9 +5886,9 @@ var ExtendedTemplateCheckerImpl = class {
|
|
|
6278
5886
|
function diagnosticLabelToCategory(label) {
|
|
6279
5887
|
switch (label) {
|
|
6280
5888
|
case DiagnosticCategoryLabel.Warning:
|
|
6281
|
-
return
|
|
5889
|
+
return ts28.DiagnosticCategory.Warning;
|
|
6282
5890
|
case DiagnosticCategoryLabel.Error:
|
|
6283
|
-
return
|
|
5891
|
+
return ts28.DiagnosticCategory.Error;
|
|
6284
5892
|
case DiagnosticCategoryLabel.Suppress:
|
|
6285
5893
|
return null;
|
|
6286
5894
|
default:
|
|
@@ -6292,13 +5900,13 @@ function assertNever(value) {
|
|
|
6292
5900
|
${value}`);
|
|
6293
5901
|
}
|
|
6294
5902
|
|
|
6295
|
-
// bazel-out/
|
|
5903
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/typecheck/extended/index.mjs
|
|
6296
5904
|
var ALL_DIAGNOSTIC_FACTORIES = [
|
|
6297
5905
|
factory,
|
|
6298
5906
|
factory2
|
|
6299
5907
|
];
|
|
6300
5908
|
|
|
6301
|
-
// bazel-out/
|
|
5909
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/compiler.mjs
|
|
6302
5910
|
var CompilationTicketKind;
|
|
6303
5911
|
(function(CompilationTicketKind2) {
|
|
6304
5912
|
CompilationTicketKind2[CompilationTicketKind2["Fresh"] = 0] = "Fresh";
|
|
@@ -6378,7 +5986,7 @@ var NgCompiler = class {
|
|
|
6378
5986
|
this.currentProgram = inputProgram;
|
|
6379
5987
|
this.closureCompilerEnabled = !!this.options.annotateForClosureCompiler;
|
|
6380
5988
|
this.entryPoint = adapter.entryPoint !== null ? getSourceFileOrNull(inputProgram, adapter.entryPoint) : null;
|
|
6381
|
-
const moduleResolutionCache =
|
|
5989
|
+
const moduleResolutionCache = ts29.createModuleResolutionCache(this.adapter.getCurrentDirectory(), this.adapter.getCanonicalFileName.bind(this.adapter));
|
|
6382
5990
|
this.moduleResolver = new ModuleResolver(inputProgram, this.options, this.adapter, moduleResolutionCache);
|
|
6383
5991
|
this.resourceManager = new AdapterResourceLoader(adapter, this.options);
|
|
6384
5992
|
this.cycleAnalyzer = new CycleAnalyzer(new ImportGraph(inputProgram.getTypeChecker(), this.delegatingPerfRecorder));
|
|
@@ -6434,7 +6042,7 @@ var NgCompiler = class {
|
|
|
6434
6042
|
}
|
|
6435
6043
|
for (const clazz of classesToUpdate) {
|
|
6436
6044
|
this.compilation.traitCompiler.updateResources(clazz);
|
|
6437
|
-
if (!
|
|
6045
|
+
if (!ts29.isClassDeclaration(clazz)) {
|
|
6438
6046
|
continue;
|
|
6439
6047
|
}
|
|
6440
6048
|
this.compilation.templateTypeChecker.invalidateClass(clazz);
|
|
@@ -6839,17 +6447,17 @@ function isAngularCorePackage(program) {
|
|
|
6839
6447
|
return false;
|
|
6840
6448
|
}
|
|
6841
6449
|
return r3Symbols.statements.some((stmt) => {
|
|
6842
|
-
if (!
|
|
6450
|
+
if (!ts29.isVariableStatement(stmt)) {
|
|
6843
6451
|
return false;
|
|
6844
6452
|
}
|
|
6845
|
-
if (stmt.modifiers === void 0 || !stmt.modifiers.some((mod) => mod.kind ===
|
|
6453
|
+
if (stmt.modifiers === void 0 || !stmt.modifiers.some((mod) => mod.kind === ts29.SyntaxKind.ExportKeyword)) {
|
|
6846
6454
|
return false;
|
|
6847
6455
|
}
|
|
6848
6456
|
return stmt.declarationList.declarations.some((decl) => {
|
|
6849
|
-
if (!
|
|
6457
|
+
if (!ts29.isIdentifier(decl.name) || decl.name.text !== "ITS_JUST_ANGULAR") {
|
|
6850
6458
|
return false;
|
|
6851
6459
|
}
|
|
6852
|
-
if (decl.initializer === void 0 || decl.initializer.kind !==
|
|
6460
|
+
if (decl.initializer === void 0 || decl.initializer.kind !== ts29.SyntaxKind.TrueKeyword) {
|
|
6853
6461
|
return false;
|
|
6854
6462
|
}
|
|
6855
6463
|
return true;
|
|
@@ -6863,7 +6471,7 @@ function* verifyCompatibleTypeCheckOptions(options) {
|
|
|
6863
6471
|
var _a, _b, _c;
|
|
6864
6472
|
if (options.fullTemplateTypeCheck === false && options.strictTemplates === true) {
|
|
6865
6473
|
yield makeConfigDiagnostic({
|
|
6866
|
-
category:
|
|
6474
|
+
category: ts29.DiagnosticCategory.Error,
|
|
6867
6475
|
code: ErrorCode.CONFIG_STRICT_TEMPLATES_IMPLIES_FULL_TEMPLATE_TYPECHECK,
|
|
6868
6476
|
messageText: `
|
|
6869
6477
|
Angular compiler option "strictTemplates" is enabled, however "fullTemplateTypeCheck" is disabled.
|
|
@@ -6882,7 +6490,7 @@ https://angular.io/guide/template-typecheck
|
|
|
6882
6490
|
}
|
|
6883
6491
|
if (options.extendedDiagnostics && options.strictTemplates === false) {
|
|
6884
6492
|
yield makeConfigDiagnostic({
|
|
6885
|
-
category:
|
|
6493
|
+
category: ts29.DiagnosticCategory.Error,
|
|
6886
6494
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_IMPLIES_STRICT_TEMPLATES,
|
|
6887
6495
|
messageText: `
|
|
6888
6496
|
Angular compiler option "extendedDiagnostics" is configured, however "strictTemplates" is disabled.
|
|
@@ -6899,7 +6507,7 @@ One of the following actions is required:
|
|
|
6899
6507
|
const defaultCategory = (_a = options.extendedDiagnostics) == null ? void 0 : _a.defaultCategory;
|
|
6900
6508
|
if (defaultCategory && !allowedCategoryLabels.includes(defaultCategory)) {
|
|
6901
6509
|
yield makeConfigDiagnostic({
|
|
6902
|
-
category:
|
|
6510
|
+
category: ts29.DiagnosticCategory.Error,
|
|
6903
6511
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_UNKNOWN_CATEGORY_LABEL,
|
|
6904
6512
|
messageText: `
|
|
6905
6513
|
Angular compiler option "extendedDiagnostics.defaultCategory" has an unknown diagnostic category: "${defaultCategory}".
|
|
@@ -6913,7 +6521,7 @@ ${allowedCategoryLabels.join("\n")}
|
|
|
6913
6521
|
for (const [checkName, category] of Object.entries((_c = (_b = options.extendedDiagnostics) == null ? void 0 : _b.checks) != null ? _c : {})) {
|
|
6914
6522
|
if (!allExtendedDiagnosticNames.includes(checkName)) {
|
|
6915
6523
|
yield makeConfigDiagnostic({
|
|
6916
|
-
category:
|
|
6524
|
+
category: ts29.DiagnosticCategory.Error,
|
|
6917
6525
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_UNKNOWN_CHECK,
|
|
6918
6526
|
messageText: `
|
|
6919
6527
|
Angular compiler option "extendedDiagnostics.checks" has an unknown check: "${checkName}".
|
|
@@ -6925,7 +6533,7 @@ ${allExtendedDiagnosticNames.join("\n")}
|
|
|
6925
6533
|
}
|
|
6926
6534
|
if (!allowedCategoryLabels.includes(category)) {
|
|
6927
6535
|
yield makeConfigDiagnostic({
|
|
6928
|
-
category:
|
|
6536
|
+
category: ts29.DiagnosticCategory.Error,
|
|
6929
6537
|
code: ErrorCode.CONFIG_EXTENDED_DIAGNOSTICS_UNKNOWN_CATEGORY_LABEL,
|
|
6930
6538
|
messageText: `
|
|
6931
6539
|
Angular compiler option "extendedDiagnostics.checks['${checkName}']" has an unknown diagnostic category: "${category}".
|
|
@@ -6955,7 +6563,7 @@ var ReferenceGraphAdapter = class {
|
|
|
6955
6563
|
for (const { node } of references) {
|
|
6956
6564
|
let sourceFile = node.getSourceFile();
|
|
6957
6565
|
if (sourceFile === void 0) {
|
|
6958
|
-
sourceFile =
|
|
6566
|
+
sourceFile = ts29.getOriginalNode(node).getSourceFile();
|
|
6959
6567
|
}
|
|
6960
6568
|
if (sourceFile === void 0 || !isDtsPath(sourceFile.fileName)) {
|
|
6961
6569
|
this.graph.add(source, node);
|
|
@@ -6993,8 +6601,8 @@ function versionMapFromProgram(program, driver) {
|
|
|
6993
6601
|
return versions;
|
|
6994
6602
|
}
|
|
6995
6603
|
|
|
6996
|
-
// bazel-out/
|
|
6997
|
-
import
|
|
6604
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/core/src/host.mjs
|
|
6605
|
+
import ts30 from "typescript";
|
|
6998
6606
|
var DelegatingCompilerHost2 = class {
|
|
6999
6607
|
constructor(delegate) {
|
|
7000
6608
|
this.delegate = delegate;
|
|
@@ -7084,7 +6692,7 @@ var NgCompilerHost = class extends DelegatingCompilerHost2 {
|
|
|
7084
6692
|
entryPoint = findFlatIndexEntryPoint(normalizedTsInputFiles);
|
|
7085
6693
|
if (entryPoint === null) {
|
|
7086
6694
|
diagnostics.push({
|
|
7087
|
-
category:
|
|
6695
|
+
category: ts30.DiagnosticCategory.Error,
|
|
7088
6696
|
code: ngErrorCode(ErrorCode.CONFIG_FLAT_MODULE_NO_INDEX),
|
|
7089
6697
|
file: void 0,
|
|
7090
6698
|
start: void 0,
|
|
@@ -7124,17 +6732,17 @@ var NgCompilerHost = class extends DelegatingCompilerHost2 {
|
|
|
7124
6732
|
return this.fileNameToModuleName !== void 0 ? this : null;
|
|
7125
6733
|
}
|
|
7126
6734
|
createCachedResolveModuleNamesFunction() {
|
|
7127
|
-
const moduleResolutionCache =
|
|
6735
|
+
const moduleResolutionCache = ts30.createModuleResolutionCache(this.getCurrentDirectory(), this.getCanonicalFileName.bind(this));
|
|
7128
6736
|
return (moduleNames, containingFile, reusedNames, redirectedReference, options) => {
|
|
7129
6737
|
return moduleNames.map((moduleName) => {
|
|
7130
|
-
const module =
|
|
6738
|
+
const module = ts30.resolveModuleName(moduleName, containingFile, options, this, moduleResolutionCache, redirectedReference);
|
|
7131
6739
|
return module.resolvedModule;
|
|
7132
6740
|
});
|
|
7133
6741
|
};
|
|
7134
6742
|
}
|
|
7135
6743
|
};
|
|
7136
6744
|
|
|
7137
|
-
// bazel-out/
|
|
6745
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/ngtsc/program.mjs
|
|
7138
6746
|
var NgtscProgram = class {
|
|
7139
6747
|
constructor(rootNames, options, delegateHost, oldProgram) {
|
|
7140
6748
|
this.options = options;
|
|
@@ -7148,7 +6756,7 @@ var NgtscProgram = class {
|
|
|
7148
6756
|
if (reuseProgram !== void 0) {
|
|
7149
6757
|
retagAllTsFiles(reuseProgram);
|
|
7150
6758
|
}
|
|
7151
|
-
this.tsProgram = perfRecorder.inPhase(PerfPhase.TypeScriptProgramCreate, () =>
|
|
6759
|
+
this.tsProgram = perfRecorder.inPhase(PerfPhase.TypeScriptProgramCreate, () => ts31.createProgram(this.host.inputFiles, options, this.host, reuseProgram));
|
|
7152
6760
|
perfRecorder.phase(PerfPhase.Unaccounted);
|
|
7153
6761
|
perfRecorder.memory(PerfCheckpoint.TypeScriptProgramCreate);
|
|
7154
6762
|
this.host.postProgramCreationCleanup();
|
|
@@ -7341,38 +6949,38 @@ function mergeEmitResults(emitResults) {
|
|
|
7341
6949
|
return { diagnostics, emitSkipped, emittedFiles };
|
|
7342
6950
|
}
|
|
7343
6951
|
|
|
7344
|
-
// bazel-out/
|
|
6952
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/transformers/program.mjs
|
|
7345
6953
|
function createProgram({ rootNames, options, host, oldProgram }) {
|
|
7346
6954
|
return new NgtscProgram(rootNames, options, host, oldProgram);
|
|
7347
6955
|
}
|
|
7348
6956
|
|
|
7349
|
-
// bazel-out/
|
|
7350
|
-
import
|
|
6957
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/perform_compile.mjs
|
|
6958
|
+
import ts33 from "typescript";
|
|
7351
6959
|
|
|
7352
|
-
// bazel-out/
|
|
7353
|
-
import
|
|
6960
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/transformers/util.mjs
|
|
6961
|
+
import ts32 from "typescript";
|
|
7354
6962
|
var GENERATED_FILES = /(.*?)\.(ngfactory|shim\.ngstyle|ngstyle|ngsummary)\.(js|d\.ts|ts)$/;
|
|
7355
6963
|
function createMessageDiagnostic(messageText) {
|
|
7356
6964
|
return {
|
|
7357
6965
|
file: void 0,
|
|
7358
6966
|
start: void 0,
|
|
7359
6967
|
length: void 0,
|
|
7360
|
-
category:
|
|
6968
|
+
category: ts32.DiagnosticCategory.Message,
|
|
7361
6969
|
messageText,
|
|
7362
6970
|
code: DEFAULT_ERROR_CODE,
|
|
7363
6971
|
source: SOURCE
|
|
7364
6972
|
};
|
|
7365
6973
|
}
|
|
7366
6974
|
|
|
7367
|
-
// bazel-out/
|
|
6975
|
+
// bazel-out/darwin-fastbuild/bin/packages/compiler-cli/src/perform_compile.mjs
|
|
7368
6976
|
var defaultFormatHost = {
|
|
7369
|
-
getCurrentDirectory: () =>
|
|
6977
|
+
getCurrentDirectory: () => ts33.sys.getCurrentDirectory(),
|
|
7370
6978
|
getCanonicalFileName: (fileName) => fileName,
|
|
7371
|
-
getNewLine: () =>
|
|
6979
|
+
getNewLine: () => ts33.sys.newLine
|
|
7372
6980
|
};
|
|
7373
6981
|
function formatDiagnostics(diags, host = defaultFormatHost) {
|
|
7374
6982
|
if (diags && diags.length) {
|
|
7375
|
-
return diags.map((diagnostic) => replaceTsWithNgInErrors(
|
|
6983
|
+
return diags.map((diagnostic) => replaceTsWithNgInErrors(ts33.formatDiagnosticsWithColorAndContext([diagnostic], host))).join("");
|
|
7376
6984
|
} else {
|
|
7377
6985
|
return "";
|
|
7378
6986
|
}
|
|
@@ -7389,7 +6997,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7389
6997
|
var _a;
|
|
7390
6998
|
try {
|
|
7391
6999
|
const fs = getFileSystem();
|
|
7392
|
-
const readConfigFile = (configFile) =>
|
|
7000
|
+
const readConfigFile = (configFile) => ts33.readConfigFile(configFile, (file) => host.readFile(host.resolve(file)));
|
|
7393
7001
|
const readAngularCompilerOptions = (configFile, parentOptions = {}) => {
|
|
7394
7002
|
const { config: config2, error: error2 } = readConfigFile(configFile);
|
|
7395
7003
|
if (error2) {
|
|
@@ -7421,7 +7029,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7421
7029
|
basePath
|
|
7422
7030
|
}, readAngularCompilerOptions(configFileName)), existingOptions);
|
|
7423
7031
|
const parseConfigHost = createParseConfigHost(host, fs);
|
|
7424
|
-
const { options, errors, fileNames: rootNames, projectReferences } =
|
|
7032
|
+
const { options, errors, fileNames: rootNames, projectReferences } = ts33.parseJsonConfigFileContent(config, parseConfigHost, basePath, existingCompilerOptions, configFileName);
|
|
7425
7033
|
options.enableIvy = !!((_a = options.enableIvy) != null ? _a : true);
|
|
7426
7034
|
let emitFlags = EmitFlags.Default;
|
|
7427
7035
|
if (!(options.skipMetadataEmit || options.flatModuleOutFile)) {
|
|
@@ -7433,7 +7041,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7433
7041
|
return { project: projectFile, rootNames, projectReferences, options, errors, emitFlags };
|
|
7434
7042
|
} catch (e) {
|
|
7435
7043
|
const errors = [{
|
|
7436
|
-
category:
|
|
7044
|
+
category: ts33.DiagnosticCategory.Error,
|
|
7437
7045
|
messageText: e.stack,
|
|
7438
7046
|
file: void 0,
|
|
7439
7047
|
start: void 0,
|
|
@@ -7447,7 +7055,7 @@ function readConfiguration(project, existingOptions, host = getFileSystem()) {
|
|
|
7447
7055
|
function createParseConfigHost(host, fs = getFileSystem()) {
|
|
7448
7056
|
return {
|
|
7449
7057
|
fileExists: host.exists.bind(host),
|
|
7450
|
-
readDirectory:
|
|
7058
|
+
readDirectory: ts33.sys.readDirectory,
|
|
7451
7059
|
readFile: host.readFile.bind(host),
|
|
7452
7060
|
useCaseSensitiveFileNames: fs.isCaseSensitive()
|
|
7453
7061
|
};
|
|
@@ -7467,7 +7075,7 @@ function getExtendedConfigPathWorker(configFile, extendsValue, host, fs) {
|
|
|
7467
7075
|
}
|
|
7468
7076
|
} else {
|
|
7469
7077
|
const parseConfigHost = createParseConfigHost(host, fs);
|
|
7470
|
-
const { resolvedModule } =
|
|
7078
|
+
const { resolvedModule } = ts33.nodeModuleNameResolver(extendsValue, configFile, { moduleResolution: ts33.ModuleResolutionKind.NodeJs, resolveJsonModule: true }, parseConfigHost);
|
|
7471
7079
|
if (resolvedModule) {
|
|
7472
7080
|
return absoluteFrom(resolvedModule.resolvedFileName);
|
|
7473
7081
|
}
|
|
@@ -7477,7 +7085,7 @@ function getExtendedConfigPathWorker(configFile, extendsValue, host, fs) {
|
|
|
7477
7085
|
function exitCodeFromResult(diags) {
|
|
7478
7086
|
if (!diags)
|
|
7479
7087
|
return 0;
|
|
7480
|
-
if (diags.every((diag) => diag.category !==
|
|
7088
|
+
if (diags.every((diag) => diag.category !== ts33.DiagnosticCategory.Error)) {
|
|
7481
7089
|
return 0;
|
|
7482
7090
|
}
|
|
7483
7091
|
return diags.some((d) => d.source === "angular" && d.code === UNKNOWN_ERROR_CODE) ? 2 : 1;
|
|
@@ -7509,7 +7117,7 @@ function performCompilation({ rootNames, options, host, oldProgram, emitCallback
|
|
|
7509
7117
|
} catch (e) {
|
|
7510
7118
|
program = void 0;
|
|
7511
7119
|
allDiagnostics.push({
|
|
7512
|
-
category:
|
|
7120
|
+
category: ts33.DiagnosticCategory.Error,
|
|
7513
7121
|
messageText: e.stack,
|
|
7514
7122
|
code: UNKNOWN_ERROR_CODE,
|
|
7515
7123
|
file: void 0,
|
|
@@ -7536,7 +7144,7 @@ function defaultGatherDiagnostics(program) {
|
|
|
7536
7144
|
return allDiagnostics;
|
|
7537
7145
|
}
|
|
7538
7146
|
function hasErrors(diags) {
|
|
7539
|
-
return diags.some((d) => d.category ===
|
|
7147
|
+
return diags.some((d) => d.category === ts33.DiagnosticCategory.Error);
|
|
7540
7148
|
}
|
|
7541
7149
|
|
|
7542
7150
|
export {
|
|
@@ -7548,7 +7156,6 @@ export {
|
|
|
7548
7156
|
createCompilerHost,
|
|
7549
7157
|
CycleAnalyzer,
|
|
7550
7158
|
ImportGraph,
|
|
7551
|
-
untagAllTsFiles,
|
|
7552
7159
|
TsCreateProgramDriver,
|
|
7553
7160
|
PatchedProgramIncrementalBuildStrategy,
|
|
7554
7161
|
MetadataDtsModuleScopeResolver,
|
|
@@ -7577,5 +7184,4 @@ export {
|
|
|
7577
7184
|
* Use of this source code is governed by an MIT-style license that can be
|
|
7578
7185
|
* found in the LICENSE file at https://angular.io/license
|
|
7579
7186
|
*/
|
|
7580
|
-
|
|
7581
|
-
//# sourceMappingURL=chunk-TUNE6DP3.js.map
|
|
7187
|
+
//# sourceMappingURL=chunk-CKZCKW5B.js.map
|