@angular/compiler-cli 14.2.0-next.1 → 14.2.1

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.
Files changed (74) hide show
  1. package/bundles/{chunk-TXUURHQE.js → chunk-2HAEAY5C.js} +40 -40
  2. package/bundles/{chunk-TXUURHQE.js.map → chunk-2HAEAY5C.js.map} +0 -0
  3. package/bundles/{chunk-CTEVZGOM.js → chunk-2HPI44CB.js} +5 -5
  4. package/bundles/{chunk-CTEVZGOM.js.map → chunk-2HPI44CB.js.map} +0 -0
  5. package/bundles/{chunk-ZSQCUET7.js → chunk-2VBPNPMZ.js} +152 -119
  6. package/bundles/chunk-2VBPNPMZ.js.map +6 -0
  7. package/bundles/{chunk-WJ34B4FT.js → chunk-3ATQVS47.js} +75 -71
  8. package/bundles/chunk-3ATQVS47.js.map +6 -0
  9. package/bundles/{chunk-HZ5F54TQ.js → chunk-3RBYZF6O.js} +5 -5
  10. package/bundles/{chunk-HZ5F54TQ.js.map → chunk-3RBYZF6O.js.map} +0 -0
  11. package/bundles/chunk-7YHMCUJT.js +96 -0
  12. package/bundles/chunk-7YHMCUJT.js.map +6 -0
  13. package/bundles/{chunk-Z57D3OKU.js → chunk-CYVTLM4Z.js} +7 -7
  14. package/bundles/{chunk-Z57D3OKU.js.map → chunk-CYVTLM4Z.js.map} +0 -0
  15. package/bundles/{chunk-4SINIALN.js → chunk-E7NQQTT7.js} +3 -3
  16. package/bundles/{chunk-4SINIALN.js.map → chunk-E7NQQTT7.js.map} +0 -0
  17. package/bundles/{chunk-N2MCMY3J.js → chunk-FM6NPN5V.js} +4 -4
  18. package/bundles/{chunk-N2MCMY3J.js.map → chunk-FM6NPN5V.js.map} +0 -0
  19. package/bundles/{chunk-I34YWN6W.js → chunk-GG7BM2LH.js} +185 -121
  20. package/bundles/chunk-GG7BM2LH.js.map +6 -0
  21. package/bundles/{chunk-GQHLKW4T.js → chunk-L2QFSPXM.js} +31 -31
  22. package/bundles/{chunk-GQHLKW4T.js.map → chunk-L2QFSPXM.js.map} +0 -0
  23. package/bundles/{chunk-SJL5HBUW.js → chunk-R3C7RFJ4.js} +2 -2
  24. package/bundles/{chunk-SJL5HBUW.js.map → chunk-R3C7RFJ4.js.map} +0 -0
  25. package/bundles/{chunk-S4JINNFN.js → chunk-TOKOIIBI.js} +7 -7
  26. package/bundles/{chunk-S4JINNFN.js.map → chunk-TOKOIIBI.js.map} +0 -0
  27. package/bundles/{chunk-IJA2BQQH.js → chunk-UZLFREET.js} +44 -20
  28. package/bundles/chunk-UZLFREET.js.map +6 -0
  29. package/bundles/{chunk-AHYRDQYO.js → chunk-WAZH2LJQ.js} +26 -26
  30. package/bundles/{chunk-AHYRDQYO.js.map → chunk-WAZH2LJQ.js.map} +1 -1
  31. package/bundles/{chunk-AMYIDAXN.js → chunk-XDX5RDY5.js} +20 -13
  32. package/bundles/chunk-XDX5RDY5.js.map +6 -0
  33. package/bundles/index.js +13 -12
  34. package/bundles/index.js.map +1 -1
  35. package/bundles/linker/babel/index.js +13 -12
  36. package/bundles/linker/babel/index.js.map +1 -1
  37. package/bundles/linker/index.js +5 -4
  38. package/bundles/ngcc/index.js +13 -12
  39. package/bundles/ngcc/index.js.map +1 -1
  40. package/bundles/ngcc/main-ngcc.js +14 -13
  41. package/bundles/ngcc/main-ngcc.js.map +1 -1
  42. package/bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js +14 -13
  43. package/bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js.map +1 -1
  44. package/bundles/ngcc/src/locking/lock_file_with_child_process/ngcc_lock_unlocker.js +4 -4
  45. package/bundles/private/bazel.js +1 -1
  46. package/bundles/private/localize.js +3 -3
  47. package/bundles/private/migrations.js +6 -5
  48. package/bundles/private/migrations.js.map +1 -1
  49. package/bundles/private/tooling.js +3 -2
  50. package/bundles/src/bin/ng_xi18n.js +11 -10
  51. package/bundles/src/bin/ng_xi18n.js.map +1 -1
  52. package/bundles/src/bin/ngc.js +9 -8
  53. package/bundles/src/bin/ngc.js.map +1 -1
  54. package/bundles_metadata.json +1 -1
  55. package/ngcc/src/packages/build_marker.d.ts +1 -1
  56. package/package.json +3 -3
  57. package/src/ngtsc/annotations/component/src/metadata.d.ts +1 -0
  58. package/src/ngtsc/annotations/directive/src/handler.d.ts +2 -0
  59. package/src/ngtsc/annotations/ng_module/src/handler.d.ts +1 -0
  60. package/src/ngtsc/annotations/src/pipe.d.ts +1 -0
  61. package/src/ngtsc/core/api/src/options.d.ts +4 -0
  62. package/src/ngtsc/core/src/compiler.d.ts +1 -1
  63. package/src/ngtsc/metadata/src/api.d.ts +13 -0
  64. package/src/ngtsc/ts_compatibility/index.d.ts +9 -0
  65. package/src/ngtsc/ts_compatibility/src/ts_cross_version_utils.d.ts +161 -0
  66. package/src/ngtsc/typecheck/api/checker.d.ts +14 -4
  67. package/src/ngtsc/typecheck/src/checker.d.ts +5 -1
  68. package/src/ngtsc/typecheck/src/ts_util.d.ts +0 -7
  69. package/src/ngtsc/typecheck/src/type_check_block.d.ts +1 -1
  70. package/bundles/chunk-AMYIDAXN.js.map +0 -6
  71. package/bundles/chunk-I34YWN6W.js.map +0 -6
  72. package/bundles/chunk-IJA2BQQH.js.map +0 -6
  73. package/bundles/chunk-WJ34B4FT.js.map +0 -6
  74. package/bundles/chunk-ZSQCUET7.js.map +0 -6
