@angular/compiler-cli 9.0.0-rc.6 → 9.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (255) hide show
  1. package/ngcc/src/analysis/decoration_analyzer.d.ts +13 -26
  2. package/ngcc/src/analysis/decoration_analyzer.js +100 -134
  3. package/ngcc/src/analysis/migration_host.d.ts +5 -16
  4. package/ngcc/src/analysis/migration_host.js +20 -91
  5. package/ngcc/src/analysis/module_with_providers_analyzer.js +2 -2
  6. package/ngcc/src/analysis/ngcc_trait_compiler.d.ts +42 -0
  7. package/ngcc/src/analysis/ngcc_trait_compiler.js +107 -0
  8. package/ngcc/src/analysis/private_declarations_analyzer.d.ts +0 -1
  9. package/ngcc/src/analysis/private_declarations_analyzer.js +4 -35
  10. package/ngcc/src/analysis/types.d.ts +6 -21
  11. package/ngcc/src/analysis/types.js +1 -1
  12. package/ngcc/src/analysis/util.d.ts +2 -5
  13. package/ngcc/src/analysis/util.js +11 -94
  14. package/ngcc/src/dependencies/commonjs_dependency_host.d.ts +1 -1
  15. package/ngcc/src/dependencies/commonjs_dependency_host.js +90 -39
  16. package/ngcc/src/dependencies/dependency_host.d.ts +7 -5
  17. package/ngcc/src/dependencies/dependency_host.js +12 -10
  18. package/ngcc/src/dependencies/dependency_resolver.d.ts +2 -1
  19. package/ngcc/src/dependencies/dependency_resolver.js +9 -4
  20. package/ngcc/src/dependencies/dts_dependency_host.d.ts +21 -0
  21. package/ngcc/src/dependencies/dts_dependency_host.js +34 -0
  22. package/ngcc/src/dependencies/esm_dependency_host.d.ts +8 -1
  23. package/ngcc/src/dependencies/esm_dependency_host.js +30 -22
  24. package/ngcc/src/dependencies/module_resolver.d.ts +1 -1
  25. package/ngcc/src/dependencies/module_resolver.js +1 -1
  26. package/ngcc/src/dependencies/umd_dependency_host.d.ts +1 -1
  27. package/ngcc/src/dependencies/umd_dependency_host.js +3 -3
  28. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.d.ts +2 -0
  29. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.js +49 -9
  30. package/ngcc/src/execution/cluster/executor.d.ts +3 -1
  31. package/ngcc/src/execution/cluster/executor.js +12 -7
  32. package/ngcc/src/execution/cluster/package_json_updater.js +3 -2
  33. package/ngcc/src/execution/cluster/worker.d.ts +3 -1
  34. package/ngcc/src/execution/cluster/worker.js +10 -7
  35. package/ngcc/src/execution/lock_file.d.ts +43 -0
  36. package/ngcc/src/execution/lock_file.js +129 -0
  37. package/ngcc/src/execution/single_process_executor.d.ts +3 -1
  38. package/ngcc/src/execution/single_process_executor.js +18 -15
  39. package/ngcc/src/execution/task_selection/base_task_queue.d.ts +1 -1
  40. package/ngcc/src/host/commonjs_host.d.ts +6 -18
  41. package/ngcc/src/host/commonjs_host.js +45 -81
  42. package/ngcc/src/host/commonjs_umd_utils.d.ts +73 -0
  43. package/ngcc/src/host/commonjs_umd_utils.js +109 -0
  44. package/ngcc/src/host/esm2015_host.d.ts +46 -14
  45. package/ngcc/src/host/esm2015_host.js +182 -55
  46. package/ngcc/src/host/esm5_host.js +3 -1
  47. package/ngcc/src/host/umd_host.d.ts +12 -5
  48. package/ngcc/src/host/umd_host.js +144 -92
  49. package/ngcc/src/main.js +65 -122
  50. package/ngcc/src/migrations/migration.d.ts +1 -0
  51. package/ngcc/src/migrations/migration.js +1 -1
  52. package/ngcc/src/packages/build_marker.d.ts +17 -8
  53. package/ngcc/src/packages/build_marker.js +61 -32
  54. package/ngcc/src/packages/entry_point_bundle.js +2 -2
  55. package/ngcc/src/packages/transformer.js +5 -6
  56. package/ngcc/src/rendering/commonjs_rendering_formatter.js +9 -5
  57. package/ngcc/src/rendering/dts_renderer.js +8 -5
  58. package/ngcc/src/rendering/esm_rendering_formatter.js +17 -5
  59. package/ngcc/src/rendering/renderer.js +4 -4
  60. package/ngcc/src/rendering/umd_rendering_formatter.d.ts +18 -1
  61. package/ngcc/src/rendering/umd_rendering_formatter.js +69 -16
  62. package/ngcc/src/utils.d.ts +14 -0
  63. package/ngcc/src/utils.js +29 -1
  64. package/ngcc/src/writing/cleaning/cleaning_strategies.d.ts +45 -0
  65. package/ngcc/src/writing/cleaning/cleaning_strategies.js +77 -0
  66. package/ngcc/src/writing/cleaning/package_cleaner.d.ts +39 -0
  67. package/ngcc/src/writing/cleaning/package_cleaner.js +125 -0
  68. package/ngcc/src/writing/cleaning/utils.d.ts +16 -0
  69. package/ngcc/src/writing/cleaning/utils.js +29 -0
  70. package/ngcc/src/writing/in_place_file_writer.d.ts +1 -0
  71. package/ngcc/src/writing/in_place_file_writer.js +3 -2
  72. package/ngcc/src/writing/new_entry_point_file_writer.d.ts +2 -0
  73. package/ngcc/src/writing/new_entry_point_file_writer.js +5 -4
  74. package/ngcc/src/writing/package_json_updater.d.ts +24 -10
  75. package/ngcc/src/writing/package_json_updater.js +53 -10
  76. package/package.json +6 -5
  77. package/src/main.d.ts +2 -2
  78. package/src/metadata/symbols.d.ts +1 -1
  79. package/src/ngtsc/annotations/src/component.d.ts +58 -20
  80. package/src/ngtsc/annotations/src/component.js +149 -97
  81. package/src/ngtsc/annotations/src/diagnostics.d.ts +23 -0
  82. package/src/ngtsc/annotations/src/diagnostics.js +123 -0
  83. package/src/ngtsc/annotations/src/directive.d.ts +19 -8
  84. package/src/ngtsc/annotations/src/directive.js +41 -18
  85. package/src/ngtsc/annotations/src/injectable.d.ts +8 -4
  86. package/src/ngtsc/annotations/src/injectable.js +7 -3
  87. package/src/ngtsc/annotations/src/ng_module.d.ts +22 -7
  88. package/src/ngtsc/annotations/src/ng_module.js +115 -52
  89. package/src/ngtsc/annotations/src/pipe.d.ts +12 -6
  90. package/src/ngtsc/annotations/src/pipe.js +22 -5
  91. package/src/ngtsc/annotations/src/util.d.ts +22 -0
  92. package/src/ngtsc/annotations/src/util.js +92 -3
  93. package/src/ngtsc/core/api.d.ts +368 -0
  94. package/src/ngtsc/core/api.js +20 -0
  95. package/src/ngtsc/core/index.d.ts +10 -0
  96. package/src/ngtsc/core/index.js +24 -0
  97. package/src/ngtsc/core/src/compiler.d.ts +120 -0
  98. package/src/ngtsc/core/src/compiler.js +769 -0
  99. package/src/ngtsc/core/src/host.d.ts +85 -0
  100. package/src/ngtsc/core/src/host.js +208 -0
  101. package/src/ngtsc/cycles/src/imports.js +2 -2
  102. package/src/ngtsc/diagnostics/index.d.ts +1 -1
  103. package/src/ngtsc/diagnostics/index.js +5 -5
  104. package/src/ngtsc/diagnostics/src/error.d.ts +1 -1
  105. package/src/ngtsc/diagnostics/src/error.js +1 -1
  106. package/src/ngtsc/diagnostics/src/{code.d.ts → error_code.d.ts} +27 -4
  107. package/src/ngtsc/diagnostics/src/error_code.js +128 -0
  108. package/src/ngtsc/file_system/src/cached_file_system.d.ts +3 -1
  109. package/src/ngtsc/file_system/src/cached_file_system.js +48 -4
  110. package/src/ngtsc/file_system/src/invalid_file_system.d.ts +3 -1
  111. package/src/ngtsc/file_system/src/invalid_file_system.js +4 -2
  112. package/src/ngtsc/file_system/src/node_js_file_system.d.ts +3 -1
  113. package/src/ngtsc/file_system/src/node_js_file_system.js +8 -4
  114. package/src/ngtsc/file_system/src/types.d.ts +3 -1
  115. package/src/ngtsc/file_system/src/types.js +1 -1
  116. package/src/ngtsc/imports/index.d.ts +3 -3
  117. package/src/ngtsc/imports/index.js +4 -4
  118. package/src/ngtsc/imports/src/alias.d.ts +12 -11
  119. package/src/ngtsc/imports/src/alias.js +21 -16
  120. package/src/ngtsc/imports/src/emitter.d.ts +40 -19
  121. package/src/ngtsc/imports/src/emitter.js +54 -26
  122. package/src/ngtsc/imports/src/references.d.ts +30 -8
  123. package/src/ngtsc/imports/src/references.js +41 -6
  124. package/src/ngtsc/imports/src/resolver.d.ts +3 -6
  125. package/src/ngtsc/imports/src/resolver.js +5 -4
  126. package/src/ngtsc/incremental/api.d.ts +51 -0
  127. package/src/ngtsc/incremental/api.js +20 -0
  128. package/src/ngtsc/incremental/index.d.ts +1 -0
  129. package/src/ngtsc/incremental/index.js +4 -2
  130. package/src/ngtsc/incremental/src/dependency_tracking.d.ts +56 -0
  131. package/src/ngtsc/incremental/src/dependency_tracking.js +186 -0
  132. package/src/ngtsc/incremental/src/noop.d.ts +10 -0
  133. package/src/ngtsc/incremental/src/noop.js +23 -0
  134. package/src/ngtsc/incremental/src/state.d.ts +8 -14
  135. package/src/ngtsc/incremental/src/state.js +83 -80
  136. package/src/ngtsc/indexer/index.d.ts +1 -0
  137. package/src/ngtsc/indexer/index.js +4 -2
  138. package/src/ngtsc/metadata/index.d.ts +1 -1
  139. package/src/ngtsc/metadata/index.js +2 -1
  140. package/src/ngtsc/metadata/src/api.d.ts +8 -0
  141. package/src/ngtsc/metadata/src/api.js +1 -1
  142. package/src/ngtsc/metadata/src/dts.js +2 -1
  143. package/src/ngtsc/metadata/src/registry.d.ts +12 -1
  144. package/src/ngtsc/metadata/src/registry.js +22 -2
  145. package/src/ngtsc/metadata/src/util.d.ts +2 -0
  146. package/src/ngtsc/metadata/src/util.js +10 -1
  147. package/src/ngtsc/modulewithproviders/src/scanner.js +2 -2
  148. package/src/ngtsc/partial_evaluator/index.d.ts +1 -1
  149. package/src/ngtsc/partial_evaluator/index.js +1 -1
  150. package/src/ngtsc/partial_evaluator/src/builtin.d.ts +7 -6
  151. package/src/ngtsc/partial_evaluator/src/builtin.js +54 -9
  152. package/src/ngtsc/partial_evaluator/src/interface.d.ts +3 -9
  153. package/src/ngtsc/partial_evaluator/src/interface.js +4 -3
  154. package/src/ngtsc/partial_evaluator/src/interpreter.d.ts +4 -3
  155. package/src/ngtsc/partial_evaluator/src/interpreter.js +11 -7
  156. package/src/ngtsc/partial_evaluator/src/known_declaration.d.ts +19 -0
  157. package/src/ngtsc/partial_evaluator/src/known_declaration.js +38 -0
  158. package/src/ngtsc/partial_evaluator/src/result.d.ts +1 -1
  159. package/src/ngtsc/partial_evaluator/src/result.js +1 -1
  160. package/src/ngtsc/partial_evaluator/src/ts_helpers.d.ts +1 -1
  161. package/src/ngtsc/partial_evaluator/src/ts_helpers.js +13 -3
  162. package/src/ngtsc/program.d.ts +46 -57
  163. package/src/ngtsc/program.js +68 -574
  164. package/src/ngtsc/reflection/src/host.d.ts +19 -2
  165. package/src/ngtsc/reflection/src/host.js +17 -3
  166. package/src/ngtsc/reflection/src/typescript.js +11 -7
  167. package/src/ngtsc/resource/index.d.ts +9 -0
  168. package/src/ngtsc/resource/index.js +22 -0
  169. package/src/ngtsc/{resource_loader.d.ts → resource/src/loader.d.ts} +4 -4
  170. package/src/ngtsc/resource/src/loader.js +193 -0
  171. package/src/ngtsc/routing/src/route.js +2 -2
  172. package/src/ngtsc/scope/index.d.ts +1 -1
  173. package/src/ngtsc/scope/index.js +1 -1
  174. package/src/ngtsc/scope/src/component_scope.d.ts +2 -2
  175. package/src/ngtsc/scope/src/component_scope.js +1 -1
  176. package/src/ngtsc/scope/src/dependency.js +10 -8
  177. package/src/ngtsc/scope/src/local.d.ts +31 -4
  178. package/src/ngtsc/scope/src/local.js +83 -15
  179. package/src/ngtsc/shims/index.d.ts +2 -1
  180. package/src/ngtsc/shims/index.js +4 -5
  181. package/src/ngtsc/shims/src/api.d.ts +25 -0
  182. package/src/ngtsc/shims/src/api.js +13 -0
  183. package/src/ngtsc/shims/src/factory_generator.d.ts +2 -2
  184. package/src/ngtsc/shims/src/factory_generator.js +1 -1
  185. package/src/ngtsc/shims/src/factory_tracker.d.ts +24 -0
  186. package/src/ngtsc/shims/src/factory_tracker.js +47 -0
  187. package/src/ngtsc/shims/src/summary_generator.d.ts +1 -1
  188. package/src/ngtsc/shims/src/summary_generator.js +1 -1
  189. package/src/ngtsc/shims/src/typecheck_shim.d.ts +1 -1
  190. package/src/ngtsc/shims/src/typecheck_shim.js +1 -1
  191. package/src/ngtsc/synthetic_files_compiler_host.d.ts +1 -1
  192. package/src/ngtsc/transform/index.d.ts +3 -1
  193. package/src/ngtsc/transform/index.js +8 -3
  194. package/src/ngtsc/transform/src/alias.d.ts +1 -1
  195. package/src/ngtsc/transform/src/alias.js +1 -1
  196. package/src/ngtsc/transform/src/api.d.ts +52 -17
  197. package/src/ngtsc/transform/src/api.js +1 -1
  198. package/src/ngtsc/transform/src/compilation.d.ts +68 -47
  199. package/src/ngtsc/transform/src/compilation.js +498 -313
  200. package/src/ngtsc/transform/src/declaration.d.ts +1 -1
  201. package/src/ngtsc/transform/src/declaration.js +6 -1
  202. package/src/ngtsc/transform/src/trait.d.ts +169 -0
  203. package/src/ngtsc/transform/src/trait.js +114 -0
  204. package/src/ngtsc/transform/src/transform.d.ts +2 -2
  205. package/src/ngtsc/transform/src/transform.js +4 -4
  206. package/src/ngtsc/translator/src/translator.d.ts +11 -9
  207. package/src/ngtsc/translator/src/translator.js +51 -18
  208. package/src/ngtsc/typecheck/index.d.ts +1 -0
  209. package/src/ngtsc/typecheck/index.js +4 -2
  210. package/src/ngtsc/typecheck/src/api.d.ts +12 -1
  211. package/src/ngtsc/typecheck/src/api.js +1 -1
  212. package/src/ngtsc/typecheck/src/context.d.ts +3 -2
  213. package/src/ngtsc/typecheck/src/context.js +10 -8
  214. package/src/ngtsc/typecheck/src/diagnostics.d.ts +30 -31
  215. package/src/ngtsc/typecheck/src/diagnostics.js +108 -70
  216. package/src/ngtsc/typecheck/src/dom.d.ts +6 -5
  217. package/src/ngtsc/typecheck/src/dom.js +3 -3
  218. package/src/ngtsc/typecheck/src/environment.d.ts +5 -3
  219. package/src/ngtsc/typecheck/src/environment.js +20 -8
  220. package/src/ngtsc/typecheck/src/expression.d.ts +2 -3
  221. package/src/ngtsc/typecheck/src/expression.js +26 -23
  222. package/src/ngtsc/typecheck/src/host.d.ts +1 -0
  223. package/src/ngtsc/typecheck/src/host.js +4 -1
  224. package/src/ngtsc/typecheck/src/oob.d.ts +11 -11
  225. package/src/ngtsc/typecheck/src/oob.js +15 -4
  226. package/src/ngtsc/typecheck/src/source.d.ts +9 -9
  227. package/src/ngtsc/typecheck/src/source.js +15 -15
  228. package/src/ngtsc/typecheck/src/template_semantics.d.ts +22 -0
  229. package/src/ngtsc/typecheck/src/template_semantics.js +51 -0
  230. package/src/ngtsc/typecheck/src/ts_util.js +36 -1
  231. package/src/ngtsc/typecheck/src/type_check_block.d.ts +3 -3
  232. package/src/ngtsc/typecheck/src/type_check_block.js +70 -43
  233. package/src/ngtsc/typecheck/src/type_check_file.d.ts +2 -2
  234. package/src/ngtsc/typecheck/src/type_check_file.js +3 -3
  235. package/src/ngtsc/typecheck/src/type_constructor.d.ts +4 -4
  236. package/src/ngtsc/typecheck/src/type_constructor.js +15 -10
  237. package/src/ngtsc/typecheck/src/type_emitter.d.ts +72 -0
  238. package/src/ngtsc/typecheck/src/type_emitter.js +150 -0
  239. package/src/ngtsc/typecheck/src/type_parameter_emitter.d.ts +31 -0
  240. package/src/ngtsc/typecheck/src/type_parameter_emitter.js +96 -0
  241. package/src/ngtsc/util/src/typescript.d.ts +7 -1
  242. package/src/ngtsc/util/src/typescript.js +15 -5
  243. package/src/perform_watch.js +6 -5
  244. package/src/transformers/api.d.ts +3 -204
  245. package/src/transformers/api.js +1 -1
  246. package/src/transformers/compiler_host.js +2 -2
  247. package/src/transformers/program.js +1 -1
  248. package/src/typescript_support.js +2 -2
  249. package/src/version.js +1 -1
  250. package/src/ngtsc/diagnostics/src/code.js +0 -101
  251. package/src/ngtsc/resource_loader.js +0 -193
  252. package/src/ngtsc/shims/src/host.d.ts +0 -46
  253. package/src/ngtsc/shims/src/host.js +0 -82
  254. package/src/ngtsc/util/src/resource_recorder.d.ts +0 -18
  255. package/src/ngtsc/util/src/resource_recorder.js +0 -20
