@cucumber/cucumber 12.9.0 → 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.
Files changed (396) hide show
  1. package/README.md +8 -3
  2. package/bin/cucumber.js +2 -1
  3. package/lib/api/convert_configuration.d.ts +3 -4
  4. package/lib/api/convert_configuration.js +9 -11
  5. package/lib/api/emit_support_code_messages.d.ts +3 -3
  6. package/lib/api/emit_support_code_messages.js +13 -28
  7. package/lib/api/formatters.d.ts +7 -7
  8. package/lib/api/formatters.js +5 -2
  9. package/lib/api/gherkin.d.ts +3 -3
  10. package/lib/api/gherkin.js +2 -4
  11. package/lib/api/index.d.ts +2 -2
  12. package/lib/api/index.js +1 -1
  13. package/lib/api/load_configuration.d.ts +2 -2
  14. package/lib/api/load_configuration.js +4 -5
  15. package/lib/api/load_sources.d.ts +2 -2
  16. package/lib/api/load_sources.js +2 -2
  17. package/lib/api/load_support.d.ts +2 -2
  18. package/lib/api/load_support.js +3 -3
  19. package/lib/api/plugins.d.ts +2 -2
  20. package/lib/api/plugins.js +2 -2
  21. package/lib/api/run_cucumber.d.ts +3 -3
  22. package/lib/api/run_cucumber.js +17 -1
  23. package/lib/api/support.d.ts +3 -3
  24. package/lib/api/support.js +5 -5
  25. package/lib/api/test_helpers.d.ts +1 -1
  26. package/lib/api/test_helpers.js +8 -10
  27. package/lib/api/types.d.ts +9 -5
  28. package/lib/api/types.js +1 -1
  29. package/lib/assemble/assemble_test_cases.d.ts +4 -4
  30. package/lib/assemble/assemble_test_cases.js +2 -6
  31. package/lib/assemble/index.js +1 -1
  32. package/lib/assemble/types.d.ts +1 -1
  33. package/lib/assemble/types.js +1 -1
  34. package/lib/cli/i18n.js +5 -3
  35. package/lib/cli/index.d.ts +1 -1
  36. package/lib/cli/index.js +2 -2
  37. package/lib/cli/install_validator.js +4 -3
  38. package/lib/cli/run.js +7 -6
  39. package/lib/cli/validate_node_engine_version.js +2 -4
  40. package/lib/configuration/argv_parser.d.ts +1 -1
  41. package/lib/configuration/argv_parser.js +7 -7
  42. package/lib/configuration/check_schema.d.ts +1 -1
  43. package/lib/configuration/check_schema.js +17 -6
  44. package/lib/configuration/default_configuration.d.ts +1 -1
  45. package/lib/configuration/default_configuration.js +2 -1
  46. package/lib/configuration/from_file.d.ts +2 -2
  47. package/lib/configuration/from_file.js +6 -6
  48. package/lib/configuration/helpers.js +1 -1
  49. package/lib/configuration/index.js +1 -1
  50. package/lib/configuration/locate_file.js +3 -3
  51. package/lib/configuration/merge_configurations.d.ts +1 -1
  52. package/lib/configuration/merge_configurations.js +2 -10
  53. package/lib/configuration/parse_configuration.d.ts +2 -2
  54. package/lib/configuration/parse_configuration.js +3 -11
  55. package/lib/configuration/split_format_descriptor.d.ts +1 -2
  56. package/lib/configuration/split_format_descriptor.js +11 -71
  57. package/lib/configuration/types.d.ts +26 -3
  58. package/lib/configuration/types.js +1 -1
  59. package/lib/configuration/validate_configuration.d.ts +2 -2
  60. package/lib/configuration/validate_configuration.js +5 -3
  61. package/lib/environment/console_logger.d.ts +2 -2
  62. package/lib/environment/console_logger.js +1 -1
  63. package/lib/environment/index.js +1 -1
  64. package/lib/environment/make_environment.d.ts +1 -1
  65. package/lib/environment/make_environment.js +1 -1
  66. package/lib/environment/types.d.ts +1 -1
  67. package/lib/environment/types.js +1 -1
  68. package/lib/filter/filter_plugin.d.ts +1 -1
  69. package/lib/filter/filter_plugin.js +1 -1
  70. package/lib/filter/index.d.ts +1 -1
  71. package/lib/filter/index.js +2 -2
  72. package/lib/filter/order_pickles.d.ts +2 -2
  73. package/lib/filter/order_pickles.js +1 -1
  74. package/lib/filter/types.d.ts +1 -1
  75. package/lib/filter/types.js +1 -1
  76. package/lib/filter_stack_trace.d.ts +1 -1
  77. package/lib/filter_stack_trace.js +1 -1
  78. package/lib/formatter/builder.d.ts +7 -6
  79. package/lib/formatter/builder.js +6 -7
  80. package/lib/formatter/builtin/html.js +2 -2
  81. package/lib/formatter/builtin/index.d.ts +4 -4
  82. package/lib/formatter/builtin/index.js +14 -13
  83. package/lib/formatter/builtin/message.js +2 -2
  84. package/lib/formatter/builtin/pretty.d.ts +6 -0
  85. package/lib/formatter/builtin/pretty.js +19 -0
  86. package/lib/formatter/builtin/progress-bar.d.ts +6 -0
  87. package/lib/formatter/builtin/progress-bar.js +22 -0
  88. package/lib/formatter/builtin/progress.d.ts +6 -0
  89. package/lib/formatter/builtin/progress.js +18 -0
  90. package/lib/formatter/builtin/resolve_terminal_options.d.ts +3 -0
  91. package/lib/formatter/builtin/resolve_terminal_options.js +15 -0
  92. package/lib/formatter/builtin/summary.d.ts +6 -0
  93. package/lib/formatter/builtin/summary.js +15 -0
  94. package/lib/formatter/create_stream.d.ts +2 -2
  95. package/lib/formatter/create_stream.js +3 -5
  96. package/lib/formatter/find_class_or_plugin.js +1 -1
  97. package/lib/formatter/get_color_fns.d.ts +3 -3
  98. package/lib/formatter/get_color_fns.js +23 -52
  99. package/lib/formatter/helpers/duration_helpers.d.ts +1 -1
  100. package/lib/formatter/helpers/duration_helpers.js +1 -1
  101. package/lib/formatter/helpers/event_data_collector.d.ts +2 -2
  102. package/lib/formatter/helpers/event_data_collector.js +4 -6
  103. package/lib/formatter/helpers/formatters.d.ts +1 -1
  104. package/lib/formatter/helpers/formatters.js +1 -3
  105. package/lib/formatter/helpers/gherkin_document_parser.d.ts +1 -1
  106. package/lib/formatter/helpers/gherkin_document_parser.js +20 -18
  107. package/lib/formatter/helpers/index.d.ts +3 -3
  108. package/lib/formatter/helpers/index.js +8 -8
  109. package/lib/formatter/helpers/issue_helpers.d.ts +5 -5
  110. package/lib/formatter/helpers/issue_helpers.js +2 -2
  111. package/lib/formatter/helpers/keyword_type.js +2 -2
  112. package/lib/formatter/helpers/location_helpers.d.ts +1 -1
  113. package/lib/formatter/helpers/location_helpers.js +1 -1
  114. package/lib/formatter/helpers/pickle_parser.d.ts +2 -2
  115. package/lib/formatter/helpers/pickle_parser.js +8 -9
  116. package/lib/formatter/helpers/step_argument_formatter.d.ts +1 -1
  117. package/lib/formatter/helpers/step_argument_formatter.js +1 -1
  118. package/lib/formatter/helpers/summary_helpers.d.ts +2 -2
  119. package/lib/formatter/helpers/summary_helpers.js +8 -4
  120. package/lib/formatter/helpers/test_case_attempt_formatter.d.ts +4 -4
  121. package/lib/formatter/helpers/test_case_attempt_formatter.js +5 -5
  122. package/lib/formatter/helpers/test_case_attempt_parser.d.ts +4 -4
  123. package/lib/formatter/helpers/test_case_attempt_parser.js +4 -9
  124. package/lib/formatter/helpers/usage_helpers/index.d.ts +3 -3
  125. package/lib/formatter/helpers/usage_helpers/index.js +5 -6
  126. package/lib/formatter/import_code.js +2 -2
  127. package/lib/formatter/index.d.ts +25 -13
  128. package/lib/formatter/index.js +2 -2
  129. package/lib/formatter/json_formatter.d.ts +2 -2
  130. package/lib/formatter/json_formatter.js +9 -14
  131. package/lib/formatter/progress_formatter.d.ts +4 -1
  132. package/lib/formatter/progress_formatter.js +4 -1
  133. package/lib/formatter/rerun_formatter.d.ts +1 -1
  134. package/lib/formatter/rerun_formatter.js +2 -2
  135. package/lib/formatter/resolve_implementation.d.ts +1 -1
  136. package/lib/formatter/resolve_implementation.js +2 -2
  137. package/lib/formatter/snippets_formatter.d.ts +1 -1
  138. package/lib/formatter/snippets_formatter.js +2 -2
  139. package/lib/formatter/step_definition_snippet_builder/index.d.ts +4 -4
  140. package/lib/formatter/step_definition_snippet_builder/index.js +3 -3
  141. package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.d.ts +1 -1
  142. package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.js +3 -5
  143. package/lib/formatter/step_definition_snippet_builder/snippet_syntax.d.ts +1 -1
  144. package/lib/formatter/step_definition_snippet_builder/snippet_syntax.js +1 -1
  145. package/lib/formatter/summary_formatter.d.ts +6 -3
  146. package/lib/formatter/summary_formatter.js +6 -3
  147. package/lib/formatter/usage_formatter.d.ts +1 -1
  148. package/lib/formatter/usage_formatter.js +4 -4
  149. package/lib/formatter/usage_json_formatter.d.ts +1 -1
  150. package/lib/formatter/usage_json_formatter.js +3 -3
  151. package/lib/index.d.ts +6 -11
  152. package/lib/index.js +13 -20
  153. package/lib/models/data_table.d.ts +1 -1
  154. package/lib/models/data_table.js +9 -5
  155. package/lib/models/definition.d.ts +4 -4
  156. package/lib/models/definition.js +1 -1
  157. package/lib/models/gherkin_step_keyword.js +1 -1
  158. package/lib/models/step_definition.d.ts +3 -3
  159. package/lib/models/step_definition.js +1 -1
  160. package/lib/models/test_case_hook_definition.d.ts +2 -2
  161. package/lib/models/test_case_hook_definition.js +1 -1
  162. package/lib/models/test_run_hook_definition.d.ts +1 -1
  163. package/lib/models/test_run_hook_definition.js +1 -1
  164. package/lib/models/test_step_hook_definition.d.ts +2 -2
  165. package/lib/models/test_step_hook_definition.js +1 -1
  166. package/lib/paths/index.js +1 -1
  167. package/lib/paths/paths.d.ts +3 -3
  168. package/lib/paths/paths.js +42 -18
  169. package/lib/paths/types.js +1 -1
  170. package/lib/pickle_filter.d.ts +1 -1
  171. package/lib/pickle_filter.js +3 -3
  172. package/lib/plugin/index.d.ts +1 -1
  173. package/lib/plugin/index.js +2 -2
  174. package/lib/plugin/plugin_manager.d.ts +2 -2
  175. package/lib/plugin/plugin_manager.js +1 -1
  176. package/lib/plugin/types.d.ts +59 -9
  177. package/lib/plugin/types.js +1 -1
  178. package/lib/publish/index.js +1 -1
  179. package/lib/publish/publish_plugin.d.ts +1 -1
  180. package/lib/publish/publish_plugin.js +14 -15
  181. package/lib/publish/types.js +1 -1
  182. package/lib/runtime/attachment_manager/index.d.ts +1 -1
  183. package/lib/runtime/attachment_manager/index.js +3 -6
  184. package/lib/runtime/coordinator.d.ts +13 -6
  185. package/lib/runtime/coordinator.js +26 -18
  186. package/lib/runtime/format_error.d.ts +1 -1
  187. package/lib/runtime/format_error.js +43 -15
  188. package/lib/runtime/helpers.d.ts +2 -2
  189. package/lib/runtime/helpers.js +2 -2
  190. package/lib/runtime/index.js +1 -1
  191. package/lib/runtime/make_runtime.d.ts +10 -9
  192. package/lib/runtime/make_runtime.js +4 -5
  193. package/lib/runtime/make_suggestion.d.ts +2 -2
  194. package/lib/runtime/make_suggestion.js +1 -1
  195. package/lib/runtime/parallel/adapter.d.ts +27 -39
  196. package/lib/runtime/parallel/adapter.js +124 -122
  197. package/lib/runtime/parallel/test_cases_phase.d.ts +19 -0
  198. package/lib/runtime/parallel/test_cases_phase.js +63 -0
  199. package/lib/runtime/parallel/test_run_hooks_phase.d.ts +11 -0
  200. package/lib/runtime/parallel/test_run_hooks_phase.js +33 -0
  201. package/lib/runtime/parallel/types.d.ts +38 -22
  202. package/lib/runtime/parallel/types.js +1 -1
  203. package/lib/runtime/parallel/worker.mjs +65 -0
  204. package/lib/runtime/scope/index.js +1 -1
  205. package/lib/runtime/scope/make_proxy.js +1 -1
  206. package/lib/runtime/scope/test_case_scope.d.ts +1 -1
  207. package/lib/runtime/scope/test_case_scope.js +1 -1
  208. package/lib/runtime/scope/test_run_scope.d.ts +1 -1
  209. package/lib/runtime/scope/test_run_scope.js +1 -1
  210. package/lib/runtime/serial/adapter.d.ts +15 -9
  211. package/lib/runtime/serial/adapter.js +21 -9
  212. package/lib/runtime/step_runner.d.ts +2 -2
  213. package/lib/runtime/step_runner.js +2 -2
  214. package/lib/runtime/stopwatch.d.ts +1 -1
  215. package/lib/runtime/stopwatch.js +1 -1
  216. package/lib/runtime/test_case_runner.d.ts +10 -9
  217. package/lib/runtime/test_case_runner.js +20 -12
  218. package/lib/runtime/types.d.ts +7 -3
  219. package/lib/runtime/types.js +1 -1
  220. package/lib/runtime/worker.d.ts +14 -13
  221. package/lib/runtime/worker.js +26 -44
  222. package/lib/sharding/index.js +1 -1
  223. package/lib/sharding/sharding_plugin.d.ts +1 -1
  224. package/lib/sharding/sharding_plugin.js +1 -1
  225. package/lib/step_arguments.d.ts +1 -1
  226. package/lib/step_arguments.js +1 -1
  227. package/lib/support_code_library_builder/build_parameter_type.d.ts +1 -1
  228. package/lib/support_code_library_builder/build_parameter_type.js +5 -3
  229. package/lib/support_code_library_builder/context.js +1 -1
  230. package/lib/support_code_library_builder/get_definition_line_and_uri.d.ts +1 -1
  231. package/lib/support_code_library_builder/get_definition_line_and_uri.js +1 -1
  232. package/lib/support_code_library_builder/index.d.ts +7 -7
  233. package/lib/support_code_library_builder/index.js +9 -9
  234. package/lib/support_code_library_builder/parallel_can_assign_helpers.d.ts +1 -1
  235. package/lib/support_code_library_builder/parallel_can_assign_helpers.js +3 -4
  236. package/lib/support_code_library_builder/sourced_parameter_type_registry.d.ts +2 -2
  237. package/lib/support_code_library_builder/sourced_parameter_type_registry.js +1 -1
  238. package/lib/support_code_library_builder/types.d.ts +8 -8
  239. package/lib/support_code_library_builder/types.js +1 -1
  240. package/lib/support_code_library_builder/validate_arguments.d.ts +1 -1
  241. package/lib/support_code_library_builder/validate_arguments.js +1 -1
  242. package/lib/support_code_library_builder/world.d.ts +2 -2
  243. package/lib/support_code_library_builder/world.js +2 -2
  244. package/lib/time.js +2 -2
  245. package/lib/try_require.js +3 -2
  246. package/lib/types/index.js +1 -1
  247. package/lib/uncaught_exception_manager.js +1 -1
  248. package/lib/user_code_runner.d.ts +1 -1
  249. package/lib/user_code_runner.js +3 -3
  250. package/lib/value_checker.js +1 -1
  251. package/lib/version.d.ts +1 -1
  252. package/lib/version.js +2 -2
  253. package/lib/wrapper.mjs +1 -5
  254. package/package.json +40 -63
  255. package/lib/api/convert_configuration.js.map +0 -1
  256. package/lib/api/emit_support_code_messages.js.map +0 -1
  257. package/lib/api/formatters.js.map +0 -1
  258. package/lib/api/gherkin.js.map +0 -1
  259. package/lib/api/index.js.map +0 -1
  260. package/lib/api/load_configuration.js.map +0 -1
  261. package/lib/api/load_sources.js.map +0 -1
  262. package/lib/api/load_support.js.map +0 -1
  263. package/lib/api/plugins.js.map +0 -1
  264. package/lib/api/run_cucumber.js.map +0 -1
  265. package/lib/api/support.js.map +0 -1
  266. package/lib/api/test_helpers.js.map +0 -1
  267. package/lib/api/types.js.map +0 -1
  268. package/lib/assemble/assemble_test_cases.js.map +0 -1
  269. package/lib/assemble/index.js.map +0 -1
  270. package/lib/assemble/types.js.map +0 -1
  271. package/lib/cli/i18n.js.map +0 -1
  272. package/lib/cli/index.js.map +0 -1
  273. package/lib/cli/install_validator.js.map +0 -1
  274. package/lib/cli/run.js.map +0 -1
  275. package/lib/cli/validate_node_engine_version.js.map +0 -1
  276. package/lib/configuration/argv_parser.js.map +0 -1
  277. package/lib/configuration/check_schema.js.map +0 -1
  278. package/lib/configuration/default_configuration.js.map +0 -1
  279. package/lib/configuration/from_file.js.map +0 -1
  280. package/lib/configuration/helpers.js.map +0 -1
  281. package/lib/configuration/index.js.map +0 -1
  282. package/lib/configuration/locate_file.js.map +0 -1
  283. package/lib/configuration/merge_configurations.js.map +0 -1
  284. package/lib/configuration/parse_configuration.js.map +0 -1
  285. package/lib/configuration/split_format_descriptor.js.map +0 -1
  286. package/lib/configuration/types.js.map +0 -1
  287. package/lib/configuration/validate_configuration.js.map +0 -1
  288. package/lib/environment/console_logger.js.map +0 -1
  289. package/lib/environment/index.js.map +0 -1
  290. package/lib/environment/make_environment.js.map +0 -1
  291. package/lib/environment/types.js.map +0 -1
  292. package/lib/filter/filter_plugin.js.map +0 -1
  293. package/lib/filter/index.js.map +0 -1
  294. package/lib/filter/order_pickles.js.map +0 -1
  295. package/lib/filter/types.js.map +0 -1
  296. package/lib/filter_stack_trace.js.map +0 -1
  297. package/lib/formatter/builder.js.map +0 -1
  298. package/lib/formatter/builtin/html.js.map +0 -1
  299. package/lib/formatter/builtin/index.js.map +0 -1
  300. package/lib/formatter/builtin/message.js.map +0 -1
  301. package/lib/formatter/create_stream.js.map +0 -1
  302. package/lib/formatter/find_class_or_plugin.js.map +0 -1
  303. package/lib/formatter/get_color_fns.js.map +0 -1
  304. package/lib/formatter/helpers/duration_helpers.js.map +0 -1
  305. package/lib/formatter/helpers/event_data_collector.js.map +0 -1
  306. package/lib/formatter/helpers/formatters.js.map +0 -1
  307. package/lib/formatter/helpers/gherkin_document_parser.js.map +0 -1
  308. package/lib/formatter/helpers/index.js.map +0 -1
  309. package/lib/formatter/helpers/issue_helpers.js.map +0 -1
  310. package/lib/formatter/helpers/keyword_type.js.map +0 -1
  311. package/lib/formatter/helpers/location_helpers.js.map +0 -1
  312. package/lib/formatter/helpers/pickle_parser.js.map +0 -1
  313. package/lib/formatter/helpers/step_argument_formatter.js.map +0 -1
  314. package/lib/formatter/helpers/summary_helpers.js.map +0 -1
  315. package/lib/formatter/helpers/test_case_attempt_formatter.js.map +0 -1
  316. package/lib/formatter/helpers/test_case_attempt_parser.js.map +0 -1
  317. package/lib/formatter/helpers/usage_helpers/index.js.map +0 -1
  318. package/lib/formatter/import_code.js.map +0 -1
  319. package/lib/formatter/index.js.map +0 -1
  320. package/lib/formatter/json_formatter.js.map +0 -1
  321. package/lib/formatter/progress_bar_formatter.d.ts +0 -18
  322. package/lib/formatter/progress_bar_formatter.js +0 -103
  323. package/lib/formatter/progress_bar_formatter.js.map +0 -1
  324. package/lib/formatter/progress_formatter.js.map +0 -1
  325. package/lib/formatter/rerun_formatter.js.map +0 -1
  326. package/lib/formatter/resolve_implementation.js.map +0 -1
  327. package/lib/formatter/snippets_formatter.js.map +0 -1
  328. package/lib/formatter/step_definition_snippet_builder/index.js.map +0 -1
  329. package/lib/formatter/step_definition_snippet_builder/javascript_snippet_syntax.js.map +0 -1
  330. package/lib/formatter/step_definition_snippet_builder/snippet_syntax.js.map +0 -1
  331. package/lib/formatter/summary_formatter.js.map +0 -1
  332. package/lib/formatter/usage_formatter.js.map +0 -1
  333. package/lib/formatter/usage_json_formatter.js.map +0 -1
  334. package/lib/index.js.map +0 -1
  335. package/lib/models/data_table.js.map +0 -1
  336. package/lib/models/definition.js.map +0 -1
  337. package/lib/models/gherkin_step_keyword.js.map +0 -1
  338. package/lib/models/step_definition.js.map +0 -1
  339. package/lib/models/test_case_hook_definition.js.map +0 -1
  340. package/lib/models/test_run_hook_definition.js.map +0 -1
  341. package/lib/models/test_step_hook_definition.js.map +0 -1
  342. package/lib/paths/index.js.map +0 -1
  343. package/lib/paths/paths.js.map +0 -1
  344. package/lib/paths/types.js.map +0 -1
  345. package/lib/pickle_filter.js.map +0 -1
  346. package/lib/plugin/index.js.map +0 -1
  347. package/lib/plugin/plugin_manager.js.map +0 -1
  348. package/lib/plugin/types.js.map +0 -1
  349. package/lib/publish/index.js.map +0 -1
  350. package/lib/publish/publish_plugin.js.map +0 -1
  351. package/lib/publish/types.js.map +0 -1
  352. package/lib/runtime/attachment_manager/index.js.map +0 -1
  353. package/lib/runtime/coordinator.js.map +0 -1
  354. package/lib/runtime/format_error.js.map +0 -1
  355. package/lib/runtime/helpers.js.map +0 -1
  356. package/lib/runtime/index.js.map +0 -1
  357. package/lib/runtime/make_runtime.js.map +0 -1
  358. package/lib/runtime/make_suggestion.js.map +0 -1
  359. package/lib/runtime/parallel/adapter.js.map +0 -1
  360. package/lib/runtime/parallel/run_worker.js +0 -25
  361. package/lib/runtime/parallel/run_worker.js.map +0 -1
  362. package/lib/runtime/parallel/types.js.map +0 -1
  363. package/lib/runtime/parallel/worker.d.ts +0 -25
  364. package/lib/runtime/parallel/worker.js +0 -83
  365. package/lib/runtime/parallel/worker.js.map +0 -1
  366. package/lib/runtime/scope/index.js.map +0 -1
  367. package/lib/runtime/scope/make_proxy.js.map +0 -1
  368. package/lib/runtime/scope/test_case_scope.js.map +0 -1
  369. package/lib/runtime/scope/test_run_scope.js.map +0 -1
  370. package/lib/runtime/serial/adapter.js.map +0 -1
  371. package/lib/runtime/step_runner.js.map +0 -1
  372. package/lib/runtime/stopwatch.js.map +0 -1
  373. package/lib/runtime/test_case_runner.js.map +0 -1
  374. package/lib/runtime/types.js.map +0 -1
  375. package/lib/runtime/worker.js.map +0 -1
  376. package/lib/sharding/index.js.map +0 -1
  377. package/lib/sharding/sharding_plugin.js.map +0 -1
  378. package/lib/step_arguments.js.map +0 -1
  379. package/lib/support_code_library_builder/build_parameter_type.js.map +0 -1
  380. package/lib/support_code_library_builder/context.js.map +0 -1
  381. package/lib/support_code_library_builder/get_definition_line_and_uri.js.map +0 -1
  382. package/lib/support_code_library_builder/index.js.map +0 -1
  383. package/lib/support_code_library_builder/parallel_can_assign_helpers.js.map +0 -1
  384. package/lib/support_code_library_builder/sourced_parameter_type_registry.js.map +0 -1
  385. package/lib/support_code_library_builder/types.js.map +0 -1
  386. package/lib/support_code_library_builder/validate_arguments.js.map +0 -1
  387. package/lib/support_code_library_builder/world.js.map +0 -1
  388. package/lib/time.js.map +0 -1
  389. package/lib/try_require.js.map +0 -1
  390. package/lib/tsconfig.node.tsbuildinfo +0 -1
  391. package/lib/types/index.js.map +0 -1
  392. package/lib/uncaught_exception_manager.js.map +0 -1
  393. package/lib/user_code_runner.js.map +0 -1
  394. package/lib/value_checker.js.map +0 -1
  395. package/lib/version.js.map +0 -1
  396. /package/lib/runtime/parallel/{run_worker.d.ts → worker.d.mts} +0 -0
