@angular/compiler-cli 12.2.0-next.1 → 12.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/linker/src/file_linker/emit_scopes/iife_emit_scope.js +1 -1
- package/linker/src/file_linker/partial_linkers/partial_linker_selector.js +2 -2
- package/ngcc/src/dependencies/commonjs_dependency_host.js +1 -1
- package/ngcc/src/dependencies/dts_dependency_host.js +1 -1
- package/ngcc/src/dependencies/esm_dependency_host.js +1 -1
- package/ngcc/src/dependencies/umd_dependency_host.js +1 -1
- package/ngcc/src/entry_point_finder/program_based_entry_point_finder.js +1 -1
- package/ngcc/src/entry_point_finder/targeted_entry_point_finder.js +1 -1
- package/ngcc/src/execution/tasks/queues/parallel_task_queue.js +1 -1
- package/ngcc/src/execution/tasks/queues/serial_task_queue.js +1 -1
- package/ngcc/src/host/commonjs_host.js +1 -1
- package/ngcc/src/host/esm2015_host.js +1 -1
- package/ngcc/src/host/esm5_host.js +1 -1
- package/ngcc/src/host/umd_host.js +1 -1
- package/ngcc/src/packages/build_marker.d.ts +1 -1
- package/ngcc/src/packages/build_marker.js +1 -1
- package/ngcc/src/packages/entry_point_manifest.js +1 -1
- package/ngcc/src/packages/ngcc_compiler_host.js +1 -1
- package/ngcc/src/rendering/commonjs_rendering_formatter.js +1 -1
- package/ngcc/src/rendering/esm5_rendering_formatter.js +1 -1
- package/ngcc/src/rendering/umd_rendering_formatter.js +1 -1
- package/ngcc/src/writing/new_entry_point_file_writer.js +1 -1
- package/package.json +2 -2
- package/src/ngtsc/annotations/src/component.js +1 -1
- package/src/ngtsc/annotations/src/directive.js +1 -1
- package/src/ngtsc/annotations/src/ng_module.js +1 -1
- package/src/ngtsc/annotations/src/pipe.js +1 -1
- package/src/ngtsc/core/src/compiler.js +1 -1
- package/src/ngtsc/cycles/src/analyzer.d.ts +7 -0
- package/src/ngtsc/cycles/src/analyzer.js +89 -4
- package/src/ngtsc/cycles/src/imports.d.ts +1 -6
- package/src/ngtsc/cycles/src/imports.js +5 -23
- package/src/ngtsc/diagnostics/src/error_code.d.ts +5 -0
- package/src/ngtsc/diagnostics/src/error_code.js +6 -1
- package/src/ngtsc/file_system/testing/src/mock_file_system_native.js +1 -1
- package/src/ngtsc/file_system/testing/src/mock_file_system_posix.js +1 -1
- package/src/ngtsc/file_system/testing/src/mock_file_system_windows.js +1 -1
- package/src/ngtsc/incremental/semantic_graph/src/graph.js +1 -1
- package/src/ngtsc/incremental/src/incremental.js +30 -4
- package/src/ngtsc/indexer/src/template.js +1 -1
- package/src/ngtsc/metadata/src/dts.js +4 -5
- package/src/ngtsc/metadata/src/util.d.ts +2 -2
- package/src/ngtsc/metadata/src/util.js +9 -6
- package/src/ngtsc/partial_evaluator/src/builtin.js +1 -1
- package/src/ngtsc/partial_evaluator/src/interpreter.js +6 -5
- package/src/ngtsc/partial_evaluator/src/ts_helpers.js +1 -1
- package/src/ngtsc/program_driver/src/api.d.ts +20 -1
- package/src/ngtsc/program_driver/src/api.js +3 -2
- package/src/ngtsc/program_driver/src/ts_create_program_driver.d.ts +2 -2
- package/src/ngtsc/program_driver/src/ts_create_program_driver.js +7 -3
- package/src/ngtsc/reflection/src/typescript.js +4 -1
- package/src/ngtsc/transform/src/compilation.d.ts +5 -0
- package/src/ngtsc/transform/src/compilation.js +95 -72
- package/src/ngtsc/transform/src/transform.js +1 -1
- package/src/ngtsc/typecheck/api/checker.d.ts +18 -1
- package/src/ngtsc/typecheck/api/checker.js +1 -1
- package/src/ngtsc/typecheck/diagnostics/src/diagnostic.d.ts +5 -3
- package/src/ngtsc/typecheck/diagnostics/src/diagnostic.js +48 -21
- package/src/ngtsc/typecheck/src/checker.d.ts +11 -1
- package/src/ngtsc/typecheck/src/checker.js +20 -5
- package/src/ngtsc/typecheck/src/completion.d.ts +3 -1
- package/src/ngtsc/typecheck/src/completion.js +52 -2
- package/src/ngtsc/typecheck/src/context.d.ts +2 -1
- package/src/ngtsc/typecheck/src/context.js +11 -3
- package/src/ngtsc/typecheck/src/oob.d.ts +7 -1
- package/src/ngtsc/typecheck/src/oob.js +48 -10
- package/src/ngtsc/typecheck/src/template_semantics.js +1 -1
- package/src/ngtsc/typecheck/src/template_symbol_builder.js +21 -1
- package/src/ngtsc/typecheck/src/type_check_block.js +35 -2
- package/src/ngtsc/typecheck/src/type_check_file.js +1 -1
- package/src/ngtsc/typecheck/src/type_emitter.js +25 -6
- package/src/ngtsc/util/src/visitor.d.ts +1 -1
- package/src/ngtsc/util/src/visitor.js +1 -8
- package/src/version.js +1 -1
- package/compiler-cli.externs.js +0 -0
- package/index.mjs +0 -20
- package/linker/babel/babel.externs.js +0 -0
- package/linker/babel/index.mjs +0 -11
- package/linker/babel/src/ast/babel_ast_factory.mjs +0 -137
- package/linker/babel/src/ast/babel_ast_host.mjs +0 -154
- package/linker/babel/src/babel_declaration_scope.mjs +0 -52
- package/linker/babel/src/babel_plugin.mjs +0 -23
- package/linker/babel/src/es2015_linker_plugin.mjs +0 -158
- package/linker/babel/src/linker_plugin_options.mjs +0 -2
- package/linker/index.mjs +0 -7
- package/linker/linker.externs.js +0 -0
- package/linker/src/ast/ast_host.mjs +0 -9
- package/linker/src/ast/ast_value.mjs +0 -256
- package/linker/src/ast/typescript/typescript_ast_host.mjs +0 -156
- package/linker/src/ast/utils.mjs +0 -17
- package/linker/src/fatal_linker_error.mjs +0 -30
- package/linker/src/file_linker/declaration_scope.mjs +0 -9
- package/linker/src/file_linker/emit_scopes/emit_scope.mjs +0 -41
- package/linker/src/file_linker/emit_scopes/iife_emit_scope.mjs +0 -33
- package/linker/src/file_linker/file_linker.mjs +0 -70
- package/linker/src/file_linker/get_source_file.mjs +0 -28
- package/linker/src/file_linker/linker_environment.mjs +0 -23
- package/linker/src/file_linker/linker_options.mjs +0 -16
- package/linker/src/file_linker/needs_linking.mjs +0 -27
- package/linker/src/file_linker/partial_linkers/partial_class_metadata_linker_1.mjs +0 -29
- package/linker/src/file_linker/partial_linkers/partial_component_linker_1.mjs +0 -194
- package/linker/src/file_linker/partial_linkers/partial_directive_linker_1.mjs +0 -137
- package/linker/src/file_linker/partial_linkers/partial_factory_linker_1.mjs +0 -52
- package/linker/src/file_linker/partial_linkers/partial_injectable_linker_1.mjs +0 -56
- package/linker/src/file_linker/partial_linkers/partial_injector_linker_1.mjs +0 -38
- package/linker/src/file_linker/partial_linkers/partial_linker.mjs +0 -2
- package/linker/src/file_linker/partial_linkers/partial_linker_selector.mjs +0 -166
- package/linker/src/file_linker/partial_linkers/partial_ng_module_linker_1.mjs +0 -110
- package/linker/src/file_linker/partial_linkers/partial_pipe_linker_1.mjs +0 -42
- package/linker/src/file_linker/partial_linkers/util.mjs +0 -78
- package/linker/src/file_linker/translator.mjs +0 -23
- package/linker/src/linker_import_generator.mjs +0 -28
- package/ngcc/index.mjs +0 -16
- package/ngcc/main-ivy-ngcc.mjs +0 -12
- package/ngcc/main-ngcc.mjs +0 -32
- package/ngcc/ngcc.externs.js +0 -0
- package/ngcc/src/analysis/decoration_analyzer.mjs +0 -215
- package/ngcc/src/analysis/migration_host.mjs +0 -80
- package/ngcc/src/analysis/module_with_providers_analyzer.mjs +0 -178
- package/ngcc/src/analysis/ngcc_references_registry.mjs +0 -45
- package/ngcc/src/analysis/ngcc_trait_compiler.mjs +0 -70
- package/ngcc/src/analysis/private_declarations_analyzer.mjs +0 -47
- package/ngcc/src/analysis/switch_marker_analyzer.mjs +0 -34
- package/ngcc/src/analysis/types.mjs +0 -2
- package/ngcc/src/analysis/util.mjs +0 -19
- package/ngcc/src/command_line_options.mjs +0 -142
- package/ngcc/src/constants.mjs +0 -10
- package/ngcc/src/dependencies/commonjs_dependency_host.mjs +0 -87
- package/ngcc/src/dependencies/dependency_host.mjs +0 -102
- package/ngcc/src/dependencies/dependency_resolver.mjs +0 -151
- package/ngcc/src/dependencies/dts_dependency_host.mjs +0 -18
- package/ngcc/src/dependencies/esm_dependency_host.mjs +0 -286
- package/ngcc/src/dependencies/module_resolver.mjs +0 -233
- package/ngcc/src/dependencies/umd_dependency_host.mjs +0 -33
- package/ngcc/src/entry_point_finder/directory_walker_entry_point_finder.mjs +0 -42
- package/ngcc/src/entry_point_finder/entry_point_collector.mjs +0 -120
- package/ngcc/src/entry_point_finder/interface.mjs +0 -2
- package/ngcc/src/entry_point_finder/program_based_entry_point_finder.mjs +0 -91
- package/ngcc/src/entry_point_finder/targeted_entry_point_finder.mjs +0 -216
- package/ngcc/src/entry_point_finder/tracing_entry_point_finder.mjs +0 -63
- package/ngcc/src/entry_point_finder/utils.mjs +0 -176
- package/ngcc/src/execution/analyze_entry_points.mjs +0 -130
- package/ngcc/src/execution/api.mjs +0 -2
- package/ngcc/src/execution/cluster/api.mjs +0 -9
- package/ngcc/src/execution/cluster/executor.mjs +0 -27
- package/ngcc/src/execution/cluster/master.mjs +0 -261
- package/ngcc/src/execution/cluster/package_json_updater.mjs +0 -45
- package/ngcc/src/execution/cluster/utils.mjs +0 -59
- package/ngcc/src/execution/cluster/worker.mjs +0 -81
- package/ngcc/src/execution/create_compile_function.mjs +0 -62
- package/ngcc/src/execution/single_process_executor.mjs +0 -57
- package/ngcc/src/execution/tasks/api.mjs +0 -22
- package/ngcc/src/execution/tasks/completion.mjs +0 -61
- package/ngcc/src/execution/tasks/queues/base_task_queue.mjs +0 -78
- package/ngcc/src/execution/tasks/queues/parallel_task_queue.mjs +0 -53
- package/ngcc/src/execution/tasks/queues/serial_task_queue.mjs +0 -29
- package/ngcc/src/execution/tasks/utils.mjs +0 -114
- package/ngcc/src/host/commonjs_host.mjs +0 -220
- package/ngcc/src/host/commonjs_umd_utils.mjs +0 -186
- package/ngcc/src/host/delegating_host.mjs +0 -140
- package/ngcc/src/host/esm2015_host.mjs +0 -2293
- package/ngcc/src/host/esm5_host.mjs +0 -721
- package/ngcc/src/host/ngcc_host.mjs +0 -15
- package/ngcc/src/host/umd_host.mjs +0 -486
- package/ngcc/src/host/utils.mjs +0 -12
- package/ngcc/src/locking/async_locker.mjs +0 -76
- package/ngcc/src/locking/lock_file.mjs +0 -4
- package/ngcc/src/locking/lock_file_with_child_process/index.mjs +0 -78
- package/ngcc/src/locking/lock_file_with_child_process/unlocker.mjs +0 -34
- package/ngcc/src/locking/lock_file_with_child_process/util.mjs +0 -29
- package/ngcc/src/locking/sync_locker.mjs +0 -52
- package/ngcc/src/main.mjs +0 -134
- package/ngcc/src/migrations/migration.mjs +0 -2
- package/ngcc/src/migrations/missing_injectable_migration.mjs +0 -164
- package/ngcc/src/migrations/undecorated_child_migration.mjs +0 -61
- package/ngcc/src/migrations/undecorated_parent_migration.mjs +0 -86
- package/ngcc/src/migrations/utils.mjs +0 -117
- package/ngcc/src/ngcc_options.mjs +0 -119
- package/ngcc/src/packages/build_marker.mjs +0 -84
- package/ngcc/src/packages/bundle_program.mjs +0 -52
- package/ngcc/src/packages/configuration.mjs +0 -255
- package/ngcc/src/packages/entry_point.mjs +0 -239
- package/ngcc/src/packages/entry_point_bundle.mjs +0 -68
- package/ngcc/src/packages/entry_point_manifest.mjs +0 -162
- package/ngcc/src/packages/ngcc_compiler_host.mjs +0 -77
- package/ngcc/src/packages/patch_ts_expando_initializer.mjs +0 -166
- package/ngcc/src/packages/source_file_cache.mjs +0 -187
- package/ngcc/src/packages/transformer.mjs +0 -140
- package/ngcc/src/path_mappings.mjs +0 -13
- package/ngcc/src/rendering/commonjs_rendering_formatter.mjs +0 -65
- package/ngcc/src/rendering/dts_renderer.mjs +0 -139
- package/ngcc/src/rendering/esm5_rendering_formatter.mjs +0 -50
- package/ngcc/src/rendering/esm_rendering_formatter.mjs +0 -251
- package/ngcc/src/rendering/ngcc_import_rewriter.mjs +0 -32
- package/ngcc/src/rendering/renderer.mjs +0 -170
- package/ngcc/src/rendering/rendering_formatter.mjs +0 -2
- package/ngcc/src/rendering/source_maps.mjs +0 -54
- package/ngcc/src/rendering/umd_rendering_formatter.mjs +0 -292
- package/ngcc/src/rendering/utils.mjs +0 -20
- package/ngcc/src/utils.mjs +0 -144
- package/ngcc/src/writing/cleaning/cleaning_strategies.mjs +0 -61
- package/ngcc/src/writing/cleaning/package_cleaner.mjs +0 -67
- package/ngcc/src/writing/cleaning/utils.mjs +0 -16
- package/ngcc/src/writing/file_writer.mjs +0 -2
- package/ngcc/src/writing/in_place_file_writer.mjs +0 -62
- package/ngcc/src/writing/new_entry_point_file_writer.mjs +0 -161
- package/ngcc/src/writing/package_json_updater.mjs +0 -144
- package/src/diagnostics/translate_diagnostics.mjs +0 -47
- package/src/diagnostics/typescript_version.mjs +0 -79
- package/src/extract_i18n.mjs +0 -46
- package/src/language_services.mjs +0 -18
- package/src/main.mjs +0 -185
- package/src/metadata/bundle_index_host.mjs +0 -107
- package/src/metadata/bundler.mjs +0 -556
- package/src/metadata/collector.mjs +0 -701
- package/src/metadata/evaluator.mjs +0 -643
- package/src/metadata/index.mjs +0 -11
- package/src/metadata/index_writer.mjs +0 -44
- package/src/metadata/schema.mjs +0 -102
- package/src/metadata/symbols.mjs +0 -117
- package/src/ngtsc/annotations/annotations.externs.js +0 -0
- package/src/ngtsc/annotations/index.mjs +0 -15
- package/src/ngtsc/annotations/src/api.mjs +0 -9
- package/src/ngtsc/annotations/src/component.mjs +0 -1068
- package/src/ngtsc/annotations/src/diagnostics.mjs +0 -147
- package/src/ngtsc/annotations/src/directive.mjs +0 -692
- package/src/ngtsc/annotations/src/factory.mjs +0 -17
- package/src/ngtsc/annotations/src/injectable.mjs +0 -260
- package/src/ngtsc/annotations/src/metadata.mjs +0 -145
- package/src/ngtsc/annotations/src/ng_module.mjs +0 -565
- package/src/ngtsc/annotations/src/pipe.mjs +0 -151
- package/src/ngtsc/annotations/src/references_registry.mjs +0 -16
- package/src/ngtsc/annotations/src/util.mjs +0 -495
- package/src/ngtsc/core/api/index.mjs +0 -12
- package/src/ngtsc/core/api/src/adapter.mjs +0 -9
- package/src/ngtsc/core/api/src/interfaces.mjs +0 -9
- package/src/ngtsc/core/api/src/options.mjs +0 -9
- package/src/ngtsc/core/api/src/public_options.mjs +0 -9
- package/src/ngtsc/core/api.externs.js +0 -0
- package/src/ngtsc/core/core.externs.js +0 -0
- package/src/ngtsc/core/index.mjs +0 -10
- package/src/ngtsc/core/src/compiler.mjs +0 -917
- package/src/ngtsc/core/src/config.mjs +0 -15
- package/src/ngtsc/core/src/host.mjs +0 -229
- package/src/ngtsc/cycles/cycles.externs.js +0 -0
- package/src/ngtsc/cycles/index.mjs +0 -10
- package/src/ngtsc/cycles/src/analyzer.mjs +0 -60
- package/src/ngtsc/cycles/src/imports.mjs +0 -152
- package/src/ngtsc/diagnostics/diagnostics.externs.js +0 -0
- package/src/ngtsc/diagnostics/index.mjs +0 -11
- package/src/ngtsc/diagnostics/src/error.mjs +0 -51
- package/src/ngtsc/diagnostics/src/error_code.mjs +0 -198
- package/src/ngtsc/diagnostics/src/util.mjs +0 -21
- package/src/ngtsc/entry_point/entry_point.externs.js +0 -0
- package/src/ngtsc/entry_point/index.mjs +0 -12
- package/src/ngtsc/entry_point/src/generator.mjs +0 -35
- package/src/ngtsc/entry_point/src/logic.mjs +0 -35
- package/src/ngtsc/entry_point/src/private_export_checker.mjs +0 -122
- package/src/ngtsc/entry_point/src/reference_graph.mjs +0 -73
- package/src/ngtsc/file_system/file_system.externs.js +0 -0
- package/src/ngtsc/file_system/index.mjs +0 -13
- package/src/ngtsc/file_system/src/compiler_host.mjs +0 -64
- package/src/ngtsc/file_system/src/helpers.mjs +0 -99
- package/src/ngtsc/file_system/src/invalid_file_system.mjs +0 -95
- package/src/ngtsc/file_system/src/logical.mjs +0 -84
- package/src/ngtsc/file_system/src/node_js_file_system.mjs +0 -142
- package/src/ngtsc/file_system/src/types.mjs +0 -9
- package/src/ngtsc/file_system/src/util.mjs +0 -22
- package/src/ngtsc/file_system/testing/index.mjs +0 -13
- package/src/ngtsc/file_system/testing/src/mock_file_system.mjs +0 -293
- package/src/ngtsc/file_system/testing/src/mock_file_system_native.mjs +0 -57
- package/src/ngtsc/file_system/testing/src/mock_file_system_posix.mjs +0 -38
- package/src/ngtsc/file_system/testing/src/mock_file_system_windows.mjs +0 -38
- package/src/ngtsc/file_system/testing/src/test_helper.mjs +0 -108
- package/src/ngtsc/file_system/testing/testing.externs.js +0 -0
- package/src/ngtsc/imports/imports.externs.js +0 -0
- package/src/ngtsc/imports/index.mjs +0 -14
- package/src/ngtsc/imports/src/alias.mjs +0 -137
- package/src/ngtsc/imports/src/core.mjs +0 -78
- package/src/ngtsc/imports/src/default.mjs +0 -135
- package/src/ngtsc/imports/src/emitter.mjs +0 -266
- package/src/ngtsc/imports/src/find_export.mjs +0 -56
- package/src/ngtsc/imports/src/reexport.mjs +0 -9
- package/src/ngtsc/imports/src/references.mjs +0 -137
- package/src/ngtsc/imports/src/resolver.mjs +0 -24
- package/src/ngtsc/incremental/api.externs.js +0 -0
- package/src/ngtsc/incremental/api.mjs +0 -9
- package/src/ngtsc/incremental/incremental.externs.js +0 -0
- package/src/ngtsc/incremental/index.mjs +0 -12
- package/src/ngtsc/incremental/semantic_graph/index.mjs +0 -12
- package/src/ngtsc/incremental/semantic_graph/semantic_graph.externs.js +0 -0
- package/src/ngtsc/incremental/semantic_graph/src/api.mjs +0 -36
- package/src/ngtsc/incremental/semantic_graph/src/graph.mjs +0 -237
- package/src/ngtsc/incremental/semantic_graph/src/type_parameters.mjs +0 -40
- package/src/ngtsc/incremental/semantic_graph/src/util.mjs +0 -69
- package/src/ngtsc/incremental/src/dependency_tracking.mjs +0 -117
- package/src/ngtsc/incremental/src/incremental.mjs +0 -271
- package/src/ngtsc/incremental/src/noop.mjs +0 -13
- package/src/ngtsc/incremental/src/state.mjs +0 -17
- package/src/ngtsc/incremental/src/strategy.mjs +0 -76
- package/src/ngtsc/indexer/index.mjs +0 -11
- package/src/ngtsc/indexer/indexer.externs.js +0 -0
- package/src/ngtsc/indexer/src/api.mjs +0 -30
- package/src/ngtsc/indexer/src/context.mjs +0 -25
- package/src/ngtsc/indexer/src/template.mjs +0 -303
- package/src/ngtsc/indexer/src/transform.mjs +0 -51
- package/src/ngtsc/logging/index.mjs +0 -10
- package/src/ngtsc/logging/logging.externs.js +0 -0
- package/src/ngtsc/logging/src/console_logger.mjs +0 -43
- package/src/ngtsc/logging/src/logger.mjs +0 -15
- package/src/ngtsc/logging/testing/index.mjs +0 -9
- package/src/ngtsc/logging/testing/src/mock_logger.mjs +0 -32
- package/src/ngtsc/logging/testing/testing.externs.js +0 -0
- package/src/ngtsc/metadata/index.mjs +0 -15
- package/src/ngtsc/metadata/metadata.externs.js +0 -0
- package/src/ngtsc/metadata/src/api.mjs +0 -13
- package/src/ngtsc/metadata/src/dts.mjs +0 -143
- package/src/ngtsc/metadata/src/inheritance.mjs +0 -71
- package/src/ngtsc/metadata/src/property_mapping.mjs +0 -136
- package/src/ngtsc/metadata/src/registry.mjs +0 -80
- package/src/ngtsc/metadata/src/resource_registry.mjs +0 -81
- package/src/ngtsc/metadata/src/util.mjs +0 -200
- package/src/ngtsc/partial_evaluator/index.mjs +0 -12
- package/src/ngtsc/partial_evaluator/partial_evaluator.externs.js +0 -0
- package/src/ngtsc/partial_evaluator/src/builtin.mjs +0 -65
- package/src/ngtsc/partial_evaluator/src/diagnostics.mjs +0 -174
- package/src/ngtsc/partial_evaluator/src/dynamic.mjs +0 -94
- package/src/ngtsc/partial_evaluator/src/interface.mjs +0 -27
- package/src/ngtsc/partial_evaluator/src/interpreter.mjs +0 -719
- package/src/ngtsc/partial_evaluator/src/known_declaration.mjs +0 -43
- package/src/ngtsc/partial_evaluator/src/result.mjs +0 -50
- package/src/ngtsc/partial_evaluator/src/ts_helpers.mjs +0 -72
- package/src/ngtsc/perf/index.mjs +0 -11
- package/src/ngtsc/perf/perf.externs.js +0 -0
- package/src/ngtsc/perf/src/api.mjs +0 -278
- package/src/ngtsc/perf/src/clock.mjs +0 -15
- package/src/ngtsc/perf/src/noop.mjs +0 -21
- package/src/ngtsc/perf/src/recorder.mjs +0 -125
- package/src/ngtsc/program.mjs +0 -271
- package/src/ngtsc/program_driver/index.mjs +0 -10
- package/src/ngtsc/program_driver/program_driver.externs.js +0 -0
- package/src/ngtsc/program_driver/src/api.mjs +0 -22
- package/src/ngtsc/program_driver/src/ts_create_program_driver.mjs +0 -164
- package/src/ngtsc/reflection/index.mjs +0 -12
- package/src/ngtsc/reflection/reflection.externs.js +0 -0
- package/src/ngtsc/reflection/src/host.mjs +0 -73
- package/src/ngtsc/reflection/src/type_to_value.mjs +0 -243
- package/src/ngtsc/reflection/src/typescript.mjs +0 -608
- package/src/ngtsc/reflection/src/util.mjs +0 -21
- package/src/ngtsc/resource/index.mjs +0 -9
- package/src/ngtsc/resource/resource.externs.js +0 -0
- package/src/ngtsc/resource/src/loader.mjs +0 -242
- package/src/ngtsc/routing/index.mjs +0 -11
- package/src/ngtsc/routing/routing.externs.js +0 -0
- package/src/ngtsc/routing/src/analyzer.mjs +0 -69
- package/src/ngtsc/routing/src/lazy.mjs +0 -168
- package/src/ngtsc/routing/src/route.mjs +0 -51
- package/src/ngtsc/scope/index.mjs +0 -12
- package/src/ngtsc/scope/scope.externs.js +0 -0
- package/src/ngtsc/scope/src/api.mjs +0 -9
- package/src/ngtsc/scope/src/component_scope.mjs +0 -31
- package/src/ngtsc/scope/src/dependency.mjs +0 -134
- package/src/ngtsc/scope/src/local.mjs +0 -531
- package/src/ngtsc/scope/src/typecheck.mjs +0 -83
- package/src/ngtsc/shims/api.externs.js +0 -0
- package/src/ngtsc/shims/api.mjs +0 -2
- package/src/ngtsc/shims/index.mjs +0 -14
- package/src/ngtsc/shims/shims.externs.js +0 -0
- package/src/ngtsc/shims/src/adapter.mjs +0 -188
- package/src/ngtsc/shims/src/expando.mjs +0 -102
- package/src/ngtsc/shims/src/factory_generator.mjs +0 -265
- package/src/ngtsc/shims/src/reference_tagger.mjs +0 -67
- package/src/ngtsc/shims/src/summary_generator.mjs +0 -64
- package/src/ngtsc/shims/src/util.mjs +0 -26
- package/src/ngtsc/sourcemaps/index.mjs +0 -11
- package/src/ngtsc/sourcemaps/sourcemaps.externs.js +0 -0
- package/src/ngtsc/sourcemaps/src/content_origin.mjs +0 -35
- package/src/ngtsc/sourcemaps/src/raw_source_map.mjs +0 -2
- package/src/ngtsc/sourcemaps/src/segment_marker.mjs +0 -40
- package/src/ngtsc/sourcemaps/src/source_file.mjs +0 -459
- package/src/ngtsc/sourcemaps/src/source_file_loader.mjs +0 -213
- package/src/ngtsc/switch/index.mjs +0 -9
- package/src/ngtsc/switch/src/switch.mjs +0 -115
- package/src/ngtsc/switch/switch.externs.js +0 -0
- package/src/ngtsc/transform/index.mjs +0 -14
- package/src/ngtsc/transform/src/alias.mjs +0 -30
- package/src/ngtsc/transform/src/api.mjs +0 -63
- package/src/ngtsc/transform/src/compilation.mjs +0 -514
- package/src/ngtsc/transform/src/declaration.mjs +0 -182
- package/src/ngtsc/transform/src/trait.mjs +0 -95
- package/src/ngtsc/transform/src/transform.mjs +0 -298
- package/src/ngtsc/transform/src/utils.mjs +0 -57
- package/src/ngtsc/transform/transform.externs.js +0 -0
- package/src/ngtsc/translator/index.mjs +0 -14
- package/src/ngtsc/translator/src/api/ast_factory.mjs +0 -9
- package/src/ngtsc/translator/src/api/import_generator.mjs +0 -9
- package/src/ngtsc/translator/src/context.mjs +0 -24
- package/src/ngtsc/translator/src/import_manager.mjs +0 -48
- package/src/ngtsc/translator/src/translator.mjs +0 -317
- package/src/ngtsc/translator/src/type_translator.mjs +0 -204
- package/src/ngtsc/translator/src/typescript_ast_factory.mjs +0 -211
- package/src/ngtsc/translator/src/typescript_translator.mjs +0 -17
- package/src/ngtsc/translator/translator.externs.js +0 -0
- package/src/ngtsc/tsc_plugin.mjs +0 -98
- package/src/ngtsc/typecheck/api/api.externs.js +0 -0
- package/src/ngtsc/typecheck/api/api.mjs +0 -9
- package/src/ngtsc/typecheck/api/checker.mjs +0 -31
- package/src/ngtsc/typecheck/api/completion.mjs +0 -16
- package/src/ngtsc/typecheck/api/context.mjs +0 -9
- package/src/ngtsc/typecheck/api/index.mjs +0 -14
- package/src/ngtsc/typecheck/api/scope.mjs +0 -9
- package/src/ngtsc/typecheck/api/symbols.mjs +0 -22
- package/src/ngtsc/typecheck/diagnostics/diagnostics.externs.js +0 -0
- package/src/ngtsc/typecheck/diagnostics/index.mjs +0 -10
- package/src/ngtsc/typecheck/diagnostics/src/diagnostic.mjs +0 -99
- package/src/ngtsc/typecheck/diagnostics/src/id.mjs +0 -23
- package/src/ngtsc/typecheck/index.mjs +0 -12
- package/src/ngtsc/typecheck/src/checker.mjs +0 -591
- package/src/ngtsc/typecheck/src/comments.mjs +0 -159
- package/src/ngtsc/typecheck/src/completion.mjs +0 -155
- package/src/ngtsc/typecheck/src/context.mjs +0 -350
- package/src/ngtsc/typecheck/src/diagnostics.mjs +0 -95
- package/src/ngtsc/typecheck/src/dom.mjs +0 -68
- package/src/ngtsc/typecheck/src/environment.mjs +0 -146
- package/src/ngtsc/typecheck/src/expression.mjs +0 -412
- package/src/ngtsc/typecheck/src/line_mappings.mjs +0 -60
- package/src/ngtsc/typecheck/src/oob.mjs +0 -112
- package/src/ngtsc/typecheck/src/shim.mjs +0 -37
- package/src/ngtsc/typecheck/src/source.mjs +0 -74
- package/src/ngtsc/typecheck/src/tcb_util.mjs +0 -135
- package/src/ngtsc/typecheck/src/template_semantics.mjs +0 -34
- package/src/ngtsc/typecheck/src/template_symbol_builder.mjs +0 -485
- package/src/ngtsc/typecheck/src/ts_util.mjs +0 -157
- package/src/ngtsc/typecheck/src/type_check_block.mjs +0 -1770
- package/src/ngtsc/typecheck/src/type_check_file.mjs +0 -65
- package/src/ngtsc/typecheck/src/type_constructor.mjs +0 -227
- package/src/ngtsc/typecheck/src/type_emitter.mjs +0 -127
- package/src/ngtsc/typecheck/src/type_parameter_emitter.mjs +0 -93
- package/src/ngtsc/typecheck/typecheck.externs.js +0 -0
- package/src/ngtsc/util/src/path.mjs +0 -18
- package/src/ngtsc/util/src/typescript.mjs +0 -143
- package/src/ngtsc/util/src/visitor.mjs +0 -107
- package/src/ngtsc/util/util.externs.js +0 -0
- package/src/ngtsc/xi18n/index.mjs +0 -9
- package/src/ngtsc/xi18n/src/context.mjs +0 -9
- package/src/ngtsc/xi18n/xi18n.externs.js +0 -0
- package/src/perform_compile.mjs +0 -275
- package/src/perform_watch.mjs +0 -247
- package/src/tooling.mjs +0 -32
- package/src/transformers/api.mjs +0 -27
- package/src/transformers/compiler_host.mjs +0 -593
- package/src/transformers/downlevel_decorators_transform.mjs +0 -507
- package/src/transformers/entry_points.mjs +0 -10
- package/src/transformers/i18n.mjs +0 -59
- package/src/transformers/inline_resources.mjs +0 -269
- package/src/transformers/lower_expressions.mjs +0 -336
- package/src/transformers/metadata_cache.mjs +0 -53
- package/src/transformers/metadata_reader.mjs +0 -104
- package/src/transformers/node_emitter.mjs +0 -606
- package/src/transformers/node_emitter_transform.mjs +0 -78
- package/src/transformers/patch_alias_reference_resolution.mjs +0 -109
- package/src/transformers/program.mjs +0 -887
- package/src/transformers/r3_metadata_transform.mjs +0 -46
- package/src/transformers/r3_transform.mjs +0 -29
- package/src/transformers/util.mjs +0 -89
- package/src/typescript_support.mjs +0 -57
- package/src/version.mjs +0 -15
|
@@ -112,4 +112,4 @@
|
|
|
112
112
|
}
|
|
113
113
|
exports.typeCheckFilePath = typeCheckFilePath;
|
|
114
114
|
});
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZV9jaGVja19maWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy90eXBlY2hlY2svc3JjL3R5cGVfY2hlY2tfZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0lBQUE7Ozs7OztPQU1HO0lBQ0gsK0JBQWlDO0lBRWpDLDJFQUF1RDtJQUN2RCxtRUFBOEU7SUFFOUUseUVBQStDO0lBSS9DLHlGQUEwQztJQUUxQyxtR0FBcUY7SUFJckY7Ozs7Ozs7T0FPRztJQUNIO1FBQW1DLHlDQUFXO1FBSTVDLHVCQUNhLFFBQXdCLEVBQUUsTUFBMEIsRUFBRSxVQUE0QixFQUMzRixTQUF5QixFQUFFLFlBQTJEO1lBRjFGLFlBR0Usa0JBQ0ksTUFBTSxFQUFFLElBQUksMEJBQWEsQ0FBQyxJQUFJLDRCQUFrQixFQUFFLEVBQUUsR0FBRyxDQUFDLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFDL0UsRUFBRSxDQUFDLGdCQUFnQixDQUNmLFlBQVksQ0FBQyxvQkFBb0IsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsU0FDeEY7WUFOWSxjQUFRLEdBQVIsUUFBUSxDQUFnQjtZQUo3QixlQUFTLEdBQUcsQ0FBQyxDQUFDO1lBQ2QsbUJBQWEsR0FBbUIsRUFBRSxDQUFDOztRQVMzQyxDQUFDO1FBRUQseUNBQWlCLEdBQWpCLFVBQ0ksR0FBcUQsRUFBRSxJQUE0QixFQUNuRixnQkFBa0MsRUFBRSxXQUF3QyxFQUM1RSxzQkFBaUQ7WUFDbkQsSUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFNBQU8sSUFBSSxDQUFDLFNBQVMsRUFBSSxDQUFDLENBQUM7WUFDNUQsSUFBTSxFQUFFLEdBQUcseUNBQXNCLENBQzdCLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsc0JBQXNCLENBQUMsQ0FBQztZQUNsRixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM5QixDQUFDO1FBRUQsOEJBQU0sR0FBTixVQUFPLGNBQXVCOztZQUM1QixJQUFJLE1BQU0sR0FBVyxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztpQkFDdEQsR0FBRyxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsaUJBQWUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLGVBQVUsQ0FBQyxDQUFDLFNBQVMsT0FBSSxFQUF4RCxDQUF3RCxDQUFDO2lCQUNsRSxJQUFJLENBQUMsSUFBSSxDQUFDO2dCQUNoQyxNQUFNLENBQUM7WUFDWCxJQUFNLE9BQU8sR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUMsY0FBYyxnQkFBQSxFQUFDLENBQUMsQ0FBQztZQUNuRCxNQUFNLElBQUksSUFBSSxDQUFDOztnQkFDZixLQUFtQixJQUFBLEtBQUEsaUJBQUEsSUFBSSxDQUFDLGtCQUFrQixDQUFBLGdCQUFBLDRCQUFFO29CQUF2QyxJQUFNLElBQUksV0FBQTtvQkFDYixNQUFNLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQztpQkFDckY7Ozs7Ozs7Ozs7Z0JBQ0QsS0FBbUIsSUFBQSxLQUFBLGlCQUFBLElBQUksQ0FBQyxrQkFBa0IsQ0FBQSxnQkFBQSw0QkFBRTtvQkFBdkMsSUFBTSxJQUFJLFdBQUE7b0JBQ2IsTUFBTSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7aUJBQ3JGOzs7Ozs7Ozs7WUFDRCxNQUFNLElBQUksSUFBSSxDQUFDOztnQkFDZixLQUFtQixJQUFBLEtBQUEsaUJBQUEsSUFBSSxDQUFDLGFBQWEsQ0FBQSxnQkFBQSw0QkFBRTtvQkFBbEMsSUFBTSxJQUFJLFdBQUE7b0JBQ2IsTUFBTSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7aUJBQ3JGOzs7Ozs7Ozs7WUFFRCw4RkFBOEY7WUFDOUYsOEZBQThGO1lBQzlGLG9EQUFvRDtZQUNwRCxNQUFNLElBQUksc0NBQXNDLENBQUM7WUFFakQsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUVRLDRDQUFvQixHQUE3QjtZQUNFLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztRQUNILG9CQUFDO0lBQUQsQ0FBQyxBQXBERCxDQUFtQyx5QkFBVyxHQW9EN0M7SUFwRFksc0NBQWE7SUFzRDFCLFNBQWdCLGlCQUFpQixDQUFDLFFBQTBCO1FBQzFELElBQU0sUUFBUSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSyxPQUFBLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBbkIsQ0FBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVFLE9BQU8sa0JBQUksQ0FBQyxRQUFRLEVBQUUscUJBQXFCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBSEQsOENBR0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuXG5pbXBvcnQge0Fic29sdXRlRnNQYXRoLCBqb2lufSBmcm9tICcuLi8uLi9maWxlX3N5c3RlbSc7XG5pbXBvcnQge05vb3BJbXBvcnRSZXdyaXRlciwgUmVmZXJlbmNlLCBSZWZlcmVuY2VFbWl0dGVyfSBmcm9tICcuLi8uLi9pbXBvcnRzJztcbmltcG9ydCB7Q2xhc3NEZWNsYXJhdGlvbiwgUmVmbGVjdGlvbkhvc3R9IGZyb20gJy4uLy4uL3JlZmxlY3Rpb24nO1xuaW1wb3J0IHtJbXBvcnRNYW5hZ2VyfSBmcm9tICcuLi8uLi90cmFuc2xhdG9yJztcbmltcG9ydCB7VHlwZUNoZWNrQmxvY2tNZXRhZGF0YSwgVHlwZUNoZWNraW5nQ29uZmlnfSBmcm9tICcuLi9hcGknO1xuXG5pbXBvcnQge0RvbVNjaGVtYUNoZWNrZXJ9IGZyb20gJy4vZG9tJztcbmltcG9ydCB7RW52aXJvbm1lbnR9IGZyb20gJy4vZW52aXJvbm1lbnQnO1xuaW1wb3J0IHtPdXRPZkJhbmREaWFnbm9zdGljUmVjb3JkZXJ9IGZyb20gJy4vb29iJztcbmltcG9ydCB7Z2VuZXJhdGVUeXBlQ2hlY2tCbG9jaywgVGNiR2VuZXJpY0NvbnRleHRCZWhhdmlvcn0gZnJvbSAnLi90eXBlX2NoZWNrX2Jsb2NrJztcblxuXG5cbi8qKlxuICogQW4gYEVudmlyb25tZW50YCByZXByZXNlbnRpbmcgdGhlIHNpbmdsZSB0eXBlLWNoZWNraW5nIGZpbGUgaW50byB3aGljaCBtb3N0IChpZiBub3QgYWxsKSBUeXBlXG4gKiBDaGVjayBCbG9ja3MgKFRDQnMpIHdpbGwgYmUgZ2VuZXJhdGVkLlxuICpcbiAqIFRoZSBgVHlwZUNoZWNrRmlsZWAgaG9zdHMgbXVsdGlwbGUgVENCcyBhbmQgYWxsb3dzIHRoZSBzaGFyaW5nIG9mIGRlY2xhcmF0aW9ucyAoZS5nLiB0eXBlXG4gKiBjb25zdHJ1Y3RvcnMpIGJldHdlZW4gdGhlbS4gUmF0aGVyIHRoYW4gcmV0dXJuIHN1Y2ggZGVjbGFyYXRpb25zIHZpYSBgZ2V0UHJlbHVkZVN0YXRlbWVudHMoKWAsIGl0XG4gKiBob2lzdHMgdGhlbSB0byB0aGUgdG9wIG9mIHRoZSBnZW5lcmF0ZWQgYHRzLlNvdXJjZUZpbGVgLlxuICovXG5leHBvcnQgY2xhc3MgVHlwZUNoZWNrRmlsZSBleHRlbmRzIEVudmlyb25tZW50IHtcbiAgcHJpdmF0ZSBuZXh0VGNiSWQgPSAxO1xuICBwcml2YXRlIHRjYlN0YXRlbWVudHM6IHRzLlN0YXRlbWVudFtdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICByZWFkb25seSBmaWxlTmFtZTogQWJzb2x1dGVGc1BhdGgsIGNvbmZpZzogVHlwZUNoZWNraW5nQ29uZmlnLCByZWZFbWl0dGVyOiBSZWZlcmVuY2VFbWl0dGVyLFxuICAgICAgcmVmbGVjdG9yOiBSZWZsZWN0aW9uSG9zdCwgY29tcGlsZXJIb3N0OiBQaWNrPHRzLkNvbXBpbGVySG9zdCwgJ2dldENhbm9uaWNhbEZpbGVOYW1lJz4pIHtcbiAgICBzdXBlcihcbiAgICAgICAgY29uZmlnLCBuZXcgSW1wb3J0TWFuYWdlcihuZXcgTm9vcEltcG9ydFJld3JpdGVyKCksICdpJyksIHJlZkVtaXR0ZXIsIHJlZmxlY3RvcixcbiAgICAgICAgdHMuY3JlYXRlU291cmNlRmlsZShcbiAgICAgICAgICAgIGNvbXBpbGVySG9zdC5nZXRDYW5vbmljYWxGaWxlTmFtZShmaWxlTmFtZSksICcnLCB0cy5TY3JpcHRUYXJnZXQuTGF0ZXN0LCB0cnVlKSk7XG4gIH1cblxuICBhZGRUeXBlQ2hlY2tCbG9jayhcbiAgICAgIHJlZjogUmVmZXJlbmNlPENsYXNzRGVjbGFyYXRpb248dHMuQ2xhc3NEZWNsYXJhdGlvbj4+LCBtZXRhOiBUeXBlQ2hlY2tCbG9ja01ldGFkYXRhLFxuICAgICAgZG9tU2NoZW1hQ2hlY2tlcjogRG9tU2NoZW1hQ2hlY2tlciwgb29iUmVjb3JkZXI6IE91dE9mQmFuZERpYWdub3N0aWNSZWNvcmRlcixcbiAgICAgIGdlbmVyaWNDb250ZXh0QmVoYXZpb3I6IFRjYkdlbmVyaWNDb250ZXh0QmVoYXZpb3IpOiB2b2lkIHtcbiAgICBjb25zdCBmbklkID0gdHMuY3JlYXRlSWRlbnRpZmllcihgX3RjYiR7dGhpcy5uZXh0VGNiSWQrK31gKTtcbiAgICBjb25zdCBmbiA9IGdlbmVyYXRlVHlwZUNoZWNrQmxvY2soXG4gICAgICAgIHRoaXMsIHJlZiwgZm5JZCwgbWV0YSwgZG9tU2NoZW1hQ2hlY2tlciwgb29iUmVjb3JkZXIsIGdlbmVyaWNDb250ZXh0QmVoYXZpb3IpO1xuICAgIHRoaXMudGNiU3RhdGVtZW50cy5wdXNoKGZuKTtcbiAgfVxuXG4gIHJlbmRlcihyZW1vdmVDb21tZW50czogYm9vbGVhbik6IHN0cmluZyB7XG4gICAgbGV0IHNvdXJjZTogc3RyaW5nID0gdGhpcy5pbXBvcnRNYW5hZ2VyLmdldEFsbEltcG9ydHModGhpcy5jb250ZXh0RmlsZS5maWxlTmFtZSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1hcChpID0+IGBpbXBvcnQgKiBhcyAke2kucXVhbGlmaWVyLnRleHR9IGZyb20gJyR7aS5zcGVjaWZpZXJ9JztgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuam9pbignXFxuJykgK1xuICAgICAgICAnXFxuXFxuJztcbiAgICBjb25zdCBwcmludGVyID0gdHMuY3JlYXRlUHJpbnRlcih7cmVtb3ZlQ29tbWVudHN9KTtcbiAgICBzb3VyY2UgKz0gJ1xcbic7XG4gICAgZm9yIChjb25zdCBzdG10IG9mIHRoaXMucGlwZUluc3RTdGF0ZW1lbnRzKSB7XG4gICAgICBzb3VyY2UgKz0gcHJpbnRlci5wcmludE5vZGUodHMuRW1pdEhpbnQuVW5zcGVjaWZpZWQsIHN0bXQsIHRoaXMuY29udGV4dEZpbGUpICsgJ1xcbic7XG4gICAgfVxuICAgIGZvciAoY29uc3Qgc3RtdCBvZiB0aGlzLnR5cGVDdG9yU3RhdGVtZW50cykge1xuICAgICAgc291cmNlICs9IHByaW50ZXIucHJpbnROb2RlKHRzLkVtaXRIaW50LlVuc3BlY2lmaWVkLCBzdG10LCB0aGlzLmNvbnRleHRGaWxlKSArICdcXG4nO1xuICAgIH1cbiAgICBzb3VyY2UgKz0gJ1xcbic7XG4gICAgZm9yIChjb25zdCBzdG10IG9mIHRoaXMudGNiU3RhdGVtZW50cykge1xuICAgICAgc291cmNlICs9IHByaW50ZXIucHJpbnROb2RlKHRzLkVtaXRIaW50LlVuc3BlY2lmaWVkLCBzdG10LCB0aGlzLmNvbnRleHRGaWxlKSArICdcXG4nO1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSB0aGUgdGVtcGxhdGUgdHlwZS1jaGVja2luZyBmaWxlIGlzIGFuIEVTIG1vZHVsZS4gT3RoZXJ3aXNlLCBpdCdzIGludGVycHJldGVkIGFzIHNvbWVcbiAgICAvLyBraW5kIG9mIGdsb2JhbCBuYW1lc3BhY2UgaW4gVFMsIHdoaWNoIGZvcmNlcyBhIGZ1bGwgcmUtdHlwZWNoZWNrIG9mIHRoZSB1c2VyJ3MgcHJvZ3JhbSB0aGF0XG4gICAgLy8gaXMgc29tZWhvdyBtb3JlIGV4cGVuc2l2ZSB0aGFuIHRoZSBpbml0aWFsIHBhcnNlLlxuICAgIHNvdXJjZSArPSAnXFxuZXhwb3J0IGNvbnN0IElTX0FfTU9EVUxFID0gdHJ1ZTtcXG4nO1xuXG4gICAgcmV0dXJuIHNvdXJjZTtcbiAgfVxuXG4gIG92ZXJyaWRlIGdldFByZWx1ZGVTdGF0ZW1lbnRzKCk6IHRzLlN0YXRlbWVudFtdIHtcbiAgICByZXR1cm4gW107XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHR5cGVDaGVja0ZpbGVQYXRoKHJvb3REaXJzOiBBYnNvbHV0ZUZzUGF0aFtdKTogQWJzb2x1dGVGc1BhdGgge1xuICBjb25zdCBzaG9ydGVzdCA9IHJvb3REaXJzLmNvbmNhdChbXSkuc29ydCgoYSwgYikgPT4gYS5sZW5ndGggLSBiLmxlbmd0aClbMF07XG4gIHJldHVybiBqb2luKHNob3J0ZXN0LCAnX19uZ190eXBlY2hlY2tfXy50cycpO1xufVxuIl19
|
|
@@ -34,12 +34,17 @@
|
|
|
34
34
|
return visitNode(type) !== INELIGIBLE;
|
|
35
35
|
}
|
|
36
36
|
// To determine whether a type can be emitted, we have to recursively look through all type nodes.
|
|
37
|
-
// If
|
|
38
|
-
//
|
|
39
|
-
//
|
|
40
|
-
//
|
|
41
|
-
//
|
|
37
|
+
// If an unsupported type node is found at any position within the type, then the `INELIGIBLE`
|
|
38
|
+
// constant is returned to stop the recursive walk as the type as a whole cannot be emitted in
|
|
39
|
+
// that case. Otherwise, the result of visiting all child nodes determines the result. If no
|
|
40
|
+
// ineligible type reference node is found then the walk returns `undefined`, indicating that
|
|
41
|
+
// no type node was visited that could not be emitted.
|
|
42
42
|
function visitNode(node) {
|
|
43
|
+
// `import('module')` type nodes are not supported, as it may require rewriting the module
|
|
44
|
+
// specifier which is currently not done.
|
|
45
|
+
if (ts.isImportTypeNode(node)) {
|
|
46
|
+
return INELIGIBLE;
|
|
47
|
+
}
|
|
43
48
|
// Emitting a type reference node in a different context requires that an import for the type
|
|
44
49
|
// can be created. If a type reference node cannot be emitted, `INELIGIBLE` is returned to stop
|
|
45
50
|
// the walk.
|
|
@@ -104,9 +109,23 @@
|
|
|
104
109
|
var _this = this;
|
|
105
110
|
var typeReferenceTransformer = function (context) {
|
|
106
111
|
var visitNode = function (node) {
|
|
112
|
+
if (ts.isImportTypeNode(node)) {
|
|
113
|
+
throw new Error('Unable to emit import type');
|
|
114
|
+
}
|
|
107
115
|
if (ts.isTypeReferenceNode(node)) {
|
|
108
116
|
return _this.emitTypeReference(node);
|
|
109
117
|
}
|
|
118
|
+
else if (ts.isLiteralExpression(node)) {
|
|
119
|
+
// TypeScript would typically take the emit text for a literal expression from the source
|
|
120
|
+
// file itself. As the type node is being emitted into a different file, however,
|
|
121
|
+
// TypeScript would extract the literal text from the wrong source file. To mitigate this
|
|
122
|
+
// issue the literal is cloned and explicitly marked as synthesized by setting its text
|
|
123
|
+
// range to a negative range, forcing TypeScript to determine the node's literal text from
|
|
124
|
+
// the synthesized node's text instead of the incorrect source file.
|
|
125
|
+
var clone = ts.getMutableClone(node);
|
|
126
|
+
ts.setTextRange(clone, { pos: -1, end: -1 });
|
|
127
|
+
return clone;
|
|
128
|
+
}
|
|
110
129
|
else {
|
|
111
130
|
return ts.visitEachChild(node, visitNode, context);
|
|
112
131
|
}
|
|
@@ -142,4 +161,4 @@
|
|
|
142
161
|
}());
|
|
143
162
|
exports.TypeEmitter = TypeEmitter;
|
|
144
163
|
});
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZV9lbWl0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy90eXBlY2hlY2svc3JjL3R5cGVfZW1pdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFBQTs7Ozs7O09BTUc7SUFDSCwrQkFBaUM7SUFDakMsbUVBQXdDO0lBc0J4QyxJQUFNLFVBQVUsR0FBZSxFQUFnQixDQUFDO0lBRWhEOzs7Ozs7O09BT0c7SUFDSCxTQUFnQixXQUFXLENBQUMsSUFBaUIsRUFBRSxRQUErQjtRQUM1RSxPQUFPLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRS9CLFNBQVMsaUJBQWlCLENBQUMsSUFBaUI7WUFDMUMsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxDQUFDO1FBQ3hDLENBQUM7UUFFRCxrR0FBa0c7UUFDbEcsNEZBQTRGO1FBQzVGLDhGQUE4RjtRQUM5RixrR0FBa0c7UUFDbEcsMkZBQTJGO1FBQzNGLDJGQUEyRjtRQUMzRixTQUFTLFNBQVMsQ0FBQyxJQUFhO1lBQzlCLDZGQUE2RjtZQUM3RiwrRkFBK0Y7WUFDL0YsWUFBWTtZQUNaLElBQUksRUFBRSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQy9ELE9BQU8sVUFBVSxDQUFDO2FBQ25CO2lCQUFNO2dCQUNMLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7YUFDekM7UUFDSCxDQUFDO1FBRUQsU0FBUyxvQkFBb0IsQ0FBQyxJQUEwQjtZQUN0RCxJQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFakMsNERBQTREO1lBQzVELElBQUksU0FBUyxLQUFLLElBQUksRUFBRTtnQkFDdEIsT0FBTyxL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IEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xuaW1wb3J0IHtSZWZlcmVuY2V9IGZyb20gJy4uLy4uL2ltcG9ydHMnO1xuXG4vKipcbiAqIEEgcmVzb2x2ZWQgdHlwZSByZWZlcmVuY2UgY2FuIGVpdGhlciBiZSBhIGBSZWZlcmVuY2VgLCB0aGUgb3JpZ2luYWwgYHRzLlR5cGVSZWZlcmVuY2VOb2RlYCBpdHNlbGZcbiAqIG9yIG51bGwuIEEgdmFsdWUgb2YgbnVsbCBpbmRpY2F0ZXMgdGhhdCBubyByZWZlcmVuY2UgY291bGQgYmUgcmVzb2x2ZWQgb3IgdGhhdCB0aGUgcmVmZXJlbmNlIGNhblxuICogbm90IGJlIGVtaXR0ZWQuXG4gKi9cbmV4cG9ydCB0eXBlIFJlc29sdmVkVHlwZVJlZmVyZW5jZSA9IFJlZmVyZW5jZXx0cy5UeXBlUmVmZXJlbmNlTm9kZXxudWxsO1xuXG4vKipcbiAqIEEgdHlwZSByZWZlcmVuY2UgcmVzb2x2ZXIgZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIGZpbmRpbmcgdGhlIGRlY2xhcmF0aW9uIG9mIHRoZSB0eXBlXG4gKiByZWZlcmVuY2UgYW5kIHZlcmlmeWluZyB3aGV0aGVyIGl0IGNhbiBiZSBlbWl0dGVkLlxuICovXG5leHBvcnQgdHlwZSBUeXBlUmVmZXJlbmNlUmVzb2x2ZXIgPSAodHlwZTogdHMuVHlwZVJlZmVyZW5jZU5vZGUpID0+IFJlc29sdmVkVHlwZVJlZmVyZW5jZTtcblxuLyoqXG4gKiBBIG1hcmtlciB0byBpbmRpY2F0ZSB0aGF0IGEgdHlwZSByZWZlcmVuY2UgaXMgaW5lbGlnaWJsZSBmb3IgZW1pdHRpbmcuIFRoaXMgbmVlZHMgdG8gYmUgdHJ1dGh5XG4gKiBhcyBpdCdzIHJldHVybmVkIGZyb20gYHRzLmZvckVhY2hDaGlsZGAsIHdoaWNoIG9ubHkgcmV0dXJucyB0cnV0aHkgdmFsdWVzLlxuICovXG50eXBlIElORUxJR0lCTEUgPSB7XG4gIF9fYnJhbmQ6ICdpbmVsaWdpYmxlJztcbn07XG5jb25zdCBJTkVMSUdJQkxFOiBJTkVMSUdJQkxFID0ge30gYXMgSU5FTElHSUJMRTtcblxuLyoqXG4gKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIHByb3ZpZGVkIHR5cGUgY2FuIGJlIGVtaXR0ZWQsIHdoaWNoIG1lYW5zIHRoYXQgaXQgY2FuIGJlIHNhZmVseSBlbWl0dGVkXG4gKiBpbnRvIGEgZGlmZmVyZW50IGxvY2F0aW9uLlxuICpcbiAqIElmIHRoaXMgZnVuY3Rpb24gcmV0dXJucyB0cnVlLCBhIGBUeXBlRW1pdHRlcmAgc2hvdWxkIGJlIGFibGUgdG8gc3VjY2VlZC4gVmljZSB2ZXJzYSwgaWYgdGhpc1xuICogZnVuY3Rpb24gcmV0dXJucyBmYWxzZSwgdGhlbiB1c2luZyB0aGUgYFR5cGVFbWl0dGVyYCBzaG91bGQgbm90IGJlIGF0dGVtcHRlZCBhcyBpdCBpcyBrbm93biB0b1xuICogZmFpbC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbkVtaXRUeXBlKHR5cGU6IHRzLlR5cGVOb2RlLCByZXNvbHZlcjogVHlwZVJlZmVyZW5jZVJlc29sdmVyKTogYm9vbGVhbiB7XG4gIHJldHVybiBjYW5FbWl0VHlwZVdvcmtlcih0eXBlKTtcblxuICBmdW5jdGlvbiBjYW5FbWl0VHlwZVdvcmtlcih0eXBlOiB0cy5UeXBlTm9kZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB2aXNpdE5vZGUodHlwZSkgIT09IElORUxJR0lCTEU7XG4gIH1cblxuICAvLyBUbyBkZXRlcm1pbmUgd2hldGhlciBhIHR5cGUgY2FuIGJlIGVtaXR0ZWQsIHdlIGhhdmUgdG8gcmVjdXJzaXZlbHkgbG9vayB0aHJvdWdoIGFsbCB0eXBlIG5vZGVzLlxuICAvLyBJZiBhIHR5cGUgcmVmZXJlbmNlIG5vZGUgaXMgZm91bmQgYXQgYW55IHBvc2l0aW9uIHdpdGhpbiB0aGUgdHlwZSBhbmQgdGhhdCB0eXBlIHJlZmVyZW5jZVxuICAvLyBjYW5ub3QgYmUgZW1pdHRlZCwgdGhlbiB0aGUgYElORUxJR0lCTEVgIGNvbnN0YW50IGlzIHJldHVybmVkIHRvIHN0b3AgdGhlIHJlY3Vyc2l2ZSB3YWxrIGFzXG4gIC8vIHRoZSB0eXBlIGFzIGEgd2hvbGUgY2Fubm90IGJlIGVtaXR0ZWQgaW4gdGhhdCBjYXNlLiBPdGhlcndpc2UsIHRoZSByZXN1bHQgb2YgdmlzaXRpbmcgYWxsIGNoaWxkXG4gIC8vIG5vZGVzIGRldGVybWluZXMgdGhlIHJlc3VsdC4gSWYgbm8gaW5lbGlnaWJsZSB0eXBlIHJlZmVyZW5jZSBub2RlIGlzIGZvdW5kIHRoZW4gdGhlIHdhbGtcbiAgLy8gcmV0dXJucyBgdW5kZWZpbmVkYCwgaW5kaWNhdGluZyB0aGF0IG5vIHR5cGUgbm9kZSB3YXMgdmlzaXRlZCB0aGF0IGNvdWxkIG5vdCBiZSBlbWl0dGVkLlxuICBmdW5jdGlvbiB2aXNpdE5vZGUobm9kZTogdHMuTm9kZSk6IElORUxJR0lCTEV8dW5kZWZpbmVkIHtcbiAgICAvLyBFbWl0dGluZyBhIHR5cGUgcmVmZXJlbmNlIG5vZGUgaW4gYSBkaWZmZXJlbnQgY29udGV4dCByZXF1aXJlcyB0aGF0IGFuIGltcG9ydCBmb3IgdGhlIHR5cGVcbiAgICAvLyBjYW4gYmUgY3JlYXRlZC4gSWYgYSB0eXBlIHJlZmVyZW5jZSBub2RlIGNhbm5vdCBiZSBlbWl0dGVkLCBgSU5FTElHSUJMRWAgaXMgcmV0dXJuZWQgdG8gc3RvcFxuICAgIC8vIHRoZSB3YWxrLlxuICAgIGlmICh0cy5pc1R5cGVSZWZlcmVuY2VOb2RlKG5vZGUpICYmICFjYW5FbWl0VHlwZVJlZmVyZW5jZShub2RlKSkge1xuICAgICAgcmV0dXJuIElORUxJR0lCTEU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cy5mb3JFYWNoQ2hpbGQobm9kZSwgdmlzaXROb2RlKTtcbiAgICB9XG4gIH1cblxuICBmdW5jdGlvbiBjYW5FbWl0VHlwZVJlZmVyZW5jZSh0eXBlOiB0cy5UeXBlUmVmZXJlbmNlTm9kZSk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlZmVyZW5jZSA9IHJlc29sdmVyKHR5cGUpO1xuXG4gICAgLy8gSWYgdGhlIHR5cGUgY291bGQgbm90IGJlIHJlc29sdmVkLCBpdCBjYW4gbm90IGJlIGVtaXR0ZWQuXG4gICAgaWYgKHJlZmVyZW5jZSA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB0eXBlIGlzIGEgcmVmZXJlbmNlLCBjb25zaWRlciB0aGUgdHlwZSB0byBiZSBlbGlnaWJsZSBmb3IgZW1pdHRpbmcuXG4gICAgaWYgKHJlZmVyZW5jZSBpbnN0YW5jZW9mIFJlZmVyZW5jZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgLy8gVGhlIHR5cGUgY2FuIGJlIGVtaXR0ZWQgaWYgZWl0aGVyIGl0IGRvZXMgbm90IGhhdmUgYW55IHR5cGUgYXJndW1lbnRzLCBvciBhbGwgb2YgdGhlbSBjYW4gYmVcbiAgICAvLyBlbWl0dGVkLlxuICAgIHJldHVybiB0eXBlLnR5cGVBcmd1bWVudHMgPT09IHVuZGVmaW5lZCB8fCB0eXBlLnR5cGVBcmd1bWVudHMuZXZlcnkoY2FuRW1pdFR5cGVXb3JrZXIpO1xuICB9XG59XG5cbi8qKlxuICogR2l2ZW4gYSBgdHMuVHlwZU5vZGVgLCB0aGlzIGNsYXNzIGRlcml2ZXMgYW4gZXF1aXZhbGVudCBgdHMuVHlwZU5vZGVgIHRoYXQgaGFzIGJlZW4gZW1pdHRlZCBpbnRvXG4gKiBhIGRpZmZlcmVudCBjb250ZXh0LlxuICpcbiAqIEZvciBleGFtcGxlLCBjb25zaWRlciB0aGUgZm9sbG93aW5nIGNvZGU6XG4gKlxuICogYGBgXG4gKiBpbXBvcnQge05nSXRlcmFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuICpcbiAqIGNsYXNzIE5nRm9yT2Y8VCwgVSBleHRlbmRzIE5nSXRlcmFibGU8VD4+IHt9XG4gKiBgYGBcbiAqXG4gKiBIZXJlLCB0aGUgZ2VuZXJpYyB0eXBlIHBhcmFtZXRlcnMgYFRgIGFuZCBgVWAgY2FuIGJlIGVtaXR0ZWQgaW50byBhIGRpZmZlcmVudCBjb250ZXh0LCBhcyB0aGVcbiAqIHR5cGUgcmVmZXJlbmNlIHRvIGBOZ0l0ZXJhYmxlYCBvcmlnaW5hdGVzIGZyb20gYW4gYWJzb2x1dGUgbW9kdWxlIGltcG9ydCBzbyB0aGF0IGl0IGNhbiBiZVxuICogZW1pdHRlZCBhbnl3aGVyZSwgdXNpbmcgdGhhdCBzYW1lIG1vZHVsZSBpbXBvcnQuIFRoZSBwcm9jZXNzIG9mIGVtaXR0aW5nIHRyYW5zbGF0ZXMgdGhlXG4gKiBgTmdJdGVyYWJsZWAgdHlwZSByZWZlcmVuY2UgdG8gYSB0eXBlIHJlZmVyZW5jZSB0aGF0IGlzIHZhbGlkIGluIHRoZSBjb250ZXh0IGluIHdoaWNoIGl0IGlzXG4gKiBlbWl0dGVkLCBmb3IgZXhhbXBsZTpcbiAqXG4gKiBgYGBcbiAqIGltcG9ydCAqIGFzIGkwIGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuICogaW1wb3J0ICogYXMgaTEgZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbiAqXG4gKiBjb25zdCBfY3RvcjE6IDxULCBVIGV4dGVuZHMgaTAuTmdJdGVyYWJsZTxUPj4obzogUGljazxpMS5OZ0Zvck9mPFQsIFU+LCAnbmdGb3JPZic+KTpcbiAqIGkxLk5nRm9yT2Y8VCwgVT47XG4gKiBgYGBcbiAqXG4gKiBOb3RpY2UgaG93IHRoZSB0eXBlIHJlZmVyZW5jZSBmb3IgYE5nSXRlcmFibGVgIGhhcyBiZWVuIHRyYW5zbGF0ZWQgaW50byBhIHF1YWxpZmllZCBuYW1lLFxuICogcmVmZXJyaW5nIHRvIHRoZSBuYW1lc3BhY2UgaW1wb3J0IHRoYXQgd2FzIGNyZWF0ZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBUeXBlRW1pdHRlciB7XG4gIC8qKlxuICAgKiBSZXNvbHZlciBmdW5jdGlvbiB0aGF0IGNvbXB1dGVzIGEgYFJlZmVyZW5jZWAgY29ycmVzcG9uZGluZyB3aXRoIGEgYHRzLlR5cGVSZWZlcmVuY2VOb2RlYC5cbiAgICovXG4gIHByaXZhdGUgcmVzb2x2ZXI6IFR5cGVSZWZlcmVuY2VSZXNvbHZlcjtcblxuICAvKipcbiAgICogR2l2ZW4gYSBgUmVmZXJlbmNlYCwgdGhpcyBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgdGhlIGFjdHVhbCBlbWl0dGluZyB3b3JrLiBJdCBzaG91bGRcbiAgICogcHJvZHVjZSBhIGB0cy5UeXBlTm9kZWAgdGhhdCBpcyB2YWxpZCB3aXRoaW4gdGhlIGRlc2lyZWQgY29udGV4dC5cbiAgICovXG4gIHByaXZhdGUgZW1pdFJlZmVyZW5jZTogKHJlZjogUmVmZXJlbmNlKSA9PiB0cy5UeXBlTm9kZTtcblxuICBjb25zdHJ1Y3RvcihyZXNvbHZlcjogVHlwZVJlZmVyZW5jZVJlc29sdmVyLCBlbWl0UmVmZXJlbmNlOiAocmVmOiBSZWZlcmVuY2UpID0+IHRzLlR5cGVOb2RlKSB7XG4gICAgdGhpcy5yZXNvbHZlciA9IHJlc29sdmVyO1xuICAgIHRoaXMuZW1pdFJlZmVyZW5jZSA9IGVtaXRSZWZlcmVuY2U7XG4gIH1cblxuICBlbWl0VHlwZSh0eXBlOiB0cy5UeXBlTm9kZSk6IHRzLlR5cGVOb2RlIHtcbiAgICBjb25zdCB0eXBlUmVmZXJlbmNlVHJhbnNmb3JtZXI6IHRzLlRyYW5zZm9ybWVyRmFjdG9yeTx0cy5UeXBlTm9kZT4gPSBjb250ZXh0ID0+IHtcbiAgICAgIGNvbnN0IHZpc2l0Tm9kZSA9IChub2RlOiB0cy5Ob2RlKTogdHMuTm9kZSA9PiB7XG4gICAgICAgIGlmICh0cy5pc1R5cGVSZWZlcmVuY2VOb2RlKG5vZGUpKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZW1pdFR5cGVSZWZlcmVuY2Uobm9kZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIHRzLnZpc2l0RWFjaENoaWxkKG5vZGUsIHZpc2l0Tm9kZSwgY29udGV4dCk7XG4gICAgICAgIH1cbiAgICAgIH07XG4gICAgICByZXR1cm4gbm9kZSA9PiB0cy52aXNpdE5vZGUobm9kZSwgdmlzaXROb2RlKTtcbiAgICB9O1xuICAgIHJldHVybiB0cy50cmFuc2Zvcm0odHlwZSwgW3R5cGVSZWZlcmVuY2VUcmFuc2Zvcm1lcl0pLnRyYW5zZm9ybWVkWzBdO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0VHlwZVJlZmVyZW5jZSh0eXBlOiB0cy5UeXBlUmVmZXJlbmNlTm9kZSk6IHRzLlR5cGVOb2RlIHtcbiAgICAvLyBEZXRlcm1pbmUgdGhlIHJlZmVyZW5jZSB0aGF0IHRoZSB0eXBlIGNvcnJlc3BvbmRzIHdpdGguXG4gICAgY29uc3QgcmVmZXJlbmNlID0gdGhpcy5yZXNvbHZlcih0eXBlKTtcbiAgICBpZiAocmVmZXJlbmNlID09PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBlbWl0IGFuIHVucmVzb2x2ZWQgcmVmZXJlbmNlJyk7XG4gICAgfVxuXG4gICAgLy8gRW1pdCB0aGUgdHlwZSBhcmd1bWVudHMsIGlmIGFueS5cbiAgICBsZXQgdHlwZUFyZ3VtZW50czogdHMuTm9kZUFycmF5PHRzLlR5cGVOb2RlPnx1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKHR5cGUudHlwZUFyZ3VtZW50cyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0eXBlQXJndW1lbnRzID0gdHMuY3JlYXRlTm9kZUFycmF5KHR5cGUudHlwZUFyZ3VtZW50cy5tYXAodHlwZUFyZyA9PiB0aGlzLmVtaXRUeXBlKHR5cGVBcmcpKSk7XG4gICAgfVxuXG4gICAgLy8gRW1pdCB0aGUgdHlwZSBuYW1lLlxuICAgIGxldCB0eXBlTmFtZSA9IHR5cGUudHlwZU5hbWU7XG4gICAgaWYgKHJlZmVyZW5jZSBpbnN0YW5jZW9mIFJlZmVyZW5jZSkge1xuICAgICAgY29uc3QgZW1pdHRlZFR5cGUgPSB0aGlzLmVtaXRSZWZlcmVuY2UocmVmZXJlbmNlKTtcbiAgICAgIGlmICghdHMuaXNUeXBlUmVmZXJlbmNlTm9kZShlbWl0dGVkVHlwZSkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBFeHBlY3RlZCBUeXBlUmVmZXJlbmNlTm9kZSBmb3IgZW1pdHRlZCByZWZlcmVuY2UsIGdvdCAke1xuICAgICAgICAgICAgdHMuU3ludGF4S2luZFtlbWl0dGVkVHlwZS5raW5kXX1gKTtcbiAgICAgIH1cblxuICAgICAgdHlwZU5hbWUgPSBlbWl0dGVkVHlwZS50eXBlTmFtZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHMudXBkYXRlVHlwZVJlZmVyZW5jZU5vZGUodHlwZSwgdHlwZU5hbWUsIHR5cGVBcmd1bWVudHMpO1xuICB9XG59XG4iXX0=
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZV9lbWl0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcGlsZXItY2xpL3NyYy9uZ3RzYy90eXBlY2hlY2svc3JjL3R5cGVfZW1pdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7SUFBQTs7Ozs7O09BTUc7SUFDSCwrQkFBaUM7SUFDakMsbUVBQXdDO0lBc0J4QyxJQUFNLFVBQVUsR0FBZSxFQUFnQixDQUFDO0lBRWhEOzs7Ozs7O09BT0c7SUFDSCxTQUFnQixXQUFXLENBQUMsSUFBaUIsRUFBRSxRQUErQjtRQUM1RSxPQUFPLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRS9CLFNBQVMsaUJBQWlCLENBQUMsSUFBaUI7WUFDMUMsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssVUFBVSxDQUFDO1FBQ3hDLENBQUM7UUFFRCxrR0FBa0c7UUFDbEcsOEZBQThGO1FBQzlGLDhGQUE4RjtRQUM5Riw0RkFBNEY7UUFDNUYsNkZBQTZGO1FBQzdGLHNEQUFzRDtRQUN0RCxTQUFTLFNBQVMsQ0FBQyxJQUFhO1lBQzlCLDBGQUEwRjtZQUMxRix5Q0FBeUM7WUFDekMsSUFBSSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQzdCLE9BQU8sVUFBVSxDQUFDO2FBQ25CO1lBRUQsNkZBQTZGO1lBQzdGLCtGQUErRjtZQUMvRixZQUFZO1lBQ1osSUFBSSxFQUFFLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDL0QsT0FBTyxVQUFVLENBQUM7YUFDbkI7aUJBQU07Z0JBQ0wsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQzthQUN6QztRQUNILENBQUM7UUFFRCxTQUFTLG9CQUFvQixDQUFDLElBQTBCO1lB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T0FBTyxDQUFDLEVBQXRCLENBQXNCLENBQUMsQ0FBQyxDQUFDO2FBQy9GO1lBRUQsc0JBQXNCO1lBQ3RCLElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDN0IsSUFBSSxTQUFTLFlBQVksbUJBQVMsRUFBRTtnQkFDbEMsSUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDbEQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsRUFBRTtvQkFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQywyREFDWixFQUFFLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUcsQ0FBQyxDQUFDO2lCQUN4QztnQkFFRCxRQUFRLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQzthQUNqQztZQUVELE9BQU8sRUFBRSxDQUFDLHVCQUF1QixDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFDbkUsQ0FBQztRQUNILGtCQUFDO0lBQUQsQ0FBQyxBQXhFRCxJQXdFQztJQXhFWSxrQ0FBVyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5pbXBvcnQge1JlZmVyZW5jZX0gZnJvbSAnLi4vLi4vaW1wb3J0cyc7XG5cbi8qKlxuICogQSByZXNvbHZlZCB0eXBlIHJlZmVyZW5jZSBjYW4gZWl0aGVyIGJlIGEgYFJlZmVyZW5jZWAsIHRoZSBvcmlnaW5hbCBgdHMuVHlwZVJlZmVyZW5jZU5vZGVgIGl0c2VsZlxuICogb3IgbnVsbC4gQSB2YWx1ZSBvZiBudWxsIGluZGljYXRlcyB0aGF0IG5vIHJlZmVyZW5jZSBjb3VsZCBiZSByZXNvbHZlZCBvciB0aGF0IHRoZSByZWZlcmVuY2UgY2FuXG4gKiBub3QgYmUgZW1pdHRlZC5cbiAqL1xuZXhwb3J0IHR5cGUgUmVzb2x2ZWRUeXBlUmVmZXJlbmNlID0gUmVmZXJlbmNlfHRzLlR5cGVSZWZlcmVuY2VOb2RlfG51bGw7XG5cbi8qKlxuICogQSB0eXBlIHJlZmVyZW5jZSByZXNvbHZlciBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3IgZmluZGluZyB0aGUgZGVjbGFyYXRpb24gb2YgdGhlIHR5cGVcbiAqIHJlZmVyZW5jZSBhbmQgdmVyaWZ5aW5nIHdoZXRoZXIgaXQgY2FuIGJlIGVtaXR0ZWQuXG4gKi9cbmV4cG9ydCB0eXBlIFR5cGVSZWZlcmVuY2VSZXNvbHZlciA9ICh0eXBlOiB0cy5UeXBlUmVmZXJlbmNlTm9kZSkgPT4gUmVzb2x2ZWRUeXBlUmVmZXJlbmNlO1xuXG4vKipcbiAqIEEgbWFya2VyIHRvIGluZGljYXRlIHRoYXQgYSB0eXBlIHJlZmVyZW5jZSBpcyBpbmVsaWdpYmxlIGZvciBlbWl0dGluZy4gVGhpcyBuZWVkcyB0byBiZSB0cnV0aHlcbiAqIGFzIGl0J3MgcmV0dXJuZWQgZnJvbSBgdHMuZm9yRWFjaENoaWxkYCwgd2hpY2ggb25seSByZXR1cm5zIHRydXRoeSB2YWx1ZXMuXG4gKi9cbnR5cGUgSU5FTElHSUJMRSA9IHtcbiAgX19icmFuZDogJ2luZWxpZ2libGUnO1xufTtcbmNvbnN0IElORUxJR0lCTEU6IElORUxJR0lCTEUgPSB7fSBhcyBJTkVMSUdJQkxFO1xuXG4vKipcbiAqIERldGVybWluZXMgd2hldGhlciB0aGUgcHJvdmlkZWQgdHlwZSBjYW4gYmUgZW1pdHRlZCwgd2hpY2ggbWVhbnMgdGhhdCBpdCBjYW4gYmUgc2FmZWx5IGVtaXR0ZWRcbiAqIGludG8gYSBkaWZmZXJlbnQgbG9jYXRpb24uXG4gKlxuICogSWYgdGhpcyBmdW5jdGlvbiByZXR1cm5zIHRydWUsIGEgYFR5cGVFbWl0dGVyYCBzaG91bGQgYmUgYWJsZSB0byBzdWNjZWVkLiBWaWNlIHZlcnNhLCBpZiB0aGlzXG4gKiBmdW5jdGlvbiByZXR1cm5zIGZhbHNlLCB0aGVuIHVzaW5nIHRoZSBgVHlwZUVtaXR0ZXJgIHNob3VsZCBub3QgYmUgYXR0ZW1wdGVkIGFzIGl0IGlzIGtub3duIHRvXG4gKiBmYWlsLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2FuRW1pdFR5cGUodHlwZTogdHMuVHlwZU5vZGUsIHJlc29sdmVyOiBUeXBlUmVmZXJlbmNlUmVzb2x2ZXIpOiBib29sZWFuIHtcbiAgcmV0dXJuIGNhbkVtaXRUeXBlV29ya2VyKHR5cGUpO1xuXG4gIGZ1bmN0aW9uIGNhbkVtaXRUeXBlV29ya2VyKHR5cGU6IHRzLlR5cGVOb2RlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZpc2l0Tm9kZSh0eXBlKSAhPT0gSU5FTElHSUJMRTtcbiAgfVxuXG4gIC8vIFRvIGRldGVybWluZSB3aGV0aGVyIGEgdHlwZSBjYW4gYmUgZW1pdHRlZCwgd2UgaGF2ZSB0byByZWN1cnNpdmVseSBsb29rIHRocm91Z2ggYWxsIHR5cGUgbm9kZXMuXG4gIC8vIElmIGFuIHVuc3VwcG9ydGVkIHR5cGUgbm9kZSBpcyBmb3VuZCBhdCBhbnkgcG9zaXRpb24gd2l0aGluIHRoZSB0eXBlLCB0aGVuIHRoZSBgSU5FTElHSUJMRWBcbiAgLy8gY29uc3RhbnQgaXMgcmV0dXJuZWQgdG8gc3RvcCB0aGUgcmVjdXJzaXZlIHdhbGsgYXMgdGhlIHR5cGUgYXMgYSB3aG9sZSBjYW5ub3QgYmUgZW1pdHRlZCBpblxuICAvLyB0aGF0IGNhc2UuIE90aGVyd2lzZSwgdGhlIHJlc3VsdCBvZiB2aXNpdGluZyBhbGwgY2hpbGQgbm9kZXMgZGV0ZXJtaW5lcyB0aGUgcmVzdWx0LiBJZiBub1xuICAvLyBpbmVsaWdpYmxlIHR5cGUgcmVmZXJlbmNlIG5vZGUgaXMgZm91bmQgdGhlbiB0aGUgd2FsayByZXR1cm5zIGB1bmRlZmluZWRgLCBpbmRpY2F0aW5nIHRoYXRcbiAgLy8gbm8gdHlwZSBub2RlIHdhcyB2aXNpdGVkIHRoYXQgY291bGQgbm90IGJlIGVtaXR0ZWQuXG4gIGZ1bmN0aW9uIHZpc2l0Tm9kZShub2RlOiB0cy5Ob2RlKTogSU5FTElHSUJMRXx1bmRlZmluZWQge1xuICAgIC8vIGBpbXBvcnQoJ21vZHVsZScpYCB0eXBlIG5vZGVzIGFyZSBub3Qgc3VwcG9ydGVkLCBhcyBpdCBtYXkgcmVxdWlyZSByZXdyaXRpbmcgdGhlIG1vZHVsZVxuICAgIC8vIHNwZWNpZmllciB3aGljaCBpcyBjdXJyZW50bHkgbm90IGRvbmUuXG4gICAgaWYgKHRzLmlzSW1wb3J0VHlwZU5vZGUobm9kZSkpIHtcbiAgICAgIHJldHVybiBJTkVMSUdJQkxFO1xuICAgIH1cblxuICAgIC8vIEVtaXR0aW5nIGEgdHlwZSByZWZlcmVuY2Ugbm9kZSBpbiBhIGRpZmZlcmVudCBjb250ZXh0IHJlcXVpcmVzIHRoYXQgYW4gaW1wb3J0IGZvciB0aGUgdHlwZVxuICAgIC8vIGNhbiBiZSBjcmVhdGVkLiBJZiBhIHR5cGUgcmVmZXJlbmNlIG5vZGUgY2Fubm90IGJlIGVtaXR0ZWQsIGBJTkVMSUdJQkxFYCBpcyByZXR1cm5lZCB0byBzdG9wXG4gICAgLy8gdGhlIHdhbGsuXG4gICAgaWYgKHRzLmlzVHlwZVJlZmVyZW5jZU5vZGUobm9kZSkgJiYgIWNhbkVtaXRUeXBlUmVmZXJlbmNlKG5vZGUpKSB7XG4gICAgICByZXR1cm4gSU5FTElHSUJMRTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRzLmZvckVhY2hDaGlsZChub2RlLCB2aXNpdE5vZGUpO1xuICAgIH1cbiAgfVxuXG4gIGZ1bmN0aW9uIGNhbkVtaXRUeXBlUmVmZXJlbmNlKHR5cGU6IHRzLlR5cGVSZWZlcmVuY2VOb2RlKTogYm9vbGVhbiB7XG4gICAgY29uc3QgcmVmZXJlbmNlID0gcmVzb2x2ZXIodHlwZSk7XG5cbiAgICAvLyBJZiB0aGUgdHlwZSBjb3VsZCBub3QgYmUgcmVzb2x2ZWQsIGl0IGNhbiBub3QgYmUgZW1pdHRlZC5cbiAgICBpZiAocmVmZXJlbmNlID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIHR5cGUgaXMgYSByZWZlcmVuY2UsIGNvbnNpZGVyIHRoZSB0eXBlIHRvIGJlIGVsaWdpYmxlIGZvciBlbWl0dGluZy5cbiAgICBpZiAocmVmZXJlbmNlIGluc3RhbmNlb2YgUmVmZXJlbmNlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBUaGUgdHlwZSBjYW4gYmUgZW1pdHRlZCBpZiBlaXRoZXIgaXQgZG9lcyBub3QgaGF2ZSBhbnkgdHlwZSBhcmd1bWVudHMsIG9yIGFsbCBvZiB0aGVtIGNhbiBiZVxuICAgIC8vIGVtaXR0ZWQuXG4gICAgcmV0dXJuIHR5cGUudHlwZUFyZ3VtZW50cyA9PT0gdW5kZWZpbmVkIHx8IHR5cGUudHlwZUFyZ3VtZW50cy5ldmVyeShjYW5FbWl0VHlwZVdvcmtlcik7XG4gIH1cbn1cblxuLyoqXG4gKiBHaXZlbiBhIGB0cy5UeXBlTm9kZWAsIHRoaXMgY2xhc3MgZGVyaXZlcyBhbiBlcXVpdmFsZW50IGB0cy5UeXBlTm9kZWAgdGhhdCBoYXMgYmVlbiBlbWl0dGVkIGludG9cbiAqIGEgZGlmZmVyZW50IGNvbnRleHQuXG4gKlxuICogRm9yIGV4YW1wbGUsIGNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY29kZTpcbiAqXG4gKiBgYGBcbiAqIGltcG9ydCB7TmdJdGVyYWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4gKlxuICogY2xhc3MgTmdGb3JPZjxULCBVIGV4dGVuZHMgTmdJdGVyYWJsZTxUPj4ge31cbiAqIGBgYFxuICpcbiAqIEhlcmUsIHRoZSBnZW5lcmljIHR5cGUgcGFyYW1ldGVycyBgVGAgYW5kIGBVYCBjYW4gYmUgZW1pdHRlZCBpbnRvIGEgZGlmZmVyZW50IGNvbnRleHQsIGFzIHRoZVxuICogdHlwZSByZWZlcmVuY2UgdG8gYE5nSXRlcmFibGVgIG9yaWdpbmF0ZXMgZnJvbSBhbiBhYnNvbHV0ZSBtb2R1bGUgaW1wb3J0IHNvIHRoYXQgaXQgY2FuIGJlXG4gKiBlbWl0dGVkIGFueXdoZXJlLCB1c2luZyB0aGF0IHNhbWUgbW9kdWxlIGltcG9ydC4gVGhlIHByb2Nlc3Mgb2YgZW1pdHRpbmcgdHJhbnNsYXRlcyB0aGVcbiAqIGBOZ0l0ZXJhYmxlYCB0eXBlIHJlZmVyZW5jZSB0byBhIHR5cGUgcmVmZXJlbmNlIHRoYXQgaXMgdmFsaWQgaW4gdGhlIGNvbnRleHQgaW4gd2hpY2ggaXQgaXNcbiAqIGVtaXR0ZWQsIGZvciBleGFtcGxlOlxuICpcbiAqIGBgYFxuICogaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG4gKiBpbXBvcnQgKiBhcyBpMSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuICpcbiAqIGNvbnN0IF9jdG9yMTogPFQsIFUgZXh0ZW5kcyBpMC5OZ0l0ZXJhYmxlPFQ+PihvOiBQaWNrPGkxLk5nRm9yT2Y8VCwgVT4sICduZ0Zvck9mJz4pOlxuICogaTEuTmdGb3JPZjxULCBVPjtcbiAqIGBgYFxuICpcbiAqIE5vdGljZSBob3cgdGhlIHR5cGUgcmVmZXJlbmNlIGZvciBgTmdJdGVyYWJsZWAgaGFzIGJlZW4gdHJhbnNsYXRlZCBpbnRvIGEgcXVhbGlmaWVkIG5hbWUsXG4gKiByZWZlcnJpbmcgdG8gdGhlIG5hbWVzcGFjZSBpbXBvcnQgdGhhdCB3YXMgY3JlYXRlZC5cbiAqL1xuZXhwb3J0IGNsYXNzIFR5cGVFbWl0dGVyIHtcbiAgLyoqXG4gICAqIFJlc29sdmVyIGZ1bmN0aW9uIHRoYXQgY29tcHV0ZXMgYSBgUmVmZXJlbmNlYCBjb3JyZXNwb25kaW5nIHdpdGggYSBgdHMuVHlwZVJlZmVyZW5jZU5vZGVgLlxuICAgKi9cbiAgcHJpdmF0ZSByZXNvbHZlcjogVHlwZVJlZmVyZW5jZVJlc29sdmVyO1xuXG4gIC8qKlxuICAgKiBHaXZlbiBhIGBSZWZlcmVuY2VgLCB0aGlzIGZ1bmN0aW9uIGlzIHJlc3BvbnNpYmxlIGZvciB0aGUgYWN0dWFsIGVtaXR0aW5nIHdvcmsuIEl0IHNob3VsZFxuICAgKiBwcm9kdWNlIGEgYHRzLlR5cGVOb2RlYCB0aGF0IGlzIHZhbGlkIHdpdGhpbiB0aGUgZGVzaXJlZCBjb250ZXh0LlxuICAgKi9cbiAgcHJpdmF0ZSBlbWl0UmVmZXJlbmNlOiAocmVmOiBSZWZlcmVuY2UpID0+IHRzLlR5cGVOb2RlO1xuXG4gIGNvbnN0cnVjdG9yKHJlc29sdmVyOiBUeXBlUmVmZXJlbmNlUmVzb2x2ZXIsIGVtaXRSZWZlcmVuY2U6IChyZWY6IFJlZmVyZW5jZSkgPT4gdHMuVHlwZU5vZGUpIHtcbiAgICB0aGlzLnJlc29sdmVyID0gcmVzb2x2ZXI7XG4gICAgdGhpcy5lbWl0UmVmZXJlbmNlID0gZW1pdFJlZmVyZW5jZTtcbiAgfVxuXG4gIGVtaXRUeXBlKHR5cGU6IHRzLlR5cGVOb2RlKTogdHMuVHlwZU5vZGUge1xuICAgIGNvbnN0IHR5cGVSZWZlcmVuY2VUcmFuc2Zvcm1lcjogdHMuVHJhbnNmb3JtZXJGYWN0b3J5PHRzLlR5cGVOb2RlPiA9IGNvbnRleHQgPT4ge1xuICAgICAgY29uc3QgdmlzaXROb2RlID0gKG5vZGU6IHRzLk5vZGUpOiB0cy5Ob2RlID0+IHtcbiAgICAgICAgaWYgKHRzLmlzSW1wb3J0VHlwZU5vZGUobm9kZSkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBlbWl0IGltcG9ydCB0eXBlJyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHMuaXNUeXBlUmVmZXJlbmNlTm9kZShub2RlKSkge1xuICAgICAgICAgIHJldHVybiB0aGlzLmVtaXRUeXBlUmVmZXJlbmNlKG5vZGUpO1xuICAgICAgICB9IGVsc2UgaWYgKHRzLmlzTGl0ZXJhbEV4cHJlc3Npb24obm9kZSkpIHtcbiAgICAgICAgICAvLyBUeXBlU2NyaXB0IHdvdWxkIHR5cGljYWxseSB0YWtlIHRoZSBlbWl0IHRleHQgZm9yIGEgbGl0ZXJhbCBleHByZXNzaW9uIGZyb20gdGhlIHNvdXJjZVxuICAgICAgICAgIC8vIGZpbGUgaXRzZWxmLiBBcyB0aGUgdHlwZSBub2RlIGlzIGJlaW5nIGVtaXR0ZWQgaW50byBhIGRpZmZlcmVudCBmaWxlLCBob3dldmVyLFxuICAgICAgICAgIC8vIFR5cGVTY3JpcHQgd291bGQgZXh0cmFjdCB0aGUgbGl0ZXJhbCB0ZXh0IGZyb20gdGhlIHdyb25nIHNvdXJjZSBmaWxlLiBUbyBtaXRpZ2F0ZSB0aGlzXG4gICAgICAgICAgLy8gaXNzdWUgdGhlIGxpdGVyYWwgaXMgY2xvbmVkIGFuZCBleHBsaWNpdGx5IG1hcmtlZCBhcyBzeW50aGVzaXplZCBieSBzZXR0aW5nIGl0cyB0ZXh0XG4gICAgICAgICAgLy8gcmFuZ2UgdG8gYSBuZWdhdGl2ZSByYW5nZSwgZm9yY2luZyBUeXBlU2NyaXB0IHRvIGRldGVybWluZSB0aGUgbm9kZSdzIGxpdGVyYWwgdGV4dCBmcm9tXG4gICAgICAgICAgLy8gdGhlIHN5bnRoZXNpemVkIG5vZGUncyB0ZXh0IGluc3RlYWQgb2YgdGhlIGluY29ycmVjdCBzb3VyY2UgZmlsZS5cbiAgICAgICAgICBjb25zdCBjbG9uZSA9IHRzLmdldE11dGFibGVDbG9uZShub2RlKTtcbiAgICAgICAgICB0cy5zZXRUZXh0UmFuZ2UoY2xvbmUsIHtwb3M6IC0xLCBlbmQ6IC0xfSk7XG4gICAgICAgICAgcmV0dXJuIGNsb25lO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0cy52aXNpdEVhY2hDaGlsZChub2RlLCB2aXNpdE5vZGUsIGNvbnRleHQpO1xuICAgICAgICB9XG4gICAgICB9O1xuICAgICAgcmV0dXJuIG5vZGUgPT4gdHMudmlzaXROb2RlKG5vZGUsIHZpc2l0Tm9kZSk7XG4gICAgfTtcbiAgICByZXR1cm4gdHMudHJhbnNmb3JtKHR5cGUsIFt0eXBlUmVmZXJlbmNlVHJhbnNmb3JtZXJdKS50cmFuc2Zvcm1lZFswXTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdFR5cGVSZWZlcmVuY2UodHlwZTogdHMuVHlwZVJlZmVyZW5jZU5vZGUpOiB0cy5UeXBlTm9kZSB7XG4gICAgLy8gRGV0ZXJtaW5lIHRoZSByZWZlcmVuY2UgdGhhdCB0aGUgdHlwZSBjb3JyZXNwb25kcyB3aXRoLlxuICAgIGNvbnN0IHJlZmVyZW5jZSA9IHRoaXMucmVzb2x2ZXIodHlwZSk7XG4gICAgaWYgKHJlZmVyZW5jZSA9PT0gbnVsbCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmFibGUgdG8gZW1pdCBhbiB1bnJlc29sdmVkIHJlZmVyZW5jZScpO1xuICAgIH1cblxuICAgIC8vIEVtaXQgdGhlIHR5cGUgYXJndW1lbnRzLCBpZiBhbnkuXG4gICAgbGV0IHR5cGVBcmd1bWVudHM6IHRzLk5vZGVBcnJheTx0cy5UeXBlTm9kZT58dW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmICh0eXBlLnR5cGVBcmd1bWVudHMgIT09IHVuZGVmaW5lZCkge1xuICAgICAgdHlwZUFyZ3VtZW50cyA9IHRzLmNyZWF0ZU5vZGVBcnJheSh0eXBlLnR5cGVBcmd1bWVudHMubWFwKHR5cGVBcmcgPT4gdGhpcy5lbWl0VHlwZSh0eXBlQXJnKSkpO1xuICAgIH1cblxuICAgIC8vIEVtaXQgdGhlIHR5cGUgbmFtZS5cbiAgICBsZXQgdHlwZU5hbWUgPSB0eXBlLnR5cGVOYW1lO1xuICAgIGlmIChyZWZlcmVuY2UgaW5zdGFuY2VvZiBSZWZlcmVuY2UpIHtcbiAgICAgIGNvbnN0IGVtaXR0ZWRUeXBlID0gdGhpcy5lbWl0UmVmZXJlbmNlKHJlZmVyZW5jZSk7XG4gICAgICBpZiAoIXRzLmlzVHlwZVJlZmVyZW5jZU5vZGUoZW1pdHRlZFR5cGUpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgRXhwZWN0ZWQgVHlwZVJlZmVyZW5jZU5vZGUgZm9yIGVtaXR0ZWQgcmVmZXJlbmNlLCBnb3QgJHtcbiAgICAgICAgICAgIHRzLlN5bnRheEtpbmRbZW1pdHRlZFR5cGUua2luZF19YCk7XG4gICAgICB9XG5cbiAgICAgIHR5cGVOYW1lID0gZW1pdHRlZFR5cGUudHlwZU5hbWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRzLnVwZGF0ZVR5cGVSZWZlcmVuY2VOb2RlKHR5cGUsIHR5cGVOYW1lLCB0eXBlQXJndW1lbnRzKTtcbiAgfVxufVxuIl19
|
|
@@ -37,7 +37,7 @@ export declare abstract class Visitor {
|
|
|
37
37
|
* Visit a class declaration, returning at least the transformed declaration and optionally other
|
|
38
38
|
* nodes to insert before the declaration.
|
|
39
39
|
*/
|
|
40
|
-
visitClassDeclaration(node: ts.ClassDeclaration): VisitListEntryResult<ts.Statement, ts.ClassDeclaration>;
|
|
40
|
+
abstract visitClassDeclaration(node: ts.ClassDeclaration): VisitListEntryResult<ts.Statement, ts.ClassDeclaration>;
|
|
41
41
|
private _visitListEntryNode;
|
|
42
42
|
/**
|
|
43
43
|
* Visit types of nodes which don't have their own explicit visitor.
|
|
@@ -41,13 +41,6 @@
|
|
|
41
41
|
*/
|
|
42
42
|
this._after = new Map();
|
|
43
43
|
}
|
|
44
|
-
/**
|
|
45
|
-
* Visit a class declaration, returning at least the transformed declaration and optionally other
|
|
46
|
-
* nodes to insert before the declaration.
|
|
47
|
-
*/
|
|
48
|
-
Visitor.prototype.visitClassDeclaration = function (node) {
|
|
49
|
-
return { node: node };
|
|
50
|
-
};
|
|
51
44
|
Visitor.prototype._visitListEntryNode = function (node, visitor) {
|
|
52
45
|
var result = visitor(node);
|
|
53
46
|
if (result.before !== undefined) {
|
|
@@ -123,4 +116,4 @@
|
|
|
123
116
|
return block.statements !== undefined && Array.isArray(block.statements);
|
|
124
117
|
}
|
|
125
118
|
});
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvdXRpbC9zcmMvdmlzaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7O0lBRUgsK0JBQWlDO0lBWWpDOztPQUVHO0lBQ0gsU0FBZ0IsS0FBSyxDQUNqQixJQUFPLEVBQUUsT0FBZ0IsRUFBRSxPQUFpQztRQUM5RCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFIRCxzQkFHQztJQUVEOzs7T0FHRztJQUNIO1FBQUE7WUFDRTs7ZUFFRztZQUNLLFlBQU8sR0FBRyxJQUFJLEdBQUcsRUFBMkIsQ0FBQztZQUVyRDs7ZUFFRztZQUNLLFdBQU0sR0FBRyxJQUFJLEdBQUcsRUFBMkIsQ0FBQztRQXVGdEQsQ0FBQztRQXJGQzs7O1dBR0c7UUFDSCx1Q0FBcUIsR0FBckIsVUFBc0IsSUFBeUI7WUFFN0MsT0FBTyxFQUFDLElBQUksTUFBQSxFQUFDLENBQUM7UUFDaEIsQ0FBQztRQUVPLHFDQUFtQixHQUEzQixVQUNJLElBQU8sRUFBRSxPQUEyRDtZQUN0RSxJQUFNLE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0IsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRTtnQkFDL0IsNEZBQTRGO2dCQUM1RixxRUFBcUU7Z0JBQ3JFLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzlDO1lBQ0QsSUFBSSxNQUFNLENBQUMsS0FBSyxLQUFLLFNBQVMsRUFBRTtnQkFDOUIsaURBQWlEO2dCQUNqRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFN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LE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztRQUNILGNBQUM7SUFBRCxDQUFDLEFBaEdELElBZ0dDO0lBaEdxQiwwQkFBTztJQWtHN0IsU0FBUyxhQUFhLENBQUMsSUFBYTtRQUNsQyxJQUFNLEtBQUssR0FBRyxJQUEwQixDQUFDO1FBQ3pDLE9BQU8sS0FBSyxDQUFDLFVBQVUsS0FBSyxTQUFTLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQgKiBhcyB0cyBmcm9tICd0eXBlc2NyaXB0JztcblxuLyoqXG4gKiBSZXN1bHQgdHlwZSBvZiB2aXNpdGluZyBhIG5vZGUgdGhhdCdzIHR5cGljYWxseSBhbiBlbnRyeSBpbiBhIGxpc3QsIHdoaWNoIGFsbG93cyBzcGVjaWZ5aW5nIHRoYXRcbiAqIG5vZGVzIHNob3VsZCBiZSBhZGRlZCBiZWZvcmUgdGhlIHZpc2l0ZWQgbm9kZSBpbiB0aGUgb3V0cHV0LlxuICovXG5leHBvcnQgdHlwZSBWaXNpdExpc3RFbnRyeVJlc3VsdDxCIGV4dGVuZHMgdHMuTm9kZSwgVCBleHRlbmRzIEI+ID0ge1xuICBub2RlOiBULFxuICBiZWZvcmU/OiBCW10sXG4gIGFmdGVyPzogQltdLFxufTtcblxuLyoqXG4gKiBWaXNpdCBhIG5vZGUgd2l0aCB0aGUgZ2l2ZW4gdmlzaXRvciBhbmQgcmV0dXJuIGEgdHJhbnNmb3JtZWQgY29weS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHZpc2l0PFQgZXh0ZW5kcyB0cy5Ob2RlPihcbiAgICBub2RlOiBULCB2aXNpdG9yOiBWaXNpdG9yLCBjb250ZXh0OiB0cy5UcmFuc2Zvcm1hdGlvbkNvbnRleHQpOiBUIHtcbiAgcmV0dXJuIHZpc2l0b3IuX3Zpc2l0KG5vZGUsIGNvbnRleHQpO1xufVxuXG4vKipcbiAqIEFic3RyYWN0IGJhc2UgY2xhc3MgZm9yIHZpc2l0b3JzLCB3aGljaCBwcm9jZXNzZXMgY2VydGFpbiBub2RlcyBzcGVjaWFsbHkgdG8gYWxsb3cgaW5zZXJ0aW9uXG4gKiBvZiBvdGhlciBub2RlcyBiZWZvcmUgdGhlbS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFZpc2l0b3Ige1xuICAvKipcbiAgICogTWFwcyBzdGF0ZW1lbnRzIHRvIGFuIGFycmF5IG9mIHN0YXRlbWVudHMgdGhhdCBzaG91bGQgYmUgaW5zZXJ0ZWQgYmVmb3JlIHRoZW0uXG4gICAqL1xuICBwcml2YXRlIF9iZWZvcmUgPSBuZXcgTWFwPHRzLk5vZGUsIHRzLlN0YXRlbWVudFtdPigpO1xuXG4gIC8qKlxuICAgKiBNYXBzIHN0YXRlbWVudHMgdG8gYW4gYXJyYXkgb2Ygc3RhdGVtZW50cyB0aGF0IHNob3VsZCBiZSBpbnNlcnRlZCBhZnRlciB0aGVtLlxuICAgKi9cbiAgcHJpdmF0ZSBfYWZ0ZXIgPSBuZXcgTWFwPHRzLk5vZGUsIHRzLlN0YXRlbWVudFtdPigpO1xuXG4gIC8qKlxuICAgKiBWaXNpdCBhIGNsYXNzIGRlY2xhcmF0aW9uLCByZXR1cm5pbmcgYXQgbGVhc3QgdGhlIHRyYW5zZm9ybWVkIGRlY2xhcmF0aW9uIGFuZCBvcHRpb25hbGx5IG90aGVyXG4gICAqIG5vZGVzIHRvIGluc2VydCBiZWZvcmUgdGhlIGRlY2xhcmF0aW9uLlxuICAgKi9cbiAgdmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGU6IHRzLkNsYXNzRGVjbGFyYXRpb24pOlxuICAgICAgVmlzaXRMaXN0RW50cnlSZXN1bHQ8dHMuU3RhdGVtZW50LCB0cy5DbGFzc0RlY2xhcmF0aW9uPiB7XG4gICAgcmV0dXJuIHtub2RlfTtcbiAgfVxuXG4gIHByaXZhdGUgX3Zpc2l0TGlzdEVudHJ5Tm9kZTxUIGV4dGVuZHMgdHMuU3RhdGVtZW50PihcbiAgICAgIG5vZGU6IFQsIHZpc2l0b3I6IChub2RlOiBUKSA9PiBWaXNpdExpc3RFbnRyeVJlc3VsdDx0cy5TdGF0ZW1lbnQsIFQ+KTogVCB7XG4gICAgY29uc3QgcmVzdWx0ID0gdmlzaXRvcihub2RlKTtcbiAgICBpZiAocmVzdWx0LmJlZm9yZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBSZWNvcmQgdGhhdCBzb21lIG5vZGVzIHNob3VsZCBiZSBpbnNlcnRlZCBiZWZvcmUgdGhlIGdpdmVuIGRlY2xhcmF0aW9uLiBUaGUgZGVjbGFyYXRpb24nc1xuICAgICAgLy8gcGFyZW50J3MgX3Zpc2l0IGNhbGwgaXMgcmVzcG9uc2libGUgZm9yIHBlcmZvcm1pbmcgdGhpcyBpbnNlcnRpb24uXG4gICAgICB0aGlzLl9iZWZvcmUuc2V0KHJlc3VsdC5ub2RlLCByZXN1bHQuYmVmb3JlKTtcbiAgICB9XG4gICAgaWYgKHJlc3VsdC5hZnRlciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBTYW1lIHdpdGggbm9kZXMgdGhhdCBzaG91bGQgYmUgaW5zZXJ0ZWQgYWZ0ZXIuXG4gICAgICB0aGlzLl9hZnRlci5zZXQocmVzdWx0Lm5vZGUsIHJlc3VsdC5hZnRlcik7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQubm9kZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWaXNpdCB0eXBlcyBvZiBub2RlcyB3aGljaCBkb24ndCBoYXZlIHRoZWlyIG93biBleHBsaWNpdCB2aXNpdG9yLlxuICAgKi9cbiAgdmlzaXRPdGhlck5vZGU8VCBleHRlbmRzIHRzLk5vZGU+KG5vZGU6IFQpOiBUIHtcbiAgICByZXR1cm4gbm9kZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF92aXNpdDxUIGV4dGVuZHMgdHMuTm9kZT4obm9kZTogVCwgY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KTogVCB7XG4gICAgLy8gRmlyc3QsIHZpc2l0IHRoZSBub2RlLiB2aXNpdGVkTm9kZSBzdGFydHMgb2ZmIGFzIGBudWxsYCBidXQgc2hvdWxkIGJlIHNldCBhZnRlciB2aXNpdGluZ1xuICAgIC8vIGlzIGNvbXBsZXRlZC5cbiAgICBsZXQgdmlzaXRlZE5vZGU6IFR8bnVsbCA9IG51bGw7XG5cbiAgICBub2RlID0gdHMudmlzaXRFYWNoQ2hpbGQobm9kZSwgY2hpbGQgPT4gdGhpcy5fdmlzaXQoY2hpbGQsIGNvbnRleHQpLCBjb250ZXh0KSBhcyBUO1xuXG4gICAgaWYgKHRzLmlzQ2xhc3NEZWNsYXJhdGlvbihub2RlKSkge1xuICAgICAgdmlzaXRlZE5vZGUgPVxuICAgICAgICAgIHRoaXMuX3Zpc2l0TGlzdEVudHJ5Tm9kZShcbiAgICAgICAgICAgICAgbm9kZSwgKG5vZGU6IHRzLkNsYXNzRGVjbGFyYXRpb24pID0+IHRoaXMudmlzaXRDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSBhcyB0eXBlb2Ygbm9kZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmlzaXRlZE5vZGUgPSB0aGlzLnZpc2l0T3RoZXJOb2RlKG5vZGUpO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSB2aXNpdGVkIG5vZGUgaGFzIGEgYHN0YXRlbWVudHNgIGFycmF5IHRoZW4gcHJvY2VzcyB0aGVtLCBtYXliZSByZXBsYWNpbmcgdGhlIHZpc2l0ZWRcbiAgICAvLyBub2RlIGFuZCBhZGRpbmcgYWRkaXRpb25hbCBzdGF0ZW1lbnRzLlxuICAgIGlmIChoYXNTdGF0ZW1lbnRzKHZpc2l0ZWROb2RlKSkge1xuICAgICAgdmlzaXRlZE5vZGUgPSB0aGlzLl9tYXliZVByb2Nlc3NTdGF0ZW1lbnRzKHZpc2l0ZWROb2RlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmlzaXRlZE5vZGU7XG4gIH1cblxuICBwcml2YXRlIF9tYXliZVByb2Nlc3NTdGF0ZW1lbnRzPFQgZXh0ZW5kcyB0cy5Ob2RlJntzdGF0ZW1lbnRzOiB0cy5Ob2RlQXJyYXk8dHMuU3RhdGVtZW50Pn0+KFxuICAgICAgbm9kZTogVCk6IFQge1xuICAgIC8vIFNob3J0Y3V0IC0gaWYgZXZlcnkgc3RhdGVtZW50IGRvZXNuJ3QgcmVxdWlyZSBub2RlcyB0byBiZSBwcmVwZW5kZWQgb3IgYXBwZW5kZWQsXG4gICAgLy8gdGhpcyBpcyBhIG5vLW9wLlxuICAgIGlmIChub2RlLnN0YXRlbWVudHMuZXZlcnkoc3RtdCA9PiAhdGhpcy5fYmVmb3JlLmhhcyhzdG10KSAmJiAhdGhpcy5fYWZ0ZXIuaGFzKHN0bXQpKSkge1xuICAgICAgcmV0dXJuIG5vZGU7XG4gICAgfVxuXG4gICAgLy8gVGhlcmUgYXJlIHN0YXRlbWVudHMgdG8gcHJlcGVuZCwgc28gY2xvbmUgdGhlIG9yaWdpbmFsIG5vZGUuXG4gICAgY29uc3QgY2xvbmUgPSB0cy5nZXRNdXRhYmxlQ2xvbmUobm9kZSk7XG5cbiAgICAvLyBCdWlsZCBhIG5ldyBsaXN0IG9mIHN0YXRlbWVudHMgYW5kIHBhdGNoIGl0IG9udG8gdGhlIGNsb25lLlxuICAgIGNvbnN0IG5ld1N0YXRlbWVudHM6IHRzLlN0YXRlbWVudFtdID0gW107XG4gICAgY2xvbmUuc3RhdGVtZW50cy5mb3JFYWNoKHN0bXQgPT4ge1xuICAgICAgaWYgKHRoaXMuX2JlZm9yZS5oYXMoc3RtdCkpIHtcbiAgICAgICAgbmV3U3RhdGVtZW50cy5wdXNoKC4uLih0aGlzLl9iZWZvcmUuZ2V0KHN0bXQpISBhcyB0cy5TdGF0ZW1lbnRbXSkpO1xuICAgICAgICB0aGlzLl9iZWZvcmUuZGVsZXRlKHN0bXQpO1xuICAgICAgfVxuICAgICAgbmV3U3RhdGVtZW50cy5wdXNoKHN0bXQpO1xuICAgICAgaWYgKHRoaXMuX2FmdGVyLmhhcyhzdG10KSkge1xuICAgICAgICBuZXdTdGF0ZW1lbnRzLnB1c2goLi4uKHRoaXMuX2FmdGVyLmdldChzdG10KSEgYXMgdHMuU3RhdGVtZW50W10pKTtcbiAgICAgICAgdGhpcy5fYWZ0ZXIuZGVsZXRlKHN0bXQpO1xuICAgICAgfVxuICAgIH0pO1xuICAgIGNsb25lLnN0YXRlbWVudHMgPSB0cy5jcmVhdGVOb2RlQXJyYXkobmV3U3RhdGVtZW50cywgbm9kZS5zdGF0ZW1lbnRzLmhhc1RyYWlsaW5nQ29tbWEpO1xuICAgIHJldHVybiBjbG9uZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBoYXNTdGF0ZW1lbnRzKG5vZGU6IHRzLk5vZGUpOiBub2RlIGlzIHRzLk5vZGUme3N0YXRlbWVudHM6IHRzLk5vZGVBcnJheTx0cy5TdGF0ZW1lbnQ+fSB7XG4gIGNvbnN0IGJsb2NrID0gbm9kZSBhcyB7c3RhdGVtZW50cz86IGFueX07XG4gIHJldHVybiBibG9jay5zdGF0ZW1lbnRzICE9PSB1bmRlZmluZWQgJiYgQXJyYXkuaXNBcnJheShibG9jay5zdGF0ZW1lbnRzKTtcbn1cbiJdfQ==
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlzaXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvbmd0c2MvdXRpbC9zcmMvdmlzaXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7O0lBRUgsK0JBQWlDO0lBWWpDOztPQUVHO0lBQ0gsU0FBZ0IsS0FBSyxDQUNqQixJQUFPLEVBQUUsT0FBZ0IsRUFBRSxPQUFpQztRQUM5RCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFIRCxzQkFHQztJQUVEOzs7T0FHRztJQUNIO1FBQUE7WUFDRTs7ZUFFRztZQUNLLFlBQU8sR0FBRyxJQUFJLEdBQUcsRUFBMkIsQ0FBQztZQUVyRDs7ZUFFRztZQUNLLFdBQU0sR0FBRyxJQUFJLEdBQUcsRUFBMkIsQ0FBQztRQXFGdEQsQ0FBQztRQTVFUyxxQ0FBbUIsR0FBM0IsVUFDSSxJQUFPLEVBQUUsT0FBMkQ7WUFDdEUsSUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzdCLElBQUksTUFBTSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7Z0JBQy9CLDRGQUE0RjtnQkFDNUYscUVBQXFFO2dCQUNyRSxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUM5QztZQUNELElBQUksTUFBTSxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7Z0JBQzlCLGlEQUFpRDtnQkFDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDNUM7WUFDRCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDckIsQ0FBQztR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QUFDLElBQWE7UUFDbEMsSUFBTSxLQUFLLEdBQUcsSUFBMEIsQ0FBQztRQUN6QyxPQUFPLEtBQUssQ0FBQyxVQUFVLEtBQUssU0FBUyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cblxuaW1wb3J0ICogYXMgdHMgZnJvbSAndHlwZXNjcmlwdCc7XG5cbi8qKlxuICogUmVzdWx0IHR5cGUgb2YgdmlzaXRpbmcgYSBub2RlIHRoYXQncyB0eXBpY2FsbHkgYW4gZW50cnkgaW4gYSBsaXN0LCB3aGljaCBhbGxvd3Mgc3BlY2lmeWluZyB0aGF0XG4gKiBub2RlcyBzaG91bGQgYmUgYWRkZWQgYmVmb3JlIHRoZSB2aXNpdGVkIG5vZGUgaW4gdGhlIG91dHB1dC5cbiAqL1xuZXhwb3J0IHR5cGUgVmlzaXRMaXN0RW50cnlSZXN1bHQ8QiBleHRlbmRzIHRzLk5vZGUsIFQgZXh0ZW5kcyBCPiA9IHtcbiAgbm9kZTogVCxcbiAgYmVmb3JlPzogQltdLFxuICBhZnRlcj86IEJbXSxcbn07XG5cbi8qKlxuICogVmlzaXQgYSBub2RlIHdpdGggdGhlIGdpdmVuIHZpc2l0b3IgYW5kIHJldHVybiBhIHRyYW5zZm9ybWVkIGNvcHkuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2aXNpdDxUIGV4dGVuZHMgdHMuTm9kZT4oXG4gICAgbm9kZTogVCwgdmlzaXRvcjogVmlzaXRvciwgY29udGV4dDogdHMuVHJhbnNmb3JtYXRpb25Db250ZXh0KTogVCB7XG4gIHJldHVybiB2aXNpdG9yLl92aXNpdChub2RlLCBjb250ZXh0KTtcbn1cblxuLyoqXG4gKiBBYnN0cmFjdCBiYXNlIGNsYXNzIGZvciB2aXNpdG9ycywgd2hpY2ggcHJvY2Vzc2VzIGNlcnRhaW4gbm9kZXMgc3BlY2lhbGx5IHRvIGFsbG93IGluc2VydGlvblxuICogb2Ygb3RoZXIgbm9kZXMgYmVmb3JlIHRoZW0uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWaXNpdG9yIHtcbiAgLyoqXG4gICAqIE1hcHMgc3RhdGVtZW50cyB0byBhbiBhcnJheSBvZiBzdGF0ZW1lbnRzIHRoYXQgc2hvdWxkIGJlIGluc2VydGVkIGJlZm9yZSB0aGVtLlxuICAgKi9cbiAgcHJpdmF0ZSBfYmVmb3JlID0gbmV3IE1hcDx0cy5Ob2RlLCB0cy5TdGF0ZW1lbnRbXT4oKTtcblxuICAvKipcbiAgICogTWFwcyBzdGF0ZW1lbnRzIHRvIGFuIGFycmF5IG9mIHN0YXRlbWVudHMgdGhhdCBzaG91bGQgYmUgaW5zZXJ0ZWQgYWZ0ZXIgdGhlbS5cbiAgICovXG4gIHByaXZhdGUgX2FmdGVyID0gbmV3IE1hcDx0cy5Ob2RlLCB0cy5TdGF0ZW1lbnRbXT4oKTtcblxuICAvKipcbiAgICogVmlzaXQgYSBjbGFzcyBkZWNsYXJhdGlvbiwgcmV0dXJuaW5nIGF0IGxlYXN0IHRoZSB0cmFuc2Zvcm1lZCBkZWNsYXJhdGlvbiBhbmQgb3B0aW9uYWxseSBvdGhlclxuICAgKiBub2RlcyB0byBpbnNlcnQgYmVmb3JlIHRoZSBkZWNsYXJhdGlvbi5cbiAgICovXG4gIGFic3RyYWN0IHZpc2l0Q2xhc3NEZWNsYXJhdGlvbihub2RlOiB0cy5DbGFzc0RlY2xhcmF0aW9uKTpcbiAgICAgIFZpc2l0TGlzdEVudHJ5UmVzdWx0PHRzLlN0YXRlbWVudCwgdHMuQ2xhc3NEZWNsYXJhdGlvbj47XG5cbiAgcHJpdmF0ZSBfdmlzaXRMaXN0RW50cnlOb2RlPFQgZXh0ZW5kcyB0cy5TdGF0ZW1lbnQ+KFxuICAgICAgbm9kZTogVCwgdmlzaXRvcjogKG5vZGU6IFQpID0+IFZpc2l0TGlzdEVudHJ5UmVzdWx0PHRzLlN0YXRlbWVudCwgVD4pOiBUIHtcbiAgICBjb25zdCByZXN1bHQgPSB2aXNpdG9yKG5vZGUpO1xuICAgIGlmIChyZXN1bHQuYmVmb3JlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIFJlY29yZCB0aGF0IHNvbWUgbm9kZXMgc2hvdWxkIGJlIGluc2VydGVkIGJlZm9yZSB0aGUgZ2l2ZW4gZGVjbGFyYXRpb24uIFRoZSBkZWNsYXJhdGlvbidzXG4gICAgICAvLyBwYXJlbnQncyBfdmlzaXQgY2FsbCBpcyByZXNwb25zaWJsZSBmb3IgcGVyZm9ybWluZyB0aGlzIGluc2VydGlvbi5cbiAgICAgIHRoaXMuX2JlZm9yZS5zZXQocmVzdWx0Lm5vZGUsIHJlc3VsdC5iZWZvcmUpO1xuICAgIH1cbiAgICBpZiAocmVzdWx0LmFmdGVyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIFNhbWUgd2l0aCBub2RlcyB0aGF0IHNob3VsZCBiZSBpbnNlcnRlZCBhZnRlci5cbiAgICAgIHRoaXMuX2FmdGVyLnNldChyZXN1bHQubm9kZSwgcmVzdWx0LmFmdGVyKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdC5ub2RlO1xuICB9XG5cbiAgLyoqXG4gICAqIFZpc2l0IHR5cGVzIG9mIG5vZGVzIHdoaWNoIGRvbid0IGhhdmUgdGhlaXIgb3duIGV4cGxpY2l0IHZpc2l0b3IuXG4gICAqL1xuICB2aXNpdE90aGVyTm9kZTxUIGV4dGVuZHMgdHMuTm9kZT4obm9kZTogVCk6IFQge1xuICAgIHJldHVybiBub2RlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgX3Zpc2l0PFQgZXh0ZW5kcyB0cy5Ob2RlPihub2RlOiBULCBjb250ZXh0OiB0cy5UcmFuc2Zvcm1hdGlvbkNvbnRleHQpOiBUIHtcbiAgICAvLyBGaXJzdCwgdmlzaXQgdGhlIG5vZGUuIHZpc2l0ZWROb2RlIHN0YXJ0cyBvZmYgYXMgYG51bGxgIGJ1dCBzaG91bGQgYmUgc2V0IGFmdGVyIHZpc2l0aW5nXG4gICAgLy8gaXMgY29tcGxldGVkLlxuICAgIGxldCB2aXNpdGVkTm9kZTogVHxudWxsID0gbnVsbDtcblxuICAgIG5vZGUgPSB0cy52aXNpdEVhY2hDaGlsZChub2RlLCBjaGlsZCA9PiB0aGlzLl92aXNpdChjaGlsZCwgY29udGV4dCksIGNvbnRleHQpIGFzIFQ7XG5cbiAgICBpZiAodHMuaXNDbGFzc0RlY2xhcmF0aW9uKG5vZGUpKSB7XG4gICAgICB2aXNpdGVkTm9kZSA9XG4gICAgICAgICAgdGhpcy5fdmlzaXRMaXN0RW50cnlOb2RlKFxuICAgICAgICAgICAgICBub2RlLCAobm9kZTogdHMuQ2xhc3NEZWNsYXJhdGlvbikgPT4gdGhpcy52aXNpdENsYXNzRGVjbGFyYXRpb24obm9kZSkpIGFzIHR5cGVvZiBub2RlO1xuICAgIH0gZWxzZSB7XG4gICAgICB2aXNpdGVkTm9kZSA9IHRoaXMudmlzaXRPdGhlck5vZGUobm9kZSk7XG4gICAgfVxuXG4gICAgLy8gSWYgdGhlIHZpc2l0ZWQgbm9kZSBoYXMgYSBgc3RhdGVtZW50c2AgYXJyYXkgdGhlbiBwcm9jZXNzIHRoZW0sIG1heWJlIHJlcGxhY2luZyB0aGUgdmlzaXRlZFxuICAgIC8vIG5vZGUgYW5kIGFkZGluZyBhZGRpdGlvbmFsIHN0YXRlbWVudHMuXG4gICAgaWYgKGhhc1N0YXRlbWVudHModmlzaXRlZE5vZGUpKSB7XG4gICAgICB2aXNpdGVkTm9kZSA9IHRoaXMuX21heWJlUHJvY2Vzc1N0YXRlbWVudHModmlzaXRlZE5vZGUpO1xuICAgIH1cblxuICAgIHJldHVybiB2aXNpdGVkTm9kZTtcbiAgfVxuXG4gIHByaXZhdGUgX21heWJlUHJvY2Vzc1N0YXRlbWVudHM8VCBleHRlbmRzIHRzLk5vZGUme3N0YXRlbWVudHM6IHRzLk5vZGVBcnJheTx0cy5TdGF0ZW1lbnQ+fT4oXG4gICAgICBub2RlOiBUKTogVCB7XG4gICAgLy8gU2hvcnRjdXQgLSBpZiBldmVyeSBzdGF0ZW1lbnQgZG9lc24ndCByZXF1aXJlIG5vZGVzIHRvIGJlIHByZXBlbmRlZCBvciBhcHBlbmRlZCxcbiAgICAvLyB0aGlzIGlzIGEgbm8tb3AuXG4gICAgaWYgKG5vZGUuc3RhdGVtZW50cy5ldmVyeShzdG10ID0+ICF0aGlzLl9iZWZvcmUuaGFzKHN0bXQpICYmICF0aGlzLl9hZnRlci5oYXMoc3RtdCkpKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG5cbiAgICAvLyBUaGVyZSBhcmUgc3RhdGVtZW50cyB0byBwcmVwZW5kLCBzbyBjbG9uZSB0aGUgb3JpZ2luYWwgbm9kZS5cbiAgICBjb25zdCBjbG9uZSA9IHRzLmdldE11dGFibGVDbG9uZShub2RlKTtcblxuICAgIC8vIEJ1aWxkIGEgbmV3IGxpc3Qgb2Ygc3RhdGVtZW50cyBhbmQgcGF0Y2ggaXQgb250byB0aGUgY2xvbmUuXG4gICAgY29uc3QgbmV3U3RhdGVtZW50czogdHMuU3RhdGVtZW50W10gPSBbXTtcbiAgICBjbG9uZS5zdGF0ZW1lbnRzLmZvckVhY2goc3RtdCA9PiB7XG4gICAgICBpZiAodGhpcy5fYmVmb3JlLmhhcyhzdG10KSkge1xuICAgICAgICBuZXdTdGF0ZW1lbnRzLnB1c2goLi4uKHRoaXMuX2JlZm9yZS5nZXQoc3RtdCkhIGFzIHRzLlN0YXRlbWVudFtdKSk7XG4gICAgICAgIHRoaXMuX2JlZm9yZS5kZWxldGUoc3RtdCk7XG4gICAgICB9XG4gICAgICBuZXdTdGF0ZW1lbnRzLnB1c2goc3RtdCk7XG4gICAgICBpZiAodGhpcy5fYWZ0ZXIuaGFzKHN0bXQpKSB7XG4gICAgICAgIG5ld1N0YXRlbWVudHMucHVzaCguLi4odGhpcy5fYWZ0ZXIuZ2V0KHN0bXQpISBhcyB0cy5TdGF0ZW1lbnRbXSkpO1xuICAgICAgICB0aGlzLl9hZnRlci5kZWxldGUoc3RtdCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgY2xvbmUuc3RhdGVtZW50cyA9IHRzLmNyZWF0ZU5vZGVBcnJheShuZXdTdGF0ZW1lbnRzLCBub2RlLnN0YXRlbWVudHMuaGFzVHJhaWxpbmdDb21tYSk7XG4gICAgcmV0dXJuIGNsb25lO1xuICB9XG59XG5cbmZ1bmN0aW9uIGhhc1N0YXRlbWVudHMobm9kZTogdHMuTm9kZSk6IG5vZGUgaXMgdHMuTm9kZSZ7c3RhdGVtZW50czogdHMuTm9kZUFycmF5PHRzLlN0YXRlbWVudD59IHtcbiAgY29uc3QgYmxvY2sgPSBub2RlIGFzIHtzdGF0ZW1lbnRzPzogYW55fTtcbiAgcmV0dXJuIGJsb2NrLnN0YXRlbWVudHMgIT09IHVuZGVmaW5lZCAmJiBBcnJheS5pc0FycmF5KGJsb2NrLnN0YXRlbWVudHMpO1xufVxuIl19
|
package/src/version.js
CHANGED
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
* Entry point for all public APIs of the compiler-cli package.
|
|
24
24
|
*/
|
|
25
25
|
var compiler_1 = require("@angular/compiler");
|
|
26
|
-
exports.VERSION = new compiler_1.Version('12.2.0
|
|
26
|
+
exports.VERSION = new compiler_1.Version('12.2.0');
|
|
27
27
|
});
|
|
28
28
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBpbGVyLWNsaS9zcmMvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7O0dBTUc7Ozs7Ozs7Ozs7Ozs7SUFFSDs7OztPQUlHO0lBRUgsOENBQTBDO0lBRTdCLFFBQUEsT0FBTyxHQUFHLElBQUksa0JBQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5cbi8qKlxuICogQG1vZHVsZVxuICogQGRlc2NyaXB0aW9uXG4gKiBFbnRyeSBwb2ludCBmb3IgYWxsIHB1YmxpYyBBUElzIG9mIHRoZSBjb21waWxlci1jbGkgcGFja2FnZS5cbiAqL1xuXG5pbXBvcnQge1ZlcnNpb259IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcblxuZXhwb3J0IGNvbnN0IFZFUlNJT04gPSBuZXcgVmVyc2lvbignMC4wLjAtUExBQ0VIT0xERVInKTtcbiJdfQ==
|
package/compiler-cli.externs.js
DELETED
|
File without changes
|
package/index.mjs
DELETED
|
@@ -1,20 +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
|
-
import { NodeJSFileSystem, setFileSystem } from './src/ngtsc/file_system';
|
|
9
|
-
export { StaticReflector, StaticSymbol } from '@angular/compiler';
|
|
10
|
-
export { VERSION } from './src/version';
|
|
11
|
-
export * from './src/metadata';
|
|
12
|
-
export * from './src/transformers/api';
|
|
13
|
-
export * from './src/transformers/entry_points';
|
|
14
|
-
export * from './src/perform_compile';
|
|
15
|
-
export * from './src/tooling';
|
|
16
|
-
export { ngToTsDiagnostic } from './src/transformers/util';
|
|
17
|
-
export { NgTscPlugin } from './src/ngtsc/tsc_plugin';
|
|
18
|
-
export { NgtscProgram } from './src/ngtsc/program';
|
|
19
|
-
setFileSystem(new NodeJSFileSystem());
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBQ0gsT0FBTyxFQUFDLGdCQUFnQixFQUFFLGFBQWEsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBRXhFLE9BQU8sRUFBMEQsZUFBZSxFQUFFLFlBQVksRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3pILE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdEMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsaUNBQWlDLENBQUM7QUFFaEQsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGVBQWUsQ0FBQztBQUs5QixPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDbkQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBRWpELGFBQWEsQ0FBQyxJQUFJLGdCQUFnQixFQUFFLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuaW1wb3J0IHtOb2RlSlNGaWxlU3lzdGVtLCBzZXRGaWxlU3lzdGVtfSBmcm9tICcuL3NyYy9uZ3RzYy9maWxlX3N5c3RlbSc7XG5cbmV4cG9ydCB7QW90Q29tcGlsZXJIb3N0LCBBb3RDb21waWxlckhvc3QgYXMgU3RhdGljUmVmbGVjdG9ySG9zdCwgU3RhdGljUmVmbGVjdG9yLCBTdGF0aWNTeW1ib2x9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyJztcbmV4cG9ydCB7VkVSU0lPTn0gZnJvbSAnLi9zcmMvdmVyc2lvbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vc3JjL21ldGFkYXRhJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3RyYW5zZm9ybWVycy9hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvdHJhbnNmb3JtZXJzL2VudHJ5X3BvaW50cyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc3JjL3BlcmZvcm1fY29tcGlsZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy90b29saW5nJztcblxuLy8gVE9ETyh0Ym9zY2gpOiByZW1vdmUgdGhpcyBvbmNlIHVzYWdlcyBpbiBHMyBhcmUgY2hhbmdlZCB0byBgQ29tcGlsZXJPcHRpb25zYFxuZXhwb3J0IHtDb21waWxlck9wdGlvbnMgYXMgQW5ndWxhckNvbXBpbGVyT3B0aW9uc30gZnJvbSAnLi9zcmMvdHJhbnNmb3JtZXJzL2FwaSc7XG5cbmV4cG9ydCB7bmdUb1RzRGlhZ25vc3RpY30gZnJvbSAnLi9zcmMvdHJhbnNmb3JtZXJzL3V0aWwnO1xuZXhwb3J0IHtOZ1RzY1BsdWdpbn0gZnJvbSAnLi9zcmMvbmd0c2MvdHNjX3BsdWdpbic7XG5leHBvcnQge05ndHNjUHJvZ3JhbX0gZnJvbSAnLi9zcmMvbmd0c2MvcHJvZ3JhbSc7XG5cbnNldEZpbGVTeXN0ZW0obmV3IE5vZGVKU0ZpbGVTeXN0ZW0oKSk7XG4iXX0=
|
|
File without changes
|
package/linker/babel/index.mjs
DELETED
|
@@ -1,11 +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
|
-
import { defaultLinkerPlugin } from './src/babel_plugin';
|
|
9
|
-
export { createEs2015LinkerPlugin } from './src/es2015_linker_plugin';
|
|
10
|
-
export default defaultLinkerPlugin;
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvbGlua2VyL2JhYmVsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRztBQUNILE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRXZELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLGVBQWUsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgR29vZ2xlIExMQyBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGFuIE1JVC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlXG4gKiBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlIGF0IGh0dHBzOi8vYW5ndWxhci5pby9saWNlbnNlXG4gKi9cbmltcG9ydCB7ZGVmYXVsdExpbmtlclBsdWdpbn0gZnJvbSAnLi9zcmMvYmFiZWxfcGx1Z2luJztcblxuZXhwb3J0IHtjcmVhdGVFczIwMTVMaW5rZXJQbHVnaW59IGZyb20gJy4vc3JjL2VzMjAxNV9saW5rZXJfcGx1Z2luJztcbmV4cG9ydCBkZWZhdWx0IGRlZmF1bHRMaW5rZXJQbHVnaW47XG4iXX0=
|
|
@@ -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
|
-
import * as t from '@babel/types';
|
|
9
|
-
import { assert } from '../../../../linker';
|
|
10
|
-
/**
|
|
11
|
-
* A Babel flavored implementation of the AstFactory.
|
|
12
|
-
*/
|
|
13
|
-
export class BabelAstFactory {
|
|
14
|
-
constructor(
|
|
15
|
-
/** The absolute path to the source file being compiled. */
|
|
16
|
-
sourceUrl) {
|
|
17
|
-
this.sourceUrl = sourceUrl;
|
|
18
|
-
this.createArrayLiteral = t.arrayExpression;
|
|
19
|
-
this.createBlock = t.blockStatement;
|
|
20
|
-
this.createConditional = t.conditionalExpression;
|
|
21
|
-
this.createExpressionStatement = t.expressionStatement;
|
|
22
|
-
this.createIdentifier = t.identifier;
|
|
23
|
-
this.createIfStatement = t.ifStatement;
|
|
24
|
-
this.createNewExpression = t.newExpression;
|
|
25
|
-
this.createParenthesizedExpression = t.parenthesizedExpression;
|
|
26
|
-
this.createReturnStatement = t.returnStatement;
|
|
27
|
-
this.createThrowStatement = t.throwStatement;
|
|
28
|
-
this.createUnaryExpression = t.unaryExpression;
|
|
29
|
-
}
|
|
30
|
-
attachComments(statement, leadingComments) {
|
|
31
|
-
// We must process the comments in reverse because `t.addComment()` will add new ones in front.
|
|
32
|
-
for (let i = leadingComments.length - 1; i >= 0; i--) {
|
|
33
|
-
const comment = leadingComments[i];
|
|
34
|
-
t.addComment(statement, 'leading', comment.toString(), !comment.multiline);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
createAssignment(target, value) {
|
|
38
|
-
assert(target, isLExpression, 'must be a left hand side expression');
|
|
39
|
-
return t.assignmentExpression('=', target, value);
|
|
40
|
-
}
|
|
41
|
-
createBinaryExpression(leftOperand, operator, rightOperand) {
|
|
42
|
-
switch (operator) {
|
|
43
|
-
case '&&':
|
|
44
|
-
case '||':
|
|
45
|
-
case '??':
|
|
46
|
-
return t.logicalExpression(operator, leftOperand, rightOperand);
|
|
47
|
-
default:
|
|
48
|
-
return t.binaryExpression(operator, leftOperand, rightOperand);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
createCallExpression(callee, args, pure) {
|
|
52
|
-
const call = t.callExpression(callee, args);
|
|
53
|
-
if (pure) {
|
|
54
|
-
t.addComment(call, 'leading', ' @__PURE__ ', /* line */ false);
|
|
55
|
-
}
|
|
56
|
-
return call;
|
|
57
|
-
}
|
|
58
|
-
createElementAccess(expression, element) {
|
|
59
|
-
return t.memberExpression(expression, element, /* computed */ true);
|
|
60
|
-
}
|
|
61
|
-
createFunctionDeclaration(functionName, parameters, body) {
|
|
62
|
-
assert(body, t.isBlockStatement, 'a block');
|
|
63
|
-
return t.functionDeclaration(t.identifier(functionName), parameters.map(param => t.identifier(param)), body);
|
|
64
|
-
}
|
|
65
|
-
createFunctionExpression(functionName, parameters, body) {
|
|
66
|
-
assert(body, t.isBlockStatement, 'a block');
|
|
67
|
-
const name = functionName !== null ? t.identifier(functionName) : null;
|
|
68
|
-
return t.functionExpression(name, parameters.map(param => t.identifier(param)), body);
|
|
69
|
-
}
|
|
70
|
-
createLiteral(value) {
|
|
71
|
-
if (typeof value === 'string') {
|
|
72
|
-
return t.stringLiteral(value);
|
|
73
|
-
}
|
|
74
|
-
else if (typeof value === 'number') {
|
|
75
|
-
return t.numericLiteral(value);
|
|
76
|
-
}
|
|
77
|
-
else if (typeof value === 'boolean') {
|
|
78
|
-
return t.booleanLiteral(value);
|
|
79
|
-
}
|
|
80
|
-
else if (value === undefined) {
|
|
81
|
-
return t.identifier('undefined');
|
|
82
|
-
}
|
|
83
|
-
else if (value === null) {
|
|
84
|
-
return t.nullLiteral();
|
|
85
|
-
}
|
|
86
|
-
else {
|
|
87
|
-
throw new Error(`Invalid literal: ${value} (${typeof value})`);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
createObjectLiteral(properties) {
|
|
91
|
-
return t.objectExpression(properties.map(prop => {
|
|
92
|
-
const key = prop.quoted ? t.stringLiteral(prop.propertyName) : t.identifier(prop.propertyName);
|
|
93
|
-
return t.objectProperty(key, prop.value);
|
|
94
|
-
}));
|
|
95
|
-
}
|
|
96
|
-
createPropertyAccess(expression, propertyName) {
|
|
97
|
-
return t.memberExpression(expression, t.identifier(propertyName), /* computed */ false);
|
|
98
|
-
}
|
|
99
|
-
createTaggedTemplate(tag, template) {
|
|
100
|
-
const elements = template.elements.map((element, i) => this.setSourceMapRange(t.templateElement(element, i === template.elements.length - 1), element.range));
|
|
101
|
-
return t.taggedTemplateExpression(tag, t.templateLiteral(elements, template.expressions));
|
|
102
|
-
}
|
|
103
|
-
createTypeOfExpression(expression) {
|
|
104
|
-
return t.unaryExpression('typeof', expression);
|
|
105
|
-
}
|
|
106
|
-
createVariableDeclaration(variableName, initializer, type) {
|
|
107
|
-
return t.variableDeclaration(type, [t.variableDeclarator(t.identifier(variableName), initializer)]);
|
|
108
|
-
}
|
|
109
|
-
setSourceMapRange(node, sourceMapRange) {
|
|
110
|
-
if (sourceMapRange === null) {
|
|
111
|
-
return node;
|
|
112
|
-
}
|
|
113
|
-
node.loc = {
|
|
114
|
-
// Add in the filename so that we can map to external template files.
|
|
115
|
-
// Note that Babel gets confused if you specify a filename when it is the original source
|
|
116
|
-
// file. This happens when the template is inline, in which case just use `undefined`.
|
|
117
|
-
filename: sourceMapRange.url !== this.sourceUrl ? sourceMapRange.url : undefined,
|
|
118
|
-
start: {
|
|
119
|
-
line: sourceMapRange.start.line + 1,
|
|
120
|
-
column: sourceMapRange.start.column,
|
|
121
|
-
},
|
|
122
|
-
end: {
|
|
123
|
-
line: sourceMapRange.end.line + 1,
|
|
124
|
-
column: sourceMapRange.end.column,
|
|
125
|
-
},
|
|
126
|
-
}; // Needed because the Babel typings for `loc` don't include `filename`.
|
|
127
|
-
node.start = sourceMapRange.start.offset;
|
|
128
|
-
node.end = sourceMapRange.end.offset;
|
|
129
|
-
return node;
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
function isLExpression(expr) {
|
|
133
|
-
// Some LVal types are not expressions, which prevents us from using `t.isLVal()`
|
|
134
|
-
// directly with `assert()`.
|
|
135
|
-
return t.isLVal(expr);
|
|
136
|
-
}
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFiZWxfYXN0X2ZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvbGlua2VyL2JhYmVsL3NyYy9hc3QvYmFiZWxfYXN0X2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBQ0gsT0FBTyxLQUFLLENBQUMsTUFBTSxjQUFjLENBQUM7QUFFbEMsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBRzFDOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGVBQWU7SUFDMUI7SUFDSSwyREFBMkQ7SUFDbkQsU0FBaUI7UUFBakIsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQVU3Qix1QkFBa0IsR0FBRyxDQUFDLENBQUMsZUFBZSxDQUFDO1FBb0J2QyxnQkFBVyxHQUFHLENBQUMsQ0FBQyxjQUFjLENBQUM7UUFVL0Isc0JBQWlCLEdBQUcsQ0FBQyxDQUFDLHFCQUFxQixDQUFDO1FBTTVDLDhCQUF5QixHQUFHLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQztRQWdCbEQscUJBQWdCLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUVoQyxzQkFBaUIsR0FBRyxDQUFDLENBQUMsV0FBVyxDQUFDO1FBa0JsQyx3QkFBbUIsR0FBRyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBVXRDLGtDQUE2QixHQUFHLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQztRQU0xRCwwQkFBcUIsR0FBRyxDQUFDLENBQUMsZUFBZSxDQUFDO1FBUzFDLHlCQUFvQixHQUFHLENBQUMsQ0FBQyxjQUFjLENBQUM7UUFNeEMsMEJBQXFCLEdBQUcsQ0FBQyxDQUFDLGVBQWUsQ0FBQztJQWpIVixDQUFDO0lBRWpDLGNBQWMsQ0FBQyxTQUFzQixFQUFFLGVBQWlDO1FBQ3RFLCtGQUErRjtRQUMvRixLQUFLLElBQUksQ0FBQyxHQUFHLGVBQWUsQ0FBQyxNQUFNLEdBQUcsQ0FB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QUssRUFBRTtnQkFDTCxJQUFJLEVBQUUsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsQ0FBQztnQkFDbkMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsTUFBTTthQUNwQztZQUNELEdBQUcsRUFBRTtnQkFDSCxJQUFJLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQztnQkFDakMsTUFBTSxFQUFFLGNBQWMsQ0FBQyxHQUFHLENBQUMsTUFBTTthQUNsQztTQUNLLENBQUMsQ0FBRSx1RUFBdUU7UUFDbEYsSUFBSSxDQUFDLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN6QyxJQUFJLENBQUMsR0FBRyxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDO1FBRXJDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGO0FBRUQsU0FBUyxhQUFhLENBQUMsSUFBa0I7SUFDdkMsaUZBQWlGO0lBQ2pGLDRCQUE0QjtJQUM1QixPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDeEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuaW1wb3J0ICogYXMgdCBmcm9tICdAYmFiZWwvdHlwZXMnO1xuXG5pbXBvcnQge2Fzc2VydH0gZnJvbSAnLi4vLi4vLi4vLi4vbGlua2VyJztcbmltcG9ydCB7QXN0RmFjdG9yeSwgQmluYXJ5T3BlcmF0b3IsIExlYWRpbmdDb21tZW50LCBPYmplY3RMaXRlcmFsUHJvcGVydHksIFNvdXJjZU1hcFJhbmdlLCBUZW1wbGF0ZUxpdGVyYWwsIFZhcmlhYmxlRGVjbGFyYXRpb25UeXBlfSBmcm9tICcuLi8uLi8uLi8uLi9zcmMvbmd0c2MvdHJhbnNsYXRvcic7XG5cbi8qKlxuICogQSBCYWJlbCBmbGF2b3JlZCBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgQXN0RmFjdG9yeS5cbiAqL1xuZXhwb3J0IGNsYXNzIEJhYmVsQXN0RmFjdG9yeSBpbXBsZW1lbnRzIEFzdEZhY3Rvcnk8dC5TdGF0ZW1lbnQsIHQuRXhwcmVzc2lvbj4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICAgIC8qKiBUaGUgYWJzb2x1dGUgcGF0aCB0byB0aGUgc291cmNlIGZpbGUgYmVpbmcgY29tcGlsZWQuICovXG4gICAgICBwcml2YXRlIHNvdXJjZVVybDogc3RyaW5nKSB7fVxuXG4gIGF0dGFjaENvbW1lbnRzKHN0YXRlbWVudDogdC5TdGF0ZW1lbnQsIGxlYWRpbmdDb21tZW50czogTGVhZGluZ0NvbW1lbnRbXSk6IHZvaWQge1xuICAgIC8vIFdlIG11c3QgcHJvY2VzcyB0aGUgY29tbWVudHMgaW4gcmV2ZXJzZSBiZWNhdXNlIGB0LmFkZENvbW1lbnQoKWAgd2lsbCBhZGQgbmV3IG9uZXMgaW4gZnJvbnQuXG4gICAgZm9yIChsZXQgaSA9IGxlYWRpbmdDb21tZW50cy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xuICAgICAgY29uc3QgY29tbWVudCA9IGxlYWRpbmdDb21tZW50c1tpXTtcbiAgICAgIHQuYWRkQ29tbWVudChzdGF0ZW1lbnQsICdsZWFkaW5nJywgY29tbWVudC50b1N0cmluZygpLCAhY29tbWVudC5tdWx0aWxpbmUpO1xuICAgIH1cbiAgfVxuXG4gIGNyZWF0ZUFycmF5TGl0ZXJhbCA9IHQuYXJyYXlFeHByZXNzaW9uO1xuXG4gIGNyZWF0ZUFzc2lnbm1lbnQodGFyZ2V0OiB0LkV4cHJlc3Npb24sIHZhbHVlOiB0LkV4cHJlc3Npb24pOiB0LkV4cHJlc3Npb24ge1xuICAgIGFzc2VydCh0YXJnZXQsIGlzTEV4cHJlc3Npb24sICdtdXN0IGJlIGEgbGVmdCBoYW5kIHNpZGUgZXhwcmVzc2lvbicpO1xuICAgIHJldHVybiB0LmFzc2lnbm1lbnRFeHByZXNzaW9uKCc9JywgdGFyZ2V0LCB2YWx1ZSk7XG4gIH1cblxuICBjcmVhdGVCaW5hcnlFeHByZXNzaW9uKFxuICAgICAgbGVmdE9wZXJhbmQ6IHQuRXhwcmVzc2lvbiwgb3BlcmF0b3I6IEJpbmFyeU9wZXJhdG9yLFxuICAgICAgcmlnaHRPcGVyYW5kOiB0LkV4cHJlc3Npb24pOiB0LkV4cHJlc3Npb24ge1xuICAgIHN3aXRjaCAob3BlcmF0b3IpIHtcbiAgICAgIGNhc2UgJyYmJzpcbiAgICAgIGNhc2UgJ3x8JzpcbiAgICAgIGNhc2UgJz8/JzpcbiAgICAgICAgcmV0dXJuIHQubG9naWNhbEV4cHJlc3Npb24ob3BlcmF0b3IsIGxlZnRPcGVyYW5kLCByaWdodE9wZXJhbmQpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHQuYmluYXJ5RXhwcmVzc2lvbihvcGVyYXRvciwgbGVmdE9wZXJhbmQsIHJpZ2h0T3BlcmFuZCk7XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlQmxvY2sgPSB0LmJsb2NrU3RhdGVtZW50O1xuXG4gIGNyZWF0ZUNhbGxFeHByZXNzaW9uKGNhbGxlZTogdC5FeHByZXNzaW9uLCBhcmdzOiB0LkV4cHJlc3Npb25bXSwgcHVyZTogYm9vbGVhbik6IHQuRXhwcmVzc2lvbiB7XG4gICAgY29uc3QgY2FsbCA9IHQuY2FsbEV4cHJlc3Npb24oY2FsbGVlLCBhcmdzKTtcbiAgICBpZiAocHVyZSkge1xuICAgICAgdC5hZGRDb21tZW50KGNhbGwsICdsZWFkaW5nJywgJyBAX19QVVJFX18gJywgLyogbGluZSAqLyBmYWxzZSk7XG4gICAgfVxuICAgIHJldHVybiBjYWxsO1xuICB9XG5cbiAgY3JlYXRlQ29uZGl0aW9uYWwgPSB0LmNvbmRpdGlvbmFsRXhwcmVzc2lvbjtcblxuICBjcmVhdGVFbGVtZW50QWNjZXNzKGV4cHJlc3Npb246IHQuRXhwcmVzc2lvbiwgZWxlbWVudDogdC5FeHByZXNzaW9uKTogdC5FeHByZXNzaW9uIHtcbiAgICByZXR1cm4gdC5tZW1iZXJFeHByZXNzaW9uKGV4cHJlc3Npb24sIGVsZW1lbnQsIC8qIGNvbXB1dGVkICovIHRydWUpO1xuICB9XG5cbiAgY3JlYXRlRXhwcmVzc2lvblN0YXRlbWVudCA9IHQuZXhwcmVzc2lvblN0YXRlbWVudDtcblxuICBjcmVhdGVGdW5jdGlvbkRlY2xhcmF0aW9uKGZ1bmN0aW9uTmFtZTogc3RyaW5nLCBwYXJhbWV0ZXJzOiBzdHJpbmdbXSwgYm9keTogdC5TdGF0ZW1lbnQpOlxuICAgICAgdC5TdGF0ZW1lbnQge1xuICAgIGFzc2VydChib2R5LCB0LmlzQmxvY2tTdGF0ZW1lbnQsICdhIGJsb2NrJyk7XG4gICAgcmV0dXJuIHQuZnVuY3Rpb25EZWNsYXJhdGlvbihcbiAgICAgICAgdC5pZGVudGlmaWVyKGZ1bmN0aW9uTmFtZSksIHBhcmFtZXRlcnMubWFwKHBhcmFtID0+IHQuaWRlbnRpZmllcihwYXJhbSkpLCBib2R5KTtcbiAgfVxuXG4gIGNyZWF0ZUZ1bmN0aW9uRXhwcmVzc2lvbihmdW5jdGlvbk5hbWU6IHN0cmluZ3xudWxsLCBwYXJhbWV0ZXJzOiBzdHJpbmdbXSwgYm9keTogdC5TdGF0ZW1lbnQpOlxuICAgICAgdC5FeHByZXNzaW9uIHtcbiAgICBhc3NlcnQoYm9keSwgdC5pc0Jsb2NrU3RhdGVtZW50LCAnYSBibG9jaycpO1xuICAgIGNvbnN0IG5hbWUgPSBmdW5jdGlvbk5hbWUgIT09IG51bGwgPyB0LmlkZW50aWZpZXIoZnVuY3Rpb25OYW1lKSA6IG51bGw7XG4gICAgcmV0dXJuIHQuZnVuY3Rpb25FeHByZXNzaW9uKG5hbWUsIHBhcmFtZXRlcnMubWFwKHBhcmFtID0+IHQuaWRlbnRpZmllcihwYXJhbSkpLCBib2R5KTtcbiAgfVxuXG4gIGNyZWF0ZUlkZW50aWZpZXIgPSB0LmlkZW50aWZpZXI7XG5cbiAgY3JlYXRlSWZTdGF0ZW1lbnQgPSB0LmlmU3RhdGVtZW50O1xuXG4gIGNyZWF0ZUxpdGVyYWwodmFsdWU6IHN0cmluZ3xudW1iZXJ8Ym9vbGVhbnxudWxsfHVuZGVmaW5lZCk6IHQuRXhwcmVzc2lvbiB7XG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0LnN0cmluZ0xpdGVyYWwodmFsdWUpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgICAgcmV0dXJuIHQubnVtZXJpY0xpdGVyYWwodmFsdWUpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicpIHtcbiAgICAgIHJldHVybiB0LmJvb2xlYW5MaXRlcmFsKHZhbHVlKTtcbiAgICB9IGVsc2UgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB0LmlkZW50aWZpZXIoJ3VuZGVmaW5lZCcpO1xuICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiB0Lm51bGxMaXRlcmFsKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBsaXRlcmFsOiAke3ZhbHVlfSAoJHt0eXBlb2YgdmFsdWV9KWApO1xuICAgIH1cbiAgfVxuXG4gIGNyZWF0ZU5ld0V4cHJlc3Npb24gPSB0Lm5ld0V4cHJlc3Npb247XG5cbiAgY3JlYXRlT2JqZWN0TGl0ZXJhbChwcm9wZXJ0aWVzOiBPYmplY3RMaXRlcmFsUHJvcGVydHk8dC5FeHByZXNzaW9uPltdKTogdC5FeHByZXNzaW9uIHtcbiAgICByZXR1cm4gdC5vYmplY3RFeHByZXNzaW9uKHByb3BlcnRpZXMubWFwKHByb3AgPT4ge1xuICAgICAgY29uc3Qga2V5ID1cbiAgICAgICAgICBwcm9wLnF1b3RlZCA/IHQuc3RyaW5nTGl0ZXJhbChwcm9wLnByb3BlcnR5TmFtZSkgOiB0LmlkZW50aWZpZXIocHJvcC5wcm9wZXJ0eU5hbWUpO1xuICAgICAgcmV0dXJuIHQub2JqZWN0UHJvcGVydHkoa2V5LCBwcm9wLnZhbHVlKTtcbiAgICB9KSk7XG4gIH1cblxuICBjcmVhdGVQYXJlbnRoZXNpemVkRXhwcmVzc2lvbiA9IHQucGFyZW50aGVzaXplZEV4cHJlc3Npb247XG5cbiAgY3JlYXRlUHJvcGVydHlBY2Nlc3MoZXhwcmVzc2lvbjogdC5FeHByZXNzaW9uLCBwcm9wZXJ0eU5hbWU6IHN0cmluZyk6IHQuRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIHQubWVtYmVyRXhwcmVzc2lvbihleHByZXNzaW9uLCB0LmlkZW50aWZpZXIocHJvcGVydHlOYW1lKSwgLyogY29tcHV0ZWQgKi8gZmFsc2UpO1xuICB9XG5cbiAgY3JlYXRlUmV0dXJuU3RhdGVtZW50ID0gdC5yZXR1cm5TdGF0ZW1lbnQ7XG5cbiAgY3JlYXRlVGFnZ2VkVGVtcGxhdGUodGFnOiB0LkV4cHJlc3Npb24sIHRlbXBsYXRlOiBUZW1wbGF0ZUxpdGVyYWw8dC5FeHByZXNzaW9uPik6IHQuRXhwcmVzc2lvbiB7XG4gICAgY29uc3QgZWxlbWVudHMgPSB0ZW1wbGF0ZS5lbGVtZW50cy5tYXAoXG4gICAgICAgIChlbGVtZW50LCBpKSA9PiB0aGlzLnNldFNvdXJjZU1hcFJhbmdlKFxuICAgICAgICAgICAgdC50ZW1wbGF0ZUVsZW1lbnQoZWxlbWVudCwgaSA9PT0gdGVtcGxhdGUuZWxlbWVudHMubGVuZ3RoIC0gMSksIGVsZW1lbnQucmFuZ2UpKTtcbiAgICByZXR1cm4gdC50YWdnZWRUZW1wbGF0ZUV4cHJlc3Npb24odGFnLCB0LnRlbXBsYXRlTGl0ZXJhbChlbGVtZW50cywgdGVtcGxhdGUuZXhwcmVzc2lvbnMpKTtcbiAgfVxuXG4gIGNyZWF0ZVRocm93U3RhdGVtZW50ID0gdC50aHJvd1N0YXRlbWVudDtcblxuICBjcmVhdGVUeXBlT2ZFeHByZXNzaW9uKGV4cHJlc3Npb246IHQuRXhwcmVzc2lvbik6IHQuRXhwcmVzc2lvbiB7XG4gICAgcmV0dXJuIHQudW5hcnlFeHByZXNzaW9uKCd0eXBlb2YnLCBleHByZXNzaW9uKTtcbiAgfVxuXG4gIGNyZWF0ZVVuYXJ5RXhwcmVzc2lvbiA9IHQudW5hcnlFeHByZXNzaW9uO1xuXG4gIGNyZWF0ZVZhcmlhYmxlRGVjbGFyYXRpb24oXG4gICAgICB2YXJpYWJsZU5hbWU6IHN0cmluZywgaW5pdGlhbGl6ZXI6IHQuRXhwcmVzc2lvbnxudWxsLFxuICAgICAgdHlwZTogVmFyaWFibGVEZWNsYXJhdGlvblR5cGUpOiB0LlN0YXRlbWVudCB7XG4gICAgcmV0dXJuIHQudmFyaWFibGVEZWNsYXJhdGlvbihcbiAgICAgICAgdHlwZSwgW3QudmFyaWFibGVEZWNsYXJhdG9yKHQuaWRlbnRpZmllcih2YXJpYWJsZU5hbWUpLCBpbml0aWFsaXplcildKTtcbiAgfVxuXG4gIHNldFNvdXJjZU1hcFJhbmdlPFQgZXh0ZW5kcyB0LlN0YXRlbWVudHx0LkV4cHJlc3Npb258dC5UZW1wbGF0ZUVsZW1lbnQ+KFxuICAgICAgbm9kZTogVCwgc291cmNlTWFwUmFuZ2U6IFNvdXJjZU1hcFJhbmdlfG51bGwpOiBUIHtcbiAgICBpZiAoc291cmNlTWFwUmFuZ2UgPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBub2RlO1xuICAgIH1cbiAgICBub2RlLmxvYyA9IHtcbiAgICAgIC8vIEFkZCBpbiB0aGUgZmlsZW5hbWUgc28gdGhhdCB3ZSBjYW4gbWFwIHRvIGV4dGVybmFsIHRlbXBsYXRlIGZpbGVzLlxuICAgICAgLy8gTm90ZSB0aGF0IEJhYmVsIGdldHMgY29uZnVzZWQgaWYgeW91IHNwZWNpZnkgYSBmaWxlbmFtZSB3aGVuIGl0IGlzIHRoZSBvcmlnaW5hbCBzb3VyY2VcbiAgICAgIC8vIGZpbGUuIFRoaXMgaGFwcGVucyB3aGVuIHRoZSB0ZW1wbGF0ZSBpcyBpbmxpbmUsIGluIHdoaWNoIGNhc2UganVzdCB1c2UgYHVuZGVmaW5lZGAuXG4gICAgICBmaWxlbmFtZTogc291cmNlTWFwUmFuZ2UudXJsICE9PSB0aGlzLnNvdXJjZVVybCA/IHNvdXJjZU1hcFJhbmdlLnVybCA6IHVuZGVmaW5lZCxcbiAgICAgIHN0YXJ0OiB7XG4gICAgICAgIGxpbmU6IHNvdXJjZU1hcFJhbmdlLnN0YXJ0LmxpbmUgKyAxLCAgLy8gbGluZXMgYXJlIDEtYmFzZWQgaW4gQmFiZWwuXG4gICAgICAgIGNvbHVtbjogc291cmNlTWFwUmFuZ2Uuc3RhcnQuY29sdW1uLFxuICAgICAgfSxcbiAgICAgIGVuZDoge1xuICAgICAgICBsaW5lOiBzb3VyY2VNYXBSYW5nZS5lbmQubGluZSArIDEsICAvLyBsaW5lcyBhcmUgMS1iYXNlZCBpbiBCYWJlbC5cbiAgICAgICAgY29sdW1uOiBzb3VyY2VNYXBSYW5nZS5lbmQuY29sdW1uLFxuICAgICAgfSxcbiAgICB9IGFzIGFueTsgIC8vIE5lZWRlZCBiZWNhdXNlIHRoZSBCYWJlbCB0eXBpbmdzIGZvciBgbG9jYCBkb24ndCBpbmNsdWRlIGBmaWxlbmFtZWAuXG4gICAgbm9kZS5zdGFydCA9IHNvdXJjZU1hcFJhbmdlLnN0YXJ0Lm9mZnNldDtcbiAgICBub2RlLmVuZCA9IHNvdXJjZU1hcFJhbmdlLmVuZC5vZmZzZXQ7XG5cbiAgICByZXR1cm4gbm9kZTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc0xFeHByZXNzaW9uKGV4cHI6IHQuRXhwcmVzc2lvbik6IGV4cHIgaXMgRXh0cmFjdDx0LkxWYWwsIHQuRXhwcmVzc2lvbj4ge1xuICAvLyBTb21lIExWYWwgdHlwZXMgYXJlIG5vdCBleHByZXNzaW9ucywgd2hpY2ggcHJldmVudHMgdXMgZnJvbSB1c2luZyBgdC5pc0xWYWwoKWBcbiAgLy8gZGlyZWN0bHkgd2l0aCBgYXNzZXJ0KClgLlxuICByZXR1cm4gdC5pc0xWYWwoZXhwcik7XG59XG4iXX0=
|