@angular/compiler-cli 9.1.0 → 9.1.4

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 (246) hide show
  1. package/ngcc/index.d.ts +3 -4
  2. package/ngcc/index.js +2 -3
  3. package/ngcc/main-ngcc.js +10 -114
  4. package/ngcc/src/analysis/decoration_analyzer.js +14 -6
  5. package/ngcc/src/analysis/module_with_providers_analyzer.js +5 -5
  6. package/ngcc/src/analysis/ngcc_references_registry.js +4 -2
  7. package/ngcc/src/analysis/ngcc_trait_compiler.js +7 -3
  8. package/ngcc/src/analysis/private_declarations_analyzer.js +1 -1
  9. package/ngcc/src/analysis/util.js +3 -2
  10. package/ngcc/src/command_line_options.d.ts +4 -0
  11. package/ngcc/src/command_line_options.js +134 -0
  12. package/ngcc/src/dependencies/commonjs_dependency_host.js +4 -2
  13. package/ngcc/src/dependencies/dependency_host.d.ts +5 -0
  14. package/ngcc/src/dependencies/dependency_host.js +1 -1
  15. package/ngcc/src/dependencies/dependency_resolver.d.ts +3 -3
  16. package/ngcc/src/dependencies/dependency_resolver.js +17 -14
  17. package/ngcc/src/dependencies/dts_dependency_host.d.ts +1 -1
  18. package/ngcc/src/dependencies/dts_dependency_host.js +1 -1
  19. package/ngcc/src/dependencies/module_resolver.d.ts +1 -1
  20. package/ngcc/src/dependencies/module_resolver.js +1 -1
  21. package/ngcc/src/dependencies/umd_dependency_host.js +4 -2
  22. package/ngcc/src/entry_point_finder/directory_walker_entry_point_finder.d.ts +21 -15
  23. package/ngcc/src/entry_point_finder/directory_walker_entry_point_finder.js +118 -101
  24. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.d.ts +1 -1
  25. package/ngcc/src/entry_point_finder/targeted_entry_point_finder.js +41 -19
  26. package/ngcc/src/entry_point_finder/utils.d.ts +11 -2
  27. package/ngcc/src/entry_point_finder/utils.js +39 -6
  28. package/ngcc/src/execution/analyze_entry_points.d.ts +10 -0
  29. package/ngcc/src/execution/analyze_entry_points.js +187 -0
  30. package/ngcc/src/execution/cluster/api.js +1 -1
  31. package/ngcc/src/execution/cluster/executor.d.ts +5 -3
  32. package/ngcc/src/execution/cluster/executor.js +10 -28
  33. package/ngcc/src/execution/cluster/master.d.ts +4 -2
  34. package/ngcc/src/execution/cluster/master.js +11 -9
  35. package/ngcc/src/execution/cluster/package_json_updater.d.ts +7 -4
  36. package/ngcc/src/execution/cluster/package_json_updater.js +15 -16
  37. package/ngcc/src/execution/cluster/utils.js +1 -1
  38. package/ngcc/src/execution/cluster/worker.d.ts +1 -10
  39. package/ngcc/src/execution/cluster/worker.js +68 -40
  40. package/ngcc/src/execution/create_compile_function.d.ts +11 -0
  41. package/ngcc/src/execution/create_compile_function.js +74 -0
  42. package/ngcc/src/execution/single_process_executor.js +1 -1
  43. package/ngcc/src/execution/tasks/api.js +1 -1
  44. package/ngcc/src/execution/tasks/completion.js +1 -1
  45. package/ngcc/src/execution/tasks/queues/base_task_queue.js +1 -1
  46. package/ngcc/src/execution/tasks/queues/parallel_task_queue.js +1 -1
  47. package/ngcc/src/execution/tasks/utils.js +2 -4
  48. package/ngcc/src/host/commonjs_host.js +6 -3
  49. package/ngcc/src/host/commonjs_umd_utils.js +1 -1
  50. package/ngcc/src/host/delegating_host.d.ts +3 -0
  51. package/ngcc/src/host/delegating_host.js +11 -3
  52. package/ngcc/src/host/esm2015_host.d.ts +66 -2
  53. package/ngcc/src/host/esm2015_host.js +226 -22
  54. package/ngcc/src/host/esm5_host.d.ts +8 -4
  55. package/ngcc/src/host/esm5_host.js +29 -21
  56. package/ngcc/src/host/ngcc_host.d.ts +9 -1
  57. package/ngcc/src/host/ngcc_host.js +1 -1
  58. package/ngcc/src/host/umd_host.d.ts +2 -1
  59. package/ngcc/src/host/umd_host.js +16 -6
  60. package/{src/transformers/nocollapse_hack.d.ts → ngcc/src/host/utils.d.ts} +3 -2
  61. package/ngcc/src/host/utils.js +25 -0
  62. package/ngcc/src/locking/async_locker.js +3 -2
  63. package/ngcc/src/locking/lock_file_with_child_process/index.js +10 -9
  64. package/ngcc/src/locking/lock_file_with_child_process/unlocker.js +4 -2
  65. package/ngcc/src/locking/sync_locker.js +1 -1
  66. package/ngcc/src/logging/console_logger.d.ts +1 -1
  67. package/ngcc/src/logging/console_logger.js +1 -1
  68. package/ngcc/src/main.d.ts +1 -109
  69. package/ngcc/src/main.js +19 -257
  70. package/ngcc/src/migrations/missing_injectable_migration.js +1 -1
  71. package/ngcc/src/migrations/utils.js +3 -2
  72. package/ngcc/src/ngcc_options.d.ts +142 -0
  73. package/ngcc/src/ngcc_options.js +74 -0
  74. package/ngcc/src/packages/build_marker.d.ts +1 -1
  75. package/ngcc/src/packages/build_marker.js +1 -1
  76. package/ngcc/src/packages/bundle_program.d.ts +7 -7
  77. package/ngcc/src/packages/bundle_program.js +1 -1
  78. package/ngcc/src/packages/configuration.js +7 -7
  79. package/ngcc/src/packages/entry_point.d.ts +7 -5
  80. package/ngcc/src/packages/entry_point.js +31 -14
  81. package/ngcc/src/packages/entry_point_bundle.d.ts +1 -1
  82. package/ngcc/src/packages/entry_point_bundle.js +7 -2
  83. package/ngcc/src/packages/entry_point_manifest.d.ts +9 -8
  84. package/ngcc/src/packages/entry_point_manifest.js +44 -9
  85. package/ngcc/src/packages/patch_ts_expando_initializer.js +37 -21
  86. package/ngcc/src/packages/transformer.js +8 -3
  87. package/ngcc/src/rendering/commonjs_rendering_formatter.d.ts +1 -1
  88. package/ngcc/src/rendering/commonjs_rendering_formatter.js +1 -1
  89. package/ngcc/src/rendering/dts_renderer.d.ts +4 -4
  90. package/ngcc/src/rendering/dts_renderer.js +3 -3
  91. package/ngcc/src/rendering/esm5_rendering_formatter.js +1 -1
  92. package/ngcc/src/rendering/esm_rendering_formatter.d.ts +3 -3
  93. package/ngcc/src/rendering/esm_rendering_formatter.js +3 -3
  94. package/ngcc/src/rendering/renderer.d.ts +2 -2
  95. package/ngcc/src/rendering/renderer.js +4 -2
  96. package/ngcc/src/rendering/rendering_formatter.d.ts +1 -1
  97. package/ngcc/src/rendering/rendering_formatter.js +1 -1
  98. package/ngcc/src/rendering/source_maps.d.ts +1 -1
  99. package/ngcc/src/rendering/source_maps.js +2 -2
  100. package/ngcc/src/rendering/umd_rendering_formatter.d.ts +2 -2
  101. package/ngcc/src/rendering/umd_rendering_formatter.js +1 -1
  102. package/ngcc/src/rendering/utils.js +1 -1
  103. package/ngcc/src/sourcemaps/segment_marker.d.ts +5 -5
  104. package/ngcc/src/sourcemaps/segment_marker.js +1 -1
  105. package/ngcc/src/sourcemaps/source_file.js +3 -2
  106. package/ngcc/src/sourcemaps/source_file_loader.d.ts +33 -10
  107. package/ngcc/src/sourcemaps/source_file_loader.js +60 -31
  108. package/ngcc/src/utils.d.ts +2 -7
  109. package/ngcc/src/utils.js +7 -4
  110. package/ngcc/src/writing/cleaning/cleaning_strategies.d.ts +2 -2
  111. package/ngcc/src/writing/cleaning/cleaning_strategies.js +4 -2
  112. package/ngcc/src/writing/in_place_file_writer.js +1 -1
  113. package/ngcc/src/writing/new_entry_point_file_writer.js +1 -1
  114. package/ngcc/src/writing/package_json_updater.js +1 -1
  115. package/package.json +2 -2
  116. package/src/diagnostics/translate_diagnostics.js +3 -2
  117. package/src/language_services.d.ts +1 -1
  118. package/src/language_services.js +1 -1
  119. package/src/main.js +9 -4
  120. package/src/metadata/bundle_index_host.js +1 -1
  121. package/src/metadata/bundler.js +6 -3
  122. package/src/metadata/collector.js +13 -9
  123. package/src/metadata/evaluator.js +4 -3
  124. package/src/metadata/schema.js +1 -1
  125. package/src/metadata/symbols.js +7 -3
  126. package/src/ngtsc/annotations/src/component.d.ts +1 -1
  127. package/src/ngtsc/annotations/src/component.js +7 -4
  128. package/src/ngtsc/annotations/src/diagnostics.js +4 -2
  129. package/src/ngtsc/annotations/src/directive.js +54 -38
  130. package/src/ngtsc/annotations/src/factory.js +1 -1
  131. package/src/ngtsc/annotations/src/injectable.js +6 -3
  132. package/src/ngtsc/annotations/src/metadata.js +1 -1
  133. package/src/ngtsc/annotations/src/ng_module.js +8 -5
  134. package/src/ngtsc/annotations/src/pipe.js +3 -2
  135. package/src/ngtsc/annotations/src/util.d.ts +3 -1
  136. package/src/ngtsc/annotations/src/util.js +39 -9
  137. package/src/ngtsc/core/api/src/interfaces.js +1 -1
  138. package/src/ngtsc/core/api/src/options.d.ts +2 -1
  139. package/src/ngtsc/core/api/src/options.js +1 -1
  140. package/src/ngtsc/core/src/compiler.js +19 -6
  141. package/src/ngtsc/core/src/host.js +1 -1
  142. package/src/ngtsc/cycles/src/imports.js +4 -2
  143. package/src/ngtsc/diagnostics/src/error.js +3 -2
  144. package/src/ngtsc/entry_point/src/generator.js +4 -2
  145. package/src/ngtsc/entry_point/src/private_export_checker.js +1 -1
  146. package/src/ngtsc/entry_point/src/reference_graph.js +1 -1
  147. package/src/ngtsc/file_system/index.d.ts +1 -2
  148. package/src/ngtsc/file_system/index.js +3 -4
  149. package/src/ngtsc/file_system/src/compiler_host.js +10 -4
  150. package/src/ngtsc/file_system/src/helpers.d.ts +6 -2
  151. package/src/ngtsc/file_system/src/helpers.js +10 -3
  152. package/src/ngtsc/file_system/src/invalid_file_system.js +73 -25
  153. package/src/ngtsc/file_system/src/logical.js +1 -1
  154. package/src/ngtsc/file_system/src/node_js_file_system.js +52 -18
  155. package/src/ngtsc/file_system/src/types.js +1 -1
  156. package/src/ngtsc/file_system/src/util.js +1 -1
  157. package/src/ngtsc/imports/index.d.ts +1 -1
  158. package/src/ngtsc/imports/index.js +1 -1
  159. package/src/ngtsc/imports/src/alias.js +4 -2
  160. package/src/ngtsc/imports/src/core.js +13 -5
  161. package/src/ngtsc/imports/src/default.d.ts +6 -6
  162. package/src/ngtsc/imports/src/default.js +10 -8
  163. package/src/ngtsc/imports/src/emitter.js +1 -1
  164. package/src/ngtsc/imports/src/references.js +10 -4
  165. package/src/ngtsc/incremental/api.js +1 -1
  166. package/src/ngtsc/incremental/src/dependency_tracking.js +4 -2
  167. package/src/ngtsc/incremental/src/state.js +7 -3
  168. package/src/ngtsc/indexer/src/api.js +1 -1
  169. package/src/ngtsc/indexer/src/context.js +4 -2
  170. package/src/ngtsc/indexer/src/template.js +17 -7
  171. package/src/ngtsc/metadata/src/dts.js +1 -1
  172. package/src/ngtsc/metadata/src/inheritance.js +1 -1
  173. package/src/ngtsc/metadata/src/registry.js +13 -5
  174. package/src/ngtsc/metadata/src/util.js +1 -1
  175. package/src/ngtsc/modulewithproviders/src/scanner.js +1 -1
  176. package/src/ngtsc/partial_evaluator/src/builtin.js +1 -1
  177. package/src/ngtsc/partial_evaluator/src/interface.js +3 -2
  178. package/src/ngtsc/partial_evaluator/src/interpreter.d.ts +1 -0
  179. package/src/ngtsc/partial_evaluator/src/interpreter.js +43 -20
  180. package/src/ngtsc/partial_evaluator/src/result.d.ts +2 -2
  181. package/src/ngtsc/partial_evaluator/src/result.js +4 -2
  182. package/src/ngtsc/perf/src/noop.js +4 -2
  183. package/src/ngtsc/perf/src/tracking.js +7 -3
  184. package/src/ngtsc/program.js +10 -15
  185. package/src/ngtsc/reflection/src/host.d.ts +45 -1
  186. package/src/ngtsc/reflection/src/host.js +1 -1
  187. package/src/ngtsc/reflection/src/type_to_value.js +88 -72
  188. package/src/ngtsc/reflection/src/typescript.js +31 -11
  189. package/src/ngtsc/resource/src/loader.js +1 -1
  190. package/src/ngtsc/routing/src/analyzer.js +6 -2
  191. package/src/ngtsc/routing/src/lazy.js +4 -2
  192. package/src/ngtsc/routing/src/route.js +7 -3
  193. package/src/ngtsc/scope/src/dependency.js +1 -1
  194. package/src/ngtsc/scope/src/local.js +9 -6
  195. package/src/ngtsc/shims/src/factory_generator.js +11 -7
  196. package/src/ngtsc/shims/src/factory_tracker.js +1 -1
  197. package/src/ngtsc/shims/src/summary_generator.js +7 -3
  198. package/src/ngtsc/shims/src/typecheck_shim.js +4 -2
  199. package/src/ngtsc/switch/src/switch.js +1 -1
  200. package/src/ngtsc/transform/src/alias.js +1 -1
  201. package/src/ngtsc/transform/src/compilation.js +10 -4
  202. package/src/ngtsc/transform/src/declaration.js +1 -1
  203. package/src/ngtsc/transform/src/trait.js +1 -1
  204. package/src/ngtsc/transform/src/transform.js +12 -3
  205. package/src/ngtsc/translator/src/translator.d.ts +1 -1
  206. package/src/ngtsc/translator/src/translator.js +17 -8
  207. package/src/ngtsc/tsc_plugin.js +10 -4
  208. package/src/ngtsc/typecheck/src/api.js +1 -1
  209. package/src/ngtsc/typecheck/src/context.js +7 -3
  210. package/src/ngtsc/typecheck/src/diagnostics.js +3 -2
  211. package/src/ngtsc/typecheck/src/dom.js +7 -5
  212. package/src/ngtsc/typecheck/src/environment.js +3 -2
  213. package/src/ngtsc/typecheck/src/expression.js +61 -21
  214. package/src/ngtsc/typecheck/src/host.js +13 -5
  215. package/src/ngtsc/typecheck/src/oob.js +6 -3
  216. package/src/ngtsc/typecheck/src/source.js +1 -1
  217. package/src/ngtsc/typecheck/src/type_check_block.d.ts +1 -1
  218. package/src/ngtsc/typecheck/src/type_check_block.js +10 -4
  219. package/src/ngtsc/typecheck/src/type_check_file.js +4 -2
  220. package/src/ngtsc/typecheck/src/type_constructor.js +3 -2
  221. package/src/ngtsc/typecheck/src/type_emitter.js +4 -2
  222. package/src/ngtsc/typecheck/src/type_parameter_emitter.js +1 -1
  223. package/src/ngtsc/util/src/ts_source_map_bug_29300.js +31 -11
  224. package/src/ngtsc/util/src/typescript.js +1 -1
  225. package/src/ngtsc/util/src/visitor.js +6 -3
  226. package/src/perform_compile.js +2 -6
  227. package/src/perform_watch.js +1 -1
  228. package/src/transformers/api.js +1 -1
  229. package/src/transformers/compiler_host.js +3 -2
  230. package/src/transformers/inline_resources.js +1 -1
  231. package/src/transformers/lower_expressions.js +12 -7
  232. package/src/transformers/node_emitter.d.ts +5 -1
  233. package/src/transformers/node_emitter.js +39 -17
  234. package/src/transformers/node_emitter_transform.d.ts +1 -1
  235. package/src/transformers/node_emitter_transform.js +3 -3
  236. package/src/transformers/program.js +20 -20
  237. package/src/transformers/r3_metadata_transform.js +1 -1
  238. package/src/transformers/r3_strip_decorators.js +1 -1
  239. package/src/transformers/r3_transform.d.ts +1 -1
  240. package/src/transformers/r3_transform.js +3 -3
  241. package/src/transformers/util.js +6 -3
  242. package/src/typescript_support.js +1 -1
  243. package/src/version.js +1 -1
  244. package/src/ngtsc/file_system/src/cached_file_system.d.ts +0 -49
  245. package/src/ngtsc/file_system/src/cached_file_system.js +0 -180
  246. package/src/transformers/nocollapse_hack.js +0 -61
@@ -69,4 +69,4 @@
69
69
  return v instanceof compiler_1.ClassStmt;
70
70
  }
71
71
  });
