@angular/core 13.0.0-next.8 → 13.0.0-rc.2

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 (567) hide show
  1. package/core.d.ts +590 -955
  2. package/esm2020/core.mjs +5 -0
  3. package/esm2020/index.mjs +14 -0
  4. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  5. package/esm2020/src/application_init.mjs +140 -0
  6. package/esm2020/src/application_module.mjs +135 -0
  7. package/esm2020/src/application_ref.mjs +738 -0
  8. package/{esm2015/src/application_tokens.js → esm2020/src/application_tokens.mjs} +0 -0
  9. package/esm2020/src/change_detection/change_detection.mjs +31 -0
  10. package/esm2020/src/change_detection/change_detection_util.mjs +64 -0
  11. package/esm2020/src/change_detection/change_detector_ref.mjs +89 -0
  12. package/{esm2015/src/change_detection/constants.js → esm2020/src/change_detection/constants.mjs} +0 -0
  13. package/esm2020/src/change_detection/differs/default_iterable_differ.mjs +666 -0
  14. package/{esm2015/src/change_detection/differs/default_keyvalue_differ.js → esm2020/src/change_detection/differs/default_keyvalue_differ.mjs} +0 -0
  15. package/{esm2015/src/change_detection/differs/iterable_differs.js → esm2020/src/change_detection/differs/iterable_differs.mjs} +0 -0
  16. package/{esm2015/src/change_detection/differs/keyvalue_differs.js → esm2020/src/change_detection/differs/keyvalue_differs.mjs} +0 -0
  17. package/{esm2015/src/change_detection/pipe_transform.js → esm2020/src/change_detection/pipe_transform.mjs} +0 -0
  18. package/esm2020/src/change_detection.mjs +14 -0
  19. package/esm2020/src/codegen_private_exports.mjs +11 -0
  20. package/{esm2015/src/compiler/compiler_facade.js → esm2020/src/compiler/compiler_facade.mjs} +0 -0
  21. package/{esm2015/src/compiler/compiler_facade_interface.js → esm2020/src/compiler/compiler_facade_interface.mjs} +1 -1
  22. package/esm2020/src/console.mjs +26 -0
  23. package/esm2020/src/core.mjs +52 -0
  24. package/esm2020/src/core_private_export.mjs +34 -0
  25. package/esm2020/src/core_render3_private_export.mjs +46 -0
  26. package/esm2020/src/debug/debug_node.mjs +625 -0
  27. package/{esm2015/src/debug/proxy.js → esm2020/src/debug/proxy.mjs} +0 -0
  28. package/{esm2015/src/di/forward_ref.js → esm2020/src/di/forward_ref.mjs} +0 -0
  29. package/{esm2015/src/di/index.js → esm2020/src/di/index.mjs} +0 -0
  30. package/{esm2015/src/di/inject_switch.js → esm2020/src/di/inject_switch.mjs} +0 -0
  31. package/esm2020/src/di/injectable.mjs +27 -0
  32. package/esm2020/src/di/injection_token.mjs +82 -0
  33. package/esm2020/src/di/injector.mjs +323 -0
  34. package/esm2020/src/di/injector_compatibility.mjs +185 -0
  35. package/{esm2015/src/di/injector_marker.js → esm2020/src/di/injector_marker.mjs} +0 -0
  36. package/{esm2015/src/di/injector_token.js → esm2020/src/di/injector_token.mjs} +0 -0
  37. package/{esm2015/src/di/interface/defs.js → esm2020/src/di/interface/defs.mjs} +0 -0
  38. package/{esm2015/src/di/interface/injector.js → esm2020/src/di/interface/injector.mjs} +0 -0
  39. package/{esm2015/src/di/interface/provider.js → esm2020/src/di/interface/provider.mjs} +0 -0
  40. package/{esm2015/src/di/jit/environment.js → esm2020/src/di/jit/environment.mjs} +0 -0
  41. package/esm2020/src/di/jit/injectable.mjs +94 -0
  42. package/{esm2015/src/di/jit/util.js → esm2020/src/di/jit/util.mjs} +0 -0
  43. package/esm2020/src/di/metadata.mjs +60 -0
  44. package/esm2020/src/di/metadata_attr.mjs +24 -0
  45. package/{esm2015/src/di/null_injector.js → esm2020/src/di/null_injector.mjs} +0 -0
  46. package/{esm2015/src/di/provider_token.js → esm2020/src/di/provider_token.mjs} +0 -0
  47. package/{esm2015/src/di/r3_injector.js → esm2020/src/di/r3_injector.mjs} +0 -0
  48. package/{esm2015/src/di/reflective_errors.js → esm2020/src/di/reflective_errors.mjs} +0 -0
  49. package/{esm2015/src/di/reflective_injector.js → esm2020/src/di/reflective_injector.mjs} +0 -0
  50. package/{esm2015/src/di/reflective_key.js → esm2020/src/di/reflective_key.mjs} +0 -0
  51. package/{esm2015/src/di/reflective_provider.js → esm2020/src/di/reflective_provider.mjs} +0 -0
  52. package/{esm2015/src/di/scope.js → esm2020/src/di/scope.mjs} +0 -0
  53. package/esm2020/src/di/util.mjs +51 -0
  54. package/{esm2015/src/di.js → esm2020/src/di.mjs} +0 -0
  55. package/{esm2015/src/error_handler.js → esm2020/src/error_handler.mjs} +0 -0
  56. package/{esm2015/src/errors.js → esm2020/src/errors.mjs} +0 -0
  57. package/esm2020/src/event_emitter.mjs +53 -0
  58. package/{esm2015/src/i18n/locale_data_api.js → esm2020/src/i18n/locale_data_api.mjs} +0 -0
  59. package/esm2020/src/i18n/locale_en.mjs +17 -0
  60. package/{esm2015/src/i18n/localization.js → esm2020/src/i18n/localization.mjs} +0 -0
  61. package/{esm2015/src/i18n/tokens.js → esm2020/src/i18n/tokens.mjs} +0 -0
  62. package/{esm2015/src/interface/lifecycle_hooks.js → esm2020/src/interface/lifecycle_hooks.mjs} +0 -0
  63. package/{esm2015/src/interface/simple_change.js → esm2020/src/interface/simple_change.mjs} +0 -0
  64. package/{esm2015/src/interface/type.js → esm2020/src/interface/type.mjs} +0 -0
  65. package/{esm2015/src/ivy_switch.js → esm2020/src/ivy_switch.mjs} +2 -2
  66. package/esm2020/src/linker/compiler.mjs +136 -0
  67. package/{esm2015/src/linker/component_factory.js → esm2020/src/linker/component_factory.mjs} +0 -0
  68. package/{esm2015/src/linker/component_factory_resolver.js → esm2020/src/linker/component_factory_resolver.mjs} +0 -0
  69. package/esm2020/src/linker/element_ref.mjs +59 -0
  70. package/esm2020/src/linker/ng_module_factory.mjs +29 -0
  71. package/esm2020/src/linker/ng_module_factory_loader.mjs +42 -0
  72. package/esm2020/src/linker/ng_module_factory_loader_impl.mjs +10 -0
  73. package/{esm2015/src/linker/ng_module_factory_registration.js → esm2020/src/linker/ng_module_factory_registration.mjs} +2 -2
  74. package/{esm2015/src/linker/query_list.js → esm2020/src/linker/query_list.mjs} +0 -0
  75. package/{esm2015/src/linker/template_ref.js → esm2020/src/linker/template_ref.mjs} +2 -2
  76. package/esm2020/src/linker/view_container_ref.mjs +283 -0
  77. package/{esm2015/src/linker/view_ref.js → esm2020/src/linker/view_ref.mjs} +0 -0
  78. package/esm2020/src/linker.mjs +19 -0
  79. package/esm2020/src/metadata/di.mjs +108 -0
  80. package/esm2020/src/metadata/directives.mjs +112 -0
  81. package/{esm2015/src/metadata/do_boostrap.js → esm2020/src/metadata/do_boostrap.mjs} +0 -0
  82. package/esm2020/src/metadata/ng_module.mjs +42 -0
  83. package/{esm2015/src/metadata/ng_module_def.js → esm2020/src/metadata/ng_module_def.mjs} +0 -0
  84. package/{esm2015/src/metadata/resource_loading.js → esm2020/src/metadata/resource_loading.mjs} +0 -0
  85. package/{esm2015/src/metadata/schema.js → esm2020/src/metadata/schema.mjs} +0 -0
  86. package/{esm2015/src/metadata/view.js → esm2020/src/metadata/view.mjs} +0 -0
  87. package/{esm2015/src/metadata.js → esm2020/src/metadata.mjs} +0 -0
  88. package/{esm2015/src/platform_core_providers.js → esm2020/src/platform_core_providers.mjs} +0 -0
  89. package/{esm2015/src/r3_symbols.js → esm2020/src/r3_symbols.mjs} +0 -0
  90. package/{esm2015/src/reflection/platform_reflection_capabilities.js → esm2020/src/reflection/platform_reflection_capabilities.mjs} +0 -0
  91. package/{esm2015/src/reflection/reflection.js → esm2020/src/reflection/reflection.mjs} +0 -0
  92. package/{esm2015/src/reflection/reflection_capabilities.js → esm2020/src/reflection/reflection_capabilities.mjs} +0 -0
  93. package/{esm2015/src/reflection/reflector.js → esm2020/src/reflection/reflector.mjs} +0 -0
  94. package/{esm2015/src/reflection/types.js → esm2020/src/reflection/types.mjs} +0 -0
  95. package/{esm2015/src/render/api.js → esm2020/src/render/api.mjs} +2 -2
  96. package/{esm2015/src/render/api_flags.js → esm2020/src/render/api_flags.mjs} +0 -0
  97. package/{esm2015/src/render.js → esm2020/src/render.mjs} +0 -0
  98. package/{esm2015/src/render3/assert.js → esm2020/src/render3/assert.mjs} +0 -0
  99. package/{esm2015/src/render3/bindings.js → esm2020/src/render3/bindings.mjs} +0 -0
  100. package/{esm2015/src/render3/collect_native_nodes.js → esm2020/src/render3/collect_native_nodes.mjs} +0 -0
  101. package/esm2020/src/render3/component.mjs +204 -0
  102. package/{esm2015/src/render3/component_ref.js → esm2020/src/render3/component_ref.mjs} +2 -2
  103. package/{esm2015/src/render3/context_discovery.js → esm2020/src/render3/context_discovery.mjs} +0 -0
  104. package/{esm2015/src/render3/definition.js → esm2020/src/render3/definition.mjs} +0 -0
  105. package/{esm2015/src/render3/definition_factory.js → esm2020/src/render3/definition_factory.mjs} +0 -0
  106. package/{esm2015/src/render3/di.js → esm2020/src/render3/di.mjs} +0 -0
  107. package/{esm2015/src/render3/di_setup.js → esm2020/src/render3/di_setup.mjs} +0 -0
  108. package/esm2020/src/render3/error_code.mjs +42 -0
  109. package/esm2020/src/render3/error_details_base_url.mjs +16 -0
  110. package/{esm2015/src/render3/errors.js → esm2020/src/render3/errors.mjs} +0 -0
  111. package/{esm2015/src/render3/errors_di.js → esm2020/src/render3/errors_di.mjs} +0 -0
  112. package/{esm2015/src/render3/features/copy_definition_feature.js → esm2020/src/render3/features/copy_definition_feature.mjs} +0 -0
  113. package/{esm2015/src/render3/features/inherit_definition_feature.js → esm2020/src/render3/features/inherit_definition_feature.mjs} +0 -0
  114. package/esm2020/src/render3/features/ng_onchanges_feature.mjs +92 -0
  115. package/{esm2015/src/render3/features/providers_feature.js → esm2020/src/render3/features/providers_feature.mjs} +0 -0
  116. package/{esm2015/src/render3/fields.js → esm2020/src/render3/fields.mjs} +0 -0
  117. package/{esm2015/src/render3/global_utils_api.js → esm2020/src/render3/global_utils_api.mjs} +0 -0
  118. package/{esm2015/src/render3/hooks.js → esm2020/src/render3/hooks.mjs} +0 -0
  119. package/{esm2015/src/render3/i18n/i18n_apply.js → esm2020/src/render3/i18n/i18n_apply.mjs} +0 -0
  120. package/{esm2015/src/render3/i18n/i18n_debug.js → esm2020/src/render3/i18n/i18n_debug.mjs} +0 -0
  121. package/{esm2015/src/render3/i18n/i18n_insert_before_index.js → esm2020/src/render3/i18n/i18n_insert_before_index.mjs} +0 -0
  122. package/{esm2015/src/render3/i18n/i18n_locale_id.js → esm2020/src/render3/i18n/i18n_locale_id.mjs} +0 -0
  123. package/{esm2015/src/render3/i18n/i18n_parse.js → esm2020/src/render3/i18n/i18n_parse.mjs} +0 -0
  124. package/{esm2015/src/render3/i18n/i18n_postprocess.js → esm2020/src/render3/i18n/i18n_postprocess.mjs} +0 -0
  125. package/{esm2015/src/render3/i18n/i18n_tree_shaking.js → esm2020/src/render3/i18n/i18n_tree_shaking.mjs} +0 -0
  126. package/{esm2015/src/render3/i18n/i18n_util.js → esm2020/src/render3/i18n/i18n_util.mjs} +0 -0
  127. package/{esm2015/src/render3/index.js → esm2020/src/render3/index.mjs} +0 -0
  128. package/{esm2015/src/render3/instructions/advance.js → esm2020/src/render3/instructions/advance.mjs} +0 -0
  129. package/{esm2015/src/render3/instructions/all.js → esm2020/src/render3/instructions/all.mjs} +0 -0
  130. package/{esm2015/src/render3/instructions/attribute.js → esm2020/src/render3/instructions/attribute.mjs} +0 -0
  131. package/{esm2015/src/render3/instructions/attribute_interpolation.js → esm2020/src/render3/instructions/attribute_interpolation.mjs} +0 -0
  132. package/{esm2015/src/render3/instructions/change_detection.js → esm2020/src/render3/instructions/change_detection.mjs} +0 -0
  133. package/{esm2015/src/render3/instructions/class_map_interpolation.js → esm2020/src/render3/instructions/class_map_interpolation.mjs} +0 -0
  134. package/{esm2015/src/render3/instructions/di.js → esm2020/src/render3/instructions/di.mjs} +0 -0
  135. package/{esm2015/src/render3/instructions/di_attr.js → esm2020/src/render3/instructions/di_attr.mjs} +0 -0
  136. package/{esm2015/src/render3/instructions/element.js → esm2020/src/render3/instructions/element.mjs} +0 -0
  137. package/{esm2015/src/render3/instructions/element_container.js → esm2020/src/render3/instructions/element_container.mjs} +0 -0
  138. package/{esm2015/src/render3/instructions/get_current_view.js → esm2020/src/render3/instructions/get_current_view.mjs} +0 -0
  139. package/{esm2015/src/render3/instructions/host_property.js → esm2020/src/render3/instructions/host_property.mjs} +0 -0
  140. package/{esm2015/src/render3/instructions/i18n.js → esm2020/src/render3/instructions/i18n.mjs} +0 -0
  141. package/{esm2015/src/render3/instructions/i18n_icu_container_visitor.js → esm2020/src/render3/instructions/i18n_icu_container_visitor.mjs} +0 -0
  142. package/{esm2015/src/render3/instructions/interpolation.js → esm2020/src/render3/instructions/interpolation.mjs} +0 -0
  143. package/{esm2015/src/render3/instructions/listener.js → esm2020/src/render3/instructions/listener.mjs} +0 -0
  144. package/{esm2015/src/render3/instructions/lview_debug.js → esm2020/src/render3/instructions/lview_debug.mjs} +0 -0
  145. package/{esm2015/src/render3/instructions/namespace.js → esm2020/src/render3/instructions/namespace.mjs} +0 -0
  146. package/{esm2015/src/render3/instructions/next_context.js → esm2020/src/render3/instructions/next_context.mjs} +0 -0
  147. package/{esm2015/src/render3/instructions/projection.js → esm2020/src/render3/instructions/projection.mjs} +0 -0
  148. package/{esm2015/src/render3/instructions/property.js → esm2020/src/render3/instructions/property.mjs} +0 -0
  149. package/{esm2015/src/render3/instructions/property_interpolation.js → esm2020/src/render3/instructions/property_interpolation.mjs} +0 -0
  150. package/esm2020/src/render3/instructions/shared.mjs +1811 -0
  151. package/{esm2015/src/render3/instructions/storage.js → esm2020/src/render3/instructions/storage.mjs} +0 -0
  152. package/{esm2015/src/render3/instructions/style_map_interpolation.js → esm2020/src/render3/instructions/style_map_interpolation.mjs} +0 -0
  153. package/{esm2015/src/render3/instructions/style_prop_interpolation.js → esm2020/src/render3/instructions/style_prop_interpolation.mjs} +0 -0
  154. package/{esm2015/src/render3/instructions/styling.js → esm2020/src/render3/instructions/styling.mjs} +0 -0
  155. package/{esm2015/src/render3/instructions/template.js → esm2020/src/render3/instructions/template.mjs} +0 -0
  156. package/{esm2015/src/render3/instructions/text.js → esm2020/src/render3/instructions/text.mjs} +0 -0
  157. package/{esm2015/src/render3/instructions/text_interpolation.js → esm2020/src/render3/instructions/text_interpolation.mjs} +0 -0
  158. package/{esm2015/src/render3/interfaces/container.js → esm2020/src/render3/interfaces/container.mjs} +0 -0
  159. package/{esm2015/src/render3/interfaces/context.js → esm2020/src/render3/interfaces/context.mjs} +0 -0
  160. package/{esm2015/src/render3/interfaces/definition.js → esm2020/src/render3/interfaces/definition.mjs} +0 -0
  161. package/{esm2015/src/render3/interfaces/document.js → esm2020/src/render3/interfaces/document.mjs} +0 -0
  162. package/{esm2015/src/render3/interfaces/i18n.js → esm2020/src/render3/interfaces/i18n.mjs} +0 -0
  163. package/{esm2015/src/render3/interfaces/injector.js → esm2020/src/render3/interfaces/injector.mjs} +0 -0
  164. package/{esm2015/src/render3/interfaces/node.js → esm2020/src/render3/interfaces/node.mjs} +0 -0
  165. package/{esm2015/src/render3/interfaces/player.js → esm2020/src/render3/interfaces/player.mjs} +0 -0
  166. package/{esm2015/src/render3/interfaces/projection.js → esm2020/src/render3/interfaces/projection.mjs} +0 -0
  167. package/{esm2015/src/render3/interfaces/public_definitions.js → esm2020/src/render3/interfaces/public_definitions.mjs} +0 -0
  168. package/{esm2015/src/render3/interfaces/query.js → esm2020/src/render3/interfaces/query.mjs} +0 -0
  169. package/esm2020/src/render3/interfaces/renderer.mjs +27 -0
  170. package/{esm2015/src/render3/interfaces/renderer_dom.js → esm2020/src/render3/interfaces/renderer_dom.mjs} +0 -0
  171. package/{esm2015/src/render3/interfaces/sanitization.js → esm2020/src/render3/interfaces/sanitization.mjs} +0 -0
  172. package/{esm2015/src/render3/interfaces/styling.js → esm2020/src/render3/interfaces/styling.mjs} +0 -0
  173. package/{esm2015/src/render3/interfaces/type_checks.js → esm2020/src/render3/interfaces/type_checks.mjs} +0 -0
  174. package/{esm2015/src/render3/interfaces/view.js → esm2020/src/render3/interfaces/view.mjs} +0 -0
  175. package/esm2020/src/render3/jit/directive.mjs +325 -0
  176. package/esm2020/src/render3/jit/environment.mjs +165 -0
  177. package/{esm2015/src/render3/jit/jit_options.js → esm2020/src/render3/jit/jit_options.mjs} +0 -0
  178. package/{esm2015/src/render3/jit/module.js → esm2020/src/render3/jit/module.mjs} +0 -0
  179. package/esm2020/src/render3/jit/partial.mjs +104 -0
  180. package/{esm2015/src/render3/jit/pipe.js → esm2020/src/render3/jit/pipe.mjs} +0 -0
  181. package/esm2020/src/render3/metadata.mjs +49 -0
  182. package/{esm2015/src/render3/namespaces.js → esm2020/src/render3/namespaces.mjs} +0 -0
  183. package/esm2020/src/render3/ng_module_ref.mjs +122 -0
  184. package/{esm2015/src/render3/node_assert.js → esm2020/src/render3/node_assert.mjs} +0 -0
  185. package/{esm2015/src/render3/node_manipulation.js → esm2020/src/render3/node_manipulation.mjs} +0 -0
  186. package/{esm2015/src/render3/node_manipulation_i18n.js → esm2020/src/render3/node_manipulation_i18n.mjs} +0 -0
  187. package/{esm2015/src/render3/node_selector_matcher.js → esm2020/src/render3/node_selector_matcher.mjs} +0 -0
  188. package/esm2020/src/render3/pipe.mjs +184 -0
  189. package/{esm2015/src/render3/profiler.js → esm2020/src/render3/profiler.mjs} +0 -0
  190. package/{esm2015/src/render3/pure_function.js → esm2020/src/render3/pure_function.mjs} +0 -0
  191. package/{esm2015/src/render3/query.js → esm2020/src/render3/query.mjs} +0 -0
  192. package/{esm2015/src/render3/state.js → esm2020/src/render3/state.mjs} +0 -0
  193. package/{esm2015/src/render3/styling/class_differ.js → esm2020/src/render3/styling/class_differ.mjs} +0 -0
  194. package/{esm2015/src/render3/styling/static_styling.js → esm2020/src/render3/styling/static_styling.mjs} +0 -0
  195. package/{esm2015/src/render3/styling/style_binding_list.js → esm2020/src/render3/styling/style_binding_list.mjs} +0 -0
  196. package/{esm2015/src/render3/styling/styling_parser.js → esm2020/src/render3/styling/styling_parser.mjs} +0 -0
  197. package/{esm2015/src/render3/tokens.js → esm2020/src/render3/tokens.mjs} +0 -0
  198. package/{esm2015/src/render3/util/attrs_utils.js → esm2020/src/render3/util/attrs_utils.mjs} +0 -0
  199. package/{esm2015/src/render3/util/change_detection_utils.js → esm2020/src/render3/util/change_detection_utils.mjs} +0 -0
  200. package/{esm2015/src/render3/util/debug_utils.js → esm2020/src/render3/util/debug_utils.mjs} +0 -0
  201. package/esm2020/src/render3/util/discovery_utils.mjs +411 -0
  202. package/esm2020/src/render3/util/global_utils.mjs +77 -0
  203. package/{esm2015/src/render3/util/injector_utils.js → esm2020/src/render3/util/injector_utils.mjs} +0 -0
  204. package/esm2020/src/render3/util/misc_utils.mjs +61 -0
  205. package/{esm2015/src/render3/util/stringify_utils.js → esm2020/src/render3/util/stringify_utils.mjs} +0 -0
  206. package/{esm2015/src/render3/util/view_traversal_utils.js → esm2020/src/render3/util/view_traversal_utils.mjs} +0 -0
  207. package/{esm2015/src/render3/util/view_utils.js → esm2020/src/render3/util/view_utils.mjs} +0 -0
  208. package/{esm2015/src/render3/view_engine_compatibility_prebound.js → esm2020/src/render3/view_engine_compatibility_prebound.mjs} +1 -1
  209. package/{esm2015/src/render3/view_ref.js → esm2020/src/render3/view_ref.mjs} +0 -0
  210. package/{esm2015/src/sanitization/bypass.js → esm2020/src/sanitization/bypass.mjs} +0 -0
  211. package/{esm2015/src/sanitization/html_sanitizer.js → esm2020/src/sanitization/html_sanitizer.mjs} +0 -0
  212. package/{esm2015/src/sanitization/inert_body.js → esm2020/src/sanitization/inert_body.mjs} +3 -3
  213. package/{esm2015/src/sanitization/sanitization.js → esm2020/src/sanitization/sanitization.mjs} +0 -0
  214. package/{esm2015/src/sanitization/sanitizer.js → esm2020/src/sanitization/sanitizer.mjs} +0 -0
  215. package/{esm2015/src/sanitization/security.js → esm2020/src/sanitization/security.mjs} +0 -0
  216. package/{esm2015/src/sanitization/url_sanitizer.js → esm2020/src/sanitization/url_sanitizer.mjs} +0 -0
  217. package/esm2020/src/testability/testability.mjs +258 -0
  218. package/{esm2015/src/util/array_utils.js → esm2020/src/util/array_utils.mjs} +0 -0
  219. package/{esm2015/src/util/assert.js → esm2020/src/util/assert.mjs} +0 -0
  220. package/{esm2015/src/util/char_code.js → esm2020/src/util/char_code.mjs} +0 -0
  221. package/{esm2015/src/util/closure.js → esm2020/src/util/closure.mjs} +0 -0
  222. package/{esm2015/src/util/comparison.js → esm2020/src/util/comparison.mjs} +0 -0
  223. package/{esm2015/src/util/decorators.js → esm2020/src/util/decorators.mjs} +0 -0
  224. package/{esm2015/src/util/dom.js → esm2020/src/util/dom.mjs} +0 -0
  225. package/{esm2015/src/util/empty.js → esm2020/src/util/empty.mjs} +0 -0
  226. package/{esm2015/src/util/errors.js → esm2020/src/util/errors.mjs} +0 -0
  227. package/{esm2015/src/util/global.js → esm2020/src/util/global.mjs} +0 -0
  228. package/{esm2015/src/util/is_dev_mode.js → esm2020/src/util/is_dev_mode.mjs} +0 -0
  229. package/{esm2015/src/util/iterable.js → esm2020/src/util/iterable.mjs} +0 -0
  230. package/{esm2015/src/util/lang.js → esm2020/src/util/lang.mjs} +0 -0
  231. package/{esm2015/src/util/microtask.js → esm2020/src/util/microtask.mjs} +0 -0
  232. package/{esm2015/src/util/named_array_type.js → esm2020/src/util/named_array_type.mjs} +0 -0
  233. package/{esm2015/src/util/ng_dev_mode.js → esm2020/src/util/ng_dev_mode.mjs} +0 -0
  234. package/{esm2015/src/util/ng_i18n_closure_mode.js → esm2020/src/util/ng_i18n_closure_mode.mjs} +0 -0
  235. package/{esm2015/src/util/ng_jit_mode.js → esm2020/src/util/ng_jit_mode.mjs} +0 -0
  236. package/{esm2015/src/util/ng_reflect.js → esm2020/src/util/ng_reflect.mjs} +0 -0
  237. package/{esm2015/src/util/noop.js → esm2020/src/util/noop.mjs} +0 -0
  238. package/{esm2015/src/util/property.js → esm2020/src/util/property.mjs} +0 -0
  239. package/{esm2015/src/util/raf.js → esm2020/src/util/raf.mjs} +0 -0
  240. package/{esm2015/src/util/security/trusted_type_defs.js → esm2020/src/util/security/trusted_type_defs.mjs} +0 -0
  241. package/esm2020/src/util/security/trusted_types.mjs +130 -0
  242. package/esm2020/src/util/security/trusted_types_bypass.mjs +83 -0
  243. package/{esm2015/src/util/stringify.js → esm2020/src/util/stringify.mjs} +0 -0
  244. package/{esm2015/src/util/symbol.js → esm2020/src/util/symbol.mjs} +0 -0
  245. package/{esm2015/src/version.js → esm2020/src/version.mjs} +1 -1
  246. package/{esm2015/src/view/element.js → esm2020/src/view/element.mjs} +0 -0
  247. package/{esm2015/src/view/entrypoint.js → esm2020/src/view/entrypoint.mjs} +0 -0
  248. package/{esm2015/src/view/errors.js → esm2020/src/view/errors.mjs} +0 -0
  249. package/{esm2015/src/view/index.js → esm2020/src/view/index.mjs} +2 -2
  250. package/{esm2015/src/view/ng_content.js → esm2020/src/view/ng_content.mjs} +0 -0
  251. package/{esm2015/src/view/ng_module.js → esm2020/src/view/ng_module.mjs} +0 -0
  252. package/esm2020/src/view/provider.mjs +490 -0
  253. package/esm2020/src/view/provider_flags.mjs +26 -0
  254. package/{esm2015/src/view/pure_expression.js → esm2020/src/view/pure_expression.mjs} +0 -0
  255. package/{esm2015/src/view/query.js → esm2020/src/view/query.mjs} +0 -0
  256. package/esm2020/src/view/refs.mjs +369 -0
  257. package/{esm2015/src/view/services.js → esm2020/src/view/services.mjs} +0 -0
  258. package/{esm2015/src/view/text.js → esm2020/src/view/text.mjs} +0 -0
  259. package/{esm2015/src/view/types.js → esm2020/src/view/types.mjs} +0 -0
  260. package/esm2020/src/view/util.mjs +369 -0
  261. package/{esm2015/src/view/view.js → esm2020/src/view/view.mjs} +0 -0
  262. package/{esm2015/src/view/view_attach.js → esm2020/src/view/view_attach.mjs} +0 -0
  263. package/{esm2015/src/zone/ng_zone.js → esm2020/src/zone/ng_zone.mjs} +0 -0
  264. package/{esm2015/src/zone.js → esm2020/src/zone.mjs} +0 -0
  265. package/{esm2015/testing/index.js → esm2020/testing/index.mjs} +0 -0
  266. package/{esm2015/testing/public_api.js → esm2020/testing/public_api.mjs} +0 -0
  267. package/{esm2015/testing/src/async.js → esm2020/testing/src/async.mjs} +0 -0
  268. package/{esm2015/testing/src/component_fixture.js → esm2020/testing/src/component_fixture.mjs} +0 -0
  269. package/{esm2015/testing/src/fake_async.js → esm2020/testing/src/fake_async.mjs} +0 -0
  270. package/{esm2015/testing/src/lang_utils.js → esm2020/testing/src/lang_utils.mjs} +0 -0
  271. package/esm2020/testing/src/logger.mjs +34 -0
  272. package/{esm2015/testing/src/metadata_override.js → esm2020/testing/src/metadata_override.mjs} +0 -0
  273. package/{esm2015/testing/src/metadata_overrider.js → esm2020/testing/src/metadata_overrider.mjs} +0 -0
  274. package/esm2020/testing/src/ng_zone_mock.mjs +33 -0
  275. package/{esm2015/testing/src/private_export_testing.js → esm2020/testing/src/private_export_testing.mjs} +0 -0
  276. package/esm2020/testing/src/r3_test_bed.mjs +397 -0
  277. package/esm2020/testing/src/r3_test_bed_compiler.mjs +735 -0
  278. package/{esm2015/testing/src/resolvers.js → esm2020/testing/src/resolvers.mjs} +0 -0
  279. package/{esm2015/testing/src/styling.js → esm2020/testing/src/styling.mjs} +0 -0
  280. package/esm2020/testing/src/test_bed.mjs +614 -0
  281. package/esm2020/testing/src/test_bed_common.mjs +28 -0
  282. package/esm2020/testing/src/test_compiler.mjs +69 -0
  283. package/{esm2015/testing/src/test_hooks.js → esm2020/testing/src/test_hooks.mjs} +0 -0
  284. package/{esm2015/testing/src/testing.js → esm2020/testing/src/testing.mjs} +0 -0
  285. package/{esm2015/testing/src/testing_internal.js → esm2020/testing/src/testing_internal.mjs} +0 -0
  286. package/esm2020/testing/testing.mjs +5 -0
  287. package/fesm2015/{core.js → core.mjs} +8641 -8712
  288. package/fesm2015/core.mjs.map +1 -0
  289. package/fesm2015/{testing.js → testing.mjs} +50 -61
  290. package/fesm2015/testing.mjs.map +1 -0
  291. package/fesm2020/core.mjs +33119 -0
  292. package/fesm2020/core.mjs.map +1 -0
  293. package/fesm2020/testing.mjs +2635 -0
  294. package/fesm2020/testing.mjs.map +1 -0
  295. package/package.json +33 -8
  296. package/schematics/migrations/router-link-empty-expression/analyze_template.d.ts +2 -2
  297. package/schematics/migrations/router-link-empty-expression/analyze_template.js +6 -7
  298. package/schematics/migrations/router-link-empty-expression/angular/html_routerlink_empty_expr_visitor.d.ts +7 -6
  299. package/schematics/migrations/router-link-empty-expression/angular/html_routerlink_empty_expr_visitor.js +10 -11
  300. package/schematics/migrations/router-link-empty-expression/index.js +22 -11
  301. package/schematics/migrations/{move-document → testbed-teardown}/index.d.ts +2 -2
  302. package/schematics/migrations/testbed-teardown/index.js +92 -0
  303. package/schematics/migrations/testbed-teardown/util.d.ts +35 -0
  304. package/schematics/migrations/testbed-teardown/util.js +188 -0
  305. package/schematics/migrations.json +6 -101
  306. package/schematics/package.json +3 -0
  307. package/schematics/utils/import_manager.d.ts +1 -1
  308. package/schematics/utils/import_manager.js +22 -19
  309. package/schematics/utils/load_esm.d.ts +32 -0
  310. package/schematics/utils/load_esm.js +79 -0
  311. package/schematics/utils/ng_component_template.d.ts +1 -1
  312. package/schematics/utils/ng_component_template.js +12 -9
  313. package/schematics/utils/ng_decorators.d.ts +1 -1
  314. package/schematics/utils/ng_decorators.js +1 -1
  315. package/schematics/utils/parse_html.d.ts +2 -2
  316. package/schematics/utils/parse_html.js +4 -5
  317. package/schematics/utils/template_ast_visitor.d.ts +55 -0
  318. package/schematics/utils/template_ast_visitor.js +73 -0
  319. package/schematics/utils/typescript/class_declaration.d.ts +1 -1
  320. package/schematics/utils/typescript/class_declaration.js +10 -7
  321. package/schematics/utils/typescript/compiler_host.d.ts +1 -1
  322. package/schematics/utils/typescript/compiler_host.js +7 -4
  323. package/schematics/utils/typescript/decorators.d.ts +1 -1
  324. package/schematics/utils/typescript/decorators.js +7 -4
  325. package/schematics/utils/typescript/find_base_classes.d.ts +1 -1
  326. package/schematics/utils/typescript/find_base_classes.js +6 -3
  327. package/schematics/utils/typescript/functions.d.ts +1 -1
  328. package/schematics/utils/typescript/functions.js +9 -6
  329. package/schematics/utils/typescript/imports.d.ts +1 -1
  330. package/schematics/utils/typescript/imports.js +12 -9
  331. package/schematics/utils/typescript/nodes.d.ts +1 -1
  332. package/schematics/utils/typescript/nodes.js +11 -8
  333. package/schematics/utils/typescript/parse_tsconfig.d.ts +1 -1
  334. package/schematics/utils/typescript/parse_tsconfig.js +31 -9
  335. package/schematics/utils/typescript/property_name.d.ts +1 -1
  336. package/schematics/utils/typescript/property_name.js +7 -4
  337. package/schematics/utils/typescript/symbol.d.ts +1 -1
  338. package/schematics/utils/typescript/symbol.js +15 -12
  339. package/testing/package.json +5 -5
  340. package/testing/testing.d.ts +57 -339
  341. package/bundles/core-testing.umd.js +0 -3179
  342. package/bundles/core-testing.umd.js.map +0 -1
  343. package/bundles/core.umd.js +0 -34489
  344. package/bundles/core.umd.js.map +0 -1
  345. package/core.metadata.json +0 -1
  346. package/esm2015/core.externs.js +0 -6
  347. package/esm2015/core.js +0 -38
  348. package/esm2015/index.js +0 -13
  349. package/esm2015/src/application_init.js +0 -142
  350. package/esm2015/src/application_module.js +0 -134
  351. package/esm2015/src/application_ref.js +0 -735
  352. package/esm2015/src/change_detection/change_detection.js +0 -31
  353. package/esm2015/src/change_detection/change_detection_util.js +0 -105
  354. package/esm2015/src/change_detection/change_detector_ref.js +0 -96
  355. package/esm2015/src/change_detection/differs/default_iterable_differ.js +0 -668
  356. package/esm2015/src/change_detection.js +0 -14
  357. package/esm2015/src/codegen_private_exports.js +0 -11
  358. package/esm2015/src/compiler/compiler.externs.js +0 -0
  359. package/esm2015/src/console.js +0 -23
  360. package/esm2015/src/core.js +0 -50
  361. package/esm2015/src/core_private_export.js +0 -35
  362. package/esm2015/src/core_render3_private_export.js +0 -45
  363. package/esm2015/src/debug/debug_node.js +0 -632
  364. package/esm2015/src/di/injectable.js +0 -36
  365. package/esm2015/src/di/injection_token.js +0 -75
  366. package/esm2015/src/di/injector.js +0 -326
  367. package/esm2015/src/di/injector_compatibility.js +0 -187
  368. package/esm2015/src/di/interface/interface.externs.js +0 -0
  369. package/esm2015/src/di/jit/injectable.js +0 -96
  370. package/esm2015/src/di/metadata.js +0 -62
  371. package/esm2015/src/di/metadata_attr.js +0 -24
  372. package/esm2015/src/di/util.js +0 -53
  373. package/esm2015/src/event_emitter.js +0 -54
  374. package/esm2015/src/i18n/locale_en.js +0 -17
  375. package/esm2015/src/interface/interface.externs.js +0 -0
  376. package/esm2015/src/linker/compiler.js +0 -118
  377. package/esm2015/src/linker/element_ref.js +0 -66
  378. package/esm2015/src/linker/ng_module_factory.js +0 -21
  379. package/esm2015/src/linker/ng_module_factory_loader.js +0 -41
  380. package/esm2015/src/linker/system_js_ng_module_factory_loader.js +0 -77
  381. package/esm2015/src/linker/view_container_ref.js +0 -252
  382. package/esm2015/src/linker.js +0 -20
  383. package/esm2015/src/metadata/di.js +0 -99
  384. package/esm2015/src/metadata/directives.js +0 -120
  385. package/esm2015/src/metadata/ng_module.js +0 -44
  386. package/esm2015/src/reflection/reflection.externs.js +0 -0
  387. package/esm2015/src/render3/component.js +0 -206
  388. package/esm2015/src/render3/error_code.js +0 -45
  389. package/esm2015/src/render3/features/ng_onchanges_feature.js +0 -92
  390. package/esm2015/src/render3/instructions/shared.js +0 -1813
  391. package/esm2015/src/render3/interfaces/renderer.js +0 -29
  392. package/esm2015/src/render3/jit/directive.js +0 -312
  393. package/esm2015/src/render3/jit/environment.js +0 -167
  394. package/esm2015/src/render3/jit/partial.js +0 -105
  395. package/esm2015/src/render3/metadata.js +0 -49
  396. package/esm2015/src/render3/ng_module_ref.js +0 -108
  397. package/esm2015/src/render3/pipe.js +0 -202
  398. package/esm2015/src/render3/util/discovery_utils.js +0 -411
  399. package/esm2015/src/render3/util/global_utils.js +0 -78
  400. package/esm2015/src/render3/util/misc_utils.js +0 -63
  401. package/esm2015/src/testability/testability.js +0 -256
  402. package/esm2015/src/util/security/trusted_types.js +0 -133
  403. package/esm2015/src/util/security/trusted_types_bypass.js +0 -86
  404. package/esm2015/src/util/util.externs.js +0 -0
  405. package/esm2015/src/view/provider.js +0 -507
  406. package/esm2015/src/view/refs.js +0 -362
  407. package/esm2015/src/view/util.js +0 -378
  408. package/esm2015/testing/src/logger.js +0 -32
  409. package/esm2015/testing/src/ng_zone_mock.js +0 -31
  410. package/esm2015/testing/src/r3_test_bed.js +0 -397
  411. package/esm2015/testing/src/r3_test_bed_compiler.js +0 -744
  412. package/esm2015/testing/src/test_bed.js +0 -608
  413. package/esm2015/testing/src/test_bed_common.js +0 -31
  414. package/esm2015/testing/src/test_compiler.js +0 -66
  415. package/esm2015/testing/testing.externs.js +0 -6
  416. package/esm2015/testing/testing.js +0 -7
  417. package/fesm2015/core.js.map +0 -1
  418. package/fesm2015/testing.js.map +0 -1
  419. package/schematics/migrations/abstract-control-parent/index.d.ts +0 -11
  420. package/schematics/migrations/abstract-control-parent/index.js +0 -69
  421. package/schematics/migrations/abstract-control-parent/util.d.ts +0 -14
  422. package/schematics/migrations/abstract-control-parent/util.js +0 -64
  423. package/schematics/migrations/activated-route-snapshot-fragment/index.d.ts +0 -13
  424. package/schematics/migrations/activated-route-snapshot-fragment/index.js +0 -70
  425. package/schematics/migrations/activated-route-snapshot-fragment/util.d.ts +0 -16
  426. package/schematics/migrations/activated-route-snapshot-fragment/util.js +0 -48
  427. package/schematics/migrations/can-activate-with-redirect-to/index.d.ts +0 -11
  428. package/schematics/migrations/can-activate-with-redirect-to/index.js +0 -66
  429. package/schematics/migrations/can-activate-with-redirect-to/util.d.ts +0 -11
  430. package/schematics/migrations/can-activate-with-redirect-to/util.js +0 -70
  431. package/schematics/migrations/deep-shadow-piercing-selector/index.d.ts +0 -10
  432. package/schematics/migrations/deep-shadow-piercing-selector/index.js +0 -49
  433. package/schematics/migrations/dynamic-queries/index.d.ts +0 -13
  434. package/schematics/migrations/dynamic-queries/index.js +0 -73
  435. package/schematics/migrations/dynamic-queries/util.d.ts +0 -25
  436. package/schematics/migrations/dynamic-queries/util.js +0 -81
  437. package/schematics/migrations/initial-navigation/collector.d.ts +0 -22
  438. package/schematics/migrations/initial-navigation/collector.js +0 -119
  439. package/schematics/migrations/initial-navigation/index.d.ts +0 -11
  440. package/schematics/migrations/initial-navigation/index.js +0 -83
  441. package/schematics/migrations/initial-navigation/transform.d.ts +0 -20
  442. package/schematics/migrations/initial-navigation/transform.js +0 -68
  443. package/schematics/migrations/initial-navigation/update_recorder.d.ts +0 -18
  444. package/schematics/migrations/initial-navigation/update_recorder.js +0 -20
  445. package/schematics/migrations/initial-navigation/util.d.ts +0 -12
  446. package/schematics/migrations/initial-navigation/util.js +0 -43
  447. package/schematics/migrations/missing-injectable/definition_collector.d.ts +0 -37
  448. package/schematics/migrations/missing-injectable/definition_collector.js +0 -89
  449. package/schematics/migrations/missing-injectable/index.d.ts +0 -11
  450. package/schematics/migrations/missing-injectable/index.js +0 -122
  451. package/schematics/migrations/missing-injectable/providers_evaluator.d.ts +0 -36
  452. package/schematics/migrations/missing-injectable/providers_evaluator.js +0 -64
  453. package/schematics/migrations/missing-injectable/transform.d.ts +0 -69
  454. package/schematics/migrations/missing-injectable/transform.js +0 -201
  455. package/schematics/migrations/missing-injectable/update_recorder.d.ts +0 -21
  456. package/schematics/migrations/missing-injectable/update_recorder.js +0 -20
  457. package/schematics/migrations/module-with-providers/collector.d.ts +0 -34
  458. package/schematics/migrations/module-with-providers/collector.js +0 -73
  459. package/schematics/migrations/module-with-providers/index.d.ts +0 -13
  460. package/schematics/migrations/module-with-providers/index.js +0 -93
  461. package/schematics/migrations/module-with-providers/transform.d.ts +0 -49
  462. package/schematics/migrations/module-with-providers/transform.js +0 -148
  463. package/schematics/migrations/module-with-providers/util.d.ts +0 -13
  464. package/schematics/migrations/module-with-providers/util.js +0 -40
  465. package/schematics/migrations/move-document/document_import_visitor.d.ts +0 -27
  466. package/schematics/migrations/move-document/document_import_visitor.js +0 -74
  467. package/schematics/migrations/move-document/index.js +0 -93
  468. package/schematics/migrations/move-document/move-import.d.ts +0 -12
  469. package/schematics/migrations/move-document/move-import.js +0 -61
  470. package/schematics/migrations/native-view-encapsulation/index.d.ts +0 -11
  471. package/schematics/migrations/native-view-encapsulation/index.js +0 -63
  472. package/schematics/migrations/native-view-encapsulation/util.d.ts +0 -11
  473. package/schematics/migrations/native-view-encapsulation/util.js +0 -48
  474. package/schematics/migrations/navigation-extras-omissions/index.d.ts +0 -11
  475. package/schematics/migrations/navigation-extras-omissions/index.js +0 -69
  476. package/schematics/migrations/navigation-extras-omissions/util.d.ts +0 -11
  477. package/schematics/migrations/navigation-extras-omissions/util.js +0 -126
  478. package/schematics/migrations/relative-link-resolution/collector.d.ts +0 -22
  479. package/schematics/migrations/relative-link-resolution/collector.js +0 -95
  480. package/schematics/migrations/relative-link-resolution/index.d.ts +0 -11
  481. package/schematics/migrations/relative-link-resolution/index.js +0 -84
  482. package/schematics/migrations/relative-link-resolution/transform.d.ts +0 -22
  483. package/schematics/migrations/relative-link-resolution/transform.js +0 -65
  484. package/schematics/migrations/relative-link-resolution/update_recorder.d.ts +0 -18
  485. package/schematics/migrations/relative-link-resolution/update_recorder.js +0 -20
  486. package/schematics/migrations/relative-link-resolution/util.d.ts +0 -12
  487. package/schematics/migrations/relative-link-resolution/util.js +0 -43
  488. package/schematics/migrations/renderer-to-renderer2/helpers.d.ts +0 -25
  489. package/schematics/migrations/renderer-to-renderer2/helpers.js +0 -238
  490. package/schematics/migrations/renderer-to-renderer2/index.d.ts +0 -14
  491. package/schematics/migrations/renderer-to-renderer2/index.js +0 -135
  492. package/schematics/migrations/renderer-to-renderer2/migration.d.ts +0 -18
  493. package/schematics/migrations/renderer-to-renderer2/migration.js +0 -225
  494. package/schematics/migrations/renderer-to-renderer2/util.d.ts +0 -18
  495. package/schematics/migrations/renderer-to-renderer2/util.js +0 -83
  496. package/schematics/migrations/router-preserve-query-params/index.d.ts +0 -14
  497. package/schematics/migrations/router-preserve-query-params/index.js +0 -72
  498. package/schematics/migrations/router-preserve-query-params/util.d.ts +0 -11
  499. package/schematics/migrations/router-preserve-query-params/util.js +0 -103
  500. package/schematics/migrations/static-queries/angular/directive_inputs.d.ts +0 -11
  501. package/schematics/migrations/static-queries/angular/directive_inputs.js +0 -84
  502. package/schematics/migrations/static-queries/angular/ng_query_visitor.d.ts +0 -45
  503. package/schematics/migrations/static-queries/angular/ng_query_visitor.js +0 -127
  504. package/schematics/migrations/static-queries/angular/query-definition.d.ts +0 -37
  505. package/schematics/migrations/static-queries/angular/query-definition.js +0 -33
  506. package/schematics/migrations/static-queries/angular/super_class.d.ts +0 -15
  507. package/schematics/migrations/static-queries/angular/super_class.js +0 -35
  508. package/schematics/migrations/static-queries/index.d.ts +0 -11
  509. package/schematics/migrations/static-queries/index.js +0 -219
  510. package/schematics/migrations/static-queries/strategies/template_strategy/template_strategy.d.ts +0 -38
  511. package/schematics/migrations/static-queries/strategies/template_strategy/template_strategy.js +0 -214
  512. package/schematics/migrations/static-queries/strategies/test_strategy/test_strategy.d.ts +0 -24
  513. package/schematics/migrations/static-queries/strategies/test_strategy/test_strategy.js +0 -38
  514. package/schematics/migrations/static-queries/strategies/timing-strategy.d.ts +0 -19
  515. package/schematics/migrations/static-queries/strategies/timing-strategy.js +0 -20
  516. package/schematics/migrations/static-queries/strategies/usage_strategy/declaration_usage_visitor.d.ts +0 -82
  517. package/schematics/migrations/static-queries/strategies/usage_strategy/declaration_usage_visitor.js +0 -369
  518. package/schematics/migrations/static-queries/strategies/usage_strategy/super_class_context.d.ts +0 -18
  519. package/schematics/migrations/static-queries/strategies/usage_strategy/super_class_context.js +0 -52
  520. package/schematics/migrations/static-queries/strategies/usage_strategy/template_usage_visitor.d.ts +0 -26
  521. package/schematics/migrations/static-queries/strategies/usage_strategy/template_usage_visitor.js +0 -94
  522. package/schematics/migrations/static-queries/strategies/usage_strategy/usage_strategy.d.ts +0 -33
  523. package/schematics/migrations/static-queries/strategies/usage_strategy/usage_strategy.js +0 -168
  524. package/schematics/migrations/static-queries/transform.d.ts +0 -21
  525. package/schematics/migrations/static-queries/transform.js +0 -102
  526. package/schematics/migrations/template-var-assignment/analyze_template.d.ts +0 -20
  527. package/schematics/migrations/template-var-assignment/analyze_template.js +0 -39
  528. package/schematics/migrations/template-var-assignment/angular/html_variable_assignment_visitor.d.ts +0 -27
  529. package/schematics/migrations/template-var-assignment/angular/html_variable_assignment_visitor.js +0 -79
  530. package/schematics/migrations/template-var-assignment/index.d.ts +0 -11
  531. package/schematics/migrations/template-var-assignment/index.js +0 -90
  532. package/schematics/migrations/undecorated-classes-with-decorated-fields/index.d.ts +0 -14
  533. package/schematics/migrations/undecorated-classes-with-decorated-fields/index.js +0 -114
  534. package/schematics/migrations/undecorated-classes-with-decorated-fields/transform.d.ts +0 -63
  535. package/schematics/migrations/undecorated-classes-with-decorated-fields/transform.js +0 -300
  536. package/schematics/migrations/undecorated-classes-with-decorated-fields/update_recorder.d.ts +0 -19
  537. package/schematics/migrations/undecorated-classes-with-decorated-fields/update_recorder.js +0 -20
  538. package/schematics/migrations/undecorated-classes-with-di/create_ngc_program.d.ts +0 -18
  539. package/schematics/migrations/undecorated-classes-with-di/create_ngc_program.js +0 -57
  540. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/convert_directive_metadata.d.ts +0 -18
  541. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/convert_directive_metadata.js +0 -97
  542. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/decorator_rewriter.d.ts +0 -39
  543. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/decorator_rewriter.js +0 -116
  544. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor.d.ts +0 -37
  545. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor.js +0 -126
  546. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format.d.ts +0 -10
  547. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format.js +0 -31
  548. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports.d.ts +0 -16
  549. package/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports.js +0 -65
  550. package/schematics/migrations/undecorated-classes-with-di/index.d.ts +0 -11
  551. package/schematics/migrations/undecorated-classes-with-di/index.js +0 -184
  552. package/schematics/migrations/undecorated-classes-with-di/ng_declaration_collector.d.ts +0 -38
  553. package/schematics/migrations/undecorated-classes-with-di/ng_declaration_collector.js +0 -142
  554. package/schematics/migrations/undecorated-classes-with-di/transform.d.ts +0 -97
  555. package/schematics/migrations/undecorated-classes-with-di/transform.js +0 -370
  556. package/schematics/migrations/undecorated-classes-with-di/update_recorder.d.ts +0 -20
  557. package/schematics/migrations/undecorated-classes-with-di/update_recorder.js +0 -20
  558. package/schematics/migrations/wait-for-async/index.d.ts +0 -11
  559. package/schematics/migrations/wait-for-async/index.js +0 -98
  560. package/schematics/migrations/wait-for-async/util.d.ts +0 -11
  561. package/schematics/migrations/wait-for-async/util.js +0 -37
  562. package/schematics/migrations/xhr-factory/index.d.ts +0 -10
  563. package/schematics/migrations/xhr-factory/index.js +0 -104
  564. package/src/r3_symbols.d.ts +0 -1025
  565. package/testing/testing.metadata.json +0 -1
  566. package/testing.d.ts +0 -7
  567. package/testing.metadata.json +0 -1
