@angular/core 7.2.0-rc.0 → 7.2.3

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 (434) hide show
  1. package/bundles/core-testing.umd.js +193 -131
  2. package/bundles/core-testing.umd.js.map +1 -1
  3. package/bundles/core-testing.umd.min.js +11 -11
  4. package/bundles/core-testing.umd.min.js.map +1 -1
  5. package/bundles/core.umd.js +1777 -1329
  6. package/bundles/core.umd.js.map +1 -1
  7. package/bundles/core.umd.min.js +111 -125
  8. package/bundles/core.umd.min.js.map +1 -1
  9. package/core.metadata.json +1 -1
  10. package/esm2015/core.js +1 -1
  11. package/esm2015/index.js +2 -2
  12. package/esm2015/public_api.js +2 -2
  13. package/esm2015/src/application_init.js +1 -1
  14. package/esm2015/src/application_module.js +1 -1
  15. package/esm2015/src/application_ref.js +1 -1
  16. package/esm2015/src/application_tokens.js +1 -1
  17. package/esm2015/src/change_detection/change_detection.js +1 -1
  18. package/esm2015/src/change_detection/change_detection_util.js +1 -1
  19. package/esm2015/src/change_detection/change_detector_ref.js +1 -1
  20. package/esm2015/src/change_detection/constants.js +3 -3
  21. package/esm2015/src/change_detection/differs/default_iterable_differ.js +1 -1
  22. package/esm2015/src/change_detection/differs/default_keyvalue_differ.js +1 -1
  23. package/esm2015/src/change_detection/differs/iterable_differs.js +1 -1
  24. package/esm2015/src/change_detection/differs/keyvalue_differs.js +1 -1
  25. package/esm2015/src/change_detection/pipe_transform.js +1 -1
  26. package/esm2015/src/change_detection.js +1 -1
  27. package/esm2015/src/codegen_private_exports.js +1 -1
  28. package/esm2015/src/console.js +1 -1
  29. package/esm2015/src/core.js +2 -2
  30. package/esm2015/src/core_private_export.js +1 -1
  31. package/esm2015/src/core_render3_private_export.js +2 -2
  32. package/esm2015/src/debug/debug_node.js +6 -6
  33. package/esm2015/src/di/defs.js +1 -1
  34. package/esm2015/src/di/forward_ref.js +1 -1
  35. package/esm2015/src/di/injectable.js +1 -1
  36. package/esm2015/src/di/injection_token.js +2 -2
  37. package/esm2015/src/di/injector.js +1 -1
  38. package/esm2015/src/di/injector_compatibility.js +1 -1
  39. package/esm2015/src/di/metadata.js +1 -1
  40. package/esm2015/src/di/provider.js +1 -1
  41. package/esm2015/src/di/r3_injector.js +1 -1
  42. package/esm2015/src/di/reflective_errors.js +1 -1
  43. package/esm2015/src/di/reflective_injector.js +1 -1
  44. package/esm2015/src/di/reflective_key.js +1 -1
  45. package/esm2015/src/di/reflective_provider.js +1 -1
  46. package/esm2015/src/di/scope.js +1 -1
  47. package/esm2015/src/di/util.js +1 -1
  48. package/esm2015/src/di.js +1 -1
  49. package/esm2015/src/error_handler.js +1 -1
  50. package/esm2015/src/errors.js +1 -1
  51. package/esm2015/src/event_emitter.js +1 -1
  52. package/esm2015/src/i18n/tokens.js +1 -1
  53. package/esm2015/src/is_dev_mode.js +1 -1
  54. package/esm2015/src/ivy_switch.js +1 -1
  55. package/esm2015/src/linker/compiler.js +1 -1
  56. package/esm2015/src/linker/component_factory.js +1 -1
  57. package/esm2015/src/linker/component_factory_resolver.js +1 -1
  58. package/esm2015/src/linker/element_ref.js +1 -1
  59. package/esm2015/src/linker/ng_module_factory.js +1 -1
  60. package/esm2015/src/linker/ng_module_factory_loader.js +1 -1
  61. package/esm2015/src/linker/query_list.js +1 -1
  62. package/esm2015/src/linker/system_js_ng_module_factory_loader.js +1 -1
  63. package/esm2015/src/linker/template_ref.js +6 -4
  64. package/esm2015/src/linker/view_container_ref.js +1 -1
  65. package/esm2015/src/linker/view_ref.js +1 -1
  66. package/esm2015/src/linker.js +1 -1
  67. package/esm2015/src/metadata/di.js +1 -1
  68. package/esm2015/src/metadata/directives.js +1 -1
  69. package/esm2015/src/metadata/lifecycle_hooks.js +1 -1
  70. package/esm2015/src/metadata/ng_module.js +1 -1
  71. package/esm2015/src/metadata/resource_loading.js +1 -1
  72. package/esm2015/src/metadata/view.js +1 -1
  73. package/esm2015/src/metadata.js +1 -1
  74. package/esm2015/src/platform_core_providers.js +1 -1
  75. package/esm2015/src/profile/profile.js +1 -1
  76. package/esm2015/src/profile/wtf_impl.js +1 -1
  77. package/esm2015/src/r3_symbols.js +1 -1
  78. package/esm2015/src/reflection/platform_reflection_capabilities.js +1 -1
  79. package/esm2015/src/reflection/reflection.js +1 -1
  80. package/esm2015/src/reflection/reflection_capabilities.js +1 -1
  81. package/esm2015/src/reflection/reflector.js +1 -1
  82. package/esm2015/src/reflection/types.js +1 -1
  83. package/esm2015/src/render/api.js +1 -1
  84. package/esm2015/src/render.js +1 -1
  85. package/esm2015/src/render3/assert.js +1 -1
  86. package/esm2015/src/render3/bindings.js +3 -3
  87. package/esm2015/src/render3/component.js +8 -6
  88. package/esm2015/src/render3/component_ref.js +5 -5
  89. package/esm2015/src/render3/context_discovery.js +2 -2
  90. package/esm2015/src/render3/definition.js +3 -10
  91. package/esm2015/src/render3/di.js +107 -93
  92. package/esm2015/src/render3/di_setup.js +1 -1
  93. package/esm2015/src/render3/discovery_utils.js +5 -5
  94. package/esm2015/src/render3/empty.js +28 -0
  95. package/esm2015/src/render3/errors.js +1 -1
  96. package/esm2015/src/render3/features/inherit_definition_feature.js +3 -3
  97. package/esm2015/src/render3/features/ng_onchanges_feature.js +1 -1
  98. package/esm2015/src/render3/features/providers_feature.js +1 -1
  99. package/esm2015/src/render3/fields.js +1 -1
  100. package/esm2015/src/render3/global_utils.js +1 -1
  101. package/esm2015/src/render3/global_utils_api.js +1 -1
  102. package/esm2015/src/render3/hooks.js +14 -12
  103. package/esm2015/src/render3/i18n.js +3 -3
  104. package/esm2015/src/render3/index.js +2 -2
  105. package/esm2015/src/render3/instructions.js +319 -370
  106. package/esm2015/src/render3/interfaces/container.js +10 -1
  107. package/esm2015/src/render3/interfaces/context.js +1 -1
  108. package/esm2015/src/render3/interfaces/definition.js +1 -6
  109. package/esm2015/src/render3/interfaces/i18n.js +1 -1
  110. package/esm2015/src/render3/interfaces/injector.js +1 -2
  111. package/esm2015/src/render3/interfaces/node.js +37 -2
  112. package/esm2015/src/render3/interfaces/player.js +1 -1
  113. package/esm2015/src/render3/interfaces/projection.js +1 -1
  114. package/esm2015/src/render3/interfaces/query.js +1 -1
  115. package/esm2015/src/render3/interfaces/renderer.js +1 -1
  116. package/esm2015/src/render3/interfaces/sanitization.js +1 -1
  117. package/esm2015/src/render3/interfaces/styling.js +304 -113
  118. package/esm2015/src/render3/interfaces/view.js +15 -7
  119. package/esm2015/src/render3/jit/compiler_facade.js +1 -1
  120. package/esm2015/src/render3/jit/compiler_facade_interface.js +3 -1
  121. package/esm2015/src/render3/jit/directive.js +6 -7
  122. package/esm2015/src/render3/jit/environment.js +3 -1
  123. package/esm2015/src/render3/jit/injectable.js +1 -1
  124. package/esm2015/src/render3/jit/module.js +11 -9
  125. package/esm2015/src/render3/jit/pipe.js +1 -1
  126. package/esm2015/src/render3/jit/util.js +1 -1
  127. package/esm2015/src/render3/metadata.js +1 -1
  128. package/esm2015/src/render3/ng_dev_mode.js +1 -1
  129. package/esm2015/src/render3/ng_module_ref.js +1 -1
  130. package/esm2015/src/render3/node_assert.js +1 -1
  131. package/esm2015/src/render3/node_manipulation.js +5 -22
  132. package/esm2015/src/render3/node_selector_matcher.js +3 -3
  133. package/esm2015/src/render3/pipe.js +2 -2
  134. package/esm2015/src/render3/players.js +1 -1
  135. package/esm2015/src/render3/pure_function.js +3 -3
  136. package/esm2015/src/render3/query.js +3 -3
  137. package/esm2015/src/render3/state.js +14 -20
  138. package/esm2015/src/render3/styling/class_and_style_bindings.js +893 -213
  139. package/esm2015/src/render3/styling/core_player_handler.js +1 -1
  140. package/esm2015/src/render3/styling/player_factory.js +1 -1
  141. package/esm2015/src/render3/styling/util.js +37 -14
  142. package/esm2015/src/render3/tokens.js +1 -1
  143. package/esm2015/src/render3/util.js +21 -5
  144. package/esm2015/src/render3/view_engine_compatibility.js +5 -6
  145. package/esm2015/src/render3/view_engine_compatibility_prebound.js +1 -1
  146. package/esm2015/src/render3/view_ref.js +6 -16
  147. package/esm2015/src/sanitization/bypass.js +1 -1
  148. package/esm2015/src/sanitization/html_sanitizer.js +2 -2
  149. package/esm2015/src/sanitization/inert_body.js +4 -4
  150. package/esm2015/src/sanitization/sanitization.js +1 -1
  151. package/esm2015/src/sanitization/security.js +1 -1
  152. package/esm2015/src/sanitization/style_sanitizer.js +1 -1
  153. package/esm2015/src/sanitization/url_sanitizer.js +1 -1
  154. package/esm2015/src/testability/testability.js +1 -1
  155. package/esm2015/src/type.js +1 -1
  156. package/esm2015/src/util/decorators.js +1 -1
  157. package/esm2015/src/util/lang.js +1 -1
  158. package/esm2015/src/util/ng_reflect.js +1 -1
  159. package/esm2015/src/util/noop.js +1 -1
  160. package/esm2015/src/util/property.js +1 -1
  161. package/esm2015/src/util.js +1 -1
  162. package/esm2015/src/version.js +2 -2
  163. package/esm2015/src/view/element.js +1 -1
  164. package/esm2015/src/view/entrypoint.js +1 -1
  165. package/esm2015/src/view/errors.js +1 -1
  166. package/esm2015/src/view/index.js +1 -1
  167. package/esm2015/src/view/ng_content.js +1 -1
  168. package/esm2015/src/view/ng_module.js +1 -1
  169. package/esm2015/src/view/provider.js +1 -1
  170. package/esm2015/src/view/pure_expression.js +1 -1
  171. package/esm2015/src/view/query.js +1 -1
  172. package/esm2015/src/view/refs.js +1 -1
  173. package/esm2015/src/view/services.js +1 -1
  174. package/esm2015/src/view/text.js +1 -1
  175. package/esm2015/src/view/types.js +1 -1
  176. package/esm2015/src/view/util.js +1 -1
  177. package/esm2015/src/view/view.js +1 -1
  178. package/esm2015/src/view/view_attach.js +1 -1
  179. package/esm2015/src/zone/ng_zone.js +1 -1
  180. package/esm2015/src/zone.js +1 -1
  181. package/esm2015/testing/index.js +1 -1
  182. package/esm2015/testing/public_api.js +1 -1
  183. package/esm2015/testing/src/async.js +1 -1
  184. package/esm2015/testing/src/async_fallback.js +1 -1
  185. package/esm2015/testing/src/async_test_completer.js +1 -1
  186. package/esm2015/testing/src/before_each.js +1 -1
  187. package/esm2015/testing/src/component_fixture.js +1 -1
  188. package/esm2015/testing/src/fake_async.js +1 -1
  189. package/esm2015/testing/src/fake_async_fallback.js +1 -1
  190. package/esm2015/testing/src/lang_utils.js +1 -1
  191. package/esm2015/testing/src/logger.js +1 -1
  192. package/esm2015/testing/src/metadata_override.js +1 -1
  193. package/esm2015/testing/src/metadata_overrider.js +1 -1
  194. package/esm2015/testing/src/ng_zone_mock.js +1 -1
  195. package/esm2015/testing/src/private_export_testing.js +1 -1
  196. package/esm2015/testing/src/r3_test_bed.js +234 -152
  197. package/esm2015/testing/src/resolvers.js +12 -5
  198. package/esm2015/testing/src/test_bed.js +1 -1
  199. package/esm2015/testing/src/test_bed_common.js +1 -1
  200. package/esm2015/testing/src/test_compiler.js +1 -1
  201. package/esm2015/testing/src/testing.js +1 -1
  202. package/esm2015/testing/src/testing_internal.js +2 -2
  203. package/esm2015/testing/testing.js +1 -1
  204. package/esm5/core.js +1 -1
  205. package/esm5/index.js +1 -1
  206. package/esm5/public_api.js +1 -1
  207. package/esm5/src/application_init.js +1 -1
  208. package/esm5/src/application_module.js +1 -1
  209. package/esm5/src/application_ref.js +1 -1
  210. package/esm5/src/application_tokens.js +1 -1
  211. package/esm5/src/change_detection/change_detection.js +1 -1
  212. package/esm5/src/change_detection/change_detection_util.js +1 -1
  213. package/esm5/src/change_detection/change_detector_ref.js +1 -1
  214. package/esm5/src/change_detection/constants.js +3 -3
  215. package/esm5/src/change_detection/differs/default_iterable_differ.js +1 -1
  216. package/esm5/src/change_detection/differs/default_keyvalue_differ.js +1 -1
  217. package/esm5/src/change_detection/differs/iterable_differs.js +1 -1
  218. package/esm5/src/change_detection/differs/keyvalue_differs.js +1 -1
  219. package/esm5/src/change_detection/pipe_transform.js +1 -1
  220. package/esm5/src/change_detection.js +1 -1
  221. package/esm5/src/codegen_private_exports.js +1 -1
  222. package/esm5/src/console.js +1 -1
  223. package/esm5/src/core.js +1 -1
  224. package/esm5/src/core_private_export.js +1 -1
  225. package/esm5/src/core_render3_private_export.js +2 -2
  226. package/esm5/src/debug/debug_node.js +6 -6
  227. package/esm5/src/di/defs.js +1 -1
  228. package/esm5/src/di/forward_ref.js +1 -1
  229. package/esm5/src/di/injectable.js +1 -1
  230. package/esm5/src/di/injection_token.js +2 -2
  231. package/esm5/src/di/injector.js +1 -1
  232. package/esm5/src/di/injector_compatibility.js +1 -1
  233. package/esm5/src/di/metadata.js +1 -1
  234. package/esm5/src/di/provider.js +1 -1
  235. package/esm5/src/di/r3_injector.js +1 -1
  236. package/esm5/src/di/reflective_errors.js +1 -1
  237. package/esm5/src/di/reflective_injector.js +1 -1
  238. package/esm5/src/di/reflective_key.js +1 -1
  239. package/esm5/src/di/reflective_provider.js +1 -1
  240. package/esm5/src/di/scope.js +1 -1
  241. package/esm5/src/di/util.js +1 -1
  242. package/esm5/src/di.js +1 -1
  243. package/esm5/src/error_handler.js +1 -1
  244. package/esm5/src/errors.js +1 -1
  245. package/esm5/src/event_emitter.js +1 -1
  246. package/esm5/src/i18n/tokens.js +1 -1
  247. package/esm5/src/is_dev_mode.js +1 -1
  248. package/esm5/src/ivy_switch.js +1 -1
  249. package/esm5/src/linker/compiler.js +1 -1
  250. package/esm5/src/linker/component_factory.js +1 -1
  251. package/esm5/src/linker/component_factory_resolver.js +1 -1
  252. package/esm5/src/linker/element_ref.js +1 -1
  253. package/esm5/src/linker/ng_module_factory.js +1 -1
  254. package/esm5/src/linker/ng_module_factory_loader.js +1 -1
  255. package/esm5/src/linker/query_list.js +1 -1
  256. package/esm5/src/linker/system_js_ng_module_factory_loader.js +1 -1
  257. package/esm5/src/linker/template_ref.js +1 -1
  258. package/esm5/src/linker/view_container_ref.js +1 -1
  259. package/esm5/src/linker/view_ref.js +1 -1
  260. package/esm5/src/linker.js +1 -1
  261. package/esm5/src/metadata/di.js +1 -1
  262. package/esm5/src/metadata/directives.js +1 -1
  263. package/esm5/src/metadata/lifecycle_hooks.js +1 -1
  264. package/esm5/src/metadata/ng_module.js +1 -1
  265. package/esm5/src/metadata/resource_loading.js +1 -1
  266. package/esm5/src/metadata/view.js +1 -1
  267. package/esm5/src/metadata.js +1 -1
  268. package/esm5/src/platform_core_providers.js +1 -1
  269. package/esm5/src/profile/profile.js +1 -1
  270. package/esm5/src/profile/wtf_impl.js +1 -1
  271. package/esm5/src/r3_symbols.js +1 -1
  272. package/esm5/src/reflection/platform_reflection_capabilities.js +1 -1
  273. package/esm5/src/reflection/reflection.js +1 -1
  274. package/esm5/src/reflection/reflection_capabilities.js +1 -1
  275. package/esm5/src/reflection/reflector.js +1 -1
  276. package/esm5/src/reflection/types.js +1 -1
  277. package/esm5/src/render/api.js +1 -1
  278. package/esm5/src/render.js +1 -1
  279. package/esm5/src/render3/assert.js +1 -1
  280. package/esm5/src/render3/bindings.js +3 -3
  281. package/esm5/src/render3/component.js +8 -6
  282. package/esm5/src/render3/component_ref.js +5 -5
  283. package/esm5/src/render3/context_discovery.js +2 -2
  284. package/esm5/src/render3/definition.js +3 -8
  285. package/esm5/src/render3/di.js +94 -84
  286. package/esm5/src/render3/di_setup.js +1 -1
  287. package/esm5/src/render3/discovery_utils.js +5 -5
  288. package/esm5/src/render3/empty.js +22 -0
  289. package/esm5/src/render3/errors.js +1 -1
  290. package/esm5/src/render3/features/inherit_definition_feature.js +3 -3
  291. package/esm5/src/render3/features/ng_onchanges_feature.js +1 -1
  292. package/esm5/src/render3/features/providers_feature.js +1 -1
  293. package/esm5/src/render3/fields.js +1 -1
  294. package/esm5/src/render3/global_utils.js +1 -1
  295. package/esm5/src/render3/global_utils_api.js +1 -1
  296. package/esm5/src/render3/hooks.js +11 -9
  297. package/esm5/src/render3/i18n.js +3 -3
  298. package/esm5/src/render3/index.js +2 -2
  299. package/esm5/src/render3/instructions.js +282 -282
  300. package/esm5/src/render3/interfaces/container.js +9 -1
  301. package/esm5/src/render3/interfaces/context.js +1 -1
  302. package/esm5/src/render3/interfaces/definition.js +1 -1
  303. package/esm5/src/render3/interfaces/i18n.js +1 -1
  304. package/esm5/src/render3/interfaces/injector.js +1 -1
  305. package/esm5/src/render3/interfaces/node.js +1 -1
  306. package/esm5/src/render3/interfaces/player.js +1 -1
  307. package/esm5/src/render3/interfaces/projection.js +1 -1
  308. package/esm5/src/render3/interfaces/query.js +1 -1
  309. package/esm5/src/render3/interfaces/renderer.js +1 -1
  310. package/esm5/src/render3/interfaces/sanitization.js +1 -1
  311. package/esm5/src/render3/interfaces/styling.js +1 -1
  312. package/esm5/src/render3/interfaces/view.js +1 -1
  313. package/esm5/src/render3/jit/compiler_facade.js +1 -1
  314. package/esm5/src/render3/jit/compiler_facade_interface.js +1 -1
  315. package/esm5/src/render3/jit/directive.js +6 -6
  316. package/esm5/src/render3/jit/environment.js +3 -1
  317. package/esm5/src/render3/jit/injectable.js +1 -1
  318. package/esm5/src/render3/jit/module.js +10 -8
  319. package/esm5/src/render3/jit/pipe.js +1 -1
  320. package/esm5/src/render3/jit/util.js +1 -1
  321. package/esm5/src/render3/metadata.js +1 -1
  322. package/esm5/src/render3/ng_dev_mode.js +1 -1
  323. package/esm5/src/render3/ng_module_ref.js +1 -1
  324. package/esm5/src/render3/node_assert.js +1 -1
  325. package/esm5/src/render3/node_manipulation.js +5 -21
  326. package/esm5/src/render3/node_selector_matcher.js +3 -3
  327. package/esm5/src/render3/pipe.js +2 -2
  328. package/esm5/src/render3/players.js +1 -1
  329. package/esm5/src/render3/pure_function.js +3 -3
  330. package/esm5/src/render3/query.js +3 -3
  331. package/esm5/src/render3/state.js +14 -19
  332. package/esm5/src/render3/styling/class_and_style_bindings.js +681 -210
  333. package/esm5/src/render3/styling/core_player_handler.js +1 -1
  334. package/esm5/src/render3/styling/player_factory.js +1 -1
  335. package/esm5/src/render3/styling/util.js +26 -13
  336. package/esm5/src/render3/tokens.js +1 -1
  337. package/esm5/src/render3/util.js +20 -5
  338. package/esm5/src/render3/view_engine_compatibility.js +5 -6
  339. package/esm5/src/render3/view_engine_compatibility_prebound.js +1 -1
  340. package/esm5/src/render3/view_ref.js +6 -15
  341. package/esm5/src/sanitization/bypass.js +1 -1
  342. package/esm5/src/sanitization/html_sanitizer.js +2 -2
  343. package/esm5/src/sanitization/inert_body.js +4 -4
  344. package/esm5/src/sanitization/sanitization.js +1 -1
  345. package/esm5/src/sanitization/security.js +1 -1
  346. package/esm5/src/sanitization/style_sanitizer.js +1 -1
  347. package/esm5/src/sanitization/url_sanitizer.js +1 -1
  348. package/esm5/src/testability/testability.js +1 -1
  349. package/esm5/src/type.js +1 -1
  350. package/esm5/src/util/decorators.js +1 -1
  351. package/esm5/src/util/lang.js +1 -1
  352. package/esm5/src/util/ng_reflect.js +1 -1
  353. package/esm5/src/util/noop.js +1 -1
  354. package/esm5/src/util/property.js +1 -1
  355. package/esm5/src/util.js +1 -1
  356. package/esm5/src/version.js +2 -2
  357. package/esm5/src/view/element.js +1 -1
  358. package/esm5/src/view/entrypoint.js +1 -1
  359. package/esm5/src/view/errors.js +1 -1
  360. package/esm5/src/view/index.js +1 -1
  361. package/esm5/src/view/ng_content.js +1 -1
  362. package/esm5/src/view/ng_module.js +1 -1
  363. package/esm5/src/view/provider.js +1 -1
  364. package/esm5/src/view/pure_expression.js +1 -1
  365. package/esm5/src/view/query.js +1 -1
  366. package/esm5/src/view/refs.js +1 -1
  367. package/esm5/src/view/services.js +1 -1
  368. package/esm5/src/view/text.js +1 -1
  369. package/esm5/src/view/types.js +1 -1
  370. package/esm5/src/view/util.js +1 -1
  371. package/esm5/src/view/view.js +1 -1
  372. package/esm5/src/view/view_attach.js +1 -1
  373. package/esm5/src/zone/ng_zone.js +1 -1
  374. package/esm5/src/zone.js +1 -1
  375. package/esm5/testing/index.js +1 -1
  376. package/esm5/testing/public_api.js +1 -1
  377. package/esm5/testing/src/async.js +1 -1
  378. package/esm5/testing/src/async_fallback.js +1 -1
  379. package/esm5/testing/src/async_test_completer.js +1 -1
  380. package/esm5/testing/src/before_each.js +1 -1
  381. package/esm5/testing/src/component_fixture.js +1 -1
  382. package/esm5/testing/src/fake_async.js +1 -1
  383. package/esm5/testing/src/fake_async_fallback.js +1 -1
  384. package/esm5/testing/src/lang_utils.js +1 -1
  385. package/esm5/testing/src/logger.js +1 -1
  386. package/esm5/testing/src/metadata_override.js +1 -1
  387. package/esm5/testing/src/metadata_overrider.js +1 -1
  388. package/esm5/testing/src/ng_zone_mock.js +1 -1
  389. package/esm5/testing/src/private_export_testing.js +1 -1
  390. package/esm5/testing/src/r3_test_bed.js +174 -127
  391. package/esm5/testing/src/resolvers.js +11 -6
  392. package/esm5/testing/src/test_bed.js +1 -1
  393. package/esm5/testing/src/test_bed_common.js +1 -1
  394. package/esm5/testing/src/test_compiler.js +1 -1
  395. package/esm5/testing/src/testing.js +1 -1
  396. package/esm5/testing/src/testing_internal.js +2 -2
  397. package/esm5/testing/testing.js +1 -1
  398. package/fesm2015/core.js +2306 -1733
  399. package/fesm2015/core.js.map +1 -1
  400. package/fesm2015/testing.js +223 -150
  401. package/fesm2015/testing.js.map +1 -1
  402. package/fesm5/core.js +1781 -1335
  403. package/fesm5/core.js.map +1 -1
  404. package/fesm5/testing.js +181 -130
  405. package/fesm5/testing.js.map +1 -1
  406. package/package.json +1 -1
  407. package/src/change_detection/constants.d.ts +2 -2
  408. package/src/core_render3_private_export.d.ts +1 -1
  409. package/src/di/injection_token.d.ts +1 -1
  410. package/src/event_emitter.d.ts +2 -2
  411. package/src/linker/template_ref.d.ts +5 -3
  412. package/src/metadata/di.d.ts +1 -3
  413. package/src/metadata/directives.d.ts +3 -3
  414. package/src/render3/definition.d.ts +2 -4
  415. package/src/render3/di.d.ts +4 -3
  416. package/src/render3/empty.d.ts +16 -0
  417. package/src/render3/hooks.d.ts +3 -3
  418. package/src/render3/index.d.ts +1 -1
  419. package/src/render3/instructions.d.ts +117 -72
  420. package/src/render3/interfaces/container.d.ts +1 -0
  421. package/src/render3/interfaces/definition.d.ts +0 -3
  422. package/src/render3/interfaces/injector.d.ts +0 -1
  423. package/src/render3/interfaces/node.d.ts +37 -2
  424. package/src/render3/interfaces/styling.d.ts +392 -117
  425. package/src/render3/interfaces/view.d.ts +14 -6
  426. package/src/render3/jit/compiler_facade_interface.d.ts +2 -0
  427. package/src/render3/node_manipulation.d.ts +0 -7
  428. package/src/render3/state.d.ts +3 -4
  429. package/src/render3/styling/class_and_style_bindings.d.ts +114 -43
  430. package/src/render3/styling/util.d.ts +5 -2
  431. package/src/render3/util.d.ts +7 -0
  432. package/testing/src/r3_test_bed.d.ts +15 -0
  433. package/testing/testing.metadata.json +1 -1
  434. package/testing.d.ts +2 -3
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v7.2.0-rc.0
2
+ * @license Angular v7.2.3
3
3
  * (c) 2010-2018 Google, Inc. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -7,8 +7,8 @@