72
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfbWV0YWRhdGFfdHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy90cmFuc2Zvcm1lcnMvcjNfbWV0YWRhdGFfdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUVILDhDQUFvRjtJQUNwRiwrQkFBaUM7SUFFakMsa0VBQW9HO0lBSXBHO1FBR0UsMENBQVksT0FBd0I7WUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUEwQixVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBZixDQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7UUFFRCxnREFBSyxHQUFMLFVBQU0sVUFBeUI7WUFDN0IsSUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzlELElBQUksYUFBYSxFQUFFO2dCQUNqQixJQUFNLFVBQVEsR0FBRyxJQUFJLEdBQUcsQ0FDcEIsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxDQUFzQixVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBWCxDQUFXLENBQUMsQ0FBQyxDQUFDO2dCQUM3RixJQUFJLFVBQVEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFO29CQUNyQixPQUFPLFVBQUMsS0FBb0IsRUFBRSxJQUFhOzt3QkFDekMsd0ZBQXdGO3dCQUN4RixnRUFBZ0U7d0JBQ2hFLElBQUksdUJBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUU7NEJBQzFFLElBQU0sZ0JBQWdCLEdBQUcsSUFBMkIsQ0FBQzs0QkFDckQsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7Z0NBQ3pCLElBQU0sWUFBWSxHQUFHLFVBQVEsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dDQUM5RCxJQUFJLFlBQVksRUFBRTs7d0NBQ2hCLEtBQW9CLElBQUEsS0FBQSxpQkFBQSxZQUFZLENBQUMsTUFBTSxDQUFBLGdCQUFBLDRCQUFFOzRDQUFwQyxJQUFNLEtBQUssV0FBQTs0Q0FDZCxJQUFJLEtBQUssQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLFNBQVM7Z0RBQzdCLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQUEsUUFBUSxJQUFJLE9BQUEsUUFBUSxLQUFLLHVCQUFZLENBQUMsTUFBTSxFQUFoQyxDQUFnQyxDQUFDLEVBQUU7Z0RBQ3RFLEtBQUssQ0FBQyxPQUFPLHlDQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsZ0JBQUcsS0FBSyxDQUFDLElBQUksSUFBRyxFQUFFLE1BQUMsQ0FBQzs2Q0FDOUQ7eUNBQ0Y7Ozs7Ozs7OztpQ0FDRjs2QkFDRjt5QkFDRjt3QkFDRCxPQUFPLEtBQUssQ0FBQztvQkFDZixDQUFDLENBQUM7aUJBQ0g7YUFDRjtRQUNILENBQUM7UUFDSCx1Q0FBQztJQUFELENBQUMsQUFuQ0QsSUFtQ0M7SUFuQ1ksNEVBQWdDO0lBcUM3QyxTQUFTLFdBQVcsQ0FBQyxDQUFZO1FBQy9CLE9BQU8sQ0FBQyxZQUFZLG9CQUFTLENBQUM7SUFDaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtDbGFzc1N0bXQsIFBhcnRpYWxNb2R1bGUsIFN0YXRlbWVudCwgU3RtdE1vZGlmaWVyfSBmcm9tICdAYW5ndWxhci9jb21waWxlcic7XG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtNZXRhZGF0YUNvbGxlY3RvciwgTWV0YWRhdGFWYWx1ZSwgTW9kdWxlTWV0YWRhdGEsIGlzQ2xhc3NNZXRhZGF0YX0gZnJvbSAnLi4vbWV0YWRhdGEvaW5kZXgnO1xuXG5pbXBvcnQge01ldGFkYXRhVHJhbnNmb3JtZXIsIFZhbHVlVHJhbnNmb3JtfSBmcm9tICcuL21ldGFkYXRhX2NhY2hlJztcblxuZXhwb3J0IGNsYXNzIFBhcnRpYWxNb2R1bGVNZXRhZGF0YVRyYW5zZm9ybWVyIGltcGxlbWVudHMgTWV0YWRhdGFUcmFuc2Zvcm1lciB7XG4gIHByaXZhdGUgbW9kdWxlTWFwOiBNYXA8c3RyaW5nLCBQYXJ0aWFsTW9kdWxlPjtcblxuICBjb25zdHJ1Y3Rvcihtb2R1bGVzOiBQYXJ0aWFsTW9kdWxlW10pIHtcbiAgICB0aGlzLm1vZHVsZU1hcCA9IG5ldyBNYXAobW9kdWxlcy5tYXA8W3N0cmluZywgUGFydGlhbE1vZHVsZV0+KG0gPT4gW20uZmlsZU5hbWUsIG1dKSk7XG4gIH1cblxuICBzdGFydChzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlKTogVmFsdWVUcmFuc2Zvcm18dW5kZWZpbmVkIHtcbiAgICBjb25zdCBwYXJ0aWFsTW9kdWxlID0gdGhpcy5tb2R1bGVNYXAuZ2V0KHNvdXJjZUZpbGUuZmlsZU5hbWUpO1xuICAgIGlmIChwYXJ0aWFsTW9kdWxlKSB7XG4gICAgICBjb25zdCBjbGFzc01hcCA9IG5ldyBNYXA8c3RyaW5nLCBDbGFzc1N0bXQ+KFxuICAgICAgICAgIHBhcnRpYWxNb2R1bGUuc3RhdGVtZW50cy5maWx0ZXIoaXNDbGFzc1N0bXQpLm1hcDxbc3RyaW5nLCBDbGFzc1N0bXRdPihzID0+IFtzLm5hbWUsIHNdKSk7XG4gICAgICBpZiAoY2xhc3NNYXAuc2l6ZSA+IDApIHtcbiAgICAgICAgcmV0dXJuICh2YWx1ZTogTWV0YWRhdGFWYWx1ZSwgbm9kZTogdHMuTm9kZSk6IE1ldGFkYXRhVmFsdWUgPT4ge1xuICAgICAgICAgIC8vIEZvciBjbGFzcyBtZXRhZGF0YSB0aGF0IGlzIGdvaW5nIHRvIGJlIHRyYW5zZm9ybWVkIHRvIGhhdmUgYSBzdGF0aWMgbWV0aG9kIGVuc3VyZSB0aGVcbiAgICAgICAgICAvLyBtZXRhZGF0YSBjb250YWlucyBhIHN0YXRpYyBkZWNsYXJhdGlvbiB0aGUgbmV3IHN0YXRpYyBtZXRob2QuXG4gICAgICAgICAgaWYgKGlzQ2xhc3NNZXRhZGF0YSh2YWx1ZSkgJiYgbm9kZS5raW5kID09PSB0cy5TeW50YXhLaW5kLkNsYXNzRGVjbGFyYXRpb24pIHtcbiAgICAgICAgICAgIGNvbnN0IGNsYXNzRGVjbGFyYXRpb24gPSBub2RlIGFzIHRzLkNsYXNzRGVjbGFyYXRpb247XG4gICAgICAgICAgICBpZiAoY2xhc3NEZWNsYXJhdGlvbi5uYW1lKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHBhcnRpYWxDbGFzcyA9IGNsYXNzTWFwLmdldChjbGFzc0RlY2xhcmF0aW9uLm5hbWUudGV4dCk7XG4gICAgICAgICAgICAgIGlmIChwYXJ0aWFsQ2xhc3MpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIHBhcnRpYWxDbGFzcy5maWVsZHMpIHtcbiAgICAgICAgICAgICAgICAgIGlmIChmaWVsZC5uYW1lICYmIGZpZWxkLm1vZGlmaWVycyAmJlxuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLm1vZGlmaWVycy5zb21lKG1vZGlmaWVyID0+IG1vZGlmaWVyID09PSBTdG10TW9kaWZpZXIuU3RhdGljKSkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZS5zdGF0aWNzID0gey4uLih2YWx1ZS5zdGF0aWNzIHx8IHt9KSwgW2ZpZWxkLm5hbWVdOiB7fX07XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNDbGFzc1N0bXQodjogU3RhdGVtZW50KTogdiBpcyBDbGFzc1N0bXQge1xuICByZXR1cm4gdiBpbnN0YW5jZW9mIENsYXNzU3RtdDtcbn1cbiJdfQ==
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfbWV0YWRhdGFfdHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy90cmFuc2Zvcm1lcnMvcjNfbWV0YWRhdGFfdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUVILDhDQUFvRjtJQUNwRiwrQkFBaUM7SUFFakMsa0VBQW9HO0lBSXBHO1FBR0UsMENBQVksT0FBd0I7WUFDbEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUEwQixVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBZixDQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7UUFFRCxnREFBSyxHQUFMLFVBQU0sVUFBeUI7WUFDN0IsSUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzlELElBQUksYUFBYSxFQUFFO2dCQUNqQixJQUFNLFVBQVEsR0FBRyxJQUFJLEdBQUcsQ0FDcEIsYUFBYSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxDQUFzQixVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBWCxDQUFXLENBQUMsQ0FBQyxDQUFDO2dCQUM3RixJQUFJLFVBQVEsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxFQUFFO29CQUNyQixPQUFPLFVBQUMsS0FBb0IsRUFBRSxJQUFhOzt3QkFDekMsd0ZBQXdGO3dCQUN4RixnRUFBZ0U7d0JBQ2hFLElBQUksdUJBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLEVBQUU7NEJBQzFFLElBQU0sZ0JBQWdCLEdBQUcsSUFBMkIsQ0FBQzs0QkFDckQsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7Z0NBQ3pCLElBQU0sWUFBWSxHQUFHLFVBQVEsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dDQUM5RCxJQUFJLFlBQVksRUFBRTs7d0NBQ2hCLEtBQW9CLElBQUEsS0FBQSxpQkFBQSxZQUFZLENBQUMsTUFBTSxDQUFBLGdCQUFBLDRCQUFFOzRDQUFwQyxJQUFNLEtBQUssV0FBQTs0Q0FDZCxJQUFJLEtBQUssQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLFNBQVM7Z0RBQzdCLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQUEsUUFBUSxJQUFJLE9BQUEsUUFBUSxLQUFLLHVCQUFZLENBQUMsTUFBTSxFQUFoQyxDQUFnQyxDQUFDLEVBQUU7Z0RBQ3RFLEtBQUssQ0FBQyxPQUFPLHlDQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsZ0JBQUcsS0FBSyxDQUFDLElBQUksSUFBRyxFQUFFLE1BQUMsQ0FBQzs2Q0FDOUQ7eUNBQ0Y7Ozs7Ozs7OztpQ0FDRjs2QkFDRjt5QkFDRjt3QkFDRCxPQUFPLEtBQUssQ0FBQztvQkFDZixDQUFDLENBQUM7aUJBQ0g7YUFDRjtRQUNILENBQUM7UUFDSCx1Q0FBQztJQUFELENBQUMsQUFuQ0QsSUFtQ0M7SUFuQ1ksNEVBQWdDO0lBcUM3QyxTQUFTLFdBQVcsQ0FBQyxDQUFZO1FBQy9CLE9BQU8sQ0FBQyxZQUFZLG9CQUFTLENBQUM7SUFDaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtDbGFzc1N0bXQsIFBhcnRpYWxNb2R1bGUsIFN0YXRlbWVudCwgU3RtdE1vZGlmaWVyfSBmcm9tICdAYW5ndWxhci9jb21waWxlcic7XG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtpc0NsYXNzTWV0YWRhdGEsIE1ldGFkYXRhQ29sbGVjdG9yLCBNZXRhZGF0YVZhbHVlLCBNb2R1bGVNZXRhZGF0YX0gZnJvbSAnLi4vbWV0YWRhdGEvaW5kZXgnO1xuXG5pbXBvcnQge01ldGFkYXRhVHJhbnNmb3JtZXIsIFZhbHVlVHJhbnNmb3JtfSBmcm9tICcuL21ldGFkYXRhX2NhY2hlJztcblxuZXhwb3J0IGNsYXNzIFBhcnRpYWxNb2R1bGVNZXRhZGF0YVRyYW5zZm9ybWVyIGltcGxlbWVudHMgTWV0YWRhdGFUcmFuc2Zvcm1lciB7XG4gIHByaXZhdGUgbW9kdWxlTWFwOiBNYXA8c3RyaW5nLCBQYXJ0aWFsTW9kdWxlPjtcblxuICBjb25zdHJ1Y3Rvcihtb2R1bGVzOiBQYXJ0aWFsTW9kdWxlW10pIHtcbiAgICB0aGlzLm1vZHVsZU1hcCA9IG5ldyBNYXAobW9kdWxlcy5tYXA8W3N0cmluZywgUGFydGlhbE1vZHVsZV0+KG0gPT4gW20uZmlsZU5hbWUsIG1dKSk7XG4gIH1cblxuICBzdGFydChzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlKTogVmFsdWVUcmFuc2Zvcm18dW5kZWZpbmVkIHtcbiAgICBjb25zdCBwYXJ0aWFsTW9kdWxlID0gdGhpcy5tb2R1bGVNYXAuZ2V0KHNvdXJjZUZpbGUuZmlsZU5hbWUpO1xuICAgIGlmIChwYXJ0aWFsTW9kdWxlKSB7XG4gICAgICBjb25zdCBjbGFzc01hcCA9IG5ldyBNYXA8c3RyaW5nLCBDbGFzc1N0bXQ+KFxuICAgICAgICAgIHBhcnRpYWxNb2R1bGUuc3RhdGVtZW50cy5maWx0ZXIoaXNDbGFzc1N0bXQpLm1hcDxbc3RyaW5nLCBDbGFzc1N0bXRdPihzID0+IFtzLm5hbWUsIHNdKSk7XG4gICAgICBpZiAoY2xhc3NNYXAuc2l6ZSA+IDApIHtcbiAgICAgICAgcmV0dXJuICh2YWx1ZTogTWV0YWRhdGFWYWx1ZSwgbm9kZTogdHMuTm9kZSk6IE1ldGFkYXRhVmFsdWUgPT4ge1xuICAgICAgICAgIC8vIEZvciBjbGFzcyBtZXRhZGF0YSB0aGF0IGlzIGdvaW5nIHRvIGJlIHRyYW5zZm9ybWVkIHRvIGhhdmUgYSBzdGF0aWMgbWV0aG9kIGVuc3VyZSB0aGVcbiAgICAgICAgICAvLyBtZXRhZGF0YSBjb250YWlucyBhIHN0YXRpYyBkZWNsYXJhdGlvbiB0aGUgbmV3IHN0YXRpYyBtZXRob2QuXG4gICAgICAgICAgaWYgKGlzQ2xhc3NNZXRhZGF0YSh2YWx1ZSkgJiYgbm9kZS5raW5kID09PSB0cy5TeW50YXhLaW5kLkNsYXNzRGVjbGFyYXRpb24pIHtcbiAgICAgICAgICAgIGNvbnN0IGNsYXNzRGVjbGFyYXRpb24gPSBub2RlIGFzIHRzLkNsYXNzRGVjbGFyYXRpb247XG4gICAgICAgICAgICBpZiAoY2xhc3NEZWNsYXJhdGlvbi5uYW1lKSB7XG4gICAgICAgICAgICAgIGNvbnN0IHBhcnRpYWxDbGFzcyA9IGNsYXNzTWFwLmdldChjbGFzc0RlY2xhcmF0aW9uLm5hbWUudGV4dCk7XG4gICAgICAgICAgICAgIGlmIChwYXJ0aWFsQ2xhc3MpIHtcbiAgICAgICAgICAgICAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIHBhcnRpYWxDbGFzcy5maWVsZHMpIHtcbiAgICAgICAgICAgICAgICAgIGlmIChmaWVsZC5uYW1lICYmIGZpZWxkLm1vZGlmaWVycyAmJlxuICAgICAgICAgICAgICAgICAgICAgIGZpZWxkLm1vZGlmaWVycy5zb21lKG1vZGlmaWVyID0+IG1vZGlmaWVyID09PSBTdG10TW9kaWZpZXIuU3RhdGljKSkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZS5zdGF0aWNzID0gey4uLih2YWx1ZS5zdGF0aWNzIHx8IHt9KSwgW2ZpZWxkLm5hbWVdOiB7fX07XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuZnVuY3Rpb24gaXNDbGFzc1N0bXQodjogU3RhdGVtZW50KTogdiBpcyBDbGFzc1N0bXQge1xuICByZXR1cm4gdiBpbnN0YW5jZW9mIENsYXNzU3RtdDtcbn1cbiJdfQ==
@@ -151,4 +151,4 @@
151
151
  }());
152
152
  exports.StripDecoratorsMetadataTransformer = StripDecoratorsMetadataTransformer;
153
153
  });
