@angular/core 2.0.0-rc.1 → 2.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{core.umd.js → bundles/core.umd.js} +6402 -4606
- package/bundles/core.umd.min.js +6 -0
- package/esm/index.d.ts +5 -4
- package/esm/index.js +9 -8
- package/esm/index.js.map +1 -1
- package/esm/private_export.d.ts +96 -11
- package/esm/private_export.js +39 -10
- package/esm/private_export.js.map +1 -1
- package/esm/private_export.metadata.json +1 -1
- package/esm/src/animation/active_animation_players_map.d.ts +11 -0
- package/esm/src/animation/active_animation_players_map.js +47 -0
- package/esm/src/animation/active_animation_players_map.js.map +1 -0
- package/esm/src/animation/animation_constants.d.ts +4 -0
- package/esm/src/animation/animation_constants.js +5 -0
- package/esm/src/animation/animation_constants.js.map +1 -0
- package/esm/src/animation/animation_constants.metadata.json +1 -0
- package/esm/src/animation/animation_driver.d.ts +9 -0
- package/esm/src/animation/animation_driver.js +9 -0
- package/esm/src/animation/animation_driver.js.map +1 -0
- package/esm/src/animation/animation_group_player.d.ts +18 -0
- package/esm/src/animation/animation_group_player.js +60 -0
- package/esm/src/animation/animation_group_player.js.map +1 -0
- package/esm/src/animation/animation_keyframe.d.ts +6 -0
- package/esm/src/animation/animation_keyframe.js +7 -0
- package/esm/src/animation/animation_keyframe.js.map +1 -0
- package/esm/src/animation/animation_player.d.ts +26 -0
- package/esm/src/animation/animation_player.js +30 -0
- package/esm/src/animation/animation_player.js.map +1 -0
- package/esm/src/animation/animation_sequence_player.d.ts +21 -0
- package/esm/src/animation/animation_sequence_player.js +64 -0
- package/esm/src/animation/animation_sequence_player.js.map +1 -0
- package/esm/src/animation/animation_style_util.d.ts +32 -0
- package/esm/src/animation/animation_style_util.js +91 -0
- package/esm/src/animation/animation_style_util.js.map +1 -0
- package/esm/src/animation/animation_style_util.metadata.json +1 -0
- package/esm/src/animation/animation_styles.d.ts +8 -0
- package/esm/src/animation/animation_styles.js +6 -0
- package/esm/src/animation/animation_styles.js.map +1 -0
- package/esm/src/animation/metadata.d.ts +511 -0
- package/esm/src/animation/metadata.js +565 -0
- package/esm/src/animation/metadata.js.map +1 -0
- package/esm/src/animation/metadata.metadata.json +1 -0
- package/esm/src/application_common_providers.d.ts +1 -0
- package/esm/src/application_common_providers.js +5 -4
- package/esm/src/application_common_providers.js.map +1 -1
- package/esm/src/application_common_providers.metadata.json +1 -1
- package/esm/src/application_ref.d.ts +17 -41
- package/esm/src/application_ref.js +32 -23
- package/esm/src/application_ref.js.map +1 -1
- package/esm/src/application_ref.metadata.json +1 -1
- package/esm/src/application_tokens.d.ts +6 -1
- package/esm/src/application_tokens.js +9 -4
- package/esm/src/application_tokens.js.map +1 -1
- package/esm/src/application_tokens.metadata.json +1 -1
- package/esm/src/change_detection/change_detection.d.ts +9 -8
- package/esm/src/change_detection/change_detection.js +7 -7
- package/esm/src/change_detection/change_detection.js.map +1 -1
- package/esm/src/change_detection/change_detection.metadata.json +1 -1
- package/esm/src/change_detection/change_detection_util.d.ts +3 -1
- package/esm/src/change_detection/change_detection_util.js +6 -5
- package/esm/src/change_detection/change_detection_util.js.map +1 -1
- package/esm/src/change_detection/change_detection_util.metadata.json +1 -1
- package/esm/src/change_detection/change_detector_ref.d.ts +3 -0
- package/esm/src/change_detection/change_detector_ref.js +3 -0
- package/esm/src/change_detection/change_detector_ref.js.map +1 -1
- package/esm/src/change_detection/constants.d.ts +1 -0
- package/esm/src/change_detection/constants.js +4 -3
- package/esm/src/change_detection/constants.js.map +1 -1
- package/esm/src/change_detection/constants.metadata.json +1 -1
- package/esm/src/change_detection/differs/default_iterable_differ.d.ts +6 -94
- package/esm/src/change_detection/differs/default_iterable_differ.js +25 -18
- package/esm/src/change_detection/differs/default_iterable_differ.js.map +1 -1
- package/esm/src/change_detection/differs/default_keyvalue_differ.d.ts +3 -30
- package/esm/src/change_detection/differs/default_keyvalue_differ.js +13 -8
- package/esm/src/change_detection/differs/default_keyvalue_differ.js.map +1 -1
- package/esm/src/change_detection/differs/iterable_differs.d.ts +4 -1
- package/esm/src/change_detection/differs/iterable_differs.js +5 -4
- package/esm/src/change_detection/differs/iterable_differs.js.map +1 -1
- package/esm/src/change_detection/differs/keyvalue_differs.d.ts +2 -1
- package/esm/src/change_detection/differs/keyvalue_differs.js +5 -4
- package/esm/src/change_detection/differs/keyvalue_differs.js.map +1 -1
- package/esm/src/change_detection/pipe_transform.js.map +1 -1
- package/esm/src/change_detection.d.ts +1 -1
- package/esm/src/change_detection.js +5 -5
- package/esm/src/change_detection.js.map +1 -1
- package/esm/src/console.js +2 -1
- package/esm/src/console.js.map +1 -1
- package/esm/src/console.metadata.json +1 -1
- package/esm/src/debug/debug_node.d.ts +20 -2
- package/esm/src/debug/debug_node.js +16 -2
- package/esm/src/debug/debug_node.js.map +1 -1
- package/esm/src/debug/debug_node.metadata.json +1 -0
- package/esm/src/debug/debug_renderer.d.ts +10 -6
- package/esm/src/debug/debug_renderer.js +13 -2
- package/esm/src/debug/debug_renderer.js.map +1 -1
- package/esm/src/di/decorators.d.ts +13 -1
- package/esm/src/di/decorators.js +7 -1
- package/esm/src/di/decorators.js.map +1 -1
- package/esm/src/di/decorators.metadata.json +1 -1
- package/esm/src/di/forward_ref.d.ts +3 -1
- package/esm/src/di/forward_ref.js +3 -1
- package/esm/src/di/forward_ref.js.map +1 -1
- package/esm/src/di/injector.d.ts +4 -1
- package/esm/src/di/injector.js +5 -2
- package/esm/src/di/injector.js.map +1 -1
- package/esm/src/di/injector.metadata.json +1 -1
- package/esm/src/di/metadata.d.ts +8 -1
- package/esm/src/di/metadata.js +10 -3
- package/esm/src/di/metadata.js.map +1 -1
- package/esm/src/di/opaque_token.d.ts +2 -1
- package/esm/src/di/opaque_token.js +22 -21
- package/esm/src/di/opaque_token.js.map +1 -1
- package/esm/src/di/provider.d.ts +11 -10
- package/esm/src/di/provider.js +17 -14
- package/esm/src/di/provider.js.map +1 -1
- package/esm/src/di/provider.metadata.json +1 -0
- package/esm/src/di/provider_util.js.map +1 -1
- package/esm/src/di/provider_util.metadata.json +1 -0
- package/esm/src/di/reflective_exceptions.d.ts +11 -16
- package/esm/src/di/reflective_exceptions.js +28 -22
- package/esm/src/di/reflective_exceptions.js.map +1 -1
- package/esm/src/di/reflective_injector.d.ts +3 -33
- package/esm/src/di/reflective_injector.js +10 -7
- package/esm/src/di/reflective_injector.js.map +1 -1
- package/esm/src/di/reflective_key.d.ts +1 -8
- package/esm/src/di/reflective_key.js +3 -2
- package/esm/src/di/reflective_key.js.map +1 -1
- package/esm/src/di/reflective_provider.d.ts +2 -1
- package/esm/src/di/reflective_provider.js +6 -5
- package/esm/src/di/reflective_provider.js.map +1 -1
- package/esm/src/di/reflective_provider.metadata.json +1 -0
- package/esm/src/di.d.ts +2 -2
- package/esm/src/di.js +6 -6
- package/esm/src/di.js.map +1 -1
- package/esm/src/facade/async.d.ts +11 -4
- package/esm/src/facade/async.js +25 -15
- package/esm/src/facade/async.js.map +1 -1
- package/esm/src/facade/base_wrapped_exception.js +4 -4
- package/esm/src/facade/base_wrapped_exception.js.map +1 -1
- package/esm/src/facade/collection.js +1 -1
- package/esm/src/facade/collection.js.map +1 -1
- package/esm/src/facade/collection.metadata.json +1 -1
- package/esm/src/facade/exception_handler.d.ts +2 -11
- package/esm/src/facade/exception_handler.js +8 -7
- package/esm/src/facade/exception_handler.js.map +1 -1
- package/esm/src/facade/exceptions.d.ts +4 -0
- package/esm/src/facade/exceptions.js +6 -2
- package/esm/src/facade/exceptions.js.map +1 -1
- package/esm/src/facade/exceptions.metadata.json +1 -0
- package/esm/src/facade/lang.d.ts +6 -4
- package/esm/src/facade/lang.js +12 -11
- package/esm/src/facade/lang.js.map +1 -1
- package/esm/src/facade/lang.metadata.json +1 -1
- package/esm/src/facade/math.d.ts +2 -0
- package/esm/src/facade/math.js +4 -0
- package/esm/src/facade/math.js.map +1 -0
- package/esm/src/facade/math.metadata.json +1 -0
- package/esm/src/facade/promise.js.map +1 -1
- package/esm/src/linker/component_factory.d.ts +5 -4
- package/esm/src/linker/component_factory.js +7 -3
- package/esm/src/linker/component_factory.js.map +1 -1
- package/esm/src/linker/component_resolver.d.ts +5 -4
- package/esm/src/linker/component_resolver.js +12 -7
- package/esm/src/linker/component_resolver.js.map +1 -1
- package/esm/src/linker/component_resolver.metadata.json +1 -1
- package/esm/src/linker/debug_context.js +5 -4
- package/esm/src/linker/debug_context.js.map +1 -1
- package/esm/src/linker/dynamic_component_loader.d.ts +5 -6
- package/esm/src/linker/dynamic_component_loader.js +5 -3
- package/esm/src/linker/dynamic_component_loader.js.map +1 -1
- package/esm/src/linker/dynamic_component_loader.metadata.json +1 -1
- package/esm/src/linker/element.d.ts +3 -3
- package/esm/src/linker/element.js +5 -5
- package/esm/src/linker/element.js.map +1 -1
- package/esm/src/linker/element_injector.js.map +1 -1
- package/esm/src/linker/element_ref.d.ts +1 -0
- package/esm/src/linker/element_ref.js +5 -5
- package/esm/src/linker/element_ref.js.map +1 -1
- package/esm/src/linker/exceptions.d.ts +4 -1
- package/esm/src/linker/exceptions.js +4 -1
- package/esm/src/linker/exceptions.js.map +1 -1
- package/esm/src/linker/query_list.d.ts +3 -10
- package/esm/src/linker/query_list.js +8 -7
- package/esm/src/linker/query_list.js.map +1 -1
- package/esm/src/linker/systemjs_component_resolver.d.ts +21 -0
- package/esm/src/linker/systemjs_component_resolver.js +44 -0
- package/esm/src/linker/systemjs_component_resolver.js.map +1 -0
- package/esm/src/linker/template_ref.d.ts +2 -1
- package/esm/src/linker/template_ref.js +1 -0
- package/esm/src/linker/template_ref.js.map +1 -1
- package/esm/src/linker/view.d.ts +12 -1
- package/esm/src/linker/view.js +62 -16
- package/esm/src/linker/view.js.map +1 -1
- package/esm/src/linker/view_container_ref.d.ts +2 -10
- package/esm/src/linker/view_container_ref.js +4 -3
- package/esm/src/linker/view_container_ref.js.map +1 -1
- package/esm/src/linker/view_ref.d.ts +5 -1
- package/esm/src/linker/view_ref.js +6 -2
- package/esm/src/linker/view_ref.js.map +1 -1
- package/esm/src/linker/view_type.js.map +1 -1
- package/esm/src/linker/view_utils.d.ts +2 -4
- package/esm/src/linker/view_utils.js +21 -21
- package/esm/src/linker/view_utils.js.map +1 -1
- package/esm/src/linker/view_utils.metadata.json +1 -1
- package/esm/src/linker.d.ts +5 -4
- package/esm/src/linker.js +5 -4
- package/esm/src/linker.js.map +1 -1
- package/esm/src/metadata/di.d.ts +8 -1
- package/esm/src/metadata/di.js +10 -3
- package/esm/src/metadata/di.js.map +1 -1
- package/esm/src/metadata/directives.d.ts +104 -20
- package/esm/src/metadata/directives.js +25 -19
- package/esm/src/metadata/directives.js.map +1 -1
- package/esm/src/metadata/lifecycle_hooks.d.ts +46 -31
- package/esm/src/metadata/lifecycle_hooks.js +464 -10
- package/esm/src/metadata/lifecycle_hooks.js.map +1 -1
- package/esm/src/metadata/lifecycle_hooks.metadata.json +1 -1
- package/esm/src/metadata/view.d.ts +6 -2
- package/esm/src/metadata/view.js +3 -1
- package/esm/src/metadata/view.js.map +1 -1
- package/esm/src/metadata/view.metadata.json +1 -1
- package/esm/src/metadata.d.ts +49 -15
- package/esm/src/metadata.js +35 -10
- package/esm/src/metadata.js.map +1 -1
- package/esm/src/metadata.metadata.json +1 -1
- package/esm/src/platform_common_providers.d.ts +1 -0
- package/esm/src/platform_common_providers.js +3 -3
- package/esm/src/platform_common_providers.js.map +1 -1
- package/esm/src/platform_common_providers.metadata.json +1 -1
- package/esm/src/platform_directives_and_pipes.d.ts +48 -45
- package/esm/src/platform_directives_and_pipes.js +50 -47
- package/esm/src/platform_directives_and_pipes.js.map +1 -1
- package/esm/src/platform_directives_and_pipes.metadata.json +1 -1
- package/esm/src/profile/profile.d.ts +5 -1
- package/esm/src/profile/profile.js +4 -0
- package/esm/src/profile/profile.js.map +1 -1
- package/esm/src/profile/profile.metadata.json +1 -1
- package/esm/src/profile/wtf_impl.js +1 -1
- package/esm/src/profile/wtf_impl.js.map +1 -1
- package/esm/src/profile/wtf_impl.metadata.json +1 -0
- package/esm/src/profile/wtf_init.js +2 -2
- package/esm/src/profile/wtf_init.js.map +1 -1
- package/esm/src/reflection/platform_reflection_capabilities.d.ts +4 -3
- package/esm/src/reflection/platform_reflection_capabilities.js.map +1 -1
- package/esm/src/reflection/reflection.d.ts +1 -1
- package/esm/src/reflection/reflection.js +2 -2
- package/esm/src/reflection/reflection.js.map +1 -1
- package/esm/src/reflection/reflection.metadata.json +1 -1
- package/esm/src/reflection/reflection_capabilities.d.ts +4 -5
- package/esm/src/reflection/reflection_capabilities.js +22 -10
- package/esm/src/reflection/reflection_capabilities.js.map +1 -1
- package/esm/src/reflection/reflector.d.ts +8 -20
- package/esm/src/reflection/reflector.js +13 -3
- package/esm/src/reflection/reflector.js.map +1 -1
- package/esm/src/reflection/reflector_reader.js +3 -3
- package/esm/src/reflection/reflector_reader.js.map +1 -1
- package/esm/src/reflection/types.js.map +1 -1
- package/esm/src/render/api.d.ts +17 -6
- package/esm/src/render/api.js +8 -1
- package/esm/src/render/api.js.map +1 -1
- package/esm/src/render.d.ts +1 -1
- package/esm/src/render.js +1 -1
- package/esm/src/render.js.map +1 -1
- package/esm/src/security.js +6 -6
- package/esm/src/security.js.map +1 -1
- package/esm/src/testability/testability.d.ts +3 -19
- package/esm/src/testability/testability.js +10 -5
- package/esm/src/testability/testability.js.map +1 -1
- package/esm/src/testability/testability.metadata.json +1 -1
- package/esm/src/util/decorators.d.ts +2 -1
- package/esm/src/util/decorators.js +10 -9
- package/esm/src/util/decorators.js.map +1 -1
- package/esm/src/util.js.map +1 -1
- package/esm/src/zone/ng_zone.d.ts +6 -17
- package/esm/src/zone/ng_zone.js +7 -6
- package/esm/src/zone/ng_zone.js.map +1 -1
- package/esm/src/zone/ng_zone_impl.d.ts +1 -4
- package/esm/src/zone/ng_zone_impl.js +3 -2
- package/esm/src/zone/ng_zone_impl.js.map +1 -1
- package/esm/src/zone.js.map +1 -1
- package/esm/testing/async.js +20 -22
- package/esm/testing/async.js.map +1 -1
- package/esm/testing/async.metadata.json +1 -0
- package/esm/testing/async_test_completer.js.map +1 -1
- package/esm/testing/fake_async.d.ts +4 -1
- package/esm/testing/fake_async.js +9 -2
- package/esm/testing/fake_async.js.map +1 -1
- package/esm/testing/lang_utils.js +1 -1
- package/esm/testing/lang_utils.js.map +1 -1
- package/esm/testing/lang_utils.metadata.json +1 -0
- package/esm/testing/logger.js +5 -3
- package/esm/testing/logger.js.map +1 -1
- package/esm/testing/logger.metadata.json +1 -1
- package/esm/testing/mock_application_ref.d.ts +1 -1
- package/esm/testing/mock_application_ref.js +1 -0
- package/esm/testing/mock_application_ref.js.map +1 -1
- package/esm/testing/mock_application_ref.metadata.json +1 -1
- package/esm/testing/ng_zone_mock.d.ts +0 -1
- package/esm/testing/ng_zone_mock.js +2 -1
- package/esm/testing/ng_zone_mock.js.map +1 -1
- package/esm/testing/ng_zone_mock.metadata.json +1 -1
- package/esm/testing/regexp.js +1 -1
- package/esm/testing/regexp.js.map +1 -1
- package/esm/testing/regexp.metadata.json +1 -0
- package/esm/testing/test_injector.d.ts +6 -12
- package/esm/testing/test_injector.js +4 -10
- package/esm/testing/test_injector.js.map +1 -1
- package/esm/testing/test_injector.metadata.json +1 -0
- package/esm/testing/testing.d.ts +2 -2
- package/esm/testing/testing.js +2 -2
- package/esm/testing/testing.js.map +1 -1
- package/esm/testing/testing.metadata.json +1 -1
- package/esm/testing.js.map +1 -1
- package/index.d.ts +5 -4
- package/index.js +10 -8
- package/index.js.map +1 -1
- package/package.json +5 -1
- package/private_export.d.ts +96 -11
- package/private_export.js +39 -10
- package/private_export.js.map +1 -1
- package/private_export.metadata.json +1 -1
- package/src/animation/active_animation_players_map.d.ts +11 -0
- package/src/animation/active_animation_players_map.js +54 -0
- package/src/animation/active_animation_players_map.js.map +1 -0
- package/src/animation/animation_constants.d.ts +4 -0
- package/src/animation/animation_constants.js +6 -0
- package/src/animation/animation_constants.js.map +1 -0
- package/src/animation/animation_constants.metadata.json +1 -0
- package/src/animation/animation_driver.d.ts +9 -0
- package/src/animation/animation_driver.js +25 -0
- package/src/animation/animation_driver.js.map +1 -0
- package/src/animation/animation_group_player.d.ts +18 -0
- package/src/animation/animation_group_player.js +64 -0
- package/src/animation/animation_group_player.js.map +1 -0
- package/src/animation/animation_keyframe.d.ts +6 -0
- package/src/animation/animation_keyframe.js +10 -0
- package/src/animation/animation_keyframe.js.map +1 -0
- package/src/animation/animation_player.d.ts +26 -0
- package/src/animation/animation_player.js +42 -0
- package/src/animation/animation_player.js.map +1 -0
- package/src/animation/animation_sequence_player.d.ts +21 -0
- package/src/animation/animation_sequence_player.js +69 -0
- package/src/animation/animation_sequence_player.js.map +1 -0
- package/src/animation/animation_style_util.d.ts +32 -0
- package/src/animation/animation_style_util.js +99 -0
- package/src/animation/animation_style_util.js.map +1 -0
- package/src/animation/animation_style_util.metadata.json +1 -0
- package/src/animation/animation_styles.d.ts +8 -0
- package/src/animation/animation_styles.js +9 -0
- package/src/animation/animation_styles.js.map +1 -0
- package/src/animation/metadata.d.ts +511 -0
- package/src/animation/metadata.js +627 -0
- package/src/animation/metadata.js.map +1 -0
- package/src/animation/metadata.metadata.json +1 -0
- package/src/application_common_providers.d.ts +1 -0
- package/src/application_common_providers.js +4 -3
- package/src/application_common_providers.js.map +1 -1
- package/src/application_common_providers.metadata.json +1 -1
- package/src/application_ref.d.ts +17 -41
- package/src/application_ref.js +30 -21
- package/src/application_ref.js.map +1 -1
- package/src/application_ref.metadata.json +1 -1
- package/src/application_tokens.d.ts +6 -1
- package/src/application_tokens.js +9 -4
- package/src/application_tokens.js.map +1 -1
- package/src/application_tokens.metadata.json +1 -1
- package/src/change_detection/change_detection.d.ts +9 -8
- package/src/change_detection/change_detection.js +21 -21
- package/src/change_detection/change_detection.js.map +1 -1
- package/src/change_detection/change_detection.metadata.json +1 -1
- package/src/change_detection/change_detection_util.d.ts +3 -1
- package/src/change_detection/change_detection_util.js +6 -5
- package/src/change_detection/change_detection_util.js.map +1 -1
- package/src/change_detection/change_detection_util.metadata.json +1 -1
- package/src/change_detection/change_detector_ref.d.ts +3 -0
- package/src/change_detection/change_detector_ref.js +3 -0
- package/src/change_detection/change_detector_ref.js.map +1 -1
- package/src/change_detection/constants.d.ts +1 -0
- package/src/change_detection/constants.js +4 -3
- package/src/change_detection/constants.js.map +1 -1
- package/src/change_detection/constants.metadata.json +1 -1
- package/src/change_detection/differs/default_iterable_differ.d.ts +6 -94
- package/src/change_detection/differs/default_iterable_differ.js +25 -18
- package/src/change_detection/differs/default_iterable_differ.js.map +1 -1
- package/src/change_detection/differs/default_keyvalue_differ.d.ts +3 -30
- package/src/change_detection/differs/default_keyvalue_differ.js +13 -8
- package/src/change_detection/differs/default_keyvalue_differ.js.map +1 -1
- package/src/change_detection/differs/iterable_differs.d.ts +4 -1
- package/src/change_detection/differs/iterable_differs.js +4 -3
- package/src/change_detection/differs/iterable_differs.js.map +1 -1
- package/src/change_detection/differs/keyvalue_differs.d.ts +2 -1
- package/src/change_detection/differs/keyvalue_differs.js +4 -3
- package/src/change_detection/differs/keyvalue_differs.js.map +1 -1
- package/src/change_detection/pipe_transform.js.map +1 -1
- package/src/change_detection.d.ts +1 -1
- package/src/change_detection.js +9 -9
- package/src/change_detection.js.map +1 -1
- package/src/console.js +2 -1
- package/src/console.js.map +1 -1
- package/src/console.metadata.json +1 -1
- package/src/debug/debug_node.d.ts +20 -2
- package/src/debug/debug_node.js +16 -2
- package/src/debug/debug_node.js.map +1 -1
- package/src/debug/debug_node.metadata.json +1 -0
- package/src/debug/debug_renderer.d.ts +10 -6
- package/src/debug/debug_renderer.js +12 -1
- package/src/debug/debug_renderer.js.map +1 -1
- package/src/di/decorators.d.ts +13 -1
- package/src/di/decorators.js +7 -1
- package/src/di/decorators.js.map +1 -1
- package/src/di/decorators.metadata.json +1 -1
- package/src/di/forward_ref.d.ts +3 -1
- package/src/di/forward_ref.js +3 -1
- package/src/di/forward_ref.js.map +1 -1
- package/src/di/injector.d.ts +4 -1
- package/src/di/injector.js +5 -2
- package/src/di/injector.js.map +1 -1
- package/src/di/injector.metadata.json +1 -1
- package/src/di/metadata.d.ts +8 -1
- package/src/di/metadata.js +10 -3
- package/src/di/metadata.js.map +1 -1
- package/src/di/opaque_token.d.ts +2 -1
- package/src/di/opaque_token.js +22 -21
- package/src/di/opaque_token.js.map +1 -1
- package/src/di/provider.d.ts +11 -10
- package/src/di/provider.js +17 -14
- package/src/di/provider.js.map +1 -1
- package/src/di/provider.metadata.json +1 -0
- package/src/di/provider_util.js.map +1 -1
- package/src/di/provider_util.metadata.json +1 -0
- package/src/di/reflective_exceptions.d.ts +11 -16
- package/src/di/reflective_exceptions.js +28 -22
- package/src/di/reflective_exceptions.js.map +1 -1
- package/src/di/reflective_injector.d.ts +3 -33
- package/src/di/reflective_injector.js +9 -6
- package/src/di/reflective_injector.js.map +1 -1
- package/src/di/reflective_key.d.ts +1 -8
- package/src/di/reflective_key.js +3 -2
- package/src/di/reflective_key.js.map +1 -1
- package/src/di/reflective_provider.d.ts +2 -1
- package/src/di/reflective_provider.js +6 -5
- package/src/di/reflective_provider.js.map +1 -1
- package/src/di/reflective_provider.metadata.json +1 -0
- package/src/di.d.ts +2 -2
- package/src/di.js +7 -9
- package/src/di.js.map +1 -1
- package/src/facade/async.d.ts +11 -4
- package/src/facade/async.js +27 -17
- package/src/facade/async.js.map +1 -1
- package/src/facade/base_wrapped_exception.js +4 -4
- package/src/facade/base_wrapped_exception.js.map +1 -1
- package/src/facade/collection.js.map +1 -1
- package/src/facade/collection.metadata.json +1 -1
- package/src/facade/exception_handler.d.ts +2 -11
- package/src/facade/exception_handler.js +8 -7
- package/src/facade/exception_handler.js.map +1 -1
- package/src/facade/exceptions.d.ts +4 -0
- package/src/facade/exceptions.js +6 -2
- package/src/facade/exceptions.js.map +1 -1
- package/src/facade/exceptions.metadata.json +1 -0
- package/src/facade/lang.d.ts +6 -4
- package/src/facade/lang.js +12 -11
- package/src/facade/lang.js.map +1 -1
- package/src/facade/lang.metadata.json +1 -1
- package/src/facade/math.d.ts +2 -0
- package/src/facade/math.js +5 -0
- package/src/facade/math.js.map +1 -0
- package/src/facade/math.metadata.json +1 -0
- package/src/facade/promise.js.map +1 -1
- package/src/linker/component_factory.d.ts +5 -4
- package/src/linker/component_factory.js +7 -3
- package/src/linker/component_factory.js.map +1 -1
- package/src/linker/component_resolver.d.ts +5 -4
- package/src/linker/component_resolver.js +12 -7
- package/src/linker/component_resolver.js.map +1 -1
- package/src/linker/component_resolver.metadata.json +1 -1
- package/src/linker/debug_context.js +5 -4
- package/src/linker/debug_context.js.map +1 -1
- package/src/linker/dynamic_component_loader.d.ts +5 -6
- package/src/linker/dynamic_component_loader.js +5 -3
- package/src/linker/dynamic_component_loader.js.map +1 -1
- package/src/linker/dynamic_component_loader.metadata.json +1 -1
- package/src/linker/element.d.ts +3 -3
- package/src/linker/element.js +5 -5
- package/src/linker/element.js.map +1 -1
- package/src/linker/element_injector.js.map +1 -1
- package/src/linker/element_ref.d.ts +1 -0
- package/src/linker/element_ref.js +5 -5
- package/src/linker/element_ref.js.map +1 -1
- package/src/linker/exceptions.d.ts +4 -1
- package/src/linker/exceptions.js +4 -1
- package/src/linker/exceptions.js.map +1 -1
- package/src/linker/query_list.d.ts +3 -10
- package/src/linker/query_list.js +8 -7
- package/src/linker/query_list.js.map +1 -1
- package/src/linker/systemjs_component_resolver.d.ts +21 -0
- package/src/linker/systemjs_component_resolver.js +52 -0
- package/src/linker/systemjs_component_resolver.js.map +1 -0
- package/src/linker/template_ref.d.ts +2 -1
- package/src/linker/template_ref.js +1 -0
- package/src/linker/template_ref.js.map +1 -1
- package/src/linker/view.d.ts +12 -1
- package/src/linker/view.js +65 -15
- package/src/linker/view.js.map +1 -1
- package/src/linker/view_container_ref.d.ts +2 -10
- package/src/linker/view_container_ref.js +4 -3
- package/src/linker/view_container_ref.js.map +1 -1
- package/src/linker/view_ref.d.ts +5 -1
- package/src/linker/view_ref.js +6 -2
- package/src/linker/view_ref.js.map +1 -1
- package/src/linker/view_type.js.map +1 -1
- package/src/linker/view_utils.d.ts +2 -4
- package/src/linker/view_utils.js +21 -21
- package/src/linker/view_utils.js.map +1 -1
- package/src/linker/view_utils.metadata.json +1 -1
- package/src/linker.d.ts +5 -4
- package/src/linker.js +12 -9
- package/src/linker.js.map +1 -1
- package/src/metadata/di.d.ts +8 -1
- package/src/metadata/di.js +10 -3
- package/src/metadata/di.js.map +1 -1
- package/src/metadata/directives.d.ts +104 -20
- package/src/metadata/directives.js +25 -27
- package/src/metadata/directives.js.map +1 -1
- package/src/metadata/lifecycle_hooks.d.ts +46 -31
- package/src/metadata/lifecycle_hooks.js +496 -10
- package/src/metadata/lifecycle_hooks.js.map +1 -1
- package/src/metadata/lifecycle_hooks.metadata.json +1 -1
- package/src/metadata/view.d.ts +6 -2
- package/src/metadata/view.js +3 -1
- package/src/metadata/view.js.map +1 -1
- package/src/metadata/view.metadata.json +1 -1
- package/src/metadata.d.ts +49 -15
- package/src/metadata.js +70 -37
- package/src/metadata.js.map +1 -1
- package/src/metadata.metadata.json +1 -1
- package/src/platform_common_providers.d.ts +1 -0
- package/src/platform_common_providers.js +3 -3
- package/src/platform_common_providers.js.map +1 -1
- package/src/platform_common_providers.metadata.json +1 -1
- package/src/platform_directives_and_pipes.d.ts +48 -45
- package/src/platform_directives_and_pipes.js +50 -47
- package/src/platform_directives_and_pipes.js.map +1 -1
- package/src/platform_directives_and_pipes.metadata.json +1 -1
- package/src/profile/profile.d.ts +5 -1
- package/src/profile/profile.js +5 -3
- package/src/profile/profile.js.map +1 -1
- package/src/profile/profile.metadata.json +1 -1
- package/src/profile/wtf_impl.js +1 -1
- package/src/profile/wtf_impl.js.map +1 -1
- package/src/profile/wtf_impl.metadata.json +1 -0
- package/src/profile/wtf_init.js +2 -2
- package/src/profile/wtf_init.js.map +1 -1
- package/src/reflection/platform_reflection_capabilities.d.ts +4 -3
- package/src/reflection/platform_reflection_capabilities.js.map +1 -1
- package/src/reflection/reflection.d.ts +1 -1
- package/src/reflection/reflection.js +2 -2
- package/src/reflection/reflection.js.map +1 -1
- package/src/reflection/reflection.metadata.json +1 -1
- package/src/reflection/reflection_capabilities.d.ts +4 -5
- package/src/reflection/reflection_capabilities.js +24 -10
- package/src/reflection/reflection_capabilities.js.map +1 -1
- package/src/reflection/reflector.d.ts +8 -20
- package/src/reflection/reflector.js +13 -3
- package/src/reflection/reflector.js.map +1 -1
- package/src/reflection/reflector_reader.js +3 -3
- package/src/reflection/reflector_reader.js.map +1 -1
- package/src/reflection/types.js.map +1 -1
- package/src/render/api.d.ts +17 -6
- package/src/render/api.js +8 -1
- package/src/render/api.js.map +1 -1
- package/src/render.d.ts +1 -1
- package/src/render.js +2 -2
- package/src/render.js.map +1 -1
- package/src/security.js +6 -6
- package/src/security.js.map +1 -1
- package/src/testability/testability.d.ts +3 -19
- package/src/testability/testability.js +10 -5
- package/src/testability/testability.js.map +1 -1
- package/src/testability/testability.metadata.json +1 -1
- package/src/util/decorators.d.ts +2 -1
- package/src/util/decorators.js +10 -9
- package/src/util/decorators.js.map +1 -1
- package/src/util.js.map +1 -1
- package/src/zone/ng_zone.d.ts +6 -17
- package/src/zone/ng_zone.js +11 -6
- package/src/zone/ng_zone.js.map +1 -1
- package/src/zone/ng_zone_impl.d.ts +1 -4
- package/src/zone/ng_zone_impl.js +3 -2
- package/src/zone/ng_zone_impl.js.map +1 -1
- package/src/zone.js.map +1 -1
- package/testing/async.js +20 -22
- package/testing/async.js.map +1 -1
- package/testing/async.metadata.json +1 -0
- package/testing/async_test_completer.js.map +1 -1
- package/testing/fake_async.d.ts +4 -1
- package/testing/fake_async.js +10 -2
- package/testing/fake_async.js.map +1 -1
- package/testing/lang_utils.js +1 -1
- package/testing/lang_utils.js.map +1 -1
- package/testing/lang_utils.metadata.json +1 -0
- package/testing/logger.js +5 -3
- package/testing/logger.js.map +1 -1
- package/testing/logger.metadata.json +1 -1
- package/testing/mock_application_ref.d.ts +1 -1
- package/testing/mock_application_ref.js +1 -0
- package/testing/mock_application_ref.js.map +1 -1
- package/testing/mock_application_ref.metadata.json +1 -1
- package/testing/ng_zone_mock.d.ts +0 -1
- package/testing/ng_zone_mock.js +2 -1
- package/testing/ng_zone_mock.js.map +1 -1
- package/testing/ng_zone_mock.metadata.json +1 -1
- package/testing/regexp.js +1 -1
- package/testing/regexp.js.map +1 -1
- package/testing/regexp.metadata.json +1 -0
- package/testing/test_injector.d.ts +6 -12
- package/testing/test_injector.js +3 -9
- package/testing/test_injector.js.map +1 -1
- package/testing/test_injector.metadata.json +1 -0
- package/testing/testing.d.ts +2 -2
- package/testing/testing.js +5 -5
- package/testing/testing.js.map +1 -1
- package/testing/testing.metadata.json +1 -1
- package/testing.js.map +1 -1
package/src/di/injector.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export declare const THROW_IF_NOT_FOUND: Object;
|
|
2
|
+
/**
|
|
3
|
+
* @stable
|
|
4
|
+
*/
|
|
2
5
|
export declare abstract class Injector {
|
|
3
6
|
static THROW_IF_NOT_FOUND: Object;
|
|
4
7
|
/**
|
|
@@ -12,7 +15,7 @@ export declare abstract class Injector {
|
|
|
12
15
|
*
|
|
13
16
|
* ```typescript
|
|
14
17
|
* var injector = ReflectiveInjector.resolveAndCreate([
|
|
15
|
-
* provide
|
|
18
|
+
* {provide: "validToken", useValue: "Value"}
|
|
16
19
|
* ]);
|
|
17
20
|
* expect(injector.get("validToken")).toEqual("Value");
|
|
18
21
|
* expect(() => injector.get("invalidToken")).toThrowError();
|
package/src/di/injector.js
CHANGED
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var exceptions_1 = require('
|
|
2
|
+
var exceptions_1 = require('../facade/exceptions');
|
|
3
3
|
var _THROW_IF_NOT_FOUND = new Object();
|
|
4
4
|
exports.THROW_IF_NOT_FOUND = _THROW_IF_NOT_FOUND;
|
|
5
|
+
/**
|
|
6
|
+
* @stable
|
|
7
|
+
*/
|
|
5
8
|
var Injector = (function () {
|
|
6
9
|
function Injector() {
|
|
7
10
|
}
|
|
@@ -16,7 +19,7 @@ var Injector = (function () {
|
|
|
16
19
|
*
|
|
17
20
|
* ```typescript
|
|
18
21
|
* var injector = ReflectiveInjector.resolveAndCreate([
|
|
19
|
-
* provide
|
|
22
|
+
* {provide: "validToken", useValue: "Value"}
|
|
20
23
|
* ]);
|
|
21
24
|
* expect(injector.get("validToken")).toEqual("Value");
|
|
22
25
|
* expect(() => injector.get("invalidToken")).toThrowError();
|
package/src/di/injector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injector.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/injector.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"injector.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/injector.ts"],"names":[],"mappings":";AAAA,2BAA4B,sBAAsB,CAAC,CAAA;AAEnD,IAAM,mBAAmB,GAAsB,IAAI,MAAM,EAAE,CAAC;AAC/C,0BAAkB,GAAsB,mBAAmB,CAAC;AAEzE;;GAEG;AACH;IAAA;IA4BA,CAAC;IAzBC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,sBAAG,GAAH,UAAI,KAAU,EAAE,aAAmB,IAAS,MAAM,CAAC,0BAAa,EAAE,CAAC,CAAC,CAAC;IA1B9D,2BAAkB,GAAG,mBAAmB,CAAC;IA2BlD,eAAC;AAAD,CAAC,AA5BD,IA4BC;AA5BqB,gBAAQ,WA4B7B,CAAA","sourcesContent":["import {unimplemented} from '../facade/exceptions';\n\nconst _THROW_IF_NOT_FOUND = /*@ts2dart_const*/ new Object();\nexport const THROW_IF_NOT_FOUND = /*@ts2dart_const*/ _THROW_IF_NOT_FOUND;\n\n/**\n * @stable\n */\nexport abstract class Injector {\n static THROW_IF_NOT_FOUND = _THROW_IF_NOT_FOUND;\n\n /**\n * Retrieves an instance from the injector based on the provided token.\n * If not found:\n * - Throws {@link NoProviderError} if no `notFoundValue` that is not equal to\n * Injector.THROW_IF_NOT_FOUND is given\n * - Returns the `notFoundValue` otherwise\n *\n * ### Example ([live demo](http://plnkr.co/edit/HeXSHg?p=preview))\n *\n * ```typescript\n * var injector = ReflectiveInjector.resolveAndCreate([\n * {provide: \"validToken\", useValue: \"Value\"}\n * ]);\n * expect(injector.get(\"validToken\")).toEqual(\"Value\");\n * expect(() => injector.get(\"invalidToken\")).toThrowError();\n * ```\n *\n * `Injector` returns itself when given `Injector` as a token.\n *\n * ```typescript\n * var injector = ReflectiveInjector.resolveAndCreate([]);\n * expect(injector.get(Injector)).toBe(injector);\n * ```\n */\n get(token: any, notFoundValue?: any): any { return unimplemented(); }\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"__symbolic":"module","metadata":{"THROW_IF_NOT_FOUND":{"__symbolic":"reference","name":"_THROW_IF_NOT_FOUND"}}}
|
|
1
|
+
{"__symbolic":"module","version":1,"metadata":{"THROW_IF_NOT_FOUND":{"__symbolic":"reference","name":"_THROW_IF_NOT_FOUND"}}}
|
package/src/di/metadata.d.ts
CHANGED
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* }
|
|
16
16
|
*
|
|
17
17
|
* var injector = Injector.resolveAndCreate([
|
|
18
|
-
* provide
|
|
18
|
+
* {provide: "MyEngine", useClass: Engine},
|
|
19
19
|
* Car
|
|
20
20
|
* ]);
|
|
21
21
|
*
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
* expect(injector.get(Car).engine instanceof Engine).toBe(true);
|
|
39
39
|
* ```
|
|
40
40
|
* @ts2dart_const
|
|
41
|
+
* @stable
|
|
41
42
|
*/
|
|
42
43
|
export declare class InjectMetadata {
|
|
43
44
|
token: any;
|
|
@@ -65,6 +66,7 @@ export declare class InjectMetadata {
|
|
|
65
66
|
* expect(injector.get(Car).engine).toBeNull();
|
|
66
67
|
* ```
|
|
67
68
|
* @ts2dart_const
|
|
69
|
+
* @stable
|
|
68
70
|
*/
|
|
69
71
|
export declare class OptionalMetadata {
|
|
70
72
|
toString(): string;
|
|
@@ -73,6 +75,7 @@ export declare class OptionalMetadata {
|
|
|
73
75
|
* `DependencyMetadata` is used by the framework to extend DI.
|
|
74
76
|
* This is internal to Angular and should not be used directly.
|
|
75
77
|
* @ts2dart_const
|
|
78
|
+
* @stable
|
|
76
79
|
*/
|
|
77
80
|
export declare class DependencyMetadata {
|
|
78
81
|
token: any;
|
|
@@ -108,6 +111,7 @@ export declare class DependencyMetadata {
|
|
|
108
111
|
* expect(() => injector.get(NeedsService)).toThrowError();
|
|
109
112
|
* ```
|
|
110
113
|
* @ts2dart_const
|
|
114
|
+
* @stable
|
|
111
115
|
*/
|
|
112
116
|
export declare class InjectableMetadata {
|
|
113
117
|
constructor();
|
|
@@ -139,6 +143,7 @@ export declare class InjectableMetadata {
|
|
|
139
143
|
* expect(() => child.get(NeedsDependency)).toThrowError();
|
|
140
144
|
* ```
|
|
141
145
|
* @ts2dart_const
|
|
146
|
+
* @stable
|
|
142
147
|
*/
|
|
143
148
|
export declare class SelfMetadata {
|
|
144
149
|
toString(): string;
|
|
@@ -168,6 +173,7 @@ export declare class SelfMetadata {
|
|
|
168
173
|
* expect(() => inj.get(NeedsDependency)).toThrowError();
|
|
169
174
|
* ```
|
|
170
175
|
* @ts2dart_const
|
|
176
|
+
* @stable
|
|
171
177
|
*/
|
|
172
178
|
export declare class SkipSelfMetadata {
|
|
173
179
|
toString(): string;
|
|
@@ -226,6 +232,7 @@ export declare class SkipSelfMetadata {
|
|
|
226
232
|
* bootstrap(App);
|
|
227
233
|
*```
|
|
228
234
|
* @ts2dart_const
|
|
235
|
+
* @stable
|
|
229
236
|
*/
|
|
230
237
|
export declare class HostMetadata {
|
|
231
238
|
toString(): string;
|
package/src/di/metadata.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var lang_1 = require('
|
|
2
|
+
var lang_1 = require('../facade/lang');
|
|
3
3
|
/**
|
|
4
4
|
* A parameter metadata that specifies a dependency.
|
|
5
5
|
*
|
|
@@ -17,7 +17,7 @@ var lang_1 = require('../../src/facade/lang');
|
|
|
17
17
|
* }
|
|
18
18
|
*
|
|
19
19
|
* var injector = Injector.resolveAndCreate([
|
|
20
|
-
* provide
|
|
20
|
+
* {provide: "MyEngine", useClass: Engine},
|
|
21
21
|
* Car
|
|
22
22
|
* ]);
|
|
23
23
|
*
|
|
@@ -40,9 +40,10 @@ var lang_1 = require('../../src/facade/lang');
|
|
|
40
40
|
* expect(injector.get(Car).engine instanceof Engine).toBe(true);
|
|
41
41
|
* ```
|
|
42
42
|
* @ts2dart_const
|
|
43
|
+
* @stable
|
|
43
44
|
*/
|
|
44
45
|
var InjectMetadata = (function () {
|
|
45
|
-
function InjectMetadata(token) {
|
|
46
|
+
function InjectMetadata(token /** TODO #9100 */) {
|
|
46
47
|
this.token = token;
|
|
47
48
|
}
|
|
48
49
|
InjectMetadata.prototype.toString = function () { return "@Inject(" + lang_1.stringify(this.token) + ")"; };
|
|
@@ -70,6 +71,7 @@ exports.InjectMetadata = InjectMetadata;
|
|
|
70
71
|
* expect(injector.get(Car).engine).toBeNull();
|
|
71
72
|
* ```
|
|
72
73
|
* @ts2dart_const
|
|
74
|
+
* @stable
|
|
73
75
|
*/
|
|
74
76
|
var OptionalMetadata = (function () {
|
|
75
77
|
function OptionalMetadata() {
|
|
@@ -82,6 +84,7 @@ exports.OptionalMetadata = OptionalMetadata;
|
|
|
82
84
|
* `DependencyMetadata` is used by the framework to extend DI.
|
|
83
85
|
* This is internal to Angular and should not be used directly.
|
|
84
86
|
* @ts2dart_const
|
|
87
|
+
* @stable
|
|
85
88
|
*/
|
|
86
89
|
var DependencyMetadata = (function () {
|
|
87
90
|
function DependencyMetadata() {
|
|
@@ -125,6 +128,7 @@ exports.DependencyMetadata = DependencyMetadata;
|
|
|
125
128
|
* expect(() => injector.get(NeedsService)).toThrowError();
|
|
126
129
|
* ```
|
|
127
130
|
* @ts2dart_const
|
|
131
|
+
* @stable
|
|
128
132
|
*/
|
|
129
133
|
var InjectableMetadata = (function () {
|
|
130
134
|
function InjectableMetadata() {
|
|
@@ -159,6 +163,7 @@ exports.InjectableMetadata = InjectableMetadata;
|
|
|
159
163
|
* expect(() => child.get(NeedsDependency)).toThrowError();
|
|
160
164
|
* ```
|
|
161
165
|
* @ts2dart_const
|
|
166
|
+
* @stable
|
|
162
167
|
*/
|
|
163
168
|
var SelfMetadata = (function () {
|
|
164
169
|
function SelfMetadata() {
|
|
@@ -192,6 +197,7 @@ exports.SelfMetadata = SelfMetadata;
|
|
|
192
197
|
* expect(() => inj.get(NeedsDependency)).toThrowError();
|
|
193
198
|
* ```
|
|
194
199
|
* @ts2dart_const
|
|
200
|
+
* @stable
|
|
195
201
|
*/
|
|
196
202
|
var SkipSelfMetadata = (function () {
|
|
197
203
|
function SkipSelfMetadata() {
|
|
@@ -254,6 +260,7 @@ exports.SkipSelfMetadata = SkipSelfMetadata;
|
|
|
254
260
|
* bootstrap(App);
|
|
255
261
|
*```
|
|
256
262
|
* @ts2dart_const
|
|
263
|
+
* @stable
|
|
257
264
|
*/
|
|
258
265
|
var HostMetadata = (function () {
|
|
259
266
|
function HostMetadata() {
|
package/src/di/metadata.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/metadata.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/metadata.ts"],"names":[],"mappings":";AAAA,qBAAwB,gBAAgB,CAAC,CAAA;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH;IACE,wBAAmB,KAAU,CAAC,iBAAiB;QAA5B,UAAK,GAAL,KAAK,CAAK;IAAqB,CAAC;IACnD,iCAAQ,GAAR,cAAqB,MAAM,CAAC,aAAW,gBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAG,CAAC,CAAC,CAAC;IACpE,qBAAC;AAAD,CAAC,AAHD,IAGC;AAHY,sBAAc,iBAG1B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH;IAAA;IAEA,CAAC;IADC,mCAAQ,GAAR,cAAqB,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9C,uBAAC;AAAD,CAAC,AAFD,IAEC;AAFY,wBAAgB,mBAE5B,CAAA;AAED;;;;;GAKG;AACH;IAAA;IAEA,CAAC;IADC,sBAAI,qCAAK;aAAT,cAAqC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;;;OAAA;IACrD,yBAAC;AAAD,CAAC,AAFD,IAEC;AAFY,0BAAkB,qBAE9B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH;IACE;IAAe,CAAC;IAClB,yBAAC;AAAD,CAAC,AAFD,IAEC;AAFY,0BAAkB,qBAE9B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH;IAAA;IAEA,CAAC;IADC,+BAAQ,GAAR,cAAqB,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1C,mBAAC;AAAD,CAAC,AAFD,IAEC;AAFY,oBAAY,eAExB,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH;IAAA;IAEA,CAAC;IADC,mCAAQ,GAAR,cAAqB,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9C,uBAAC;AAAD,CAAC,AAFD,IAEC;AAFY,wBAAgB,mBAE5B,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH;IAAA;IAEA,CAAC;IADC,+BAAQ,GAAR,cAAqB,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1C,mBAAC;AAAD,CAAC,AAFD,IAEC;AAFY,oBAAY,eAExB,CAAA","sourcesContent":["import {stringify} from '../facade/lang';\n\n/**\n * A parameter metadata that specifies a dependency.\n *\n * ### Example ([live demo](http://plnkr.co/edit/6uHYJK?p=preview))\n *\n * ```typescript\n * class Engine {}\n *\n * @Injectable()\n * class Car {\n * engine;\n * constructor(@Inject(\"MyEngine\") engine:Engine) {\n * this.engine = engine;\n * }\n * }\n *\n * var injector = Injector.resolveAndCreate([\n * {provide: \"MyEngine\", useClass: Engine},\n * Car\n * ]);\n *\n * expect(injector.get(Car).engine instanceof Engine).toBe(true);\n * ```\n *\n * When `@Inject()` is not present, {@link Injector} will use the type annotation of the parameter.\n *\n * ### Example\n *\n * ```typescript\n * class Engine {}\n *\n * @Injectable()\n * class Car {\n * constructor(public engine: Engine) {} //same as constructor(@Inject(Engine) engine:Engine)\n * }\n *\n * var injector = Injector.resolveAndCreate([Engine, Car]);\n * expect(injector.get(Car).engine instanceof Engine).toBe(true);\n * ```\n * @ts2dart_const\n * @stable\n */\nexport class InjectMetadata {\n constructor(public token: any /** TODO #9100 */) {}\n toString(): string { return `@Inject(${stringify(this.token)})`; }\n}\n\n/**\n * A parameter metadata that marks a dependency as optional. {@link Injector} provides `null` if\n * the dependency is not found.\n *\n * ### Example ([live demo](http://plnkr.co/edit/AsryOm?p=preview))\n *\n * ```typescript\n * class Engine {}\n *\n * @Injectable()\n * class Car {\n * engine;\n * constructor(@Optional() engine:Engine) {\n * this.engine = engine;\n * }\n * }\n *\n * var injector = Injector.resolveAndCreate([Car]);\n * expect(injector.get(Car).engine).toBeNull();\n * ```\n * @ts2dart_const\n * @stable\n */\nexport class OptionalMetadata {\n toString(): string { return `@Optional()`; }\n}\n\n/**\n * `DependencyMetadata` is used by the framework to extend DI.\n * This is internal to Angular and should not be used directly.\n * @ts2dart_const\n * @stable\n */\nexport class DependencyMetadata {\n get token(): any /** TODO #9100 */ { return null; }\n}\n\n/**\n * A marker metadata that marks a class as available to {@link Injector} for creation.\n *\n * ### Example ([live demo](http://plnkr.co/edit/Wk4DMQ?p=preview))\n *\n * ```typescript\n * @Injectable()\n * class UsefulService {}\n *\n * @Injectable()\n * class NeedsService {\n * constructor(public service:UsefulService) {}\n * }\n *\n * var injector = Injector.resolveAndCreate([NeedsService, UsefulService]);\n * expect(injector.get(NeedsService).service instanceof UsefulService).toBe(true);\n * ```\n * {@link Injector} will throw {@link NoAnnotationError} when trying to instantiate a class that\n * does not have `@Injectable` marker, as shown in the example below.\n *\n * ```typescript\n * class UsefulService {}\n *\n * class NeedsService {\n * constructor(public service:UsefulService) {}\n * }\n *\n * var injector = Injector.resolveAndCreate([NeedsService, UsefulService]);\n * expect(() => injector.get(NeedsService)).toThrowError();\n * ```\n * @ts2dart_const\n * @stable\n */\nexport class InjectableMetadata {\n constructor() {}\n}\n\n/**\n * Specifies that an {@link Injector} should retrieve a dependency only from itself.\n *\n * ### Example ([live demo](http://plnkr.co/edit/NeagAg?p=preview))\n *\n * ```typescript\n * class Dependency {\n * }\n *\n * @Injectable()\n * class NeedsDependency {\n * dependency;\n * constructor(@Self() dependency:Dependency) {\n * this.dependency = dependency;\n * }\n * }\n *\n * var inj = Injector.resolveAndCreate([Dependency, NeedsDependency]);\n * var nd = inj.get(NeedsDependency);\n *\n * expect(nd.dependency instanceof Dependency).toBe(true);\n *\n * var inj = Injector.resolveAndCreate([Dependency]);\n * var child = inj.resolveAndCreateChild([NeedsDependency]);\n * expect(() => child.get(NeedsDependency)).toThrowError();\n * ```\n * @ts2dart_const\n * @stable\n */\nexport class SelfMetadata {\n toString(): string { return `@Self()`; }\n}\n\n/**\n * Specifies that the dependency resolution should start from the parent injector.\n *\n * ### Example ([live demo](http://plnkr.co/edit/Wchdzb?p=preview))\n *\n * ```typescript\n * class Dependency {\n * }\n *\n * @Injectable()\n * class NeedsDependency {\n * dependency;\n * constructor(@SkipSelf() dependency:Dependency) {\n * this.dependency = dependency;\n * }\n * }\n *\n * var parent = Injector.resolveAndCreate([Dependency]);\n * var child = parent.resolveAndCreateChild([NeedsDependency]);\n * expect(child.get(NeedsDependency).dependency instanceof Depedency).toBe(true);\n *\n * var inj = Injector.resolveAndCreate([Dependency, NeedsDependency]);\n * expect(() => inj.get(NeedsDependency)).toThrowError();\n * ```\n * @ts2dart_const\n * @stable\n */\nexport class SkipSelfMetadata {\n toString(): string { return `@SkipSelf()`; }\n}\n\n/**\n * Specifies that an injector should retrieve a dependency from any injector until reaching the\n * closest host.\n *\n * In Angular, a component element is automatically declared as a host for all the injectors in\n * its view.\n *\n * ### Example ([live demo](http://plnkr.co/edit/GX79pV?p=preview))\n *\n * In the following example `App` contains `ParentCmp`, which contains `ChildDirective`.\n * So `ParentCmp` is the host of `ChildDirective`.\n *\n * `ChildDirective` depends on two services: `HostService` and `OtherService`.\n * `HostService` is defined at `ParentCmp`, and `OtherService` is defined at `App`.\n *\n *```typescript\n * class OtherService {}\n * class HostService {}\n *\n * @Directive({\n * selector: 'child-directive'\n * })\n * class ChildDirective {\n * constructor(@Optional() @Host() os:OtherService, @Optional() @Host() hs:HostService){\n * console.log(\"os is null\", os);\n * console.log(\"hs is NOT null\", hs);\n * }\n * }\n *\n * @Component({\n * selector: 'parent-cmp',\n * providers: [HostService],\n * template: `\n * Dir: <child-directive></child-directive>\n * `,\n * directives: [ChildDirective]\n * })\n * class ParentCmp {\n * }\n *\n * @Component({\n * selector: 'app',\n * providers: [OtherService],\n * template: `\n * Parent: <parent-cmp></parent-cmp>\n * `,\n * directives: [ParentCmp]\n * })\n * class App {\n * }\n *\n * bootstrap(App);\n *```\n * @ts2dart_const\n * @stable\n */\nexport class HostMetadata {\n toString(): string { return `@Host()`; }\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
|
package/src/di/opaque_token.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* var t = new OpaqueToken("value");
|
|
8
8
|
*
|
|
9
9
|
* var injector = Injector.resolveAndCreate([
|
|
10
|
-
* provide
|
|
10
|
+
* {provide: t, useValue: "bindingValue"}
|
|
11
11
|
* ]);
|
|
12
12
|
*
|
|
13
13
|
* expect(injector.get(t)).toEqual("bindingValue");
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* Using an `OpaqueToken` is preferable to using an `Object` as tokens because it provides better
|
|
20
20
|
* error messages.
|
|
21
21
|
* @ts2dart_const
|
|
22
|
+
* @stable
|
|
22
23
|
*/
|
|
23
24
|
export declare class OpaqueToken {
|
|
24
25
|
private _desc;
|
package/src/di/opaque_token.js
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Creates a token that can be used in a DI Provider.
|
|
4
|
-
*
|
|
5
|
-
* ### Example ([live demo](http://plnkr.co/edit/Ys9ezXpj2Mnoy3Uc8KBp?p=preview))
|
|
6
|
-
*
|
|
7
|
-
* ```typescript
|
|
8
|
-
* var t = new OpaqueToken("value");
|
|
9
|
-
*
|
|
10
|
-
* var injector = Injector.resolveAndCreate([
|
|
11
|
-
* provide
|
|
12
|
-
* ]);
|
|
13
|
-
*
|
|
14
|
-
* expect(injector.get(t)).toEqual("bindingValue");
|
|
15
|
-
* ```
|
|
16
|
-
*
|
|
17
|
-
* Using an `OpaqueToken` is preferable to using strings as tokens because of possible collisions
|
|
18
|
-
* caused by multiple providers using the same string as two different tokens.
|
|
19
|
-
*
|
|
20
|
-
* Using an `OpaqueToken` is preferable to using an `Object` as tokens because it provides better
|
|
21
|
-
* error messages.
|
|
22
|
-
* @ts2dart_const
|
|
23
|
-
|
|
3
|
+
* Creates a token that can be used in a DI Provider.
|
|
4
|
+
*
|
|
5
|
+
* ### Example ([live demo](http://plnkr.co/edit/Ys9ezXpj2Mnoy3Uc8KBp?p=preview))
|
|
6
|
+
*
|
|
7
|
+
* ```typescript
|
|
8
|
+
* var t = new OpaqueToken("value");
|
|
9
|
+
*
|
|
10
|
+
* var injector = Injector.resolveAndCreate([
|
|
11
|
+
* {provide: t, useValue: "bindingValue"}
|
|
12
|
+
* ]);
|
|
13
|
+
*
|
|
14
|
+
* expect(injector.get(t)).toEqual("bindingValue");
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* Using an `OpaqueToken` is preferable to using strings as tokens because of possible collisions
|
|
18
|
+
* caused by multiple providers using the same string as two different tokens.
|
|
19
|
+
*
|
|
20
|
+
* Using an `OpaqueToken` is preferable to using an `Object` as tokens because it provides better
|
|
21
|
+
* error messages.
|
|
22
|
+
* @ts2dart_const
|
|
23
|
+
* @stable
|
|
24
|
+
*/
|
|
24
25
|
var OpaqueToken = (function () {
|
|
25
26
|
function OpaqueToken(_desc) {
|
|
26
27
|
this._desc = _desc;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opaque_token.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/opaque_token.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"opaque_token.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/opaque_token.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH;IACE,qBAAoB,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;IAAG,CAAC;IAErC,8BAAQ,GAAR,cAAqB,MAAM,CAAC,WAAS,IAAI,CAAC,KAAO,CAAC,CAAC,CAAC;IACtD,kBAAC;AAAD,CAAC,AAJD,IAIC;AAJY,mBAAW,cAIvB,CAAA","sourcesContent":["/**\n * Creates a token that can be used in a DI Provider.\n *\n * ### Example ([live demo](http://plnkr.co/edit/Ys9ezXpj2Mnoy3Uc8KBp?p=preview))\n *\n * ```typescript\n * var t = new OpaqueToken(\"value\");\n *\n * var injector = Injector.resolveAndCreate([\n * {provide: t, useValue: \"bindingValue\"}\n * ]);\n *\n * expect(injector.get(t)).toEqual(\"bindingValue\");\n * ```\n *\n * Using an `OpaqueToken` is preferable to using strings as tokens because of possible collisions\n * caused by multiple providers using the same string as two different tokens.\n *\n * Using an `OpaqueToken` is preferable to using an `Object` as tokens because it provides better\n * error messages.\n * @ts2dart_const\n * @stable\n */\nexport class OpaqueToken {\n constructor(private _desc: string) {}\n\n toString(): string { return `Token ${this._desc}`; }\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
|
package/src/di/provider.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Type } from '
|
|
1
|
+
import { Type } from '../facade/lang';
|
|
2
2
|
/**
|
|
3
3
|
* Describes how the {@link Injector} should instantiate a given token.
|
|
4
4
|
*
|
|
@@ -14,6 +14,7 @@ import { Type } from '../../src/facade/lang';
|
|
|
14
14
|
* expect(injector.get("message")).toEqual('Hello');
|
|
15
15
|
* ```
|
|
16
16
|
* @ts2dart_const
|
|
17
|
+
* @deprecated
|
|
17
18
|
*/
|
|
18
19
|
export declare class Provider {
|
|
19
20
|
/**
|
|
@@ -136,8 +137,6 @@ export declare class Provider {
|
|
|
136
137
|
* Used in conjunction with `useFactory`.
|
|
137
138
|
*/
|
|
138
139
|
dependencies: Object[];
|
|
139
|
-
/** @internal */
|
|
140
|
-
_multi: boolean;
|
|
141
140
|
constructor(token: any, {useClass, useValue, useExisting, useFactory, deps, multi}: {
|
|
142
141
|
useClass?: Type;
|
|
143
142
|
useValue?: any;
|
|
@@ -224,6 +223,7 @@ export declare class Binding extends Provider {
|
|
|
224
223
|
export declare function bind(token: any): ProviderBuilder;
|
|
225
224
|
/**
|
|
226
225
|
* Helper class for the {@link bind} function.
|
|
226
|
+
* @deprecated
|
|
227
227
|
*/
|
|
228
228
|
export declare class ProviderBuilder {
|
|
229
229
|
token: any;
|
|
@@ -243,11 +243,11 @@ export declare class ProviderBuilder {
|
|
|
243
243
|
*
|
|
244
244
|
* var injectorClass = Injector.resolveAndCreate([
|
|
245
245
|
* Car,
|
|
246
|
-
* provide
|
|
246
|
+
* {provide: Vehicle, useClass: Car}
|
|
247
247
|
* ]);
|
|
248
248
|
* var injectorAlias = Injector.resolveAndCreate([
|
|
249
249
|
* Car,
|
|
250
|
-
* provide
|
|
250
|
+
* {provide: Vehicle, useExisting: Car}
|
|
251
251
|
* ]);
|
|
252
252
|
*
|
|
253
253
|
* expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));
|
|
@@ -265,7 +265,7 @@ export declare class ProviderBuilder {
|
|
|
265
265
|
*
|
|
266
266
|
* ```typescript
|
|
267
267
|
* var injector = Injector.resolveAndCreate([
|
|
268
|
-
* provide
|
|
268
|
+
* {provide: 'message', useValue: 'Hello'}
|
|
269
269
|
* ]);
|
|
270
270
|
*
|
|
271
271
|
* expect(injector.get('message')).toEqual('Hello');
|
|
@@ -290,11 +290,11 @@ export declare class ProviderBuilder {
|
|
|
290
290
|
*
|
|
291
291
|
* var injectorAlias = Injector.resolveAndCreate([
|
|
292
292
|
* Car,
|
|
293
|
-
* provide
|
|
293
|
+
* {provide: Vehicle, useExisting: Car}
|
|
294
294
|
* ]);
|
|
295
295
|
* var injectorClass = Injector.resolveAndCreate([
|
|
296
296
|
* Car,
|
|
297
|
-
* provide
|
|
297
|
+
* {provide: Vehicle, useClass: Car})
|
|
298
298
|
* ]);
|
|
299
299
|
*
|
|
300
300
|
* expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));
|
|
@@ -312,8 +312,8 @@ export declare class ProviderBuilder {
|
|
|
312
312
|
*
|
|
313
313
|
* ```typescript
|
|
314
314
|
* var injector = Injector.resolveAndCreate([
|
|
315
|
-
* provide
|
|
316
|
-
* provide
|
|
315
|
+
* {provide: Number, useFactory: () => { return 1+2; }},
|
|
316
|
+
* {provide: String, useFactory: (v) => { return "Value: " + v; }, deps: [Number]}
|
|
317
317
|
* ]);
|
|
318
318
|
*
|
|
319
319
|
* expect(injector.get(Number)).toEqual(3);
|
|
@@ -328,6 +328,7 @@ export declare class ProviderBuilder {
|
|
|
328
328
|
* See {@link Provider} for more details.
|
|
329
329
|
*
|
|
330
330
|
* <!-- TODO: improve the docs -->
|
|
331
|
+
* @deprecated
|
|
331
332
|
*/
|
|
332
333
|
export declare function provide(token: any, {useClass, useValue, useExisting, useFactory, deps, multi}: {
|
|
333
334
|
useClass?: Type;
|
package/src/di/provider.js
CHANGED
|
@@ -4,8 +4,8 @@ var __extends = (this && this.__extends) || function (d, b) {
|
|
|
4
4
|
function __() { this.constructor = d; }
|
|
5
5
|
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
6
6
|
};
|
|
7
|
-
var
|
|
8
|
-
var
|
|
7
|
+
var exceptions_1 = require('../facade/exceptions');
|
|
8
|
+
var lang_1 = require('../facade/lang');
|
|
9
9
|
/**
|
|
10
10
|
* Describes how the {@link Injector} should instantiate a given token.
|
|
11
11
|
*
|
|
@@ -21,9 +21,10 @@ var exceptions_1 = require('../../src/facade/exceptions');
|
|
|
21
21
|
* expect(injector.get("message")).toEqual('Hello');
|
|
22
22
|
* ```
|
|
23
23
|
* @ts2dart_const
|
|
24
|
+
* @deprecated
|
|
24
25
|
*/
|
|
25
26
|
var Provider = (function () {
|
|
26
|
-
function Provider(token
|
|
27
|
+
function Provider(token /** TODO #9100 */, _a) {
|
|
27
28
|
var useClass = _a.useClass, useValue = _a.useValue, useExisting = _a.useExisting, useFactory = _a.useFactory, deps = _a.deps, multi = _a.multi;
|
|
28
29
|
this.token = token;
|
|
29
30
|
this.useClass = useClass;
|
|
@@ -79,7 +80,7 @@ exports.Provider = Provider;
|
|
|
79
80
|
*/
|
|
80
81
|
var Binding = (function (_super) {
|
|
81
82
|
__extends(Binding, _super);
|
|
82
|
-
function Binding(token
|
|
83
|
+
function Binding(token /** TODO #9100 */, _a) {
|
|
83
84
|
var toClass = _a.toClass, toValue = _a.toValue, toAlias = _a.toAlias, toFactory = _a.toFactory, deps = _a.deps, multi = _a.multi;
|
|
84
85
|
_super.call(this, token, {
|
|
85
86
|
useClass: toClass,
|
|
@@ -137,15 +138,16 @@ exports.Binding = Binding;
|
|
|
137
138
|
*
|
|
138
139
|
* @deprecated
|
|
139
140
|
*/
|
|
140
|
-
function bind(token) {
|
|
141
|
+
function bind(token /** TODO #9100 */) {
|
|
141
142
|
return new ProviderBuilder(token);
|
|
142
143
|
}
|
|
143
144
|
exports.bind = bind;
|
|
144
145
|
/**
|
|
145
146
|
* Helper class for the {@link bind} function.
|
|
147
|
+
* @deprecated
|
|
146
148
|
*/
|
|
147
149
|
var ProviderBuilder = (function () {
|
|
148
|
-
function ProviderBuilder(token) {
|
|
150
|
+
function ProviderBuilder(token /** TODO #9100 */) {
|
|
149
151
|
this.token = token;
|
|
150
152
|
}
|
|
151
153
|
/**
|
|
@@ -163,11 +165,11 @@ var ProviderBuilder = (function () {
|
|
|
163
165
|
*
|
|
164
166
|
* var injectorClass = Injector.resolveAndCreate([
|
|
165
167
|
* Car,
|
|
166
|
-
* provide
|
|
168
|
+
* {provide: Vehicle, useClass: Car}
|
|
167
169
|
* ]);
|
|
168
170
|
* var injectorAlias = Injector.resolveAndCreate([
|
|
169
171
|
* Car,
|
|
170
|
-
* provide
|
|
172
|
+
* {provide: Vehicle, useExisting: Car}
|
|
171
173
|
* ]);
|
|
172
174
|
*
|
|
173
175
|
* expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));
|
|
@@ -190,7 +192,7 @@ var ProviderBuilder = (function () {
|
|
|
190
192
|
*
|
|
191
193
|
* ```typescript
|
|
192
194
|
* var injector = Injector.resolveAndCreate([
|
|
193
|
-
* provide
|
|
195
|
+
* {provide: 'message', useValue: 'Hello'}
|
|
194
196
|
* ]);
|
|
195
197
|
*
|
|
196
198
|
* expect(injector.get('message')).toEqual('Hello');
|
|
@@ -215,11 +217,11 @@ var ProviderBuilder = (function () {
|
|
|
215
217
|
*
|
|
216
218
|
* var injectorAlias = Injector.resolveAndCreate([
|
|
217
219
|
* Car,
|
|
218
|
-
* provide
|
|
220
|
+
* {provide: Vehicle, useExisting: Car}
|
|
219
221
|
* ]);
|
|
220
222
|
* var injectorClass = Injector.resolveAndCreate([
|
|
221
223
|
* Car,
|
|
222
|
-
* provide
|
|
224
|
+
* {provide: Vehicle, useClass: Car})
|
|
223
225
|
* ]);
|
|
224
226
|
*
|
|
225
227
|
* expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));
|
|
@@ -242,8 +244,8 @@ var ProviderBuilder = (function () {
|
|
|
242
244
|
*
|
|
243
245
|
* ```typescript
|
|
244
246
|
* var injector = Injector.resolveAndCreate([
|
|
245
|
-
* provide
|
|
246
|
-
* provide
|
|
247
|
+
* {provide: Number, useFactory: () => { return 1+2; }},
|
|
248
|
+
* {provide: String, useFactory: (v) => { return "Value: " + v; }, deps: [Number]}
|
|
247
249
|
* ]);
|
|
248
250
|
*
|
|
249
251
|
* expect(injector.get(Number)).toEqual(3);
|
|
@@ -265,8 +267,9 @@ exports.ProviderBuilder = ProviderBuilder;
|
|
|
265
267
|
* See {@link Provider} for more details.
|
|
266
268
|
*
|
|
267
269
|
* <!-- TODO: improve the docs -->
|
|
270
|
+
* @deprecated
|
|
268
271
|
*/
|
|
269
|
-
function provide(token
|
|
272
|
+
function provide(token /** TODO #9100 */, _a) {
|
|
270
273
|
var useClass = _a.useClass, useValue = _a.useValue, useExisting = _a.useExisting, useFactory = _a.useFactory, deps = _a.deps, multi = _a.multi;
|
|
271
274
|
return new Provider(token, {
|
|
272
275
|
useClass: useClass,
|
package/src/di/provider.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/provider.ts"],"names":[],"mappings":"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","sourcesContent":["interface DecoratorInvocation {\n type: Function;\n args?: any[];\n }\n import {normalizeBool, Type, isType, isBlank, isFunction, stringify} from '../../src/facade/lang';\nimport {BaseException} from '../../src/facade/exceptions';\n\n/**\n * Describes how the {@link Injector} should instantiate a given token.\n *\n * See {@link provide}.\n *\n * ### Example ([live demo](http://plnkr.co/edit/GNAyj6K6PfYg2NBzgwZ5?p%3Dpreview&p=preview))\n *\n * ```javascript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"message\", { useValue: 'Hello' })\n * ]);\n *\n * expect(injector.get(\"message\")).toEqual('Hello');\n * ```\n * @ts2dart_const\n */\nexport class Provider {\n /**\n * Token used when retrieving this provider. Usually, it is a type {@link Type}.\n */\n token;\n\n /**\n * Binds a DI token to an implementation class.\n *\n * ### Example ([live demo](http://plnkr.co/edit/RSTG86qgmoxCyj9SWPwY?p=preview))\n *\n * Because `useExisting` and `useClass` are often confused, the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useClass: Car }\n * ]);\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useExisting: Car }\n * ]);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n useClass: Type;\n\n /**\n * Binds a DI token to a value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/UFVsMVQIDe7l4waWziES?p=preview))\n *\n * ```javascript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"message\", { useValue: 'Hello' })\n * ]);\n *\n * expect(injector.get(\"message\")).toEqual('Hello');\n * ```\n */\n useValue;\n\n /**\n * Binds a DI token to an existing token.\n *\n * {@link Injector} returns the same instance as if the provided token was used.\n * This is in contrast to `useClass` where a separate instance of `useClass` is returned.\n *\n * ### Example ([live demo](http://plnkr.co/edit/QsatsOJJ6P8T2fMe9gr8?p=preview))\n *\n * Because `useExisting` and `useClass` are often confused the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useExisting: Car }\n * ]);\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useClass: Car }\n * ]);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n useExisting;\n\n /**\n * Binds a DI token to a function which computes the value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/Scoxy0pJNqKGAPZY1VVC?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * {provide: Number, useFactory: () => { return 1+2; }},\n * new Provider(String, { useFactory: (value) => { return \"Value: \" + value; },\n * deps: [Number] })\n * ]);\n *\n * expect(injector.get(Number)).toEqual(3);\n * expect(injector.get(String)).toEqual('Value: 3');\n * ```\n *\n * Used in conjunction with dependencies.\n */\n useFactory: Function;\n\n /**\n * Specifies a set of dependencies\n * (as `token`s) which should be injected into the factory function.\n *\n * ### Example ([live demo](http://plnkr.co/edit/Scoxy0pJNqKGAPZY1VVC?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * {provide: Number, useFactory: () => { return 1+2; }},\n * new Provider(String, { useFactory: (value) => { return \"Value: \" + value; },\n * deps: [Number] })\n * ]);\n *\n * expect(injector.get(Number)).toEqual(3);\n * expect(injector.get(String)).toEqual('Value: 3');\n * ```\n *\n * Used in conjunction with `useFactory`.\n */\n dependencies: Object[];\n\n /** @internal */\n _multi: boolean;\n\n constructor(token, {useClass, useValue, useExisting, useFactory, deps, multi}: {\n useClass?: Type,\n useValue?: any,\n useExisting?: any,\n useFactory?: Function,\n deps?: Object[],\n multi?: boolean\n }) {\n this.token = token;\n this.useClass = useClass;\n this.useValue = useValue;\n this.useExisting = useExisting;\n this.useFactory = useFactory;\n this.dependencies = deps;\n this._multi = multi;\n }\n\n // TODO: Provide a full working example after alpha38 is released.\n /**\n * Creates multiple providers matching the same token (a multi-provider).\n *\n * Multi-providers are used for creating pluggable service, where the system comes\n * with some default providers, and the user can register additional providers.\n * The combination of the default providers and the additional providers will be\n * used to drive the behavior of the system.\n *\n * ### Example\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"Strings\", { useValue: \"String1\", multi: true}),\n * new Provider(\"Strings\", { useValue: \"String2\", multi: true})\n * ]);\n *\n * expect(injector.get(\"Strings\")).toEqual([\"String1\", \"String2\"]);\n * ```\n *\n * Multi-providers and regular providers cannot be mixed. The following\n * will throw an exception:\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"Strings\", { useValue: \"String1\", multi: true }),\n * new Provider(\"Strings\", { useValue: \"String2\"})\n * ]);\n * ```\n */\n get multi(): boolean { return normalizeBool(this._multi); }\n}\n\n/**\n * See {@link Provider} instead.\n *\n * @deprecated\n * @ts2dart_const\n */\nexport class Binding extends Provider {\n constructor(token, {toClass, toValue, toAlias, toFactory, deps, multi}: {\n toClass?: Type,\n toValue?: any,\n toAlias?: any,\n toFactory: Function, deps?: Object[], multi?: boolean\n }) {\n super(token, {\n useClass: toClass,\n useValue: toValue,\n useExisting: toAlias,\n useFactory: toFactory,\n deps: deps,\n multi: multi\n });\n }\n\n /**\n * @deprecated\n */\n get toClass() { return this.useClass; }\n\n /**\n * @deprecated\n */\n get toAlias() { return this.useExisting; }\n\n /**\n * @deprecated\n */\n get toFactory() { return this.useFactory; }\n\n /**\n * @deprecated\n */\n get toValue() { return this.useValue; }\n}\n\n/**\n * Creates a {@link Provider}.\n *\n * To construct a {@link Provider}, bind a `token` to either a class, a value, a factory function,\n * or\n * to an existing `token`.\n * See {@link ProviderBuilder} for more details.\n *\n * The `token` is most commonly a class or {@link OpaqueToken-class.html}.\n *\n * @deprecated\n */\nexport function bind(token): ProviderBuilder {\n return new ProviderBuilder(token);\n}\n\n/**\n * Helper class for the {@link bind} function.\n */\nexport class ProviderBuilder {\n constructor(public token) {}\n\n /**\n * Binds a DI token to a class.\n *\n * ### Example ([live demo](http://plnkr.co/edit/ZpBCSYqv6e2ud5KXLdxQ?p=preview))\n *\n * Because `toAlias` and `toClass` are often confused, the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * provide(Vehicle, {useClass: Car})\n * ]);\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * provide(Vehicle, {useExisting: Car})\n * ]);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n toClass(type: Type): Provider {\n if (!isType(type)) {\n throw new BaseException(\n `Trying to create a class provider but \"${stringify(type)}\" is not a class!`);\n }\n return new Provider(this.token, {useClass: type});\n }\n\n /**\n * Binds a DI token to a value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/G024PFHmDL0cJFgfZK8O?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * provide('message', {useValue: 'Hello'})\n * ]);\n *\n * expect(injector.get('message')).toEqual('Hello');\n * ```\n */\n toValue(value: any): Provider { return new Provider(this.token, {useValue: value}); }\n\n /**\n * Binds a DI token to an existing token.\n *\n * Angular will return the same instance as if the provided token was used. (This is\n * in contrast to `useClass` where a separate instance of `useClass` will be returned.)\n *\n * ### Example ([live demo](http://plnkr.co/edit/uBaoF2pN5cfc5AfZapNw?p=preview))\n *\n * Because `toAlias` and `toClass` are often confused, the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * provide(Vehicle, {useExisting: Car})\n * ]);\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * provide(Vehicle, {useClass: Car})\n * ]);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n toAlias(aliasToken: /*Type*/ any): Provider {\n if (isBlank(aliasToken)) {\n throw new BaseException(`Can not alias ${stringify(this.token)} to a blank value!`);\n }\n return new Provider(this.token, {useExisting: aliasToken});\n }\n\n /**\n * Binds a DI token to a function which computes the value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/OejNIfTT3zb1iBxaIYOb?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * provide(Number, {useFactory: () => { return 1+2; }}),\n * provide(String, {useFactory: (v) => { return \"Value: \" + v; }, deps: [Number]})\n * ]);\n *\n * expect(injector.get(Number)).toEqual(3);\n * expect(injector.get(String)).toEqual('Value: 3');\n * ```\n */\n toFactory(factory: Function, dependencies?: any[]): Provider {\n if (!isFunction(factory)) {\n throw new BaseException(\n `Trying to create a factory provider but \"${stringify(factory)}\" is not a function!`);\n }\n return new Provider(this.token, {useFactory: factory, deps: dependencies});\n }\n}\n\n/**\n * Creates a {@link Provider}.\n *\n * See {@link Provider} for more details.\n *\n * <!-- TODO: improve the docs -->\n */\nexport function provide(token, {useClass, useValue, useExisting, useFactory, deps, multi}: {\n useClass?: Type,\n useValue?: any,\n useExisting?: any,\n useFactory?: Function,\n deps?: Object[],\n multi?: boolean\n}): Provider {\n return new Provider(token, {\n useClass: useClass,\n useValue: useValue,\n useExisting: useExisting,\n useFactory: useFactory,\n deps: deps,\n multi: multi\n });\n}\n"]}
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/provider.ts"],"names":[],"mappings":";;;;;;AAAA,2BAA4B,sBAAsB,CAAC,CAAA;AACnD,qBAA0E,gBAAgB,CAAC,CAAA;AAG3F;;;;;;;;;;;;;;;;GAgBG;AACH;IAkIE,kBACI,KAAU,CAAC,iBAAiB,EAAE,EAO7B;YAP8B,sBAAQ,EAAE,sBAAQ,EAAE,4BAAW,EAAE,0BAAU,EAAE,cAAI,EAAE,gBAAK;QAQzF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAgCD,sBAAI,2BAAK;QA9BT,kEAAkE;QAClE;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA4BG;aACH,cAAuB,MAAM,CAAC,oBAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;;;OAAA;IAC7D,eAAC;AAAD,CAAC,AAnLD,IAmLC;AAnLY,gBAAQ,WAmLpB,CAAA;AAED;;;;;GAKG;AACH;IAA6B,2BAAQ;IACnC,iBAAY,KAAU,CAAC,iBAAiB,EAAE,EAKzC;YAL0C,oBAAO,EAAE,oBAAO,EAAE,oBAAO,EAAE,wBAAS,EAAE,cAAI,EAAE,gBAAK;QAM1F,kBAAM,KAAK,EAAE;YACX,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,OAAO;YACjB,WAAW,EAAE,OAAO;YACpB,UAAU,EAAE,SAAS;YACrB,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,KAAK;SACb,CAAC,CAAC;IACL,CAAC;IAKD,sBAAI,4BAAO;QAHX;;WAEG;aACH,cAAgB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;;;OAAA;IAKvC,sBAAI,4BAAO;QAHX;;WAEG;aACH,cAAgB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;;;OAAA;IAK1C,sBAAI,8BAAS;QAHb;;WAEG;aACH,cAAkB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;;;OAAA;IAK3C,sBAAI,4BAAO;QAHX;;WAEG;aACH,cAAgB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;;;OAAA;IACzC,cAAC;AAAD,CAAC,AApCD,CAA6B,QAAQ,GAoCpC;AApCY,eAAO,UAoCnB,CAAA;AAED;;;;;;;;;;;GAWG;AACH,cAAqB,KAAU,CAAC,iBAAiB;IAC/C,MAAM,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC;AAFe,YAAI,OAEnB,CAAA;AAED;;;GAGG;AACH;IACE,yBAAmB,KAAU,CAAC,iBAAiB;QAA5B,UAAK,GAAL,KAAK,CAAK;IAAqB,CAAC;IAEnD;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,iCAAO,GAAP,UAAQ,IAAU;QAChB,EAAE,CAAC,CAAC,CAAC,aAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,MAAM,IAAI,0BAAa,CACnB,6CAA0C,gBAAS,CAAC,IAAI,CAAC,uBAAmB,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,iCAAO,GAAP,UAAQ,KAAU,IAAc,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC,CAAC;IAErF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,iCAAO,GAAP,UAAQ,UAAwB;QAC9B,EAAE,CAAC,CAAC,cAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,IAAI,0BAAa,CAAC,mBAAiB,gBAAS,CAAC,IAAI,CAAC,KAAK,CAAC,uBAAoB,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAC,WAAW,EAAE,UAAU,EAAC,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,mCAAS,GAAT,UAAU,OAAiB,EAAE,YAAoB;QAC/C,EAAE,CAAC,CAAC,CAAC,iBAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACzB,MAAM,IAAI,0BAAa,CACnB,+CAA4C,gBAAS,CAAC,OAAO,CAAC,0BAAsB,CAAC,CAAC;QAC5F,CAAC;QACD,MAAM,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAC,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAC,CAAC,CAAC;IAC7E,CAAC;IACH,sBAAC;AAAD,CAAC,AApHD,IAoHC;AApHY,uBAAe,kBAoH3B,CAAA;AAED;;;;;;;GAOG;AACH,iBACI,KAAU,CAAC,iBAAiB,EAAE,EAO7B;QAP8B,sBAAQ,EAAE,sBAAQ,EAAE,4BAAW,EAAE,0BAAU,EAAE,cAAI,EAAE,gBAAK;IAQzF,MAAM,CAAC,IAAI,QAAQ,CAAC,KAAK,EAAE;QACzB,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,UAAU;QACtB,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;AACL,CAAC;AAjBe,eAAO,UAiBtB,CAAA","sourcesContent":["import {BaseException} from '../facade/exceptions';\nimport {Type, isBlank, isFunction, isType, normalizeBool, stringify} from '../facade/lang';\n\n\n/**\n * Describes how the {@link Injector} should instantiate a given token.\n *\n * See {@link provide}.\n *\n * ### Example ([live demo](http://plnkr.co/edit/GNAyj6K6PfYg2NBzgwZ5?p%3Dpreview&p=preview))\n *\n * ```javascript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"message\", { useValue: 'Hello' })\n * ]);\n *\n * expect(injector.get(\"message\")).toEqual('Hello');\n * ```\n * @ts2dart_const\n * @deprecated\n */\nexport class Provider {\n /**\n * Token used when retrieving this provider. Usually, it is a type {@link Type}.\n */\n token: any /** TODO #9100 */;\n\n /**\n * Binds a DI token to an implementation class.\n *\n * ### Example ([live demo](http://plnkr.co/edit/RSTG86qgmoxCyj9SWPwY?p=preview))\n *\n * Because `useExisting` and `useClass` are often confused, the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useClass: Car }\n * ]);\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useExisting: Car }\n * ]);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n useClass: Type;\n\n /**\n * Binds a DI token to a value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/UFVsMVQIDe7l4waWziES?p=preview))\n *\n * ```javascript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"message\", { useValue: 'Hello' })\n * ]);\n *\n * expect(injector.get(\"message\")).toEqual('Hello');\n * ```\n */\n useValue: any /** TODO #9100 */;\n\n /**\n * Binds a DI token to an existing token.\n *\n * {@link Injector} returns the same instance as if the provided token was used.\n * This is in contrast to `useClass` where a separate instance of `useClass` is returned.\n *\n * ### Example ([live demo](http://plnkr.co/edit/QsatsOJJ6P8T2fMe9gr8?p=preview))\n *\n * Because `useExisting` and `useClass` are often confused the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useExisting: Car }\n * ]);\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useClass: Car }\n * ]);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n useExisting: any /** TODO #9100 */;\n\n /**\n * Binds a DI token to a function which computes the value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/Scoxy0pJNqKGAPZY1VVC?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * {provide: Number, useFactory: () => { return 1+2; }},\n * new Provider(String, { useFactory: (value) => { return \"Value: \" + value; },\n * deps: [Number] })\n * ]);\n *\n * expect(injector.get(Number)).toEqual(3);\n * expect(injector.get(String)).toEqual('Value: 3');\n * ```\n *\n * Used in conjunction with dependencies.\n */\n useFactory: Function;\n\n /**\n * Specifies a set of dependencies\n * (as `token`s) which should be injected into the factory function.\n *\n * ### Example ([live demo](http://plnkr.co/edit/Scoxy0pJNqKGAPZY1VVC?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * {provide: Number, useFactory: () => { return 1+2; }},\n * new Provider(String, { useFactory: (value) => { return \"Value: \" + value; },\n * deps: [Number] })\n * ]);\n *\n * expect(injector.get(Number)).toEqual(3);\n * expect(injector.get(String)).toEqual('Value: 3');\n * ```\n *\n * Used in conjunction with `useFactory`.\n */\n dependencies: Object[];\n\n /** @internal */\n _multi: boolean;\n\n constructor(\n token: any /** TODO #9100 */, {useClass, useValue, useExisting, useFactory, deps, multi}: {\n useClass?: Type,\n useValue?: any,\n useExisting?: any,\n useFactory?: Function,\n deps?: Object[],\n multi?: boolean\n }) {\n this.token = token;\n this.useClass = useClass;\n this.useValue = useValue;\n this.useExisting = useExisting;\n this.useFactory = useFactory;\n this.dependencies = deps;\n this._multi = multi;\n }\n\n // TODO: Provide a full working example after alpha38 is released.\n /**\n * Creates multiple providers matching the same token (a multi-provider).\n *\n * Multi-providers are used for creating pluggable service, where the system comes\n * with some default providers, and the user can register additional providers.\n * The combination of the default providers and the additional providers will be\n * used to drive the behavior of the system.\n *\n * ### Example\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"Strings\", { useValue: \"String1\", multi: true}),\n * new Provider(\"Strings\", { useValue: \"String2\", multi: true})\n * ]);\n *\n * expect(injector.get(\"Strings\")).toEqual([\"String1\", \"String2\"]);\n * ```\n *\n * Multi-providers and regular providers cannot be mixed. The following\n * will throw an exception:\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * new Provider(\"Strings\", { useValue: \"String1\", multi: true }),\n * new Provider(\"Strings\", { useValue: \"String2\"})\n * ]);\n * ```\n */\n get multi(): boolean { return normalizeBool(this._multi); }\n}\n\n/**\n * See {@link Provider} instead.\n *\n * @deprecated\n * @ts2dart_const\n */\nexport class Binding extends Provider {\n constructor(token: any /** TODO #9100 */, {toClass, toValue, toAlias, toFactory, deps, multi}: {\n toClass?: Type,\n toValue?: any,\n toAlias?: any,\n toFactory: Function, deps?: Object[], multi?: boolean\n }) {\n super(token, {\n useClass: toClass,\n useValue: toValue,\n useExisting: toAlias,\n useFactory: toFactory,\n deps: deps,\n multi: multi\n });\n }\n\n /**\n * @deprecated\n */\n get toClass() { return this.useClass; }\n\n /**\n * @deprecated\n */\n get toAlias() { return this.useExisting; }\n\n /**\n * @deprecated\n */\n get toFactory() { return this.useFactory; }\n\n /**\n * @deprecated\n */\n get toValue() { return this.useValue; }\n}\n\n/**\n * Creates a {@link Provider}.\n *\n * To construct a {@link Provider}, bind a `token` to either a class, a value, a factory function,\n * or\n * to an existing `token`.\n * See {@link ProviderBuilder} for more details.\n *\n * The `token` is most commonly a class or {@link OpaqueToken-class.html}.\n *\n * @deprecated\n */\nexport function bind(token: any /** TODO #9100 */): ProviderBuilder {\n return new ProviderBuilder(token);\n}\n\n/**\n * Helper class for the {@link bind} function.\n * @deprecated\n */\nexport class ProviderBuilder {\n constructor(public token: any /** TODO #9100 */) {}\n\n /**\n * Binds a DI token to a class.\n *\n * ### Example ([live demo](http://plnkr.co/edit/ZpBCSYqv6e2ud5KXLdxQ?p=preview))\n *\n * Because `toAlias` and `toClass` are often confused, the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useClass: Car}\n * ]);\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useExisting: Car}\n * ]);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n toClass(type: Type): Provider {\n if (!isType(type)) {\n throw new BaseException(\n `Trying to create a class provider but \"${stringify(type)}\" is not a class!`);\n }\n return new Provider(this.token, {useClass: type});\n }\n\n /**\n * Binds a DI token to a value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/G024PFHmDL0cJFgfZK8O?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * {provide: 'message', useValue: 'Hello'}\n * ]);\n *\n * expect(injector.get('message')).toEqual('Hello');\n * ```\n */\n toValue(value: any): Provider { return new Provider(this.token, {useValue: value}); }\n\n /**\n * Binds a DI token to an existing token.\n *\n * Angular will return the same instance as if the provided token was used. (This is\n * in contrast to `useClass` where a separate instance of `useClass` will be returned.)\n *\n * ### Example ([live demo](http://plnkr.co/edit/uBaoF2pN5cfc5AfZapNw?p=preview))\n *\n * Because `toAlias` and `toClass` are often confused, the example contains\n * both use cases for easy comparison.\n *\n * ```typescript\n * class Vehicle {}\n *\n * class Car extends Vehicle {}\n *\n * var injectorAlias = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useExisting: Car}\n * ]);\n * var injectorClass = Injector.resolveAndCreate([\n * Car,\n * {provide: Vehicle, useClass: Car})\n * ]);\n *\n * expect(injectorAlias.get(Vehicle)).toBe(injectorAlias.get(Car));\n * expect(injectorAlias.get(Vehicle) instanceof Car).toBe(true);\n *\n * expect(injectorClass.get(Vehicle)).not.toBe(injectorClass.get(Car));\n * expect(injectorClass.get(Vehicle) instanceof Car).toBe(true);\n * ```\n */\n toAlias(aliasToken: /*Type*/ any): Provider {\n if (isBlank(aliasToken)) {\n throw new BaseException(`Can not alias ${stringify(this.token)} to a blank value!`);\n }\n return new Provider(this.token, {useExisting: aliasToken});\n }\n\n /**\n * Binds a DI token to a function which computes the value.\n *\n * ### Example ([live demo](http://plnkr.co/edit/OejNIfTT3zb1iBxaIYOb?p=preview))\n *\n * ```typescript\n * var injector = Injector.resolveAndCreate([\n * {provide: Number, useFactory: () => { return 1+2; }},\n * {provide: String, useFactory: (v) => { return \"Value: \" + v; }, deps: [Number]}\n * ]);\n *\n * expect(injector.get(Number)).toEqual(3);\n * expect(injector.get(String)).toEqual('Value: 3');\n * ```\n */\n toFactory(factory: Function, dependencies?: any[]): Provider {\n if (!isFunction(factory)) {\n throw new BaseException(\n `Trying to create a factory provider but \"${stringify(factory)}\" is not a function!`);\n }\n return new Provider(this.token, {useFactory: factory, deps: dependencies});\n }\n}\n\n/**\n * Creates a {@link Provider}.\n *\n * See {@link Provider} for more details.\n *\n * <!-- TODO: improve the docs -->\n * @deprecated\n */\nexport function provide(\n token: any /** TODO #9100 */, {useClass, useValue, useExisting, useFactory, deps, multi}: {\n useClass?: Type,\n useValue?: any,\n useExisting?: any,\n useFactory?: Function,\n deps?: Object[],\n multi?: boolean\n }): Provider {\n return new Provider(token, {\n useClass: useClass,\n useValue: useValue,\n useExisting: useExisting,\n useFactory: useFactory,\n deps: deps,\n multi: multi\n });\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"__symbolic":"module","version":1,"metadata":{"bind":{"__symbolic":"function","parameters":["token"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"ProviderBuilder"},"arguments":[{"__symbolic":"reference","name":"token"}]}},"provide":{"__symbolic":"function","parameters":["token","useClass","useValue","useExisting","useFactory","deps","multi"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Provider"},"arguments":[{"__symbolic":"reference","name":"token"},{"useClass":{"__symbolic":"reference","name":"useClass"},"useValue":{"__symbolic":"reference","name":"useValue"},"useExisting":{"__symbolic":"reference","name":"useExisting"},"useFactory":{"__symbolic":"reference","name":"useFactory"},"deps":{"__symbolic":"reference","name":"deps"},"multi":{"__symbolic":"reference","name":"multi"}}]}}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider_util.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/provider_util.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"provider_util.js","sourceRoot":"","sources":["../../../../../modules/@angular/core/src/di/provider_util.ts"],"names":[],"mappings":";AAAA,yBAAuB,YAAY,CAAC,CAAA;AAEpC,2BAAkC,GAAQ;IACxC,MAAM,CAAC,GAAG,IAAI,OAAO,GAAG,IAAI,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC;AACtD,CAAC;AAFe,yBAAiB,oBAEhC,CAAA;AAED,wBAA+B,GAAQ;IACrC,MAAM,CAAC,IAAI,mBAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AACxC,CAAC;AAFe,sBAAc,iBAE7B,CAAA","sourcesContent":["import {Provider} from './provider';\n\nexport function isProviderLiteral(obj: any): boolean {\n return obj && typeof obj == 'object' && obj.provide;\n}\n\nexport function createProvider(obj: any): Provider {\n return new Provider(obj.provide, obj);\n}\n\ninterface DecoratorInvocation {\n type: Function;\n args?: any[];\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"__symbolic":"module","version":1,"metadata":{"isProviderLiteral":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"obj"},"right":{"__symbolic":"binop","operator":"==","left":{"__symbolic":"error","message":"Expression form not supported","line":3,"character":15},"right":"object"}},"right":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"obj"},"member":"provide"}}},"createProvider":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"./provider","name":"Provider"},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"obj"},"member":"provide"},{"__symbolic":"reference","name":"obj"}]}}}}
|