7
7
  (function (global, factory) {
8
8
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core')) :
9
9
  typeof define === 'function' && define.amd ? define('@angular/core/testing', ['exports', '@angular/core'], factory) :
10
- (factory((global.ng = global.ng || {}, global.ng.core = global.ng.core || {}, global.ng.core.testing = {}),global.ng.core));
11
- }(this, (function (exports,core) { 'use strict';
10
+ (global = global || self, factory((global.ng = global.ng || {}, global.ng.core = global.ng.core || {}, global.ng.core.testing = {}), global.ng.core));
11
+ }(this, function (exports, core) { 'use strict';
12
12
 
13
13
  /**
14
14
  * @license
@@ -626,6 +626,17 @@
626
626
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
627
627
  }
628
628
 
629
+ var __assign = function() {
630
+ __assign = Object.assign || function __assign(t) {
631
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
632
+ s = arguments[i];
633
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
634
+ }
635
+ return t;
636
+ };
637
+ return __assign.apply(this, arguments);
638
+ };
639
+
629
640
  function __decorate(decorators, target, key, desc) {
630
641
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
631
642
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -837,7 +848,9 @@
837
848
  this.overrides.clear();
838
849
  overrides.forEach(function (_a) {
839
850
  var _b = __read(_a, 2), type = _b[0], override = _b[1];
840
- return _this.overrides.set(type, override);
851
+ var overrides = _this.overrides.get(type) || [];
852
+ overrides.push(override);
853
+ _this.overrides.set(type, overrides);
841
854
  });
842
855
  };
843
856
  OverrideResolver.prototype.getAnnotation = function (type) {
@@ -845,14 +858,17 @@
845
858
  return reflection.annotations(type).find(function (a) { return a instanceof _this.type; }) || null;
846
859
  };
847
860
  OverrideResolver.prototype.resolve = function (type) {
861
+ var _this = this;
848
862
  var resolved = this.resolved.get(type) || null;
849
863
  if (!resolved) {
850
864
  resolved = this.getAnnotation(type);
851
865
  if (resolved) {
852
- var override = this.overrides.get(type);
853
- if (override) {
854
- var overrider = new MetadataOverrider();
855
- resolved = overrider.overrideMetadata(this.type, resolved, override);
866
+ var overrides = this.overrides.get(type);
867
+ if (overrides) {
868
+ var overrider_1 = new MetadataOverrider();
869
+ overrides.forEach(function (override) {
870
+ resolved = overrider_1.overrideMetadata(_this.type, resolved, override);
871
+ });
856
872
  }
857
873
  }
858
874
  this.resolved.set(type, resolved);
@@ -945,6 +961,7 @@
945
961
  * found in the LICENSE file at https://angular.io/license
946
962
  */
947
963
  var _nextRootElementId = 0;
964
+ var EMPTY_ARRAY = [];
948
965
  /**
949
966
  * @description
950
967
  * Configures and initializes environment for unit testing and provides methods for
@@ -967,6 +984,8 @@
967
984
  this._pipeOverrides = [];
968
985
  this._providerOverrides = [];
969
986
  this._rootProviderOverrides = [];
987
+ this._providerOverridesByToken = new Map();
988
+ this._templateOverrides = new Map();
970
989
  // test module configuration
971
990
  this._providers = [];
972
991
  this._declarations = [];
@@ -974,6 +993,7 @@
974
993
  this._schemas = [];
975
994
  this._activeFixtures = [];
976
995
  this._moduleRef = null;
996
+ this._testModuleType = null;
977
997
  this._instantiated = false;
978
998
  }
979
999
  /**
@@ -1049,7 +1069,10 @@
1049
1069
  return TestBedRender3;
1050
1070
  };
1051
1071
  TestBedRender3.prototype.overrideTemplateUsingTestingModule = function (component, template) {
1052
- throw new Error('Render3TestBed.overrideTemplateUsingTestingModule is not implemented yet');
1072
+ if (this._instantiated) {
1073
+ throw new Error('Cannot override template when the test module has already been instantiated');
1074
+ }
1075
+ this._templateOverrides.set(component, template);
1053
1076
  };
1054
1077
  TestBedRender3.overrideProvider = function (token, provider) {
1055
1078
  _getTestBedRender3().overrideProvider(token, provider);
@@ -1108,12 +1131,15 @@
1108
1131
  this._pipeOverrides = [];
1109
1132
  this._providerOverrides = [];
1110
1133
  this._rootProviderOverrides = [];
1134
+ this._providerOverridesByToken.clear();
1135
+ this._templateOverrides.clear();
1111
1136
  // reset test module config
1112
1137
  this._providers = [];
1113
1138
  this._declarations = [];
1114
1139
  this._imports = [];
1115
1140
  this._schemas = [];
1116
1141
  this._moduleRef = null;
1142
+ this._testModuleType = null;
1117
1143
  this._instantiated = false;
1118
1144
  this._activeFixtures.forEach(function (fixture) {
1119
1145
  try {
@@ -1192,16 +1218,18 @@
1192
1218
  * Overwrites all providers for the given token with the given provider definition.
1193
1219
  */
1194
1220
  TestBedRender3.prototype.overrideProvider = function (token, provider) {
1221
+ var providerDef = provider.useFactory ?
1222
+ { provide: token, useFactory: provider.useFactory, deps: provider.deps || [] } :
1223
+ { provide: token, useValue: provider.useValue };
1195
1224
  var injectableDef;
1196
1225
  var isRoot = (typeof token !== 'string' && (injectableDef = core.ɵgetInjectableDef(token)) &&
1197
1226
  injectableDef.providedIn === 'root');
1198
- var overrides = isRoot ? this._rootProviderOverrides : this._providerOverrides;
1199
- if (provider.useFactory) {
1200
- overrides.push({ provide: token, useFactory: provider.useFactory, deps: provider.deps || [] });
1201
- }
1202
- else {
1203
- overrides.push({ provide: token, useValue: provider.useValue });
1204
- }
1227
+ var overridesBucket = isRoot ? this._rootProviderOverrides : this._providerOverrides;
1228
+ overridesBucket.push(providerDef);
1229
+ // keep all overrides grouped by token as well for fast lookups using token
1230
+ var overridesForToken = this._providerOverridesByToken.get(token) || [];
1231
+ overridesForToken.push(providerDef);
1232
+ this._providerOverridesByToken.set(token, overridesForToken);
1205
1233
  };
1206
1234
  TestBedRender3.prototype.deprecatedOverrideProvider = function (token, provider) {
1207
1235
  throw new Error('No implemented in IVY');
@@ -1234,15 +1262,22 @@
1234
1262
  return;
1235
1263
  }
1236
1264
  var resolvers = this._getResolvers();
1237
- var testModuleType = this._createTestModule();
1238
- compileNgModule(testModuleType, resolvers);
1265
+ this._testModuleType = this._createTestModule();
1266
+ this._compileNgModule(this._testModuleType, resolvers);
1239
1267
  var parentInjector = this.platform.injector;
1240
- this._moduleRef = new core.ɵRender3NgModuleRef(testModuleType, parentInjector);
1268
+ this._moduleRef = new core.ɵRender3NgModuleRef(this._testModuleType, parentInjector);
1241
1269
  // ApplicationInitStatus.runInitializers() is marked @internal
1242
1270
  // to core. Cast it to any before accessing it.
1243
1271
  this._moduleRef.injector.get(core.ApplicationInitStatus).runInitializers();
1244
1272
  this._instantiated = true;
1245
1273
  };
1274
+ // get overrides for a specific provider (if any)
1275
+ TestBedRender3.prototype._getProviderOverrides = function (provider) {
1276
+ var token = typeof provider === 'object' && provider.hasOwnProperty('provide') ?
1277
+ provider.provide :
1278
+ provider;
1279
+ return this._providerOverridesByToken.get(token) || [];
1280
+ };
1246
1281
  // creates resolvers taking overrides into account
1247
1282
  TestBedRender3.prototype._getResolvers = function () {
1248
1283
  var module = new NgModuleResolver();
@@ -1289,128 +1324,155 @@
1289
1324
  }());
1290
1325
  return DynamicTestModule;
1291
1326
  };
1327
+ TestBedRender3.prototype._getMetaWithOverrides = function (meta, type) {
1328
+ var _this = this;
1329
+ var overrides = {};
1330
+ if (meta.providers && meta.providers.length) {
1331
+ var providerOverrides = flatten(meta.providers, function (provider) { return _this._getProviderOverrides(provider); });
1332
+ if (providerOverrides.length) {
1333
+ overrides.providers = __spread(meta.providers, providerOverrides);
1334
+ }
1335
+ }
1336
+ var hasTemplateOverride = !!type && this._templateOverrides.has(type);
1337
+ if (hasTemplateOverride) {
1338
+ overrides.template = this._templateOverrides.get(type);
1339
+ }
1340
+ return Object.keys(overrides).length ? __assign({}, meta, overrides) : meta;
1341
+ };
1342
+ TestBedRender3.prototype._compileNgModule = function (moduleType, resolvers) {
1343
+ var _this = this;
1344
+ var ngModule = resolvers.module.resolve(moduleType);
1345
+ if (ngModule === null) {
1346
+ throw new Error(core.ɵstringify(moduleType) + " has not @NgModule annotation");
1347
+ }
1348
+ var metadata = this._getMetaWithOverrides(ngModule);
1349
+ core.ɵcompileNgModuleDefs(moduleType, metadata);
1350
+ var declarations = flatten(ngModule.declarations || EMPTY_ARRAY, core.resolveForwardRef);
1351
+ var compiledComponents = [];
1352
+ // Compile the components, directives and pipes declared by this module
1353
+ declarations.forEach(function (declaration) {
1354
+ var component = resolvers.component.resolve(declaration);
1355
+ if (component) {
1356
+ var metadata_1 = _this._getMetaWithOverrides(component, declaration);
1357
+ core.ɵcompileComponent(declaration, metadata_1);
1358
+ compiledComponents.push(declaration);
1359
+ return;
1360
+ }
1361
+ var directive = resolvers.directive.resolve(declaration);
1362
+ if (directive) {
1363
+ var metadata_2 = _this._getMetaWithOverrides(directive);
1364
+ core.ɵcompileDirective(declaration, metadata_2);
1365
+ return;
1366
+ }
1367
+ var pipe = resolvers.pipe.resolve(declaration);
1368
+ if (pipe) {
1369
+ core.ɵcompilePipe(declaration, pipe);
1370
+ return;
1371
+ }
1372
+ });
1373
+ // Compile transitive modules, components, directives and pipes
1374
+ var transitiveScope = this._transitiveScopesFor(moduleType, resolvers);
1375
+ compiledComponents.forEach(function (cmp) {
1376
+ var scope = _this._templateOverrides.has(cmp) ?
1377
+ // if we have template override via `TestBed.overrideTemplateUsingTestingModule` -
1378
+ // define Component scope as TestingModule scope, instead of the scope of NgModule
1379
+ // where this Component was declared
1380
+ _this._transitiveScopesFor(_this._testModuleType, resolvers) :
1381
+ transitiveScope;
1382
+ core.ɵpatchComponentDefWithScope(cmp.ngComponentDef, scope);
1383
+ });
1384
+ };
1385
+ /**
1386
+ * Compute the pair of transitive scopes (compilation scope and exported scope) for a given
1387
+ * module.
1388
+ *
1389
+ * This operation is memoized and the result is cached on the module's definition. It can be
1390
+ * called on modules with components that have not fully compiled yet, but the result should not
1391
+ * be used until they have.
1392
+ */
1393
+ TestBedRender3.prototype._transitiveScopesFor = function (moduleType, resolvers) {
1394
+ var _this = this;
1395
+ if (!isNgModule(moduleType)) {
1396
+ throw new Error(moduleType.name + " does not have an ngModuleDef");
1397
+ }
1398
+ var def = moduleType.ngModuleDef;
1399
+ if (def.transitiveCompileScopes !== null) {
1400
+ return def.transitiveCompileScopes;
1401
+ }
1402
+ var scopes = {
1403
+ compilation: {
1404
+ directives: new Set(),
1405
+ pipes: new Set(),
1406
+ },
1407
+ exported: {
1408
+ directives: new Set(),
1409
+ pipes: new Set(),
1410
+ },
1411
+ };
1412
+ def.declarations.forEach(function (declared) {
1413
+ var declaredWithDefs = declared;
1414
+ if (declaredWithDefs.ngPipeDef !== undefined) {
1415
+ scopes.compilation.pipes.add(declared);
1416
+ }
1417
+ else {
1418
+ scopes.compilation.directives.add(declared);
1419
+ }
1420
+ });
1421
+ def.imports.forEach(function (imported) {
1422
+ var ngModule = resolvers.module.resolve(imported);
1423
+ if (ngModule === null) {
1424
+ throw new Error("Importing " + imported.name + " which does not have an @ngModule");
1425
+ }
1426
+ else {
1427
+ _this._compileNgModule(imported, resolvers);
1428
+ }
1429
+ // When this module imports another, the imported module's exported directives and pipes are
1430
+ // added to the compilation scope of this module.
1431
+ var importedScope = _this._transitiveScopesFor(imported, resolvers);
1432
+ importedScope.exported.directives.forEach(function (entry) { return scopes.compilation.directives.add(entry); });
1433
+ importedScope.exported.pipes.forEach(function (entry) { return scopes.compilation.pipes.add(entry); });
1434
+ });
1435
+ def.exports.forEach(function (exported) {
1436
+ var exportedTyped = exported;
1437
+ // Either the type is a module, a pipe, or a component/directive (which may not have an
1438
+ // ngComponentDef as it might be compiled asynchronously).
1439
+ if (isNgModule(exportedTyped)) {
1440
+ // When this module exports another, the exported module's exported directives and pipes are
1441
+ // added to both the compilation and exported scopes of this module.
1442
+ var exportedScope = _this._transitiveScopesFor(exportedTyped, resolvers);
1443
+ exportedScope.exported.directives.forEach(function (entry) {
1444
+ scopes.compilation.directives.add(entry);
1445
+ scopes.exported.directives.add(entry);
1446
+ });
1447
+ exportedScope.exported.pipes.forEach(function (entry) {
1448
+ scopes.compilation.pipes.add(entry);
1449
+ scopes.exported.pipes.add(entry);
1450
+ });
1451
+ }
1452
+ else if (exportedTyped.ngPipeDef !== undefined) {
1453
+ scopes.exported.pipes.add(exportedTyped);
1454
+ }
1455
+ else {
1456
+ scopes.exported.directives.add(exportedTyped);
1457
+ }
1458
+ });
1459
+ def.transitiveCompileScopes = scopes;
1460
+ return scopes;
1461
+ };
1292
1462
  return TestBedRender3;
1293
1463
  }());
