@angular/core 7.2.0-beta.0 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (454) hide show
  1. package/bundles/core-testing.umd.js +194 -128
  2. package/bundles/core-testing.umd.js.map +1 -1
  3. package/bundles/core-testing.umd.min.js +10 -10
  4. package/bundles/core-testing.umd.min.js.map +1 -1
  5. package/bundles/core.umd.js +5582 -4512
  6. package/bundles/core.umd.js.map +1 -1
  7. package/bundles/core.umd.min.js +122 -129
  8. package/bundles/core.umd.min.js.map +1 -1
  9. package/core.d.ts +12 -12
  10. package/core.metadata.json +1 -1
  11. package/esm2015/core.externs.js +45 -35
  12. package/esm2015/core.js +12 -13
  13. package/esm2015/index.js +3 -4
  14. package/esm2015/public_api.js +3 -5
  15. package/esm2015/src/application_init.js +22 -10
  16. package/esm2015/src/application_module.js +6 -5
  17. package/esm2015/src/application_ref.js +94 -37
  18. package/esm2015/src/application_tokens.js +21 -16
  19. package/esm2015/src/change_detection/change_detection.js +8 -7
  20. package/esm2015/src/change_detection/change_detection_util.js +2 -4
  21. package/esm2015/src/change_detection/change_detector_ref.js +2 -3
  22. package/esm2015/src/change_detection/constants.js +30 -32
  23. package/esm2015/src/change_detection/differs/default_iterable_differ.js +108 -29
  24. package/esm2015/src/change_detection/differs/default_keyvalue_differ.js +53 -16
  25. package/esm2015/src/change_detection/differs/iterable_differs.js +100 -90
  26. package/esm2015/src/change_detection/differs/keyvalue_differs.js +85 -73
  27. package/esm2015/src/change_detection/pipe_transform.js +10 -5
  28. package/esm2015/src/change_detection.js +7 -3
  29. package/esm2015/src/codegen_private_exports.js +2 -3
  30. package/esm2015/src/console.js +3 -3
  31. package/esm2015/src/core.js +3 -4
  32. package/esm2015/src/core_private_export.js +2 -3
  33. package/esm2015/src/core_render3_private_export.js +13 -7
  34. package/esm2015/src/debug/debug_node.js +132 -90
  35. package/esm2015/src/di/defs.js +59 -50
  36. package/esm2015/src/di/forward_ref.js +5 -6
  37. package/esm2015/src/di/injectable.js +11 -11
  38. package/esm2015/src/di/injection_token.js +10 -6
  39. package/esm2015/src/di/injector.js +53 -43
  40. package/esm2015/src/di/injector_compatibility.js +13 -12
  41. package/esm2015/src/di/metadata.js +22 -13
  42. package/esm2015/src/di/provider.js +137 -120
  43. package/esm2015/src/di/r3_injector.js +127 -57
  44. package/esm2015/src/di/reflective_errors.js +19 -13
  45. package/esm2015/src/di/reflective_injector.js +20 -16
  46. package/esm2015/src/di/reflective_key.js +7 -5
  47. package/esm2015/src/di/reflective_provider.js +21 -20
  48. package/esm2015/src/di/scope.js +5 -5
  49. package/esm2015/src/di/util.js +13 -14
  50. package/esm2015/src/di.js +2 -3
  51. package/esm2015/src/error_handler.js +5 -4
  52. package/esm2015/src/errors.js +7 -8
  53. package/esm2015/src/event_emitter.js +3 -3
  54. package/esm2015/src/i18n/tokens.js +12 -10
  55. package/esm2015/src/is_dev_mode.js +2 -3
  56. package/esm2015/src/ivy_switch.js +2 -3
  57. package/esm2015/src/linker/compiler.js +9 -12
  58. package/esm2015/src/linker/component_factory.js +2 -3
  59. package/esm2015/src/linker/component_factory_resolver.js +24 -10
  60. package/esm2015/src/linker/element_ref.js +5 -3
  61. package/esm2015/src/linker/ng_module_factory.js +6 -5
  62. package/esm2015/src/linker/ng_module_factory_loader.js +63 -16
  63. package/esm2015/src/linker/query_list.js +16 -14
  64. package/esm2015/src/linker/system_js_ng_module_factory_loader.js +12 -5
  65. package/esm2015/src/linker/template_ref.js +2 -3
  66. package/esm2015/src/linker/view_container_ref.js +2 -3
  67. package/esm2015/src/linker/view_ref.js +13 -7
  68. package/esm2015/src/linker.js +3 -3
  69. package/esm2015/src/metadata/di.js +22 -15
  70. package/esm2015/src/metadata/directives.js +33 -19
  71. package/esm2015/src/metadata/lifecycle_hooks.js +81 -66
  72. package/esm2015/src/metadata/ng_module.js +82 -68
  73. package/esm2015/src/metadata/resource_loading.js +4 -3
  74. package/esm2015/src/metadata/view.js +25 -26
  75. package/esm2015/src/metadata.js +6 -3
  76. package/esm2015/src/platform_core_providers.js +5 -5
  77. package/esm2015/src/profile/profile.js +17 -13
  78. package/esm2015/src/profile/wtf_impl.js +36 -16
  79. package/esm2015/src/r3_symbols.js +18 -5
  80. package/esm2015/src/reflection/platform_reflection_capabilities.js +81 -40
  81. package/esm2015/src/reflection/reflection.js +5 -5
  82. package/esm2015/src/reflection/reflection_capabilities.js +38 -27
  83. package/esm2015/src/reflection/reflector.js +2 -3
  84. package/esm2015/src/reflection/types.js +2 -12
  85. package/esm2015/src/render/api.js +67 -47
  86. package/esm2015/src/render.js +3 -3
  87. package/esm2015/src/render3/assert.js +38 -3
  88. package/esm2015/src/render3/bindings.js +111 -0
  89. package/esm2015/src/render3/component.js +88 -77
  90. package/esm2015/src/render3/component_ref.js +86 -56
  91. package/esm2015/src/render3/context_discovery.js +94 -92
  92. package/esm2015/src/render3/definition.js +58 -51
  93. package/esm2015/src/render3/di.js +206 -166
  94. package/esm2015/src/render3/di_setup.js +51 -31
  95. package/esm2015/src/render3/discovery_utils.js +225 -39
  96. package/esm2015/src/render3/empty.js +28 -0
  97. package/esm2015/src/render3/errors.js +11 -15
  98. package/esm2015/src/render3/features/inherit_definition_feature.js +13 -10
  99. package/esm2015/src/render3/features/ng_onchanges_feature.js +15 -12
  100. package/esm2015/src/render3/features/providers_feature.js +2 -3
  101. package/esm2015/src/render3/fields.js +5 -5
  102. package/esm2015/src/render3/global_utils.js +22 -7
  103. package/esm2015/src/render3/global_utils_api.js +13 -7
  104. package/esm2015/src/render3/hooks.js +21 -26
  105. package/esm2015/src/render3/i18n.js +134 -115
  106. package/esm2015/src/render3/index.js +15 -7
  107. package/esm2015/src/render3/instructions.js +938 -813
  108. package/esm2015/src/render3/interfaces/container.js +37 -6
  109. package/esm2015/src/render3/interfaces/context.js +39 -37
  110. package/esm2015/src/render3/interfaces/definition.js +225 -265
  111. package/esm2015/src/render3/interfaces/i18n.js +179 -151
  112. package/esm2015/src/render3/interfaces/injector.js +95 -13
  113. package/esm2015/src/render3/interfaces/node.js +413 -382
  114. package/esm2015/src/render3/interfaces/player.js +78 -37
  115. package/esm2015/src/render3/interfaces/projection.js +5 -10
  116. package/esm2015/src/render3/interfaces/query.js +66 -60
  117. package/esm2015/src/render3/interfaces/renderer.js +292 -117
  118. package/esm2015/src/render3/interfaces/sanitization.js +2 -6
  119. package/esm2015/src/render3/interfaces/styling.js +322 -111
  120. package/esm2015/src/render3/interfaces/view.js +356 -298
  121. package/esm2015/src/render3/jit/compiler_facade.js +10 -4
  122. package/esm2015/src/render3/jit/compiler_facade_interface.js +195 -152
  123. package/esm2015/src/render3/jit/directive.js +26 -16
  124. package/esm2015/src/render3/jit/environment.js +8 -5
  125. package/esm2015/src/render3/jit/injectable.js +7 -10
  126. package/esm2015/src/render3/jit/module.js +309 -25
  127. package/esm2015/src/render3/jit/pipe.js +2 -3
  128. package/esm2015/src/render3/jit/util.js +2 -3
  129. package/esm2015/src/render3/metadata.js +11 -10
  130. package/esm2015/src/render3/ng_dev_mode.js +5 -6
  131. package/esm2015/src/render3/ng_module_ref.js +48 -22
  132. package/esm2015/src/render3/node_assert.js +2 -3
  133. package/esm2015/src/render3/node_manipulation.js +137 -117
  134. package/esm2015/src/render3/node_selector_matcher.js +46 -19
  135. package/esm2015/src/render3/pipe.js +36 -21
  136. package/esm2015/src/render3/players.js +17 -12
  137. package/esm2015/src/render3/pure_function.js +86 -39
  138. package/esm2015/src/render3/query.js +93 -80
  139. package/esm2015/src/render3/state.js +88 -203
  140. package/esm2015/src/render3/styling/class_and_style_bindings.js +963 -249
  141. package/esm2015/src/render3/styling/core_player_handler.js +6 -4
  142. package/esm2015/src/render3/styling/player_factory.js +3 -4
  143. package/esm2015/src/render3/styling/util.js +69 -31
  144. package/esm2015/src/render3/tokens.js +7 -6
  145. package/esm2015/src/render3/util.js +65 -55
  146. package/esm2015/src/render3/view_engine_compatibility.js +36 -59
  147. package/esm2015/src/render3/view_engine_compatibility_prebound.js +2 -3
  148. package/esm2015/src/render3/view_ref.js +58 -44
  149. package/esm2015/src/sanitization/bypass.js +29 -6
  150. package/esm2015/src/sanitization/html_sanitizer.js +48 -16
  151. package/esm2015/src/sanitization/inert_body.js +33 -18
  152. package/esm2015/src/sanitization/sanitization.js +35 -25
  153. package/esm2015/src/sanitization/security.js +3 -4
  154. package/esm2015/src/sanitization/style_sanitizer.js +10 -7
  155. package/esm2015/src/sanitization/url_sanitizer.js +9 -7
  156. package/esm2015/src/testability/testability.js +72 -42
  157. package/esm2015/src/type.js +6 -8
  158. package/esm2015/src/util/decorators.js +19 -14
  159. package/esm2015/src/util/lang.js +2 -3
  160. package/esm2015/src/util/ng_reflect.js +2 -3
  161. package/esm2015/src/util/noop.js +2 -3
  162. package/esm2015/src/util/property.js +3 -4
  163. package/esm2015/src/util.js +12 -4
  164. package/esm2015/src/version.js +6 -6
  165. package/esm2015/src/view/element.js +17 -17
  166. package/esm2015/src/view/entrypoint.js +15 -5
  167. package/esm2015/src/view/errors.js +4 -5
  168. package/esm2015/src/view/index.js +2 -3
  169. package/esm2015/src/view/ng_content.js +3 -4
  170. package/esm2015/src/view/ng_module.js +2 -3
  171. package/esm2015/src/view/provider.js +89 -24
  172. package/esm2015/src/view/pure_expression.js +14 -15
  173. package/esm2015/src/view/query.js +14 -14
  174. package/esm2015/src/view/refs.js +96 -38
  175. package/esm2015/src/view/services.js +64 -37
  176. package/esm2015/src/view/text.js +5 -6
  177. package/esm2015/src/view/types.js +390 -325
  178. package/esm2015/src/view/util.js +29 -24
  179. package/esm2015/src/view/view.js +43 -36
  180. package/esm2015/src/view/view_attach.js +9 -10
  181. package/esm2015/src/zone/ng_zone.js +29 -28
  182. package/esm2015/src/zone.js +3 -3
  183. package/esm2015/testing/index.js +2 -3
  184. package/esm2015/testing/public_api.js +4 -4
  185. package/esm2015/testing/src/async.js +2 -3
  186. package/esm2015/testing/src/async_fallback.js +8 -7
  187. package/esm2015/testing/src/async_test_completer.js +14 -6
  188. package/esm2015/testing/src/before_each.js +10 -4
  189. package/esm2015/testing/src/component_fixture.js +48 -17
  190. package/esm2015/testing/src/fake_async.js +9 -3
  191. package/esm2015/testing/src/fake_async_fallback.js +5 -5
  192. package/esm2015/testing/src/lang_utils.js +3 -4
  193. package/esm2015/testing/src/logger.js +2 -3
  194. package/esm2015/testing/src/metadata_override.js +2 -6
  195. package/esm2015/testing/src/metadata_overrider.js +9 -8
  196. package/esm2015/testing/src/ng_zone_mock.js +2 -3
  197. package/esm2015/testing/src/private_export_testing.js +2 -3
  198. package/esm2015/testing/src/r3_test_bed.js +324 -174
  199. package/esm2015/testing/src/resolvers.js +28 -11
  200. package/esm2015/testing/src/test_bed.js +123 -54
  201. package/esm2015/testing/src/test_bed_common.js +142 -85
  202. package/esm2015/testing/src/test_compiler.js +2 -3
  203. package/esm2015/testing/src/testing.js +3 -3
  204. package/esm2015/testing/src/testing_internal.js +17 -12
  205. package/esm2015/testing/testing.js +1 -2
  206. package/esm5/core.js +12 -13
  207. package/esm5/index.js +1 -2
  208. package/esm5/public_api.js +1 -2
  209. package/esm5/src/application_init.js +1 -2
  210. package/esm5/src/application_module.js +1 -2
  211. package/esm5/src/application_ref.js +1 -2
  212. package/esm5/src/application_tokens.js +1 -2
  213. package/esm5/src/change_detection/change_detection.js +1 -2
  214. package/esm5/src/change_detection/change_detection_util.js +1 -2
  215. package/esm5/src/change_detection/change_detector_ref.js +1 -2
  216. package/esm5/src/change_detection/constants.js +3 -4
  217. package/esm5/src/change_detection/differs/default_iterable_differ.js +1 -2
  218. package/esm5/src/change_detection/differs/default_keyvalue_differ.js +1 -2
  219. package/esm5/src/change_detection/differs/iterable_differs.js +1 -2
  220. package/esm5/src/change_detection/differs/keyvalue_differs.js +1 -2
  221. package/esm5/src/change_detection/pipe_transform.js +1 -2
  222. package/esm5/src/change_detection.js +1 -2
  223. package/esm5/src/codegen_private_exports.js +1 -2
  224. package/esm5/src/console.js +1 -2
  225. package/esm5/src/core.js +1 -2
  226. package/esm5/src/core_private_export.js +1 -2
  227. package/esm5/src/core_render3_private_export.js +7 -5
  228. package/esm5/src/debug/debug_node.js +79 -58
  229. package/esm5/src/di/defs.js +3 -4
  230. package/esm5/src/di/forward_ref.js +1 -2
  231. package/esm5/src/di/injectable.js +1 -2
  232. package/esm5/src/di/injection_token.js +1 -2
  233. package/esm5/src/di/injector.js +1 -2
  234. package/esm5/src/di/injector_compatibility.js +1 -2
  235. package/esm5/src/di/metadata.js +1 -2
  236. package/esm5/src/di/provider.js +1 -2
  237. package/esm5/src/di/r3_injector.js +48 -28
  238. package/esm5/src/di/reflective_errors.js +1 -2
  239. package/esm5/src/di/reflective_injector.js +1 -2
  240. package/esm5/src/di/reflective_key.js +1 -2
  241. package/esm5/src/di/reflective_provider.js +1 -2
  242. package/esm5/src/di/scope.js +1 -2
  243. package/esm5/src/di/util.js +1 -2
  244. package/esm5/src/di.js +1 -2
  245. package/esm5/src/error_handler.js +1 -2
  246. package/esm5/src/errors.js +1 -2
  247. package/esm5/src/event_emitter.js +1 -2
  248. package/esm5/src/i18n/tokens.js +1 -2
  249. package/esm5/src/is_dev_mode.js +1 -2
  250. package/esm5/src/ivy_switch.js +1 -2
  251. package/esm5/src/linker/compiler.js +1 -2
  252. package/esm5/src/linker/component_factory.js +1 -2
  253. package/esm5/src/linker/component_factory_resolver.js +1 -2
  254. package/esm5/src/linker/element_ref.js +1 -2
  255. package/esm5/src/linker/ng_module_factory.js +1 -2
  256. package/esm5/src/linker/ng_module_factory_loader.js +37 -13
  257. package/esm5/src/linker/query_list.js +1 -2
  258. package/esm5/src/linker/system_js_ng_module_factory_loader.js +1 -2
  259. package/esm5/src/linker/template_ref.js +1 -2
  260. package/esm5/src/linker/view_container_ref.js +1 -2
  261. package/esm5/src/linker/view_ref.js +1 -2
  262. package/esm5/src/linker.js +1 -2
  263. package/esm5/src/metadata/di.js +1 -2
  264. package/esm5/src/metadata/directives.js +1 -2
  265. package/esm5/src/metadata/lifecycle_hooks.js +1 -2
  266. package/esm5/src/metadata/ng_module.js +1 -2
  267. package/esm5/src/metadata/resource_loading.js +1 -2
  268. package/esm5/src/metadata/view.js +1 -2
  269. package/esm5/src/metadata.js +1 -2
  270. package/esm5/src/platform_core_providers.js +1 -2
  271. package/esm5/src/profile/profile.js +1 -2
  272. package/esm5/src/profile/wtf_impl.js +1 -2
  273. package/esm5/src/r3_symbols.js +1 -2
  274. package/esm5/src/reflection/platform_reflection_capabilities.js +1 -2
  275. package/esm5/src/reflection/reflection.js +1 -2
  276. package/esm5/src/reflection/reflection_capabilities.js +1 -2
  277. package/esm5/src/reflection/reflector.js +1 -2
  278. package/esm5/src/reflection/types.js +1 -2
  279. package/esm5/src/render/api.js +1 -2
  280. package/esm5/src/render.js +1 -2
  281. package/esm5/src/render3/assert.js +15 -2
  282. package/esm5/src/render3/bindings.js +63 -0
  283. package/esm5/src/render3/component.js +23 -16
  284. package/esm5/src/render3/component_ref.js +43 -36
  285. package/esm5/src/render3/context_discovery.js +68 -77
  286. package/esm5/src/render3/definition.js +30 -24
  287. package/esm5/src/render3/di.js +142 -135
  288. package/esm5/src/render3/di_setup.js +20 -21
  289. package/esm5/src/render3/discovery_utils.js +167 -36
  290. package/esm5/src/render3/empty.js +22 -0
  291. package/esm5/src/render3/errors.js +9 -12
  292. package/esm5/src/render3/features/inherit_definition_feature.js +3 -5
  293. package/esm5/src/render3/features/ng_onchanges_feature.js +11 -10
  294. package/esm5/src/render3/features/providers_feature.js +1 -2
  295. package/esm5/src/render3/fields.js +1 -2
  296. package/esm5/src/render3/global_utils.js +4 -3
  297. package/esm5/src/render3/global_utils_api.js +2 -3
  298. package/esm5/src/render3/hooks.js +14 -16
  299. package/esm5/src/render3/i18n.js +22 -27
  300. package/esm5/src/render3/index.js +5 -6
  301. package/esm5/src/render3/instructions.js +698 -593
  302. package/esm5/src/render3/interfaces/container.js +10 -3
  303. package/esm5/src/render3/interfaces/context.js +1 -2
  304. package/esm5/src/render3/interfaces/definition.js +1 -2
  305. package/esm5/src/render3/interfaces/i18n.js +1 -2
  306. package/esm5/src/render3/interfaces/injector.js +5 -6
  307. package/esm5/src/render3/interfaces/node.js +1 -2
  308. package/esm5/src/render3/interfaces/player.js +1 -2
  309. package/esm5/src/render3/interfaces/projection.js +1 -2
  310. package/esm5/src/render3/interfaces/query.js +1 -2
  311. package/esm5/src/render3/interfaces/renderer.js +1 -2
  312. package/esm5/src/render3/interfaces/sanitization.js +1 -2
  313. package/esm5/src/render3/interfaces/styling.js +1 -2
  314. package/esm5/src/render3/interfaces/view.js +3 -4
  315. package/esm5/src/render3/jit/compiler_facade.js +1 -2
  316. package/esm5/src/render3/jit/compiler_facade_interface.js +1 -2
  317. package/esm5/src/render3/jit/directive.js +19 -10
  318. package/esm5/src/render3/jit/environment.js +4 -2
  319. package/esm5/src/render3/jit/injectable.js +17 -18
  320. package/esm5/src/render3/jit/module.js +207 -13
  321. package/esm5/src/render3/jit/pipe.js +1 -2
  322. package/esm5/src/render3/jit/util.js +1 -2
  323. package/esm5/src/render3/metadata.js +1 -2
  324. package/esm5/src/render3/ng_dev_mode.js +1 -2
  325. package/esm5/src/render3/ng_module_ref.js +29 -11
  326. package/esm5/src/render3/node_assert.js +1 -2
  327. package/esm5/src/render3/node_manipulation.js +54 -50
  328. package/esm5/src/render3/node_selector_matcher.js +28 -9
  329. package/esm5/src/render3/pipe.js +33 -19
  330. package/esm5/src/render3/players.js +7 -9
  331. package/esm5/src/render3/pure_function.js +48 -38
  332. package/esm5/src/render3/query.js +8 -9
  333. package/esm5/src/render3/state.js +50 -135
  334. package/esm5/src/render3/styling/class_and_style_bindings.js +684 -214
  335. package/esm5/src/render3/styling/core_player_handler.js +1 -2
  336. package/esm5/src/render3/styling/player_factory.js +1 -2
  337. package/esm5/src/render3/styling/util.js +39 -22
  338. package/esm5/src/render3/tokens.js +1 -2
  339. package/esm5/src/render3/util.js +49 -37
  340. package/esm5/src/render3/view_engine_compatibility.js +20 -33
  341. package/esm5/src/render3/view_engine_compatibility_prebound.js +1 -2
  342. package/esm5/src/render3/view_ref.js +33 -30
  343. package/esm5/src/sanitization/bypass.js +1 -2
  344. package/esm5/src/sanitization/html_sanitizer.js +1 -2
  345. package/esm5/src/sanitization/inert_body.js +4 -5
  346. package/esm5/src/sanitization/sanitization.js +25 -20
  347. package/esm5/src/sanitization/security.js +1 -2
  348. package/esm5/src/sanitization/style_sanitizer.js +1 -2
  349. package/esm5/src/sanitization/url_sanitizer.js +1 -2
  350. package/esm5/src/testability/testability.js +1 -2
  351. package/esm5/src/type.js +1 -2
  352. package/esm5/src/util/decorators.js +1 -2
  353. package/esm5/src/util/lang.js +1 -2
  354. package/esm5/src/util/ng_reflect.js +1 -2
  355. package/esm5/src/util/noop.js +1 -2
  356. package/esm5/src/util/property.js +1 -2
  357. package/esm5/src/util.js +1 -2
  358. package/esm5/src/version.js +2 -3
  359. package/esm5/src/view/element.js +1 -2
  360. package/esm5/src/view/entrypoint.js +1 -2
  361. package/esm5/src/view/errors.js +1 -2
  362. package/esm5/src/view/index.js +1 -2
  363. package/esm5/src/view/ng_content.js +1 -2
  364. package/esm5/src/view/ng_module.js +1 -2
  365. package/esm5/src/view/provider.js +1 -2
  366. package/esm5/src/view/pure_expression.js +1 -2
  367. package/esm5/src/view/query.js +1 -2
  368. package/esm5/src/view/refs.js +1 -2
  369. package/esm5/src/view/services.js +1 -2
  370. package/esm5/src/view/text.js +1 -2
  371. package/esm5/src/view/types.js +1 -2
  372. package/esm5/src/view/util.js +1 -2
  373. package/esm5/src/view/view.js +1 -2
  374. package/esm5/src/view/view_attach.js +1 -2
  375. package/esm5/src/zone/ng_zone.js +1 -2
  376. package/esm5/src/zone.js +1 -2
  377. package/esm5/testing/index.js +1 -2
  378. package/esm5/testing/public_api.js +1 -2
  379. package/esm5/testing/src/async.js +1 -2
  380. package/esm5/testing/src/async_fallback.js +1 -2
  381. package/esm5/testing/src/async_test_completer.js +1 -2
  382. package/esm5/testing/src/before_each.js +1 -2
  383. package/esm5/testing/src/component_fixture.js +1 -2
  384. package/esm5/testing/src/fake_async.js +1 -2
  385. package/esm5/testing/src/fake_async_fallback.js +1 -2
  386. package/esm5/testing/src/lang_utils.js +1 -2
  387. package/esm5/testing/src/logger.js +1 -2
  388. package/esm5/testing/src/metadata_override.js +1 -2
  389. package/esm5/testing/src/metadata_overrider.js +1 -2
  390. package/esm5/testing/src/ng_zone_mock.js +1 -2
  391. package/esm5/testing/src/private_export_testing.js +1 -2
  392. package/esm5/testing/src/r3_test_bed.js +182 -121
  393. package/esm5/testing/src/resolvers.js +11 -7
  394. package/esm5/testing/src/test_bed.js +1 -2
  395. package/esm5/testing/src/test_bed_common.js +1 -2
  396. package/esm5/testing/src/test_compiler.js +1 -2
  397. package/esm5/testing/src/testing.js +1 -2
  398. package/esm5/testing/src/testing_internal.js +2 -3
  399. package/esm5/testing/testing.js +1 -2
  400. package/fesm2015/core.js +8560 -6153
  401. package/fesm2015/core.js.map +1 -1
  402. package/fesm2015/testing.js +351 -229
  403. package/fesm2015/testing.js.map +1 -1
  404. package/fesm5/core.js +5541 -4482
  405. package/fesm5/core.js.map +1 -1
  406. package/fesm5/testing.js +185 -130
  407. package/fesm5/testing.js.map +1 -1
  408. package/package.json +1 -1
  409. package/src/change_detection/constants.d.ts +2 -2
  410. package/src/core_render3_private_export.d.ts +6 -3
  411. package/src/di/injectable.d.ts +3 -2
  412. package/src/di/r3_injector.d.ts +1 -1
  413. package/src/linker/ng_module_factory_loader.d.ts +5 -1
  414. package/src/render3/assert.d.ts +6 -0
  415. package/src/render3/bindings.d.ts +20 -0
  416. package/src/render3/component.d.ts +3 -3
  417. package/src/render3/component_ref.d.ts +14 -4
  418. package/src/render3/context_discovery.d.ts +9 -9
  419. package/src/render3/definition.d.ts +8 -23
  420. package/src/render3/di.d.ts +19 -17
  421. package/src/render3/discovery_utils.d.ts +66 -8
  422. package/src/render3/empty.d.ts +16 -0
  423. package/src/render3/errors.d.ts +1 -1
  424. package/src/render3/global_utils_api.d.ts +1 -1
  425. package/src/render3/hooks.d.ts +7 -6
  426. package/src/render3/index.d.ts +4 -4
  427. package/src/render3/instructions.d.ts +163 -118
  428. package/src/render3/interfaces/container.d.ts +9 -8
  429. package/src/render3/interfaces/context.d.ts +3 -3
  430. package/src/render3/interfaces/definition.d.ts +2 -12
  431. package/src/render3/interfaces/i18n.d.ts +25 -25
  432. package/src/render3/interfaces/injector.d.ts +8 -9
  433. package/src/render3/interfaces/node.d.ts +56 -23
  434. package/src/render3/interfaces/renderer.d.ts +2 -1
  435. package/src/render3/interfaces/styling.d.ts +392 -117
  436. package/src/render3/interfaces/view.d.ts +49 -35
  437. package/src/render3/jit/compiler_facade_interface.d.ts +10 -3
  438. package/src/render3/jit/module.d.ts +9 -1
  439. package/src/render3/metadata.d.ts +1 -1
  440. package/src/render3/ng_module_ref.d.ts +8 -6
  441. package/src/render3/node_manipulation.d.ts +21 -27
  442. package/src/render3/node_selector_matcher.d.ts +2 -2
  443. package/src/render3/state.d.ts +11 -38
  444. package/src/render3/styling/class_and_style_bindings.d.ts +130 -43
  445. package/src/render3/styling/util.d.ts +9 -4
  446. package/src/render3/util.d.ts +31 -25
  447. package/src/render3/view_engine_compatibility.d.ts +5 -12
  448. package/src/render3/view_engine_compatibility_prebound.d.ts +2 -2
  449. package/src/render3/view_ref.d.ts +2 -2
  450. package/src/sanitization/sanitization.d.ts +3 -2
  451. package/testing/src/r3_test_bed.d.ts +15 -0
  452. package/testing/src/resolvers.d.ts +2 -2
  453. package/testing/testing.metadata.json +1 -1
  454. package/testing.d.ts +5 -0