154
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfc3RyaXBfZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvdHJhbnNmb3JtZXJzL3IzX3N0cmlwX2RlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUFHSCwrQkFBaUM7SUFFakMscUVBQTBJO0lBTzFJLFNBQWdCLG1DQUFtQyxDQUMvQyxjQUFpQyxFQUFFLFNBQTBCLEVBQzdELE9BQXVCO1FBQ3pCLE9BQU8sVUFBUyxPQUFpQztZQUMvQyxPQUFPLFVBQVMsVUFBeUI7Z0JBQ3ZDLElBQU0sbUNBQW1DLEdBQ3JDLFVBQUMsSUFBeUI7b0JBQ3hCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUU7d0JBQ2pDLE9BQU8sSUFBSSxDQUFDO3FCQUNiO29CQUNELElBQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFVBQUEsU0FBUzt3QkFDakQsSUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQzt3QkFDdEMsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7NEJBQ2pDLElBQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7NEJBQy9CLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsRUFBRTtnQ0FDdkIsSUFBTSxNQUFNLEdBQUcscUJBQXFCLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dDQUNsRixPQUFPLE1BQU0sSUFBSSxjQUFjLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDOzZCQUM3Qzt5QkFDRjt3QkFDRCxPQUFPLElBQUksQ0FBQztvQkFDZCxDQUFDLENBQUMsQ0FBQztvQkFDSCxJQUFJLFVBQVUsQ0FBQyxN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SSxDQUFDLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtvQkFDN0UsS0FBSyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFBLENBQUM7d0JBQzFDLElBQUksMkNBQWdDLENBQUMsQ0FBQyxDQUFDOzRCQUNuQyxzREFBMkMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEVBQUU7NEJBQzdELElBQU0sV0FBVyxHQUFHLEtBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQ2pELENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQzs0QkFDakUsSUFBSSxXQUFXLElBQUksS0FBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0NBQ3ZELE9BQU8sS0FBSyxDQUFDOzZCQUNkO3lCQUNGO3dCQUNELE9BQU8sSUFBSSxDQUFDO29CQUNkLENBQUMsQ0FBQyxDQUFDO2lCQUNKO2dCQUNELE9BQU8sS0FBSyxDQUFDO1lBQ2YsQ0FBQyxDQUFDO1FBQ0osQ0FBQztRQUNILHlDQUFDO0lBQUQsQ0FBQyxBQXJCRCxJQXFCQztJQXJCWSxnRkFBa0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7U3RhdGljUmVmbGVjdG9yLCBTdGF0aWNTeW1ib2x9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge01ldGFkYXRhVmFsdWUsIGlzQ2xhc3NNZXRhZGF0YSwgaXNNZXRhZGF0YUltcG9ydGVkU3ltYm9sUmVmZXJlbmNlRXhwcmVzc2lvbiwgaXNNZXRhZGF0YVN5bWJvbGljQ2FsbEV4cHJlc3Npb259IGZyb20gJy4uL21ldGFkYXRhJztcblxuaW1wb3J0IHtNZXRhZGF0YVRyYW5zZm9ybWVyLCBWYWx1ZVRyYW5zZm9ybX0gZnJvbSAnLi9tZXRhZGF0YV9jYWNoZSc7XG5cbmV4cG9ydCB0eXBlIFRyYW5zZm9ybWVyID0gKHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpID0+IHRzLlNvdXJjZUZpbGU7XG5leHBvcnQgdHlwZSBUcmFuc2Zvcm1lckZhY3RvcnkgPSAoY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KSA9PiBUcmFuc2Zvcm1lcjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlY29yYXRvclN0cmlwVHJhbnNmb3JtZXJGYWN0b3J5KFxuICAgIGNvcmVEZWNvcmF0b3JzOiBTZXQ8U3RhdGljU3ltYm9sPiwgcmVmbGVjdG9yOiBTdGF0aWNSZWZsZWN0b3IsXG4gICAgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIpOiBUcmFuc2Zvcm1lckZhY3Rvcnkge1xuICByZXR1cm4gZnVuY3Rpb24oY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpOiB0cy5Tb3VyY2VGaWxlIHtcbiAgICAgIGNvbnN0IHN0cmlwRGVjb3JhdG9yc0Zyb21DbGFzc0RlY2xhcmF0aW9uID1cbiAgICAgICAgICAobm9kZTogdHMuQ2xhc3NEZWNsYXJhdGlvbik6IHRzLkNsYXNzRGVjbGFyYXRpb24gPT4ge1xuICAgICAgICAgICAgaWYgKG5vZGUuZGVjb3JhdG9ycyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIHJldHVybiBub2RlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgZGVjb3JhdG9ycyA9IG5vZGUuZGVjb3JhdG9ycy5maWx0ZXIoZGVjb3JhdG9yID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY2FsbEV4cHIgPSBkZWNvcmF0b3IuZXhwcmVzc2lvbjtcbiAgICAgICAgICAgICAgaWYgKHRzLmlzQ2FsbEV4cHJlc3Npb24oY2FsbEV4cHIpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaWQgPSBjYWxsRXhwci5leHByZXNzaW9uO1xuICAgICAgICAgICAgICAgIGlmICh0cy5pc0lkZW50aWZpZXIoaWQpKSB7XG4gICAgICAgICAgICAgICAgICBjb25zdCBzeW1ib2wgPSByZXNvbHZlVG9TdGF0aWNTeW1ib2woaWQsIHNvdXJjZUZpbGUuZmlsZU5hbWUsIHJlZmxlY3RvciwgY2hlY2tlcik7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gc3ltYm9sICYmIGNvcmVEZWNvcmF0b3JzLmhhcyhzeW1ib2wpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKGRlY29yYXRvcnMubGVuZ3RoICE9PSBub2RlLmRlY29yYXRvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cy51cGRhdGVDbGFzc0RlY2xhcmF0aW9uKFxuICAgICAgICAgICAgICAgICAgbm9kZSwgZGVjb3JhdG9ycywgbm9kZS5tb2RpZmllcnMsIG5vZGUubmFtZSwgbm9kZS50eXBlUGFyYW1ldGVycyxcbiAgICAgICAgICAgICAgICAgIG5vZGUuaGVyaXRhZ2VDbGF1c2VzIHx8IFtdLCBub2RlLm1lbWJlcnMsICk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gbm9kZTtcbiAgICAgICAgICB9O1xuXG4gICAgICBjb25zdCBzdHJpcERlY29yYXRvclByb3BlcnR5QXNzaWdubWVudCA9IChub2RlOiB0cy5DbGFzc0RlY2xhcmF0aW9uKTogdHMuQ2xhc3NEZWNsYXJhdGlvbiA9PiB7XG4gICAgICAgIHJldHVybiB0cy52aXNpdEVhY2hDaGlsZChub2RlLCBtZW1iZXIgPT4ge1xuICAgICAgICAgIGlmICghdHMuaXNQcm9wZXJ0eURlY2xhcmF0aW9uKG1lbWJlcikgfHwgIWlzRGVjb3JhdG9yQXNzaWdubWVudChtZW1iZXIpIHx8XG4gICAgICAgICAgICAgICFtZW1iZXIuaW5pdGlhbGl6ZXIgfHwgIXRzLmlzQXJyYXlMaXRlcmFsRXhwcmVzc2lvbihtZW1iZXIuaW5pdGlhbGl6ZXIpKSB7XG4gICAgICAgICAgICByZXR1cm4gbWVtYmVyO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IG5ld0luaXRpYWxpemVyID0gdHMudmlzaXRFYWNoQ2hpbGQobWVtYmVyLmluaXRpYWxpemVyLCBkZWNvcmF0b3IgPT4ge1xuICAgICAgICAgICAgaWYgKCF0cy5pc09iamVjdExpdGVyYWxFeHByZXNzaW9uKGRlY29yYXRvcikpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGRlY29yYXRvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHR5cGUgPSBsb29rdXBQcm9wZXJ0eShkZWNvcmF0b3IsICd0eXBlJyk7XG4gICAgICAgICAgICBpZiAoIXR5cGUgfHwgIXRzLmlzSWRlbnRpZmllcih0eXBlKSkge1xuICAgICAgICAgICAgICByZXR1cm4gZGVjb3JhdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgc3ltYm9sID0gcmVzb2x2ZVRvU3RhdGljU3ltYm9sKHR5cGUsIHNvdXJjZUZpbGUuZmlsZU5hbWUsIHJlZmxlY3RvciwgY2hlY2tlcik7XG4gICAgICAgICAgICBpZiAoIXN5bWJvbCB8fCAhY29yZURlY29yYXRvcnMuaGFzKHN5bWJvbCkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIGRlY29yYXRvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgfSwgY29udGV4dCk7XG5cbiAgICAgICAgICBpZiAobmV3SW5pdGlhbGl6ZXIgPT09IG1lbWJlci5pbml0aWFsaXplcikge1xuICAgICAgICAgICAgcmV0dXJuIG1lbWJlcjtcbiAgICAgICAgICB9IGVsc2UgaWYgKG5ld0luaXRpYWxpemVyLmVsZW1lbnRzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRzLnVwZGF0ZVByb3BlcnR5KFxuICAgICAgICAgICAgICAgIG1lbWJlciwgbWVtYmVyLmRlY29yYXRvcnMsIG1lbWJlci5tb2RpZmllcnMsIG1lbWJlci5uYW1lLCBtZW1iZXIucXVlc3Rpb25Ub2tlbixcbiAgICAgICAgICAgICAgICBtZW1iZXIudHlwZSwgbmV3SW5pdGlhbGl6ZXIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSwgY29udGV4dCk7XG4gICAgICB9O1xuXG4gICAgICByZXR1cm4gdHMudmlzaXRFYWNoQ2hpbGQoc291cmNlRmlsZSwgc3RtdCA9PiB7XG4gICAgICAgIGlmICh0cy5pc0NsYXNzRGVjbGFyYXRpb24oc3RtdCkpIHtcbiAgICAgICAgICBsZXQgZGVjbCA9IHN0bXQ7XG4gICAgICAgICAgaWYgKHN0bXQuZGVjb3JhdG9ycykge1xuICAgICAgICAgICAgZGVjbCA9IHN0cmlwRGVjb3JhdG9yc0Zyb21DbGFzc0RlY2xhcmF0aW9uKHN0bXQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gc3RyaXBEZWNvcmF0b3JQcm9wZXJ0eUFzc2lnbm1lbnQoZGVjbCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHN0bXQ7XG4gICAgICB9LCBjb250ZXh0KTtcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBpc0RlY29yYXRvckFzc2lnbm1lbnQobWVtYmVyOiB0cy5DbGFzc0VsZW1lbnQpOiBib29sZWFuIHtcbiAgaWYgKCF0cy5pc1Byb3BlcnR5RGVjbGFyYXRpb24obWVtYmVyKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBpZiAoIW1lbWJlci5tb2RpZmllcnMgfHxcbiAgICAgICFtZW1iZXIubW9kaWZpZXJzLnNvbWUobW9kID0+IG1vZC5raW5kID09PSB0cy5TeW50YXhLaW5kLlN0YXRpY0tleXdvcmQpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGlmICghdHMuaXNJZGVudGlmaWVyKG1lbWJlci5uYW1lKSB8fCBtZW1iZXIubmFtZS50ZXh0ICE9PSAnZGVjb3JhdG9ycycpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgaWYgKCFtZW1iZXIuaW5pdGlhbGl6ZXIgfHwgIXRzLmlzQXJyYXlMaXRlcmFsRXhwcmVzc2lvbihtZW1iZXIuaW5pdGlhbGl6ZXIpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHJldHVybiB0cnVlO1xufVxuXG5mdW5jdGlvbiBsb29rdXBQcm9wZXJ0eShleHByOiB0cy5PYmplY3RMaXRlcmFsRXhwcmVzc2lvbiwgcHJvcDogc3RyaW5nKTogdHMuRXhwcmVzc2lvbnx1bmRlZmluZWQge1xuICBjb25zdCBkZWNsID0gZXhwci5wcm9wZXJ0aWVzLmZpbmQoXG4gICAgICBlbGVtID0+ICEhZWxlbS5uYW1lICYmIHRzLmlzSWRlbnRpZmllcihlbGVtLm5hbWUpICYmIGVsZW0ubmFtZS50ZXh0ID09PSBwcm9wKTtcbiAgaWYgKGRlY2wgPT09IHVuZGVmaW5lZCB8fCAhdHMuaXNQcm9wZXJ0eUFzc2lnbm1lbnQoZGVjbCkpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIHJldHVybiBkZWNsLmluaXRpYWxpemVyO1xufVxuXG5mdW5jdGlvbiByZXNvbHZlVG9TdGF0aWNTeW1ib2woXG4gICAgaWQ6IHRzLklkZW50aWZpZXIsIGNvbnRhaW5pbmdGaWxlOiBzdHJpbmcsIHJlZmxlY3RvcjogU3RhdGljUmVmbGVjdG9yLFxuICAgIGNoZWNrZXI6IHRzLlR5cGVDaGVja2VyKTogU3RhdGljU3ltYm9sfG51bGwge1xuICBjb25zdCByZXMgPSBjaGVja2VyLmdldFN5bWJvbEF0TG9jYXRpb24oaWQpO1xuICBpZiAoIXJlcyB8fCAhcmVzLmRlY2xhcmF0aW9ucyB8fCByZXMuZGVjbGFyYXRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGNvbnN0IGRlY2wgPSByZXMuZGVjbGFyYXRpb25zWzBdO1xuICBpZiAoIXRzLmlzSW1wb3J0U3BlY2lmaWVyKGRlY2wpKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3QgbW9kdWxlU3BlY2lmaWVyID0gZGVjbC5wYXJlbnQgIS5wYXJlbnQgIS5wYXJlbnQgIS5tb2R1bGVTcGVjaWZpZXI7XG4gIGlmICghdHMuaXNTdHJpbmdMaXRlcmFsKG1vZHVsZVNwZWNpZmllcikpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gcmVmbGVjdG9yLnRyeUZpbmREZWNsYXJhdGlvbihtb2R1bGVTcGVjaWZpZXIudGV4dCwgaWQudGV4dCwgY29udGFpbmluZ0ZpbGUpO1xufVxuXG5leHBvcnQgY2xhc3MgU3RyaXBEZWNvcmF0b3JzTWV0YWRhdGFUcmFuc2Zvcm1lciBpbXBsZW1lbnRzIE1ldGFkYXRhVHJhbnNmb3JtZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvcmVEZWNvcmF0b3JzOiBTZXQ8U3RhdGljU3ltYm9sPiwgcHJpdmF0ZSByZWZsZWN0b3I6IFN0YXRpY1JlZmxlY3Rvcikge31cblxuICBzdGFydChzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlKTogVmFsdWVUcmFuc2Zvcm18dW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKHZhbHVlOiBNZXRhZGF0YVZhbHVlLCBub2RlOiB0cy5Ob2RlKTogTWV0YWRhdGFWYWx1ZSA9PiB7XG4gICAgICBpZiAoaXNDbGFzc01ldGFkYXRhKHZhbHVlKSAmJiB0cy5pc0NsYXNzRGVjbGFyYXRpb24obm9kZSkgJiYgdmFsdWUuZGVjb3JhdG9ycykge1xuICAgICAgICB2YWx1ZS5kZWNvcmF0b3JzID0gdmFsdWUuZGVjb3JhdG9ycy5maWx0ZXIoZCA9PiB7XG4gICAgICAgICAgaWYgKGlzTWV0YWRhdGFTeW1ib2xpY0NhbGxFeHByZXNzaW9uKGQpICYmXG4gICAgICAgICAgICAgIGlzTWV0YWRhdGFJbXBvcnRlZFN5bWJvbFJlZmVyZW5jZUV4cHJlc3Npb24oZC5leHByZXNzaW9uKSkge1xuICAgICAgICAgICAgY29uc3QgZGVjbGFyYXRpb24gPSB0aGlzLnJlZmxlY3Rvci50cnlGaW5kRGVjbGFyYXRpb24oXG4gICAgICAgICAgICAgICAgZC5leHByZXNzaW9uLm1vZHVsZSwgZC5leHByZXNzaW9uLm5hbWUsIHNvdXJjZUZpbGUuZmlsZU5hbWUpO1xuICAgICAgICAgICAgaWYgKGRlY2xhcmF0aW9uICYmIHRoaXMuY29yZURlY29yYXRvcnMuaGFzKGRlY2xhcmF0aW9uKSkge1xuICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9O1xuICB9XG59XG4iXX0=
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfc3RyaXBfZGVjb3JhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvdHJhbnNmb3JtZXJzL3IzX3N0cmlwX2RlY29yYXRvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7SUFHSCwrQkFBaUM7SUFFakMscUVBQTBJO0lBTzFJLFNBQWdCLG1DQUFtQyxDQUMvQyxjQUFpQyxFQUFFLFNBQTBCLEVBQzdELE9BQXVCO1FBQ3pCLE9BQU8sVUFBUyxPQUFpQztZQUMvQyxPQUFPLFVBQVMsVUFBeUI7Z0JBQ3ZDLElBQU0sbUNBQW1DLEdBQ3JDLFVBQUMsSUFBeUI7b0JBQ3hCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxTQUFTLEVBQUU7d0JBQ2pDLE9BQU8sSUFBSSxDQUFDO3FCQUNiO29CQUNELElBQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFVBQUEsU0FBUzt3QkFDakQsSUFBTSxRQUFRLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQzt3QkFDdEMsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUU7NEJBQ2pDLElBQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxVQUFVLENBQUM7NEJBQy9CLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsRUFBRTtnQ0FDdkIsSUFBTSxNQUFNLEdBQUcscUJBQXFCLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO2dDQUNsRixPQUFPLE1BQU0sSUFBSSxjQUFjLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDOzZCQUM3Qzt5QkFDRjt3QkFDRCxPQUFPLElBQUksQ0FBQztvQkFDZCxDQUFDLENBQUMsQ0FBQztvQkFDSCxJQUFJLFVBQVUsQ0FBQyxN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SSxDQUFDLElBQUksS0FBSyxDQUFDLFVBQVUsRUFBRTtvQkFDN0UsS0FBSyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFBLENBQUM7d0JBQzFDLElBQUksMkNBQWdDLENBQUMsQ0FBQyxDQUFDOzRCQUNuQyxzREFBMkMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEVBQUU7NEJBQzdELElBQU0sV0FBVyxHQUFHLEtBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQ2pELENBQUMsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQzs0QkFDakUsSUFBSSxXQUFXLElBQUksS0FBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0NBQ3ZELE9BQU8sS0FBSyxDQUFDOzZCQUNkO3lCQUNGO3dCQUNELE9BQU8sSUFBSSxDQUFDO29CQUNkLENBQUMsQ0FBQyxDQUFDO2lCQUNKO2dCQUNELE9BQU8sS0FBSyxDQUFDO1lBQ2YsQ0FBQyxDQUFDO1FBQ0osQ0FBQztRQUNILHlDQUFDO0lBQUQsQ0FBQyxBQXJCRCxJQXFCQztJQXJCWSxnRkFBa0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7U3RhdGljUmVmbGVjdG9yLCBTdGF0aWNTeW1ib2x9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge2lzQ2xhc3NNZXRhZGF0YSwgaXNNZXRhZGF0YUltcG9ydGVkU3ltYm9sUmVmZXJlbmNlRXhwcmVzc2lvbiwgaXNNZXRhZGF0YVN5bWJvbGljQ2FsbEV4cHJlc3Npb24sIE1ldGFkYXRhVmFsdWV9IGZyb20gJy4uL21ldGFkYXRhJztcblxuaW1wb3J0IHtNZXRhZGF0YVRyYW5zZm9ybWVyLCBWYWx1ZVRyYW5zZm9ybX0gZnJvbSAnLi9tZXRhZGF0YV9jYWNoZSc7XG5cbmV4cG9ydCB0eXBlIFRyYW5zZm9ybWVyID0gKHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpID0+IHRzLlNvdXJjZUZpbGU7XG5leHBvcnQgdHlwZSBUcmFuc2Zvcm1lckZhY3RvcnkgPSAoY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KSA9PiBUcmFuc2Zvcm1lcjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlY29yYXRvclN0cmlwVHJhbnNmb3JtZXJGYWN0b3J5KFxuICAgIGNvcmVEZWNvcmF0b3JzOiBTZXQ8U3RhdGljU3ltYm9sPiwgcmVmbGVjdG9yOiBTdGF0aWNSZWZsZWN0b3IsXG4gICAgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIpOiBUcmFuc2Zvcm1lckZhY3Rvcnkge1xuICByZXR1cm4gZnVuY3Rpb24oY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpOiB0cy5Tb3VyY2VGaWxlIHtcbiAgICAgIGNvbnN0IHN0cmlwRGVjb3JhdG9yc0Zyb21DbGFzc0RlY2xhcmF0aW9uID1cbiAgICAgICAgICAobm9kZTogdHMuQ2xhc3NEZWNsYXJhdGlvbik6IHRzLkNsYXNzRGVjbGFyYXRpb24gPT4ge1xuICAgICAgICAgICAgaWYgKG5vZGUuZGVjb3JhdG9ycyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgIHJldHVybiBub2RlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgZGVjb3JhdG9ycyA9IG5vZGUuZGVjb3JhdG9ycy5maWx0ZXIoZGVjb3JhdG9yID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY2FsbEV4cHIgPSBkZWNvcmF0b3IuZXhwcmVzc2lvbjtcbiAgICAgICAgICAgICAgaWYgKHRzLmlzQ2FsbEV4cHJlc3Npb24oY2FsbEV4cHIpKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaWQgPSBjYWxsRXhwci5leHByZXNzaW9uO1xuICAgICAgICAgICAgICAgIGlmICh0cy5pc0lkZW50aWZpZXIoaWQpKSB7XG4gICAgICAgICAgICAgICAgICBjb25zdCBzeW1ib2wgPSByZXNvbHZlVG9TdGF0aWNTeW1ib2woaWQsIHNvdXJjZUZpbGUuZmlsZU5hbWUsIHJlZmxlY3RvciwgY2hlY2tlcik7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gc3ltYm9sICYmIGNvcmVEZWNvcmF0b3JzLmhhcyhzeW1ib2wpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgaWYgKGRlY29yYXRvcnMubGVuZ3RoICE9PSBub2RlLmRlY29yYXRvcnMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cy51cGRhdGVDbGFzc0RlY2xhcmF0aW9uKFxuICAgICAgICAgICAgICAgICAgbm9kZSxcbiAgICAgICAgICAgICAgICAgIGRlY29yYXRvcnMsXG4gICAgICAgICAgICAgICAgICBub2RlLm1vZGlmaWVycyxcbiAgICAgICAgICAgICAgICAgIG5vZGUubmFtZSxcbiAgICAgICAgICAgICAgICAgIG5vZGUudHlwZVBhcmFtZXRlcnMsXG4gICAgICAgICAgICAgICAgICBub2RlLmhlcml0YWdlQ2xhdXNlcyB8fCBbXSxcbiAgICAgICAgICAgICAgICAgIG5vZGUubWVtYmVycyxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBub2RlO1xuICAgICAgICAgIH07XG5cbiAgICAgIGNvbnN0IHN0cmlwRGVjb3JhdG9yUHJvcGVydHlBc3NpZ25tZW50ID0gKG5vZGU6IHRzLkNsYXNzRGVjbGFyYXRpb24pOiB0cy5DbGFzc0RlY2xhcmF0aW9uID0+IHtcbiAgICAgICAgcmV0dXJuIHRzLnZpc2l0RWFjaENoaWxkKG5vZGUsIG1lbWJlciA9PiB7XG4gICAgICAgICAgaWYgKCF0cy5pc1Byb3BlcnR5RGVjbGFyYXRpb24obWVtYmVyKSB8fCAhaXNEZWNvcmF0b3JBc3NpZ25tZW50KG1lbWJlcikgfHxcbiAgICAgICAgICAgICAgIW1lbWJlci5pbml0aWFsaXplciB8fCAhdHMuaXNBcnJheUxpdGVyYWxFeHByZXNzaW9uKG1lbWJlci5pbml0aWFsaXplcikpIHtcbiAgICAgICAgICAgIHJldHVybiBtZW1iZXI7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgbmV3SW5pdGlhbGl6ZXIgPSB0cy52aXNpdEVhY2hDaGlsZChtZW1iZXIuaW5pdGlhbGl6ZXIsIGRlY29yYXRvciA9PiB7XG4gICAgICAgICAgICBpZiAoIXRzLmlzT2JqZWN0TGl0ZXJhbEV4cHJlc3Npb24oZGVjb3JhdG9yKSkge1xuICAgICAgICAgICAgICByZXR1cm4gZGVjb3JhdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgdHlwZSA9IGxvb2t1cFByb3BlcnR5KGRlY29yYXRvciwgJ3R5cGUnKTtcbiAgICAgICAgICAgIGlmICghdHlwZSB8fCAhdHMuaXNJZGVudGlmaWVyKHR5cGUpKSB7XG4gICAgICAgICAgICAgIHJldHVybiBkZWNvcmF0b3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBzeW1ib2wgPSByZXNvbHZlVG9TdGF0aWNTeW1ib2wodHlwZSwgc291cmNlRmlsZS5maWxlTmFtZSwgcmVmbGVjdG9yLCBjaGVja2VyKTtcbiAgICAgICAgICAgIGlmICghc3ltYm9sIHx8ICFjb3JlRGVjb3JhdG9ycy5oYXMoc3ltYm9sKSkge1xuICAgICAgICAgICAgICByZXR1cm4gZGVjb3JhdG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgICAgICB9LCBjb250ZXh0KTtcblxuICAgICAgICAgIGlmIChuZXdJbml0aWFsaXplciA9PT0gbWVtYmVyLmluaXRpYWxpemVyKSB7XG4gICAgICAgICAgICByZXR1cm4gbWVtYmVyO1xuICAgICAgICAgIH0gZWxzZSBpZiAobmV3SW5pdGlhbGl6ZXIuZWxlbWVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gdHMudXBkYXRlUHJvcGVydHkoXG4gICAgICAgICAgICAgICAgbWVtYmVyLCBtZW1iZXIuZGVjb3JhdG9ycywgbWVtYmVyLm1vZGlmaWVycywgbWVtYmVyLm5hbWUsIG1lbWJlci5xdWVzdGlvblRva2VuLFxuICAgICAgICAgICAgICAgIG1lbWJlci50eXBlLCBuZXdJbml0aWFsaXplcik7XG4gICAgICAgICAgfVxuICAgICAgICB9LCBjb250ZXh0KTtcbiAgICAgIH07XG5cbiAgICAgIHJldHVybiB0cy52aXNpdEVhY2hDaGlsZChzb3VyY2VGaWxlLCBzdG10ID0+IHtcbiAgICAgICAgaWYgKHRzLmlzQ2xhc3NEZWNsYXJhdGlvbihzdG10KSkge1xuICAgICAgICAgIGxldCBkZWNsID0gc3RtdDtcbiAgICAgICAgICBpZiAoc3RtdC5kZWNvcmF0b3JzKSB7XG4gICAgICAgICAgICBkZWNsID0gc3RyaXBEZWNvcmF0b3JzRnJvbUNsYXNzRGVjbGFyYXRpb24oc3RtdCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBzdHJpcERlY29yYXRvclByb3BlcnR5QXNzaWdubWVudChkZWNsKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3RtdDtcbiAgICAgIH0sIGNvbnRleHQpO1xuICAgIH07XG4gIH07XG59XG5cbmZ1bmN0aW9uIGlzRGVjb3JhdG9yQXNzaWdubWVudChtZW1iZXI6IHRzLkNsYXNzRWxlbWVudCk6IGJvb2xlYW4ge1xuICBpZiAoIXRzLmlzUHJvcGVydHlEZWNsYXJhdGlvbihtZW1iZXIpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIGlmICghbWVtYmVyLm1vZGlmaWVycyB8fFxuICAgICAgIW1lbWJlci5tb2RpZmllcnMuc29tZShtb2QgPT4gbW9kLmtpbmQgPT09IHRzLlN5bnRheEtpbmQuU3RhdGljS2V5d29yZCkpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgaWYgKCF0cy5pc0lkZW50aWZpZXIobWVtYmVyLm5hbWUpIHx8IG1lbWJlci5uYW1lLnRleHQgIT09ICdkZWNvcmF0b3JzJykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICBpZiAoIW1lbWJlci5pbml0aWFsaXplciB8fCAhdHMuaXNBcnJheUxpdGVyYWxFeHByZXNzaW9uKG1lbWJlci5pbml0aWFsaXplcikpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcmV0dXJuIHRydWU7XG59XG5cbmZ1bmN0aW9uIGxvb2t1cFByb3BlcnR5KGV4cHI6IHRzLk9iamVjdExpdGVyYWxFeHByZXNzaW9uLCBwcm9wOiBzdHJpbmcpOiB0cy5FeHByZXNzaW9ufHVuZGVmaW5lZCB7XG4gIGNvbnN0IGRlY2wgPSBleHByLnByb3BlcnRpZXMuZmluZChcbiAgICAgIGVsZW0gPT4gISFlbGVtLm5hbWUgJiYgdHMuaXNJZGVudGlmaWVyKGVsZW0ubmFtZSkgJiYgZWxlbS5uYW1lLnRleHQgPT09IHByb3ApO1xuICBpZiAoZGVjbCA9PT0gdW5kZWZpbmVkIHx8ICF0cy5pc1Byb3BlcnR5QXNzaWdubWVudChkZWNsKSkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgcmV0dXJuIGRlY2wuaW5pdGlhbGl6ZXI7XG59XG5cbmZ1bmN0aW9uIHJlc29sdmVUb1N0YXRpY1N5bWJvbChcbiAgICBpZDogdHMuSWRlbnRpZmllciwgY29udGFpbmluZ0ZpbGU6IHN0cmluZywgcmVmbGVjdG9yOiBTdGF0aWNSZWZsZWN0b3IsXG4gICAgY2hlY2tlcjogdHMuVHlwZUNoZWNrZXIpOiBTdGF0aWNTeW1ib2x8bnVsbCB7XG4gIGNvbnN0IHJlcyA9IGNoZWNrZXIuZ2V0U3ltYm9sQXRMb2NhdGlvbihpZCk7XG4gIGlmICghcmVzIHx8ICFyZXMuZGVjbGFyYXRpb25zIHx8IHJlcy5kZWNsYXJhdGlvbnMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgY29uc3QgZGVjbCA9IHJlcy5kZWNsYXJhdGlvbnNbMF07XG4gIGlmICghdHMuaXNJbXBvcnRTcGVjaWZpZXIoZGVjbCkpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBtb2R1bGVTcGVjaWZpZXIgPSBkZWNsLnBhcmVudCEucGFyZW50IS5wYXJlbnQhLm1vZHVsZVNwZWNpZmllcjtcbiAgaWYgKCF0cy5pc1N0cmluZ0xpdGVyYWwobW9kdWxlU3BlY2lmaWVyKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiByZWZsZWN0b3IudHJ5RmluZERlY2xhcmF0aW9uKG1vZHVsZVNwZWNpZmllci50ZXh0LCBpZC50ZXh0LCBjb250YWluaW5nRmlsZSk7XG59XG5cbmV4cG9ydCBjbGFzcyBTdHJpcERlY29yYXRvcnNNZXRhZGF0YVRyYW5zZm9ybWVyIGltcGxlbWVudHMgTWV0YWRhdGFUcmFuc2Zvcm1lciB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29yZURlY29yYXRvcnM6IFNldDxTdGF0aWNTeW1ib2w+LCBwcml2YXRlIHJlZmxlY3RvcjogU3RhdGljUmVmbGVjdG9yKSB7fVxuXG4gIHN0YXJ0KHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpOiBWYWx1ZVRyYW5zZm9ybXx1bmRlZmluZWQge1xuICAgIHJldHVybiAodmFsdWU6IE1ldGFkYXRhVmFsdWUsIG5vZGU6IHRzLk5vZGUpOiBNZXRhZGF0YVZhbHVlID0+IHtcbiAgICAgIGlmIChpc0NsYXNzTWV0YWRhdGEodmFsdWUpICYmIHRzLmlzQ2xhc3NEZWNsYXJhdGlvbihub2RlKSAmJiB2YWx1ZS5kZWNvcmF0b3JzKSB7XG4gICAgICAgIHZhbHVlLmRlY29yYXRvcnMgPSB2YWx1ZS5kZWNvcmF0b3JzLmZpbHRlcihkID0+IHtcbiAgICAgICAgICBpZiAoaXNNZXRhZGF0YVN5bWJvbGljQ2FsbEV4cHJlc3Npb24oZCkgJiZcbiAgICAgICAgICAgICAgaXNNZXRhZGF0YUltcG9ydGVkU3ltYm9sUmVmZXJlbmNlRXhwcmVzc2lvbihkLmV4cHJlc3Npb24pKSB7XG4gICAgICAgICAgICBjb25zdCBkZWNsYXJhdGlvbiA9IHRoaXMucmVmbGVjdG9yLnRyeUZpbmREZWNsYXJhdGlvbihcbiAgICAgICAgICAgICAgICBkLmV4cHJlc3Npb24ubW9kdWxlLCBkLmV4cHJlc3Npb24ubmFtZSwgc291cmNlRmlsZS5maWxlTmFtZSk7XG4gICAgICAgICAgICBpZiAoZGVjbGFyYXRpb24gJiYgdGhpcy5jb3JlRGVjb3JhdG9ycy5oYXMoZGVjbGFyYXRpb24pKSB7XG4gICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -13,4 +13,4 @@ export declare type TransformerFactory = (context: ts.TransformationContext) =>
13
13
  /**
14
14
  * Returns a transformer that adds the requested static methods specified by modules.
15
15
  */