package/lib/index.d.ts CHANGED
@@ -7,14 +7,10 @@
7
7
  * These docs cover the functions and helpers for user code registration and test setup. The entry point is `@cucumber/cucumber`.
8
8
  */
9
9
  import * as messages from '@cucumber/messages';
10
- import { default as _Cli } from './cli';
11
10
  import * as formatterHelpers from './formatter/helpers';
12
11
  import * as parallelCanAssignHelpers from './support_code_library_builder/parallel_can_assign_helpers';
13
12
  export declare const version: string;
14
13
  export { IConfiguration, IProfiles } from './configuration';
15
- export { default as supportCodeLibraryBuilder } from './support_code_library_builder';
16
- export { default as DataTable } from './models/data_table';
17
- export { default as TestCaseHookDefinition } from './models/test_case_hook_definition';
18
14
  export { default as Formatter, IFormatterOptions } from './formatter';
19
15
  export { default as FormatterBuilder } from './formatter/builder';
20
16
  export { default as JsonFormatter } from './formatter/json_formatter';
@@ -24,6 +20,9 @@ export { default as SnippetsFormatter } from './formatter/snippets_formatter';
24
20
  export { default as SummaryFormatter } from './formatter/summary_formatter';
25
21
  export { default as UsageFormatter } from './formatter/usage_formatter';
26
22
  export { default as UsageJsonFormatter } from './formatter/usage_json_formatter';
23
+ export { default as DataTable } from './models/data_table';
24
+ export { default as TestCaseHookDefinition } from './models/test_case_hook_definition';
25
+ export { default as supportCodeLibraryBuilder } from './support_code_library_builder';
27
26
  export { formatterHelpers };
28
27
  export declare const After: (<WorldType = import("./support_code_library_builder/world").IWorld<any>>(code: import("./support_code_library_builder/types").TestCaseHookFunction<WorldType>) => void) & (<WorldType = import("./support_code_library_builder/world").IWorld<any>>(tags: string, code: import("./support_code_library_builder/types").TestCaseHookFunction<WorldType>) => void) & (<WorldType = import("./support_code_library_builder/world").IWorld<any>>(options: import("./support_code_library_builder/types").IDefineTestCaseHookOptions, code: import("./support_code_library_builder/types").TestCaseHookFunction<WorldType>) => void);
29
28
  export declare const AfterAll: ((code: import("./support_code_library_builder/types").TestRunHookFunction) => void) & ((options: import("./support_code_library_builder/types").IDefineTestRunHookOptions, code: import("./support_code_library_builder/types").TestRunHookFunction) => void);
@@ -40,14 +39,10 @@ export declare const setWorldConstructor: (fn: any) => void;
40
39
  export declare const setParallelCanAssign: (fn: import("./support_code_library_builder/types").ParallelAssignmentValidator) => void;
41
40
  export declare const Then: import("./support_code_library_builder/types").IDefineStep;
42
41
  export declare const When: import("./support_code_library_builder/types").IDefineStep;
43
- export { default as World, IWorld, IWorldOptions, } from './support_code_library_builder/world';
42
+ export { contextProxy as context, worldProxy as world } from './runtime/scope';
44
43
  export { IContext } from './support_code_library_builder/context';
45
- export { worldProxy as world, contextProxy as context } from './runtime/scope';
46
- export { parallelCanAssignHelpers };
47
44
  export { ITestCaseHookParameter, ITestStepHookParameter, } from './support_code_library_builder/types';
45
+ export { default as World, IWorld, IWorldOptions, } from './support_code_library_builder/world';
46
+ export { parallelCanAssignHelpers };
48
47
  export declare const Status: typeof messages.TestStepResultStatus;
49
48
  export { wrapPromiseWithTimeout } from './time';
50
- /**
51
- * @deprecated use `runCucumber` instead; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
52
- */
53
- export declare const Cli: typeof _Cli;
package/lib/index.js CHANGED
@@ -44,25 +44,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
44
44
  return (mod && mod.__esModule) ? mod : { "default": mod };
45
45
  };
46
46
  Object.defineProperty(exports, "__esModule", { value: true });
47
- exports.Cli = exports.wrapPromiseWithTimeout = exports.Status = exports.parallelCanAssignHelpers = exports.context = exports.world = exports.World = exports.When = exports.Then = exports.setParallelCanAssign = exports.setWorldConstructor = exports.setDefinitionFunctionWrapper = exports.setDefaultTimeout = exports.Given = exports.defineParameterType = exports.defineStep = exports.BeforeStep = exports.BeforeAll = exports.Before = exports.AfterStep = exports.AfterAll = exports.After = exports.formatterHelpers = exports.UsageJsonFormatter = exports.UsageFormatter = exports.SummaryFormatter = exports.SnippetsFormatter = exports.RerunFormatter = exports.ProgressFormatter = exports.JsonFormatter = exports.FormatterBuilder = exports.Formatter = exports.TestCaseHookDefinition = exports.DataTable = exports.supportCodeLibraryBuilder = exports.version = void 0;
48
- const node_util_1 = require("node:util");
47
+ exports.wrapPromiseWithTimeout = exports.Status = exports.parallelCanAssignHelpers = exports.World = exports.world = exports.context = exports.When = exports.Then = exports.setParallelCanAssign = exports.setWorldConstructor = exports.setDefinitionFunctionWrapper = exports.setDefaultTimeout = exports.Given = exports.defineParameterType = exports.defineStep = exports.BeforeStep = exports.BeforeAll = exports.Before = exports.AfterStep = exports.AfterAll = exports.After = exports.formatterHelpers = exports.supportCodeLibraryBuilder = exports.TestCaseHookDefinition = exports.DataTable = exports.UsageJsonFormatter = exports.UsageFormatter = exports.SummaryFormatter = exports.SnippetsFormatter = exports.RerunFormatter = exports.ProgressFormatter = exports.JsonFormatter = exports.FormatterBuilder = exports.Formatter = exports.version = void 0;
49
48
  const messages = __importStar(require("@cucumber/messages"));
50
- const cli_1 = __importDefault(require("./cli"));
51
49
  const formatterHelpers = __importStar(require("./formatter/helpers"));
52
50
  exports.formatterHelpers = formatterHelpers;
51
+ const support_code_library_builder_1 = __importDefault(require("./support_code_library_builder"));
53
52
  const parallelCanAssignHelpers = __importStar(require("./support_code_library_builder/parallel_can_assign_helpers"));
54
53
  exports.parallelCanAssignHelpers = parallelCanAssignHelpers;
55
- const support_code_library_builder_1 = __importDefault(require("./support_code_library_builder"));
56
54
  const version_1 = require("./version");
57
55
  // type version as string to avoid tripping api-extractor every release
58
56
  exports.version = version_1.version;
59
- // Top level
60
- var support_code_library_builder_2 = require("./support_code_library_builder");
61
- Object.defineProperty(exports, "supportCodeLibraryBuilder", { enumerable: true, get: function () { return __importDefault(support_code_library_builder_2).default; } });
62
- var data_table_1 = require("./models/data_table");
63
- Object.defineProperty(exports, "DataTable", { enumerable: true, get: function () { return __importDefault(data_table_1).default; } });
64
- var test_case_hook_definition_1 = require("./models/test_case_hook_definition");
65
- Object.defineProperty(exports, "TestCaseHookDefinition", { enumerable: true, get: function () { return __importDefault(test_case_hook_definition_1).default; } });
66
57
  // Formatters
67
58
  var formatter_1 = require("./formatter");
68
59
  Object.defineProperty(exports, "Formatter", { enumerable: true, get: function () { return __importDefault(formatter_1).default; } });