@@ -0,0 +1,85 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google Inc. 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/core/src/host" />
9
+ import * as ts from 'typescript';
10
+ import { AbsoluteFsPath } from '../../file_system';
11
+ import { FactoryTracker, ShimGenerator } from '../../shims';
12
+ import { ExtendedTsCompilerHost, NgCompilerOptions, UnifiedModulesHost } from '../api';
13
+ /**
14
+ * Represents the `ExtendedTsCompilerHost` interface, with a transformation applied that turns all
15
+ * methods (even optional ones) into required fields (which may be `undefined`, if the method was
16
+ * optional).
17
+ */
18
+ export declare type RequiredCompilerHostDelegations = {
19
+ [M in keyof Required<ExtendedTsCompilerHost>]: ExtendedTsCompilerHost[M];
20
+ };
21
+ /**
22
+ * Delegates all methods of `ExtendedTsCompilerHost` to a delegate, with the exception of
23
+ * `getSourceFile` and `fileExists` which are implemented in `NgCompilerHost`.
24
+ *
25
+ * If a new method is added to `ts.CompilerHost` which is not delegated, a type error will be
26
+ * generated for this class.
27
+ */
28
+ export declare class DelegatingCompilerHost implements Omit<RequiredCompilerHostDelegations, 'getSourceFile' | 'fileExists'> {
29
+ protected delegate: ExtendedTsCompilerHost;
30
+ constructor(delegate: ExtendedTsCompilerHost);
31
+ private delegateMethod;
32
+ createHash: ((data: string) => string) | undefined;
33
+ directoryExists: ((directoryName: string) => boolean) | undefined;
34
+ fileNameToModuleName: ((importedFilePath: string, containingFilePath: string) => string) | undefined;
35
+ getCancellationToken: (() => ts.CancellationToken) | undefined;
36
+ getCanonicalFileName: (fileName: string) => string;
37
+ getCurrentDirectory: () => string;
38
+ getDefaultLibFileName: (options: ts.CompilerOptions) => string;
39
+ getDefaultLibLocation: (() => string) | undefined;
40
+ getDirectories: ((path: string) => string[]) | undefined;
41
+ getEnvironmentVariable: ((name: string) => string | undefined) | undefined;
42
+ getModifiedResourceFiles: (() => Set<string> | undefined) | undefined;
43
+ getNewLine: () => string;
44
+ getParsedCommandLine: ((fileName: string) => ts.ParsedCommandLine | undefined) | undefined;
45
+ getSourceFileByPath: ((fileName: string, path: ts.Path, languageVersion: ts.ScriptTarget, onError?: ((message: string) => void) | undefined, shouldCreateNewSourceFile?: boolean | undefined) => ts.SourceFile | undefined) | undefined;
46
+ readDirectory: ((rootDir: string, extensions: readonly string[], excludes: readonly string[] | undefined, includes: readonly string[], depth?: number | undefined) => string[]) | undefined;
47
+ readFile: (fileName: string) => string | undefined;
48
+ readResource: ((fileName: string) => string | Promise<string>) | undefined;
49
+ realpath: ((path: string) => string) | undefined;
50
+ resolveModuleNames: ((moduleNames: string[], containingFile: string, reusedNames: string[] | undefined, redirectedReference: ts.ResolvedProjectReference | undefined, options: ts.CompilerOptions) => (ts.ResolvedModule | undefined)[]) | undefined;
51
+ resolveTypeReferenceDirectives: ((typeReferenceDirectiveNames: string[], containingFile: string, redirectedReference: ts.ResolvedProjectReference | undefined, options: ts.CompilerOptions) => (ts.ResolvedTypeReferenceDirective | undefined)[]) | undefined;
52
+ resourceNameToFileName: ((resourceName: string, containingFilePath: string) => string | null) | undefined;
53
+ trace: ((s: string) => void) | undefined;
54
+ useCaseSensitiveFileNames: () => boolean;
55
+ writeFile: ts.WriteFileCallback;
56
+ }
57
+ /**
58
+ * A wrapper around `ts.CompilerHost` (plus any extension methods from `ExtendedTsCompilerHost`).
59
+ *
60
+ * In order for a consumer to include Angular compilation in their TypeScript compiler, the
61
+ * `ts.Program` must be created with a host that adds Angular-specific files (e.g. factories,
62
+ * summaries, the template type-checking file, etc) to the compilation. `NgCompilerHost` is the
63
+ * host implementation which supports this.
64
+ *
65
+ * The interface implementations here ensure that `NgCompilerHost` fully delegates to
66
+ * `ExtendedTsCompilerHost` methods whenever present.
67
+ */
68
+ export declare class NgCompilerHost extends DelegatingCompilerHost implements RequiredCompilerHostDelegations, ExtendedTsCompilerHost {
69
+ private shims;
70
+ readonly factoryTracker: FactoryTracker | null;
71
+ readonly entryPoint: AbsoluteFsPath | null;
72
+ readonly diagnostics: ts.Diagnostic[];
73
+ readonly inputFiles: ReadonlyArray<string>;
74
+ readonly rootDirs: ReadonlyArray<AbsoluteFsPath>;
75
+ readonly typeCheckFile: AbsoluteFsPath;
76
+ constructor(delegate: ExtendedTsCompilerHost, inputFiles: ReadonlyArray<string>, rootDirs: ReadonlyArray<AbsoluteFsPath>, shims: ShimGenerator[], entryPoint: AbsoluteFsPath | null, typeCheckFile: AbsoluteFsPath, factoryTracker: FactoryTracker | null, diagnostics: ts.Diagnostic[]);
77
+ /**
78
+ * Create an `NgCompilerHost` from a delegate host, an array of input filenames, and the full set
79
+ * of TypeScript and Angular compiler options.
80
+ */
81
+ static wrap(delegate: ts.CompilerHost, inputFiles: ReadonlyArray<string>, options: NgCompilerOptions): NgCompilerHost;
82
+ getSourceFile(fileName: string, languageVersion: ts.ScriptTarget, onError?: ((message: string) => void) | undefined, shouldCreateNewSourceFile?: boolean | undefined): ts.SourceFile | undefined;
83
+ fileExists(fileName: string): boolean;
84
+ get unifiedModulesHost(): UnifiedModulesHost | null;
85
+ }
@@ -0,0 +1,208 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google Inc. 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
+ (function (factory) {
9
+ if (typeof module === "object" && typeof module.exports === "object") {
10
+ var v = factory(require, exports);
11
+ if (v !== undefined) module.exports = v;
12
+ }
13
+ else if (typeof define === "function" && define.amd) {
14
+ define("@angular/compiler-cli/src/ngtsc/core/src/host", ["require", "exports", "tslib", "typescript", "@angular/compiler-cli/src/ngtsc/diagnostics", "@angular/compiler-cli/src/ngtsc/entry_point", "@angular/compiler-cli/src/ngtsc/file_system", "@angular/compiler-cli/src/ngtsc/shims", "@angular/compiler-cli/src/ngtsc/typecheck", "@angular/compiler-cli/src/ngtsc/util/src/path", "@angular/compiler-cli/src/ngtsc/util/src/typescript"], factory);
15
+ }
16
+ })(function (require, exports) {
17
+ "use strict";
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ var tslib_1 = require("tslib");
20
+ var ts = require("typescript");
21
+ var diagnostics_1 = require("@angular/compiler-cli/src/ngtsc/diagnostics");
22
+ var entry_point_1 = require("@angular/compiler-cli/src/ngtsc/entry_point");
23
+ var file_system_1 = require("@angular/compiler-cli/src/ngtsc/file_system");
24
+ var shims_1 = require("@angular/compiler-cli/src/ngtsc/shims");
25
+ var typecheck_1 = require("@angular/compiler-cli/src/ngtsc/typecheck");
26
+ var path_1 = require("@angular/compiler-cli/src/ngtsc/util/src/path");
27
+ var typescript_1 = require("@angular/compiler-cli/src/ngtsc/util/src/typescript");
28
+ /**
29
+ * Delegates all methods of `ExtendedTsCompilerHost` to a delegate, with the exception of
30
+ * `getSourceFile` and `fileExists` which are implemented in `NgCompilerHost`.
31
+ *
32
+ * If a new method is added to `ts.CompilerHost` which is not delegated, a type error will be
33
+ * generated for this class.
34
+ */
35
+ var DelegatingCompilerHost = /** @class */ (function () {
36
+ function DelegatingCompilerHost(delegate) {
37
+ this.delegate = delegate;
38
+ // Excluded are 'getSourceFile' and 'fileExists', which are actually implemented by NgCompilerHost
39
+ // below.
40
+ this.createHash = this.delegateMethod('createHash');
41
+ this.directoryExists = this.delegateMethod('directoryExists');
42
+ this.fileNameToModuleName = this.delegateMethod('fileNameToModuleName');
43
+ this.getCancellationToken = this.delegateMethod('getCancellationToken');
44
+ this.getCanonicalFileName = this.delegateMethod('getCanonicalFileName');
45
+ this.getCurrentDirectory = this.delegateMethod('getCurrentDirectory');
46
+ this.getDefaultLibFileName = this.delegateMethod('getDefaultLibFileName');
47
+ this.getDefaultLibLocation = this.delegateMethod('getDefaultLibLocation');
48
+ this.getDirectories = this.delegateMethod('getDirectories');
49
+ this.getEnvironmentVariable = this.delegateMethod('getEnvironmentVariable');
50
+ this.getModifiedResourceFiles = this.delegateMethod('getModifiedResourceFiles');
51
+ this.getNewLine = this.delegateMethod('getNewLine');
52
+ this.getParsedCommandLine = this.delegateMethod('getParsedCommandLine');
53
+ this.getSourceFileByPath = this.delegateMethod('getSourceFileByPath');
54
+ this.readDirectory = this.delegateMethod('readDirectory');
55
+ this.readFile = this.delegateMethod('readFile');
56
+ this.readResource = this.delegateMethod('readResource');
57
+ this.realpath = this.delegateMethod('realpath');
58
+ this.resolveModuleNames = this.delegateMethod('resolveModuleNames');
59
+ this.resolveTypeReferenceDirectives = this.delegateMethod('resolveTypeReferenceDirectives');
60
+ this.resourceNameToFileName = this.delegateMethod('resourceNameToFileName');
61
+ this.trace = this.delegateMethod('trace');
62
+ this.useCaseSensitiveFileNames = this.delegateMethod('useCaseSensitiveFileNames');
63
+ this.writeFile = this.delegateMethod('writeFile');
64
+ }
65
+ DelegatingCompilerHost.prototype.delegateMethod = function (name) {
66
+ return this.delegate[name] !== undefined ? this.delegate[name].bind(this.delegate) :
67
+ undefined;
68
+ };
69
+ return DelegatingCompilerHost;
70
+ }());
71
+ exports.DelegatingCompilerHost = DelegatingCompilerHost;
72
+ /**
73
+ * A wrapper around `ts.CompilerHost` (plus any extension methods from `ExtendedTsCompilerHost`).
74
+ *
75
+ * In order for a consumer to include Angular compilation in their TypeScript compiler, the
76
+ * `ts.Program` must be created with a host that adds Angular-specific files (e.g. factories,
77
+ * summaries, the template type-checking file, etc) to the compilation. `NgCompilerHost` is the
78
+ * host implementation which supports this.
79
+ *
80
+ * The interface implementations here ensure that `NgCompilerHost` fully delegates to
81
+ * `ExtendedTsCompilerHost` methods whenever present.
82
+ */
83
+ var NgCompilerHost = /** @class */ (function (_super) {
84
+ tslib_1.__extends(NgCompilerHost, _super);
85
+ function NgCompilerHost(delegate, inputFiles, rootDirs, shims, entryPoint, typeCheckFile, factoryTracker, diagnostics) {
86
+ var _this = _super.call(this, delegate) || this;
87
+ _this.shims = shims;
88
+ _this.factoryTracker = null;
89
+ _this.entryPoint = null;
90
+ _this.factoryTracker = factoryTracker;
91
+ _this.entryPoint = entryPoint;
92
+ _this.typeCheckFile = typeCheckFile;
93
+ _this.diagnostics = diagnostics;
94
+ _this.inputFiles = inputFiles;
95
+ _this.rootDirs = rootDirs;
96
+ return _this;
97
+ }
98
+ /**
99
+ * Create an `NgCompilerHost` from a delegate host, an array of input filenames, and the full set
100
+ * of TypeScript and Angular compiler options.
101
+ */
102
+ NgCompilerHost.wrap = function (delegate, inputFiles, options) {
103
+ // TODO(alxhub): remove the fallback to allowEmptyCodegenFiles after verifying that the rest of
104
+ // our build tooling is no longer relying on it.
105
+ var allowEmptyCodegenFiles = options.allowEmptyCodegenFiles || false;
106
+ var shouldGenerateFactoryShims = options.generateNgFactoryShims !== undefined ?
107
+ options.generateNgFactoryShims :
108
+ allowEmptyCodegenFiles;
109
+ var shouldGenerateSummaryShims = options.generateNgSummaryShims !== undefined ?
110
+ options.generateNgSummaryShims :
111
+ allowEmptyCodegenFiles;
112
+ var rootFiles = tslib_1.__spread(inputFiles);
113
+ var normalizedInputFiles = inputFiles.map(function (n) { return file_system_1.resolve(n); });
114
+ var generators = [];
115
+ var summaryGenerator = null;
116
+ if (shouldGenerateSummaryShims) {
117
+ // Summary generation.
118
+ summaryGenerator = shims_1.SummaryGenerator.forRootFiles(normalizedInputFiles);
119
+ generators.push(summaryGenerator);
120
+ }
121
+ var factoryTracker = null;
122
+ if (shouldGenerateFactoryShims) {
123
+ // Factory generation.
124
+ var factoryGenerator = shims_1.FactoryGenerator.forRootFiles(normalizedInputFiles);
125
+ var factoryFileMap = factoryGenerator.factoryFileMap;
126
+ var factoryFileNames = Array.from(factoryFileMap.keys());
127
+ rootFiles.push.apply(rootFiles, tslib_1.__spread(factoryFileNames));
128
+ generators.push(factoryGenerator);
129
+ factoryTracker = new shims_1.FactoryTracker(factoryGenerator);
130
+ }
131
+ // Done separately to preserve the order of factory files before summary files in rootFiles.
132
+ // TODO(alxhub): validate that this is necessary.
133
+ if (summaryGenerator !== null) {
134
+ rootFiles.push.apply(rootFiles, tslib_1.__spread(summaryGenerator.getSummaryFileNames()));
135
+ }
136
+ var rootDirs = typescript_1.getRootDirs(delegate, options);
137
+ var typeCheckFile = typecheck_1.typeCheckFilePath(rootDirs);
138
+ generators.push(new shims_1.TypeCheckShimGenerator(typeCheckFile));
139
+ rootFiles.push(typeCheckFile);
140
+ var diagnostics = [];
141
+ var entryPoint = null;
142
+ if (options.flatModuleOutFile != null && options.flatModuleOutFile !== '') {
143
+ entryPoint = entry_point_1.findFlatIndexEntryPoint(normalizedInputFiles);
144
+ if (entryPoint === null) {
145
+ // This error message talks specifically about having a single .ts file in "files". However
146
+ // the actual logic is a bit more permissive. If a single file exists, that will be taken,
147
+ // otherwise the highest level (shortest path) "index.ts" file will be used as the flat
148
+ // module entry point instead. If neither of these conditions apply, the error below is
149
+ // given.
150
+ //
151
+ // The user is not informed about the "index.ts" option as this behavior is deprecated -
152
+ // an explicit entrypoint should always be specified.
153
+ diagnostics.push({
154
+ category: ts.DiagnosticCategory.Error,
155
+ code: diagnostics_1.ngErrorCode(diagnostics_1.ErrorCode.CONFIG_FLAT_MODULE_NO_INDEX),
156
+ file: undefined,
157
+ start: undefined,
158
+ length: undefined,
159
+ messageText: 'Angular compiler option "flatModuleOutFile" requires one and only one .ts file in the "files" field.',
160
+ });
161
+ }
162
+ else {
163
+ var flatModuleId = options.flatModuleId || null;
164
+ var flatModuleOutFile = path_1.normalizeSeparators(options.flatModuleOutFile);
165
+ var flatIndexGenerator = new entry_point_1.FlatIndexGenerator(entryPoint, flatModuleOutFile, flatModuleId);
166
+ generators.push(flatIndexGenerator);
167
+ rootFiles.push(flatIndexGenerator.flatIndexPath);
168
+ }
169
+ }
170
+ return new NgCompilerHost(delegate, rootFiles, rootDirs, generators, entryPoint, typeCheckFile, factoryTracker, diagnostics);
171
+ };
172
+ NgCompilerHost.prototype.getSourceFile = function (fileName, languageVersion, onError, shouldCreateNewSourceFile) {
173
+ var _this = this;
174
+ for (var i = 0; i < this.shims.length; i++) {
175
+ var generator = this.shims[i];
176
+ // TypeScript internal paths are guaranteed to be POSIX-like absolute file paths.
177
+ var absoluteFsPath = file_system_1.resolve(fileName);
178
+ if (generator.recognize(absoluteFsPath)) {
179
+ var readFile = function (originalFile) {
180
+ return _this.delegate.getSourceFile(originalFile, languageVersion, onError, shouldCreateNewSourceFile) ||
181
+ null;
182
+ };
183
+ return generator.generate(absoluteFsPath, readFile) || undefined;
184
+ }
185
+ }
186
+ return this.delegate.getSourceFile(fileName, languageVersion, onError, shouldCreateNewSourceFile);
187
+ };
188
+ NgCompilerHost.prototype.fileExists = function (fileName) {
189
+ // Consider the file as existing whenever
190
+ // 1) it really does exist in the delegate host, or
191
+ // 2) at least one of the shim generators recognizes it
192
+ // Note that we can pass the file name as branded absolute fs path because TypeScript
193
+ // internally only passes POSIX-like paths.
194
+ return this.delegate.fileExists(fileName) ||
195
+ this.shims.some(function (shim) { return shim.recognize(file_system_1.resolve(fileName)); });
196
+ };
197
+ Object.defineProperty(NgCompilerHost.prototype, "unifiedModulesHost", {
198
+ get: function () {
199
+ return this.fileNameToModuleName !== undefined ? this : null;
200
+ },
201
+ enumerable: true,
202
+ configurable: true
203
+ });
204
+ return NgCompilerHost;
205
+ }(DelegatingCompilerHost));
206
+ exports.NgCompilerHost = NgCompilerHost;
207
+ });
208
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvY29yZS9zcmMvaG9zdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7SUFFSCwrQkFBaUM7SUFFakMsMkVBQXlEO0lBQ3pELDJFQUE4RTtJQUM5RSwyRUFBMEQ7SUFDMUQsK0RBQXNIO0lBQ3RILHVFQUFrRDtJQUNsRCxzRUFBd0Q7SUFDeEQsa0ZBQXNEO0lBaUJ0RDs7Ozs7O09BTUc7SUFDSDtRQUVFLGdDQUFzQixRQUFnQztZQUFoQyxhQUFRLEdBQVIsUUFBUSxDQUF3QjtZQVF0RCxrR0FBa0c7WUFDbEcsU0FBUztZQUNULGVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQy9DLG9CQUFlLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3pELHlCQUFvQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUNuRSx5QkFBb0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDbkUseUJBQW9CLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1lBQ25FLHdCQUFtQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUNqRSwwQkFBcUIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDckUsMEJBQXFCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1lBQ3JFLG1CQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1lBQ3ZELDJCQUFzQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsd0JBQXdCLENBQUMsQ0FBQztZQUN2RSw2QkFBd0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLDBCQUEwQixDQUFDLENBQUM7WUFDM0UsZUFBVSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDL0MseUJBQW9CLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1lBQ25FLHdCQUFtQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUNqRSxrQkFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDckQsYUFBUSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDM0MsaUJBQVksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ25ELGFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzNDLHVCQUFrQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUMvRCxtQ0FBOEIsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7WUFDdkYsMkJBQXNCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1lBQ3ZFLFVBQUssR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3JDLDhCQUF5QixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsMkJBQTJCLENBQUMsQ0FBQztZQUM3RSxjQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQWpDWSxDQUFDO1FBRWxELCtDQUFjLEdBQXRCLFVBQStELElBQU87WUFFcEUsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xELFNBQVMsQ0FBQztRQUN2RCxDQUFDO1FBNEJILDZCQUFDO0lBQUQsQ0FBQyxBQXBDRCxJQW9DQztJQXBDWSx3REFBc0I7SUFzQ25DOzs7Ozs7Ozs7O09BVUc7SUFDSDtRQUFvQywwQ0FBc0I7UUFXeEQsd0JBQ0ksUUFBZ0MsRUFBRSxVQUFpQyxFQUNuRSxRQUF1QyxFQUFVLEtBQXNCLEVBQ3ZFLFVBQStCLEVBQUUsYUFBNkIsRUFDOUQsY0FBbUMsRUFBRSxXQUE0QjtZQUpyRSxZQUtFLGtCQUFNLFFBQVEsQ0FBQyxTQVFoQjtZQVhvRCxXQUFLLEdBQUwsS0FBSyxDQUFpQjtZQVZsRSxvQkFBYyxHQUF3QixJQUFJLENBQUM7WUFDM0MsZ0JBQVUsR0FBd0IsSUFBSSxDQUFDO1lBYzlDLEtBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO1lBQ3JDLEtBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1lBQzdCLEtBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1lBQ25DLEtBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1lBQy9CLEtBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1lBQzdCLEtBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDOztRQUMzQixDQUFDO1FBRUQ7OztXQUdHO1FBQ0ksbUJBQUksR0FBWCxVQUNJLFFBQXlCLEVBQUUsVUFBaUMsRUFDNUQsT0FBMEI7WUFDNUIsK0ZBQStGO1lBQy9GLGdEQUFnRDtZQUNoRCxJQUFNLHNCQUFzQixHQUFHLE9BQU8sQ0FBQyxzQkFBc0IsSUFBSSxLQUFLLENBQUM7WUFDdkUsSUFBTSwwQkFBMEIsR0FBRyxPQUFPLENBQUMsc0JBQXNCLEtBQUssU0FBUyxDQUFDLENBQUM7Z0JBQzdFLE9BQU8sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO2dCQUNoQyxzQkFBc0IsQ0FBQztZQUUzQixJQUFNLDBCQUEwQixHQUFHLE9BQU8sQ0FBQyxzQkFBc0IsS0FBSyxTQUFTLENBQUMsQ0FBQztnQkFDN0UsT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBQUM7Z0JBQ2hDLHNCQUFzQixDQUFDO1lBRTNCLElBQUksU0FBUyxvQkFBTyxVQUFVLENBQUMsQ0FBQztZQUNoQyxJQUFJLG9CQUFvQixHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxxQkFBTyxDQUFDLENBQUMsQ0FBQyxFQUFWLENBQVUsQ0FBQyxDQUFDO1lBRTNELElBQU0sVUFBVSxHQUFvQixFQUFFLENBQUM7WUFDdkMsSUFBSSxnQkFBZ0IsR0FBMEIsSUFBSSxDQUFDO1lBRW5ELElBQUksMEJBQTBCLEVBQUU7Z0JBQzlCLHNCQUFzQjtnQkFDdEIsZ0JBQWdCLEdBQUcsd0JBQWdCLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDLENBQUM7Z0JBQ3ZFLFVBQVUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzthQUNuQztZQUVELElBQUksY0FBYyxHQUF3QixJQUFJLENBQUM7WUFDL0MsSUFBSSwwQkFBMEIsRUFBRTtnQkFDOUIsc0JBQXNCO2dCQUN0QixJQUFNLGdCQUFnQixHQUFHLHdCQUFnQixDQUFDLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO2dCQUM3RSxJQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUM7Z0JBRXZELElBQU0sZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDM0QsU0FBUyxDQUFDLElBQUksT0FBZCxTQUFTLG1CQUFTLGdCQUFnQixHQUFFO2dCQUNwQyxVQUFVLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7Z0JBRWxDLGNBQWMsR0FBRyxJQUFJLHNCQUFjLENBQUMsZ0JBQWdCLENBQUMsQ0FBQzthQUN2RDtZQUVELDRGQUE0RjtZQUM1RixpREFBaUQ7WUFDakQsSUFBSSxnQkFBZ0IsS0FBSyxJQUFJLEVBQUU7Z0JBQzdCLFNBQVMsQ0FBQyxJQUFJLE9BQWQsU0FBUyxtQkFBUyxnQkFBZ0IsQ0FBQyxtQkFBbUIsRUFBRSxHQUFFO2FBQzNEO1lBR0QsSUFBTSxRQUFRLEdBQUcsd0JBQVcsQ0FBQyxRQUFRLEVBQUUsT0FBNkIsQ0FBQyxDQUFDO1lBRXRFLElBQU0sYUFBYSxHQUFHLDZCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2xELFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSw4QkFBc0IsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO1lBQzNELFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFFOUIsSUFBSSxXQUFXLEdBQW9CLEVBQUUsQ0FBQztZQUV0QyxJQUFJLFVBQVUsR0FBd0IsSUFBSSxDQUFDO1lBQzNDLElBQUksT0FBTyxDQUFDLGlCQUFpQixJQUFJLElBQUksSUFBSSxPQUFPLENBQUMsaUJBQWlCLEtBQUssRUFBRSxFQUFFO2dCQUN6RSxVQUFVLEdBQUcscUNBQXVCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztnQkFDM0QsSUFBSSxVQUFVLEtBQUssSUFBSSxFQUFFO29CQUN2QiwyRkFBMkY7b0JBQzNGLDBGQUEwRjtvQkFDMUYsdUZBQXVGO29CQUN2Rix1RkFBdUY7b0JBQ3ZGLFNBQVM7b0JBQ1QsRUFBRTtvQkFDRix3RkFBd0Y7b0JBQ3hGLHFEQUFxRDtvQkFDckQsV0FBVyxDQUFDLElBQUksQ0FBQzt3QkFDZixRQUFRLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUs7d0JBQ3JDLElBQUksRUFBRSx5QkFBVyxDQUFDLHVCQUFTLENBQUMsMkJBQTJCLENBQUM7d0JBQ3hELElBQUksRUFBRSxTQUFTO3dCQUNmLEtBQUssRUFBRSxTQUFTO3dCQUNoQixNQUFNLEVBQUUsU0FBUzt3QkFDakIsV0FBVyxFQUNQLHNHQUFzRztxQkFDM0csQ0FBQyxDQUFDO2lCQUNKO3FCQUFNO29CQUNMLElBQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO29CQUNsRCxJQUFNLGlCQUFpQixHQUFHLDBCQUFtQixDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO29CQUN6RSxJQUFNLGtCQUFrQixHQUNwQixJQUFJLGdDQUFrQixDQUFDLFVBQVUsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLENBQUMsQ0FBQztvQkFDeEUsVUFBVSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO29CQUNwQyxTQUFTLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO2lCQUNsRDthQUNGO1lBRUQsT0FBTyxJQUFJLGNBQWMsQ0FDckIsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUNwRixXQUFXLENBQUMsQ0FBQztRQUNuQixDQUFDO1FBRUQsc0NBQWEsR0FBYixVQUNJLFFBQWdCLEVBQUUsZUFBZ0MsRUFDbEQsT0FBK0MsRUFDL0MseUJBQTZDO1lBSGpELGlCQXFCQztZQWpCQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzFDLElBQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLGlGQUFpRjtnQkFDakYsSUFBTSxjQUFjLEdBQUcscUJBQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDekMsSUFBSSxTQUFTLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUFFO29CQUN2QyxJQUFNLFFBQVEsR0FBRyxVQUFDLFlBQW9CO3dCQUNwQyxPQUFPLEtBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUN2QixZQUFZLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSx5QkFBeUIsQ0FBQzs0QkFDekUsSUFBSSxDQUFDO29CQUNYLENBQUMsQ0FBQztvQkFFRixPQUFPLFNBQVMsQ0FBQyxRQUFRLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxJQUFJLFNBQVMsQ0FBQztpQkFDbEU7YUFDRjtZQUVELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQzlCLFFBQVEsRUFBRSxlQUFlLEVBQUUsT0FBTyxFQUFFLHlCQUF5QixDQUFDLENBQUM7UUFDckUsQ0FBQztRQUVELG1DQUFVLEdBQVYsVUFBVyxRQUFnQjtZQUN6Qix5Q0FBeUM7WUFDekMsb0RBQW9EO1lBQ3BELHdEQUF3RDtZQUN4RCxxRkFBcUY7WUFDckYsMkNBQTJDO1lBQzNDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDO2dCQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLElBQUksQ0FBQyxTQUFTLENBQUMscUJBQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFqQyxDQUFpQyxDQUFDLENBQUM7UUFDakUsQ0FBQztRQUVELHNCQUFJLDhDQUFrQjtpQkFBdEI7Z0JBQ0UsT0FBTyxJQUFJLENBQUMsb0JBQW9CLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUEwQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDckYsQ0FBQzs7O1dBQUE7UUFDSCxxQkFBQztJQUFELENBQUMsQUE1SkQsQ0FBb0Msc0JBQXNCLEdBNEp6RDtJQTVKWSx3Q0FBYyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7RXJyb3JDb2RlLCBuZ0Vycm9yQ29kZX0gZnJvbSAnLi4vLi4vZGlhZ25vc3RpY3MnO1xuaW1wb3J0IHtGbGF0SW5kZXhHZW5lcmF0b3IsIGZpbmRGbGF0SW5kZXhFbnRyeVBvaW50fSBmcm9tICcuLi8uLi9lbnRyeV9wb2ludCc7XG5pbXBvcnQge0Fic29sdXRlRnNQYXRoLCByZXNvbHZlfSBmcm9tICcuLi8uLi9maWxlX3N5c3RlbSc7XG5pbXBvcnQge0ZhY3RvcnlHZW5lcmF0b3IsIEZhY3RvcnlUcmFja2VyLCBTaGltR2VuZXJhdG9yLCBTdW1tYXJ5R2VuZXJhdG9yLCBUeXBlQ2hlY2tTaGltR2VuZXJhdG9yfSBmcm9tICcuLi8uLi9zaGltcyc7XG5pbXBvcnQge3R5cGVDaGVja0ZpbGVQYXRofSBmcm9tICcuLi8uLi90eXBlY2hlY2snO1xuaW1wb3J0IHtub3JtYWxpemVTZXBhcmF0b3JzfSBmcm9tICcuLi8uLi91dGlsL3NyYy9wYXRoJztcbmltcG9ydCB7Z2V0Um9vdERpcnN9IGZyb20gJy4uLy4uL3V0aWwvc3JjL3R5cGVzY3JpcHQnO1xuaW1wb3J0IHtFeHRlbmRlZFRzQ29tcGlsZXJIb3N0LCBOZ0NvbXBpbGVyT3B0aW9ucywgVW5pZmllZE1vZHVsZXNIb3N0fSBmcm9tICcuLi9hcGknO1xuXG4vLyBBIHBlcnNpc3RlbnQgc291cmNlIG9mIGJ1Z3MgaW4gQ29tcGlsZXJIb3N0IGRlbGVnYXRpb24gaGFzIGJlZW4gdGhlIGFkZGl0aW9uIGJ5IFRTIG9mIG5ldyxcbi8vIG9wdGlvbmFsIG1ldGhvZHMgb24gdHMuQ29tcGlsZXJIb3N0LiBTaW5jZSB0aGVzZSBtZXRob2RzIGFyZSBvcHRpb25hbCwgaXQncyBub3QgYSB0eXBlIGVycm9yIHRoYXRcbi8vIHRoZSBkZWxlZ2F0aW5nIGhvc3QgZG9lc24ndCBpbXBsZW1lbnQgb3IgZGVsZWdhdGUgdGhlbS4gVGhpcyBjYXVzZXMgc3VidGxlIHJ1bnRpbWUgZmFpbHVyZXMuIE5vXG4vLyBtb3JlLiBUaGlzIGluZnJhc3RydWN0dXJlIGVuc3VyZXMgdGhhdCBmYWlsaW5nIHRvIGRlbGVnYXRlIGEgbWV0aG9kIGlzIGEgY29tcGlsZS10aW1lIGVycm9yLlxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGBFeHRlbmRlZFRzQ29tcGlsZXJIb3N0YCBpbnRlcmZhY2UsIHdpdGggYSB0cmFuc2Zvcm1hdGlvbiBhcHBsaWVkIHRoYXQgdHVybnMgYWxsXG4gKiBtZXRob2RzIChldmVuIG9wdGlvbmFsIG9uZXMpIGludG8gcmVxdWlyZWQgZmllbGRzICh3aGljaCBtYXkgYmUgYHVuZGVmaW5lZGAsIGlmIHRoZSBtZXRob2Qgd2FzXG4gKiBvcHRpb25hbCkuXG4gKi9cbmV4cG9ydCB0eXBlIFJlcXVpcmVkQ29tcGlsZXJIb3N0RGVsZWdhdGlvbnMgPSB7XG4gIFtNIGluIGtleW9mIFJlcXVpcmVkPEV4dGVuZGVkVHNDb21waWxlckhvc3Q+XTogRXh0ZW5kZWRUc0NvbXBpbGVySG9zdFtNXTtcbn07XG5cbi8qKlxuICogRGVsZWdhdGVzIGFsbCBtZXRob2RzIG9mIGBFeHRlbmRlZFRzQ29tcGlsZXJIb3N0YCB0byBhIGRlbGVnYXRlLCB3aXRoIHRoZSBleGNlcHRpb24gb2ZcbiAqIGBnZXRTb3VyY2VGaWxlYCBhbmQgYGZpbGVFeGlzdHNgIHdoaWNoIGFyZSBpbXBsZW1lbnRlZCBpbiBgTmdDb21waWxlckhvc3RgLlxuICpcbiAqIElmIGEgbmV3IG1ldGhvZCBpcyBhZGRlZCB0byBgdHMuQ29tcGlsZXJIb3N0YCB3aGljaCBpcyBub3QgZGVsZWdhdGVkLCBhIHR5cGUgZXJyb3Igd2lsbCBiZVxuICogZ2VuZXJhdGVkIGZvciB0aGlzIGNsYXNzLlxuICovXG5leHBvcnQgY2xhc3MgRGVsZWdhdGluZ0NvbXBpbGVySG9zdCBpbXBsZW1lbnRzXG4gICAgT21pdDxSZXF1aXJlZENvbXBpbGVySG9zdERlbGVnYXRpb25zLCAnZ2V0U291cmNlRmlsZSd8J2ZpbGVFeGlzdHMnPiB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBkZWxlZ2F0ZTogRXh0ZW5kZWRUc0NvbXBpbGVySG9zdCkge31cblxuICBwcml2YXRlIGRlbGVnYXRlTWV0aG9kPE0gZXh0ZW5kcyBrZXlvZiBFeHRlbmRlZFRzQ29tcGlsZXJIb3N0PihuYW1lOiBNKTpcbiAgICAgIEV4dGVuZGVkVHNDb21waWxlckhvc3RbTV0ge1xuICAgIHJldHVybiB0aGlzLmRlbGVnYXRlW25hbWVdICE9PSB1bmRlZmluZWQgPyAodGhpcy5kZWxlZ2F0ZVtuYW1lXSBhcyBhbnkpLmJpbmQodGhpcy5kZWxlZ2F0ZSkgOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmRlZmluZWQ7XG4gIH1cblxuICAvLyBFeGNsdWRlZCBhcmUgJ2dldFNvdXJjZUZpbGUnIGFuZCAnZmlsZUV4aXN0cycsIHdoaWNoIGFyZSBhY3R1YWxseSBpbXBsZW1lbnRlZCBieSBOZ0NvbXBpbGVySG9zdFxuICAvLyBiZWxvdy5cbiAgY3JlYXRlSGFzaCA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ2NyZWF0ZUhhc2gnKTtcbiAgZGlyZWN0b3J5RXhpc3RzID0gdGhpcy5kZWxlZ2F0ZU1ldGhvZCgnZGlyZWN0b3J5RXhpc3RzJyk7XG4gIGZpbGVOYW1lVG9Nb2R1bGVOYW1lID0gdGhpcy5kZWxlZ2F0ZU1ldGhvZCgnZmlsZU5hbWVUb01vZHVsZU5hbWUnKTtcbiAgZ2V0Q2FuY2VsbGF0aW9uVG9rZW4gPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCdnZXRDYW5jZWxsYXRpb25Ub2tlbicpO1xuICBnZXRDYW5vbmljYWxGaWxlTmFtZSA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ2dldENhbm9uaWNhbEZpbGVOYW1lJyk7XG4gIGdldEN1cnJlbnREaXJlY3RvcnkgPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCdnZXRDdXJyZW50RGlyZWN0b3J5Jyk7XG4gIGdldERlZmF1bHRMaWJGaWxlTmFtZSA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ2dldERlZmF1bHRMaWJGaWxlTmFtZScpO1xuICBnZXREZWZhdWx0TGliTG9jYXRpb24gPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCdnZXREZWZhdWx0TGliTG9jYXRpb24nKTtcbiAgZ2V0RGlyZWN0b3JpZXMgPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCdnZXREaXJlY3RvcmllcycpO1xuICBnZXRFbnZpcm9ubWVudFZhcmlhYmxlID0gdGhpcy5kZWxlZ2F0ZU1ldGhvZCgnZ2V0RW52aXJvbm1lbnRWYXJpYWJsZScpO1xuICBnZXRNb2RpZmllZFJlc291cmNlRmlsZXMgPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCdnZXRNb2RpZmllZFJlc291cmNlRmlsZXMnKTtcbiAgZ2V0TmV3TGluZSA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ2dldE5ld0xpbmUnKTtcbiAgZ2V0UGFyc2VkQ29tbWFuZExpbmUgPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCdnZXRQYXJzZWRDb21tYW5kTGluZScpO1xuICBnZXRTb3VyY2VGaWxlQnlQYXRoID0gdGhpcy5kZWxlZ2F0ZU1ldGhvZCgnZ2V0U291cmNlRmlsZUJ5UGF0aCcpO1xuICByZWFkRGlyZWN0b3J5ID0gdGhpcy5kZWxlZ2F0ZU1ldGhvZCgncmVhZERpcmVjdG9yeScpO1xuICByZWFkRmlsZSA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ3JlYWRGaWxlJyk7XG4gIHJlYWRSZXNvdXJjZSA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ3JlYWRSZXNvdXJjZScpO1xuICByZWFscGF0aCA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ3JlYWxwYXRoJyk7XG4gIHJlc29sdmVNb2R1bGVOYW1lcyA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ3Jlc29sdmVNb2R1bGVOYW1lcycpO1xuICByZXNvbHZlVHlwZVJlZmVyZW5jZURpcmVjdGl2ZXMgPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCdyZXNvbHZlVHlwZVJlZmVyZW5jZURpcmVjdGl2ZXMnKTtcbiAgcmVzb3VyY2VOYW1lVG9GaWxlTmFtZSA9IHRoaXMuZGVsZWdhdGVNZXRob2QoJ3Jlc291cmNlTmFtZVRvRmlsZU5hbWUnKTtcbiAgdHJhY2UgPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCd0cmFjZScpO1xuICB1c2VDYXNlU2Vuc2l0aXZlRmlsZU5hbWVzID0gdGhpcy5kZWxlZ2F0ZU1ldGhvZCgndXNlQ2FzZVNlbnNpdGl2ZUZpbGVOYW1lcycpO1xuICB3cml0ZUZpbGUgPSB0aGlzLmRlbGVnYXRlTWV0aG9kKCd3cml0ZUZpbGUnKTtcbn1cblxuLyoqXG4gKiBBIHdyYXBwZXIgYXJvdW5kIGB0cy5Db21waWxlckhvc3RgIChwbHVzIGFueSBleHRlbnNpb24gbWV0aG9kcyBmcm9tIGBFeHRlbmRlZFRzQ29tcGlsZXJIb3N0YCkuXG4gKlxuICogSW4gb3JkZXIgZm9yIGEgY29uc3VtZXIgdG8gaW5jbHVkZSBBbmd1bGFyIGNvbXBpbGF0aW9uIGluIHRoZWlyIFR5cGVTY3JpcHQgY29tcGlsZXIsIHRoZVxuICogYHRzLlByb2dyYW1gIG11c3QgYmUgY3JlYXRlZCB3aXRoIGEgaG9zdCB0aGF0IGFkZHMgQW5ndWxhci1zcGVjaWZpYyBmaWxlcyAoZS5nLiBmYWN0b3JpZXMsXG4gKiBzdW1tYXJpZXMsIHRoZSB0ZW1wbGF0ZSB0eXBlLWNoZWNraW5nIGZpbGUsIGV0YykgdG8gdGhlIGNvbXBpbGF0aW9uLiBgTmdDb21waWxlckhvc3RgIGlzIHRoZVxuICogaG9zdCBpbXBsZW1lbnRhdGlvbiB3aGljaCBzdXBwb3J0cyB0aGlzLlxuICpcbiAqIFRoZSBpbnRlcmZhY2UgaW1wbGVtZW50YXRpb25zIGhlcmUgZW5zdXJlIHRoYXQgYE5nQ29tcGlsZXJIb3N0YCBmdWxseSBkZWxlZ2F0ZXMgdG9cbiAqIGBFeHRlbmRlZFRzQ29tcGlsZXJIb3N0YCBtZXRob2RzIHdoZW5ldmVyIHByZXNlbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBOZ0NvbXBpbGVySG9zdCBleHRlbmRzIERlbGVnYXRpbmdDb21waWxlckhvc3QgaW1wbGVtZW50c1xuICAgIFJlcXVpcmVkQ29tcGlsZXJIb3N0RGVsZWdhdGlvbnMsXG4gICAgRXh0ZW5kZWRUc0NvbXBpbGVySG9zdCB7XG4gIHJlYWRvbmx5IGZhY3RvcnlUcmFja2VyOiBGYWN0b3J5VHJhY2tlcnxudWxsID0gbnVsbDtcbiAgcmVhZG9ubHkgZW50cnlQb2ludDogQWJzb2x1dGVGc1BhdGh8bnVsbCA9IG51bGw7XG4gIHJlYWRvbmx5IGRpYWdub3N0aWNzOiB0cy5EaWFnbm9zdGljW107XG5cbiAgcmVhZG9ubHkgaW5wdXRGaWxlczogUmVhZG9ubHlBcnJheTxzdHJpbmc+O1xuICByZWFkb25seSByb290RGlyczogUmVhZG9ubHlBcnJheTxBYnNvbHV0ZUZzUGF0aD47XG4gIHJlYWRvbmx5IHR5cGVDaGVja0ZpbGU6IEFic29sdXRlRnNQYXRoO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgZGVsZWdhdGU6IEV4dGVuZGVkVHNDb21waWxlckhvc3QsIGlucHV0RmlsZXM6IFJlYWRvbmx5QXJyYXk8c3RyaW5nPixcbiAgICAgIHJvb3REaXJzOiBSZWFkb25seUFycmF5PEFic29sdXRlRnNQYXRoPiwgcHJpdmF0ZSBzaGltczogU2hpbUdlbmVyYXRvcltdLFxuICAgICAgZW50cnlQb2ludDogQWJzb2x1dGVGc1BhdGh8bnVsbCwgdHlwZUNoZWNrRmlsZTogQWJzb2x1dGVGc1BhdGgsXG4gICAgICBmYWN0b3J5VHJhY2tlcjogRmFjdG9yeVRyYWNrZXJ8bnVsbCwgZGlhZ25vc3RpY3M6IHRzLkRpYWdub3N0aWNbXSkge1xuICAgIHN1cGVyKGRlbGVnYXRlKTtcblxuICAgIHRoaXMuZmFjdG9yeVRyYWNrZXIgPSBmYWN0b3J5VHJhY2tlcjtcbiAgICB0aGlzLmVudHJ5UG9pbnQgPSBlbnRyeVBvaW50O1xuICAgIHRoaXMudHlwZUNoZWNrRmlsZSA9IHR5cGVDaGVja0ZpbGU7XG4gICAgdGhpcy5kaWFnbm9zdGljcyA9IGRpYWdub3N0aWNzO1xuICAgIHRoaXMuaW5wdXRGaWxlcyA9IGlucHV0RmlsZXM7XG4gICAgdGhpcy5yb290RGlycyA9IHJvb3REaXJzO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhbiBgTmdDb21waWxlckhvc3RgIGZyb20gYSBkZWxlZ2F0ZSBob3N0LCBhbiBhcnJheSBvZiBpbnB1dCBmaWxlbmFtZXMsIGFuZCB0aGUgZnVsbCBzZXRcbiAgICogb2YgVHlwZVNjcmlwdCBhbmQgQW5ndWxhciBjb21waWxlciBvcHRpb25zLlxuICAgKi9cbiAgc3RhdGljIHdyYXAoXG4gICAgICBkZWxlZ2F0ZTogdHMuQ29tcGlsZXJIb3N0LCBpbnB1dEZpbGVzOiBSZWFkb25seUFycmF5PHN0cmluZz4sXG4gICAgICBvcHRpb25zOiBOZ0NvbXBpbGVyT3B0aW9ucyk6IE5nQ29tcGlsZXJIb3N0IHtcbiAgICAvLyBUT0RPKGFseGh1Yik6IHJlbW92ZSB0aGUgZmFsbGJhY2sgdG8gYWxsb3dFbXB0eUNvZGVnZW5GaWxlcyBhZnRlciB2ZXJpZnlpbmcgdGhhdCB0aGUgcmVzdCBvZlxuICAgIC8vIG91ciBidWlsZCB0b29saW5nIGlzIG5vIGxvbmdlciByZWx5aW5nIG9uIGl0LlxuICAgIGNvbnN0IGFsbG93RW1wdHlDb2RlZ2VuRmlsZXMgPSBvcHRpb25zLmFsbG93RW1wdHlDb2RlZ2VuRmlsZXMgfHwgZmFsc2U7XG4gICAgY29uc3Qgc2hvdWxkR2VuZXJhdGVGYWN0b3J5U2hpbXMgPSBvcHRpb25zLmdlbmVyYXRlTmdGYWN0b3J5U2hpbXMgIT09IHVuZGVmaW5lZCA/XG4gICAgICAgIG9wdGlvbnMuZ2VuZXJhdGVOZ0ZhY3RvcnlTaGltcyA6XG4gICAgICAgIGFsbG93RW1wdHlDb2RlZ2VuRmlsZXM7XG5cbiAgICBjb25zdCBzaG91bGRHZW5lcmF0ZVN1bW1hcnlTaGltcyA9IG9wdGlvbnMuZ2VuZXJhdGVOZ1N1bW1hcnlTaGltcyAhPT0gdW5kZWZpbmVkID9cbiAgICAgICAgb3B0aW9ucy5nZW5lcmF0ZU5nU3VtbWFyeVNoaW1zIDpcbiAgICAgICAgYWxsb3dFbXB0eUNvZGVnZW5GaWxlcztcblxuICAgIGxldCByb290RmlsZXMgPSBbLi4uaW5wdXRGaWxlc107XG4gICAgbGV0IG5vcm1hbGl6ZWRJbnB1dEZpbGVzID0gaW5wdXRGaWxlcy5tYXAobiA9PiByZXNvbHZlKG4pKTtcblxuICAgIGNvbnN0IGdlbmVyYXRvcnM6IFNoaW1HZW5lcmF0b3JbXSA9IFtdO1xuICAgIGxldCBzdW1tYXJ5R2VuZXJhdG9yOiBTdW1tYXJ5R2VuZXJhdG9yfG51bGwgPSBudWxsO1xuXG4gICAgaWYgKHNob3VsZEdlbmVyYXRlU3VtbWFyeVNoaW1zKSB7XG4gICAgICAvLyBTdW1tYXJ5IGdlbmVyYXRpb24uXG4gICAgICBzdW1tYXJ5R2VuZXJhdG9yID0gU3VtbWFyeUdlbmVyYXRvci5mb3JSb290RmlsZXMobm9ybWFsaXplZElucHV0RmlsZXMpO1xuICAgICAgZ2VuZXJhdG9ycy5wdXNoKHN1bW1hcnlHZW5lcmF0b3IpO1xuICAgIH1cblxuICAgIGxldCBmYWN0b3J5VHJhY2tlcjogRmFjdG9yeVRyYWNrZXJ8bnVsbCA9IG51bGw7XG4gICAgaWYgKHNob3VsZEdlbmVyYXRlRmFjdG9yeVNoaW1zKSB7XG4gICAgICAvLyBGYWN0b3J5IGdlbmVyYXRpb24uXG4gICAgICBjb25zdCBmYWN0b3J5R2VuZXJhdG9yID0gRmFjdG9yeUdlbmVyYXRvci5mb3JSb290RmlsZXMobm9ybWFsaXplZElucHV0RmlsZXMpO1xuICAgICAgY29uc3QgZmFjdG9yeUZpbGVNYXAgPSBmYWN0b3J5R2VuZXJhdG9yLmZhY3RvcnlGaWxlTWFwO1xuXG4gICAgICBjb25zdCBmYWN0b3J5RmlsZU5hbWVzID0gQXJyYXkuZnJvbShmYWN0b3J5RmlsZU1hcC5rZXlzKCkpO1xuICAgICAgcm9vdEZpbGVzLnB1c2goLi4uZmFjdG9yeUZpbGVOYW1lcyk7XG4gICAgICBnZW5lcmF0b3JzLnB1c2goZmFjdG9yeUdlbmVyYXRvcik7XG5cbiAgICAgIGZhY3RvcnlUcmFja2VyID0gbmV3IEZhY3RvcnlUcmFja2VyKGZhY3RvcnlHZW5lcmF0b3IpO1xuICAgIH1cblxuICAgIC8vIERvbmUgc2VwYXJhdGVseSB0byBwcmVzZXJ2ZSB0aGUgb3JkZXIgb2YgZmFjdG9yeSBmaWxlcyBiZWZvcmUgc3VtbWFyeSBmaWxlcyBpbiByb290RmlsZXMuXG4gICAgLy8gVE9ETyhhbHhodWIpOiB2YWxpZGF0ZSB0aGF0IHRoaXMgaXMgbmVjZXNzYXJ5LlxuICAgIGlmIChzdW1tYXJ5R2VuZXJhdG9yICE9PSBudWxsKSB7XG4gICAgICByb290RmlsZXMucHVzaCguLi5zdW1tYXJ5R2VuZXJhdG9yLmdldFN1bW1hcnlGaWxlTmFtZXMoKSk7XG4gICAgfVxuXG5cbiAgICBjb25zdCByb290RGlycyA9IGdldFJvb3REaXJzKGRlbGVnYXRlLCBvcHRpb25zIGFzIHRzLkNvbXBpbGVyT3B0aW9ucyk7XG5cbiAgICBjb25zdCB0eXBlQ2hlY2tGaWxlID0gdHlwZUNoZWNrRmlsZVBhdGgocm9vdERpcnMpO1xuICAgIGdlbmVyYXRvcnMucHVzaChuZXcgVHlwZUNoZWNrU2hpbUdlbmVyYXRvcih0eXBlQ2hlY2tGaWxlKSk7XG4gICAgcm9vdEZpbGVzLnB1c2godHlwZUNoZWNrRmlsZSk7XG5cbiAgICBsZXQgZGlhZ25vc3RpY3M6IHRzLkRpYWdub3N0aWNbXSA9IFtdO1xuXG4gICAgbGV0IGVudHJ5UG9pbnQ6IEFic29sdXRlRnNQYXRofG51bGwgPSBudWxsO1xuICAgIGlmIChvcHRpb25zLmZsYXRNb2R1bGVPdXRGaWxlICE9IG51bGwgJiYgb3B0aW9ucy5mbGF0TW9kdWxlT3V0RmlsZSAhPT0gJycpIHtcbiAgICAgIGVudHJ5UG9pbnQgPSBmaW5kRmxhdEluZGV4RW50cnlQb2ludChub3JtYWxpemVkSW5wdXRGaWxlcyk7XG4gICAgICBpZiAoZW50cnlQb2ludCA9PT0gbnVsbCkge1xuICAgICAgICAvLyBUaGlzIGVycm9yIG1lc3NhZ2UgdGFsa3Mgc3BlY2lmaWNhbGx5IGFib3V0IGhhdmluZyBhIHNpbmdsZSAudHMgZmlsZSBpbiBcImZpbGVzXCIuIEhvd2V2ZXJcbiAgICAgICAgLy8gdGhlIGFjdHVhbCBsb2dpYyBpcyBhIGJpdCBtb3JlIHBlcm1pc3NpdmUuIElmIGEgc2luZ2xlIGZpbGUgZXhpc3RzLCB0aGF0IHdpbGwgYmUgdGFrZW4sXG4gICAgICAgIC8vIG90aGVyd2lzZSB0aGUgaGlnaGVzdCBsZXZlbCAoc2hvcnRlc3QgcGF0aCkgXCJpbmRleC50c1wiIGZpbGUgd2lsbCBiZSB1c2VkIGFzIHRoZSBmbGF0XG4gICAgICAgIC8vIG1vZHVsZSBlbnRyeSBwb2ludCBpbnN0ZWFkLiBJZiBuZWl0aGVyIG9mIHRoZXNlIGNvbmRpdGlvbnMgYXBwbHksIHRoZSBlcnJvciBiZWxvdyBpc1xuICAgICAgICAvLyBnaXZlbi5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gVGhlIHVzZXIgaXMgbm90IGluZm9ybWVkIGFib3V0IHRoZSBcImluZGV4LnRzXCIgb3B0aW9uIGFzIHRoaXMgYmVoYXZpb3IgaXMgZGVwcmVjYXRlZCAtXG4gICAgICAgIC8vIGFuIGV4cGxpY2l0IGVudHJ5cG9pbnQgc2hvdWxkIGFsd2F5cyBiZSBzcGVjaWZpZWQuXG4gICAgICAgIGRpYWdub3N0aWNzLnB1c2goe1xuICAgICAgICAgIGNhdGVnb3J5OiB0cy5EaWFnbm9zdGljQ2F0ZWdvcnkuRXJyb3IsXG4gICAgICAgICAgY29kZTogbmdFcnJvckNvZGUoRXJyb3JDb2RlLkNPTkZJR19GTEFUX01PRFVMRV9OT19JTkRFWCksXG4gICAgICAgICAgZmlsZTogdW5kZWZpbmVkLFxuICAgICAgICAgIHN0YXJ0OiB1bmRlZmluZWQsXG4gICAgICAgICAgbGVuZ3RoOiB1bmRlZmluZWQsXG4gICAgICAgICAgbWVzc2FnZVRleHQ6XG4gICAgICAgICAgICAgICdBbmd1bGFyIGNvbXBpbGVyIG9wdGlvbiBcImZsYXRNb2R1bGVPdXRGaWxlXCIgcmVxdWlyZXMgb25lIGFuZCBvbmx5IG9uZSAudHMgZmlsZSBpbiB0aGUgXCJmaWxlc1wiIGZpZWxkLicsXG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc3QgZmxhdE1vZHVsZUlkID0gb3B0aW9ucy5mbGF0TW9kdWxlSWQgfHwgbnVsbDtcbiAgICAgICAgY29uc3QgZmxhdE1vZHVsZU91dEZpbGUgPSBub3JtYWxpemVTZXBhcmF0b3JzKG9wdGlvbnMuZmxhdE1vZHVsZU91dEZpbGUpO1xuICAgICAgICBjb25zdCBmbGF0SW5kZXhHZW5lcmF0b3IgPVxuICAgICAgICAgICAgbmV3IEZsYXRJbmRleEdlbmVyYXRvcihlbnRyeVBvaW50LCBmbGF0TW9kdWxlT3V0RmlsZSwgZmxhdE1vZHVsZUlkKTtcbiAgICAgICAgZ2VuZXJhdG9ycy5wdXNoKGZsYXRJbmRleEdlbmVyYXRvcik7XG4gICAgICAgIHJvb3RGaWxlcy5wdXNoKGZsYXRJbmRleEdlbmVyYXRvci5mbGF0SW5kZXhQYXRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbmV3IE5nQ29tcGlsZXJIb3N0KFxuICAgICAgICBkZWxlZ2F0ZSwgcm9vdEZpbGVzLCByb290RGlycywgZ2VuZXJhdG9ycywgZW50cnlQb2ludCwgdHlwZUNoZWNrRmlsZSwgZmFjdG9yeVRyYWNrZXIsXG4gICAgICAgIGRpYWdub3N0aWNzKTtcbiAgfVxuXG4gIGdldFNvdXJjZUZpbGUoXG4gICAgICBmaWxlTmFtZTogc3RyaW5nLCBsYW5ndWFnZVZlcnNpb246IHRzLlNjcmlwdFRhcmdldCxcbiAgICAgIG9uRXJyb3I/OiAoKG1lc3NhZ2U6IHN0cmluZykgPT4gdm9pZCl8dW5kZWZpbmVkLFxuICAgICAgc2hvdWxkQ3JlYXRlTmV3U291cmNlRmlsZT86IGJvb2xlYW58dW5kZWZpbmVkKTogdHMuU291cmNlRmlsZXx1bmRlZmluZWQge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5zaGltcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgZ2VuZXJhdG9yID0gdGhpcy5zaGltc1tpXTtcbiAgICAgIC8vIFR5cGVTY3JpcHQgaW50ZXJuYWwgcGF0aHMgYXJlIGd1YXJhbnRlZWQgdG8gYmUgUE9TSVgtbGlrZSBhYnNvbHV0ZSBmaWxlIHBhdGhzLlxuICAgICAgY29uc3QgYWJzb2x1dGVGc1BhdGggPSByZXNvbHZlKGZpbGVOYW1lKTtcbiAgICAgIGlmIChnZW5lcmF0b3IucmVjb2duaXplKGFic29sdXRlRnNQYXRoKSkge1xuICAgICAgICBjb25zdCByZWFkRmlsZSA9IChvcmlnaW5hbEZpbGU6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHJldHVybiB0aGlzLmRlbGVnYXRlLmdldFNvdXJjZUZpbGUoXG4gICAgICAgICAgICAgICAgICAgICBvcmlnaW5hbEZpbGUsIGxhbmd1YWdlVmVyc2lvbiwgb25FcnJvciwgc2hvdWxkQ3JlYXRlTmV3U291cmNlRmlsZSkgfHxcbiAgICAgICAgICAgICAgbnVsbDtcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gZ2VuZXJhdG9yLmdlbmVyYXRlKGFic29sdXRlRnNQYXRoLCByZWFkRmlsZSkgfHwgdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRlbGVnYXRlLmdldFNvdXJjZUZpbGUoXG4gICAgICAgIGZpbGVOYW1lLCBsYW5ndWFnZVZlcnNpb24sIG9uRXJyb3IsIHNob3VsZENyZWF0ZU5ld1NvdXJjZUZpbGUpO1xuICB9XG5cbiAgZmlsZUV4aXN0cyhmaWxlTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgLy8gQ29uc2lkZXIgdGhlIGZpbGUgYXMgZXhpc3Rpbmcgd2hlbmV2ZXJcbiAgICAvLyAgMSkgaXQgcmVhbGx5IGRvZXMgZXhpc3QgaW4gdGhlIGRlbGVnYXRlIGhvc3QsIG9yXG4gICAgLy8gIDIpIGF0IGxlYXN0IG9uZSBvZiB0aGUgc2hpbSBnZW5lcmF0b3JzIHJlY29nbml6ZXMgaXRcbiAgICAvLyBOb3RlIHRoYXQgd2UgY2FuIHBhc3MgdGhlIGZpbGUgbmFtZSBhcyBicmFuZGVkIGFic29sdXRlIGZzIHBhdGggYmVjYXVzZSBUeXBlU2NyaXB0XG4gICAgLy8gaW50ZXJuYWxseSBvbmx5IHBhc3NlcyBQT1NJWC1saWtlIHBhdGhzLlxuICAgIHJldHVybiB0aGlzLmRlbGVnYXRlLmZpbGVFeGlzdHMoZmlsZU5hbWUpIHx8XG4gICAgICAgIHRoaXMuc2hpbXMuc29tZShzaGltID0+IHNoaW0ucmVjb2duaXplKHJlc29sdmUoZmlsZU5hbWUpKSk7XG4gIH1cblxuICBnZXQgdW5pZmllZE1vZHVsZXNIb3N0KCk6IFVuaWZpZWRNb2R1bGVzSG9zdHxudWxsIHtcbiAgICByZXR1cm4gdGhpcy5maWxlTmFtZVRvTW9kdWxlTmFtZSAhPT0gdW5kZWZpbmVkID8gdGhpcyBhcyBVbmlmaWVkTW9kdWxlc0hvc3QgOiBudWxsO1xuICB9XG59XG4iXX0=
@@ -73,7 +73,7 @@
73
73
  stmt.moduleSpecifier !== undefined && ts.isStringLiteral(stmt.moduleSpecifier)) {
74
74
  // Resolve the module to a file, and check whether that file is in the ts.Program.
75
75
  var moduleName = stmt.moduleSpecifier.text;
76
- var moduleFile = _this.resolver.resolveModuleName(moduleName, sf);
76
+ var moduleFile = _this.resolver.resolveModule(moduleName, sf.fileName);
77
77
  if (moduleFile !== null && isLocalFile(moduleFile)) {
78
78
  // Record this local import.
79
79
  imports.add(moduleFile);
@@ -89,4 +89,4 @@
89
89
  return !sf.fileName.endsWith('.d.ts');
90
90
  }
91
91
  });
