@angular/compiler-cli 13.0.0-next.9 → 13.0.0-rc.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/index.js +20413 -0
- package/bundles/index.js.map +6 -0
- package/bundles/linker/babel/index.js +2384 -0
- package/bundles/linker/babel/index.js.map +6 -0
- package/bundles/linker/index.js +1849 -0
- package/bundles/linker/index.js.map +6 -0
- package/bundles/ngcc/index.js +16038 -0
- package/bundles/ngcc/index.js.map +6 -0
- package/bundles/ngcc/main-ngcc.js +16126 -0
- package/bundles/ngcc/main-ngcc.js.map +6 -0
- package/bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js +13850 -0
- package/bundles/ngcc/src/execution/cluster/ngcc_cluster_worker.js.map +6 -0
- package/bundles/ngcc/src/locking/lock_file_with_child_process/ngcc_lock_unlocker.js +334 -0
- package/bundles/ngcc/src/locking/lock_file_with_child_process/ngcc_lock_unlocker.js.map +6 -0
- package/bundles/private/bazel.js +97 -0
- package/bundles/private/bazel.js.map +6 -0
- package/bundles/private/localize.js +911 -0
- package/bundles/private/localize.js.map +6 -0
- package/bundles/private/migrations.js +2183 -0
- package/bundles/private/migrations.js.map +6 -0
- package/bundles/private/tooling.js +942 -0
- package/bundles/private/tooling.js.map +6 -0
- package/bundles/src/bin/ng_xi18n.js +20463 -0
- package/bundles/src/bin/ng_xi18n.js.map +6 -0
- package/bundles/src/bin/ngc.js +20465 -0
- package/bundles/src/bin/ngc.js.map +6 -0
- package/bundles_metadata.json +1 -0
- package/import_meta_url.d.ts +14 -0
- package/index.d.ts +4 -1
- package/linker/babel/src/ast/babel_ast_factory.d.ts +1 -8
- package/linker/babel/src/ast/babel_ast_host.d.ts +1 -1
- package/linker/babel/src/babel_core.d.ts +36 -0
- package/linker/babel/src/babel_declaration_scope.d.ts +1 -1
- package/linker/babel/src/babel_plugin.d.ts +1 -8
- package/linker/babel/src/es2015_linker_plugin.d.ts +2 -2
- package/linker/src/ast/typescript/typescript_ast_host.d.ts +1 -1
- package/linker/src/file_linker/emit_scopes/emit_scope.d.ts +1 -2
- package/linker/src/file_linker/emit_scopes/iife_emit_scope.d.ts +1 -1
- package/linker/src/file_linker/partial_linkers/partial_class_metadata_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_component_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_directive_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_factory_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_injectable_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_injector_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_linker.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_linker_selector.d.ts +2 -2
- package/linker/src/file_linker/partial_linkers/partial_ng_module_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/partial_pipe_linker_1.d.ts +1 -2
- package/linker/src/file_linker/partial_linkers/util.d.ts +1 -2
- package/ngcc/index.d.ts +15 -0
- package/ngcc/src/analysis/decoration_analyzer.d.ts +1 -1
- package/ngcc/src/analysis/module_with_providers_analyzer.d.ts +1 -1
- package/ngcc/src/analysis/ngcc_references_registry.d.ts +1 -1
- package/ngcc/src/analysis/ngcc_trait_compiler.d.ts +1 -1
- package/ngcc/src/analysis/private_declarations_analyzer.d.ts +1 -1
- package/ngcc/src/analysis/switch_marker_analyzer.d.ts +1 -1
- package/ngcc/src/analysis/types.d.ts +1 -1
- package/ngcc/src/dependencies/esm_dependency_host.d.ts +1 -1
- package/ngcc/src/execution/cluster/api.d.ts +5 -1
- package/ngcc/src/execution/cluster/master.d.ts +5 -3
- package/{src/ngtsc/logging/testing/index.d.ts → ngcc/src/execution/cluster/ngcc_cluster_worker.d.ts} +2 -2
- package/ngcc/src/host/commonjs_host.d.ts +1 -1
- package/ngcc/src/host/commonjs_umd_utils.d.ts +1 -1
- package/ngcc/src/host/delegating_host.d.ts +1 -1
- package/ngcc/src/host/esm2015_host.d.ts +1 -1
- package/ngcc/src/host/esm5_host.d.ts +1 -1
- package/ngcc/src/host/ngcc_host.d.ts +1 -1
- package/ngcc/src/host/umd_host.d.ts +1 -1
- package/ngcc/src/host/utils.d.ts +1 -1
- package/ngcc/src/locking/lock_file.d.ts +1 -1
- package/ngcc/src/locking/lock_file_with_child_process/index.d.ts +2 -0
- package/ngcc/src/locking/lock_file_with_child_process/{unlocker.d.ts → ngcc_lock_unlocker.d.ts} +1 -1
- package/ngcc/src/migrations/migration.d.ts +1 -1
- package/ngcc/src/migrations/missing_injectable_migration.d.ts +1 -1
- package/ngcc/src/migrations/undecorated_child_migration.d.ts +1 -1
- package/ngcc/src/migrations/undecorated_parent_migration.d.ts +1 -1
- package/ngcc/src/migrations/utils.d.ts +1 -1
- package/ngcc/src/packages/build_marker.d.ts +1 -1
- package/ngcc/src/packages/bundle_program.d.ts +1 -1
- package/ngcc/src/packages/entry_point_bundle.d.ts +1 -1
- package/ngcc/src/packages/ngcc_compiler_host.d.ts +1 -1
- package/ngcc/src/packages/source_file_cache.d.ts +1 -1
- package/ngcc/src/packages/transformer.d.ts +1 -1
- package/ngcc/src/rendering/commonjs_rendering_formatter.d.ts +1 -1
- package/ngcc/src/rendering/dts_renderer.d.ts +1 -1
- package/ngcc/src/rendering/esm5_rendering_formatter.d.ts +1 -1
- package/ngcc/src/rendering/esm_rendering_formatter.d.ts +1 -1
- package/ngcc/src/rendering/renderer.d.ts +1 -1
- package/ngcc/src/rendering/rendering_formatter.d.ts +1 -1
- package/ngcc/src/rendering/source_maps.d.ts +3 -3
- package/ngcc/src/rendering/umd_rendering_formatter.d.ts +1 -1
- package/ngcc/src/rendering/utils.d.ts +1 -1
- package/ngcc/src/utils.d.ts +1 -1
- package/package.json +52 -13
- package/private/bazel.d.ts +13 -0
- package/private/localize.d.ts +15 -0
- package/private/migrations.d.ts +16 -0
- package/{src → private}/tooling.d.ts +2 -2
- package/src/bin/ng_xi18n.d.ts +10 -0
- package/{ngcc/main-ivy-ngcc.d.ts → src/bin/ngc.d.ts} +2 -1
- package/src/diagnostics/translate_diagnostics.d.ts +1 -1
- package/src/extract_i18n.d.ts +0 -5
- package/src/main.d.ts +9 -6
- package/src/metadata/bundle_index_host.d.ts +1 -1
- package/src/metadata/bundler.d.ts +1 -1
- package/src/metadata/collector.d.ts +1 -1
- package/src/metadata/evaluator.d.ts +1 -1
- package/src/metadata/symbols.d.ts +1 -1
- package/src/ngtsc/annotations/src/component.d.ts +1 -1
- package/src/ngtsc/annotations/src/diagnostics.d.ts +1 -1
- package/src/ngtsc/annotations/src/directive.d.ts +1 -1
- package/src/ngtsc/annotations/src/ng_module.d.ts +2 -3
- package/src/ngtsc/annotations/src/pipe.d.ts +1 -1
- package/src/ngtsc/annotations/src/util.d.ts +2 -4
- package/src/ngtsc/core/api/src/adapter.d.ts +1 -1
- package/src/ngtsc/core/api/src/interfaces.d.ts +1 -1
- package/src/ngtsc/core/api/src/options.d.ts +1 -1
- package/src/ngtsc/core/api/src/public_options.d.ts +5 -1
- package/src/ngtsc/core/src/compiler.d.ts +1 -1
- package/src/ngtsc/core/src/host.d.ts +1 -1
- package/src/ngtsc/cycles/src/analyzer.d.ts +1 -1
- package/src/ngtsc/cycles/src/imports.d.ts +1 -1
- package/src/ngtsc/diagnostics/index.d.ts +4 -2
- package/src/ngtsc/diagnostics/src/docs.d.ts +14 -0
- package/src/ngtsc/diagnostics/src/error.d.ts +1 -1
- package/src/ngtsc/diagnostics/src/error_details_base_url.d.ts +16 -0
- package/src/ngtsc/diagnostics/src/util.d.ts +2 -0
- package/src/ngtsc/entry_point/src/generator.d.ts +1 -1
- package/src/ngtsc/entry_point/src/private_export_checker.d.ts +1 -1
- package/src/ngtsc/file_system/src/compiler_host.d.ts +1 -1
- package/src/ngtsc/file_system/src/logical.d.ts +1 -1
- package/src/ngtsc/file_system/src/util.d.ts +1 -1
- package/src/ngtsc/imports/src/alias.d.ts +1 -1
- package/src/ngtsc/imports/src/default.d.ts +1 -1
- package/src/ngtsc/imports/src/emitter.d.ts +1 -1
- package/src/ngtsc/imports/src/find_export.d.ts +1 -1
- package/src/ngtsc/imports/src/references.d.ts +1 -1
- package/src/ngtsc/imports/src/resolver.d.ts +1 -1
- package/src/ngtsc/incremental/api.d.ts +1 -1
- package/src/ngtsc/incremental/src/dependency_tracking.d.ts +1 -1
- package/src/ngtsc/incremental/src/incremental.d.ts +1 -1
- package/src/ngtsc/incremental/src/state.d.ts +1 -1
- package/src/ngtsc/incremental/src/strategy.d.ts +1 -1
- package/src/ngtsc/metadata/src/api.d.ts +1 -1
- package/src/ngtsc/metadata/src/dts.d.ts +1 -1
- package/src/ngtsc/metadata/src/resource_registry.d.ts +1 -1
- package/src/ngtsc/metadata/src/util.d.ts +1 -1
- package/src/ngtsc/partial_evaluator/index.d.ts +1 -0
- package/src/ngtsc/partial_evaluator/src/builtin.d.ts +1 -1
- package/src/ngtsc/partial_evaluator/src/diagnostics.d.ts +1 -1
- package/src/ngtsc/partial_evaluator/src/dynamic.d.ts +1 -1
- package/src/ngtsc/partial_evaluator/src/interface.d.ts +1 -1
- package/src/ngtsc/partial_evaluator/src/interpreter.d.ts +1 -1
- package/src/ngtsc/partial_evaluator/src/result.d.ts +1 -1
- package/src/ngtsc/partial_evaluator/src/ts_helpers.d.ts +1 -1
- package/src/ngtsc/program.d.ts +1 -1
- package/src/ngtsc/program_driver/src/api.d.ts +1 -1
- package/src/ngtsc/program_driver/src/ts_create_program_driver.d.ts +1 -1
- package/src/ngtsc/reflection/src/host.d.ts +1 -1
- package/src/ngtsc/reflection/src/type_to_value.d.ts +1 -1
- package/src/ngtsc/reflection/src/typescript.d.ts +1 -1
- package/src/ngtsc/reflection/src/util.d.ts +1 -1
- package/src/ngtsc/resource/src/loader.d.ts +1 -1
- package/src/ngtsc/scope/src/local.d.ts +1 -1
- package/src/ngtsc/scope/src/typecheck.d.ts +1 -1
- package/src/ngtsc/shims/api.d.ts +1 -1
- package/src/ngtsc/shims/src/adapter.d.ts +1 -1
- package/src/ngtsc/shims/src/expando.d.ts +1 -1
- package/src/ngtsc/shims/src/factory_generator.d.ts +1 -1
- package/src/ngtsc/shims/src/reference_tagger.d.ts +1 -1
- package/src/ngtsc/shims/src/summary_generator.d.ts +1 -1
- package/src/ngtsc/switch/src/switch.d.ts +1 -1
- package/src/ngtsc/transform/src/alias.d.ts +1 -1
- package/src/ngtsc/transform/src/api.d.ts +1 -1
- package/src/ngtsc/transform/src/compilation.d.ts +1 -1
- package/src/ngtsc/transform/src/declaration.d.ts +1 -1
- package/src/ngtsc/transform/src/trait.d.ts +1 -1
- package/src/ngtsc/transform/src/transform.d.ts +1 -1
- package/src/ngtsc/transform/src/utils.d.ts +1 -1
- package/src/ngtsc/translator/src/import_manager.d.ts +1 -1
- package/src/ngtsc/translator/src/type_translator.d.ts +1 -1
- package/src/ngtsc/translator/src/typescript_ast_factory.d.ts +1 -1
- package/src/ngtsc/translator/src/typescript_translator.d.ts +1 -1
- package/src/ngtsc/tsc_plugin.d.ts +1 -1
- package/src/ngtsc/typecheck/api/api.d.ts +1 -1
- package/src/ngtsc/typecheck/api/checker.d.ts +3 -4
- package/src/ngtsc/typecheck/api/context.d.ts +1 -1
- package/src/ngtsc/typecheck/api/scope.d.ts +1 -1
- package/src/ngtsc/typecheck/api/symbols.d.ts +1 -1
- package/src/ngtsc/typecheck/diagnostics/src/diagnostic.d.ts +1 -1
- package/src/ngtsc/typecheck/extended/api/api.d.ts +1 -1
- package/src/ngtsc/typecheck/extended/api/extended_template_checker.d.ts +1 -1
- package/src/ngtsc/typecheck/extended/checks/invalid_banana_in_box/index.d.ts +1 -1
- package/src/ngtsc/typecheck/extended/checks/nullish_coalescing_not_nullable/index.d.ts +1 -1
- package/src/ngtsc/typecheck/extended/src/extended_template_checker.d.ts +1 -1
- package/src/ngtsc/typecheck/src/checker.d.ts +3 -4
- package/src/ngtsc/typecheck/src/comments.d.ts +1 -1
- package/src/ngtsc/typecheck/src/completion.d.ts +3 -5
- package/src/ngtsc/typecheck/src/context.d.ts +1 -1
- package/src/ngtsc/typecheck/src/diagnostics.d.ts +1 -1
- package/src/ngtsc/typecheck/src/environment.d.ts +1 -1
- package/src/ngtsc/typecheck/src/expression.d.ts +1 -1
- package/src/ngtsc/typecheck/src/oob.d.ts +3 -4
- package/src/ngtsc/typecheck/src/shim.d.ts +1 -1
- package/src/ngtsc/typecheck/src/source.d.ts +1 -1
- package/src/ngtsc/typecheck/src/tcb_util.d.ts +1 -1
- package/src/ngtsc/typecheck/src/template_symbol_builder.d.ts +1 -1
- package/src/ngtsc/typecheck/src/ts_util.d.ts +1 -1
- package/src/ngtsc/typecheck/src/type_check_block.d.ts +1 -1
- package/src/ngtsc/typecheck/src/type_check_file.d.ts +1 -1
- package/src/ngtsc/typecheck/src/type_constructor.d.ts +1 -1
- package/src/ngtsc/typecheck/src/type_emitter.d.ts +1 -1
- package/src/ngtsc/typecheck/src/type_parameter_emitter.d.ts +1 -1
- package/src/ngtsc/util/src/typescript.d.ts +1 -1
- package/src/ngtsc/util/src/visitor.d.ts +1 -1
- package/src/perform_compile.d.ts +1 -2
- package/src/perform_watch.d.ts +1 -1
- package/src/transformers/api.d.ts +1 -1
- package/src/transformers/compiler_host.d.ts +1 -1
- package/src/transformers/{downlevel_decorators_transform.d.ts → downlevel_decorators_transform/downlevel_decorators_transform.d.ts} +3 -3
- package/src/transformers/downlevel_decorators_transform/index.d.ts +9 -0
- package/src/transformers/{patch_alias_reference_resolution.d.ts → downlevel_decorators_transform/patch_alias_reference_resolution.d.ts} +2 -2
- package/src/transformers/i18n.d.ts +1 -1
- package/src/transformers/inline_resources.d.ts +1 -1
- package/src/transformers/lower_expressions.d.ts +1 -1
- package/src/transformers/metadata_cache.d.ts +1 -1
- package/src/transformers/node_emitter.d.ts +1 -1
- package/src/transformers/node_emitter_transform.d.ts +1 -1
- package/src/transformers/program.d.ts +1 -1
- package/src/transformers/r3_metadata_transform.d.ts +1 -1
- package/src/transformers/r3_transform.d.ts +1 -1
- package/src/transformers/util.d.ts +1 -1
- package/index.js +0 -40
- package/linker/babel/index.js +0 -25
- package/linker/babel/src/ast/babel_ast_factory.js +0 -153
- package/linker/babel/src/ast/babel_ast_host.js +0 -181
- package/linker/babel/src/babel_declaration_scope.js +0 -67
- package/linker/babel/src/babel_plugin.js +0 -38
- package/linker/babel/src/es2015_linker_plugin.js +0 -183
- package/linker/babel/src/linker_plugin_options.js +0 -13
- package/linker/index.js +0 -27
- package/linker/src/ast/ast_host.js +0 -20
- package/linker/src/ast/ast_value.js +0 -299
- package/linker/src/ast/typescript/typescript_ast_host.js +0 -183
- package/linker/src/ast/utils.js +0 -31
- package/linker/src/fatal_linker_error.js +0 -49
- package/linker/src/file_linker/declaration_scope.js +0 -20
- package/linker/src/file_linker/emit_scopes/emit_scope.js +0 -57
- package/linker/src/file_linker/emit_scopes/iife_emit_scope.js +0 -51
- package/linker/src/file_linker/file_linker.js +0 -97
- package/linker/src/file_linker/get_source_file.js +0 -42
- package/linker/src/file_linker/linker_environment.js +0 -38
- package/linker/src/file_linker/linker_options.js +0 -29
- package/linker/src/file_linker/needs_linking.js +0 -41
- package/linker/src/file_linker/partial_linkers/partial_class_metadata_linker_1.js +0 -47
- package/linker/src/file_linker/partial_linkers/partial_component_linker_1.js +0 -210
- package/linker/src/file_linker/partial_linkers/partial_directive_linker_1.js +0 -154
- package/linker/src/file_linker/partial_linkers/partial_factory_linker_1.js +0 -70
- package/linker/src/file_linker/partial_linkers/partial_injectable_linker_1.js +0 -74
- package/linker/src/file_linker/partial_linkers/partial_injector_linker_1.js +0 -56
- package/linker/src/file_linker/partial_linkers/partial_linker.js +0 -13
- package/linker/src/file_linker/partial_linkers/partial_linker_selector.js +0 -194
- package/linker/src/file_linker/partial_linkers/partial_ng_module_linker_1.js +0 -126
- package/linker/src/file_linker/partial_linkers/partial_pipe_linker_1.js +0 -59
- package/linker/src/file_linker/partial_linkers/util.js +0 -95
- package/linker/src/file_linker/translator.js +0 -40
- package/linker/src/linker_import_generator.js +0 -43
- package/ngcc/index.js +0 -33
- package/ngcc/main-ivy-ngcc.js +0 -12
- package/ngcc/main-ngcc.js +0 -54
- package/ngcc/src/analysis/decoration_analyzer.js +0 -268
- package/ngcc/src/analysis/migration_host.js +0 -108
- package/ngcc/src/analysis/module_with_providers_analyzer.js +0 -197
- package/ngcc/src/analysis/ngcc_references_registry.js +0 -65
- package/ngcc/src/analysis/ngcc_trait_compiler.js +0 -117
- package/ngcc/src/analysis/private_declarations_analyzer.js +0 -63
- package/ngcc/src/analysis/switch_marker_analyzer.js +0 -50
- package/ngcc/src/analysis/types.js +0 -15
- package/ngcc/src/analysis/util.js +0 -36
- package/ngcc/src/command_line_options.js +0 -156
- package/ngcc/src/constants.js +0 -23
- package/ngcc/src/dependencies/commonjs_dependency_host.js +0 -129
- package/ngcc/src/dependencies/dependency_host.js +0 -143
- package/ngcc/src/dependencies/dependency_resolver.js +0 -180
- package/ngcc/src/dependencies/dts_dependency_host.js +0 -35
- package/ngcc/src/dependencies/esm_dependency_host.js +0 -307
- package/ngcc/src/dependencies/module_resolver.js +0 -269
- package/ngcc/src/dependencies/umd_dependency_host.js +0 -53
- package/ngcc/src/entry_point_finder/directory_walker_entry_point_finder.js +0 -70
- package/ngcc/src/entry_point_finder/entry_point_collector.js +0 -157
- package/ngcc/src/entry_point_finder/interface.js +0 -13
- package/ngcc/src/entry_point_finder/program_based_entry_point_finder.js +0 -132
- package/ngcc/src/entry_point_finder/targeted_entry_point_finder.js +0 -268
- package/ngcc/src/entry_point_finder/tracing_entry_point_finder.js +0 -78
- package/ngcc/src/entry_point_finder/utils.js +0 -234
- package/ngcc/src/execution/analyze_entry_points.js +0 -197
- package/ngcc/src/execution/api.js +0 -13
- package/ngcc/src/execution/cluster/api.js +0 -20
- package/ngcc/src/execution/cluster/executor.js +0 -52
- package/ngcc/src/execution/cluster/master.js +0 -311
- package/ngcc/src/execution/cluster/package_json_updater.js +0 -79
- package/ngcc/src/execution/cluster/utils.js +0 -77
- package/ngcc/src/execution/cluster/worker.js +0 -123
- package/ngcc/src/execution/create_compile_function.js +0 -76
- package/ngcc/src/execution/single_process_executor.js +0 -91
- package/ngcc/src/execution/tasks/api.js +0 -35
- package/ngcc/src/execution/tasks/completion.js +0 -79
- package/ngcc/src/execution/tasks/queues/base_task_queue.js +0 -120
- package/ngcc/src/execution/tasks/queues/parallel_task_queue.js +0 -87
- package/ngcc/src/execution/tasks/queues/serial_task_queue.js +0 -49
- package/ngcc/src/execution/tasks/utils.js +0 -167
- package/ngcc/src/host/commonjs_host.js +0 -261
- package/ngcc/src/host/commonjs_umd_utils.js +0 -210
- package/ngcc/src/host/delegating_host.js +0 -156
- package/ngcc/src/host/esm2015_host.js +0 -2441
- package/ngcc/src/host/esm5_host.js +0 -745
- package/ngcc/src/host/ngcc_host.js +0 -29
- package/ngcc/src/host/umd_host.js +0 -539
- package/ngcc/src/host/utils.js +0 -26
- package/ngcc/src/locking/async_locker.js +0 -121
- package/ngcc/src/locking/lock_file.js +0 -18
- package/ngcc/src/locking/lock_file_with_child_process/index.js +0 -93
- package/ngcc/src/locking/lock_file_with_child_process/unlocker.js +0 -46
- package/ngcc/src/locking/lock_file_with_child_process/util.js +0 -43
- package/ngcc/src/locking/sync_locker.js +0 -67
- package/ngcc/src/main.js +0 -163
- package/ngcc/src/migrations/migration.js +0 -13
- package/ngcc/src/migrations/missing_injectable_migration.js +0 -227
- package/ngcc/src/migrations/undecorated_child_migration.js +0 -90
- package/ngcc/src/migrations/undecorated_parent_migration.js +0 -103
- package/ngcc/src/migrations/utils.js +0 -137
- package/ngcc/src/ngcc_options.js +0 -135
- package/ngcc/src/packages/build_marker.js +0 -124
- package/ngcc/src/packages/bundle_program.js +0 -80
- package/ngcc/src/packages/configuration.js +0 -334
- package/ngcc/src/packages/entry_point.js +0 -267
- package/ngcc/src/packages/entry_point_bundle.js +0 -96
- package/ngcc/src/packages/entry_point_manifest.js +0 -207
- package/ngcc/src/packages/ngcc_compiler_host.js +0 -101
- package/ngcc/src/packages/patch_ts_expando_initializer.js +0 -174
- package/ngcc/src/packages/source_file_cache.js +0 -207
- package/ngcc/src/packages/transformer.js +0 -157
- package/ngcc/src/path_mappings.js +0 -27
- package/ngcc/src/rendering/commonjs_rendering_formatter.js +0 -106
- package/ngcc/src/rendering/dts_renderer.js +0 -170
- package/ngcc/src/rendering/esm5_rendering_formatter.js +0 -70
- package/ngcc/src/rendering/esm_rendering_formatter.js +0 -291
- package/ngcc/src/rendering/ngcc_import_rewriter.js +0 -49
- package/ngcc/src/rendering/renderer.js +0 -204
- package/ngcc/src/rendering/rendering_formatter.js +0 -15
- package/ngcc/src/rendering/source_maps.js +0 -68
- package/ngcc/src/rendering/umd_rendering_formatter.js +0 -326
- package/ngcc/src/rendering/utils.js +0 -35
- package/ngcc/src/utils.js +0 -182
- package/ngcc/src/writing/cleaning/cleaning_strategies.js +0 -80
- package/ngcc/src/writing/cleaning/package_cleaner.js +0 -126
- package/ngcc/src/writing/cleaning/utils.js +0 -30
- package/ngcc/src/writing/file_writer.js +0 -13
- package/ngcc/src/writing/in_place_file_writer.js +0 -90
- package/ngcc/src/writing/new_entry_point_file_writer.js +0 -214
- package/ngcc/src/writing/package_json_updater.js +0 -182
- package/src/diagnostics/translate_diagnostics.js +0 -61
- package/src/diagnostics/typescript_version.js +0 -96
- package/src/extract_i18n.js +0 -62
- package/src/language_services.js +0 -34
- package/src/main.js +0 -210
- package/src/metadata/bundle_index_host.js +0 -133
- package/src/metadata/bundler.js +0 -624
- package/src/metadata/collector.js +0 -799
- package/src/metadata/evaluator.js +0 -677
- package/src/metadata/index.js +0 -24
- package/src/metadata/index_writer.js +0 -80
- package/src/metadata/schema.js +0 -136
- package/src/metadata/symbols.js +0 -149
- package/src/ngtsc/annotations/index.js +0 -35
- package/src/ngtsc/annotations/src/api.js +0 -20
- package/src/ngtsc/annotations/src/component.js +0 -1338
- package/src/ngtsc/annotations/src/diagnostics.js +0 -174
- package/src/ngtsc/annotations/src/directive.js +0 -724
- package/src/ngtsc/annotations/src/factory.js +0 -32
- package/src/ngtsc/annotations/src/injectable.js +0 -284
- package/src/ngtsc/annotations/src/metadata.js +0 -160
- package/src/ngtsc/annotations/src/ng_module.js +0 -671
- package/src/ngtsc/annotations/src/pipe.js +0 -171
- package/src/ngtsc/annotations/src/references_registry.js +0 -38
- package/src/ngtsc/annotations/src/util.js +0 -566
- package/src/ngtsc/core/api/index.js +0 -25
- package/src/ngtsc/core/api/src/adapter.js +0 -20
- package/src/ngtsc/core/api/src/interfaces.js +0 -20
- package/src/ngtsc/core/api/src/options.js +0 -20
- package/src/ngtsc/core/api/src/public_options.js +0 -20
- package/src/ngtsc/core/index.js +0 -25
- package/src/ngtsc/core/src/compiler.js +0 -1105
- package/src/ngtsc/core/src/host.js +0 -273
- package/src/ngtsc/cycles/index.js +0 -26
- package/src/ngtsc/cycles/src/analyzer.js +0 -163
- package/src/ngtsc/cycles/src/imports.js +0 -175
- package/src/ngtsc/diagnostics/index.js +0 -33
- package/src/ngtsc/diagnostics/src/error.js +0 -69
- package/src/ngtsc/diagnostics/src/error_code.js +0 -235
- package/src/ngtsc/diagnostics/src/util.js +0 -35
- package/src/ngtsc/entry_point/index.js +0 -29
- package/src/ngtsc/entry_point/src/generator.js +0 -45
- package/src/ngtsc/entry_point/src/logic.js +0 -61
- package/src/ngtsc/entry_point/src/private_export_checker.js +0 -137
- package/src/ngtsc/entry_point/src/reference_graph.js +0 -91
- package/src/ngtsc/file_system/index.js +0 -45
- package/src/ngtsc/file_system/src/compiler_host.js +0 -80
- package/src/ngtsc/file_system/src/helpers.js +0 -135
- package/src/ngtsc/file_system/src/invalid_file_system.js +0 -120
- package/src/ngtsc/file_system/src/logical.js +0 -100
- package/src/ngtsc/file_system/src/node_js_file_system.js +0 -179
- package/src/ngtsc/file_system/src/types.js +0 -20
- package/src/ngtsc/file_system/src/util.js +0 -38
- package/src/ngtsc/file_system/testing/index.d.ts +0 -13
- package/src/ngtsc/file_system/testing/index.js +0 -32
- package/src/ngtsc/file_system/testing/src/mock_file_system.d.ts +0 -72
- package/src/ngtsc/file_system/testing/src/mock_file_system.js +0 -333
- package/src/ngtsc/file_system/testing/src/mock_file_system_native.d.ts +0 -16
- package/src/ngtsc/file_system/testing/src/mock_file_system_native.js +0 -85
- package/src/ngtsc/file_system/testing/src/mock_file_system_posix.d.ts +0 -13
- package/src/ngtsc/file_system/testing/src/mock_file_system_posix.js +0 -68
- package/src/ngtsc/file_system/testing/src/mock_file_system_windows.d.ts +0 -13
- package/src/ngtsc/file_system/testing/src/mock_file_system_windows.js +0 -68
- package/src/ngtsc/file_system/testing/src/test_helper.d.ts +0 -17
- package/src/ngtsc/file_system/testing/src/test_helper.js +0 -143
- package/src/ngtsc/imports/index.js +0 -43
- package/src/ngtsc/imports/src/alias.js +0 -158
- package/src/ngtsc/imports/src/core.js +0 -98
- package/src/ngtsc/imports/src/default.js +0 -153
- package/src/ngtsc/imports/src/emitter.js +0 -317
- package/src/ngtsc/imports/src/find_export.js +0 -82
- package/src/ngtsc/imports/src/reexport.js +0 -20
- package/src/ngtsc/imports/src/references.js +0 -171
- package/src/ngtsc/imports/src/resolver.js +0 -39
- package/src/ngtsc/incremental/api.js +0 -20
- package/src/ngtsc/incremental/index.js +0 -29
- package/src/ngtsc/incremental/semantic_graph/index.js +0 -34
- package/src/ngtsc/incremental/semantic_graph/src/api.js +0 -51
- package/src/ngtsc/incremental/semantic_graph/src/graph.js +0 -302
- package/src/ngtsc/incremental/semantic_graph/src/type_parameters.js +0 -55
- package/src/ngtsc/incremental/semantic_graph/src/util.js +0 -111
- package/src/ngtsc/incremental/src/dependency_tracking.js +0 -165
- package/src/ngtsc/incremental/src/incremental.js +0 -393
- package/src/ngtsc/incremental/src/noop.js +0 -26
- package/src/ngtsc/incremental/src/state.js +0 -30
- package/src/ngtsc/incremental/src/strategy.js +0 -99
- package/src/ngtsc/indexer/index.js +0 -27
- package/src/ngtsc/indexer/src/api.js +0 -45
- package/src/ngtsc/indexer/src/context.js +0 -40
- package/src/ngtsc/indexer/src/template.js +0 -324
- package/src/ngtsc/indexer/src/transform.js +0 -66
- package/src/ngtsc/logging/index.js +0 -25
- package/src/ngtsc/logging/src/console_logger.js +0 -75
- package/src/ngtsc/logging/src/logger.js +0 -28
- package/src/ngtsc/logging/testing/index.js +0 -23
- package/src/ngtsc/logging/testing/src/mock_logger.d.ts +0 -20
- package/src/ngtsc/logging/testing/src/mock_logger.js +0 -64
- package/src/ngtsc/metadata/index.js +0 -39
- package/src/ngtsc/metadata/src/api.js +0 -26
- package/src/ngtsc/metadata/src/dts.js +0 -168
- package/src/ngtsc/metadata/src/inheritance.js +0 -122
- package/src/ngtsc/metadata/src/property_mapping.js +0 -244
- package/src/ngtsc/metadata/src/registry.js +0 -133
- package/src/ngtsc/metadata/src/resource_registry.js +0 -109
- package/src/ngtsc/metadata/src/util.js +0 -275
- package/src/ngtsc/partial_evaluator/index.js +0 -31
- package/src/ngtsc/partial_evaluator/src/builtin.js +0 -125
- package/src/ngtsc/partial_evaluator/src/diagnostics.js +0 -193
- package/src/ngtsc/partial_evaluator/src/dynamic.js +0 -109
- package/src/ngtsc/partial_evaluator/src/interface.js +0 -42
- package/src/ngtsc/partial_evaluator/src/interpreter.js +0 -780
- package/src/ngtsc/partial_evaluator/src/known_declaration.js +0 -57
- package/src/ngtsc/partial_evaluator/src/result.js +0 -72
- package/src/ngtsc/partial_evaluator/src/ts_helpers.js +0 -121
- package/src/ngtsc/perf/index.js +0 -28
- package/src/ngtsc/perf/src/api.js +0 -291
- package/src/ngtsc/perf/src/clock.js +0 -31
- package/src/ngtsc/perf/src/noop.js +0 -37
- package/src/ngtsc/perf/src/recorder.js +0 -143
- package/src/ngtsc/program.js +0 -360
- package/src/ngtsc/program_driver/index.js +0 -25
- package/src/ngtsc/program_driver/src/api.js +0 -36
- package/src/ngtsc/program_driver/src/ts_create_program_driver.js +0 -200
- package/src/ngtsc/reflection/index.js +0 -36
- package/src/ngtsc/reflection/src/host.js +0 -88
- package/src/ngtsc/reflection/src/type_to_value.js +0 -259
- package/src/ngtsc/reflection/src/typescript.js +0 -640
- package/src/ngtsc/reflection/src/util.js +0 -37
- package/src/ngtsc/resource/index.js +0 -23
- package/src/ngtsc/resource/src/loader.js +0 -285
- package/src/ngtsc/scope/index.js +0 -29
- package/src/ngtsc/scope/src/api.js +0 -20
- package/src/ngtsc/scope/src/component_scope.js +0 -69
- package/src/ngtsc/scope/src/dependency.js +0 -201
- package/src/ngtsc/scope/src/local.js +0 -665
- package/src/ngtsc/scope/src/typecheck.js +0 -120
- package/src/ngtsc/shims/api.js +0 -13
- package/src/ngtsc/shims/index.js +0 -39
- package/src/ngtsc/shims/src/adapter.js +0 -266
- package/src/ngtsc/shims/src/expando.js +0 -147
- package/src/ngtsc/shims/src/factory_generator.js +0 -292
- package/src/ngtsc/shims/src/reference_tagger.js +0 -94
- package/src/ngtsc/shims/src/summary_generator.js +0 -101
- package/src/ngtsc/shims/src/util.js +0 -41
- package/src/ngtsc/sourcemaps/index.js +0 -27
- package/src/ngtsc/sourcemaps/src/content_origin.js +0 -48
- package/src/ngtsc/sourcemaps/src/raw_source_map.js +0 -13
- package/src/ngtsc/sourcemaps/src/segment_marker.js +0 -55
- package/src/ngtsc/sourcemaps/src/source_file.js +0 -519
- package/src/ngtsc/sourcemaps/src/source_file_loader.js +0 -234
- package/src/ngtsc/switch/index.js +0 -23
- package/src/ngtsc/switch/src/switch.js +0 -141
- package/src/ngtsc/transform/index.js +0 -36
- package/src/ngtsc/transform/src/alias.js +0 -46
- package/src/ngtsc/transform/src/api.js +0 -76
- package/src/ngtsc/transform/src/compilation.js +0 -862
- package/src/ngtsc/transform/src/declaration.js +0 -234
- package/src/ngtsc/transform/src/trait.js +0 -111
- package/src/ngtsc/transform/src/transform.js +0 -333
- package/src/ngtsc/transform/src/utils.js +0 -73
- package/src/ngtsc/translator/index.js +0 -37
- package/src/ngtsc/translator/src/api/ast_factory.js +0 -20
- package/src/ngtsc/translator/src/api/import_generator.js +0 -20
- package/src/ngtsc/translator/src/context.js +0 -47
- package/src/ngtsc/translator/src/import_manager.js +0 -77
- package/src/ngtsc/translator/src/translator.js +0 -347
- package/src/ngtsc/translator/src/type_translator.js +0 -220
- package/src/ngtsc/translator/src/typescript_ast_factory.js +0 -251
- package/src/ngtsc/translator/src/typescript_translator.js +0 -34
- package/src/ngtsc/tsc_plugin.js +0 -129
- package/src/ngtsc/typecheck/api/api.js +0 -20
- package/src/ngtsc/typecheck/api/checker.js +0 -44
- package/src/ngtsc/typecheck/api/completion.js +0 -29
- package/src/ngtsc/typecheck/api/context.js +0 -20
- package/src/ngtsc/typecheck/api/index.js +0 -27
- package/src/ngtsc/typecheck/api/scope.js +0 -20
- package/src/ngtsc/typecheck/api/symbols.js +0 -35
- package/src/ngtsc/typecheck/diagnostics/index.js +0 -23
- package/src/ngtsc/typecheck/diagnostics/src/diagnostic.js +0 -141
- package/src/ngtsc/typecheck/diagnostics/src/id.js +0 -37
- package/src/ngtsc/typecheck/extended/api/api.js +0 -124
- package/src/ngtsc/typecheck/extended/api/extended_template_checker.js +0 -20
- package/src/ngtsc/typecheck/extended/api/index.js +0 -23
- package/src/ngtsc/typecheck/extended/checks/invalid_banana_in_box/index.js +0 -52
- package/src/ngtsc/typecheck/extended/checks/nullish_coalescing_not_nullable/index.js +0 -64
- package/src/ngtsc/typecheck/extended/index.js +0 -23
- package/src/ngtsc/typecheck/extended/src/extended_template_checker.js +0 -55
- package/src/ngtsc/typecheck/index.js +0 -29
- package/src/ngtsc/typecheck/src/checker.js +0 -767
- package/src/ngtsc/typecheck/src/comments.js +0 -181
- package/src/ngtsc/typecheck/src/completion.js +0 -230
- package/src/ngtsc/typecheck/src/context.js +0 -424
- package/src/ngtsc/typecheck/src/diagnostics.js +0 -114
- package/src/ngtsc/typecheck/src/dom.js +0 -87
- package/src/ngtsc/typecheck/src/environment.js +0 -160
- package/src/ngtsc/typecheck/src/expression.js +0 -417
- package/src/ngtsc/typecheck/src/line_mappings.js +0 -77
- package/src/ngtsc/typecheck/src/oob.js +0 -181
- package/src/ngtsc/typecheck/src/shim.js +0 -52
- package/src/ngtsc/typecheck/src/source.js +0 -91
- package/src/ngtsc/typecheck/src/tcb_util.js +0 -165
- package/src/ngtsc/typecheck/src/template_semantics.js +0 -52
- package/src/ngtsc/typecheck/src/template_symbol_builder.js +0 -551
- package/src/ngtsc/typecheck/src/ts_util.js +0 -202
- package/src/ngtsc/typecheck/src/type_check_block.js +0 -2212
- package/src/ngtsc/typecheck/src/type_check_file.js +0 -115
- package/src/ngtsc/typecheck/src/type_constructor.js +0 -255
- package/src/ngtsc/typecheck/src/type_emitter.js +0 -164
- package/src/ngtsc/typecheck/src/type_parameter_emitter.js +0 -115
- package/src/ngtsc/util/src/path.js +0 -33
- package/src/ngtsc/util/src/typescript.js +0 -176
- package/src/ngtsc/util/src/visitor.js +0 -119
- package/src/ngtsc/xi18n/index.js +0 -22
- package/src/ngtsc/xi18n/src/context.js +0 -20
- package/src/perform_compile.js +0 -322
- package/src/perform_watch.js +0 -263
- package/src/tooling.js +0 -47
- package/src/transformers/api.js +0 -42
- package/src/transformers/compiler_host.js +0 -623
- package/src/transformers/downlevel_decorators_transform.js +0 -611
- package/src/transformers/entry_points.js +0 -25
- package/src/transformers/i18n.js +0 -76
- package/src/transformers/inline_resources.js +0 -287
- package/src/transformers/lower_expressions.js +0 -365
- package/src/transformers/metadata_cache.js +0 -96
- package/src/transformers/metadata_reader.js +0 -120
- package/src/transformers/node_emitter.js +0 -637
- package/src/transformers/node_emitter_transform.js +0 -88
- package/src/transformers/patch_alias_reference_resolution.js +0 -129
- package/src/transformers/program.js +0 -998
- package/src/transformers/r3_metadata_transform.js +0 -73
- package/src/transformers/r3_transform.js +0 -44
- package/src/transformers/util.js +0 -122
- package/src/typescript_support.js +0 -74
- package/src/version.js +0 -28
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.io/license
|
|
7
|
-
*/
|
|
8
|
-
(function (factory) {
|
|
9
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
10
|
-
var v = factory(require, exports);
|
|
11
|
-
if (v !== undefined) module.exports = v;
|
|
12
|
-
}
|
|
13
|
-
else if (typeof define === "function" && define.amd) {
|
|
14
|
-
define("@angular/compiler-cli/src/ngtsc/entry_point/src/generator", ["require", "exports", "typescript", "@angular/compiler-cli/src/ngtsc/file_system", "@angular/compiler-cli/src/ngtsc/util/src/path"], factory);
|
|
15
|
-
}
|
|
16
|
-
})(function (require, exports) {
|
|
17
|
-
"use strict";
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.FlatIndexGenerator = void 0;
|
|
20
|
-
/// <reference types="node" />
|
|
21
|
-
var ts = require("typescript");
|
|
22
|
-
var file_system_1 = require("@angular/compiler-cli/src/ngtsc/file_system");
|
|
23
|
-
var path_1 = require("@angular/compiler-cli/src/ngtsc/util/src/path");
|
|
24
|
-
var FlatIndexGenerator = /** @class */ (function () {
|
|
25
|
-
function FlatIndexGenerator(entryPoint, relativeFlatIndexPath, moduleName) {
|
|
26
|
-
this.entryPoint = entryPoint;
|
|
27
|
-
this.moduleName = moduleName;
|
|
28
|
-
this.shouldEmit = true;
|
|
29
|
-
this.flatIndexPath =
|
|
30
|
-
(0, file_system_1.join)((0, file_system_1.dirname)(entryPoint), relativeFlatIndexPath).replace(/\.js$/, '') + '.ts';
|
|
31
|
-
}
|
|
32
|
-
FlatIndexGenerator.prototype.makeTopLevelShim = function () {
|
|
33
|
-
var relativeEntryPoint = (0, path_1.relativePathBetween)(this.flatIndexPath, this.entryPoint);
|
|
34
|
-
var contents = "/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from '" + relativeEntryPoint + "';\n";
|
|
35
|
-
var genFile = ts.createSourceFile(this.flatIndexPath, contents, ts.ScriptTarget.ES2015, true, ts.ScriptKind.TS);
|
|
36
|
-
if (this.moduleName !== null) {
|
|
37
|
-
genFile.moduleName = this.moduleName;
|
|
38
|
-
}
|
|
39
|
-
return genFile;
|
|
40
|
-
};
|
|
41
|
-
return FlatIndexGenerator;
|
|
42
|
-
}());
|
|
43
|
-
exports.FlatIndexGenerator = FlatIndexGenerator;
|
|
44
|
-
});
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9lbnRyeV9wb2ludC9zcmMvZ2VuZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7OztJQUVILDhCQUE4QjtJQUU5QiwrQkFBaUM7SUFFakMsMkVBQWdFO0lBRWhFLHNFQUF3RDtJQUV4RDtRQUlFLDRCQUNhLFVBQTBCLEVBQUUscUJBQTZCLEVBQ3pELFVBQXVCO1lBRHZCLGVBQVUsR0FBVixVQUFVLENBQWdCO1lBQzFCLGVBQVUsR0FBVixVQUFVLENBQWE7WUFKM0IsZUFBVSxHQUFHLElBQUksQ0FBQztZQUt6QixJQUFJLENBQUMsYUFBYTtnQkFDZCxJQUFBLGtCQUFJLEVBQUMsSUFBQSxxQkFBTyxFQUFDLFVBQVUsQ0FBQyxFQUFFLHFCQUFxQixDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDcEYsQ0FBQztRQUVELDZDQUFnQixHQUFoQjtZQUNFLElBQU0sa0JBQWtCLEdBQUcsSUFBQSwwQkFBbUIsRUFBQyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNwRixJQUFNLFFBQVEsR0FBRyx5RUFJSixrQkFBa0IsU0FDbEMsQ0FBQztZQUNFLElBQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FDL0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxRQUFRLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbEYsSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLElBQUksRUFBRTtnQkFDNUIsT0FBTyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3RDO1lBQ0QsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUNILHlCQUFDO0lBQUQsQ0FBQyxBQTFCRCxJQTBCQztJQTFCWSxnREFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLy8vIDxyZWZlcmVuY2UgdHlwZXM9XCJub2RlXCIgLz5cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7QWJzb2x1dGVGc1BhdGgsIGRpcm5hbWUsIGpvaW59IGZyb20gJy4uLy4uL2ZpbGVfc3lzdGVtJztcbmltcG9ydCB7VG9wTGV2ZWxTaGltR2VuZXJhdG9yfSBmcm9tICcuLi8uLi9zaGltcy9hcGknO1xuaW1wb3J0IHtyZWxhdGl2ZVBhdGhCZXR3ZWVufSBmcm9tICcuLi8uLi91dGlsL3NyYy9wYXRoJztcblxuZXhwb3J0IGNsYXNzIEZsYXRJbmRleEdlbmVyYXRvciBpbXBsZW1lbnRzIFRvcExldmVsU2hpbUdlbmVyYXRvciB7XG4gIHJlYWRvbmx5IGZsYXRJbmRleFBhdGg6IHN0cmluZztcbiAgcmVhZG9ubHkgc2hvdWxkRW1pdCA9IHRydWU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICByZWFkb25seSBlbnRyeVBvaW50OiBBYnNvbHV0ZUZzUGF0aCwgcmVsYXRpdmVGbGF0SW5kZXhQYXRoOiBzdHJpbmcsXG4gICAgICByZWFkb25seSBtb2R1bGVOYW1lOiBzdHJpbmd8bnVsbCkge1xuICAgIHRoaXMuZmxhdEluZGV4UGF0aCA9XG4gICAgICAgIGpvaW4oZGlybmFtZShlbnRyeVBvaW50KSwgcmVsYXRpdmVGbGF0SW5kZXhQYXRoKS5yZXBsYWNlKC9cXC5qcyQvLCAnJykgKyAnLnRzJztcbiAgfVxuXG4gIG1ha2VUb3BMZXZlbFNoaW0oKTogdHMuU291cmNlRmlsZSB7XG4gICAgY29uc3QgcmVsYXRpdmVFbnRyeVBvaW50ID0gcmVsYXRpdmVQYXRoQmV0d2Vlbih0aGlzLmZsYXRJbmRleFBhdGgsIHRoaXMuZW50cnlQb2ludCk7XG4gICAgY29uc3QgY29udGVudHMgPSBgLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcke3JlbGF0aXZlRW50cnlQb2ludH0nO1xuYDtcbiAgICBjb25zdCBnZW5GaWxlID0gdHMuY3JlYXRlU291cmNlRmlsZShcbiAgICAgICAgdGhpcy5mbGF0SW5kZXhQYXRoLCBjb250ZW50cywgdHMuU2NyaXB0VGFyZ2V0LkVTMjAxNSwgdHJ1ZSwgdHMuU2NyaXB0S2luZC5UUyk7XG4gICAgaWYgKHRoaXMubW9kdWxlTmFtZSAhPT0gbnVsbCkge1xuICAgICAgZ2VuRmlsZS5tb2R1bGVOYW1lID0gdGhpcy5tb2R1bGVOYW1lO1xuICAgIH1cbiAgICByZXR1cm4gZ2VuRmlsZTtcbiAgfVxufVxuIl19
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.io/license
|
|
7
|
-
*/
|
|
8
|
-
(function (factory) {
|
|
9
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
10
|
-
var v = factory(require, exports);
|
|
11
|
-
if (v !== undefined) module.exports = v;
|
|
12
|
-
}
|
|
13
|
-
else if (typeof define === "function" && define.amd) {
|
|
14
|
-
define("@angular/compiler-cli/src/ngtsc/entry_point/src/logic", ["require", "exports", "tslib", "@angular/compiler-cli/src/ngtsc/file_system", "@angular/compiler-cli/src/ngtsc/util/src/typescript"], factory);
|
|
15
|
-
}
|
|
16
|
-
})(function (require, exports) {
|
|
17
|
-
"use strict";
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.findFlatIndexEntryPoint = void 0;
|
|
20
|
-
var tslib_1 = require("tslib");
|
|
21
|
-
var file_system_1 = require("@angular/compiler-cli/src/ngtsc/file_system");
|
|
22
|
-
var typescript_1 = require("@angular/compiler-cli/src/ngtsc/util/src/typescript");
|
|
23
|
-
function findFlatIndexEntryPoint(rootFiles) {
|
|
24
|
-
var e_1, _a;
|
|
25
|
-
// There are two ways for a file to be recognized as the flat module index:
|
|
26
|
-
// 1) if it's the only file!!!!!!
|
|
27
|
-
// 2) (deprecated) if it's named 'index.ts' and has the shortest path of all such files.
|
|
28
|
-
var tsFiles = rootFiles.filter(function (file) { return (0, typescript_1.isNonDeclarationTsPath)(file); });
|
|
29
|
-
var resolvedEntryPoint = null;
|
|
30
|
-
if (tsFiles.length === 1) {
|
|
31
|
-
// There's only one file - this is the flat module index.
|
|
32
|
-
resolvedEntryPoint = tsFiles[0];
|
|
33
|
-
}
|
|
34
|
-
else {
|
|
35
|
-
try {
|
|
36
|
-
// In the event there's more than one TS file, one of them can still be selected as the
|
|
37
|
-
// flat module index if it's named 'index.ts'. If there's more than one 'index.ts', the one
|
|
38
|
-
// with the shortest path wins.
|
|
39
|
-
//
|
|
40
|
-
// This behavior is DEPRECATED and only exists to support existing usages.
|
|
41
|
-
for (var tsFiles_1 = (0, tslib_1.__values)(tsFiles), tsFiles_1_1 = tsFiles_1.next(); !tsFiles_1_1.done; tsFiles_1_1 = tsFiles_1.next()) {
|
|
42
|
-
var tsFile = tsFiles_1_1.value;
|
|
43
|
-
if ((0, file_system_1.getFileSystem)().basename(tsFile) === 'index.ts' &&
|
|
44
|
-
(resolvedEntryPoint === null || tsFile.length <= resolvedEntryPoint.length)) {
|
|
45
|
-
resolvedEntryPoint = tsFile;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
50
|
-
finally {
|
|
51
|
-
try {
|
|
52
|
-
if (tsFiles_1_1 && !tsFiles_1_1.done && (_a = tsFiles_1.return)) _a.call(tsFiles_1);
|
|
53
|
-
}
|
|
54
|
-
finally { if (e_1) throw e_1.error; }
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return resolvedEntryPoint;
|
|
58
|
-
}
|
|
59
|
-
exports.findFlatIndexEntryPoint = findFlatIndexEntryPoint;
|
|
60
|
-
});
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naWMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2VudHJ5X3BvaW50L3NyYy9sb2dpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7O0lBRUgsMkVBQWdFO0lBQ2hFLGtGQUFpRTtJQUVqRSxTQUFnQix1QkFBdUIsQ0FBQyxTQUF3Qzs7UUFFOUUsMkVBQTJFO1FBQzNFLGlDQUFpQztRQUNqQyx3RkFBd0Y7UUFDeEYsSUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLElBQUEsbUNBQXNCLEVBQUMsSUFBSSxDQUFDLEVBQTVCLENBQTRCLENBQUMsQ0FBQztRQUN2RSxJQUFJLGtCQUFrQixHQUF3QixJQUFJLENBQUM7UUFFbkQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN4Qix5REFBeUQ7WUFDekQsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2pDO2FBQU07O2dCQUNMLHVGQUF1RjtnQkFDdkYsMkZBQTJGO2dCQUMzRiwrQkFBK0I7Z0JBQy9CLEVBQUU7Z0JBQ0YsMEVBQTBFO2dCQUMxRSxLQUFxQixJQUFBLFlBQUEsc0JBQUEsT0FBTyxDQUFBLGdDQUFBLHFEQUFFO29CQUF6QixJQUFNLE1BQU0sb0JBQUE7b0JBQ2YsSUFBSSxJQUFBLDJCQUFhLEdBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEtBQUssVUFBVTt3QkFDL0MsQ0FBQyxrQkFBa0IsS0FBSyxJQUFJLElBQUksTUFBTSxDQUFDLE1BQU0sSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsRUFBRTt3QkFDL0Usa0JBQWtCLEdBQUcsTUFBTSxDQUFDO3FCQUM3QjtpQkFDRjs7Ozs7Ozs7O1NBQ0Y7UUFFRCxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUExQkQsMERBMEJDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbmltcG9ydCB7QWJzb2x1dGVGc1BhdGgsIGdldEZpbGVTeXN0ZW19IGZyb20gJy4uLy4uL2ZpbGVfc3lzdGVtJztcbmltcG9ydCB7aXNOb25EZWNsYXJhdGlvblRzUGF0aH0gZnJvbSAnLi4vLi4vdXRpbC9zcmMvdHlwZXNjcmlwdCc7XG5cbmV4cG9ydCBmdW5jdGlvbiBmaW5kRmxhdEluZGV4RW50cnlQb2ludChyb290RmlsZXM6IFJlYWRvbmx5QXJyYXk8QWJzb2x1dGVGc1BhdGg+KTogQWJzb2x1dGVGc1BhdGh8XG4gICAgbnVsbCB7XG4gIC8vIFRoZXJlIGFyZSB0d28gd2F5cyBmb3IgYSBmaWxlIHRvIGJlIHJlY29nbml6ZWQgYXMgdGhlIGZsYXQgbW9kdWxlIGluZGV4OlxuICAvLyAxKSBpZiBpdCdzIHRoZSBvbmx5IGZpbGUhISEhISFcbiAgLy8gMikgKGRlcHJlY2F0ZWQpIGlmIGl0J3MgbmFtZWQgJ2luZGV4LnRzJyBhbmQgaGFzIHRoZSBzaG9ydGVzdCBwYXRoIG9mIGFsbCBzdWNoIGZpbGVzLlxuICBjb25zdCB0c0ZpbGVzID0gcm9vdEZpbGVzLmZpbHRlcihmaWxlID0+IGlzTm9uRGVjbGFyYXRpb25Uc1BhdGgoZmlsZSkpO1xuICBsZXQgcmVzb2x2ZWRFbnRyeVBvaW50OiBBYnNvbHV0ZUZzUGF0aHxudWxsID0gbnVsbDtcblxuICBpZiAodHNGaWxlcy5sZW5ndGggPT09IDEpIHtcbiAgICAvLyBUaGVyZSdzIG9ubHkgb25lIGZpbGUgLSB0aGlzIGlzIHRoZSBmbGF0IG1vZHVsZSBpbmRleC5cbiAgICByZXNvbHZlZEVudHJ5UG9pbnQgPSB0c0ZpbGVzWzBdO1xuICB9IGVsc2Uge1xuICAgIC8vIEluIHRoZSBldmVudCB0aGVyZSdzIG1vcmUgdGhhbiBvbmUgVFMgZmlsZSwgb25lIG9mIHRoZW0gY2FuIHN0aWxsIGJlIHNlbGVjdGVkIGFzIHRoZVxuICAgIC8vIGZsYXQgbW9kdWxlIGluZGV4IGlmIGl0J3MgbmFtZWQgJ2luZGV4LnRzJy4gSWYgdGhlcmUncyBtb3JlIHRoYW4gb25lICdpbmRleC50cycsIHRoZSBvbmVcbiAgICAvLyB3aXRoIHRoZSBzaG9ydGVzdCBwYXRoIHdpbnMuXG4gICAgLy9cbiAgICAvLyBUaGlzIGJlaGF2aW9yIGlzIERFUFJFQ0FURUQgYW5kIG9ubHkgZXhpc3RzIHRvIHN1cHBvcnQgZXhpc3RpbmcgdXNhZ2VzLlxuICAgIGZvciAoY29uc3QgdHNGaWxlIG9mIHRzRmlsZXMpIHtcbiAgICAgIGlmIChnZXRGaWxlU3lzdGVtKCkuYmFzZW5hbWUodHNGaWxlKSA9PT0gJ2luZGV4LnRzJyAmJlxuICAgICAgICAgIChyZXNvbHZlZEVudHJ5UG9pbnQgPT09IG51bGwgfHwgdHNGaWxlLmxlbmd0aCA8PSByZXNvbHZlZEVudHJ5UG9pbnQubGVuZ3RoKSkge1xuICAgICAgICByZXNvbHZlZEVudHJ5UG9pbnQgPSB0c0ZpbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlc29sdmVkRW50cnlQb2ludDtcbn1cbiJdfQ==
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.io/license
|
|
7
|
-
*/
|
|
8
|
-
(function (factory) {
|
|
9
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
10
|
-
var v = factory(require, exports);
|
|
11
|
-
if (v !== undefined) module.exports = v;
|
|
12
|
-
}
|
|
13
|
-
else if (typeof define === "function" && define.amd) {
|
|
14
|
-
define("@angular/compiler-cli/src/ngtsc/entry_point/src/private_export_checker", ["require", "exports", "tslib", "typescript", "@angular/compiler-cli/src/ngtsc/diagnostics"], factory);
|
|
15
|
-
}
|
|
16
|
-
})(function (require, exports) {
|
|
17
|
-
"use strict";
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.checkForPrivateExports = void 0;
|
|
20
|
-
var tslib_1 = require("tslib");
|
|
21
|
-
var ts = require("typescript");
|
|
22
|
-
var diagnostics_1 = require("@angular/compiler-cli/src/ngtsc/diagnostics");
|
|
23
|
-
/**
|
|
24
|
-
* Produce `ts.Diagnostic`s for classes that are visible from exported types (e.g. directives
|
|
25
|
-
* exposed by exported `NgModule`s) that are not themselves exported.
|
|
26
|
-
*
|
|
27
|
-
* This function reconciles two concepts:
|
|
28
|
-
*
|
|
29
|
-
* A class is Exported if it's exported from the main library `entryPoint` file.
|
|
30
|
-
* A class is Visible if, via Angular semantics, a downstream consumer can import an Exported class
|
|
31
|
-
* and be affected by the class in question. For example, an Exported NgModule may expose a
|
|
32
|
-
* directive class to its consumers. Consumers that import the NgModule may have the directive
|
|
33
|
-
* applied to elements in their templates. In this case, the directive is considered Visible.
|
|
34
|
-
*
|
|
35
|
-
* `checkForPrivateExports` attempts to verify that all Visible classes are Exported, and report
|
|
36
|
-
* `ts.Diagnostic`s for those that aren't.
|
|
37
|
-
*
|
|
38
|
-
* @param entryPoint `ts.SourceFile` of the library's entrypoint, which should export the library's
|
|
39
|
-
* public API.
|
|
40
|
-
* @param checker `ts.TypeChecker` for the current program.
|
|
41
|
-
* @param refGraph `ReferenceGraph` tracking the visibility of Angular types.
|
|
42
|
-
* @returns an array of `ts.Diagnostic`s representing errors when visible classes are not exported
|
|
43
|
-
* properly.
|
|
44
|
-
*/
|
|
45
|
-
function checkForPrivateExports(entryPoint, checker, refGraph) {
|
|
46
|
-
var diagnostics = [];
|
|
47
|
-
// Firstly, compute the exports of the entry point. These are all the Exported classes.
|
|
48
|
-
var topLevelExports = new Set();
|
|
49
|
-
// Do this via `ts.TypeChecker.getExportsOfModule`.
|
|
50
|
-
var moduleSymbol = checker.getSymbolAtLocation(entryPoint);
|
|
51
|
-
if (moduleSymbol === undefined) {
|
|
52
|
-
throw new Error("Internal error: failed to get symbol for entrypoint");
|
|
53
|
-
}
|
|
54
|
-
var exportedSymbols = checker.getExportsOfModule(moduleSymbol);
|
|
55
|
-
// Loop through the exported symbols, de-alias if needed, and add them to `topLevelExports`.
|
|
56
|
-
// TODO(alxhub): use proper iteration when build.sh is removed. (#27762)
|
|
57
|
-
exportedSymbols.forEach(function (symbol) {
|
|
58
|
-
if (symbol.flags & ts.SymbolFlags.Alias) {
|
|
59
|
-
symbol = checker.getAliasedSymbol(symbol);
|
|
60
|
-
}
|
|
61
|
-
var decl = symbol.valueDeclaration;
|
|
62
|
-
if (decl !== undefined) {
|
|
63
|
-
topLevelExports.add(decl);
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
// Next, go through each exported class and expand it to the set of classes it makes Visible,
|
|
67
|
-
// using the `ReferenceGraph`. For each Visible class, verify that it's also Exported, and queue
|
|
68
|
-
// an error if it isn't. `checkedSet` ensures only one error is queued per class.
|
|
69
|
-
var checkedSet = new Set();
|
|
70
|
-
// Loop through each Exported class.
|
|
71
|
-
// TODO(alxhub): use proper iteration when the legacy build is removed. (#27762)
|
|
72
|
-
topLevelExports.forEach(function (mainExport) {
|
|
73
|
-
// Loop through each class made Visible by the Exported class.
|
|
74
|
-
refGraph.transitiveReferencesOf(mainExport).forEach(function (transitiveReference) {
|
|
75
|
-
// Skip classes which have already been checked.
|
|
76
|
-
if (checkedSet.has(transitiveReference)) {
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
checkedSet.add(transitiveReference);
|
|
80
|
-
// Verify that the Visible class is also Exported.
|
|
81
|
-
if (!topLevelExports.has(transitiveReference)) {
|
|
82
|
-
// This is an error, `mainExport` makes `transitiveReference` Visible, but
|
|
83
|
-
// `transitiveReference` is not Exported from the entrypoint. Construct a diagnostic to
|
|
84
|
-
// give to the user explaining the situation.
|
|
85
|
-
var descriptor = getDescriptorOfDeclaration(transitiveReference);
|
|
86
|
-
var name_1 = getNameOfDeclaration(transitiveReference);
|
|
87
|
-
// Construct the path of visibility, from `mainExport` to `transitiveReference`.
|
|
88
|
-
var visibleVia = 'NgModule exports';
|
|
89
|
-
var transitivePath = refGraph.pathFrom(mainExport, transitiveReference);
|
|
90
|
-
if (transitivePath !== null) {
|
|
91
|
-
visibleVia = transitivePath.map(function (seg) { return getNameOfDeclaration(seg); }).join(' -> ');
|
|
92
|
-
}
|
|
93
|
-
var diagnostic = (0, tslib_1.__assign)((0, tslib_1.__assign)({ category: ts.DiagnosticCategory.Error, code: (0, diagnostics_1.ngErrorCode)(diagnostics_1.ErrorCode.SYMBOL_NOT_EXPORTED), file: transitiveReference.getSourceFile() }, getPosOfDeclaration(transitiveReference)), { messageText: "Unsupported private " + descriptor + " " + name_1 + ". This " + descriptor + " is visible to consumers via " + visibleVia + ", but is not exported from the top-level library entrypoint." });
|
|
94
|
-
diagnostics.push(diagnostic);
|
|
95
|
-
}
|
|
96
|
-
});
|
|
97
|
-
});
|
|
98
|
-
return diagnostics;
|
|
99
|
-
}
|
|
100
|
-
exports.checkForPrivateExports = checkForPrivateExports;
|
|
101
|
-
function getPosOfDeclaration(decl) {
|
|
102
|
-
var node = getIdentifierOfDeclaration(decl) || decl;
|
|
103
|
-
return {
|
|
104
|
-
start: node.getStart(),
|
|
105
|
-
length: node.getEnd() + 1 - node.getStart(),
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
function getIdentifierOfDeclaration(decl) {
|
|
109
|
-
if ((ts.isClassDeclaration(decl) || ts.isVariableDeclaration(decl) ||
|
|
110
|
-
ts.isFunctionDeclaration(decl)) &&
|
|
111
|
-
decl.name !== undefined && ts.isIdentifier(decl.name)) {
|
|
112
|
-
return decl.name;
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
115
|
-
return null;
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
function getNameOfDeclaration(decl) {
|
|
119
|
-
var id = getIdentifierOfDeclaration(decl);
|
|
120
|
-
return id !== null ? id.text : '(unnamed)';
|
|
121
|
-
}
|
|
122
|
-
function getDescriptorOfDeclaration(decl) {
|
|
123
|
-
switch (decl.kind) {
|
|
124
|
-
case ts.SyntaxKind.ClassDeclaration:
|
|
125
|
-
return 'class';
|
|
126
|
-
case ts.SyntaxKind.FunctionDeclaration:
|
|
127
|
-
return 'function';
|
|
128
|
-
case ts.SyntaxKind.VariableDeclaration:
|
|
129
|
-
return 'variable';
|
|
130
|
-
case ts.SyntaxKind.EnumDeclaration:
|
|
131
|
-
return 'enum';
|
|
132
|
-
default:
|
|
133
|
-
return 'declaration';
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9leHBvcnRfY2hlY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvZW50cnlfcG9pbnQvc3JjL3ByaXZhdGVfZXhwb3J0X2NoZWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7OztJQUVILCtCQUFpQztJQUVqQywyRUFBeUQ7SUFLekQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQXFCRztJQUNILFNBQWdCLHNCQUFzQixDQUNsQyxVQUF5QixFQUFFLE9BQXVCLEVBQUUsUUFBd0I7UUFDOUUsSUFBTSxXQUFXLEdBQW9CLEVBQUUsQ0FBQztRQUV4Qyx1RkFBdUY7UUFDdkYsSUFBTSxlQUFlLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7UUFFbkQsbURBQW1EO1FBQ25ELElBQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM3RCxJQUFJLFlBQVksS0FBSyxTQUFTLEVBQUU7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO1NBQ3hFO1FBQ0QsSUFBTSxlQUFlLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRWpFLDRGQUE0RjtRQUM1Rix3RUFBd0U7UUFDeEUsZUFBZSxDQUFDLE9BQU8sQ0FBQyxVQUFBLE1BQU07WUFDNUIsSUFBSSxNQUFNLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFO2dCQUN2QyxNQUFNLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzNDO1lBQ0QsSUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDO1lBQ3JDLElBQUksSUFBSSxLQUFLLFNBQVMsRUFBRTtnQkFDdEIsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUMzQjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsNkZBQTZGO1FBQzdGLGdHQUFnRztRQUNoRyxpRkFBaUY7UUFDakYsSUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQW1CLENBQUM7UUFFOUMsb0NBQW9DO1FBQ3BDLGdGQUFnRjtRQUNoRixlQUFlLENBQUMsT0FBTyxDQUFDLFVBQUEsVUFBVTtZQUNoQyw4REFBOEQ7WUFDOUQsUUFBUSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFBLG1CQUFtQjtnQkFDckUsZ0RBQWdEO2dCQUNoRCxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsRUFBRTtvQkFDdkMsT0FBTztpQkFDUjtnQkFDRCxVQUFVLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7Z0JBRXBDLGtEQUFrRDtnQkFDbEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsbUJBQW1CLENBQUMsRUFBRTtvQkFDN0MsMEVBQTBFO29CQUMxRSx1RkFBdUY7b0JBQ3ZGLDZDQUE2QztvQkFFN0MsSUFBTSxVQUFVLEdBQUcsMEJBQTBCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztvQkFDbkUsSUFBTSxNQUFJLEdBQUcsb0JBQW9CLENBQUMsbUJBQW1CLENBQUMsQ0FBQztvQkFFdkQsZ0ZBQWdGO29CQUNoRixJQUFJLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQztvQkFDcEMsSUFBTSxjQUFjLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztvQkFDMUUsSUFBSSxjQUFjLEtBQUssSUFBSSxFQUFFO3dCQUMzQixVQUFVLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxVQUFBLEdBQUcsSUFBSSxPQUFBLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxFQUF6QixDQUF5QixDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUNoRjtvQkFFRCxJQUFNLFVBQVUsaURBQ2QsUUFBUSxFQUFFLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQ3JDLElBQUksRUFBRSxJQUFBLHlCQUFXLEVBQUMsdUJBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxFQUNoRCxJQUFJLEVBQUUsbUJBQW1CLENBQUMsYUFBYSxFQUFFLElBQ3RDLG1CQUFtQixDQUFDLG1CQUFtQixDQUFDLEtBQzNDLFdBQVcsRUFBRSx5QkFBdUIsVUFBVSxTQUFJLE1BQUksZUFDbEQsVUFBVSxxQ0FDVixVQUFVLGlFQUE4RCxHQUM3RSxDQUFDO29CQUVGLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQzlCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sV0FBVyxDQUFDO0lBQ3JCLENBQUM7SUExRUQsd0RBMEVDO0lBRUQsU0FBUyxtQkFBbUIsQ0FBQyxJQUFxQjtRQUNoRCxJQUFNLElBQUksR0FBWSwwQkFBMEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUM7UUFDL0QsT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3RCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUU7U0FDNUMsQ0FBQztJQUNKLENBQUM7SUFFRCxTQUFTLDBCQUEwQixDQUFDLElBQXFCO1FBQ3ZELElBQUksQ0FBQyxFQUFFLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQztZQUM3RCxFQUFFLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDekQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ2xCO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVELFNBQVMsb0JBQW9CLENBQUMsSUFBcUI7UUFDakQsSUFBTSxFQUFFLEdBQUcsMEJBQTBCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsT0FBTyxFQUFFLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7SUFDN0MsQ0FBQztJQUVELFNBQVMsMEJBQTBCLENBQUMsSUFBcUI7UUFDdkQsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2pCLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0I7Z0JBQ2pDLE9BQU8sT0FBTyxDQUFDO1lBQ2pCLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUI7Z0JBQ3BDLE9BQU8sVUFBVSxDQUFDO1lBQ3BCLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUI7Z0JBQ3BDLE9BQU8sVUFBVSxDQUFDO1lBQ3BCLEtBQUssRUFBRSxDQUFDLFVBQVUsQ0FBQyxlQUFlO2dCQUNoQyxPQUFPLE1BQU0sQ0FBQztZQUNoQjtnQkFDRSxPQUFPLGFBQWEsQ0FBQztTQUN4QjtJQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbmltcG9ydCB7RXJyb3JDb2RlLCBuZ0Vycm9yQ29kZX0gZnJvbSAnLi4vLi4vZGlhZ25vc3RpY3MnO1xuaW1wb3J0IHtEZWNsYXJhdGlvbk5vZGV9IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuXG5pbXBvcnQge1JlZmVyZW5jZUdyYXBofSBmcm9tICcuL3JlZmVyZW5jZV9ncmFwaCc7XG5cbi8qKlxuICogUHJvZHVjZSBgdHMuRGlhZ25vc3RpY2BzIGZvciBjbGFzc2VzIHRoYXQgYXJlIHZpc2libGUgZnJvbSBleHBvcnRlZCB0eXBlcyAoZS5nLiBkaXJlY3RpdmVzXG4gKiBleHBvc2VkIGJ5IGV4cG9ydGVkIGBOZ01vZHVsZWBzKSB0aGF0IGFyZSBub3QgdGhlbXNlbHZlcyBleHBvcnRlZC5cbiAqXG4gKiBUaGlzIGZ1bmN0aW9uIHJlY29uY2lsZXMgdHdvIGNvbmNlcHRzOlxuICpcbiAqIEEgY2xhc3MgaXMgRXhwb3J0ZWQgaWYgaXQncyBleHBvcnRlZCBmcm9tIHRoZSBtYWluIGxpYnJhcnkgYGVudHJ5UG9pbnRgIGZpbGUuXG4gKiBBIGNsYXNzIGlzIFZpc2libGUgaWYsIHZpYSBBbmd1bGFyIHNlbWFudGljcywgYSBkb3duc3RyZWFtIGNvbnN1bWVyIGNhbiBpbXBvcnQgYW4gRXhwb3J0ZWQgY2xhc3NcbiAqIGFuZCBiZSBhZmZlY3RlZCBieSB0aGUgY2xhc3MgaW4gcXVlc3Rpb24uIEZvciBleGFtcGxlLCBhbiBFeHBvcnRlZCBOZ01vZHVsZSBtYXkgZXhwb3NlIGFcbiAqIGRpcmVjdGl2ZSBjbGFzcyB0byBpdHMgY29uc3VtZXJzLiBDb25zdW1lcnMgdGhhdCBpbXBvcnQgdGhlIE5nTW9kdWxlIG1heSBoYXZlIHRoZSBkaXJlY3RpdmVcbiAqIGFwcGxpZWQgdG8gZWxlbWVudHMgaW4gdGhlaXIgdGVtcGxhdGVzLiBJbiB0aGlzIGNhc2UsIHRoZSBkaXJlY3RpdmUgaXMgY29uc2lkZXJlZCBWaXNpYmxlLlxuICpcbiAqIGBjaGVja0ZvclByaXZhdGVFeHBvcnRzYCBhdHRlbXB0cyB0byB2ZXJpZnkgdGhhdCBhbGwgVmlzaWJsZSBjbGFzc2VzIGFyZSBFeHBvcnRlZCwgYW5kIHJlcG9ydFxuICogYHRzLkRpYWdub3N0aWNgcyBmb3IgdGhvc2UgdGhhdCBhcmVuJ3QuXG4gKlxuICogQHBhcmFtIGVudHJ5UG9pbnQgYHRzLlNvdXJjZUZpbGVgIG9mIHRoZSBsaWJyYXJ5J3MgZW50cnlwb2ludCwgd2hpY2ggc2hvdWxkIGV4cG9ydCB0aGUgbGlicmFyeSdzXG4gKiBwdWJsaWMgQVBJLlxuICogQHBhcmFtIGNoZWNrZXIgYHRzLlR5cGVDaGVja2VyYCBmb3IgdGhlIGN1cnJlbnQgcHJvZ3JhbS5cbiAqIEBwYXJhbSByZWZHcmFwaCBgUmVmZXJlbmNlR3JhcGhgIHRyYWNraW5nIHRoZSB2aXNpYmlsaXR5IG9mIEFuZ3VsYXIgdHlwZXMuXG4gKiBAcmV0dXJucyBhbiBhcnJheSBvZiBgdHMuRGlhZ25vc3RpY2BzIHJlcHJlc2VudGluZyBlcnJvcnMgd2hlbiB2aXNpYmxlIGNsYXNzZXMgYXJlIG5vdCBleHBvcnRlZFxuICogcHJvcGVybHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0ZvclByaXZhdGVFeHBvcnRzKFxuICAgIGVudHJ5UG9pbnQ6IHRzLlNvdXJjZUZpbGUsIGNoZWNrZXI6IHRzLlR5cGVDaGVja2VyLCByZWZHcmFwaDogUmVmZXJlbmNlR3JhcGgpOiB0cy5EaWFnbm9zdGljW10ge1xuICBjb25zdCBkaWFnbm9zdGljczogdHMuRGlhZ25vc3RpY1tdID0gW107XG5cbiAgLy8gRmlyc3RseSwgY29tcHV0ZSB0aGUgZXhwb3J0cyBvZiB0aGUgZW50cnkgcG9pbnQuIFRoZXNlIGFyZSBhbGwgdGhlIEV4cG9ydGVkIGNsYXNzZXMuXG4gIGNvbnN0IHRvcExldmVsRXhwb3J0cyA9IG5ldyBTZXQ8RGVjbGFyYXRpb25Ob2RlPigpO1xuXG4gIC8vIERvIHRoaXMgdmlhIGB0cy5UeXBlQ2hlY2tlci5nZXRFeHBvcnRzT2ZNb2R1bGVgLlxuICBjb25zdCBtb2R1bGVTeW1ib2wgPSBjaGVja2VyLmdldFN5bWJvbEF0TG9jYXRpb24oZW50cnlQb2ludCk7XG4gIGlmIChtb2R1bGVTeW1ib2wgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgSW50ZXJuYWwgZXJyb3I6IGZhaWxlZCB0byBnZXQgc3ltYm9sIGZvciBlbnRyeXBvaW50YCk7XG4gIH1cbiAgY29uc3QgZXhwb3J0ZWRTeW1ib2xzID0gY2hlY2tlci5nZXRFeHBvcnRzT2ZNb2R1bGUobW9kdWxlU3ltYm9sKTtcblxuICAvLyBMb29wIHRocm91Z2ggdGhlIGV4cG9ydGVkIHN5bWJvbHMsIGRlLWFsaWFzIGlmIG5lZWRlZCwgYW5kIGFkZCB0aGVtIHRvIGB0b3BMZXZlbEV4cG9ydHNgLlxuICAvLyBUT0RPKGFseGh1Yik6IHVzZSBwcm9wZXIgaXRlcmF0aW9uIHdoZW4gYnVpbGQuc2ggaXMgcmVtb3ZlZC4gKCMyNzc2MilcbiAgZXhwb3J0ZWRTeW1ib2xzLmZvckVhY2goc3ltYm9sID0+IHtcbiAgICBpZiAoc3ltYm9sLmZsYWdzICYgdHMuU3ltYm9sRmxhZ3MuQWxpYXMpIHtcbiAgICAgIHN5bWJvbCA9IGNoZWNrZXIuZ2V0QWxpYXNlZFN5bWJvbChzeW1ib2wpO1xuICAgIH1cbiAgICBjb25zdCBkZWNsID0gc3ltYm9sLnZhbHVlRGVjbGFyYXRpb247XG4gICAgaWYgKGRlY2wgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdG9wTGV2ZWxFeHBvcnRzLmFkZChkZWNsKTtcbiAgICB9XG4gIH0pO1xuXG4gIC8vIE5leHQsIGdvIHRocm91Z2ggZWFjaCBleHBvcnRlZCBjbGFzcyBhbmQgZXhwYW5kIGl0IHRvIHRoZSBzZXQgb2YgY2xhc3NlcyBpdCBtYWtlcyBWaXNpYmxlLFxuICAvLyB1c2luZyB0aGUgYFJlZmVyZW5jZUdyYXBoYC4gRm9yIGVhY2ggVmlzaWJsZSBjbGFzcywgdmVyaWZ5IHRoYXQgaXQncyBhbHNvIEV4cG9ydGVkLCBhbmQgcXVldWVcbiAgLy8gYW4gZXJyb3IgaWYgaXQgaXNuJ3QuIGBjaGVja2VkU2V0YCBlbnN1cmVzIG9ubHkgb25lIGVycm9yIGlzIHF1ZXVlZCBwZXIgY2xhc3MuXG4gIGNvbnN0IGNoZWNrZWRTZXQgPSBuZXcgU2V0PERlY2xhcmF0aW9uTm9kZT4oKTtcblxuICAvLyBMb29wIHRocm91Z2ggZWFjaCBFeHBvcnRlZCBjbGFzcy5cbiAgLy8gVE9ETyhhbHhodWIpOiB1c2UgcHJvcGVyIGl0ZXJhdGlvbiB3aGVuIHRoZSBsZWdhY3kgYnVpbGQgaXMgcmVtb3ZlZC4gKCMyNzc2MilcbiAgdG9wTGV2ZWxFeHBvcnRzLmZvckVhY2gobWFpbkV4cG9ydCA9PiB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIGVhY2ggY2xhc3MgbWFkZSBWaXNpYmxlIGJ5IHRoZSBFeHBvcnRlZCBjbGFzcy5cbiAgICByZWZHcmFwaC50cmFuc2l0aXZlUmVmZXJlbmNlc09mKG1haW5FeHBvcnQpLmZvckVhY2godHJhbnNpdGl2ZVJlZmVyZW5jZSA9PiB7XG4gICAgICAvLyBTa2lwIGNsYXNzZXMgd2hpY2ggaGF2ZSBhbHJlYWR5IGJlZW4gY2hlY2tlZC5cbiAgICAgIGlmIChjaGVja2VkU2V0Lmhhcyh0cmFuc2l0aXZlUmVmZXJlbmNlKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjaGVja2VkU2V0LmFkZCh0cmFuc2l0aXZlUmVmZXJlbmNlKTtcblxuICAgICAgLy8gVmVyaWZ5IHRoYXQgdGhlIFZpc2libGUgY2xhc3MgaXMgYWxzbyBFeHBvcnRlZC5cbiAgICAgIGlmICghdG9wTGV2ZWxFeHBvcnRzLmhhcyh0cmFuc2l0aXZlUmVmZXJlbmNlKSkge1xuICAgICAgICAvLyBUaGlzIGlzIGFuIGVycm9yLCBgbWFpbkV4cG9ydGAgbWFrZXMgYHRyYW5zaXRpdmVSZWZlcmVuY2VgIFZpc2libGUsIGJ1dFxuICAgICAgICAvLyBgdHJhbnNpdGl2ZVJlZmVyZW5jZWAgaXMgbm90IEV4cG9ydGVkIGZyb20gdGhlIGVudHJ5cG9pbnQuIENvbnN0cnVjdCBhIGRpYWdub3N0aWMgdG9cbiAgICAgICAgLy8gZ2l2ZSB0byB0aGUgdXNlciBleHBsYWluaW5nIHRoZSBzaXR1YXRpb24uXG5cbiAgICAgICAgY29uc3QgZGVzY3JpcHRvciA9IGdldERlc2NyaXB0b3JPZkRlY2xhcmF0aW9uKHRyYW5zaXRpdmVSZWZlcmVuY2UpO1xuICAgICAgICBjb25zdCBuYW1lID0gZ2V0TmFtZU9mRGVjbGFyYXRpb24odHJhbnNpdGl2ZVJlZmVyZW5jZSk7XG5cbiAgICAgICAgLy8gQ29uc3RydWN0IHRoZSBwYXRoIG9mIHZpc2liaWxpdHksIGZyb20gYG1haW5FeHBvcnRgIHRvIGB0cmFuc2l0aXZlUmVmZXJlbmNlYC5cbiAgICAgICAgbGV0IHZpc2libGVWaWEgPSAnTmdNb2R1bGUgZXhwb3J0cyc7XG4gICAgICAgIGNvbnN0IHRyYW5zaXRpdmVQYXRoID0gcmVmR3JhcGgucGF0aEZyb20obWFpbkV4cG9ydCwgdHJhbnNpdGl2ZVJlZmVyZW5jZSk7XG4gICAgICAgIGlmICh0cmFuc2l0aXZlUGF0aCAhPT0gbnVsbCkge1xuICAgICAgICAgIHZpc2libGVWaWEgPSB0cmFuc2l0aXZlUGF0aC5tYXAoc2VnID0+IGdldE5hbWVPZkRlY2xhcmF0aW9uKHNlZykpLmpvaW4oJyAtPiAnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRpYWdub3N0aWM6IHRzLkRpYWdub3N0aWMgPSB7XG4gICAgICAgICAgY2F0ZWdvcnk6IHRzLkRpYWdub3N0aWNDYXRlZ29yeS5FcnJvcixcbiAgICAgICAgICBjb2RlOiBuZ0Vycm9yQ29kZShFcnJvckNvZGUuU1lNQk9MX05PVF9FWFBPUlRFRCksXG4gICAgICAgICAgZmlsZTogdHJhbnNpdGl2ZVJlZmVyZW5jZS5nZXRTb3VyY2VGaWxlKCksXG4gICAgICAgICAgLi4uZ2V0UG9zT2ZEZWNsYXJhdGlvbih0cmFuc2l0aXZlUmVmZXJlbmNlKSxcbiAgICAgICAgICBtZXNzYWdlVGV4dDogYFVuc3VwcG9ydGVkIHByaXZhdGUgJHtkZXNjcmlwdG9yfSAke25hbWV9LiBUaGlzICR7XG4gICAgICAgICAgICAgIGRlc2NyaXB0b3J9IGlzIHZpc2libGUgdG8gY29uc3VtZXJzIHZpYSAke1xuICAgICAgICAgICAgICB2aXNpYmxlVmlhfSwgYnV0IGlzIG5vdCBleHBvcnRlZCBmcm9tIHRoZSB0b3AtbGV2ZWwgbGlicmFyeSBlbnRyeXBvaW50LmAsXG4gICAgICAgIH07XG5cbiAgICAgICAgZGlhZ25vc3RpY3MucHVzaChkaWFnbm9zdGljKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG5cbiAgcmV0dXJuIGRpYWdub3N0aWNzO1xufVxuXG5mdW5jdGlvbiBnZXRQb3NPZkRlY2xhcmF0aW9uKGRlY2w6IERlY2xhcmF0aW9uTm9kZSk6IHtzdGFydDogbnVtYmVyLCBsZW5ndGg6IG51bWJlcn0ge1xuICBjb25zdCBub2RlOiB0cy5Ob2RlID0gZ2V0SWRlbnRpZmllck9mRGVjbGFyYXRpb24oZGVjbCkgfHwgZGVjbDtcbiAgcmV0dXJuIHtcbiAgICBzdGFydDogbm9kZS5nZXRTdGFydCgpLFxuICAgIGxlbmd0aDogbm9kZS5nZXRFbmQoKSArIDEgLSBub2RlLmdldFN0YXJ0KCksXG4gIH07XG59XG5cbmZ1bmN0aW9uIGdldElkZW50aWZpZXJPZkRlY2xhcmF0aW9uKGRlY2w6IERlY2xhcmF0aW9uTm9kZSk6IHRzLklkZW50aWZpZXJ8bnVsbCB7XG4gIGlmICgodHMuaXNDbGFzc0RlY2xhcmF0aW9uKGRlY2wpIHx8IHRzLmlzVmFyaWFibGVEZWNsYXJhdGlvbihkZWNsKSB8fFxuICAgICAgIHRzLmlzRnVuY3Rpb25EZWNsYXJhdGlvbihkZWNsKSkgJiZcbiAgICAgIGRlY2wubmFtZSAhPT0gdW5kZWZpbmVkICYmIHRzLmlzSWRlbnRpZmllcihkZWNsLm5hbWUpKSB7XG4gICAgcmV0dXJuIGRlY2wubmFtZTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXROYW1lT2ZEZWNsYXJhdGlvbihkZWNsOiBEZWNsYXJhdGlvbk5vZGUpOiBzdHJpbmcge1xuICBjb25zdCBpZCA9IGdldElkZW50aWZpZXJPZkRlY2xhcmF0aW9uKGRlY2wpO1xuICByZXR1cm4gaWQgIT09IG51bGwgPyBpZC50ZXh0IDogJyh1bm5hbWVkKSc7XG59XG5cbmZ1bmN0aW9uIGdldERlc2NyaXB0b3JPZkRlY2xhcmF0aW9uKGRlY2w6IERlY2xhcmF0aW9uTm9kZSk6IHN0cmluZyB7XG4gIHN3aXRjaCAoZGVjbC5raW5kKSB7XG4gICAgY2FzZSB0cy5TeW50YXhLaW5kLkNsYXNzRGVjbGFyYXRpb246XG4gICAgICByZXR1cm4gJ2NsYXNzJztcbiAgICBjYXNlIHRzLlN5bnRheEtpbmQuRnVuY3Rpb25EZWNsYXJhdGlvbjpcbiAgICAgIHJldHVybiAnZnVuY3Rpb24nO1xuICAgIGNhc2UgdHMuU3ludGF4S2luZC5WYXJpYWJsZURlY2xhcmF0aW9uOlxuICAgICAgcmV0dXJuICd2YXJpYWJsZSc7XG4gICAgY2FzZSB0cy5TeW50YXhLaW5kLkVudW1EZWNsYXJhdGlvbjpcbiAgICAgIHJldHVybiAnZW51bSc7XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiAnZGVjbGFyYXRpb24nO1xuICB9XG59XG4iXX0=
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.io/license
|
|
7
|
-
*/
|
|
8
|
-
(function (factory) {
|
|
9
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
10
|
-
var v = factory(require, exports);
|
|
11
|
-
if (v !== undefined) module.exports = v;
|
|
12
|
-
}
|
|
13
|
-
else if (typeof define === "function" && define.amd) {
|
|
14
|
-
define("@angular/compiler-cli/src/ngtsc/entry_point/src/reference_graph", ["require", "exports", "tslib"], factory);
|
|
15
|
-
}
|
|
16
|
-
})(function (require, exports) {
|
|
17
|
-
"use strict";
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.ReferenceGraph = void 0;
|
|
20
|
-
var tslib_1 = require("tslib");
|
|
21
|
-
var ReferenceGraph = /** @class */ (function () {
|
|
22
|
-
function ReferenceGraph() {
|
|
23
|
-
this.references = new Map();
|
|
24
|
-
}
|
|
25
|
-
ReferenceGraph.prototype.add = function (from, to) {
|
|
26
|
-
if (!this.references.has(from)) {
|
|
27
|
-
this.references.set(from, new Set());
|
|
28
|
-
}
|
|
29
|
-
this.references.get(from).add(to);
|
|
30
|
-
};
|
|
31
|
-
ReferenceGraph.prototype.transitiveReferencesOf = function (target) {
|
|
32
|
-
var set = new Set();
|
|
33
|
-
this.collectTransitiveReferences(set, target);
|
|
34
|
-
return set;
|
|
35
|
-
};
|
|
36
|
-
ReferenceGraph.prototype.pathFrom = function (source, target) {
|
|
37
|
-
return this.collectPathFrom(source, target, new Set());
|
|
38
|
-
};
|
|
39
|
-
ReferenceGraph.prototype.collectPathFrom = function (source, target, seen) {
|
|
40
|
-
var _this = this;
|
|
41
|
-
if (source === target) {
|
|
42
|
-
// Looking for a path from the target to itself - that path is just the target. This is the
|
|
43
|
-
// "base case" of the search.
|
|
44
|
-
return [target];
|
|
45
|
-
}
|
|
46
|
-
else if (seen.has(source)) {
|
|
47
|
-
// The search has already looked through this source before.
|
|
48
|
-
return null;
|
|
49
|
-
}
|
|
50
|
-
// Consider outgoing edges from `source`.
|
|
51
|
-
seen.add(source);
|
|
52
|
-
if (!this.references.has(source)) {
|
|
53
|
-
// There are no outgoing edges from `source`.
|
|
54
|
-
return null;
|
|
55
|
-
}
|
|
56
|
-
else {
|
|
57
|
-
// Look through the outgoing edges of `source`.
|
|
58
|
-
// TODO(alxhub): use proper iteration when the legacy build is removed. (#27762)
|
|
59
|
-
var candidatePath_1 = null;
|
|
60
|
-
this.references.get(source).forEach(function (edge) {
|
|
61
|
-
// Early exit if a path has already been found.
|
|
62
|
-
if (candidatePath_1 !== null) {
|
|
63
|
-
return;
|
|
64
|
-
}
|
|
65
|
-
// Look for a path from this outgoing edge to `target`.
|
|
66
|
-
var partialPath = _this.collectPathFrom(edge, target, seen);
|
|
67
|
-
if (partialPath !== null) {
|
|
68
|
-
// A path exists from `edge` to `target`. Insert `source` at the beginning.
|
|
69
|
-
candidatePath_1 = (0, tslib_1.__spreadArray)([source], (0, tslib_1.__read)(partialPath), false);
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
return candidatePath_1;
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
ReferenceGraph.prototype.collectTransitiveReferences = function (set, decl) {
|
|
76
|
-
var _this = this;
|
|
77
|
-
if (this.references.has(decl)) {
|
|
78
|
-
// TODO(alxhub): use proper iteration when the legacy build is removed. (#27762)
|
|
79
|
-
this.references.get(decl).forEach(function (ref) {
|
|
80
|
-
if (!set.has(ref)) {
|
|
81
|
-
set.add(ref);
|
|
82
|
-
_this.collectTransitiveReferences(set, ref);
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
return ReferenceGraph;
|
|
88
|
-
}());
|
|
89
|
-
exports.ReferenceGraph = ReferenceGraph;
|
|
90
|
-
});
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlX2dyYXBoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy9lbnRyeV9wb2ludC9zcmMvcmVmZXJlbmNlX2dyYXBoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7SUFJSDtRQUFBO1lBQ1UsZUFBVSxHQUFHLElBQUksR0FBRyxFQUFhLENBQUM7UUFrRTVDLENBQUM7UUFoRUMsNEJBQUcsR0FBSCxVQUFJLElBQU8sRUFBRSxFQUFLO1lBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDOUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQzthQUN0QztZQUNELElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNyQyxDQUFDO1FBRUQsK0NBQXNCLEdBQXRCLFVBQXVCLE1BQVM7WUFDOUIsSUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQUssQ0FBQztZQUN6QixJQUFJLENBQUMsMkJBQTJCLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzlDLE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQztRQUVELGlDQUFRLEdBQVIsVUFBUyxNQUFTLEVBQUUsTUFBUztZQUMzQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVPLHdDQUFlLEdBQXZCLFVBQXdCLE1BQVMsRUFBRSxNQUFTLEVBQUUsSUFBWTtZQUExRCxpQkFrQ0M7WUFqQ0MsSUFBSSxNQUFNLEtBQUssTUFBTSxFQUFFO2dCQUNyQiwyRkFBMkY7Z0JBQzNGLDZCQUE2QjtnQkFDN0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ2pCO2lCQUFNLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDM0IsNERBQTREO2dCQUM1RCxPQUFPLElBQUksQ0FBQzthQUNiO1lBQ0QseUNBQXlDO1lBQ3pDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFakIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNoQyw2Q0FBNkM7Z0JBQzdDLE9BQU8sSUFBSSxDQUFDO2FBQ2I7aUJBQU07Z0JBQ0wsK0NBQStDO2dCQUMvQyxnRkFBZ0Y7Z0JBQ2hGLElBQUksZUFBYSxHQUFhLElBQUksQ0FBQztnQkFDbkMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFFLENBQUMsT0FBTyxDQUFDLFVBQUEsSUFBSTtvQkFDdkMsK0NBQStDO29CQUMvQyxJQUFJLGVBQWEsS0FBSyxJQUFJLEVBQUU7d0JBQzFCLE9BQU87cUJBQ1I7b0JBQ0QsdURBQXVEO29CQUN2RCxJQUFNLFdBQVcsR0FBRyxLQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQzdELElBQUksV0FBVyxLQUFLLElBQUksRUFBRTt3QkFDeEIsMkVBQTJFO3dCQUMzRSxlQUFhLCtCQUFJLE1BQU0sdUJBQUssV0FBVyxTQUFDLENBQUM7cUJBQzFDO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUVILE9BQU8sZUFBYSxDQUFDO2FBQ3RCO1FBQ0gsQ0FBQztRQUVPLG9EQUEyQixHQUFuQyxVQUFvQyxHQUFXLEVBQUUsSUFBTztZQUF4RCxpQkFVQztZQVRDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzdCLGdGQUFnRjtnQkFDaEYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFFLENBQUMsT0FBTyxDQUFDLFVBQUEsR0FBRztvQkFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7d0JBQ2pCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ2IsS0FBSSxDQUFDLDJCQUEyQixDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztxQkFDNUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7YUFDSjtRQUNILENBQUM7UUFDSCxxQkFBQztJQUFELENBQUMsQUFuRUQsSUFtRUM7SUFuRVksd0NBQWMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0IHtEZWNsYXJhdGlvbk5vZGV9IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuXG5leHBvcnQgY2xhc3MgUmVmZXJlbmNlR3JhcGg8VCA9IERlY2xhcmF0aW9uTm9kZT4ge1xuICBwcml2YXRlIHJlZmVyZW5jZXMgPSBuZXcgTWFwPFQsIFNldDxUPj4oKTtcblxuICBhZGQoZnJvbTogVCwgdG86IFQpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMucmVmZXJlbmNlcy5oYXMoZnJvbSkpIHtcbiAgICAgIHRoaXMucmVmZXJlbmNlcy5zZXQoZnJvbSwgbmV3IFNldCgpKTtcbiAgICB9XG4gICAgdGhpcy5yZWZlcmVuY2VzLmdldChmcm9tKSEuYWRkKHRvKTtcbiAgfVxuXG4gIHRyYW5zaXRpdmVSZWZlcmVuY2VzT2YodGFyZ2V0OiBUKTogU2V0PFQ+IHtcbiAgICBjb25zdCBzZXQgPSBuZXcgU2V0PFQ+KCk7XG4gICAgdGhpcy5jb2xsZWN0VHJhbnNpdGl2ZVJlZmVyZW5jZXMoc2V0LCB0YXJnZXQpO1xuICAgIHJldHVybiBzZXQ7XG4gIH1cblxuICBwYXRoRnJvbShzb3VyY2U6IFQsIHRhcmdldDogVCk6IFRbXXxudWxsIHtcbiAgICByZXR1cm4gdGhpcy5jb2xsZWN0UGF0aEZyb20oc291cmNlLCB0YXJnZXQsIG5ldyBTZXQoKSk7XG4gIH1cblxuICBwcml2YXRlIGNvbGxlY3RQYXRoRnJvbShzb3VyY2U6IFQsIHRhcmdldDogVCwgc2VlbjogU2V0PFQ+KTogVFtdfG51bGwge1xuICAgIGlmIChzb3VyY2UgPT09IHRhcmdldCkge1xuICAgICAgLy8gTG9va2luZyBmb3IgYSBwYXRoIGZyb20gdGhlIHRhcmdldCB0byBpdHNlbGYgLSB0aGF0IHBhdGggaXMganVzdCB0aGUgdGFyZ2V0LiBUaGlzIGlzIHRoZVxuICAgICAgLy8gXCJiYXNlIGNhc2VcIiBvZiB0aGUgc2VhcmNoLlxuICAgICAgcmV0dXJuIFt0YXJnZXRdO1xuICAgIH0gZWxzZSBpZiAoc2Vlbi5oYXMoc291cmNlKSkge1xuICAgICAgLy8gVGhlIHNlYXJjaCBoYXMgYWxyZWFkeSBsb29rZWQgdGhyb3VnaCB0aGlzIHNvdXJjZSBiZWZvcmUuXG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgLy8gQ29uc2lkZXIgb3V0Z29pbmcgZWRnZXMgZnJvbSBgc291cmNlYC5cbiAgICBzZWVuLmFkZChzb3VyY2UpO1xuXG4gICAgaWYgKCF0aGlzLnJlZmVyZW5jZXMuaGFzKHNvdXJjZSkpIHtcbiAgICAgIC8vIFRoZXJlIGFyZSBubyBvdXRnb2luZyBlZGdlcyBmcm9tIGBzb3VyY2VgLlxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIExvb2sgdGhyb3VnaCB0aGUgb3V0Z29pbmcgZWRnZXMgb2YgYHNvdXJjZWAuXG4gICAgICAvLyBUT0RPKGFseGh1Yik6IHVzZSBwcm9wZXIgaXRlcmF0aW9uIHdoZW4gdGhlIGxlZ2FjeSBidWlsZCBpcyByZW1vdmVkLiAoIzI3NzYyKVxuICAgICAgbGV0IGNhbmRpZGF0ZVBhdGg6IFRbXXxudWxsID0gbnVsbDtcbiAgICAgIHRoaXMucmVmZXJlbmNlcy5nZXQoc291cmNlKSEuZm9yRWFjaChlZGdlID0+IHtcbiAgICAgICAgLy8gRWFybHkgZXhpdCBpZiBhIHBhdGggaGFzIGFscmVhZHkgYmVlbiBmb3VuZC5cbiAgICAgICAgaWYgKGNhbmRpZGF0ZVBhdGggIT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgLy8gTG9vayBmb3IgYSBwYXRoIGZyb20gdGhpcyBvdXRnb2luZyBlZGdlIHRvIGB0YXJnZXRgLlxuICAgICAgICBjb25zdCBwYXJ0aWFsUGF0aCA9IHRoaXMuY29sbGVjdFBhdGhGcm9tKGVkZ2UsIHRhcmdldCwgc2Vlbik7XG4gICAgICAgIGlmIChwYXJ0aWFsUGF0aCAhPT0gbnVsbCkge1xuICAgICAgICAgIC8vIEEgcGF0aCBleGlzdHMgZnJvbSBgZWRnZWAgdG8gYHRhcmdldGAuIEluc2VydCBgc291cmNlYCBhdCB0aGUgYmVnaW5uaW5nLlxuICAgICAgICAgIGNhbmRpZGF0ZVBhdGggPSBbc291cmNlLCAuLi5wYXJ0aWFsUGF0aF07XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gY2FuZGlkYXRlUGF0aDtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNvbGxlY3RUcmFuc2l0aXZlUmVmZXJlbmNlcyhzZXQ6IFNldDxUPiwgZGVjbDogVCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlZmVyZW5jZXMuaGFzKGRlY2wpKSB7XG4gICAgICAvLyBUT0RPKGFseGh1Yik6IHVzZSBwcm9wZXIgaXRlcmF0aW9uIHdoZW4gdGhlIGxlZ2FjeSBidWlsZCBpcyByZW1vdmVkLiAoIzI3NzYyKVxuICAgICAgdGhpcy5yZWZlcmVuY2VzLmdldChkZWNsKSEuZm9yRWFjaChyZWYgPT4ge1xuICAgICAgICBpZiAoIXNldC5oYXMocmVmKSkge1xuICAgICAgICAgIHNldC5hZGQocmVmKTtcbiAgICAgICAgICB0aGlzLmNvbGxlY3RUcmFuc2l0aXZlUmVmZXJlbmNlcyhzZXQsIHJlZik7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
(function (factory) {
|
|
2
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
3
|
-
var v = factory(require, exports);
|
|
4
|
-
if (v !== undefined) module.exports = v;
|
|
5
|
-
}
|
|
6
|
-
else if (typeof define === "function" && define.amd) {
|
|
7
|
-
define("@angular/compiler-cli/src/ngtsc/file_system", ["require", "exports", "@angular/compiler-cli/src/ngtsc/file_system/src/compiler_host", "@angular/compiler-cli/src/ngtsc/file_system/src/helpers", "@angular/compiler-cli/src/ngtsc/file_system/src/logical", "@angular/compiler-cli/src/ngtsc/file_system/src/node_js_file_system", "@angular/compiler-cli/src/ngtsc/file_system/src/util"], factory);
|
|
8
|
-
}
|
|
9
|
-
})(function (require, exports) {
|
|
10
|
-
"use strict";
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.getSourceFileOrError = exports.NodeJSFileSystem = exports.LogicalProjectPath = exports.LogicalFileSystem = exports.toRelativeImport = exports.setFileSystem = exports.resolve = exports.relativeFrom = exports.relative = exports.join = exports.isRooted = exports.isRoot = exports.isLocalRelativePath = exports.getFileSystem = exports.dirname = exports.basename = exports.absoluteFromSourceFile = exports.absoluteFrom = exports.NgtscCompilerHost = void 0;
|
|
13
|
-
/**
|
|
14
|
-
* @license
|
|
15
|
-
* Copyright Google LLC All Rights Reserved.
|
|
16
|
-
*
|
|
17
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
18
|
-
* found in the LICENSE file at https://angular.io/license
|
|
19
|
-
*/
|
|
20
|
-
var compiler_host_1 = require("@angular/compiler-cli/src/ngtsc/file_system/src/compiler_host");
|
|
21
|
-
Object.defineProperty(exports, "NgtscCompilerHost", { enumerable: true, get: function () { return compiler_host_1.NgtscCompilerHost; } });
|
|
22
|
-
var helpers_1 = require("@angular/compiler-cli/src/ngtsc/file_system/src/helpers");
|
|
23
|
-
Object.defineProperty(exports, "absoluteFrom", { enumerable: true, get: function () { return helpers_1.absoluteFrom; } });
|
|
24
|
-
Object.defineProperty(exports, "absoluteFromSourceFile", { enumerable: true, get: function () { return helpers_1.absoluteFromSourceFile; } });
|
|
25
|
-
Object.defineProperty(exports, "basename", { enumerable: true, get: function () { return helpers_1.basename; } });
|
|
26
|
-
Object.defineProperty(exports, "dirname", { enumerable: true, get: function () { return helpers_1.dirname; } });
|
|
27
|
-
Object.defineProperty(exports, "getFileSystem", { enumerable: true, get: function () { return helpers_1.getFileSystem; } });
|
|
28
|
-
Object.defineProperty(exports, "isLocalRelativePath", { enumerable: true, get: function () { return helpers_1.isLocalRelativePath; } });
|
|
29
|
-
Object.defineProperty(exports, "isRoot", { enumerable: true, get: function () { return helpers_1.isRoot; } });
|
|
30
|
-
Object.defineProperty(exports, "isRooted", { enumerable: true, get: function () { return helpers_1.isRooted; } });
|
|
31
|
-
Object.defineProperty(exports, "join", { enumerable: true, get: function () { return helpers_1.join; } });
|
|
32
|
-
Object.defineProperty(exports, "relative", { enumerable: true, get: function () { return helpers_1.relative; } });
|
|
33
|
-
Object.defineProperty(exports, "relativeFrom", { enumerable: true, get: function () { return helpers_1.relativeFrom; } });
|
|
34
|
-
Object.defineProperty(exports, "resolve", { enumerable: true, get: function () { return helpers_1.resolve; } });
|
|
35
|
-
Object.defineProperty(exports, "setFileSystem", { enumerable: true, get: function () { return helpers_1.setFileSystem; } });
|
|
36
|
-
Object.defineProperty(exports, "toRelativeImport", { enumerable: true, get: function () { return helpers_1.toRelativeImport; } });
|
|
37
|
-
var logical_1 = require("@angular/compiler-cli/src/ngtsc/file_system/src/logical");
|
|
38
|
-
Object.defineProperty(exports, "LogicalFileSystem", { enumerable: true, get: function () { return logical_1.LogicalFileSystem; } });
|
|
39
|
-
Object.defineProperty(exports, "LogicalProjectPath", { enumerable: true, get: function () { return logical_1.LogicalProjectPath; } });
|
|
40
|
-
var node_js_file_system_1 = require("@angular/compiler-cli/src/ngtsc/file_system/src/node_js_file_system");
|
|
41
|
-
Object.defineProperty(exports, "NodeJSFileSystem", { enumerable: true, get: function () { return node_js_file_system_1.NodeJSFileSystem; } });
|
|
42
|
-
var util_1 = require("@angular/compiler-cli/src/ngtsc/file_system/src/util");
|
|
43
|
-
Object.defineProperty(exports, "getSourceFileOrError", { enumerable: true, get: function () { return util_1.getSourceFileOrError; } });
|
|
44
|
-
});
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvc3JjL25ndHNjL2ZpbGVfc3lzdGVtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztJQUFBOzs7Ozs7T0FNRztJQUNILCtGQUFzRDtJQUE5QyxrSEFBQSxpQkFBaUIsT0FBQTtJQUN6QixtRkFBb047SUFBNU0sdUdBQUEsWUFBWSxPQUFBO0lBQUUsaUhBQUEsc0JBQXNCLE9BQUE7SUFBRSxtR0FBQSxRQUFRLE9BQUE7SUFBRSxrR0FBQSxPQUFPLE9BQUE7SUFBRSx3R0FBQSxhQUFhLE9BQUE7SUFBRSw4R0FBQSxtQkFBbUIsT0FBQTtJQUFFLGlHQUFBLE1BQU0sT0FBQTtJQUFFLG1HQUFBLFFBQVEsT0FBQTtJQUFFLCtGQUFBLElBQUksT0FBQTtJQUFFLG1HQUFBLFFBQVEsT0FBQTtJQUFFLHVHQUFBLFlBQVksT0FBQTtJQUFFLGtHQUFBLE9BQU8sT0FBQTtJQUFFLHdHQUFBLGFBQWEsT0FBQTtJQUFFLDJHQUFBLGdCQUFnQixPQUFBO0lBQzdMLG1GQUFvRTtJQUE1RCw0R0FBQSxpQkFBaUIsT0FBQTtJQUFFLDZHQUFBLGtCQUFrQixPQUFBO0lBQzdDLDJHQUEyRDtJQUFuRCx1SEFBQSxnQkFBZ0IsT0FBQTtJQUV4Qiw2RUFBZ0Q7SUFBeEMsNEdBQUEsb0JBQW9CLE9BQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmV4cG9ydCB7Tmd0c2NDb21waWxlckhvc3R9IGZyb20gJy4vc3JjL2NvbXBpbGVyX2hvc3QnO1xuZXhwb3J0IHthYnNvbHV0ZUZyb20sIGFic29sdXRlRnJvbVNvdXJjZUZpbGUsIGJhc2VuYW1lLCBkaXJuYW1lLCBnZXRGaWxlU3lzdGVtLCBpc0xvY2FsUmVsYXRpdmVQYXRoLCBpc1Jvb3QsIGlzUm9vdGVkLCBqb2luLCByZWxhdGl2ZSwgcmVsYXRpdmVGcm9tLCByZXNvbHZlLCBzZXRGaWxlU3lzdGVtLCB0b1JlbGF0aXZlSW1wb3J0fSBmcm9tICcuL3NyYy9oZWxwZXJzJztcbmV4cG9ydCB7TG9naWNhbEZpbGVTeXN0ZW0sIExvZ2ljYWxQcm9qZWN0UGF0aH0gZnJvbSAnLi9zcmMvbG9naWNhbCc7XG5leHBvcnQge05vZGVKU0ZpbGVTeXN0ZW19IGZyb20gJy4vc3JjL25vZGVfanNfZmlsZV9zeXN0ZW0nO1xuZXhwb3J0IHtBYnNvbHV0ZUZzUGF0aCwgRmlsZVN0YXRzLCBGaWxlU3lzdGVtLCBQYXRoTWFuaXB1bGF0aW9uLCBQYXRoU2VnbWVudCwgUGF0aFN0cmluZywgUmVhZG9ubHlGaWxlU3lzdGVtfSBmcm9tICcuL3NyYy90eXBlcyc7XG5leHBvcnQge2dldFNvdXJjZUZpbGVPckVycm9yfSBmcm9tICcuL3NyYy91dGlsJztcbiJdfQ==
|
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright Google LLC All Rights Reserved.
|
|
4
|
-
*
|
|
5
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
-
* found in the LICENSE file at https://angular.io/license
|
|
7
|
-
*/
|
|
8
|
-
(function (factory) {
|
|
9
|
-
if (typeof module === "object" && typeof module.exports === "object") {
|
|
10
|
-
var v = factory(require, exports);
|
|
11
|
-
if (v !== undefined) module.exports = v;
|
|
12
|
-
}
|
|
13
|
-
else if (typeof define === "function" && define.amd) {
|
|
14
|
-
define("@angular/compiler-cli/src/ngtsc/file_system/src/compiler_host", ["require", "exports", "os", "typescript", "@angular/compiler-cli/src/ngtsc/file_system/src/helpers"], factory);
|
|
15
|
-
}
|
|
16
|
-
})(function (require, exports) {
|
|
17
|
-
"use strict";
|
|
18
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.NgtscCompilerHost = void 0;
|
|
20
|
-
/// <reference types="node" />
|
|
21
|
-
var os = require("os");
|
|
22
|
-
var ts = require("typescript");
|
|
23
|
-
var helpers_1 = require("@angular/compiler-cli/src/ngtsc/file_system/src/helpers");
|
|
24
|
-
var NgtscCompilerHost = /** @class */ (function () {
|
|
25
|
-
function NgtscCompilerHost(fs, options) {
|
|
26
|
-
if (options === void 0) { options = {}; }
|
|
27
|
-
this.fs = fs;
|
|
28
|
-
this.options = options;
|
|
29
|
-
}
|
|
30
|
-
NgtscCompilerHost.prototype.getSourceFile = function (fileName, languageVersion) {
|
|
31
|
-
var text = this.readFile(fileName);
|
|
32
|
-
return text !== undefined ? ts.createSourceFile(fileName, text, languageVersion, true) :
|
|
33
|
-
undefined;
|
|
34
|
-
};
|
|
35
|
-
NgtscCompilerHost.prototype.getDefaultLibFileName = function (options) {
|
|
36
|
-
return this.fs.join(this.getDefaultLibLocation(), ts.getDefaultLibFileName(options));
|
|
37
|
-
};
|
|
38
|
-
NgtscCompilerHost.prototype.getDefaultLibLocation = function () {
|
|
39
|
-
return this.fs.getDefaultLibLocation();
|
|
40
|
-
};
|
|
41
|
-
NgtscCompilerHost.prototype.writeFile = function (fileName, data, writeByteOrderMark, onError, sourceFiles) {
|
|
42
|
-
var path = (0, helpers_1.absoluteFrom)(fileName);
|
|
43
|
-
this.fs.ensureDir(this.fs.dirname(path));
|
|
44
|
-
this.fs.writeFile(path, data);
|
|
45
|
-
};
|
|
46
|
-
NgtscCompilerHost.prototype.getCurrentDirectory = function () {
|
|
47
|
-
return this.fs.pwd();
|
|
48
|
-
};
|
|
49
|
-
NgtscCompilerHost.prototype.getCanonicalFileName = function (fileName) {
|
|
50
|
-
return this.useCaseSensitiveFileNames() ? fileName : fileName.toLowerCase();
|
|
51
|
-
};
|
|
52
|
-
NgtscCompilerHost.prototype.useCaseSensitiveFileNames = function () {
|
|
53
|
-
return this.fs.isCaseSensitive();
|
|
54
|
-
};
|
|
55
|
-
NgtscCompilerHost.prototype.getNewLine = function () {
|
|
56
|
-
switch (this.options.newLine) {
|
|
57
|
-
case ts.NewLineKind.CarriageReturnLineFeed:
|
|
58
|
-
return '\r\n';
|
|
59
|
-
case ts.NewLineKind.LineFeed:
|
|
60
|
-
return '\n';
|
|
61
|
-
default:
|
|
62
|
-
return os.EOL;
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
NgtscCompilerHost.prototype.fileExists = function (fileName) {
|
|
66
|
-
var absPath = this.fs.resolve(fileName);
|
|
67
|
-
return this.fs.exists(absPath) && this.fs.stat(absPath).isFile();
|
|
68
|
-
};
|
|
69
|
-
NgtscCompilerHost.prototype.readFile = function (fileName) {
|
|
70
|
-
var absPath = this.fs.resolve(fileName);
|
|
71
|
-
if (!this.fileExists(absPath)) {
|
|
72
|
-
return undefined;
|
|
73
|
-
}
|
|
74
|
-
return this.fs.readFile(absPath);
|
|
75
|
-
};
|
|
76
|
-
return NgtscCompilerHost;
|
|
77
|
-
}());
|
|
78
|
-
exports.NgtscCompilerHost = NgtscCompilerHost;
|
|
79
|
-
});
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGlsZXJfaG9zdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvZmlsZV9zeXN0ZW0vc3JjL2NvbXBpbGVyX2hvc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HOzs7Ozs7Ozs7Ozs7O0lBRUgsOEJBQThCO0lBQzlCLHVCQUF5QjtJQUN6QiwrQkFBaUM7SUFFakMsbUZBQXVDO0lBR3ZDO1FBQ0UsMkJBQXNCLEVBQWMsRUFBWSxPQUFnQztZQUFoQyx3QkFBQSxFQUFBLFlBQWdDO1lBQTFELE9BQUUsR0FBRixFQUFFLENBQVk7WUFBWSxZQUFPLEdBQVAsT0FBTyxDQUF5QjtRQUFHLENBQUM7UUFFcEYseUNBQWEsR0FBYixVQUFjLFFBQWdCLEVBQUUsZUFBZ0M7WUFDOUQsSUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNyQyxPQUFPLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUM1RCxTQUFTLENBQUM7UUFDeEMsQ0FBQztRQUVELGlEQUFxQixHQUFyQixVQUFzQixPQUEyQjtZQUMvQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7UUFFRCxpREFBcUIsR0FBckI7WUFDRSxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUN6QyxDQUFDO1FBRUQscUNBQVMsR0FBVCxVQUNJLFFBQWdCLEVBQUUsSUFBWSxFQUFFLGtCQUEyQixFQUMzRCxPQUE4QyxFQUM5QyxXQUEwQztZQUM1QyxJQUFNLElBQUksR0FBRyxJQUFBLHNCQUFZLEVBQUMsUUFBUSxDQUFDLENBQUM7WUFDcEMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUN6QyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDaEMsQ0FBQztRQUVELCtDQUFtQixHQUFuQjtZQUNFLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUN2QixDQUFDO1FBRUQsZ0RBQW9CLEdBQXBCLFVBQXFCLFFBQWdCO1lBQ25DLE9BQU8sSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzlFLENBQUM7UUFFRCxxREFBeUIsR0FBekI7WUFDRSxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDbkMsQ0FBQztRQUVELHNDQUFVLEdBQVY7WUFDRSxRQUFRLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO2dCQUM1QixLQUFLLEVBQUUsQ0FBQyxXQUFXLENBQUMsc0JBQXNCO29CQUN4QyxPQUFPLE1BQU0sQ0FBQztnQkFDaEIsS0FBSyxFQUFFLENBQUMsV0FBVyxDQUFDLFFBQVE7b0JBQzFCLE9BQU8sSUFBSSxDQUFDO2dCQUNkO29CQUNFLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQzthQUNqQjtRQUNILENBQUM7UUFFRCxzQ0FBVSxHQUFWLFVBQVcsUUFBZ0I7WUFDekIsSUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDMUMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNuRSxDQUFDO1FBRUQsb0NBQVEsR0FBUixVQUFTLFFBQWdCO1lBQ3ZCLElBQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUM3QixPQUFPLFNBQVMsQ0FBQzthQUNsQjtZQUNELE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUNILHdCQUFDO0lBQUQsQ0FBQyxBQTdERCxJQTZEQztJQTdEWSw4Q0FBaUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuLy8vIDxyZWZlcmVuY2UgdHlwZXM9XCJub2RlXCIgLz5cbmltcG9ydCAqIGFzIG9zIGZyb20gJ29zJztcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge2Fic29sdXRlRnJvbX0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7RmlsZVN5c3RlbX0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjbGFzcyBOZ3RzY0NvbXBpbGVySG9zdCBpbXBsZW1lbnRzIHRzLkNvbXBpbGVySG9zdCB7XG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBmczogRmlsZVN5c3RlbSwgcHJvdGVjdGVkIG9wdGlvbnM6IHRzLkNvbXBpbGVyT3B0aW9ucyA9IHt9KSB7fVxuXG4gIGdldFNvdXJjZUZpbGUoZmlsZU5hbWU6IHN0cmluZywgbGFuZ3VhZ2VWZXJzaW9uOiB0cy5TY3JpcHRUYXJnZXQpOiB0cy5Tb3VyY2VGaWxlfHVuZGVmaW5lZCB7XG4gICAgY29uc3QgdGV4dCA9IHRoaXMucmVhZEZpbGUoZmlsZU5hbWUpO1xuICAgIHJldHVybiB0ZXh0ICE9PSB1bmRlZmluZWQgPyB0cy5jcmVhdGVTb3VyY2VGaWxlKGZpbGVOYW1lLCB0ZXh0LCBsYW5ndWFnZVZlcnNpb24sIHRydWUpIDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5kZWZpbmVkO1xuICB9XG5cbiAgZ2V0RGVmYXVsdExpYkZpbGVOYW1lKG9wdGlvbnM6IHRzLkNvbXBpbGVyT3B0aW9ucyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZnMuam9pbih0aGlzLmdldERlZmF1bHRMaWJMb2NhdGlvbigpLCB0cy5nZXREZWZhdWx0TGliRmlsZU5hbWUob3B0aW9ucykpO1xuICB9XG5cbiAgZ2V0RGVmYXVsdExpYkxvY2F0aW9uKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuZnMuZ2V0RGVmYXVsdExpYkxvY2F0aW9uKCk7XG4gIH1cblxuICB3cml0ZUZpbGUoXG4gICAgICBmaWxlTmFtZTogc3RyaW5nLCBkYXRhOiBzdHJpbmcsIHdyaXRlQnl0ZU9yZGVyTWFyazogYm9vbGVhbixcbiAgICAgIG9uRXJyb3I6ICgobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkKXx1bmRlZmluZWQsXG4gICAgICBzb3VyY2VGaWxlcz86IFJlYWRvbmx5QXJyYXk8dHMuU291cmNlRmlsZT4pOiB2b2lkIHtcbiAgICBjb25zdCBwYXRoID0gYWJzb2x1dGVGcm9tKGZpbGVOYW1lKTtcbiAgICB0aGlzLmZzLmVuc3VyZURpcih0aGlzLmZzLmRpcm5hbWUocGF0aCkpO1xuICAgIHRoaXMuZnMud3JpdGVGaWxlKHBhdGgsIGRhdGEpO1xuICB9XG5cbiAgZ2V0Q3VycmVudERpcmVjdG9yeSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmZzLnB3ZCgpO1xuICB9XG5cbiAgZ2V0Q2Fub25pY2FsRmlsZU5hbWUoZmlsZU5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudXNlQ2FzZVNlbnNpdGl2ZUZpbGVOYW1lcygpID8gZmlsZU5hbWUgOiBmaWxlTmFtZS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgdXNlQ2FzZVNlbnNpdGl2ZUZpbGVOYW1lcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5mcy5pc0Nhc2VTZW5zaXRpdmUoKTtcbiAgfVxuXG4gIGdldE5ld0xpbmUoKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHRoaXMub3B0aW9ucy5uZXdMaW5lKSB7XG4gICAgICBjYXNlIHRzLk5ld0xpbmVLaW5kLkNhcnJpYWdlUmV0dXJuTGluZUZlZWQ6XG4gICAgICAgIHJldHVybiAnXFxyXFxuJztcbiAgICAgIGNhc2UgdHMuTmV3TGluZUtpbmQuTGluZUZlZWQ6XG4gICAgICAgIHJldHVybiAnXFxuJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBvcy5FT0w7XG4gICAgfVxuICB9XG5cbiAgZmlsZUV4aXN0cyhmaWxlTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgYWJzUGF0aCA9IHRoaXMuZnMucmVzb2x2ZShmaWxlTmFtZSk7XG4gICAgcmV0dXJuIHRoaXMuZnMuZXhpc3RzKGFic1BhdGgpICYmIHRoaXMuZnMuc3RhdChhYnNQYXRoKS5pc0ZpbGUoKTtcbiAgfVxuXG4gIHJlYWRGaWxlKGZpbGVOYW1lOiBzdHJpbmcpOiBzdHJpbmd8dW5kZWZpbmVkIHtcbiAgICBjb25zdCBhYnNQYXRoID0gdGhpcy5mcy5yZXNvbHZlKGZpbGVOYW1lKTtcbiAgICBpZiAoIXRoaXMuZmlsZUV4aXN0cyhhYnNQYXRoKSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZnMucmVhZEZpbGUoYWJzUGF0aCk7XG4gIH1cbn1cbiJdfQ==
|