16
- export declare function getAngularClassTransformerFactory(modules: PartialModule[]): TransformerFactory;
16
+ export declare function getAngularClassTransformerFactory(modules: PartialModule[], annotateForClosureCompiler: boolean): TransformerFactory;
@@ -21,7 +21,7 @@
21
21
  /**
22
22
  * Returns a transformer that adds the requested static methods specified by modules.
23
23
  */
24
- function getAngularClassTransformerFactory(modules) {
24
+ function getAngularClassTransformerFactory(modules, annotateForClosureCompiler) {
25
25
  if (modules.length === 0) {
26
26
  // If no modules are specified, just return an identity transform.
27
27
  return function () { return function (sf) { return sf; }; };
@@ -31,7 +31,7 @@
31
31
  return function (sourceFile) {
32
32
  var module = moduleMap.get(sourceFile.fileName);
33
33
  if (module && module.statements.length > 0) {
34
- var _a = tslib_1.__read(node_emitter_1.updateSourceFile(sourceFile, module, context), 1), newSourceFile = _a[0];
34
+ var _a = tslib_1.__read(node_emitter_1.updateSourceFile(sourceFile, module, annotateForClosureCompiler), 1), newSourceFile = _a[0];
35
35
  return newSourceFile;
36
36
  }
37
37
  return sourceFile;
@@ -40,4 +40,4 @@
40
40
  }
41
41
  exports.getAngularClassTransformerFactory = getAngularClassTransformerFactory;
42
42
  });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfdHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy90cmFuc2Zvcm1lcnMvcjNfdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUtILG9GQUFnRDtJQUtoRDs7T0FFRztJQUNILFNBQWdCLGlDQUFpQyxDQUFDLE9BQXdCO1FBQ3hFLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDeEIsa0VBQWtFO1lBQ2xFLE9BQU8sY0FBTSxPQUFBLFVBQUEsRUFBRSxJQUFJLE9BQUEsRUFBRSxFQUFGLENBQUUsRUFBUixDQUFRLENBQUM7U0FDdkI7UUFDRCxJQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUEwQixVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBZixDQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLE9BQU8sVUFBUyxPQUFpQztZQUMvQyxPQUFPLFVBQVMsVUFBeUI7Z0JBQ3ZDLElBQU0sTUFBTSxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQ3BDLElBQUEsb0ZBQStELEVBQTlELHFCQUE4RCxDQUFDO29CQUN0RSxPQUFPLGFBQWEsQ0FBQztpQkFDdEI7Z0JBQ0QsT0FBTyxVQUFVLENBQUM7WUFDcEIsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQWhCRCw4RUFnQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7UGFydGlhbE1vZHVsZSwgU3RhdGVtZW50LCBTdGF0aWNTeW1ib2x9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge3VwZGF0ZVNvdXJjZUZpbGV9IGZyb20gJy4vbm9kZV9lbWl0dGVyJztcblxuZXhwb3J0IHR5cGUgVHJhbnNmb3JtZXIgPSAoc291cmNlRmlsZTogdHMuU291cmNlRmlsZSkgPT4gdHMuU291cmNlRmlsZTtcbmV4cG9ydCB0eXBlIFRyYW5zZm9ybWVyRmFjdG9yeSA9IChjb250ZXh0OiB0cy5UcmFuc2Zvcm1hdGlvbkNvbnRleHQpID0+IFRyYW5zZm9ybWVyO1xuXG4vKipcbiAqIFJldHVybnMgYSB0cmFuc2Zvcm1lciB0aGF0IGFkZHMgdGhlIHJlcXVlc3RlZCBzdGF0aWMgbWV0aG9kcyBzcGVjaWZpZWQgYnkgbW9kdWxlcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEFuZ3VsYXJDbGFzc1RyYW5zZm9ybWVyRmFjdG9yeShtb2R1bGVzOiBQYXJ0aWFsTW9kdWxlW10pOiBUcmFuc2Zvcm1lckZhY3Rvcnkge1xuICBpZiAobW9kdWxlcy5sZW5ndGggPT09IDApIHtcbiAgICAvLyBJZiBubyBtb2R1bGVzIGFyZSBzcGVjaWZpZWQsIGp1c3QgcmV0dXJuIGFuIGlkZW50aXR5IHRyYW5zZm9ybS5cbiAgICByZXR1cm4gKCkgPT4gc2YgPT4gc2Y7XG4gIH1cbiAgY29uc3QgbW9kdWxlTWFwID0gbmV3IE1hcChtb2R1bGVzLm1hcDxbc3RyaW5nLCBQYXJ0aWFsTW9kdWxlXT4obSA9PiBbbS5maWxlTmFtZSwgbV0pKTtcbiAgcmV0dXJuIGZ1bmN0aW9uKGNvbnRleHQ6IHRzLlRyYW5zZm9ybWF0aW9uQ29udGV4dCkge1xuICAgIHJldHVybiBmdW5jdGlvbihzb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlKTogdHMuU291cmNlRmlsZSB7XG4gICAgICBjb25zdCBtb2R1bGUgPSBtb2R1bGVNYXAuZ2V0KHNvdXJjZUZpbGUuZmlsZU5hbWUpO1xuICAgICAgaWYgKG1vZHVsZSAmJiBtb2R1bGUuc3RhdGVtZW50cy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGNvbnN0IFtuZXdTb3VyY2VGaWxlXSA9IHVwZGF0ZVNvdXJjZUZpbGUoc291cmNlRmlsZSwgbW9kdWxlLCBjb250ZXh0KTtcbiAgICAgICAgcmV0dXJuIG5ld1NvdXJjZUZpbGU7XG4gICAgICB9XG4gICAgICByZXR1cm4gc291cmNlRmlsZTtcbiAgICB9O1xuICB9O1xufVxuIl19
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicjNfdHJhbnNmb3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy90cmFuc2Zvcm1lcnMvcjNfdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUtILG9GQUFnRDtJQUtoRDs7T0FFRztJQUNILFNBQWdCLGlDQUFpQyxDQUM3QyxPQUF3QixFQUFFLDBCQUFtQztRQUMvRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3hCLGtFQUFrRTtZQUNsRSxPQUFPLGNBQU0sT0FBQSxVQUFBLEVBQUUsSUFBSSxPQUFBLEVBQUUsRUFBRixDQUFFLEVBQVIsQ0FBUSxDQUFDO1NBQ3ZCO1FBQ0QsSUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBMEIsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQWYsQ0FBZSxDQUFDLENBQUMsQ0FBQztRQUN0RixPQUFPLFVBQVMsT0FBaUM7WUFDL0MsT0FBTyxVQUFTLFVBQXlCO2dCQUN2QyxJQUFNLE1BQU0sR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO29CQUNwQyxJQUFBLHVHQUFrRixFQUFqRixxQkFBaUYsQ0FBQztvQkFDekYsT0FBTyxhQUFhLENBQUM7aUJBQ3RCO2dCQUNELE9BQU8sVUFBVSxDQUFDO1lBQ3BCLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQztJQUNKLENBQUM7SUFqQkQsOEVBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1BhcnRpYWxNb2R1bGUsIFN0YXRlbWVudCwgU3RhdGljU3ltYm9sfSBmcm9tICdAYW5ndWxhci9jb21waWxlcic7XG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHt1cGRhdGVTb3VyY2VGaWxlfSBmcm9tICcuL25vZGVfZW1pdHRlcic7XG5cbmV4cG9ydCB0eXBlIFRyYW5zZm9ybWVyID0gKHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpID0+IHRzLlNvdXJjZUZpbGU7XG5leHBvcnQgdHlwZSBUcmFuc2Zvcm1lckZhY3RvcnkgPSAoY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KSA9PiBUcmFuc2Zvcm1lcjtcblxuLyoqXG4gKiBSZXR1cm5zIGEgdHJhbnNmb3JtZXIgdGhhdCBhZGRzIHRoZSByZXF1ZXN0ZWQgc3RhdGljIG1ldGhvZHMgc3BlY2lmaWVkIGJ5IG1vZHVsZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRBbmd1bGFyQ2xhc3NUcmFuc2Zvcm1lckZhY3RvcnkoXG4gICAgbW9kdWxlczogUGFydGlhbE1vZHVsZVtdLCBhbm5vdGF0ZUZvckNsb3N1cmVDb21waWxlcjogYm9vbGVhbik6IFRyYW5zZm9ybWVyRmFjdG9yeSB7XG4gIGlmIChtb2R1bGVzLmxlbmd0aCA9PT0gMCkge1xuICAgIC8vIElmIG5vIG1vZHVsZXMgYXJlIHNwZWNpZmllZCwganVzdCByZXR1cm4gYW4gaWRlbnRpdHkgdHJhbnNmb3JtLlxuICAgIHJldHVybiAoKSA9PiBzZiA9PiBzZjtcbiAgfVxuICBjb25zdCBtb2R1bGVNYXAgPSBuZXcgTWFwKG1vZHVsZXMubWFwPFtzdHJpbmcsIFBhcnRpYWxNb2R1bGVdPihtID0+IFttLmZpbGVOYW1lLCBtXSkpO1xuICByZXR1cm4gZnVuY3Rpb24oY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KSB7XG4gICAgcmV0dXJuIGZ1bmN0aW9uKHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpOiB0cy5Tb3VyY2VGaWxlIHtcbiAgICAgIGNvbnN0IG1vZHVsZSA9IG1vZHVsZU1hcC5nZXQoc291cmNlRmlsZS5maWxlTmFtZSk7XG4gICAgICBpZiAobW9kdWxlICYmIG1vZHVsZS5zdGF0ZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3QgW25ld1NvdXJjZUZpbGVdID0gdXBkYXRlU291cmNlRmlsZShzb3VyY2VGaWxlLCBtb2R1bGUsIGFubm90YXRlRm9yQ2xvc3VyZUNvbXBpbGVyKTtcbiAgICAgICAgcmV0dXJuIG5ld1NvdXJjZUZpbGU7XG4gICAgICB9XG4gICAgICByZXR1cm4gc291cmNlRmlsZTtcbiAgICB9O1xuICB9O1xufVxuIl19
@@ -42,7 +42,8 @@
42
42
  file: undefined,
43
43
  start: undefined,
44
44
  length: undefined,
45
- category: ts.DiagnosticCategory.Message, messageText: messageText,
45
+ category: ts.DiagnosticCategory.Message,
46
+ messageText: messageText,
46
47
  code: api_1.DEFAULT_ERROR_CODE,
47
48
  source: api_1.SOURCE,
48
49
  };