@@ -1,44 +1,68 @@
1
1
  /**
2
- * @license
3
- * Copyright Google Inc. All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
2
+ * @license
3
+ * Copyright Google Inc. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
8
  import { StyleSanitizeFn } from '../../sanitization/style_sanitizer';
9
- import { InitialStylingFlags } from '../interfaces/definition';
9
+ import { TAttributes } from '../interfaces/node';
10
10
  import { BindingStore, BindingType, Player, PlayerBuilder, PlayerFactory } from '../interfaces/player';
11
- import { Renderer3 } from '../interfaces/renderer';
11
+ import { RElement, Renderer3 } from '../interfaces/renderer';
12
12
  import { StylingContext } from '../interfaces/styling';
13
- import { LViewData, RootContext } from '../interfaces/view';
13
+ import { LView, RootContext } from '../interfaces/view';
14
14
  import { NO_CHANGE } from '../tokens';
15
15
  import { BoundPlayerFactory } from './player_factory';
16
16
  /**
17
- * Creates a styling context template where styling information is stored.
18
- * Any styles that are later referenced using `updateStyleProp` must be
19
- * passed in within this function. Initial values for those styles are to
20
- * be declared after all initial style properties are declared (this change in
21
- * mode between declarations and initial styles is made possible using a special
22
- * enum value found in `definition.ts`).
17
+ * This file includes the code to power all styling-binding operations in Angular.
23
18
  *
24
- * @param initialStyleDeclarations a list of style declarations and initial style values
25
- * that are used later within the styling context.
19
+ * These include:
20
+ * [style]="myStyleObj"
21
+ * [class]="myClassObj"
22
+ * [style.prop]="myPropValue"
23
+ * [class.name]="myClassValue"
26
24
  *
27
- * -> ['width', 'height', SPECIAL_ENUM_VAL, 'width', '100px']
28
- * This implies that `width` and `height` will be later styled and that the `width`
29
- * property has an initial value of `100px`.
25
+ * There are many different ways in which these functions below are called. Please see
26
+ * `interfaces/styles.ts` to get a better idea of how the styling algorithm works.
27
+ */
28
+ /**
29
+ * Creates a new StylingContext an fills it with the provided static styling attribute values.
30
+ */
31
+ export declare function initializeStaticContext(attrs: TAttributes): StylingContext;
32
+ /**
33
+ * Designed to update an existing styling context with new static styling
34
+ * data (classes and styles).
30
35
  *
31
- * @param initialClassDeclarations a list of class declarations and initial class values
32
- * that are used later within the styling context.
36
+ * @param context the existing styling context
37
+ * @param attrs an array of new static styling attributes that will be
38
+ * assigned to the context
39
+ * @param directive the directive instance with which static data is associated with.
40
+ */
41
+ export declare function patchContextWithStaticAttrs(context: StylingContext, attrs: TAttributes, directive: any): void;
42
+ /**
43
+ * Runs through the initial styling data present in the context and renders
44
+ * them via the renderer on the element.
45
+ */
46
+ export declare function renderInitialStylesAndClasses(element: RElement, context: StylingContext, renderer: Renderer3): void;
47
+ export declare function allowNewBindingsForStylingContext(context: StylingContext): boolean;
48
+ /**
49
+ * Adds in new binding values to a styling context.
33
50
  *
34
- * -> ['foo', 'bar', SPECIAL_ENUM_VAL, 'foo', true]
35
- * This implies that `foo` and `bar` will be later styled and that the `foo`
36
- * class will be applied to the element as an initial class since it's true
51
+ * If a directive value is provided then all provided class/style binding names will
52
+ * reference the provided directive.
53
+ *
54
+ * @param context the existing styling context
55
+ * @param directiveRef the directive that the new bindings will reference
56
+ * @param classBindingNames an array of class binding names that will be added to the context
57
+ * @param styleBindingNames an array of style binding names that will be added to the context
58
+ * @param styleSanitizer an optional sanitizer that handle all sanitization on for each of
59
+ * the bindings added to the context. Note that if a directive is provided then the sanitizer
60
+ * instance will only be active if and when the directive updates the bindings that it owns.
37
61
  */