@@ -9,7 +9,7 @@
9
9
  import { AbsoluteFsPath } from '../../../src/ngtsc/file_system';
10
10
  import { PackageJsonUpdater } from '../writing/package_json_updater';
11
11
  import { EntryPointPackageJson, PackageJsonFormatProperties } from './entry_point';
12
- export declare const NGCC_VERSION = "14.2.0-next.1";
12
+ export declare const NGCC_VERSION = "14.2.1";
13
13
  /**
14
14
  * Returns true if there is a format in this entry-point that was compiled with an outdated version
15
15
  * of ngcc.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/compiler-cli",
3
- "version": "14.2.0-next.1",
3
+ "version": "14.2.1",
4
4
  "description": "Angular - the compiler CLI for Node.js",
5
5
  "typings": "index.d.ts",
6
6
  "bin": {
@@ -65,8 +65,8 @@
65
65
  "yargs": "^17.2.1"
66
66
  },
67
67
  "peerDependencies": {
68
- "@angular/compiler": "14.2.0-next.1",
69
- "typescript": ">=4.6.2 <4.8"
68
+ "@angular/compiler": "14.2.1",
69
+ "typescript": ">=4.6.2 <4.9"
70
70
  },
71
71
  "repository": {
72
72
  "type": "git",
@@ -56,5 +56,6 @@ export interface ComponentAnalysisData {
56
56
  rawImports: ts.Expression | null;
57
57
  resolvedImports: Reference<ClassDeclaration>[] | null;
58
58
  schemas: SchemaMetadata[] | null;
59
+ decorator: ts.Decorator | null;
59
60
  }
60
61
  export declare type ComponentResolutionData = Pick<R3ComponentMetadata<R3TemplateDependencyMetadata>, ComponentMetadataResolvedFields>;
@@ -7,6 +7,7 @@
7
7
  */