@@ -101,9 +102,11 @@
101
102
  file: file,
102
103
  messageText: ng.messageText,
103
104
  category: ng.category,
104
- code: ng.code, start: start, length: length,
105
+ code: ng.code,
106
+ start: start,
107
+ length: length,
105
108
  };
106
109
  }
107
110
  exports.ngToTsDiagnostic = ngToTsDiagnostic;
108
111
  });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvdHJhbnNmb3JtZXJzL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUgsOENBQThDO0lBQzlDLDJCQUE2QjtJQUM3QiwrQkFBaUM7SUFFakMsa0VBQThFO0lBRWpFLFFBQUEsZUFBZSxHQUFHLG9FQUFvRSxDQUFDO0lBQ3ZGLFFBQUEsR0FBRyxHQUFHLFVBQVUsQ0FBQztJQUNqQixRQUFBLEVBQUUsR0FBRyx3QkFBd0IsQ0FBQztJQUkzQywwRkFBMEY7SUFDMUYsU0FBZ0IsbUJBQW1CLENBQUMsT0FBbUI7UUFDckQsT0FBUSxPQUFlLENBQUMsaUJBQWlCLENBQUM7SUFDNUMsQ0FBQztJQUZELGtEQUVDO0lBRUQsU0FBZ0IsS0FBSyxDQUFDLEdBQVc7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBbUIsR0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUZELHNCQUVDO0lBRUQsU0FBZ0IsU0FBUyxDQUFDLEdBQVc7UUFDbkMsTUFBTSxzQkFBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFGRCw4QkFFQztJQUVELFNBQWdCLHVCQUF1QixDQUFDLFdBQW1CO1FBQ3pELE9BQU87WUFDTCxJQUFJLEVBQUUsU0FBUztZQUNmLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLFFBQVEsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFLFdBQVcsYUFBQTtZQUNwRCxJQUFJLEVBQUUsd0JBQWtCO1lBQ3hCLE1BQU0sRUFBRSxZQUFNO1NBQ2YsQ0FBQztJQUNKLENBQUM7SUFURCwwREFTQztJQUVELFNBQWdCLFdBQVcsQ0FBQyxRQUFnQixFQUFFLE9BQXdCO1FBQ3BFLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUZELGtDQUVDO0lBRUQsU0FBZ0Isa0JBQWtCLENBQUMsUUFBZ0IsRUFBRSxRQUFrQjs7UUFDckUsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPLFFBQVEsQ0FBQzs7WUFDL0IsS0FBa0IsSUFBQSxLQUFBLGlCQUFBLFFBQVEsSUFBSSxFQUFFLENBQUEsZ0JBQUEsNEJBQUU7Z0JBQTdCLElBQU0sR0FBRyxXQUFBO2dCQUNaLElBQU0sR0FBRyxHQUFHLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxHQUFHLEVBQUU7b0JBQ1AsT0FBTyxHQUFHLENBQUM7aUJBQ1o7YUFDRjs7Ozs7Ozs7O1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQVRELGdEQVNDO0lBRUQsU0FBUyxvQkFBb0IsQ0FBQyxNQUFjLEVBQUUsUUFBZ0I7UUFDNUQsSUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDNUMsT0FBTyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFnQixnQkFBZ0IsQ0FBQyxFQUFjO1FBQzdDLElBQUksSUFBNkIsQ0FBQztRQUNsQyxJQUFJLEtBQXVCLENBQUM7UUFDNUIsSUFBSSxNQUF3QixDQUFDO1FBQzdCLElBQUksRUFBRSxDQUFDLElBQUksRUFBRTtZQUNYLDJDQUEyQztZQUMzQyx5RUFBeUU7WUFDekUsdUNBQXVDO1lBQ3ZDLElBQUksR0FBRyxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFtQixDQUFDO1lBQy9GLEtBQUssR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDN0IsTUFBTSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDckM7UUFDRCxPQUFPO1lBQ0wsSUFBSSxNQUFBO1lBQ0osV0FBVyxFQUFFLEVBQUUsQ0FBQyxXQUFXO1lBQzNCLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUTtZQUNyQixJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxLQUFLLE9BQUEsRUFBRSxNQUFNLFFBQUE7U0FDN0IsQ0FBQztJQUNKLENBQUM7SUFsQkQsNENBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge3N5bnRheEVycm9yfSBmcm9tICdAYW5ndWxhci9jb21waWxlcic7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7Q29tcGlsZXJPcHRpb25zLCBERUZBVUxUX0VSUk9SX0NPREUsIERpYWdub3N0aWMsIFNPVVJDRX0gZnJvbSAnLi9hcGknO1xuXG5leHBvcnQgY29uc3QgR0VORVJBVEVEX0ZJTEVTID0gLyguKj8pXFwuKG5nZmFjdG9yeXxzaGltXFwubmdzdHlsZXxuZ3N0eWxlfG5nc3VtbWFyeSlcXC4oanN8ZFxcLnRzfHRzKSQvO1xuZXhwb3J0IGNvbnN0IERUUyA9IC9cXC5kXFwudHMkLztcbmV4cG9ydCBjb25zdCBUUyA9IC9eKD8hLipcXC5kXFwudHMkKS4qXFwudHMkLztcblxuZXhwb3J0IGNvbnN0IGVudW0gU3RydWN0dXJlSXNSZXVzZWQge05vdCA9IDAsIFNhZmVNb2R1bGVzID0gMSwgQ29tcGxldGVseSA9IDJ9XG5cbi8vIE5vdGU6IFRoaXMgaXMgYW4gaW50ZXJuYWwgcHJvcGVydHkgaW4gVHlwZVNjcmlwdC4gVXNlIGl0IG9ubHkgZm9yIGFzc2VydGlvbnMgYW5kIHRlc3RzLlxuZXhwb3J0IGZ1bmN0aW9uIHRzU3RydWN0dXJlSXNSZXVzZWQocHJvZ3JhbTogdHMuUHJvZ3JhbSk6IFN0cnVjdHVyZUlzUmV1c2VkIHtcbiAgcmV0dXJuIChwcm9ncmFtIGFzIGFueSkuc3RydWN0dXJlSXNSZXVzZWQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBlcnJvcihtc2c6IHN0cmluZyk6IG5ldmVyIHtcbiAgdGhyb3cgbmV3IEVycm9yKGBJbnRlcm5hbCBlcnJvcjogJHttc2d9YCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VyRXJyb3IobXNnOiBzdHJpbmcpOiBuZXZlciB7XG4gIHRocm93IHN5bnRheEVycm9yKG1zZyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVNZXNzYWdlRGlhZ25vc3RpYyhtZXNzYWdlVGV4dDogc3RyaW5nKTogdHMuRGlhZ25vc3RpYyZEaWFnbm9zdGljIHtcbiAgcmV0dXJuIHtcbiAgICBmaWxlOiB1bmRlZmluZWQsXG4gICAgc3RhcnQ6IHVuZGVmaW5lZCxcbiAgICBsZW5ndGg6IHVuZGVmaW5lZCxcbiAgICBjYXRlZ29yeTogdHMuRGlhZ25vc3RpY0NhdGVnb3J5Lk1lc3NhZ2UsIG1lc3NhZ2VUZXh0LFxuICAgIGNvZGU6IERFRkFVTFRfRVJST1JfQ09ERSxcbiAgICBzb3VyY2U6IFNPVVJDRSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzSW5Sb290RGlyKGZpbGVOYW1lOiBzdHJpbmcsIG9wdGlvbnM6IENvbXBpbGVyT3B0aW9ucykge1xuICByZXR1cm4gIW9wdGlvbnMucm9vdERpciB8fCBwYXRoU3RhcnRzV2l0aFByZWZpeChvcHRpb25zLnJvb3REaXIsIGZpbGVOYW1lKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlbGF0aXZlVG9Sb290RGlycyhmaWxlUGF0aDogc3RyaW5nLCByb290RGlyczogc3RyaW5nW10pOiBzdHJpbmcge1xuICBpZiAoIWZpbGVQYXRoKSByZXR1cm4gZmlsZVBhdGg7XG4gIGZvciAoY29uc3QgZGlyIG9mIHJvb3REaXJzIHx8IFtdKSB7XG4gICAgY29uc3QgcmVsID0gcGF0aFN0YXJ0c1dpdGhQcmVmaXgoZGlyLCBmaWxlUGF0aCk7XG4gICAgaWYgKHJlbCkge1xuICAgICAgcmV0dXJuIHJlbDtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIGZpbGVQYXRoO1xufVxuXG5mdW5jdGlvbiBwYXRoU3RhcnRzV2l0aFByZWZpeChwcmVmaXg6IHN0cmluZywgZnVsbFBhdGg6IHN0cmluZyk6IHN0cmluZ3xudWxsIHtcbiAgY29uc3QgcmVsID0gcGF0aC5yZWxhdGl2ZShwcmVmaXgsIGZ1bGxQYXRoKTtcbiAgcmV0dXJuIHJlbC5zdGFydHNXaXRoKCcuLicpID8gbnVsbCA6IHJlbDtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhIG5nLkRpYWdub3N0aWMgaW50byBhIHRzLkRpYWdub3N0aWMuXG4gKiBUaGlzIGxvb3NlcyBzb21lIGluZm9ybWF0aW9uLCBhbmQgYWxzbyB1c2VzIGFuIGluY29tcGxldGUgb2JqZWN0IGFzIGBmaWxlYC5cbiAqXG4gKiBJLmUuIG9ubHkgdXNlIHRoaXMgd2hlcmUgdGhlIEFQSSBhbGxvd3Mgb25seSBhIHRzLkRpYWdub3N0aWMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBuZ1RvVHNEaWFnbm9zdGljKG5nOiBEaWFnbm9zdGljKTogdHMuRGlhZ25vc3RpYyB7XG4gIGxldCBmaWxlOiB0cy5Tb3VyY2VGaWxlfHVuZGVmaW5lZDtcbiAgbGV0IHN0YXJ0OiBudW1iZXJ8dW5kZWZpbmVkO1xuICBsZXQgbGVuZ3RoOiBudW1iZXJ8dW5kZWZpbmVkO1xuICBpZiAobmcuc3Bhbikge1xuICAgIC8vIE5vdGU6IFdlIGNhbid0IHVzZSBhIHJlYWwgdHMuU291cmNlRmlsZSxcbiAgICAvLyBidXQgd2UgY2FuIGF0IGxlYXN0IG1pcnJvciB0aGUgcHJvcGVydGllcyBgZmlsZU5hbWVgIGFuZCBgdGV4dGAsIHdoaWNoXG4gICAgLy8gYXJlIG1vc3RseSB1c2VkIGZvciBlcnJvciByZXBvcnRpbmcuXG4gICAgZmlsZSA9IHsgZmlsZU5hbWU6IG5nLnNwYW4uc3RhcnQuZmlsZS51cmwsIHRleHQ6IG5nLnNwYW4uc3RhcnQuZmlsZS5jb250ZW50IH0gYXMgdHMuU291cmNlRmlsZTtcbiAgICBzdGFydCA9IG5nLnNwYW4uc3RhcnQub2Zmc2V0O1xuICAgIGxlbmd0aCA9IG5nLnNwYW4uZW5kLm9mZnNldCAtIHN0YXJ0O1xuICB9XG4gIHJldHVybiB7XG4gICAgZmlsZSxcbiAgICBtZXNzYWdlVGV4dDogbmcubWVzc2FnZVRleHQsXG4gICAgY2F0ZWdvcnk6IG5nLmNhdGVnb3J5LFxuICAgIGNvZGU6IG5nLmNvZGUsIHN0YXJ0LCBsZW5ndGgsXG4gIH07XG59XG4iXX0=
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvdHJhbnNmb3JtZXJzL3V0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUgsOENBQThDO0lBQzlDLDJCQUE2QjtJQUM3QiwrQkFBaUM7SUFFakMsa0VBQThFO0lBRWpFLFFBQUEsZUFBZSxHQUFHLG9FQUFvRSxDQUFDO0lBQ3ZGLFFBQUEsR0FBRyxHQUFHLFVBQVUsQ0FBQztJQUNqQixRQUFBLEVBQUUsR0FBRyx3QkFBd0IsQ0FBQztJQVEzQywwRkFBMEY7SUFDMUYsU0FBZ0IsbUJBQW1CLENBQUMsT0FBbUI7UUFDckQsT0FBUSxPQUFlLENBQUMsaUJBQWlCLENBQUM7SUFDNUMsQ0FBQztJQUZELGtEQUVDO0lBRUQsU0FBZ0IsS0FBSyxDQUFDLEdBQVc7UUFDL0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBbUIsR0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUZELHNCQUVDO0lBRUQsU0FBZ0IsU0FBUyxDQUFDLEdBQVc7UUFDbkMsTUFBTSxzQkFBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFGRCw4QkFFQztJQUVELFNBQWdCLHVCQUF1QixDQUFDLFdBQW1CO1FBQ3pELE9BQU87WUFDTCxJQUFJLEVBQUUsU0FBUztZQUNmLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sRUFBRSxTQUFTO1lBQ2pCLFFBQVEsRUFBRSxFQUFFLENBQUMsa0JBQWtCLENBQUMsT0FBTztZQUN2QyxXQUFXLGFBQUE7WUFDWCxJQUFJLEVBQUUsd0JBQWtCO1lBQ3hCLE1BQU0sRUFBRSxZQUFNO1NBQ2YsQ0FBQztJQUNKLENBQUM7SUFWRCwwREFVQztJQUVELFNBQWdCLFdBQVcsQ0FBQyxRQUFnQixFQUFFLE9BQXdCO1FBQ3BFLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxJQUFJLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUZELGtDQUVDO0lBRUQsU0FBZ0Isa0JBQWtCLENBQUMsUUFBZ0IsRUFBRSxRQUFrQjs7UUFDckUsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPLFFBQVEsQ0FBQzs7WUFDL0IsS0FBa0IsSUFBQSxLQUFBLGlCQUFBLFFBQVEsSUFBSSxFQUFFLENBQUEsZ0JBQUEsNEJBQUU7Z0JBQTdCLElBQU0sR0FBRyxXQUFBO2dCQUNaLElBQU0sR0FBRyxHQUFHLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDaEQsSUFBSSxHQUFHLEVBQUU7b0JBQ1AsT0FBTyxHQUFHLENBQUM7aUJBQ1o7YUFDRjs7Ozs7Ozs7O1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQVRELGdEQVNDO0lBRUQsU0FBUyxvQkFBb0IsQ0FBQyxNQUFjLEVBQUUsUUFBZ0I7UUFDNUQsSUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDNUMsT0FBTyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxTQUFnQixnQkFBZ0IsQ0FBQyxFQUFjO1FBQzdDLElBQUksSUFBNkIsQ0FBQztRQUNsQyxJQUFJLEtBQXVCLENBQUM7UUFDNUIsSUFBSSxNQUF3QixDQUFDO1FBQzdCLElBQUksRUFBRSxDQUFDLElBQUksRUFBRTtZQUNYLDJDQUEyQztZQUMzQyx5RUFBeUU7WUFDekUsdUNBQXVDO1lBQ3ZDLElBQUksR0FBRyxFQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFrQixDQUFDO1lBQzdGLEtBQUssR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDN0IsTUFBTSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7U0FDckM7UUFDRCxPQUFPO1lBQ0wsSUFBSSxNQUFBO1lBQ0osV0FBVyxFQUFFLEVBQUUsQ0FBQyxXQUFXO1lBQzNCLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUTtZQUNyQixJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUk7WUFDYixLQUFLLE9BQUE7WUFDTCxNQUFNLFFBQUE7U0FDUCxDQUFDO0lBQ0osQ0FBQztJQXBCRCw0Q0FvQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7c3ludGF4RXJyb3J9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuaW1wb3J0IHtDb21waWxlck9wdGlvbnMsIERFRkFVTFRfRVJST1JfQ09ERSwgRGlhZ25vc3RpYywgU09VUkNFfSBmcm9tICcuL2FwaSc7XG5cbmV4cG9ydCBjb25zdCBHRU5FUkFURURfRklMRVMgPSAvKC4qPylcXC4obmdmYWN0b3J5fHNoaW1cXC5uZ3N0eWxlfG5nc3R5bGV8bmdzdW1tYXJ5KVxcLihqc3xkXFwudHN8dHMpJC87XG5leHBvcnQgY29uc3QgRFRTID0gL1xcLmRcXC50cyQvO1xuZXhwb3J0IGNvbnN0IFRTID0gL14oPyEuKlxcLmRcXC50cyQpLipcXC50cyQvO1xuXG5leHBvcnQgY29uc3QgZW51bSBTdHJ1Y3R1cmVJc1JldXNlZCB7XG4gIE5vdCA9IDAsXG4gIFNhZmVNb2R1bGVzID0gMSxcbiAgQ29tcGxldGVseSA9IDJcbn1cblxuLy8gTm90ZTogVGhpcyBpcyBhbiBpbnRlcm5hbCBwcm9wZXJ0eSBpbiBUeXBlU2NyaXB0LiBVc2UgaXQgb25seSBmb3IgYXNzZXJ0aW9ucyBhbmQgdGVzdHMuXG5leHBvcnQgZnVuY3Rpb24gdHNTdHJ1Y3R1cmVJc1JldXNlZChwcm9ncmFtOiB0cy5Qcm9ncmFtKTogU3RydWN0dXJlSXNSZXVzZWQge1xuICByZXR1cm4gKHByb2dyYW0gYXMgYW55KS5zdHJ1Y3R1cmVJc1JldXNlZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVycm9yKG1zZzogc3RyaW5nKTogbmV2ZXIge1xuICB0aHJvdyBuZXcgRXJyb3IoYEludGVybmFsIGVycm9yOiAke21zZ31gKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVzZXJFcnJvcihtc2c6IHN0cmluZyk6IG5ldmVyIHtcbiAgdGhyb3cgc3ludGF4RXJyb3IobXNnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU1lc3NhZ2VEaWFnbm9zdGljKG1lc3NhZ2VUZXh0OiBzdHJpbmcpOiB0cy5EaWFnbm9zdGljJkRpYWdub3N0aWMge1xuICByZXR1cm4ge1xuICAgIGZpbGU6IHVuZGVmaW5lZCxcbiAgICBzdGFydDogdW5kZWZpbmVkLFxuICAgIGxlbmd0aDogdW5kZWZpbmVkLFxuICAgIGNhdGVnb3J5OiB0cy5EaWFnbm9zdGljQ2F0ZWdvcnkuTWVzc2FnZSxcbiAgICBtZXNzYWdlVGV4dCxcbiAgICBjb2RlOiBERUZBVUxUX0VSUk9SX0NPREUsXG4gICAgc291cmNlOiBTT1VSQ0UsXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0luUm9vdERpcihmaWxlTmFtZTogc3RyaW5nLCBvcHRpb25zOiBDb21waWxlck9wdGlvbnMpIHtcbiAgcmV0dXJuICFvcHRpb25zLnJvb3REaXIgfHwgcGF0aFN0YXJ0c1dpdGhQcmVmaXgob3B0aW9ucy5yb290RGlyLCBmaWxlTmFtZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZWxhdGl2ZVRvUm9vdERpcnMoZmlsZVBhdGg6IHN0cmluZywgcm9vdERpcnM6IHN0cmluZ1tdKTogc3RyaW5nIHtcbiAgaWYgKCFmaWxlUGF0aCkgcmV0dXJuIGZpbGVQYXRoO1xuICBmb3IgKGNvbnN0IGRpciBvZiByb290RGlycyB8fCBbXSkge1xuICAgIGNvbnN0IHJlbCA9IHBhdGhTdGFydHNXaXRoUHJlZml4KGRpciwgZmlsZVBhdGgpO1xuICAgIGlmIChyZWwpIHtcbiAgICAgIHJldHVybiByZWw7XG4gICAgfVxuICB9XG4gIHJldHVybiBmaWxlUGF0aDtcbn1cblxuZnVuY3Rpb24gcGF0aFN0YXJ0c1dpdGhQcmVmaXgocHJlZml4OiBzdHJpbmcsIGZ1bGxQYXRoOiBzdHJpbmcpOiBzdHJpbmd8bnVsbCB7XG4gIGNvbnN0IHJlbCA9IHBhdGgucmVsYXRpdmUocHJlZml4LCBmdWxsUGF0aCk7XG4gIHJldHVybiByZWwuc3RhcnRzV2l0aCgnLi4nKSA/IG51bGwgOiByZWw7XG59XG5cbi8qKlxuICogQ29udmVydHMgYSBuZy5EaWFnbm9zdGljIGludG8gYSB0cy5EaWFnbm9zdGljLlxuICogVGhpcyBsb29zZXMgc29tZSBpbmZvcm1hdGlvbiwgYW5kIGFsc28gdXNlcyBhbiBpbmNvbXBsZXRlIG9iamVjdCBhcyBgZmlsZWAuXG4gKlxuICogSS5lLiBvbmx5IHVzZSB0aGlzIHdoZXJlIHRoZSBBUEkgYWxsb3dzIG9ubHkgYSB0cy5EaWFnbm9zdGljLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbmdUb1RzRGlhZ25vc3RpYyhuZzogRGlhZ25vc3RpYyk6IHRzLkRpYWdub3N0aWMge1xuICBsZXQgZmlsZTogdHMuU291cmNlRmlsZXx1bmRlZmluZWQ7XG4gIGxldCBzdGFydDogbnVtYmVyfHVuZGVmaW5lZDtcbiAgbGV0IGxlbmd0aDogbnVtYmVyfHVuZGVmaW5lZDtcbiAgaWYgKG5nLnNwYW4pIHtcbiAgICAvLyBOb3RlOiBXZSBjYW4ndCB1c2UgYSByZWFsIHRzLlNvdXJjZUZpbGUsXG4gICAgLy8gYnV0IHdlIGNhbiBhdCBsZWFzdCBtaXJyb3IgdGhlIHByb3BlcnRpZXMgYGZpbGVOYW1lYCBhbmQgYHRleHRgLCB3aGljaFxuICAgIC8vIGFyZSBtb3N0bHkgdXNlZCBmb3IgZXJyb3IgcmVwb3J0aW5nLlxuICAgIGZpbGUgPSB7ZmlsZU5hbWU6IG5nLnNwYW4uc3RhcnQuZmlsZS51cmwsIHRleHQ6IG5nLnNwYW4uc3RhcnQuZmlsZS5jb250ZW50fSBhcyB0cy5Tb3VyY2VGaWxlO1xuICAgIHN0YXJ0ID0gbmcuc3Bhbi5zdGFydC5vZmZzZXQ7XG4gICAgbGVuZ3RoID0gbmcuc3Bhbi5lbmQub2Zmc2V0IC0gc3RhcnQ7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBmaWxlLFxuICAgIG1lc3NhZ2VUZXh0OiBuZy5tZXNzYWdlVGV4dCxcbiAgICBjYXRlZ29yeTogbmcuY2F0ZWdvcnksXG4gICAgY29kZTogbmcuY29kZSxcbiAgICBzdGFydCxcbiAgICBsZW5ndGgsXG4gIH07XG59XG4iXX0=
@@ -65,4 +65,4 @@
65
65
  }