38
- export declare function createStylingContextTemplate(initialClassDeclarations?: (string | boolean | InitialStylingFlags)[] | null, initialStyleDeclarations?: (string | boolean | InitialStylingFlags)[] | null, styleSanitizer?: StyleSanitizeFn | null, onlyProcessSingleClasses?: boolean): StylingContext;
62
+ export declare function updateContextWithBindings(context: StylingContext, directiveRef: any | null, classBindingNames?: string[] | null, styleBindingNames?: string[] | null, styleSanitizer?: StyleSanitizeFn | null, onlyProcessSingleClasses?: boolean): void;
39
63
  /**
40
64
  * Sets and resolves all `multi` styling on an `StylingContext` so that they can be
41
- * applied to the element once `renderStyleAndClassBindings` is called.
65
+ * applied to the element once `renderStyling` is called.
42
66
  *
43
67
  * All missing styles/class (any values that are not provided in the new `styles`
44
68
  * or `classes` params) will resolve to `null` within their respective positions
@@ -57,10 +81,20 @@ export declare function updateStylingMap(context: StylingContext, classesInput:
57
81
  [key: string]: any;
58
82
  } | BoundPlayerFactory<null | {
59
83
  [key: string]: any;
60
- }> | NO_CHANGE | null): void;
84
+ }> | NO_CHANGE | null, directiveRef?: any): void;
85
+ /**
86
+ * This method will toggle the referenced CSS class (by the provided index)
87
+ * within the given context.
88
+ *
89
+ * @param context The styling context that will be updated with the
90
+ * newly provided class value.
91
+ * @param offset The index of the CSS class which is being updated.
92
+ * @param addOrRemove Whether or not to add or remove the CSS class
93
+ */
94
+ export declare function updateClassProp(context: StylingContext, offset: number, addOrRemove: boolean | BoundPlayerFactory<boolean>, directiveRef?: any): void;
61
95
  /**
62
- * Sets and resolves a single styling property/value on the provided `StylingContext` so
63
- * that they can be applied to the element once `renderStyleAndClassBindings` is called.
96
+ * Sets and resolves a single style value on the provided `StylingContext` so
97
+ * that they can be applied to the element once `renderStyling` is called.
64
98
  *
65
99
  * Note that prop-level styling values are considered higher priority than any styling that
66
100
  * has been applied using `updateStylingMap`, therefore, when styling values are rendered
@@ -69,20 +103,14 @@ export declare function updateStylingMap(context: StylingContext, classesInput:
69
103
  *
70
104
  * @param context The styling context that will be updated with the
71
105
  * newly provided style value.
72
- * @param index The index of the property which is being updated.
106
+ * @param offset The index of the property which is being updated.
73
107
  * @param value The CSS style value that will be assigned
108
+ * @param directiveRef an optional reference to the directive responsible
109
+ * for this binding change. If present then style binding will only
110
+ * actualize if the directive has ownership over this binding
111
+ * (see styling.ts#directives for more information about the algorithm).
74
112
  */