8
8
  /// <amd-module name="@angular/compiler-cli/src/ngtsc/annotations/directive/src/handler" />
9
9
  import { ConstantPool, R3ClassMetadata, R3DirectiveMetadata } from '@angular/compiler';
10
+ import ts from 'typescript';
10
11
  import { Reference } from '../../../imports';
11
12
  import { SemanticDepGraphUpdater } from '../../../incremental/semantic_graph';
12
13
  import { ClassPropertyMapping, DirectiveTypeCheckMeta, InjectableClassRegistry, MetadataReader, MetadataRegistry } from '../../../metadata';
@@ -26,6 +27,7 @@ export interface DirectiveHandlerData {
26
27
  outputs: ClassPropertyMapping;
27
28
  isPoisoned: boolean;
28
29
  isStructural: boolean;
30
+ decorator: ts.Decorator | null;
29
31
  }
30
32
  export declare class DirectiveDecoratorHandler implements DecoratorHandler<Decorator | null, DirectiveHandlerData, DirectiveSymbol, unknown> {
31
33
  private reflector;
@@ -36,6 +36,7 @@ export interface NgModuleAnalysis {
36
36
  providersRequiringFactory: Set<Reference<ClassDeclaration>> | null;
37
37
  providers: ts.Expression | null;
38
38
  remoteScopesMayRequireCycleProtection: boolean;
39
+ decorator: ts.Decorator | null;
39
40
  }
40
41
  export interface NgModuleResolution {
41
42
  injectorImports: Expression[];
@@ -19,6 +19,7 @@ export interface PipeHandlerData {
19
19
  meta: R3PipeMetadata;
20
20
  classMetadata: R3ClassMetadata | null;
21
21
  pipeNameExpr: ts.Expression;
22
+ decorator: ts.Decorator | null;
22
23
  }
23
24
  /**
24
25
  * Represents an Angular pipe.
@@ -12,6 +12,10 @@ import { BazelAndG3Options, DiagnosticOptions, I18nOptions, LegacyNgcOptions, Mi
12
12
  * Non-public options which are useful during testing of the compiler.
13
13
  */
14
14
  export interface TestOnlyOptions {
15
+ /**
16
+ * Enable the Language Service APIs for template type-checking for tests.
17
+ */
18
+ _enableTemplateTypeChecker?: boolean;
15
19
  /**
16
20
  * An option to enable ngtsc's internal performance tracing.
17
21
  *
@@ -100,7 +100,6 @@ export declare class NgCompiler {
100
100
  readonly programDriver: ProgramDriver;
101
101
  readonly incrementalStrategy: IncrementalBuildStrategy;
102
102
  readonly incrementalCompilation: IncrementalCompilation;
103
- readonly enableTemplateTypeChecker: boolean;
104
103
  readonly usePoisonedData: boolean;
105
104
  private livePerfRecorder;
106
105
  /**
@@ -130,6 +129,7 @@ export declare class NgCompiler {
130
129
  private cycleAnalyzer;
131
130
  readonly ignoreForDiagnostics: Set<ts.SourceFile>;
132
131
  readonly ignoreForEmit: Set<ts.SourceFile>;
132
+ readonly enableTemplateTypeChecker: boolean;
133
133
  /**
134
134
  * `NgCompiler` can be reused for multiple compilations (for resource-only changes), and each
135
135
  * new compilation uses a fresh `PerfRecorder`. Thus, classes created with a lifespan of the
@@ -42,6 +42,12 @@ export interface NgModuleMeta {
42
42
  * because the module came from a .d.ts file).
43
43
  */
44
44
  rawExports: ts.Expression | null;
45
+ /**
46
+ * The primary decorator associated with this `ngModule`.
47
+ *
48
+ * If this is `null`, no decorator exists, meaning it's probably from a .d.ts file.
49
+ */
50
+ decorator: ts.Decorator | null;
45
51
  }
46
52
  /**
47
53
  * Typing metadata collected for a directive within an NgModule's scope.
@@ -137,6 +143,12 @@ export interface DirectiveMeta extends T2DirectiveMeta, DirectiveTypeCheckMeta {
137
143
  * For standalone components, the list of schemas declared.
138
144
  */
139
145
  schemas: SchemaMetadata[] | null;
146
+ /**
147
+ * The primary decorator associated with this directive.
148
+ *
149
+ * If this is `null`, no decorator exists, meaning it's probably from a .d.ts file.
150
+ */
151
+ decorator: ts.Decorator | null;
140
152
  }
141
153
  /**
142
154
  * Metadata that describes a template guard for one of the directive's inputs.
@@ -164,6 +176,7 @@ export interface PipeMeta {
164
176
  name: string;
165
177
  nameExpr: ts.Expression | null;
166
178
  isStandalone: boolean;
179
+ decorator: ts.Decorator | null;
167
180
  }
168
181
  /**
169
182
  * Reads metadata for directives, pipes, and modules from a particular source, such as .d.ts files
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ /// <amd-module name="@angular/compiler-cli/src/ngtsc/ts_compatibility" />
9
+ export * from './src/ts_cross_version_utils';
@@ -0,0 +1,161 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ /// <amd-module name="@angular/compiler-cli/src/ngtsc/ts_compatibility/src/ts_cross_version_utils" />
9
+ import ts from 'typescript';
10
+ /** Equivalent of `ts.ModifierLike` which is only present in TS 4.8+. */
11
+ export declare type ModifierLike = ts.Modifier | ts.Decorator;
12
+ /** Type of `ts.factory.updateTypeParameterDeclaration` in TS 4.7+. */
13
+ declare type Ts47UpdateTypeParameterDeclarationFn = (node: ts.TypeParameterDeclaration, modifiers: readonly ts.Modifier[] | undefined, name: ts.Identifier, constraint: ts.TypeNode | undefined, defaultType: ts.TypeNode | undefined) => ts.TypeParameterDeclaration;
14
+ /**
15
+ * Updates a `ts.TypeParameter` declaration.
16
+ *
17
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.7.
18
+ * We should remove it once we have dropped support for the older versions.
19
+ */
20
+ export declare const updateTypeParameterDeclaration: Ts47UpdateTypeParameterDeclarationFn;
21
+ /** Type of `ts.factory.updateParameterDeclaration` in TS 4.8+. */
22
+ declare type Ts48UpdateParameterDeclarationFn = (node: ts.ParameterDeclaration, modifiers: readonly ModifierLike[] | undefined, dotDotDotToken: ts.DotDotDotToken | undefined, name: string | ts.BindingName, questionToken: ts.QuestionToken | undefined, type: ts.TypeNode | undefined, initializer: ts.Expression | undefined) => ts.ParameterDeclaration;
23
+ /**
24
+ * Updates a `ts.ParameterDeclaration` declaration.
25
+ *
26
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
27
+ * We should remove it once we have dropped support for the older versions.
28
+ */
29
+ export declare const updateParameterDeclaration: Ts48UpdateParameterDeclarationFn;
30
+ /** Type of `ts.factory.updateImportDeclaration` in TS 4.8+. */
31
+ declare type Ts48UpdateImportDeclarationFn = (node: ts.ImportDeclaration, modifiers: readonly ts.Modifier[] | undefined, importClause: ts.ImportClause | undefined, moduleSpecifier: ts.Expression, assertClause: ts.AssertClause | undefined) => ts.ImportDeclaration;
32
+ /**
33
+ * Updates a `ts.ImportDeclaration` declaration.
34
+ *
35
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
36
+ * We should remove it once we have dropped support for the older versions.
37
+ */
38
+ export declare const updateImportDeclaration: Ts48UpdateImportDeclarationFn;
39
+ /** Type of `ts.factory.updateClassDeclaration` in TS 4.8+. */
40
+ declare type Ts48UpdateClassDeclarationFn = (node: ts.ClassDeclaration, modifiers: readonly ModifierLike[] | undefined, name: ts.Identifier | undefined, typeParameters: readonly ts.TypeParameterDeclaration[] | undefined, heritageClauses: readonly ts.HeritageClause[] | undefined, members: readonly ts.ClassElement[]) => ts.ClassDeclaration;
41
+ /**
42
+ * Updates a `ts.ClassDeclaration` declaration.
43
+ *
44
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
45
+ * We should remove it once we have dropped support for the older versions.
46
+ */
47
+ export declare const updateClassDeclaration: Ts48UpdateClassDeclarationFn;
48
+ /** Type of `ts.factory.createClassDeclaration` in TS 4.8+. */
49
+ declare type Ts48CreateClassDeclarationFn = (modifiers: readonly ModifierLike[] | undefined, name: ts.Identifier | undefined, typeParameters: readonly ts.TypeParameterDeclaration[] | undefined, heritageClauses: readonly ts.HeritageClause[] | undefined, members: readonly ts.ClassElement[]) => ts.ClassDeclaration;
50
+ /**
51
+ * Creates a `ts.ClassDeclaration` declaration.
52
+ *
53
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
54
+ * We should remove it once we have dropped support for the older versions.
55
+ */
56
+ export declare const createClassDeclaration: Ts48CreateClassDeclarationFn;
57
+ /** Type of `ts.factory.updateMethodDeclaration` in TS 4.8+. */
58
+ declare type Ts48UpdateMethodDeclarationFn = (node: ts.MethodDeclaration, modifiers: readonly ModifierLike[] | undefined, asteriskToken: ts.AsteriskToken | undefined, name: ts.PropertyName, questionToken: ts.QuestionToken | undefined, typeParameters: readonly ts.TypeParameterDeclaration[] | undefined, parameters: readonly ts.ParameterDeclaration[], type: ts.TypeNode | undefined, body: ts.Block | undefined) => ts.MethodDeclaration;
59
+ /**
60
+ * Updates a `ts.MethodDeclaration` declaration.
61
+ *
62
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
63
+ * We should remove it once we have dropped support for the older versions.
64
+ */
65
+ export declare const updateMethodDeclaration: Ts48UpdateMethodDeclarationFn;
66
+ /** Type of `ts.factory.createMethodDeclaration` in TS 4.8+. */
67
+ declare type Ts48CreateMethodDeclarationFn = (modifiers: readonly ModifierLike[] | undefined, asteriskToken: ts.AsteriskToken | undefined, name: ts.PropertyName, questionToken: ts.QuestionToken | undefined, typeParameters: readonly ts.TypeParameterDeclaration[] | undefined, parameters: readonly ts.ParameterDeclaration[], type: ts.TypeNode | undefined, body: ts.Block | undefined) => ts.MethodDeclaration;
68
+ /**
69
+ * Creates a `ts.MethodDeclaration` declaration.
70
+ *
71
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
72
+ * We should remove it once we have dropped support for the older versions.
73
+ */
74
+ export declare const createMethodDeclaration: Ts48CreateMethodDeclarationFn;
75
+ /** Type of `ts.factory.updatePropertyDeclaration` in TS 4.8+. */
76
+ declare type Ts48UpdatePropertyDeclarationFn = (node: ts.PropertyDeclaration, modifiers: readonly ModifierLike[] | undefined, name: string | ts.PropertyName, questionOrExclamationToken: ts.QuestionToken | ts.ExclamationToken | undefined, type: ts.TypeNode | undefined, initializer: ts.Expression | undefined) => ts.PropertyDeclaration;
77
+ /**
78
+ * Updates a `ts.PropertyDeclaration` declaration.
79
+ *
80
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
81
+ * We should remove it once we have dropped support for the older versions.
82
+ */
83
+ export declare const updatePropertyDeclaration: Ts48UpdatePropertyDeclarationFn;
84
+ /** Type of `ts.factory.createPropertyDeclaration` in TS 4.8+. */
85
+ declare type Ts48CreatePropertyDeclarationFn = (modifiers: readonly ModifierLike[] | undefined, name: string | ts.PropertyName, questionOrExclamationToken: ts.QuestionToken | ts.ExclamationToken | undefined, type: ts.TypeNode | undefined, initializer: ts.Expression | undefined) => ts.PropertyDeclaration;
86
+ /**
87
+ * Creates a `ts.PropertyDeclaration` declaration.
88
+ *
89
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
90
+ * We should remove it once we have dropped support for the older versions.
91
+ */
92
+ export declare const createPropertyDeclaration: Ts48CreatePropertyDeclarationFn;
93
+ /** Type of `ts.factory.updateGetAccessorDeclaration` in TS 4.8+. */
94
+ declare type Ts48UpdateGetAccessorDeclarationFn = (node: ts.GetAccessorDeclaration, modifiers: readonly ModifierLike[] | undefined, name: ts.PropertyName, parameters: readonly ts.ParameterDeclaration[], type: ts.TypeNode | undefined, body: ts.Block | undefined) => ts.GetAccessorDeclaration;
95
+ /**
96
+ * Updates a `ts.GetAccessorDeclaration` declaration.
97
+ *
98
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
99
+ * We should remove it once we have dropped support for the older versions.
100
+ */
101
+ export declare const updateGetAccessorDeclaration: Ts48UpdateGetAccessorDeclarationFn;
102
+ /** Type of `ts.factory.createGetAccessorDeclaration` in TS 4.8+. */
103
+ declare type Ts48CreateGetAccessorDeclarationFn = (modifiers: readonly ModifierLike[] | undefined, name: ts.PropertyName, parameters: readonly ts.ParameterDeclaration[], type: ts.TypeNode | undefined, body: ts.Block | undefined) => ts.GetAccessorDeclaration;
104
+ /**
105
+ * Creates a `ts.GetAccessorDeclaration` declaration.
106
+ *
107
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
108
+ * We should remove it once we have dropped support for the older versions.
109
+ */
110
+ export declare const createGetAccessorDeclaration: Ts48CreateGetAccessorDeclarationFn;
111
+ /** Type of `ts.factory.updateSetAccessorDeclaration` in TS 4.8+. */
112
+ declare type Ts48UpdateSetAccessorDeclarationFn = (node: ts.SetAccessorDeclaration, modifiers: readonly ModifierLike[] | undefined, name: ts.PropertyName, parameters: readonly ts.ParameterDeclaration[], body: ts.Block | undefined) => ts.SetAccessorDeclaration;
113
+ /**
114
+ * Updates a `ts.GetAccessorDeclaration` declaration.
115
+ *
116
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
117
+ * We should remove it once we have dropped support for the older versions.
118
+ */
119
+ export declare const updateSetAccessorDeclaration: Ts48UpdateSetAccessorDeclarationFn;
120
+ /** Type of `ts.factory.createSetAccessorDeclaration` in TS 4.8+. */
121
+ declare type Ts48CreateSetAccessorDeclarationFn = (modifiers: readonly ModifierLike[] | undefined, name: ts.PropertyName, parameters: readonly ts.ParameterDeclaration[], body: ts.Block | undefined) => ts.SetAccessorDeclaration;
122
+ /**
123
+ * Creates a `ts.GetAccessorDeclaration` declaration.
124
+ *
125
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
126
+ * We should remove it once we have dropped support for the older versions.
127
+ */
128
+ export declare const createSetAccessorDeclaration: Ts48CreateSetAccessorDeclarationFn;
129
+ /** Type of `ts.factory.updateConstructorDeclaration` in TS 4.8+. */
130
+ declare type Ts48UpdateConstructorDeclarationFn = (node: ts.ConstructorDeclaration, modifiers: readonly ts.Modifier[] | undefined, parameters: readonly ts.ParameterDeclaration[], body: ts.Block | undefined) => ts.ConstructorDeclaration;
131
+ /**
132
+ * Updates a `ts.ConstructorDeclaration` declaration.
133
+ *
134
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
135
+ * We should remove it once we have dropped support for the older versions.
136
+ */
137
+ export declare const updateConstructorDeclaration: Ts48UpdateConstructorDeclarationFn;
138
+ /**
139
+ * Gets the decorators that have been applied to a node.
140
+ *
141
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
142
+ * We should remove it once we have dropped support for the older versions.
143
+ */
144
+ export declare const getDecorators: (node: ts.Node) => readonly ts.Decorator[] | undefined;
145
+ /**
146
+ * Gets the modifiers that have been set on a node.
147
+ *
148
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
149
+ * We should remove it once we have dropped support for the older versions.
150
+ */
151
+ export declare const getModifiers: (node: ts.Node) => readonly ts.Modifier[] | undefined;
152
+ /**
153
+ * Combines an optional array of decorators with an optional array of modifiers into a single
154
+ * `ts.ModifierLike` array. Used in version of TypeScript after 4.8 where the `decorators` and
155
+ * `modifiers` arrays have been combined.
156
+ *
157
+ * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.8.
158
+ * We should remove it once we have dropped support for the older versions.
159
+ */
160
+ export declare function combineModifiers(decorators: readonly ts.Decorator[] | undefined, modifiers: readonly ModifierLike[] | undefined): readonly ModifierLike[] | undefined;
161
+ export {};
@@ -122,6 +122,16 @@ export interface TemplateTypeChecker {
122
122
  * the DOM schema.
123
123
  */
124
124
  getPotentialElementTags(component: ts.ClassDeclaration): Map<string, DirectiveInScope | null>;
125
+ /**
126
+ * Get the primary decorator for an Angular class (such as @Component). This does not work for
127
+ * `@Injectable`.
128
+ */
129
+ getPrimaryAngularDecorator(target: ts.ClassDeclaration): ts.Decorator | null;
130
+ /**
131
+ * Get the class of the NgModule that owns this Angular trait. If the result is `null`, that
132
+ * probably means the provided component is standalone.
133
+ */
134
+ getOwningNgModule(component: ts.ClassDeclaration): ts.ClassDeclaration | null;
125
135
  /**
126
136
  * Retrieve any potential DOM bindings for the given element.
127
137
  *
@@ -161,16 +171,16 @@ export interface TemplateTypeChecker {
161
171
  */
162
172
  export declare enum OptimizeFor {
163
173
  /**
164
- * Indicates that a consumer of a `TemplateTypeChecker` is only interested in results for a given
165
- * file, and wants them as fast as possible.
174
+ * Indicates that a consumer of a `TemplateTypeChecker` is only interested in results for a
175
+ * given file, and wants them as fast as possible.
166
176
  *
167
177
  * Calling `TemplateTypeChecker` methods successively for multiple files while specifying
168
178
  * `OptimizeFor.SingleFile` can result in significant unnecessary overhead overall.
169
179
  */
170
180
  SingleFile = 0,
171
181
  /**
172
- * Indicates that a consumer of a `TemplateTypeChecker` intends to query for results pertaining to
173
- * the entire user program, and so the type-checker should internally optimize for this case.
182
+ * Indicates that a consumer of a `TemplateTypeChecker` intends to query for results pertaining
183
+ * to the entire user program, and so the type-checker should internally optimize for this case.
174
184
  *
175
185
  * Initial calls to retrieve type-checking information may take longer, but repeated calls to
176
186
  * gather information for the whole user program will be significantly faster with this mode of
@@ -12,6 +12,7 @@ import { ErrorCode } from '../../diagnostics';
12
12
  import { AbsoluteFsPath } from '../../file_system';
13
13
  import { ReferenceEmitter } from '../../imports';
14
14
  import { IncrementalBuild } from '../../incremental/api';
15
+ import { MetadataReader } from '../../metadata';
15
16
  import { PerfRecorder } from '../../perf';
16
17
  import { ProgramDriver } from '../../program_driver';
17
18
  import { ReflectionHost } from '../../reflection';
@@ -33,6 +34,7 @@ export declare class TemplateTypeCheckerImpl implements TemplateTypeChecker {
33
34
  private reflector;
34
35
  private compilerHost;
35
36
  private priorBuild;
37
+ private readonly metaReader;
36
38
  private readonly componentScopeReader;
37
39
  private readonly typeCheckScopeRegistry;
38
40
  private readonly perf;
@@ -71,7 +73,7 @@ export declare class TemplateTypeCheckerImpl implements TemplateTypeChecker {
71
73
  */
72
74
  private elementTagCache;
73
75
  private isComplete;
74
- constructor(originalProgram: ts.Program, programDriver: ProgramDriver, typeCheckAdapter: ProgramTypeCheckAdapter, config: TypeCheckingConfig, refEmitter: ReferenceEmitter, reflector: ReflectionHost, compilerHost: Pick<ts.CompilerHost, 'getCanonicalFileName'>, priorBuild: IncrementalBuild<unknown, FileTypeCheckingData>, componentScopeReader: ComponentScopeReader, typeCheckScopeRegistry: TypeCheckScopeRegistry, perf: PerfRecorder);
76
+ constructor(originalProgram: ts.Program, programDriver: ProgramDriver, typeCheckAdapter: ProgramTypeCheckAdapter, config: TypeCheckingConfig, refEmitter: ReferenceEmitter, reflector: ReflectionHost, compilerHost: Pick<ts.CompilerHost, 'getCanonicalFileName'>, priorBuild: IncrementalBuild<unknown, FileTypeCheckingData>, metaReader: MetadataReader, componentScopeReader: ComponentScopeReader, typeCheckScopeRegistry: TypeCheckScopeRegistry, perf: PerfRecorder);
75
77
  getTemplate(component: ts.ClassDeclaration): TmplAstNode[] | null;
76
78
  private getLatestComponentState;
77
79
  isTrackedTypeCheckFile(filePath: AbsoluteFsPath): boolean;
@@ -123,6 +125,8 @@ export declare class TemplateTypeCheckerImpl implements TemplateTypeChecker {
123
125
  property: string;
124
126
  }[];
125
127
  getPotentialDomEvents(tagName: string): string[];
128
+ getPrimaryAngularDecorator(target: ts.ClassDeclaration): ts.Decorator | null;
129
+ getOwningNgModule(component: ts.ClassDeclaration): ts.ClassDeclaration | null;
126
130
  private getScopeData;
127
131
  }
128
132
  /**
@@ -44,11 +44,4 @@ export declare function tsCreateVariable(id: ts.Identifier, initializer: ts.Expr
44
44
  * Construct a `ts.CallExpression` that calls a method on a receiver.
45
45
  */
46
46
  export declare function tsCallMethod(receiver: ts.Expression, methodName: string, args?: ts.Expression[]): ts.CallExpression;
47
- /**
48
- * Updates a `ts.TypeParameter` declaration.
49
- *
50
- * TODO(crisbeto): this is a backwards-compatibility layer for versions of TypeScript less than 4.7.
51
- * We should remove it once we have dropped support for the older versions.
52
- */
53
- export declare function tsUpdateTypeParameterDeclaration(node: ts.TypeParameterDeclaration, name: ts.Identifier, constraint: ts.TypeNode | undefined, defaultType: ts.TypeNode | undefined): ts.TypeParameterDeclaration;
54
47
  export declare function isAccessExpression(node: ts.Node): node is ts.ElementAccessExpression | ts.PropertyAccessExpression;
@@ -231,7 +231,7 @@ declare class Scope {
231
231
  * @param directive if present, a directive type on a `TmplAstElement` or `TmplAstTemplate` to
232
232
  * look up instead of the default for an element or template node.
233
233
  */
234
- resolve(node: TmplAstElement | TmplAstTemplate | TmplAstVariable | TmplAstReference, directive?: TypeCheckableDirectiveMeta): ts.Expression;
234
+ resolve(node: TmplAstElement | TmplAstTemplate | TmplAstVariable | TmplAstReference, directive?: TypeCheckableDirectiveMeta): ts.Identifier | ts.NonNullExpression;
235
235
  /**
236
236
  * Add a statement to this scope.
237
237
  */
@@ -1,6 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../../packages/compiler-cli/src/ngtsc/reflection/src/typescript.ts", "../../../../../../packages/compiler-cli/src/ngtsc/reflection/src/host.ts", "../../../../../../packages/compiler-cli/src/ngtsc/reflection/src/type_to_value.ts", "../../../../../../packages/compiler-cli/src/ngtsc/reflection/src/util.ts", "../../../../../../packages/compiler-cli/src/ngtsc/reflection/index.ts"],
4
- "mappings": "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",
5
- "names": []
6
- }