@angular/compiler-cli 11.1.0-next.4 → 11.1.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 (147) hide show
  1. package/linker/babel/src/ast/babel_ast_factory.d.ts +5 -0
  2. package/linker/babel/src/ast/babel_ast_factory.js +10 -5
  3. package/linker/babel/src/es2015_linker_plugin.d.ts +2 -2
  4. package/linker/babel/src/es2015_linker_plugin.js +26 -11
  5. package/linker/babel/src/linker_plugin_options.d.ts +21 -0
  6. package/linker/babel/src/linker_plugin_options.js +13 -0
  7. package/linker/src/file_linker/emit_scopes/emit_scope.d.ts +3 -3
  8. package/linker/src/file_linker/emit_scopes/emit_scope.js +6 -6
  9. package/linker/src/file_linker/emit_scopes/iife_emit_scope.d.ts +4 -0
  10. package/linker/src/file_linker/emit_scopes/iife_emit_scope.js +9 -8
  11. package/linker/src/file_linker/file_linker.d.ts +2 -3
  12. package/linker/src/file_linker/file_linker.js +6 -7
  13. package/linker/src/file_linker/get_source_file.d.ts +19 -0
  14. package/linker/src/file_linker/get_source_file.js +42 -0
  15. package/linker/src/file_linker/linker_environment.d.ts +8 -2
  16. package/linker/src/file_linker/linker_environment.js +11 -6
  17. package/linker/src/file_linker/linker_options.d.ts +5 -0
  18. package/linker/src/file_linker/linker_options.js +2 -1
  19. package/linker/src/file_linker/partial_linkers/partial_component_linker_1.d.ts +24 -10
  20. package/linker/src/file_linker/partial_linkers/partial_component_linker_1.js +138 -97
  21. package/linker/src/file_linker/partial_linkers/partial_directive_linker_1.d.ts +6 -2
  22. package/linker/src/file_linker/partial_linkers/partial_directive_linker_1.js +7 -4
  23. package/linker/src/file_linker/partial_linkers/partial_linker.d.ts +1 -1
  24. package/linker/src/file_linker/partial_linkers/partial_linker.js +1 -1
  25. package/linker/src/file_linker/partial_linkers/partial_linker_selector.d.ts +21 -18
  26. package/linker/src/file_linker/partial_linkers/partial_linker_selector.js +37 -31
  27. package/ngcc/src/analysis/decoration_analyzer.d.ts +3 -3
  28. package/ngcc/src/analysis/decoration_analyzer.js +3 -3
  29. package/ngcc/src/command_line_options.js +4 -3
  30. package/ngcc/src/dependencies/dependency_host.d.ts +3 -3
  31. package/ngcc/src/dependencies/dependency_host.js +1 -1
  32. package/ngcc/src/dependencies/dependency_resolver.d.ts +2 -2
  33. package/ngcc/src/dependencies/dependency_resolver.js +3 -4
  34. package/ngcc/src/dependencies/dts_dependency_host.d.ts +2 -2
  35. package/ngcc/src/dependencies/dts_dependency_host.js +1 -1
  36. package/ngcc/src/dependencies/esm_dependency_host.d.ts +2 -2
  37. package/ngcc/src/dependencies/esm_dependency_host.js +1 -1
  38. package/ngcc/src/dependencies/module_resolver.d.ts +2 -2
  39. package/ngcc/src/dependencies/module_resolver.js +15 -24
  40. package/ngcc/src/entry_point_finder/entry_point_collector.d.ts +2 -2
  41. package/ngcc/src/entry_point_finder/entry_point_collector.js +1 -1
  42. package/ngcc/src/entry_point_finder/program_based_entry_point_finder.d.ts +2 -2
  43. package/ngcc/src/entry_point_finder/program_based_entry_point_finder.js +2 -2
  44. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.d.ts +11 -2
  45. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.js +24 -20
  46. package/ngcc/src/entry_point_finder/tracing_entry_point_finder.d.ts +3 -3
  47. package/ngcc/src/entry_point_finder/tracing_entry_point_finder.js +1 -1
  48. package/ngcc/src/entry_point_finder/utils.d.ts +0 -9
  49. package/ngcc/src/entry_point_finder/utils.js +8 -9
  50. package/ngcc/src/execution/cluster/executor.d.ts +2 -2
  51. package/ngcc/src/execution/cluster/executor.js +1 -1
  52. package/ngcc/src/execution/cluster/master.d.ts +2 -2
  53. package/ngcc/src/execution/cluster/master.js +1 -1
  54. package/ngcc/src/execution/tasks/completion.d.ts +4 -4
  55. package/ngcc/src/execution/tasks/completion.js +4 -12
  56. package/ngcc/src/host/umd_host.js +2 -2
  57. package/ngcc/src/locking/lock_file.d.ts +2 -2
  58. package/ngcc/src/locking/lock_file.js +1 -1
  59. package/ngcc/src/main.js +6 -6
  60. package/ngcc/src/ngcc_options.js +2 -2
  61. package/ngcc/src/packages/build_marker.d.ts +1 -1
  62. package/ngcc/src/packages/build_marker.js +1 -1
  63. package/ngcc/src/packages/bundle_program.d.ts +3 -3
  64. package/ngcc/src/packages/bundle_program.js +6 -7
  65. package/ngcc/src/packages/configuration.d.ts +3 -3
  66. package/ngcc/src/packages/configuration.js +8 -9
  67. package/ngcc/src/packages/entry_point.d.ts +3 -3
  68. package/ngcc/src/packages/entry_point.js +13 -16
  69. package/ngcc/src/packages/entry_point_bundle.js +1 -1
  70. package/ngcc/src/packages/source_file_cache.d.ts +6 -6
  71. package/ngcc/src/packages/source_file_cache.js +1 -1
  72. package/ngcc/src/packages/transformer.d.ts +2 -2
  73. package/ngcc/src/packages/transformer.js +6 -6
  74. package/ngcc/src/path_mappings.d.ts +2 -2
  75. package/ngcc/src/path_mappings.js +4 -12
  76. package/ngcc/src/rendering/commonjs_rendering_formatter.d.ts +9 -1
  77. package/ngcc/src/rendering/commonjs_rendering_formatter.js +6 -13
  78. package/ngcc/src/rendering/dts_renderer.d.ts +2 -2
  79. package/ngcc/src/rendering/dts_renderer.js +1 -1
  80. package/ngcc/src/rendering/esm_rendering_formatter.d.ts +4 -3
  81. package/ngcc/src/rendering/esm_rendering_formatter.js +7 -5
  82. package/ngcc/src/rendering/renderer.d.ts +2 -2
  83. package/ngcc/src/rendering/renderer.js +1 -1
  84. package/ngcc/src/rendering/source_maps.d.ts +2 -2
  85. package/ngcc/src/rendering/source_maps.js +18 -19
  86. package/ngcc/src/rendering/umd_rendering_formatter.d.ts +9 -1
  87. package/ngcc/src/rendering/umd_rendering_formatter.js +6 -13
  88. package/ngcc/src/utils.d.ts +2 -2
  89. package/ngcc/src/utils.js +1 -1
  90. package/ngcc/src/writing/cleaning/package_cleaner.d.ts +2 -2
  91. package/ngcc/src/writing/cleaning/package_cleaner.js +1 -1
  92. package/ngcc/src/writing/cleaning/utils.d.ts +2 -2
  93. package/ngcc/src/writing/cleaning/utils.js +1 -1
  94. package/ngcc/src/writing/new_entry_point_file_writer.d.ts +14 -1
  95. package/ngcc/src/writing/new_entry_point_file_writer.js +54 -18
  96. package/package.json +2 -2
  97. package/src/ngtsc/annotations/src/component.d.ts +48 -10
  98. package/src/ngtsc/annotations/src/component.js +197 -116
  99. package/src/ngtsc/annotations/src/directive.js +18 -3
  100. package/src/ngtsc/core/api/src/public_options.d.ts +2 -2
  101. package/src/ngtsc/core/api/src/public_options.js +1 -1
  102. package/src/ngtsc/core/index.d.ts +1 -1
  103. package/src/ngtsc/core/index.js +5 -5
  104. package/src/ngtsc/core/src/compiler.d.ts +95 -12
  105. package/src/ngtsc/core/src/compiler.js +240 -81
  106. package/src/ngtsc/diagnostics/index.d.ts +1 -1
  107. package/src/ngtsc/diagnostics/index.js +4 -2
  108. package/src/ngtsc/diagnostics/src/error_code.d.ts +6 -1
  109. package/src/ngtsc/diagnostics/src/error_code.js +29 -2
  110. package/src/ngtsc/file_system/index.d.ts +1 -1
  111. package/src/ngtsc/file_system/index.js +1 -1
  112. package/src/ngtsc/file_system/src/node_js_file_system.d.ts +29 -19
  113. package/src/ngtsc/file_system/src/node_js_file_system.js +102 -80
  114. package/src/ngtsc/file_system/src/types.d.ts +34 -23
  115. package/src/ngtsc/file_system/src/types.js +1 -1
  116. package/src/ngtsc/incremental/src/strategy.d.ts +7 -0
  117. package/src/ngtsc/incremental/src/strategy.js +7 -1
  118. package/src/ngtsc/program.js +51 -20
  119. package/src/ngtsc/resource/src/loader.d.ts +4 -0
  120. package/src/ngtsc/resource/src/loader.js +7 -1
  121. package/src/ngtsc/sourcemaps/index.d.ts +3 -2
  122. package/src/ngtsc/sourcemaps/index.js +12 -3
  123. package/src/ngtsc/sourcemaps/src/content_origin.d.ts +34 -0
  124. package/src/ngtsc/sourcemaps/src/content_origin.js +48 -0
  125. package/src/ngtsc/sourcemaps/src/raw_source_map.d.ts +19 -1
  126. package/src/ngtsc/sourcemaps/src/raw_source_map.js +1 -8
  127. package/src/ngtsc/sourcemaps/src/segment_marker.d.ts +1 -1
  128. package/src/ngtsc/sourcemaps/src/segment_marker.js +1 -1
  129. package/src/ngtsc/sourcemaps/src/source_file.d.ts +7 -11
  130. package/src/ngtsc/sourcemaps/src/source_file.js +108 -32
  131. package/src/ngtsc/sourcemaps/src/source_file_loader.d.ts +36 -16
  132. package/src/ngtsc/sourcemaps/src/source_file_loader.js +72 -19
  133. package/src/ngtsc/transform/src/api.d.ts +5 -0
  134. package/src/ngtsc/transform/src/api.js +1 -1
  135. package/src/ngtsc/transform/src/compilation.d.ts +1 -0
  136. package/src/ngtsc/transform/src/compilation.js +40 -17
  137. package/src/ngtsc/tsc_plugin.js +26 -5
  138. package/src/ngtsc/typecheck/api/checker.d.ts +5 -0
  139. package/src/ngtsc/typecheck/api/checker.js +1 -1
  140. package/src/ngtsc/typecheck/src/checker.d.ts +1 -0
  141. package/src/ngtsc/typecheck/src/checker.js +17 -1
  142. package/src/ngtsc/typecheck/src/template_symbol_builder.js +104 -55
  143. package/src/perform_compile.d.ts +2 -2
  144. package/src/perform_compile.js +1 -1
  145. package/src/transformers/downlevel_decorators_transform.js +7 -8
  146. package/src/transformers/patch_alias_reference_resolution.js +25 -13
  147. package/src/version.js +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/compiler-cli",