75
- export declare function updateStyleProp(context: StylingContext, index: number, input: string | boolean | null | BoundPlayerFactory<string | boolean | null>): void;
76
- /**
77
- * This method will toggle the referenced CSS class (by the provided index)
78
- * within the given context.
79
- *
80
- * @param context The styling context that will be updated with the
81
- * newly provided class value.
82
- * @param index The index of the CSS class which is being updated.
83
- * @param addOrRemove Whether or not to add or remove the CSS class
84
- */
85
- export declare function updateClassProp(context: StylingContext, index: number, addOrRemove: boolean | BoundPlayerFactory<boolean>): void;
113
+ export declare function updateStyleProp(context: StylingContext, offset: number, input: string | boolean | null | BoundPlayerFactory<string | boolean | null>, directiveRef?: any): void;
86
114
  /**
87
115
  * Renders all queued styling using a renderer onto the given element.
88
116
  *
@@ -100,9 +128,29 @@ export declare function updateClassProp(context: StylingContext, index: number,
100
128
  * to this key/value map instead of being renderered via the renderer.
101
129
  * @param stylesStore if provided, the updated style values will be applied
102
130
  * to this key/value map instead of being renderered via the renderer.
131
+ * @param directiveRef an optional directive that will be used to target which
132
+ * styling values are rendered. If left empty, only the bindings that are
133
+ * registered on the template will be rendered.
103
134
  * @returns number the total amount of players that got queued for animation (if any)
104
135
  */
