@angular/core 7.0.0-rc.1 → 7.0.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.
- package/bundles/core-testing.umd.js +36 -33
- package/bundles/core-testing.umd.js.map +1 -1
- package/bundles/core-testing.umd.min.js +3 -3
- package/bundles/core-testing.umd.min.js.map +1 -1
- package/bundles/core.umd.js +1856 -1463
- package/bundles/core.umd.js.map +1 -1
- package/bundles/core.umd.min.js +155 -94
- package/bundles/core.umd.min.js.map +1 -1
- package/core.d.ts +7 -6
- package/core.metadata.json +1 -1
- package/esm2015/core.externs.js +0 -3
- package/esm2015/core.js +6 -6
- package/esm2015/index.js +2 -2
- package/esm2015/public_api.js +2 -2
- package/esm2015/src/application_init.js +5 -1
- package/esm2015/src/application_module.js +2 -2
- package/esm2015/src/application_ref.js +11 -9
- package/esm2015/src/application_tokens.js +7 -7
- package/esm2015/src/change_detection/change_detection_util.js +3 -1
- package/esm2015/src/change_detection/change_detector_ref.js +2 -1
- package/esm2015/src/change_detection/constants.js +1 -1
- package/esm2015/src/change_detection/differs/default_iterable_differ.js +2 -1
- package/esm2015/src/change_detection/differs/iterable_differs.js +8 -6
- package/esm2015/src/change_detection/differs/keyvalue_differs.js +6 -5
- package/esm2015/src/change_detection/pipe_transform.js +2 -2
- package/esm2015/src/core.js +2 -2
- package/esm2015/src/core_render3_private_export.js +5 -4
- package/esm2015/src/debug/debug_node.js +6 -6
- package/esm2015/src/di/defs.js +5 -5
- package/esm2015/src/di/forward_ref.js +4 -4
- package/esm2015/src/di/injectable.js +5 -2
- package/esm2015/src/di/injection_token.js +3 -1
- package/esm2015/src/di/injector.js +3 -3
- package/esm2015/src/di/metadata.js +16 -1
- package/esm2015/src/di/provider.js +16 -6
- package/esm2015/src/di/r3_injector.js +2 -2
- package/esm2015/src/di/reflective_injector.js +2 -2
- package/esm2015/src/di/reflective_key.js +3 -1
- package/esm2015/src/di/reflective_provider.js +3 -3
- package/esm2015/src/error_handler.js +3 -1
- package/esm2015/src/event_emitter.js +2 -1
- package/esm2015/src/i18n/tokens.js +4 -4
- package/esm2015/src/is_dev_mode.js +4 -2
- package/esm2015/src/ivy_switch/runtime/index.js +2 -2
- package/esm2015/src/ivy_switch/runtime/ivy_switch_on.js +4 -2
- package/esm2015/src/ivy_switch/runtime/jit.js +2 -2
- package/esm2015/src/ivy_switch/runtime/legacy.js +7 -1
- package/esm2015/src/ivy_switch/runtime/local.js +2 -2
- package/esm2015/src/linker/compiler.js +5 -4
- package/esm2015/src/linker/component_factory.js +4 -2
- package/esm2015/src/linker/component_factory_resolver.js +2 -1
- package/esm2015/src/linker/element_ref.js +2 -2
- package/esm2015/src/linker/ng_module_factory.js +3 -3
- package/esm2015/src/linker/ng_module_factory_loader.js +4 -3
- package/esm2015/src/linker/query_list.js +3 -1
- package/esm2015/src/linker/system_js_ng_module_factory_loader.js +3 -3
- package/esm2015/src/linker/template_ref.js +2 -1
- package/esm2015/src/linker/view_container_ref.js +2 -1
- package/esm2015/src/linker/view_ref.js +4 -2
- package/esm2015/src/metadata/di.js +13 -5
- package/esm2015/src/metadata/directives.js +20 -7
- package/esm2015/src/metadata/lifecycle_hooks.js +10 -5
- package/esm2015/src/metadata/ng_module.js +8 -6
- package/esm2015/src/metadata/view.js +1 -1
- package/esm2015/src/platform_core_providers.js +2 -2
- package/esm2015/src/profile/profile.js +5 -5
- package/esm2015/src/profile/wtf_impl.js +2 -2
- package/esm2015/src/r3_symbols.js +1 -1
- package/esm2015/src/reflection/reflection_capabilities.js +3 -3
- package/esm2015/src/render/api.js +20 -7
- package/esm2015/src/render3/component.js +52 -18
- package/esm2015/src/render3/component_ref.js +15 -15
- package/esm2015/src/render3/context_discovery.js +35 -126
- package/esm2015/src/render3/debug.js +33 -56
- package/esm2015/src/render3/definition.js +42 -37
- package/esm2015/src/render3/di.js +4 -28
- package/esm2015/src/render3/discovery_utils.js +10 -7
- package/esm2015/src/render3/i18n.js +60 -34
- package/esm2015/src/render3/index.js +3 -3
- package/esm2015/src/render3/instructions.js +162 -275
- package/esm2015/src/render3/interfaces/container.js +7 -5
- package/esm2015/src/render3/interfaces/context.js +60 -0
- package/esm2015/src/render3/interfaces/definition.js +7 -1
- package/esm2015/src/render3/interfaces/i18n.js +338 -0
- package/esm2015/src/render3/interfaces/node.js +12 -126
- package/esm2015/src/render3/interfaces/player.js +73 -1
- package/esm2015/src/render3/interfaces/styling.js +18 -22
- package/esm2015/src/render3/interfaces/view.js +19 -26
- package/esm2015/src/render3/jit/compiler_facade.js +22 -0
- package/esm2015/src/render3/jit/compiler_facade_interface.js +229 -0
- package/esm2015/src/render3/jit/directive.js +57 -93
- package/esm2015/src/render3/jit/environment.js +7 -3
- package/esm2015/src/render3/jit/injectable.js +21 -46
- package/esm2015/src/render3/jit/module.js +16 -43
- package/esm2015/src/render3/jit/pipe.js +6 -12
- package/esm2015/src/render3/jit/util.js +14 -17
- package/esm2015/src/render3/node_assert.js +1 -1
- package/esm2015/src/render3/node_manipulation.js +99 -109
- package/esm2015/src/render3/players.js +67 -0
- package/esm2015/src/render3/styling/class_and_style_bindings.js +347 -88
- package/esm2015/src/render3/styling/core_player_handler.js +2 -2
- package/esm2015/src/render3/styling/player_factory.js +48 -0
- package/esm2015/src/render3/styling/util.js +165 -17
- package/esm2015/src/render3/util.js +73 -20
- package/esm2015/src/render3/view_engine_compatibility.js +56 -40
- package/esm2015/src/sanitization/security.js +2 -2
- package/esm2015/src/testability/testability.js +5 -6
- package/esm2015/src/type.js +5 -2
- package/esm2015/src/util/decorators.js +2 -1
- package/esm2015/src/util.js +15 -1
- package/esm2015/src/version.js +6 -4
- package/esm2015/src/view/refs.js +3 -3
- package/esm2015/src/view/services.js +8 -6
- package/esm2015/src/zone/ng_zone.js +2 -2
- package/esm2015/testing/src/async.js +2 -2
- package/esm2015/testing/src/component_fixture.js +2 -2
- package/esm2015/testing/src/fake_async.js +7 -7
- package/esm2015/testing/src/fake_async_fallback.js +7 -7
- package/esm2015/testing/src/metadata_override.js +1 -1
- package/esm2015/testing/src/r3_test_bed.js +8 -6
- package/esm2015/testing/src/test_bed.js +10 -8
- package/esm2015/testing/src/test_bed_common.js +6 -6
- package/esm2015/testing/src/test_compiler.js +3 -3
- package/esm5/core.js +6 -6
- package/esm5/src/application_init.js +5 -1
- package/esm5/src/application_module.js +2 -2
- package/esm5/src/application_ref.js +11 -9
- package/esm5/src/application_tokens.js +7 -7
- package/esm5/src/change_detection/change_detection_util.js +3 -1
- package/esm5/src/change_detection/change_detector_ref.js +2 -1
- package/esm5/src/change_detection/constants.js +2 -1
- package/esm5/src/change_detection/differs/default_iterable_differ.js +2 -1
- package/esm5/src/change_detection/differs/iterable_differs.js +2 -1
- package/esm5/src/change_detection/differs/keyvalue_differs.js +2 -1
- package/esm5/src/change_detection/pipe_transform.js +1 -1
- package/esm5/src/core_render3_private_export.js +5 -4
- package/esm5/src/debug/debug_node.js +5 -5
- package/esm5/src/di/defs.js +3 -3
- package/esm5/src/di/forward_ref.js +3 -3
- package/esm5/src/di/injectable.js +6 -5
- package/esm5/src/di/injection_token.js +3 -1
- package/esm5/src/di/injector.js +3 -3
- package/esm5/src/di/metadata.js +6 -1
- package/esm5/src/di/provider.js +1 -1
- package/esm5/src/di/r3_injector.js +2 -2
- package/esm5/src/di/reflective_injector.js +2 -2
- package/esm5/src/di/reflective_key.js +3 -1
- package/esm5/src/di/reflective_provider.js +2 -2
- package/esm5/src/error_handler.js +3 -1
- package/esm5/src/event_emitter.js +2 -1
- package/esm5/src/i18n/tokens.js +5 -5
- package/esm5/src/is_dev_mode.js +4 -2
- package/esm5/src/ivy_switch/runtime/ivy_switch_on.js +3 -2
- package/esm5/src/ivy_switch/runtime/legacy.js +4 -1
- package/esm5/src/linker/compiler.js +5 -4
- package/esm5/src/linker/component_factory.js +5 -1
- package/esm5/src/linker/component_factory_resolver.js +4 -1
- package/esm5/src/linker/element_ref.js +2 -2
- package/esm5/src/linker/ng_module_factory.js +3 -3
- package/esm5/src/linker/ng_module_factory_loader.js +4 -3
- package/esm5/src/linker/query_list.js +3 -1
- package/esm5/src/linker/system_js_ng_module_factory_loader.js +3 -3
- package/esm5/src/linker/template_ref.js +2 -1
- package/esm5/src/linker/view_container_ref.js +2 -1
- package/esm5/src/linker/view_ref.js +4 -2
- package/esm5/src/metadata/di.js +10 -3
- package/esm5/src/metadata/directives.js +9 -6
- package/esm5/src/metadata/lifecycle_hooks.js +1 -1
- package/esm5/src/metadata/ng_module.js +4 -3
- package/esm5/src/metadata/view.js +4 -1
- package/esm5/src/platform_core_providers.js +2 -2
- package/esm5/src/profile/profile.js +5 -5
- package/esm5/src/profile/wtf_impl.js +1 -1
- package/esm5/src/r3_symbols.js +1 -1
- package/esm5/src/reflection/reflection_capabilities.js +3 -3
- package/esm5/src/render/api.js +11 -5
- package/esm5/src/render3/component.js +45 -16
- package/esm5/src/render3/component_ref.js +12 -13
- package/esm5/src/render3/context_discovery.js +33 -65
- package/esm5/src/render3/debug.js +31 -50
- package/esm5/src/render3/definition.js +35 -31
- package/esm5/src/render3/di.js +4 -20
- package/esm5/src/render3/discovery_utils.js +12 -7
- package/esm5/src/render3/i18n.js +40 -30
- package/esm5/src/render3/index.js +3 -3
- package/esm5/src/render3/instructions.js +143 -230
- package/esm5/src/render3/interfaces/container.js +6 -5
- package/esm5/src/render3/interfaces/context.js +13 -0
- package/esm5/src/render3/interfaces/definition.js +1 -1
- package/esm5/src/render3/interfaces/i18n.js +25 -0
- package/esm5/src/render3/interfaces/node.js +1 -1
- package/esm5/src/render3/interfaces/player.js +1 -1
- package/esm5/src/render3/interfaces/styling.js +1 -8
- package/esm5/src/render3/interfaces/view.js +18 -17
- package/esm5/src/render3/jit/compiler_facade.js +21 -0
- package/esm5/src/render3/jit/compiler_facade_interface.js +15 -0
- package/esm5/src/render3/jit/directive.js +44 -79
- package/esm5/src/render3/jit/environment.js +7 -3
- package/esm5/src/render3/jit/injectable.js +26 -46
- package/esm5/src/render3/jit/module.js +16 -31
- package/esm5/src/render3/jit/pipe.js +6 -9
- package/esm5/src/render3/jit/util.js +12 -17
- package/esm5/src/render3/node_assert.js +1 -1
- package/esm5/src/render3/node_manipulation.js +89 -101
- package/esm5/src/render3/players.js +59 -0
- package/esm5/src/render3/styling/class_and_style_bindings.js +248 -85
- package/esm5/src/render3/styling/core_player_handler.js +2 -2
- package/esm5/src/render3/styling/player_factory.js +29 -0
- package/esm5/src/render3/styling/util.js +132 -14
- package/esm5/src/render3/util.js +54 -21
- package/esm5/src/render3/view_engine_compatibility.js +46 -32
- package/esm5/src/sanitization/security.js +3 -3
- package/esm5/src/testability/testability.js +4 -4
- package/esm5/src/type.js +2 -2
- package/esm5/src/util/decorators.js +1 -1
- package/esm5/src/util.js +13 -1
- package/esm5/src/version.js +6 -3
- package/esm5/src/view/refs.js +1 -1
- package/esm5/src/view/services.js +7 -10
- package/esm5/src/zone/ng_zone.js +2 -2
- package/esm5/testing/src/async.js +2 -2
- package/esm5/testing/src/component_fixture.js +2 -2
- package/esm5/testing/src/fake_async.js +7 -7
- package/esm5/testing/src/fake_async_fallback.js +7 -7
- package/esm5/testing/src/metadata_override.js +1 -1
- package/esm5/testing/src/r3_test_bed.js +8 -7
- package/esm5/testing/src/test_bed.js +10 -8
- package/esm5/testing/src/test_bed_common.js +4 -4
- package/esm5/testing/src/test_compiler.js +3 -3
- package/fesm2015/core.js +2486 -1951
- package/fesm2015/core.js.map +1 -1
- package/fesm2015/testing.js +36 -32
- package/fesm2015/testing.js.map +1 -1
- package/fesm5/core.js +1830 -1439
- package/fesm5/core.js.map +1 -1
- package/fesm5/testing.js +36 -33
- package/fesm5/testing.js.map +1 -1
- package/package.json +1 -2
- package/src/application_init.d.ts +4 -0
- package/src/application_module.d.ts +1 -1
- package/src/application_ref.d.ts +10 -8
- package/src/application_tokens.d.ts +6 -6
- package/src/change_detection/change_detection_util.d.ts +2 -0
- package/src/change_detection/change_detector_ref.d.ts +1 -0
- package/src/change_detection/constants.d.ts +1 -0
- package/src/change_detection/differs/default_iterable_differ.d.ts +1 -0
- package/src/change_detection/differs/iterable_differs.d.ts +8 -6
- package/src/change_detection/differs/keyvalue_differs.d.ts +5 -4
- package/src/change_detection/pipe_transform.d.ts +1 -1
- package/src/core_render3_private_export.d.ts +7 -5
- package/src/debug/debug_node.d.ts +5 -5
- package/src/di/defs.d.ts +4 -4
- package/src/di/forward_ref.d.ts +3 -3
- package/src/di/injectable.d.ts +10 -7
- package/src/di/injection_token.d.ts +2 -0
- package/src/di/injector.d.ts +5 -3
- package/src/di/metadata.d.ts +24 -1
- package/src/di/provider.d.ts +19 -5
- package/src/di/r3_injector.d.ts +1 -1
- package/src/di/reflective_injector.d.ts +1 -1
- package/src/di/reflective_key.d.ts +2 -0
- package/src/di/reflective_provider.d.ts +2 -2
- package/src/error_handler.d.ts +2 -0
- package/src/event_emitter.d.ts +1 -0
- package/src/i18n/tokens.d.ts +4 -4
- package/src/is_dev_mode.d.ts +3 -1
- package/src/ivy_switch/runtime/ivy_switch_on.d.ts +2 -1
- package/src/ivy_switch/runtime/legacy.d.ts +3 -0
- package/src/linker/compiler.d.ts +5 -4
- package/src/linker/component_factory.d.ts +5 -1
- package/src/linker/component_factory_resolver.d.ts +3 -0
- package/src/linker/element_ref.d.ts +1 -1
- package/src/linker/ng_module_factory.d.ts +2 -2
- package/src/linker/ng_module_factory_loader.d.ts +3 -2
- package/src/linker/query_list.d.ts +2 -0
- package/src/linker/system_js_ng_module_factory_loader.d.ts +2 -2
- package/src/linker/template_ref.d.ts +1 -0
- package/src/linker/view_container_ref.d.ts +1 -0
- package/src/linker/view_ref.d.ts +3 -1
- package/src/metadata/di.d.ts +13 -5
- package/src/metadata/directives.d.ts +19 -6
- package/src/metadata/lifecycle_hooks.d.ts +9 -4
- package/src/metadata/ng_module.d.ts +7 -7
- package/src/metadata/view.d.ts +3 -0
- package/src/platform_core_providers.d.ts +1 -1
- package/src/profile/profile.d.ts +4 -4
- package/src/profile/wtf_impl.d.ts +1 -1
- package/src/r3_symbols.d.ts +1 -1
- package/src/render/api.d.ts +10 -7
- package/src/render3/component.d.ts +14 -3
- package/src/render3/context_discovery.d.ts +6 -58
- package/src/render3/definition.d.ts +0 -4
- package/src/render3/di.d.ts +1 -3
- package/src/render3/discovery_utils.d.ts +7 -1
- package/src/render3/i18n.d.ts +4 -0
- package/src/render3/index.d.ts +2 -2
- package/src/render3/instructions.d.ts +43 -50
- package/src/render3/interfaces/container.d.ts +36 -22
- package/src/render3/interfaces/context.d.ts +52 -0
- package/src/render3/interfaces/definition.d.ts +8 -3
- package/src/render3/interfaces/i18n.d.ts +326 -0
- package/src/render3/interfaces/node.d.ts +12 -89
- package/src/render3/interfaces/player.d.ts +58 -4
- package/src/render3/interfaces/styling.d.ts +17 -15
- package/src/render3/interfaces/view.d.ts +28 -28
- package/src/render3/jit/compiler_facade.d.ts +3 -0
- package/src/render3/jit/compiler_facade_interface.d.ts +131 -0
- package/src/render3/jit/directive.d.ts +3 -0
- package/src/render3/jit/util.d.ts +3 -3
- package/src/render3/node_manipulation.d.ts +21 -22
- package/src/render3/players.d.ts +32 -0
- package/src/render3/styling/class_and_style_bindings.d.ts +31 -24
- package/src/render3/styling/player_factory.d.ts +31 -0
- package/src/render3/styling/util.d.ts +31 -9
- package/src/render3/util.d.ts +32 -15
- package/src/render3/view_engine_compatibility.d.ts +3 -0
- package/src/sanitization/security.d.ts +2 -2
- package/src/testability/testability.d.ts +5 -6
- package/src/type.d.ts +6 -1
- package/src/util/decorators.d.ts +1 -0
- package/src/util.d.ts +10 -0
- package/src/version.d.ts +4 -1
- package/src/view/services.d.ts +2 -2
- package/src/zone/ng_zone.d.ts +1 -1
- package/testing/src/async.d.ts +1 -1
- package/testing/src/component_fixture.d.ts +1 -1
- package/testing/src/fake_async.d.ts +6 -6
- package/testing/src/fake_async_fallback.d.ts +6 -6
- package/testing/src/metadata_override.d.ts +1 -1
- package/testing/src/r3_test_bed.d.ts +4 -4
- package/testing/src/test_bed.d.ts +12 -10
- package/testing/src/test_bed_common.d.ts +6 -6
- package/testing/src/test_compiler.d.ts +2 -2
- package/testing/testing.metadata.json +1 -1
- package/esm2015/src/render3/player.js +0 -51
- package/esm5/src/render3/player.js +0 -39
- package/src/render3/player.d.ts +0 -3
|
@@ -9,16 +9,15 @@
|
|
|
9
9
|
* Use of this source code is governed by an MIT-style license that can be
|
|
10
10
|
* found in the LICENSE file at https://angular.io/license
|
|
11
11
|
*/
|
|
12
|
-
import { ConstantPool, WrappedNodeExpr, compileComponentFromMetadata as compileR3Component, compileDirectiveFromMetadata as compileR3Directive, jitExpression, makeBindingParser, parseHostBindings, parseTemplate } from '@angular/compiler';
|
|
13
12
|
import { componentNeedsResolution, maybeQueueResolutionOfComponentResources } from '../../metadata/resource_loading';
|
|
14
13
|
import { ViewEncapsulation } from '../../metadata/view';
|
|
15
14
|
import { stringify } from '../../util';
|
|
15
|
+
import { EMPTY_ARRAY } from '../definition';
|
|
16
16
|
import { NG_COMPONENT_DEF, NG_DIRECTIVE_DEF } from '../fields';
|
|
17
|
+
import { getCompilerFacade } from './compiler_facade';
|
|
17
18
|
import { angularCoreEnv } from './environment';
|
|
18
19
|
import { patchComponentDefWithScope, transitiveScopesFor } from './module';
|
|
19
20
|
import { getReflect, reflectDependencies } from './util';
|
|
20
|
-
/** @typedef {?} */
|
|
21
|
-
var StringMap;
|
|
22
21
|
/**
|
|
23
22
|
* Compile an Angular component according to its decorator metadata, and patch the resulting
|
|
24
23
|
* ngComponentDef onto the component type.
|
|
@@ -38,6 +37,8 @@ export function compileComponent(type, metadata) {
|
|
|
38
37
|
maybeQueueResolutionOfComponentResources(metadata);
|
|
39
38
|
Object.defineProperty(type, NG_COMPONENT_DEF, {
|
|
40
39
|
get: () => {
|
|
40
|
+
/** @type {?} */
|
|
41
|
+
const compiler = getCompilerFacade();
|
|
41
42
|
if (ngComponentDef === null) {
|
|
42
43
|
if (componentNeedsResolution(metadata)) {
|
|
43
44
|
/** @type {?} */
|
|
@@ -52,23 +53,8 @@ export function compileComponent(type, metadata) {
|
|
|
52
53
|
throw new Error(error.join('\n'));
|
|
53
54
|
}
|
|
54
55
|
/** @type {?} */
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
const template = parseTemplate(/** @type {?} */ ((metadata.template)), `ng://${stringify(type)}/template.html`, {
|
|
58
|
-
preserveWhitespaces: metadata.preserveWhitespaces || false,
|
|
59
|
-
}, '');
|
|
60
|
-
if (template.errors !== undefined) {
|
|
61
|
-
/** @type {?} */
|
|
62
|
-
const errors = template.errors.map(err => err.toString()).join(', ');
|
|
63
|
-
throw new Error(`Errors during JIT compilation of template for ${stringify(type)}: ${errors}`);
|
|
64
|
-
}
|
|
65
|
-
/** @type {?} */
|
|
66
|
-
const animations = metadata.animations !== null ? new WrappedNodeExpr(metadata.animations) : null;
|
|
67
|
-
/** @type {?} */
|
|
68
|
-
const res = compileR3Component(Object.assign({}, directiveMetadata(type, metadata), { template, directives: new Map(), pipes: new Map(), viewQueries: [], wrapDirectivesInClosure: false, styles: metadata.styles || [], encapsulation: metadata.encapsulation || ViewEncapsulation.Emulated, animations }), constantPool, makeBindingParser());
|
|
69
|
-
/** @type {?} */
|
|
70
|
-
const preStatements = [...constantPool.statements, ...res.statements];
|
|
71
|
-
ngComponentDef = jitExpression(res.expression, angularCoreEnv, `ng://${type.name}/ngComponentDef.js`, preStatements);
|
|
56
|
+
const meta = Object.assign({}, directiveMetadata(type, metadata), { template: metadata.template || '', preserveWhitespaces: metadata.preserveWhitespaces || false, styles: metadata.styles || EMPTY_ARRAY, animations: metadata.animations, viewQueries: extractQueriesMetadata(getReflect().propMetadata(type), isViewQuery), directives: new Map(), pipes: new Map(), encapsulation: metadata.encapsulation || ViewEncapsulation.Emulated, viewProviders: metadata.viewProviders || null });
|
|
57
|
+
ngComponentDef = compiler.compileComponent(angularCoreEnv, `ng://${stringify(type)}/template.html`, meta);
|
|
72
58
|
// If component compilation is async, then the @NgModule annotation which declares the
|
|
73
59
|
// component may execute and set an ngSelectorScope property on the component type. This
|
|
74
60
|
// allows the component to patch itself with directiveDefs from the module after it
|
|
@@ -110,14 +96,8 @@ export function compileDirective(type, directive) {
|
|
|
110
96
|
get: () => {
|
|
111
97
|
if (ngDirectiveDef === null) {
|
|
112
98
|
/** @type {?} */
|
|
113
|
-
const
|
|
114
|
-
|
|
115
|
-
const sourceMapUrl = `ng://${type && type.name}/ngDirectiveDef.js`;
|
|
116
|
-
/** @type {?} */
|
|
117
|
-
const res = compileR3Directive(directiveMetadata(type, directive), constantPool, makeBindingParser());
|
|
118
|
-
/** @type {?} */
|
|
119
|
-
const preStatements = [...constantPool.statements, ...res.statements];
|
|
120
|
-
ngDirectiveDef = jitExpression(res.expression, angularCoreEnv, sourceMapUrl, preStatements);
|
|
99
|
+
const facade = directiveMetadata(type, directive);
|
|
100
|
+
ngDirectiveDef = getCompilerFacade().compileDirective(angularCoreEnv, `ng://${type && type.name}/ngDirectiveDef.js`, facade);
|
|
121
101
|
}
|
|
122
102
|
return ngDirectiveDef;
|
|
123
103
|
},
|
|
@@ -142,108 +122,92 @@ export function extendsDirectlyFromObject(type) {
|
|
|
142
122
|
function directiveMetadata(type, metadata) {
|
|
143
123
|
/** @type {?} */
|
|
144
124
|
const propMetadata = getReflect().propMetadata(type);
|
|
145
|
-
/** @type {?} */
|
|
146
|
-
const host = extractHostBindings(metadata, propMetadata);
|
|
147
|
-
/** @type {?} */
|
|
148
|
-
const inputsFromMetadata = parseInputOutputs(metadata.inputs || []);
|
|
149
|
-
/** @type {?} */
|
|
150
|
-
const outputsFromMetadata = parseInputOutputs(metadata.outputs || []);
|
|
151
|
-
/** @type {?} */
|
|
152
|
-
const inputsFromType = {};
|
|
153
|
-
/** @type {?} */
|
|
154
|
-
const outputsFromType = {};
|
|
155
|
-
for (const field in propMetadata) {
|
|
156
|
-
if (propMetadata.hasOwnProperty(field)) {
|
|
157
|
-
propMetadata[field].forEach(ann => {
|
|
158
|
-
if (isInput(ann)) {
|
|
159
|
-
inputsFromType[field] = ann.bindingPropertyName || field;
|
|
160
|
-
}
|
|
161
|
-
else if (isOutput(ann)) {
|
|
162
|
-
outputsFromType[field] = ann.bindingPropertyName || field;
|
|
163
|
-
}
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
125
|
return {
|
|
168
126
|
name: type.name,
|
|
169
|
-
type:
|
|
127
|
+
type: type,
|
|
170
128
|
typeArgumentCount: 0,
|
|
171
129
|
selector: /** @type {?} */ ((metadata.selector)),
|
|
172
|
-
deps: reflectDependencies(type),
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
130
|
+
deps: reflectDependencies(type),
|
|
131
|
+
host: metadata.host || EMPTY_OBJ,
|
|
132
|
+
propMetadata: propMetadata,
|
|
133
|
+
inputs: metadata.inputs || EMPTY_ARRAY,
|
|
134
|
+
outputs: metadata.outputs || EMPTY_ARRAY,
|
|
135
|
+
queries: extractQueriesMetadata(propMetadata, isContentQuery),
|
|
176
136
|
lifecycle: {
|
|
177
137
|
usesOnChanges: type.prototype.ngOnChanges !== undefined,
|
|
178
138
|
},
|
|
179
139
|
typeSourceSpan: /** @type {?} */ ((null)),
|
|
180
140
|
usesInheritance: !extendsDirectlyFromObject(type),
|
|
181
141
|
exportAs: metadata.exportAs || null,
|
|
142
|
+
providers: metadata.providers || null,
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
/** @type {?} */
|
|
146
|
+
const EMPTY_OBJ = {};
|
|
147
|
+
/**
|
|
148
|
+
* @param {?} selector
|
|
149
|
+
* @return {?}
|
|
150
|
+
*/
|
|
151
|
+
function convertToR3QueryPredicate(selector) {
|
|
152
|
+
return typeof selector === 'string' ? splitByComma(selector) : selector;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* @param {?} propertyName
|
|
156
|
+
* @param {?} ann
|
|
157
|
+
* @return {?}
|
|
158
|
+
*/
|
|
159
|
+
export function convertToR3QueryMetadata(propertyName, ann) {
|
|
160
|
+
return {
|
|
161
|
+
propertyName: propertyName,
|
|
162
|
+
predicate: convertToR3QueryPredicate(ann.selector),
|
|
163
|
+
descendants: ann.descendants,
|
|
164
|
+
first: ann.first,
|
|
165
|
+
read: ann.read ? ann.read : null
|
|
182
166
|
};
|
|
183
167
|
}
|
|
184
168
|
/**
|
|
185
|
-
* @param {?} metadata
|
|
186
169
|
* @param {?} propMetadata
|
|
170
|
+
* @param {?} isQueryAnn
|
|
187
171
|
* @return {?}
|
|
188
172
|
*/
|
|
189
|
-
function
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
throw new Error(`Animation bindings are as-of-yet unsupported in Ivy`);
|
|
193
|
-
}
|
|
194
|
-
// Next, loop over the properties of the object, looking for @HostBinding and @HostListener.
|
|
173
|
+
function extractQueriesMetadata(propMetadata, isQueryAnn) {
|
|
174
|
+
/** @type {?} */
|
|
175
|
+
const queriesMeta = [];
|
|
195
176
|
for (const field in propMetadata) {
|
|
196
177
|
if (propMetadata.hasOwnProperty(field)) {
|
|
197
178
|
propMetadata[field].forEach(ann => {
|
|
198
|
-
if (
|
|
199
|
-
|
|
200
|
-
}
|
|
201
|
-
else if (isHostListener(ann)) {
|
|
202
|
-
listeners[ann.eventName || field] = `${field}(${(ann.args || []).join(',')})`;
|
|
179
|
+
if (isQueryAnn(ann)) {
|
|
180
|
+
queriesMeta.push(convertToR3QueryMetadata(field, ann));
|
|
203
181
|
}
|
|
204
182
|
});
|
|
205
183
|
}
|
|
206
184
|
}
|
|
207
|
-
return
|
|
185
|
+
return queriesMeta;
|
|
208
186
|
}
|
|
209
187
|
/**
|
|
210
188
|
* @param {?} value
|
|
211
189
|
* @return {?}
|
|
212
190
|
*/
|
|
213
|
-
function
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
* @param {?} value
|
|
218
|
-
* @return {?}
|
|
219
|
-
*/
|
|
220
|
-
function isOutput(value) {
|
|
221
|
-
return value.ngMetadataName === 'Output';
|
|
191
|
+
function isContentQuery(value) {
|
|
192
|
+
/** @type {?} */
|
|
193
|
+
const name = value.ngMetadataName;
|
|
194
|
+
return name === 'ContentChild' || name === 'ContentChildren';
|
|
222
195
|
}
|
|
223
196
|
/**
|
|
224
197
|
* @param {?} value
|
|
225
198
|
* @return {?}
|
|
226
199
|
*/
|
|
227
|
-
function
|
|
228
|
-
|
|
200
|
+
function isViewQuery(value) {
|
|
201
|
+
/** @type {?} */
|
|
202
|
+
const name = value.ngMetadataName;
|
|
203
|
+
return name === 'ViewChild' || name === 'ViewChildren';
|
|
229
204
|
}
|
|
230
205
|
/**
|
|
231
206
|
* @param {?} value
|
|
232
207
|
* @return {?}
|
|
233
208
|
*/
|
|
234
|
-
function
|
|
235
|
-
return value.
|
|
236
|
-
}
|
|
237
|
-
/**
|
|
238
|
-
* @param {?} values
|
|
239
|
-
* @return {?}
|
|
240
|
-
*/
|
|
241
|
-
function parseInputOutputs(values) {
|
|
242
|
-
return values.reduce((map, value) => {
|
|
243
|
-
const [field, property] = value.split(',').map(piece => piece.trim());
|
|
244
|
-
map[field] = property || field;
|
|
245
|
-
return map;
|
|
246
|
-
}, /** @type {?} */ ({}));
|
|
209
|
+
function splitByComma(value) {
|
|
210
|
+
return value.split(',').map(piece => piece.trim());
|
|
247
211
|
}
|
|
248
212
|
|
|
249
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvcmVuZGVyMy9qaXQvZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBUUEsT0FBTyxFQUFDLFlBQVksRUFBdUIsZUFBZSxFQUFFLDRCQUE0QixJQUFJLGtCQUFrQixFQUFFLDRCQUE0QixJQUFJLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUdqUSxPQUFPLEVBQUMsd0JBQXdCLEVBQUUsd0NBQXdDLEVBQUMsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuSCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sWUFBWSxDQUFDO0FBQ3JDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUU3RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQywwQkFBMEIsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUN6RSxPQUFPLEVBQUMsVUFBVSxFQUFFLG1CQUFtQixFQUFDLE1BQU0sUUFBUSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFldkQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLElBQWUsRUFBRSxRQUFtQjs7SUFDbkUsSUFBSSxjQUFjLEdBQVEsSUFBSSxDQUFDOztJQUUvQix3Q0FBd0MsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtRQUM1QyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ1IsSUFBSSxjQUFjLEtBQUssSUFBSSxFQUFFO2dCQUMzQixJQUFJLHdC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QUksS0FBSyxDQUFDLEdBQUcsR0FBRyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDO2lCQUMvRTthQUNGLENBQUMsQ0FBQztTQUNKO0tBQ0Y7SUFFRCxPQUFPLEVBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUMsQ0FBQztDQUM1Qzs7Ozs7QUFFRCxTQUFTLE9BQU8sQ0FBQyxLQUFVO0lBQ3pCLE9BQU8sS0FBSyxDQUFDLGNBQWMsS0FBSyxPQUFPLENBQUM7Q0FDekM7Ozs7O0FBRUQsU0FBUyxRQUFRLENBQUMsS0FBVTtJQUMxQixPQUFPLEtBQUssQ0FBQyxjQUFjLEtBQUssUUFBUSxDQUFDO0NBQzFDOzs7OztBQUVELFNBQVMsYUFBYSxDQUFDLEtBQVU7SUFDL0IsT0FBTyxLQUFLLENBQUMsY0FBYyxLQUFLLGFBQWEsQ0FBQztDQUMvQzs7Ozs7QUFFRCxTQUFTLGNBQWMsQ0FBQyxLQUFVO0lBQ2hDLE9BQU8sS0FBSyxDQUFDLGNBQWMsS0FBSyxjQUFjLENBQUM7Q0FDaEQ7Ozs7O0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxNQUFnQjtJQUN6QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2hCLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO1FBQ2IsTUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxRQUFRLElBQUksS0FBSyxDQUFDO1FBQy9CLE9BQU8sR0FBRyxDQUFDO0tBQ1osb0JBQ0QsRUFBZSxFQUFDLENBQUM7Q0FDdEIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7Q29uc3RhbnRQb29sLCBSM0RpcmVjdGl2ZU1ldGFkYXRhLCBXcmFwcGVkTm9kZUV4cHIsIGNvbXBpbGVDb21wb25lbnRGcm9tTWV0YWRhdGEgYXMgY29tcGlsZVIzQ29tcG9uZW50LCBjb21waWxlRGlyZWN0aXZlRnJvbU1ldGFkYXRhIGFzIGNvbXBpbGVSM0RpcmVjdGl2ZSwgaml0RXhwcmVzc2lvbiwgbWFrZUJpbmRpbmdQYXJzZXIsIHBhcnNlSG9zdEJpbmRpbmdzLCBwYXJzZVRlbXBsYXRlfSBmcm9tICdAYW5ndWxhci9jb21waWxlcic7XG5cbmltcG9ydCB7Q29tcG9uZW50LCBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXR9IGZyb20gJy4uLy4uL21ldGFkYXRhL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtjb21wb25lbnROZWVkc1Jlc29sdXRpb24sIG1heWJlUXVldWVSZXNvbHV0aW9uT2ZDb21wb25lbnRSZXNvdXJjZXN9IGZyb20gJy4uLy4uL21ldGFkYXRhL3Jlc291cmNlX2xvYWRpbmcnO1xuaW1wb3J0IHtWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnLi4vLi4vbWV0YWRhdGEvdmlldyc7XG5pbXBvcnQge1R5cGV9IGZyb20gJy4uLy4uL3R5cGUnO1xuaW1wb3J0IHtzdHJpbmdpZnl9IGZyb20gJy4uLy4uL3V0aWwnO1xuaW1wb3J0IHtOR19DT01QT05FTlRfREVGLCBOR19ESVJFQ1RJVkVfREVGfSBmcm9tICcuLi9maWVsZHMnO1xuXG5pbXBvcnQge2FuZ3VsYXJDb3JlRW52fSBmcm9tICcuL2Vudmlyb25tZW50JztcbmltcG9ydCB7cGF0Y2hDb21wb25lbnREZWZXaXRoU2NvcGUsIHRyYW5zaXRpdmVTY29wZXNGb3J9IGZyb20gJy4vbW9kdWxlJztcbmltcG9ydCB7Z2V0UmVmbGVjdCwgcmVmbGVjdERlcGVuZGVuY2llc30gZnJvbSAnLi91dGlsJztcblxudHlwZSBTdHJpbmdNYXAgPSB7XG4gIFtrZXk6IHN0cmluZ106IHN0cmluZ1xufTtcblxuLyoqXG4gKiBDb21waWxlIGFuIEFuZ3VsYXIgY29tcG9uZW50IGFjY29yZGluZyB0byBpdHMgZGVjb3JhdG9yIG1ldGFkYXRhLCBhbmQgcGF0Y2ggdGhlIHJlc3VsdGluZ1xuICogbmdDb21wb25lbnREZWYgb250byB0aGUgY29tcG9uZW50IHR5cGUuXG4gKlxuICogQ29tcGlsYXRpb24gbWF5IGJlIGFzeW5jaHJvbm91cyAoZHVlIHRvIHRoZSBuZWVkIHRvIHJlc29sdmUgVVJMcyBmb3IgdGhlIGNvbXBvbmVudCB0ZW1wbGF0ZSBvclxuICogb3RoZXIgcmVzb3VyY2VzLCBmb3IgZXhhbXBsZSkuIEluIHRoZSBldmVudCB0aGF0IGNvbXBpbGF0aW9uIGlzIG5vdCBpbW1lZGlhdGUsIGBjb21waWxlQ29tcG9uZW50YFxuICogd2lsbCBlbnF1ZXVlIHJlc291cmNlIHJlc29sdXRpb24gaW50byBhIGdsb2JhbCBxdWV1ZSBhbmQgd2lsbCBmYWlsIHRvIHJldHVybiB0aGUgYG5nQ29tcG9uZW50RGVmYFxuICogdW50aWwgdGhlIGdsb2JhbCBxdWV1ZSBoYXMgYmVlbiByZXNvbHZlZCB3aXRoIGEgY2FsbCB0byBgcmVzb2x2ZUNvbXBvbmVudFJlc291cmNlc2AuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21waWxlQ29tcG9uZW50KHR5cGU6IFR5cGU8YW55PiwgbWV0YWRhdGE6IENvbXBvbmVudCk6IHZvaWQge1xuICBsZXQgbmdDb21wb25lbnREZWY6IGFueSA9IG51bGw7XG4gIC8vIE1ldGFkYXRhIG1heSBoYXZlIHJlc291cmNlcyB3aGljaCBuZWVkIHRvIGJlIHJlc29sdmVkLlxuICBtYXliZVF1ZXVlUmVzb2x1dGlvbk9mQ29tcG9uZW50UmVzb3VyY2VzKG1ldGFkYXRhKTtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHR5cGUsIE5HX0NPTVBPTkVOVF9ERUYsIHtcbiAgICBnZXQ6ICgpID0+IHtcbiAgICAgIGlmIChuZ0NvbXBvbmVudERlZiA9PT0gbnVsbCkge1xuICAgICAgICBpZiAoY29tcG9uZW50TmVlZHNSZXNvbHV0aW9uKG1ldGFkYXRhKSkge1xuICAgICAgICAgIGNvbnN0IGVycm9yID0gW2BDb21wb25lbnQgJyR7c3RyaW5naWZ5KHR5cGUpfScgaXMgbm90IHJlc29sdmVkOmBdO1xuICAgICAgICAgIGlmIChtZXRhZGF0YS50ZW1wbGF0ZVVybCkge1xuICAgICAgICAgICAgZXJyb3IucHVzaChgIC0gdGVtcGxhdGVVcmw6ICR7c3RyaW5naWZ5KG1ldGFkYXRhLnRlbXBsYXRlVXJsKX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKG1ldGFkYXRhLnN0eWxlVXJscyAmJiBtZXRhZGF0YS5zdHlsZVVybHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBlcnJvci5wdXNoKGAgLSBzdHlsZVVybHM6ICR7SlNPTi5zdHJpbmdpZnkobWV0YWRhdGEuc3R5bGVVcmxzKX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZXJyb3IucHVzaChgRGlkIHlvdSBydW4gYW5kIHdhaXQgZm9yICdyZXNvbHZlQ29tcG9uZW50UmVzb3VyY2VzKCknP2ApO1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvci5qb2luKCdcXG4nKSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gVGhlIENvbnN0YW50UG9vbCBpcyBhIHJlcXVpcmVtZW50IG9mIHRoZSBKSVQnZXIuXG4gICAgICAgIGNvbnN0IGNvbnN0YW50UG9vbCA9IG5ldyBDb25zdGFudFBvb2woKTtcblxuICAgICAgICAvLyBQYXJzZSB0aGUgdGVtcGxhdGUgYW5kIGNoZWNrIGZvciBlcnJvcnMuXG4gICAgICAgIGNvbnN0IHRlbXBsYXRlID0gcGFyc2VUZW1wbGF0ZShcbiAgICAgICAgICAgIG1ldGFkYXRhLnRlbXBsYXRlICEsIGBuZzovLyR7c3RyaW5naWZ5KHR5cGUpfS90ZW1wbGF0ZS5odG1sYCwge1xuICAgICAgICAgICAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBtZXRhZGF0YS5wcmVzZXJ2ZVdoaXRlc3BhY2VzIHx8IGZhbHNlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICcnKTtcbiAgICAgICAgaWYgKHRlbXBsYXRlLmVycm9ycyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgY29uc3QgZXJyb3JzID0gdGVtcGxhdGUuZXJyb3JzLm1hcChlcnIgPT4gZXJyLnRvU3RyaW5nKCkpLmpvaW4oJywgJyk7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICBgRXJyb3JzIGR1cmluZyBKSVQgY29tcGlsYXRpb24gb2YgdGVtcGxhdGUgZm9yICR7c3RyaW5naWZ5KHR5cGUpfTogJHtlcnJvcnN9YCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhbmltYXRpb25zID1cbiAgICAgICAgICAgIG1ldGFkYXRhLmFuaW1hdGlvbnMgIT09IG51bGwgPyBuZXcgV3JhcHBlZE5vZGVFeHByKG1ldGFkYXRhLmFuaW1hdGlvbnMpIDogbnVsbDtcblxuICAgICAgICAvLyBDb21waWxlIHRoZSBjb21wb25lbnQgbWV0YWRhdGEsIGluY2x1ZGluZyB0ZW1wbGF0ZSwgaW50byBhbiBleHByZXNzaW9uLlxuICAgICAgICAvLyBUT0RPKGFseGh1Yik6IGltcGxlbWVudCBpbnB1dHMsIG91dHB1dHMsIHF1ZXJpZXMsIGV0Yy5cbiAgICAgICAgY29uc3QgcmVzID0gY29tcGlsZVIzQ29tcG9uZW50KFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAuLi5kaXJlY3RpdmVNZXRhZGF0YSh0eXBlLCBtZXRhZGF0YSksXG4gICAgICAgICAgICAgIHRlbXBsYXRlLFxuICAgICAgICAgICAgICBkaXJlY3RpdmVzOiBuZXcgTWFwKCksXG4gICAgICAgICAgICAgIHBpcGVzOiBuZXcgTWFwKCksXG4gICAgICAgICAgICAgIHZpZXdRdWVyaWVzOiBbXSxcbiAgICAgICAgICAgICAgd3JhcERpcmVjdGl2ZXNJbkNsb3N1cmU6IGZhbHNlLFxuICAgICAgICAgICAgICBzdHlsZXM6IG1ldGFkYXRhLnN0eWxlcyB8fCBbXSxcbiAgICAgICAgICAgICAgZW5jYXBzdWxhdGlvbjogbWV0YWRhdGEuZW5jYXBzdWxhdGlvbiB8fCBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZCwgYW5pbWF0aW9ucyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjb25zdGFudFBvb2wsIG1ha2VCaW5kaW5nUGFyc2VyKCkpO1xuICAgICAgICBjb25zdCBwcmVTdGF0ZW1lbnRzID0gWy4uLmNvbnN0YW50UG9vbC5zdGF0ZW1lbnRzLCAuLi5yZXMuc3RhdGVtZW50c107XG5cbiAgICAgICAgbmdDb21wb25lbnREZWYgPSBqaXRFeHByZXNzaW9uKFxuICAgICAgICAgICAgcmVzLmV4cHJlc3Npb24sIGFuZ3VsYXJDb3JlRW52LCBgbmc6Ly8ke3R5cGUubmFtZX0vbmdDb21wb25lbnREZWYuanNgLCBwcmVTdGF0ZW1lbnRzKTtcblxuICAgICAgICAvLyBJZiBjb21wb25lbnQgY29tcGlsYXRpb24gaXMgYXN5bmMsIHRoZW4gdGhlIEBOZ01vZHVsZSBhbm5vdGF0aW9uIHdoaWNoIGRlY2xhcmVzIHRoZVxuICAgICAgICAvLyBjb21wb25lbnQgbWF5IGV4ZWN1dGUgYW5kIHNldCBhbiBuZ1NlbGVjdG9yU2NvcGUgcHJvcGVydHkgb24gdGhlIGNvbXBvbmVudCB0eXBlLiBUaGlzXG4gICAgICAgIC8vIGFsbG93cyB0aGUgY29tcG9uZW50IHRvIHBhdGNoIGl0c2VsZiB3aXRoIGRpcmVjdGl2ZURlZnMgZnJvbSB0aGUgbW9kdWxlIGFmdGVyIGl0XG4gICAgICAgIC8vIGZpbmlzaGVzIGNvbXBpbGluZy5cbiAgICAgICAgaWYgKGhhc1NlbGVjdG9yU2NvcGUodHlwZSkpIHtcbiAgICAgICAgICBjb25zdCBzY29wZXMgPSB0cmFuc2l0aXZlU2NvcGVzRm9yKHR5cGUubmdTZWxlY3RvclNjb3BlKTtcbiAgICAgICAgICBwYXRjaENvbXBvbmVudERlZldpdGhTY29wZShuZ0NvbXBvbmVudERlZiwgc2NvcGVzKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG5nQ29tcG9uZW50RGVmO1xuICAgIH0sXG4gICAgLy8gTWFrZSB0aGUgcHJvcGVydHkgY29uZmlndXJhYmxlIGluIGRldiBtb2RlIHRvIGFsbG93IG92ZXJyaWRpbmcgaW4gdGVzdHNcbiAgICBjb25maWd1cmFibGU6ICEhbmdEZXZNb2RlLFxuICB9KTtcbn1cblxuZnVuY3Rpb24gaGFzU2VsZWN0b3JTY29wZTxUPihjb21wb25lbnQ6IFR5cGU8VD4pOiBjb21wb25lbnQgaXMgVHlwZTxUPiZcbiAgICB7bmdTZWxlY3RvclNjb3BlOiBUeXBlPGFueT59IHtcbiAgcmV0dXJuIChjb21wb25lbnQgYXN7bmdTZWxlY3RvclNjb3BlPzogYW55fSkubmdTZWxlY3RvclNjb3BlICE9PSB1bmRlZmluZWQ7XG59XG5cbi8qKlxuICogQ29tcGlsZSBhbiBBbmd1bGFyIGRpcmVjdGl2ZSBhY2NvcmRpbmcgdG8gaXRzIGRlY29yYXRvciBtZXRhZGF0YSwgYW5kIHBhdGNoIHRoZSByZXN1bHRpbmdcbiAqIG5nRGlyZWN0aXZlRGVmIG9udG8gdGhlIGNvbXBvbmVudCB0eXBlLlxuICpcbiAqIEluIHRoZSBldmVudCB0aGF0IGNvbXBpbGF0aW9uIGlzIG5vdCBpbW1lZGlhdGUsIGBjb21waWxlRGlyZWN0aXZlYCB3aWxsIHJldHVybiBhIGBQcm9taXNlYCB3aGljaFxuICogd2lsbCByZXNvbHZlIHdoZW4gY29tcGlsYXRpb24gY29tcGxldGVzIGFuZCB0aGUgZGlyZWN0aXZlIGJlY29tZXMgdXNhYmxlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tcGlsZURpcmVjdGl2ZSh0eXBlOiBUeXBlPGFueT4sIGRpcmVjdGl2ZTogRGlyZWN0aXZlKTogdm9pZCB7XG4gIGxldCBuZ0RpcmVjdGl2ZURlZjogYW55ID0gbnVsbDtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHR5cGUsIE5HX0RJUkVDVElWRV9ERUYsIHtcbiAgICBnZXQ6ICgpID0+IHtcbiAgICAgIGlmIChuZ0RpcmVjdGl2ZURlZiA9PT0gbnVsbCkge1xuICAgICAgICBjb25zdCBjb25zdGFudFBvb2wgPSBuZXcgQ29uc3RhbnRQb29sKCk7XG4gICAgICAgIGNvbnN0IHNvdXJjZU1hcFVybCA9IGBuZzovLyR7dHlwZSAmJiB0eXBlLm5hbWV9L25nRGlyZWN0aXZlRGVmLmpzYDtcbiAgICAgICAgY29uc3QgcmVzID0gY29tcGlsZVIzRGlyZWN0aXZlKFxuICAgICAgICAgICAgZGlyZWN0aXZlTWV0YWRhdGEodHlwZSwgZGlyZWN0aXZlKSwgY29uc3RhbnRQb29sLCBtYWtlQmluZGluZ1BhcnNlcigpKTtcbiAgICAgICAgY29uc3QgcHJlU3RhdGVtZW50cyA9IFsuLi5jb25zdGFudFBvb2wuc3RhdGVtZW50cywgLi4ucmVzLnN0YXRlbWVudHNdO1xuICAgICAgICBuZ0RpcmVjdGl2ZURlZiA9IGppdEV4cHJlc3Npb24ocmVzLmV4cHJlc3Npb24sIGFuZ3VsYXJDb3JlRW52LCBzb3VyY2VNYXBVcmwsIHByZVN0YXRlbWVudHMpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG5nRGlyZWN0aXZlRGVmO1xuICAgIH0sXG4gICAgLy8gTWFrZSB0aGUgcHJvcGVydHkgY29uZmlndXJhYmxlIGluIGRldiBtb2RlIHRvIGFsbG93IG92ZXJyaWRpbmcgaW4gdGVzdHNcbiAgICBjb25maWd1cmFibGU6ICEhbmdEZXZNb2RlLFxuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGV4dGVuZHNEaXJlY3RseUZyb21PYmplY3QodHlwZTogVHlwZTxhbnk+KTogYm9vbGVhbiB7XG4gIHJldHVybiBPYmplY3QuZ2V0UHJvdG90eXBlT2YodHlwZS5wcm90b3R5cGUpID09PSBPYmplY3QucHJvdG90eXBlO1xufVxuXG4vKipcbiAqIEV4dHJhY3QgdGhlIGBSM0RpcmVjdGl2ZU1ldGFkYXRhYCBmb3IgYSBwYXJ0aWN1bGFyIGRpcmVjdGl2ZSAoZWl0aGVyIGEgYERpcmVjdGl2ZWAgb3IgYVxuICogYENvbXBvbmVudGApLlxuICovXG5mdW5jdGlvbiBkaXJlY3RpdmVNZXRhZGF0YSh0eXBlOiBUeXBlPGFueT4sIG1ldGFkYXRhOiBEaXJlY3RpdmUpOiBSM0RpcmVjdGl2ZU1ldGFkYXRhIHtcbiAgLy8gUmVmbGVjdCBpbnB1dHMgYW5kIG91dHB1dHMuXG4gIGNvbnN0IHByb3BNZXRhZGF0YSA9IGdldFJlZmxlY3QoKS5wcm9wTWV0YWRhdGEodHlwZSk7XG5cbiAgY29uc3QgaG9zdCA9IGV4dHJhY3RIb3N0QmluZGluZ3MobWV0YWRhdGEsIHByb3BNZXRhZGF0YSk7XG5cbiAgY29uc3QgaW5wdXRzRnJvbU1ldGFkYXRhID0gcGFyc2VJbnB1dE91dHB1dHMobWV0YWRhdGEuaW5wdXRzIHx8IFtdKTtcbiAgY29uc3Qgb3V0cHV0c0Zyb21NZXRhZGF0YSA9IHBhcnNlSW5wdXRPdXRwdXRzKG1ldGFkYXRhLm91dHB1dHMgfHwgW10pO1xuXG4gIGNvbnN0IGlucHV0c0Zyb21UeXBlOiBTdHJpbmdNYXAgPSB7fTtcbiAgY29uc3Qgb3V0cHV0c0Zyb21UeXBlOiBTdHJpbmdNYXAgPSB7fTtcbiAgZm9yIChjb25zdCBmaWVsZCBpbiBwcm9wTWV0YWRhdGEpIHtcbiAgICBpZiAocHJvcE1ldGFkYXRhLmhhc093blByb3BlcnR5KGZpZWxkKSkge1xuICAgICAgcHJvcE1ldGFkYXRhW2ZpZWxkXS5mb3JFYWNoKGFubiA9PiB7XG4gICAgICAgIGlmIChpc0lucHV0KGFubikpIHtcbiAgICAgICAgICBpbnB1dHNGcm9tVHlwZVtmaWVsZF0gPSBhbm4uYmluZGluZ1Byb3BlcnR5TmFtZSB8fCBmaWVsZDtcbiAgICAgICAgfSBlbHNlIGlmIChpc091dHB1dChhbm4pKSB7XG4gICAgICAgICAgb3V0cHV0c0Zyb21UeXBlW2ZpZWxkXSA9IGFubi5iaW5kaW5nUHJvcGVydHlOYW1lIHx8IGZpZWxkO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4ge1xuICAgIG5hbWU6IHR5cGUubmFtZSxcbiAgICB0eXBlOiBuZXcgV3JhcHBlZE5vZGVFeHByKHR5cGUpLFxuICAgIHR5cGVBcmd1bWVudENvdW50OiAwLFxuICAgIHNlbGVjdG9yOiBtZXRhZGF0YS5zZWxlY3RvciAhLFxuICAgIGRlcHM6IHJlZmxlY3REZXBlbmRlbmNpZXModHlwZSksIGhvc3QsXG4gICAgaW5wdXRzOiB7Li4uaW5wdXRzRnJvbU1ldGFkYXRhLCAuLi5pbnB1dHNGcm9tVHlwZX0sXG4gICAgb3V0cHV0czogey4uLm91dHB1dHNGcm9tTWV0YWRhdGEsIC4uLm91dHB1dHNGcm9tVHlwZX0sXG4gICAgcXVlcmllczogW10sXG4gICAgbGlmZWN5Y2xlOiB7XG4gICAgICB1c2VzT25DaGFuZ2VzOiB0eXBlLnByb3RvdHlwZS5uZ09uQ2hhbmdlcyAhPT0gdW5kZWZpbmVkLFxuICAgIH0sXG4gICAgdHlwZVNvdXJjZVNwYW46IG51bGwgISxcbiAgICB1c2VzSW5oZXJpdGFuY2U6ICFleHRlbmRzRGlyZWN0bHlGcm9tT2JqZWN0KHR5cGUpLFxuICAgIGV4cG9ydEFzOiBtZXRhZGF0YS5leHBvcnRBcyB8fCBudWxsLFxuICB9O1xufVxuXG5mdW5jdGlvbiBleHRyYWN0SG9zdEJpbmRpbmdzKG1ldGFkYXRhOiBEaXJlY3RpdmUsIHByb3BNZXRhZGF0YToge1trZXk6IHN0cmluZ106IGFueVtdfSk6IHtcbiAgYXR0cmlidXRlczogU3RyaW5nTWFwLFxuICBsaXN0ZW5lcnM6IFN0cmluZ01hcCxcbiAgcHJvcGVydGllczogU3RyaW5nTWFwLFxufSB7XG4gIC8vIEZpcnN0IHBhcnNlIHRoZSBkZWNsYXJhdGlvbnMgZnJvbSB0aGUgbWV0YWRhdGEuXG4gIGNvbnN0IHthdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHByb3BlcnRpZXMsIGFuaW1hdGlvbnN9ID0gcGFyc2VIb3N0QmluZGluZ3MobWV0YWRhdGEuaG9zdCB8fCB7fSk7XG5cbiAgaWYgKE9iamVjdC5rZXlzKGFuaW1hdGlvbnMpLmxlbmd0aCA+IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEFuaW1hdGlvbiBiaW5kaW5ncyBhcmUgYXMtb2YteWV0IHVuc3VwcG9ydGVkIGluIEl2eWApO1xuICB9XG5cbiAgLy8gTmV4dCwgbG9vcCBvdmVyIHRoZSBwcm9wZXJ0aWVzIG9mIHRoZSBvYmplY3QsIGxvb2tpbmcgZm9yIEBIb3N0QmluZGluZyBhbmQgQEhvc3RMaXN0ZW5lci5cbiAgZm9yIChjb25zdCBmaWVsZCBpbiBwcm9wTWV0YWRhdGEpIHtcbiAgICBpZiAocHJvcE1ldGFkYXRhLmhhc093blByb3BlcnR5KGZpZWxkKSkge1xuICAgICAgcHJvcE1ldGFkYXRhW2ZpZWxkXS5mb3JFYWNoKGFubiA9PiB7XG4gICAgICAgIGlmIChpc0hvc3RCaW5kaW5nKGFubikpIHtcbiAgICAgICAgICBwcm9wZXJ0aWVzW2Fubi5ob3N0UHJvcGVydHlOYW1lIHx8IGZpZWxkXSA9IGZpZWxkO1xuICAgICAgICB9IGVsc2UgaWYgKGlzSG9zdExpc3RlbmVyKGFubikpIHtcbiAgICAgICAgICBsaXN0ZW5lcnNbYW5uLmV2ZW50TmFtZSB8fCBmaWVsZF0gPSBgJHtmaWVsZH0oJHsoYW5uLmFyZ3MgfHwgW10pLmpvaW4oJywnKX0pYDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHthdHRyaWJ1dGVzLCBsaXN0ZW5lcnMsIHByb3BlcnRpZXN9O1xufVxuXG5mdW5jdGlvbiBpc0lucHV0KHZhbHVlOiBhbnkpOiB2YWx1ZSBpcyBJbnB1dCB7XG4gIHJldHVybiB2YWx1ZS5uZ01ldGFkYXRhTmFtZSA9PT0gJ0lucHV0Jztcbn1cblxuZnVuY3Rpb24gaXNPdXRwdXQodmFsdWU6IGFueSk6IHZhbHVlIGlzIE91dHB1dCB7XG4gIHJldHVybiB2YWx1ZS5uZ01ldGFkYXRhTmFtZSA9PT0gJ091dHB1dCc7XG59XG5cbmZ1bmN0aW9uIGlzSG9zdEJpbmRpbmcodmFsdWU6IGFueSk6IHZhbHVlIGlzIEhvc3RCaW5kaW5nIHtcbiAgcmV0dXJuIHZhbHVlLm5nTWV0YWRhdGFOYW1lID09PSAnSG9zdEJpbmRpbmcnO1xufVxuXG5mdW5jdGlvbiBpc0hvc3RMaXN0ZW5lcih2YWx1ZTogYW55KTogdmFsdWUgaXMgSG9zdExpc3RlbmVyIHtcbiAgcmV0dXJuIHZhbHVlLm5nTWV0YWRhdGFOYW1lID09PSAnSG9zdExpc3RlbmVyJztcbn1cblxuZnVuY3Rpb24gcGFyc2VJbnB1dE91dHB1dHModmFsdWVzOiBzdHJpbmdbXSk6IFN0cmluZ01hcCB7XG4gIHJldHVybiB2YWx1ZXMucmVkdWNlKFxuICAgICAgKG1hcCwgdmFsdWUpID0+IHtcbiAgICAgICAgY29uc3QgW2ZpZWxkLCBwcm9wZXJ0eV0gPSB2YWx1ZS5zcGxpdCgnLCcpLm1hcChwaWVjZSA9PiBwaWVjZS50cmltKCkpO1xuICAgICAgICBtYXBbZmllbGRdID0gcHJvcGVydHkgfHwgZmllbGQ7XG4gICAgICAgIHJldHVybiBtYXA7XG4gICAgICB9LFxuICAgICAge30gYXMgU3RyaW5nTWFwKTtcbn1cbiJdfQ==
|
|
213
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29yZS9zcmMvcmVuZGVyMy9qaXQvZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBVUEsT0FBTyxFQUFDLHdCQUF3QixFQUFFLHdDQUF3QyxFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDbkgsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFdEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNyQyxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUU3RCxPQUFPLEVBQTRCLGlCQUFpQixFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFL0UsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM3QyxPQUFPLEVBQUMsMEJBQTBCLEVBQUUsbUJBQW1CLEVBQUMsTUFBTSxVQUFVLENBQUM7QUFDekUsT0FBTyxFQUFDLFVBQVUsRUFBRSxtQkFBbUIsRUFBQyxNQUFNLFFBQVEsQ0FBQzs7Ozs7Ozs7Ozs7OztBQWF2RCxNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBZSxFQUFFLFFBQW1COztJQUNuRSxJQUFJLGNBQWMsR0FBUSxJQUFJLENBQUM7O0lBRS9CLHdDQUF3QyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25ELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1FBQzVDLEdBQUcsRUFBRSxHQUFHLEVBQUU7O1lBQ1IsTUFBTSxRQUFRLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQztZQUNyQyxJQUFJLGNBQWMsS0FBSyxJQUFJLEVBQUU7Z0JBQzNCLElBQUksd0JBQXdCLENBQUMsUUFBUSxDQUFDLEVB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QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO0lBQ2xDLE9BQU8sSUFBSSxLQUFLLFdBQVcsSUFBSSxJQUFJLEtBQUssY0FBYyxDQUFDO0NBQ3hEOzs7OztBQUVELFNBQVMsWUFBWSxDQUFDLEtBQWE7SUFDakMsT0FBTyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0NBQ3BEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge1F1ZXJ5fSBmcm9tICcuLi8uLi9tZXRhZGF0YS9kaSc7XG5pbXBvcnQge0NvbXBvbmVudCwgRGlyZWN0aXZlfSBmcm9tICcuLi8uLi9tZXRhZGF0YS9kaXJlY3RpdmVzJztcbmltcG9ydCB7Y29tcG9uZW50TmVlZHNSZXNvbHV0aW9uLCBtYXliZVF1ZXVlUmVzb2x1dGlvbk9mQ29tcG9uZW50UmVzb3VyY2VzfSBmcm9tICcuLi8uLi9tZXRhZGF0YS9yZXNvdXJjZV9sb2FkaW5nJztcbmltcG9ydCB7Vmlld0VuY2Fwc3VsYXRpb259IGZyb20gJy4uLy4uL21ldGFkYXRhL3ZpZXcnO1xuaW1wb3J0IHtUeXBlfSBmcm9tICcuLi8uLi90eXBlJztcbmltcG9ydCB7c3RyaW5naWZ5fSBmcm9tICcuLi8uLi91dGlsJztcbmltcG9ydCB7RU1QVFlfQVJSQVl9IGZyb20gJy4uL2RlZmluaXRpb24nO1xuaW1wb3J0IHtOR19DT01QT05FTlRfREVGLCBOR19ESVJFQ1RJVkVfREVGfSBmcm9tICcuLi9maWVsZHMnO1xuXG5pbXBvcnQge1IzRGlyZWN0aXZlTWV0YWRhdGFGYWNhZGUsIGdldENvbXBpbGVyRmFjYWRlfSBmcm9tICcuL2NvbXBpbGVyX2ZhY2FkZSc7XG5pbXBvcnQge1IzQ29tcG9uZW50TWV0YWRhdGFGYWNhZGUsIFIzUXVlcnlNZXRhZGF0YUZhY2FkZX0gZnJvbSAnLi9jb21waWxlcl9mYWNhZGVfaW50ZXJmYWNlJztcbmltcG9ydCB7YW5ndWxhckNvcmVFbnZ9IGZyb20gJy4vZW52aXJvbm1lbnQnO1xuaW1wb3J0IHtwYXRjaENvbXBvbmVudERlZldpdGhTY29wZSwgdHJhbnNpdGl2ZVNjb3Blc0Zvcn0gZnJvbSAnLi9tb2R1bGUnO1xuaW1wb3J0IHtnZXRSZWZsZWN0LCByZWZsZWN0RGVwZW5kZW5jaWVzfSBmcm9tICcuL3V0aWwnO1xuXG5cblxuLyoqXG4gKiBDb21waWxlIGFuIEFuZ3VsYXIgY29tcG9uZW50IGFjY29yZGluZyB0byBpdHMgZGVjb3JhdG9yIG1ldGFkYXRhLCBhbmQgcGF0Y2ggdGhlIHJlc3VsdGluZ1xuICogbmdDb21wb25lbnREZWYgb250byB0aGUgY29tcG9uZW50IHR5cGUuXG4gKlxuICogQ29tcGlsYXRpb24gbWF5IGJlIGFzeW5jaHJvbm91cyAoZHVlIHRvIHRoZSBuZWVkIHRvIHJlc29sdmUgVVJMcyBmb3IgdGhlIGNvbXBvbmVudCB0ZW1wbGF0ZSBvclxuICogb3RoZXIgcmVzb3VyY2VzLCBmb3IgZXhhbXBsZSkuIEluIHRoZSBldmVudCB0aGF0IGNvbXBpbGF0aW9uIGlzIG5vdCBpbW1lZGlhdGUsIGBjb21waWxlQ29tcG9uZW50YFxuICogd2lsbCBlbnF1ZXVlIHJlc291cmNlIHJlc29sdXRpb24gaW50byBhIGdsb2JhbCBxdWV1ZSBhbmQgd2lsbCBmYWlsIHRvIHJldHVybiB0aGUgYG5nQ29tcG9uZW50RGVmYFxuICogdW50aWwgdGhlIGdsb2JhbCBxdWV1ZSBoYXMgYmVlbiByZXNvbHZlZCB3aXRoIGEgY2FsbCB0byBgcmVzb2x2ZUNvbXBvbmVudFJlc291cmNlc2AuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21waWxlQ29tcG9uZW50KHR5cGU6IFR5cGU8YW55PiwgbWV0YWRhdGE6IENvbXBvbmVudCk6IHZvaWQge1xuICBsZXQgbmdDb21wb25lbnREZWY6IGFueSA9IG51bGw7XG4gIC8vIE1ldGFkYXRhIG1heSBoYXZlIHJlc291cmNlcyB3aGljaCBuZWVkIHRvIGJlIHJlc29sdmVkLlxuICBtYXliZVF1ZXVlUmVzb2x1dGlvbk9mQ29tcG9uZW50UmVzb3VyY2VzKG1ldGFkYXRhKTtcbiAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHR5cGUsIE5HX0NPTVBPTkVOVF9ERUYsIHtcbiAgICBnZXQ6ICgpID0+IHtcbiAgICAgIGNvbnN0IGNvbXBpbGVyID0gZ2V0Q29tcGlsZXJGYWNhZGUoKTtcbiAgICAgIGlmIChuZ0NvbXBvbmVudERlZiA9PT0gbnVsbCkge1xuICAgICAgICBpZiAoY29tcG9uZW50TmVlZHNSZXNvbHV0aW9uKG1ldGFkYXRhKSkge1xuICAgICAgICAgIGNvbnN0IGVycm9yID0gW2BDb21wb25lbnQgJyR7c3RyaW5naWZ5KHR5cGUpfScgaXMgbm90IHJlc29sdmVkOmBdO1xuICAgICAgICAgIGlmIChtZXRhZGF0YS50ZW1wbGF0ZVVybCkge1xuICAgICAgICAgICAgZXJyb3IucHVzaChgIC0gdGVtcGxhdGVVcmw6ICR7c3RyaW5naWZ5KG1ldGFkYXRhLnRlbXBsYXRlVXJsKX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKG1ldGFkYXRhLnN0eWxlVXJscyAmJiBtZXRhZGF0YS5zdHlsZVVybHMubGVuZ3RoKSB7XG4gICAgICAgICAgICBlcnJvci5wdXNoKGAgLSBzdHlsZVVybHM6ICR7SlNPTi5zdHJpbmdpZnkobWV0YWRhdGEuc3R5bGVVcmxzKX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZXJyb3IucHVzaChgRGlkIHlvdSBydW4gYW5kIHdhaXQgZm9yICdyZXNvbHZlQ29tcG9uZW50UmVzb3VyY2VzKCknP2ApO1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvci5qb2luKCdcXG4nKSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWV0YTogUjNDb21wb25lbnRNZXRhZGF0YUZhY2FkZSA9IHtcbiAgICAgICAgICAuLi5kaXJlY3RpdmVNZXRhZGF0YSh0eXBlLCBtZXRhZGF0YSksXG4gICAgICAgICAgdGVtcGxhdGU6IG1ldGFkYXRhLnRlbXBsYXRlIHx8ICcnLFxuICAgICAgICAgIHByZXNlcnZlV2hpdGVzcGFjZXM6IG1ldGFkYXRhLnByZXNlcnZlV2hpdGVzcGFjZXMgfHwgZmFsc2UsXG4gICAgICAgICAgc3R5bGVzOiBtZXRhZGF0YS5zdHlsZXMgfHwgRU1QVFlfQVJSQVksXG4gICAgICAgICAgYW5pbWF0aW9uczogbWV0YWRhdGEuYW5pbWF0aW9ucyxcbiAgICAgICAgICB2aWV3UXVlcmllczogZXh0cmFjdFF1ZXJpZXNNZXRhZGF0YShnZXRSZWZsZWN0KCkucHJvcE1ldGFkYXRhKHR5cGUpLCBpc1ZpZXdRdWVyeSksXG4gICAgICAgICAgZGlyZWN0aXZlczogbmV3IE1hcCgpLFxuICAgICAgICAgIHBpcGVzOiBuZXcgTWFwKCksXG4gICAgICAgICAgZW5jYXBzdWxhdGlvbjogbWV0YWRhdGEuZW5jYXBzdWxhdGlvbiB8fCBWaWV3RW5jYXBzdWxhdGlvbi5FbXVsYXRlZCxcbiAgICAgICAgICB2aWV3UHJvdmlkZXJzOiBtZXRhZGF0YS52aWV3UHJvdmlkZXJzIHx8IG51bGwsXG4gICAgICAgIH07XG4gICAgICAgIG5nQ29tcG9uZW50RGVmID0gY29tcGlsZXIuY29tcGlsZUNvbXBvbmVudChcbiAgICAgICAgICAgIGFuZ3VsYXJDb3JlRW52LCBgbmc6Ly8ke3N0cmluZ2lmeSh0eXBlKX0vdGVtcGxhdGUuaHRtbGAsIG1ldGEpO1xuXG4gICAgICAgIC8vIElmIGNvbXBvbmVudCBjb21waWxhdGlvbiBpcyBhc3luYywgdGhlbiB0aGUgQE5nTW9kdWxlIGFubm90YXRpb24gd2hpY2ggZGVjbGFyZXMgdGhlXG4gICAgICAgIC8vIGNvbXBvbmVudCBtYXkgZXhlY3V0ZSBhbmQgc2V0IGFuIG5nU2VsZWN0b3JTY29wZSBwcm9wZXJ0eSBvbiB0aGUgY29tcG9uZW50IHR5cGUuIFRoaXNcbiAgICAgICAgLy8gYWxsb3dzIHRoZSBjb21wb25lbnQgdG8gcGF0Y2ggaXRzZWxmIHdpdGggZGlyZWN0aXZlRGVmcyBmcm9tIHRoZSBtb2R1bGUgYWZ0ZXIgaXRcbiAgICAgICAgLy8gZmluaXNoZXMgY29tcGlsaW5nLlxuICAgICAgICBpZiAoaGFzU2VsZWN0b3JTY29wZSh0eXBlKSkge1xuICAgICAgICAgIGNvbnN0IHNjb3BlcyA9IHRyYW5zaXRpdmVTY29wZXNGb3IodHlwZS5uZ1NlbGVjdG9yU2NvcGUpO1xuICAgICAgICAgIHBhdGNoQ29tcG9uZW50RGVmV2l0aFNjb3BlKG5nQ29tcG9uZW50RGVmLCBzY29wZXMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4gbmdDb21wb25lbnREZWY7XG4gICAgfSxcbiAgICAvLyBNYWtlIHRoZSBwcm9wZXJ0eSBjb25maWd1cmFibGUgaW4gZGV2IG1vZGUgdG8gYWxsb3cgb3ZlcnJpZGluZyBpbiB0ZXN0c1xuICAgIGNvbmZpZ3VyYWJsZTogISFuZ0Rldk1vZGUsXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBoYXNTZWxlY3RvclNjb3BlPFQ+KGNvbXBvbmVudDogVHlwZTxUPik6IGNvbXBvbmVudCBpcyBUeXBlPFQ+JlxuICAgIHtuZ1NlbGVjdG9yU2NvcGU6IFR5cGU8YW55Pn0ge1xuICByZXR1cm4gKGNvbXBvbmVudCBhc3tuZ1NlbGVjdG9yU2NvcGU/OiBhbnl9KS5uZ1NlbGVjdG9yU2NvcGUgIT09IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBDb21waWxlIGFuIEFuZ3VsYXIgZGlyZWN0aXZlIGFjY29yZGluZyB0byBpdHMgZGVjb3JhdG9yIG1ldGFkYXRhLCBhbmQgcGF0Y2ggdGhlIHJlc3VsdGluZ1xuICogbmdEaXJlY3RpdmVEZWYgb250byB0aGUgY29tcG9uZW50IHR5cGUuXG4gKlxuICogSW4gdGhlIGV2ZW50IHRoYXQgY29tcGlsYXRpb24gaXMgbm90IGltbWVkaWF0ZSwgYGNvbXBpbGVEaXJlY3RpdmVgIHdpbGwgcmV0dXJuIGEgYFByb21pc2VgIHdoaWNoXG4gKiB3aWxsIHJlc29sdmUgd2hlbiBjb21waWxhdGlvbiBjb21wbGV0ZXMgYW5kIHRoZSBkaXJlY3RpdmUgYmVjb21lcyB1c2FibGUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjb21waWxlRGlyZWN0aXZlKHR5cGU6IFR5cGU8YW55PiwgZGlyZWN0aXZlOiBEaXJlY3RpdmUpOiB2b2lkIHtcbiAgbGV0IG5nRGlyZWN0aXZlRGVmOiBhbnkgPSBudWxsO1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkodHlwZSwgTkdfRElSRUNUSVZFX0RFRiwge1xuICAgIGdldDogKCkgPT4ge1xuICAgICAgaWYgKG5nRGlyZWN0aXZlRGVmID09PSBudWxsKSB7XG4gICAgICAgIGNvbnN0IGZhY2FkZSA9IGRpcmVjdGl2ZU1ldGFkYXRhKHR5cGUsIGRpcmVjdGl2ZSk7XG4gICAgICAgIG5nRGlyZWN0aXZlRGVmID0gZ2V0Q29tcGlsZXJGYWNhZGUoKS5jb21waWxlRGlyZWN0aXZlKFxuICAgICAgICAgICAgYW5ndWxhckNvcmVFbnYsIGBuZzovLyR7dHlwZSAmJiB0eXBlLm5hbWV9L25nRGlyZWN0aXZlRGVmLmpzYCwgZmFjYWRlKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBuZ0RpcmVjdGl2ZURlZjtcbiAgICB9LFxuICAgIC8vIE1ha2UgdGhlIHByb3BlcnR5IGNvbmZpZ3VyYWJsZSBpbiBkZXYgbW9kZSB0byBhbGxvdyBvdmVycmlkaW5nIGluIHRlc3RzXG4gICAgY29uZmlndXJhYmxlOiAhIW5nRGV2TW9kZSxcbiAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmRzRGlyZWN0bHlGcm9tT2JqZWN0KHR5cGU6IFR5cGU8YW55Pik6IGJvb2xlYW4ge1xuICByZXR1cm4gT2JqZWN0LmdldFByb3RvdHlwZU9mKHR5cGUucHJvdG90eXBlKSA9PT0gT2JqZWN0LnByb3RvdHlwZTtcbn1cblxuLyoqXG4gKiBFeHRyYWN0IHRoZSBgUjNEaXJlY3RpdmVNZXRhZGF0YWAgZm9yIGEgcGFydGljdWxhciBkaXJlY3RpdmUgKGVpdGhlciBhIGBEaXJlY3RpdmVgIG9yIGFcbiAqIGBDb21wb25lbnRgKS5cbiAqL1xuZnVuY3Rpb24gZGlyZWN0aXZlTWV0YWRhdGEodHlwZTogVHlwZTxhbnk+LCBtZXRhZGF0YTogRGlyZWN0aXZlKTogUjNEaXJlY3RpdmVNZXRhZGF0YUZhY2FkZSB7XG4gIC8vIFJlZmxlY3QgaW5wdXRzIGFuZCBvdXRwdXRzLlxuICBjb25zdCBwcm9wTWV0YWRhdGEgPSBnZXRSZWZsZWN0KCkucHJvcE1ldGFkYXRhKHR5cGUpO1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogdHlwZS5uYW1lLFxuICAgIHR5cGU6IHR5cGUsXG4gICAgdHlwZUFyZ3VtZW50Q291bnQ6IDAsXG4gICAgc2VsZWN0b3I6IG1ldGFkYXRhLnNlbGVjdG9yICEsXG4gICAgZGVwczogcmVmbGVjdERlcGVuZGVuY2llcyh0eXBlKSxcbiAgICBob3N0OiBtZXRhZGF0YS5ob3N0IHx8IEVNUFRZX09CSixcbiAgICBwcm9wTWV0YWRhdGE6IHByb3BNZXRhZGF0YSxcbiAgICBpbnB1dHM6IG1ldGFkYXRhLmlucHV0cyB8fCBFTVBUWV9BUlJBWSxcbiAgICBvdXRwdXRzOiBtZXRhZGF0YS5vdXRwdXRzIHx8IEVNUFRZX0FSUkFZLFxuICAgIHF1ZXJpZXM6IGV4dHJhY3RRdWVyaWVzTWV0YWRhdGEocHJvcE1ldGFkYXRhLCBpc0NvbnRlbnRRdWVyeSksXG4gICAgbGlmZWN5Y2xlOiB7XG4gICAgICB1c2VzT25DaGFuZ2VzOiB0eXBlLnByb3RvdHlwZS5uZ09uQ2hhbmdlcyAhPT0gdW5kZWZpbmVkLFxuICAgIH0sXG4gICAgdHlwZVNvdXJjZVNwYW46IG51bGwgISxcbiAgICB1c2VzSW5oZXJpdGFuY2U6ICFleHRlbmRzRGlyZWN0bHlGcm9tT2JqZWN0KHR5cGUpLFxuICAgIGV4cG9ydEFzOiBtZXRhZGF0YS5leHBvcnRBcyB8fCBudWxsLFxuICAgIHByb3ZpZGVyczogbWV0YWRhdGEucHJvdmlkZXJzIHx8IG51bGwsXG4gIH07XG59XG5cbmNvbnN0IEVNUFRZX09CSiA9IHt9O1xuXG5mdW5jdGlvbiBjb252ZXJ0VG9SM1F1ZXJ5UHJlZGljYXRlKHNlbGVjdG9yOiBhbnkpOiBhbnl8c3RyaW5nW10ge1xuICByZXR1cm4gdHlwZW9mIHNlbGVjdG9yID09PSAnc3RyaW5nJyA/IHNwbGl0QnlDb21tYShzZWxlY3RvcikgOiBzZWxlY3Rvcjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNvbnZlcnRUb1IzUXVlcnlNZXRhZGF0YShwcm9wZXJ0eU5hbWU6IHN0cmluZywgYW5uOiBRdWVyeSk6IFIzUXVlcnlNZXRhZGF0YUZhY2FkZSB7XG4gIHJldHVybiB7XG4gICAgcHJvcGVydHlOYW1lOiBwcm9wZXJ0eU5hbWUsXG4gICAgcHJlZGljYXRlOiBjb252ZXJ0VG9SM1F1ZXJ5UHJlZGljYXRlKGFubi5zZWxlY3RvciksXG4gICAgZGVzY2VuZGFudHM6IGFubi5kZXNjZW5kYW50cyxcbiAgICBmaXJzdDogYW5uLmZpcnN0LFxuICAgIHJlYWQ6IGFubi5yZWFkID8gYW5uLnJlYWQgOiBudWxsXG4gIH07XG59XG5mdW5jdGlvbiBleHRyYWN0UXVlcmllc01ldGFkYXRhKFxuICAgIHByb3BNZXRhZGF0YToge1trZXk6IHN0cmluZ106IGFueVtdfSxcbiAgICBpc1F1ZXJ5QW5uOiAoYW5uOiBhbnkpID0+IGFubiBpcyBRdWVyeSk6IFIzUXVlcnlNZXRhZGF0YUZhY2FkZVtdIHtcbiAgY29uc3QgcXVlcmllc01ldGE6IFIzUXVlcnlNZXRhZGF0YUZhY2FkZVtdID0gW107XG4gIGZvciAoY29uc3QgZmllbGQgaW4gcHJvcE1ldGFkYXRhKSB7XG4gICAgaWYgKHByb3BNZXRhZGF0YS5oYXNPd25Qcm9wZXJ0eShmaWVsZCkpIHtcbiAgICAgIHByb3BNZXRhZGF0YVtmaWVsZF0uZm9yRWFjaChhbm4gPT4ge1xuICAgICAgICBpZiAoaXNRdWVyeUFubihhbm4pKSB7XG4gICAgICAgICAgcXVlcmllc01ldGEucHVzaChjb252ZXJ0VG9SM1F1ZXJ5TWV0YWRhdGEoZmllbGQsIGFubikpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHF1ZXJpZXNNZXRhO1xufVxuXG5mdW5jdGlvbiBpc0NvbnRlbnRRdWVyeSh2YWx1ZTogYW55KTogdmFsdWUgaXMgUXVlcnkge1xuICBjb25zdCBuYW1lID0gdmFsdWUubmdNZXRhZGF0YU5hbWU7XG4gIHJldHVybiBuYW1lID09PSAnQ29udGVudENoaWxkJyB8fCBuYW1lID09PSAnQ29udGVudENoaWxkcmVuJztcbn1cblxuZnVuY3Rpb24gaXNWaWV3UXVlcnkodmFsdWU6IGFueSk6IHZhbHVlIGlzIFF1ZXJ5IHtcbiAgY29uc3QgbmFtZSA9IHZhbHVlLm5nTWV0YWRhdGFOYW1lO1xuICByZXR1cm4gbmFtZSA9PT0gJ1ZpZXdDaGlsZCcgfHwgbmFtZSA9PT0gJ1ZpZXdDaGlsZHJlbic7XG59XG5cbmZ1bmN0aW9uIHNwbGl0QnlDb21tYSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nW10ge1xuICByZXR1cm4gdmFsdWUuc3BsaXQoJywnKS5tYXAocGllY2UgPT4gcGllY2UudHJpbSgpKTtcbn1cbiJdfQ==
|
|
@@ -32,7 +32,6 @@ export const angularCoreEnv = {
|
|
|
32
32
|
'inject': inject,
|
|
33
33
|
'ɵinjectAttribute': r3.injectAttribute,
|
|
34
34
|
'ɵtemplateRefExtractor': r3.templateRefExtractor,
|
|
35
|
-
'ɵinjectRenderer2': r3.injectRenderer2,
|
|
36
35
|
'ɵNgOnChangesFeature': r3.NgOnChangesFeature,
|
|
37
36
|
'ɵPublicFeature': r3.PublicFeature,
|
|
38
37
|
'ɵInheritDefinitionFeature': r3.InheritDefinitionFeature,
|
|
@@ -80,7 +79,7 @@ export const angularCoreEnv = {
|
|
|
80
79
|
'ɵprojection': r3.projection,
|
|
81
80
|
'ɵelementProperty': r3.elementProperty,
|
|
82
81
|
'ɵpipeBind1': r3.pipeBind1,
|
|
83
|
-
'ɵpipeBind2': r3.
|
|
82
|
+
'ɵpipeBind2': r3.pipeBind2,
|
|
84
83
|
'ɵpipeBind3': r3.pipeBind3,
|
|
85
84
|
'ɵpipeBind4': r3.pipeBind4,
|
|
86
85
|
'ɵpipeBindV': r3.pipeBindV,
|
|
@@ -99,6 +98,11 @@ export const angularCoreEnv = {
|
|
|
99
98
|
'ɵtextBinding': r3.textBinding,
|
|
100
99
|
'ɵembeddedViewStart': r3.embeddedViewStart,
|
|
101
100
|
'ɵembeddedViewEnd': r3.embeddedViewEnd,
|
|
101
|
+
'ɵi18nAttribute': r3.i18nAttribute,
|
|
102
|
+
'ɵi18nExp': r3.i18nExp,
|
|
103
|
+
'ɵi18nStart': r3.i18nStart,
|
|
104
|
+
'ɵi18nEnd': r3.i18nEnd,
|
|
105
|
+
'ɵi18nApply': r3.i18nApply,
|
|
102
106
|
'ɵsanitizeHtml': sanitization.sanitizeHtml,
|
|
103
107
|
'ɵsanitizeStyle': sanitization.sanitizeStyle,
|
|
104
108
|
'ɵdefaultStyleSanitizer': sanitization.defaultStyleSanitizer,
|
|
@@ -107,4 +111,4 @@ export const angularCoreEnv = {
|
|
|
107
111
|
'ɵsanitizeUrl': sanitization.sanitizeUrl
|
|
108
112
|
};
|
|
109
113
|
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9yZW5kZXIzL2ppdC9lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQVFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxjQUFjLEdBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQy9CLE9BQU8sS0FBSyxZQUFZLE1BQU0saUNBQWlDLENBQUM7Ozs7OztBQVFoRSxhQUFhLGNBQWMsR0FBK0I7SUFDeEQsYUFBYSxFQUFFLEVBQUUsQ0FBQyxVQUFVO0lBQzVCLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxlQUFlO0lBQ3RDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxlQUFlO0lBQ3RDLGtCQUFrQixFQUFFLGdCQUFnQjtJQUNwQyxnQkFBZ0IsRUFBRSxjQUFjO0lBQ2hDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGFBQWEsRUFBRSxFQUFFLENBQUMsVUFBVTtJQUM1QixrQkFBa0IsRUFBRSxFQUFFLENBQUMsZUFBZTtJQUN0QyxlQUFlLEVBQUUsRUFBRSxDQUFDLFlBQVk7SUFDaEMsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLG1CQUFtQjtJQUM5QyxRQUFRLEVBQUUsTUFBTTtJQUNoQixrQkFBa0IsRUFBRSxFQUFFLENBQUMsZUFBZTtJQUN0Qyx1QkFBdUIsRUFBRSxFQUFFLENBQUMsb0JBQW9CO0lBQ2hELGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxlQUFlO0lBQ3RDLHFCQUFxQixFQUFFLEVBQUUsQ0FBQyxrQkFBa0I7SUFDNUMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsMkJBQTJCLEVBQUUsRUFBRSxDQUFDLHdCQUF3QjtJQUN4RCxtQkFBbUIsRUFBRSxFQUFFLENBQUMsZ0JBQWdCO0lBQ3hDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSTtJQUNoQixZQUFZLEVBQUUsRUFBRSxDQUFDLFNBQVM7SUFDMUIsY0FBYyxFQUFFLEVBQUUsQ0FBQyxXQUFXO0lBQzlCLHdCQUF3QixFQUFFLEVBQUUsQ0FBQyxxQkFBcUI7SUFDbEQsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLG1CQUFtQjtJQUM5QyxnQkFBZ0IsRUFBRSxFQUFFLENBQUMsYUFBYTtJQUNsQyxnQkFBZ0IsRUFBRSxFQUFFLENBQUMsYUFBYTtJQUNsQyxrQkFBa0IsRUFBRSxFQUFFLENBQUMsZUFBZTtJQUN0QyxlQUFlLEVBQUUsRUFBRSxDQUFDLFlBQVk7SUFDaEMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGNBQWM7SUFDcEMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLGVBQWU7SUFDdEMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxZQUFZO0lBQ2hDLGFBQWEsRUFBRSxFQUFFLENBQUMsVUFBVTtJQUM1QixVQUFVLEVBQUUsRUFBRSxDQUFDLE9BQU87SUFDdEIsS0FBSyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUI7SUFDL0IsS0FBSyxFQUFFLEVBQUUsQ0FBQyxtQkFBbUI7SUFDN0IsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLGNBQWM7SUFDcEMsY0FBYyxFQUFFLEVBQUUsQ0FBQyxXQUFXO0lBQzlCLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxnQkFBZ0I7SUFDeEMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxRQUFRO0lBQ3hCLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSTtJQUNoQixhQUFhLEVBQUUsRUFBRSxDQUFDLFVBQVU7SUFDNUIsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLGVBQWU7SUFDdEMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxTQUFTO0lBQzFCLFlBQVksRUFBRSxFQUFFLENBQUMsU0FBUztJQUMxQixZQUFZLEVBQUUsRUFBRSxDQUFDLFNBQVM7SUFDMUIsWUFBWSxFQUFFLEVBQUUsQ0FBQyxTQUFTO0lBQzFCLFlBQVksRUFBRSxFQUFFLENBQUMsU0FBUztJQUMxQixnQkFBZ0IsRUFBRSxFQUFFLENBQUMsYUFBYTtJQUNsQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUk7SUFDaEIsUUFBUSxFQUFFLEVBQUUsQ0FBQyxLQUFLO0lBQ2xCLGVBQWUsRUFBRSxFQUFFLENBQUMsWUFBWTtJQUNoQyx1QkFBdUIsRUFBRSxFQUFFLENBQUMsb0JBQW9CO0lBQ2hELFlBQVksRUFBRSxFQUFFLENBQUMsU0FBUztJQUMxQixpQkFBaUIsRUFBRSxFQUFFLENBQUMsY0FBYztJQUNwQyxvQkFBb0IsRUFBRSxFQUFFLENBQUMsaUJBQWlCO0lBQzFDLG1CQUFtQixFQUFFLEVBQUUsQ0FBQyxnQkFBZ0I7SUFDeEMsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLG1CQUFtQjtJQUM5QyxXQUFXLEVBQUUsRUFBRSxDQUFDLFFBQVE7SUFDeEIsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxFQUFFLENBQUMsV0FBVztJQUM5QixvQkFBb0IsRUFBRSxFQUFFLENBQUMsaUJBQWlCO0lBQzFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxlQUFlO0lBRXRDLGVBQWUsRUFBRSxZQUFZLENBQUMsWUFBWTtJQUMxQyxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsYUFBYTtJQUM1Qyx3QkFBd0IsRUFBRSxZQUFZLENBQUMscUJBQXFCO0lBQzVELHNCQUFzQixFQUFFLFlBQVksQ0FBQyxtQkFBbUI7SUFDeEQsaUJBQWlCLEVBQUUsWUFBWSxDQUFDLGNBQWM7SUFDOUMsY0FBYyxFQUFFLFlBQVksQ0FBQyxXQUFXO0NBQ3pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7ZGVmaW5lSW5qZWN0YWJsZSwgZGVmaW5lSW5qZWN0b3IsfSBmcm9tICcuLi8uLi9kaS9kZWZzJztcbmltcG9ydCB7aW5qZWN0fSBmcm9tICcuLi8uLi9kaS9pbmplY3Rvcic7XG5pbXBvcnQgKiBhcyByMyBmcm9tICcuLi9pbmRleCc7XG5pbXBvcnQgKiBhcyBzYW5pdGl6YXRpb24gZnJvbSAnLi4vLi4vc2FuaXRpemF0aW9uL3Nhbml0aXphdGlvbic7XG5cblxuLyoqXG4gKiBBIG1hcHBpbmcgb2YgdGhlIEBhbmd1bGFyL2NvcmUgQVBJIHN1cmZhY2UgdXNlZCBpbiBnZW5lcmF0ZWQgZXhwcmVzc2lvbnMgdG8gdGhlIGFjdHVhbCBzeW1ib2xzLlxuICpcbiAqIFRoaXMgc2hvdWxkIGJlIGtlcHQgdXAgdG8gZGF0ZSB3aXRoIHRoZSBwdWJsaWMgZXhwb3J0cyBvZiBAYW5ndWxhci9jb3JlLlxuICovXG5leHBvcnQgY29uc3QgYW5ndWxhckNvcmVFbnY6IHtbbmFtZTogc3RyaW5nXTogRnVuY3Rpb259ID0ge1xuICAnybVkZWZpbmVCYXNlJzogcjMuZGVmaW5lQmFzZSxcbiAgJ8m1ZGVmaW5lQ29tcG9uZW50JzogcjMuZGVmaW5lQ29tcG9uZW50LFxuICAnybVkZWZpbmVEaXJlY3RpdmUnOiByMy5kZWZpbmVEaXJlY3RpdmUsXG4gICdkZWZpbmVJbmplY3RhYmxlJzogZGVmaW5lSW5qZWN0YWJsZSxcbiAgJ2RlZmluZUluamVjdG9yJzogZGVmaW5lSW5qZWN0b3IsXG4gICfJtWRlZmluZU5nTW9kdWxlJzogcjMuZGVmaW5lTmdNb2R1bGUsXG4gICfJtWRlZmluZVBpcGUnOiByMy5kZWZpbmVQaXBlLFxuICAnybVkaXJlY3RpdmVJbmplY3QnOiByMy5kaXJlY3RpdmVJbmplY3QsXG4gICfJtWdldEZhY3RvcnlPZic6IHIzLmdldEZhY3RvcnlPZixcbiAgJ8m1Z2V0SW5oZXJpdGVkRmFjdG9yeSc6IHIzLmdldEluaGVyaXRlZEZhY3RvcnksXG4gICdpbmplY3QnOiBpbmplY3QsXG4gICfJtWluamVjdEF0dHJpYnV0ZSc6IHIzLmluamVjdEF0dHJpYnV0ZSxcbiAgJ8m1dGVtcGxhdGVSZWZFeHRyYWN0b3InOiByMy50ZW1wbGF0ZVJlZkV4dHJhY3RvcixcbiAgJ8m1aW5qZWN0UmVuZGVyZXIyJzogcjMuaW5qZWN0UmVuZGVyZXIyLFxuICAnybVOZ09uQ2hhbmdlc0ZlYXR1cmUnOiByMy5OZ09uQ2hhbmdlc0ZlYXR1cmUsXG4gICfJtVB1YmxpY0ZlYXR1cmUnOiByMy5QdWJsaWNGZWF0dXJlLFxuICAnybVJbmhlcml0RGVmaW5pdGlvbkZlYXR1cmUnOiByMy5Jbmhlcml0RGVmaW5pdGlvbkZlYXR1cmUsXG4gICfJtWVsZW1lbnRBdHRyaWJ1dGUnOiByMy5lbGVtZW50QXR0cmlidXRlLFxuICAnybViaW5kJzogcjMuYmluZCxcbiAgJ8m1Y29udGFpbmVyJzogcjMuY29udGFpbmVyLFxuICAnybVuZXh0Q29udGV4dCc6IHIzLm5leHRDb250ZXh0LFxuICAnybVjb250YWluZXJSZWZyZXNoU3RhcnQnOiByMy5jb250YWluZXJSZWZyZXNoU3RhcnQsXG4gICfJtWNvbnRhaW5lclJlZnJlc2hFbmQnOiByMy5jb250YWluZXJSZWZyZXNoRW5kLFxuICAnybVsb2FkUXVlcnlMaXN0JzogcjMubG9hZFF1ZXJ5TGlzdCxcbiAgJ8m1bmFtZXNwYWNlSFRNTCc6IHIzLm5hbWVzcGFjZUhUTUwsXG4gICfJtW5hbWVzcGFjZU1hdGhNTCc6IHIzLm5hbWVzcGFjZU1hdGhNTCxcbiAgJ8m1bmFtZXNwYWNlU1ZHJzogcjMubmFtZXNwYWNlU1ZHLFxuICAnybVlbmFibGVCaW5kaW5ncyc6IHIzLmVuYWJsZUJpbmRpbmdzLFxuICAnybVkaXNhYmxlQmluZGluZ3MnOiByMy5kaXNhYmxlQmluZGluZ3MsXG4gICfJtWVsZW1lbnRTdGFydCc6IHIzLmVsZW1lbnRTdGFydCxcbiAgJ8m1ZWxlbWVudEVuZCc6IHIzLmVsZW1lbnRFbmQsXG4gICfJtWVsZW1lbnQnOiByMy5lbGVtZW50LFxuICAnybVFQyc6IHIzLmVsZW1lbnRDb250YWluZXJTdGFydCxcbiAgJ8m1ZUMnOiByMy5lbGVtZW50Q29udGFpbmVyRW5kLFxuICAnybVwdXJlRnVuY3Rpb24wJzogcjMucHVyZUZ1bmN0aW9uMCxcbiAgJ8m1cHVyZUZ1bmN0aW9uMSc6IHIzLnB1cmVGdW5jdGlvbjEsXG4gICfJtXB1cmVGdW5jdGlvbjInOiByMy5wdXJlRnVuY3Rpb24yLFxuICAnybVwdXJlRnVuY3Rpb24zJzogcjMucHVyZUZ1bmN0aW9uMyxcbiAgJ8m1cHVyZUZ1bmN0aW9uNCc6IHIzLnB1cmVGdW5jdGlvbjQsXG4gICfJtXB1cmVGdW5jdGlvbjUnOiByMy5wdXJlRnVuY3Rpb241LFxuICAnybVwdXJlRnVuY3Rpb242JzogcjMucHVyZUZ1bmN0aW9uNixcbiAgJ8m1cHVyZUZ1bmN0aW9uNyc6IHIzLnB1cmVGdW5jdGlvbjcsXG4gICfJtXB1cmVGdW5jdGlvbjgnOiByMy5wdXJlRnVuY3Rpb244LFxuICAnybVwdXJlRnVuY3Rpb25WJzogcjMucHVyZUZ1bmN0aW9uVixcbiAgJ8m1Z2V0Q3VycmVudFZpZXcnOiByMy5nZXRDdXJyZW50VmlldyxcbiAgJ8m1cmVzdG9yZVZpZXcnOiByMy5yZXN0b3JlVmlldyxcbiAgJ8m1aW50ZXJwb2xhdGlvbjEnOiByMy5pbnRlcnBvbGF0aW9uMSxcbiAgJ8m1aW50ZXJwb2xhdGlvbjInOiByMy5pbnRlcnBvbGF0aW9uMixcbiAgJ8m1aW50ZXJwb2xhdGlvbjMnOiByMy5pbnRlcnBvbGF0aW9uMyxcbiAgJ8m1aW50ZXJwb2xhdGlvbjQnOiByMy5pbnRlcnBvbGF0aW9uNCxcbiAgJ8m1aW50ZXJwb2xhdGlvbjUnOiByMy5pbnRlcnBvbGF0aW9uNSxcbiAgJ8m1aW50ZXJwb2xhdGlvbjYnOiByMy5pbnRlcnBvbGF0aW9uNixcbiAgJ8m1aW50ZXJwb2xhdGlvbjcnOiByMy5pbnRlcnBvbGF0aW9uNyxcbiAgJ8m1aW50ZXJwb2xhdGlvbjgnOiByMy5pbnRlcnBvbGF0aW9uOCxcbiAgJ8m1aW50ZXJwb2xhdGlvblYnOiByMy5pbnRlcnBvbGF0aW9uVixcbiAgJ8m1ZWxlbWVudENsYXNzUHJvcCc6IHIzLmVsZW1lbnRDbGFzc1Byb3AsXG4gICfJtWxpc3RlbmVyJzogcjMubGlzdGVuZXIsXG4gICfJtWxvYWQnOiByMy5sb2FkLFxuICAnybVwcm9qZWN0aW9uJzogcjMucHJvamVjdGlvbixcbiAgJ8m1ZWxlbWVudFByb3BlcnR5JzogcjMuZWxlbWVudFByb3BlcnR5LFxuICAnybVwaXBlQmluZDEnOiByMy5waXBlQmluZDEsXG4gICfJtXBpcGVCaW5kMic6IHIzLnBpcGVCaW5kMSxcbiAgJ8m1cGlwZUJpbmQzJzogcjMucGlwZUJpbmQzLFxuICAnybVwaXBlQmluZDQnOiByMy5waXBlQmluZDQsXG4gICfJtXBpcGVCaW5kVic6IHIzLnBpcGVCaW5kVixcbiAgJ8m1cHJvamVjdGlvbkRlZic6IHIzLnByb2plY3Rpb25EZWYsXG4gICfJtXBpcGUnOiByMy5waXBlLFxuICAnybVxdWVyeSc6IHIzLnF1ZXJ5LFxuICAnybVxdWVyeVJlZnJlc2gnOiByMy5xdWVyeVJlZnJlc2gsXG4gICfJtXJlZ2lzdGVyQ29udGVudFF1ZXJ5JzogcjMucmVnaXN0ZXJDb250ZW50UXVlcnksXG4gICfJtXJlZmVyZW5jZSc6IHIzLnJlZmVyZW5jZSxcbiAgJ8m1ZWxlbWVudFN0eWxpbmcnOiByMy5lbGVtZW50U3R5bGluZyxcbiAgJ8m1ZWxlbWVudFN0eWxpbmdNYXAnOiByMy5lbGVtZW50U3R5bGluZ01hcCxcbiAgJ8m1ZWxlbWVudFN0eWxlUHJvcCc6IHIzLmVsZW1lbnRTdHlsZVByb3AsXG4gICfJtWVsZW1lbnRTdHlsaW5nQXBwbHknOiByMy5lbGVtZW50U3R5bGluZ0FwcGx5LFxuICAnybV0ZW1wbGF0ZSc6IHIzLnRlbXBsYXRlLFxuICAnybV0ZXh0JzogcjMudGV4dCxcbiAgJ8m1dGV4dEJpbmRpbmcnOiByMy50ZXh0QmluZGluZyxcbiAgJ8m1ZW1iZWRkZWRWaWV3U3RhcnQnOiByMy5lbWJlZGRlZFZpZXdTdGFydCxcbiAgJ8m1ZW1iZWRkZWRWaWV3RW5kJzogcjMuZW1iZWRkZWRWaWV3RW5kLFxuXG4gICfJtXNhbml0aXplSHRtbCc6IHNhbml0aXphdGlvbi5zYW5pdGl6ZUh0bWwsXG4gICfJtXNhbml0aXplU3R5bGUnOiBzYW5pdGl6YXRpb24uc2FuaXRpemVTdHlsZSxcbiAgJ8m1ZGVmYXVsdFN0eWxlU2FuaXRpemVyJzogc2FuaXRpemF0aW9uLmRlZmF1bHRTdHlsZVNhbml0aXplcixcbiAgJ8m1c2FuaXRpemVSZXNvdXJjZVVybCc6IHNhbml0aXphdGlvbi5zYW5pdGl6ZVJlc291cmNlVXJsLFxuICAnybVzYW5pdGl6ZVNjcmlwdCc6IHNhbml0aXphdGlvbi5zYW5pdGl6ZVNjcmlwdCxcbiAgJ8m1c2FuaXRpemVVcmwnOiBzYW5pdGl6YXRpb24uc2FuaXRpemVVcmxcbn07XG4iXX0=
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb3JlL3NyYy9yZW5kZXIzL2ppdC9lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQVFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSxjQUFjLEdBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sS0FBSyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQy9CLE9BQU8sS0FBSyxZQUFZLE1BQU0saUNBQWlDLENBQUM7Ozs7OztBQVFoRSxhQUFhLGNBQWMsR0FBK0I7SUFDeEQsYUFBYSxFQUFFLEVBQUUsQ0FBQyxVQUFVO0lBQzVCLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxlQUFlO0lBQ3RDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxlQUFlO0lBQ3RDLGtCQUFrQixFQUFFLGdCQUFnQjtJQUNwQyxnQkFBZ0IsRUFBRSxjQUFjO0lBQ2hDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxjQUFjO0lBQ3BDLGFBQWEsRUFBRSxFQUFFLENBQUMsVUFBVTtJQUM1QixrQkFBa0IsRUFBRSxFQUFFLENBQUMsZUFBZTtJQUN0QyxlQUFlLEVBQUUsRUFBRSxDQUFDLFlBQVk7SUFDaEMsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLG1CQUFtQjtJQUM5QyxRQUFRLEVBQUUsTUFBTTtJQUNoQixrQkFBa0IsRUFBRSxFQUFFLENBQUMsZUFBZTtJQUN0Qyx1QkFBdUIsRUFBRSxFQUFFLENBQUMsb0JBQW9CO0lBQ2hELHFCQUFxQixFQUFFLEVBQUUsQ0FBQyxrQkFBa0I7SUFDNUMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLGFBQWE7SUFDbEMsMkJBQTJCLEVBQUUsRUFBRSxDQUFDLHdCQUF3QjtJQUN4RCxtQkFBbUIsRUFBRSxFQUFFLENBQUMsZ0JBQWdC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QUFFLEVBQUUsQ0FBQyxnQkFBZ0I7SUFDeEMsc0JBQXNCLEVBQUUsRUFBRSxDQUFDLG1CQUFtQjtJQUM5QyxXQUFXLEVBQUUsRUFBRSxDQUFDLFFBQVE7SUFDeEIsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJO0lBQ2hCLGNBQWMsRUFBRSxFQUFFLENBQUMsV0FBVztJQUM5QixvQkFBb0IsRUFBRSxFQUFFLENBQUMsaUJBQWlCO0lBQzFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxlQUFlO0lBQ3RDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxhQUFhO0lBQ2xDLFVBQVUsRUFBRSxFQUFFLENBQUMsT0FBTztJQUN0QixZQUFZLEVBQUUsRUFBRSxDQUFDLFNBQVM7SUFDMUIsVUFBVSxFQUFFLEVBQUUsQ0FBQyxPQUFPO0lBQ3RCLFlBQVksRUFBRSxFQUFFLENBQUMsU0FBUztJQUUxQixlQUFlLEVBQUUsWUFBWSxDQUFDLFlBQVk7SUFDMUMsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLGFBQWE7SUFDNUMsd0JBQXdCLEVBQUUsWUFBWSxDQUFDLHFCQUFxQjtJQUM1RCxzQkFBc0IsRUFBRSxZQUFZLENBQUMsbUJBQW1CO0lBQ3hELGlCQUFpQixFQUFFLFlBQVksQ0FBQyxjQUFjO0lBQzlDLGNBQWMsRUFBRSxZQUFZLENBQUMsV0FBVztDQUN6QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge2RlZmluZUluamVjdGFibGUsIGRlZmluZUluamVjdG9yLH0gZnJvbSAnLi4vLi4vZGkvZGVmcyc7XG5pbXBvcnQge2luamVjdH0gZnJvbSAnLi4vLi4vZGkvaW5qZWN0b3InO1xuaW1wb3J0ICogYXMgcjMgZnJvbSAnLi4vaW5kZXgnO1xuaW1wb3J0ICogYXMgc2FuaXRpemF0aW9uIGZyb20gJy4uLy4uL3Nhbml0aXphdGlvbi9zYW5pdGl6YXRpb24nO1xuXG5cbi8qKlxuICogQSBtYXBwaW5nIG9mIHRoZSBAYW5ndWxhci9jb3JlIEFQSSBzdXJmYWNlIHVzZWQgaW4gZ2VuZXJhdGVkIGV4cHJlc3Npb25zIHRvIHRoZSBhY3R1YWwgc3ltYm9scy5cbiAqXG4gKiBUaGlzIHNob3VsZCBiZSBrZXB0IHVwIHRvIGRhdGUgd2l0aCB0aGUgcHVibGljIGV4cG9ydHMgb2YgQGFuZ3VsYXIvY29yZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGFuZ3VsYXJDb3JlRW52OiB7W25hbWU6IHN0cmluZ106IEZ1bmN0aW9ufSA9IHtcbiAgJ8m1ZGVmaW5lQmFzZSc6IHIzLmRlZmluZUJhc2UsXG4gICfJtWRlZmluZUNvbXBvbmVudCc6IHIzLmRlZmluZUNvbXBvbmVudCxcbiAgJ8m1ZGVmaW5lRGlyZWN0aXZlJzogcjMuZGVmaW5lRGlyZWN0aXZlLFxuICAnZGVmaW5lSW5qZWN0YWJsZSc6IGRlZmluZUluamVjdGFibGUsXG4gICdkZWZpbmVJbmplY3Rvcic6IGRlZmluZUluamVjdG9yLFxuICAnybVkZWZpbmVOZ01vZHVsZSc6IHIzLmRlZmluZU5nTW9kdWxlLFxuICAnybVkZWZpbmVQaXBlJzogcjMuZGVmaW5lUGlwZSxcbiAgJ8m1ZGlyZWN0aXZlSW5qZWN0JzogcjMuZGlyZWN0aXZlSW5qZWN0LFxuICAnybVnZXRGYWN0b3J5T2YnOiByMy5nZXRGYWN0b3J5T2YsXG4gICfJtWdldEluaGVyaXRlZEZhY3RvcnknOiByMy5nZXRJbmhlcml0ZWRGYWN0b3J5LFxuICAnaW5qZWN0JzogaW5qZWN0LFxuICAnybVpbmplY3RBdHRyaWJ1dGUnOiByMy5pbmplY3RBdHRyaWJ1dGUsXG4gICfJtXRlbXBsYXRlUmVmRXh0cmFjdG9yJzogcjMudGVtcGxhdGVSZWZFeHRyYWN0b3IsXG4gICfJtU5nT25DaGFuZ2VzRmVhdHVyZSc6IHIzLk5nT25DaGFuZ2VzRmVhdHVyZSxcbiAgJ8m1UHVibGljRmVhdHVyZSc6IHIzLlB1YmxpY0ZlYXR1cmUsXG4gICfJtUluaGVyaXREZWZpbml0aW9uRmVhdHVyZSc6IHIzLkluaGVyaXREZWZpbml0aW9uRmVhdHVyZSxcbiAgJ8m1ZWxlbWVudEF0dHJpYnV0ZSc6IHIzLmVsZW1lbnRBdHRyaWJ1dGUsXG4gICfJtWJpbmQnOiByMy5iaW5kLFxuICAnybVjb250YWluZXInOiByMy5jb250YWluZXIsXG4gICfJtW5leHRDb250ZXh0JzogcjMubmV4dENvbnRleHQsXG4gICfJtWNvbnRhaW5lclJlZnJlc2hTdGFydCc6IHIzLmNvbnRhaW5lclJlZnJlc2hTdGFydCxcbiAgJ8m1Y29udGFpbmVyUmVmcmVzaEVuZCc6IHIzLmNvbnRhaW5lclJlZnJlc2hFbmQsXG4gICfJtWxvYWRRdWVyeUxpc3QnOiByMy5sb2FkUXVlcnlMaXN0LFxuICAnybVuYW1lc3BhY2VIVE1MJzogcjMubmFtZXNwYWNlSFRNTCxcbiAgJ8m1bmFtZXNwYWNlTWF0aE1MJzogcjMubmFtZXNwYWNlTWF0aE1MLFxuICAnybVuYW1lc3BhY2VTVkcnOiByMy5uYW1lc3BhY2VTVkcsXG4gICfJtWVuYWJsZUJpbmRpbmdzJzogcjMuZW5hYmxlQmluZGluZ3MsXG4gICfJtWRpc2FibGVCaW5kaW5ncyc6IHIzLmRpc2FibGVCaW5kaW5ncyxcbiAgJ8m1ZWxlbWVudFN0YXJ0JzogcjMuZWxlbWVudFN0YXJ0LFxuICAnybVlbGVtZW50RW5kJzogcjMuZWxlbWVudEVuZCxcbiAgJ8m1ZWxlbWVudCc6IHIzLmVsZW1lbnQsXG4gICfJtUVDJzogcjMuZWxlbWVudENvbnRhaW5lclN0YXJ0LFxuICAnybVlQyc6IHIzLmVsZW1lbnRDb250YWluZXJFbmQsXG4gICfJtXB1cmVGdW5jdGlvbjAnOiByMy5wdXJlRnVuY3Rpb24wLFxuICAnybVwdXJlRnVuY3Rpb24xJzogcjMucHVyZUZ1bmN0aW9uMSxcbiAgJ8m1cHVyZUZ1bmN0aW9uMic6IHIzLnB1cmVGdW5jdGlvbjIsXG4gICfJtXB1cmVGdW5jdGlvbjMnOiByMy5wdXJlRnVuY3Rpb24zLFxuICAnybVwdXJlRnVuY3Rpb240JzogcjMucHVyZUZ1bmN0aW9uNCxcbiAgJ8m1cHVyZUZ1bmN0aW9uNSc6IHIzLnB1cmVGdW5jdGlvbjUsXG4gICfJtXB1cmVGdW5jdGlvbjYnOiByMy5wdXJlRnVuY3Rpb242LFxuICAnybVwdXJlRnVuY3Rpb243JzogcjMucHVyZUZ1bmN0aW9uNyxcbiAgJ8m1cHVyZUZ1bmN0aW9uOCc6IHIzLnB1cmVGdW5jdGlvbjgsXG4gICfJtXB1cmVGdW5jdGlvblYnOiByMy5wdXJlRnVuY3Rpb25WLFxuICAnybVnZXRDdXJyZW50Vmlldyc6IHIzLmdldEN1cnJlbnRWaWV3LFxuICAnybVyZXN0b3JlVmlldyc6IHIzLnJlc3RvcmVWaWV3LFxuICAnybVpbnRlcnBvbGF0aW9uMSc6IHIzLmludGVycG9sYXRpb24xLFxuICAnybVpbnRlcnBvbGF0aW9uMic6IHIzLmludGVycG9sYXRpb24yLFxuICAnybVpbnRlcnBvbGF0aW9uMyc6IHIzLmludGVycG9sYXRpb24zLFxuICAnybVpbnRlcnBvbGF0aW9uNCc6IHIzLmludGVycG9sYXRpb240LFxuICAnybVpbnRlcnBvbGF0aW9uNSc6IHIzLmludGVycG9sYXRpb241LFxuICAnybVpbnRlcnBvbGF0aW9uNic6IHIzLmludGVycG9sYXRpb242LFxuICAnybVpbnRlcnBvbGF0aW9uNyc6IHIzLmludGVycG9sYXRpb243LFxuICAnybVpbnRlcnBvbGF0aW9uOCc6IHIzLmludGVycG9sYXRpb244LFxuICAnybVpbnRlcnBvbGF0aW9uVic6IHIzLmludGVycG9sYXRpb25WLFxuICAnybVlbGVtZW50Q2xhc3NQcm9wJzogcjMuZWxlbWVudENsYXNzUHJvcCxcbiAgJ8m1bGlzdGVuZXInOiByMy5saXN0ZW5lcixcbiAgJ8m1bG9hZCc6IHIzLmxvYWQsXG4gICfJtXByb2plY3Rpb24nOiByMy5wcm9qZWN0aW9uLFxuICAnybVlbGVtZW50UHJvcGVydHknOiByMy5lbGVtZW50UHJvcGVydHksXG4gICfJtXBpcGVCaW5kMSc6IHIzLnBpcGVCaW5kMSxcbiAgJ8m1cGlwZUJpbmQyJzogcjMucGlwZUJpbmQyLFxuICAnybVwaXBlQmluZDMnOiByMy5waXBlQmluZDMsXG4gICfJtXBpcGVCaW5kNCc6IHIzLnBpcGVCaW5kNCxcbiAgJ8m1cGlwZUJpbmRWJzogcjMucGlwZUJpbmRWLFxuICAnybVwcm9qZWN0aW9uRGVmJzogcjMucHJvamVjdGlvbkRlZixcbiAgJ8m1cGlwZSc6IHIzLnBpcGUsXG4gICfJtXF1ZXJ5JzogcjMucXVlcnksXG4gICfJtXF1ZXJ5UmVmcmVzaCc6IHIzLnF1ZXJ5UmVmcmVzaCxcbiAgJ8m1cmVnaXN0ZXJDb250ZW50UXVlcnknOiByMy5yZWdpc3RlckNvbnRlbnRRdWVyeSxcbiAgJ8m1cmVmZXJlbmNlJzogcjMucmVmZXJlbmNlLFxuICAnybVlbGVtZW50U3R5bGluZyc6IHIzLmVsZW1lbnRTdHlsaW5nLFxuICAnybVlbGVtZW50U3R5bGluZ01hcCc6IHIzLmVsZW1lbnRTdHlsaW5nTWFwLFxuICAnybVlbGVtZW50U3R5bGVQcm9wJzogcjMuZWxlbWVudFN0eWxlUHJvcCxcbiAgJ8m1ZWxlbWVudFN0eWxpbmdBcHBseSc6IHIzLmVsZW1lbnRTdHlsaW5nQXBwbHksXG4gICfJtXRlbXBsYXRlJzogcjMudGVtcGxhdGUsXG4gICfJtXRleHQnOiByMy50ZXh0LFxuICAnybV0ZXh0QmluZGluZyc6IHIzLnRleHRCaW5kaW5nLFxuICAnybVlbWJlZGRlZFZpZXdTdGFydCc6IHIzLmVtYmVkZGVkVmlld1N0YXJ0LFxuICAnybVlbWJlZGRlZFZpZXdFbmQnOiByMy5lbWJlZGRlZFZpZXdFbmQsXG4gICfJtWkxOG5BdHRyaWJ1dGUnOiByMy5pMThuQXR0cmlidXRlLFxuICAnybVpMThuRXhwJzogcjMuaTE4bkV4cCxcbiAgJ8m1aTE4blN0YXJ0JzogcjMuaTE4blN0YXJ0LFxuICAnybVpMThuRW5kJzogcjMuaTE4bkVuZCxcbiAgJ8m1aTE4bkFwcGx5JzogcjMuaTE4bkFwcGx5LFxuXG4gICfJtXNhbml0aXplSHRtbCc6IHNhbml0aXphdGlvbi5zYW5pdGl6ZUh0bWwsXG4gICfJtXNhbml0aXplU3R5bGUnOiBzYW5pdGl6YXRpb24uc2FuaXRpemVTdHlsZSxcbiAgJ8m1ZGVmYXVsdFN0eWxlU2FuaXRpemVyJzogc2FuaXRpemF0aW9uLmRlZmF1bHRTdHlsZVNhbml0aXplcixcbiAgJ8m1c2FuaXRpemVSZXNvdXJjZVVybCc6IHNhbml0aXphdGlvbi5zYW5pdGl6ZVJlc291cmNlVXJsLFxuICAnybVzYW5pdGl6ZVNjcmlwdCc6IHNhbml0aXphdGlvbi5zYW5pdGl6ZVNjcmlwdCxcbiAgJ8m1c2FuaXRpemVVcmwnOiBzYW5pdGl6YXRpb24uc2FuaXRpemVVcmxcbn07XG4iXX0=
|
|
@@ -9,9 +9,9 @@
|
|
|
9
9
|
* Use of this source code is governed by an MIT-style license that can be
|
|
10
10
|
* found in the LICENSE file at https://angular.io/license
|
|
11
11
|
*/
|
|
12
|
-
import { LiteralExpr, WrappedNodeExpr, compileInjectable as compileR3Injectable, jitExpression } from '@angular/compiler';
|
|
13
12
|
import { getClosureSafeProperty } from '../../util/property';
|
|
14
13
|
import { NG_INJECTABLE_DEF } from '../fields';
|
|
14
|
+
import { getCompilerFacade } from './compiler_facade';
|
|
15
15
|
import { angularCoreEnv } from './environment';
|
|
16
16
|
import { convertDependencies, reflectDependencies } from './util';
|
|
17
17
|
/**
|
|
@@ -29,82 +29,60 @@ export function compileInjectable(type, srcMeta) {
|
|
|
29
29
|
Object.defineProperty(type, NG_INJECTABLE_DEF, {
|
|
30
30
|
get: () => {
|
|
31
31
|
if (def === null) {
|
|
32
|
+
/** @type {?} */
|
|
33
|
+
const meta = srcMeta || { providedIn: null };
|
|
32
34
|
/** @type {?} */
|
|
33
35
|
const hasAProvider = isUseClassProvider(meta) || isUseFactoryProvider(meta) ||
|
|
34
36
|
isUseValueProvider(meta) || isUseExistingProvider(meta);
|
|
35
37
|
/** @type {?} */
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
38
|
+
const compilerMeta = {
|
|
39
|
+
name: type.name,
|
|
40
|
+
type: type,
|
|
41
|
+
providedIn: meta.providedIn,
|
|
42
|
+
ctorDeps: reflectDependencies(type),
|
|
43
|
+
userDeps: undefined
|
|
44
|
+
};
|
|
39
45
|
if ((isUseClassProvider(meta) || isUseFactoryProvider(meta)) && meta.deps !== undefined) {
|
|
40
|
-
userDeps = convertDependencies(meta.deps);
|
|
46
|
+
compilerMeta.userDeps = convertDependencies(meta.deps);
|
|
41
47
|
}
|
|
42
|
-
/** @type {?} */
|
|
43
|
-
let useClass = undefined;
|
|
44
|
-
/** @type {?} */
|
|
45
|
-
let useFactory = undefined;
|
|
46
|
-
/** @type {?} */
|
|
47
|
-
let useValue = undefined;
|
|
48
|
-
/** @type {?} */
|
|
49
|
-
let useExisting = undefined;
|
|
50
48
|
if (!hasAProvider) {
|
|
51
49
|
// In the case the user specifies a type provider, treat it as {provide: X, useClass: X}.
|
|
52
50
|
// The deps will have been reflected above, causing the factory to create the class by
|
|
53
51
|
// calling
|
|
54
52
|
// its constructor with injected deps.
|
|
55
|
-
useClass =
|
|
53
|
+
compilerMeta.useClass = type;
|
|
56
54
|
}
|
|
57
55
|
else if (isUseClassProvider(meta)) {
|
|
58
56
|
// The user explicitly specified useClass, and may or may not have provided deps.
|
|
59
|
-
useClass =
|
|
57
|
+
compilerMeta.useClass = meta.useClass;
|
|
60
58
|
}
|
|
61
59
|
else if (isUseValueProvider(meta)) {
|
|
62
60
|
// The user explicitly specified useValue.
|
|
63
|
-
useValue =
|
|
61
|
+
compilerMeta.useValue = meta.useValue;
|
|
64
62
|
}
|
|
65
63
|
else if (isUseFactoryProvider(meta)) {
|
|
66
64
|
// The user explicitly specified useFactory.
|
|
67
|
-
useFactory =
|
|
65
|
+
compilerMeta.useFactory = meta.useFactory;
|
|
68
66
|
}
|
|
69
67
|
else if (isUseExistingProvider(meta)) {
|
|
70
68
|
// The user explicitly specified useExisting.
|
|
71
|
-
useExisting =
|
|
69
|
+
compilerMeta.useExisting = meta.useExisting;
|
|
72
70
|
}
|
|
73
71
|
else {
|
|
74
72
|
// Can't happen - either hasAProvider will be false, or one of the providers will be set.
|
|
75
73
|
throw new Error(`Unreachable state.`);
|
|
76
74
|
}
|
|
77
|
-
|
|
78
|
-
name: type.name,
|
|
79
|
-
type: new WrappedNodeExpr(type),
|
|
80
|
-
providedIn: computeProvidedIn(meta.providedIn),
|
|
81
|
-
useClass,
|
|
82
|
-
useFactory,
|
|
83
|
-
useValue,
|
|
84
|
-
useExisting,
|
|
85
|
-
ctorDeps,
|
|
86
|
-
userDeps,
|
|
87
|
-
});
|
|
88
|
-
def = jitExpression(expression, angularCoreEnv, `ng://${type.name}/ngInjectableDef.js`, statements);
|
|
75
|
+
def = getCompilerFacade().compileInjectable(angularCoreEnv, `ng://${type.name}/ngInjectableDef.js`, compilerMeta);
|
|
89
76
|
}
|
|
90
77
|
return def;
|
|
91
78
|
},
|
|
92
79
|
});
|
|
93
80
|
}
|
|
94
|
-
/**
|
|
95
|
-
* @param {?} providedIn
|
|
96
|
-
* @return {?}
|
|
97
|
-
*/
|
|
98
|
-
function computeProvidedIn(providedIn) {
|
|
99
|
-
if (providedIn == null || typeof providedIn === 'string') {
|
|
100
|
-
return new LiteralExpr(providedIn);
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
return new WrappedNodeExpr(providedIn);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
81
|
/** @typedef {?} */
|
|
107
82
|
var UseClassProvider;
|
|
83
|
+
const ɵ0 = getClosureSafeProperty;
|
|
84
|
+
/** @type {?} */
|
|
85
|
+
const USE_VALUE = getClosureSafeProperty({ provide: String, useValue: ɵ0 });
|
|
108
86
|
/**
|
|
109
87
|
* @param {?} meta
|
|
110
88
|
* @return {?}
|
|
@@ -112,9 +90,6 @@ var UseClassProvider;
|
|
|
112
90
|
function isUseClassProvider(meta) {
|
|
113
91
|
return (/** @type {?} */ (meta)).useClass !== undefined;
|
|
114
92
|
}
|
|
115
|
-
const ɵ0 = getClosureSafeProperty;
|
|
116
|
-
/** @type {?} */
|
|
117
|
-
const USE_VALUE = getClosureSafeProperty({ provide: String, useValue: ɵ0 });
|
|
118
93
|
/**
|
|
119
94
|
* @param {?} meta
|
|
120
95
|
* @return {?}
|
|
@@ -138,4 +113,4 @@ function isUseExistingProvider(meta) {
|
|
|
138
113
|
}
|
|
139
114
|
export { ɵ0 };
|
|
140
115
|
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3JlbmRlcjMvaml0L2luamVjdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFRQSxPQUFPLEVBQWEsV0FBVyxFQUE4QyxlQUFlLEVBQUUsaUJBQWlCLElBQUksbUJBQW1CLEVBQUUsYUFBYSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFLaEwsT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRTVDLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFDLG1CQUFtQixFQUFFLG1CQUFtQixFQUFDLE1BQU0sUUFBUSxDQUFDOzs7Ozs7OztBQVFoRSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsSUFBZSxFQUFFLE9BQW9COztJQUVyRSxNQUFNLElBQUksR0FBZSxPQUFPLElBQUksRUFBQyxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7O0lBRXZELElBQUksR0FBRyxHQUFRLElBQUksQ0FBQztJQUNwQixNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxpQkFBaUIsRUFBRTtRQUM3QyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ1IsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFOztnQkFFaEIsTUFBTSxZQUFZLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDO29CQUN2RSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQzs7Z0JBRTVELE1BQU0sUUFBUSxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDOztnQkFFM0MsSUFBSSxRQUFRLEdBQXFDLFNBQVMs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O0NBQy9EOzs7OztBQUVELFNBQVMscUJBQXFCLENBQUMsSUFBZ0I7SUFDN0MsT0FBTyxtQkFBQyxJQUE0QixFQUFDLENBQUMsV0FBVyxLQUFLLFNBQVMsQ0FBQztDQUNqRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtFeHByZXNzaW9uLCBMaXRlcmFsRXhwciwgUjNEZXBlbmRlbmN5TWV0YWRhdGEsIFIzSW5qZWN0YWJsZU1ldGFkYXRhLCBXcmFwcGVkTm9kZUV4cHIsIGNvbXBpbGVJbmplY3RhYmxlIGFzIGNvbXBpbGVSM0luamVjdGFibGUsIGppdEV4cHJlc3Npb259IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcblxuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICcuLi8uLi9kaS9pbmplY3RhYmxlJztcbmltcG9ydCB7Q2xhc3NTYW5zUHJvdmlkZXIsIEV4aXN0aW5nU2Fuc1Byb3ZpZGVyLCBGYWN0b3J5U2Fuc1Byb3ZpZGVyLCBTdGF0aWNDbGFzc1NhbnNQcm92aWRlciwgVmFsdWVQcm92aWRlciwgVmFsdWVTYW5zUHJvdmlkZXJ9IGZyb20gJy4uLy4uL2RpL3Byb3ZpZGVyJztcbmltcG9ydCB7VHlwZX0gZnJvbSAnLi4vLi4vdHlwZSc7XG5pbXBvcnQge2dldENsb3N1cmVTYWZlUHJvcGVydHl9IGZyb20gJy4uLy4uL3V0aWwvcHJvcGVydHknO1xuaW1wb3J0IHtOR19JTkpFQ1RBQkxFX0RFRn0gZnJvbSAnLi4vZmllbGRzJztcblxuaW1wb3J0IHthbmd1bGFyQ29yZUVudn0gZnJvbSAnLi9lbnZpcm9ubWVudCc7XG5pbXBvcnQge2NvbnZlcnREZXBlbmRlbmNpZXMsIHJlZmxlY3REZXBlbmRlbmNpZXN9IGZyb20gJy4vdXRpbCc7XG5cblxuXG4vKipcbiAqIENvbXBpbGUgYW4gQW5ndWxhciBpbmplY3RhYmxlIGFjY29yZGluZyB0byBpdHMgYEluamVjdGFibGVgIG1ldGFkYXRhLCBhbmQgcGF0Y2ggdGhlIHJlc3VsdGluZ1xuICogYG5nSW5qZWN0YWJsZURlZmAgb250byB0aGUgaW5qZWN0YWJsZSB0eXBlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tcGlsZUluamVjdGFibGUodHlwZTogVHlwZTxhbnk+LCBzcmNNZXRhPzogSW5qZWN0YWJsZSk6IHZvaWQge1xuICAvLyBBbGxvdyB0aGUgY29tcGlsYXRpb24gb2YgYSBjbGFzcyB3aXRoIGEgYEBJbmplY3RhYmxlKClgIGRlY29yYXRvciB3aXRob3V0IHBhcmFtZXRlcnNcbiAgY29uc3QgbWV0YTogSW5qZWN0YWJsZSA9IHNyY01ldGEgfHwge3Byb3ZpZGVkSW46IG51bGx9O1xuXG4gIGxldCBkZWY6IGFueSA9IG51bGw7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0eXBlLCBOR19JTkpFQ1RBQkxFX0RFRiwge1xuICAgIGdldDogKCkgPT4ge1xuICAgICAgaWYgKGRlZiA9PT0gbnVsbCkge1xuICAgICAgICAvLyBDaGVjayB3aGV0aGVyIHRoZSBpbmplY3RhYmxlIG1ldGFkYXRhIGluY2x1ZGVzIGEgcHJvdmlkZXIgc3BlY2lmaWNhdGlvbi5cbiAgICAgICAgY29uc3QgaGFzQVByb3ZpZGVyID0gaXNVc2VDbGFzc1Byb3ZpZGVyKG1ldGEpIHx8IGlzVXNlRmFjdG9yeVByb3ZpZGVyKG1ldGEpIHx8XG4gICAgICAgICAgICBpc1VzZVZhbHVlUHJvdmlkZXIobWV0YSkgfHwgaXNVc2VFeGlzdGluZ1Byb3ZpZGVyKG1ldGEpO1xuXG4gICAgICAgIGNvbnN0IGN0b3JEZXBzID0gcmVmbGVjdERlcGVuZGVuY2llcyh0eXBlKTtcblxuICAgICAgICBsZXQgdXNlckRlcHM6IFIzRGVwZW5kZW5jeU1ldGFkYXRhW118dW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgICAgICBpZiAoKGlzVXNlQ2xhc3NQcm92aWRlcihtZXRhKSB8fCBpc1VzZUZhY3RvcnlQcm92aWRlcihtZXRhKSkgJiYgbWV0YS5kZXBzICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB1c2VyRGVwcyA9IGNvbnZlcnREZXBlbmRlbmNpZXMobWV0YS5kZXBzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIERlY2lkZSB3aGljaCBmbGF2b3Igb2YgZmFjdG9yeSB0byBnZW5lcmF0ZSwgYmFzZWQgb24gdGhlIHByb3ZpZGVyIHNwZWNpZmllZC5cbiAgICAgICAgLy8gT25seSBvbmUgb2YgdGhlIHVzZSogZmllbGRzIHNob3VsZCBiZSBzZXQuXG4gICAgICAgIGxldCB1c2VDbGFzczogRXhwcmVzc2lvbnx1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgICAgIGxldCB1c2VGYWN0b3J5OiBFeHByZXNzaW9ufHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICAgICAgbGV0IHVzZVZhbHVlOiBFeHByZXNzaW9ufHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICAgICAgbGV0IHVzZUV4aXN0aW5nOiBFeHByZXNzaW9ufHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICAgICAgICBpZiAoIWhhc0FQcm92aWRlcikge1xuICAgICAgICAgIC8vIEluIHRoZSBjYXNlIHRoZSB1c2VyIHNwZWNpZmllcyBhIHR5cGUgcHJvdmlkZXIsIHRyZWF0IGl0IGFzIHtwcm92aWRlOiBYLCB1c2VDbGFzczogWH0uXG4gICAgICAgICAgLy8gVGhlIGRlcHMgd2lsbCBoYXZlIGJlZW4gcmVmbGVjdGVkIGFib3ZlLCBjYXVzaW5nIHRoZSBmYWN0b3J5IHRvIGNyZWF0ZSB0aGUgY2xhc3MgYnlcbiAgICAgICAgICAvLyBjYWxsaW5nXG4gICAgICAgICAgLy8gaXRzIGNvbnN0cnVjdG9yIHdpdGggaW5qZWN0ZWQgZGVwcy5cbiAgICAgICAgICB1c2VDbGFzcyA9IG5ldyBXcmFwcGVkTm9kZUV4cHIodHlwZSk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNVc2VDbGFzc1Byb3ZpZGVyKG1ldGEpKSB7XG4gICAgICAgICAgLy8gVGhlIHVzZXIgZXhwbGljaXRseSBzcGVjaWZpZWQgdXNlQ2xhc3MsIGFuZCBtYXkgb3IgbWF5IG5vdCBoYXZlIHByb3ZpZGVkIGRlcHMuXG4gICAgICAgICAgdXNlQ2xhc3MgPSBuZXcgV3JhcHBlZE5vZGVFeHByKG1ldGEudXNlQ2xhc3MpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzVXNlVmFsdWVQcm92aWRlcihtZXRhKSkge1xuICAgICAgICAgIC8vIFRoZSB1c2VyIGV4cGxpY2l0bHkgc3BlY2lmaWVkIHVzZVZhbHVlLlxuICAgICAgICAgIHVzZVZhbHVlID0gbmV3IFdyYXBwZWROb2RlRXhwcihtZXRhLnVzZVZhbHVlKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc1VzZUZhY3RvcnlQcm92aWRlcihtZXRhKSkge1xuICAgICAgICAgIC8vIFRoZSB1c2VyIGV4cGxpY2l0bHkgc3BlY2lmaWVkIHVzZUZhY3RvcnkuXG4gICAgICAgICAgdXNlRmFjdG9yeSA9IG5ldyBXcmFwcGVkTm9kZUV4cHIobWV0YS51c2VGYWN0b3J5KTtcbiAgICAgICAgfSBlbHNlIGlmIChpc1VzZUV4aXN0aW5nUHJvdmlkZXIobWV0YSkpIHtcbiAgICAgICAgICAvLyBUaGUgdXNlciBleHBsaWNpdGx5IHNwZWNpZmllZCB1c2VFeGlzdGluZy5cbiAgICAgICAgICB1c2VFeGlzdGluZyA9IG5ldyBXcmFwcGVkTm9kZUV4cHIobWV0YS51c2VFeGlzdGluZyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgLy8gQ2FuJ3QgaGFwcGVuIC0gZWl0aGVyIGhhc0FQcm92aWRlciB3aWxsIGJlIGZhbHNlLCBvciBvbmUgb2YgdGhlIHByb3ZpZGVycyB3aWxsIGJlIHNldC5cbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVucmVhY2hhYmxlIHN0YXRlLmApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge2V4cHJlc3Npb24sIHN0YXRlbWVudHN9ID0gY29tcGlsZVIzSW5qZWN0YWJsZSh7XG4gICAgICAgICAgbmFtZTogdHlwZS5uYW1lLFxuICAgICAgICAgIHR5cGU6IG5ldyBXcmFwcGVkTm9kZUV4cHIodHlwZSksXG4gICAgICAgICAgcHJvdmlkZWRJbjogY29tcHV0ZVByb3ZpZGVkSW4obWV0YS5wcm92aWRlZEluKSxcbiAgICAgICAgICB1c2VDbGFzcyxcbiAgICAgICAgICB1c2VGYWN0b3J5LFxuICAgICAgICAgIHVzZVZhbHVlLFxuICAgICAgICAgIHVzZUV4aXN0aW5nLFxuICAgICAgICAgIGN0b3JEZXBzLFxuICAgICAgICAgIHVzZXJEZXBzLFxuICAgICAgICB9KTtcblxuICAgICAgICBkZWYgPSBqaXRFeHByZXNzaW9uKFxuICAgICAgICAgICAgZXhwcmVzc2lvbiwgYW5ndWxhckNvcmVFbnYsIGBuZzovLyR7dHlwZS5uYW1lfS9uZ0luamVjdGFibGVEZWYuanNgLCBzdGF0ZW1lbnRzKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBkZWY7XG4gICAgfSxcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNvbXB1dGVQcm92aWRlZEluKHByb3ZpZGVkSW46IFR5cGU8YW55Pnwgc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IEV4cHJlc3Npb24ge1xuICBpZiAocHJvdmlkZWRJbiA9PSBudWxsIHx8IHR5cGVvZiBwcm92aWRlZEluID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBuZXcgTGl0ZXJhbEV4cHIocHJvdmlkZWRJbik7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIG5ldyBXcmFwcGVkTm9kZUV4cHIocHJvdmlkZWRJbik7XG4gIH1cbn1cblxudHlwZSBVc2VDbGFzc1Byb3ZpZGVyID0gSW5qZWN0YWJsZSAmIENsYXNzU2Fuc1Byb3ZpZGVyICYge2RlcHM/OiBhbnlbXX07XG5cbmZ1bmN0aW9uIGlzVXNlQ2xhc3NQcm92aWRlcihtZXRhOiBJbmplY3RhYmxlKTogbWV0YSBpcyBVc2VDbGFzc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIChtZXRhIGFzIFVzZUNsYXNzUHJvdmlkZXIpLnVzZUNsYXNzICE9PSB1bmRlZmluZWQ7XG59XG5cbmNvbnN0IFVTRV9WQUxVRSA9XG4gICAgZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eTxWYWx1ZVByb3ZpZGVyPih7cHJvdmlkZTogU3RyaW5nLCB1c2VWYWx1ZTogZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eX0pO1xuXG5mdW5jdGlvbiBpc1VzZVZhbHVlUHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZWYWx1ZVNhbnNQcm92aWRlciB7XG4gIHJldHVybiBVU0VfVkFMVUUgaW4gbWV0YTtcbn1cblxuZnVuY3Rpb24gaXNVc2VGYWN0b3J5UHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZGYWN0b3J5U2Fuc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIChtZXRhIGFzIEZhY3RvcnlTYW5zUHJvdmlkZXIpLnVzZUZhY3RvcnkgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gaXNVc2VFeGlzdGluZ1Byb3ZpZGVyKG1ldGE6IEluamVjdGFibGUpOiBtZXRhIGlzIEluamVjdGFibGUmRXhpc3RpbmdTYW5zUHJvdmlkZXIge1xuICByZXR1cm4gKG1ldGEgYXMgRXhpc3RpbmdTYW5zUHJvdmlkZXIpLnVzZUV4aXN0aW5nICE9PSB1bmRlZmluZWQ7XG59XG4iXX0=
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvcmUvc3JjL3JlbmRlcjMvaml0L2luamVjdGFibGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFXQSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxXQUFXLENBQUM7QUFFNUMsT0FBTyxFQUE2QixpQkFBaUIsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2hGLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0MsT0FBTyxFQUFDLG1CQUFtQixFQUFFLG1CQUFtQixFQUFDLE1BQU0sUUFBUSxDQUFDOzs7Ozs7OztBQVFoRSxNQUFNLFVBQVUsaUJBQWlCLENBQUMsSUFBZSxFQUFFLE9BQW9COztJQUVyRSxNQUFNLElBQUksR0FBZSxPQUFPLElBQUksRUFBQyxVQUFVLEVBQUUsSUFBSSxFQUFDLENBQUM7O0lBRXZELElBQUksR0FBRyxHQUFRLElBQUksQ0FBQztJQUNwQixNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxpQkFBaUIsRUFBRTtRQUM3QyxHQUFHLEVBQUUsR0FBRyxFQUFFO1lBQ1IsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFOztnQkFDaEIsTUFBTSxJQUFJLEdBQWUsT0FBTyxJQUFJLEVBQUMsVUFBVSxFQUFFLElBQUksRUFBQyxDQUFDOztnQkFDdkQsTUFBTSxZQUFZLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDO29CQUN2RSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQzs7Z0JBRzVELE1BQU0sWUFBWSxHQUErQjtvQkFDL0MsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNmLElBQUksRUFBRSxJQUFJO29CQUNWLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtvQkFDM0IsUUFBUSxFQUFFLG1CQUFtQixDQUFDLElBQUksQ0FBQztvQkFDbkMsUUFBUSxFQUFFLFNBQVM7aUJBQ3BCLENBQUM7Z0JBQ0YsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLG9CQUFvQixDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLEVBQUU7b0JBQ3ZGLFlBQVksQ0FBQyxRQUFRLEdBQUcsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUN4RDtnQkFDRCxJQUFJLENBQUMsWUFBWSxFQUFFOzs7OztvQkFLakIsWUFBWSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7aUJBQzlCO3FCQUFNLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUU7O29CQUVuQyxZQUFZLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQ3ZDO3FCQUFNLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLEVBQUU7O29CQUVuQyxZQUFZLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7aUJBQ3ZDO3FCQUFNLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUU7O29CQUVyQyxZQUFZLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7aUJBQzNDO3FCQUFNLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLEVBQUU7O29CQUV0QyxZQUFZLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7aUJBQzdDO3FCQUFNOztvQkFFTCxNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7aUJBQ3ZDO2dCQUNELEdBQUcsR0FBRyxpQkFBaUIsRUFBRSxDQUFDLGlCQUFpQixDQUN2QyxjQUFjLEVBQUUsUUFBUSxJQUFJLENBQUMsSUFBSSxxQkFBcUIsRUFBRSxZQUFZLENBQUMsQ0FBQzthQUMzRTtZQUNELE9BQU8sR0FBRyxDQUFDO1NBQ1o7S0FDRixDQUFDLENBQUM7Q0FDSjs7O1dBS3FFLHNCQUFzQjs7QUFENUYsTUFBTSxTQUFTLEdBQ1gsc0JBQXNCLENBQWdCLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLElBQXdCLEVBQUMsQ0FBQyxDQUFDOzs7OztBQUUvRixTQUFTLGtCQUFrQixDQUFDLElBQWdCO0lBQzFDLE9BQU8sbUJBQUMsSUFBd0IsRUFBQyxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUM7Q0FDMUQ7Ozs7O0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxJQUFnQjtJQUMxQyxPQUFPLFNBQVMsSUFBSSxJQUFJLENBQUM7Q0FDMUI7Ozs7O0FBRUQsU0FBUyxvQkFBb0IsQ0FBQyxJQUFnQjtJQUM1QyxPQUFPLG1CQUFDLElBQTJCLEVBQUMsQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDO0NBQy9EOzs7OztBQUVELFNBQVMscUJBQXFCLENBQUMsSUFBZ0I7SUFDN0MsT0FBTyxtQkFBQyxJQUE0QixFQUFDLENBQUMsV0FBVyxLQUFLLFNBQVMsQ0FBQztDQUNqRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICcuLi8uLi9kaS9pbmplY3RhYmxlJztcbmltcG9ydCB7Q2xhc3NTYW5zUHJvdmlkZXIsIEV4aXN0aW5nU2Fuc1Byb3ZpZGVyLCBGYWN0b3J5U2Fuc1Byb3ZpZGVyLCBWYWx1ZVByb3ZpZGVyLCBWYWx1ZVNhbnNQcm92aWRlcn0gZnJvbSAnLi4vLi4vZGkvcHJvdmlkZXInO1xuaW1wb3J0IHtUeXBlfSBmcm9tICcuLi8uLi90eXBlJztcbmltcG9ydCB7Z2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eX0gZnJvbSAnLi4vLi4vdXRpbC9wcm9wZXJ0eSc7XG5pbXBvcnQge05HX0lOSkVDVEFCTEVfREVGfSBmcm9tICcuLi9maWVsZHMnO1xuXG5pbXBvcnQge1IzSW5qZWN0YWJsZU1ldGFkYXRhRmFjYWRlLCBnZXRDb21waWxlckZhY2FkZX0gZnJvbSAnLi9jb21waWxlcl9mYWNhZGUnO1xuaW1wb3J0IHthbmd1bGFyQ29yZUVudn0gZnJvbSAnLi9lbnZpcm9ubWVudCc7XG5pbXBvcnQge2NvbnZlcnREZXBlbmRlbmNpZXMsIHJlZmxlY3REZXBlbmRlbmNpZXN9IGZyb20gJy4vdXRpbCc7XG5cblxuXG4vKipcbiAqIENvbXBpbGUgYW4gQW5ndWxhciBpbmplY3RhYmxlIGFjY29yZGluZyB0byBpdHMgYEluamVjdGFibGVgIG1ldGFkYXRhLCBhbmQgcGF0Y2ggdGhlIHJlc3VsdGluZ1xuICogYG5nSW5qZWN0YWJsZURlZmAgb250byB0aGUgaW5qZWN0YWJsZSB0eXBlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29tcGlsZUluamVjdGFibGUodHlwZTogVHlwZTxhbnk+LCBzcmNNZXRhPzogSW5qZWN0YWJsZSk6IHZvaWQge1xuICAvLyBBbGxvdyB0aGUgY29tcGlsYXRpb24gb2YgYSBjbGFzcyB3aXRoIGEgYEBJbmplY3RhYmxlKClgIGRlY29yYXRvciB3aXRob3V0IHBhcmFtZXRlcnNcbiAgY29uc3QgbWV0YTogSW5qZWN0YWJsZSA9IHNyY01ldGEgfHwge3Byb3ZpZGVkSW46IG51bGx9O1xuXG4gIGxldCBkZWY6IGFueSA9IG51bGw7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0eXBlLCBOR19JTkpFQ1RBQkxFX0RFRiwge1xuICAgIGdldDogKCkgPT4ge1xuICAgICAgaWYgKGRlZiA9PT0gbnVsbCkge1xuICAgICAgICBjb25zdCBtZXRhOiBJbmplY3RhYmxlID0gc3JjTWV0YSB8fCB7cHJvdmlkZWRJbjogbnVsbH07XG4gICAgICAgIGNvbnN0IGhhc0FQcm92aWRlciA9IGlzVXNlQ2xhc3NQcm92aWRlcihtZXRhKSB8fCBpc1VzZUZhY3RvcnlQcm92aWRlcihtZXRhKSB8fFxuICAgICAgICAgICAgaXNVc2VWYWx1ZVByb3ZpZGVyKG1ldGEpIHx8IGlzVXNlRXhpc3RpbmdQcm92aWRlcihtZXRhKTtcblxuXG4gICAgICAgIGNvbnN0IGNvbXBpbGVyTWV0YTogUjNJbmplY3RhYmxlTWV0YWRhdGFGYWNhZGUgPSB7XG4gICAgICAgICAgbmFtZTogdHlwZS5uYW1lLFxuICAgICAgICAgIHR5cGU6IHR5cGUsXG4gICAgICAgICAgcHJvdmlkZWRJbjogbWV0YS5wcm92aWRlZEluLFxuICAgICAgICAgIGN0b3JEZXBzOiByZWZsZWN0RGVwZW5kZW5jaWVzKHR5cGUpLFxuICAgICAgICAgIHVzZXJEZXBzOiB1bmRlZmluZWRcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKChpc1VzZUNsYXNzUHJvdmlkZXIobWV0YSkgfHwgaXNVc2VGYWN0b3J5UHJvdmlkZXIobWV0YSkpICYmIG1ldGEuZGVwcyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgY29tcGlsZXJNZXRhLnVzZXJEZXBzID0gY29udmVydERlcGVuZGVuY2llcyhtZXRhLmRlcHMpO1xuICAgICAgICB9XG4gICAgICAgIGlmICghaGFzQVByb3ZpZGVyKSB7XG4gICAgICAgICAgLy8gSW4gdGhlIGNhc2UgdGhlIHVzZXIgc3BlY2lmaWVzIGEgdHlwZSBwcm92aWRlciwgdHJlYXQgaXQgYXMge3Byb3ZpZGU6IFgsIHVzZUNsYXNzOiBYfS5cbiAgICAgICAgICAvLyBUaGUgZGVwcyB3aWxsIGhhdmUgYmVlbiByZWZsZWN0ZWQgYWJvdmUsIGNhdXNpbmcgdGhlIGZhY3RvcnkgdG8gY3JlYXRlIHRoZSBjbGFzcyBieVxuICAgICAgICAgIC8vIGNhbGxpbmdcbiAgICAgICAgICAvLyBpdHMgY29uc3RydWN0b3Igd2l0aCBpbmplY3RlZCBkZXBzLlxuICAgICAgICAgIGNvbXBpbGVyTWV0YS51c2VDbGFzcyA9IHR5cGU7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNVc2VDbGFzc1Byb3ZpZGVyKG1ldGEpKSB7XG4gICAgICAgICAgLy8gVGhlIHVzZXIgZXhwbGljaXRseSBzcGVjaWZpZWQgdXNlQ2xhc3MsIGFuZCBtYXkgb3IgbWF5IG5vdCBoYXZlIHByb3ZpZGVkIGRlcHMuXG4gICAgICAgICAgY29tcGlsZXJNZXRhLnVzZUNsYXNzID0gbWV0YS51c2VDbGFzcztcbiAgICAgICAgfSBlbHNlIGlmIChpc1VzZVZhbHVlUHJvdmlkZXIobWV0YSkpIHtcbiAgICAgICAgICAvLyBUaGUgdXNlciBleHBsaWNpdGx5IHNwZWNpZmllZCB1c2VWYWx1ZS5cbiAgICAgICAgICBjb21waWxlck1ldGEudXNlVmFsdWUgPSBtZXRhLnVzZVZhbHVlO1xuICAgICAgICB9IGVsc2UgaWYgKGlzVXNlRmFjdG9yeVByb3ZpZGVyKG1ldGEpKSB7XG4gICAgICAgICAgLy8gVGhlIHVzZXIgZXhwbGljaXRseSBzcGVjaWZpZWQgdXNlRmFjdG9yeS5cbiAgICAgICAgICBjb21waWxlck1ldGEudXNlRmFjdG9yeSA9IG1ldGEudXNlRmFjdG9yeTtcbiAgICAgICAgfSBlbHNlIGlmIChpc1VzZUV4aXN0aW5nUHJvdmlkZXIobWV0YSkpIHtcbiAgICAgICAgICAvLyBUaGUgdXNlciBleHBsaWNpdGx5IHNwZWNpZmllZCB1c2VFeGlzdGluZy5cbiAgICAgICAgICBjb21waWxlck1ldGEudXNlRXhpc3RpbmcgPSBtZXRhLnVzZUV4aXN0aW5nO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIENhbid0IGhhcHBlbiAtIGVpdGhlciBoYXNBUHJvdmlkZXIgd2lsbCBiZSBmYWxzZSwgb3Igb25lIG9mIHRoZSBwcm92aWRlcnMgd2lsbCBiZSBzZXQuXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnJlYWNoYWJsZSBzdGF0ZS5gKTtcbiAgICAgICAgfVxuICAgICAgICBkZWYgPSBnZXRDb21waWxlckZhY2FkZSgpLmNvbXBpbGVJbmplY3RhYmxlKFxuICAgICAgICAgICAgYW5ndWxhckNvcmVFbnYsIGBuZzovLyR7dHlwZS5uYW1lfS9uZ0luamVjdGFibGVEZWYuanNgLCBjb21waWxlck1ldGEpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGRlZjtcbiAgICB9LFxuICB9KTtcbn1cblxudHlwZSBVc2VDbGFzc1Byb3ZpZGVyID0gSW5qZWN0YWJsZSAmIENsYXNzU2Fuc1Byb3ZpZGVyICYge2RlcHM/OiBhbnlbXX07XG5cbmNvbnN0IFVTRV9WQUxVRSA9XG4gICAgZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eTxWYWx1ZVByb3ZpZGVyPih7cHJvdmlkZTogU3RyaW5nLCB1c2VWYWx1ZTogZ2V0Q2xvc3VyZVNhZmVQcm9wZXJ0eX0pO1xuXG5mdW5jdGlvbiBpc1VzZUNsYXNzUHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgVXNlQ2xhc3NQcm92aWRlciB7XG4gIHJldHVybiAobWV0YSBhcyBVc2VDbGFzc1Byb3ZpZGVyKS51c2VDbGFzcyAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBpc1VzZVZhbHVlUHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZWYWx1ZVNhbnNQcm92aWRlciB7XG4gIHJldHVybiBVU0VfVkFMVUUgaW4gbWV0YTtcbn1cblxuZnVuY3Rpb24gaXNVc2VGYWN0b3J5UHJvdmlkZXIobWV0YTogSW5qZWN0YWJsZSk6IG1ldGEgaXMgSW5qZWN0YWJsZSZGYWN0b3J5U2Fuc1Byb3ZpZGVyIHtcbiAgcmV0dXJuIChtZXRhIGFzIEZhY3RvcnlTYW5zUHJvdmlkZXIpLnVzZUZhY3RvcnkgIT09IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gaXNVc2VFeGlzdGluZ1Byb3ZpZGVyKG1ldGE6IEluamVjdGFibGUpOiBtZXRhIGlzIEluamVjdGFibGUmRXhpc3RpbmdTYW5zUHJvdmlkZXIge1xuICByZXR1cm4gKG1ldGEgYXMgRXhpc3RpbmdTYW5zUHJvdmlkZXIpLnVzZUV4aXN0aW5nICE9PSB1bmRlZmluZWQ7XG59XG4iXX0=
|