1294
1464
  var testBed;
1295
1465
  function _getTestBedRender3() {
1296
1466
  return testBed = testBed || new TestBedRender3();
1297
1467
  }
1298
- // Module compiler
1299
- var EMPTY_ARRAY = [];
1300
- function compileNgModule(moduleType, resolvers) {
1301
- var ngModule = resolvers.module.resolve(moduleType);
1302
- if (ngModule === null) {
1303
- throw new Error(core.ɵstringify(moduleType) + " has not @NgModule annotation");
1304
- }
1305
- core.ɵcompileNgModuleDefs(moduleType, ngModule);
1306
- var declarations = flatten(ngModule.declarations || EMPTY_ARRAY);
1307
- var compiledComponents = [];
1308
- // Compile the components, directives and pipes declared by this module
1309
- declarations.forEach(function (declaration) {
1310
- var component = resolvers.component.resolve(declaration);
1311
- if (component) {
1312
- core.ɵcompileComponent(declaration, component);
1313
- compiledComponents.push(declaration);
1314
- return;
1315
- }
1316
- var directive = resolvers.directive.resolve(declaration);
1317
- if (directive) {
1318
- core.ɵcompileDirective(declaration, directive);
1319
- return;
1320
- }
1321
- var pipe = resolvers.pipe.resolve(declaration);
1322
- if (pipe) {
1323
- core.ɵcompilePipe(declaration, pipe);
1324
- return;
1325
- }
1326
- });
1327
- // Compile transitive modules, components, directives and pipes
1328
- var transitiveScope = transitiveScopesFor(moduleType, resolvers);
1329
- compiledComponents.forEach(function (cmp) { return core.ɵpatchComponentDefWithScope(cmp.ngComponentDef, transitiveScope); });
1330
- }
1331
- /**
1332
- * Compute the pair of transitive scopes (compilation scope and exported scope) for a given module.
1333
- *
1334
- * This operation is memoized and the result is cached on the module's definition. It can be called
1335
- * on modules with components that have not fully compiled yet, but the result should not be used
1336
- * until they have.
1337
- */
1338
- function transitiveScopesFor(moduleType, resolvers) {
1339
- if (!isNgModule(moduleType)) {
1340
- throw new Error(moduleType.name + " does not have an ngModuleDef");
1341
- }
1342
- var def = moduleType.ngModuleDef;
1343
- if (def.transitiveCompileScopes !== null) {
1344
- return def.transitiveCompileScopes;
1345
- }
1346
- var scopes = {
1347
- compilation: {
1348
- directives: new Set(),
1349
- pipes: new Set(),
1350
- },
1351
- exported: {
1352
- directives: new Set(),
1353
- pipes: new Set(),
1354
- },
1355
- };
1356
- def.declarations.forEach(function (declared) {
1357
- var declaredWithDefs = declared;
1358
- if (declaredWithDefs.ngPipeDef !== undefined) {
1359
- scopes.compilation.pipes.add(declared);
1360
- }
1361
- else {
1362
- scopes.compilation.directives.add(declared);
1363
- }
1364
- });
1365
- def.imports.forEach(function (imported) {
1366
- var ngModule = resolvers.module.resolve(imported);
1367
- if (ngModule === null) {
1368
- throw new Error("Importing " + imported.name + " which does not have an @ngModule");
1369
- }
1370
- else {
1371
- compileNgModule(imported, resolvers);
1372
- }
1373
- // When this module imports another, the imported module's exported directives and pipes are
1374
- // added to the compilation scope of this module.
1375
- var importedScope = transitiveScopesFor(imported, resolvers);
1376
- importedScope.exported.directives.forEach(function (entry) { return scopes.compilation.directives.add(entry); });
1377
- importedScope.exported.pipes.forEach(function (entry) { return scopes.compilation.pipes.add(entry); });
1378
- });
1379
- def.exports.forEach(function (exported) {
1380
- var exportedTyped = exported;
1381
- // Either the type is a module, a pipe, or a component/directive (which may not have an
1382
- // ngComponentDef as it might be compiled asynchronously).
1383
- if (isNgModule(exportedTyped)) {
1384
- // When this module exports another, the exported module's exported directives and pipes are
1385
- // added to both the compilation and exported scopes of this module.
1386
- var exportedScope = transitiveScopesFor(exportedTyped, resolvers);
1387
- exportedScope.exported.directives.forEach(function (entry) {
1388
- scopes.compilation.directives.add(entry);
1389
- scopes.exported.directives.add(entry);
1390
- });
1391
- exportedScope.exported.pipes.forEach(function (entry) {
1392
- scopes.compilation.pipes.add(entry);
1393
- scopes.exported.pipes.add(entry);
1394
- });
1395
- }
1396
- else if (exportedTyped.ngPipeDef !== undefined) {
1397
- scopes.exported.pipes.add(exportedTyped);
1398
- }
1399
- else {
1400
- scopes.exported.directives.add(exportedTyped);
1401
- }
1402
- });
1403
- def.transitiveCompileScopes = scopes;
1404
- return scopes;
1405
- }
1406
- function flatten(values) {
1468
+ function flatten(values, mapFn) {
1407
1469
  var out = [];
1408
1470
  values.forEach(function (value) {
1409
1471
  if (Array.isArray(value)) {
1410
- out.push.apply(out, __spread(flatten(value)));
1472
+ out.push.apply(out, __spread(flatten(value, mapFn)));
1411
1473
  }
1412
1474
  else {
1413
- out.push(value);
1475
+ out.push(mapFn ? mapFn(value) : value);
1414
1476
  }
1415
1477
  });
1416
1478
  return out;
@@ -2132,5 +2194,5 @@
2132
2194
 
2133
2195
  Object.defineProperty(exports, '__esModule', { value: true });
2134
2196
 
2135
- })));
2197
+ }));
2136
2198
  //# sourceMappingURL=core-testing.umd.js.map