105
- export declare function renderStyleAndClassBindings(context: StylingContext, renderer: Renderer3, rootOrView: RootContext | LViewData, isFirstRender: boolean, classesStore?: BindingStore | null, stylesStore?: BindingStore | null): number;
136
+ export declare function renderStyling(context: StylingContext, renderer: Renderer3, rootOrView: RootContext | LView, isFirstRender: boolean, classesStore?: BindingStore | null, stylesStore?: BindingStore | null, directiveRef?: any): number;
137
+ /**
138
+ * This function renders a given CSS prop/value entry using the
139
+ * provided renderer. If a `store` value is provided then
140
+ * that will be used a render context instead of the provided
141
+ * renderer.
142
+ *
143
+ * @param native the DOM Element
144
+ * @param prop the CSS style property that will be rendered
145
+ * @param value the CSS style value that will be rendered
146
+ * @param renderer
147
+ * @param store an optional key/value map that will be used as a context to render styles on
148
+ */
149
+ export declare function setStyle(native: any, prop: string, value: string | null, renderer: Renderer3, sanitizer: StyleSanitizeFn | null, store?: BindingStore | null, playerBuilder?: ClassAndStylePlayerBuilder<any> | null): void;
150
+ export declare function isClassBasedValue(context: StylingContext, index: number): boolean;
151
+ export declare function directiveOwnerPointers(directiveIndex: number, playerIndex: number): number;
152
+ export declare function getValue(context: StylingContext, index: number): string | boolean | null;
153
+ export declare function getProp(context: StylingContext, index: number): string;
106
154
  export declare function isContextDirty(context: StylingContext): boolean;
107
155
  export declare function limitToSingleClasses(context: StylingContext): number;
108
156
  export declare function setContextDirty(context: StylingContext, isDirtyYes: boolean): void;
@@ -117,3 +165,42 @@ export declare class ClassAndStylePlayerBuilder<T> implements PlayerBuilder {
117
165
  setValue(prop: string, value: any): void;
118
166
  buildPlayer(currentPlayer: Player | null, isFirstRender: boolean): Player | undefined | null;
119
167
  }
168
+ /**
169
+ * Used to provide a summary of the state of the styling context.
170
+ *
171
+ * This is an internal interface that is only used inside of test tooling to
172
+ * help summarize what's going on within the styling context. None of this code
173
+ * is designed to be exported publicly and will, therefore, be tree-shaken away
174
+ * during runtime.
175
+ */
176
+ export interface LogSummary {
177
+ name: string;
178
+ staticIndex: number;
179
+ dynamicIndex: number;
180
+ value: number;
181
+ flags: {
182
+ dirty: boolean;
183
+ class: boolean;
184
+ sanitize: boolean;
185
+ playerBuildersDirty: boolean;
186
+ onlyProcessSingleClasses: boolean;
187
+ bindingAllocationLocked: boolean;
188
+ };
189
+ }
190
+ /**
191
+ * This function is not designed to be used in production.
192
+ * It is a utility tool for debugging and testing and it
193
+ * will automatically be tree-shaken away during production.
194
+ */
195
+ export declare function generateConfigSummary(source: number): LogSummary;
196
+ export declare function generateConfigSummary(source: StylingContext): LogSummary;
197
+ export declare function generateConfigSummary(source: StylingContext, index: number): LogSummary;
198
+ export declare function getDirectiveIndexFromEntry(context: StylingContext, index: number): number;
199
+ export declare function compareLogSummaries(a: LogSummary, b: LogSummary): string[];
200
+ /**
201
+ * This function is only designed to be called for `[class]` bindings when
202
+ * `[ngClass]` (or something that uses `class` as an input) is present. Once
203
+ * directive host bindings fully work for `[class]` and `[style]` inputs
204
+ * then this can be deleted.
205
+ */
206
+ export declare function getInitialClassNameValue(context: StylingContext): string;
@@ -8,11 +8,12 @@
8
8
  import '../ng_dev_mode';
9
9
  import { StyleSanitizeFn } from '../../sanitization/style_sanitizer';
10
10
  import { LContext } from '../interfaces/context';
11
+ import { TAttributes, TNode } from '../interfaces/node';
11
12
  import { Player, PlayerContext } from '../interfaces/player';
12
13
  import { RElement } from '../interfaces/renderer';
13
- import { InitialStyles, StylingContext } from '../interfaces/styling';
14
- import { LViewData, RootContext } from '../interfaces/view';
15
- export declare function createEmptyStylingContext(element?: RElement | null, sanitizer?: StyleSanitizeFn | null, initialStylingValues?: InitialStyles): StylingContext;
14
+ import { InitialStylingValues, StylingContext } from '../interfaces/styling';
15
+ import { LView, RootContext } from '../interfaces/view';
16
+ export declare function createEmptyStylingContext(element?: RElement | null, sanitizer?: StyleSanitizeFn | null, initialStyles?: InitialStylingValues | null, initialClasses?: InitialStylingValues | null): StylingContext;
16
17
  /**
17
18
  * Used clone a copy of a pre-computed template of a styling context.
18
19
  *
@@ -31,10 +32,14 @@ export declare function allocStylingContext(element: RElement | null, templateSt
31
32
  * @param index Index of the style allocation. See: `elementStyling`.
32
33
  * @param viewData The view to search for the styling context
33
34
  */
34
- export declare function getStylingContext(index: number, viewData: LViewData): StylingContext;
35
+ export declare function getStylingContext(index: number, viewData: LView): StylingContext;
36
+ export declare function isStylingContext(value: any): value is StylingContext;
37
+ export declare function isAnimationProp(name: string): boolean;
35
38
  export declare function addPlayerInternal(playerContext: PlayerContext, rootContext: RootContext, element: HTMLElement, player: Player | null, playerContextIndex: number, ref?: any): boolean;
36
39
  export declare function getPlayersInternal(playerContext: PlayerContext): Player[];
37
40
  export declare function getOrCreatePlayerContext(target: {}, context?: LContext | null): PlayerContext | null;
38
41
  export declare function getPlayerContext(stylingContext: StylingContext): PlayerContext | null;
39
42
  export declare function allocPlayerContext(data: StylingContext): PlayerContext;
40
43
  export declare function throwInvalidRefError(): void;
44
+ export declare function hasStyling(attrs: TAttributes): boolean;
45
+ export declare function hasClassInput(tNode: TNode): boolean;
@@ -12,60 +12,59 @@ import { RelativeInjectorLocation } from './interfaces/injector';
12
12
  import { TContainerNode, TElementNode, TNode } from './interfaces/node';
13
13
  import { RComment, RElement, RText } from './interfaces/renderer';
14
14
  import { StylingContext } from './interfaces/styling';
15
- import { LViewData, RootContext, TData } from './interfaces/view';
15
+ import { LView, RootContext, TData } from './interfaces/view';
16
16
  /**
17
17
  * Returns whether the values are different from a change detection stand point.
18
18
  *
19
19
  * Constraints are relaxed in checkNoChanges mode. See `devModeEqual` for details.
20
20
  */
21
- export declare function isDifferent(a: any, b: any, checkNoChangesMode: boolean): boolean;
21
+ export declare function isDifferent(a: any, b: any): boolean;
22
22
  export declare function stringify(value: any): string;
23
23
  /**
24
24
  * Flattens an array in non-recursive way. Input arrays are not modified.
25
25
  */
26
26
  export declare function flatten(list: any[]): any[];
27
- /** Retrieves a value from any `LViewData` or `TData`. */
28
- export declare function loadInternal<T>(index: number, arr: LViewData | TData): T;
29
- export declare function assertDataInRangeInternal(index: number, arr: any[]): void;
27
+ /** Retrieves a value from any `LView` or `TData`. */
28
+ export declare function loadInternal<T>(view: LView | TData, index: number): T;
30
29
  /**
31
- * Takes the value of a slot in `LViewData` and returns the element node.
30
+ * Takes the value of a slot in `LView` and returns the element node.
32
31
  *
33
32
  * Normally, element nodes are stored flat, but if the node has styles/classes on it,
34
33
  * it might be wrapped in a styling context. Or if that node has a directive that injects
35
34
  * ViewContainerRef, it may be wrapped in an LContainer. Or if that node is a component,
36
- * it will be wrapped in LViewData. It could even have all three, so we keep looping
35
+ * it will be wrapped in LView. It could even have all three, so we keep looping
37
36
  * until we find something that isn't an array.
38
37
  *
39
- * @param value The initial value in `LViewData`
38
+ * @param value The initial value in `LView`
40
39
  */
