@cucumber/cucumber 12.8.3 → 13.0.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/README.md +8 -3
- package/bin/cucumber.js +2 -1
- package/lib/api/convert_configuration.d.ts +3 -4
- package/lib/api/convert_configuration.js +9 -11
- package/lib/api/emit_support_code_messages.d.ts +3 -3
- package/lib/api/emit_support_code_messages.js +13 -28
- package/lib/api/formatters.d.ts +7 -7
- package/lib/api/formatters.js +5 -2
- package/lib/api/gherkin.d.ts +3 -3
- package/lib/api/gherkin.js +2 -4
- package/lib/api/index.d.ts +2 -2
- package/lib/api/index.js +1 -1
- package/lib/api/load_configuration.d.ts +2 -2
- package/lib/api/load_configuration.js +4 -5
- package/lib/api/load_sources.d.ts +2 -2
- package/lib/api/load_sources.js +2 -2
- package/lib/api/load_support.d.ts +2 -2
- package/lib/api/load_support.js +3 -3
- package/lib/api/plugins.d.ts +2 -2
- package/lib/api/plugins.js +8 -7
- package/lib/api/run_cucumber.d.ts +3 -3
- package/lib/api/run_cucumber.js +17 -1
- package/lib/api/support.d.ts +3 -3
- package/lib/api/support.js +5 -5
- package/lib/api/test_helpers.d.ts +1 -1
- package/lib/api/test_helpers.js +8 -10
- package/lib/api/types.d.ts +9 -5
- package/lib/api/types.js +1 -1
- package/lib/assemble/assemble_test_cases.d.ts +4 -4
- package/lib/assemble/assemble_test_cases.js +2 -6
- package/lib/assemble/index.js +1 -1
- package/lib/assemble/types.d.ts +1 -1
- package/lib/assemble/types.js +1 -1
- package/lib/cli/i18n.js +5 -3
- package/lib/cli/index.d.ts +1 -1
- package/lib/cli/index.js +2 -2
- package/lib/cli/install_validator.js +4 -3
- package/lib/cli/run.js +7 -6
- package/lib/cli/validate_node_engine_version.js +2 -4
- package/lib/configuration/argv_parser.d.ts +1 -1
- package/lib/configuration/argv_parser.js +7 -7
- package/lib/configuration/check_schema.d.ts +1 -1
- package/lib/configuration/check_schema.js +19 -6
- package/lib/configuration/default_configuration.d.ts +1 -1
- package/lib/configuration/default_configuration.js +2 -1
- package/lib/configuration/from_file.d.ts +2 -2
- package/lib/configuration/from_file.js +6 -6
- package/lib/configuration/helpers.js +1 -1
- package/lib/configuration/index.js +1 -1
- package/lib/configuration/locate_file.js +3 -3
- package/lib/configuration/merge_configurations.d.ts +1 -1
- package/lib/configuration/merge_configurations.js +2 -10
- package/lib/configuration/parse_configuration.d.ts +2 -2
- package/lib/configuration/parse_configuration.js +3 -11
- package/lib/configuration/split_format_descriptor.d.ts +1 -2
- package/lib/configuration/split_format_descriptor.js +11 -71
- package/lib/configuration/types.d.ts +26 -3
- package/lib/configuration/types.js +1 -1
- package/lib/configuration/validate_configuration.d.ts +2 -2
- package/lib/configuration/validate_configuration.js +5 -3
- package/lib/environment/console_logger.d.ts +2 -2
- package/lib/environment/console_logger.js +1 -1
- package/lib/environment/index.js +1 -1
- package/lib/environment/make_environment.d.ts +1 -1
- package/lib/environment/make_environment.js +1 -1
- package/lib/environment/types.d.ts +1 -1
- package/lib/environment/types.js +1 -1
- package/lib/filter/filter_plugin.d.ts +2 -2
- package/lib/filter/filter_plugin.js +1 -1
- package/lib/filter/index.d.ts +1 -1
- package/lib/filter/index.js +2 -2
- package/lib/filter/order_pickles.d.ts +2 -2
- package/lib/filter/order_pickles.js +1 -1
- package/lib/filter/types.d.ts +1 -1
- package/lib/filter/types.js +1 -1
- package/lib/filter_stack_trace.d.ts +1 -1
- package/lib/filter_stack_trace.js +1 -1
- package/lib/formatter/builder.d.ts +7 -6
- package/lib/formatter/builder.js +6 -7
- package/lib/formatter/builtin/html.js +2 -2
- package/lib/formatter/builtin/index.d.ts +4 -4
- package/lib/formatter/builtin/index.js +14 -13
- package/lib/formatter/builtin/message.js +2 -2
- package/lib/formatter/builtin/pretty.d.ts +6 -0
- package/lib/formatter/builtin/pretty.js +19 -0
- package/lib/formatter/builtin/progress-bar.d.ts +6 -0
- package/lib/formatter/builtin/progress-bar.js +22 -0
- package/lib/formatter/builtin/progress.d.ts +6 -0
- package/lib/formatter/builtin/progress.js +18 -0
- package/lib/formatter/builtin/resolve_terminal_options.d.ts +3 -0
- package/lib/formatter/builtin/resolve_terminal_options.js +15 -0
- package/lib/formatter/builtin/summary.d.ts +6 -0
- package/lib/formatter/builtin/summary.js +15 -0
- package/lib/formatter/create_stream.d.ts +2 -2
- package/lib/formatter/create_stream.js +3 -5
- package/lib/formatter/find_class_or_plugin.js +1 -1
- package/lib/formatter/get_color_fns.d.ts +3 -3
- package/lib/formatter/get_color_fns.js +23 -52
- package/lib/formatter/helpers/duration_helpers.d.ts +1 -1
- package/lib/formatter/helpers/duration_helpers.js +1 -1
- package/lib/formatter/helpers/event_data_collector.d.ts +2 -2
- package/lib/formatter/helpers/event_data_collector.js +4 -6
- package/lib/formatter/helpers/formatters.d.ts +1 -1
- package/lib/formatter/helpers/formatters.js +1 -3
- package/lib/formatter/helpers/gherkin_document_parser.d.ts +1 -1
- package/lib/formatter/helpers/gherkin_document_parser.js +20 -18
- package/lib/formatter/helpers/index.d.ts +3 -3
- package/lib/formatter/helpers/index.js +8 -8
- package/lib/formatter/helpers/issue_helpers.d.ts +5 -5
- package/lib/formatter/helpers/issue_helpers.js +2 -2
- package/lib/formatter/helpers/keyword_type.js +2 -2
- package/lib/formatter/helpers/location_helpers.d.ts +1 -1
- package/lib/formatter/helpers/location_helpers.js +1 -1
- package/lib/formatter/helpers/pickle_parser.d.ts +2 -2
- package/lib/formatter/helpers/pickle_parser.js +8 -9
- package/lib/formatter/helpers/step_argument_formatter.d.ts +1 -1
- package/lib/formatter/helpers/step_argument_formatter.js +1 -1
- package/lib/formatter/helpers/summary_helpers.d.ts +2 -2
- package/lib/formatter/helpers/summary_helpers.js +8 -4
- package/lib/formatter/helpers/test_case_attempt_formatter.d.ts +4 -4
- package/lib/formatter/helpers/test_case_attempt_formatter.js +5 -5
- package/lib/formatter/helpers/test_case_attempt_parser.d.ts +4 -4
- package/lib/formatter/helpers/test_case_attempt_parser.js +4 -9
- package/lib/formatter/helpers/usage_helpers/index.d.ts +3 -3
- package/lib/formatter/helpers/usage_helpers/index.js +5 -6
- package/lib/formatter/import_code.js +2 -2
- package/lib/formatter/index.d.ts +25 -13
- package/lib/formatter/index.js +2 -2
- package/lib/formatter/json_formatter.d.ts +2 -2
- package/lib/formatter/json_formatter.js +9 -14
- package/lib/formatter/progress_formatter.d.ts +4 -1
- package/lib/formatter/progress_formatter.js +4 -1
- package/lib/formatter/rerun_formatter.d.ts +1 -1
- package/lib/formatter/rerun_formatter.js +2 -2
- package/lib/formatter/resolve_implementation.d.ts +1 -1
- package/lib/formatter/resolve_implementation.js +2 -2
- package/lib/formatter/snippets_formatter.d.ts +1 -1
- package/lib/formatter/snippets_formatter.js +2 -2
- package/lib/formatter/step_definition_snippet_builder/index.d.ts +4 -4
- package/lib/formatter/step_definition_snippet_builder/index.js +3 -3
- package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.d.ts +1 -1
- package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.js +3 -5
- package/lib/formatter/step_definition_snippet_builder/snippet_syntax.d.ts +1 -1
- package/lib/formatter/step_definition_snippet_builder/snippet_syntax.js +1 -1
- package/lib/formatter/summary_formatter.d.ts +6 -3
- package/lib/formatter/summary_formatter.js +6 -3
- package/lib/formatter/usage_formatter.d.ts +1 -1
- package/lib/formatter/usage_formatter.js +4 -4
- package/lib/formatter/usage_json_formatter.d.ts +1 -1
- package/lib/formatter/usage_json_formatter.js +3 -3
- package/lib/index.d.ts +6 -11
- package/lib/index.js +13 -20
- package/lib/models/data_table.d.ts +1 -1
- package/lib/models/data_table.js +9 -5
- package/lib/models/definition.d.ts +4 -4
- package/lib/models/definition.js +1 -1
- package/lib/models/gherkin_step_keyword.js +1 -1
- package/lib/models/step_definition.d.ts +3 -3
- package/lib/models/step_definition.js +1 -1
- package/lib/models/test_case_hook_definition.d.ts +2 -2
- package/lib/models/test_case_hook_definition.js +1 -1
- package/lib/models/test_run_hook_definition.d.ts +1 -1
- package/lib/models/test_run_hook_definition.js +1 -1
- package/lib/models/test_step_hook_definition.d.ts +2 -2
- package/lib/models/test_step_hook_definition.js +1 -1
- package/lib/paths/index.js +1 -1
- package/lib/paths/paths.d.ts +3 -3
- package/lib/paths/paths.js +42 -18
- package/lib/paths/types.js +1 -1
- package/lib/pickle_filter.d.ts +1 -1
- package/lib/pickle_filter.js +3 -3
- package/lib/plugin/index.d.ts +1 -1
- package/lib/plugin/index.js +2 -2
- package/lib/plugin/plugin_manager.d.ts +6 -3
- package/lib/plugin/plugin_manager.js +33 -22
- package/lib/plugin/types.d.ts +76 -10
- package/lib/plugin/types.js +1 -1
- package/lib/publish/index.js +1 -1
- package/lib/publish/publish_plugin.d.ts +2 -2
- package/lib/publish/publish_plugin.js +29 -24
- package/lib/publish/types.js +1 -1
- package/lib/runtime/attachment_manager/index.d.ts +1 -1
- package/lib/runtime/attachment_manager/index.js +3 -6
- package/lib/runtime/coordinator.d.ts +13 -6
- package/lib/runtime/coordinator.js +26 -18
- package/lib/runtime/format_error.d.ts +1 -1
- package/lib/runtime/format_error.js +43 -15
- package/lib/runtime/helpers.d.ts +2 -2
- package/lib/runtime/helpers.js +2 -2
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/make_runtime.d.ts +10 -9
- package/lib/runtime/make_runtime.js +4 -5
- package/lib/runtime/make_suggestion.d.ts +2 -2
- package/lib/runtime/make_suggestion.js +1 -1
- package/lib/runtime/parallel/adapter.d.ts +27 -39
- package/lib/runtime/parallel/adapter.js +124 -122
- package/lib/runtime/parallel/test_cases_phase.d.ts +19 -0
- package/lib/runtime/parallel/test_cases_phase.js +63 -0
- package/lib/runtime/parallel/test_run_hooks_phase.d.ts +11 -0
- package/lib/runtime/parallel/test_run_hooks_phase.js +33 -0
- package/lib/runtime/parallel/types.d.ts +38 -22
- package/lib/runtime/parallel/types.js +1 -1
- package/lib/runtime/parallel/worker.mjs +65 -0
- package/lib/runtime/scope/index.js +1 -1
- package/lib/runtime/scope/make_proxy.js +1 -1
- package/lib/runtime/scope/test_case_scope.d.ts +1 -1
- package/lib/runtime/scope/test_case_scope.js +1 -1
- package/lib/runtime/scope/test_run_scope.d.ts +1 -1
- package/lib/runtime/scope/test_run_scope.js +1 -1
- package/lib/runtime/serial/adapter.d.ts +15 -9
- package/lib/runtime/serial/adapter.js +21 -9
- package/lib/runtime/step_runner.d.ts +2 -2
- package/lib/runtime/step_runner.js +2 -2
- package/lib/runtime/stopwatch.d.ts +1 -1
- package/lib/runtime/stopwatch.js +1 -1
- package/lib/runtime/test_case_runner.d.ts +10 -9
- package/lib/runtime/test_case_runner.js +20 -12
- package/lib/runtime/types.d.ts +7 -3
- package/lib/runtime/types.js +1 -1
- package/lib/runtime/worker.d.ts +14 -13
- package/lib/runtime/worker.js +26 -44
- package/lib/sharding/index.js +1 -1
- package/lib/sharding/sharding_plugin.d.ts +2 -2
- package/lib/sharding/sharding_plugin.js +1 -1
- package/lib/step_arguments.d.ts +1 -1
- package/lib/step_arguments.js +1 -1
- package/lib/support_code_library_builder/build_parameter_type.d.ts +1 -1
- package/lib/support_code_library_builder/build_parameter_type.js +5 -3
- package/lib/support_code_library_builder/context.js +1 -1
- package/lib/support_code_library_builder/get_definition_line_and_uri.d.ts +1 -1
- package/lib/support_code_library_builder/get_definition_line_and_uri.js +1 -1
- package/lib/support_code_library_builder/index.d.ts +7 -7
- package/lib/support_code_library_builder/index.js +9 -9
- package/lib/support_code_library_builder/parallel_can_assign_helpers.d.ts +1 -1
- package/lib/support_code_library_builder/parallel_can_assign_helpers.js +3 -4
- package/lib/support_code_library_builder/sourced_parameter_type_registry.d.ts +2 -2
- package/lib/support_code_library_builder/sourced_parameter_type_registry.js +1 -1
- package/lib/support_code_library_builder/types.d.ts +8 -8
- package/lib/support_code_library_builder/types.js +1 -1
- package/lib/support_code_library_builder/validate_arguments.d.ts +1 -1
- package/lib/support_code_library_builder/validate_arguments.js +1 -1
- package/lib/support_code_library_builder/world.d.ts +2 -2
- package/lib/support_code_library_builder/world.js +2 -2
- package/lib/time.js +2 -2
- package/lib/try_require.js +3 -2
- package/lib/types/index.js +1 -1
- package/lib/uncaught_exception_manager.js +1 -1
- package/lib/user_code_runner.d.ts +1 -1
- package/lib/user_code_runner.js +3 -3
- package/lib/value_checker.js +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +2 -2
- package/lib/wrapper.mjs +1 -5
- package/package.json +40 -63
- package/lib/api/convert_configuration.js.map +0 -1
- package/lib/api/emit_support_code_messages.js.map +0 -1
- package/lib/api/formatters.js.map +0 -1
- package/lib/api/gherkin.js.map +0 -1
- package/lib/api/index.js.map +0 -1
- package/lib/api/load_configuration.js.map +0 -1
- package/lib/api/load_sources.js.map +0 -1
- package/lib/api/load_support.js.map +0 -1
- package/lib/api/plugins.js.map +0 -1
- package/lib/api/run_cucumber.js.map +0 -1
- package/lib/api/support.js.map +0 -1
- package/lib/api/test_helpers.js.map +0 -1
- package/lib/api/types.js.map +0 -1
- package/lib/assemble/assemble_test_cases.js.map +0 -1
- package/lib/assemble/index.js.map +0 -1
- package/lib/assemble/types.js.map +0 -1
- package/lib/cli/i18n.js.map +0 -1
- package/lib/cli/index.js.map +0 -1
- package/lib/cli/install_validator.js.map +0 -1
- package/lib/cli/run.js.map +0 -1
- package/lib/cli/validate_node_engine_version.js.map +0 -1
- package/lib/configuration/argv_parser.js.map +0 -1
- package/lib/configuration/check_schema.js.map +0 -1
- package/lib/configuration/default_configuration.js.map +0 -1
- package/lib/configuration/from_file.js.map +0 -1
- package/lib/configuration/helpers.js.map +0 -1
- package/lib/configuration/index.js.map +0 -1
- package/lib/configuration/locate_file.js.map +0 -1
- package/lib/configuration/merge_configurations.js.map +0 -1
- package/lib/configuration/parse_configuration.js.map +0 -1
- package/lib/configuration/split_format_descriptor.js.map +0 -1
- package/lib/configuration/types.js.map +0 -1
- package/lib/configuration/validate_configuration.js.map +0 -1
- package/lib/environment/console_logger.js.map +0 -1
- package/lib/environment/index.js.map +0 -1
- package/lib/environment/make_environment.js.map +0 -1
- package/lib/environment/types.js.map +0 -1
- package/lib/filter/filter_plugin.js.map +0 -1
- package/lib/filter/index.js.map +0 -1
- package/lib/filter/order_pickles.js.map +0 -1
- package/lib/filter/types.js.map +0 -1
- package/lib/filter_stack_trace.js.map +0 -1
- package/lib/formatter/builder.js.map +0 -1
- package/lib/formatter/builtin/html.js.map +0 -1
- package/lib/formatter/builtin/index.js.map +0 -1
- package/lib/formatter/builtin/message.js.map +0 -1
- package/lib/formatter/create_stream.js.map +0 -1
- package/lib/formatter/find_class_or_plugin.js.map +0 -1
- package/lib/formatter/get_color_fns.js.map +0 -1
- package/lib/formatter/helpers/duration_helpers.js.map +0 -1
- package/lib/formatter/helpers/event_data_collector.js.map +0 -1
- package/lib/formatter/helpers/formatters.js.map +0 -1
- package/lib/formatter/helpers/gherkin_document_parser.js.map +0 -1
- package/lib/formatter/helpers/index.js.map +0 -1
- package/lib/formatter/helpers/issue_helpers.js.map +0 -1
- package/lib/formatter/helpers/keyword_type.js.map +0 -1
- package/lib/formatter/helpers/location_helpers.js.map +0 -1
- package/lib/formatter/helpers/pickle_parser.js.map +0 -1
- package/lib/formatter/helpers/step_argument_formatter.js.map +0 -1
- package/lib/formatter/helpers/summary_helpers.js.map +0 -1
- package/lib/formatter/helpers/test_case_attempt_formatter.js.map +0 -1
- package/lib/formatter/helpers/test_case_attempt_parser.js.map +0 -1
- package/lib/formatter/helpers/usage_helpers/index.js.map +0 -1
- package/lib/formatter/import_code.js.map +0 -1
- package/lib/formatter/index.js.map +0 -1
- package/lib/formatter/json_formatter.js.map +0 -1
- package/lib/formatter/progress_bar_formatter.d.ts +0 -18
- package/lib/formatter/progress_bar_formatter.js +0 -103
- package/lib/formatter/progress_bar_formatter.js.map +0 -1
- package/lib/formatter/progress_formatter.js.map +0 -1
- package/lib/formatter/rerun_formatter.js.map +0 -1
- package/lib/formatter/resolve_implementation.js.map +0 -1
- package/lib/formatter/snippets_formatter.js.map +0 -1
- package/lib/formatter/step_definition_snippet_builder/index.js.map +0 -1
- package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.js.map +0 -1
- package/lib/formatter/step_definition_snippet_builder/snippet_syntax.js.map +0 -1
- package/lib/formatter/summary_formatter.js.map +0 -1
- package/lib/formatter/usage_formatter.js.map +0 -1
- package/lib/formatter/usage_json_formatter.js.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/models/data_table.js.map +0 -1
- package/lib/models/definition.js.map +0 -1
- package/lib/models/gherkin_step_keyword.js.map +0 -1
- package/lib/models/step_definition.js.map +0 -1
- package/lib/models/test_case_hook_definition.js.map +0 -1
- package/lib/models/test_run_hook_definition.js.map +0 -1
- package/lib/models/test_step_hook_definition.js.map +0 -1
- package/lib/paths/index.js.map +0 -1
- package/lib/paths/paths.js.map +0 -1
- package/lib/paths/types.js.map +0 -1
- package/lib/pickle_filter.js.map +0 -1
- package/lib/plugin/index.js.map +0 -1
- package/lib/plugin/plugin_manager.js.map +0 -1
- package/lib/plugin/types.js.map +0 -1
- package/lib/publish/index.js.map +0 -1
- package/lib/publish/publish_plugin.js.map +0 -1
- package/lib/publish/types.js.map +0 -1
- package/lib/runtime/attachment_manager/index.js.map +0 -1
- package/lib/runtime/coordinator.js.map +0 -1
- package/lib/runtime/format_error.js.map +0 -1
- package/lib/runtime/helpers.js.map +0 -1
- package/lib/runtime/index.js.map +0 -1
- package/lib/runtime/make_runtime.js.map +0 -1
- package/lib/runtime/make_suggestion.js.map +0 -1
- package/lib/runtime/parallel/adapter.js.map +0 -1
- package/lib/runtime/parallel/run_worker.js +0 -25
- package/lib/runtime/parallel/run_worker.js.map +0 -1
- package/lib/runtime/parallel/types.js.map +0 -1
- package/lib/runtime/parallel/worker.d.ts +0 -25
- package/lib/runtime/parallel/worker.js +0 -83
- package/lib/runtime/parallel/worker.js.map +0 -1
- package/lib/runtime/scope/index.js.map +0 -1
- package/lib/runtime/scope/make_proxy.js.map +0 -1
- package/lib/runtime/scope/test_case_scope.js.map +0 -1
- package/lib/runtime/scope/test_run_scope.js.map +0 -1
- package/lib/runtime/serial/adapter.js.map +0 -1
- package/lib/runtime/step_runner.js.map +0 -1
- package/lib/runtime/stopwatch.js.map +0 -1
- package/lib/runtime/test_case_runner.js.map +0 -1
- package/lib/runtime/types.js.map +0 -1
- package/lib/runtime/worker.js.map +0 -1
- package/lib/sharding/index.js.map +0 -1
- package/lib/sharding/sharding_plugin.js.map +0 -1
- package/lib/step_arguments.js.map +0 -1
- package/lib/support_code_library_builder/build_parameter_type.js.map +0 -1
- package/lib/support_code_library_builder/context.js.map +0 -1
- package/lib/support_code_library_builder/get_definition_line_and_uri.js.map +0 -1
- package/lib/support_code_library_builder/index.js.map +0 -1
- package/lib/support_code_library_builder/parallel_can_assign_helpers.js.map +0 -1
- package/lib/support_code_library_builder/sourced_parameter_type_registry.js.map +0 -1
- package/lib/support_code_library_builder/types.js.map +0 -1
- package/lib/support_code_library_builder/validate_arguments.js.map +0 -1
- package/lib/support_code_library_builder/world.js.map +0 -1
- package/lib/time.js.map +0 -1
- package/lib/try_require.js.map +0 -1
- package/lib/tsconfig.node.tsbuildinfo +0 -1
- package/lib/types/index.js.map +0 -1
- package/lib/uncaught_exception_manager.js.map +0 -1
- package/lib/user_code_runner.js.map +0 -1
- package/lib/value_checker.js.map +0 -1
- package/lib/version.js.map +0 -1
- /package/lib/runtime/parallel/{run_worker.d.ts → worker.d.mts} +0 -0
package/lib/pickle_filter.js
CHANGED
|
@@ -13,7 +13,7 @@ class PickleFilter {
|
|
|
13
13
|
lineFilter;
|
|
14
14
|
nameFilter;
|
|
15
15
|
tagFilter;
|
|
16
|
-
constructor({ cwd, featurePaths, names, tagExpression
|
|
16
|
+
constructor({ cwd, featurePaths, names, tagExpression }) {
|
|
17
17
|
this.lineFilter = new PickleLineFilter(cwd, featurePaths);
|
|
18
18
|
this.nameFilter = new PickleNameFilter(names);
|
|
19
19
|
this.tagFilter = new PickleTagFilter(tagExpression);
|
|
@@ -54,7 +54,7 @@ class PickleLineFilter {
|
|
|
54
54
|
.slice(1)
|
|
55
55
|
.split(':')
|
|
56
56
|
.forEach((line) => {
|
|
57
|
-
mapping[uri].push(parseInt(line));
|
|
57
|
+
mapping[uri].push(parseInt(line, 10));
|
|
58
58
|
});
|
|
59
59
|
}
|
|
60
60
|
}
|
|
@@ -102,4 +102,4 @@ class PickleTagFilter {
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
exports.PickleTagFilter = PickleTagFilter;
|
|
105
|
-
//# sourceMappingURL=pickle_filter.js.map
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2xlX2ZpbHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9waWNrbGVfZmlsdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDBEQUE0QjtBQUU1QiwrREFBNEQ7QUFDNUQseUZBQTJGO0FBQzNGLG1EQUFpRTtBQUtqRSxNQUFNLHNCQUFzQixHQUFHLHVCQUF1QixDQUFBO0FBY3RELE1BQXFCLFlBQVk7SUFDZCxVQUFVLENBQWtCO0lBQzVCLFVBQVUsQ0FBa0I7SUFDNUIsU0FBUyxDQUFpQjtJQUUzQyxZQUFZLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUF3QjtRQUMzRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksZ0JBQWdCLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQyxDQUFBO1FBQ3pELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUM3QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksZUFBZSxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBQ3JELENBQUM7SUFFRCxPQUFPLENBQUMsRUFDTixlQUFlLEVBQ2YsTUFBTSxHQUlQO1FBQ0MsT0FBTyxDQUNMLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQzNELElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQztZQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxDQUNoRCxDQUFBO0lBQ0gsQ0FBQztDQUNGO0FBeEJELCtCQXdCQztBQUVELE1BQWEsZ0JBQWdCO0lBQ1Ysd0JBQXdCLENBQTBCO0lBRW5FLFlBQVksR0FBVyxFQUFFLGVBQXlCLEVBQUU7UUFDbEQsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQztZQUMvRCxHQUFH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QUFPLElBQUksQ0FBQTtRQUNiLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQzNELENBQUM7Q0FDRjtBQWJELDRDQWFDO0FBRUQsTUFBYSxlQUFlO0lBQ1QsaUJBQWlCLENBQU07SUFFeEMsWUFBWSxhQUFxQjtRQUMvQixJQUFJLElBQUEsNkJBQWEsRUFBQyxhQUFhLENBQUMsSUFBSSxhQUFhLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDekQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUEsdUJBQUssRUFBQyxhQUFhLENBQUMsQ0FBQTtRQUMvQyxDQUFDO0lBQ0gsQ0FBQztJQUVELHdCQUF3QixDQUFDLE1BQXVCO1FBQzlDLElBQUksSUFBQSxnQ0FBZ0IsRUFBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDO1lBQzdDLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7SUFDeEUsQ0FBQztDQUNGO0FBZkQsMENBZUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGF0aCBmcm9tICdub2RlOnBhdGgnXG5pbXBvcnQgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgeyB0eXBlIE5vZGUsIHBhcnNlIH0gZnJvbSAnQGN1Y3VtYmVyL3RhZy1leHByZXNzaW9ucydcbmltcG9ydCB7IGdldEdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwIH0gZnJvbSAnLi9mb3JtYXR0ZXIvaGVscGVycy9naGVya2luX2RvY3VtZW50X3BhcnNlcidcbmltcG9ydCB7IGRvZXNIYXZlVmFsdWUsIGRvZXNOb3RIYXZlVmFsdWUgfSBmcm9tICcuL3ZhbHVlX2NoZWNrZXInXG5cbmltcG9ydCBJR2hlcmtpbkRvY3VtZW50ID0gbWVzc2FnZXMuR2hlcmtpbkRvY3VtZW50XG5pbXBvcnQgSVBpY2tsZSA9IG1lc3NhZ2VzLlBpY2tsZVxuXG5jb25zdCBGRUFUVVJFX0xJTkVOVU1fUkVHRVhQID0gL14oLio/KSgoPzo6W1xcZF0rKSspPyQvXG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBpY2tsZUZpbHRlck9wdGlvbnMge1xuICBjd2Q6IHN0cmluZ1xuICBmZWF0dXJlUGF0aHM/OiBzdHJpbmdbXVxuICBuYW1lcz86IHN0cmluZ1tdXG4gIHRhZ0V4cHJlc3Npb24/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTWF0Y2hlc0FueUxpbmVSZXF1ZXN0IHtcbiAgZ2hlcmtpbkRvY3VtZW50OiBtZXNzYWdlcy5HaGVya2luRG9jdW1lbnRcbiAgcGlja2xlOiBtZXNzYWdlcy5QaWNrbGVcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUGlja2xlRmlsdGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBsaW5lRmlsdGVyOiBQaWNrbGVMaW5lRmlsdGVyXG4gIHByaXZhdGUgcmVhZG9ubHkgbmFtZUZpbHRlcjogUGlja2xlTmFtZUZpbHRlclxuICBwcml2YXRlIHJlYWRvbmx5IHRhZ0ZpbHRlcjogUGlja2xlVGFnRmlsdGVyXG5cbiAgY29uc3RydWN0b3IoeyBjd2QsIGZlYXR1cmVQYXRocywgbmFtZXMsIHRhZ0V4cHJlc3Npb24gfTogSVBpY2tsZUZpbHRlck9wdGlvbnMpIHtcbiAgICB0aGlzLmxpbmVGaWx0ZXIgPSBuZXcgUGlja2xlTGluZUZpbHRlcihjd2QsIGZlYXR1cmVQYXRocylcbiAgICB0aGlzLm5hbWVGaWx0ZXIgPSBuZXcgUGlja2xlTmFtZUZpbHRlcihuYW1lcylcbiAgICB0aGlzLnRhZ0ZpbHRlciA9IG5ldyBQaWNrbGVUYWdGaWx0ZXIodGFnRXhwcmVzc2lvbilcbiAgfVxuXG4gIG1hdGNoZXMoe1xuICAgIGdoZXJraW5Eb2N1bWVudCxcbiAgICBwaWNrbGUsXG4gIH06IHtcbiAgICBnaGVya2luRG9jdW1lbnQ6IElHaGVya2luRG9jdW1lbnRcbiAgICBwaWNrbGU6IElQaWNrbGVcbiAgfSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmxpbmVGaWx0ZXIubWF0Y2hlc0FueUxpbmUoeyBnaGVya2luRG9jdW1lbnQsIHBpY2tsZSB9KSAmJlxuICAgICAgdGhpcy5uYW1lRmlsdGVyLm1hdGNoZXNBbnlOYW1lKHBpY2tsZSkgJiZcbiAgICAgIHRoaXMudGFnRmlsdGVyLm1hdGNoZXNBbGxUYWdFeHByZXNzaW9ucyhwaWNrbGUpXG4gICAgKVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQaWNrbGVMaW5lRmlsdGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBmZWF0dXJlVXJpVG9MaW5lc01hcHBpbmc6IFJlY29yZDxzdHJpbmcsIG51bWJlcltdPlxuXG4gIGNvbnN0cnVjdG9yKGN3ZDogc3RyaW5nLCBmZWF0dXJlUGF0aHM6IHN0cmluZ1tdID0gW10pIHtcbiAgICB0aGlzLmZlYXR1cmVVcmlUb0xpbmVzTWFwcGluZyA9IHRoaXMuZ2V0RmVhdHVyZVVyaVRvTGluZXNNYXBwaW5nKHtcbiAgICAgIGN3ZCxcbiAgICAgIGZlYXR1cmVQYXRocyxcbiAgICB9KVxuICB9XG5cbiAgZ2V0RmVhdHVyZVVyaVRvTGluZXNNYXBwaW5nKHtcbiAgICBjd2QsXG4gICAgZmVhdHVyZVBhdGhzLFxuICB9OiB7XG4gICAgY3dkOiBzdHJpbmdcbiAgICBmZWF0dXJlUGF0aHM6IHN0cmluZ1tdXG4gIH0pOiBSZWNvcmQ8c3RyaW5nLCBudW1iZXJbXT4ge1xuICAgIGNvbnN0IG1hcHBpbmc6IFJlY29yZDxzdHJpbmcsIG51bWJlcltdPiA9IHt9XG4gICAgZmVhdHVyZVBhdGhzLmZvckVhY2goKGZlYXR1cmVQYXRoKSA9PiB7XG4gICAgICBjb25zdCBtYXRjaCA9IEZFQVRVUkVfTElORU5VTV9SRUdFWFAuZXhlYyhmZWF0dXJlUGF0aClcbiAgICAgIGlmIChkb2VzSGF2ZVZhbHVlKG1hdGNoKSkge1xuICAgICAgICBsZXQgdXJpID0gbWF0Y2hbMV1cbiAgICAgICAgaWYgKHBhdGguaXNBYnNvbHV0ZSh1cmkpKSB7XG4gICAgICAgICAgdXJpID0gcGF0aC5yZWxhdGl2ZShjd2QsIHVyaSlcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB1cmkgPSBwYXRoLm5vcm1hbGl6ZSh1cmkpXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbGluZXNFeHByZXNzaW9uID0gbWF0Y2hbMl1cbiAgICAgICAgaWYgKGRvZXNIYXZlVmFsdWUobGluZXNFeHByZXNzaW9uKSkge1xuICAgICAgICAgIGlmIChkb2VzTm90SGF2ZVZhbHVlKG1hcHBpbmdbdXJpXSkpIHtcbiAgICAgICAgICAgIG1hcHBpbmdbdXJpXSA9IFtdXG4gICAgICAgICAgfVxuICAgICAgICAgIGxpbmVzRXhwcmVzc2lvblxuICAgICAgICAgICAgLnNsaWNlKDEpXG4gICAgICAgICAgICAuc3BsaXQoJzonKVxuICAgICAgICAgICAgLmZvckVhY2goKGxpbmUpID0+IHtcbiAgICAgICAgICAgICAgbWFwcGluZ1t1cmldLnB1c2gocGFyc2VJbnQobGluZSwgMTApKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pXG4gICAgcmV0dXJuIG1hcHBpbmdcbiAgfVxuXG4gIG1hdGNoZXNBbnlMaW5lKHsgZ2hlcmtpbkRvY3VtZW50LCBwaWNrbGUgfTogSU1hdGNoZXNBbnlMaW5lUmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHVyaSA9IHBhdGgubm9ybWFsaXplKHBpY2tsZS51cmkpXG4gICAgY29uc3QgbGluZXNUb01hdGNoID0gdGhpcy5mZWF0dXJlVXJpVG9MaW5lc01hcHBpbmdbdXJpXVxuICAgIGlmIChkb2VzSGF2ZVZhbHVlKGxpbmVzVG9NYXRjaCkpIHtcbiAgICAgIGNvbnN0IGdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwID0gZ2V0R2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAoZ2hlcmtpbkRvY3VtZW50KVxuICAgICAgY29uc3QgcGlja2xlTGluZXMgPSBuZXcgU2V0KFxuICAgICAgICBwaWNrbGUuYXN0Tm9kZUlkcy5tYXAoKHNvdXJjZUlkKSA9PiBnaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcFtzb3VyY2VJZF0ubGluZSlcbiAgICAgIClcbiAgICAgIGNvbnN0IGxpbmVzSW50ZXJzZWN0aW9uID0gbGluZXNUb01hdGNoLmZpbHRlcigoeCkgPT4gcGlja2xlTGluZXMuaGFzKHgpKVxuICAgICAgcmV0dXJuIGxpbmVzSW50ZXJzZWN0aW9uLmxlbmd0aCA+IDBcbiAgICB9XG4gICAgcmV0dXJuIHRydWVcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGlja2xlTmFtZUZpbHRlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbmFtZXM6IHN0cmluZ1tdXG5cbiAgY29uc3RydWN0b3IobmFtZXM6IHN0cmluZ1tdID0gW10pIHtcbiAgICB0aGlzLm5hbWVzID0gbmFtZXNcbiAgfVxuXG4gIG1hdGNoZXNBbnlOYW1lKHBpY2tsZTogbWVzc2FnZXMuUGlja2xlKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMubmFtZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5uYW1lcy5zb21lKChuYW1lKSA9PiBwaWNrbGUubmFtZS5tYXRjaChuYW1lKSlcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGlja2xlVGFnRmlsdGVyIHtcbiAgcHJpdmF0ZSByZWFkb25seSB0YWdFeHByZXNzaW9uTm9kZTogTm9kZVxuXG4gIGNvbnN0cnVjdG9yKHRhZ0V4cHJlc3Npb246IHN0cmluZykge1xuICAgIGlmIChkb2VzSGF2ZVZhbHVlKHRhZ0V4cHJlc3Npb24pICYmIHRhZ0V4cHJlc3Npb24gIT09ICcnKSB7XG4gICAgICB0aGlzLnRhZ0V4cHJlc3Npb25Ob2RlID0gcGFyc2UodGFnRXhwcmVzc2lvbilcbiAgICB9XG4gIH1cblxuICBtYXRjaGVzQWxsVGFnRXhwcmVzc2lvbnMocGlja2xlOiBtZXNzYWdlcy5QaWNrbGUpOiBib29sZWFuIHtcbiAgICBpZiAoZG9lc05vdEhhdmVWYWx1ZSh0aGlzLnRhZ0V4cHJlc3Npb25Ob2RlKSkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudGFnRXhwcmVzc2lvbk5vZGUuZXZhbHVhdGUocGlja2xlLnRhZ3MubWFwKCh4KSA9PiB4Lm5hbWUpKVxuICB9XG59XG4iXX0=
|
package/lib/plugin/index.d.ts
CHANGED
package/lib/plugin/index.js
CHANGED
|
@@ -14,6 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./types"), exports);
|
|
18
17
|
__exportStar(require("./plugin_manager"), exports);
|
|
19
|
-
|
|
18
|
+
__exportStar(require("./types"), exports);
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGx1Z2luL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxtREFBZ0M7QUFDaEMsMENBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wbHVnaW5fbWFuYWdlcidcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnXG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { UsableEnvironment } from '../environment';
|
|
2
|
-
import { CoordinatorEventKey, CoordinatorEventValues, CoordinatorTransformKey, CoordinatorTransformValues, FormatterPlugin, Plugin, PluginOperation } from './types';
|
|
1
|
+
import type { UsableEnvironment } from '../environment';
|
|
2
|
+
import type { CoordinatorEventKey, CoordinatorEventValues, CoordinatorTransformKey, CoordinatorTransformValues, FormatterPlugin, Plugin, PluginOperation } from './types';
|
|
3
3
|
export declare class PluginManager {
|
|
4
4
|
private readonly environment;
|
|
5
5
|
private readonly handlers;
|
|
@@ -9,7 +9,10 @@ export declare class PluginManager {
|
|
|
9
9
|
private registerHandler;
|
|
10
10
|
private registerTransformer;
|
|
11
11
|
initFormatter<OptionsType>(plugin: FormatterPlugin<OptionsType>, options: OptionsType, stream: NodeJS.WritableStream, write: (buffer: string | Uint8Array) => void, directory?: string, specifier?: string): Promise<void>;
|
|
12
|
-
|
|
12
|
+
initCoordinatorExternal<OptionsType>(operation: PluginOperation, plugin: Plugin<OptionsType>, options: OptionsType, specifier?: string): Promise<void>;
|
|
13
|
+
initCoordinatorInternal<OptionsType>(operation: PluginOperation, plugin: Plugin<OptionsType>, options: OptionsType): Promise<void>;
|
|
14
|
+
private initCoordinator;
|
|
15
|
+
private makeCoordinatorContext;
|
|
13
16
|
emit<K extends CoordinatorEventKey>(event: K, value: CoordinatorEventValues[K]): void;
|
|
14
17
|
transform<K extends CoordinatorTransformKey>(event: K, value: CoordinatorTransformValues[K]): Promise<CoordinatorTransformValues[K]>;
|
|
15
18
|
cleanup(): Promise<void>;
|
|
@@ -6,6 +6,7 @@ class PluginManager {
|
|
|
6
6
|
handlers = {
|
|
7
7
|
message: [],
|
|
8
8
|
'paths:resolve': [],
|
|
9
|
+
'publish:url': [],
|
|
9
10
|
};
|
|
10
11
|
transformers = {
|
|
11
12
|
'pickles:filter': [],
|
|
@@ -51,8 +52,28 @@ class PluginManager {
|
|
|
51
52
|
});
|
|
52
53
|
}
|
|
53
54
|
}
|
|
54
|
-
async
|
|
55
|
+
async initCoordinatorExternal(operation, plugin, options, specifier) {
|
|
56
|
+
const context = this.makeCoordinatorContext(operation, plugin, options, specifier);
|
|
57
|
+
await this.initCoordinator(plugin, context, specifier);
|
|
58
|
+
}
|
|
59
|
+
async initCoordinatorInternal(operation, plugin, options) {
|
|
55
60
|
const context = {
|
|
61
|
+
...this.makeCoordinatorContext(operation, plugin, options),
|
|
62
|
+
emit: this.emit.bind(this),
|
|
63
|
+
};
|
|
64
|
+
await this.initCoordinator(plugin, context);
|
|
65
|
+
}
|
|
66
|
+
async initCoordinator(plugin, context, specifier) {
|
|
67
|
+
const cleanupFn = await wrapErrorAsync(async () => await plugin.coordinator(context), `${formatCulprit(specifier)} errored when trying to init`);
|
|
68
|
+
if (typeof cleanupFn === 'function') {
|
|
69
|
+
this.cleanupFns.push({
|
|
70
|
+
cleanupFn: cleanupFn,
|
|
71
|
+
specifier,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
makeCoordinatorContext(operation, plugin, options, specifier) {
|
|
76
|
+
return {
|
|
56
77
|
operation,
|
|
57
78
|
on: (event, handler) => this.registerHandler(event, handler, specifier),
|
|
58
79
|
transform: (event, transformer) => this.registerTransformer(event, transformer, specifier),
|
|
@@ -66,23 +87,16 @@ class PluginManager {
|
|
|
66
87
|
env: { ...this.environment.env },
|
|
67
88
|
},
|
|
68
89
|
};
|
|
69
|
-
const cleanupFn = await wrapErrorAsync(async () => await plugin.coordinator(context), specifier, `Plugin "${specifier}" errored when trying to init`);
|
|
70
|
-
if (typeof cleanupFn === 'function') {
|
|
71
|
-
this.cleanupFns.push({
|
|
72
|
-
cleanupFn: cleanupFn,
|
|
73
|
-
specifier,
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
90
|
}
|
|
77
91
|
emit(event, value) {
|
|
78
92
|
this.handlers[event].forEach(({ handler, specifier }) => {
|
|
79
|
-
wrapError(() => handler(value),
|
|
93
|
+
wrapError(() => handler(value), `${formatCulprit(specifier)} errored when trying to handle a "${event}" event`);
|
|
80
94
|
});
|
|
81
95
|
}
|
|
82
96
|
async transform(event, value) {
|
|
83
97
|
let transformed = value;
|
|
84
98
|
for (const { transformer, specifier } of this.transformers[event]) {
|
|
85
|
-
const returned = await wrapErrorAsync(async () => await transformer(transformed),
|
|
99
|
+
const returned = await wrapErrorAsync(async () => await transformer(transformed), `${formatCulprit(specifier)} errored when trying to do a "${event}" transform`);
|
|
86
100
|
if (typeof returned !== 'undefined') {
|
|
87
101
|
transformed = returned;
|
|
88
102
|
}
|
|
@@ -91,31 +105,28 @@ class PluginManager {
|
|
|
91
105
|
}
|
|
92
106
|
async cleanup() {
|
|
93
107
|
for (const { cleanupFn, specifier } of this.cleanupFns) {
|
|
94
|
-
await wrapErrorAsync(async () => await cleanupFn(),
|
|
108
|
+
await wrapErrorAsync(async () => await cleanupFn(), `${formatCulprit(specifier)} errored when trying to cleanup`);
|
|
95
109
|
}
|
|
96
110
|
}
|
|
97
111
|
}
|
|
98
112
|
exports.PluginManager = PluginManager;
|
|
99
|
-
function
|
|
113
|
+
function formatCulprit(specifier) {
|
|
114
|
+
return specifier ? `Plugin "${specifier}"` : 'Cucumber';
|
|
115
|
+
}
|
|
116
|
+
function wrapError(fn, message) {
|
|
100
117
|
try {
|
|
101
118
|
return fn();
|
|
102
119
|
}
|
|
103
120
|
catch (error) {
|
|
104
|
-
|
|
105
|
-
throw new Error(message, { cause: error });
|
|
106
|
-
}
|
|
107
|
-
throw error;
|
|
121
|
+
throw new Error(message, { cause: error });
|
|
108
122
|
}
|
|
109
123
|
}
|
|
110
|
-
async function wrapErrorAsync(fn,
|
|
124
|
+
async function wrapErrorAsync(fn, message) {
|
|
111
125
|
try {
|
|
112
126
|
return await fn();
|
|
113
127
|
}
|
|
114
128
|
catch (error) {
|
|
115
|
-
|
|
116
|
-
throw new Error(message, { cause: error });
|
|
117
|
-
}
|
|
118
|
-
throw error;
|
|
129
|
+
throw new Error(message, { cause: error });
|
|
119
130
|
}
|
|
120
131
|
}
|
|
121
|
-
//# sourceMappingURL=plugin_manager.js.map
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luX21hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGx1Z2luL3BsdWdpbl9tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXVDQSxNQUFhLGFBQWE7SUFZSztJQVhaLFFBQVEsR0FBb0I7UUFDM0MsT0FBTyxFQUFFLEVBQUU7UUFDWCxlQUFlLEVBQUUsRUFBRTtRQUNuQixhQUFhLEVBQUUsRUFBRTtLQUNsQixDQUFBO0lBQ2dCLFlBQVksR0FBd0I7UUFDbkQsZ0JBQWdCLEVBQUUsRUFBRTtRQUNwQixlQUFlLEVBQUUsRUFBRTtLQUNwQixDQUFBO0lBQ08sVUFBVSxHQUFxQixFQUFFLENBQUE7SUFFekMsWUFBNkIsV0FBOEI7UUFBOUIsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO0lBQUcsQ0FBQztJQUV2RCxLQUFLLENBQUMsZUFBZSxDQUMzQixLQUFRLEVBQ1IsT0FBbUMsRUFDbkMsU0FBa0I7UUFFbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxLQUFLLEdBQUcsQ0FBQyxDQUFBO1FBQ3pFLENBQUM7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQztZQUN4QixPQUFPO1lBQ1AsU0FBUztTQUNWLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTyxLQUFLLENBQUMsbUJBQW1CLENBQy9CLEtBQVEsRUFDUixXQUFzQyxFQUN0QyxTQUFrQjtRQUVsQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELEtBQUssR0FBRyxDQUFDLENBQUE7UUFDN0UsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzVCLFdB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cGUgeyBVc2FibGVFbnZpcm9ubWVudCB9IGZyb20gJy4uL2Vudmlyb25tZW50J1xuaW1wb3J0IHR5cGUge1xuICBDb29yZGluYXRvckNvbnRleHQsXG4gIENvb3JkaW5hdG9yRXZlbnRIYW5kbGVyLFxuICBDb29yZGluYXRvckV2ZW50S2V5LFxuICBDb29yZGluYXRvckV2ZW50VmFsdWVzLFxuICBDb29yZGluYXRvclRyYW5zZm9ybWVyLFxuICBDb29yZGluYXRvclRyYW5zZm9ybUtleSxcbiAgQ29vcmRpbmF0b3JUcmFuc2Zvcm1WYWx1ZXMsXG4gIEZvcm1hdHRlclBsdWdpbixcbiAgSW50ZXJuYWxQbHVnaW4sXG4gIFBsdWdpbixcbiAgUGx1Z2luQ2xlYW51cCxcbiAgUGx1Z2luT3BlcmF0aW9uLFxufSBmcm9tICcuL3R5cGVzJ1xuXG50eXBlIFNvdXJjZWRFdmVudEhhbmRsZXI8SyBleHRlbmRzIENvb3JkaW5hdG9yRXZlbnRLZXk+ID0ge1xuICBoYW5kbGVyOiBDb29yZGluYXRvckV2ZW50SGFuZGxlcjxLPlxuICBzcGVjaWZpZXI/OiBzdHJpbmdcbn1cblxudHlwZSBTb3VyY2VkVHJhbnNmb3JtZXI8SyBleHRlbmRzIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5PiA9IHtcbiAgdHJhbnNmb3JtZXI6IENvb3JkaW5hdG9yVHJhbnNmb3JtZXI8Sz5cbiAgc3BlY2lmaWVyPzogc3RyaW5nXG59XG5cbnR5cGUgU291cmNlZENsZWFudXAgPSB7XG4gIGNsZWFudXBGbjogUGx1Z2luQ2xlYW51cFxuICBzcGVjaWZpZXI/OiBzdHJpbmdcbn1cblxudHlwZSBIYW5kbGVyUmVnaXN0cnkgPSB7XG4gIFtLIGluIENvb3JkaW5hdG9yRXZlbnRLZXldOiBBcnJheTxTb3VyY2VkRXZlbnRIYW5kbGVyPEs+PlxufVxuXG50eXBlIFRyYW5zZm9ybWVyUmVnaXN0cnkgPSB7XG4gIFtLIGluIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5XTogQXJyYXk8U291cmNlZFRyYW5zZm9ybWVyPEs+PlxufVxuXG5leHBvcnQgY2xhc3MgUGx1Z2luTWFuYWdlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaGFuZGxlcnM6IEhhbmRsZXJSZWdpc3RyeSA9IHtcbiAgICBtZXNzYWdlOiBbXSxcbiAgICAncGF0aHM6cmVzb2x2ZSc6IFtdLFxuICAgICdwdWJsaXNoOnVybCc6IFtdLFxuICB9XG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNmb3JtZXJzOiBUcmFuc2Zvcm1lclJlZ2lzdHJ5ID0ge1xuICAgICdwaWNrbGVzOmZpbHRlcic6IFtdLFxuICAgICdwaWNrbGVzOm9yZGVyJzogW10sXG4gIH1cbiAgcHJpdmF0ZSBjbGVhbnVwRm5zOiBTb3VyY2VkQ2xlYW51cFtdID0gW11cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVudmlyb25tZW50OiBVc2FibGVFbnZpcm9ubWVudCkge31cblxuICBwcml2YXRlIGFzeW5jIHJlZ2lzdGVySGFuZGxlcjxLIGV4dGVuZHMgQ29vcmRpbmF0b3JFdmVudEtleT4oXG4gICAgZXZlbnQ6IEssXG4gICAgaGFuZGxlcjogQ29vcmRpbmF0b3JFdmVudEhhbmRsZXI8Sz4sXG4gICAgc3BlY2lmaWVyPzogc3RyaW5nXG4gICkge1xuICAgIGlmICghdGhpcy5oYW5kbGVyc1tldmVudF0pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHJlZ2lzdGVyIGhhbmRsZXIgZm9yIHVua25vd24gZXZlbnQgXCIke2V2ZW50fVwiYClcbiAgICB9XG4gICAgdGhpcy5oYW5kbGVyc1tldmVudF0ucHVzaCh7XG4gICAgICBoYW5kbGVyLFxuICAgICAgc3BlY2lmaWVyLFxuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJlZ2lzdGVyVHJhbnNmb3JtZXI8SyBleHRlbmRzIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5PihcbiAgICBldmVudDogSyxcbiAgICB0cmFuc2Zvcm1lcjogQ29vcmRpbmF0b3JUcmFuc2Zvcm1lcjxLPixcbiAgICBzcGVjaWZpZXI/OiBzdHJpbmdcbiAgKSB7XG4gICAgaWYgKCF0aGlzLnRyYW5zZm9ybWVyc1tldmVudF0pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHJlZ2lzdGVyIHRyYW5zZm9ybWVyIGZvciB1bmtub3duIGV2ZW50IFwiJHtldmVudH1cImApXG4gICAgfVxuICAgIHRoaXMudHJhbnNmb3JtZXJzW2V2ZW50XS5wdXNoKHtcbiAgICAgIHRyYW5zZm9ybWVyLFxuICAgICAgc3BlY2lmaWVyLFxuICAgIH0pXG4gIH1cblxuICBhc3luYyBpbml0Rm9ybWF0dGVyPE9wdGlvbnNUeXBlPihcbiAgICBwbHVnaW46IEZvcm1hdHRlclBsdWdpbjxPcHRpb25zVHlwZT4sXG4gICAgb3B0aW9uczogT3B0aW9uc1R5cGUsXG4gICAgc3RyZWFtOiBOb2RlSlMuV3JpdGFibGVTdHJlYW0sXG4gICAgd3JpdGU6IChidWZmZXI6IHN0cmluZyB8IFVpbnQ4QXJyYXkpID0+IHZvaWQsXG4gICAgZGlyZWN0b3J5Pzogc3RyaW5nLFxuICAgIHNwZWNpZmllcj86IHN0cmluZ1xuICApIHtcbiAgICBjb25zdCBjbGVhbnVwRm4gPSBhd2FpdCBwbHVnaW4uZm9ybWF0dGVyKHtcbiAgICAgIG9uOiAoa2V5LCBoYW5kbGVyKSA9PiB0aGlzLnJlZ2lzdGVySGFuZGxlcihrZXksIGhhbmRsZXIsIHNwZWNpZmllciksXG4gICAgICBvcHRpb25zOiBwbHVnaW4ub3B0aW9uc0tleVxuICAgICAgICA/ICgob3B0aW9ucyBhcyBhbnkpW3BsdWdpbi5vcHRpb25zS2V5XSA/PyAoe30gYXMgT3B0aW9uc1R5cGUpKVxuICAgICAgICA6IG9wdGlvbnMsXG4gICAgICBsb2dnZXI6IHRoaXMuZW52aXJvbm1lbnQubG9nZ2VyLFxuICAgICAgc3RyZWFtLFxuICAgICAgd3JpdGUsXG4gICAgICBkaXJlY3RvcnksXG4gICAgfSlcbiAgICBpZiAodHlwZW9mIGNsZWFudXBGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5jbGVhbnVwRm5zLnB1c2goe1xuICAgICAgICBjbGVhbnVwRm46IGNsZWFudXBGbixcbiAgICAgICAgc3BlY2lmaWVyLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBhc3luYyBpbml0Q29vcmRpbmF0b3JFeHRlcm5hbDxPcHRpb25zVHlwZT4oXG4gICAgb3BlcmF0aW9uOiBQbHVnaW5PcGVyYXRpb24sXG4gICAgcGx1Z2luOiBQbHVnaW48T3B0aW9uc1R5cGU+LFxuICAgIG9wdGlvbnM6IE9wdGlvbnNUeXBlLFxuICAgIHNwZWNpZmllcj86IHN0cmluZ1xuICApIHtcbiAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5tYWtlQ29vcmRpbmF0b3JDb250ZXh0KG9wZXJhdGlvbiwgcGx1Z2luLCBvcHRpb25zLCBzcGVjaWZpZXIpXG4gICAgYXdhaXQgdGhpcy5pbml0Q29vcmRpbmF0b3IocGx1Z2luLCBjb250ZXh0LCBzcGVjaWZpZXIpXG4gIH1cblxuICBhc3luYyBpbml0Q29vcmRpbmF0b3JJbnRlcm5hbDxPcHRpb25zVHlwZT4oXG4gICAgb3BlcmF0aW9uOiBQbHVnaW5PcGVyYXRpb24sXG4gICAgcGx1Z2luOiBQbHVnaW48T3B0aW9uc1R5cGU+LFxuICAgIG9wdGlvbnM6IE9wdGlvbnNUeXBlXG4gICkge1xuICAgIGNvbnN0IGNvbnRleHQgPSB7XG4gICAgICAuLi50aGlzLm1ha2VDb29yZGluYXRvckNvbnRleHQob3BlcmF0aW9uLCBwbHVnaW4sIG9wdGlvbnMpLFxuICAgICAgZW1pdDogdGhpcy5lbWl0LmJpbmQodGhpcyksXG4gICAgfVxuICAgIGF3YWl0IHRoaXMuaW5pdENvb3JkaW5hdG9yKHBsdWdpbiwgY29udGV4dClcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgaW5pdENvb3JkaW5hdG9yPE9wdGlvbnNUeXBlPihcbiAgICBwbHVnaW46IFBsdWdpbjxPcHRpb25zVHlwZT4sXG4gICAgY29udGV4dDogQ29vcmRpbmF0b3JDb250ZXh0PE9wdGlvbnNUeXBlPixcbiAgICBzcGVjaWZpZXI/OiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3QgY2xlYW51cEZuID0gYXdhaXQgd3JhcEVycm9yQXN5bmMoXG4gICAgICBhc3luYyAoKSA9PiBhd2FpdCBwbHVnaW4uY29vcmRpbmF0b3IoY29udGV4dCksXG4gICAgICBgJHtmb3JtYXRDdWxwcml0KHNwZWNpZmllcil9IGVycm9yZWQgd2hlbiB0cnlpbmcgdG8gaW5pdGBcbiAgICApXG4gICAgaWYgKHR5cGVvZiBjbGVhbnVwRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuY2xlYW51cEZucy5wdXNoKHtcbiAgICAgICAgY2xlYW51cEZuOiBjbGVhbnVwRm4sXG4gICAgICAgIHNwZWNpZmllcixcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBtYWtlQ29vcmRpbmF0b3JDb250ZXh0PE9wdGlvbnNUeXBlPihcbiAgICBvcGVyYXRpb246IFBsdWdpbk9wZXJhdGlvbixcbiAgICBwbHVnaW46IFBsdWdpbjxPcHRpb25zVHlwZT4gfCBJbnRlcm5hbFBsdWdpbjxPcHRpb25zVHlwZT4sXG4gICAgb3B0aW9uczogT3B0aW9uc1R5cGUsXG4gICAgc3BlY2lmaWVyPzogc3RyaW5nXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICBvcGVyYXRpb24sXG4gICAgICBvbjogPEsgZXh0ZW5kcyBDb29yZGluYXRvckV2ZW50S2V5PihldmVudDogSywgaGFuZGxlcjogQ29vcmRpbmF0b3JFdmVudEhhbmRsZXI8Sz4pID0+XG4gICAgICAgIHRoaXMucmVnaXN0ZXJIYW5kbGVyKGV2ZW50LCBoYW5kbGVyLCBzcGVjaWZpZXIpLFxuICAgICAgdHJhbnNmb3JtOiA8SyBleHRlbmRzIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5PihcbiAgICAgICAgZXZlbnQ6IEssXG4gICAgICAgIHRyYW5zZm9ybWVyOiBDb29yZGluYXRvclRyYW5zZm9ybWVyPEs+XG4gICAgICApID0+IHRoaXMucmVnaXN0ZXJUcmFuc2Zvcm1lcihldmVudCwgdHJhbnNmb3JtZXIsIHNwZWNpZmllciksXG4gICAgICBvcHRpb25zOlxuICAgICAgICAnb3B0aW9uc0tleScgaW4gcGx1Z2luICYmIHBsdWdpbi5vcHRpb25zS2V5XG4gICAgICAgICAgPyAoKG9wdGlvbnMgYXMgYW55KVtwbHVnaW4ub3B0aW9uc0tleV0gPz8gKHt9IGFzIE9wdGlvbnNUeXBlKSlcbiAgICAgICAgICA6IG9wdGlvbnMsXG4gICAgICBsb2dnZXI6IHRoaXMuZW52aXJvbm1lbnQubG9nZ2VyLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgY3dkOiB0aGlzLmVudmlyb25tZW50LmN3ZCxcbiAgICAgICAgc3RkZXJyOiB0aGlzLmVudmlyb25tZW50LnN0ZGVycixcbiAgICAgICAgZW52OiB7IC4uLnRoaXMuZW52aXJvbm1lbnQuZW52IH0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIGVtaXQ8SyBleHRlbmRzIENvb3JkaW5hdG9yRXZlbnRLZXk+KGV2ZW50OiBLLCB2YWx1ZTogQ29vcmRpbmF0b3JFdmVudFZhbHVlc1tLXSk6IHZvaWQge1xuICAgIHRoaXMuaGFuZGxlcnNbZXZlbnRdLmZvckVhY2goKHsgaGFuZGxlciwgc3BlY2lmaWVyIH0pID0+IHtcbiAgICAgIHdyYXBFcnJvcihcbiAgICAgICAgKCkgPT4gaGFuZGxlcih2YWx1ZSksXG4gICAgICAgIGAke2Zvcm1hdEN1bHByaXQoc3BlY2lmaWVyKX0gZXJyb3JlZCB3aGVuIHRyeWluZyB0byBoYW5kbGUgYSBcIiR7ZXZlbnR9XCIgZXZlbnRgXG4gICAgICApXG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIHRyYW5zZm9ybTxLIGV4dGVuZHMgQ29vcmRpbmF0b3JUcmFuc2Zvcm1LZXk+KFxuICAgIGV2ZW50OiBLLFxuICAgIHZhbHVlOiBDb29yZGluYXRvclRyYW5zZm9ybVZhbHVlc1tLXVxuICApOiBQcm9taXNlPENvb3JkaW5hdG9yVHJhbnNmb3JtVmFsdWVzW0tdPiB7XG4gICAgbGV0IHRyYW5zZm9ybWVkID0gdmFsdWVcbiAgICBmb3IgKGNvbnN0IHsgdHJhbnNmb3JtZXIsIHNwZWNpZmllciB9IG9mIHRoaXMudHJhbnNmb3JtZXJzW2V2ZW50XSkge1xuICAgICAgY29uc3QgcmV0dXJuZWQgPSBhd2FpdCB3cmFwRXJyb3JBc3luYyhcbiAgICAgICAgYXN5bmMgKCkgPT4gYXdhaXQgdHJhbnNmb3JtZXIodHJhbnNmb3JtZWQpLFxuICAgICAgICBgJHtmb3JtYXRDdWxwcml0KHNwZWNpZmllcil9IGVycm9yZWQgd2hlbiB0cnlpbmcgdG8gZG8gYSBcIiR7ZXZlbnR9XCIgdHJhbnNmb3JtYFxuICAgICAgKVxuICAgICAgaWYgKHR5cGVvZiByZXR1cm5lZCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdHJhbnNmb3JtZWQgPSByZXR1cm5lZFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJhbnNmb3JtZWRcbiAgfVxuXG4gIGFzeW5jIGNsZWFudXAoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgZm9yIChjb25zdCB7IGNsZWFudXBGbiwgc3BlY2lmaWVyIH0gb2YgdGhpcy5jbGVhbnVwRm5zKSB7XG4gICAgICBhd2FpdCB3cmFwRXJyb3JBc3luYyhcbiAgICAgICAgYXN5bmMgKCkgPT4gYXdhaXQgY2xlYW51cEZuKCksXG4gICAgICAgIGAke2Zvcm1hdEN1bHByaXQoc3BlY2lmaWVyKX0gZXJyb3JlZCB3aGVuIHRyeWluZyB0byBjbGVhbnVwYFxuICAgICAgKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBmb3JtYXRDdWxwcml0KHNwZWNpZmllcj86IHN0cmluZykge1xuICByZXR1cm4gc3BlY2lmaWVyID8gYFBsdWdpbiBcIiR7c3BlY2lmaWVyfVwiYCA6ICdDdWN1bWJlcidcbn1cblxuZnVuY3Rpb24gd3JhcEVycm9yPFQ+KGZuOiAoKSA9PiBULCBtZXNzYWdlOiBzdHJpbmcpOiBUIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZm4oKVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlLCB7IGNhdXNlOiBlcnJvciB9KVxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdyYXBFcnJvckFzeW5jPFQ+KGZuOiAoKSA9PiBQcm9taXNlPFQ+LCBtZXNzYWdlOiBzdHJpbmcpOiBQcm9taXNlPFQ+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgZm4oKVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlLCB7IGNhdXNlOiBlcnJvciB9KVxuICB9XG59XG4iXX0=
|
package/lib/plugin/types.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Writable } from 'node:stream';
|
|
2
|
-
import { Envelope } from '@cucumber/messages';
|
|
3
|
-
import { ILogger } from '../environment';
|
|
4
|
-
import { IFilterablePickle } from '../filter';
|
|
5
|
-
import { IResolvedPaths } from '../paths';
|
|
1
|
+
import type { Writable } from 'node:stream';
|
|
2
|
+
import type { Envelope } from '@cucumber/messages';
|
|
3
|
+
import type { ILogger } from '../environment';
|
|
4
|
+
import type { IFilterablePickle } from '../filter';
|
|
5
|
+
import type { IResolvedPaths } from '../paths';
|
|
6
6
|
/**
|
|
7
7
|
* The operation Cucumber is doing in this process
|
|
8
8
|
* @public
|
|
@@ -35,7 +35,7 @@ export type CoordinatorEnvironment = {
|
|
|
35
35
|
* Keys for event handlers that plugins can register
|
|
36
36
|
* @public
|
|
37
37
|
*/
|
|
38
|
-
export type CoordinatorEventKey = 'message' | 'paths:resolve';
|
|
38
|
+
export type CoordinatorEventKey = 'message' | 'paths:resolve' | 'publish:url';
|
|
39
39
|
/**
|
|
40
40
|
* Keys for transforms that plugins can register
|
|
41
41
|
* @public
|
|
@@ -48,6 +48,7 @@ export type CoordinatorTransformKey = 'pickles:filter' | 'pickles:order';
|
|
|
48
48
|
export type CoordinatorEventValues = {
|
|
49
49
|
message: Readonly<Envelope>;
|
|
50
50
|
'paths:resolve': Readonly<IResolvedPaths>;
|
|
51
|
+
'publish:url': string;
|
|
51
52
|
};
|
|
52
53
|
/**
|
|
53
54
|
* Mapping of transform keys to their value types
|
|
@@ -91,10 +92,14 @@ export type CoordinatorContext<OptionsType> = {
|
|
|
91
92
|
transform: <EventKey extends CoordinatorTransformKey>(event: EventKey, handler: CoordinatorTransformer<EventKey>) => void;
|
|
92
93
|
/**
|
|
93
94
|
* Options for the plugin
|
|
95
|
+
* @remarks
|
|
96
|
+
* If the plugin definition provides an `optionsKey`, this value will be
|
|
97
|
+
* from that key in the global options object. Otherwise, it will be the
|
|
98
|
+
* entire global options object.
|
|
94
99
|
*/
|
|
95
100
|
options: OptionsType;
|
|
96
101
|
/**
|
|
97
|
-
* Logger for emitting user-facing messages or diagnostics
|
|
102
|
+
* Logger for emitting user-facing messages or diagnostics; goes to `stderr`
|
|
98
103
|
*/
|
|
99
104
|
logger: ILogger;
|
|
100
105
|
/**
|
|
@@ -117,7 +122,7 @@ export type Plugin<OptionsType = any> = {
|
|
|
117
122
|
* Coordinator function called during initialization
|
|
118
123
|
* @remarks
|
|
119
124
|
* Can do async work, and the Promise will be awaited. Can optionally return
|
|
120
|
-
* a cleanup function to be called when
|
|
125
|
+
* a cleanup function to be called when the operation has finished.
|
|
121
126
|
*/
|
|
122
127
|
coordinator: (context: CoordinatorContext<OptionsType>) => PromiseLike<PluginCleanup | void> | PluginCleanup | void;
|
|
123
128
|
/**
|
|
@@ -125,17 +130,78 @@ export type Plugin<OptionsType = any> = {
|
|
|
125
130
|
*/
|
|
126
131
|
optionsKey?: string;
|
|
127
132
|
};
|
|
133
|
+
/**
|
|
134
|
+
* Context object passed to an internal plugin's coordinator function
|
|
135
|
+
* @internal
|
|
136
|
+
*/
|
|
137
|
+
export type InternalCoordinatorContext<OptionsType> = CoordinatorContext<OptionsType> & {
|
|
138
|
+
emit: <EventKey extends CoordinatorEventKey>(event: EventKey, value: CoordinatorEventValues[EventKey]) => void;
|
|
139
|
+
};
|
|
140
|
+
/**
|
|
141
|
+
* A built-in plugin with the additional ability to emit events
|
|
142
|
+
* @internal
|
|
143
|
+
*/
|
|
144
|
+
export type InternalPlugin<OptionsType = any> = {
|
|
145
|
+
type: 'plugin';
|
|
146
|
+
coordinator: (context: InternalCoordinatorContext<OptionsType>) => PromiseLike<PluginCleanup | void> | PluginCleanup | void;
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Context object passed to a formatter plugin's function
|
|
150
|
+
* @public
|
|
151
|
+
*/
|
|
128
152
|
export type FormatterPluginContext<OptionsType> = {
|
|
153
|
+
/**
|
|
154
|
+
* Register a handler for Cucumber Messages
|
|
155
|
+
*/
|
|
129
156
|
on: (key: 'message', handler: (value: Envelope) => void) => void;
|
|
157
|
+
/**
|
|
158
|
+
* Options for the formatter
|
|
159
|
+
* @remarks
|
|
160
|
+
* If the plugin definition provides an `optionsKey`, this value will be
|
|
161
|
+
* from that key in the global options object. Otherwise, it will be the
|
|
162
|
+
* entire global options object.
|
|
163
|
+
*/
|
|
130
164
|
options: OptionsType;
|
|
165
|
+
/**
|
|
166
|
+
* Logger for emitting user-facing messages or diagnostics; goes to `stderr`
|
|
167
|
+
*/
|
|
131
168
|
logger: ILogger;
|
|
169
|
+
/**
|
|
170
|
+
* The writable stream the output is being written to
|
|
171
|
+
* @remarks
|
|
172
|
+
* Ideally you should use this only for feature detection and/or advanced
|
|
173
|
+
* TTY functionality; for just writing output, use `write`
|
|
174
|
+
*/
|
|
132
175
|
stream: NodeJS.WritableStream;
|
|
176
|
+
/**
|
|
177
|
+
* Fire-and-forget function to write data to the output stream
|
|
178
|
+
*/
|
|
133
179
|
write: (buffer: string | Uint8Array) => void;
|
|
180
|
+
/**
|
|
181
|
+
* The directory containing the target file, if the output stream is for a
|
|
182
|
+
* file
|
|
183
|
+
* @remarks
|
|
184
|
+
* This can be used to write additional files as siblings to the output file,
|
|
185
|
+
* but this should be for exceptional cases; we recommend keeping formatter
|
|
186
|
+
* output self-contained as much as possible.
|
|
187
|
+
*/
|
|
134
188
|
directory?: string;
|
|
135
189
|
};
|
|
136
|
-
|
|
190
|
+
/**
|
|
191
|
+
* A plugin that consumes Cucumber Messages and writes formatted output to a stream
|
|
192
|
+
* @public
|
|
193
|
+
*/
|
|
137
194
|
export type FormatterPlugin<OptionsType = any> = {
|
|
138
195
|
type: 'formatter';
|
|
139
|
-
|
|
196
|
+
/**
|
|
197
|
+
* Coordinator function called during initialization
|
|
198
|
+
* @remarks
|
|
199
|
+
* Can do async work, and the Promise will be awaited. Can optionally return
|
|
200
|
+
* a cleanup function to be called before the stream is finished.
|
|
201
|
+
*/
|
|
202
|
+
formatter: (context: FormatterPluginContext<OptionsType>) => PromiseLike<PluginCleanup | void> | PluginCleanup | void;
|
|
203
|
+
/**
|
|
204
|
+
* Optional key to extract plugin-specific options from the format options object
|
|
205
|
+
*/
|
|
140
206
|
optionsKey?: string;
|
|
141
207
|
};
|
package/lib/plugin/types.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGx1Z2luL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFdyaXRhYmxlIH0gZnJvbSAnbm9kZTpzdHJlYW0nXG5pbXBvcnQgdHlwZSB7IEVudmVsb3BlIH0gZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHR5cGUgeyBJTG9nZ2VyIH0gZnJvbSAnLi4vZW52aXJvbm1lbnQnXG5pbXBvcnQgdHlwZSB7IElGaWx0ZXJhYmxlUGlja2xlIH0gZnJvbSAnLi4vZmlsdGVyJ1xuaW1wb3J0IHR5cGUgeyBJUmVzb2x2ZWRQYXRocyB9IGZyb20gJy4uL3BhdGhzJ1xuXG4vKipcbiAqIFRoZSBvcGVyYXRpb24gQ3VjdW1iZXIgaXMgZG9pbmcgaW4gdGhpcyBwcm9jZXNzXG4gKiBAcHVibGljXG4gKiBAcmVtYXJrc1xuICogYGxvYWRTb3VyY2VzYCBhbmQgYGxvYWRTdXBwb3J0YCBhcmUgZ2VuZXJhbGx5IHVzZWQgYXMgcHJlZmxpZ2h0IG9wZXJhdGlvbnNcbiAqIGZvciBjb21wbGV4IHVzZSBjYXNlcy4gYHJ1bkN1Y3VtYmVyYCBpcyB0aGUgb25lIHdoZXJlIHRlc3RzIGFyZSBhY3R1YWxseVxuICogZXhlY3V0ZWQuXG4gKi9cbmV4cG9ydCB0eXBlIFBsdWdpbk9wZXJhdGlvbiA9ICdsb2FkU291cmNlcycgfCAnbG9hZFN1cHBvcnQnIHwgJ3J1bkN1Y3VtYmVyJ1xuXG4vKipcbiAqIFN1YnNldCBvZiB0aGUgZW52aXJvbm1lbnQgYXZhaWxhYmxlIHRvIHBsdWdpbnNcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IHR5cGUgQ29vcmRpbmF0b3JFbnZpcm9ubWVudCA9IHtcbiAgLyoqXG4gICAqIFdvcmtpbmcgZGlyZWN0b3J5IGZvciB0aGUgcHJvamVjdFxuICAgKi9cbiAgY3dkOiBzdHJpbmdcbiAgLyoqXG4gICAqIFdyaXRhYmxlIHN0cmVhbSB3aGVyZSB0aGUgdGVzdCBydW4ncyB3YXJuaW5nL2Vycm9yIG91dHB1dCBpcyB3cml0dGVuXG4gICAqIGFuZCBwbHVnaW5zIGNhbiB3cml0ZSB0byBkaXJlY3RseSBpZiByZXF1aXJlZFxuICAgKi9cbiAgc3RkZXJyOiBXcml0YWJsZVxuICAvKipcbiAgICogRW52aXJvbm1lbnQgdmFyaWFibGVzXG4gICAqL1xuICBlbnY6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHVuZGVmaW5lZD5cbn1cblxuLyoqXG4gKiBLZXlzIGZvciBldmVudCBoYW5kbGVycyB0aGF0IHBsdWdpbnMgY2FuIHJlZ2lzdGVyXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIENvb3JkaW5hdG9yRXZlbnRLZXkgPSAnbWVzc2FnZScgfCAncGF0aHM6cmVzb2x2ZScgfCAncHVibGlzaDp1cmwnXG5cbi8qKlxuICogS2V5cyBmb3IgdHJhbnNmb3JtcyB0aGF0IHBsdWdpbnMgY2FuIHJlZ2lzdGVyXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5ID0gJ3BpY2tsZXM6ZmlsdGVyJyB8ICdwaWNrbGVzOm9yZGVyJ1xuXG4vKipcbiAqIE1hcHBpbmcgb2YgZXZlbnQga2V5cyB0byB0aGVpciB2YWx1ZSB0eXBlc1xuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBDb29yZGluYXRvckV2ZW50VmFsdWVzID0ge1xuICBtZXNzYWdlOiBSZWFkb25seTxFbnZlbG9wZT5cbiAgJ3BhdGhzOnJlc29sdmUnOiBSZWFkb25seTxJUmVzb2x2ZWRQYXRocz5cbiAgJ3B1Ymxpc2g6dXJsJzogc3RyaW5nXG59XG5cbi8qKlxuICogTWFwcGluZyBvZiB0cmFuc2Zvcm0ga2V5cyB0byB0aGVpciB2YWx1ZSB0eXBlc1xuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBDb29yZGluYXRvclRyYW5zZm9ybVZhbHVlcyA9IHtcbiAgJ3BpY2tsZXM6ZmlsdGVyJzogUmVhZG9ubHk8QXJyYXk8SUZpbHRlcmFibGVQaWNrbGU+PlxuICAncGlja2xlczpvcmRlcic6IFJlYWRvbmx5PEFycmF5PElGaWx0ZXJhYmxlUGlja2xlPj5cbn1cblxuLyoqXG4gKiBIYW5kbGVyIGZ1bmN0aW9uIGZvciBhIGNvb3JkaW5hdG9yIGV2ZW50XG4gKiBAcHVibGljXG4gKiBAcmVtYXJrc1xuICogWW91IGNhbiBkbyBhc3luYyB3b3JrIGhlcmUsIGJ1dCBDdWN1bWJlciB3aWxsIG5vdCBhd2FpdCB0aGUgUHJvbWlzZS5cbiAqL1xuZXhwb3J0IHR5cGUgQ29vcmRpbmF0b3JFdmVudEhhbmRsZXI8SyBleHRlbmRzIENvb3JkaW5hdG9yRXZlbnRLZXk+ID0gKFxuICB2YWx1ZTogQ29vcmRpbmF0b3JFdmVudFZhbHVlc1tLXVxuKSA9PiB2b2lkXG5cbi8qKlxuICogVHJhbnNmb3JtZXIgZnVuY3Rpb24gZm9yIGEgY29vcmRpbmF0b3IgdHJhbnNmb3JtXG4gKiBAcmVtYXJrc1xuICogRG9uJ3QgdHJ5IHRvIG1vZGlmeSB0aGUgb3JpZ2luYWwgdmFsdWUuIFJldHVybiBhIHRyYW5zZm9ybWVkIHZhbHVlLCBvclxuICogYHVuZGVmaW5lZGAgdG8gcGFzcyB0aHJvdWdoIHVuY2hhbmdlZC5cbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IHR5cGUgQ29vcmRpbmF0b3JUcmFuc2Zvcm1lcjxLIGV4dGVuZHMgQ29vcmRpbmF0b3JUcmFuc2Zvcm1LZXk+ID0gKFxuICB2YWx1ZTogQ29vcmRpbmF0b3JUcmFuc2Zvcm1WYWx1ZXNbS11cbikgPT4gUHJvbWlzZUxpa2U8Q29vcmRpbmF0b3JUcmFuc2Zvcm1WYWx1ZXNbS10+IHwgQ29vcmRpbmF0b3JUcmFuc2Zvcm1WYWx1ZXNbS11cblxuLyoqXG4gKiBDb250ZXh0IG9iamVjdCBwYXNzZWQgdG8gYSBwbHVnaW4ncyBjb29yZGluYXRvciBmdW5jdGlvblxuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBDb29yZGluYXRvckNvbnRleHQ8T3B0aW9uc1R5cGU+ID0ge1xuICAvKipcbiAgICogVGhlIG9wZXJhdGlvbiBDdWN1bWJlciBpcyBkb2luZyBpbiB0aGlzIHByb2Nlc3NcbiAgICovXG4gIG9wZXJhdGlvbjogUGx1Z2luT3BlcmF0aW9uXG4gIC8qKlxuICAgKiBSZWdpc3RlciBhbiBldmVudCBoYW5kbGVyXG4gICAqL1xuICBvbjogPEV2ZW50S2V5IGV4dGVuZHMgQ29vcmRpbmF0b3JFdmVudEtleT4oXG4gICAgZXZlbnQ6IEV2ZW50S2V5LFxuICAgIGhhbmRsZXI6IENvb3JkaW5hdG9yRXZlbnRIYW5kbGVyPEV2ZW50S2V5PlxuICApID0+IHZvaWRcbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgdHJhbnNmb3JtZXJcbiAgICovXG4gIHRyYW5zZm9ybTogPEV2ZW50S2V5IGV4dGVuZHMgQ29vcmRpbmF0b3JUcmFuc2Zvcm1LZXk+KFxuICAgIGV2ZW50OiBFdmVudEtleSxcbiAgICBoYW5kbGVyOiBDb29yZGluYXRvclRyYW5zZm9ybWVyPEV2ZW50S2V5PlxuICApID0+IHZvaWRcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBwbHVnaW5cbiAgICogQHJlbWFya3NcbiAgICogSWYgdGhlIHBsdWdpbiBkZWZpbml0aW9uIHByb3ZpZGVzIGFuIGBvcHRpb25zS2V5YCwgdGhpcyB2YWx1ZSB3aWxsIGJlXG4gICAqIGZyb20gdGhhdCBrZXkgaW4gdGhlIGdsb2JhbCBvcHRpb25zIG9iamVjdC4gT3RoZXJ3aXNlLCBpdCB3aWxsIGJlIHRoZVxuICAgKiBlbnRpcmUgZ2xvYmFsIG9wdGlvbnMgb2JqZWN0LlxuICAgKi9cbiAgb3B0aW9uczogT3B0aW9uc1R5cGVcbiAgLyoqXG4gICAqIExvZ2dlciBmb3IgZW1pdHRpbmcgdXNlci1mYWNpbmcgbWVzc2FnZXMgb3IgZGlhZ25vc3RpY3M7IGdvZXMgdG8gYHN0ZGVycmBcbiAgICovXG4gIGxvZ2dlcjogSUxvZ2dlclxuICAvKipcbiAgICogU3Vic2V0IG9mIHRoZSBlbnZpcm9ubWVudFxuICAgKi9cbiAgZW52aXJvbm1lbnQ6IENvb3JkaW5hdG9yRW52aXJvbm1lbnRcbn1cblxuLyoqXG4gKiBPcHRpb25hbCBjbGVhbnVwIGZ1bmN0aW9uIHJldHVybmVkIGJ5IGEgcGx1Z2luIGNvb3JkaW5hdG9yXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIFBsdWdpbkNsZWFudXAgPSAoKSA9PiBQcm9taXNlTGlrZTx2b2lkPiB8IHZvaWRcblxuLyoqXG4gKiBBIHBsdWdpbiB0aGF0IGNhbiBzdWJzY3JpYmUgdG8gZXZlbnRzIGFuZCByZWdpc3RlciB0cmFuc2Zvcm1zXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIFBsdWdpbjxPcHRpb25zVHlwZSA9IGFueT4gPSB7XG4gIHR5cGU6ICdwbHVnaW4nXG4gIC8qKlxuICAgKiBDb29yZGluYXRvciBmdW5jdGlvbiBjYWxsZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uXG4gICAqIEByZW1hcmtzXG4gICAqIENhbiBkbyBhc3luYyB3b3JrLCBhbmQgdGhlIFByb21pc2Ugd2lsbCBiZSBhd2FpdGVkLiBDYW4gb3B0aW9uYWxseSByZXR1cm5cbiAgICogYSBjbGVhbnVwIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBvcGVyYXRpb24gaGFzIGZpbmlzaGVkLlxuICAgKi9cbiAgY29vcmRpbmF0b3I6IChcbiAgICBjb250ZXh0OiBDb29yZGluYXRvckNvbnRleHQ8T3B0aW9uc1R5cGU+XG4gICkgPT4gUHJvbWlzZUxpa2U8UGx1Z2luQ2xlYW51cCB8IHZvaWQ+IHwgUGx1Z2luQ2xlYW51cCB8IHZvaWRcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGtleSB0byBleHRyYWN0IHBsdWdpbi1zcGVjaWZpYyBvcHRpb25zIGZyb20gdGhlIHJvb3Qgb3B0aW9ucyBvYmplY3RcbiAgICovXG4gIG9wdGlvbnNLZXk/OiBzdHJpbmdcbn1cblxuLyoqXG4gKiBDb250ZXh0IG9iamVjdCBwYXNzZWQgdG8gYW4gaW50ZXJuYWwgcGx1Z2luJ3MgY29vcmRpbmF0b3IgZnVuY3Rpb25cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgdHlwZSBJbnRlcm5hbENvb3JkaW5hdG9yQ29udGV4dDxPcHRpb25zVHlwZT4gPSBDb29yZGluYXRvckNvbnRleHQ8T3B0aW9uc1R5cGU+ICYge1xuICBlbWl0OiA8RXZlbnRLZXkgZXh0ZW5kcyBDb29yZGluYXRvckV2ZW50S2V5PihcbiAgICBldmVudDogRXZlbnRLZXksXG4gICAgdmFsdWU6IENvb3JkaW5hdG9yRXZlbnRWYWx1ZXNbRXZlbnRLZXldXG4gICkgPT4gdm9pZFxufVxuXG4vKipcbiAqIEEgYnVpbHQtaW4gcGx1Z2luIHdpdGggdGhlIGFkZGl0aW9uYWwgYWJpbGl0eSB0byBlbWl0IGV2ZW50c1xuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCB0eXBlIEludGVybmFsUGx1Z2luPE9wdGlvbnNUeXBlID0gYW55PiA9IHtcbiAgdHlwZTogJ3BsdWdpbidcbiAgY29vcmRpbmF0b3I6IChcbiAgICBjb250ZXh0OiBJbnRlcm5hbENvb3JkaW5hdG9yQ29udGV4dDxPcHRpb25zVHlwZT5cbiAgKSA9PiBQcm9taXNlTGlrZTxQbHVnaW5DbGVhbnVwIHwgdm9pZD4gfCBQbHVnaW5DbGVhbnVwIHwgdm9pZFxufVxuXG4vKipcbiAqIENvbnRleHQgb2JqZWN0IHBhc3NlZCB0byBhIGZvcm1hdHRlciBwbHVnaW4ncyBmdW5jdGlvblxuICogQHB1YmxpY1xuICovXG5leHBvcnQgdHlwZSBGb3JtYXR0ZXJQbHVnaW5Db250ZXh0PE9wdGlvbnNUeXBlPiA9IHtcbiAgLyoqXG4gICAqIFJlZ2lzdGVyIGEgaGFuZGxlciBmb3IgQ3VjdW1iZXIgTWVzc2FnZXNcbiAgICovXG4gIG9uOiAoa2V5OiAnbWVzc2FnZScsIGhhbmRsZXI6ICh2YWx1ZTogRW52ZWxvcGUpID0+IHZvaWQpID0+IHZvaWRcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBmb3JtYXR0ZXJcbiAgICogQHJlbWFya3NcbiAgICogSWYgdGhlIHBsdWdpbiBkZWZpbml0aW9uIHByb3ZpZGVzIGFuIGBvcHRpb25zS2V5YCwgdGhpcyB2YWx1ZSB3aWxsIGJlXG4gICAqIGZyb20gdGhhdCBrZXkgaW4gdGhlIGdsb2JhbCBvcHRpb25zIG9iamVjdC4gT3RoZXJ3aXNlLCBpdCB3aWxsIGJlIHRoZVxuICAgKiBlbnRpcmUgZ2xvYmFsIG9wdGlvbnMgb2JqZWN0LlxuICAgKi9cbiAgb3B0aW9uczogT3B0aW9uc1R5cGVcbiAgLyoqXG4gICAqIExvZ2dlciBmb3IgZW1pdHRpbmcgdXNlci1mYWNpbmcgbWVzc2FnZXMgb3IgZGlhZ25vc3RpY3M7IGdvZXMgdG8gYHN0ZGVycmBcbiAgICovXG4gIGxvZ2dlcjogSUxvZ2dlclxuICAvKipcbiAgICogVGhlIHdyaXRhYmxlIHN0cmVhbSB0aGUgb3V0cHV0IGlzIGJlaW5nIHdyaXR0ZW4gdG9cbiAgICogQHJlbWFya3NcbiAgICogSWRlYWxseSB5b3Ugc2hvdWxkIHVzZSB0aGlzIG9ubHkgZm9yIGZlYXR1cmUgZGV0ZWN0aW9uIGFuZC9vciBhZHZhbmNlZFxuICAgKiBUVFkgZnVuY3Rpb25hbGl0eTsgZm9yIGp1c3Qgd3JpdGluZyBvdXRwdXQsIHVzZSBgd3JpdGVgXG4gICAqL1xuICBzdHJlYW06IE5vZGVKUy5Xcml0YWJsZVN0cmVhbVxuICAvKipcbiAgICogRmlyZS1hbmQtZm9yZ2V0IGZ1bmN0aW9uIHRvIHdyaXRlIGRhdGEgdG8gdGhlIG91dHB1dCBzdHJlYW1cbiAgICovXG4gIHdyaXRlOiAoYnVmZmVyOiBzdHJpbmcgfCBVaW50OEFycmF5KSA9PiB2b2lkXG4gIC8qKlxuICAgKiBUaGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIHRhcmdldCBmaWxlLCBpZiB0aGUgb3V0cHV0IHN0cmVhbSBpcyBmb3IgYVxuICAgKiBmaWxlXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgY2FuIGJlIHVzZWQgdG8gd3JpdGUgYWRkaXRpb25hbCBmaWxlcyBhcyBzaWJsaW5ncyB0byB0aGUgb3V0cHV0IGZpbGUsXG4gICAqIGJ1dCB0aGlzIHNob3VsZCBiZSBmb3IgZXhjZXB0aW9uYWwgY2FzZXM7IHdlIHJlY29tbWVuZCBrZWVwaW5nIGZvcm1hdHRlclxuICAgKiBvdXRwdXQgc2VsZi1jb250YWluZWQgYXMgbXVjaCBhcyBwb3NzaWJsZS5cbiAgICovXG4gIGRpcmVjdG9yeT86IHN0cmluZ1xufVxuXG4vKipcbiAqIEEgcGx1Z2luIHRoYXQgY29uc3VtZXMgQ3VjdW1iZXIgTWVzc2FnZXMgYW5kIHdyaXRlcyBmb3JtYXR0ZWQgb3V0cHV0IHRvIGEgc3RyZWFtXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIEZvcm1hdHRlclBsdWdpbjxPcHRpb25zVHlwZSA9IGFueT4gPSB7XG4gIHR5cGU6ICdmb3JtYXR0ZXInXG4gIC8qKlxuICAgKiBDb29yZGluYXRvciBmdW5jdGlvbiBjYWxsZWQgZHVyaW5nIGluaXRpYWxpemF0aW9uXG4gICAqIEByZW1hcmtzXG4gICAqIENhbiBkbyBhc3luYyB3b3JrLCBhbmQgdGhlIFByb21pc2Ugd2lsbCBiZSBhd2FpdGVkLiBDYW4gb3B0aW9uYWxseSByZXR1cm5cbiAgICogYSBjbGVhbnVwIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCBiZWZvcmUgdGhlIHN0cmVhbSBpcyBmaW5pc2hlZC5cbiAgICovXG4gIGZvcm1hdHRlcjogKFxuICAgIGNvbnRleHQ6IEZvcm1hdHRlclBsdWdpbkNvbnRleHQ8T3B0aW9uc1R5cGU+XG4gICkgPT4gUHJvbWlzZUxpa2U8UGx1Z2luQ2xlYW51cCB8IHZvaWQ+IHwgUGx1Z2luQ2xlYW51cCB8IHZvaWRcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGtleSB0byBleHRyYWN0IHBsdWdpbi1zcGVjaWZpYyBvcHRpb25zIGZyb20gdGhlIGZvcm1hdCBvcHRpb25zIG9iamVjdFxuICAgKi9cbiAgb3B0aW9uc0tleT86IHN0cmluZ1xufVxuIl19
|
package/lib/publish/index.js
CHANGED
|
@@ -17,4 +17,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
const publish_plugin_1 = require("./publish_plugin");
|
|
18
18
|
exports.default = publish_plugin_1.publishPlugin;
|
|
19
19
|
__exportStar(require("./types"), exports);
|
|
20
|
-
//# sourceMappingURL=
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGlzaC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscURBQWdEO0FBRWhELGtCQUFlLDhCQUFhLENBQUE7QUFDNUIsMENBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcHVibGlzaFBsdWdpbiB9IGZyb20gJy4vcHVibGlzaF9wbHVnaW4nXG5cbmV4cG9ydCBkZWZhdWx0IHB1Ymxpc2hQbHVnaW5cbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare const publishPlugin:
|
|
1
|
+
import type { InternalPlugin } from '../plugin';
|
|
2
|
+
export declare const publishPlugin: InternalPlugin;
|
|
@@ -4,51 +4,56 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.publishPlugin = void 0;
|
|
7
|
-
const promises_1 = require("node:stream/promises");
|
|
8
|
-
const node_util_1 = require("node:util");
|
|
9
|
-
const promises_2 = require("node:fs/promises");
|
|
10
|
-
const node_path_1 = __importDefault(require("node:path"));
|
|
11
|
-
const node_os_1 = require("node:os");
|
|
12
7
|
const node_fs_1 = require("node:fs");
|
|
8
|
+
const promises_1 = require("node:fs/promises");
|
|
9
|
+
const node_os_1 = require("node:os");
|
|
10
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
11
|
+
const promises_2 = require("node:stream/promises");
|
|
12
|
+
const node_util_1 = require("node:util");
|
|
13
13
|
const node_zlib_1 = require("node:zlib");
|
|
14
|
-
const supports_color_1 = require("supports-color");
|
|
15
14
|
const has_ansi_1 = __importDefault(require("has-ansi"));
|
|
16
|
-
const
|
|
15
|
+
const supports_color_1 = require("supports-color");
|
|
16
|
+
const DEFAULT_CUCUMBER_PUBLISH_URL = 'https://reports.cucumber.io/api/reports';
|
|
17
17
|
exports.publishPlugin = {
|
|
18
18
|
type: 'plugin',
|
|
19
|
-
coordinator: async ({ on, logger, options, environment }) => {
|
|
19
|
+
coordinator: async ({ on, emit, logger, options, environment }) => {
|
|
20
20
|
if (!options) {
|
|
21
21
|
return undefined;
|
|
22
22
|
}
|
|
23
23
|
const { url = DEFAULT_CUCUMBER_PUBLISH_URL, token } = options;
|
|
24
|
-
const headers = {
|
|
24
|
+
const headers = {
|
|
25
|
+
Accept: 'application/json',
|
|
26
|
+
};
|
|
25
27
|
if (token !== undefined) {
|
|
26
28
|
headers.Authorization = `Bearer ${token}`;
|
|
27
29
|
}
|
|
28
30
|
const touchResponse = await fetch(url, { headers });
|
|
29
|
-
|
|
31
|
+
if (touchResponse.status >= 500) {
|
|
32
|
+
return () => {
|
|
33
|
+
logger.error(`Failed to publish report to ${new URL(url).origin} with status ${touchResponse.status}`);
|
|
34
|
+
logger.debug(touchResponse);
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
const touchResult = (await touchResponse.json());
|
|
30
38
|
if (!touchResponse.ok) {
|
|
31
39
|
return () => {
|
|
32
|
-
|
|
33
|
-
environment.stderr.write(sanitisePublishOutput(banner, environment.stderr) + '\n');
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
logger.error(`Failed to publish report to ${new URL(url).origin} with status ${touchResponse.status}`);
|
|
37
|
-
logger.debug(touchResponse);
|
|
38
|
-
}
|
|
40
|
+
environment.stderr.write(`${sanitisePublishOutput(touchResult.banner, environment.stderr)}\n`);
|
|
39
41
|
};
|
|
40
42
|
}
|
|
43
|
+
if (touchResult.url) {
|
|
44
|
+
emit('publish:url', touchResult.url);
|
|
45
|
+
}
|
|
41
46
|
const uploadUrl = touchResponse.headers.get('Location');
|
|
42
|
-
const tempDir = await (0,
|
|
47
|
+
const tempDir = await (0, promises_1.mkdtemp)(node_path_1.default.join((0, node_os_1.tmpdir)(), `cucumber-js-publish-`));
|
|
43
48
|
const tempFilePath = node_path_1.default.join(tempDir, 'envelopes.jsonl.gz');
|
|
44
49
|
const writeStream = (0, node_zlib_1.createGzip)();
|
|
45
|
-
const finishedWriting = (0,
|
|
46
|
-
on('message', (value) => writeStream.write(JSON.stringify(value)
|
|
50
|
+
const finishedWriting = (0, promises_2.pipeline)(writeStream, (0, node_fs_1.createWriteStream)(tempFilePath));
|
|
51
|
+
on('message', (value) => writeStream.write(`${JSON.stringify(value)}\n`));
|
|
47
52
|
return () => {
|
|
48
53
|
return new Promise((resolve) => {
|
|
49
54
|
writeStream.end(async () => {
|
|
50
55
|
await finishedWriting;
|
|
51
|
-
const stats = await (0,
|
|
56
|
+
const stats = await (0, promises_1.stat)(tempFilePath);
|
|
52
57
|
const contentLength = stats.size.toString();
|
|
53
58
|
logger.debug('Uploading envelopes to Cucumber Reports with content length:', contentLength);
|
|
54
59
|
const uploadResponse = await fetch(uploadUrl, {
|
|
@@ -62,7 +67,7 @@ exports.publishPlugin = {
|
|
|
62
67
|
duplex: 'half',
|
|
63
68
|
});
|
|
64
69
|
if (uploadResponse.ok) {
|
|
65
|
-
environment.stderr.write(sanitisePublishOutput(banner, environment.stderr)
|
|
70
|
+
environment.stderr.write(`${sanitisePublishOutput(touchResult.banner, environment.stderr)}\n`);
|
|
66
71
|
}
|
|
67
72
|
else {
|
|
68
73
|
logger.error(`Failed to upload report to ${new URL(uploadUrl).origin} with status ${uploadResponse.status}`);
|
|
@@ -81,9 +86,9 @@ strip them back out. Ideally we should get structured data from the service and
|
|
|
81
86
|
compose the console message on this end.
|
|
82
87
|
*/
|
|
83
88
|
function sanitisePublishOutput(raw, stderr) {
|
|
84
|
-
if (!(0, supports_color_1.
|
|
89
|
+
if (!(0, supports_color_1.createSupportsColor)(stderr) && (0, has_ansi_1.default)(raw)) {
|
|
85
90
|
return (0, node_util_1.stripVTControlCharacters)(raw);
|
|
86
91
|
}
|
|
87
92
|
return raw;
|
|
88
93
|
}
|
|
89
|
-
//# sourceMappingURL=
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaF9wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGlzaC9wdWJsaXNoX3BsdWdpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxxQ0FBNkQ7QUFDN0QsK0NBQWdEO0FBQ2hELHFDQUFnQztBQUNoQywwREFBNEI7QUFFNUIsbURBQStDO0FBQy9DLHlDQUFvRDtBQUNwRCx5Q0FBc0M7QUFDdEMsd0RBQThCO0FBQzlCLG1EQUFvRDtBQVFwRCxNQUFNLDRCQUE0QixHQUFHLHlDQUF5QyxDQUFBO0FBRWpFLFFBQUEsYUFBYSxHQUFtQjtJQUMzQyxJQUFJLEVBQUUsUUFBUTtJQUNkLFdBQVcsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRTtRQUNoRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDYixPQUFPLFNBQVMsQ0FBQTtRQUNsQixDQUFDO1FBQ0QsTUFBTSxFQUFFLEdBQUcsR0FBRyw0QkFBNEIsRUFBRSxLQUFLLEVBQUUsR0FBRyxPQUFPLENBQUE7UUFDN0QsTUFBTSxPQUFPLEdBQThCO1lBQ3pDLE1BQU0sRUFBRSxrQkFBa0I7U0FDM0IsQ0FBQTtRQUNELElBQUksS0FBSyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sQ0FBQyxhQUFhLEdBQUcsVUFBVSxLQUFLLEVBQUUsQ0FBQTtRQUMzQyxDQUFDO1FBQ0QsTUFBTSxhQUFhLEdBQUcsTUFBTSxLQUFLLENBQUMsR0FBRyxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQTtRQUVuRCxJQUFJLGFBQWEsQ0FBQyxNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7WUFDaEMsT0FBTyxHQUFHLEVBQUU7Z0JBQ1YsTUFBTSxDQUFDLEtBQUssQ0FDViwrQkFBK0IsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxnQkFB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LENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtvQkFDM0MsQ0FBQztvQkFDRCxPQUFPLEVBQUUsQ0FBQTtnQkFDWCxDQUFDLENBQUMsQ0FBQTtZQUNKLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFBO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUFFRDs7Ozs7R0FLRztBQUNILFNBQVMscUJBQXFCLENBQUMsR0FBVyxFQUFFLE1BQWdCO0lBQzFELElBQUksQ0FBQyxJQUFBLG9DQUFtQixFQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUEsa0JBQU8sRUFBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1FBQ2pELE9BQU8sSUFBQSxvQ0FBd0IsRUFBQyxHQUFHLENBQUMsQ0FBQTtJQUN0QyxDQUFDO0lBQ0QsT0FBTyxHQUFHLENBQUE7QUFDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUmVhZFN0cmVhbSwgY3JlYXRlV3JpdGVTdHJlYW0gfSBmcm9tICdub2RlOmZzJ1xuaW1wb3J0IHsgbWtkdGVtcCwgc3RhdCB9IGZyb20gJ25vZGU6ZnMvcHJvbWlzZXMnXG5pbXBvcnQgeyB0bXBkaXIgfSBmcm9tICdub2RlOm9zJ1xuaW1wb3J0IHBhdGggZnJvbSAnbm9kZTpwYXRoJ1xuaW1wb3J0IHR5cGUgeyBXcml0YWJsZSB9IGZyb20gJ25vZGU6c3RyZWFtJ1xuaW1wb3J0IHsgcGlwZWxpbmUgfSBmcm9tICdub2RlOnN0cmVhbS9wcm9taXNlcydcbmltcG9ydCB7IHN0cmlwVlRDb250cm9sQ2hhcmFjdGVycyB9IGZyb20gJ25vZGU6dXRpbCdcbmltcG9ydCB7IGNyZWF0ZUd6aXAgfSBmcm9tICdub2RlOnpsaWInXG5pbXBvcnQgaGFzQW5zaSBmcm9tICdoYXMtYW5zaSdcbmltcG9ydCB7IGNyZWF0ZVN1cHBvcnRzQ29sb3IgfSBmcm9tICdzdXBwb3J0cy1jb2xvcidcbmltcG9ydCB0eXBlIHsgSW50ZXJuYWxQbHVnaW4gfSBmcm9tICcuLi9wbHVnaW4nXG5cbnR5cGUgVG91Y2hSZXN1bHQgPSB7XG4gIGJhbm5lcjogc3RyaW5nXG4gIHVybD86IHN0cmluZ1xufVxuXG5jb25zdCBERUZBVUxUX0NVQ1VNQkVSX1BVQkxJU0hfVVJMID0gJ2h0dHBzOi8vcmVwb3J0cy5jdWN1bWJlci5pby9hcGkvcmVwb3J0cydcblxuZXhwb3J0IGNvbnN0IHB1Ymxpc2hQbHVnaW46IEludGVybmFsUGx1Z2luID0ge1xuICB0eXBlOiAncGx1Z2luJyxcbiAgY29vcmRpbmF0b3I6IGFzeW5jICh7IG9uLCBlbWl0LCBsb2dnZXIsIG9wdGlvbnMsIGVudmlyb25tZW50IH0pID0+IHtcbiAgICBpZiAoIW9wdGlvbnMpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG4gICAgY29uc3QgeyB1cmwgPSBERUZBVUxUX0NVQ1VNQkVSX1BVQkxJU0hfVVJMLCB0b2tlbiB9ID0gb3B0aW9uc1xuICAgIGNvbnN0IGhlYWRlcnM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7XG4gICAgICBBY2NlcHQ6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICB9XG4gICAgaWYgKHRva2VuICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGhlYWRlcnMuQXV0aG9yaXphdGlvbiA9IGBCZWFyZXIgJHt0b2tlbn1gXG4gICAgfVxuICAgIGNvbnN0IHRvdWNoUmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh1cmwsIHsgaGVhZGVycyB9KVxuXG4gICAgaWYgKHRvdWNoUmVzcG9uc2Uuc3RhdHVzID49IDUwMCkge1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICAgIGBGYWlsZWQgdG8gcHVibGlzaCByZXBvcnQgdG8gJHtuZXcgVVJMKHVybCkub3JpZ2lufSB3aXRoIHN0YXR1cyAke3RvdWNoUmVzcG9uc2Uuc3RhdHVzfWBcbiAgICAgICAgKVxuICAgICAgICBsb2dnZXIuZGVidWcodG91Y2hSZXNwb25zZSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB0b3VjaFJlc3VsdCA9IChhd2FpdCB0b3VjaFJlc3BvbnNlLmpzb24oKSkgYXMgVG91Y2hSZXN1bHRcblxuICAgIGlmICghdG91Y2hSZXNwb25zZS5vaykge1xuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgZW52aXJvbm1lbnQuc3RkZXJyLndyaXRlKFxuICAgICAgICAgIGAke3Nhbml0aXNlUHVibGlzaE91dHB1dCh0b3VjaFJlc3VsdC5iYW5uZXIsIGVudmlyb25tZW50LnN0ZGVycil9XFxuYFxuICAgICAgICApXG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHRvdWNoUmVzdWx0LnVybCkge1xuICAgICAgZW1pdCgncHVibGlzaDp1cmwnLCB0b3VjaFJlc3VsdC51cmwpXG4gICAgfVxuXG4gICAgY29uc3QgdXBsb2FkVXJsID0gdG91Y2hSZXNwb25zZS5oZWFkZXJzLmdldCgnTG9jYXRpb24nKVxuICAgIGNvbnN0IHRlbXBEaXIgPSBhd2FpdCBta2R0ZW1wKHBhdGguam9pbih0bXBkaXIoKSwgYGN1Y3VtYmVyLWpzLXB1Ymxpc2gtYCkpXG4gICAgY29uc3QgdGVtcEZpbGVQYXRoID0gcGF0aC5qb2luKHRlbXBEaXIsICdlbnZlbG9wZXMuanNvbmwuZ3onKVxuICAgIGNvbnN0IHdyaXRlU3RyZWFtID0gY3JlYXRlR3ppcCgpXG4gICAgY29uc3QgZmluaXNoZWRXcml0aW5nID0gcGlwZWxpbmUod3JpdGVTdHJlYW0sIGNyZWF0ZVdyaXRlU3RyZWFtKHRlbXBGaWxlUGF0aCkpXG4gICAgb24oJ21lc3NhZ2UnLCAodmFsdWUpID0+IHdyaXRlU3RyZWFtLndyaXRlKGAke0pTT04uc3RyaW5naWZ5KHZhbHVlKX1cXG5gKSlcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHtcbiAgICAgICAgd3JpdGVTdHJlYW0uZW5kKGFzeW5jICgpID0+IHtcbiAgICAgICAgICBhd2FpdCBmaW5pc2hlZFdyaXRpbmdcbiAgICAgICAgICBjb25zdCBzdGF0cyA9IGF3YWl0IHN0YXQodGVtcEZpbGVQYXRoKVxuICAgICAgICAgIGNvbnN0IGNvbnRlbnRMZW5ndGggPSBzdGF0cy5zaXplLnRvU3RyaW5nKClcbiAgICAgICAgICBsb2dnZXIuZGVidWcoXG4gICAgICAgICAgICAnVXBsb2FkaW5nIGVudmVsb3BlcyB0byBDdWN1bWJlciBSZXBvcnRzIHdpdGggY29udGVudCBsZW5ndGg6JyxcbiAgICAgICAgICAgIGNvbnRlbnRMZW5ndGhcbiAgICAgICAgICApXG4gICAgICAgICAgY29uc3QgdXBsb2FkUmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh1cGxvYWRVcmwsIHtcbiAgICAgICAgICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbmwnLFxuICAgICAgICAgICAgICAnQ29udGVudC1FbmNvZGluZyc6ICdnemlwJyxcbiAgICAgICAgICAgICAgJ0NvbnRlbnQtTGVuZ3RoJzogY29udGVudExlbmd0aCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBib2R5OiBjcmVhdGVSZWFkU3RyZWFtKHRlbXBGaWxlUGF0aCksXG4gICAgICAgICAgICBkdXBsZXg6ICdoYWxmJyxcbiAgICAgICAgICB9KVxuICAgICAgICAgIGlmICh1cGxvYWRSZXNwb25zZS5vaykge1xuICAgICAgICAgICAgZW52aXJvbm1lbnQuc3RkZXJyLndyaXRlKFxuICAgICAgICAgICAgICBgJHtzYW5pdGlzZVB1Ymxpc2hPdXRwdXQodG91Y2hSZXN1bHQuYmFubmVyLCBlbnZpcm9ubWVudC5zdGRlcnIpfVxcbmBcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbG9nZ2VyLmVycm9yKFxuICAgICAgICAgICAgICBgRmFpbGVkIHRvIHVwbG9hZCByZXBvcnQgdG8gJHtcbiAgICAgICAgICAgICAgICBuZXcgVVJMKHVwbG9hZFVybCkub3JpZ2luXG4gICAgICAgICAgICAgIH0gd2l0aCBzdGF0dXMgJHt1cGxvYWRSZXNwb25zZS5zdGF0dXN9YFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgbG9nZ2VyLmRlYnVnKGF3YWl0IHVwbG9hZFJlc3BvbnNlLnRleHQoKSlcbiAgICAgICAgICB9XG4gICAgICAgICAgcmVzb2x2ZSgpXG4gICAgICAgIH0pXG4gICAgICB9KVxuICAgIH1cbiAgfSxcbn1cblxuLypcblRoaXMgaXMgYmVjYXVzZSB0aGUgQ3VjdW1iZXIgUmVwb3J0cyBzZXJ2aWNlIHJldHVybnMgYSBwcmUtZm9ybWF0dGVkIGNvbnNvbGUgbWVzc2FnZVxuaW5jbHVkaW5nIEFOU0kgZXNjYXBlcywgc28gaWYgb3VyIHN0ZGVyciBzdHJlYW0gZG9lc24ndCBzdXBwb3J0IHRob3NlIHdlIG5lZWQgdG9cbnN0cmlwIHRoZW0gYmFjayBvdXQuIElkZWFsbHkgd2Ugc2hvdWxkIGdldCBzdHJ1Y3R1cmVkIGRhdGEgZnJvbSB0aGUgc2VydmljZSBhbmRcbmNvbXBvc2UgdGhlIGNvbnNvbGUgbWVzc2FnZSBvbiB0aGlzIGVuZC5cbiAqL1xuZnVuY3Rpb24gc2FuaXRpc2VQdWJsaXNoT3V0cHV0KHJhdzogc3RyaW5nLCBzdGRlcnI6IFdyaXRhYmxlKSB7XG4gIGlmICghY3JlYXRlU3VwcG9ydHNDb2xvcihzdGRlcnIpICYmIGhhc0Fuc2kocmF3KSkge1xuICAgIHJldHVybiBzdHJpcFZUQ29udHJvbENoYXJhY3RlcnMocmF3KVxuICB9XG4gIHJldHVybiByYXdcbn1cbiJdfQ==
|
package/lib/publish/types.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHVibGlzaC90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBPcHRpb25zIHJlbGF0aW5nIHRvIHB1YmxpY2F0aW9uIHRvIGh0dHBzOi8vcmVwb3J0cy5jdWN1bWJlci5pb1xuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElQdWJsaXNoQ29uZmlnIHtcbiAgLyoqXG4gICAqIEJhc2UgVVJMIGZvciB0aGUgQ3VjdW1iZXIgUmVwb3J0cyBzZXJ2aWNlXG4gICAqL1xuICB1cmw6IHN0cmluZ1xuICAvKipcbiAgICogQWNjZXNzIHRva2VuIGZvciB0aGUgQ3VjdW1iZXIgUmVwb3J0cyBzZXJ2aWNlXG4gICAqL1xuICB0b2tlbjogc3RyaW5nXG59XG4iXX0=
|
|
@@ -32,12 +32,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
32
32
|
return result;
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
-
};
|
|
38
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
const is_stream_1 = __importDefault(require("is-stream"));
|
|
40
36
|
const messages = __importStar(require("@cucumber/messages"));
|
|
37
|
+
const is_stream_1 = require("is-stream");
|
|
41
38
|
const value_checker_1 = require("../../value_checker");
|
|
42
39
|
class AttachmentManager {
|
|
43
40
|
onAttachment;
|
|
@@ -58,7 +55,7 @@ class AttachmentManager {
|
|
|
58
55
|
}
|
|
59
56
|
this.createBufferAttachment(data, options.mediaType, options.fileName);
|
|
60
57
|
}
|
|
61
|
-
else if (is_stream_1.
|
|
58
|
+
else if ((0, is_stream_1.isReadableStream)(data)) {
|
|
62
59
|
if ((0, value_checker_1.doesNotHaveValue)(options.mediaType)) {
|
|
63
60
|
throw Error('Stream attachments must specify a media type');
|
|
64
61
|
}
|
|
@@ -130,4 +127,4 @@ function normaliseOptions(mediaTypeOrOptions) {
|
|
|
130
127
|
}
|
|
131
128
|
return mediaTypeOrOptions;
|
|
132
129
|
}
|
|
133
|
-
//# sourceMappingURL=index.js.map
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVudGltZS9hdHRhY2htZW50X21hbmFnZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw2REFBOEM7QUFDOUMseUNBQTRDO0FBQzVDLHVEQUFxRTtBQTJDckUsTUFBcUIsaUJBQWlCO0lBQ25CLFlBQVksQ0FBaUI7SUFFOUMsWUFBWSxZQUE2QjtRQUN2QyxJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQTtJQUNsQyxDQUFDO0lBRUQsR0FBRyxDQUFDLElBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLDJCQUEyQixDQUFDLENBQUE7SUFDdkQsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFHLEdBQWE7UUFDbkIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsZUFBZSxDQUFDLENBQUE7SUFDckQsQ0FBQztJQUVELE1BQU0sQ0FDSixJQUFnQyxFQUNoQyxrQkFBc0QsRUFDdEQsUUFBcUI7UUFFckIsTUFBTSxPQUFPLEdBQUcsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtRQUNwRCxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUMxQixJQUFJLElBQUEsZ0NBQWdCLEVBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ3hDLE1BQU0sS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUE7WUFDN0QsQ0FBQztZQUNELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDeEUsQ0FBQzthQUFNLElBQUksSUFBQSw0QkFBZ0IsRUFBQyxJQUFJLENBQUMsRUFB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RUFBRSxRQUFpQjtRQUM3RSxJQUFJLENBQUMsWUFBWSxDQUFDO1lBQ2hCLElBQUk7WUFDSixLQUFLO1lBQ0wsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1NBQ2xDLENBQUMsQ0FBQTtJQUNKLENBQUM7Q0FDRjtBQXJHRCxvQ0FxR0M7QUFFRCxTQUFTLGdCQUFnQixDQUN2QixrQkFBc0Q7SUFFdEQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDeEIsT0FBTyxFQUFFLENBQUE7SUFDWCxDQUFDO0lBQ0QsSUFBSSxPQUFPLGtCQUFrQixLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzNDLE9BQU87WUFDTCxTQUFTLEVBQUUsa0JBQWtCO1NBQzlCLENBQUE7SUFDSCxDQUFDO0lBQ0QsT0FBTyxrQkFBa0IsQ0FBQTtBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSZWFkYWJsZSB9IGZyb20gJ25vZGU6c3RyZWFtJ1xuaW1wb3J0ICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgaXNSZWFkYWJsZVN0cmVhbSB9IGZyb20gJ2lzLXN0cmVhbSdcbmltcG9ydCB7IGRvZXNIYXZlVmFsdWUsIGRvZXNOb3RIYXZlVmFsdWUgfSBmcm9tICcuLi8uLi92YWx1ZV9jaGVja2VyJ1xuXG5leHBvcnQgaW50ZXJmYWNlIElBdHRhY2htZW50TWVkaWEge1xuICBlbmNvZGluZzogbWVzc2FnZXMuQXR0YWNobWVudENvbnRlbnRFbmNvZGluZ1xuICBjb250ZW50VHlwZTogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUF0dGFjaG1lbnQge1xuICBkYXRhOiBzdHJpbmdcbiAgbWVkaWE6IElBdHRhY2htZW50TWVkaWFcbiAgZmlsZU5hbWU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgSUF0dGFjaEZ1bmN0aW9uID0gKGF0dGFjaG1lbnQ6IElBdHRhY2htZW50KSA9PiB2b2lkXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNyZWF0ZUF0dGFjaG1lbnRPcHRpb25zIHtcbiAgbWVkaWFUeXBlOiBzdHJpbmdcbiAgZmlsZU5hbWU/OiBzdHJpbmdcbn1cbmV4cG9ydCB0eXBlIElDcmVhdGVTdHJpbmdBdHRhY2htZW50ID0gKFxuICBkYXRhOiBzdHJpbmcsXG4gIG1lZGlhVHlwZU9yT3B0aW9ucz86IHN0cmluZyB8IElDcmVhdGVBdHRhY2htZW50T3B0aW9uc1xuKSA9PiB2b2lkXG5leHBvcnQgdHlwZSBJQ3JlYXRlQnVmZmVyQXR0YWNobWVudCA9IChcbiAgZGF0YTogQnVmZmVyLFxuICBtZWRpYVR5cGVPck9wdGlvbnM6IHN0cmluZyB8IElDcmVhdGVBdHRhY2htZW50T3B0aW9uc1xuKSA9PiB2b2lkXG5leHBvcnQgdHlwZSBJQ3JlYXRlU3RyZWFtQXR0YWNobWVudCA9IChcbiAgZGF0YTogUmVhZGFibGUsXG4gIG1lZGlhVHlwZU9yT3B0aW9uczogc3RyaW5nIHwgSUNyZWF0ZUF0dGFjaG1lbnRPcHRpb25zXG4pID0+IFByb21pc2U8dm9pZD5cbmV4cG9ydCB0eXBlIElDcmVhdGVTdHJlYW1BdHRhY2htZW50V2l0aENhbGxiYWNrID0gKFxuICBkYXRhOiBSZWFkYWJsZSxcbiAgbWVkaWFUeXBlT3JPcHRpb25zOiBzdHJpbmcgfCBJQ3JlYXRlQXR0YWNobWVudE9wdGlvbnMsXG4gIGNhbGxiYWNrOiAoKSA9PiB2b2lkXG4pID0+IHZvaWRcbmV4cG9ydCB0eXBlIElDcmVhdGVBdHRhY2htZW50ID0gSUNyZWF0ZVN0cmluZ0F0dGFjaG1lbnQgJlxuICBJQ3JlYXRlQnVmZmVyQXR0YWNobWVudCAmXG4gIElDcmVhdGVTdHJlYW1BdHRhY2htZW50ICZcbiAgSUNyZWF0ZVN0cmVhbUF0dGFjaG1lbnRXaXRoQ2FsbGJhY2tcbmV4cG9ydCB0eXBlIElDcmVhdGVMb2cgPSAodGV4dDogc3RyaW5nKSA9PiB2b2lkXG5leHBvcnQgdHlwZSBJQ3JlYXRlTGluayA9ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWRcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQXR0YWNobWVudE1hbmFnZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IG9uQXR0YWNobWVudDogSUF0dGFjaEZ1bmN0aW9uXG5cbiAgY29uc3RydWN0b3Iob25BdHRhY2htZW50OiBJQXR0YWNoRnVuY3Rpb24pIHtcbiAgICB0aGlzLm9uQXR0YWNobWVudCA9IG9uQXR0YWNobWVudFxuICB9XG5cbiAgbG9nKHRleHQ6IHN0cmluZyk6IHZvaWQgfCBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVhdGUodGV4dCwgJ3RleHQveC5jdWN1bWJlci5sb2crcGxhaW4nKVxuICB9XG5cbiAgbGluayguLi51cmw6IHN0cmluZ1tdKTogdm9pZCB8IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLmNyZWF0ZSh1cmwuam9pbignXFxuJyksICd0ZXh0L3VyaS1saXN0JylcbiAgfVxuXG4gIGNyZWF0ZShcbiAgICBkYXRhOiBCdWZmZXIgfCBSZWFkYWJsZSB8IHN0cmluZyxcbiAgICBtZWRpYVR5cGVPck9wdGlvbnM/OiBzdHJpbmcgfCBJQ3JlYXRlQXR0YWNobWVudE9wdGlvbnMsXG4gICAgY2FsbGJhY2s/OiAoKSA9PiB2b2lkXG4gICk6IHZvaWQgfCBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBvcHRpb25zID0gbm9ybWFsaXNlT3B0aW9ucyhtZWRpYVR5cGVPck9wdGlvbnMpXG4gICAgaWYgKEJ1ZmZlci5pc0J1ZmZlcihkYXRhKSkge1xuICAgICAgaWYgKGRvZXNOb3RIYXZlVmFsdWUob3B0aW9ucy5tZWRpYVR5cGUpKSB7XG4gICAgICAgIHRocm93IEVycm9yKCdCdWZmZXIgYXR0YWNobWVudHMgbXVzdCBzcGVjaWZ5IGEgbWVkaWEgdHlwZScpXG4gICAgICB9XG4gICAgICB0aGlzLmNyZWF0ZUJ1ZmZlckF0dGFjaG1lbnQoZGF0YSwgb3B0aW9ucy5tZWRpYVR5cGUsIG9wdGlvbnMuZmlsZU5hbWUpXG4gICAgfSBlbHNlIGlmIChpc1JlYWRhYmxlU3RyZWFtKGRhdGEpKSB7XG4gICAgICBpZiAoZG9lc05vdEhhdmVWYWx1ZShvcHRpb25zLm1lZGlhVHlwZSkpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoJ1N0cmVhbSBhdHRhY2htZW50cyBtdXN0IHNwZWNpZnkgYSBtZWRpYSB0eXBlJylcbiAgICAgIH1cbiAgICAgIHJldHVybiB0aGlzLmNyZWF0ZVN0cmVhbUF0dGFjaG1lbnQoZGF0YSwgb3B0aW9ucy5tZWRpYVR5cGUsIG9wdGlvbnMuZmlsZU5hbWUsIGNhbGxiYWNrKVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGRhdGEgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoZG9lc05vdEhhdmVWYWx1ZShvcHRpb25zLm1lZGlhVHlwZSkpIHtcbiAgICAgICAgb3B0aW9ucy5tZWRpYVR5cGUgPSAndGV4dC9wbGFpbidcbiAgICAgIH1cbiAgICAgIGlmIChvcHRpb25zLm1lZGlhVHlwZS5zdGFydHNXaXRoKCdiYXNlNjQ6JykpIHtcbiAgICAgICAgdGhpcy5jcmVhdGVTdHJpbmdBdHRhY2htZW50KFxuICAgICAgICAgIGRhdGEsXG4gICAgICAgICAge1xuICAgICAgICAgICAgZW5jb2Rpbmc6IG1lc3NhZ2VzLkF0dGFjaG1lbnRDb250ZW50RW5jb2RpbmcuQkFTRTY0LFxuICAgICAgICAgICAgY29udGVudFR5cGU6IG9wdGlvbnMubWVkaWFUeXBlLnJlcGxhY2UoJ2Jhc2U2NDonLCAnJyksXG4gICAgICAgICAgfSxcbiAgICAgICAgICBvcHRpb25zLmZpbGVOYW1lXG4gICAgICAgIClcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuY3JlYXRlU3RyaW5nQXR0YWNobWVudChcbiAgICAgICAgICBkYXRhLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGVuY29kaW5nOiBtZXNzYWdlcy5BdHRhY2htZW50Q29udGVudEVuY29kaW5nLklERU5USVRZLFxuICAgICAgICAgICAgY29udGVudFR5cGU6IG9wdGlvbnMubWVkaWFUeXBlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgb3B0aW9ucy5maWxlTmFtZVxuICAgICAgICApXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IEVycm9yKCdJbnZhbGlkIGF0dGFjaG1lbnQgZGF0YTogbXVzdCBiZSBhIGJ1ZmZlciwgcmVhZGFibGUgc3RyZWFtLCBvciBzdHJpbmcnKVxuICAgIH1cbiAgfVxuXG4gIGNyZWF0ZUJ1ZmZlckF0dGFjaG1lbnQoZGF0YTogQnVmZmVyLCBtZWRpYVR5cGU6IHN0cmluZywgZmlsZU5hbWU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZVN0cmluZ0F0dGFjaG1lbnQoXG4gICAgICBkYXRhLnRvU3RyaW5nKCdiYXNlNjQnKSxcbiAgICAgIHtcbiAgICAgICAgZW5jb2Rpbmc6IG1lc3NhZ2VzLkF0dGFjaG1lbnRDb250ZW50RW5jb2RpbmcuQkFTRTY0LFxuICAgICAgICBjb250ZW50VHlwZTogbWVkaWFUeXBlLFxuICAgICAgfSxcbiAgICAgIGZpbGVOYW1lXG4gICAgKVxuICB9XG5cbiAgY3JlYXRlU3RyZWFtQXR0YWNobWVudChcbiAgICBkYXRhOiBSZWFkYWJsZSxcbiAgICBtZWRpYVR5cGU6IHN0cmluZyxcbiAgICBmaWxlTmFtZT86IHN0cmluZyxcbiAgICBjYWxsYmFjaz86ICgpID0+IHZvaWRcbiAgKTogdm9pZCB8IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBidWZmZXJzOiBVaW50OEFycmF5W10gPSBbXVxuICAgICAgZGF0YS5vbignZGF0YScsIChjaHVuaykgPT4ge1xuICAgICAgICBidWZmZXJzLnB1c2goY2h1bmspXG4gICAgICB9KVxuICAgICAgZGF0YS5vbignZW5kJywgKCkgPT4ge1xuICAgICAgICB0aGlzLmNyZWF0ZUJ1ZmZlckF0dGFjaG1lbnQoQnVmZmVyLmNvbmNhdChidWZmZXJzKSwgbWVkaWFUeXBlLCBmaWxlTmFtZSlcbiAgICAgICAgcmVzb2x2ZSgpXG4gICAgICB9KVxuICAgICAgZGF0YS5vbignZXJyb3InLCByZWplY3QpXG4gICAgfSlcbiAgICBpZiAoZG9lc0hhdmVWYWx1ZShjYWxsYmFjaykpIHtcbiAgICAgIHByb21pc2UudGhlbihjYWxsYmFjaywgY2FsbGJhY2spXG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBwcm9taXNlXG4gICAgfVxuICB9XG5cbiAgY3JlYXRlU3RyaW5nQXR0YWNobWVudChkYXRhOiBzdHJpbmcsIG1lZGlhOiBJQXR0YWNobWVudE1lZGlhLCBmaWxlTmFtZT86IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMub25BdHRhY2htZW50KHtcbiAgICAgIGRhdGEsXG4gICAgICBtZWRpYSxcbiAgICAgIC4uLihmaWxlTmFtZSA/IHsgZmlsZU5hbWUgfSA6IHt9KSxcbiAgICB9KVxuICB9XG59XG5cbmZ1bmN0aW9uIG5vcm1hbGlzZU9wdGlvbnMoXG4gIG1lZGlhVHlwZU9yT3B0aW9ucz86IHN0cmluZyB8IElDcmVhdGVBdHRhY2htZW50T3B0aW9uc1xuKTogUGFydGlhbDxJQ3JlYXRlQXR0YWNobWVudE9wdGlvbnM+IHtcbiAgaWYgKCFtZWRpYVR5cGVPck9wdGlvbnMpIHtcbiAgICByZXR1cm4ge31cbiAgfVxuICBpZiAodHlwZW9mIG1lZGlhVHlwZU9yT3B0aW9ucyA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4ge1xuICAgICAgbWVkaWFUeXBlOiBtZWRpYVR5cGVPck9wdGlvbnMsXG4gICAgfVxuICB9XG4gIHJldHVybiBtZWRpYVR5cGVPck9wdGlvbnNcbn1cbiJdfQ==
|
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
import { EventEmitter } from 'node:events';
|
|
2
|
-
import { IdGenerator } from '@cucumber/messages';
|
|
3
|
-
import { SourcedPickle } from '../assemble';
|
|
4
|
-
import { SupportCodeLibrary } from '../support_code_library_builder/types';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
1
|
+
import type { EventEmitter } from 'node:events';
|
|
2
|
+
import type { IdGenerator } from '@cucumber/messages';
|
|
3
|
+
import { type SourcedPickle } from '../assemble';
|
|
4
|
+
import type { SupportCodeLibrary } from '../support_code_library_builder/types';
|
|
5
|
+
import type { Runtime } from './index';
|
|
6
|
+
import type { RuntimeAdapter } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Handles the high-level coordination of the test run on the main thread
|
|
9
|
+
* @returns whether all hooks and test cases were successful
|
|
10
|
+
* @remarks
|
|
11
|
+
* For each phase of the test run, delegates to a {@link RuntimeAdapter} to handle
|
|
12
|
+
* the work itself. Unaware of how the adapter distributes and executes work.
|
|
13
|
+
*/
|
|
7
14
|
export declare class Coordinator implements Runtime {
|
|
8
15
|
private testRunStartedId;
|
|
9
16
|
private eventBroadcaster;
|