66
66
  exports.verifySupportedTypeScriptVersion = verifySupportedTypeScriptVersion;
67
67
  });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdF9zdXBwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy90eXBlc2NyaXB0X3N1cHBvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFBQTs7Ozs7O09BTUc7SUFDSCwrQkFBaUM7SUFDakMsK0ZBQWlFO0lBRWpFOzs7T0FHRztJQUNILElBQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQztJQUUvQjs7OztPQUlHO0lBQ0gsSUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDO0lBRS9COzs7T0FHRztJQUNILElBQUksU0FBUyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUM7SUFFM0IsU0FBZ0IsOEJBQThCLENBQUMsT0FBZTtRQUM1RCxTQUFTLEdBQUcsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFGRCx3RUFFQztJQUVELFNBQWdCLGtDQUFrQztRQUNoRCxTQUFTLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBRkQsZ0ZBRUM7SUFFRDs7Ozs7Ozs7Ozs7T0FXRztJQUNILFNBQWdCLFlBQVksQ0FBQyxPQUFlLEVBQUUsVUFBa0IsRUFBRSxVQUFrQjtRQUNsRixJQUFJLENBQUMsb0NBQWUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLG9DQUFlLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQzNGLE1BQU0sSUFBSSxLQUFLLENBQ1gsZ0RBQThDLFVBQVUsY0FBUyxVQUFVLGFBQVEsT0FBTyx3QkFBcUIsQ0FBQyxDQUFDO1NBQ3RIO0lBQ0gsQ0FBQztJQUxELG9DQUtDO0lBRUQsU0FBZ0IsZ0NBQWdDO1FBQzlDLFlBQVksQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFGRCw0RUFFQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHtjb21wYXJlVmVyc2lvbnN9IGZyb20gJy4vZGlhZ25vc3RpY3MvdHlwZXNjcmlwdF92ZXJzaW9uJztcblxuLyoqXG4gKiBNaW5pbXVtIHN1cHBvcnRlZCBUeXBlU2NyaXB0IHZlcnNpb25cbiAqIOKIgCBzdXBwb3J0ZWQgdHlwZXNjcmlwdCB2ZXJzaW9uIHYsIHYgPj0gTUlOX1RTX1ZFUlNJT05cbiAqL1xuY29uc3QgTUlOX1RTX1ZFUlNJT04gPSAnMy42LjQnO1xuXG4vKipcbiAqIFN1cHJlbXVtIG9mIHN1cHBvcnRlZCBUeXBlU2NyaXB0IHZlcnNpb25zXG4gKiDiiIAgc3VwcG9ydGVkIHR5cGVzY3JpcHQgdmVyc2lvbiB2LCB2IDwgTUFYX1RTX1ZFUlNJT05cbiAqIE1BWF9UU19WRVJTSU9OIGlzIG5vdCBjb25zaWRlcmVkIGFzIGEgc3VwcG9ydGVkIFR5cGVTY3JpcHQgdmVyc2lvblxuICovXG5jb25zdCBNQVhfVFNfVkVSU0lPTiA9ICczLjkuMCc7XG5cbi8qKlxuICogVGhlIGN1cnJlbnRseSB1c2VkIHZlcnNpb24gb2YgVHlwZVNjcmlwdCwgd2hpY2ggY2FuIGJlIGFkanVzdGVkIGZvciB0ZXN0aW5nIHB1cnBvc2VzIHVzaW5nXG4gKiBgc2V0VHlwZVNjcmlwdFZlcnNpb25Gb3JUZXN0aW5nYCBhbmQgYHJlc3RvcmVUeXBlU2NyaXB0VmVyc2lvbkZvclRlc3RpbmdgIGJlbG93LlxuICovXG5sZXQgdHNWZXJzaW9uID0gdHMudmVyc2lvbjtcblxuZXhwb3J0IGZ1bmN0aW9uIHNldFR5cGVTY3JpcHRWZXJzaW9uRm9yVGVzdGluZyh2ZXJzaW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgdHNWZXJzaW9uID0gdmVyc2lvbjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlc3RvcmVUeXBlU2NyaXB0VmVyc2lvbkZvclRlc3RpbmcoKTogdm9pZCB7XG4gIHRzVmVyc2lvbiA9IHRzLnZlcnNpb247XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgYSBnaXZlbiB2ZXJzaW9uIOKIiCBbbWluVmVyc2lvbiwgbWF4VmVyc2lvbltcbiAqIEFuIGVycm9yIHdpbGwgYmUgdGhyb3duIGlmIHRoZSBmb2xsb3dpbmcgc3RhdGVtZW50cyBhcmUgc2ltdWx0YW5lb3VzbHkgdHJ1ZTpcbiAqIC0gdGhlIGdpdmVuIHZlcnNpb24g4oiJIFttaW5WZXJzaW9uLCBtYXhWZXJzaW9uWyxcbiAqXG4gKiBAcGFyYW0gdmVyc2lvbiBUaGUgdmVyc2lvbiBvbiB3aGljaCB0aGUgY2hlY2sgd2lsbCBiZSBwZXJmb3JtZWRcbiAqIEBwYXJhbSBtaW5WZXJzaW9uIFRoZSBsb3dlciBib3VuZCB2ZXJzaW9uLiBBIHZhbGlkIHZlcnNpb24gbmVlZHMgdG8gYmUgZ3JlYXRlciB0aGFuIG1pblZlcnNpb25cbiAqIEBwYXJhbSBtYXhWZXJzaW9uIFRoZSB1cHBlciBib3VuZCB2ZXJzaW9uLiBBIHZhbGlkIHZlcnNpb24gbmVlZHMgdG8gYmUgc3RyaWN0bHkgbGVzcyB0aGFuXG4gKiBtYXhWZXJzaW9uXG4gKlxuICogQHRocm93cyBXaWxsIHRocm93IGFuIGVycm9yIGlmIHRoZSBnaXZlbiB2ZXJzaW9uIOKIiSBbbWluVmVyc2lvbiwgbWF4VmVyc2lvbltcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrVmVyc2lvbih2ZXJzaW9uOiBzdHJpbmcsIG1pblZlcnNpb246IHN0cmluZywgbWF4VmVyc2lvbjogc3RyaW5nKSB7XG4gIGlmICgoY29tcGFyZVZlcnNpb25zKHZlcnNpb24sIG1pblZlcnNpb24pIDwgMCB8fCBjb21wYXJlVmVyc2lvbnModmVyc2lvbiwgbWF4VmVyc2lvbikgPj0gMCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUaGUgQW5ndWxhciBDb21waWxlciByZXF1aXJlcyBUeXBlU2NyaXB0ID49JHttaW5WZXJzaW9ufSBhbmQgPCR7bWF4VmVyc2lvbn0gYnV0ICR7dmVyc2lvbn0gd2FzIGZvdW5kIGluc3RlYWQuYCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZlcmlmeVN1cHBvcnRlZFR5cGVTY3JpcHRWZXJzaW9uKCk6IHZvaWQge1xuICBjaGVja1ZlcnNpb24odHNWZXJzaW9uLCBNSU5fVFNfVkVSU0lPTiwgTUFYX1RTX1ZFUlNJT04pO1xufVxuIl19
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdF9zdXBwb3J0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy90eXBlc2NyaXB0X3N1cHBvcnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7SUFBQTs7Ozs7O09BTUc7SUFDSCwrQkFBaUM7SUFDakMsK0ZBQWlFO0lBRWpFOzs7T0FHRztJQUNILElBQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQztJQUUvQjs7OztPQUlHO0lBQ0gsSUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDO0lBRS9COzs7T0FHRztJQUNILElBQUksU0FBUyxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUM7SUFFM0IsU0FBZ0IsOEJBQThCLENBQUMsT0FBZTtRQUM1RCxTQUFTLEdBQUcsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFGRCx3RUFFQztJQUVELFNBQWdCLGtDQUFrQztRQUNoRCxTQUFTLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBRkQsZ0ZBRUM7SUFFRDs7Ozs7Ozs7Ozs7T0FXRztJQUNILFNBQWdCLFlBQVksQ0FBQyxPQUFlLEVBQUUsVUFBa0IsRUFBRSxVQUFrQjtRQUNsRixJQUFJLENBQUMsb0NBQWUsQ0FBQyxPQUFPLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLG9DQUFlLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQzNGLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0RBQThDLFVBQVUsY0FDcEUsVUFBVSxhQUFRLE9BQU8sd0JBQXFCLENBQUMsQ0FBQztTQUNyRDtJQUNILENBQUM7SUFMRCxvQ0FLQztJQUVELFNBQWdCLGdDQUFnQztRQUM5QyxZQUFZLENBQUMsU0FBUyxFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRkQsNEVBRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcbmltcG9ydCB7Y29tcGFyZVZlcnNpb25zfSBmcm9tICcuL2RpYWdub3N0aWNzL3R5cGVzY3JpcHRfdmVyc2lvbic7XG5cbi8qKlxuICogTWluaW11bSBzdXBwb3J0ZWQgVHlwZVNjcmlwdCB2ZXJzaW9uXG4gKiDiiIAgc3VwcG9ydGVkIHR5cGVzY3JpcHQgdmVyc2lvbiB2LCB2ID49IE1JTl9UU19WRVJTSU9OXG4gKi9cbmNvbnN0IE1JTl9UU19WRVJTSU9OID0gJzMuNi40JztcblxuLyoqXG4gKiBTdXByZW11bSBvZiBzdXBwb3J0ZWQgVHlwZVNjcmlwdCB2ZXJzaW9uc1xuICog4oiAIHN1cHBvcnRlZCB0eXBlc2NyaXB0IHZlcnNpb24gdiwgdiA8IE1BWF9UU19WRVJTSU9OXG4gKiBNQVhfVFNfVkVSU0lPTiBpcyBub3QgY29uc2lkZXJlZCBhcyBhIHN1cHBvcnRlZCBUeXBlU2NyaXB0IHZlcnNpb25cbiAqL1xuY29uc3QgTUFYX1RTX1ZFUlNJT04gPSAnMy45LjAnO1xuXG4vKipcbiAqIFRoZSBjdXJyZW50bHkgdXNlZCB2ZXJzaW9uIG9mIFR5cGVTY3JpcHQsIHdoaWNoIGNhbiBiZSBhZGp1c3RlZCBmb3IgdGVzdGluZyBwdXJwb3NlcyB1c2luZ1xuICogYHNldFR5cGVTY3JpcHRWZXJzaW9uRm9yVGVzdGluZ2AgYW5kIGByZXN0b3JlVHlwZVNjcmlwdFZlcnNpb25Gb3JUZXN0aW5nYCBiZWxvdy5cbiAqL1xubGV0IHRzVmVyc2lvbiA9IHRzLnZlcnNpb247XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRUeXBlU2NyaXB0VmVyc2lvbkZvclRlc3RpbmcodmVyc2lvbjogc3RyaW5nKTogdm9pZCB7XG4gIHRzVmVyc2lvbiA9IHZlcnNpb247XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZXN0b3JlVHlwZVNjcmlwdFZlcnNpb25Gb3JUZXN0aW5nKCk6IHZvaWQge1xuICB0c1ZlcnNpb24gPSB0cy52ZXJzaW9uO1xufVxuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIGEgZ2l2ZW4gdmVyc2lvbiDiiIggW21pblZlcnNpb24sIG1heFZlcnNpb25bXG4gKiBBbiBlcnJvciB3aWxsIGJlIHRocm93biBpZiB0aGUgZm9sbG93aW5nIHN0YXRlbWVudHMgYXJlIHNpbXVsdGFuZW91c2x5IHRydWU6XG4gKiAtIHRoZSBnaXZlbiB2ZXJzaW9uIOKIiSBbbWluVmVyc2lvbiwgbWF4VmVyc2lvblssXG4gKlxuICogQHBhcmFtIHZlcnNpb24gVGhlIHZlcnNpb24gb24gd2hpY2ggdGhlIGNoZWNrIHdpbGwgYmUgcGVyZm9ybWVkXG4gKiBAcGFyYW0gbWluVmVyc2lvbiBUaGUgbG93ZXIgYm91bmQgdmVyc2lvbi4gQSB2YWxpZCB2ZXJzaW9uIG5lZWRzIHRvIGJlIGdyZWF0ZXIgdGhhbiBtaW5WZXJzaW9uXG4gKiBAcGFyYW0gbWF4VmVyc2lvbiBUaGUgdXBwZXIgYm91bmQgdmVyc2lvbi4gQSB2YWxpZCB2ZXJzaW9uIG5lZWRzIHRvIGJlIHN0cmljdGx5IGxlc3MgdGhhblxuICogbWF4VmVyc2lvblxuICpcbiAqIEB0aHJvd3MgV2lsbCB0aHJvdyBhbiBlcnJvciBpZiB0aGUgZ2l2ZW4gdmVyc2lvbiDiiIkgW21pblZlcnNpb24sIG1heFZlcnNpb25bXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja1ZlcnNpb24odmVyc2lvbjogc3RyaW5nLCBtaW5WZXJzaW9uOiBzdHJpbmcsIG1heFZlcnNpb246IHN0cmluZykge1xuICBpZiAoKGNvbXBhcmVWZXJzaW9ucyh2ZXJzaW9uLCBtaW5WZXJzaW9uKSA8IDAgfHwgY29tcGFyZVZlcnNpb25zKHZlcnNpb24sIG1heFZlcnNpb24pID49IDApKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgQW5ndWxhciBDb21waWxlciByZXF1aXJlcyBUeXBlU2NyaXB0ID49JHttaW5WZXJzaW9ufSBhbmQgPCR7XG4gICAgICAgIG1heFZlcnNpb259IGJ1dCAke3ZlcnNpb259IHdhcyBmb3VuZCBpbnN0ZWFkLmApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2ZXJpZnlTdXBwb3J0ZWRUeXBlU2NyaXB0VmVyc2lvbigpOiB2b2lkIHtcbiAgY2hlY2tWZXJzaW9uKHRzVmVyc2lvbiwgTUlOX1RTX1ZFUlNJT04sIE1BWF9UU19WRVJTSU9OKTtcbn1cbiJdfQ==
package/src/version.js CHANGED
@@ -22,6 +22,6 @@
22
22
  * Entry point for all public APIs of the common package.
23
23
  */
24
24
  var compiler_1 = require("@angular/compiler");
25
- exports.VERSION = new compiler_1.Version('9.1.0');
25
+ exports.VERSION = new compiler_1.Version('9.1.4');
26
26
  });