41
- export declare function readElementValue(value: RElement | StylingContext | LContainer | LViewData): RElement;
40
+ export declare function readElementValue(value: RElement | StylingContext | LContainer | LView): RElement;
42
41
  /**
43
42
  * Retrieves an element value from the provided `viewData`, by unwrapping
44
43
  * from any containers, component views, or style contexts.
45
44
  */
46
- export declare function getNativeByIndex(index: number, arr: LViewData): RElement;
47
- export declare function getNativeByTNode(tNode: TNode, hostView: LViewData): RElement | RText | RComment;
48
- export declare function getTNode(index: number, view: LViewData): TNode;
49
- export declare function getComponentViewByIndex(nodeIndex: number, hostView: LViewData): LViewData;
45
+ export declare function getNativeByIndex(index: number, lView: LView): RElement;
46
+ export declare function getNativeByTNode(tNode: TNode, hostView: LView): RElement | RText | RComment;
47
+ export declare function getTNode(index: number, view: LView): TNode;
48
+ export declare function getComponentViewByIndex(nodeIndex: number, hostView: LView): LView;
50
49
  export declare function isContentQueryHost(tNode: TNode): boolean;
51
50
  export declare function isComponent(tNode: TNode): boolean;
52
51
  export declare function isComponentDef<T>(def: DirectiveDef<T>): def is ComponentDef<T>;
53
52
  export declare function isLContainer(value: RElement | RComment | LContainer | StylingContext): boolean;
54
- export declare function isRootView(target: LViewData): boolean;
53
+ export declare function isRootView(target: LView): boolean;
55
54
  /**
56
- * Retrieve the root view from any component by walking the parent `LViewData` until
57
- * reaching the root `LViewData`.
55
+ * Retrieve the root view from any component by walking the parent `LView` until
56
+ * reaching the root `LView`.
58
57
  *
59
58
  * @param component any component
60
59
  */
61
- export declare function getRootView(target: LViewData | {}): LViewData;
62
- export declare function getRootContext(viewOrComponent: LViewData | {}): RootContext;
60
+ export declare function getRootView(target: LView | {}): LView;
61
+ export declare function getRootContext(viewOrComponent: LView | {}): RootContext;
63
62
  /**
64
63
  * Returns the monkey-patch value data present on the target (which could be
65
64
  * a component, directive or a DOM node).
66
65
  */
67
- export declare function readPatchedData(target: any): LViewData | LContext | null;
68
- export declare function readPatchedLViewData(target: any): LViewData | null;
66
+ export declare function readPatchedData(target: any): LView | LContext | null;
67
+ export declare function readPatchedLView(target: any): LView | null;
69
68
  export declare function hasParentInjector(parentLocation: RelativeInjectorLocation): boolean;
70
69
  export declare function getParentInjectorIndex(parentLocation: RelativeInjectorLocation): number;
71
70
  export declare function getParentInjectorViewOffset(parentLocation: RelativeInjectorLocation): number;