92
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvY3ljbGVzL3NyYy9pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgsK0JBQWlDO0lBSWpDOzs7OztPQUtHO0lBQ0g7UUFHRSxxQkFBb0IsUUFBd0I7WUFBeEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7WUFGcEMsUUFBRyxHQUFHLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBRVosQ0FBQztRQUVoRDs7OztXQUlHO1FBQ0gsK0JBQVMsR0FBVCxVQUFVLEVBQWlCO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN4QztZQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFHLENBQUM7UUFDNUIsQ0FBQztRQUVEOztXQUVHO1FBQ0gseUNBQW1CLEdBQW5CLFVBQW9CLEVBQWlCO1lBQ25DLElBQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFpQixDQUFDO1lBQ3pDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUMsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUVPLCtDQUF5QixHQUFqQyxVQUFrQyxFQUFpQixFQUFFLE9BQTJCO1lBQWhGLGlCQU1DO1lBTEMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUNuQixPQUFPO2FBQ1I7WUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQUEsUUFBUSxJQUFNLEtBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRyxDQUFDO1FBRUQ7OztXQUdHO1FBQ0gsd0NBQWtCLEdBQWxCLFVBQW1CLEVBQWlCLEVBQUUsUUFBdUI7WUFDM0QsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ2xDO1FBQ0gsQ0FBQztRQUVPLGlDQUFXLEdBQW5CLFVBQW9CLEVBQWlCO1lBQXJDLGlCQWdCQztZQWZDLElBQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFpQixDQUFDO1lBQ3pDLHNEQUFzRDtZQUN0RCxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFBLElBQUk7Z0JBQ3hCLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO29CQUM5RCxJQUFJLENBQUMsZUFBZSxLQUFLLFNBQVMsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRTtvQkFDbEYsa0ZBQWtGO29CQUNsRixJQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztvQkFDN0MsSUFBTSxVQUFVLEdBQUcsS0FBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7b0JBQ25FLElBQUksVUFBVSxLQUFLLElBQUksSUFBSSxXQUFXLENBQUMsVUFBVSxDQUFDLEVBQUU7d0JBQ2xELDRCQUE0Qjt3QkFDNUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztxQkFDekI7aUJBQ0Y7WUFDSCxDQUFDLENBQUMsQ0FBQztZQUNILE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUM7UUFDSCxrQkFBQztJQUFELENBQUMsQUE3REQsSUE2REM7SUE3RFksa0NBQVc7SUErRHhCLFNBQVMsV0FBVyxDQUFDLEVBQWlCO1FBQ3BDLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtNb2R1bGVSZXNvbHZlcn0gZnJvbSAnLi4vLi4vaW1wb3J0cyc7XG5cbi8qKlxuICogQSBjYWNoZWQgZ3JhcGggb2YgaW1wb3J0cyBpbiB0aGUgYHRzLlByb2dyYW1gLlxuICpcbiAqIFRoZSBgSW1wb3J0R3JhcGhgIGtlZXBzIHRyYWNrIG9mIGRlcGVuZGVuY2llcyAoaW1wb3J0cykgb2YgaW5kaXZpZHVhbCBgdHMuU291cmNlRmlsZWBzLiBPbmx5XG4gKiBkZXBlbmRlbmNpZXMgd2l0aGluIHRoZSBzYW1lIHByb2dyYW0gYXJlIHRyYWNrZWQ7IGltcG9ydHMgaW50byBwYWNrYWdlcyBvbiBOUE0gYXJlIG5vdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEltcG9ydEdyYXBoIHtcbiAgcHJpdmF0ZSBtYXAgPSBuZXcgTWFwPHRzLlNvdXJjZUZpbGUsIFNldDx0cy5Tb3VyY2VGaWxlPj4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlc29sdmVyOiBNb2R1bGVSZXNvbHZlcikge31cblxuICAvKipcbiAgICogTGlzdCB0aGUgZGlyZWN0IChub3QgdHJhbnNpdGl2ZSkgaW1wb3J0cyBvZiBhIGdpdmVuIGB0cy5Tb3VyY2VGaWxlYC5cbiAgICpcbiAgICogVGhpcyBvcGVyYXRpb24gaXMgY2FjaGVkLlxuICAgKi9cbiAgaW1wb3J0c09mKHNmOiB0cy5Tb3VyY2VGaWxlKTogU2V0PHRzLlNvdXJjZUZpbGU+IHtcbiAgICBpZiAoIXRoaXMubWFwLmhhcyhzZikpIHtcbiAgICAgIHRoaXMubWFwLnNldChzZiwgdGhpcy5zY2FuSW1wb3J0cyhzZikpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5tYXAuZ2V0KHNmKSAhO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RzIHRoZSB0cmFuc2l0aXZlIGltcG9ydHMgb2YgYSBnaXZlbiBgdHMuU291cmNlRmlsZWAuXG4gICAqL1xuICB0cmFuc2l0aXZlSW1wb3J0c09mKHNmOiB0cy5Tb3VyY2VGaWxlKTogU2V0PHRzLlNvdXJjZUZpbGU+IHtcbiAgICBjb25zdCBpbXBvcnRzID0gbmV3IFNldDx0cy5Tb3VyY2VGaWxlPigpO1xuICAgIHRoaXMudHJhbnNpdGl2ZUltcG9ydHNPZkhlbHBlcihzZiwgaW1wb3J0cyk7XG4gICAgcmV0dXJuIGltcG9ydHM7XG4gIH1cblxuICBwcml2YXRlIHRyYW5zaXRpdmVJbXBvcnRzT2ZIZWxwZXIoc2Y6IHRzLlNvdXJjZUZpbGUsIHJlc3VsdHM6IFNldDx0cy5Tb3VyY2VGaWxlPik6IHZvaWQge1xuICAgIGlmIChyZXN1bHRzLmhhcyhzZikpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcmVzdWx0cy5hZGQoc2YpO1xuICAgIHRoaXMuaW1wb3J0c09mKHNmKS5mb3JFYWNoKGltcG9ydGVkID0+IHsgdGhpcy50cmFuc2l0aXZlSW1wb3J0c09mSGVscGVyKGltcG9ydGVkLCByZXN1bHRzKTsgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgcmVjb3JkIG9mIGFuIGltcG9ydCBmcm9tIGBzZmAgdG8gYGltcG9ydGVkYCwgdGhhdCdzIG5vdCBwcmVzZW50IGluIHRoZSBvcmlnaW5hbFxuICAgKiBgdHMuUHJvZ3JhbWAgYnV0IHdpbGwgYmUgcmVtZW1iZXJlZCBieSB0aGUgYEltcG9ydEdyYXBoYC5cbiAgICovXG4gIGFkZFN5bnRoZXRpY0ltcG9ydChzZjogdHMuU291cmNlRmlsZSwgaW1wb3J0ZWQ6IHRzLlNvdXJjZUZpbGUpOiB2b2lkIHtcbiAgICBpZiAoaXNMb2NhbEZpbGUoaW1wb3J0ZWQpKSB7XG4gICAgICB0aGlzLmltcG9ydHNPZihzZikuYWRkKGltcG9ydGVkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNjYW5JbXBvcnRzKHNmOiB0cy5Tb3VyY2VGaWxlKTogU2V0PHRzLlNvdXJjZUZpbGU+IHtcbiAgICBjb25zdCBpbXBvcnRzID0gbmV3IFNldDx0cy5Tb3VyY2VGaWxlPigpO1xuICAgIC8vIExvb2sgdGhyb3VnaCB0aGUgc291cmNlIGZpbGUgZm9yIGltcG9ydCBzdGF0ZW1lbnRzLlxuICAgIHNmLnN0YXRlbWVudHMuZm9yRWFjaChzdG10ID0+IHtcbiAgICAgIGlmICgodHMuaXNJbXBvcnREZWNsYXJhdGlvbihzdG10KSB8fCB0cy5pc0V4cG9ydERlY2xhcmF0aW9uKHN0bXQpKSAmJlxuICAgICAgICAgIHN0bXQubW9kdWxlU3BlY2lmaWVyICE9PSB1bmRlZmluZWQgJiYgdHMuaXNTdHJpbmdMaXRlcmFsKHN0bXQubW9kdWxlU3BlY2lmaWVyKSkge1xuICAgICAgICAvLyBSZXNvbHZlIHRoZSBtb2R1bGUgdG8gYSBmaWxlLCBhbmQgY2hlY2sgd2hldGhlciB0aGF0IGZpbGUgaXMgaW4gdGhlIHRzLlByb2dyYW0uXG4gICAgICAgIGNvbnN0IG1vZHVsZU5hbWUgPSBzdG10Lm1vZHVsZVNwZWNpZmllci50ZXh0O1xuICAgICAgICBjb25zdCBtb2R1bGVGaWxlID0gdGhpcy5yZXNvbHZlci5yZXNvbHZlTW9kdWxlTmFtZShtb2R1bGVOYW1lLCBzZik7XG4gICAgICAgIGlmIChtb2R1bGVGaWxlICE9PSBudWxsICYmIGlzTG9jYWxGaWxlKG1vZHVsZUZpbGUpKSB7XG4gICAgICAgICAgLy8gUmVjb3JkIHRoaXMgbG9jYWwgaW1wb3J0LlxuICAgICAgICAgIGltcG9ydHMuYWRkKG1vZHVsZUZpbGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGltcG9ydHM7XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNMb2NhbEZpbGUoc2Y6IHRzLlNvdXJjZUZpbGUpOiBib29sZWFuIHtcbiAgcmV0dXJuICFzZi5maWxlTmFtZS5lbmRzV2l0aCgnLmQudHMnKTtcbn1cbiJdfQ==
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvY3ljbGVzL3NyYy9pbXBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgsK0JBQWlDO0lBSWpDOzs7OztPQUtHO0lBQ0g7UUFHRSxxQkFBb0IsUUFBd0I7WUFBeEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7WUFGcEMsUUFBRyxHQUFHLElBQUksR0FBRyxFQUFxQyxDQUFDO1FBRVosQ0FBQztRQUVoRDs7OztXQUlHO1FBQ0gsK0JBQVMsR0FBVCxVQUFVLEVBQWlCO1lBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQzthQUN4QztZQUNELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFHLENBQUM7UUFDNUIsQ0FBQztRQUVEOztXQUVHO1FBQ0gseUNBQW1CLEdBQW5CLFVBQW9CLEVBQWlCO1lBQ25DLElBQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFpQixDQUFDO1lBQ3pDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDNUMsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUVPLCtDQUF5QixHQUFqQyxVQUFrQyxFQUFpQixFQUFFLE9BQTJCO1lBQWhGLGlCQU1DO1lBTEMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFO2dCQUNuQixPQUFPO2FBQ1I7WUFDRCxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQUEsUUFBUSxJQUFNLEtBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRyxDQUFDO1FBRUQ7OztXQUdHO1FBQ0gsd0NBQWtCLEdBQWxCLFVBQW1CLEVBQWlCLEVBQUUsUUFBdUI7WUFDM0QsSUFBSSxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ2xDO1FBQ0gsQ0FBQztRQUVPLGlDQUFXLEdBQW5CLFVBQW9CLEVBQWlCO1lBQXJDLGlCQWdCQztZQWZDLElBQU0sT0FBTyxHQUFHLElBQUksR0FBRyxFQUFpQixDQUFDO1lBQ3pDLHNEQUFzRDtZQUN0RCxFQUFFLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFBLElBQUk7Z0JBQ3hCLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDO29CQUM5RCxJQUFJLENBQUMsZUFBZSxLQUFLLFNBQVMsSUFBSSxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsRUFBRTtvQkFDbEYsa0ZBQWtGO29CQUNsRixJQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQztvQkFDN0MsSUFBTSxVQUFVLEdBQUcsS0FBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztvQkFDeEUsSUFBSSxVQUFVLEtBQUssSUFBSSxJQUFJLFdBQVcsQ0FBQyxVQUFVLENBQUMsRUFBRTt3QkFDbEQsNEJBQTRCO3dCQUM1QixPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO3FCQUN6QjtpQkFDRjtZQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUNILGtCQUFDO0lBQUQsQ0FBQyxBQTdERCxJQTZEQztJQTdEWSxrQ0FBVztJQStEeEIsU0FBUyxXQUFXLENBQUMsRUFBaUI7UUFDcEMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge01vZHVsZVJlc29sdmVyfSBmcm9tICcuLi8uLi9pbXBvcnRzJztcblxuLyoqXG4gKiBBIGNhY2hlZCBncmFwaCBvZiBpbXBvcnRzIGluIHRoZSBgdHMuUHJvZ3JhbWAuXG4gKlxuICogVGhlIGBJbXBvcnRHcmFwaGAga2VlcHMgdHJhY2sgb2YgZGVwZW5kZW5jaWVzIChpbXBvcnRzKSBvZiBpbmRpdmlkdWFsIGB0cy5Tb3VyY2VGaWxlYHMuIE9ubHlcbiAqIGRlcGVuZGVuY2llcyB3aXRoaW4gdGhlIHNhbWUgcHJvZ3JhbSBhcmUgdHJhY2tlZDsgaW1wb3J0cyBpbnRvIHBhY2thZ2VzIG9uIE5QTSBhcmUgbm90LlxuICovXG5leHBvcnQgY2xhc3MgSW1wb3J0R3JhcGgge1xuICBwcml2YXRlIG1hcCA9IG5ldyBNYXA8dHMuU291cmNlRmlsZSwgU2V0PHRzLlNvdXJjZUZpbGU+PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVzb2x2ZXI6IE1vZHVsZVJlc29sdmVyKSB7fVxuXG4gIC8qKlxuICAgKiBMaXN0IHRoZSBkaXJlY3QgKG5vdCB0cmFuc2l0aXZlKSBpbXBvcnRzIG9mIGEgZ2l2ZW4gYHRzLlNvdXJjZUZpbGVgLlxuICAgKlxuICAgKiBUaGlzIG9wZXJhdGlvbiBpcyBjYWNoZWQuXG4gICAqL1xuICBpbXBvcnRzT2Yoc2Y6IHRzLlNvdXJjZUZpbGUpOiBTZXQ8dHMuU291cmNlRmlsZT4ge1xuICAgIGlmICghdGhpcy5tYXAuaGFzKHNmKSkge1xuICAgICAgdGhpcy5tYXAuc2V0KHNmLCB0aGlzLnNjYW5JbXBvcnRzKHNmKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLm1hcC5nZXQoc2YpICE7XG4gIH1cblxuICAvKipcbiAgICogTGlzdHMgdGhlIHRyYW5zaXRpdmUgaW1wb3J0cyBvZiBhIGdpdmVuIGB0cy5Tb3VyY2VGaWxlYC5cbiAgICovXG4gIHRyYW5zaXRpdmVJbXBvcnRzT2Yoc2Y6IHRzLlNvdXJjZUZpbGUpOiBTZXQ8dHMuU291cmNlRmlsZT4ge1xuICAgIGNvbnN0IGltcG9ydHMgPSBuZXcgU2V0PHRzLlNvdXJjZUZpbGU+KCk7XG4gICAgdGhpcy50cmFuc2l0aXZlSW1wb3J0c09mSGVscGVyKHNmLCBpbXBvcnRzKTtcbiAgICByZXR1cm4gaW1wb3J0cztcbiAgfVxuXG4gIHByaXZhdGUgdHJhbnNpdGl2ZUltcG9ydHNPZkhlbHBlcihzZjogdHMuU291cmNlRmlsZSwgcmVzdWx0czogU2V0PHRzLlNvdXJjZUZpbGU+KTogdm9pZCB7XG4gICAgaWYgKHJlc3VsdHMuaGFzKHNmKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICByZXN1bHRzLmFkZChzZik7XG4gICAgdGhpcy5pbXBvcnRzT2Yoc2YpLmZvckVhY2goaW1wb3J0ZWQgPT4geyB0aGlzLnRyYW5zaXRpdmVJbXBvcnRzT2ZIZWxwZXIoaW1wb3J0ZWQsIHJlc3VsdHMpOyB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSByZWNvcmQgb2YgYW4gaW1wb3J0IGZyb20gYHNmYCB0byBgaW1wb3J0ZWRgLCB0aGF0J3Mgbm90IHByZXNlbnQgaW4gdGhlIG9yaWdpbmFsXG4gICAqIGB0cy5Qcm9ncmFtYCBidXQgd2lsbCBiZSByZW1lbWJlcmVkIGJ5IHRoZSBgSW1wb3J0R3JhcGhgLlxuICAgKi9cbiAgYWRkU3ludGhldGljSW1wb3J0KHNmOiB0cy5Tb3VyY2VGaWxlLCBpbXBvcnRlZDogdHMuU291cmNlRmlsZSk6IHZvaWQge1xuICAgIGlmIChpc0xvY2FsRmlsZShpbXBvcnRlZCkpIHtcbiAgICAgIHRoaXMuaW1wb3J0c09mKHNmKS5hZGQoaW1wb3J0ZWQpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2NhbkltcG9ydHMoc2Y6IHRzLlNvdXJjZUZpbGUpOiBTZXQ8dHMuU291cmNlRmlsZT4ge1xuICAgIGNvbnN0IGltcG9ydHMgPSBuZXcgU2V0PHRzLlNvdXJjZUZpbGU+KCk7XG4gICAgLy8gTG9vayB0aHJvdWdoIHRoZSBzb3VyY2UgZmlsZSBmb3IgaW1wb3J0IHN0YXRlbWVudHMuXG4gICAgc2Yuc3RhdGVtZW50cy5mb3JFYWNoKHN0bXQgPT4ge1xuICAgICAgaWYgKCh0cy5pc0ltcG9ydERlY2xhcmF0aW9uKHN0bXQpIHx8IHRzLmlzRXhwb3J0RGVjbGFyYXRpb24oc3RtdCkpICYmXG4gICAgICAgICAgc3RtdC5tb2R1bGVTcGVjaWZpZXIgIT09IHVuZGVmaW5lZCAmJiB0cy5pc1N0cmluZ0xpdGVyYWwoc3RtdC5tb2R1bGVTcGVjaWZpZXIpKSB7XG4gICAgICAgIC8vIFJlc29sdmUgdGhlIG1vZHVsZSB0byBhIGZpbGUsIGFuZCBjaGVjayB3aGV0aGVyIHRoYXQgZmlsZSBpcyBpbiB0aGUgdHMuUHJvZ3JhbS5cbiAgICAgICAgY29uc3QgbW9kdWxlTmFtZSA9IHN0bXQubW9kdWxlU3BlY2lmaWVyLnRleHQ7XG4gICAgICAgIGNvbnN0IG1vZHVsZUZpbGUgPSB0aGlzLnJlc29sdmVyLnJlc29sdmVNb2R1bGUobW9kdWxlTmFtZSwgc2YuZmlsZU5hbWUpO1xuICAgICAgICBpZiAobW9kdWxlRmlsZSAhPT0gbnVsbCAmJiBpc0xvY2FsRmlsZShtb2R1bGVGaWxlKSkge1xuICAgICAgICAgIC8vIFJlY29yZCB0aGlzIGxvY2FsIGltcG9ydC5cbiAgICAgICAgICBpbXBvcnRzLmFkZChtb2R1bGVGaWxlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBpbXBvcnRzO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzTG9jYWxGaWxlKHNmOiB0cy5Tb3VyY2VGaWxlKTogYm9vbGVhbiB7XG4gIHJldHVybiAhc2YuZmlsZU5hbWUuZW5kc1dpdGgoJy5kLnRzJyk7XG59XG4iXX0=
@@ -6,6 +6,6 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  /// <amd-module name="@angular/compiler-cli/src/ngtsc/diagnostics" />
9
- export { ErrorCode, ngErrorCode } from './src/code';
10
9
  export { FatalDiagnosticError, isFatalDiagnosticError, makeDiagnostic } from './src/error';