@@ -82,6 +73,13 @@ var usage_formatter_1 = require("./formatter/usage_formatter");
82
73
  Object.defineProperty(exports, "UsageFormatter", { enumerable: true, get: function () { return __importDefault(usage_formatter_1).default; } });
83
74
  var usage_json_formatter_1 = require("./formatter/usage_json_formatter");
84
75
  Object.defineProperty(exports, "UsageJsonFormatter", { enumerable: true, get: function () { return __importDefault(usage_json_formatter_1).default; } });
76
+ var data_table_1 = require("./models/data_table");
77
+ Object.defineProperty(exports, "DataTable", { enumerable: true, get: function () { return __importDefault(data_table_1).default; } });
78
+ var test_case_hook_definition_1 = require("./models/test_case_hook_definition");
79
+ Object.defineProperty(exports, "TestCaseHookDefinition", { enumerable: true, get: function () { return __importDefault(test_case_hook_definition_1).default; } });
80
+ // Top level
81
+ var support_code_library_builder_2 = require("./support_code_library_builder");
82
+ Object.defineProperty(exports, "supportCodeLibraryBuilder", { enumerable: true, get: function () { return __importDefault(support_code_library_builder_2).default; } });
85
83
  // Support Code Functions
86
84
  const { methods } = support_code_library_builder_1.default;
87
85
  exports.After = methods.After;
@@ -99,18 +97,13 @@ exports.setWorldConstructor = methods.setWorldConstructor;
99
97
  exports.setParallelCanAssign = methods.setParallelCanAssign;
100
98
  exports.Then = methods.Then;
101
99
  exports.When = methods.When;
102
- var world_1 = require("./support_code_library_builder/world");
103
- Object.defineProperty(exports, "World", { enumerable: true, get: function () { return __importDefault(world_1).default; } });
104
100
  var scope_1 = require("./runtime/scope");
105
- Object.defineProperty(exports, "world", { enumerable: true, get: function () { return scope_1.worldProxy; } });
106
101
  Object.defineProperty(exports, "context", { enumerable: true, get: function () { return scope_1.contextProxy; } });
102
+ Object.defineProperty(exports, "world", { enumerable: true, get: function () { return scope_1.worldProxy; } });
103
+ var world_1 = require("./support_code_library_builder/world");
104
+ Object.defineProperty(exports, "World", { enumerable: true, get: function () { return __importDefault(world_1).default; } });
107
105
  exports.Status = messages.TestStepResultStatus;
108
106
  // Time helpers
109
107
  var time_1 = require("./time");
110
108
  Object.defineProperty(exports, "wrapPromiseWithTimeout", { enumerable: true, get: function () { return time_1.wrapPromiseWithTimeout; } });