@@ -75,20 +74,20 @@ export declare function getParentInjectorViewOffset(parentLocation: RelativeInje
75
74
  * injector.
76
75
  *
77
76
  * @param location The location of the parent injector, which contains the view offset
78
- * @param startView The LViewData instance from which to start walking up the view tree
79
- * @returns The LViewData instance that contains the parent injector
77
+ * @param startView The LView instance from which to start walking up the view tree
78
+ * @returns The LView instance that contains the parent injector
80
79
  */
81
- export declare function getParentInjectorView(location: RelativeInjectorLocation, startView: LViewData): LViewData;
80
+ export declare function getParentInjectorView(location: RelativeInjectorLocation, startView: LView): LView;
82
81
  /**
83
82
  * Unwraps a parent injector location number to find the view offset from the current injector,
84
83
  * then walks up the declaration view tree until the TNode of the parent injector is found.
85
84
  *
86
85
  * @param location The location of the parent injector, which contains the view offset
87
- * @param startView The LViewData instance from which to start walking up the view tree
86
+ * @param startView The LView instance from which to start walking up the view tree
88
87
  * @param startTNode The TNode instance of the starting element
89
88
  * @returns The TNode of the parent injector
90
89
  */
91
- export declare function getParentInjectorTNode(location: RelativeInjectorLocation, startView: LViewData, startTNode: TNode): TElementNode | TContainerNode | null;
90
+ export declare function getParentInjectorTNode(location: RelativeInjectorLocation, startView: LView, startTNode: TNode): TElementNode | TContainerNode | null;
92
91
  export declare const defaultScheduler: any;
93
92
  /**
94
93
  * Equivalent to ES6 spread, add each item to an array.
@@ -97,3 +96,10 @@ export declare const defaultScheduler: any;
97
96
  * @param arr The array to which you want to add the items
98
97
  */
99
98
  export declare function addAllToArray(items: any[], arr: any[]): void;
99
+ /**
100
+ * Given a current view, finds the nearest component's host (LElement).
101
+ *
102
+ * @param lView LView for which we want a host element node
103
+ * @returns The host node
104
+ */
105
+ export declare function findComponentView(lView: LView): LView;
@@ -6,13 +6,12 @@
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
8
  import { ChangeDetectorRef as ViewEngine_ChangeDetectorRef } from '../change_detection/change_detector_ref';
9
- import { Injector } from '../di/injector';
10
9
  import { ElementRef as ViewEngine_ElementRef } from '../linker/element_ref';
11
10
  import { TemplateRef as ViewEngine_TemplateRef } from '../linker/template_ref';
12
11
  import { ViewContainerRef as ViewEngine_ViewContainerRef } from '../linker/view_container_ref';
13
12
  import { Renderer2 } from '../render/api';
14
13
  import { TContainerNode, TElementContainerNode, TElementNode, TNode } from './interfaces/node';
15
- import { LViewData } from './interfaces/view';
14
+ import { LView } from './interfaces/view';
16
15
  /**
17
16
  * Creates an ElementRef from the most recent node.
18
17
  *
@@ -27,7 +26,7 @@ export declare function injectElementRef(ElementRefToken: typeof ViewEngine_Elem
27
26
  * @param view The view to which the node belongs
28
27
  * @returns The ElementRef instance to use
29
28
  */
30
- export declare function createElementRef(ElementRefToken: typeof ViewEngine_ElementRef, tNode: TNode, view: LViewData): ViewEngine_ElementRef;
29
+ export declare function createElementRef(ElementRefToken: typeof ViewEngine_ElementRef, tNode: TNode, view: LView): ViewEngine_ElementRef;
31
30
  /**
32
31
  * Creates a TemplateRef given a node.
33
32
  *
@@ -43,7 +42,7 @@ export declare function injectTemplateRef<T>(TemplateRefToken: typeof ViewEngine
43
42
  * @param hostView The view to which the node belongs
44
43
  * @returns The TemplateRef instance to use
45
44
  */
46
- export declare function createTemplateRef<T>(TemplateRefToken: typeof ViewEngine_TemplateRef, ElementRefToken: typeof ViewEngine_ElementRef, hostTNode: TNode, hostView: LViewData): ViewEngine_TemplateRef<T> | null;
45
+ export declare function createTemplateRef<T>(TemplateRefToken: typeof ViewEngine_TemplateRef, ElementRefToken: typeof ViewEngine_ElementRef, hostTNode: TNode, hostView: LView): ViewEngine_TemplateRef<T> | null;
47
46
  /**
48
47
  * Creates a ViewContainerRef and stores it on the injector. Or, if the ViewContainerRef
49
48
  * already exists, retrieves the existing ViewContainerRef.
@@ -51,12 +50,6 @@ export declare function createTemplateRef<T>(TemplateRefToken: typeof ViewEngine
51
50
  * @returns The ViewContainerRef instance to use
52
51
  */
53
52
  export declare function injectViewContainerRef(ViewContainerRefToken: typeof ViewEngine_ViewContainerRef, ElementRefToken: typeof ViewEngine_ElementRef): ViewEngine_ViewContainerRef;
54
- export declare class NodeInjector implements Injector {
55
- private _tNode;
56
- private _hostView;
57
- constructor(_tNode: TElementNode | TContainerNode | TElementContainerNode, _hostView: LViewData);
58
- get(token: any, notFoundValue?: any): any;
59
- }
60
53
  /**
61
54
  * Creates a ViewContainerRef and stores it on the injector.
62
55
  *
@@ -66,7 +59,7 @@ export declare class NodeInjector implements Injector {
66
59
  * @param hostView The view to which the node belongs
67
60
  * @returns The ViewContainerRef instance to use
68
61
  */
69
- export declare function createContainerRef(ViewContainerRefToken: typeof ViewEngine_ViewContainerRef, ElementRefToken: typeof ViewEngine_ElementRef, hostTNode: TElementNode | TContainerNode | TElementContainerNode, hostView: LViewData): ViewEngine_ViewContainerRef;
62
+ export declare function createContainerRef(ViewContainerRefToken: typeof ViewEngine_ViewContainerRef, ElementRefToken: typeof ViewEngine_ElementRef, hostTNode: TElementNode | TContainerNode | TElementContainerNode, hostView: LView): ViewEngine_ViewContainerRef;
70
63
  /** Returns a ChangeDetectorRef (a.k.a. a ViewRef) */
71
64
  export declare function injectChangeDetectorRef(): ViewEngine_ChangeDetectorRef;
72
65
  /**
@@ -77,6 +70,6 @@ export declare function injectChangeDetectorRef(): ViewEngine_ChangeDetectorRef;
77
70
  * @param context The context for this change detector ref
78
71
  * @returns The ChangeDetectorRef to use
79
72
  */
80
- export declare function createViewRef(hostTNode: TNode, hostView: LViewData, context: any): ViewEngine_ChangeDetectorRef;
73
+ export declare function createViewRef(hostTNode: TNode, hostView: LView, context: any): ViewEngine_ChangeDetectorRef;
81
74
  /** Returns a Renderer2 (or throws when application was bootstrapped with Renderer3) */
82
75
  export declare function injectRenderer2(): Renderer2;
@@ -7,9 +7,9 @@
7
7
  */
8
8
  import { TemplateRef as ViewEngine_TemplateRef } from '../linker/template_ref';
9
9
  import { TNode } from './interfaces/node';
10
- import { LViewData } from './interfaces/view';
10
+ import { LView } from './interfaces/view';
11
11
  /**
12
12
  * Retrieves `TemplateRef` instance from `Injector` when a local reference is placed on the
13
13
  * `<ng-template>` element.
14
14
  */
15
- export declare function templateRefExtractor(tNode: TNode, currentView: LViewData): ViewEngine_TemplateRef<{}> | null;
15
+ export declare function templateRefExtractor(tNode: TNode, currentView: LView): ViewEngine_TemplateRef<{}> | null;
@@ -9,7 +9,7 @@ import { ApplicationRef } from '../application_ref';
9
9
  import { ChangeDetectorRef as viewEngine_ChangeDetectorRef } from '../change_detection/change_detector_ref';
10
10
  import { ViewContainerRef as viewEngine_ViewContainerRef } from '../linker/view_container_ref';
11
11
  import { EmbeddedViewRef as viewEngine_EmbeddedViewRef, InternalViewRef as viewEngine_InternalViewRef } from '../linker/view_ref';
12
- import { LViewData } from './interfaces/view';
12
+ import { LView } from './interfaces/view';
13
13
  export interface viewEngine_ChangeDetectorRef_interface extends viewEngine_ChangeDetectorRef {
14
14
  }
15
15
  export declare class ViewRef<T> implements viewEngine_EmbeddedViewRef<T>, viewEngine_InternalViewRef, viewEngine_ChangeDetectorRef_interface {
@@ -18,7 +18,7 @@ export declare class ViewRef<T> implements viewEngine_EmbeddedViewRef<T>, viewEn
18
18
  private _appRef;
19
19
  private _viewContainerRef;
20
20
  readonly rootNodes: any[];
21
- constructor(_view: LViewData, _context: T | null, _componentIndex: number);
21
+ constructor(_lView: LView, _context: T | null, _componentIndex: number);
22
22
  readonly context: T;
23
23
  readonly destroyed: boolean;
24
24
  destroy(): void;
@@ -62,11 +62,12 @@ export declare function sanitizeResourceUrl(unsafeResourceUrl: any): string;
62
62
  /**
63
63
  * A `script` sanitizer which only lets trusted javascript through.
64
64
  *
65
- * This passes only `script`s marked trusted by calling {@link bypassSanitizationTrustScript}.
65
+ * This passes only `script`s marked trusted by calling {@link
66
+ * bypassSanitizationTrustScript}.
66
67
  *
67
68
  * @param unsafeScript untrusted `script`, typically from the user.
68
69
  * @returns `url` string which is safe to bind to the `<script>` element such as `<img src>`,
69
- * because only trusted `scripts`s have been allowed to pass.
70
+ * because only trusted `scripts` have been allowed to pass.
70
71
  */
71
72
  export declare function sanitizeScript(unsafeScript: any): string;
72
73
  /**
@@ -99,12 +99,15 @@ export declare class TestBedRender3 implements Injector, TestBed {
99
99
  private _pipeOverrides;
100
100
  private _providerOverrides;
101
101
  private _rootProviderOverrides;
102
+ private _providerOverridesByToken;
103
+ private _templateOverrides;
102
104
  private _providers;
103
105
  private _declarations;
104
106
  private _imports;
105
107
  private _schemas;
106
108
  private _activeFixtures;
107
109
  private _moduleRef;
110
+ private _testModuleType;
108
111
  private _instantiated;
109
112
  /**
110
113
  * Initialize the environment for testing with a compiler factory, a PlatformRef, and an
@@ -161,8 +164,20 @@ export declare class TestBedRender3 implements Injector, TestBed {
161
164
  }): void;
162
165
  createComponent<T>(type: Type<T>): ComponentFixture<T>;
163
166
  private _initIfNeeded;
167
+ private _getProviderOverrides;
164
168
  private _getResolvers;
165
169
  private _assertNotInstantiated;
166
170
  private _createTestModule;
171
+ private _getMetaWithOverrides;
172
+ private _compileNgModule;
173
+ /**
174
+ * Compute the pair of transitive scopes (compilation scope and exported scope) for a given
175
+ * module.
176
+ *
177
+ * This operation is memoized and the result is cached on the module's definition. It can be
178
+ * called on modules with components that have not fully compiled yet, but the result should not
179
+ * be used until they have.
180
+ */
181
+ private _transitiveScopesFor;
167
182
  }
168
183
  export declare function _getTestBedRender3(): TestBedRender3;
@@ -25,10 +25,10 @@ declare abstract class OverrideResolver<T> implements Resolver<T> {
25
25
  resolve(type: Type<any>): T | null;
26
26
  }
27
27
  export declare class DirectiveResolver extends OverrideResolver<Directive> {
28
- readonly type: import("@angular/core/src/metadata/directives").DirectiveDecorator;
28
+ readonly type: import("@angular/core").DirectiveDecorator;
29
29
  }
30
30
  export declare class ComponentResolver extends OverrideResolver<Component> {
31
- readonly type: import("@angular/core/src/metadata/directives").ComponentDecorator;
31
+ readonly type: import("@angular/core").ComponentDecorator;
32
32
  }
33
33
  export declare class PipeResolver extends OverrideResolver<Pipe> {
34
34
  readonly type: import("@angular/core/src/metadata/directives").PipeDecorator;
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"ɵangular_packages_core_testing_testing_a":{"__symbolic":"class","members":{"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_createCompilerAndModule":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"overrideProviderImpl":[{"__symbolic":"method"}],"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"getTestBed"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":240,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":645,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":645,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}}}},"async":{"__symbolic":"function"},"ComponentFixture":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ComponentRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":53,"character":40,"context":{"typeName":"T"},"module":"./src/component_fixture"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":53,"character":59},{"__symbolic":"reference","name":"boolean"}]}],"_tick":[{"__symbolic":"method"}],"detectChanges":[{"__symbolic":"method"}],"checkNoChanges":[{"__symbolic":"method"}],"autoDetectChanges":[{"__symbolic":"method"}],"isStable":[{"__symbolic":"method"}],"whenStable":[{"__symbolic":"method"}],"_getRenderer":[{"__symbolic":"method"}],"whenRenderingDone":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}]}},"resetFakeAsyncZone":{"__symbolic":"function"},"fakeAsync":{"__symbolic":"function"},"tick":{"__symbolic":"function"},"flush":{"__symbolic":"function"},"discardPeriodicTasks":{"__symbolic":"function"},"flushMicrotasks":{"__symbolic":"function"},"TestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":632,"character":4},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"},"elseExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_a"}},"getTestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":641,"character":41},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"},"elseExpression":{"__symbolic":"error","message":"Reference to a non-exported function","line":645,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"inject":{"__symbolic":"function"},"InjectSetupWrapper":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":696,"character":34,"module":"./src/test_bed"}]}],"_addModule":[{"__symbolic":"method"}],"inject":[{"__symbolic":"method"}]}},"withModule":{"__symbolic":"function"},"TestComponentRenderer":{"__symbolic":"class","members":{"insertRootElement":[{"__symbolic":"method"}]}},"ComponentFixtureAutoDetect":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":27,"character":8},"arguments":["ComponentFixtureAutoDetect"]},"ComponentFixtureNoNgZone":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":32,"character":44},"arguments":["ComponentFixtureNoNgZone"]},"TestModuleMetadata":{"__symbolic":"interface"},"TestBedStatic":{"__symbolic":"interface"},"MetadataOverride":{"__symbolic":"interface"},"ɵMetadataOverrider":{"__symbolic":"class","members":{"overrideMetadata":[{"__symbolic":"method"}]}},"ɵTestingCompiler":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":22,"character":37},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":21,"character":1}}],"members":{"overrideModule":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"loadAotSummaries":[{"__symbolic":"method"}],"getComponentFactory":[{"__symbolic":"method"}],"getComponentFromError":[{"__symbolic":"method"}]}},"ɵTestingCompilerFactory":{"__symbolic":"class","members":{"createTestingCompiler":[{"__symbolic":"method"}]}},"ɵangular_packages_core_testing_testing_b":{"__symbolic":"class","members":{"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_getResolvers":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"_createTestModule":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":151,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"get"},"arguments":[{"__symbolic":"reference","name":"token"},{"__symbolic":"reference","name":"notFoundValue"}]}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"createComponent"},"arguments":[{"__symbolic":"reference","name":"component"}]}}}},"ɵangular_packages_core_testing_testing_c":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"binop","operator":"=","left":{"__symbolic":"error","message":"Reference to a local symbol","line":448,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":448,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"}}}}}},"origins":{"ɵangular_packages_core_testing_testing_a":"./src/test_bed","async":"./src/async","ComponentFixture":"./src/component_fixture","resetFakeAsyncZone":"./src/fake_async","fakeAsync":"./src/fake_async","tick":"./src/fake_async","flush":"./src/fake_async","discardPeriodicTasks":"./src/fake_async","flushMicrotasks":"./src/fake_async","TestBed":"./src/test_bed","getTestBed":"./src/test_bed","inject":"./src/test_bed","InjectSetupWrapper":"./src/test_bed","withModule":"./src/test_bed","TestComponentRenderer":"./src/test_bed_common","ComponentFixtureAutoDetect":"./src/test_bed_common","ComponentFixtureNoNgZone":"./src/test_bed_common","TestModuleMetadata":"./src/test_bed_common","TestBedStatic":"./src/test_bed_common","__core_private_testing_placeholder__":"./src/before_each","MetadataOverride":"./src/metadata_override","ɵMetadataOverrider":"./src/metadata_overrider","ɵTestingCompiler":"./src/test_compiler","ɵTestingCompilerFactory":"./src/test_compiler","ɵangular_packages_core_testing_testing_b":"./src/r3_test_bed","ɵangular_packages_core_testing_testing_c":"./src/r3_test_bed"},"importAs":"@angular/core/testing"}
1
+ {"__symbolic":"module","version":4,"metadata":{"ɵangular_packages_core_testing_testing_a":{"__symbolic":"class","members":{"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_createCompilerAndModule":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"overrideProviderImpl":[{"__symbolic":"method"}],"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"getTestBed"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":241,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}}}},"async":{"__symbolic":"function"},"ComponentFixture":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"ComponentRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":53,"character":40,"context":{"typeName":"T"},"module":"./src/component_fixture"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":53,"character":59},{"__symbolic":"reference","name":"boolean"}]}],"_tick":[{"__symbolic":"method"}],"detectChanges":[{"__symbolic":"method"}],"checkNoChanges":[{"__symbolic":"method"}],"autoDetectChanges":[{"__symbolic":"method"}],"isStable":[{"__symbolic":"method"}],"whenStable":[{"__symbolic":"method"}],"_getRenderer":[{"__symbolic":"method"}],"whenRenderingDone":[{"__symbolic":"method"}],"destroy":[{"__symbolic":"method"}]}},"resetFakeAsyncZone":{"__symbolic":"function"},"fakeAsync":{"__symbolic":"function"},"tick":{"__symbolic":"function"},"flush":{"__symbolic":"function"},"discardPeriodicTasks":{"__symbolic":"function"},"flushMicrotasks":{"__symbolic":"function"},"TestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":633,"character":4},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"},"elseExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_a"}},"getTestBed":{"__symbolic":"if","condition":{"__symbolic":"reference","module":"@angular/core","name":"ɵivyEnabled","line":642,"character":41},"thenExpression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"},"elseExpression":{"__symbolic":"error","message":"Reference to a non-exported function","line":646,"character":9,"context":{"name":"_getTestBedViewEngine"},"module":"./src/test_bed"}},"inject":{"__symbolic":"function"},"InjectSetupWrapper":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"error","message":"Expression form not supported","line":697,"character":34,"module":"./src/test_bed"}]}],"_addModule":[{"__symbolic":"method"}],"inject":[{"__symbolic":"method"}]}},"withModule":{"__symbolic":"function"},"TestComponentRenderer":{"__symbolic":"class","members":{"insertRootElement":[{"__symbolic":"method"}]}},"ComponentFixtureAutoDetect":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":27,"character":8},"arguments":["ComponentFixtureAutoDetect"]},"ComponentFixtureNoNgZone":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":32,"character":44},"arguments":["ComponentFixtureNoNgZone"]},"TestModuleMetadata":{"__symbolic":"interface"},"TestBedStatic":{"__symbolic":"interface"},"MetadataOverride":{"__symbolic":"interface"},"ɵMetadataOverrider":{"__symbolic":"class","members":{"overrideMetadata":[{"__symbolic":"method"}]}},"ɵTestingCompiler":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@angular/core","name":"Compiler","line":22,"character":37},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":21,"character":1}}],"members":{"overrideModule":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"loadAotSummaries":[{"__symbolic":"method"}],"getComponentFactory":[{"__symbolic":"method"}],"getComponentFromError":[{"__symbolic":"method"}]}},"ɵTestingCompilerFactory":{"__symbolic":"class","members":{"createTestingCompiler":[{"__symbolic":"method"}]}},"ɵangular_packages_core_testing_testing_b":{"__symbolic":"class","members":{"overrideTemplateUsingTestingModule":[{"__symbolic":"method"}],"initTestEnvironment":[{"__symbolic":"method"}],"resetTestEnvironment":[{"__symbolic":"method"}],"resetTestingModule":[{"__symbolic":"method"}],"configureCompiler":[{"__symbolic":"method"}],"configureTestingModule":[{"__symbolic":"method"}],"compileComponents":[{"__symbolic":"method"}],"get":[{"__symbolic":"method"}],"execute":[{"__symbolic":"method"}],"overrideModule":[{"__symbolic":"method"}],"overrideComponent":[{"__symbolic":"method"}],"overrideDirective":[{"__symbolic":"method"}],"overridePipe":[{"__symbolic":"method"}],"overrideProvider":[{"__symbolic":"method"}],"deprecatedOverrideProvider":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}],"createComponent":[{"__symbolic":"method"}],"_initIfNeeded":[{"__symbolic":"method"}],"_getProviderOverrides":[{"__symbolic":"method"}],"_getResolvers":[{"__symbolic":"method"}],"_assertNotInstantiated":[{"__symbolic":"method"}],"_createTestModule":[{"__symbolic":"method"}],"_getMetaWithOverrides":[{"__symbolic":"method"}],"_compileNgModule":[{"__symbolic":"method"}],"_transitiveScopesFor":[{"__symbolic":"method"}]},"statics":{"compileComponents":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"compileComponents"}}},"get":{"__symbolic":"function","parameters":["token","notFoundValue"],"defaults":[null,{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":165,"character":46},"member":"THROW_IF_NOT_FOUND"}],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"get"},"arguments":[{"__symbolic":"reference","name":"token"},{"__symbolic":"reference","name":"notFoundValue"}]}},"createComponent":{"__symbolic":"function","parameters":["component"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_c"}},"member":"createComponent"},"arguments":[{"__symbolic":"reference","name":"component"}]}}}},"ɵangular_packages_core_testing_testing_c":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"binop","operator":"=","left":{"__symbolic":"error","message":"Reference to a local symbol","line":640,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"binop","operator":"||","left":{"__symbolic":"error","message":"Reference to a local symbol","line":640,"character":4,"context":{"name":"testBed"},"module":"./src/r3_test_bed"},"right":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ɵangular_packages_core_testing_testing_b"}}}}}},"origins":{"ɵangular_packages_core_testing_testing_a":"./src/test_bed","async":"./src/async","ComponentFixture":"./src/component_fixture","resetFakeAsyncZone":"./src/fake_async","fakeAsync":"./src/fake_async","tick":"./src/fake_async","flush":"./src/fake_async","discardPeriodicTasks":"./src/fake_async","flushMicrotasks":"./src/fake_async","TestBed":"./src/test_bed","getTestBed":"./src/test_bed","inject":"./src/test_bed","InjectSetupWrapper":"./src/test_bed","withModule":"./src/test_bed","TestComponentRenderer":"./src/test_bed_common","ComponentFixtureAutoDetect":"./src/test_bed_common","ComponentFixtureNoNgZone":"./src/test_bed_common","TestModuleMetadata":"./src/test_bed_common","TestBedStatic":"./src/test_bed_common","__core_private_testing_placeholder__":"./src/before_each","MetadataOverride":"./src/metadata_override","ɵMetadataOverrider":"./src/metadata_overrider","ɵTestingCompiler":"./src/test_compiler","ɵTestingCompilerFactory":"./src/test_compiler","ɵangular_packages_core_testing_testing_b":"./src/r3_test_bed","ɵangular_packages_core_testing_testing_c":"./src/r3_test_bed"},"importAs":"@angular/core/testing"}
package/testing.d.ts CHANGED
@@ -1,3 +1,8 @@
1
+ /**
2
+ * @license Angular v7.2.0
3
+ * (c) 2010-2018 Google, Inc. https://angular.io/
4
+ * License: MIT
5
+ */
1
6
 
2
7
  export * from './testing/testing';
3
8