10
+ export { ErrorCode, ngErrorCode } from './src/error_code';
11
11
  export { replaceTsWithNgInErrors } from './src/util';
@@ -11,19 +11,19 @@
11
11
  if (v !== undefined) module.exports = v;
12
12
  }
13
13
  else if (typeof define === "function" && define.amd) {
14
- define("@angular/compiler-cli/src/ngtsc/diagnostics", ["require", "exports", "@angular/compiler-cli/src/ngtsc/diagnostics/src/code", "@angular/compiler-cli/src/ngtsc/diagnostics/src/error", "@angular/compiler-cli/src/ngtsc/diagnostics/src/util"], factory);
14
+ define("@angular/compiler-cli/src/ngtsc/diagnostics", ["require", "exports", "@angular/compiler-cli/src/ngtsc/diagnostics/src/error", "@angular/compiler-cli/src/ngtsc/diagnostics/src/error_code", "@angular/compiler-cli/src/ngtsc/diagnostics/src/util"], factory);
15
15
  }
16
16
  })(function (require, exports) {
17
17
  "use strict";
18
18
  Object.defineProperty(exports, "__esModule", { value: true });
19
- var code_1 = require("@angular/compiler-cli/src/ngtsc/diagnostics/src/code");
20
- exports.ErrorCode = code_1.ErrorCode;
21
- exports.ngErrorCode = code_1.ngErrorCode;
22
19
  var error_1 = require("@angular/compiler-cli/src/ngtsc/diagnostics/src/error");
23
20
  exports.FatalDiagnosticError = error_1.FatalDiagnosticError;
24
21
  exports.isFatalDiagnosticError = error_1.isFatalDiagnosticError;
25
22
  exports.makeDiagnostic = error_1.makeDiagnostic;
23
+ var error_code_1 = require("@angular/compiler-cli/src/ngtsc/diagnostics/src/error_code");
24
+ exports.ErrorCode = error_code_1.ErrorCode;
25
+ exports.ngErrorCode = error_code_1.ngErrorCode;
26
26
  var util_1 = require("@angular/compiler-cli/src/ngtsc/diagnostics/src/util");
27
27
  exports.replaceTsWithNgInErrors = util_1.replaceTsWithNgInErrors;
28
28
  });
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2RpYWdub3N0aWNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgsNkVBQWtEO0lBQTFDLDJCQUFBLFNBQVMsQ0FBQTtJQUFFLDZCQUFBLFdBQVcsQ0FBQTtJQUM5QiwrRUFBeUY7SUFBakYsdUNBQUEsb0JBQW9CLENBQUE7SUFBRSx5Q0FBQSxzQkFBc0IsQ0FBQTtJQUFFLGlDQUFBLGNBQWMsQ0FBQTtJQUNwRSw2RUFBbUQ7SUFBM0MseUNBQUEsdUJBQXVCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmV4cG9ydCB7RXJyb3JDb2RlLCBuZ0Vycm9yQ29kZX0gZnJvbSAnLi9zcmMvY29kZSc7XG5leHBvcnQge0ZhdGFsRGlhZ25vc3RpY0Vycm9yLCBpc0ZhdGFsRGlhZ25vc3RpY0Vycm9yLCBtYWtlRGlhZ25vc3RpY30gZnJvbSAnLi9zcmMvZXJyb3InO1xuZXhwb3J0IHtyZXBsYWNlVHNXaXRoTmdJbkVycm9yc30gZnJvbSAnLi9zcmMvdXRpbCc7XG4iXX0=
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2RpYWdub3N0aWNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgsK0VBQXlGO0lBQWpGLHVDQUFBLG9CQUFvQixDQUFBO0lBQUUseUNBQUEsc0JBQXNCLENBQUE7SUFBRSxpQ0FBQSxjQUFjLENBQUE7SUFDcEUseUZBQXdEO0lBQWhELGlDQUFBLFNBQVMsQ0FBQTtJQUFFLG1DQUFBLFdBQVcsQ0FBQTtJQUM5Qiw2RUFBbUQ7SUFBM0MseUNBQUEsdUJBQXVCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmV4cG9ydCB7RmF0YWxEaWFnbm9zdGljRXJyb3IsIGlzRmF0YWxEaWFnbm9zdGljRXJyb3IsIG1ha2VEaWFnbm9zdGljfSBmcm9tICcuL3NyYy9lcnJvcic7XG5leHBvcnQge0Vycm9yQ29kZSwgbmdFcnJvckNvZGV9IGZyb20gJy4vc3JjL2Vycm9yX2NvZGUnO1xuZXhwb3J0IHtyZXBsYWNlVHNXaXRoTmdJbkVycm9yc30gZnJvbSAnLi9zcmMvdXRpbCc7XG4iXX0=
@@ -7,7 +7,7 @@
7
7
  */