@@ -1,39 +0,0 @@
1
- /// <amd-module name="@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/decorator_rewriter" />
2
- /**
3
- * @license
4
- * Copyright Google LLC 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 { AotCompiler } from '@angular/compiler';
10
- import { PartialEvaluator } from '@angular/compiler-cli/src/ngtsc/partial_evaluator';
11
- import * as ts from 'typescript';
12
- import { ImportManager } from '../../../utils/import_manager';
13
- import { NgDecorator } from '../../../utils/ng_decorators';
14
- /**
15
- * Class that can be used to copy decorators to a new location. The rewriter ensures that
16
- * identifiers and imports are rewritten to work in the new file location. Fields in a
17
- * decorator that cannot be cleanly copied will be copied with a comment explaining that
18
- * imports and identifiers need to be adjusted manually.
19
- */
20
- export declare class DecoratorRewriter {
21
- private importManager;
22
- private typeChecker;
23
- private evaluator;
24
- private compiler;
25
- previousSourceFile: ts.SourceFile | null;
26
- newSourceFile: ts.SourceFile | null;
27
- newProperties: ts.ObjectLiteralElementLike[];
28
- nonCopyableProperties: ts.ObjectLiteralElementLike[];
29
- private importRewriterFactory;
30
- constructor(importManager: ImportManager, typeChecker: ts.TypeChecker, evaluator: PartialEvaluator, compiler: AotCompiler);
31
- rewrite(ngDecorator: NgDecorator, newSourceFile: ts.SourceFile): ts.Decorator;
32
- /** Creates a new decorator with the given expression. */
33
- private _createDecorator;
34
- /**
35
- * Sanitizes a metadata property by ensuring that all contained identifiers
36
- * are imported in the target source file.
37
- */
38
- private _sanitizeMetadataProperty;
39
- }
@@ -1,116 +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/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/decorator_rewriter", ["require", "exports", "typescript", "@angular/core/schematics/utils/typescript/functions", "@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor"], factory);
8
- }
9
- })(function (require, exports) {
10
- "use strict";
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.DecoratorRewriter = void 0;
13
- const ts = require("typescript");
14
- const functions_1 = require("@angular/core/schematics/utils/typescript/functions");
15
- const import_rewrite_visitor_1 = require("@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor");
16
- /**
17
- * Class that can be used to copy decorators to a new location. The rewriter ensures that
18
- * identifiers and imports are rewritten to work in the new file location. Fields in a
19
- * decorator that cannot be cleanly copied will be copied with a comment explaining that
20
- * imports and identifiers need to be adjusted manually.
21
- */
22
- class DecoratorRewriter {
23
- constructor(importManager, typeChecker, evaluator, compiler) {
24
- this.importManager = importManager;
25
- this.typeChecker = typeChecker;
26
- this.evaluator = evaluator;
27
- this.compiler = compiler;
28
- this.previousSourceFile = null;
29
- this.newSourceFile = null;
30
- this.newProperties = [];
31
- this.nonCopyableProperties = [];
32
- this.importRewriterFactory = new import_rewrite_visitor_1.ImportRewriteTransformerFactory(this.importManager, this.typeChecker, this.compiler['_host']);
33
- }
34
- rewrite(ngDecorator, newSourceFile) {
35
- const decorator = ngDecorator.node;
36
- // Reset the previous state of the decorator rewriter.
37
- this.newProperties = [];
38
- this.nonCopyableProperties = [];
39
- this.newSourceFile = newSourceFile;
40
- this.previousSourceFile = decorator.getSourceFile();
41
- // If the decorator will be added to the same source file it currently
42
- // exists in, we don't need to rewrite any paths or add new imports.
43
- if (this.previousSourceFile === newSourceFile) {
44
- return this._createDecorator(decorator.expression);
45
- }
46
- const oldCallExpr = decorator.expression;
47
- if (!oldCallExpr.arguments.length) {
48
- // Re-use the original decorator if there are no arguments and nothing needs
49
- // to be sanitized or rewritten.
50
- return this._createDecorator(decorator.expression);
51
- }
52
- const metadata = (0, functions_1.unwrapExpression)(oldCallExpr.arguments[0]);
53
- if (!ts.isObjectLiteralExpression(metadata)) {
54
- // Re-use the original decorator as there is no metadata that can be sanitized.
55
- return this._createDecorator(decorator.expression);
56
- }
57
- metadata.properties.forEach(prop => {
58
- // We don't handle spread assignments, accessors or method declarations automatically
59
- // as it involves more advanced static analysis and these type of properties are not
60
- // picked up by ngc either.
61
- if (ts.isSpreadAssignment(prop) || ts.isAccessor(prop) || ts.isMethodDeclaration(prop)) {
62
- this.nonCopyableProperties.push(prop);
63
- return;
64
- }
65
- const sanitizedProp = this._sanitizeMetadataProperty(prop);
66
- if (sanitizedProp !== null) {
67
- this.newProperties.push(sanitizedProp);
68
- }
69
- else {
70
- this.nonCopyableProperties.push(prop);
71
- }
72
- });
73
- // In case there is at least one non-copyable property, we add a leading comment to
74
- // the first property assignment in order to ask the developer to manually manage
75
- // imports and do path rewriting for these properties.
76
- if (this.nonCopyableProperties.length !== 0) {
77
- ['The following fields were copied from the base class,',
78
- 'but could not be updated automatically to work in the',
79
- 'new file location. Please add any required imports for', 'the properties below:']
80
- .forEach(text => ts.addSyntheticLeadingComment(this.nonCopyableProperties[0], ts.SyntaxKind.SingleLineCommentTrivia, ` ${text}`, true));
81
- }
82
- // Note that we don't update the decorator as we don't want to copy potential leading
83
- // comments of the decorator. This is necessary because otherwise comments from the
84
- // copied decorator end up describing the new class (which is not always correct).
85
- return this._createDecorator(ts.createCall(this.importManager.addImportToSourceFile(newSourceFile, ngDecorator.name, ngDecorator.moduleName), undefined, [ts.updateObjectLiteral(metadata, [...this.newProperties, ...this.nonCopyableProperties])]));
86
- }
87
- /** Creates a new decorator with the given expression. */
88
- _createDecorator(expr) {
89
- // Note that we don't update the decorator as we don't want to copy potential leading
90
- // comments of the decorator. This is necessary because otherwise comments from the
91
- // copied decorator end up describing the new class (which is not always correct).
92
- return ts.createDecorator(expr);
93
- }
94
- /**
95
- * Sanitizes a metadata property by ensuring that all contained identifiers
96
- * are imported in the target source file.
97
- */
98
- _sanitizeMetadataProperty(prop) {
99
- try {
100
- return ts
101
- .transform(prop, [ctx => this.importRewriterFactory.create(ctx, this.newSourceFile)])
102
- .transformed[0];
103
- }
104
- catch (e) {
105
- // If the error is for an unresolved identifier, we want to return "null" because
106
- // such object literal elements could be added to the non-copyable properties.
107
- if (e instanceof import_rewrite_visitor_1.UnresolvedIdentifierError) {
108
- return null;
109
- }
110
- throw e;
111
- }
112
- }
113
- }
114
- exports.DecoratorRewriter = DecoratorRewriter;
115
- });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9yX3Jld3JpdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zY2hlbWF0aWNzL21pZ3JhdGlvbnMvdW5kZWNvcmF0ZWQtY2xhc3Nlcy13aXRoLWRpL2RlY29yYXRvcl9yZXdyaXRlL2RlY29yYXRvcl9yZXdyaXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFVQSxpQ0FBaUM7SUFJakMsbUZBQXFFO0lBRXJFLHFKQUFvRztJQUdwRzs7Ozs7T0FLRztJQUNILE1BQWEsaUJBQWlCO1FBVTVCLFlBQ1ksYUFBNEIsRUFBVSxXQUEyQixFQUNqRSxTQUEyQixFQUFVLFFBQXFCO1lBRDFELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1lBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1lBQ2pFLGNBQVMsR0FBVCxTQUFTLENBQWtCO1lBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBYTtZQVh0RSx1QkFBa0IsR0FBdUIsSUFBSSxDQUFDO1lBQzlDLGtCQUFhLEdBQXVCLElBQUksQ0FBQztZQUV6QyxrQkFBYSxHQUFrQyxFQUFFLENBQUM7WUFDbEQsMEJBQXFCLEdBQWtDLEVBQUUsQ0FBQztZQUVsRCwwQkFBcUIsR0FBRyxJQUFJLHdEQUErQixDQUMvRCxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBSU8sQ0FBQztRQUUxRSxPQUFPLENBQUMsV0FBd0IsRUFBRSxhQUE0QjtZQUM1RCxNQUFNLFNBQVMsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDO1lBRW5DLHNEQUFzRDtZQUN0RCxJQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMscUJBQXFCLEdBQUcsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxD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O1lBQ3JGLG1GQUFtRjtZQUNuRixrRkFBa0Y7WUFDbEYsT0FBTyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFFRDs7O1dBR0c7UUFDSyx5QkFBeUIsQ0FBQyxJQUFpQztZQUVqRSxJQUFJO2dCQUNGLE9BQU8sRUFBRTtxQkFDSixTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsYUFBYyxDQUFDLENBQUMsQ0FBQztxQkFDckYsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3JCO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsaUZBQWlGO2dCQUNqRiw4RUFBOEU7Z0JBQzlFLElBQUksQ0FBQyxZQUFZLGtEQUF5QixFQUFFO29CQUMxQyxPQUFPLElBQUksQ0FBQztpQkFDYjtnQkFDRCxNQUFNLENBQUMsQ0FBQzthQUNUO1FBQ0gsQ0FBQztLQUNGO0lBOUdELDhDQThHQyIsInNvdXJjZXNDb250ZW50IjpbIlxuLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5pbXBvcnQge0FvdENvbXBpbGVyfSBmcm9tICdAYW5ndWxhci9jb21waWxlcic7XG5pbXBvcnQge1BhcnRpYWxFdmFsdWF0b3J9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvcGFydGlhbF9ldmFsdWF0b3InO1xuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7SW1wb3J0TWFuYWdlcn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvaW1wb3J0X21hbmFnZXInO1xuaW1wb3J0IHtOZ0RlY29yYXRvcn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvbmdfZGVjb3JhdG9ycyc7XG5pbXBvcnQge3Vud3JhcEV4cHJlc3Npb259IGZyb20gJy4uLy4uLy4uL3V0aWxzL3R5cGVzY3JpcHQvZnVuY3Rpb25zJztcblxuaW1wb3J0IHtJbXBvcnRSZXdyaXRlVHJhbnNmb3JtZXJGYWN0b3J5LCBVbnJlc29sdmVkSWRlbnRpZmllckVycm9yfSBmcm9tICcuL2ltcG9ydF9yZXdyaXRlX3Zpc2l0b3InO1xuXG5cbi8qKlxuICogQ2xhc3MgdGhhdCBjYW4gYmUgdXNlZCB0byBjb3B5IGRlY29yYXRvcnMgdG8gYSBuZXcgbG9jYXRpb24uIFRoZSByZXdyaXRlciBlbnN1cmVzIHRoYXRcbiAqIGlkZW50aWZpZXJzIGFuZCBpbXBvcnRzIGFyZSByZXdyaXR0ZW4gdG8gd29yayBpbiB0aGUgbmV3IGZpbGUgbG9jYXRpb24uIEZpZWxkcyBpbiBhXG4gKiBkZWNvcmF0b3IgdGhhdCBjYW5ub3QgYmUgY2xlYW5seSBjb3BpZWQgd2lsbCBiZSBjb3BpZWQgd2l0aCBhIGNvbW1lbnQgZXhwbGFpbmluZyB0aGF0XG4gKiBpbXBvcnRzIGFuZCBpZGVudGlmaWVycyBuZWVkIHRvIGJlIGFkanVzdGVkIG1hbnVhbGx5LlxuICovXG5leHBvcnQgY2xhc3MgRGVjb3JhdG9yUmV3cml0ZXIge1xuICBwcmV2aW91c1NvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGV8bnVsbCA9IG51bGw7XG4gIG5ld1NvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGV8bnVsbCA9IG51bGw7XG5cbiAgbmV3UHJvcGVydGllczogdHMuT2JqZWN0TGl0ZXJhbEVsZW1lbnRMaWtlW10gPSBbXTtcbiAgbm9uQ29weWFibGVQcm9wZXJ0aWVzOiB0cy5PYmplY3RMaXRlcmFsRWxlbWVudExpa2VbXSA9IFtdO1xuXG4gIHByaXZhdGUgaW1wb3J0UmV3cml0ZXJGYWN0b3J5ID0gbmV3IEltcG9ydFJld3JpdGVUcmFuc2Zvcm1lckZhY3RvcnkoXG4gICAgICB0aGlzLmltcG9ydE1hbmFnZXIsIHRoaXMudHlwZUNoZWNrZXIsIHRoaXMuY29tcGlsZXJbJ19ob3N0J10pO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBpbXBvcnRNYW5hZ2VyOiBJbXBvcnRNYW5hZ2VyLCBwcml2YXRlIHR5cGVDaGVja2VyOiB0cy5UeXBlQ2hlY2tlcixcbiAgICAgIHByaXZhdGUgZXZhbHVhdG9yOiBQYXJ0aWFsRXZhbHVhdG9yLCBwcml2YXRlIGNvbXBpbGVyOiBBb3RDb21waWxlcikge31cblxuICByZXdyaXRlKG5nRGVjb3JhdG9yOiBOZ0RlY29yYXRvciwgbmV3U291cmNlRmlsZTogdHMuU291cmNlRmlsZSk6IHRzLkRlY29yYXRvciB7XG4gICAgY29uc3QgZGVjb3JhdG9yID0gbmdEZWNvcmF0b3Iubm9kZTtcblxuICAgIC8vIFJlc2V0IHRoZSBwcmV2aW91cyBzdGF0ZSBvZiB0aGUgZGVjb3JhdG9yIHJld3JpdGVyLlxuICAgIHRoaXMubmV3UHJvcGVydGllcyA9IFtdO1xuICAgIHRoaXMubm9uQ29weWFibGVQcm9wZXJ0aWVzID0gW107XG4gICAgdGhpcy5uZXdTb3VyY2VGaWxlID0gbmV3U291cmNlRmlsZTtcbiAgICB0aGlzLnByZXZpb3VzU291cmNlRmlsZSA9IGRlY29yYXRvci5nZXRTb3VyY2VGaWxlKCk7XG5cbiAgICAvLyBJZiB0aGUgZGVjb3JhdG9yIHdpbGwgYmUgYWRkZWQgdG8gdGhlIHNhbWUgc291cmNlIGZpbGUgaXQgY3VycmVudGx5XG4gICAgLy8gZXhpc3RzIGluLCB3ZSBkb24ndCBuZWVkIHRvIHJld3JpdGUgYW55IHBhdGhzIG9yIGFkZCBuZXcgaW1wb3J0cy5cbiAgICBpZiAodGhpcy5wcmV2aW91c1NvdXJjZUZpbGUgPT09IG5ld1NvdXJjZUZpbGUpIHtcbiAgICAgIHJldHVybiB0aGlzLl9jcmVhdGVEZWNvcmF0b3IoZGVjb3JhdG9yLmV4cHJlc3Npb24pO1xuICAgIH1cblxuICAgIGNvbnN0IG9sZENhbGxFeHByID0gZGVjb3JhdG9yLmV4cHJlc3Npb247XG5cbiAgICBpZiAoIW9sZENhbGxFeHByLmFyZ3VtZW50cy5sZW5ndGgpIHtcbiAgICAgIC8vIFJlLXVzZSB0aGUgb3JpZ2luYWwgZGVjb3JhdG9yIGlmIHRoZXJlIGFyZSBubyBhcmd1bWVudHMgYW5kIG5vdGhpbmcgbmVlZHNcbiAgICAgIC8vIHRvIGJlIHNhbml0aXplZCBvciByZXdyaXR0ZW4uXG4gICAgICByZXR1cm4gdGhpcy5fY3JlYXRlRGVjb3JhdG9yKGRlY29yYXRvci5leHByZXNzaW9uKTtcbiAgICB9XG5cbiAgICBjb25zdCBtZXRhZGF0YSA9IHVud3JhcEV4cHJlc3Npb24ob2xkQ2FsbEV4cHIuYXJndW1lbnRzWzBdKTtcbiAgICBpZiAoIXRzLmlzT2JqZWN0TGl0ZXJhbEV4cHJlc3Npb24obWV0YWRhdGEpKSB7XG4gICAgICAvLyBSZS11c2UgdGhlIG9yaWdpbmFsIGRlY29yYXRvciBhcyB0aGVyZSBpcyBubyBtZXRhZGF0YSB0aGF0IGNhbiBiZSBzYW5pdGl6ZWQuXG4gICAgICByZXR1cm4gdGhpcy5fY3JlYXRlRGVjb3JhdG9yKGRlY29yYXRvci5leHByZXNzaW9uKTtcbiAgICB9XG5cbiAgICBtZXRhZGF0YS5wcm9wZXJ0aWVzLmZvckVhY2gocHJvcCA9PiB7XG4gICAgICAvLyBXZSBkb24ndCBoYW5kbGUgc3ByZWFkIGFzc2lnbm1lbnRzLCBhY2Nlc3NvcnMgb3IgbWV0aG9kIGRlY2xhcmF0aW9ucyBhdXRvbWF0aWNhbGx5XG4gICAgICAvLyBhcyBpdCBpbnZvbHZlcyBtb3JlIGFkdmFuY2VkIHN0YXRpYyBhbmFseXNpcyBhbmQgdGhlc2UgdHlwZSBvZiBwcm9wZXJ0aWVzIGFyZSBub3RcbiAgICAgIC8vIHBpY2tlZCB1cCBieSBuZ2MgZWl0aGVyLlxuICAgICAgaWYgKHRzLmlzU3ByZWFkQXNzaWdubWVudChwcm9wKSB8fCB0cy5pc0FjY2Vzc29yKHByb3ApIHx8IHRzLmlzTWV0aG9kRGVjbGFyYXRpb24ocHJvcCkpIHtcbiAgICAgICAgdGhpcy5ub25Db3B5YWJsZVByb3BlcnRpZXMucHVzaChwcm9wKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzYW5pdGl6ZWRQcm9wID0gdGhpcy5fc2FuaXRpemVNZXRhZGF0YVByb3BlcnR5KHByb3ApO1xuICAgICAgaWYgKHNhbml0aXplZFByb3AgIT09IG51bGwpIHtcbiAgICAgICAgdGhpcy5uZXdQcm9wZXJ0aWVzLnB1c2goc2FuaXRpemVkUHJvcCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLm5vbkNvcHlhYmxlUHJvcGVydGllcy5wdXNoKHByb3ApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gSW4gY2FzZSB0aGVyZSBpcyBhdCBsZWFzdCBvbmUgbm9uLWNvcHlhYmxlIHByb3BlcnR5LCB3ZSBhZGQgYSBsZWFkaW5nIGNvbW1lbnQgdG9cbiAgICAvLyB0aGUgZmlyc3QgcHJvcGVydHkgYXNzaWdubWVudCBpbiBvcmRlciB0byBhc2sgdGhlIGRldmVsb3BlciB0byBtYW51YWxseSBtYW5hZ2VcbiAgICAvLyBpbXBvcnRzIGFuZCBkbyBwYXRoIHJld3JpdGluZyBmb3IgdGhlc2UgcHJvcGVydGllcy5cbiAgICBpZiAodGhpcy5ub25Db3B5YWJsZVByb3BlcnRpZXMubGVuZ3RoICE9PSAwKSB7XG4gICAgICBbJ1RoZSBmb2xsb3dpbmcgZmllbGRzIHdlcmUgY29waWVkIGZyb20gdGhlIGJhc2UgY2xhc3MsJyxcbiAgICAgICAnYnV0IGNvdWxkIG5vdCBiZSB1cGRhdGVkIGF1dG9tYXRpY2FsbHkgdG8gd29yayBpbiB0aGUnLFxuICAgICAgICduZXcgZmlsZSBsb2NhdGlvbi4gUGxlYXNlIGFkZCBhbnkgcmVxdWlyZWQgaW1wb3J0cyBmb3InLCAndGhlIHByb3BlcnRpZXMgYmVsb3c6J11cbiAgICAgICAgICAuZm9yRWFjaChcbiAgICAgICAgICAgICAgdGV4dCA9PiB0cy5hZGRTeW50aGV0aWNMZWFkaW5nQ29tbWVudChcbiAgICAgICAgICAgICAgICAgIHRoaXMubm9uQ29weWFibGVQcm9wZXJ0aWVzWzBdLCB0cy5TeW50YXhLaW5kLlNpbmdsZUxpbmVDb21tZW50VHJpdmlhLCBgICR7dGV4dH1gLFxuICAgICAgICAgICAgICAgICAgdHJ1ZSkpO1xuICAgIH1cblxuICAgIC8vIE5vdGUgdGhhdCB3ZSBkb24ndCB1cGRhdGUgdGhlIGRlY29yYXRvciBhcyB3ZSBkb24ndCB3YW50IHRvIGNvcHkgcG90ZW50aWFsIGxlYWRpbmdcbiAgICAvLyBjb21tZW50cyBvZiB0aGUgZGVjb3JhdG9yLiBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIG90aGVyd2lzZSBjb21tZW50cyBmcm9tIHRoZVxuICAgIC8vIGNvcGllZCBkZWNvcmF0b3IgZW5kIHVwIGRlc2NyaWJpbmcgdGhlIG5ldyBjbGFzcyAod2hpY2ggaXMgbm90IGFsd2F5cyBjb3JyZWN0KS5cbiAgICByZXR1cm4gdGhpcy5fY3JlYXRlRGVjb3JhdG9yKHRzLmNyZWF0ZUNhbGwoXG4gICAgICAgIHRoaXMuaW1wb3J0TWFuYWdlci5hZGRJbXBvcnRUb1NvdXJjZUZpbGUoXG4gICAgICAgICAgICBuZXdTb3VyY2VGaWxlLCBuZ0RlY29yYXRvci5uYW1lLCBuZ0RlY29yYXRvci5tb2R1bGVOYW1lKSxcbiAgICAgICAgdW5kZWZpbmVkLCBbdHMudXBkYXRlT2JqZWN0TGl0ZXJhbChcbiAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGEsIFsuLi50aGlzLm5ld1Byb3BlcnRpZXMsIC4uLnRoaXMubm9uQ29weWFibGVQcm9wZXJ0aWVzXSldKSk7XG4gIH1cblxuICAvKiogQ3JlYXRlcyBhIG5ldyBkZWNvcmF0b3Igd2l0aCB0aGUgZ2l2ZW4gZXhwcmVzc2lvbi4gKi9cbiAgcHJpdmF0ZSBfY3JlYXRlRGVjb3JhdG9yKGV4cHI6IHRzLkV4cHJlc3Npb24pOiB0cy5EZWNvcmF0b3Ige1xuICAgIC8vIE5vdGUgdGhhdCB3ZSBkb24ndCB1cGRhdGUgdGhlIGRlY29yYXRvciBhcyB3ZSBkb24ndCB3YW50IHRvIGNvcHkgcG90ZW50aWFsIGxlYWRpbmdcbiAgICAvLyBjb21tZW50cyBvZiB0aGUgZGVjb3JhdG9yLiBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIG90aGVyd2lzZSBjb21tZW50cyBmcm9tIHRoZVxuICAgIC8vIGNvcGllZCBkZWNvcmF0b3IgZW5kIHVwIGRlc2NyaWJpbmcgdGhlIG5ldyBjbGFzcyAod2hpY2ggaXMgbm90IGFsd2F5cyBjb3JyZWN0KS5cbiAgICByZXR1cm4gdHMuY3JlYXRlRGVjb3JhdG9yKGV4cHIpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhbml0aXplcyBhIG1ldGFkYXRhIHByb3BlcnR5IGJ5IGVuc3VyaW5nIHRoYXQgYWxsIGNvbnRhaW5lZCBpZGVudGlmaWVyc1xuICAgKiBhcmUgaW1wb3J0ZWQgaW4gdGhlIHRhcmdldCBzb3VyY2UgZmlsZS5cbiAgICovXG4gIHByaXZhdGUgX3Nhbml0aXplTWV0YWRhdGFQcm9wZXJ0eShwcm9wOiB0cy5PYmplY3RMaXRlcmFsRWxlbWVudExpa2UpOiB0cy5PYmplY3RMaXRlcmFsRWxlbWVudExpa2VcbiAgICAgIHxudWxsIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHRzXG4gICAgICAgICAgLnRyYW5zZm9ybShwcm9wLCBbY3R4ID0+IHRoaXMuaW1wb3J0UmV3cml0ZXJGYWN0b3J5LmNyZWF0ZShjdHgsIHRoaXMubmV3U291cmNlRmlsZSEpXSlcbiAgICAgICAgICAudHJhbnNmb3JtZWRbMF07XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgLy8gSWYgdGhlIGVycm9yIGlzIGZvciBhbiB1bnJlc29sdmVkIGlkZW50aWZpZXIsIHdlIHdhbnQgdG8gcmV0dXJuIFwibnVsbFwiIGJlY2F1c2VcbiAgICAgIC8vIHN1Y2ggb2JqZWN0IGxpdGVyYWwgZWxlbWVudHMgY291bGQgYmUgYWRkZWQgdG8gdGhlIG5vbi1jb3B5YWJsZSBwcm9wZXJ0aWVzLlxuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBVbnJlc29sdmVkSWRlbnRpZmllckVycm9yKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,37 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- /// <amd-module name="@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor" />
9
- import { AotCompilerHost } from '@angular/compiler';
10
- import * as ts from 'typescript';
11
- import { ImportManager } from '../../../utils/import_manager';
12
- /**
13
- * Factory that creates a TypeScript transformer which ensures that
14
- * referenced identifiers are available at the target file location.
15
- *
16
- * Imports cannot be just added as sometimes identifiers collide in the
17
- * target source file and the identifier needs to be aliased.
18
- */
19
- export declare class ImportRewriteTransformerFactory {
20
- private importManager;
21
- private typeChecker;
22
- private compilerHost;
23
- private sourceFileExports;
24
- constructor(importManager: ImportManager, typeChecker: ts.TypeChecker, compilerHost: AotCompilerHost);
25
- create<T extends ts.Node>(ctx: ts.TransformationContext, newSourceFile: ts.SourceFile): ts.Transformer<T>;
26
- private _recordIdentifierReference;
27
- /**
28
- * Gets the resolved exports of a given source file. Exports are cached
29
- * for subsequent calls.
30
- */
31
- private _getSourceFileExports;
32
- /** Rewrites a module import to be relative to the target file location. */
33
- private _rewriteModuleImport;
34
- }
35
- /** Error that will be thrown if a given identifier cannot be resolved. */
36
- export declare class UnresolvedIdentifierError extends Error {
37
- }
@@ -1,126 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- (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/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/import_rewrite_visitor", ["require", "exports", "path", "typescript", "@angular/core/schematics/utils/typescript/imports", "@angular/core/schematics/utils/typescript/symbol", "@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format", "@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports"], factory);
15
- }
16
- })(function (require, exports) {
17
- "use strict";
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.UnresolvedIdentifierError = exports.ImportRewriteTransformerFactory = void 0;
20
- const path_1 = require("path");
21
- const ts = require("typescript");
22
- const imports_1 = require("@angular/core/schematics/utils/typescript/imports");
23
- const symbol_1 = require("@angular/core/schematics/utils/typescript/symbol");
24
- const path_format_1 = require("@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format");
25
- const source_file_exports_1 = require("@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports");
26
- /**
27
- * Factory that creates a TypeScript transformer which ensures that
28
- * referenced identifiers are available at the target file location.
29
- *
30
- * Imports cannot be just added as sometimes identifiers collide in the
31
- * target source file and the identifier needs to be aliased.
32
- */
33
- class ImportRewriteTransformerFactory {
34
- constructor(importManager, typeChecker, compilerHost) {
35
- this.importManager = importManager;
36
- this.typeChecker = typeChecker;
37
- this.compilerHost = compilerHost;
38
- this.sourceFileExports = new Map();
39
- }
40
- create(ctx, newSourceFile) {
41
- const visitNode = (node) => {
42
- if (ts.isIdentifier(node)) {
43
- // Record the identifier reference and return the new identifier. The identifier
44
- // name can change if the generated import uses an namespaced import or aliased
45
- // import identifier (to avoid collisions).
46
- return this._recordIdentifierReference(node, newSourceFile);
47
- }
48
- return ts.visitEachChild(node, visitNode, ctx);
49
- };
50
- return (node) => ts.visitNode(node, visitNode);
51
- }
52
- _recordIdentifierReference(node, targetSourceFile) {
53
- // For object literal elements we don't want to check identifiers that describe the
54
- // property name. These identifiers do not refer to a value but rather to a property
55
- // name and therefore don't need to be imported. The exception is that for shorthand
56
- // property assignments the "name" identifier is both used as value and property name.
57
- if (ts.isObjectLiteralElementLike(node.parent) &&
58
- !ts.isShorthandPropertyAssignment(node.parent) && node.parent.name === node) {
59
- return node;
60
- }
61
- const resolvedImport = (0, imports_1.getImportOfIdentifier)(this.typeChecker, node);
62
- const sourceFile = node.getSourceFile();
63
- if (resolvedImport) {
64
- const symbolName = resolvedImport.name;
65
- const moduleFileName = this.compilerHost.moduleNameToFileName(resolvedImport.importModule, sourceFile.fileName);
66
- // In case the identifier refers to an export in the target source file, we need to use
67
- // the local identifier in the scope of the target source file. This is necessary because
68
- // the export could be aliased and the alias is not available to the target source file.
69
- if (moduleFileName && (0, path_1.resolve)(moduleFileName) === (0, path_1.resolve)(targetSourceFile.fileName)) {
70
- const resolvedExport = this._getSourceFileExports(targetSourceFile).find(e => e.exportName === symbolName);
71
- if (resolvedExport) {
72
- return resolvedExport.identifier;
73
- }
74
- }
75
- return this.importManager.addImportToSourceFile(targetSourceFile, symbolName, this._rewriteModuleImport(resolvedImport, targetSourceFile));
76
- }
77
- else {
78
- let symbol = (0, symbol_1.getValueSymbolOfDeclaration)(node, this.typeChecker);
79
- if (symbol) {
80
- // If the symbol refers to a shorthand property assignment, we want to resolve the
81
- // value symbol of the shorthand property assignment. This is necessary because the
82
- // value symbol is ambiguous for shorthand property assignment identifiers as the
83
- // identifier resolves to both property name and property value.
84
- if (symbol.valueDeclaration && ts.isShorthandPropertyAssignment(symbol.valueDeclaration)) {
85
- symbol = this.typeChecker.getShorthandAssignmentValueSymbol(symbol.valueDeclaration);
86
- }
87
- const resolvedExport = this._getSourceFileExports(sourceFile).find(e => e.symbol === symbol);
88
- if (resolvedExport) {
89
- return this.importManager.addImportToSourceFile(targetSourceFile, resolvedExport.exportName, (0, path_format_1.getPosixPath)(this.compilerHost.fileNameToModuleName(sourceFile.fileName, targetSourceFile.fileName)));
90
- }
91
- }
92
- // The referenced identifier cannot be imported. In that case we throw an exception
93
- // which can be handled outside of the transformer.
94
- throw new UnresolvedIdentifierError();
95
- }
96
- }
97
- /**
98
- * Gets the resolved exports of a given source file. Exports are cached
99
- * for subsequent calls.
100
- */
101
- _getSourceFileExports(sourceFile) {
102
- if (this.sourceFileExports.has(sourceFile)) {
103
- return this.sourceFileExports.get(sourceFile);
104
- }
105
- const sourceFileExports = (0, source_file_exports_1.getExportSymbolsOfFile)(sourceFile, this.typeChecker);
106
- this.sourceFileExports.set(sourceFile, sourceFileExports);
107
- return sourceFileExports;
108
- }
109
- /** Rewrites a module import to be relative to the target file location. */
110
- _rewriteModuleImport(resolvedImport, newSourceFile) {
111
- if (!resolvedImport.importModule.startsWith('.')) {
112
- return resolvedImport.importModule;
113
- }
114
- const importFilePath = resolvedImport.node.getSourceFile().fileName;
115
- const resolvedModulePath = (0, path_1.resolve)((0, path_1.dirname)(importFilePath), resolvedImport.importModule);
116
- const relativeModuleName = this.compilerHost.fileNameToModuleName(resolvedModulePath, newSourceFile.fileName);
117
- return (0, path_format_1.getPosixPath)(relativeModuleName);
118
- }
119
- }
120
- exports.ImportRewriteTransformerFactory = ImportRewriteTransformerFactory;
121
- /** Error that will be thrown if a given identifier cannot be resolved. */
122
- class UnresolvedIdentifierError extends Error {
123
- }
124
- exports.UnresolvedIdentifierError = UnresolvedIdentifierError;
125
- });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1wb3J0X3Jld3JpdGVfdmlzaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc2NoZW1hdGljcy9taWdyYXRpb25zL3VuZGVjb3JhdGVkLWNsYXNzZXMtd2l0aC1kaS9kZWNvcmF0b3JfcmV3cml0ZS9pbXBvcnRfcmV3cml0ZV92aXNpdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUdILCtCQUFzQztJQUN0QyxpQ0FBaUM7SUFHakMsK0VBQWdGO0lBQ2hGLDZFQUE2RTtJQUU3RSwrSEFBMkM7SUFDM0MsK0lBQTZFO0lBRzdFOzs7Ozs7T0FNRztJQUNILE1BQWEsK0JBQStCO1FBRzFDLFlBQ1ksYUFBNEIsRUFBVSxXQUEyQixFQUNqRSxZQUE2QjtZQUQ3QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtZQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtZQUNqRSxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7WUFKakMsc0JBQWlCLEdBQUcsSUFBSSxHQUFHLEVBQW1DLENBQUM7UUFJM0IsQ0FBQztRQUU3QyxNQUFNLENBQW9CLEdBQTZCLEVBQUUsYUFBNEI7WUFFbkYsTUFBTSxTQUFTLEdBQWUsQ0FBQyxJQUFhLEVBQUUsRUFBRTtnQkFDOUMsSUFBSSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUN6QixnRkFBZ0Y7b0JBQ2hGLCtFQUErRTtvQkFDL0UsMkNBQTJDO29CQUMzQyxPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7aUJBQzdEO2dCQUVELE9BQU8sRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ2pELENBQUMsQ0FBQztZQUVGLE9BQU8sQ0FBQyxJQUFPLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FB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Z2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7QW90Q29tcGlsZXJIb3N0fSBmcm9tICdAYW5ndWxhci9jb21waWxlcic7XG5pbXBvcnQge2Rpcm5hbWUsIHJlc29sdmV9IGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7SW1wb3J0TWFuYWdlcn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvaW1wb3J0X21hbmFnZXInO1xuaW1wb3J0IHtnZXRJbXBvcnRPZklkZW50aWZpZXIsIEltcG9ydH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdHlwZXNjcmlwdC9pbXBvcnRzJztcbmltcG9ydCB7Z2V0VmFsdWVTeW1ib2xPZkRlY2xhcmF0aW9ufSBmcm9tICcuLi8uLi8uLi91dGlscy90eXBlc2NyaXB0L3N5bWJvbCc7XG5cbmltcG9ydCB7Z2V0UG9zaXhQYXRofSBmcm9tICcuL3BhdGhfZm9ybWF0JztcbmltcG9ydCB7Z2V0RXhwb3J0U3ltYm9sc09mRmlsZSwgUmVzb2x2ZWRFeHBvcnR9IGZyb20gJy4vc291cmNlX2ZpbGVfZXhwb3J0cyc7XG5cblxuLyoqXG4gKiBGYWN0b3J5IHRoYXQgY3JlYXRlcyBhIFR5cGVTY3JpcHQgdHJhbnNmb3JtZXIgd2hpY2ggZW5zdXJlcyB0aGF0XG4gKiByZWZlcmVuY2VkIGlkZW50aWZpZXJzIGFyZSBhdmFpbGFibGUgYXQgdGhlIHRhcmdldCBmaWxlIGxvY2F0aW9uLlxuICpcbiAqIEltcG9ydHMgY2Fubm90IGJlIGp1c3QgYWRkZWQgYXMgc29tZXRpbWVzIGlkZW50aWZpZXJzIGNvbGxpZGUgaW4gdGhlXG4gKiB0YXJnZXQgc291cmNlIGZpbGUgYW5kIHRoZSBpZGVudGlmaWVyIG5lZWRzIHRvIGJlIGFsaWFzZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBJbXBvcnRSZXdyaXRlVHJhbnNmb3JtZXJGYWN0b3J5IHtcbiAgcHJpdmF0ZSBzb3VyY2VGaWxlRXhwb3J0cyA9IG5ldyBNYXA8dHMuU291cmNlRmlsZSwgUmVzb2x2ZWRFeHBvcnRbXT4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgaW1wb3J0TWFuYWdlcjogSW1wb3J0TWFuYWdlciwgcHJpdmF0ZSB0eXBlQ2hlY2tlcjogdHMuVHlwZUNoZWNrZXIsXG4gICAgICBwcml2YXRlIGNvbXBpbGVySG9zdDogQW90Q29tcGlsZXJIb3N0KSB7fVxuXG4gIGNyZWF0ZTxUIGV4dGVuZHMgdHMuTm9kZT4oY3R4OiB0cy5UcmFuc2Zvcm1hdGlvbkNvbnRleHQsIG5ld1NvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpOlxuICAgICAgdHMuVHJhbnNmb3JtZXI8VD4ge1xuICAgIGNvbnN0IHZpc2l0Tm9kZTogdHMuVmlzaXRvciA9IChub2RlOiB0cy5Ob2RlKSA9PiB7XG4gICAgICBpZiAodHMuaXNJZGVudGlmaWVyKG5vZGUpKSB7XG4gICAgICAgIC8vIFJlY29yZCB0aGUgaWRlbnRpZmllciByZWZlcmVuY2UgYW5kIHJldHVybiB0aGUgbmV3IGlkZW50aWZpZXIuIFRoZSBpZGVudGlmaWVyXG4gICAgICAgIC8vIG5hbWUgY2FuIGNoYW5nZSBpZiB0aGUgZ2VuZXJhdGVkIGltcG9ydCB1c2VzIGFuIG5hbWVzcGFjZWQgaW1wb3J0IG9yIGFsaWFzZWRcbiAgICAgICAgLy8gaW1wb3J0IGlkZW50aWZpZXIgKHRvIGF2b2lkIGNvbGxpc2lvbnMpLlxuICAgICAgICByZXR1cm4gdGhpcy5fcmVjb3JkSWRlbnRpZmllclJlZmVyZW5jZShub2RlLCBuZXdTb3VyY2VGaWxlKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRzLnZpc2l0RWFjaENoaWxkKG5vZGUsIHZpc2l0Tm9kZSwgY3R4KTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIChub2RlOiBUKSA9PiB0cy52aXNpdE5vZGUobm9kZSwgdmlzaXROb2RlKTtcbiAgfVxuXG4gIHByaXZhdGUgX3JlY29yZElkZW50aWZpZXJSZWZlcmVuY2Uobm9kZTogdHMuSWRlbnRpZmllciwgdGFyZ2V0U291cmNlRmlsZTogdHMuU291cmNlRmlsZSk6XG4gICAgICB0cy5Ob2RlIHtcbiAgICAvLyBGb3Igb2JqZWN0IGxpdGVyYWwgZWxlbWVudHMgd2UgZG9uJ3Qgd2FudCB0byBjaGVjayBpZGVudGlmaWVycyB0aGF0IGRlc2NyaWJlIHRoZVxuICAgIC8vIHByb3BlcnR5IG5hbWUuIFRoZXNlIGlkZW50aWZpZXJzIGRvIG5vdCByZWZlciB0byBhIHZhbHVlIGJ1dCByYXRoZXIgdG8gYSBwcm9wZXJ0eVxuICAgIC8vIG5hbWUgYW5kIHRoZXJlZm9yZSBkb24ndCBuZWVkIHRvIGJlIGltcG9ydGVkLiBUaGUgZXhjZXB0aW9uIGlzIHRoYXQgZm9yIHNob3J0aGFuZFxuICAgIC8vIHByb3BlcnR5IGFzc2lnbm1lbnRzIHRoZSBcIm5hbWVcIiBpZGVudGlmaWVyIGlzIGJvdGggdXNlZCBhcyB2YWx1ZSBhbmQgcHJvcGVydHkgbmFtZS5cbiAgICBpZiAodHMuaXNPYmplY3RMaXRlcmFsRWxlbWVudExpa2Uobm9kZS5wYXJlbnQpICYmXG4gICAgICAgICF0cy5pc1Nob3J0aGFuZFByb3BlcnR5QXNzaWdubWVudChub2RlLnBhcmVudCkgJiYgbm9kZS5wYXJlbnQubmFtZSA9PT0gbm9kZSkge1xuICAgICAgcmV0dXJuIG5vZGU7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzb2x2ZWRJbXBvcnQgPSBnZXRJbXBvcnRPZklkZW50aWZpZXIodGhpcy50eXBlQ2hlY2tlciwgbm9kZSk7XG4gICAgY29uc3Qgc291cmNlRmlsZSA9IG5vZGUuZ2V0U291cmNlRmlsZSgpO1xuXG4gICAgaWYgKHJlc29sdmVkSW1wb3J0KSB7XG4gICAgICBjb25zdCBzeW1ib2xOYW1lID0gcmVzb2x2ZWRJbXBvcnQubmFtZTtcbiAgICAgIGNvbnN0IG1vZHVsZUZpbGVOYW1lID1cbiAgICAgICAgICB0aGlzLmNvbXBpbGVySG9zdC5tb2R1bGVOYW1lVG9GaWxlTmFtZShyZXNvbHZlZEltcG9ydC5pbXBvcnRNb2R1bGUsIHNvdXJjZUZpbGUuZmlsZU5hbWUpO1xuXG4gICAgICAvLyBJbiBjYXNlIHRoZSBpZGVudGlmaWVyIHJlZmVycyB0byBhbiBleHBvcnQgaW4gdGhlIHRhcmdldCBzb3VyY2UgZmlsZSwgd2UgbmVlZCB0byB1c2VcbiAgICAgIC8vIHRoZSBsb2NhbCBpZGVudGlmaWVyIGluIHRoZSBzY29wZSBvZiB0aGUgdGFyZ2V0IHNvdXJjZSBmaWxlLiBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlXG4gICAgICAvLyB0aGUgZXhwb3J0IGNvdWxkIGJlIGFsaWFzZWQgYW5kIHRoZSBhbGlhcyBpcyBub3QgYXZhaWxhYmxlIHRvIHRoZSB0YXJnZXQgc291cmNlIGZpbGUuXG4gICAgICBpZiAobW9kdWxlRmlsZU5hbWUgJiYgcmVzb2x2ZShtb2R1bGVGaWxlTmFtZSkgPT09IHJlc29sdmUodGFyZ2V0U291cmNlRmlsZS5maWxlTmFtZSkpIHtcbiAgICAgICAgY29uc3QgcmVzb2x2ZWRFeHBvcnQgPVxuICAgICAgICAgICAgdGhpcy5fZ2V0U291cmNlRmlsZUV4cG9ydHModGFyZ2V0U291cmNlRmlsZSkuZmluZChlID0+IGUuZXhwb3J0TmFtZSA9PT0gc3ltYm9sTmFtZSk7XG4gICAgICAgIGlmIChyZXNvbHZlZEV4cG9ydCkge1xuICAgICAgICAgIHJldHVybiByZXNvbHZlZEV4cG9ydC5pZGVudGlmaWVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiB0aGlzLmltcG9ydE1hbmFnZXIuYWRkSW1wb3J0VG9Tb3VyY2VGaWxlKFxuICAgICAgICAgIHRhcmdldFNvdXJjZUZpbGUsIHN5bWJvbE5hbWUsXG4gICAgICAgICAgdGhpcy5fcmV3cml0ZU1vZHVsZUltcG9ydChyZXNvbHZlZEltcG9ydCwgdGFyZ2V0U291cmNlRmlsZSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsZXQgc3ltYm9sID0gZ2V0VmFsdWVTeW1ib2xPZkRlY2xhcmF0aW9uKG5vZGUsIHRoaXMudHlwZUNoZWNrZXIpO1xuXG4gICAgICBpZiAoc3ltYm9sKSB7XG4gICAgICAgIC8vIElmIHRoZSBzeW1ib2wgcmVmZXJzIHRvIGEgc2hvcnRoYW5kIHByb3BlcnR5IGFzc2lnbm1lbnQsIHdlIHdhbnQgdG8gcmVzb2x2ZSB0aGVcbiAgICAgICAgLy8gdmFsdWUgc3ltYm9sIG9mIHRoZSBzaG9ydGhhbmQgcHJvcGVydHkgYXNzaWdubWVudC4gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGVcbiAgICAgICAgLy8gdmFsdWUgc3ltYm9sIGlzIGFtYmlndW91cyBmb3Igc2hvcnRoYW5kIHByb3BlcnR5IGFzc2lnbm1lbnQgaWRlbnRpZmllcnMgYXMgdGhlXG4gICAgICAgIC8vIGlkZW50aWZpZXIgcmVzb2x2ZXMgdG8gYm90aCBwcm9wZXJ0eSBuYW1lIGFuZCBwcm9wZXJ0eSB2YWx1ZS5cbiAgICAgICAgaWYgKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uICYmIHRzLmlzU2hvcnRoYW5kUHJvcGVydHlBc3NpZ25tZW50KHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uKSkge1xuICAgICAgICAgIHN5bWJvbCA9IHRoaXMudHlwZUNoZWNrZXIuZ2V0U2hvcnRoYW5kQXNzaWdubWVudFZhbHVlU3ltYm9sKHN5bWJvbC52YWx1ZURlY2xhcmF0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc29sdmVkRXhwb3J0ID1cbiAgICAgICAgICAgIHRoaXMuX2dldFNvdXJjZUZpbGVFeHBvcnRzKHNvdXJjZUZpbGUpLmZpbmQoZSA9PiBlLnN5bWJvbCA9PT0gc3ltYm9sKTtcblxuICAgICAgICBpZiAocmVzb2x2ZWRFeHBvcnQpIHtcbiAgICAgICAgICByZXR1cm4gdGhpcy5pbXBvcnRNYW5hZ2VyLmFkZEltcG9ydFRvU291cmNlRmlsZShcbiAgICAgICAgICAgICAgdGFyZ2V0U291cmNlRmlsZSwgcmVzb2x2ZWRFeHBvcnQuZXhwb3J0TmFtZSxcbiAgICAgICAgICAgICAgZ2V0UG9zaXhQYXRoKHRoaXMuY29tcGlsZXJIb3N0LmZpbGVOYW1lVG9Nb2R1bGVOYW1lKFxuICAgICAgICAgICAgICAgICAgc291cmNlRmlsZS5maWxlTmFtZSwgdGFyZ2V0U291cmNlRmlsZS5maWxlTmFtZSkpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUaGUgcmVmZXJlbmNlZCBpZGVudGlmaWVyIGNhbm5vdCBiZSBpbXBvcnRlZC4gSW4gdGhhdCBjYXNlIHdlIHRocm93IGFuIGV4Y2VwdGlvblxuICAgICAgLy8gd2hpY2ggY2FuIGJlIGhhbmRsZWQgb3V0c2lkZSBvZiB0aGUgdHJhbnNmb3JtZXIuXG4gICAgICB0aHJvdyBuZXcgVW5yZXNvbHZlZElkZW50aWZpZXJFcnJvcigpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSByZXNvbHZlZCBleHBvcnRzIG9mIGEgZ2l2ZW4gc291cmNlIGZpbGUuIEV4cG9ydHMgYXJlIGNhY2hlZFxuICAgKiBmb3Igc3Vic2VxdWVudCBjYWxscy5cbiAgICovXG4gIHByaXZhdGUgX2dldFNvdXJjZUZpbGVFeHBvcnRzKHNvdXJjZUZpbGU6IHRzLlNvdXJjZUZpbGUpOiBSZXNvbHZlZEV4cG9ydFtdIHtcbiAgICBpZiAodGhpcy5zb3VyY2VGaWxlRXhwb3J0cy5oYXMoc291cmNlRmlsZSkpIHtcbiAgICAgIHJldHVybiB0aGlzLnNvdXJjZUZpbGVFeHBvcnRzLmdldChzb3VyY2VGaWxlKSE7XG4gICAgfVxuXG4gICAgY29uc3Qgc291cmNlRmlsZUV4cG9ydHMgPSBnZXRFeHBvcnRTeW1ib2xzT2ZGaWxlKHNvdXJjZUZpbGUsIHRoaXMudHlwZUNoZWNrZXIpO1xuICAgIHRoaXMuc291cmNlRmlsZUV4cG9ydHMuc2V0KHNvdXJjZUZpbGUsIHNvdXJjZUZpbGVFeHBvcnRzKTtcbiAgICByZXR1cm4gc291cmNlRmlsZUV4cG9ydHM7XG4gIH1cblxuICAvKiogUmV3cml0ZXMgYSBtb2R1bGUgaW1wb3J0IHRvIGJlIHJlbGF0aXZlIHRvIHRoZSB0YXJnZXQgZmlsZSBsb2NhdGlvbi4gKi9cbiAgcHJpdmF0ZSBfcmV3cml0ZU1vZHVsZUltcG9ydChyZXNvbHZlZEltcG9ydDogSW1wb3J0LCBuZXdTb3VyY2VGaWxlOiB0cy5Tb3VyY2VGaWxlKTogc3RyaW5nIHtcbiAgICBpZiAoIXJlc29sdmVkSW1wb3J0LmltcG9ydE1vZHVsZS5zdGFydHNXaXRoKCcuJykpIHtcbiAgICAgIHJldHVybiByZXNvbHZlZEltcG9ydC5pbXBvcnRNb2R1bGU7XG4gICAgfVxuXG4gICAgY29uc3QgaW1wb3J0RmlsZVBhdGggPSByZXNvbHZlZEltcG9ydC5ub2RlLmdldFNvdXJjZUZpbGUoKS5maWxlTmFtZTtcbiAgICBjb25zdCByZXNvbHZlZE1vZHVsZVBhdGggPSByZXNvbHZlKGRpcm5hbWUoaW1wb3J0RmlsZVBhdGgpLCByZXNvbHZlZEltcG9ydC5pbXBvcnRNb2R1bGUpO1xuICAgIGNvbnN0IHJlbGF0aXZlTW9kdWxlTmFtZSA9XG4gICAgICAgIHRoaXMuY29tcGlsZXJIb3N0LmZpbGVOYW1lVG9Nb2R1bGVOYW1lKHJlc29sdmVkTW9kdWxlUGF0aCwgbmV3U291cmNlRmlsZS5maWxlTmFtZSk7XG5cbiAgICByZXR1cm4gZ2V0UG9zaXhQYXRoKHJlbGF0aXZlTW9kdWxlTmFtZSk7XG4gIH1cbn1cblxuLyoqIEVycm9yIHRoYXQgd2lsbCBiZSB0aHJvd24gaWYgYSBnaXZlbiBpZGVudGlmaWVyIGNhbm5vdCBiZSByZXNvbHZlZC4gKi9cbmV4cG9ydCBjbGFzcyBVbnJlc29sdmVkSWRlbnRpZmllckVycm9yIGV4dGVuZHMgRXJyb3Ige31cbiJdfQ==
@@ -1,10 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- /// <amd-module name="@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format" />
9
- /** Normalizes the specified path to conform with the posix path format. */
10
- export declare function getPosixPath(pathString: string): string;
@@ -1,31 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- (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/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/path_format", ["require", "exports", "path"], factory);
15
- }
16
- })(function (require, exports) {
17
- "use strict";
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.getPosixPath = void 0;
20
- const path_1 = require("path");
21
- /** Normalizes the specified path to conform with the posix path format. */
22
- function getPosixPath(pathString) {
23
- const normalized = (0, path_1.normalize)(pathString).replace(/\\/g, '/');
24
- if (!normalized.startsWith('.')) {
25
- return `./${normalized}`;
26
- }
27
- return normalized;
28
- }
29
- exports.getPosixPath = getPosixPath;
30
- });
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aF9mb3JtYXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NjaGVtYXRpY3MvbWlncmF0aW9ucy91bmRlY29yYXRlZC1jbGFzc2VzLXdpdGgtZGkvZGVjb3JhdG9yX3Jld3JpdGUvcGF0aF9mb3JtYXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUgsK0JBQStCO0lBRS9CLDJFQUEyRTtJQUMzRSxTQUFnQixZQUFZLENBQUMsVUFBa0I7UUFDN0MsTUFBTSxVQUFVLEdBQUcsSUFBQSxnQkFBUyxFQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDL0IsT0FBTyxLQUFLLFVBQVUsRUFBRSxDQUFDO1NBQzFCO1FBQ0QsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQU5ELG9DQU1DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7bm9ybWFsaXplfSBmcm9tICdwYXRoJztcblxuLyoqIE5vcm1hbGl6ZXMgdGhlIHNwZWNpZmllZCBwYXRoIHRvIGNvbmZvcm0gd2l0aCB0aGUgcG9zaXggcGF0aCBmb3JtYXQuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UG9zaXhQYXRoKHBhdGhTdHJpbmc6IHN0cmluZykge1xuICBjb25zdCBub3JtYWxpemVkID0gbm9ybWFsaXplKHBhdGhTdHJpbmcpLnJlcGxhY2UoL1xcXFwvZywgJy8nKTtcbiAgaWYgKCFub3JtYWxpemVkLnN0YXJ0c1dpdGgoJy4nKSkge1xuICAgIHJldHVybiBgLi8ke25vcm1hbGl6ZWR9YDtcbiAgfVxuICByZXR1cm4gbm9ybWFsaXplZDtcbn1cbiJdfQ==
@@ -1,16 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- /// <amd-module name="@angular/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports" />
9
- import * as ts from 'typescript';
10
- export interface ResolvedExport {
11
- symbol: ts.Symbol;
12
- exportName: string;
13
- identifier: ts.Identifier;
14
- }
15
- /** Computes the resolved exports of a given source file. */
16
- export declare function getExportSymbolsOfFile(sf: ts.SourceFile, typeChecker: ts.TypeChecker): ResolvedExport[];
@@ -1,65 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- (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/core/schematics/migrations/undecorated-classes-with-di/decorator_rewrite/source_file_exports", ["require", "exports", "typescript", "@angular/core/schematics/utils/typescript/symbol"], factory);
15
- }
16
- })(function (require, exports) {
17
- "use strict";
18
- Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.getExportSymbolsOfFile = void 0;
20
- const ts = require("typescript");
21
- const symbol_1 = require("@angular/core/schematics/utils/typescript/symbol");
22
- /** Computes the resolved exports of a given source file. */
23
- function getExportSymbolsOfFile(sf, typeChecker) {
24
- const exports = [];
25
- const resolvedExports = [];
26
- ts.forEachChild(sf, function visitNode(node) {
27
- if (ts.isClassDeclaration(node) || ts.isFunctionDeclaration(node) ||
28
- ts.isInterfaceDeclaration(node) &&
29
- (ts.getCombinedModifierFlags(node) & ts.ModifierFlags.Export) !== 0) {
30
- if (node.name) {
31
- exports.push({ exportName: node.name.text, identifier: node.name });
32
- }
33
- }
34
- else if (ts.isVariableStatement(node)) {
35
- for (const decl of node.declarationList.declarations) {
36
- visitNode(decl);
37
- }
38
- }
39
- else if (ts.isVariableDeclaration(node)) {
40
- if ((ts.getCombinedModifierFlags(node) & ts.ModifierFlags.Export) != 0 &&
41
- ts.isIdentifier(node.name)) {
42
- exports.push({ exportName: node.name.text, identifier: node.name });
43
- }
44
- }
45
- else if (ts.isExportDeclaration(node)) {
46
- const { moduleSpecifier, exportClause } = node;
47
- if (!moduleSpecifier && exportClause && ts.isNamedExports(exportClause)) {
48
- exportClause.elements.forEach(el => exports.push({
49
- exportName: el.name.text,
50
- identifier: el.propertyName ? el.propertyName : el.name
51
- }));
52
- }
53
- }
54
- });
55
- exports.forEach(({ identifier, exportName }) => {
56
- const symbol = (0, symbol_1.getValueSymbolOfDeclaration)(identifier, typeChecker);
57
- if (symbol) {
58
- resolvedExports.push({ symbol, identifier, exportName });
59
- }
60
- });
61
- return resolvedExports;
62
- }
63
- exports.getExportSymbolsOfFile = getExportSymbolsOfFile;
64
- });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlX2ZpbGVfZXhwb3J0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc2NoZW1hdGljcy9taWdyYXRpb25zL3VuZGVjb3JhdGVkLWNsYXNzZXMtd2l0aC1kaS9kZWNvcmF0b3JfcmV3cml0ZS9zb3VyY2VfZmlsZV9leHBvcnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUVILGlDQUFpQztJQUNqQyw2RUFBNkU7SUFRN0UsNERBQTREO0lBQzVELFNBQWdCLHNCQUFzQixDQUNsQyxFQUFpQixFQUFFLFdBQTJCO1FBQ2hELE1BQU0sT0FBTyxHQUFzRCxFQUFFLENBQUM7UUFDdEUsTUFBTSxlQUFlLEdBQXFCLEVBQUUsQ0FBQztRQUU3QyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxTQUFTLFNBQVMsQ0FBQyxJQUFJO1lBQ3pDLElBQUksRUFBRSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUM7Z0JBQzdELEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUM7b0JBQzNCLENBQUMsRUFBRSxDQUFDLHdCQUF3QixDQUFDLElBQXNCLENBQUMsR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDN0YsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO29CQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFDO2lCQUNuRTthQUNGO2lCQUFNLElBQUksRUFBRSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUN2QyxLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsWUFBWSxFQUFFO29CQUNwRCxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ2pCO2FBQ0Y7aUJBQU0sSUFBSSxFQUFFLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3pDLElBQUksQ0FBQyxFQUFFLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO29CQUNsRSxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDOUIsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBQyxDQUFDLENBQUM7aUJBQ25FO2FBQ0Y7aUJBQU0sSUFBSSxFQUFFLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3ZDLE1BQU0sRUFBQyxlQUFlLEVBQUUsWUFBWSxFQUFDLEdBQUcsSUFBSSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsZUFBZSxJQUFJLFlBQVksSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxFQUFFO29CQUN2RSxZQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7d0JBQy9DLFVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUk7d0JBQ3hCLFVBQVUsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSTtxQkFDeEQsQ0FBQyxDQUFDLENBQUM7aUJBQ0w7YUFDRjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUMsVUFBVSxFQUFFLFVBQVUsRUFBQyxFQUFFLEVBQUU7WUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBQSxvQ0FBMkIsRUFBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFDcEUsSUFBSSxNQUFNLEVBQUU7Z0JBQ1YsZUFBZSxDQUFDLElBQUksQ0FBQyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQzthQUN4RDtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxlQUFlLENBQUM7SUFDekIsQ0FBQztJQXhDRCx3REF3Q0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQge2dldFZhbHVlU3ltYm9sT2ZEZWNsYXJhdGlvbn0gZnJvbSAnLi4vLi4vLi4vdXRpbHMvdHlwZXNjcmlwdC9zeW1ib2wnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlc29sdmVkRXhwb3J0IHtcbiAgc3ltYm9sOiB0cy5TeW1ib2w7XG4gIGV4cG9ydE5hbWU6IHN0cmluZztcbiAgaWRlbnRpZmllcjogdHMuSWRlbnRpZmllcjtcbn1cblxuLyoqIENvbXB1dGVzIHRoZSByZXNvbHZlZCBleHBvcnRzIG9mIGEgZ2l2ZW4gc291cmNlIGZpbGUuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RXhwb3J0U3ltYm9sc09mRmlsZShcbiAgICBzZjogdHMuU291cmNlRmlsZSwgdHlwZUNoZWNrZXI6IHRzLlR5cGVDaGVja2VyKTogUmVzb2x2ZWRFeHBvcnRbXSB7XG4gIGNvbnN0IGV4cG9ydHM6IHtleHBvcnROYW1lOiBzdHJpbmcsIGlkZW50aWZpZXI6IHRzLklkZW50aWZpZXJ9W10gPSBbXTtcbiAgY29uc3QgcmVzb2x2ZWRFeHBvcnRzOiBSZXNvbHZlZEV4cG9ydFtdID0gW107XG5cbiAgdHMuZm9yRWFjaENoaWxkKHNmLCBmdW5jdGlvbiB2aXNpdE5vZGUobm9kZSkge1xuICAgIGlmICh0cy5pc0NsYXNzRGVjbGFyYXRpb24obm9kZSkgfHwgdHMuaXNGdW5jdGlvbkRlY2xhcmF0aW9uKG5vZGUpIHx8XG4gICAgICAgIHRzLmlzSW50ZXJmYWNlRGVjbGFyYXRpb24obm9kZSkgJiZcbiAgICAgICAgICAgICh0cy5nZXRDb21iaW5lZE1vZGlmaWVyRmxhZ3Mobm9kZSBhcyB0cy5EZWNsYXJhdGlvbikgJiB0cy5Nb2RpZmllckZsYWdzLkV4cG9ydCkgIT09IDApIHtcbiAgICAgIGlmIChub2RlLm5hbWUpIHtcbiAgICAgICAgZXhwb3J0cy5wdXNoKHtleHBvcnROYW1lOiBub2RlLm5hbWUudGV4dCwgaWRlbnRpZmllcjogbm9kZS5uYW1lfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh0cy5pc1ZhcmlhYmxlU3RhdGVtZW50KG5vZGUpKSB7XG4gICAgICBmb3IgKGNvbnN0IGRlY2wgb2Ygbm9kZS5kZWNsYXJhdGlvbkxpc3QuZGVjbGFyYXRpb25zKSB7XG4gICAgICAgIHZpc2l0Tm9kZShkZWNsKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHRzLmlzVmFyaWFibGVEZWNsYXJhdGlvbihub2RlKSkge1xuICAgICAgaWYgKCh0cy5nZXRDb21iaW5lZE1vZGlmaWVyRmxhZ3Mobm9kZSkgJiB0cy5Nb2RpZmllckZsYWdzLkV4cG9ydCkgIT0gMCAmJlxuICAgICAgICAgIHRzLmlzSWRlbnRpZmllcihub2RlLm5hbWUpKSB7XG4gICAgICAgIGV4cG9ydHMucHVzaCh7ZXhwb3J0TmFtZTogbm9kZS5uYW1lLnRleHQsIGlkZW50aWZpZXI6IG5vZGUubmFtZX0pO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodHMuaXNFeHBvcnREZWNsYXJhdGlvbihub2RlKSkge1xuICAgICAgY29uc3Qge21vZHVsZVNwZWNpZmllciwgZXhwb3J0Q2xhdXNlfSA9IG5vZGU7XG4gICAgICBpZiAoIW1vZHVsZVNwZWNpZmllciAmJiBleHBvcnRDbGF1c2UgJiYgdHMuaXNOYW1lZEV4cG9ydHMoZXhwb3J0Q2xhdXNlKSkge1xuICAgICAgICBleHBvcnRDbGF1c2UuZWxlbWVudHMuZm9yRWFjaChlbCA9PiBleHBvcnRzLnB1c2goe1xuICAgICAgICAgIGV4cG9ydE5hbWU6IGVsLm5hbWUudGV4dCxcbiAgICAgICAgICBpZGVudGlmaWVyOiBlbC5wcm9wZXJ0eU5hbWUgPyBlbC5wcm9wZXJ0eU5hbWUgOiBlbC5uYW1lXG4gICAgICAgIH0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuXG4gIGV4cG9ydHMuZm9yRWFjaCgoe2lkZW50aWZpZXIsIGV4cG9ydE5hbWV9KSA9PiB7XG4gICAgY29uc3Qgc3ltYm9sID0gZ2V0VmFsdWVTeW1ib2xPZkRlY2xhcmF0aW9uKGlkZW50aWZpZXIsIHR5cGVDaGVja2VyKTtcbiAgICBpZiAoc3ltYm9sKSB7XG4gICAgICByZXNvbHZlZEV4cG9ydHMucHVzaCh7c3ltYm9sLCBpZGVudGlmaWVyLCBleHBvcnROYW1lfSk7XG4gICAgfVxuICB9KTtcblxuICByZXR1cm4gcmVzb2x2ZWRFeHBvcnRzO1xufVxuIl19
@@ -1,11 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright Google LLC All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- /// <amd-module name="@angular/core/schematics/migrations/undecorated-classes-with-di" />
9
- import { Rule } from '@angular-devkit/schematics';
10
- /** Entry point for the V9 "undecorated-classes-with-di" migration. */
11
- export default function (): Rule;