@angular/compiler-cli 12.2.0-next.1 → 12.2.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 (467) hide show
  1. package/linker/src/file_linker/emit_scopes/iife_emit_scope.js +1 -1
  2. package/linker/src/file_linker/partial_linkers/partial_linker_selector.js +2 -2
  3. package/ngcc/src/dependencies/commonjs_dependency_host.js +1 -1
  4. package/ngcc/src/dependencies/dts_dependency_host.js +1 -1
  5. package/ngcc/src/dependencies/esm_dependency_host.js +1 -1
  6. package/ngcc/src/dependencies/umd_dependency_host.js +1 -1
  7. package/ngcc/src/entry_point_finder/program_based_entry_point_finder.js +1 -1
  8. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.js +1 -1
  9. package/ngcc/src/execution/tasks/queues/parallel_task_queue.js +1 -1
  10. package/ngcc/src/execution/tasks/queues/serial_task_queue.js +1 -1
  11. package/ngcc/src/host/commonjs_host.js +1 -1
  12. package/ngcc/src/host/esm2015_host.js +1 -1
  13. package/ngcc/src/host/esm5_host.js +1 -1
  14. package/ngcc/src/host/umd_host.js +1 -1
  15. package/ngcc/src/packages/build_marker.d.ts +1 -1
  16. package/ngcc/src/packages/build_marker.js +1 -1
  17. package/ngcc/src/packages/entry_point_manifest.js +1 -1
  18. package/ngcc/src/packages/ngcc_compiler_host.js +1 -1
  19. package/ngcc/src/rendering/commonjs_rendering_formatter.js +1 -1
  20. package/ngcc/src/rendering/esm5_rendering_formatter.js +1 -1
  21. package/ngcc/src/rendering/umd_rendering_formatter.js +1 -1
  22. package/ngcc/src/writing/new_entry_point_file_writer.js +1 -1
  23. package/package.json +2 -2
  24. package/src/ngtsc/annotations/src/component.js +1 -1
  25. package/src/ngtsc/annotations/src/directive.js +1 -1
  26. package/src/ngtsc/annotations/src/ng_module.js +1 -1
  27. package/src/ngtsc/annotations/src/pipe.js +1 -1
  28. package/src/ngtsc/core/src/compiler.js +1 -1
  29. package/src/ngtsc/cycles/src/analyzer.d.ts +7 -0
  30. package/src/ngtsc/cycles/src/analyzer.js +89 -4
  31. package/src/ngtsc/cycles/src/imports.d.ts +1 -6
  32. package/src/ngtsc/cycles/src/imports.js +5 -23
  33. package/src/ngtsc/diagnostics/src/error_code.d.ts +5 -0
  34. package/src/ngtsc/diagnostics/src/error_code.js +6 -1
  35. package/src/ngtsc/file_system/testing/src/mock_file_system_native.js +1 -1
  36. package/src/ngtsc/file_system/testing/src/mock_file_system_posix.js +1 -1
  37. package/src/ngtsc/file_system/testing/src/mock_file_system_windows.js +1 -1
  38. package/src/ngtsc/incremental/semantic_graph/src/graph.js +1 -1
  39. package/src/ngtsc/incremental/src/incremental.js +30 -4
  40. package/src/ngtsc/indexer/src/template.js +1 -1
  41. package/src/ngtsc/metadata/src/dts.js +4 -5
  42. package/src/ngtsc/metadata/src/util.d.ts +2 -2
  43. package/src/ngtsc/metadata/src/util.js +9 -6
  44. package/src/ngtsc/partial_evaluator/src/builtin.js +1 -1
  45. package/src/ngtsc/partial_evaluator/src/interpreter.js +6 -5
  46. package/src/ngtsc/partial_evaluator/src/ts_helpers.js +1 -1
  47. package/src/ngtsc/program_driver/src/api.d.ts +20 -1
  48. package/src/ngtsc/program_driver/src/api.js +3 -2
  49. package/src/ngtsc/program_driver/src/ts_create_program_driver.d.ts +2 -2
  50. package/src/ngtsc/program_driver/src/ts_create_program_driver.js +7 -3
  51. package/src/ngtsc/reflection/src/typescript.js +4 -1
  52. package/src/ngtsc/transform/src/compilation.d.ts +5 -0
  53. package/src/ngtsc/transform/src/compilation.js +95 -72
  54. package/src/ngtsc/transform/src/transform.js +1 -1
  55. package/src/ngtsc/typecheck/api/checker.d.ts +18 -1
  56. package/src/ngtsc/typecheck/api/checker.js +1 -1
  57. package/src/ngtsc/typecheck/diagnostics/src/diagnostic.d.ts +5 -3
  58. package/src/ngtsc/typecheck/diagnostics/src/diagnostic.js +48 -21
  59. package/src/ngtsc/typecheck/src/checker.d.ts +11 -1
  60. package/src/ngtsc/typecheck/src/checker.js +20 -5
  61. package/src/ngtsc/typecheck/src/completion.d.ts +3 -1
  62. package/src/ngtsc/typecheck/src/completion.js +52 -2
  63. package/src/ngtsc/typecheck/src/context.d.ts +2 -1
  64. package/src/ngtsc/typecheck/src/context.js +11 -3
  65. package/src/ngtsc/typecheck/src/oob.d.ts +7 -1
  66. package/src/ngtsc/typecheck/src/oob.js +48 -10
  67. package/src/ngtsc/typecheck/src/template_semantics.js +1 -1
  68. package/src/ngtsc/typecheck/src/template_symbol_builder.js +21 -1
  69. package/src/ngtsc/typecheck/src/type_check_block.js +35 -2
  70. package/src/ngtsc/typecheck/src/type_check_file.js +1 -1
  71. package/src/ngtsc/typecheck/src/type_emitter.js +25 -6
  72. package/src/ngtsc/util/src/visitor.d.ts +1 -1
  73. package/src/ngtsc/util/src/visitor.js +1 -8
  74. package/src/version.js +1 -1
  75. package/compiler-cli.externs.js +0 -0
  76. package/index.mjs +0 -20
  77. package/linker/babel/babel.externs.js +0 -0
  78. package/linker/babel/index.mjs +0 -11
  79. package/linker/babel/src/ast/babel_ast_factory.mjs +0 -137
  80. package/linker/babel/src/ast/babel_ast_host.mjs +0 -154
  81. package/linker/babel/src/babel_declaration_scope.mjs +0 -52
  82. package/linker/babel/src/babel_plugin.mjs +0 -23
  83. package/linker/babel/src/es2015_linker_plugin.mjs +0 -158
  84. package/linker/babel/src/linker_plugin_options.mjs +0 -2
  85. package/linker/index.mjs +0 -7
  86. package/linker/linker.externs.js +0 -0
  87. package/linker/src/ast/ast_host.mjs +0 -9
  88. package/linker/src/ast/ast_value.mjs +0 -256
  89. package/linker/src/ast/typescript/typescript_ast_host.mjs +0 -156
  90. package/linker/src/ast/utils.mjs +0 -17
  91. package/linker/src/fatal_linker_error.mjs +0 -30
  92. package/linker/src/file_linker/declaration_scope.mjs +0 -9
  93. package/linker/src/file_linker/emit_scopes/emit_scope.mjs +0 -41
  94. package/linker/src/file_linker/emit_scopes/iife_emit_scope.mjs +0 -33
  95. package/linker/src/file_linker/file_linker.mjs +0 -70
  96. package/linker/src/file_linker/get_source_file.mjs +0 -28
  97. package/linker/src/file_linker/linker_environment.mjs +0 -23
  98. package/linker/src/file_linker/linker_options.mjs +0 -16
  99. package/linker/src/file_linker/needs_linking.mjs +0 -27
  100. package/linker/src/file_linker/partial_linkers/partial_class_metadata_linker_1.mjs +0 -29
  101. package/linker/src/file_linker/partial_linkers/partial_component_linker_1.mjs +0 -194
  102. package/linker/src/file_linker/partial_linkers/partial_directive_linker_1.mjs +0 -137
  103. package/linker/src/file_linker/partial_linkers/partial_factory_linker_1.mjs +0 -52
  104. package/linker/src/file_linker/partial_linkers/partial_injectable_linker_1.mjs +0 -56
  105. package/linker/src/file_linker/partial_linkers/partial_injector_linker_1.mjs +0 -38
  106. package/linker/src/file_linker/partial_linkers/partial_linker.mjs +0 -2
  107. package/linker/src/file_linker/partial_linkers/partial_linker_selector.mjs +0 -166
  108. package/linker/src/file_linker/partial_linkers/partial_ng_module_linker_1.mjs +0 -110
  109. package/linker/src/file_linker/partial_linkers/partial_pipe_linker_1.mjs +0 -42
  110. package/linker/src/file_linker/partial_linkers/util.mjs +0 -78
  111. package/linker/src/file_linker/translator.mjs +0 -23
  112. package/linker/src/linker_import_generator.mjs +0 -28
  113. package/ngcc/index.mjs +0 -16
  114. package/ngcc/main-ivy-ngcc.mjs +0 -12
  115. package/ngcc/main-ngcc.mjs +0 -32
  116. package/ngcc/ngcc.externs.js +0 -0
  117. package/ngcc/src/analysis/decoration_analyzer.mjs +0 -215
  118. package/ngcc/src/analysis/migration_host.mjs +0 -80
  119. package/ngcc/src/analysis/module_with_providers_analyzer.mjs +0 -178
  120. package/ngcc/src/analysis/ngcc_references_registry.mjs +0 -45
  121. package/ngcc/src/analysis/ngcc_trait_compiler.mjs +0 -70
  122. package/ngcc/src/analysis/private_declarations_analyzer.mjs +0 -47
  123. package/ngcc/src/analysis/switch_marker_analyzer.mjs +0 -34
  124. package/ngcc/src/analysis/types.mjs +0 -2
  125. package/ngcc/src/analysis/util.mjs +0 -19
  126. package/ngcc/src/command_line_options.mjs +0 -142
  127. package/ngcc/src/constants.mjs +0 -10
  128. package/ngcc/src/dependencies/commonjs_dependency_host.mjs +0 -87
  129. package/ngcc/src/dependencies/dependency_host.mjs +0 -102
  130. package/ngcc/src/dependencies/dependency_resolver.mjs +0 -151
  131. package/ngcc/src/dependencies/dts_dependency_host.mjs +0 -18
  132. package/ngcc/src/dependencies/esm_dependency_host.mjs +0 -286
  133. package/ngcc/src/dependencies/module_resolver.mjs +0 -233
  134. package/ngcc/src/dependencies/umd_dependency_host.mjs +0 -33
  135. package/ngcc/src/entry_point_finder/directory_walker_entry_point_finder.mjs +0 -42
  136. package/ngcc/src/entry_point_finder/entry_point_collector.mjs +0 -120
  137. package/ngcc/src/entry_point_finder/interface.mjs +0 -2
  138. package/ngcc/src/entry_point_finder/program_based_entry_point_finder.mjs +0 -91
  139. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.mjs +0 -216
  140. package/ngcc/src/entry_point_finder/tracing_entry_point_finder.mjs +0 -63
  141. package/ngcc/src/entry_point_finder/utils.mjs +0 -176
  142. package/ngcc/src/execution/analyze_entry_points.mjs +0 -130
  143. package/ngcc/src/execution/api.mjs +0 -2
  144. package/ngcc/src/execution/cluster/api.mjs +0 -9
  145. package/ngcc/src/execution/cluster/executor.mjs +0 -27
  146. package/ngcc/src/execution/cluster/master.mjs +0 -261
  147. package/ngcc/src/execution/cluster/package_json_updater.mjs +0 -45
  148. package/ngcc/src/execution/cluster/utils.mjs +0 -59
  149. package/ngcc/src/execution/cluster/worker.mjs +0 -81
  150. package/ngcc/src/execution/create_compile_function.mjs +0 -62
  151. package/ngcc/src/execution/single_process_executor.mjs +0 -57
  152. package/ngcc/src/execution/tasks/api.mjs +0 -22
  153. package/ngcc/src/execution/tasks/completion.mjs +0 -61
  154. package/ngcc/src/execution/tasks/queues/base_task_queue.mjs +0 -78
  155. package/ngcc/src/execution/tasks/queues/parallel_task_queue.mjs +0 -53
  156. package/ngcc/src/execution/tasks/queues/serial_task_queue.mjs +0 -29
  157. package/ngcc/src/execution/tasks/utils.mjs +0 -114
  158. package/ngcc/src/host/commonjs_host.mjs +0 -220
  159. package/ngcc/src/host/commonjs_umd_utils.mjs +0 -186
  160. package/ngcc/src/host/delegating_host.mjs +0 -140
  161. package/ngcc/src/host/esm2015_host.mjs +0 -2293
  162. package/ngcc/src/host/esm5_host.mjs +0 -721
  163. package/ngcc/src/host/ngcc_host.mjs +0 -15
  164. package/ngcc/src/host/umd_host.mjs +0 -486
  165. package/ngcc/src/host/utils.mjs +0 -12
  166. package/ngcc/src/locking/async_locker.mjs +0 -76
  167. package/ngcc/src/locking/lock_file.mjs +0 -4
  168. package/ngcc/src/locking/lock_file_with_child_process/index.mjs +0 -78
  169. package/ngcc/src/locking/lock_file_with_child_process/unlocker.mjs +0 -34
  170. package/ngcc/src/locking/lock_file_with_child_process/util.mjs +0 -29
  171. package/ngcc/src/locking/sync_locker.mjs +0 -52
  172. package/ngcc/src/main.mjs +0 -134
  173. package/ngcc/src/migrations/migration.mjs +0 -2
  174. package/ngcc/src/migrations/missing_injectable_migration.mjs +0 -164
  175. package/ngcc/src/migrations/undecorated_child_migration.mjs +0 -61
  176. package/ngcc/src/migrations/undecorated_parent_migration.mjs +0 -86
  177. package/ngcc/src/migrations/utils.mjs +0 -117
  178. package/ngcc/src/ngcc_options.mjs +0 -119
  179. package/ngcc/src/packages/build_marker.mjs +0 -84
  180. package/ngcc/src/packages/bundle_program.mjs +0 -52
  181. package/ngcc/src/packages/configuration.mjs +0 -255
  182. package/ngcc/src/packages/entry_point.mjs +0 -239
  183. package/ngcc/src/packages/entry_point_bundle.mjs +0 -68
  184. package/ngcc/src/packages/entry_point_manifest.mjs +0 -162
  185. package/ngcc/src/packages/ngcc_compiler_host.mjs +0 -77
  186. package/ngcc/src/packages/patch_ts_expando_initializer.mjs +0 -166
  187. package/ngcc/src/packages/source_file_cache.mjs +0 -187
  188. package/ngcc/src/packages/transformer.mjs +0 -140
  189. package/ngcc/src/path_mappings.mjs +0 -13
  190. package/ngcc/src/rendering/commonjs_rendering_formatter.mjs +0 -65
  191. package/ngcc/src/rendering/dts_renderer.mjs +0 -139
  192. package/ngcc/src/rendering/esm5_rendering_formatter.mjs +0 -50
  193. package/ngcc/src/rendering/esm_rendering_formatter.mjs +0 -251
  194. package/ngcc/src/rendering/ngcc_import_rewriter.mjs +0 -32
  195. package/ngcc/src/rendering/renderer.mjs +0 -170
  196. package/ngcc/src/rendering/rendering_formatter.mjs +0 -2
  197. package/ngcc/src/rendering/source_maps.mjs +0 -54
  198. package/ngcc/src/rendering/umd_rendering_formatter.mjs +0 -292
  199. package/ngcc/src/rendering/utils.mjs +0 -20
  200. package/ngcc/src/utils.mjs +0 -144
  201. package/ngcc/src/writing/cleaning/cleaning_strategies.mjs +0 -61
  202. package/ngcc/src/writing/cleaning/package_cleaner.mjs +0 -67
  203. package/ngcc/src/writing/cleaning/utils.mjs +0 -16
  204. package/ngcc/src/writing/file_writer.mjs +0 -2
  205. package/ngcc/src/writing/in_place_file_writer.mjs +0 -62
  206. package/ngcc/src/writing/new_entry_point_file_writer.mjs +0 -161
  207. package/ngcc/src/writing/package_json_updater.mjs +0 -144
  208. package/src/diagnostics/translate_diagnostics.mjs +0 -47
  209. package/src/diagnostics/typescript_version.mjs +0 -79
  210. package/src/extract_i18n.mjs +0 -46
  211. package/src/language_services.mjs +0 -18
  212. package/src/main.mjs +0 -185
  213. package/src/metadata/bundle_index_host.mjs +0 -107
  214. package/src/metadata/bundler.mjs +0 -556
  215. package/src/metadata/collector.mjs +0 -701
  216. package/src/metadata/evaluator.mjs +0 -643
  217. package/src/metadata/index.mjs +0 -11
  218. package/src/metadata/index_writer.mjs +0 -44
  219. package/src/metadata/schema.mjs +0 -102
  220. package/src/metadata/symbols.mjs +0 -117
  221. package/src/ngtsc/annotations/annotations.externs.js +0 -0
  222. package/src/ngtsc/annotations/index.mjs +0 -15
  223. package/src/ngtsc/annotations/src/api.mjs +0 -9
  224. package/src/ngtsc/annotations/src/component.mjs +0 -1068
  225. package/src/ngtsc/annotations/src/diagnostics.mjs +0 -147
  226. package/src/ngtsc/annotations/src/directive.mjs +0 -692
  227. package/src/ngtsc/annotations/src/factory.mjs +0 -17
  228. package/src/ngtsc/annotations/src/injectable.mjs +0 -260
  229. package/src/ngtsc/annotations/src/metadata.mjs +0 -145
  230. package/src/ngtsc/annotations/src/ng_module.mjs +0 -565
  231. package/src/ngtsc/annotations/src/pipe.mjs +0 -151
  232. package/src/ngtsc/annotations/src/references_registry.mjs +0 -16
  233. package/src/ngtsc/annotations/src/util.mjs +0 -495
  234. package/src/ngtsc/core/api/index.mjs +0 -12
  235. package/src/ngtsc/core/api/src/adapter.mjs +0 -9
  236. package/src/ngtsc/core/api/src/interfaces.mjs +0 -9
  237. package/src/ngtsc/core/api/src/options.mjs +0 -9
  238. package/src/ngtsc/core/api/src/public_options.mjs +0 -9
  239. package/src/ngtsc/core/api.externs.js +0 -0
  240. package/src/ngtsc/core/core.externs.js +0 -0
  241. package/src/ngtsc/core/index.mjs +0 -10
  242. package/src/ngtsc/core/src/compiler.mjs +0 -917
  243. package/src/ngtsc/core/src/config.mjs +0 -15
  244. package/src/ngtsc/core/src/host.mjs +0 -229
  245. package/src/ngtsc/cycles/cycles.externs.js +0 -0
  246. package/src/ngtsc/cycles/index.mjs +0 -10
  247. package/src/ngtsc/cycles/src/analyzer.mjs +0 -60
  248. package/src/ngtsc/cycles/src/imports.mjs +0 -152
  249. package/src/ngtsc/diagnostics/diagnostics.externs.js +0 -0
  250. package/src/ngtsc/diagnostics/index.mjs +0 -11
  251. package/src/ngtsc/diagnostics/src/error.mjs +0 -51
  252. package/src/ngtsc/diagnostics/src/error_code.mjs +0 -198
  253. package/src/ngtsc/diagnostics/src/util.mjs +0 -21
  254. package/src/ngtsc/entry_point/entry_point.externs.js +0 -0
  255. package/src/ngtsc/entry_point/index.mjs +0 -12
  256. package/src/ngtsc/entry_point/src/generator.mjs +0 -35
  257. package/src/ngtsc/entry_point/src/logic.mjs +0 -35
  258. package/src/ngtsc/entry_point/src/private_export_checker.mjs +0 -122
  259. package/src/ngtsc/entry_point/src/reference_graph.mjs +0 -73
  260. package/src/ngtsc/file_system/file_system.externs.js +0 -0
  261. package/src/ngtsc/file_system/index.mjs +0 -13
  262. package/src/ngtsc/file_system/src/compiler_host.mjs +0 -64
  263. package/src/ngtsc/file_system/src/helpers.mjs +0 -99
  264. package/src/ngtsc/file_system/src/invalid_file_system.mjs +0 -95
  265. package/src/ngtsc/file_system/src/logical.mjs +0 -84
  266. package/src/ngtsc/file_system/src/node_js_file_system.mjs +0 -142
  267. package/src/ngtsc/file_system/src/types.mjs +0 -9
  268. package/src/ngtsc/file_system/src/util.mjs +0 -22
  269. package/src/ngtsc/file_system/testing/index.mjs +0 -13
  270. package/src/ngtsc/file_system/testing/src/mock_file_system.mjs +0 -293
  271. package/src/ngtsc/file_system/testing/src/mock_file_system_native.mjs +0 -57
  272. package/src/ngtsc/file_system/testing/src/mock_file_system_posix.mjs +0 -38
  273. package/src/ngtsc/file_system/testing/src/mock_file_system_windows.mjs +0 -38
  274. package/src/ngtsc/file_system/testing/src/test_helper.mjs +0 -108
  275. package/src/ngtsc/file_system/testing/testing.externs.js +0 -0
  276. package/src/ngtsc/imports/imports.externs.js +0 -0
  277. package/src/ngtsc/imports/index.mjs +0 -14
  278. package/src/ngtsc/imports/src/alias.mjs +0 -137
  279. package/src/ngtsc/imports/src/core.mjs +0 -78
  280. package/src/ngtsc/imports/src/default.mjs +0 -135
  281. package/src/ngtsc/imports/src/emitter.mjs +0 -266
  282. package/src/ngtsc/imports/src/find_export.mjs +0 -56
  283. package/src/ngtsc/imports/src/reexport.mjs +0 -9
  284. package/src/ngtsc/imports/src/references.mjs +0 -137
  285. package/src/ngtsc/imports/src/resolver.mjs +0 -24
  286. package/src/ngtsc/incremental/api.externs.js +0 -0
  287. package/src/ngtsc/incremental/api.mjs +0 -9
  288. package/src/ngtsc/incremental/incremental.externs.js +0 -0
  289. package/src/ngtsc/incremental/index.mjs +0 -12
  290. package/src/ngtsc/incremental/semantic_graph/index.mjs +0 -12
  291. package/src/ngtsc/incremental/semantic_graph/semantic_graph.externs.js +0 -0
  292. package/src/ngtsc/incremental/semantic_graph/src/api.mjs +0 -36
  293. package/src/ngtsc/incremental/semantic_graph/src/graph.mjs +0 -237
  294. package/src/ngtsc/incremental/semantic_graph/src/type_parameters.mjs +0 -40
  295. package/src/ngtsc/incremental/semantic_graph/src/util.mjs +0 -69
  296. package/src/ngtsc/incremental/src/dependency_tracking.mjs +0 -117
  297. package/src/ngtsc/incremental/src/incremental.mjs +0 -271
  298. package/src/ngtsc/incremental/src/noop.mjs +0 -13
  299. package/src/ngtsc/incremental/src/state.mjs +0 -17
  300. package/src/ngtsc/incremental/src/strategy.mjs +0 -76
  301. package/src/ngtsc/indexer/index.mjs +0 -11
  302. package/src/ngtsc/indexer/indexer.externs.js +0 -0
  303. package/src/ngtsc/indexer/src/api.mjs +0 -30
  304. package/src/ngtsc/indexer/src/context.mjs +0 -25
  305. package/src/ngtsc/indexer/src/template.mjs +0 -303
  306. package/src/ngtsc/indexer/src/transform.mjs +0 -51
  307. package/src/ngtsc/logging/index.mjs +0 -10
  308. package/src/ngtsc/logging/logging.externs.js +0 -0
  309. package/src/ngtsc/logging/src/console_logger.mjs +0 -43
  310. package/src/ngtsc/logging/src/logger.mjs +0 -15
  311. package/src/ngtsc/logging/testing/index.mjs +0 -9
  312. package/src/ngtsc/logging/testing/src/mock_logger.mjs +0 -32
  313. package/src/ngtsc/logging/testing/testing.externs.js +0 -0
  314. package/src/ngtsc/metadata/index.mjs +0 -15
  315. package/src/ngtsc/metadata/metadata.externs.js +0 -0
  316. package/src/ngtsc/metadata/src/api.mjs +0 -13
  317. package/src/ngtsc/metadata/src/dts.mjs +0 -143
  318. package/src/ngtsc/metadata/src/inheritance.mjs +0 -71
  319. package/src/ngtsc/metadata/src/property_mapping.mjs +0 -136
  320. package/src/ngtsc/metadata/src/registry.mjs +0 -80
  321. package/src/ngtsc/metadata/src/resource_registry.mjs +0 -81
  322. package/src/ngtsc/metadata/src/util.mjs +0 -200
  323. package/src/ngtsc/partial_evaluator/index.mjs +0 -12
  324. package/src/ngtsc/partial_evaluator/partial_evaluator.externs.js +0 -0
  325. package/src/ngtsc/partial_evaluator/src/builtin.mjs +0 -65
  326. package/src/ngtsc/partial_evaluator/src/diagnostics.mjs +0 -174
  327. package/src/ngtsc/partial_evaluator/src/dynamic.mjs +0 -94
  328. package/src/ngtsc/partial_evaluator/src/interface.mjs +0 -27
  329. package/src/ngtsc/partial_evaluator/src/interpreter.mjs +0 -719
  330. package/src/ngtsc/partial_evaluator/src/known_declaration.mjs +0 -43
  331. package/src/ngtsc/partial_evaluator/src/result.mjs +0 -50
  332. package/src/ngtsc/partial_evaluator/src/ts_helpers.mjs +0 -72
  333. package/src/ngtsc/perf/index.mjs +0 -11
  334. package/src/ngtsc/perf/perf.externs.js +0 -0
  335. package/src/ngtsc/perf/src/api.mjs +0 -278
  336. package/src/ngtsc/perf/src/clock.mjs +0 -15
  337. package/src/ngtsc/perf/src/noop.mjs +0 -21
  338. package/src/ngtsc/perf/src/recorder.mjs +0 -125
  339. package/src/ngtsc/program.mjs +0 -271
  340. package/src/ngtsc/program_driver/index.mjs +0 -10
  341. package/src/ngtsc/program_driver/program_driver.externs.js +0 -0
  342. package/src/ngtsc/program_driver/src/api.mjs +0 -22
  343. package/src/ngtsc/program_driver/src/ts_create_program_driver.mjs +0 -164
  344. package/src/ngtsc/reflection/index.mjs +0 -12
  345. package/src/ngtsc/reflection/reflection.externs.js +0 -0
  346. package/src/ngtsc/reflection/src/host.mjs +0 -73
  347. package/src/ngtsc/reflection/src/type_to_value.mjs +0 -243
  348. package/src/ngtsc/reflection/src/typescript.mjs +0 -608
  349. package/src/ngtsc/reflection/src/util.mjs +0 -21
  350. package/src/ngtsc/resource/index.mjs +0 -9
  351. package/src/ngtsc/resource/resource.externs.js +0 -0
  352. package/src/ngtsc/resource/src/loader.mjs +0 -242
  353. package/src/ngtsc/routing/index.mjs +0 -11
  354. package/src/ngtsc/routing/routing.externs.js +0 -0
  355. package/src/ngtsc/routing/src/analyzer.mjs +0 -69
  356. package/src/ngtsc/routing/src/lazy.mjs +0 -168
  357. package/src/ngtsc/routing/src/route.mjs +0 -51
  358. package/src/ngtsc/scope/index.mjs +0 -12
  359. package/src/ngtsc/scope/scope.externs.js +0 -0
  360. package/src/ngtsc/scope/src/api.mjs +0 -9
  361. package/src/ngtsc/scope/src/component_scope.mjs +0 -31
  362. package/src/ngtsc/scope/src/dependency.mjs +0 -134
  363. package/src/ngtsc/scope/src/local.mjs +0 -531
  364. package/src/ngtsc/scope/src/typecheck.mjs +0 -83
  365. package/src/ngtsc/shims/api.externs.js +0 -0
  366. package/src/ngtsc/shims/api.mjs +0 -2
  367. package/src/ngtsc/shims/index.mjs +0 -14
  368. package/src/ngtsc/shims/shims.externs.js +0 -0
  369. package/src/ngtsc/shims/src/adapter.mjs +0 -188
  370. package/src/ngtsc/shims/src/expando.mjs +0 -102
  371. package/src/ngtsc/shims/src/factory_generator.mjs +0 -265
  372. package/src/ngtsc/shims/src/reference_tagger.mjs +0 -67
  373. package/src/ngtsc/shims/src/summary_generator.mjs +0 -64
  374. package/src/ngtsc/shims/src/util.mjs +0 -26
  375. package/src/ngtsc/sourcemaps/index.mjs +0 -11
  376. package/src/ngtsc/sourcemaps/sourcemaps.externs.js +0 -0
  377. package/src/ngtsc/sourcemaps/src/content_origin.mjs +0 -35
  378. package/src/ngtsc/sourcemaps/src/raw_source_map.mjs +0 -2
  379. package/src/ngtsc/sourcemaps/src/segment_marker.mjs +0 -40
  380. package/src/ngtsc/sourcemaps/src/source_file.mjs +0 -459
  381. package/src/ngtsc/sourcemaps/src/source_file_loader.mjs +0 -213
  382. package/src/ngtsc/switch/index.mjs +0 -9
  383. package/src/ngtsc/switch/src/switch.mjs +0 -115
  384. package/src/ngtsc/switch/switch.externs.js +0 -0
  385. package/src/ngtsc/transform/index.mjs +0 -14
  386. package/src/ngtsc/transform/src/alias.mjs +0 -30
  387. package/src/ngtsc/transform/src/api.mjs +0 -63
  388. package/src/ngtsc/transform/src/compilation.mjs +0 -514
  389. package/src/ngtsc/transform/src/declaration.mjs +0 -182
  390. package/src/ngtsc/transform/src/trait.mjs +0 -95
  391. package/src/ngtsc/transform/src/transform.mjs +0 -298
  392. package/src/ngtsc/transform/src/utils.mjs +0 -57
  393. package/src/ngtsc/transform/transform.externs.js +0 -0
  394. package/src/ngtsc/translator/index.mjs +0 -14
  395. package/src/ngtsc/translator/src/api/ast_factory.mjs +0 -9
  396. package/src/ngtsc/translator/src/api/import_generator.mjs +0 -9
  397. package/src/ngtsc/translator/src/context.mjs +0 -24
  398. package/src/ngtsc/translator/src/import_manager.mjs +0 -48
  399. package/src/ngtsc/translator/src/translator.mjs +0 -317
  400. package/src/ngtsc/translator/src/type_translator.mjs +0 -204
  401. package/src/ngtsc/translator/src/typescript_ast_factory.mjs +0 -211
  402. package/src/ngtsc/translator/src/typescript_translator.mjs +0 -17
  403. package/src/ngtsc/translator/translator.externs.js +0 -0
  404. package/src/ngtsc/tsc_plugin.mjs +0 -98
  405. package/src/ngtsc/typecheck/api/api.externs.js +0 -0
  406. package/src/ngtsc/typecheck/api/api.mjs +0 -9
  407. package/src/ngtsc/typecheck/api/checker.mjs +0 -31
  408. package/src/ngtsc/typecheck/api/completion.mjs +0 -16
  409. package/src/ngtsc/typecheck/api/context.mjs +0 -9
  410. package/src/ngtsc/typecheck/api/index.mjs +0 -14
  411. package/src/ngtsc/typecheck/api/scope.mjs +0 -9
  412. package/src/ngtsc/typecheck/api/symbols.mjs +0 -22
  413. package/src/ngtsc/typecheck/diagnostics/diagnostics.externs.js +0 -0
  414. package/src/ngtsc/typecheck/diagnostics/index.mjs +0 -10
  415. package/src/ngtsc/typecheck/diagnostics/src/diagnostic.mjs +0 -99
  416. package/src/ngtsc/typecheck/diagnostics/src/id.mjs +0 -23
  417. package/src/ngtsc/typecheck/index.mjs +0 -12
  418. package/src/ngtsc/typecheck/src/checker.mjs +0 -591
  419. package/src/ngtsc/typecheck/src/comments.mjs +0 -159
  420. package/src/ngtsc/typecheck/src/completion.mjs +0 -155
  421. package/src/ngtsc/typecheck/src/context.mjs +0 -350
  422. package/src/ngtsc/typecheck/src/diagnostics.mjs +0 -95
  423. package/src/ngtsc/typecheck/src/dom.mjs +0 -68
  424. package/src/ngtsc/typecheck/src/environment.mjs +0 -146
  425. package/src/ngtsc/typecheck/src/expression.mjs +0 -412
  426. package/src/ngtsc/typecheck/src/line_mappings.mjs +0 -60
  427. package/src/ngtsc/typecheck/src/oob.mjs +0 -112
  428. package/src/ngtsc/typecheck/src/shim.mjs +0 -37
  429. package/src/ngtsc/typecheck/src/source.mjs +0 -74
  430. package/src/ngtsc/typecheck/src/tcb_util.mjs +0 -135
  431. package/src/ngtsc/typecheck/src/template_semantics.mjs +0 -34
  432. package/src/ngtsc/typecheck/src/template_symbol_builder.mjs +0 -485
  433. package/src/ngtsc/typecheck/src/ts_util.mjs +0 -157
  434. package/src/ngtsc/typecheck/src/type_check_block.mjs +0 -1770
  435. package/src/ngtsc/typecheck/src/type_check_file.mjs +0 -65
  436. package/src/ngtsc/typecheck/src/type_constructor.mjs +0 -227
  437. package/src/ngtsc/typecheck/src/type_emitter.mjs +0 -127
  438. package/src/ngtsc/typecheck/src/type_parameter_emitter.mjs +0 -93
  439. package/src/ngtsc/typecheck/typecheck.externs.js +0 -0
  440. package/src/ngtsc/util/src/path.mjs +0 -18
  441. package/src/ngtsc/util/src/typescript.mjs +0 -143
  442. package/src/ngtsc/util/src/visitor.mjs +0 -107
  443. package/src/ngtsc/util/util.externs.js +0 -0
  444. package/src/ngtsc/xi18n/index.mjs +0 -9
  445. package/src/ngtsc/xi18n/src/context.mjs +0 -9
  446. package/src/ngtsc/xi18n/xi18n.externs.js +0 -0
  447. package/src/perform_compile.mjs +0 -275
  448. package/src/perform_watch.mjs +0 -247
  449. package/src/tooling.mjs +0 -32
  450. package/src/transformers/api.mjs +0 -27
  451. package/src/transformers/compiler_host.mjs +0 -593
  452. package/src/transformers/downlevel_decorators_transform.mjs +0 -507
  453. package/src/transformers/entry_points.mjs +0 -10
  454. package/src/transformers/i18n.mjs +0 -59
  455. package/src/transformers/inline_resources.mjs +0 -269
  456. package/src/transformers/lower_expressions.mjs +0 -336
  457. package/src/transformers/metadata_cache.mjs +0 -53
  458. package/src/transformers/metadata_reader.mjs +0 -104
  459. package/src/transformers/node_emitter.mjs +0 -606
  460. package/src/transformers/node_emitter_transform.mjs +0 -78
  461. package/src/transformers/patch_alias_reference_resolution.mjs +0 -109
  462. package/src/transformers/program.mjs +0 -887
  463. package/src/transformers/r3_metadata_transform.mjs +0 -46
  464. package/src/transformers/r3_transform.mjs +0 -29
  465. package/src/transformers/util.mjs +0 -89
  466. package/src/typescript_support.mjs +0 -57
  467. package/src/version.mjs +0 -15