8
8
  /// <amd-module name="@angular/compiler-cli/src/ngtsc/diagnostics/src/error" />
9
9
  import * as ts from 'typescript';
10
- import { ErrorCode } from './code';
10
+ import { ErrorCode } from './error_code';
11
11
  export declare class FatalDiagnosticError {
12
12
  readonly code: ErrorCode;
13
13
  readonly node: ts.Node;
@@ -63,4 +63,4 @@
63
63
  }
64
64
  exports.isFatalDiagnosticError = isFatalDiagnosticError;
65
65
  });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2RpYWdub3N0aWNzL3NyYy9lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7OztJQUVILCtCQUFpQztJQUlqQztRQUNFLDhCQUFxQixJQUFlLEVBQVcsSUFBYSxFQUFXLE9BQWU7WUFBakUsU0FBSSxHQUFKLElBQUksQ0FBVztZQUFXLFNBQUksR0FBSixJQUFJLENBQVM7WUFBVyxZQUFPLEdBQVAsT0FBTyxDQUFRO1lBRXRGOztlQUVHO1lBQ0gsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBTDBELENBQUM7UUFPMUYsMkNBQVksR0FBWjtZQUNFLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNILDJCQUFDO0lBQUQsQ0FBQyxBQVhELElBV0M7SUFYWSxvREFBb0I7SUFhakMsU0FBZ0IsY0FBYyxDQUFDLElBQWUsRUFBRSxJQUFhLEVBQUUsV0FBbUIsRUFBRSxXQUdqRjtRQUNELElBQUksR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQU0sSUFBSSxHQUE4QjtZQUN0QyxRQUFRLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUs7WUFDckMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BDLElBQUksRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsRUFBRTtZQUM5QyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsV0FBVyxhQUFBO1NBQ3JDLENBQUM7UUFDRixJQUFJLFdBQVcsS0FBSyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsVUFBQSxJQUFJO2dCQUM1QyxJQUFNLFFBQVEsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDL0MsT0FBTztvQkFDTCxRQUFRLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLE9BQU87b0JBQ3ZDLElBQUksRUFBRSxDQUFDO29CQUNQLElBQUksRUFBRSxRQUFRLENBQUMsYUFBYSxFQUFFO29CQUM5QixLQUFLLEVBQUUsUUFBUSxDQUFDLFFBQVEsRUFBRTtvQkFDMUIsTUFBTSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUU7b0JBQzNCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztpQkFDOUIsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUExQkQsd0NBMEJDO0lBRUQsU0FBZ0Isc0JBQXNCLENBQUMsR0FBUTtRQUM3QyxPQUFPLEdBQUcsQ0FBQyx1QkFBdUIsS0FBSyxJQUFJLENBQUM7SUFDOUMsQ0FBQztJQUZELHdEQUVDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtFcnJvckNvZGV9IGZyb20gJy4vY29kZSc7XG5cbmV4cG9ydCBjbGFzcyBGYXRhbERpYWdub3N0aWNFcnJvciB7XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNvZGU6IEVycm9yQ29kZSwgcmVhZG9ubHkgbm9kZTogdHMuTm9kZSwgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nKSB7fVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9pc0ZhdGFsRGlhZ25vc3RpY0Vycm9yID0gdHJ1ZTtcblxuICB0b0RpYWdub3N0aWMoKTogdHMuRGlhZ25vc3RpY1dpdGhMb2NhdGlvbiB7XG4gICAgcmV0dXJuIG1ha2VEaWFnbm9zdGljKHRoaXMuY29kZSwgdGhpcy5ub2RlLCB0aGlzLm1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlRGlhZ25vc3RpYyhjb2RlOiBFcnJvckNvZGUsIG5vZGU6IHRzLk5vZGUsIG1lc3NhZ2VUZXh0OiBzdHJpbmcsIHJlbGF0ZWRJbmZvPzoge1xuICBub2RlOiB0cy5Ob2RlLFxuICBtZXNzYWdlVGV4dDogc3RyaW5nLFxufVtdKTogdHMuRGlhZ25vc3RpY1dpdGhMb2NhdGlvbiB7XG4gIG5vZGUgPSB0cy5nZXRPcmlnaW5hbE5vZGUobm9kZSk7XG4gIGNvbnN0IGRpYWc6IHRzLkRpYWdub3N0aWNXaXRoTG9jYXRpb24gPSB7XG4gICAgY2F0ZWdvcnk6IHRzLkRpYWdub3N0aWNDYXRlZ29yeS5FcnJvcixcbiAgICBjb2RlOiBOdW1iZXIoJy05OScgKyBjb2RlLnZhbHVlT2YoKSksXG4gICAgZmlsZTogdHMuZ2V0T3JpZ2luYWxOb2RlKG5vZGUpLmdldFNvdXJjZUZpbGUoKSxcbiAgICBzdGFydDogbm9kZS5nZXRTdGFydCh1bmRlZmluZWQsIGZhbHNlKSxcbiAgICBsZW5ndGg6IG5vZGUuZ2V0V2lkdGgoKSwgbWVzc2FnZVRleHQsXG4gIH07XG4gIGlmIChyZWxhdGVkSW5mbyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZGlhZy5yZWxhdGVkSW5mb3JtYXRpb24gPSByZWxhdGVkSW5mby5tYXAoaW5mbyA9PiB7XG4gICAgICBjb25zdCBpbmZvTm9kZSA9IHRzLmdldE9yaWdpbmFsTm9kZShpbmZvLm5vZGUpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY2F0ZWdvcnk6IHRzLkRpYWdub3N0aWNDYXRlZ29yeS5NZXNzYWdlLFxuICAgICAgICBjb2RlOiAwLFxuICAgICAgICBmaWxlOiBpbmZvTm9kZS5nZXRTb3VyY2VGaWxlKCksXG4gICAgICAgIHN0YXJ0OiBpbmZvTm9kZS5nZXRTdGFydCgpLFxuICAgICAgICBsZW5ndGg6IGluZm9Ob2RlLmdldFdpZHRoKCksXG4gICAgICAgIG1lc3NhZ2VUZXh0OiBpbmZvLm1lc3NhZ2VUZXh0LFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICByZXR1cm4gZGlhZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRmF0YWxEaWFnbm9zdGljRXJyb3IoZXJyOiBhbnkpOiBlcnIgaXMgRmF0YWxEaWFnbm9zdGljRXJyb3Ige1xuICByZXR1cm4gZXJyLl9pc0ZhdGFsRGlhZ25vc3RpY0Vycm9yID09PSB0cnVlO1xufVxuIl19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2RpYWdub3N0aWNzL3NyYy9lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7OztJQUVILCtCQUFpQztJQUlqQztRQUNFLDhCQUFxQixJQUFlLEVBQVcsSUFBYSxFQUFXLE9BQWU7WUFBakUsU0FBSSxHQUFKLElBQUksQ0FBVztZQUFXLFNBQUksR0FBSixJQUFJLENBQVM7WUFBVyxZQUFPLEdBQVAsT0FBTyxDQUFRO1lBRXRGOztlQUVHO1lBQ0gsNEJBQXVCLEdBQUcsSUFBSSxDQUFDO1FBTDBELENBQUM7UUFPMUYsMkNBQVksR0FBWjtZQUNFLE9BQU8sY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUNILDJCQUFDO0lBQUQsQ0FBQyxBQVhELElBV0M7SUFYWSxvREFBb0I7SUFhakMsU0FBZ0IsY0FBYyxDQUFDLElBQWUsRUFBRSxJQUFhLEVBQUUsV0FBbUIsRUFBRSxXQUdqRjtRQUNELElBQUksR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQU0sSUFBSSxHQUE4QjtZQUN0QyxRQUFRLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEtBQUs7WUFDckMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BDLElBQUksRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLGFBQWEsRUFBRTtZQUM5QyxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDO1lBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsV0FBVyxhQUFBO1NBQ3JDLENBQUM7UUFDRixJQUFJLFdBQVcsS0FBSyxTQUFTLEVBQUU7WUFDN0IsSUFBSSxDQUFDLGtCQUFrQixHQUFHLFdBQVcsQ0FBQyxHQUFHLENBQUMsVUFBQSxJQUFJO2dCQUM1QyxJQUFNLFFBQVEsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDL0MsT0FBTztvQkFDTCxRQUFRLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLE9BQU87b0JBQ3ZDLElBQUksRUFBRSxDQUFDO29CQUNQLElBQUksRUFBRSxRQUFRLENBQUMsYUFBYSxFQUFFO29CQUM5QixLQUFLLEVBQUUsUUFBUSxDQUFDLFFBQVEsRUFBRTtvQkFDMUIsTUFBTSxFQUFFLFFBQVEsQ0FBQyxRQUFRLEVBQUU7b0JBQzNCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztpQkFDOUIsQ0FBQztZQUNKLENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUExQkQsd0NBMEJDO0lBRUQsU0FBZ0Isc0JBQXNCLENBQUMsR0FBUTtRQUM3QyxPQUFPLEdBQUcsQ0FBQyx1QkFBdUIsS0FBSyxJQUFJLENBQUM7SUFDOUMsQ0FBQztJQUZELHdEQUVDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtFcnJvckNvZGV9IGZyb20gJy4vZXJyb3JfY29kZSc7XG5cbmV4cG9ydCBjbGFzcyBGYXRhbERpYWdub3N0aWNFcnJvciB7XG4gIGNvbnN0cnVjdG9yKHJlYWRvbmx5IGNvZGU6IEVycm9yQ29kZSwgcmVhZG9ubHkgbm9kZTogdHMuTm9kZSwgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nKSB7fVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9pc0ZhdGFsRGlhZ25vc3RpY0Vycm9yID0gdHJ1ZTtcblxuICB0b0RpYWdub3N0aWMoKTogdHMuRGlhZ25vc3RpY1dpdGhMb2NhdGlvbiB7XG4gICAgcmV0dXJuIG1ha2VEaWFnbm9zdGljKHRoaXMuY29kZSwgdGhpcy5ub2RlLCB0aGlzLm1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlRGlhZ25vc3RpYyhjb2RlOiBFcnJvckNvZGUsIG5vZGU6IHRzLk5vZGUsIG1lc3NhZ2VUZXh0OiBzdHJpbmcsIHJlbGF0ZWRJbmZvPzoge1xuICBub2RlOiB0cy5Ob2RlLFxuICBtZXNzYWdlVGV4dDogc3RyaW5nLFxufVtdKTogdHMuRGlhZ25vc3RpY1dpdGhMb2NhdGlvbiB7XG4gIG5vZGUgPSB0cy5nZXRPcmlnaW5hbE5vZGUobm9kZSk7XG4gIGNvbnN0IGRpYWc6IHRzLkRpYWdub3N0aWNXaXRoTG9jYXRpb24gPSB7XG4gICAgY2F0ZWdvcnk6IHRzLkRpYWdub3N0aWNDYXRlZ29yeS5FcnJvcixcbiAgICBjb2RlOiBOdW1iZXIoJy05OScgKyBjb2RlLnZhbHVlT2YoKSksXG4gICAgZmlsZTogdHMuZ2V0T3JpZ2luYWxOb2RlKG5vZGUpLmdldFNvdXJjZUZpbGUoKSxcbiAgICBzdGFydDogbm9kZS5nZXRTdGFydCh1bmRlZmluZWQsIGZhbHNlKSxcbiAgICBsZW5ndGg6IG5vZGUuZ2V0V2lkdGgoKSwgbWVzc2FnZVRleHQsXG4gIH07XG4gIGlmIChyZWxhdGVkSW5mbyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgZGlhZy5yZWxhdGVkSW5mb3JtYXRpb24gPSByZWxhdGVkSW5mby5tYXAoaW5mbyA9PiB7XG4gICAgICBjb25zdCBpbmZvTm9kZSA9IHRzLmdldE9yaWdpbmFsTm9kZShpbmZvLm5vZGUpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY2F0ZWdvcnk6IHRzLkRpYWdub3N0aWNDYXRlZ29yeS5NZXNzYWdlLFxuICAgICAgICBjb2RlOiAwLFxuICAgICAgICBmaWxlOiBpbmZvTm9kZS5nZXRTb3VyY2VGaWxlKCksXG4gICAgICAgIHN0YXJ0OiBpbmZvTm9kZS5nZXRTdGFydCgpLFxuICAgICAgICBsZW5ndGg6IGluZm9Ob2RlLmdldFdpZHRoKCksXG4gICAgICAgIG1lc3NhZ2VUZXh0OiBpbmZvLm1lc3NhZ2VUZXh0LFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuICByZXR1cm4gZGlhZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRmF0YWxEaWFnbm9zdGljRXJyb3IoZXJyOiBhbnkpOiBlcnIgaXMgRmF0YWxEaWFnbm9zdGljRXJyb3Ige1xuICByZXR1cm4gZXJyLl9pc0ZhdGFsRGlhZ25vc3RpY0Vycm9yID09PSB0cnVlO1xufVxuIl19