111
- // Deprecated
112
- /**
113
- * @deprecated use `runCucumber` instead; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
114
- */
115
- exports.Cli = (0, node_util_1.deprecate)(cli_1.default, '`Cli` is deprecated, use `runCucumber` instead; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md');
116
- //# sourceMappingURL=index.js.map
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7O0dBT0c7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUVILDZEQUE4QztBQUM5QyxzRUFBdUQ7QUF3QjlDLDRDQUFnQjtBQXZCekIsa0dBQXNFO0FBQ3RFLHFIQUFzRztBQW9EN0YsNERBQXdCO0FBbkRqQyx1Q0FBK0M7QUFFL0MsdUVBQXVFO0FBQzFELFFBQUEsT0FBTyxHQUFHLGlCQUFrQixDQUFBO0FBSXpDLGFBQWE7QUFDYix5Q0FBcUU7QUFBNUQsdUhBQUEsT0FBTyxPQUFhO0FBQzdCLCtDQUFpRTtBQUF4RCw0SEFBQSxPQUFPLE9BQW9CO0FBQ3BDLDZEQUFxRTtBQUE1RCxnSUFBQSxPQUFPLE9BQWlCO0FBQ2pDLHFFQUE2RTtBQUFwRSx3SUFBQSxPQUFPLE9BQXFCO0FBQ3JDLCtEQUF1RTtBQUE5RCxrSUFBQSxPQUFPLE9BQWtCO0FBQ2xDLHFFQUE2RTtBQUFwRSx3SUFBQSxPQUFPLE9BQXFCO0FBQ3JDLG1FQUEyRTtBQUFsRSxzSUFBQSxPQUFPLE9BQW9CO0FBQ3BDLCtEQUF1RTtBQUE5RCxrSUFBQSxPQUFPLE9BQWtCO0FBQ2xDLHlFQUFnRjtBQUF2RSwySUFBQSxPQUFPLE9BQXNCO0FBQ3RDLGtEQUEwRDtBQUFqRCx3SEFBQSxPQUFPLE9BQWE7QUFDN0IsZ0ZBQXNGO0FBQTdFLG9KQUFBLE9BQU8sT0FBMEI7QUFDMUMsWUFBWTtBQUNaLCtFQUFxRjtBQUE1RSwwSkFBQSxPQUFPLE9BQTZCO0FBRzdDLHlCQUF5QjtBQUN6QixNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsc0NBQXlCLENBQUE7QUFDaEMsUUFBQSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQTtBQUNyQixRQUFBLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFBO0FBQzNCLFFBQUEsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUE7QUFDN0IsUUFBQSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQTtBQUN2QixRQUFBLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFBO0FBQzdCLFFBQUEsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUE7QUFDL0IsUUFBQSxVQUFVLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQTtBQUMvQixRQUFBLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQTtBQUNqRCxRQUFBLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFBO0FBQ3JCLFFBQUEsaUJBQWlCLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFBO0FBQzdDLFFBQUEsNEJBQTRCLEdBQUcsT0FBTyxDQUFDLDRCQUE0QixDQUFBO0FBQ25FLFFBQUEsbUJBQW1CLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixDQUFBO0FBQ2pELFFBQUEsb0JBQW9CLEdBQUcsT0FBTyxDQUFDLG9CQUFvQixDQUFBO0FBQ25ELFFBQUEsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUE7QUFDbkIsUUFBQSxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQTtBQUNoQyx5Q0FBOEU7QUFBckUsZ0dBQUEsWUFBWSxPQUFXO0FBQUUsOEZBQUEsVUFBVSxPQUFTO0FBTXJELDhEQUk2QztBQUgzQywrR0FBQSxPQUFPLE9BQVM7QUFLTCxRQUFBLE1BQU0sR0FBRyxRQUFRLENBQUMsb0JBQW9CLENBQUE7QUFFbkQsZUFBZTtBQUNmLCtCQUErQztBQUF0Qyw4R0FBQSxzQkFBc0IsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVXNlciBjb2RlIGZ1bmN0aW9ucyBhbmQgaGVscGVyc1xuICpcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICogQG1vZHVsZSAocm9vdClcbiAqIEByZW1hcmtzXG4gKiBUaGVzZSBkb2NzIGNvdmVyIHRoZSBmdW5jdGlvbnMgYW5kIGhlbHBlcnMgZm9yIHVzZXIgY29kZSByZWdpc3RyYXRpb24gYW5kIHRlc3Qgc2V0dXAuIFRoZSBlbnRyeSBwb2ludCBpcyBgQGN1Y3VtYmVyL2N1Y3VtYmVyYC5cbiAqL1xuXG5pbXBvcnQgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgKiBhcyBmb3JtYXR0ZXJIZWxwZXJzIGZyb20gJy4vZm9ybWF0dGVyL2hlbHBlcnMnXG5pbXBvcnQgc3VwcG9ydENvZGVMaWJyYXJ5QnVpbGRlciBmcm9tICcuL3N1cHBvcnRfY29kZV9saWJyYXJ5X2J1aWxkZXInXG5pbXBvcnQgKiBhcyBwYXJhbGxlbENhbkFzc2lnbkhlbHBlcnMgZnJvbSAnLi9zdXBwb3J0X2NvZGVfbGlicmFyeV9idWlsZGVyL3BhcmFsbGVsX2Nhbl9hc3NpZ25faGVscGVycydcbmltcG9ydCB7IHZlcnNpb24gYXMgX3ZlcnNpb24gfSBmcm9tICcuL3ZlcnNpb24nXG5cbi8vIHR5cGUgdmVyc2lvbiBhcyBzdHJpbmcgdG8gYXZvaWQgdHJpcHBpbmcgYXBpLWV4dHJhY3RvciBldmVyeSByZWxlYXNlXG5leHBvcnQgY29uc3QgdmVyc2lvbiA9IF92ZXJzaW9uIGFzIHN0cmluZ1xuXG4vLyBDb25maWd1cmF0aW9uXG5leHBvcnQgeyBJQ29uZmlndXJhdGlvbiwgSVByb2ZpbGVzIH0gZnJvbSAnLi9jb25maWd1cmF0aW9uJ1xuLy8gRm9ybWF0dGVyc1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBGb3JtYXR0ZXIsIElGb3JtYXR0ZXJPcHRpb25zIH0gZnJvbSAnLi9mb3JtYXR0ZXInXG5leHBvcnQgeyBkZWZhdWx0IGFzIEZvcm1hdHRlckJ1aWxkZXIgfSBmcm9tICcuL2Zvcm1hdHRlci9idWlsZGVyJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKc29uRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXR0ZXIvanNvbl9mb3JtYXR0ZXInXG5leHBvcnQgeyBkZWZhdWx0IGFzIFByb2dyZXNzRm9ybWF0dGVyIH0gZnJvbSAnLi9mb3JtYXR0ZXIvcHJvZ3Jlc3NfZm9ybWF0dGVyJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBSZXJ1bkZvcm1hdHRlciB9IGZyb20gJy4vZm9ybWF0dGVyL3JlcnVuX2Zvcm1hdHRlcidcbmV4cG9ydCB7IGRlZmF1bHQgYXMgU25pcHBldHNGb3JtYXR0ZXIgfSBmcm9tICcuL2Zvcm1hdHRlci9zbmlwcGV0c19mb3JtYXR0ZXInXG5leHBvcnQgeyBkZWZhdWx0IGFzIFN1bW1hcnlGb3JtYXR0ZXIgfSBmcm9tICcuL2Zvcm1hdHRlci9zdW1tYXJ5X2Zvcm1hdHRlcidcbmV4cG9ydCB7IGRlZmF1bHQgYXMgVXNhZ2VGb3JtYXR0ZXIgfSBmcm9tICcuL2Zvcm1hdHRlci91c2FnZV9mb3JtYXR0ZXInXG5leHBvcnQgeyBkZWZhdWx0IGFzIFVzYWdlSnNvbkZvcm1hdHRlciB9IGZyb20gJy4vZm9ybWF0dGVyL3VzYWdlX2pzb25fZm9ybWF0dGVyJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBEYXRhVGFibGUgfSBmcm9tICcuL21vZGVscy9kYXRhX3RhYmxlJ1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBUZXN0Q2FzZUhvb2tEZWZpbml0aW9uIH0gZnJvbSAnLi9tb2RlbHMvdGVzdF9jYXNlX2hvb2tfZGVmaW5pdGlvbidcbi8vIFRvcCBsZXZlbFxuZXhwb3J0IHsgZGVmYXVsdCBhcyBzdXBwb3J0Q29kZUxpYnJhcnlCdWlsZGVyIH0gZnJvbSAnLi9zdXBwb3J0X2NvZGVfbGlicmFyeV9idWlsZGVyJ1xuZXhwb3J0IHsgZm9ybWF0dGVySGVscGVycyB9XG5cbi8vIFN1cHBvcnQgQ29kZSBGdW5jdGlvbnNcbmNvbnN0IHsgbWV0aG9kcyB9ID0gc3VwcG9ydENvZGVMaWJyYXJ5QnVpbGRlclxuZXhwb3J0IGNvbnN0IEFmdGVyID0gbWV0aG9kcy5BZnRlclxuZXhwb3J0IGNvbnN0IEFmdGVyQWxsID0gbWV0aG9kcy5BZnRlckFsbFxuZXhwb3J0IGNvbnN0IEFmdGVyU3RlcCA9IG1ldGhvZHMuQWZ0ZXJTdGVwXG5leHBvcnQgY29uc3QgQmVmb3JlID0gbWV0aG9kcy5CZWZvcmVcbmV4cG9ydCBjb25zdCBCZWZvcmVBbGwgPSBtZXRob2RzLkJlZm9yZUFsbFxuZXhwb3J0IGNvbnN0IEJlZm9yZVN0ZXAgPSBtZXRob2RzLkJlZm9yZVN0ZXBcbmV4cG9ydCBjb25zdCBkZWZpbmVTdGVwID0gbWV0aG9kcy5kZWZpbmVTdGVwXG5leHBvcnQgY29uc3QgZGVmaW5lUGFyYW1ldGVyVHlwZSA9IG1ldGhvZHMuZGVmaW5lUGFyYW1ldGVyVHlwZVxuZXhwb3J0IGNvbnN0IEdpdmVuID0gbWV0aG9kcy5HaXZlblxuZXhwb3J0IGNvbnN0IHNldERlZmF1bHRUaW1lb3V0ID0gbWV0aG9kcy5zZXREZWZhdWx0VGltZW91dFxuZXhwb3J0IGNvbnN0IHNldERlZmluaXRpb25GdW5jdGlvbldyYXBwZXIgPSBtZXRob2RzLnNldERlZmluaXRpb25GdW5jdGlvbldyYXBwZXJcbmV4cG9ydCBjb25zdCBzZXRXb3JsZENvbnN0cnVjdG9yID0gbWV0aG9kcy5zZXRXb3JsZENvbnN0cnVjdG9yXG5leHBvcnQgY29uc3Qgc2V0UGFyYWxsZWxDYW5Bc3NpZ24gPSBtZXRob2RzLnNldFBhcmFsbGVsQ2FuQXNzaWduXG5leHBvcnQgY29uc3QgVGhlbiA9IG1ldGhvZHMuVGhlblxuZXhwb3J0IGNvbnN0IFdoZW4gPSBtZXRob2RzLldoZW5cbmV4cG9ydCB7IGNvbnRleHRQcm94eSBhcyBjb250ZXh0LCB3b3JsZFByb3h5IGFzIHdvcmxkIH0gZnJvbSAnLi9ydW50aW1lL3Njb3BlJ1xuZXhwb3J0IHsgSUNvbnRleHQgfSBmcm9tICcuL3N1cHBvcnRfY29kZV9saWJyYXJ5X2J1aWxkZXIvY29udGV4dCdcbmV4cG9ydCB7XG4gIElUZXN0Q2FzZUhvb2tQYXJhbWV0ZXIsXG4gIElUZXN0U3RlcEhvb2tQYXJhbWV0ZXIsXG59IGZyb20gJy4vc3VwcG9ydF9jb2RlX2xpYnJhcnlfYnVpbGRlci90eXBlcydcbmV4cG9ydCB7XG4gIGRlZmF1bHQgYXMgV29ybGQsXG4gIElXb3JsZCxcbiAgSVdvcmxkT3B0aW9ucyxcbn0gZnJvbSAnLi9zdXBwb3J0X2NvZGVfbGlicmFyeV9idWlsZGVyL3dvcmxkJ1xuZXhwb3J0IHsgcGFyYWxsZWxDYW5Bc3NpZ25IZWxwZXJzIH1cbmV4cG9ydCBjb25zdCBTdGF0dXMgPSBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1c1xuXG4vLyBUaW1lIGhlbHBlcnNcbmV4cG9ydCB7IHdyYXBQcm9taXNlV2l0aFRpbWVvdXQgfSBmcm9tICcuL3RpbWUnXG4iXX0=
@@ -1,4 +1,4 @@
1
- import * as messages from '@cucumber/messages';
1
+ import type * as messages from '@cucumber/messages';
2
2
  export default class DataTable {
3
3
  private readonly rawTable;
4
4
  constructor(sourceTable: messages.PickleTable | string[][]);
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  class DataTable {
4
4
  rawTable;
5
5
  constructor(sourceTable) {
6
- if (sourceTable instanceof Array) {
6
+ if (Array.isArray(sourceTable)) {
7
7
  this.rawTable = sourceTable;
8
8
  }
9
9
  else {
@@ -16,7 +16,9 @@ class DataTable {
16
16
  const valuesArray = copy.slice(1);
17
17
  return valuesArray.map((values) => {
18
18
  const rowObject = {};
19
- keys.forEach((key, index) => (rowObject[key] = values[index]));
19
+ keys.forEach((key, index) => {
20
+ rowObject[key] = values[index];
21
+ });
20
22
  return rowObject;
21
23
  });
22
24
  }
@@ -35,13 +37,15 @@ class DataTable {
35
37
  throw new Error('rowsHash can only be called on a data table where all rows have exactly two columns');
36
38
  }
37
39
  const result = {};
38
- rows.forEach((x) => (result[x[0]] = x[1]));
40
+ for (const x of rows) {
41
+ result[x[0]] = x[1];
42
+ }
39
43
  return result;
40
44
  }
41
45
  transpose() {
42
- const transposed = this.rawTable[0].map((x, i) => this.rawTable.map((y) => y[i]));
46
+ const transposed = this.rawTable[0].map((_x, i) => this.rawTable.map((y) => y[i]));
43
47
  return new DataTable(transposed);
44
48
  }
45
49
  }
46
50
  exports.default = DataTable;
47
- //# sourceMappingURL=data_table.js.map
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YV90YWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbHMvZGF0YV90YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLE1BQXFCLFNBQVM7SUFDWCxRQUFRLENBQVk7SUFFckMsWUFBWSxXQUE4QztRQUN4RCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUMvQixJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVcsQ0FBQTtRQUM3QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtRQUNwRixDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU07UUFDSixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7UUFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ3BCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDakMsT0FBTyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDaEMsTUFBTSxTQUFTLEdBQTJCLEVBQUUsQ0FBQTtZQUM1QyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUMxQixTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ2hDLENBQUMsQ0FBQyxDQUFBO1lBQ0YsT0FBTyxTQUFTLENBQUE7UUFDbEIsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsR0FBRztRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDL0IsQ0FBQztJQUVELElBQUk7UUFDRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUE7UUFDdkIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ1osT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQTtRQUN2QixNQUFNLHFCQUFxQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUE7UUFDbkUsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7WUFDM0IsTUFBTSxJQUFJLEtBQUssQ0FDYixxRkFBcUYsQ0FDdEYsQ0FBQTtRQUNILENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBMkIsRUFBRSxDQUFBO1FBQ3pDLEtBQUssTUFBTSxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDckIsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNyQixDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDO0lBRUQsU0FBUztRQUNQLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDbEYsT0FBTyxJQUFJLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0NBQ0Y7QUFyREQsNEJBcURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERhdGFUYWJsZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmF3VGFibGU6IHN0cmluZ1tdW11cblxuICBjb25zdHJ1Y3Rvcihzb3VyY2VUYWJsZTogbWVzc2FnZXMuUGlja2xlVGFibGUgfCBzdHJpbmdbXVtdKSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoc291cmNlVGFibGUpKSB7XG4gICAgICB0aGlzLnJhd1RhYmxlID0gc291cmNlVGFibGVcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yYXdUYWJsZSA9IHNvdXJjZVRhYmxlLnJvd3MubWFwKChyb3cpID0+IHJvdy5jZWxscy5tYXAoKGNlbGwpID0+IGNlbGwudmFsdWUpKVxuICAgIH1cbiAgfVxuXG4gIGhhc2hlcygpOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+W10ge1xuICAgIGNvbnN0IGNvcHkgPSB0aGlzLnJhdygpXG4gICAgY29uc3Qga2V5cyA9IGNvcHlbMF1cbiAgICBjb25zdCB2YWx1ZXNBcnJheSA9IGNvcHkuc2xpY2UoMSlcbiAgICByZXR1cm4gdmFsdWVzQXJyYXkubWFwKCh2YWx1ZXMpID0+IHtcbiAgICAgIGNvbnN0IHJvd09iamVjdDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9XG4gICAgICBrZXlzLmZvckVhY2goKGtleSwgaW5kZXgpID0+IHtcbiAgICAgICAgcm93T2JqZWN0W2tleV0gPSB2YWx1ZXNbaW5kZXhdXG4gICAgICB9KVxuICAgICAgcmV0dXJuIHJvd09iamVjdFxuICAgIH0pXG4gIH1cblxuICByYXcoKTogc3RyaW5nW11bXSB7XG4gICAgcmV0dXJuIHRoaXMucmF3VGFibGUuc2xpY2UoMClcbiAgfVxuXG4gIHJvd3MoKTogc3RyaW5nW11bXSB7XG4gICAgY29uc3QgY29weSA9IHRoaXMucmF3KClcbiAgICBjb3B5LnNoaWZ0KClcbiAgICByZXR1cm4gY29weVxuICB9XG5cbiAgcm93c0hhc2goKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB7XG4gICAgY29uc3Qgcm93cyA9IHRoaXMucmF3KClcbiAgICBjb25zdCBldmVyeVJvd0hhc1R3b0NvbHVtbnMgPSByb3dzLmV2ZXJ5KChyb3cpID0+IHJvdy5sZW5ndGggPT09IDIpXG4gICAgaWYgKCFldmVyeVJvd0hhc1R3b0NvbHVtbnMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ3Jvd3NIYXNoIGNhbiBvbmx5IGJlIGNhbGxlZCBvbiBhIGRhdGEgdGFibGUgd2hlcmUgYWxsIHJvd3MgaGF2ZSBleGFjdGx5IHR3byBjb2x1bW5zJ1xuICAgICAgKVxuICAgIH1cbiAgICBjb25zdCByZXN1bHQ6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fVxuICAgIGZvciAoY29uc3QgeCBvZiByb3dzKSB7XG4gICAgICByZXN1bHRbeFswXV0gPSB4WzFdXG4gICAgfVxuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIHRyYW5zcG9zZSgpOiBEYXRhVGFibGUge1xuICAgIGNvbnN0IHRyYW5zcG9zZWQgPSB0aGlzLnJhd1RhYmxlWzBdLm1hcCgoX3gsIGkpID0+IHRoaXMucmF3VGFibGUubWFwKCh5KSA9PiB5W2ldKSlcbiAgICByZXR1cm4gbmV3IERhdGFUYWJsZSh0cmFuc3Bvc2VkKVxuICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
- import * as messages from '@cucumber/messages';
2
- import { Expression } from '@cucumber/cucumber-expressions';
3
- import { ITestCaseHookParameter } from '../support_code_library_builder/types';
4
- import { GherkinStepKeyword } from './gherkin_step_keyword';
1
+ import type { Expression } from '@cucumber/cucumber-expressions';
2
+ import type * as messages from '@cucumber/messages';
3
+ import type { ITestCaseHookParameter } from '../support_code_library_builder/types';
4
+ import type { GherkinStepKeyword } from './gherkin_step_keyword';
5
5
  export interface IGetInvocationDataRequest {
6
6
  hookParameter: ITestCaseHookParameter;
7
7
  step: messages.PickleStep;
@@ -27,4 +27,4 @@ class Definition {
27
27
  }
28
28
  }
29
29
  exports.default = Definition;
30
- //# sourceMappingURL=definition.js.map
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbHMvZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQXlEQSxNQUE4QixVQUFVO0lBQ3RCLElBQUksQ0FBVTtJQUNkLEVBQUUsQ0FBUTtJQUNWLElBQUksQ0FBUTtJQUNaLE9BQU8sQ0FBb0I7SUFDM0IsS0FBSyxDQUFRO0lBQ2IsYUFBYSxDQUFVO0lBQ3ZCLEdBQUcsQ0FBUTtJQUUzQixZQUFZLEVBQ1YsSUFBSSxFQUNKLEVBQUUsRUFDRixJQUFJLEVBQ0osT0FBTyxFQUNQLEtBQUssRUFDTCxhQUFhLEVBQ2IsR0FBRyxHQUN1QztRQUMxQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQTtRQUNaLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFBO1FBQ2xDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFBO0lBQ2hCLENBQUM7SUFFRCw2QkFBNkIsQ0FDM0IsbUJBQW9DLEVBQ3BDLGNBQStCO1FBRS9CLE9BQU8sQ0FDTCxnQkFBZ0IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLFlBQVk7WUFDdkQsaUJBQWlCLG1CQUFtQixDQUFDLFFBQVEsRUFBRSwwQ0FBMEM7WUFDekYsT0FBTyxjQUFjLENBQUMsUUFBUSxFQUFFLDRCQUE0QixDQUM3RCxDQUFBO0lBQ0gsQ0FBQztJQUVELCtCQUErQixDQUFDLFVBQWlCO1FBQy9DLE9BQU8sSUFBSSxDQUFDLDZCQUE2QixDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUNyRixDQUFDO0NBQ0Y7QUF6Q0QsNkJBeUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBFeHByZXNzaW9uIH0gZnJvbSAnQGN1Y3VtYmVyL2N1Y3VtYmVyLWV4cHJlc3Npb25zJ1xuaW1wb3J0IHR5cGUgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgdHlwZSB7IElUZXN0Q2FzZUhvb2tQYXJhbWV0ZXIgfSBmcm9tICcuLi9zdXBwb3J0X2NvZGVfbGlicmFyeV9idWlsZGVyL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBHaGVya2luU3RlcEtleXdvcmQgfSBmcm9tICcuL2doZXJraW5fc3RlcF9rZXl3b3JkJ1xuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRJbnZvY2F0aW9uRGF0YVJlcXVlc3Qge1xuICBob29rUGFyYW1ldGVyOiBJVGVzdENhc2VIb29rUGFyYW1ldGVyXG4gIHN0ZXA6IG1lc3NhZ2VzLlBpY2tsZVN0ZXBcbiAgd29ybGQ6IGFueVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRJbnZvY2F0aW9uRGF0YVJlc3BvbnNlIHtcbiAgZ2V0SW52YWxpZENvZGVMZW5ndGhNZXNzYWdlOiAoKSA9PiBzdHJpbmdcbiAgcGFyYW1ldGVyczogYW55W11cbiAgdmFsaWRDb2RlTGVuZ3RoczogbnVtYmVyW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGVmaW5pdGlvbk9wdGlvbnMge1xuICB0aW1lb3V0PzogbnVtYmVyXG4gIHdyYXBwZXJPcHRpb25zPzogYW55XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUhvb2tEZWZpbml0aW9uT3B0aW9ucyBleHRlbmRzIElEZWZpbml0aW9uT3B0aW9ucyB7XG4gIG5hbWU/OiBzdHJpbmdcbiAgdGFncz86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElEZWZpbml0aW9uUGFyYW1ldGVyczxUIGV4dGVuZHMgSURlZmluaXRpb25PcHRpb25zPiB7XG4gIGNvZGU6IEZ1bmN0aW9uXG4gIGlkOiBzdHJpbmdcbiAgbGluZTogbnVtYmVyXG4gIG9wdGlvbnM6IFRcbiAgb3JkZXI6IG51bWJlclxuICB1bndyYXBwZWRDb2RlPzogRnVuY3Rpb25cbiAgdXJpOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU3RlcERlZmluaXRpb25QYXJhbWV0ZXJzIGV4dGVuZHMgSURlZmluaXRpb25QYXJhbWV0ZXJzPElEZWZpbml0aW9uT3B0aW9ucz4ge1xuICBrZXl3b3JkOiBHaGVya2luU3RlcEtleXdvcmRcbiAgcGF0dGVybjogc3RyaW5nIHwgUmVnRXhwXG4gIGV4cHJlc3Npb246IEV4cHJlc3Npb25cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGVmaW5pdGlvbiB7XG4gIHJlYWRvbmx5IGNvZGU6IEZ1bmN0aW9uXG4gIHJlYWRvbmx5IGlkOiBzdHJpbmdcbiAgcmVhZG9ubHkgbGluZTogbnVtYmVyXG4gIHJlYWRvbmx5IG9wdGlvbnM6IElEZWZpbml0aW9uT3B0aW9uc1xuICByZWFkb25seSBvcmRlcjogbnVtYmVyXG4gIHJlYWRvbmx5IHVud3JhcHBlZENvZGU6IEZ1bmN0aW9uXG4gIHJlYWRvbmx5IHVyaTogc3RyaW5nXG5cbiAgZ2V0SW52b2NhdGlvblBhcmFtZXRlcnM6IChcbiAgICBvcHRpb25zOiBJR2V0SW52b2NhdGlvbkRhdGFSZXF1ZXN0XG4gICkgPT4gUHJvbWlzZTxJR2V0SW52b2NhdGlvbkRhdGFSZXNwb25zZT5cbn1cblxuZXhwb3J0IGRlZmF1bHQgYWJzdHJhY3QgY2xhc3MgRGVmaW5pdGlvbiB7XG4gIHB1YmxpYyByZWFkb25seSBjb2RlOiBGdW5jdGlvblxuICBwdWJsaWMgcmVhZG9ubHkgaWQ6IHN0cmluZ1xuICBwdWJsaWMgcmVhZG9ubHkgbGluZTogbnVtYmVyXG4gIHB1YmxpYyByZWFkb25seSBvcHRpb25zOiBJRGVmaW5pdGlvbk9wdGlvbnNcbiAgcHVibGljIHJlYWRvbmx5IG9yZGVyOiBudW1iZXJcbiAgcHVibGljIHJlYWRvbmx5IHVud3JhcHBlZENvZGU6IEZ1bmN0aW9uXG4gIHB1YmxpYyByZWFkb25seSB1cmk6IHN0cmluZ1xuXG4gIGNvbnN0cnVjdG9yKHtcbiAgICBjb2RlLFxuICAgIGlkLFxuICAgIGxpbmUsXG4gICAgb3B0aW9ucyxcbiAgICBvcmRlcixcbiAgICB1bndyYXBwZWRDb2RlLFxuICAgIHVyaSxcbiAgfTogSURlZmluaXRpb25QYXJhbWV0ZXJzPElEZWZpbml0aW9uT3B0aW9ucz4pIHtcbiAgICB0aGlzLmNvZGUgPSBjb2RlXG4gICAgdGhpcy5pZCA9IGlkXG4gICAgdGhpcy5saW5lID0gbGluZVxuICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnNcbiAgICB0aGlzLm9yZGVyID0gb3JkZXJcbiAgICB0aGlzLnVud3JhcHBlZENvZGUgPSB1bndyYXBwZWRDb2RlXG4gICAgdGhpcy51cmkgPSB1cmlcbiAgfVxuXG4gIGJ1aWxkSW52YWxpZENvZGVMZW5ndGhNZXNzYWdlKFxuICAgIHN5bmNPclByb21pc2VMZW5ndGg6IG51bWJlciB8IHN0cmluZyxcbiAgICBjYWxsYmFja0xlbmd0aDogbnVtYmVyIHwgc3RyaW5nXG4gICk6IHN0cmluZyB7XG4gICAgcmV0dXJuIChcbiAgICAgIGBmdW5jdGlvbiBoYXMgJHt0aGlzLmNvZGUubGVuZ3RoLnRvU3RyaW5nKCl9IGFyZ3VtZW50c2AgK1xuICAgICAgYCwgc2hvdWxkIGhhdmUgJHtzeW5jT3JQcm9taXNlTGVuZ3RoLnRvU3RyaW5nKCl9IChpZiBzeW5jaHJvbm91cyBvciByZXR1cm5pbmcgYSBwcm9taXNlKWAgK1xuICAgICAgYCBvciAke2NhbGxiYWNrTGVuZ3RoLnRvU3RyaW5nKCl9IChpZiBhY2NlcHRpbmcgYSBjYWxsYmFjaylgXG4gICAgKVxuICB9XG5cbiAgYmFzZUdldEludmFsaWRDb2RlTGVuZ3RoTWVzc2FnZShwYXJhbWV0ZXJzOiBhbnlbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYnVpbGRJbnZhbGlkQ29kZUxlbmd0aE1lc3NhZ2UocGFyYW1ldGVycy5sZW5ndGgsIHBhcmFtZXRlcnMubGVuZ3RoICsgMSlcbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=gherkin_step_keyword.js.map
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2hlcmtpbl9zdGVwX2tleXdvcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kZWxzL2doZXJraW5fc3RlcF9rZXl3b3JkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBHaGVya2luU3RlcEtleXdvcmQgPSAnVW5rbm93bicgfCAnR2l2ZW4nIHwgJ1doZW4nIHwgJ1RoZW4nXG4iXX0=
@@ -1,6 +1,6 @@
1
- import { Expression } from '@cucumber/cucumber-expressions';
2
- import Definition, { IDefinition, IGetInvocationDataRequest, IGetInvocationDataResponse, IStepDefinitionParameters } from './definition';
3
- import { GherkinStepKeyword } from './gherkin_step_keyword';
1
+ import type { Expression } from '@cucumber/cucumber-expressions';
2
+ import Definition, { type IDefinition, type IGetInvocationDataRequest, type IGetInvocationDataResponse, type IStepDefinitionParameters } from './definition';
3
+ import type { GherkinStepKeyword } from './gherkin_step_keyword';
4
4
  export default class StepDefinition extends Definition implements IDefinition {
5
5
  readonly keyword: GherkinStepKeyword;
6
6
  readonly pattern: string | RegExp;
@@ -37,4 +37,4 @@ class StepDefinition extends definition_1.default {
37
37
  }
38
38
  }
39
39
  exports.default = StepDefinition;
40
- //# sourceMappingURL=step_definition.js.map
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcF9kZWZpbml0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGVscy9zdGVwX2RlZmluaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxzREFBcUQ7QUFDckQsb0RBQWdEO0FBQ2hELDhEQUFvQztBQUNwQyw4REFLcUI7QUFHckIsTUFBcUIsY0FBZSxTQUFRLG9CQUFVO0lBQ3BDLE9BQU8sQ0FBb0I7SUFDM0IsT0FBTyxDQUFpQjtJQUN4QixVQUFVLENBQVk7SUFFdEMsWUFBWSxJQUErQjtRQUN6QyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDWCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUE7UUFDM0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFBO1FBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUNuQyxDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQzVCLElBQUksRUFDSixLQUFLLEdBQ3FCO1FBQzFCLE1BQU0sVUFBVSxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDbEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNuRSxDQUFBO1FBQ0QsSUFBSSxJQUFBLDZCQUFhLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDakMsTUFBTSxpQkFBaUIsR0FBRyxJQUFBLGtDQUFpQixFQUFNLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQzlELFNBQVMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxvQkFBUyxDQUFDLEdBQUcsQ0FBQztnQkFDdEMsU0FBUyxFQUFFLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTzthQUNoQyxDQUFDLENBQUE7WUFDRixVQUFVLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDcEMsQ0FBQztRQUNELE9BQU87WUFDTCwyQkFBMkIsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsVUFBVSxDQUFDO1lBQ25GLFVBQVU7WUFDVixnQkFBZ0IsRUFBRSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7U0FDN0QsQ0FBQTtJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsUUFBZ0I7UUFDOUIsT0FBTyxJQUFBLDZCQUFhLEVBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtJQUN2RCxDQUFDO0NBQ0Y7QUFwQ0QsaUNBb0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBFeHByZXNzaW9uIH0gZnJvbSAnQGN1Y3VtYmVyL2N1Y3VtYmVyLWV4cHJlc3Npb25zJ1xuaW1wb3J0IHsgcGFyc2VTdGVwQXJndW1lbnQgfSBmcm9tICcuLi9zdGVwX2FyZ3VtZW50cydcbmltcG9ydCB7IGRvZXNIYXZlVmFsdWUgfSBmcm9tICcuLi92YWx1ZV9jaGVja2VyJ1xuaW1wb3J0IERhdGFUYWJsZSBmcm9tICcuL2RhdGFfdGFibGUnXG5pbXBvcnQgRGVmaW5pdGlvbiwge1xuICB0eXBlIElEZWZpbml0aW9uLFxuICB0eXBlIElHZXRJbnZvY2F0aW9uRGF0YVJlcXVlc3QsXG4gIHR5cGUgSUdldEludm9jYXRpb25EYXRhUmVzcG9uc2UsXG4gIHR5cGUgSVN0ZXBEZWZpbml0aW9uUGFyYW1ldGVycyxcbn0gZnJvbSAnLi9kZWZpbml0aW9uJ1xuaW1wb3J0IHR5cGUgeyBHaGVya2luU3RlcEtleXdvcmQgfSBmcm9tICcuL2doZXJraW5fc3RlcF9rZXl3b3JkJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTdGVwRGVmaW5pdGlvbiBleHRlbmRzIERlZmluaXRpb24gaW1wbGVtZW50cyBJRGVmaW5pdGlvbiB7XG4gIHB1YmxpYyByZWFkb25seSBrZXl3b3JkOiBHaGVya2luU3RlcEtleXdvcmRcbiAgcHVibGljIHJlYWRvbmx5IHBhdHRlcm46IHN0cmluZyB8IFJlZ0V4cFxuICBwdWJsaWMgcmVhZG9ubHkgZXhwcmVzc2lvbjogRXhwcmVzc2lvblxuXG4gIGNvbnN0cnVjdG9yKGRhdGE6IElTdGVwRGVmaW5pdGlvblBhcmFtZXRlcnMpIHtcbiAgICBzdXBlcihkYXRhKVxuICAgIHRoaXMua2V5d29yZCA9IGRhdGEua2V5d29yZFxuICAgIHRoaXMucGF0dGVybiA9IGRhdGEucGF0dGVyblxuICAgIHRoaXMuZXhwcmVzc2lvbiA9IGRhdGEuZXhwcmVzc2lvblxuICB9XG5cbiAgYXN5bmMgZ2V0SW52b2NhdGlvblBhcmFtZXRlcnMoe1xuICAgIHN0ZXAsXG4gICAgd29ybGQsXG4gIH06IElHZXRJbnZvY2F0aW9uRGF0YVJlcXVlc3QpOiBQcm9taXNlPElHZXRJbnZvY2F0aW9uRGF0YVJlc3BvbnNlPiB7XG4gICAgY29uc3QgcGFyYW1ldGVycyA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgdGhpcy5leHByZXNzaW9uLm1hdGNoKHN0ZXAudGV4dCkubWFwKChhcmcpID0+IGFyZy5nZXRWYWx1ZSh3b3JsZCkpXG4gICAgKVxuICAgIGlmIChkb2VzSGF2ZVZhbHVlKHN0ZXAuYXJndW1lbnQpKSB7XG4gICAgICBjb25zdCBhcmd1bWVudFBhcmFtZXRlciA9IHBhcnNlU3RlcEFyZ3VtZW50PGFueT4oc3RlcC5hcmd1bWVudCwge1xuICAgICAgICBkYXRhVGFibGU6IChhcmcpID0+IG5ldyBEYXRhVGFibGUoYXJnKSxcbiAgICAgICAgZG9jU3RyaW5nOiAoYXJnKSA9PiBhcmcuY29udGVudCxcbiAgICAgIH0pXG4gICAgICBwYXJhbWV0ZXJzLnB1c2goYXJndW1lbnRQYXJhbWV0ZXIpXG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBnZXRJbnZhbGlkQ29kZUxlbmd0aE1lc3NhZ2U6ICgpID0+IHRoaXMuYmFzZUdldEludmFsaWRDb2RlTGVuZ3RoTWVzc2FnZShwYXJhbWV0ZXJzKSxcbiAgICAgIHBhcmFtZXRlcnMsXG4gICAgICB2YWxpZENvZGVMZW5ndGhzOiBbcGFyYW1ldGVycy5sZW5ndGgsIHBhcmFtZXRlcnMubGVuZ3RoICsgMV0sXG4gICAgfVxuICB9XG5cbiAgbWF0Y2hlc1N0ZXBOYW1lKHN0ZXBOYW1lOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZG9lc0hhdmVWYWx1ZSh0aGlzLmV4cHJlc3Npb24ubWF0Y2goc3RlcE5hbWUpKVxuICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- import * as messages from '@cucumber/messages';
2
- import Definition, { IDefinition, IDefinitionParameters, IGetInvocationDataRequest, IGetInvocationDataResponse, IHookDefinitionOptions } from './definition';
1
+ import type * as messages from '@cucumber/messages';
2
+ import Definition, { type IDefinition, type IDefinitionParameters, type IGetInvocationDataRequest, type IGetInvocationDataResponse, type IHookDefinitionOptions } from './definition';
3
3
  export default class TestCaseHookDefinition extends Definition implements IDefinition {
4
4
  readonly name: string;
5
5
  readonly tagExpression: string;
@@ -27,4 +27,4 @@ class TestCaseHookDefinition extends definition_1.default {
27
27
  }
28
28
  }
29
29
  exports.default = TestCaseHookDefinition;
30
- //# sourceMappingURL=test_case_hook_definition.js.map
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jYXNlX2hvb2tfZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbHMvdGVzdF9jYXNlX2hvb2tfZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLG9EQUFrRDtBQUNsRCw4REFNcUI7QUFFckIsTUFBcUIsc0JBQXVCLFNBQVEsb0JBQVU7SUFDNUMsSUFBSSxDQUFRO0lBQ1osYUFBYSxDQUFRO0lBQ3BCLGVBQWUsQ0FBaUI7SUFFakQsWUFBWSxJQUFtRDtRQUM3RCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDWCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFBO1FBQzdCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUE7UUFDdEMsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLCtCQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMvRCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBdUI7UUFDdkMsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzlELENBQUM7SUFFRCxLQUFLLENBQUMsdUJBQXVCLENBQUMsRUFDNUIsYUFBYSxHQUNhO1FBQzFCLE9BQU87WUFDTCwyQkFBMkIsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsNkJBQTZCLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQztZQUNwRixVQUFVLEVBQUUsQ0FBQyxhQUFhLENBQUM7WUFDM0IsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM1QixDQUFBO0lBQ0gsQ0FBQztDQUNGO0FBekJELHlDQXlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgUGlja2xlVGFnRmlsdGVyIH0gZnJvbSAnLi4vcGlja2xlX2ZpbHRlcidcbmltcG9ydCBEZWZpbml0aW9uLCB7XG4gIHR5cGUgSURlZmluaXRpb24sXG4gIHR5cGUgSURlZmluaXRpb25QYXJhbWV0ZXJzLFxuICB0eXBlIElHZXRJbnZvY2F0aW9uRGF0YVJlcXVlc3QsXG4gIHR5cGUgSUdldEludm9jYXRpb25EYXRhUmVzcG9uc2UsXG4gIHR5cGUgSUhvb2tEZWZpbml0aW9uT3B0aW9ucyxcbn0gZnJvbSAnLi9kZWZpbml0aW9uJ1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBUZXN0Q2FzZUhvb2tEZWZpbml0aW9uIGV4dGVuZHMgRGVmaW5pdGlvbiBpbXBsZW1lbnRzIElEZWZpbml0aW9uIHtcbiAgcHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZ1xuICBwdWJsaWMgcmVhZG9ubHkgdGFnRXhwcmVzc2lvbjogc3RyaW5nXG4gIHByaXZhdGUgcmVhZG9ubHkgcGlja2xlVGFnRmlsdGVyOiBQaWNrbGVUYWdGaWx0ZXJcblxuICBjb25zdHJ1Y3RvcihkYXRhOiBJRGVmaW5pdGlvblBhcmFtZXRlcnM8SUhvb2tEZWZpbml0aW9uT3B0aW9ucz4pIHtcbiAgICBzdXBlcihkYXRhKVxuICAgIHRoaXMubmFtZSA9IGRhdGEub3B0aW9ucy5uYW1lXG4gICAgdGhpcy50YWdFeHByZXNzaW9uID0gZGF0YS5vcHRpb25zLnRhZ3NcbiAgICB0aGlzLnBpY2tsZVRhZ0ZpbHRlciA9IG5ldyBQaWNrbGVUYWdGaWx0ZXIoZGF0YS5vcHRpb25zLnRhZ3MpXG4gIH1cblxuICBhcHBsaWVzVG9UZXN0Q2FzZShwaWNrbGU6IG1lc3NhZ2VzLlBpY2tsZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnBpY2tsZVRhZ0ZpbHRlci5tYXRjaGVzQWxsVGFnRXhwcmVzc2lvbnMocGlja2xlKVxuICB9XG5cbiAgYXN5bmMgZ2V0SW52b2NhdGlvblBhcmFtZXRlcnMoe1xuICAgIGhvb2tQYXJhbWV0ZXIsXG4gIH06IElHZXRJbnZvY2F0aW9uRGF0YVJlcXVlc3QpOiBQcm9taXNlPElHZXRJbnZvY2F0aW9uRGF0YVJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldEludmFsaWRDb2RlTGVuZ3RoTWVzc2FnZTogKCkgPT4gdGhpcy5idWlsZEludmFsaWRDb2RlTGVuZ3RoTWVzc2FnZSgnMCBvciAxJywgJzInKSxcbiAgICAgIHBhcmFtZXRlcnM6IFtob29rUGFyYW1ldGVyXSxcbiAgICAgIHZhbGlkQ29kZUxlbmd0aHM6IFswLCAxLCAyXSxcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import Definition, { IDefinitionParameters, IDefinitionOptions } from './definition';
1
+ import Definition, { type IDefinitionOptions, type IDefinitionParameters } from './definition';
2
2
  export interface ITestRunHookDefinitionOptions extends IDefinitionOptions {
3
3
  name?: string;
4
4
  }
@@ -12,4 +12,4 @@ class TestRunHookDefinition extends definition_1.default {
12
12
  }
13
13
  }
14
14
  exports.default = TestRunHookDefinition;
15
- //# sourceMappingURL=test_run_hook_definition.js.map
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9ydW5faG9va19kZWZpbml0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZGVscy90ZXN0X3J1bl9ob29rX2RlZmluaXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw4REFBOEY7QUFNOUYsTUFBcUIscUJBQXNCLFNBQVEsb0JBQVU7SUFDM0MsSUFBSSxDQUFRO0lBRTVCLFlBQVksSUFBMEQ7UUFDcEUsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ1gsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQTtJQUMvQixDQUFDO0NBQ0Y7QUFQRCx3Q0FPQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBEZWZpbml0aW9uLCB7IHR5cGUgSURlZmluaXRpb25PcHRpb25zLCB0eXBlIElEZWZpbml0aW9uUGFyYW1ldGVycyB9IGZyb20gJy4vZGVmaW5pdGlvbidcblxuZXhwb3J0IGludGVyZmFjZSBJVGVzdFJ1bkhvb2tEZWZpbml0aW9uT3B0aW9ucyBleHRlbmRzIElEZWZpbml0aW9uT3B0aW9ucyB7XG4gIG5hbWU/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGVzdFJ1bkhvb2tEZWZpbml0aW9uIGV4dGVuZHMgRGVmaW5pdGlvbiB7XG4gIHB1YmxpYyByZWFkb25seSBuYW1lOiBzdHJpbmdcblxuICBjb25zdHJ1Y3RvcihkYXRhOiBJRGVmaW5pdGlvblBhcmFtZXRlcnM8SVRlc3RSdW5Ib29rRGVmaW5pdGlvbk9wdGlvbnM+KSB7XG4gICAgc3VwZXIoZGF0YSlcbiAgICB0aGlzLm5hbWUgPSBkYXRhLm9wdGlvbnMubmFtZVxuICB9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- import * as messages from '@cucumber/messages';
2
- import Definition, { IDefinition, IGetInvocationDataResponse, IGetInvocationDataRequest, IDefinitionParameters, IHookDefinitionOptions } from './definition';
1
+ import type * as messages from '@cucumber/messages';
2
+ import Definition, { type IDefinition, type IDefinitionParameters, type IGetInvocationDataRequest, type IGetInvocationDataResponse, type IHookDefinitionOptions } from './definition';
3
3
  export default class TestStepHookDefinition extends Definition implements IDefinition {
4
4
  readonly tagExpression: string;
5
5
  private readonly pickleTagFilter;
@@ -25,4 +25,4 @@ class TestStepHookDefinition extends definition_1.default {
25
25
  }
26
26
  }
27
27
  exports.default = TestStepHookDefinition;
28
- //# sourceMappingURL=test_step_hook_definition.js.map
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9zdGVwX2hvb2tfZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbHMvdGVzdF9zdGVwX2hvb2tfZGVmaW5pdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLG9EQUFrRDtBQUNsRCw4REFNcUI7QUFFckIsTUFBcUIsc0JBQXVCLFNBQVEsb0JBQVU7SUFDNUMsYUFBYSxDQUFRO0lBQ3BCLGVBQWUsQ0FBaUI7SUFFakQsWUFBWSxJQUFtRDtRQUM3RCxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDWCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFBO1FBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSwrQkFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDL0QsQ0FBQztJQUVELGlCQUFpQixDQUFDLE1BQXVCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUM5RCxDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQzVCLGFBQWEsR0FDYTtRQUMxQixPQUFPO1lBQ0wsMkJBQTJCLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLDZCQUE2QixDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUM7WUFDcEYsVUFBVSxFQUFFLENBQUMsYUFBYSxDQUFDO1lBQzNCLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDNUIsQ0FBQTtJQUNILENBQUM7Q0FDRjtBQXZCRCx5Q0F1QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSAqIGFzIG1lc3NhZ2VzIGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB7IFBpY2tsZVRhZ0ZpbHRlciB9IGZyb20gJy4uL3BpY2tsZV9maWx0ZXInXG5pbXBvcnQgRGVmaW5pdGlvbiwge1xuICB0eXBlIElEZWZpbml0aW9uLFxuICB0eXBlIElEZWZpbml0aW9uUGFyYW1ldGVycyxcbiAgdHlwZSBJR2V0SW52b2NhdGlvbkRhdGFSZXF1ZXN0LFxuICB0eXBlIElHZXRJbnZvY2F0aW9uRGF0YVJlc3BvbnNlLFxuICB0eXBlIElIb29rRGVmaW5pdGlvbk9wdGlvbnMsXG59IGZyb20gJy4vZGVmaW5pdGlvbidcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVGVzdFN0ZXBIb29rRGVmaW5pdGlvbiBleHRlbmRzIERlZmluaXRpb24gaW1wbGVtZW50cyBJRGVmaW5pdGlvbiB7XG4gIHB1YmxpYyByZWFkb25seSB0YWdFeHByZXNzaW9uOiBzdHJpbmdcbiAgcHJpdmF0ZSByZWFkb25seSBwaWNrbGVUYWdGaWx0ZXI6IFBpY2tsZVRhZ0ZpbHRlclxuXG4gIGNvbnN0cnVjdG9yKGRhdGE6IElEZWZpbml0aW9uUGFyYW1ldGVyczxJSG9va0RlZmluaXRpb25PcHRpb25zPikge1xuICAgIHN1cGVyKGRhdGEpXG4gICAgdGhpcy50YWdFeHByZXNzaW9uID0gZGF0YS5vcHRpb25zLnRhZ3NcbiAgICB0aGlzLnBpY2tsZVRhZ0ZpbHRlciA9IG5ldyBQaWNrbGVUYWdGaWx0ZXIoZGF0YS5vcHRpb25zLnRhZ3MpXG4gIH1cblxuICBhcHBsaWVzVG9UZXN0Q2FzZShwaWNrbGU6IG1lc3NhZ2VzLlBpY2tsZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnBpY2tsZVRhZ0ZpbHRlci5tYXRjaGVzQWxsVGFnRXhwcmVzc2lvbnMocGlja2xlKVxuICB9XG5cbiAgYXN5bmMgZ2V0SW52b2NhdGlvblBhcmFtZXRlcnMoe1xuICAgIGhvb2tQYXJhbWV0ZXIsXG4gIH06IElHZXRJbnZvY2F0aW9uRGF0YVJlcXVlc3QpOiBQcm9taXNlPElHZXRJbnZvY2F0aW9uRGF0YVJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGdldEludmFsaWRDb2RlTGVuZ3RoTWVzc2FnZTogKCkgPT4gdGhpcy5idWlsZEludmFsaWRDb2RlTGVuZ3RoTWVzc2FnZSgnMCBvciAxJywgJzInKSxcbiAgICAgIHBhcmFtZXRlcnM6IFtob29rUGFyYW1ldGVyXSxcbiAgICAgIHZhbGlkQ29kZUxlbmd0aHM6IFswLCAxLCAyXSxcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -16,4 +16,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./paths"), exports);
18
18
  __exportStar(require("./types"), exports);
19
- //# sourceMappingURL=index.js.map
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGF0aHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDBDQUF1QjtBQUN2QiwwQ0FBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3BhdGhzJ1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcydcbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { ILogger } from '../environment';
2
- import { ISourcesCoordinates, ISupportCodeCoordinates } from '../api';
3
- import { IResolvedPaths } from './types';
1
+ import type { ISourcesCoordinates, ISupportCodeCoordinates } from '../api';
2
+ import type { ILogger } from '../environment';
3
+ import type { IResolvedPaths } from './types';
4
4
  export declare function resolvePaths(logger: ILogger, cwd: string, sources: Pick<ISourcesCoordinates, 'paths'>, support?: ISupportCodeCoordinates): Promise<IResolvedPaths>;
@@ -1,12 +1,44 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
37
  };
5
38
  Object.defineProperty(exports, "__esModule", { value: true });
6
39
  exports.resolvePaths = resolvePaths;
40
+ const promises_1 = __importStar(require("node:fs/promises"));
7
41
  const node_path_1 = __importDefault(require("node:path"));
8
- const glob_1 = require("glob");
9
- const fs_1 = __importDefault(require("mz/fs"));
10
42
  async function resolvePaths(logger, cwd, sources, support = {
11
43
  requireModules: [],
12
44
  requirePaths: [],
@@ -28,16 +60,11 @@ async function resolvePaths(logger, cwd, sources, support = {
28
60
  }
29
61
  async function expandPaths(cwd, unexpandedPaths, defaultExtension) {
30
62
  const expandedPaths = await Promise.all(unexpandedPaths.map(async (unexpandedPath) => {
31
- const matches = await (0, glob_1.glob)(unexpandedPath, {
32
- absolute: true,
33
- windowsPathsNoEscape: true,
34
- cwd,
35
- });
36
- const expanded = await Promise.all(matches.map(async (match) => {
63
+ const matches = await Array.fromAsync((0, promises_1.glob)(unexpandedPath, { cwd }));
64
+ const expanded = await Promise.all(matches.map(async (matchRelative) => {
65
+ const match = node_path_1.default.resolve(cwd, matchRelative);
37
66
  if (node_path_1.default.extname(match) === '') {
38
- return (0, glob_1.glob)(`${match}/**/*${defaultExtension}`, {
39
- windowsPathsNoEscape: true,
40
- });
67
+ return Array.fromAsync((0, promises_1.glob)(`${match}/**/*${defaultExtension}`));
41
68
  }
42
69
  return [match];
43
70
  }));
@@ -52,7 +79,7 @@ async function getUnexpandedSourcePaths(cwd, args) {
52
79
  const filename = node_path_1.default.basename(arg);
53
80
  if (filename[0] === '@') {
54
81
  const filePath = node_path_1.default.join(cwd, arg);
55
- const content = await fs_1.default.readFile(filePath, 'utf8');
82
+ const content = await promises_1.default.readFile(filePath, 'utf8');
56
83
  return content.split('\n').map((x) => x.trim());
57
84
  }
58
85
  return [arg];
@@ -86,18 +113,15 @@ async function expandSourcePaths(cwd, featurePaths) {
86
113
  return await expandPaths(cwd, featurePaths, '.feature');
87
114
  }
88
115
  async function deriveSupportPaths(cwd, featurePaths, unexpandedRequirePaths, unexpandedImportPaths) {
89
- if (unexpandedRequirePaths.length === 0 &&
90
- unexpandedImportPaths.length === 0) {
116
+ if (unexpandedRequirePaths.length === 0 && unexpandedImportPaths.length === 0) {
91
117
  const defaultPaths = getFeatureDirectoryPaths(cwd, featurePaths);
92
118
  const importPaths = await expandPaths(cwd, defaultPaths, '.@(js|cjs|mjs)');
93
119
  return { requirePaths: [], importPaths };
94
120
  }
95
- const requirePaths = unexpandedRequirePaths.length > 0
96
- ? await expandPaths(cwd, unexpandedRequirePaths, '.js')
97
- : [];
121
+ const requirePaths = unexpandedRequirePaths.length > 0 ? await expandPaths(cwd, unexpandedRequirePaths, '.js') : [];
98
122
  const importPaths = unexpandedImportPaths.length > 0
99
123
  ? await expandPaths(cwd, unexpandedImportPaths, '.@(js|cjs|mjs)')
100
124
  : [];
101
125
  return { requirePaths, importPaths };
102
126
  }
103
- //# sourceMappingURL=paths.js.map
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGF0aHMvcGF0aHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFNQSxvQ0E0QkM7QUFsQ0QsNkRBQTJDO0FBQzNDLDBEQUE0QjtBQUtyQixLQUFLLFVBQVUsWUFBWSxDQUNoQyxNQUFlLEVBQ2YsR0FBVyxFQUNYLE9BQTJDLEVBQzNDLFVBQW1DO0lBQ2pDLGNBQWMsRUFBRSxFQUFFO0lBQ2xCLFlBQVksRUFBRSxFQUFFO0lBQ2hCLFdBQVcsRUFBRSxFQUFFO0lBQ2YsT0FBTyxFQUFFLEVBQUU7Q0FDWjtJQUVELE1BQU0scUJBQXFCLEdBQUcsTUFBTSx3QkFBd0IsQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2hGLE1BQU0sV0FBVyxHQUFhLE1BQU0saUJBQWlCLENBQUMsR0FBRyxFQUFFLHFCQUFxQixDQUFDLENBQUE7SUFDakYsTUFBTSxDQUFDLEtBQUssQ0FBQyw0Q0FBNEMsRUFBRSxXQUFXLENBQUMsQ0FBQTtJQUN2RSxNQUFNLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxHQUFHLE1BQU0sa0JBQWtCLENBQzVELEdBQUcsRUFDSCxXQUFXLEVBQ1gsT0FBTyxDQUFDLFlBQVksRUFDcEIsT0FBTyxDQUFDLFdBQVcsQ0FDcEIsQ0FBQTtJQUNELE1BQU0sQ0FBQyxLQUFLLENBQUMsbUVBQW1FLEVBQUUsWUFBWSxDQUFDLENBQUE7SUFDL0YsTUFBTSxDQUFDLEtBQUssQ0FBQyxrRUFBa0UsRUFBRSxXQUFXLENBQUMsQ0FBQTtJQUM3RixPQUFPO1FBQ0wscUJBQXFCLEVBQUUscUJBQXFCO1FBQzVDLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLFlBQVk7UUFDWixXQUFXO0tBQ1osQ0FBQTtBQUNILENBQUM7QUFFRCxLQUFLLFVBQVUsV0FBVyxDQUN4QixHQUFXLEVBQ1gsZUFBeUIs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QyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUE7UUFDaEUsTUFBTSxXQUFXLEdBQUcsTUFBTSxXQUFXLENBQUMsR0FBRyxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxDQUFBO0lBQzFDLENBQUM7SUFDRCxNQUFNLFlBQVksR0FDaEIsc0JBQXNCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxXQUFXLENBQUMsR0FBRyxFQUFFLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7SUFDaEcsTUFBTSxXQUFXLEdBQ2YscUJBQXFCLENBQUMsTUFBTSxHQUFHLENBQUM7UUFDOUIsQ0FBQyxDQUFDLE1BQU0sV0FBVyxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsRUFBRSxnQkFBZ0IsQ0FBQztRQUNqRSxDQUFDLENBQUMsRUFBRSxDQUFBO0lBQ1IsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsQ0FBQTtBQUN0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGZzLCB7IGdsb2IgfSBmcm9tICdub2RlOmZzL3Byb21pc2VzJ1xuaW1wb3J0IHBhdGggZnJvbSAnbm9kZTpwYXRoJ1xuaW1wb3J0IHR5cGUgeyBJU291cmNlc0Nvb3JkaW5hdGVzLCBJU3VwcG9ydENvZGVDb29yZGluYXRlcyB9IGZyb20gJy4uL2FwaSdcbmltcG9ydCB0eXBlIHsgSUxvZ2dlciB9IGZyb20gJy4uL2Vudmlyb25tZW50J1xuaW1wb3J0IHR5cGUgeyBJUmVzb2x2ZWRQYXRocyB9IGZyb20gJy4vdHlwZXMnXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZXNvbHZlUGF0aHMoXG4gIGxvZ2dlcjogSUxvZ2dlcixcbiAgY3dkOiBzdHJpbmcsXG4gIHNvdXJjZXM6IFBpY2s8SVNvdXJjZXNDb29yZGluYXRlcywgJ3BhdGhzJz4sXG4gIHN1cHBvcnQ6IElTdXBwb3J0Q29kZUNvb3JkaW5hdGVzID0ge1xuICAgIHJlcXVpcmVNb2R1bGVzOiBbXSxcbiAgICByZXF1aXJlUGF0aHM6IFtdLFxuICAgIGltcG9ydFBhdGhzOiBbXSxcbiAgICBsb2FkZXJzOiBbXSxcbiAgfVxuKTogUHJvbWlzZTxJUmVzb2x2ZWRQYXRocz4ge1xuICBjb25zdCB1bmV4cGFuZGVkU291cmNlUGF0aHMgPSBhd2FpdCBnZXRVbmV4cGFuZGVkU291cmNlUGF0aHMoY3dkLCBzb3VyY2VzLnBhdGhzKVxuICBjb25zdCBzb3VyY2VQYXRoczogc3RyaW5nW10gPSBhd2FpdCBleHBhbmRTb3VyY2VQYXRocyhjd2QsIHVuZXhwYW5kZWRTb3VyY2VQYXRocylcbiAgbG9nZ2VyLmRlYnVnKCdGb3VuZCBzb3VyY2UgZmlsZXMgYmFzZWQgb24gY29uZmlndXJhdGlvbjonLCBzb3VyY2VQYXRocylcbiAgY29uc3QgeyByZXF1aXJlUGF0aHMsIGltcG9ydFBhdGhzIH0gPSBhd2FpdCBkZXJpdmVTdXBwb3J0UGF0aHMoXG4gICAgY3dkLFxuICAgIHNvdXJjZVBhdGhzLFxuICAgIHN1cHBvcnQucmVxdWlyZVBhdGhzLFxuICAgIHN1cHBvcnQuaW1wb3J0UGF0aHNcbiAgKVxuICBsb2dnZXIuZGVidWcoJ0ZvdW5kIHN1cHBvcnQgZmlsZXMgdG8gbG9hZCB2aWEgYHJlcXVpcmVgIGJhc2VkIG9uIGNvbmZpZ3VyYXRpb246JywgcmVxdWlyZVBhdGhzKVxuICBsb2dnZXIuZGVidWcoJ0ZvdW5kIHN1cHBvcnQgZmlsZXMgdG8gbG9hZCB2aWEgYGltcG9ydGAgYmFzZWQgb24gY29uZmlndXJhdGlvbjonLCBpbXBvcnRQYXRocylcbiAgcmV0dXJuIHtcbiAgICB1bmV4cGFuZGVkU291cmNlUGF0aHM6IHVuZXhwYW5kZWRTb3VyY2VQYXRocyxcbiAgICBzb3VyY2VQYXRoczogc291cmNlUGF0aHMsXG4gICAgcmVxdWlyZVBhdGhzLFxuICAgIGltcG9ydFBhdGhzLFxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGV4cGFuZFBhdGhzKFxuICBjd2Q6IHN0cmluZyxcbiAgdW5leHBhbmRlZFBhdGhzOiBzdHJpbmdbXSxcbiAgZGVmYXVsdEV4dGVuc2lvbjogc3RyaW5nXG4pOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gIGNvbnN0IGV4cGFuZGVkUGF0aHMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICB1bmV4cGFuZGVkUGF0aHMubWFwKGFzeW5jICh1bmV4cGFuZGVkUGF0aCkgPT4ge1xuICAgICAgY29uc3QgbWF0Y2hlczogc3RyaW5nW10gPSBhd2FpdCBBcnJheS5mcm9tQXN5bmMoZ2xvYih1bmV4cGFuZGVkUGF0aCwgeyBjd2QgfSkpXG4gICAgICBjb25zdCBleHBhbmRlZDogc3RyaW5nW11bXSA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICBtYXRjaGVzLm1hcChhc3luYyAobWF0Y2hSZWxhdGl2ZSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG1hdGNoID0gcGF0aC5yZXNvbHZlKGN3ZCwgbWF0Y2hSZWxhdGl2ZSlcbiAgICAgICAgICBpZiAocGF0aC5leHRuYW1lKG1hdGNoKSA9PT0gJycpIHtcbiAgICAgICAgICAgIHJldHVybiBBcnJheS5mcm9tQXN5bmMoZ2xvYihgJHttYXRjaH0vKiovKiR7ZGVmYXVsdEV4dGVuc2lvbn1gKSlcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIFttYXRjaF1cbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIHJldHVybiBleHBhbmRlZC5mbGF0KCkuc29ydCgpXG4gICAgfSlcbiAgKVxuICBjb25zdCBub3JtYWxpemVkID0gZXhwYW5kZWRQYXRocy5mbGF0KCkubWFwKCh4KSA9PiBwYXRoLm5vcm1hbGl6ZSh4KSlcbiAgcmV0dXJuIFsuLi5uZXcgU2V0KG5vcm1hbGl6ZWQpXVxufVxuXG5hc3luYyBmdW5jdGlvbiBnZXRVbmV4cGFuZGVkU291cmNlUGF0aHMoY3dkOiBzdHJpbmcsIGFyZ3M6IHN0cmluZ1tdKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICBpZiAoYXJncy5sZW5ndGggPiAwKSB7XG4gICAgY29uc3QgbmVzdGVkRmVhdHVyZVBhdGhzID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICBhcmdzLm1hcChhc3luYyAoYXJnKSA9PiB7XG4gICAgICAgIGNvbnN0IGZpbGVuYW1lID0gcGF0aC5iYXNlbmFtZShhcmcpXG4gICAgICAgIGlmIChmaWxlbmFtZVswXSA9PT0gJ0AnKSB7XG4gICAgICAgICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oY3dkLCBhcmcpXG4gICAgICAgICAgY29uc3QgY29udGVudCA9IGF3YWl0IGZzLnJlYWRGaWxlKGZpbGVQYXRoLCAndXRmOCcpXG4gICAgICAgICAgcmV0dXJuIGNvbnRlbnQuc3BsaXQoJ1xcbicpLm1hcCgoeCkgPT4geC50cmltKCkpXG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIFthcmddXG4gICAgICB9KVxuICAgIClcbiAgICBjb25zdCBmZWF0dXJlUGF0aHMgPSBuZXN0ZWRGZWF0dXJlUGF0aHMuZmxhdCgpXG4gICAgaWYgKGZlYXR1cmVQYXRocy5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gZmVhdHVyZVBhdGhzLmZpbHRlcigoeCkgPT4geCAhPT0gJycpXG4gICAgfVxuICB9XG4gIHJldHVybiBbJ2ZlYXR1cmVzLyoqLyoue2ZlYXR1cmUsZmVhdHVyZS5tZH0nXVxufVxuXG5mdW5jdGlvbiBnZXRGZWF0dXJlRGlyZWN0b3J5UGF0aHMoY3dkOiBzdHJpbmcsIGZlYXR1cmVQYXRoczogc3RyaW5nW10pOiBzdHJpbmdbXSB7XG4gIGNvbnN0IGZlYXR1cmVEaXJzID0gZmVhdHVyZVBhdGhzLm1hcCgoZmVhdHVyZVBhdGgpID0+IHtcbiAgICBsZXQgZmVhdHVyZURpciA9IHBhdGguZGlybmFtZShmZWF0dXJlUGF0aClcbiAgICBsZXQgY2hpbGREaXI6IHN0cmluZ1xuICAgIGxldCBwYXJlbnREaXIgPSBmZWF0dXJlRGlyXG4gICAgd2hpbGUgKGNoaWxkRGlyICE9PSBwYXJlbnREaXIpIHtcbiAgICAgIGNoaWxkRGlyID0gcGFyZW50RGlyXG4gICAgICBwYXJlbnREaXIgPSBwYXRoLmRpcm5hbWUoY2hpbGREaXIpXG4gICAgICBpZiAocGF0aC5iYXNlbmFtZShwYXJlbnREaXIpID09PSAnZmVhdHVyZXMnKSB7XG4gICAgICAgIGZlYXR1cmVEaXIgPSBwYXJlbnREaXJcbiAgICAgICAgYnJlYWtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHBhdGgucmVsYXRpdmUoY3dkLCBmZWF0dXJlRGlyKVxuICB9KVxuICByZXR1cm4gWy4uLm5ldyBTZXQoZmVhdHVyZURpcnMpXVxufVxuXG5hc3luYyBmdW5jdGlvbiBleHBhbmRTb3VyY2VQYXRocyhjd2Q6IHN0cmluZywgZmVhdHVyZVBhdGhzOiBzdHJpbmdbXSk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgZmVhdHVyZVBhdGhzID0gZmVhdHVyZVBhdGhzLm1hcCgocCkgPT4gcC5yZXBsYWNlKC8oOlxcZCspKiQvZywgJycpKSAvLyBTdHJpcCBsaW5lIG51bWJlcnNcbiAgcmV0dXJuIGF3YWl0IGV4cGFuZFBhdGhzKGN3ZCwgZmVhdHVyZVBhdGhzLCAnLmZlYXR1cmUnKVxufVxuXG5hc3luYyBmdW5jdGlvbiBkZXJpdmVTdXBwb3J0UGF0aHMoXG4gIGN3ZDogc3RyaW5nLFxuICBmZWF0dXJlUGF0aHM6IHN0cmluZ1tdLFxuICB1bmV4cGFuZGVkUmVxdWlyZVBhdGhzOiBzdHJpbmdbXSxcbiAgdW5leHBhbmRlZEltcG9ydFBhdGhzOiBzdHJpbmdbXVxuKTogUHJvbWlzZTx7XG4gIHJlcXVpcmVQYXRoczogc3RyaW5nW11cbiAgaW1wb3J0UGF0aHM6IHN0cmluZ1tdXG59PiB7XG4gIGlmICh1bmV4cGFuZGVkUmVxdWlyZVBhdGhzLmxlbmd0aCA9PT0gMCAmJiB1bmV4cGFuZGVkSW1wb3J0UGF0aHMubGVuZ3RoID09PSAwKSB7XG4gICAgY29uc3QgZGVmYXVsdFBhdGhzID0gZ2V0RmVhdHVyZURpcmVjdG9yeVBhdGhzKGN3ZCwgZmVhdHVyZVBhdGhzKVxuICAgIGNvbnN0IGltcG9ydFBhdGhzID0gYXdhaXQgZXhwYW5kUGF0aHMoY3dkLCBkZWZhdWx0UGF0aHMsICcuQChqc3xjanN8bWpzKScpXG4gICAgcmV0dXJuIHsgcmVxdWlyZVBhdGhzOiBbXSwgaW1wb3J0UGF0aHMgfVxuICB9XG4gIGNvbnN0IHJlcXVpcmVQYXRocyA9XG4gICAgdW5leHBhbmRlZFJlcXVpcmVQYXRocy5sZW5ndGggPiAwID8gYXdhaXQgZXhwYW5kUGF0aHMoY3dkLCB1bmV4cGFuZGVkUmVxdWlyZVBhdGhzLCAnLmpzJykgOiBbXVxuICBjb25zdCBpbXBvcnRQYXRocyA9XG4gICAgdW5leHBhbmRlZEltcG9ydFBhdGhzLmxlbmd0aCA+IDBcbiAgICAgID8gYXdhaXQgZXhwYW5kUGF0aHMoY3dkLCB1bmV4cGFuZGVkSW1wb3J0UGF0aHMsICcuQChqc3xjanN8bWpzKScpXG4gICAgICA6IFtdXG4gIHJldHVybiB7IHJlcXVpcmVQYXRocywgaW1wb3J0UGF0aHMgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGF0aHMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUGF0aHMgdGhhdCB3b2xsIGJlIHVzZWQgdG8gbG9hZCBmZWF0dXJlIGZpbGVzIGFuZCB1c2VyIGNvZGVcbiAqIEBwdWJsaWNcbiAqIEByZW1hcmtzXG4gKiBUaGVzZSB2YWx1ZXMgYXJlIHRoZSByZXN1bHQgb2YgcHJlLXByb2Nlc3NpbmcgdG8gZXhwYW5kIGdsb2JzLCBleHBhbmRcbiAqIGRpcmVjdG9yeSByZWZlcmVuY2VzLCBhbmQgYXBwbHkgZGVmYXVsdHMgd2hlcmUgYXBwbGljYWJsZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJUmVzb2x2ZWRQYXRocyB7XG4gIHVuZXhwYW5kZWRTb3VyY2VQYXRoczogc3RyaW5nW11cbiAgc291cmNlUGF0aHM6IHN0cmluZ1tdXG4gIHJlcXVpcmVQYXRoczogc3RyaW5nW11cbiAgaW1wb3J0UGF0aHM6IHN0cmluZ1tdXG59XG4iXX0=
@@ -15,7 +15,7 @@ export default class PickleFilter {
15
15
  private readonly lineFilter;
16
16
  private readonly nameFilter;
17
17
  private readonly tagFilter;
18
- constructor({ cwd, featurePaths, names, tagExpression, }: IPickleFilterOptions);
18
+ constructor({ cwd, featurePaths, names, tagExpression }: IPickleFilterOptions);
19
19
  matches({ gherkinDocument, pickle, }: {
20
20
  gherkinDocument: IGherkinDocument;
21
21
  pickle: IPickle;
@@ -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=
@@ -1,2 +1,2 @@
1
- export * from './types';
2
1
  export * from './plugin_manager';
2
+ export * from './types';
@@ -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
- //# sourceMappingURL=index.js.map
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;
@@ -129,4 +129,4 @@ async function wrapErrorAsync(fn, message) {
129
129
  throw new Error(message, { cause: error });
130
130
  }
131
131
  }
132
- //# sourceMappingURL=plugin_manager.js.map
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luX21hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGx1Z2luL3BsdWdpbl9tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXVDQSxNQUFhLGFBQWE7SUFZSztJQVhaLFFBQVEsR0FBb0I7UUFDM0MsT0FBTyxFQUFFLEVBQUU7UUFDWCxlQUFlLEVBQUUsRUFBRTtRQUNuQixhQUFhLEVBQUUsRUFBRTtLQUNsQixDQUFBO0lBQ2dCLFlBQVksR0FBd0I7UUFDbkQsZ0JBQWdCLEVBQUUsRUFBRTtRQUNwQixlQUFlLEVBQUUsRUFBRTtLQUNwQixDQUFBO0lBQ08sVUFBVSxHQUFxQixFQUFFLENBQUE7SUFFekMsWUFBNkIsV0FBOEI7UUFBOUIsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO0lBQUcsQ0FBQztJQUV2RCxLQUFLLENBQUMsZUFBZSxDQUMzQixLQUFRLEVBQ1IsT0FBbUMsRUFDbkMsU0FBa0I7UUFFbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxLQUFLLEdBQUcsQ0FBQyxDQUFBO1FBQ3pFLENBQUM7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FBQztZQUN4QixPQUFPO1lBQ1AsU0FBUztTQUNWLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTyxLQUFLLENBQUMsbUJBQW1CLENBQy9CLEtBQVEsRUFDUixXQUFzQyxFQUN0QyxTQUFrQjtRQUVsQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0RBQWtELEtBQUssR0FBRyxDQUFDLENBQUE7UUFDN0UsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQzVCLFdBQVc7WUFDWCxTQUFTO1NBQ1YsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhLENBQ2pCLE1BQW9DLEVBQ3BDLE9BQW9CLEVBQ3BCLE1BQTZCLEVBQzdCLEtBQTRDLEVBQzVDLFNBQWtCLEVBQ2xCLFNBQWtCO1FBRWxCLE1BQU0sU0FBUyxHQUFHLE1BQU0sTUFBTSxDQUFDLFNBQVMsQ0FBQztZQUN2QyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsU0FBUyxDQUFDO1lBQ25FLE9BQU8sRUFBRSxNQUFNLENBQUMsVUFBVTtnQkFDeEIsQ0FBQyxDQUFDLENBQUUsT0FBZSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSyxFQUFrQixDQUFDO2dCQUM5RCxDQUFDLENBQUMsT0FBTztZQUNYLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU07WUFDL0IsTUFBTTtZQUNOLEtBQUs7WUFDTCxTQUFTO1NBQ1YsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxPQUFPLFNBQVMsS0FBSyxVQUFVLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztnQkFDbkIsU0FBUyxFQUFFLFNBQVM7Z0JBQ3BCLFNBQVM7YUFDVixDQUFDLENBQUE7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyx1QkFBdUIsQ0FDM0IsU0FBMEIsRUFDMUIsTUFBMkIsRUFDM0IsT0FBb0IsRUFDcEIsU0FBa0I7UUFFbEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQ2xGLE1BQU0sSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFBO0lBQ3hELENBQUM7SUFFRCxLQUFLLENBQUMsdUJBQXVCLENBQzNCLFNBQTBCLEVBQzFCLE1BQTJCLEVBQzNCLE9BQW9CO1FBRXBCLE1BQU0sT0FBTyxHQUFHO1lBQ2QsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUM7WUFDMUQsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUMzQixDQUFBO1FBQ0QsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQTtJQUM3QyxDQUFDO0lBRU8sS0FBSyxDQUFDLGVBQWUsQ0FDM0IsTUFBMkIsRUFDM0IsT0FBd0MsRUFDeEMsU0FBa0I7UUFFbEIsTUFBTSxTQUFTLEdBQUcsTUFBTSxjQUFjLENBQ3BDLEtBQUssSUFBSSxFQUFFLENBQUMsTUFBTSxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxFQUM3QyxHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQzFELENBQUE7UUFDRCxJQUFJLE9BQU8sU0FBUyxLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ3BDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO2dCQUNuQixTQUFTLEVBQUUsU0FBUztnQkFDcEIsU0FBUzthQUNWLENBQUMsQ0FBQTtRQUNKLENBQUM7SUFDSCxDQUFDO0lBRU8sc0JBQXNCLENBQzVCLFNBQTBCLEVBQzFCLE1BQXlELEVBQ3pELE9BQW9CLEVBQ3BCLFNBQWtCO1FBRWxCLE9BQU87WUFDTCxTQUFTO1lBQ1QsRUFBRSxFQUFFLENBQWdDLEtBQVEsRUFBRSxPQUFtQyxFQUFFLEVBQUUsQ0FDbkYsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsQ0FBQztZQUNqRCxTQUFTLEVBQUUsQ0FDVCxLQUFRLEVBQ1IsV0FBc0MsRUFDdEMsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLFNBQVMsQ0FBQztZQUM1RCxPQUFPLEVBQ0wsWUFBWSxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVTtnQkFDekMsQ0FBQyxDQUFDLENBQUUsT0FBZSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSyxFQUFrQixDQUFDO2dCQUM5RCxDQUFDLENBQUMsT0FBTztZQUNiLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU07WUFDL0IsV0FBVyxFQUFFO2dCQUNYLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUc7Z0JBQ3pCLE1BQU0sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU07Z0JBQy9CLEdBQUcsRUFBRSxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUU7YUFDakM7U0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBZ0MsS0FBUSxFQUFFLEtBQWdDO1FBQzVFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRTtZQUN0RCxTQUFTLENBQ1AsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUNwQixHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMscUNBQXFDLEtBQUssU0FBUyxDQUMvRSxDQUFBO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLFNBQVMsQ0FDYixLQUFRLEVBQ1IsS0FBb0M7UUFFcEMsSUFBSSxXQUFXLEdBQUcsS0FBSyxDQUFBO1FBQ3ZCLEtBQUssTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbEUsTUFBTSxRQUFRLEdBQUcsTUFBTSxjQUFjLENBQ25DLEtBQUssSUFBSSxFQUFFLENBQUMsTUFBTSxXQUFXLENBQUMsV0FBVyxDQUFDLEVBQzFDLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxpQ0FBaUMsS0FBSyxhQUFhLENBQy9FLENBQUE7WUFDRCxJQUFJLE9BQU8sUUFBUSxLQUFLLFdBQVcsRUFBRSxDQUFDO2dCQUNwQyxXQUFXLEdBQUcsUUFBUSxDQUFBO1lBQ3hCLENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxXQUFXLENBQUE7SUFDcEIsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFPO1FBQ1gsS0FBSyxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN2RCxNQUFNLGNBQWMsQ0FDbEIsS0FBSyxJQUFJLEVBQUUsQ0FBQyxNQUFNLFNBQVMsRUFBRSxFQUM3QixHQUFHLGFBQWEsQ0FBQyxTQUFTLENBQUMsaUNBQWlDLENBQzdELENBQUE7UUFDSCxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBeEtELHNDQXdLQztBQUVELFNBQVMsYUFBYSxDQUFDLFNBQWtCO0lBQ3ZDLE9BQU8sU0FBUyxDQUFDLENBQUMsQ0FBQyxXQUFXLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUE7QUFDekQsQ0FBQztBQUVELFNBQVMsU0FBUyxDQUFJLEVBQVcsRUFBRSxPQUFlO0lBQ2hELElBQUksQ0FBQztRQUNILE9BQU8sRUFBRSxFQUFFLENBQUE7SUFDYixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUE7SUFDNUMsQ0FBQztBQUNILENBQUM7QUFFRCxLQUFLLFVBQVUsY0FBYyxDQUFJLEVBQW9CLEVBQUUsT0FBZTtJQUNwRSxJQUFJLENBQUM7UUFDSCxPQUFPLE1BQU0sRUFBRSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFBO0lBQzVDLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBVc2FibGVFbnZpcm9ubWVudCB9IGZyb20gJy4uL2Vudmlyb25tZW50J1xuaW1wb3J0IHR5cGUge1xuICBDb29yZGluYXRvckNvbnRleHQsXG4gIENvb3JkaW5hdG9yRXZlbnRIYW5kbGVyLFxuICBDb29yZGluYXRvckV2ZW50S2V5LFxuICBDb29yZGluYXRvckV2ZW50VmFsdWVzLFxuICBDb29yZGluYXRvclRyYW5zZm9ybWVyLFxuICBDb29yZGluYXRvclRyYW5zZm9ybUtleSxcbiAgQ29vcmRpbmF0b3JUcmFuc2Zvcm1WYWx1ZXMsXG4gIEZvcm1hdHRlclBsdWdpbixcbiAgSW50ZXJuYWxQbHVnaW4sXG4gIFBsdWdpbixcbiAgUGx1Z2luQ2xlYW51cCxcbiAgUGx1Z2luT3BlcmF0aW9uLFxufSBmcm9tICcuL3R5cGVzJ1xuXG50eXBlIFNvdXJjZWRFdmVudEhhbmRsZXI8SyBleHRlbmRzIENvb3JkaW5hdG9yRXZlbnRLZXk+ID0ge1xuICBoYW5kbGVyOiBDb29yZGluYXRvckV2ZW50SGFuZGxlcjxLPlxuICBzcGVjaWZpZXI/OiBzdHJpbmdcbn1cblxudHlwZSBTb3VyY2VkVHJhbnNmb3JtZXI8SyBleHRlbmRzIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5PiA9IHtcbiAgdHJhbnNmb3JtZXI6IENvb3JkaW5hdG9yVHJhbnNmb3JtZXI8Sz5cbiAgc3BlY2lmaWVyPzogc3RyaW5nXG59XG5cbnR5cGUgU291cmNlZENsZWFudXAgPSB7XG4gIGNsZWFudXBGbjogUGx1Z2luQ2xlYW51cFxuICBzcGVjaWZpZXI/OiBzdHJpbmdcbn1cblxudHlwZSBIYW5kbGVyUmVnaXN0cnkgPSB7XG4gIFtLIGluIENvb3JkaW5hdG9yRXZlbnRLZXldOiBBcnJheTxTb3VyY2VkRXZlbnRIYW5kbGVyPEs+PlxufVxuXG50eXBlIFRyYW5zZm9ybWVyUmVnaXN0cnkgPSB7XG4gIFtLIGluIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5XTogQXJyYXk8U291cmNlZFRyYW5zZm9ybWVyPEs+PlxufVxuXG5leHBvcnQgY2xhc3MgUGx1Z2luTWFuYWdlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaGFuZGxlcnM6IEhhbmRsZXJSZWdpc3RyeSA9IHtcbiAgICBtZXNzYWdlOiBbXSxcbiAgICAncGF0aHM6cmVzb2x2ZSc6IFtdLFxuICAgICdwdWJsaXNoOnVybCc6IFtdLFxuICB9XG4gIHByaXZhdGUgcmVhZG9ubHkgdHJhbnNmb3JtZXJzOiBUcmFuc2Zvcm1lclJlZ2lzdHJ5ID0ge1xuICAgICdwaWNrbGVzOmZpbHRlcic6IFtdLFxuICAgICdwaWNrbGVzOm9yZGVyJzogW10sXG4gIH1cbiAgcHJpdmF0ZSBjbGVhbnVwRm5zOiBTb3VyY2VkQ2xlYW51cFtdID0gW11cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVudmlyb25tZW50OiBVc2FibGVFbnZpcm9ubWVudCkge31cblxuICBwcml2YXRlIGFzeW5jIHJlZ2lzdGVySGFuZGxlcjxLIGV4dGVuZHMgQ29vcmRpbmF0b3JFdmVudEtleT4oXG4gICAgZXZlbnQ6IEssXG4gICAgaGFuZGxlcjogQ29vcmRpbmF0b3JFdmVudEhhbmRsZXI8Sz4sXG4gICAgc3BlY2lmaWVyPzogc3RyaW5nXG4gICkge1xuICAgIGlmICghdGhpcy5oYW5kbGVyc1tldmVudF0pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHJlZ2lzdGVyIGhhbmRsZXIgZm9yIHVua25vd24gZXZlbnQgXCIke2V2ZW50fVwiYClcbiAgICB9XG4gICAgdGhpcy5oYW5kbGVyc1tldmVudF0ucHVzaCh7XG4gICAgICBoYW5kbGVyLFxuICAgICAgc3BlY2lmaWVyLFxuICAgIH0pXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJlZ2lzdGVyVHJhbnNmb3JtZXI8SyBleHRlbmRzIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5PihcbiAgICBldmVudDogSyxcbiAgICB0cmFuc2Zvcm1lcjogQ29vcmRpbmF0b3JUcmFuc2Zvcm1lcjxLPixcbiAgICBzcGVjaWZpZXI/OiBzdHJpbmdcbiAgKSB7XG4gICAgaWYgKCF0aGlzLnRyYW5zZm9ybWVyc1tldmVudF0pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ2Fubm90IHJlZ2lzdGVyIHRyYW5zZm9ybWVyIGZvciB1bmtub3duIGV2ZW50IFwiJHtldmVudH1cImApXG4gICAgfVxuICAgIHRoaXMudHJhbnNmb3JtZXJzW2V2ZW50XS5wdXNoKHtcbiAgICAgIHRyYW5zZm9ybWVyLFxuICAgICAgc3BlY2lmaWVyLFxuICAgIH0pXG4gIH1cblxuICBhc3luYyBpbml0Rm9ybWF0dGVyPE9wdGlvbnNUeXBlPihcbiAgICBwbHVnaW46IEZvcm1hdHRlclBsdWdpbjxPcHRpb25zVHlwZT4sXG4gICAgb3B0aW9uczogT3B0aW9uc1R5cGUsXG4gICAgc3RyZWFtOiBOb2RlSlMuV3JpdGFibGVTdHJlYW0sXG4gICAgd3JpdGU6IChidWZmZXI6IHN0cmluZyB8IFVpbnQ4QXJyYXkpID0+IHZvaWQsXG4gICAgZGlyZWN0b3J5Pzogc3RyaW5nLFxuICAgIHNwZWNpZmllcj86IHN0cmluZ1xuICApIHtcbiAgICBjb25zdCBjbGVhbnVwRm4gPSBhd2FpdCBwbHVnaW4uZm9ybWF0dGVyKHtcbiAgICAgIG9uOiAoa2V5LCBoYW5kbGVyKSA9PiB0aGlzLnJlZ2lzdGVySGFuZGxlcihrZXksIGhhbmRsZXIsIHNwZWNpZmllciksXG4gICAgICBvcHRpb25zOiBwbHVnaW4ub3B0aW9uc0tleVxuICAgICAgICA/ICgob3B0aW9ucyBhcyBhbnkpW3BsdWdpbi5vcHRpb25zS2V5XSA/PyAoe30gYXMgT3B0aW9uc1R5cGUpKVxuICAgICAgICA6IG9wdGlvbnMsXG4gICAgICBsb2dnZXI6IHRoaXMuZW52aXJvbm1lbnQubG9nZ2VyLFxuICAgICAgc3RyZWFtLFxuICAgICAgd3JpdGUsXG4gICAgICBkaXJlY3RvcnksXG4gICAgfSlcbiAgICBpZiAodHlwZW9mIGNsZWFudXBGbiA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhpcy5jbGVhbnVwRm5zLnB1c2goe1xuICAgICAgICBjbGVhbnVwRm46IGNsZWFudXBGbixcbiAgICAgICAgc3BlY2lmaWVyLFxuICAgICAgfSlcbiAgICB9XG4gIH1cblxuICBhc3luYyBpbml0Q29vcmRpbmF0b3JFeHRlcm5hbDxPcHRpb25zVHlwZT4oXG4gICAgb3BlcmF0aW9uOiBQbHVnaW5PcGVyYXRpb24sXG4gICAgcGx1Z2luOiBQbHVnaW48T3B0aW9uc1R5cGU+LFxuICAgIG9wdGlvbnM6IE9wdGlvbnNUeXBlLFxuICAgIHNwZWNpZmllcj86IHN0cmluZ1xuICApIHtcbiAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5tYWtlQ29vcmRpbmF0b3JDb250ZXh0KG9wZXJhdGlvbiwgcGx1Z2luLCBvcHRpb25zLCBzcGVjaWZpZXIpXG4gICAgYXdhaXQgdGhpcy5pbml0Q29vcmRpbmF0b3IocGx1Z2luLCBjb250ZXh0LCBzcGVjaWZpZXIpXG4gIH1cblxuICBhc3luYyBpbml0Q29vcmRpbmF0b3JJbnRlcm5hbDxPcHRpb25zVHlwZT4oXG4gICAgb3BlcmF0aW9uOiBQbHVnaW5PcGVyYXRpb24sXG4gICAgcGx1Z2luOiBQbHVnaW48T3B0aW9uc1R5cGU+LFxuICAgIG9wdGlvbnM6IE9wdGlvbnNUeXBlXG4gICkge1xuICAgIGNvbnN0IGNvbnRleHQgPSB7XG4gICAgICAuLi50aGlzLm1ha2VDb29yZGluYXRvckNvbnRleHQob3BlcmF0aW9uLCBwbHVnaW4sIG9wdGlvbnMpLFxuICAgICAgZW1pdDogdGhpcy5lbWl0LmJpbmQodGhpcyksXG4gICAgfVxuICAgIGF3YWl0IHRoaXMuaW5pdENvb3JkaW5hdG9yKHBsdWdpbiwgY29udGV4dClcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgaW5pdENvb3JkaW5hdG9yPE9wdGlvbnNUeXBlPihcbiAgICBwbHVnaW46IFBsdWdpbjxPcHRpb25zVHlwZT4sXG4gICAgY29udGV4dDogQ29vcmRpbmF0b3JDb250ZXh0PE9wdGlvbnNUeXBlPixcbiAgICBzcGVjaWZpZXI/OiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3QgY2xlYW51cEZuID0gYXdhaXQgd3JhcEVycm9yQXN5bmMoXG4gICAgICBhc3luYyAoKSA9PiBhd2FpdCBwbHVnaW4uY29vcmRpbmF0b3IoY29udGV4dCksXG4gICAgICBgJHtmb3JtYXRDdWxwcml0KHNwZWNpZmllcil9IGVycm9yZWQgd2hlbiB0cnlpbmcgdG8gaW5pdGBcbiAgICApXG4gICAgaWYgKHR5cGVvZiBjbGVhbnVwRm4gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRoaXMuY2xlYW51cEZucy5wdXNoKHtcbiAgICAgICAgY2xlYW51cEZuOiBjbGVhbnVwRm4sXG4gICAgICAgIHNwZWNpZmllcixcbiAgICAgIH0pXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBtYWtlQ29vcmRpbmF0b3JDb250ZXh0PE9wdGlvbnNUeXBlPihcbiAgICBvcGVyYXRpb246IFBsdWdpbk9wZXJhdGlvbixcbiAgICBwbHVnaW46IFBsdWdpbjxPcHRpb25zVHlwZT4gfCBJbnRlcm5hbFBsdWdpbjxPcHRpb25zVHlwZT4sXG4gICAgb3B0aW9uczogT3B0aW9uc1R5cGUsXG4gICAgc3BlY2lmaWVyPzogc3RyaW5nXG4gICkge1xuICAgIHJldHVybiB7XG4gICAgICBvcGVyYXRpb24sXG4gICAgICBvbjogPEsgZXh0ZW5kcyBDb29yZGluYXRvckV2ZW50S2V5PihldmVudDogSywgaGFuZGxlcjogQ29vcmRpbmF0b3JFdmVudEhhbmRsZXI8Sz4pID0+XG4gICAgICAgIHRoaXMucmVnaXN0ZXJIYW5kbGVyKGV2ZW50LCBoYW5kbGVyLCBzcGVjaWZpZXIpLFxuICAgICAgdHJhbnNmb3JtOiA8SyBleHRlbmRzIENvb3JkaW5hdG9yVHJhbnNmb3JtS2V5PihcbiAgICAgICAgZXZlbnQ6IEssXG4gICAgICAgIHRyYW5zZm9ybWVyOiBDb29yZGluYXRvclRyYW5zZm9ybWVyPEs+XG4gICAgICApID0+IHRoaXMucmVnaXN0ZXJUcmFuc2Zvcm1lcihldmVudCwgdHJhbnNmb3JtZXIsIHNwZWNpZmllciksXG4gICAgICBvcHRpb25zOlxuICAgICAgICAnb3B0aW9uc0tleScgaW4gcGx1Z2luICYmIHBsdWdpbi5vcHRpb25zS2V5XG4gICAgICAgICAgPyAoKG9wdGlvbnMgYXMgYW55KVtwbHVnaW4ub3B0aW9uc0tleV0gPz8gKHt9IGFzIE9wdGlvbnNUeXBlKSlcbiAgICAgICAgICA6IG9wdGlvbnMsXG4gICAgICBsb2dnZXI6IHRoaXMuZW52aXJvbm1lbnQubG9nZ2VyLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgY3dkOiB0aGlzLmVudmlyb25tZW50LmN3ZCxcbiAgICAgICAgc3RkZXJyOiB0aGlzLmVudmlyb25tZW50LnN0ZGVycixcbiAgICAgICAgZW52OiB7IC4uLnRoaXMuZW52aXJvbm1lbnQuZW52IH0sXG4gICAgICB9LFxuICAgIH1cbiAgfVxuXG4gIGVtaXQ8SyBleHRlbmRzIENvb3JkaW5hdG9yRXZlbnRLZXk+KGV2ZW50OiBLLCB2YWx1ZTogQ29vcmRpbmF0b3JFdmVudFZhbHVlc1tLXSk6IHZvaWQge1xuICAgIHRoaXMuaGFuZGxlcnNbZXZlbnRdLmZvckVhY2goKHsgaGFuZGxlciwgc3BlY2lmaWVyIH0pID0+IHtcbiAgICAgIHdyYXBFcnJvcihcbiAgICAgICAgKCkgPT4gaGFuZGxlcih2YWx1ZSksXG4gICAgICAgIGAke2Zvcm1hdEN1bHByaXQoc3BlY2lmaWVyKX0gZXJyb3JlZCB3aGVuIHRyeWluZyB0byBoYW5kbGUgYSBcIiR7ZXZlbnR9XCIgZXZlbnRgXG4gICAgICApXG4gICAgfSlcbiAgfVxuXG4gIGFzeW5jIHRyYW5zZm9ybTxLIGV4dGVuZHMgQ29vcmRpbmF0b3JUcmFuc2Zvcm1LZXk+KFxuICAgIGV2ZW50OiBLLFxuICAgIHZhbHVlOiBDb29yZGluYXRvclRyYW5zZm9ybVZhbHVlc1tLXVxuICApOiBQcm9taXNlPENvb3JkaW5hdG9yVHJhbnNmb3JtVmFsdWVzW0tdPiB7XG4gICAgbGV0IHRyYW5zZm9ybWVkID0gdmFsdWVcbiAgICBmb3IgKGNvbnN0IHsgdHJhbnNmb3JtZXIsIHNwZWNpZmllciB9IG9mIHRoaXMudHJhbnNmb3JtZXJzW2V2ZW50XSkge1xuICAgICAgY29uc3QgcmV0dXJuZWQgPSBhd2FpdCB3cmFwRXJyb3JBc3luYyhcbiAgICAgICAgYXN5bmMgKCkgPT4gYXdhaXQgdHJhbnNmb3JtZXIodHJhbnNmb3JtZWQpLFxuICAgICAgICBgJHtmb3JtYXRDdWxwcml0KHNwZWNpZmllcil9IGVycm9yZWQgd2hlbiB0cnlpbmcgdG8gZG8gYSBcIiR7ZXZlbnR9XCIgdHJhbnNmb3JtYFxuICAgICAgKVxuICAgICAgaWYgKHR5cGVvZiByZXR1cm5lZCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgdHJhbnNmb3JtZWQgPSByZXR1cm5lZFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJhbnNmb3JtZWRcbiAgfVxuXG4gIGFzeW5jIGNsZWFudXAoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgZm9yIChjb25zdCB7IGNsZWFudXBGbiwgc3BlY2lmaWVyIH0gb2YgdGhpcy5jbGVhbnVwRm5zKSB7XG4gICAgICBhd2FpdCB3cmFwRXJyb3JBc3luYyhcbiAgICAgICAgYXN5bmMgKCkgPT4gYXdhaXQgY2xlYW51cEZuKCksXG4gICAgICAgIGAke2Zvcm1hdEN1bHByaXQoc3BlY2lmaWVyKX0gZXJyb3JlZCB3aGVuIHRyeWluZyB0byBjbGVhbnVwYFxuICAgICAgKVxuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBmb3JtYXRDdWxwcml0KHNwZWNpZmllcj86IHN0cmluZykge1xuICByZXR1cm4gc3BlY2lmaWVyID8gYFBsdWdpbiBcIiR7c3BlY2lmaWVyfVwiYCA6ICdDdWN1bWJlcidcbn1cblxuZnVuY3Rpb24gd3JhcEVycm9yPFQ+KGZuOiAoKSA9PiBULCBtZXNzYWdlOiBzdHJpbmcpOiBUIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZm4oKVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlLCB7IGNhdXNlOiBlcnJvciB9KVxuICB9XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdyYXBFcnJvckFzeW5jPFQ+KGZuOiAoKSA9PiBQcm9taXNlPFQ+LCBtZXNzYWdlOiBzdHJpbmcpOiBQcm9taXNlPFQ+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gYXdhaXQgZm4oKVxuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlLCB7IGNhdXNlOiBlcnJvciB9KVxuICB9XG59XG4iXX0=