3
- "version": "11.1.0-next.4",
3
+ "version": "11.1.1",
4
4
  "description": "Angular - the compiler CLI for Node.js",
5
5
  "main": "index.js",
6
6
  "typings": "index.d.ts",
@@ -28,7 +28,7 @@
28
28
  "yargs": "^16.1.1"
29
29
  },
30
30
  "peerDependencies": {
31
- "@angular/compiler": "11.1.0-next.4",
31
+ "@angular/compiler": "11.1.1",
32
32
  "typescript": ">=4.0 <4.2"
33
33
  },
34
34
  "engines": {
@@ -6,7 +6,8 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  /// <amd-module name="@angular/compiler-cli/src/ngtsc/annotations/src/component" />
9
- import { ConstantPool, ParsedTemplate, ParseSourceFile, R3ComponentMetadata, Statement, TmplAstNode } from '@angular/compiler';
9
+ import { ConstantPool, InterpolationConfig, ParsedTemplate, ParseSourceFile, R3ComponentMetadata, Statement, TmplAstNode } from '@angular/compiler';
10
+ import * as ts from 'typescript';
10
11
  import { CycleAnalyzer } from '../../cycles';
11
12
  import { DefaultImportRecorder, ModuleResolver, Reference, ReferenceEmitter } from '../../imports';
12
13
  import { DependencyTracker } from '../../incremental/api';
@@ -49,6 +50,14 @@ export interface ComponentAnalysisData {
49
50
  */
50
51
  viewProvidersRequiringFactory: Set<Reference<ClassDeclaration>> | null;
51
52
  resources: ComponentResources;
53
+ /**
54
+ * The literal `styleUrls` extracted from the decorator, if present.
55
+ */
56
+ styleUrls: string[] | null;
57
+ /**
58
+ * Inline stylesheets extracted from the decorator, if present.
59
+ */
60
+ inlineStyles: string[] | null;
52
61
  isPoisoned: boolean;
53
62
  }
54
63
  export declare type ComponentResolutionData = Pick<R3ComponentMetadata, ComponentMetadataResolvedFields>;
@@ -97,6 +106,7 @@ export declare class ComponentDecoratorHandler implements DecoratorHandler<Decor
97
106
  index(context: IndexingContext, node: ClassDeclaration, analysis: Readonly<ComponentAnalysisData>): null | undefined;
98
107
  typeCheck(ctx: TypeCheckContext, node: ClassDeclaration, meta: Readonly<ComponentAnalysisData>): void;
99
108
  resolve(node: ClassDeclaration, analysis: Readonly<ComponentAnalysisData>): ResolveResult<ComponentResolutionData>;
109
+ updateResources(node: ClassDeclaration, analysis: ComponentAnalysisData): void;
100
110
  compileFull(node: ClassDeclaration, analysis: Readonly<ComponentAnalysisData>, resolution: Readonly<ComponentResolutionData>, pool: ConstantPool): CompileResult[];
101
111
  compilePartial(node: ClassDeclaration, analysis: Readonly<ComponentAnalysisData>, resolution: Readonly<ComponentResolutionData>): CompileResult[];
102
112
  private compileComponent;
@@ -105,9 +115,9 @@ export declare class ComponentDecoratorHandler implements DecoratorHandler<Decor
105
115
  private _extractStyleUrls;
106
116
  private _extractStyleResources;
107
117
  private _preloadAndParseTemplate;
108
- private _extractExternalTemplate;
109
- private _extractInlineTemplate;
118
+ private extractTemplate;
110
119
  private _parseTemplate;
120
+ private parseTemplateDeclaration;
111
121
  private _expressionToImportedFile;
112
122
  private _isCyclicImport;
113
123
  private _recordSyntheticImport;
@@ -119,13 +129,6 @@ export declare class ComponentDecoratorHandler implements DecoratorHandler<Decor
119
129
  * some of which might be useful for re-parsing the template with different options.
120
130
  */
121
131
  export interface ParsedComponentTemplate extends ParsedTemplate {
122
- /**
123
- * A full path to the file which contains the template.
124
- *
125
- * This can be either the original .ts file if the template is inline, or the .html file if an
126
- * external file was used.
127
- */
128
- templateUrl: string;
129
132
  /**
130
133
  * True if the original template was stored inline;
131
134
  * False if the template was in an external file.
@@ -144,4 +147,39 @@ export interface ParsedComponentTemplate extends ParsedTemplate {
144
147
  }
145
148
  export interface ParsedTemplateWithSource extends ParsedComponentTemplate {
146
149
  sourceMapping: TemplateSourceMapping;
150
+ declaration: TemplateDeclaration;
147
151
  }
152
+ /**
153
+ * Common fields extracted from the declaration of a template.
154
+ */
155
+ interface CommonTemplateDeclaration {
156
+ preserveWhitespaces: boolean;
157
+ interpolationConfig: InterpolationConfig;
158
+ templateUrl: string;
159
+ resolvedTemplateUrl: string;
160
+ sourceMapUrl: string;
161
+ }
162
+ /**
163
+ * Information extracted from the declaration of an inline template.
164
+ */
165
+ interface InlineTemplateDeclaration extends CommonTemplateDeclaration {
166
+ isInline: true;
167
+ expression: ts.Expression;
168
+ }
169
+ /**
170
+ * Information extracted from the declaration of an external template.
171
+ */
172
+ interface ExternalTemplateDeclaration extends CommonTemplateDeclaration {
173
+ isInline: false;
174
+ templateUrlExpression: ts.Expression;
175
+ }
176
+ /**
177
+ * The declaration of a template extracted from a component decorator.
178
+ *
179
+ * This data is extracted and stored separately to faciliate re-interpreting the template
180
+ * declaration whenever the compiler is notified of a change to a template file. With this
181
+ * information, `ComponentDecoratorHandler` is able to re-read the template and update the component
182
+ * record without needing to parse the original decorator again.
183
+ */
184
+ declare type TemplateDeclaration = InlineTemplateDeclaration | ExternalTemplateDeclaration;
185
+ export {};