@@ -5,7 +5,10 @@
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
- /// <amd-module name="@angular/compiler-cli/src/ngtsc/diagnostics/src/code" />
8
+ /// <amd-module name="@angular/compiler-cli/src/ngtsc/diagnostics/src/error_code" />
9
+ /**
10
+ * @publicApi
11
+ */
9
12
  export declare enum ErrorCode {
10
13
  DECORATOR_ARG_NOT_LITERAL = 1001,
11
14
  DECORATOR_ARITY_WRONG = 1002,
@@ -22,9 +25,17 @@ export declare enum ErrorCode {
22
25
  PIPE_MISSING_NAME = 2002,
23
26
  PARAM_MISSING_TOKEN = 2003,
24
27
  DIRECTIVE_MISSING_SELECTOR = 2004,
28
+ /** Raised when an undecorated class is passed in as a provider to a module or a directive. */
29
+ UNDECORATED_PROVIDER = 2005,
30
+ /**
31
+ * Raised when a Directive inherits its constructor from a base class without an Angular
32
+ * decorator.
33
+ */
34
+ DIRECTIVE_INHERITS_UNDECORATED_CTOR = 2006,
25
35
  SYMBOL_NOT_EXPORTED = 3001,
26
36
  SYMBOL_EXPORTED_UNDER_DIFFERENT_NAME = 3002,
27
37
  CONFIG_FLAT_MODULE_NO_INDEX = 4001,
38
+ CONFIG_STRICT_TEMPLATES_IMPLIES_FULL_TEMPLATE_TYPECHECK = 4002,
28
39
  /**
29
40
  * Raised when a host expression has a parse error, such as a host listener or host binding
30
41
  * expression containing a pipe.
@@ -58,9 +69,9 @@ export declare enum ErrorCode {
58
69
  */
59
70
  NGMODULE_REEXPORT_NAME_COLLISION = 6006,
60
71
  /**
61
- * Raised when ngcc tries to inject a synthetic decorator over one that already exists.
72
+ * Raised when a directive/pipe is part of the declarations of two or more NgModules.
62
73
  */
63
- NGCC_MIGRATION_DECORATOR_INJECTION_ERROR = 7001,
74
+ NGMODULE_DECLARATION_NOT_UNIQUE = 6007,
64
75
  /**
65
76
  * An element name failed validation against the DOM schema.
66
77
  */
@@ -77,9 +88,21 @@ export declare enum ErrorCode {
77
88
  * No matching pipe was found for a
78
89
  */
79
90
  MISSING_PIPE = 8004,
91
+ /**
92
+ * The left-hand side of an assignment expression was a template variable. Effectively, the
93
+ * template looked like:
94
+ *
95
+ * ```
96
+ * <ng-template let-something>
97
+ * <button (click)="something = ...">...</button>
98
+ * </ng-template>
99
+ * ```
100
+ *
101
+ * Template variables are read-only.
102
+ */
103
+ WRITE_TO_READ_ONLY_VARIABLE = 8005,
80
104
  /**
81
105
  * An injectable already has a `ɵprov` property.
82
106
  */
83
107
  INJECTABLE_DUPLICATE_PROV = 9001
84
108
  }
85
- export declare function ngErrorCode(code: ErrorCode): number;