27
27
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7OztJQUVIOzs7O09BSUc7SUFFSCw4Q0FBMEM7SUFFN0IsUUFBQSxPQUFPLEdBQUcsSUFBSSxrQkFBTyxDQUFDLG1CQUFtQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8qKlxuICogQG1vZHVsZVxuICogQGRlc2NyaXB0aW9uXG4gKiBFbnRyeSBwb2ludCBmb3IgYWxsIHB1YmxpYyBBUElzIG9mIHRoZSBjb21tb24gcGFja2FnZS5cbiAqL1xuXG5pbXBvcnQge1ZlcnNpb259IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcblxuZXhwb3J0IGNvbnN0IFZFUlNJT04gPSBuZXcgVmVyc2lvbignMC4wLjAtUExBQ0VIT0xERVInKTtcbiJdfQ==
@@ -1,49 +0,0 @@
1
- /// <amd-module name="@angular/compiler-cli/src/ngtsc/file_system/src/cached_file_system" />
2
- /**
3
- * @license
4
- * Copyright Google Inc. All Rights Reserved.
5
- *
6
- * Use of this source code is governed by an MIT-style license that can be
7
- * found in the LICENSE file at https://angular.io/license
8
- */
9
- import { AbsoluteFsPath, FileStats, FileSystem, PathSegment, PathString } from './types';
10
- /**
11
- * A wrapper around `FileSystem` that caches hits to `exists()` and
12
- * `readFile()` to improve performance.
13
- *
14
- * Be aware that any changes to the file system from outside of this
15
- * class could break the cache, leaving it with stale values.
16
- */
17
- export declare class CachedFileSystem implements FileSystem {
18
- private delegate;
19
- private existsCache;
20
- private readFileCache;
21
- constructor(delegate: FileSystem);
22
- exists(path: AbsoluteFsPath): boolean;
23
- invalidateCaches(path: AbsoluteFsPath): void;
24
- readFile(path: AbsoluteFsPath): string;
25
- writeFile(path: AbsoluteFsPath, data: string, exclusive?: boolean): void;
26
- removeFile(path: AbsoluteFsPath): void;
27
- symlink(target: AbsoluteFsPath, path: AbsoluteFsPath): void;
28
- copyFile(from: AbsoluteFsPath, to: AbsoluteFsPath): void;
29
- moveFile(from: AbsoluteFsPath, to: AbsoluteFsPath): void;
30
- ensureDir(path: AbsoluteFsPath): void;
31
- removeDeep(path: AbsoluteFsPath): void;
32
- lstat(path: AbsoluteFsPath): FileStats;
33
- stat(path: AbsoluteFsPath): FileStats;
34
- readdir(path: AbsoluteFsPath): PathSegment[];
35
- pwd(): AbsoluteFsPath;
36
- chdir(path: AbsoluteFsPath): void;
37
- extname(path: AbsoluteFsPath | PathSegment): string;
38
- isCaseSensitive(): boolean;
39
- isRoot(path: AbsoluteFsPath): boolean;
40
- isRooted(path: string): boolean;
41
- resolve(...paths: string[]): AbsoluteFsPath;
42
- dirname<T extends PathString>(file: T): T;
43
- join<T extends PathString>(basePath: T, ...paths: string[]): T;
44
- relative<T extends PathString>(from: T, to: T): PathSegment;
45
- basename(filePath: string, extension?: string | undefined): PathSegment;
46
- realpath(filePath: AbsoluteFsPath): AbsoluteFsPath;
47
- getDefaultLibLocation(): AbsoluteFsPath;
48
- normalize<T extends PathString>(path: T): T;
49
- }
@@ -1,180 +0,0 @@
1
- (function (factory) {
2
- if (typeof module === "object" && typeof module.exports === "object") {
3
- var v = factory(require, exports);
4
- if (v !== undefined) module.exports = v;
5
- }
6
- else if (typeof define === "function" && define.amd) {
7
- define("@angular/compiler-cli/src/ngtsc/file_system/src/cached_file_system", ["require", "exports", "tslib"], factory);
8
- }
9
- })(function (require, exports) {
10
- "use strict";
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- var tslib_1 = require("tslib");
13
- /**
14
- * A wrapper around `FileSystem` that caches hits to `exists()` and
15
- * `readFile()` to improve performance.
16
- *
17
- * Be aware that any changes to the file system from outside of this
18
- * class could break the cache, leaving it with stale values.
19
- */
20
- var CachedFileSystem = /** @class */ (function () {
21
- function CachedFileSystem(delegate) {
22
- this.delegate = delegate;
23
- this.existsCache = new Map();
24
- this.readFileCache = new Map();
25
- }
26
- CachedFileSystem.prototype.exists = function (path) {
27
- if (!this.existsCache.has(path)) {
28
- this.existsCache.set(path, this.delegate.exists(path));
29
- }
30
- return this.existsCache.get(path);
31
- };
32
- CachedFileSystem.prototype.invalidateCaches = function (path) {
33
- this.readFileCache.delete(path);
34
- this.existsCache.delete(path);
35
- };
36
- CachedFileSystem.prototype.readFile = function (path) {
37
- if (!this.readFileCache.has(path)) {
38
- try {
39
- if (this.lstat(path).isSymbolicLink()) {
40
- // don't cache the value of a symbolic link
41
- return this.delegate.readFile(path);
42
- }
43
- this.readFileCache.set(path, this.delegate.readFile(path));
44
- }
45
- catch (e) {
46
- this.readFileCache.set(path, e);
47
- }
48
- }
49
- var result = this.readFileCache.get(path);
50
- if (typeof result === 'string') {
51
- return result;
52
- }
53
- else {
54
- throw result;
55
- }
56
- };
57
- CachedFileSystem.prototype.writeFile = function (path, data, exclusive) {
58
- this.delegate.writeFile(path, data, exclusive);
59
- this.readFileCache.set(path, data);
60
- this.existsCache.set(path, true);
61
- };
62
- CachedFileSystem.prototype.removeFile = function (path) {
63
- this.delegate.removeFile(path);
64
- this.readFileCache.delete(path);
65
- this.existsCache.set(path, false);
66
- };
67
- CachedFileSystem.prototype.symlink = function (target, path) {
68
- this.delegate.symlink(target, path);
69
- this.existsCache.set(path, true);
70
- };
71
- CachedFileSystem.prototype.copyFile = function (from, to) {
72
- this.delegate.copyFile(from, to);
73
- this.existsCache.set(to, true);
74
- };
75
- CachedFileSystem.prototype.moveFile = function (from, to) {
76
- this.delegate.moveFile(from, to);
77
- this.existsCache.set(from, false);
78
- this.existsCache.set(to, true);
79
- if (this.readFileCache.has(from)) {
80
- this.readFileCache.set(to, this.readFileCache.get(from));
81
- this.readFileCache.delete(from);
82
- }
83
- else {
84
- this.readFileCache.delete(to);
85
- }
86
- };
87
- CachedFileSystem.prototype.ensureDir = function (path) {
88
- this.delegate.ensureDir(path);
89
- while (!this.isRoot(path)) {
90
- this.existsCache.set(path, true);
91
- path = this.dirname(path);
92
- }
93
- };
94
- CachedFileSystem.prototype.removeDeep = function (path) {
95
- var e_1, _a, e_2, _b;
96
- this.delegate.removeDeep(path);
97
- try {
98
- // Clear out this directory and all its children from the `exists` cache.
99
- for (var _c = tslib_1.__values(this.existsCache.keys()), _d = _c.next(); !_d.done; _d = _c.next()) {
100
- var p = _d.value;
101
- if (p.startsWith(path)) {
102
- this.existsCache.set(p, false);
103
- }
104
- }
105
- }
106
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
107
- finally {
108
- try {
109
- if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
110
- }
111
- finally { if (e_1) throw e_1.error; }
112
- }
113
- try {
114
- // Clear out this directory and all its children from the `readFile` cache.
115
- for (var _e = tslib_1.__values(this.readFileCache.keys()), _f = _e.next(); !_f.done; _f = _e.next()) {
116
- var p = _f.value;
117
- if (p.startsWith(path)) {
118
- this.readFileCache.delete(p);
119
- }
120
- }
121
- }
122
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
123
- finally {
124
- try {
125
- if (_f && !_f.done && (_b = _e.return)) _b.call(_e);
126
- }
127
- finally { if (e_2) throw e_2.error; }
128
- }
129
- };
130
- CachedFileSystem.prototype.lstat = function (path) {
131
- var stat = this.delegate.lstat(path);
132
- // if the `path` does not exist then `lstat` will thrown an error.
133
- this.existsCache.set(path, true);
134
- return stat;
135
- };
136
- CachedFileSystem.prototype.stat = function (path) {
137
- var stat = this.delegate.stat(path);
138
- // if the `path` does not exist then `stat` will thrown an error.
139
- this.existsCache.set(path, true);
140
- return stat;
141
- };
142
- // The following methods simply call through to the delegate.
143
- CachedFileSystem.prototype.readdir = function (path) { return this.delegate.readdir(path); };
144
- CachedFileSystem.prototype.pwd = function () { return this.delegate.pwd(); };
145
- CachedFileSystem.prototype.chdir = function (path) { this.delegate.chdir(path); };
146
- CachedFileSystem.prototype.extname = function (path) { return this.delegate.extname(path); };
147
- CachedFileSystem.prototype.isCaseSensitive = function () { return this.delegate.isCaseSensitive(); };
148
- CachedFileSystem.prototype.isRoot = function (path) { return this.delegate.isRoot(path); };
149
- CachedFileSystem.prototype.isRooted = function (path) { return this.delegate.isRooted(path); };
150
- CachedFileSystem.prototype.resolve = function () {
151
- var _a;
152
- var paths = [];
153
- for (var _i = 0; _i < arguments.length; _i++) {
154
- paths[_i] = arguments[_i];
155
- }
156
- return (_a = this.delegate).resolve.apply(_a, tslib_1.__spread(paths));
157
- };
158
- CachedFileSystem.prototype.dirname = function (file) { return this.delegate.dirname(file); };
159
- CachedFileSystem.prototype.join = function (basePath) {
160
- var _a;
161
- var paths = [];
162
- for (var _i = 1; _i < arguments.length; _i++) {
163
- paths[_i - 1] = arguments[_i];
164
- }
165
- return (_a = this.delegate).join.apply(_a, tslib_1.__spread([basePath], paths));
166
- };
167
- CachedFileSystem.prototype.relative = function (from, to) {
168
- return this.delegate.relative(from, to);
169
- };
170
- CachedFileSystem.prototype.basename = function (filePath, extension) {
171
- return this.delegate.basename(filePath, extension);
172
- };
173
- CachedFileSystem.prototype.realpath = function (filePath) { return this.delegate.realpath(filePath); };
174
- CachedFileSystem.prototype.getDefaultLibLocation = function () { return this.delegate.getDefaultLibLocation(); };
175
- CachedFileSystem.prototype.normalize = function (path) { return this.delegate.normalize(path); };
176
- return CachedFileSystem;
177
- }());
178
- exports.CachedFileSystem = CachedFileSystem;
179
- });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FjaGVkX2ZpbGVfc3lzdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9maWxlX3N5c3RlbS9zcmMvY2FjaGVkX2ZpbGVfc3lzdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztJQVVBOzs7Ozs7T0FNRztJQUNIO1FBSUUsMEJBQW9CLFFBQW9CO1lBQXBCLGFBQVEsR0FBUixRQUFRLENBQVk7WUFIaEMsZ0JBQVcsR0FBRyxJQUFJLEdBQUcsRUFBMkIsQ0FBQztZQUNqRCxrQkFBYSxHQUFHLElBQUksR0FBRyxFQUF1QixDQUFDO1FBRVosQ0FBQztRQUU1QyxpQ0FBTSxHQUFOLFVBQU8sSUFBb0I7WUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUN4RDtZQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFHLENBQUM7UUFDdEMsQ0FBQztRQUVELDJDQUFnQixHQUFoQixVQUFpQixJQUFvQjtZQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoQyxDQUFDO1FBRUQsbUNBQVEsR0FBUixVQUFTLElBQW9CO1lBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDakMsSUFBSTtvQkFDRixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENB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QUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2Rix1QkFBQztJQUFELENBQUMsQUF6SUQsSUF5SUM7SUF6SVksNENBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuaW1wb3J0IHtBYnNvbHV0ZUZzUGF0aCwgRmlsZVN0YXRzLCBGaWxlU3lzdGVtLCBQYXRoU2VnbWVudCwgUGF0aFN0cmluZ30gZnJvbSAnLi90eXBlcyc7XG5cblxuLyoqXG4gKiBBIHdyYXBwZXIgYXJvdW5kIGBGaWxlU3lzdGVtYCB0aGF0IGNhY2hlcyBoaXRzIHRvIGBleGlzdHMoKWAgYW5kXG4gKiBgcmVhZEZpbGUoKWAgdG8gaW1wcm92ZSBwZXJmb3JtYW5jZS5cbiAqXG4gKiBCZSBhd2FyZSB0aGF0IGFueSBjaGFuZ2VzIHRvIHRoZSBmaWxlIHN5c3RlbSBmcm9tIG91dHNpZGUgb2YgdGhpc1xuICogY2xhc3MgY291bGQgYnJlYWsgdGhlIGNhY2hlLCBsZWF2aW5nIGl0IHdpdGggc3RhbGUgdmFsdWVzLlxuICovXG5leHBvcnQgY2xhc3MgQ2FjaGVkRmlsZVN5c3RlbSBpbXBsZW1lbnRzIEZpbGVTeXN0ZW0ge1xuICBwcml2YXRlIGV4aXN0c0NhY2hlID0gbmV3IE1hcDxBYnNvbHV0ZUZzUGF0aCwgYm9vbGVhbj4oKTtcbiAgcHJpdmF0ZSByZWFkRmlsZUNhY2hlID0gbmV3IE1hcDxBYnNvbHV0ZUZzUGF0aCwgYW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGVsZWdhdGU6IEZpbGVTeXN0ZW0pIHt9XG5cbiAgZXhpc3RzKHBhdGg6IEFic29sdXRlRnNQYXRoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmV4aXN0c0NhY2hlLmhhcyhwYXRoKSkge1xuICAgICAgdGhpcy5leGlzdHNDYWNoZS5zZXQocGF0aCwgdGhpcy5kZWxlZ2F0ZS5leGlzdHMocGF0aCkpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5leGlzdHNDYWNoZS5nZXQocGF0aCkgITtcbiAgfVxuXG4gIGludmFsaWRhdGVDYWNoZXMocGF0aDogQWJzb2x1dGVGc1BhdGgpIHtcbiAgICB0aGlzLnJlYWRGaWxlQ2FjaGUuZGVsZXRlKHBhdGgpO1xuICAgIHRoaXMuZXhpc3RzQ2FjaGUuZGVsZXRlKHBhdGgpO1xuICB9XG5cbiAgcmVhZEZpbGUocGF0aDogQWJzb2x1dGVGc1BhdGgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5yZWFkRmlsZUNhY2hlLmhhcyhwYXRoKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgaWYgKHRoaXMubHN0YXQocGF0aCkuaXNTeW1ib2xpY0xpbmsoKSkge1xuICAgICAgICAgIC8vIGRvbid0IGNhY2hlIHRoZSB2YWx1ZSBvZiBhIHN5bWJvbGljIGxpbmtcbiAgICAgICAgICByZXR1cm4gdGhpcy5kZWxlZ2F0ZS5yZWFkRmlsZShwYXRoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnJlYWRGaWxlQ2FjaGUuc2V0KHBhdGgsIHRoaXMuZGVsZWdhdGUucmVhZEZpbGUocGF0aCkpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICB0aGlzLnJlYWRGaWxlQ2FjaGUuc2V0KHBhdGgsIGUpO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLnJlYWRGaWxlQ2FjaGUuZ2V0KHBhdGgpO1xuICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgcmVzdWx0O1xuICAgIH1cbiAgfVxuXG4gIHdyaXRlRmlsZShwYXRoOiBBYnNvbHV0ZUZzUGF0aCwgZGF0YTogc3RyaW5nLCBleGNsdXNpdmU/OiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kZWxlZ2F0ZS53cml0ZUZpbGUocGF0aCwgZGF0YSwgZXhjbHVzaXZlKTtcbiAgICB0aGlzLnJlYWRGaWxlQ2FjaGUuc2V0KHBhdGgsIGRhdGEpO1xuICAgIHRoaXMuZXhpc3RzQ2FjaGUuc2V0KHBhdGgsIHRydWUpO1xuICB9XG5cbiAgcmVtb3ZlRmlsZShwYXRoOiBBYnNvbHV0ZUZzUGF0aCk6IHZvaWQge1xuICAgIHRoaXMuZGVsZWdhdGUucmVtb3ZlRmlsZShwYXRoKTtcbiAgICB0aGlzLnJlYWRGaWxlQ2FjaGUuZGVsZXRlKHBhdGgpO1xuICAgIHRoaXMuZXhpc3RzQ2FjaGUuc2V0KHBhdGgsIGZhbHNlKTtcbiAgfVxuXG4gIHN5bWxpbmsodGFyZ2V0OiBBYnNvbHV0ZUZzUGF0aCwgcGF0aDogQWJzb2x1dGVGc1BhdGgpOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlLnN5bWxpbmsodGFyZ2V0LCBwYXRoKTtcbiAgICB0aGlzLmV4aXN0c0NhY2hlLnNldChwYXRoLCB0cnVlKTtcbiAgfVxuXG4gIGNvcHlGaWxlKGZyb206IEFic29sdXRlRnNQYXRoLCB0bzogQWJzb2x1dGVGc1BhdGgpOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlLmNvcHlGaWxlKGZyb20sIHRvKTtcbiAgICB0aGlzLmV4aXN0c0NhY2hlLnNldCh0bywgdHJ1ZSk7XG4gIH1cblxuICBtb3ZlRmlsZShmcm9tOiBBYnNvbHV0ZUZzUGF0aCwgdG86IEFic29sdXRlRnNQYXRoKTogdm9pZCB7XG4gICAgdGhpcy5kZWxlZ2F0ZS5tb3ZlRmlsZShmcm9tLCB0byk7XG5cbiAgICB0aGlzLmV4aXN0c0NhY2hlLnNldChmcm9tLCBmYWxzZSk7XG4gICAgdGhpcy5leGlzdHNDYWNoZS5zZXQodG8sIHRydWUpO1xuXG4gICAgaWYgKHRoaXMucmVhZEZpbGVDYWNoZS5oYXMoZnJvbSkpIHtcbiAgICAgIHRoaXMucmVhZEZpbGVDYWNoZS5zZXQodG8sIHRoaXMucmVhZEZpbGVDYWNoZS5nZXQoZnJvbSkpO1xuICAgICAgdGhpcy5yZWFkRmlsZUNhY2hlLmRlbGV0ZShmcm9tKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yZWFkRmlsZUNhY2hlLmRlbGV0ZSh0byk7XG4gICAgfVxuICB9XG5cbiAgZW5zdXJlRGlyKHBhdGg6IEFic29sdXRlRnNQYXRoKTogdm9pZCB7XG4gICAgdGhpcy5kZWxlZ2F0ZS5lbnN1cmVEaXIocGF0aCk7XG4gICAgd2hpbGUgKCF0aGlzLmlzUm9vdChwYXRoKSkge1xuICAgICAgdGhpcy5leGlzdHNDYWNoZS5zZXQocGF0aCwgdHJ1ZSk7XG4gICAgICBwYXRoID0gdGhpcy5kaXJuYW1lKHBhdGgpO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZURlZXAocGF0aDogQWJzb2x1dGVGc1BhdGgpOiB2b2lkIHtcbiAgICB0aGlzLmRlbGVnYXRlLnJlbW92ZURlZXAocGF0aCk7XG5cbiAgICAvLyBDbGVhciBvdXQgdGhpcyBkaXJlY3RvcnkgYW5kIGFsbCBpdHMgY2hpbGRyZW4gZnJvbSB0aGUgYGV4aXN0c2AgY2FjaGUuXG4gICAgZm9yIChjb25zdCBwIG9mIHRoaXMuZXhpc3RzQ2FjaGUua2V5cygpKSB7XG4gICAgICBpZiAocC5zdGFydHNXaXRoKHBhdGgpKSB7XG4gICAgICAgIHRoaXMuZXhpc3RzQ2FjaGUuc2V0KHAsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhciBvdXQgdGhpcyBkaXJlY3RvcnkgYW5kIGFsbCBpdHMgY2hpbGRyZW4gZnJvbSB0aGUgYHJlYWRGaWxlYCBjYWNoZS5cbiAgICBmb3IgKGNvbnN0IHAgb2YgdGhpcy5yZWFkRmlsZUNhY2hlLmtleXMoKSkge1xuICAgICAgaWYgKHAuc3RhcnRzV2l0aChwYXRoKSkge1xuICAgICAgICB0aGlzLnJlYWRGaWxlQ2FjaGUuZGVsZXRlKHApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgbHN0YXQocGF0aDogQWJzb2x1dGVGc1BhdGgpOiBGaWxlU3RhdHMge1xuICAgIGNvbnN0IHN0YXQgPSB0aGlzLmRlbGVnYXRlLmxzdGF0KHBhdGgpO1xuICAgIC8vIGlmIHRoZSBgcGF0aGAgZG9lcyBub3QgZXhpc3QgdGhlbiBgbHN0YXRgIHdpbGwgdGhyb3duIGFuIGVycm9yLlxuICAgIHRoaXMuZXhpc3RzQ2FjaGUuc2V0KHBhdGgsIHRydWUpO1xuICAgIHJldHVybiBzdGF0O1xuICB9XG5cbiAgc3RhdChwYXRoOiBBYnNvbHV0ZUZzUGF0aCk6IEZpbGVTdGF0cyB7XG4gICAgY29uc3Qgc3RhdCA9IHRoaXMuZGVsZWdhdGUuc3RhdChwYXRoKTtcbiAgICAvLyBpZiB0aGUgYHBhdGhgIGRvZXMgbm90IGV4aXN0IHRoZW4gYHN0YXRgIHdpbGwgdGhyb3duIGFuIGVycm9yLlxuICAgIHRoaXMuZXhpc3RzQ2FjaGUuc2V0KHBhdGgsIHRydWUpO1xuICAgIHJldHVybiBzdGF0O1xuICB9XG5cbiAgLy8gVGhlIGZvbGxvd2luZyBtZXRob2RzIHNpbXBseSBjYWxsIHRocm91Z2ggdG8gdGhlIGRlbGVnYXRlLlxuICByZWFkZGlyKHBhdGg6IEFic29sdXRlRnNQYXRoKTogUGF0aFNlZ21lbnRbXSB7IHJldHVybiB0aGlzLmRlbGVnYXRlLnJlYWRkaXIocGF0aCk7IH1cbiAgcHdkKCk6IEFic29sdXRlRnNQYXRoIHsgcmV0dXJuIHRoaXMuZGVsZWdhdGUucHdkKCk7IH1cbiAgY2hkaXIocGF0aDogQWJzb2x1dGVGc1BhdGgpOiB2b2lkIHsgdGhpcy5kZWxlZ2F0ZS5jaGRpcihwYXRoKTsgfVxuICBleHRuYW1lKHBhdGg6IEFic29sdXRlRnNQYXRofFBhdGhTZWdtZW50KTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuZGVsZWdhdGUuZXh0bmFtZShwYXRoKTsgfVxuICBpc0Nhc2VTZW5zaXRpdmUoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLmRlbGVnYXRlLmlzQ2FzZVNlbnNpdGl2ZSgpOyB9XG4gIGlzUm9vdChwYXRoOiBBYnNvbHV0ZUZzUGF0aCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5kZWxlZ2F0ZS5pc1Jvb3QocGF0aCk7IH1cbiAgaXNSb290ZWQocGF0aDogc3RyaW5nKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLmRlbGVnYXRlLmlzUm9vdGVkKHBhdGgpOyB9XG4gIHJlc29sdmUoLi4ucGF0aHM6IHN0cmluZ1tdKTogQWJzb2x1dGVGc1BhdGggeyByZXR1cm4gdGhpcy5kZWxlZ2F0ZS5yZXNvbHZlKC4uLnBhdGhzKTsgfVxuICBkaXJuYW1lPFQgZXh0ZW5kcyBQYXRoU3RyaW5nPihmaWxlOiBUKTogVCB7IHJldHVybiB0aGlzLmRlbGVnYXRlLmRpcm5hbWUoZmlsZSk7IH1cbiAgam9pbjxUIGV4dGVuZHMgUGF0aFN0cmluZz4oYmFzZVBhdGg6IFQsIC4uLnBhdGhzOiBzdHJpbmdbXSk6IFQge1xuICAgIHJldHVybiB0aGlzLmRlbGVnYXRlLmpvaW4oYmFzZVBhdGgsIC4uLnBhdGhzKTtcbiAgfVxuICByZWxhdGl2ZTxUIGV4dGVuZHMgUGF0aFN0cmluZz4oZnJvbTogVCwgdG86IFQpOiBQYXRoU2VnbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZGVsZWdhdGUucmVsYXRpdmUoZnJvbSwgdG8pO1xuICB9XG4gIGJhc2VuYW1lKGZpbGVQYXRoOiBzdHJpbmcsIGV4dGVuc2lvbj86IHN0cmluZ3x1bmRlZmluZWQpOiBQYXRoU2VnbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZGVsZWdhdGUuYmFzZW5hbWUoZmlsZVBhdGgsIGV4dGVuc2lvbik7XG4gIH1cbiAgcmVhbHBhdGgoZmlsZVBhdGg6IEFic29sdXRlRnNQYXRoKTogQWJzb2x1dGVGc1BhdGggeyByZXR1cm4gdGhpcy5kZWxlZ2F0ZS5yZWFscGF0aChmaWxlUGF0aCk7IH1cbiAgZ2V0RGVmYXVsdExpYkxvY2F0aW9uKCk6IEFic29sdXRlRnNQYXRoIHsgcmV0dXJuIHRoaXMuZGVsZWdhdGUuZ2V0RGVmYXVsdExpYkxvY2F0aW9uKCk7IH1cbiAgbm9ybWFsaXplPFQgZXh0ZW5kcyBQYXRoU3RyaW5nPihwYXRoOiBUKTogVCB7IHJldHVybiB0aGlzLmRlbGVnYXRlLm5vcm1hbGl6ZShwYXRoKTsgfVxufVxuIl19
@@ -1,61 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google Inc. All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- (function (factory) {
9
- if (typeof module === "object" && typeof module.exports === "object") {
10
- var v = factory(require, exports);
11
- if (v !== undefined) module.exports = v;
12
- }
13
- else if (typeof define === "function" && define.amd) {
14
- define("@angular/compiler-cli/src/transformers/nocollapse_hack", ["require", "exports"], factory);
15
- }
16
- })(function (require, exports) {
17
- "use strict";
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- // Closure compiler transforms the form `Service.ɵprov = X` into
20
- // `Service$ɵprov = X`. To prevent this transformation, such assignments need to be
21
- // annotated with @nocollapse. Unfortunately, a bug in Typescript where comments aren't propagated
22
- // through the TS transformations precludes adding the comment via the AST. This workaround detects
23
- // the static assignments to R3 properties such as ɵprov using a regex, as output files
24
- // are written, and applies the annotation through regex replacement.
25
- //
26
- // TODO(alxhub): clean up once fix for TS transformers lands in upstream
27
- //
28
- // Typescript reference issue: https://github.com/Microsoft/TypeScript/issues/22497
29
- // Pattern matching all Render3 property names.
30
- var R3_DEF_NAME_PATTERN = [
31
- 'ɵcmp',
32
- 'ɵdir',
33
- 'ɵprov',
34
- 'ɵinj',
35
- 'ɵmod',
36
- 'ɵpipe',
37
- 'ɵfac',
38
- ].join('|');
39
- // Pattern matching `Identifier.property` where property is a Render3 property.
40
- var R3_DEF_ACCESS_PATTERN = "[^\\s\\.()[\\]]+.(" + R3_DEF_NAME_PATTERN + ")";
41
- // Pattern matching a source line that contains a Render3 static property assignment.
42
- // It declares two matching groups - one for the preceding whitespace, the second for the rest
43
- // of the assignment expression.
44
- var R3_DEF_LINE_PATTERN = "^(\\s*)(" + R3_DEF_ACCESS_PATTERN + " = .*)$";
45
- // Regex compilation of R3_DEF_LINE_PATTERN. Matching group 1 yields the whitespace preceding the
46
- // assignment, matching group 2 gives the rest of the assignment expressions.
47
- var R3_MATCH_DEFS = new RegExp(R3_DEF_LINE_PATTERN, 'gmu');
48
- var R3_TSICKLE_DECL_PATTERN = "(\\/\\*\\*[*\\s]*)(@[^*]+\\*\\/\\s+[^.]+\\.(?:" + R3_DEF_NAME_PATTERN + ");)";
49
- var R3_MATCH_TSICKLE_DECL = new RegExp(R3_TSICKLE_DECL_PATTERN, 'gmu');
50
- // Replacement string that complements R3_MATCH_DEFS. It inserts `/** @nocollapse */` before the
51
- // assignment but after any indentation. Note that this will mess up any sourcemaps on this line
52
- // (though there shouldn't be any, since Render3 properties are synthetic).
53
- var R3_NOCOLLAPSE_DEFS = '$1\/** @nocollapse *\/ $2';
54
- var R3_NOCOLLAPSE_TSICKLE_DECL = '$1@nocollapse $2';
55
- function nocollapseHack(contents) {
56
- return contents.replace(R3_MATCH_DEFS, R3_NOCOLLAPSE_DEFS)
57
- .replace(R3_MATCH_TSICKLE_DECL, R3_NOCOLLAPSE_TSICKLE_DECL);
58
- }
59
- exports.nocollapseHack = nocollapseHack;
60
- });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9jb2xsYXBzZV9oYWNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy90cmFuc2Zvcm1lcnMvbm9jb2xsYXBzZV9oYWNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7O0lBRUgsZ0VBQWdFO0lBQ2hFLG1GQUFtRjtJQUNuRixrR0FBa0c7SUFDbEcsbUdBQW1HO0lBQ25HLHVGQUF1RjtJQUN2RixxRUFBcUU7SUFDckUsRUFBRTtJQUNGLHdFQUF3RTtJQUN4RSxFQUFFO0lBQ0YsbUZBQW1GO0lBRW5GLCtDQUErQztJQUMvQyxJQUFNLG1CQUFtQixHQUFHO1FBQzFCLE1BQU07UUFDTixNQUFNO1FBQ04sT0FBTztRQUNQLE1BQU07UUFDTixNQUFNO1FBQ04sT0FBTztRQUNQLE1BQU07S0FDUCxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVaLCtFQUErRTtJQUMvRSxJQUFNLHFCQUFxQixHQUFHLHVCQUFzQixtQkFBbUIsTUFBRyxDQUFDO0lBRTNFLHFGQUFxRjtJQUNyRiw4RkFBOEY7SUFDOUYsZ0NBQWdDO0lBQ2hDLElBQU0sbUJBQW1CLEdBQUcsYUFBVyxxQkFBcUIsWUFBUyxDQUFDO0lBRXRFLGlHQUFpRztJQUNqRyw2RUFBNkU7SUFDN0UsSUFBTSxhQUFhLEdBQUcsSUFBSSxNQUFNLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFFN0QsSUFBTSx1QkFBdUIsR0FDekIsbURBQWlELG1CQUFtQixRQUFLLENBQUM7SUFFOUUsSUFBTSxxQkFBcUIsR0FBRyxJQUFJLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUV6RSxnR0FBZ0c7SUFDaEcsZ0dBQWdHO0lBQ2hHLDJFQUEyRTtJQUMzRSxJQUFNLGtCQUFrQixHQUFHLDJCQUEyQixDQUFDO0lBRXZELElBQU0sMEJBQTBCLEdBQUcsa0JBQWtCLENBQUM7SUFFdEQsU0FBZ0IsY0FBYyxDQUFDLFFBQWdCO1FBQzdDLE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsa0JBQWtCLENBQUM7YUFDckQsT0FBTyxDQUFDLHFCQUFxQixFQUFFLDBCQUEwQixDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUhELHdDQUdDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG4vLyBDbG9zdXJlIGNvbXBpbGVyIHRyYW5zZm9ybXMgdGhlIGZvcm0gYFNlcnZpY2UuybVwcm92ID0gWGAgaW50b1xuLy8gYFNlcnZpY2UkybVwcm92ID0gWGAuIFRvIHByZXZlbnQgdGhpcyB0cmFuc2Zvcm1hdGlvbiwgc3VjaCBhc3NpZ25tZW50cyBuZWVkIHRvIGJlXG4vLyBhbm5vdGF0ZWQgd2l0aCBAbm9jb2xsYXBzZS4gVW5mb3J0dW5hdGVseSwgYSBidWcgaW4gVHlwZXNjcmlwdCB3aGVyZSBjb21tZW50cyBhcmVuJ3QgcHJvcGFnYXRlZFxuLy8gdGhyb3VnaCB0aGUgVFMgdHJhbnNmb3JtYXRpb25zIHByZWNsdWRlcyBhZGRpbmcgdGhlIGNvbW1lbnQgdmlhIHRoZSBBU1QuIFRoaXMgd29ya2Fyb3VuZCBkZXRlY3RzXG4vLyB0aGUgc3RhdGljIGFzc2lnbm1lbnRzIHRvIFIzIHByb3BlcnRpZXMgc3VjaCBhcyDJtXByb3YgdXNpbmcgYSByZWdleCwgYXMgb3V0cHV0IGZpbGVzXG4vLyBhcmUgd3JpdHRlbiwgYW5kIGFwcGxpZXMgdGhlIGFubm90YXRpb24gdGhyb3VnaCByZWdleCByZXBsYWNlbWVudC5cbi8vXG4vLyBUT0RPKGFseGh1Yik6IGNsZWFuIHVwIG9uY2UgZml4IGZvciBUUyB0cmFuc2Zvcm1lcnMgbGFuZHMgaW4gdXBzdHJlYW1cbi8vXG4vLyBUeXBlc2NyaXB0IHJlZmVyZW5jZSBpc3N1ZTogaHR0cHM6Ly9naXRodWIuY29tL01pY3Jvc29mdC9UeXBlU2NyaXB0L2lzc3Vlcy8yMjQ5N1xuXG4vLyBQYXR0ZXJuIG1hdGNoaW5nIGFsbCBSZW5kZXIzIHByb3BlcnR5IG5hbWVzLlxuY29uc3QgUjNfREVGX05BTUVfUEFUVEVSTiA9IFtcbiAgJ8m1Y21wJyxcbiAgJ8m1ZGlyJyxcbiAgJ8m1cHJvdicsXG4gICfJtWluaicsXG4gICfJtW1vZCcsXG4gICfJtXBpcGUnLFxuICAnybVmYWMnLFxuXS5qb2luKCd8Jyk7XG5cbi8vIFBhdHRlcm4gbWF0Y2hpbmcgYElkZW50aWZpZXIucHJvcGVydHlgIHdoZXJlIHByb3BlcnR5IGlzIGEgUmVuZGVyMyBwcm9wZXJ0eS5cbmNvbnN0IFIzX0RFRl9BQ0NFU1NfUEFUVEVSTiA9IGBbXlxcXFxzXFxcXC4oKVtcXFxcXV0rXFwuKCR7UjNfREVGX05BTUVfUEFUVEVSTn0pYDtcblxuLy8gUGF0dGVybiBtYXRjaGluZyBhIHNvdXJjZSBsaW5lIHRoYXQgY29udGFpbnMgYSBSZW5kZXIzIHN0YXRpYyBwcm9wZXJ0eSBhc3NpZ25tZW50LlxuLy8gSXQgZGVjbGFyZXMgdHdvIG1hdGNoaW5nIGdyb3VwcyAtIG9uZSBmb3IgdGhlIHByZWNlZGluZyB3aGl0ZXNwYWNlLCB0aGUgc2Vjb25kIGZvciB0aGUgcmVzdFxuLy8gb2YgdGhlIGFzc2lnbm1lbnQgZXhwcmVzc2lvbi5cbmNvbnN0IFIzX0RFRl9MSU5FX1BBVFRFUk4gPSBgXihcXFxccyopKCR7UjNfREVGX0FDQ0VTU19QQVRURVJOfSA9IC4qKSRgO1xuXG4vLyBSZWdleCBjb21waWxhdGlvbiBvZiBSM19ERUZfTElORV9QQVRURVJOLiBNYXRjaGluZyBncm91cCAxIHlpZWxkcyB0aGUgd2hpdGVzcGFjZSBwcmVjZWRpbmcgdGhlXG4vLyBhc3NpZ25tZW50LCBtYXRjaGluZyBncm91cCAyIGdpdmVzIHRoZSByZXN0IG9mIHRoZSBhc3NpZ25tZW50IGV4cHJlc3Npb25zLlxuY29uc3QgUjNfTUFUQ0hfREVGUyA9IG5ldyBSZWdFeHAoUjNfREVGX0xJTkVfUEFUVEVSTiwgJ2dtdScpO1xuXG5jb25zdCBSM19UU0lDS0xFX0RFQ0xfUEFUVEVSTiA9XG4gICAgYChcXFxcL1xcXFwqXFxcXCpbKlxcXFxzXSopKEBbXipdK1xcXFwqXFxcXC9cXFxccytbXi5dK1xcXFwuKD86JHtSM19ERUZfTkFNRV9QQVRURVJOfSk7KWA7XG5cbmNvbnN0IFIzX01BVENIX1RTSUNLTEVfREVDTCA9IG5ldyBSZWdFeHAoUjNfVFNJQ0tMRV9ERUNMX1BBVFRFUk4sICdnbXUnKTtcblxuLy8gUmVwbGFjZW1lbnQgc3RyaW5nIHRoYXQgY29tcGxlbWVudHMgUjNfTUFUQ0hfREVGUy4gSXQgaW5zZXJ0cyBgLyoqIEBub2NvbGxhcHNlICovYCBiZWZvcmUgdGhlXG4vLyBhc3NpZ25tZW50IGJ1dCBhZnRlciBhbnkgaW5kZW50YXRpb24uIE5vdGUgdGhhdCB0aGlzIHdpbGwgbWVzcyB1cCBhbnkgc291cmNlbWFwcyBvbiB0aGlzIGxpbmVcbi8vICh0aG91Z2ggdGhlcmUgc2hvdWxkbid0IGJlIGFueSwgc2luY2UgUmVuZGVyMyBwcm9wZXJ0aWVzIGFyZSBzeW50aGV0aWMpLlxuY29uc3QgUjNfTk9DT0xMQVBTRV9ERUZTID0gJyQxXFwvKiogQG5vY29sbGFwc2UgKlxcLyAkMic7XG5cbmNvbnN0IFIzX05PQ09MTEFQU0VfVFNJQ0tMRV9ERUNMID0gJyQxQG5vY29sbGFwc2UgJDInO1xuXG5leHBvcnQgZnVuY3Rpb24gbm9jb2xsYXBzZUhhY2soY29udGVudHM6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBjb250ZW50cy5yZXBsYWNlKFIzX01BVENIX0RFRlMsIFIzX05PQ09MTEFQU0VfREVGUylcbiAgICAgIC5yZXBsYWNlKFIzX01BVENIX1RTSUNLTEVfREVDTCwgUjNfTk9DT0xMQVBTRV9UU0lDS0xFX0RFQ0wpO1xufVxuIl19