@@ -1,198 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- /**
9
- * @publicApi
10
- */
11
- export var ErrorCode;
12
- (function (ErrorCode) {
13
- ErrorCode[ErrorCode["DECORATOR_ARG_NOT_LITERAL"] = 1001] = "DECORATOR_ARG_NOT_LITERAL";
14
- ErrorCode[ErrorCode["DECORATOR_ARITY_WRONG"] = 1002] = "DECORATOR_ARITY_WRONG";
15
- ErrorCode[ErrorCode["DECORATOR_NOT_CALLED"] = 1003] = "DECORATOR_NOT_CALLED";
16
- ErrorCode[ErrorCode["DECORATOR_ON_ANONYMOUS_CLASS"] = 1004] = "DECORATOR_ON_ANONYMOUS_CLASS";
17
- ErrorCode[ErrorCode["DECORATOR_UNEXPECTED"] = 1005] = "DECORATOR_UNEXPECTED";
18
- /**
19
- * This error code indicates that there are incompatible decorators on a type or a class field.
20
- */
21
- ErrorCode[ErrorCode["DECORATOR_COLLISION"] = 1006] = "DECORATOR_COLLISION";
22
- ErrorCode[ErrorCode["VALUE_HAS_WRONG_TYPE"] = 1010] = "VALUE_HAS_WRONG_TYPE";
23
- ErrorCode[ErrorCode["VALUE_NOT_LITERAL"] = 1011] = "VALUE_NOT_LITERAL";
24
- ErrorCode[ErrorCode["COMPONENT_MISSING_TEMPLATE"] = 2001] = "COMPONENT_MISSING_TEMPLATE";
25
- ErrorCode[ErrorCode["PIPE_MISSING_NAME"] = 2002] = "PIPE_MISSING_NAME";
26
- ErrorCode[ErrorCode["PARAM_MISSING_TOKEN"] = 2003] = "PARAM_MISSING_TOKEN";
27
- ErrorCode[ErrorCode["DIRECTIVE_MISSING_SELECTOR"] = 2004] = "DIRECTIVE_MISSING_SELECTOR";
28
- /** Raised when an undecorated class is passed in as a provider to a module or a directive. */
29
- ErrorCode[ErrorCode["UNDECORATED_PROVIDER"] = 2005] = "UNDECORATED_PROVIDER";
30
- /**
31
- * Raised when a Directive inherits its constructor from a base class without an Angular
32
- * decorator.
33
- */
34
- ErrorCode[ErrorCode["DIRECTIVE_INHERITS_UNDECORATED_CTOR"] = 2006] = "DIRECTIVE_INHERITS_UNDECORATED_CTOR";
35
- /**
36
- * Raised when an undecorated class that is using Angular features
37
- * has been discovered.
38
- */
39
- ErrorCode[ErrorCode["UNDECORATED_CLASS_USING_ANGULAR_FEATURES"] = 2007] = "UNDECORATED_CLASS_USING_ANGULAR_FEATURES";
40
- /**
41
- * Raised when an component cannot resolve an external resource, such as a template or a style
42
- * sheet.
43
- */
44
- ErrorCode[ErrorCode["COMPONENT_RESOURCE_NOT_FOUND"] = 2008] = "COMPONENT_RESOURCE_NOT_FOUND";
45
- /**
46
- * Raised when a component uses `ShadowDom` view encapsulation, but its selector
47
- * does not match the shadow DOM tag name requirements.
48
- */
49
- ErrorCode[ErrorCode["COMPONENT_INVALID_SHADOW_DOM_SELECTOR"] = 2009] = "COMPONENT_INVALID_SHADOW_DOM_SELECTOR";
50
- ErrorCode[ErrorCode["SYMBOL_NOT_EXPORTED"] = 3001] = "SYMBOL_NOT_EXPORTED";
51
- ErrorCode[ErrorCode["SYMBOL_EXPORTED_UNDER_DIFFERENT_NAME"] = 3002] = "SYMBOL_EXPORTED_UNDER_DIFFERENT_NAME";
52
- /**
53
- * Raised when a relationship between directives and/or pipes would cause a cyclic import to be
54
- * created that cannot be handled, such as in partial compilation mode.
55
- */
56
- ErrorCode[ErrorCode["IMPORT_CYCLE_DETECTED"] = 3003] = "IMPORT_CYCLE_DETECTED";
57
- ErrorCode[ErrorCode["CONFIG_FLAT_MODULE_NO_INDEX"] = 4001] = "CONFIG_FLAT_MODULE_NO_INDEX";
58
- ErrorCode[ErrorCode["CONFIG_STRICT_TEMPLATES_IMPLIES_FULL_TEMPLATE_TYPECHECK"] = 4002] = "CONFIG_STRICT_TEMPLATES_IMPLIES_FULL_TEMPLATE_TYPECHECK";
59
- /**
60
- * Raised when a host expression has a parse error, such as a host listener or host binding
61
- * expression containing a pipe.
62
- */
63
- ErrorCode[ErrorCode["HOST_BINDING_PARSE_ERROR"] = 5001] = "HOST_BINDING_PARSE_ERROR";
64
- /**
65
- * Raised when the compiler cannot parse a component's template.
66
- */
67
- ErrorCode[ErrorCode["TEMPLATE_PARSE_ERROR"] = 5002] = "TEMPLATE_PARSE_ERROR";
68
- /**
69
- * Raised when an NgModule contains an invalid reference in `declarations`.
70
- */
71
- ErrorCode[ErrorCode["NGMODULE_INVALID_DECLARATION"] = 6001] = "NGMODULE_INVALID_DECLARATION";
72
- /**
73
- * Raised when an NgModule contains an invalid type in `imports`.
74
- */
75
- ErrorCode[ErrorCode["NGMODULE_INVALID_IMPORT"] = 6002] = "NGMODULE_INVALID_IMPORT";
76
- /**
77
- * Raised when an NgModule contains an invalid type in `exports`.
78
- */
79
- ErrorCode[ErrorCode["NGMODULE_INVALID_EXPORT"] = 6003] = "NGMODULE_INVALID_EXPORT";
80
- /**
81
- * Raised when an NgModule contains a type in `exports` which is neither in `declarations` nor
82
- * otherwise imported.
83
- */
84
- ErrorCode[ErrorCode["NGMODULE_INVALID_REEXPORT"] = 6004] = "NGMODULE_INVALID_REEXPORT";
85
- /**
86
- * Raised when a `ModuleWithProviders` with a missing
87
- * generic type argument is passed into an `NgModule`.
88
- */
89
- ErrorCode[ErrorCode["NGMODULE_MODULE_WITH_PROVIDERS_MISSING_GENERIC"] = 6005] = "NGMODULE_MODULE_WITH_PROVIDERS_MISSING_GENERIC";
90
- /**
91
- * Raised when an NgModule exports multiple directives/pipes of the same name and the compiler
92
- * attempts to generate private re-exports within the NgModule file.
93
- */
94
- ErrorCode[ErrorCode["NGMODULE_REEXPORT_NAME_COLLISION"] = 6006] = "NGMODULE_REEXPORT_NAME_COLLISION";
95
- /**
96
- * Raised when a directive/pipe is part of the declarations of two or more NgModules.
97
- */
98
- ErrorCode[ErrorCode["NGMODULE_DECLARATION_NOT_UNIQUE"] = 6007] = "NGMODULE_DECLARATION_NOT_UNIQUE";
99
- /**
100
- * Not actually raised by the compiler, but reserved for documentation of a View Engine error when
101
- * a View Engine build depends on an Ivy-compiled NgModule.
102
- */
103
- ErrorCode[ErrorCode["NGMODULE_VE_DEPENDENCY_ON_IVY_LIB"] = 6999] = "NGMODULE_VE_DEPENDENCY_ON_IVY_LIB";
104
- /**
105
- * An element name failed validation against the DOM schema.
106
- */
107
- ErrorCode[ErrorCode["SCHEMA_INVALID_ELEMENT"] = 8001] = "SCHEMA_INVALID_ELEMENT";
108
- /**
109
- * An element's attribute name failed validation against the DOM schema.
110
- */
111
- ErrorCode[ErrorCode["SCHEMA_INVALID_ATTRIBUTE"] = 8002] = "SCHEMA_INVALID_ATTRIBUTE";
112
- /**
113
- * No matching directive was found for a `#ref="target"` expression.
114
- */
115
- ErrorCode[ErrorCode["MISSING_REFERENCE_TARGET"] = 8003] = "MISSING_REFERENCE_TARGET";
116
- /**
117
- * No matching pipe was found for a
118
- */
119
- ErrorCode[ErrorCode["MISSING_PIPE"] = 8004] = "MISSING_PIPE";
120
- /**
121
- * The left-hand side of an assignment expression was a template variable. Effectively, the
122
- * template looked like:
123
- *
124
- * ```
125
- * <ng-template let-something>
126
- * <button (click)="something = ...">...</button>
127
- * </ng-template>
128
- * ```
129
- *
130
- * Template variables are read-only.
131
- */
132
- ErrorCode[ErrorCode["WRITE_TO_READ_ONLY_VARIABLE"] = 8005] = "WRITE_TO_READ_ONLY_VARIABLE";
133
- /**
134
- * A template variable was declared twice. For example:
135
- *
136
- * ```html
137
- * <div *ngFor="let i of items; let i = index">
138
- * </div>
139
- * ```
140
- */
141
- ErrorCode[ErrorCode["DUPLICATE_VARIABLE_DECLARATION"] = 8006] = "DUPLICATE_VARIABLE_DECLARATION";
142
- /**
143
- * The template type-checking engine would need to generate an inline type check block for a
144
- * component, but the current type-checking environment doesn't support it.
145
- */
146
- ErrorCode[ErrorCode["INLINE_TCB_REQUIRED"] = 8900] = "INLINE_TCB_REQUIRED";
147
- /**
148
- * The template type-checking engine would need to generate an inline type constructor for a
149
- * directive or component, but the current type-checking environment doesn't support it.
150
- */
151
- ErrorCode[ErrorCode["INLINE_TYPE_CTOR_REQUIRED"] = 8901] = "INLINE_TYPE_CTOR_REQUIRED";
152
- /**
153
- * An injectable already has a `ɵprov` property.
154
- */
155
- ErrorCode[ErrorCode["INJECTABLE_DUPLICATE_PROV"] = 9001] = "INJECTABLE_DUPLICATE_PROV";
156
- // 10XXX error codes are reserved for diagnostics with categories other than
157
- // `ts.DiagnosticCategory.Error`. These diagnostics are generated by the compiler when configured
158
- // to do so by a tool such as the Language Service, or by the Language Service itself.
159
- /**
160
- * Suggest users to enable `strictTemplates` to make use of full capabilities
161
- * provided by Angular language service.
162
- */
163
- ErrorCode[ErrorCode["SUGGEST_STRICT_TEMPLATES"] = 10001] = "SUGGEST_STRICT_TEMPLATES";
164
- /**
165
- * Indicates that a particular structural directive provides advanced type narrowing
166
- * functionality, but the current template type-checking configuration does not allow its usage in
167
- * type inference.
168
- */
169
- ErrorCode[ErrorCode["SUGGEST_SUBOPTIMAL_TYPE_INFERENCE"] = 10002] = "SUGGEST_SUBOPTIMAL_TYPE_INFERENCE";
170
- })(ErrorCode || (ErrorCode = {}));
171
- /**
172
- * @internal
173
- * Base URL for the error details page.
174
- * Keep this value in sync with a similar const in
175
- * `packages/core/src/render3/error_code.ts`.
176
- */
177
- export const ERROR_DETAILS_PAGE_BASE_URL = 'https://angular.io/errors';
178
- /**
179
- * @internal
180
- * Contains a set of error messages that have detailed guides at angular.io.
181
- * Full list of available error guides can be found at https://angular.io/errors
182
- */
183
- export const COMPILER_ERRORS_WITH_GUIDES = new Set([
184
- ErrorCode.DECORATOR_ARG_NOT_LITERAL,
185
- ErrorCode.IMPORT_CYCLE_DETECTED,
186
- ErrorCode.PARAM_MISSING_TOKEN,
187
- ErrorCode.SCHEMA_INVALID_ELEMENT,
188
- ErrorCode.SCHEMA_INVALID_ATTRIBUTE,
189
- ErrorCode.MISSING_REFERENCE_TARGET,
190
- ErrorCode.COMPONENT_INVALID_SHADOW_DOM_SELECTOR,
191
- ]);
192
- /**
193
- * @internal
194
- */
195
- export function ngErrorCode(code) {
196
- return parseInt('-99' + code);
197
- }
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JfY29kZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvZGlhZ25vc3RpY3Mvc3JjL2Vycm9yX2NvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUg7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxTQThMWDtBQTlMRCxXQUFZLFNBQVM7SUFDbkIsc0ZBQWdDLENBQUE7SUFDaEMsOEVBQTRCLENBQUE7SUFDNUIsNEVBQTJCLENBQUE7SUFDM0IsNEZBQW1DLENBQUE7SUFDbkMsNEVBQTJCLENBQUE7SUFFM0I7O09BRUc7SUFDSCwwRUFBMEIsQ0FBQTtJQUUxQiw0RUFBMkIsQ0FBQTtJQUMzQixzRUFBd0IsQ0FBQTtJQUV4Qix3RkFBaUMsQ0FBQTtJQUNqQyxzRUFBd0IsQ0FBQTtJQUN4QiwwRUFBMEIsQ0FBQTtJQUMxQix3RkFBaUMsQ0FBQTtJQUVqQyw4RkFBOEY7SUFDOUYsNEVBQTJCLENBQUE7SUFFM0I7OztPQUdHO0lBQ0gsMEdBQTBDLENBQUE7SUFFMUM7OztPQUdHO0lBQ0gsb0hBQStDLENBQUE7SUFFL0M7OztPQUdHO0lBQ0gsNEZBQW1DLENBQUE7SUFFbkM7OztPQUdHO0lBQ0gsOEdBQTRDLENBQUE7SUFFNUMsMEVBQTBCLENBQUE7SUFDMUIsNEdBQTJDLENBQUE7SUFDM0M7OztPQUdHO0lBQ0gsOEVBQTRCLENBQUE7SUFFNUIsMEZBQWtDLENBQUE7SUFDbEMsa0pBQThELENBQUE7SUFFOUQ7OztPQUdHO0lBQ0gsb0ZBQStCLENBQUE7SUFFL0I7O09BRUc7SUFDSCw0RUFBMkIsQ0FBQTtJQUUzQjs7T0FFRztJQUNILDRGQUFtQyxDQUFBO0lBRW5DOztPQUVHO0lBQ0gsa0ZBQThCLENBQUE7SUFFOUI7O09BRUc7SUFDSCxrRkFBOEIsQ0FBQTtJQUU5Qjs7O09BR0c7SUFDSCxzRkFBZ0MsQ0FBQTtJQUVoQzs7O09BR0c7SUFDSCxnSUFBcUQsQ0FBQTtJQUVyRDs7O09BR0c7SUFDSCxvR0FBdUMsQ0FBQTtJQUV2Qzs7T0FFRztJQUNILGtHQUFzQyxDQUFBO0lBRXRDOzs7T0FHRztJQUNILHNHQUF3QyxDQUFBO0lBRXhDOztPQUVHO0lBQ0gsZ0ZBQTZCLENBQUE7SUFFN0I7O09BRUc7SUFDSCxvRkFBK0IsQ0FBQTtJQUUvQjs7T0FFRztJQUNILG9GQUErQixDQUFBO0lBRS9COztPQUVHO0lBQ0gsNERBQW1CLENBQUE7SUFFbkI7Ozs7Ozs7Ozs7O09BV0c7SUFDSCwwRkFBa0MsQ0FBQTtJQUVsQzs7Ozs7OztPQU9HO0lBQ0gsZ0dBQXFDLENBQUE7SUFFckM7OztPQUdHO0lBQ0gsMEVBQTBCLENBQUE7SUFFMUI7OztPQUdHO0lBQ0gsc0ZBQWdDLENBQUE7SUFFaEM7O09BRUc7SUFDSCxzRkFBZ0MsQ0FBQTtJQUVoQyw0RUFBNEU7SUFDNUUsaUdBQWlHO0lBQ2pHLHNGQUFzRjtJQUV0Rjs7O09BR0c7SUFDSCxxRkFBZ0MsQ0FBQTtJQUVoQzs7OztPQUlHO0lBQ0gsdUdBQXlDLENBQUE7QUFDM0MsQ0FBQyxFQTlMVyxTQUFTLEtBQVQsU0FBUyxRQThMcEI7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLDJCQUEyQixDQUFDO0FBRXZFOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxJQUFJLEdBQUcsQ0FBQztJQUNqRCxTQUFTLENBQUMseUJBQXlCO0lBQ25DLFNBQVMsQ0FBQyxxQkFBcUI7SUFDL0IsU0FBUyxDQUFDLG1CQUFtQjtJQUM3QixTQUFTLENBQUMsc0JBQXNCO0lBQ2hDLFNBQVMsQ0FBQyx3QkFBd0I7SUFDbEMsU0FBUyxDQUFDLHdCQUF3QjtJQUNsQyxTQUFTLENBQUMscUNBQXFDO0NBQ2hELENBQUMsQ0FBQztBQUVIOztHQUVHO0FBQ0gsTUFBTSxVQUFVLFdBQVcsQ0FBQyxJQUFlO0lBQ3pDLE9BQU8sUUFBUSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQztBQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8qKlxuICogQHB1YmxpY0FwaVxuICovXG5leHBvcnQgZW51bSBFcnJvckNvZGUge1xuICBERUNPUkFUT1JfQVJHX05PVF9MSVRFUkFMID0gMTAwMSxcbiAgREVDT1JBVE9SX0FSSVRZX1dST05HID0gMTAwMixcbiAgREVDT1JBVE9SX05PVF9DQUxMRUQgPSAxMDAzLFxuICBERUNPUkFUT1JfT05fQU5PTllNT1VTX0NMQVNTID0gMTAwNCxcbiAgREVDT1JBVE9SX1VORVhQRUNURUQgPSAxMDA1LFxuXG4gIC8qKlxuICAgKiBUaGlzIGVycm9yIGNvZGUgaW5kaWNhdGVzIHRoYXQgdGhlcmUgYXJlIGluY29tcGF0aWJsZSBkZWNvcmF0b3JzIG9uIGEgdHlwZSBvciBhIGNsYXNzIGZpZWxkLlxuICAgKi9cbiAgREVDT1JBVE9SX0NPTExJU0lPTiA9IDEwMDYsXG5cbiAgVkFMVUVfSEFTX1dST05HX1RZUEUgPSAxMDEwLFxuICBWQUxVRV9OT1RfTElURVJBTCA9IDEwMTEsXG5cbiAgQ09NUE9ORU5UX01JU1NJTkdfVEVNUExBVEUgPSAyMDAxLFxuICBQSVBFX01JU1NJTkdfTkFNRSA9IDIwMDIsXG4gIFBBUkFNX01JU1NJTkdfVE9LRU4gPSAyMDAzLFxuICBESVJFQ1RJVkVfTUlTU0lOR19TRUxFQ1RPUiA9IDIwMDQsXG5cbiAgLyoqIFJhaXNlZCB3aGVuIGFuIHVuZGVjb3JhdGVkIGNsYXNzIGlzIHBhc3NlZCBpbiBhcyBhIHByb3ZpZGVyIHRvIGEgbW9kdWxlIG9yIGEgZGlyZWN0aXZlLiAqL1xuICBVTkRFQ09SQVRFRF9QUk9WSURFUiA9IDIwMDUsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGEgRGlyZWN0aXZlIGluaGVyaXRzIGl0cyBjb25zdHJ1Y3RvciBmcm9tIGEgYmFzZSBjbGFzcyB3aXRob3V0IGFuIEFuZ3VsYXJcbiAgICogZGVjb3JhdG9yLlxuICAgKi9cbiAgRElSRUNUSVZFX0lOSEVSSVRTX1VOREVDT1JBVEVEX0NUT1IgPSAyMDA2LFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhbiB1bmRlY29yYXRlZCBjbGFzcyB0aGF0IGlzIHVzaW5nIEFuZ3VsYXIgZmVhdHVyZXNcbiAgICogaGFzIGJlZW4gZGlzY292ZXJlZC5cbiAgICovXG4gIFVOREVDT1JBVEVEX0NMQVNTX1VTSU5HX0FOR1VMQVJfRkVBVFVSRVMgPSAyMDA3LFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhbiBjb21wb25lbnQgY2Fubm90IHJlc29sdmUgYW4gZXh0ZXJuYWwgcmVzb3VyY2UsIHN1Y2ggYXMgYSB0ZW1wbGF0ZSBvciBhIHN0eWxlXG4gICAqIHNoZWV0LlxuICAgKi9cbiAgQ09NUE9ORU5UX1JFU09VUkNFX05PVF9GT1VORCA9IDIwMDgsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGEgY29tcG9uZW50IHVzZXMgYFNoYWRvd0RvbWAgdmlldyBlbmNhcHN1bGF0aW9uLCBidXQgaXRzIHNlbGVjdG9yXG4gICAqIGRvZXMgbm90IG1hdGNoIHRoZSBzaGFkb3cgRE9NIHRhZyBuYW1lIHJlcXVpcmVtZW50cy5cbiAgICovXG4gIENPTVBPTkVOVF9JTlZBTElEX1NIQURPV19ET01fU0VMRUNUT1IgPSAyMDA5LFxuXG4gIFNZTUJPTF9OT1RfRVhQT1JURUQgPSAzMDAxLFxuICBTWU1CT0xfRVhQT1JURURfVU5ERVJfRElGRkVSRU5UX05BTUUgPSAzMDAyLFxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYSByZWxhdGlvbnNoaXAgYmV0d2VlbiBkaXJlY3RpdmVzIGFuZC9vciBwaXBlcyB3b3VsZCBjYXVzZSBhIGN5Y2xpYyBpbXBvcnQgdG8gYmVcbiAgICogY3JlYXRlZCB0aGF0IGNhbm5vdCBiZSBoYW5kbGVkLCBzdWNoIGFzIGluIHBhcnRpYWwgY29tcGlsYXRpb24gbW9kZS5cbiAgICovXG4gIElNUE9SVF9DWUNMRV9ERVRFQ1RFRCA9IDMwMDMsXG5cbiAgQ09ORklHX0ZMQVRfTU9EVUxFX05PX0lOREVYID0gNDAwMSxcbiAgQ09ORklHX1NUUklDVF9URU1QTEFURVNfSU1QTElFU19GVUxMX1RFTVBMQVRFX1RZUEVDSEVDSyA9IDQwMDIsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIGEgaG9zdCBleHByZXNzaW9uIGhhcyBhIHBhcnNlIGVycm9yLCBzdWNoIGFzIGEgaG9zdCBsaXN0ZW5lciBvciBob3N0IGJpbmRpbmdcbiAgICogZXhwcmVzc2lvbiBjb250YWluaW5nIGEgcGlwZS5cbiAgICovXG4gIEhPU1RfQklORElOR19QQVJTRV9FUlJPUiA9IDUwMDEsXG5cbiAgLyoqXG4gICAqIFJhaXNlZCB3aGVuIHRoZSBjb21waWxlciBjYW5ub3QgcGFyc2UgYSBjb21wb25lbnQncyB0ZW1wbGF0ZS5cbiAgICovXG4gIFRFTVBMQVRFX1BBUlNFX0VSUk9SID0gNTAwMixcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYW4gTmdNb2R1bGUgY29udGFpbnMgYW4gaW52YWxpZCByZWZlcmVuY2UgaW4gYGRlY2xhcmF0aW9uc2AuXG4gICAqL1xuICBOR01PRFVMRV9JTlZBTElEX0RFQ0xBUkFUSU9OID0gNjAwMSxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYW4gTmdNb2R1bGUgY29udGFpbnMgYW4gaW52YWxpZCB0eXBlIGluIGBpbXBvcnRzYC5cbiAgICovXG4gIE5HTU9EVUxFX0lOVkFMSURfSU1QT1JUID0gNjAwMixcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYW4gTmdNb2R1bGUgY29udGFpbnMgYW4gaW52YWxpZCB0eXBlIGluIGBleHBvcnRzYC5cbiAgICovXG4gIE5HTU9EVUxFX0lOVkFMSURfRVhQT1JUID0gNjAwMyxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYW4gTmdNb2R1bGUgY29udGFpbnMgYSB0eXBlIGluIGBleHBvcnRzYCB3aGljaCBpcyBuZWl0aGVyIGluIGBkZWNsYXJhdGlvbnNgIG5vclxuICAgKiBvdGhlcndpc2UgaW1wb3J0ZWQuXG4gICAqL1xuICBOR01PRFVMRV9JTlZBTElEX1JFRVhQT1JUID0gNjAwNCxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYSBgTW9kdWxlV2l0aFByb3ZpZGVyc2Agd2l0aCBhIG1pc3NpbmdcbiAgICogZ2VuZXJpYyB0eXBlIGFyZ3VtZW50IGlzIHBhc3NlZCBpbnRvIGFuIGBOZ01vZHVsZWAuXG4gICAqL1xuICBOR01PRFVMRV9NT0RVTEVfV0lUSF9QUk9WSURFUlNfTUlTU0lOR19HRU5FUklDID0gNjAwNSxcblxuICAvKipcbiAgICogUmFpc2VkIHdoZW4gYW4gTmdNb2R1bGUgZXhwb3J0cyBtdWx0aXBsZSBkaXJlY3RpdmVzL3BpcGVzIG9mIHRoZSBzYW1lIG5hbWUgYW5kIHRoZSBjb21waWxlclxuICAgKiBhdHRlbXB0cyB0byBnZW5lcmF0ZSBwcml2YXRlIHJlLWV4cG9ydHMgd2l0aGluIHRoZSBOZ01vZHVsZSBmaWxlLlxuICAgKi9cbiAgTkdNT0RVTEVfUkVFWFBPUlRfTkFNRV9DT0xMSVNJT04gPSA2MDA2LFxuXG4gIC8qKlxuICAgKiBSYWlzZWQgd2hlbiBhIGRpcmVjdGl2ZS9waXBlIGlzIHBhcnQgb2YgdGhlIGRlY2xhcmF0aW9ucyBvZiB0d28gb3IgbW9yZSBOZ01vZHVsZXMuXG4gICAqL1xuICBOR01PRFVMRV9ERUNMQVJBVElPTl9OT1RfVU5JUVVFID0gNjAwNyxcblxuICAvKipcbiAgICogTm90IGFjdHVhbGx5IHJhaXNlZCBieSB0aGUgY29tcGlsZXIsIGJ1dCByZXNlcnZlZCBmb3IgZG9jdW1lbnRhdGlvbiBvZiBhIFZpZXcgRW5naW5lIGVycm9yIHdoZW5cbiAgICogYSBWaWV3IEVuZ2luZSBidWlsZCBkZXBlbmRzIG9uIGFuIEl2eS1jb21waWxlZCBOZ01vZHVsZS5cbiAgICovXG4gIE5HTU9EVUxFX1ZFX0RFUEVOREVOQ1lfT05fSVZZX0xJQiA9IDY5OTksXG5cbiAgLyoqXG4gICAqIEFuIGVsZW1lbnQgbmFtZSBmYWlsZWQgdmFsaWRhdGlvbiBhZ2FpbnN0IHRoZSBET00gc2NoZW1hLlxuICAgKi9cbiAgU0NIRU1BX0lOVkFMSURfRUxFTUVOVCA9IDgwMDEsXG5cbiAgLyoqXG4gICAqIEFuIGVsZW1lbnQncyBhdHRyaWJ1dGUgbmFtZSBmYWlsZWQgdmFsaWRhdGlvbiBhZ2FpbnN0IHRoZSBET00gc2NoZW1hLlxuICAgKi9cbiAgU0NIRU1BX0lOVkFMSURfQVRUUklCVVRFID0gODAwMixcblxuICAvKipcbiAgICogTm8gbWF0Y2hpbmcgZGlyZWN0aXZlIHdhcyBmb3VuZCBmb3IgYSBgI3JlZj1cInRhcmdldFwiYCBleHByZXNzaW9uLlxuICAgKi9cbiAgTUlTU0lOR19SRUZFUkVOQ0VfVEFSR0VUID0gODAwMyxcblxuICAvKipcbiAgICogTm8gbWF0Y2hpbmcgcGlwZSB3YXMgZm91bmQgZm9yIGFcbiAgICovXG4gIE1JU1NJTkdfUElQRSA9IDgwMDQsXG5cbiAgLyoqXG4gICAqIFRoZSBsZWZ0LWhhbmQgc2lkZSBvZiBhbiBhc3NpZ25tZW50IGV4cHJlc3Npb24gd2FzIGEgdGVtcGxhdGUgdmFyaWFibGUuIEVmZmVjdGl2ZWx5LCB0aGVcbiAgICogdGVtcGxhdGUgbG9va2VkIGxpa2U6XG4gICAqXG4gICAqIGBgYFxuICAgKiA8bmctdGVtcGxhdGUgbGV0LXNvbWV0aGluZz5cbiAgICogICA8YnV0dG9uIChjbGljayk9XCJzb21ldGhpbmcgPSAuLi5cIj4uLi48L2J1dHRvbj5cbiAgICogPC9uZy10ZW1wbGF0ZT5cbiAgICogYGBgXG4gICAqXG4gICAqIFRlbXBsYXRlIHZhcmlhYmxlcyBhcmUgcmVhZC1vbmx5LlxuICAgKi9cbiAgV1JJVEVfVE9fUkVBRF9PTkxZX1ZBUklBQkxFID0gODAwNSxcblxuICAvKipcbiAgICogQSB0ZW1wbGF0ZSB2YXJpYWJsZSB3YXMgZGVjbGFyZWQgdHdpY2UuIEZvciBleGFtcGxlOlxuICAgKlxuICAgKiBgYGBodG1sXG4gICAqIDxkaXYgKm5nRm9yPVwibGV0IGkgb2YgaXRlbXM7IGxldCBpID0gaW5kZXhcIj5cbiAgICogPC9kaXY+XG4gICAqIGBgYFxuICAgKi9cbiAgRFVQTElDQVRFX1ZBUklBQkxFX0RFQ0xBUkFUSU9OID0gODAwNixcblxuICAvKipcbiAgICogVGhlIHRlbXBsYXRlIHR5cGUtY2hlY2tpbmcgZW5naW5lIHdvdWxkIG5lZWQgdG8gZ2VuZXJhdGUgYW4gaW5saW5lIHR5cGUgY2hlY2sgYmxvY2sgZm9yIGFcbiAgICogY29tcG9uZW50LCBidXQgdGhlIGN1cnJlbnQgdHlwZS1jaGVja2luZyBlbnZpcm9ubWVudCBkb2Vzbid0IHN1cHBvcnQgaXQuXG4gICAqL1xuICBJTkxJTkVfVENCX1JFUVVJUkVEID0gODkwMCxcblxuICAvKipcbiAgICogVGhlIHRlbXBsYXRlIHR5cGUtY2hlY2tpbmcgZW5naW5lIHdvdWxkIG5lZWQgdG8gZ2VuZXJhdGUgYW4gaW5saW5lIHR5cGUgY29uc3RydWN0b3IgZm9yIGFcbiAgICogZGlyZWN0aXZlIG9yIGNvbXBvbmVudCwgYnV0IHRoZSBjdXJyZW50IHR5cGUtY2hlY2tpbmcgZW52aXJvbm1lbnQgZG9lc24ndCBzdXBwb3J0IGl0LlxuICAgKi9cbiAgSU5MSU5FX1RZUEVfQ1RPUl9SRVFVSVJFRCA9IDg5MDEsXG5cbiAgLyoqXG4gICAqIEFuIGluamVjdGFibGUgYWxyZWFkeSBoYXMgYSBgybVwcm92YCBwcm9wZXJ0eS5cbiAgICovXG4gIElOSkVDVEFCTEVfRFVQTElDQVRFX1BST1YgPSA5MDAxLFxuXG4gIC8vIDEwWFhYIGVycm9yIGNvZGVzIGFyZSByZXNlcnZlZCBmb3IgZGlhZ25vc3RpY3Mgd2l0aCBjYXRlZ29yaWVzIG90aGVyIHRoYW5cbiAgLy8gYHRzLkRpYWdub3N0aWNDYXRlZ29yeS5FcnJvcmAuIFRoZXNlIGRpYWdub3N0aWNzIGFyZSBnZW5lcmF0ZWQgYnkgdGhlIGNvbXBpbGVyIHdoZW4gY29uZmlndXJlZFxuICAvLyB0byBkbyBzbyBieSBhIHRvb2wgc3VjaCBhcyB0aGUgTGFuZ3VhZ2UgU2VydmljZSwgb3IgYnkgdGhlIExhbmd1YWdlIFNlcnZpY2UgaXRzZWxmLlxuXG4gIC8qKlxuICAgKiBTdWdnZXN0IHVzZXJzIHRvIGVuYWJsZSBgc3RyaWN0VGVtcGxhdGVzYCB0byBtYWtlIHVzZSBvZiBmdWxsIGNhcGFiaWxpdGllc1xuICAgKiBwcm92aWRlZCBieSBBbmd1bGFyIGxhbmd1YWdlIHNlcnZpY2UuXG4gICAqL1xuICBTVUdHRVNUX1NUUklDVF9URU1QTEFURVMgPSAxMDAwMSxcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHRoYXQgYSBwYXJ0aWN1bGFyIHN0cnVjdHVyYWwgZGlyZWN0aXZlIHByb3ZpZGVzIGFkdmFuY2VkIHR5cGUgbmFycm93aW5nXG4gICAqIGZ1bmN0aW9uYWxpdHksIGJ1dCB0aGUgY3VycmVudCB0ZW1wbGF0ZSB0eXBlLWNoZWNraW5nIGNvbmZpZ3VyYXRpb24gZG9lcyBub3QgYWxsb3cgaXRzIHVzYWdlIGluXG4gICAqIHR5cGUgaW5mZXJlbmNlLlxuICAgKi9cbiAgU1VHR0VTVF9TVUJPUFRJTUFMX1RZUEVfSU5GRVJFTkNFID0gMTAwMDIsXG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKiBCYXNlIFVSTCBmb3IgdGhlIGVycm9yIGRldGFpbHMgcGFnZS5cbiAqIEtlZXAgdGhpcyB2YWx1ZSBpbiBzeW5jIHdpdGggYSBzaW1pbGFyIGNvbnN0IGluXG4gKiBgcGFja2FnZXMvY29yZS9zcmMvcmVuZGVyMy9lcnJvcl9jb2RlLnRzYC5cbiAqL1xuZXhwb3J0IGNvbnN0IEVSUk9SX0RFVEFJTFNfUEFHRV9CQVNFX1VSTCA9ICdodHRwczovL2FuZ3VsYXIuaW8vZXJyb3JzJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqIENvbnRhaW5zIGEgc2V0IG9mIGVycm9yIG1lc3NhZ2VzIHRoYXQgaGF2ZSBkZXRhaWxlZCBndWlkZXMgYXQgYW5ndWxhci5pby5cbiAqIEZ1bGwgbGlzdCBvZiBhdmFpbGFibGUgZXJyb3IgZ3VpZGVzIGNhbiBiZSBmb3VuZCBhdCBodHRwczovL2FuZ3VsYXIuaW8vZXJyb3JzXG4gKi9cbmV4cG9ydCBjb25zdCBDT01QSUxFUl9FUlJPUlNfV0lUSF9HVUlERVMgPSBuZXcgU2V0KFtcbiAgRXJyb3JDb2RlLkRFQ09SQVRPUl9BUkdfTk9UX0xJVEVSQUwsXG4gIEVycm9yQ29kZS5JTVBPUlRfQ1lDTEVfREVURUNURUQsXG4gIEVycm9yQ29kZS5QQVJBTV9NSVNTSU5HX1RPS0VOLFxuICBFcnJvckNvZGUuU0NIRU1BX0lOVkFMSURfRUxFTUVOVCxcbiAgRXJyb3JDb2RlLlNDSEVNQV9JTlZBTElEX0FUVFJJQlVURSxcbiAgRXJyb3JDb2RlLk1JU1NJTkdfUkVGRVJFTkNFX1RBUkdFVCxcbiAgRXJyb3JDb2RlLkNPTVBPTkVOVF9JTlZBTElEX1NIQURPV19ET01fU0VMRUNUT1IsXG5dKTtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG5nRXJyb3JDb2RlKGNvZGU6IEVycm9yQ29kZSk6IG51bWJlciB7XG4gIHJldHVybiBwYXJzZUludCgnLTk5JyArIGNvZGUpO1xufVxuIl19
@@ -1,21 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- const ERROR_CODE_MATCHER = /(\u001b\[\d+m ?)TS-99(\d+: ?\u001b\[\d+m)/g;
9
- /**
10
- * During formatting of `ts.Diagnostic`s, the numeric code of each diagnostic is prefixed with the
11
- * hard-coded "TS" prefix. For Angular's own error codes, a prefix of "NG" is desirable. To achieve
12
- * this, all Angular error codes start with "-99" so that the sequence "TS-99" can be assumed to
13
- * correspond with an Angular specific error code. This function replaces those occurrences with
14
- * just "NG".
15
- *
16
- * @param errors The formatted diagnostics
17
- */
18
- export function replaceTsWithNgInErrors(errors) {
19
- return errors.replace(ERROR_CODE_MATCHER, '$1NG$2');
20
- }
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvZGlhZ25vc3RpY3Mvc3JjL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsTUFBTSxrQkFBa0IsR0FBRyw0Q0FBNEMsQ0FBQztBQUV4RTs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxNQUFjO0lBQ3BELE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUN0RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmNvbnN0IEVSUk9SX0NPREVfTUFUQ0hFUiA9IC8oXFx1MDAxYlxcW1xcZCttID8pVFMtOTkoXFxkKzogP1xcdTAwMWJcXFtcXGQrbSkvZztcblxuLyoqXG4gKiBEdXJpbmcgZm9ybWF0dGluZyBvZiBgdHMuRGlhZ25vc3RpY2BzLCB0aGUgbnVtZXJpYyBjb2RlIG9mIGVhY2ggZGlhZ25vc3RpYyBpcyBwcmVmaXhlZCB3aXRoIHRoZVxuICogaGFyZC1jb2RlZCBcIlRTXCIgcHJlZml4LiBGb3IgQW5ndWxhcidzIG93biBlcnJvciBjb2RlcywgYSBwcmVmaXggb2YgXCJOR1wiIGlzIGRlc2lyYWJsZS4gVG8gYWNoaWV2ZVxuICogdGhpcywgYWxsIEFuZ3VsYXIgZXJyb3IgY29kZXMgc3RhcnQgd2l0aCBcIi05OVwiIHNvIHRoYXQgdGhlIHNlcXVlbmNlIFwiVFMtOTlcIiBjYW4gYmUgYXNzdW1lZCB0b1xuICogY29ycmVzcG9uZCB3aXRoIGFuIEFuZ3VsYXIgc3BlY2lmaWMgZXJyb3IgY29kZS4gVGhpcyBmdW5jdGlvbiByZXBsYWNlcyB0aG9zZSBvY2N1cnJlbmNlcyB3aXRoXG4gKiBqdXN0IFwiTkdcIi5cbiAqXG4gKiBAcGFyYW0gZXJyb3JzIFRoZSBmb3JtYXR0ZWQgZGlhZ25vc3RpY3NcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcGxhY2VUc1dpdGhOZ0luRXJyb3JzKGVycm9yczogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIGVycm9ycy5yZXBsYWNlKEVSUk9SX0NPREVfTUFUQ0hFUiwgJyQxTkckMicpO1xufVxuIl19
File without changes
@@ -1,12 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export { FlatIndexGenerator } from './src/generator';
9
- export { findFlatIndexEntryPoint } from './src/logic';
10
- export { checkForPrivateExports } from './src/private_export_checker';
11
- export { ReferenceGraph } from './src/reference_graph';
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2VudHJ5X3BvaW50L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUNwRCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuZXhwb3J0IHtGbGF0SW5kZXhHZW5lcmF0b3J9IGZyb20gJy4vc3JjL2dlbmVyYXRvcic7XG5leHBvcnQge2ZpbmRGbGF0SW5kZXhFbnRyeVBvaW50fSBmcm9tICcuL3NyYy9sb2dpYyc7XG5leHBvcnQge2NoZWNrRm9yUHJpdmF0ZUV4cG9ydHN9IGZyb20gJy4vc3JjL3ByaXZhdGVfZXhwb3J0X2NoZWNrZXInO1xuZXhwb3J0IHtSZWZlcmVuY2VHcmFwaH0gZnJvbSAnLi9zcmMvcmVmZXJlbmNlX2dyYXBoJztcbiJdfQ==
@@ -1,35 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- /// <reference types="node" />
9
- import * as ts from 'typescript';
10
- import { dirname, join } from '../../file_system';
11
- import { relativePathBetween } from '../../util/src/path';
12
- export class FlatIndexGenerator {
13
- constructor(entryPoint, relativeFlatIndexPath, moduleName) {
14
- this.entryPoint = entryPoint;
15
- this.moduleName = moduleName;
16
- this.shouldEmit = true;
17
- this.flatIndexPath =
18
- join(dirname(entryPoint), relativeFlatIndexPath).replace(/\.js$/, '') + '.ts';
19
- }
20
- makeTopLevelShim() {
21
- const relativeEntryPoint = relativePathBetween(this.flatIndexPath, this.entryPoint);
22
- const contents = `/**
23
- * Generated bundle index. Do not edit.
24
- */
25
-
26
- export * from '${relativeEntryPoint}';
27
- `;
28
- const genFile = ts.createSourceFile(this.flatIndexPath, contents, ts.ScriptTarget.ES2015, true, ts.ScriptKind.TS);
29
- if (this.moduleName !== null) {
30
- genFile.moduleName = this.moduleName;
31
- }
32
- return genFile;
33
- }
34
- }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9lbnRyeV9wb2ludC9zcmMvZ2VuZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUVILDhCQUE4QjtBQUU5QixPQUFPLEtBQUssRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVqQyxPQUFPLEVBQWlCLE9BQU8sRUFBRSxJQUFJLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUVoRSxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RCxNQUFNLE9BQU8sa0JBQWtCO0lBSTdCLFlBQ2EsVUFBMEIsRUFBRSxxQkFBNkIsRUFDekQsVUFBdUI7UUFEdkIsZUFBVSxHQUFWLFVBQVUsQ0FBZ0I7UUFDMUIsZUFBVSxHQUFWLFVBQVUsQ0FBYTtRQUozQixlQUFVLEdBQUcsSUFBSSxDQUFDO1FBS3pCLElBQUksQ0FBQyxhQUFhO1lBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQ3BGLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxNQUFNLGtCQUFrQixHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BGLE1BQU0sUUFBUSxHQUFHOzs7O2lCQUlKLGtCQUFrQjtDQUNsQyxDQUFDO1FBQ0UsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUMvQixJQUFJLENBQUMsYUFBYSxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRixJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssSUFBSSxFQUFFO1lBQzVCLE9BQU8sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztTQUN0QztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG4vLy8gPHJlZmVyZW5jZSB0eXBlcz1cIm5vZGVcIiAvPlxuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtBYnNvbHV0ZUZzUGF0aCwgZGlybmFtZSwgam9pbn0gZnJvbSAnLi4vLi4vZmlsZV9zeXN0ZW0nO1xuaW1wb3J0IHtUb3BMZXZlbFNoaW1HZW5lcmF0b3J9IGZyb20gJy4uLy4uL3NoaW1zL2FwaSc7XG5pbXBvcnQge3JlbGF0aXZlUGF0aEJldHdlZW59IGZyb20gJy4uLy4uL3V0aWwvc3JjL3BhdGgnO1xuXG5leHBvcnQgY2xhc3MgRmxhdEluZGV4R2VuZXJhdG9yIGltcGxlbWVudHMgVG9wTGV2ZWxTaGltR2VuZXJhdG9yIHtcbiAgcmVhZG9ubHkgZmxhdEluZGV4UGF0aDogc3RyaW5nO1xuICByZWFkb25seSBzaG91bGRFbWl0ID0gdHJ1ZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHJlYWRvbmx5IGVudHJ5UG9pbnQ6IEFic29sdXRlRnNQYXRoLCByZWxhdGl2ZUZsYXRJbmRleFBhdGg6IHN0cmluZyxcbiAgICAgIHJlYWRvbmx5IG1vZHVsZU5hbWU6IHN0cmluZ3xudWxsKSB7XG4gICAgdGhpcy5mbGF0SW5kZXhQYXRoID1cbiAgICAgICAgam9pbihkaXJuYW1lKGVudHJ5UG9pbnQpLCByZWxhdGl2ZUZsYXRJbmRleFBhdGgpLnJlcGxhY2UoL1xcLmpzJC8sICcnKSArICcudHMnO1xuICB9XG5cbiAgbWFrZVRvcExldmVsU2hpbSgpOiB0cy5Tb3VyY2VGaWxlIHtcbiAgICBjb25zdCByZWxhdGl2ZUVudHJ5UG9pbnQgPSByZWxhdGl2ZVBhdGhCZXR3ZWVuKHRoaXMuZmxhdEluZGV4UGF0aCwgdGhpcy5lbnRyeVBvaW50KTtcbiAgICBjb25zdCBjb250ZW50cyA9IGAvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJyR7cmVsYXRpdmVFbnRyeVBvaW50fSc7XG5gO1xuICAgIGNvbnN0IGdlbkZpbGUgPSB0cy5jcmVhdGVTb3VyY2VGaWxlKFxuICAgICAgICB0aGlzLmZsYXRJbmRleFBhdGgsIGNvbnRlbnRzLCB0cy5TY3JpcHRUYXJnZXQuRVMyMDE1LCB0cnVlLCB0cy5TY3JpcHRLaW5kLlRTKTtcbiAgICBpZiAodGhpcy5tb2R1bGVOYW1lICE9PSBudWxsKSB7XG4gICAgICBnZW5GaWxlLm1vZHVsZU5hbWUgPSB0aGlzLm1vZHVsZU5hbWU7XG4gICAgfVxuICAgIHJldHVybiBnZW5GaWxlO1xuICB9XG59XG4iXX0=
@@ -1,35 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import { getFileSystem } from '../../file_system';
9
- import { isNonDeclarationTsPath } from '../../util/src/typescript';
10
- export function findFlatIndexEntryPoint(rootFiles) {
11
- // There are two ways for a file to be recognized as the flat module index:
12
- // 1) if it's the only file!!!!!!
13
- // 2) (deprecated) if it's named 'index.ts' and has the shortest path of all such files.
14
- const tsFiles = rootFiles.filter(file => isNonDeclarationTsPath(file));
15
- let resolvedEntryPoint = null;
16
- if (tsFiles.length === 1) {
17
- // There's only one file - this is the flat module index.
18
- resolvedEntryPoint = tsFiles[0];
19
- }
20
- else {
21
- // In the event there's more than one TS file, one of them can still be selected as the
22
- // flat module index if it's named 'index.ts'. If there's more than one 'index.ts', the one
23
- // with the shortest path wins.
24
- //
25
- // This behavior is DEPRECATED and only exists to support existing usages.
26
- for (const tsFile of tsFiles) {
27
- if (getFileSystem().basename(tsFile) === 'index.ts' &&
28
- (resolvedEntryPoint === null || tsFile.length <= resolvedEntryPoint.length)) {
29
- resolvedEntryPoint = tsFile;
30
- }
31
- }
32
- }
33
- return resolvedEntryPoint;
34
- }
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2VudHJ5X3BvaW50L3NyYy9sb2dpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7QUFFSCxPQUFPLEVBQWlCLGFBQWEsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRWpFLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxTQUF3QztJQUU5RSwyRUFBMkU7SUFDM0UsaUNBQWlDO0lBQ2pDLHdGQUF3RjtJQUN4RixNQUFNLE9BQU8sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN2RSxJQUFJLGtCQUFrQixHQUF3QixJQUFJLENBQUM7SUFFbkQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUN4Qix5REFBeUQ7UUFDekQsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2pDO1NBQU07UUFDTCx1RkFBdUY7UUFDdkYsMkZBQTJGO1FBQzNGLCtCQUErQjtRQUMvQixFQUFFO1FBQ0YsMEVBQTBFO1FBQzFFLEtBQUssTUFBTSxNQUFNLElBQUksT0FBTyxFQUFFO1lBQzVCLElBQUksYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxLQUFLLFVBQVU7Z0JBQy9DLENBQUMsa0JBQWtCLEtBQUssSUFBSSxJQUFJLE1BQU0sQ0FBQyxNQUFNLElBQUksa0JBQWtCLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQy9FLGtCQUFrQixHQUFHLE1BQU0sQ0FBQzthQUM3QjtTQUNGO0tBQ0Y7SUFFRCxPQUFPLGtCQUFrQixDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtBYnNvbHV0ZUZzUGF0aCwgZ2V0RmlsZVN5c3RlbX0gZnJvbSAnLi4vLi4vZmlsZV9zeXN0ZW0nO1xuaW1wb3J0IHtpc05vbkRlY2xhcmF0aW9uVHNQYXRofSBmcm9tICcuLi8uLi91dGlsL3NyYy90eXBlc2NyaXB0JztcblxuZXhwb3J0IGZ1bmN0aW9uIGZpbmRGbGF0SW5kZXhFbnRyeVBvaW50KHJvb3RGaWxlczogUmVhZG9ubHlBcnJheTxBYnNvbHV0ZUZzUGF0aD4pOiBBYnNvbHV0ZUZzUGF0aHxcbiAgICBudWxsIHtcbiAgLy8gVGhlcmUgYXJlIHR3byB3YXlzIGZvciBhIGZpbGUgdG8gYmUgcmVjb2duaXplZCBhcyB0aGUgZmxhdCBtb2R1bGUgaW5kZXg6XG4gIC8vIDEpIGlmIGl0J3MgdGhlIG9ubHkgZmlsZSEhISEhIVxuICAvLyAyKSAoZGVwcmVjYXRlZCkgaWYgaXQncyBuYW1lZCAnaW5kZXgudHMnIGFuZCBoYXMgdGhlIHNob3J0ZXN0IHBhdGggb2YgYWxsIHN1Y2ggZmlsZXMuXG4gIGNvbnN0IHRzRmlsZXMgPSByb290RmlsZXMuZmlsdGVyKGZpbGUgPT4gaXNOb25EZWNsYXJhdGlvblRzUGF0aChmaWxlKSk7XG4gIGxldCByZXNvbHZlZEVudHJ5UG9pbnQ6IEFic29sdXRlRnNQYXRofG51bGwgPSBudWxsO1xuXG4gIGlmICh0c0ZpbGVzLmxlbmd0aCA9PT0gMSkge1xuICAgIC8vIFRoZXJlJ3Mgb25seSBvbmUgZmlsZSAtIHRoaXMgaXMgdGhlIGZsYXQgbW9kdWxlIGluZGV4LlxuICAgIHJlc29sdmVkRW50cnlQb2ludCA9IHRzRmlsZXNbMF07XG4gIH0gZWxzZSB7XG4gICAgLy8gSW4gdGhlIGV2ZW50IHRoZXJlJ3MgbW9yZSB0aGFuIG9uZSBUUyBmaWxlLCBvbmUgb2YgdGhlbSBjYW4gc3RpbGwgYmUgc2VsZWN0ZWQgYXMgdGhlXG4gICAgLy8gZmxhdCBtb2R1bGUgaW5kZXggaWYgaXQncyBuYW1lZCAnaW5kZXgudHMnLiBJZiB0aGVyZSdzIG1vcmUgdGhhbiBvbmUgJ2luZGV4LnRzJywgdGhlIG9uZVxuICAgIC8vIHdpdGggdGhlIHNob3J0ZXN0IHBhdGggd2lucy5cbiAgICAvL1xuICAgIC8vIFRoaXMgYmVoYXZpb3IgaXMgREVQUkVDQVRFRCBhbmQgb25seSBleGlzdHMgdG8gc3VwcG9ydCBleGlzdGluZyB1c2FnZXMuXG4gICAgZm9yIChjb25zdCB0c0ZpbGUgb2YgdHNGaWxlcykge1xuICAgICAgaWYgKGdldEZpbGVTeXN0ZW0oKS5iYXNlbmFtZSh0c0ZpbGUpID09PSAnaW5kZXgudHMnICYmXG4gICAgICAgICAgKHJlc29sdmVkRW50cnlQb2ludCA9PT0gbnVsbCB8fCB0c0ZpbGUubGVuZ3RoIDw9IHJlc29sdmVkRW50cnlQb2ludC5sZW5ndGgpKSB7XG4gICAgICAgIHJlc29sdmVkRW50cnlQb2ludCA9IHRzRmlsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVzb2x2ZWRFbnRyeVBvaW50O1xufVxuIl19
@@ -1,122 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- import * as ts from 'typescript';
9
- import { ErrorCode, ngErrorCode } from '../../diagnostics';
10
- /**
11
- * Produce `ts.Diagnostic`s for classes that are visible from exported types (e.g. directives
12
- * exposed by exported `NgModule`s) that are not themselves exported.
13
- *
14
- * This function reconciles two concepts:
15
- *
16
- * A class is Exported if it's exported from the main library `entryPoint` file.
17
- * A class is Visible if, via Angular semantics, a downstream consumer can import an Exported class
18
- * and be affected by the class in question. For example, an Exported NgModule may expose a
19
- * directive class to its consumers. Consumers that import the NgModule may have the directive
20
- * applied to elements in their templates. In this case, the directive is considered Visible.
21
- *
22
- * `checkForPrivateExports` attempts to verify that all Visible classes are Exported, and report
23
- * `ts.Diagnostic`s for those that aren't.
24
- *
25
- * @param entryPoint `ts.SourceFile` of the library's entrypoint, which should export the library's
26
- * public API.
27
- * @param checker `ts.TypeChecker` for the current program.
28
- * @param refGraph `ReferenceGraph` tracking the visibility of Angular types.
29
- * @returns an array of `ts.Diagnostic`s representing errors when visible classes are not exported
30
- * properly.
31
- */
32
- export function checkForPrivateExports(entryPoint, checker, refGraph) {
33
- const diagnostics = [];
34
- // Firstly, compute the exports of the entry point. These are all the Exported classes.
35
- const topLevelExports = new Set();
36
- // Do this via `ts.TypeChecker.getExportsOfModule`.
37
- const moduleSymbol = checker.getSymbolAtLocation(entryPoint);
38
- if (moduleSymbol === undefined) {
39
- throw new Error(`Internal error: failed to get symbol for entrypoint`);
40
- }
41
- const exportedSymbols = checker.getExportsOfModule(moduleSymbol);
42
- // Loop through the exported symbols, de-alias if needed, and add them to `topLevelExports`.
43
- // TODO(alxhub): use proper iteration when build.sh is removed. (#27762)
44
- exportedSymbols.forEach(symbol => {
45
- if (symbol.flags & ts.SymbolFlags.Alias) {
46
- symbol = checker.getAliasedSymbol(symbol);
47
- }
48
- const decl = symbol.valueDeclaration;
49
- if (decl !== undefined) {
50
- topLevelExports.add(decl);
51
- }
52
- });
53
- // Next, go through each exported class and expand it to the set of classes it makes Visible,
54
- // using the `ReferenceGraph`. For each Visible class, verify that it's also Exported, and queue
55
- // an error if it isn't. `checkedSet` ensures only one error is queued per class.
56
- const checkedSet = new Set();
57
- // Loop through each Exported class.
58
- // TODO(alxhub): use proper iteration when the legacy build is removed. (#27762)
59
- topLevelExports.forEach(mainExport => {
60
- // Loop through each class made Visible by the Exported class.
61
- refGraph.transitiveReferencesOf(mainExport).forEach(transitiveReference => {
62
- // Skip classes which have already been checked.
63
- if (checkedSet.has(transitiveReference)) {
64
- return;
65
- }
66
- checkedSet.add(transitiveReference);
67
- // Verify that the Visible class is also Exported.
68
- if (!topLevelExports.has(transitiveReference)) {
69
- // This is an error, `mainExport` makes `transitiveReference` Visible, but
70
- // `transitiveReference` is not Exported from the entrypoint. Construct a diagnostic to
71
- // give to the user explaining the situation.
72
- const descriptor = getDescriptorOfDeclaration(transitiveReference);
73
- const name = getNameOfDeclaration(transitiveReference);
74
- // Construct the path of visibility, from `mainExport` to `transitiveReference`.
75
- let visibleVia = 'NgModule exports';
76
- const transitivePath = refGraph.pathFrom(mainExport, transitiveReference);
77
- if (transitivePath !== null) {
78
- visibleVia = transitivePath.map(seg => getNameOfDeclaration(seg)).join(' -> ');
79
- }
80
- const diagnostic = Object.assign(Object.assign({ category: ts.DiagnosticCategory.Error, code: ngErrorCode(ErrorCode.SYMBOL_NOT_EXPORTED), file: transitiveReference.getSourceFile() }, getPosOfDeclaration(transitiveReference)), { messageText: `Unsupported private ${descriptor} ${name}. This ${descriptor} is visible to consumers via ${visibleVia}, but is not exported from the top-level library entrypoint.` });
81
- diagnostics.push(diagnostic);
82
- }
83
- });
84
- });
85
- return diagnostics;
86
- }
87
- function getPosOfDeclaration(decl) {
88
- const node = getIdentifierOfDeclaration(decl) || decl;
89
- return {
90
- start: node.getStart(),
91
- length: node.getEnd() + 1 - node.getStart(),
92
- };
93
- }
94
- function getIdentifierOfDeclaration(decl) {
95
- if ((ts.isClassDeclaration(decl) || ts.isVariableDeclaration(decl) ||
96
- ts.isFunctionDeclaration(decl)) &&
97
- decl.name !== undefined && ts.isIdentifier(decl.name)) {
98
- return decl.name;
99
- }
100
- else {
101
- return null;
102
- }
103
- }
104
- function getNameOfDeclaration(decl) {
105
- const id = getIdentifierOfDeclaration(decl);
106
- return id !== null ? id.text : '(unnamed)';
107
- }
108
- function getDescriptorOfDeclaration(decl) {
109
- switch (decl.kind) {
110
- case ts.SyntaxKind.ClassDeclaration:
111
- return 'class';
112
- case ts.SyntaxKind.FunctionDeclaration:
113
- return 'function';
114
- case ts.SyntaxKind.VariableDeclaration:
115
- return 'variable';
116
- case ts.SyntaxKind.EnumDeclaration:
117
- return 'enum';
118
- default:
119
- return 'declaration';
120
- }
121
- }
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9leHBvcnRfY2hlY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvZW50cnlfcG9pbnQvc3JjL3ByaXZhdGVfZXhwb3J0X2NoZWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFakMsT0FBTyxFQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUt6RDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBcUJHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUNsQyxVQUF5QixFQUFFLE9BQXVCLEVBQUUsUUFBd0I7SUFDOUUsTUFBTSxXQUFXLEdBQW9CLEVBQUUsQ0FBQztJQUV4Qyx1RkFBdUY7SUFDdkYsTUFBTSxlQUFlLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7SUFFbkQsbURBQW1EO0lBQ25ELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUM3RCxJQUFJLFlBQVksS0FBSyxTQUFTLEVBQUU7UUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO0tBQ3hFO0lBQ0QsTUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRWpFLDRGQUE0RjtJQUM1Rix3RUFBd0U7SUFDeEUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtRQUMvQixJQUFJLE1BQU0sQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUU7WUFDdkMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMzQztRQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQztRQUNyQyxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7WUFDdEIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMzQjtJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsNkZBQTZGO0lBQzdGLGdHQUFnRztJQUNoRyxpRkFBaUY7SUFDakYsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7SUFFOUMsb0NBQW9DO0lBQ3BDLGdGQUFnRjtJQUNoRixlQUFlLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQ25DLDhEQUE4RDtRQUM5RCxRQUFRLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLEVBQUU7WUFDeEUsZ0RBQWdEO1lBQ2hELElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFO2dCQUN2QyxPQUFPO2FBQ1I7WUFDRCxVQUFVLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFFcEMsa0RBQWtEO1lBQ2xELElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLEVBQUU7Z0JBQzdDLDBFQUEwRTtnQkFDMUUsdUZBQXVGO2dCQUN2Riw2Q0FBNkM7Z0JBRTdDLE1BQU0sVUFBVSxHQUFHLDBCQUEwQixDQUFDLG1CQUFtQixDQUFDLENBQUM7Z0JBQ25FLE1BQU0sSUFBSSxHQUFHLG9CQUFvQixDQUFDLG1CQUFtQixDQUFDLENBQUM7Z0JBRXZELGdGQUFnRjtnQkFDaEYsSUFBSSxVQUFVLEdBQUcsa0JBQWtCLENBQUM7Z0JBQ3BDLE1BQU0sY0FBYyxHQUFHLFFBQVEsQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLG1CQUFtQixDQUFDLENBQUM7Z0JBQzFFLElBQUksY0FBYyxLQUFLLElBQUksRUFBRTtvQkFDM0IsVUFBVSxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDaEY7Z0JBRUQsTUFBTSxVQUFVLGlDQUNkLFFBQVEsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUNyQyxJQUFJLEVBQUUsV0FBVyxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxFQUNoRCxJQUFJLEVBQUUsbUJBQW1CLENBQUMsYUFBYSxFQUFFLElBQ3RDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLEtBQzNDLFdBQVcsRUFBRSx1QkFBdUIsVUFBVSxJQUFJLElBQUksVUFDbEQsVUFBVSxnQ0FDVixVQUFVLDhEQUE4RCxHQUM3RSxDQUFDO2dCQUVGLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7YUFDOUI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQztBQUVELFNBQVMsbUJBQW1CLENBQUMsSUFBcUI7SUFDaEQsTUFBTSxJQUFJLEdBQVksMEJBQTBCLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDO0lBQy9ELE9BQU87UUFDTCxLQUFLLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTtRQUN0QixNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFO0tBQzVDLENBQUM7QUFDSixDQUFDO0FBRUQsU0FBUywwQkFBMEIsQ0FBQyxJQUFxQjtJQUN2RCxJQUFJLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUM7UUFDN0QsRUFBRSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ3pELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztLQUNsQjtTQUFNO1FBQ0wsT0FBTyxJQUFJLENBQUM7S0FDYjtBQUNILENBQUM7QUFFRCxTQUFTLG9CQUFvQixDQUFDLElBQXFCO0lBQ2pELE1BQU0sRUFBRSxHQUFHLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLE9BQU8sRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLDBCQUEwQixDQUFDLElBQXFCO0lBQ3ZELFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRTtRQUNqQixLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCO1lBQ2pDLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUI7WUFDcEMsT0FBTyxVQUFVLENBQUM7UUFDcEIsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLG1CQUFtQjtZQUNwQyxPQUFPLFVBQVUsQ0FBQztRQUNwQixLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsZUFBZTtZQUNoQyxPQUFPLE1BQU0sQ0FBQztRQUNoQjtZQUNFLE9BQU8sYUFBYSxDQUFDO0tBQ3hCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtFcnJvckNvZGUsIG5nRXJyb3JDb2RlfSBmcm9tICcuLi8uLi9kaWFnbm9zdGljcyc7XG5pbXBvcnQge0RlY2xhcmF0aW9uTm9kZX0gZnJvbSAnLi4vLi4vcmVmbGVjdGlvbic7XG5cbmltcG9ydCB7UmVmZXJlbmNlR3JhcGh9IGZyb20gJy4vcmVmZXJlbmNlX2dyYXBoJztcblxuLyoqXG4gKiBQcm9kdWNlIGB0cy5EaWFnbm9zdGljYHMgZm9yIGNsYXNzZXMgdGhhdCBhcmUgdmlzaWJsZSBmcm9tIGV4cG9ydGVkIHR5cGVzIChlLmcuIGRpcmVjdGl2ZXNcbiAqIGV4cG9zZWQgYnkgZXhwb3J0ZWQgYE5nTW9kdWxlYHMpIHRoYXQgYXJlIG5vdCB0aGVtc2VsdmVzIGV4cG9ydGVkLlxuICpcbiAqIFRoaXMgZnVuY3Rpb24gcmVjb25jaWxlcyB0d28gY29uY2VwdHM6XG4gKlxuICogQSBjbGFzcyBpcyBFeHBvcnRlZCBpZiBpdCdzIGV4cG9ydGVkIGZyb20gdGhlIG1haW4gbGlicmFyeSBgZW50cnlQb2ludGAgZmlsZS5cbiAqIEEgY2xhc3MgaXMgVmlzaWJsZSBpZiwgdmlhIEFuZ3VsYXIgc2VtYW50aWNzLCBhIGRvd25zdHJlYW0gY29uc3VtZXIgY2FuIGltcG9ydCBhbiBFeHBvcnRlZCBjbGFzc1xuICogYW5kIGJlIGFmZmVjdGVkIGJ5IHRoZSBjbGFzcyBpbiBxdWVzdGlvbi4gRm9yIGV4YW1wbGUsIGFuIEV4cG9ydGVkIE5nTW9kdWxlIG1heSBleHBvc2UgYVxuICogZGlyZWN0aXZlIGNsYXNzIHRvIGl0cyBjb25zdW1lcnMuIENvbnN1bWVycyB0aGF0IGltcG9ydCB0aGUgTmdNb2R1bGUgbWF5IGhhdmUgdGhlIGRpcmVjdGl2ZVxuICogYXBwbGllZCB0byBlbGVtZW50cyBpbiB0aGVpciB0ZW1wbGF0ZXMuIEluIHRoaXMgY2FzZSwgdGhlIGRpcmVjdGl2ZSBpcyBjb25zaWRlcmVkIFZpc2libGUuXG4gKlxuICogYGNoZWNrRm9yUHJpdmF0ZUV4cG9ydHNgIGF0dGVtcHRzIHRvIHZlcmlmeSB0aGF0IGFsbCBWaXNpYmxlIGNsYXNzZXMgYXJlIEV4cG9ydGVkLCBhbmQgcmVwb3J0XG4gKiBgdHMuRGlhZ25vc3RpY2BzIGZvciB0aG9zZSB0aGF0IGFyZW4ndC5cbiAqXG4gKiBAcGFyYW0gZW50cnlQb2ludCBgdHMuU291cmNlRmlsZWAgb2YgdGhlIGxpYnJhcnkncyBlbnRyeXBvaW50LCB3aGljaCBzaG91bGQgZXhwb3J0IHRoZSBsaWJyYXJ5J3NcbiAqIHB1YmxpYyBBUEkuXG4gKiBAcGFyYW0gY2hlY2tlciBgdHMuVHlwZUNoZWNrZXJgIGZvciB0aGUgY3VycmVudCBwcm9ncmFtLlxuICogQHBhcmFtIHJlZkdyYXBoIGBSZWZlcmVuY2VHcmFwaGAgdHJhY2tpbmcgdGhlIHZpc2liaWxpdHkgb2YgQW5ndWxhciB0eXBlcy5cbiAqIEByZXR1cm5zIGFuIGFycmF5IG9mIGB0cy5EaWFnbm9zdGljYHMgcmVwcmVzZW50aW5nIGVycm9ycyB3aGVuIHZpc2libGUgY2xhc3NlcyBhcmUgbm90IGV4cG9ydGVkXG4gKiBwcm9wZXJseS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrRm9yUHJpdmF0ZUV4cG9ydHMoXG4gICAgZW50cnlQb2ludDogdHMuU291cmNlRmlsZSwgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsIHJlZkdyYXBoOiBSZWZlcmVuY2VHcmFwaCk6IHRzLkRpYWdub3N0aWNbXSB7XG4gIGNvbnN0IGRpYWdub3N0aWNzOiB0cy5EaWFnbm9zdGljW10gPSBbXTtcblxuICAvLyBGaXJzdGx5LCBjb21wdXRlIHRoZSBleHBvcnRzIG9mIHRoZSBlbnRyeSBwb2ludC4gVGhlc2UgYXJlIGFsbCB0aGUgRXhwb3J0ZWQgY2xhc3Nlcy5cbiAgY29uc3QgdG9wTGV2ZWxFeHBvcnRzID0gbmV3IFNldDxEZWNsYXJhdGlvbk5vZGU+KCk7XG5cbiAgLy8gRG8gdGhpcyB2aWEgYHRzLlR5cGVDaGVja2VyLmdldEV4cG9ydHNPZk1vZHVsZWAuXG4gIGNvbnN0IG1vZHVsZVN5bWJvbCA9IGNoZWNrZXIuZ2V0U3ltYm9sQXRMb2NhdGlvbihlbnRyeVBvaW50KTtcbiAgaWYgKG1vZHVsZVN5bWJvbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnRlcm5hbCBlcnJvcjogZmFpbGVkIHRvIGdldCBzeW1ib2wgZm9yIGVudHJ5cG9pbnRgKTtcbiAgfVxuICBjb25zdCBleHBvcnRlZFN5bWJvbHMgPSBjaGVja2VyLmdldEV4cG9ydHNPZk1vZHVsZShtb2R1bGVTeW1ib2wpO1xuXG4gIC8vIExvb3AgdGhyb3VnaCB0aGUgZXhwb3J0ZWQgc3ltYm9scywgZGUtYWxpYXMgaWYgbmVlZGVkLCBhbmQgYWRkIHRoZW0gdG8gYHRvcExldmVsRXhwb3J0c2AuXG4gIC8vIFRPRE8oYWx4aHViKTogdXNlIHByb3BlciBpdGVyYXRpb24gd2hlbiBidWlsZC5zaCBpcyByZW1vdmVkLiAoIzI3NzYyKVxuICBleHBvcnRlZFN5bWJvbHMuZm9yRWFjaChzeW1ib2wgPT4ge1xuICAgIGlmIChzeW1ib2wuZmxhZ3MgJiB0cy5TeW1ib2xGbGFncy5BbGlhcykge1xuICAgICAgc3ltYm9sID0gY2hlY2tlci5nZXRBbGlhc2VkU3ltYm9sKHN5bWJvbCk7XG4gICAgfVxuICAgIGNvbnN0IGRlY2wgPSBzeW1ib2wudmFsdWVEZWNsYXJhdGlvbjtcbiAgICBpZiAoZGVjbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0b3BMZXZlbEV4cG9ydHMuYWRkKGRlY2wpO1xuICAgIH1cbiAgfSk7XG5cbiAgLy8gTmV4dCwgZ28gdGhyb3VnaCBlYWNoIGV4cG9ydGVkIGNsYXNzIGFuZCBleHBhbmQgaXQgdG8gdGhlIHNldCBvZiBjbGFzc2VzIGl0IG1ha2VzIFZpc2libGUsXG4gIC8vIHVzaW5nIHRoZSBgUmVmZXJlbmNlR3JhcGhgLiBGb3IgZWFjaCBWaXNpYmxlIGNsYXNzLCB2ZXJpZnkgdGhhdCBpdCdzIGFsc28gRXhwb3J0ZWQsIGFuZCBxdWV1ZVxuICAvLyBhbiBlcnJvciBpZiBpdCBpc24ndC4gYGNoZWNrZWRTZXRgIGVuc3VyZXMgb25seSBvbmUgZXJyb3IgaXMgcXVldWVkIHBlciBjbGFzcy5cbiAgY29uc3QgY2hlY2tlZFNldCA9IG5ldyBTZXQ8RGVjbGFyYXRpb25Ob2RlPigpO1xuXG4gIC8vIExvb3AgdGhyb3VnaCBlYWNoIEV4cG9ydGVkIGNsYXNzLlxuICAvLyBUT0RPKGFseGh1Yik6IHVzZSBwcm9wZXIgaXRlcmF0aW9uIHdoZW4gdGhlIGxlZ2FjeSBidWlsZCBpcyByZW1vdmVkLiAoIzI3NzYyKVxuICB0b3BMZXZlbEV4cG9ydHMuZm9yRWFjaChtYWluRXhwb3J0ID0+IHtcbiAgICAvLyBMb29wIHRocm91Z2ggZWFjaCBjbGFzcyBtYWRlIFZpc2libGUgYnkgdGhlIEV4cG9ydGVkIGNsYXNzLlxuICAgIHJlZkdyYXBoLnRyYW5zaXRpdmVSZWZlcmVuY2VzT2YobWFpbkV4cG9ydCkuZm9yRWFjaCh0cmFuc2l0aXZlUmVmZXJlbmNlID0+IHtcbiAgICAgIC8vIFNraXAgY2xhc3NlcyB3aGljaCBoYXZlIGFscmVhZHkgYmVlbiBjaGVja2VkLlxuICAgICAgaWYgKGNoZWNrZWRTZXQuaGFzKHRyYW5zaXRpdmVSZWZlcmVuY2UpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNoZWNrZWRTZXQuYWRkKHRyYW5zaXRpdmVSZWZlcmVuY2UpO1xuXG4gICAgICAvLyBWZXJpZnkgdGhhdCB0aGUgVmlzaWJsZSBjbGFzcyBpcyBhbHNvIEV4cG9ydGVkLlxuICAgICAgaWYgKCF0b3BMZXZlbEV4cG9ydHMuaGFzKHRyYW5zaXRpdmVSZWZlcmVuY2UpKSB7XG4gICAgICAgIC8vIFRoaXMgaXMgYW4gZXJyb3IsIGBtYWluRXhwb3J0YCBtYWtlcyBgdHJhbnNpdGl2ZVJlZmVyZW5jZWAgVmlzaWJsZSwgYnV0XG4gICAgICAgIC8vIGB0cmFuc2l0aXZlUmVmZXJlbmNlYCBpcyBub3QgRXhwb3J0ZWQgZnJvbSB0aGUgZW50cnlwb2ludC4gQ29uc3RydWN0IGEgZGlhZ25vc3RpYyB0b1xuICAgICAgICAvLyBnaXZlIHRvIHRoZSB1c2VyIGV4cGxhaW5pbmcgdGhlIHNpdHVhdGlvbi5cblxuICAgICAgICBjb25zdCBkZXNjcmlwdG9yID0gZ2V0RGVzY3JpcHRvck9mRGVjbGFyYXRpb24odHJhbnNpdGl2ZVJlZmVyZW5jZSk7XG4gICAgICAgIGNvbnN0IG5hbWUgPSBnZXROYW1lT2ZEZWNsYXJhdGlvbih0cmFuc2l0aXZlUmVmZXJlbmNlKTtcblxuICAgICAgICAvLyBDb25zdHJ1Y3QgdGhlIHBhdGggb2YgdmlzaWJpbGl0eSwgZnJvbSBgbWFpbkV4cG9ydGAgdG8gYHRyYW5zaXRpdmVSZWZlcmVuY2VgLlxuICAgICAgICBsZXQgdmlzaWJsZVZpYSA9ICdOZ01vZHVsZSBleHBvcnRzJztcbiAgICAgICAgY29uc3QgdHJhbnNpdGl2ZVBhdGggPSByZWZHcmFwaC5wYXRoRnJvbShtYWluRXhwb3J0LCB0cmFuc2l0aXZlUmVmZXJlbmNlKTtcbiAgICAgICAgaWYgKHRyYW5zaXRpdmVQYXRoICE9PSBudWxsKSB7XG4gICAgICAgICAgdmlzaWJsZVZpYSA9IHRyYW5zaXRpdmVQYXRoLm1hcChzZWcgPT4gZ2V0TmFtZU9mRGVjbGFyYXRpb24oc2VnKSkuam9pbignIC0+ICcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGlhZ25vc3RpYzogdHMuRGlhZ25vc3RpYyA9IHtcbiAgICAgICAgICBjYXRlZ29yeTogdHMuRGlhZ25vc3RpY0NhdGVnb3J5LkVycm9yLFxuICAgICAgICAgIGNvZGU6IG5nRXJyb3JDb2RlKEVycm9yQ29kZS5TWU1CT0xfTk9UX0VYUE9SVEVEKSxcbiAgICAgICAgICBmaWxlOiB0cmFuc2l0aXZlUmVmZXJlbmNlLmdldFNvdXJjZUZpbGUoKSxcbiAgICAgICAgICAuLi5nZXRQb3NPZkRlY2xhcmF0aW9uKHRyYW5zaXRpdmVSZWZlcmVuY2UpLFxuICAgICAgICAgIG1lc3NhZ2VUZXh0OiBgVW5zdXBwb3J0ZWQgcHJpdmF0ZSAke2Rlc2NyaXB0b3J9ICR7bmFtZX0uIFRoaXMgJHtcbiAgICAgICAgICAgICAgZGVzY3JpcHRvcn0gaXMgdmlzaWJsZSB0byBjb25zdW1lcnMgdmlhICR7XG4gICAgICAgICAgICAgIHZpc2libGVWaWF9LCBidXQgaXMgbm90IGV4cG9ydGVkIGZyb20gdGhlIHRvcC1sZXZlbCBsaWJyYXJ5IGVudHJ5cG9pbnQuYCxcbiAgICAgICAgfTtcblxuICAgICAgICBkaWFnbm9zdGljcy5wdXNoKGRpYWdub3N0aWMpO1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcblxuICByZXR1cm4gZGlhZ25vc3RpY3M7XG59XG5cbmZ1bmN0aW9uIGdldFBvc09mRGVjbGFyYXRpb24oZGVjbDogRGVjbGFyYXRpb25Ob2RlKToge3N0YXJ0OiBudW1iZXIsIGxlbmd0aDogbnVtYmVyfSB7XG4gIGNvbnN0IG5vZGU6IHRzLk5vZGUgPSBnZXRJZGVudGlmaWVyT2ZEZWNsYXJhdGlvbihkZWNsKSB8fCBkZWNsO1xuICByZXR1cm4ge1xuICAgIHN0YXJ0OiBub2RlLmdldFN0YXJ0KCksXG4gICAgbGVuZ3RoOiBub2RlLmdldEVuZCgpICsgMSAtIG5vZGUuZ2V0U3RhcnQoKSxcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0SWRlbnRpZmllck9mRGVjbGFyYXRpb24oZGVjbDogRGVjbGFyYXRpb25Ob2RlKTogdHMuSWRlbnRpZmllcnxudWxsIHtcbiAgaWYgKCh0cy5pc0NsYXNzRGVjbGFyYXRpb24oZGVjbCkgfHwgdHMuaXNWYXJpYWJsZURlY2xhcmF0aW9uKGRlY2wpIHx8XG4gICAgICAgdHMuaXNGdW5jdGlvbkRlY2xhcmF0aW9uKGRlY2wpKSAmJlxuICAgICAgZGVjbC5uYW1lICE9PSB1bmRlZmluZWQgJiYgdHMuaXNJZGVudGlmaWVyKGRlY2wubmFtZSkpIHtcbiAgICByZXR1cm4gZGVjbC5uYW1lO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldE5hbWVPZkRlY2xhcmF0aW9uKGRlY2w6IERlY2xhcmF0aW9uTm9kZSk6IHN0cmluZyB7XG4gIGNvbnN0IGlkID0gZ2V0SWRlbnRpZmllck9mRGVjbGFyYXRpb24oZGVjbCk7XG4gIHJldHVybiBpZCAhPT0gbnVsbCA/IGlkLnRleHQgOiAnKHVubmFtZWQpJztcbn1cblxuZnVuY3Rpb24gZ2V0RGVzY3JpcHRvck9mRGVjbGFyYXRpb24oZGVjbDogRGVjbGFyYXRpb25Ob2RlKTogc3RyaW5nIHtcbiAgc3dpdGNoIChkZWNsLmtpbmQpIHtcbiAgICBjYXNlIHRzLlN5bnRheEtpbmQuQ2xhc3NEZWNsYXJhdGlvbjpcbiAgICAgIHJldHVybiAnY2xhc3MnO1xuICAgIGNhc2UgdHMuU3ludGF4S2luZC5GdW5jdGlvbkRlY2xhcmF0aW9uOlxuICAgICAgcmV0dXJuICdmdW5jdGlvbic7XG4gICAgY2FzZSB0cy5TeW50YXhLaW5kLlZhcmlhYmxlRGVjbGFyYXRpb246XG4gICAgICByZXR1cm4gJ3ZhcmlhYmxlJztcbiAgICBjYXNlIHRzLlN5bnRheEtpbmQuRW51bURlY2xhcmF0aW9uOlxuICAgICAgcmV0dXJuICdlbnVtJztcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuICdkZWNsYXJhdGlvbic7XG4gIH1cbn1cbiJdfQ==
@@ -1,73 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export class ReferenceGraph {
9
- constructor() {
10
- this.references = new Map();
11
- }
12
- add(from, to) {
13
- if (!this.references.has(from)) {
14
- this.references.set(from, new Set());
15
- }
16
- this.references.get(from).add(to);
17
- }
18
- transitiveReferencesOf(target) {
19
- const set = new Set();
20
- this.collectTransitiveReferences(set, target);
21
- return set;
22
- }
23
- pathFrom(source, target) {
24
- return this.collectPathFrom(source, target, new Set());
25
- }
26
- collectPathFrom(source, target, seen) {
27
- if (source === target) {
28
- // Looking for a path from the target to itself - that path is just the target. This is the
29
- // "base case" of the search.
30
- return [target];
31
- }
32
- else if (seen.has(source)) {
33
- // The search has already looked through this source before.
34
- return null;
35
- }
36
- // Consider outgoing edges from `source`.
37
- seen.add(source);
38
- if (!this.references.has(source)) {
39
- // There are no outgoing edges from `source`.
40
- return null;
41
- }
42
- else {
43
- // Look through the outgoing edges of `source`.
44
- // TODO(alxhub): use proper iteration when the legacy build is removed. (#27762)
45
- let candidatePath = null;
46
- this.references.get(source).forEach(edge => {
47
- // Early exit if a path has already been found.
48
- if (candidatePath !== null) {
49
- return;
50
- }
51
- // Look for a path from this outgoing edge to `target`.
52
- const partialPath = this.collectPathFrom(edge, target, seen);
53
- if (partialPath !== null) {
54
- // A path exists from `edge` to `target`. Insert `source` at the beginning.
55
- candidatePath = [source, ...partialPath];
56
- }
57
- });
58
- return candidatePath;
59
- }
60
- }
61
- collectTransitiveReferences(set, decl) {
62
- if (this.references.has(decl)) {
63
- // TODO(alxhub): use proper iteration when the legacy build is removed. (#27762)
64
- this.references.get(decl).forEach(ref => {
65
- if (!set.has(ref)) {
66
- set.add(ref);
67
- this.collectTransitiveReferences(set, ref);
68
- }
69
- });
70
- }
71
- }
72
- }
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlX2dyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9lbnRyeV9wb2ludC9zcmMvcmVmZXJlbmNlX2dyYXBoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUlILE1BQU0sT0FBTyxjQUFjO0lBQTNCO1FBQ1UsZUFBVSxHQUFHLElBQUksR0FBRyxFQUFhLENBQUM7SUFrRTVDLENBQUM7SUFoRUMsR0FBRyxDQUFDLElBQU8sRUFBRSxFQUFLO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM5QixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1NBQ3RDO1FBQ0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxNQUFTO1FBQzlCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxFQUFLLENBQUM7UUFDekIsSUFBSSxDQUFDLDJCQUEyQixDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM5QyxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBUyxFQUFFLE1BQVM7UUFDM0IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxlQUFlLENBQUMsTUFBUyxFQUFFLE1BQVMsRUFBRSxJQUFZO1FBQ3hELElBQUksTUFBTSxLQUFLLE1BQU0sRUFBRTtZQUNyQiwyRkFBMkY7WUFDM0YsNkJBQTZCO1lBQzdCLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUNqQjthQUFNLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUMzQiw0REFBNEQ7WUFDNUQsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELHlDQUF5QztRQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNoQyw2Q0FBNkM7WUFDN0MsT0FBTyxJQUFJLENBQUM7U0FDYjthQUFNO1lBQ0wsK0NBQStDO1lBQy9DLGdGQUFnRjtZQUNoRixJQUFJLGFBQWEsR0FBYSxJQUFJLENBQUM7WUFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUMxQywrQ0FBK0M7Z0JBQy9DLElBQUksYUFBYSxLQUFLLElBQUksRUFBRTtvQkFDMUIsT0FBTztpQkFDUjtnQkFDRCx1REFBdUQ7Z0JBQ3ZELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDN0QsSUFBSSxXQUFXLEtBQUssSUFBSSxFQUFFO29CQUN4QiwyRUFBMkU7b0JBQzNFLGFBQWEsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHLFdBQVcsQ0FBQyxDQUFDO2lCQUMxQztZQUNILENBQUMsQ0FBQyxDQUFDO1lBRUgsT0FBTyxhQUFhLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRU8sMkJBQTJCLENBQUMsR0FBVyxFQUFFLElBQU87UUFDdEQsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM3QixnRkFBZ0Y7WUFDaEYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN2QyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtvQkFDakIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztvQkFDYixJQUFJLENBQUMsMkJBQTJCLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2lCQUM1QztZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtEZWNsYXJhdGlvbk5vZGV9IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgUmVmZXJlbmNlR3JhcGg8VCA9IERlY2xhcmF0aW9uTm9kZT4ge1xuICBwcml2YXRlIHJlZmVyZW5jZXMgPSBuZXcgTWFwPFQsIFNldDxUPj4oKTtcblxuICBhZGQoZnJvbTogVCwgdG86IFQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcy5oYXMoZnJvbSkpIHtcbiAgICAgIHRoaXMucmVmZXJlbmNlcy5zZXQoZnJvbSwgbmV3IFNldCgpKTtcbiAgICB9XG4gICAgdGhpcy5yZWZlcmVuY2VzLmdldChmcm9tKSEuYWRkKHRvKTtcbiAgfVxuXG4gIHRyYW5zaXRpdmVSZWZlcmVuY2VzT2YodGFyZ2V0OiBUKTogU2V0PFQ+IHtcbiAgICBjb25zdCBzZXQgPSBuZXcgU2V0PFQ+KCk7XG4gICAgdGhpcy5jb2xsZWN0VHJhbnNpdGl2ZVJlZmVyZW5jZXMoc2V0LCB0YXJnZXQpO1xuICAgIHJldHVybiBzZXQ7XG4gIH1cblxuICBwYXRoRnJvbShzb3VyY2U6IFQsIHRhcmdldDogVCk6IFRbXXxudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jb2xsZWN0UGF0aEZyb20oc291cmNlLCB0YXJnZXQsIG5ldyBTZXQoKSk7XG4gIH1cblxuICBwcml2YXRlIGNvbGxlY3RQYXRoRnJvbShzb3VyY2U6IFQsIHRhcmdldDogVCwgc2VlbjogU2V0PFQ+KTogVFtdfG51bGwge1xuICAgIGlmIChzb3VyY2UgPT09IHRhcmdldCkge1xuICAgICAgLy8gTG9va2luZyBmb3IgYSBwYXRoIGZyb20gdGhlIHRhcmdldCB0byBpdHNlbGYgLSB0aGF0IHBhdGggaXMganVzdCB0aGUgdGFyZ2V0LiBUaGlzIGlzIHRoZVxuICAgICAgLy8gXCJiYXNlIGNhc2VcIiBvZiB0aGUgc2VhcmNoLlxuICAgICAgcmV0dXJuIFt0YXJnZXRdO1xuICAgIH0gZWxzZSBpZiAoc2Vlbi5oYXMoc291cmNlKSkge1xuICAgICAgLy8gVGhlIHNlYXJjaCBoYXMgYWxyZWFkeSBsb29rZWQgdGhyb3VnaCB0aGlzIHNvdXJjZSBiZWZvcmUuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgLy8gQ29uc2lkZXIgb3V0Z29pbmcgZWRnZXMgZnJvbSBgc291cmNlYC5cbiAgICBzZWVuLmFkZChzb3VyY2UpO1xuXG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMuaGFzKHNvdXJjZSkpIHtcbiAgICAgIC8vIFRoZXJlIGFyZSBubyBvdXRnb2luZyBlZGdlcyBmcm9tIGBzb3VyY2VgLlxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIExvb2sgdGhyb3VnaCB0aGUgb3V0Z29pbmcgZWRnZXMgb2YgYHNvdXJjZWAuXG4gICAgICAvLyBUT0RPKGFseGh1Yik6IHVzZSBwcm9wZXIgaXRlcmF0aW9uIHdoZW4gdGhlIGxlZ2FjeSBidWlsZCBpcyByZW1vdmVkLiAoIzI3NzYyKVxuICAgICAgbGV0IGNhbmRpZGF0ZVBhdGg6IFRbXXxudWxsID0gbnVsbDtcbiAgICAgIHRoaXMucmVmZXJlbmNlcy5nZXQoc291cmNlKSEuZm9yRWFjaChlZGdlID0+IHtcbiAgICAgICAgLy8gRWFybHkgZXhpdCBpZiBhIHBhdGggaGFzIGFscmVhZHkgYmVlbiBmb3VuZC5cbiAgICAgICAgaWYgKGNhbmRpZGF0ZVBhdGggIT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgLy8gTG9vayBmb3IgYSBwYXRoIGZyb20gdGhpcyBvdXRnb2luZyBlZGdlIHRvIGB0YXJnZXRgLlxuICAgICAgICBjb25zdCBwYXJ0aWFsUGF0aCA9IHRoaXMuY29sbGVjdFBhdGhGcm9tKGVkZ2UsIHRhcmdldCwgc2Vlbik7XG4gICAgICAgIGlmIChwYXJ0aWFsUGF0aCAhPT0gbnVsbCkge1xuICAgICAgICAgIC8vIEEgcGF0aCBleGlzdHMgZnJvbSBgZWRnZWAgdG8gYHRhcmdldGAuIEluc2VydCBgc291cmNlYCBhdCB0aGUgYmVnaW5uaW5nLlxuICAgICAgICAgIGNhbmRpZGF0ZVBhdGggPSBbc291cmNlLCAuLi5wYXJ0aWFsUGF0aF07XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gY2FuZGlkYXRlUGF0aDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbGxlY3RUcmFuc2l0aXZlUmVmZXJlbmNlcyhzZXQ6IFNldDxUPiwgZGVjbDogVCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlZmVyZW5jZXMuaGFzKGRlY2wpKSB7XG4gICAgICAvLyBUT0RPKGFseGh1Yik6IHVzZSBwcm9wZXIgaXRlcmF0aW9uIHdoZW4gdGhlIGxlZ2FjeSBidWlsZCBpcyByZW1vdmVkLiAoIzI3NzYyKVxuICAgICAgdGhpcy5yZWZlcmVuY2VzLmdldChkZWNsKSEuZm9yRWFjaChyZWYgPT4ge1xuICAgICAgICBpZiAoIXNldC5oYXMocmVmKSkge1xuICAgICAgICAgIHNldC5hZGQocmVmKTtcbiAgICAgICAgICB0aGlzLmNvbGxlY3RUcmFuc2l0aXZlUmVmZXJlbmNlcyhzZXQsIHJlZik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
File without changes
@@ -1,13 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export { NgtscCompilerHost } from './src/compiler_host';
9
- export { absoluteFrom, absoluteFromSourceFile, basename, dirname, getFileSystem, isLocalRelativePath, isRoot, isRooted, join, relative, relativeFrom, resolve, setFileSystem, toRelativeImport } from './src/helpers';
10
- export { LogicalFileSystem, LogicalProjectPath } from './src/logical';
11
- export { NodeJSFileSystem } from './src/node_js_file_system';
12
- export { getSourceFileOrError } from './src/util';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2ZpbGVfc3lzdGVtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUNILE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3BOLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwyQkFBMkIsQ0FBQztBQUUzRCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxZQUFZLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmV4cG9ydCB7Tmd0c2NDb21waWxlckhvc3R9IGZyb20gJy4vc3JjL2NvbXBpbGVyX2hvc3QnO1xuZXhwb3J0IHthYnNvbHV0ZUZyb20sIGFic29sdXRlRnJvbVNvdXJjZUZpbGUsIGJhc2VuYW1lLCBkaXJuYW1lLCBnZXRGaWxlU3lzdGVtLCBpc0xvY2FsUmVsYXRpdmVQYXRoLCBpc1Jvb3QsIGlzUm9vdGVkLCBqb2luLCByZWxhdGl2ZSwgcmVsYXRpdmVGcm9tLCByZXNvbHZlLCBzZXRGaWxlU3lzdGVtLCB0b1JlbGF0aXZlSW1wb3J0fSBmcm9tICcuL3NyYy9oZWxwZXJzJztcbmV4cG9ydCB7TG9naWNhbEZpbGVTeXN0ZW0sIExvZ2ljYWxQcm9qZWN0UGF0aH0gZnJvbSAnLi9zcmMvbG9naWNhbCc7XG5leHBvcnQge05vZGVKU0ZpbGVTeXN0ZW19IGZyb20gJy4vc3JjL25vZGVfanNfZmlsZV9zeXN0ZW0nO1xuZXhwb3J0IHtBYnNvbHV0ZUZzUGF0aCwgRmlsZVN0YXRzLCBGaWxlU3lzdGVtLCBQYXRoTWFuaXB1bGF0aW9uLCBQYXRoU2VnbWVudCwgUGF0aFN0cmluZywgUmVhZG9ubHlGaWxlU3lzdGVtfSBmcm9tICcuL3NyYy90eXBlcyc7XG5leHBvcnQge2dldFNvdXJjZUZpbGVPckVycm9yfSBmcm9tICcuL3NyYy91dGlsJztcbiJdfQ==