@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
@@ -1,14 +1,13 @@
1
- import { Writable } from 'node:stream';
2
- import { EventEmitter } from 'node:events';
3
- import { SupportCodeLibrary } from '../support_code_library_builder/types';
4
- import { FormatterPlugin } from '../plugin';
5
- import { IColorFns } from './get_color_fns';
6
- import { EventDataCollector } from './helpers';
7
- import StepDefinitionSnippetBuilder from './step_definition_snippet_builder';
8
- import { SnippetInterface } from './step_definition_snippet_builder/snippet_syntax';
9
- export interface FormatRerunOptions {
10
- separator?: string;
11
- }
1
+ import type { EventEmitter } from 'node:events';
2
+ import type { Writable } from 'node:stream';
3
+ import type { FormatCodeFunction, Theme } from '@cucumber/pretty-formatter';
4
+ import type { FormatterPlugin } from '../plugin';
5
+ import type { SupportCodeLibrary } from '../support_code_library_builder/types';
6
+ import type { IColorFns } from './get_color_fns';
7
+ import type { EventDataCollector } from './helpers';
8
+ import type StepDefinitionSnippetBuilder from './step_definition_snippet_builder';
9
+ import type { SnippetInterface } from './step_definition_snippet_builder/snippet_syntax';
10
+ export type { FormatCodeFunction, Theme } from '@cucumber/pretty-formatter';
12
11
  export interface FormatOptions {
13
12
  /**
14
13
  * @deprecated use `FORCE_COLOR` instead; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
@@ -17,10 +16,23 @@ export interface FormatOptions {
17
16
  html?: {
18
17
  externalAttachments?: boolean | ReadonlyArray<string>;
19
18
  };
20
- rerun?: FormatRerunOptions;
19
+ includeAttachments?: boolean;
20
+ pretty?: {
21
+ includeFeatureLine?: boolean;
22
+ includeRuleLine?: boolean;
23
+ useStatusIcon?: boolean;
24
+ formatCode?: FormatCodeFunction;
25
+ };
26
+ /**
27
+ * @deprecated alias for `includeAttachments`; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
28
+ */
29
+ printAttachments?: boolean;
30
+ rerun?: {
31
+ separator?: string;
32
+ };
21
33
  snippetInterface?: SnippetInterface;
22
34
  snippetSyntax?: string;
23
- printAttachments?: boolean;
35
+ theme?: Theme;
24
36
  [customKey: string]: any;
25
37
  }
26
38
  export type FormatterImplementation = typeof Formatter | FormatterPlugin;
@@ -21,11 +21,11 @@ class Formatter {
21
21
  this.stream = options.stream;
22
22
  this.supportCodeLibrary = options.supportCodeLibrary;
23
23
  this.cleanup = options.cleanup;
24
- this.printAttachments = (0, value_checker_1.valueOrDefault)(options.parsedArgvOptions.printAttachments, true);
24
+ this.printAttachments = (0, value_checker_1.valueOrDefault)(options.parsedArgvOptions.includeAttachments ?? options.parsedArgvOptions.printAttachments, true);
25
25
  }
26
26
  async finished() {
27
27
  await this.cleanup();
28
28
  }
29
29
  }
30
30
  exports.default = Formatter;
31
- //# sourceMappingURL=index.js.map
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZm9ybWF0dGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBS0Esb0RBQWlEO0FBc0RqRCxNQUFxQixTQUFTO0lBQ2xCLFFBQVEsQ0FBVztJQUNuQixHQUFHLENBQVE7SUFDWCxrQkFBa0IsQ0FBb0I7SUFDdEMsR0FBRyxDQUFpQjtJQUNwQixjQUFjLENBQThCO0lBQzVDLE1BQU0sQ0FBVTtJQUNoQixrQkFBa0IsQ0FBb0I7SUFDdEMsZ0JBQWdCLENBQVM7SUFDbEIsT0FBTyxDQUFxQjtJQUM3QyxNQUFNLENBQVUsYUFBYSxDQUFRO0lBRXJDLFlBQVksT0FBMEI7UUFDcEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFBO1FBQ2hDLElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQTtRQUN0QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUFBO1FBQ3BELElBQUksQ0FBQyxHQUFHLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQTtRQUN0QixJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUE7UUFDNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFBO1FBQzVCLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUE7UUFDcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFBO1FBQzlCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFBLDhCQUFjLEVBQ3BDLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsSUFBSSxPQUFPLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLEVBQzFGLElBQUksQ0FDTCxDQUFBO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFRO1FBQ1osTUFBTSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUE7SUFDdEIsQ0FBQztDQUNGO0FBOUJELDRCQThCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRXZlbnRFbWl0dGVyIH0gZnJvbSAnbm9kZTpldmVudHMnXG5pbXBvcnQgdHlwZSB7IFdyaXRhYmxlIH0gZnJvbSAnbm9kZTpzdHJlYW0nXG5pbXBvcnQgdHlwZSB7IEZvcm1hdENvZGVGdW5jdGlvbiwgVGhlbWUgfSBmcm9tICdAY3VjdW1iZXIvcHJldHR5LWZvcm1hdHRlcidcbmltcG9ydCB0eXBlIHsgRm9ybWF0dGVyUGx1Z2luIH0gZnJvbSAnLi4vcGx1Z2luJ1xuaW1wb3J0IHR5cGUgeyBTdXBwb3J0Q29kZUxpYnJhcnkgfSBmcm9tICcuLi9zdXBwb3J0X2NvZGVfbGlicmFyeV9idWlsZGVyL3R5cGVzJ1xuaW1wb3J0IHsgdmFsdWVPckRlZmF1bHQgfSBmcm9tICcuLi92YWx1ZV9jaGVja2VyJ1xuaW1wb3J0IHR5cGUgeyBJQ29sb3JGbnMgfSBmcm9tICcuL2dldF9jb2xvcl9mbnMnXG5pbXBvcnQgdHlwZSB7IEV2ZW50RGF0YUNvbGxlY3RvciB9IGZyb20gJy4vaGVscGVycydcbmltcG9ydCB0eXBlIFN0ZXBEZWZpbml0aW9uU25pcHBldEJ1aWxkZXIgZnJvbSAnLi9zdGVwX2RlZmluaXRpb25fc25pcHBldF9idWlsZGVyJ1xuaW1wb3J0IHR5cGUgeyBTbmlwcGV0SW50ZXJmYWNlIH0gZnJvbSAnLi9zdGVwX2RlZmluaXRpb25fc25pcHBldF9idWlsZGVyL3NuaXBwZXRfc3ludGF4J1xuXG5leHBvcnQgdHlwZSB7IEZvcm1hdENvZGVGdW5jdGlvbiwgVGhlbWUgfSBmcm9tICdAY3VjdW1iZXIvcHJldHR5LWZvcm1hdHRlcidcblxuZXhwb3J0IGludGVyZmFjZSBGb3JtYXRPcHRpb25zIHtcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgRk9SQ0VfQ09MT1JgIGluc3RlYWQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vY3VjdW1iZXIvY3VjdW1iZXItanMvYmxvYi9tYWluL2RvY3MvZGVwcmVjYXRpb25zLm1kXG4gICAqL1xuICBjb2xvcnNFbmFibGVkPzogYm9vbGVhblxuICBodG1sPzoge1xuICAgIGV4dGVybmFsQXR0YWNobWVudHM/OiBib29sZWFuIHwgUmVhZG9ubHlBcnJheTxzdHJpbmc+XG4gIH1cbiAgaW5jbHVkZUF0dGFjaG1lbnRzPzogYm9vbGVhblxuICBwcmV0dHk/OiB7XG4gICAgaW5jbHVkZUZlYXR1cmVMaW5lPzogYm9vbGVhblxuICAgIGluY2x1ZGVSdWxlTGluZT86IGJvb2xlYW5cbiAgICB1c2VTdGF0dXNJY29uPzogYm9vbGVhblxuICAgIGZvcm1hdENvZGU/OiBGb3JtYXRDb2RlRnVuY3Rpb25cbiAgfVxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgYWxpYXMgZm9yIGBpbmNsdWRlQXR0YWNobWVudHNgOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2N1Y3VtYmVyL2N1Y3VtYmVyLWpzL2Jsb2IvbWFpbi9kb2NzL2RlcHJlY2F0aW9ucy5tZFxuICAgKi9cbiAgcHJpbnRBdHRhY2htZW50cz86IGJvb2xlYW5cbiAgcmVydW4/OiB7XG4gICAgc2VwYXJhdG9yPzogc3RyaW5nXG4gIH1cbiAgc25pcHBldEludGVyZmFjZT86IFNuaXBwZXRJbnRlcmZhY2VcbiAgc25pcHBldFN5bnRheD86IHN0cmluZ1xuICB0aGVtZT86IFRoZW1lXG4gIFtjdXN0b21LZXk6IHN0cmluZ106IGFueVxufVxuXG5leHBvcnQgdHlwZSBGb3JtYXR0ZXJJbXBsZW1lbnRhdGlvbiA9IHR5cGVvZiBGb3JtYXR0ZXIgfCBGb3JtYXR0ZXJQbHVnaW5cbmV4cG9ydCB0eXBlIElGb3JtYXR0ZXJTdHJlYW0gPSBXcml0YWJsZVxuZXhwb3J0IHR5cGUgSUZvcm1hdHRlckxvZ0ZuID0gKGJ1ZmZlcjogc3RyaW5nIHwgVWludDhBcnJheSkgPT4gdm9pZFxuZXhwb3J0IHR5cGUgSUZvcm1hdHRlckNsZWFudXBGbiA9ICgpID0+IFByb21pc2U8YW55PlxuXG5leHBvcnQgaW50ZXJmYWNlIElGb3JtYXR0ZXJPcHRpb25zIHtcbiAgY29sb3JGbnM6IElDb2xvckZuc1xuICBjd2Q6IHN0cmluZ1xuICBldmVudEJyb2FkY2FzdGVyOiBFdmVudEVtaXR0ZXJcbiAgZXZlbnREYXRhQ29sbGVjdG9yOiBFdmVudERhdGFDb2xsZWN0b3JcbiAgbG9nOiBJRm9ybWF0dGVyTG9nRm5cbiAgcGFyc2VkQXJndk9wdGlvbnM6IEZvcm1hdE9wdGlvbnNcbiAgc25pcHBldEJ1aWxkZXI6IFN0ZXBEZWZpbml0aW9uU25pcHBldEJ1aWxkZXJcbiAgc3RyZWFtOiBXcml0YWJsZVxuICBjbGVhbnVwOiBJRm9ybWF0dGVyQ2xlYW51cEZuXG4gIHN1cHBvcnRDb2RlTGlicmFyeTogU3VwcG9ydENvZGVMaWJyYXJ5XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZvcm1hdHRlciB7XG4gIHByb3RlY3RlZCBjb2xvckZuczogSUNvbG9yRm5zXG4gIHByb3RlY3RlZCBjd2Q6IHN0cmluZ1xuICBwcm90ZWN0ZWQgZXZlbnREYXRhQ29sbGVjdG9yOiBFdmVudERhdGFDb2xsZWN0b3JcbiAgcHJvdGVjdGVkIGxvZzogSUZvcm1hdHRlckxvZ0ZuXG4gIHByb3RlY3RlZCBzbmlwcGV0QnVpbGRlcjogU3RlcERlZmluaXRpb25TbmlwcGV0QnVpbGRlclxuICBwcm90ZWN0ZWQgc3RyZWFtOiBXcml0YWJsZVxuICBwcm90ZWN0ZWQgc3VwcG9ydENvZGVMaWJyYXJ5OiBTdXBwb3J0Q29kZUxpYnJhcnlcbiAgcHJvdGVjdGVkIHByaW50QXR0YWNobWVudHM6IGJvb2xlYW5cbiAgcHJpdmF0ZSByZWFkb25seSBjbGVhbnVwOiBJRm9ybWF0dGVyQ2xlYW51cEZuXG4gIHN0YXRpYyByZWFkb25seSBkb2N1bWVudGF0aW9uOiBzdHJpbmdcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBJRm9ybWF0dGVyT3B0aW9ucykge1xuICAgIHRoaXMuY29sb3JGbnMgPSBvcHRpb25zLmNvbG9yRm5zXG4gICAgdGhpcy5jd2QgPSBvcHRpb25zLmN3ZFxuICAgIHRoaXMuZXZlbnREYXRhQ29sbGVjdG9yID0gb3B0aW9ucy5ldmVudERhdGFDb2xsZWN0b3JcbiAgICB0aGlzLmxvZyA9IG9wdGlvbnMubG9nXG4gICAgdGhpcy5zbmlwcGV0QnVpbGRlciA9IG9wdGlvbnMuc25pcHBldEJ1aWxkZXJcbiAgICB0aGlzLnN0cmVhbSA9IG9wdGlvbnMuc3RyZWFtXG4gICAgdGhpcy5zdXBwb3J0Q29kZUxpYnJhcnkgPSBvcHRpb25zLnN1cHBvcnRDb2RlTGlicmFyeVxuICAgIHRoaXMuY2xlYW51cCA9IG9wdGlvbnMuY2xlYW51cFxuICAgIHRoaXMucHJpbnRBdHRhY2htZW50cyA9IHZhbHVlT3JEZWZhdWx0KFxuICAgICAgb3B0aW9ucy5wYXJzZWRBcmd2T3B0aW9ucy5pbmNsdWRlQXR0YWNobWVudHMgPz8gb3B0aW9ucy5wYXJzZWRBcmd2T3B0aW9ucy5wcmludEF0dGFjaG1lbnRzLFxuICAgICAgdHJ1ZVxuICAgIClcbiAgfVxuXG4gIGFzeW5jIGZpbmlzaGVkKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuY2xlYW51cCgpXG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import * as messages from '@cucumber/messages';
2
- import Formatter, { IFormatterOptions } from './';
2
+ import Formatter, { type IFormatterOptions } from './';
3
3
  export interface IJsonFeature {
4
4
  description: string;
5
5
  elements: IJsonScenario[];
@@ -63,7 +63,7 @@ export default class JsonFormatter extends Formatter {
63
63
  formatDocString(docString: messages.PickleDocString, gherkinStep: messages.Step): any;
64
64
  formatStepArgument(stepArgument: messages.PickleStepArgument, gherkinStep: messages.Step): any;
65
65
  onTestRunFinished(): void;
66
- getFeatureData({ feature, elements, uri, }: IBuildJsonFeatureOptions): IJsonFeature;
66
+ getFeatureData({ feature, elements, uri }: IBuildJsonFeatureOptions): IJsonFeature;
67
67
  getScenarioData({ feature, gherkinScenarioLocationMap, gherkinExampleRuleMap, gherkinScenarioMap, pickle, steps, }: IBuildJsonScenarioOptions): IJsonScenario;
68
68
  private formatScenarioId;
69
69
  getStepData({ isBeforeHook, gherkinStepMap, pickleStepMap, testStep, testStepAttachments, testStepResult, }: IBuildJsonStepOptions): IJsonStep;
@@ -37,12 +37,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const messages = __importStar(require("@cucumber/messages"));
40
- const value_checker_1 = require("../value_checker");
41
40
  const step_arguments_1 = require("../step_arguments");
41
+ const value_checker_1 = require("../value_checker");
42
+ const _1 = __importDefault(require("./"));
42
43
  const helpers_1 = require("./helpers");
43
- const gherkin_document_parser_1 = require("./helpers/gherkin_document_parser");
44
44
  const duration_helpers_1 = require("./helpers/duration_helpers");
45
- const _1 = __importDefault(require("./"));
45
+ const gherkin_document_parser_1 = require("./helpers/gherkin_document_parser");
46
46
  const { getGherkinStepMap, getGherkinScenarioMap } = helpers_1.GherkinDocumentParser;
47
47
  const { getScenarioDescription, getPickleStepMap, getStepKeyword } = helpers_1.PickleParser;
48
48
  class JsonFormatter extends _1.default {
@@ -84,9 +84,7 @@ class JsonFormatter extends _1.default {
84
84
  }
85
85
  onTestRunFinished() {
86
86
  const groupedTestCaseAttempts = {};
87
- this.eventDataCollector
88
- .getTestCaseAttempts()
89
- .forEach((testCaseAttempt) => {
87
+ this.eventDataCollector.getTestCaseAttempts().forEach((testCaseAttempt) => {
90
88
  if (!testCaseAttempt.willBeRetried) {
91
89
  const uri = testCaseAttempt.pickle.uri;
92
90
  if ((0, value_checker_1.doesNotHaveValue)(groupedTestCaseAttempts[uri])) {
@@ -134,7 +132,7 @@ class JsonFormatter extends _1.default {
134
132
  });
135
133
  this.log(JSON.stringify(features, null, 2));
136
134
  }
137
- getFeatureData({ feature, elements, uri, }) {
135
+ getFeatureData({ feature, elements, uri }) {
138
136
  return {
139
137
  description: feature.description,
140
138
  elements,
@@ -186,8 +184,7 @@ class JsonFormatter extends _1.default {
186
184
  data.keyword = isBeforeHook ? 'Before' : 'After';
187
185
  data.hidden = true;
188
186
  }
189
- if ((0, value_checker_1.doesHaveValue)(testStep.stepDefinitionIds) &&
190
- testStep.stepDefinitionIds.length === 1) {
187
+ if ((0, value_checker_1.doesHaveValue)(testStep.stepDefinitionIds) && testStep.stepDefinitionIds.length === 1) {
191
188
  const stepDefinition = this.supportCodeLibrary.stepDefinitions.find((s) => s.id === testStep.stepDefinitionIds[0]);
192
189
  data.match = { location: (0, helpers_1.formatLocation)(stepDefinition) };
193
190
  }
@@ -198,14 +195,12 @@ class JsonFormatter extends _1.default {
198
195
  if ((0, value_checker_1.doesHaveValue)(testStepResult.duration)) {
199
196
  data.result.duration = (0, duration_helpers_1.durationToNanoseconds)(testStepResult.duration);
200
197
  }
201
- if (status === messages.TestStepResultStatus.FAILED &&
202
- (0, value_checker_1.doesHaveValue)(message)) {
198
+ if (status === messages.TestStepResultStatus.FAILED && (0, value_checker_1.doesHaveValue)(message)) {
203
199
  data.result.error_message = message;
204
200
  }
205
201
  if (testStepAttachments?.length > 0) {
206
202
  data.embeddings = testStepAttachments.map((attachment) => ({
207
- data: attachment.contentEncoding ===
208
- messages.AttachmentContentEncoding.IDENTITY
203
+ data: attachment.contentEncoding === messages.AttachmentContentEncoding.IDENTITY
209
204
  ? Buffer.from(attachment.body).toString('base64')
210
205
  : attachment.body,
211
206
  mime_type: attachment.mediaType,
@@ -239,4 +234,4 @@ class JsonFormatter extends _1.default {
239
234
  }
240
235
  }
241
236
  exports.default = JsonFormatter;
242
- //# sourceMappingURL=json_formatter.js.map
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbl9mb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZm9ybWF0dGVyL2pzb25fZm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQThDO0FBQzlDLHNEQUFxRDtBQUNyRCxvREFBa0U7QUFDbEUsMENBQXNEO0FBQ3RELHVDQUErRTtBQUMvRSxpRUFBa0U7QUFFbEUsK0VBRzBDO0FBRTFDLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxxQkFBcUIsRUFBRSxHQUFHLCtCQUFxQixDQUFBO0FBRTFFLE1BQU0sRUFBRSxzQkFBc0IsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsR0FBRyxzQkFBWSxDQUFBO0FBb0VqRixNQUFxQixhQUFjLFNBQVEsVUFBUztJQUMzQyxNQUFNLENBQVUsYUFBYSxHQUNsQyxrTUFBa00sQ0FBQTtJQUVwTSxZQUFZLE9BQTBCO1FBQ3BDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNkLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsUUFBMkIsRUFBRSxFQUFFO1lBQ3RFLElBQUksSUFBQSw2QkFBYSxFQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTtZQUMxQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQXVDO1FBQ3JELE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFBO0lBQ2xELENBQUM7SUFFRCxlQUFlLENBQUMsU0FBK0I7UUFDN0MsT0FBTztZQUNMLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFB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LEdBQW1CLEVBQWtCLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRTdGLE1BQU0sR0FBRyxHQUNQLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQztZQUM5QixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUM7WUFDL0IsUUFBUSxDQUFDLFFBQVE7aUJBQ2QsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2lCQUNsQixNQUFNLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztpQkFDbkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBRXRCLE9BQU87WUFDTCxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDbEIsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsSUFBSTtTQUMxQixDQUFBO0lBQ0gsQ0FBQzs7QUFwUEgsZ0NBcVBDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgcGFyc2VTdGVwQXJndW1lbnQgfSBmcm9tICcuLi9zdGVwX2FyZ3VtZW50cydcbmltcG9ydCB7IGRvZXNIYXZlVmFsdWUsIGRvZXNOb3RIYXZlVmFsdWUgfSBmcm9tICcuLi92YWx1ZV9jaGVja2VyJ1xuaW1wb3J0IEZvcm1hdHRlciwgeyB0eXBlIElGb3JtYXR0ZXJPcHRpb25zIH0gZnJvbSAnLi8nXG5pbXBvcnQgeyBmb3JtYXRMb2NhdGlvbiwgR2hlcmtpbkRvY3VtZW50UGFyc2VyLCBQaWNrbGVQYXJzZXIgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQgeyBkdXJhdGlvblRvTmFub3NlY29uZHMgfSBmcm9tICcuL2hlbHBlcnMvZHVyYXRpb25faGVscGVycydcbmltcG9ydCB0eXBlIHsgSVRlc3RDYXNlQXR0ZW1wdCB9IGZyb20gJy4vaGVscGVycy9ldmVudF9kYXRhX2NvbGxlY3RvcidcbmltcG9ydCB7XG4gIGdldEdoZXJraW5FeGFtcGxlUnVsZU1hcCxcbiAgZ2V0R2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAsXG59IGZyb20gJy4vaGVscGVycy9naGVya2luX2RvY3VtZW50X3BhcnNlcidcblxuY29uc3QgeyBnZXRHaGVya2luU3RlcE1hcCwgZ2V0R2hlcmtpblNjZW5hcmlvTWFwIH0gPSBHaGVya2luRG9jdW1lbnRQYXJzZXJcblxuY29uc3QgeyBnZXRTY2VuYXJpb0Rlc2NyaXB0aW9uLCBnZXRQaWNrbGVTdGVwTWFwLCBnZXRTdGVwS2V5d29yZCB9ID0gUGlja2xlUGFyc2VyXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUpzb25GZWF0dXJlIHtcbiAgZGVzY3JpcHRpb246IHN0cmluZ1xuICBlbGVtZW50czogSUpzb25TY2VuYXJpb1tdXG4gIGlkOiBzdHJpbmdcbiAga2V5d29yZDogc3RyaW5nXG4gIGxpbmU6IG51bWJlclxuICBuYW1lOiBzdHJpbmdcbiAgdGFnczogSUpzb25UYWdbXVxuICB1cmk6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElKc29uU2NlbmFyaW8ge1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIGlkOiBzdHJpbmdcbiAga2V5d29yZDogc3RyaW5nXG4gIGxpbmU6IG51bWJlclxuICBuYW1lOiBzdHJpbmdcbiAgc3RlcHM6IElKc29uU3RlcFtdXG4gIHRhZ3M6IElKc29uVGFnW11cbiAgdHlwZTogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUpzb25TdGVwIHtcbiAgYXJndW1lbnRzPzogYW55IC8vIFRPRE9cbiAgZW1iZWRkaW5ncz86IGFueSAvLyBUT0RPXG4gIGhpZGRlbj86IGJvb2xlYW5cbiAga2V5d29yZD86IHN0cmluZyAvLyBUT0RPLCBub3Qgb3B0aW9uYWxcbiAgbGluZT86IG51bWJlclxuICBtYXRjaD86IGFueSAvLyBUT0RPXG4gIG5hbWU/OiBzdHJpbmdcbiAgcmVzdWx0PzogYW55IC8vIFRPRE9cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSnNvblRhZyB7XG4gIG5hbWU6IHN0cmluZ1xuICBsaW5lOiBudW1iZXJcbn1cblxuaW50ZXJmYWNlIElCdWlsZEpzb25GZWF0dXJlT3B0aW9ucyB7XG4gIGZlYXR1cmU6IG1lc3NhZ2VzLkZlYXR1cmVcbiAgZWxlbWVudHM6IElKc29uU2NlbmFyaW9bXVxuICB1cmk6IHN0cmluZ1xufVxuXG5pbnRlcmZhY2UgSUJ1aWxkSnNvblNjZW5hcmlvT3B0aW9ucyB7XG4gIGZlYXR1cmU6IG1lc3NhZ2VzLkZlYXR1cmVcbiAgZ2hlcmtpblNjZW5hcmlvTWFwOiBSZWNvcmQ8c3RyaW5nLCBtZXNzYWdlcy5TY2VuYXJpbz5cbiAgZ2hlcmtpbkV4YW1wbGVSdWxlTWFwOiBSZWNvcmQ8c3RyaW5nLCBtZXNzYWdlcy5SdWxlPlxuICBnaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcDogUmVjb3JkPHN0cmluZywgbWVzc2FnZXMuTG9jYXRpb24+XG4gIHBpY2tsZTogbWVzc2FnZXMuUGlja2xlXG4gIHN0ZXBzOiBJSnNvblN0ZXBbXVxufVxuXG5pbnRlcmZhY2UgSUJ1aWxkSnNvblN0ZXBPcHRpb25zIHtcbiAgaXNCZWZvcmVIb29rOiBib29sZWFuXG4gIGdoZXJraW5TdGVwTWFwOiBSZWNvcmQ8c3RyaW5nLCBtZXNzYWdlcy5TdGVwPlxuICBwaWNrbGVTdGVwTWFwOiBSZWNvcmQ8c3RyaW5nLCBtZXNzYWdlcy5QaWNrbGVTdGVwPlxuICB0ZXN0U3RlcDogbWVzc2FnZXMuVGVzdFN0ZXBcbiAgdGVzdFN0ZXBBdHRhY2htZW50czogbWVzc2FnZXMuQXR0YWNobWVudFtdXG4gIHRlc3RTdGVwUmVzdWx0OiBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFxufVxuXG5pbnRlcmZhY2UgVXJpVG9UZXN0Q2FzZUF0dGVtcHRzTWFwIHtcbiAgW3VyaTogc3RyaW5nXTogSVRlc3RDYXNlQXR0ZW1wdFtdXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEpzb25Gb3JtYXR0ZXIgZXh0ZW5kcyBGb3JtYXR0ZXIge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGRvY3VtZW50YXRpb246IHN0cmluZyA9XG4gICAgJ1ByaW50cyB0aGUgZmVhdHVyZSBhcyBKU09OLiBUaGUgSlNPTiBmb3JtYXQgaXMgaW4gbWFpbnRlbmFuY2UgbW9kZS4gUGxlYXNlIGNvbnNpZGVyIHVzaW5nIHRoZSBtZXNzYWdlIGZvcm1hdHRlciB3aXRoIHRoZSBzdGFuZGFsb25lIGpzb24tZm9ybWF0dGVyIChodHRwczovL2dpdGh1Yi5jb20vY3VjdW1iZXIvanNvbi1mb3JtYXR0ZXIpLidcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBJRm9ybWF0dGVyT3B0aW9ucykge1xuICAgIHN1cGVyKG9wdGlvbnMpXG4gICAgb3B0aW9ucy5ldmVudEJyb2FkY2FzdGVyLm9uKCdlbnZlbG9wZScsIChlbnZlbG9wZTogbWVzc2FnZXMuRW52ZWxvcGUpID0+IHtcbiAgICAgIGlmIChkb2VzSGF2ZVZhbHVlKGVudmVsb3BlLnRlc3RSdW5GaW5pc2hlZCkpIHtcbiAgICAgICAgdGhpcy5vblRlc3RSdW5GaW5pc2hlZCgpXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGNvbnZlcnROYW1lVG9JZChvYmo6IG1lc3NhZ2VzLkZlYXR1cmUgfCBtZXNzYWdlcy5QaWNrbGUpOiBzdHJpbmcge1xuICAgIHJldHVybiBvYmoubmFtZS5yZXBsYWNlKC8gL2csICctJykudG9Mb3dlckNhc2UoKVxuICB9XG5cbiAgZm9ybWF0RGF0YVRhYmxlKGRhdGFUYWJsZTogbWVzc2FnZXMuUGlja2xlVGFibGUpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICByb3dzOiBkYXRhVGFibGUucm93cy5tYXAoKHJvdykgPT4gKHtcbiAgICAgICAgY2VsbHM6IHJvdy5jZWxscy5tYXAoKHgpID0+IHgudmFsdWUpLFxuICAgICAgfSkpLFxuICAgIH1cbiAgfVxuXG4gIGZvcm1hdERvY1N0cmluZyhkb2NTdHJpbmc6IG1lc3NhZ2VzLlBpY2tsZURvY1N0cmluZywgZ2hlcmtpblN0ZXA6IG1lc3NhZ2VzLlN0ZXApOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICBjb250ZW50OiBkb2NTdHJpbmcuY29udGVudCxcbiAgICAgIGxpbmU6IGdoZXJraW5TdGVwLmRvY1N0cmluZy5sb2NhdGlvbi5saW5lLFxuICAgIH1cbiAgfVxuXG4gIGZvcm1hdFN0ZXBBcmd1bWVudChzdGVwQXJndW1lbnQ6IG1lc3NhZ2VzLlBpY2tsZVN0ZXBBcmd1bWVudCwgZ2hlcmtpblN0ZXA6IG1lc3NhZ2VzLlN0ZXApOiBhbnkge1xuICAgIGlmIChkb2VzTm90SGF2ZVZhbHVlKHN0ZXBBcmd1bWVudCkpIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cbiAgICByZXR1cm4gW1xuICAgICAgcGFyc2VTdGVwQXJndW1lbnQ8YW55PihzdGVwQXJndW1lbnQsIHtcbiAgICAgICAgZGF0YVRhYmxlOiAoZGF0YVRhYmxlKSA9PiB0aGlzLmZvcm1hdERhdGFUYWJsZShkYXRhVGFibGUpLFxuICAgICAgICBkb2NTdHJpbmc6IChkb2NTdHJpbmcpID0+IHRoaXMuZm9ybWF0RG9jU3RyaW5nKGRvY1N0cmluZywgZ2hlcmtpblN0ZXApLFxuICAgICAgfSksXG4gICAgXVxuICB9XG5cbiAgb25UZXN0UnVuRmluaXNoZWQoKTogdm9pZCB7XG4gICAgY29uc3QgZ3JvdXBlZFRlc3RDYXNlQXR0ZW1wdHM6IFVyaVRvVGVzdENhc2VBdHRlbXB0c01hcCA9IHt9XG4gICAgdGhpcy5ldmVudERhdGFDb2xsZWN0b3IuZ2V0VGVzdENhc2VBdHRlbXB0cygpLmZvckVhY2goKHRlc3RDYXNlQXR0ZW1wdDogSVRlc3RDYXNlQXR0ZW1wdCkgPT4ge1xuICAgICAgaWYgKCF0ZXN0Q2FzZUF0dGVtcHQud2lsbEJlUmV0cmllZCkge1xuICAgICAgICBjb25zdCB1cmkgPSB0ZXN0Q2FzZUF0dGVtcHQucGlja2xlLnVyaVxuICAgICAgICBpZiAoZG9lc05vdEhhdmVWYWx1ZShncm91cGVkVGVzdENhc2VBdHRlbXB0c1t1cmldKSkge1xuICAgICAgICAgIGdyb3VwZWRUZXN0Q2FzZUF0dGVtcHRzW3VyaV0gPSBbXVxuICAgICAgICB9XG4gICAgICAgIGdyb3VwZWRUZXN0Q2FzZUF0dGVtcHRzW3VyaV0ucHVzaCh0ZXN0Q2FzZUF0dGVtcHQpXG4gICAgICB9XG4gICAgfSlcbiAgICBjb25zdCBmZWF0dXJlcyA9IE9iamVjdC5rZXlzKGdyb3VwZWRUZXN0Q2FzZUF0dGVtcHRzKS5tYXAoKHVyaSkgPT4ge1xuICAgICAgY29uc3QgZ3JvdXAgPSBncm91cGVkVGVzdENhc2VBdHRlbXB0c1t1cmldXG4gICAgICBjb25zdCB7IGdoZXJraW5Eb2N1bWVudCB9ID0gZ3JvdXBbMF1cbiAgICAgIGNvbnN0IGdoZXJraW5TdGVwTWFwID0gZ2V0R2hlcmtpblN0ZXBNYXAoZ2hlcmtpbkRvY3VtZW50KVxuICAgICAgY29uc3QgZ2hlcmtpblNjZW5hcmlvTWFwID0gZ2V0R2hlcmtpblNjZW5hcmlvTWFwKGdoZXJraW5Eb2N1bWVudClcbiAgICAgIGNvbnN0IGdoZXJraW5FeGFtcGxlUnVsZU1hcCA9IGdldEdoZXJraW5FeGFtcGxlUnVsZU1hcChnaGVya2luRG9jdW1lbnQpXG4gICAgICBjb25zdCBnaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcCA9IGdldEdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwKGdoZXJraW5Eb2N1bWVudClcbiAgICAgIGNvbnN0IGVsZW1lbnRzID0gZ3JvdXAubWFwKCh0ZXN0Q2FzZUF0dGVtcHQ6IElUZXN0Q2FzZUF0dGVtcHQpID0+IHtcbiAgICAgICAgY29uc3QgeyBwaWNrbGUgfSA9IHRlc3RDYXNlQXR0ZW1wdFxuICAgICAgICBjb25zdCBwaWNrbGVTdGVwTWFwID0gZ2V0UGlja2xlU3RlcE1hcChwaWNrbGUpXG4gICAgICAgIGxldCBpc0JlZm9yZUhvb2sgPSB0cnVlXG4gICAgICAgIGNvbnN0IHN0ZXBzID0gdGVzdENhc2VBdHRlbXB0LnRlc3RDYXNlLnRlc3RTdGVwcy5tYXAoKHRlc3RTdGVwKSA9PiB7XG4gICAgICAgICAgaXNCZWZvcmVIb29rID0gaXNCZWZvcmVIb29rICYmICFkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLnBpY2tsZVN0ZXBJZClcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGVwRGF0YSh7XG4gICAgICAgICAgICBpc0JlZm9yZUhvb2ssXG4gICAgICAgICAgICBnaGVya2luU3RlcE1hcCxcbiAgICAgICAgICAgIHBpY2tsZVN0ZXBNYXAsXG4gICAgICAgICAgICB0ZXN0U3RlcCxcbiAgICAgICAgICAgIHRlc3RTdGVwQXR0YWNobWVudHM6IHRlc3RDYXNlQXR0ZW1wdC5zdGVwQXR0YWNobWVudHNbdGVzdFN0ZXAuaWRdLFxuICAgICAgICAgICAgdGVzdFN0ZXBSZXN1bHQ6IHRlc3RDYXNlQXR0ZW1wdC5zdGVwUmVzdWx0c1t0ZXN0U3RlcC5pZF0sXG4gICAgICAgICAgfSlcbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0U2NlbmFyaW9EYXRhKHtcbiAgICAgICAgICBmZWF0dXJlOiBnaGVya2luRG9jdW1lbnQuZmVhdHVyZSxcbiAgICAgICAgICBnaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcCxcbiAgICAgICAgICBnaGVya2luRXhhbXBsZVJ1bGVNYXAsXG4gICAgICAgICAgZ2hlcmtpblNjZW5hcmlvTWFwLFxuICAgICAgICAgIHBpY2tsZSxcbiAgICAgICAgICBzdGVwcyxcbiAgICAgICAgfSlcbiAgICAgIH0pXG4gICAgICByZXR1cm4gdGhpcy5nZXRGZWF0dXJlRGF0YSh7XG4gICAgICAgIGZlYXR1cmU6IGdoZXJraW5Eb2N1bWVudC5mZWF0dXJlLFxuICAgICAgICBlbGVtZW50cyxcbiAgICAgICAgdXJpLFxuICAgICAgfSlcbiAgICB9KVxuICAgIHRoaXMubG9nKEpTT04uc3RyaW5naWZ5KGZlYXR1cmVzLCBudWxsLCAyKSlcbiAgfVxuXG4gIGdldEZlYXR1cmVEYXRhKHsgZmVhdHVyZSwgZWxlbWVudHMsIHVyaSB9OiBJQnVpbGRKc29uRmVhdHVyZU9wdGlvbnMpOiBJSnNvbkZlYXR1cmUge1xuICAgIHJldHVybiB7XG4gICAgICBkZXNjcmlwdGlvbjogZmVhdHVyZS5kZXNjcmlwdGlvbixcbiAgICAgIGVsZW1lbnRzLFxuICAgICAgaWQ6IHRoaXMuY29udmVydE5hbWVUb0lkKGZlYXR1cmUpLFxuICAgICAgbGluZTogZmVhdHVyZS5sb2NhdGlvbi5saW5lLFxuICAgICAga2V5d29yZDogZmVhdHVyZS5rZXl3b3JkLFxuICAgICAgbmFtZTogZmVhdHVyZS5uYW1lLFxuICAgICAgdGFnczogdGhpcy5nZXRGZWF0dXJlVGFncyhmZWF0dXJlKSxcbiAgICAgIHVyaSxcbiAgICB9XG4gIH1cblxuICBnZXRTY2VuYXJpb0RhdGEoe1xuICAgIGZlYXR1cmUsXG4gICAgZ2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAsXG4gICAgZ2hlcmtpbkV4YW1wbGVSdWxlTWFwLFxuICAgIGdoZXJraW5TY2VuYXJpb01hcCxcbiAgICBwaWNrbGUsXG4gICAgc3RlcHMsXG4gIH06IElCdWlsZEpzb25TY2VuYXJpb09wdGlvbnMpOiBJSnNvblNjZW5hcmlvIHtcbiAgICBjb25zdCBkZXNjcmlwdGlvbiA9IGdldFNjZW5hcmlvRGVzY3JpcHRpb24oe1xuICAgICAgcGlja2xlLFxuICAgICAgZ2hlcmtpblNjZW5hcmlvTWFwLFxuICAgIH0pXG4gICAgcmV0dXJuIHtcbiAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgaWQ6IHRoaXMuZm9ybWF0U2NlbmFyaW9JZCh7IGZlYXR1cmUsIHBpY2tsZSwgZ2hlcmtpbkV4YW1wbGVSdWxlTWFwIH0pLFxuICAgICAga2V5d29yZDogZ2hlcmtpblNjZW5hcmlvTWFwW3BpY2tsZS5hc3ROb2RlSWRzWzBdXS5rZXl3b3JkLFxuICAgICAgbGluZTogZ2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXBbcGlja2xlLmFzdE5vZGVJZHNbcGlja2xlLmFzdE5vZGVJZHMubGVuZ3RoIC0gMV1dLmxpbmUsXG4gICAgICBuYW1lOiBwaWNrbGUubmFtZSxcbiAgICAgIHN0ZXBzLFxuICAgICAgdGFnczogdGhpcy5nZXRTY2VuYXJpb1RhZ3MoeyBmZWF0dXJlLCBwaWNrbGUsIGdoZXJraW5TY2VuYXJpb01hcCB9KSxcbiAgICAgIHR5cGU6ICdzY2VuYXJpbycsXG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmb3JtYXRTY2VuYXJpb0lkKHtcbiAgICBmZWF0dXJlLFxuICAgIHBpY2tsZSxcbiAgICBnaGVya2luRXhhbXBsZVJ1bGVNYXAsXG4gIH06IHtcbiAgICBmZWF0dXJlOiBtZXNzYWdlcy5GZWF0dXJlXG4gICAgcGlja2xlOiBtZXNzYWdlcy5QaWNrbGVcbiAgICBnaGVya2luRXhhbXBsZVJ1bGVNYXA6IFJlY29yZDxzdHJpbmcsIG1lc3NhZ2VzLlJ1bGU+XG4gIH0pOiBzdHJpbmcge1xuICAgIGxldCBwYXJ0czogYW55W11cbiAgICBjb25zdCBydWxlID0gZ2hlcmtpbkV4YW1wbGVSdWxlTWFwW3BpY2tsZS5hc3ROb2RlSWRzWzBdXVxuICAgIGlmIChkb2VzSGF2ZVZhbHVlKHJ1bGUpKSB7XG4gICAgICBwYXJ0cyA9IFtmZWF0dXJlLCBydWxlLCBwaWNrbGVdXG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcnRzID0gW2ZlYXR1cmUsIHBpY2tsZV1cbiAgICB9XG4gICAgcmV0dXJuIHBhcnRzLm1hcCgocGFydCkgPT4gdGhpcy5jb252ZXJ0TmFtZVRvSWQocGFydCkpLmpvaW4oJzsnKVxuICB9XG5cbiAgZ2V0U3RlcERhdGEoe1xuICAgIGlzQmVmb3JlSG9vayxcbiAgICBnaGVya2luU3RlcE1hcCxcbiAgICBwaWNrbGVTdGVwTWFwLFxuICAgIHRlc3RTdGVwLFxuICAgIHRlc3RTdGVwQXR0YWNobWVudHMsXG4gICAgdGVzdFN0ZXBSZXN1bHQsXG4gIH06IElCdWlsZEpzb25TdGVwT3B0aW9ucyk6IElKc29uU3RlcCB7XG4gICAgY29uc3QgZGF0YTogSUpzb25TdGVwID0ge31cbiAgICBpZiAoZG9lc0hhdmVWYWx1ZSh0ZXN0U3RlcC5waWNrbGVTdGVwSWQpKSB7XG4gICAgICBjb25zdCBwaWNrbGVTdGVwID0gcGlja2xlU3RlcE1hcFt0ZXN0U3RlcC5waWNrbGVTdGVwSWRdXG4gICAgICBkYXRhLmFyZ3VtZW50cyA9IHRoaXMuZm9ybWF0U3RlcEFyZ3VtZW50KFxuICAgICAgICBwaWNrbGVTdGVwLmFyZ3VtZW50LFxuICAgICAgICBnaGVya2luU3RlcE1hcFtwaWNrbGVTdGVwLmFzdE5vZGVJZHNbMF1dXG4gICAgICApXG4gICAgICBkYXRhLmtleXdvcmQgPSBnZXRTdGVwS2V5d29yZCh7IHBpY2tsZVN0ZXAsIGdoZXJraW5TdGVwTWFwIH0pXG4gICAgICBkYXRhLmxpbmUgPSBnaGVya2luU3RlcE1hcFtwaWNrbGVTdGVwLmFzdE5vZGVJZHNbMF1dLmxvY2F0aW9uLmxpbmVcbiAgICAgIGRhdGEubmFtZSA9IHBpY2tsZVN0ZXAudGV4dFxuICAgIH0gZWxzZSB7XG4gICAgICBkYXRhLmtleXdvcmQgPSBpc0JlZm9yZUhvb2sgPyAnQmVmb3JlJyA6ICdBZnRlcidcbiAgICAgIGRhdGEuaGlkZGVuID0gdHJ1ZVxuICAgIH1cbiAgICBpZiAoZG9lc0hhdmVWYWx1ZSh0ZXN0U3RlcC5zdGVwRGVmaW5pdGlvbklkcykgJiYgdGVzdFN0ZXAuc3RlcERlZmluaXRpb25JZHMubGVuZ3RoID09PSAxKSB7XG4gICAgICBjb25zdCBzdGVwRGVmaW5pdGlvbiA9IHRoaXMuc3VwcG9ydENvZGVMaWJyYXJ5LnN0ZXBEZWZpbml0aW9ucy5maW5kKFxuICAgICAgICAocykgPT4gcy5pZCA9PT0gdGVzdFN0ZXAuc3RlcERlZmluaXRpb25JZHNbMF1cbiAgICAgIClcbiAgICAgIGRhdGEubWF0Y2ggPSB7IGxvY2F0aW9uOiBmb3JtYXRMb2NhdGlvbihzdGVwRGVmaW5pdGlvbikgfVxuICAgIH1cbiAgICBjb25zdCB7IG1lc3NhZ2UsIHN0YXR1cyB9ID0gdGVzdFN0ZXBSZXN1bHRcbiAgICBkYXRhLnJlc3VsdCA9IHtcbiAgICAgIHN0YXR1czogbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXNbc3RhdHVzXS50b0xvd2VyQ2FzZSgpLFxuICAgIH1cbiAgICBpZiAoZG9lc0hhdmVWYWx1ZSh0ZXN0U3RlcFJlc3VsdC5kdXJhdGlvbikpIHtcbiAgICAgIGRhdGEucmVzdWx0LmR1cmF0aW9uID0gZHVyYXRpb25Ub05hbm9zZWNvbmRzKHRlc3RTdGVwUmVzdWx0LmR1cmF0aW9uKVxuICAgIH1cbiAgICBpZiAoc3RhdHVzID09PSBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5GQUlMRUQgJiYgZG9lc0hhdmVWYWx1ZShtZXNzYWdlKSkge1xuICAgICAgZGF0YS5yZXN1bHQuZXJyb3JfbWVzc2FnZSA9IG1lc3NhZ2VcbiAgICB9XG4gICAgaWYgKHRlc3RTdGVwQXR0YWNobWVudHM/Lmxlbmd0aCA+IDApIHtcbiAgICAgIGRhdGEuZW1iZWRkaW5ncyA9IHRlc3RTdGVwQXR0YWNobWVudHMubWFwKChhdHRhY2htZW50KSA9PiAoe1xuICAgICAgICBkYXRhOlxuICAgICAgICAgIGF0dGFjaG1lbnQuY29udGVudEVuY29kaW5nID09PSBtZXNzYWdlcy5BdHRhY2htZW50Q29udGVudEVuY29kaW5nLklERU5USVRZXG4gICAgICAgICAgICA/IEJ1ZmZlci5mcm9tKGF0dGFjaG1lbnQuYm9keSkudG9TdHJpbmcoJ2Jhc2U2NCcpXG4gICAgICAgICAgICA6IGF0dGFjaG1lbnQuYm9keSxcbiAgICAgICAgbWltZV90eXBlOiBhdHRhY2htZW50Lm1lZGlhVHlwZSxcbiAgICAgIH0pKVxuICAgIH1cbiAgICByZXR1cm4gZGF0YVxuICB9XG5cbiAgZ2V0RmVhdHVyZVRhZ3MoZmVhdHVyZTogbWVzc2FnZXMuRmVhdHVyZSk6IElKc29uVGFnW10ge1xuICAgIHJldHVybiBmZWF0dXJlLnRhZ3MubWFwKCh0YWdEYXRhKSA9PiAoe1xuICAgICAgbmFtZTogdGFnRGF0YS5uYW1lLFxuICAgICAgbGluZTogdGFnRGF0YS5sb2NhdGlvbi5saW5lLFxuICAgIH0pKVxuICB9XG5cbiAgZ2V0U2NlbmFyaW9UYWdzKHtcbiAgICBmZWF0dXJlLFxuICAgIHBpY2tsZSxcbiAgICBnaGVya2luU2NlbmFyaW9NYXAsXG4gIH06IHtcbiAgICBmZWF0dXJlOiBtZXNzYWdlcy5GZWF0dXJlXG4gICAgcGlja2xlOiBtZXNzYWdlcy5QaWNrbGVcbiAgICBnaGVya2luU2NlbmFyaW9NYXA6IFJlY29yZDxzdHJpbmcsIG1lc3NhZ2VzLlNjZW5hcmlvPlxuICB9KTogSUpzb25UYWdbXSB7XG4gICAgY29uc3Qgc2NlbmFyaW8gPSBnaGVya2luU2NlbmFyaW9NYXBbcGlja2xlLmFzdE5vZGVJZHNbMF1dXG5cbiAgICByZXR1cm4gcGlja2xlLnRhZ3MubWFwKFxuICAgICAgKHRhZ0RhdGE6IG1lc3NhZ2VzLlBpY2tsZVRhZyk6IElKc29uVGFnID0+IHRoaXMuZ2V0U2NlbmFyaW9UYWcodGFnRGF0YSwgZmVhdHVyZSwgc2NlbmFyaW8pXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRTY2VuYXJpb1RhZyhcbiAgICB0YWdEYXRhOiBtZXNzYWdlcy5QaWNrbGVUYWcsXG4gICAgZmVhdHVyZTogbWVzc2FnZXMuRmVhdHVyZSxcbiAgICBzY2VuYXJpbzogbWVzc2FnZXMuU2NlbmFyaW9cbiAgKTogSUpzb25UYWcge1xuICAgIGNvbnN0IGJ5QXN0Tm9kZUlkID0gKHRhZzogbWVzc2FnZXMuVGFnKTogYm9vbGVhbiA9PiB0YWcuaWQgPT09IHRhZ0RhdGEuYXN0Tm9kZUlkXG4gICAgY29uc3QgZmxhdHRlbiA9IChhY2M6IG1lc3NhZ2VzLlRhZ1tdLCB2YWw6IG1lc3NhZ2VzLlRhZ1tdKTogbWVzc2FnZXMuVGFnW10gPT4gYWNjLmNvbmNhdCh2YWwpXG5cbiAgICBjb25zdCB0YWcgPVxuICAgICAgZmVhdHVyZS50YWdzLmZpbmQoYnlBc3ROb2RlSWQpIHx8XG4gICAgICBzY2VuYXJpby50YWdzLmZpbmQoYnlBc3ROb2RlSWQpIHx8XG4gICAgICBzY2VuYXJpby5leGFtcGxlc1xuICAgICAgICAubWFwKChlKSA9PiBlLnRhZ3MpXG4gICAgICAgIC5yZWR1Y2UoZmxhdHRlbiwgW10pXG4gICAgICAgIC5maW5kKGJ5QXN0Tm9kZUlkKVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIG5hbWU6IHRhZ0RhdGEubmFtZSxcbiAgICAgIGxpbmU6IHRhZz8ubG9jYXRpb24/LmxpbmUsXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,7 +1,10 @@
1
1
  import * as messages from '@cucumber/messages';
2
+ import type { IFormatterOptions } from './index';
2
3
  import SummaryFormatter from './summary_formatter';
3
- import { IFormatterOptions } from './index';
4
4
  import ITestStepFinished = messages.TestStepFinished;
5
+ /**
6
+ * @deprecated the built-in `progress` formatter is now plugin-based and no longer uses this class; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
7
+ */
5
8
  export default class ProgressFormatter extends SummaryFormatter {
6
9
  static readonly documentation: string;
7
10
  constructor(options: IFormatterOptions);
@@ -47,6 +47,9 @@ const STATUS_CHARACTER_MAPPING = new Map([
47
47
  [messages.TestStepResultStatus.SKIPPED, '-'],
48
48
  [messages.TestStepResultStatus.UNDEFINED, 'U'],
49
49
  ]);
50
+ /**
51
+ * @deprecated the built-in `progress` formatter is now plugin-based and no longer uses this class; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
52
+ */
50
53
  class ProgressFormatter extends summary_formatter_1.default {
51
54
  static documentation = 'Prints one character per scenario.';
52
55
  constructor(options) {
@@ -66,4 +69,4 @@ class ProgressFormatter extends summary_formatter_1.default {
66
69
  }
67
70
  }
68
71
  exports.default = ProgressFormatter;
69
- //# sourceMappingURL=progress_formatter.js.map
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3NfZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zvcm1hdHRlci9wcm9ncmVzc19mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBOEM7QUFDOUMsb0RBQWdEO0FBRWhELDRFQUFrRDtBQUtsRCxNQUFNLHdCQUF3QixHQUErQyxJQUFJLEdBQUcsQ0FBQztJQUNuRixDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDO0lBQzlDLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUM7SUFDM0MsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQztJQUMzQyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDO0lBQzVDLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7SUFDNUMsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQztDQUMvQyxDQUFDLENBQUE7QUFFRjs7R0FFRztBQUNILE1BQXFCLGlCQUFrQixTQUFRLDJCQUFnQjtJQUN0RCxNQUFNLENBQVUsYUFBYSxHQUFXLG9DQUFvQyxDQUFBO0lBRW5GLFlBQVksT0FBMEI7UUFDcEMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUFtQixFQUFFLEVBQUU7WUFDOUQsSUFBSSxJQUFBLDZCQUFhLEVBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDbEIsQ0FBQztpQkFBTSxJQUFJLElBQUEsNkJBQWEsRUFBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO2dCQUNwRCxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1lBQzdDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNGLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUNoQixDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQUUsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLEVBQXFCO1FBQzNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLHdCQUF3QixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFBO1FBQ3ZGLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDckIsQ0FBQzs7QUFqQkgsb0NBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgZG9lc0hhdmVWYWx1ZSB9IGZyb20gJy4uL3ZhbHVlX2NoZWNrZXInXG5pbXBvcnQgdHlwZSB7IElGb3JtYXR0ZXJPcHRpb25zIH0gZnJvbSAnLi9pbmRleCdcbmltcG9ydCBTdW1tYXJ5Rm9ybWF0dGVyIGZyb20gJy4vc3VtbWFyeV9mb3JtYXR0ZXInXG5cbmltcG9ydCBJRW52ZWxvcGUgPSBtZXNzYWdlcy5FbnZlbG9wZVxuaW1wb3J0IElUZXN0U3RlcEZpbmlzaGVkID0gbWVzc2FnZXMuVGVzdFN0ZXBGaW5pc2hlZFxuXG5jb25zdCBTVEFUVVNfQ0hBUkFDVEVSX01BUFBJTkc6IE1hcDxtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cywgc3RyaW5nPiA9IG5ldyBNYXAoW1xuICBbbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuQU1CSUdVT1VTLCAnQSddLFxuICBbbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuRkFJTEVELCAnRiddLFxuICBbbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuUEFTU0VELCAnLiddLFxuICBbbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuUEVORElORywgJ1AnXSxcbiAgW21lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLlNLSVBQRUQsICctJ10sXG4gIFttZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5VTkRFRklORUQsICdVJ10sXG5dKVxuXG4vKipcbiAqIEBkZXByZWNhdGVkIHRoZSBidWlsdC1pbiBgcHJvZ3Jlc3NgIGZvcm1hdHRlciBpcyBub3cgcGx1Z2luLWJhc2VkIGFuZCBubyBsb25nZXIgdXNlcyB0aGlzIGNsYXNzOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2N1Y3VtYmVyL2N1Y3VtYmVyLWpzL2Jsb2IvbWFpbi9kb2NzL2RlcHJlY2F0aW9ucy5tZFxuICovXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQcm9ncmVzc0Zvcm1hdHRlciBleHRlbmRzIFN1bW1hcnlGb3JtYXR0ZXIge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IGRvY3VtZW50YXRpb246IHN0cmluZyA9ICdQcmludHMgb25lIGNoYXJhY3RlciBwZXIgc2NlbmFyaW8uJ1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IElGb3JtYXR0ZXJPcHRpb25zKSB7XG4gICAgb3B0aW9ucy5ldmVudEJyb2FkY2FzdGVyLm9uKCdlbnZlbG9wZScsIChlbnZlbG9wZTogSUVudmVsb3BlKSA9PiB7XG4gICAgICBpZiAoZG9lc0hhdmVWYWx1ZShlbnZlbG9wZS50ZXN0UnVuRmluaXNoZWQpKSB7XG4gICAgICAgIHRoaXMubG9nKCdcXG5cXG4nKVxuICAgICAgfSBlbHNlIGlmIChkb2VzSGF2ZVZhbHVlKGVudmVsb3BlLnRlc3RTdGVwRmluaXNoZWQpKSB7XG4gICAgICAgIHRoaXMubG9nUHJvZ3Jlc3MoZW52ZWxvcGUudGVzdFN0ZXBGaW5pc2hlZClcbiAgICAgIH1cbiAgICB9KVxuICAgIHN1cGVyKG9wdGlvbnMpXG4gIH1cblxuICBsb2dQcm9ncmVzcyh7IHRlc3RTdGVwUmVzdWx0OiB7IHN0YXR1cyB9IH06IElUZXN0U3RlcEZpbmlzaGVkKTogdm9pZCB7XG4gICAgY29uc3QgY2hhcmFjdGVyID0gdGhpcy5jb2xvckZucy5mb3JTdGF0dXMoc3RhdHVzKShTVEFUVVNfQ0hBUkFDVEVSX01BUFBJTkcuZ2V0KHN0YXR1cykpXG4gICAgdGhpcy5sb2coY2hhcmFjdGVyKVxuICB9XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import Formatter, { IFormatterOptions } from './';
1
+ import Formatter, { type IFormatterOptions } from './';
2
2
  interface UriToLinesMap {
3
3
  [uri: string]: number[];
4
4
  }
@@ -38,8 +38,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const messages = __importStar(require("@cucumber/messages"));
40
40
  const value_checker_1 = require("../value_checker");
41
- const gherkin_document_parser_1 = require("./helpers/gherkin_document_parser");
42
41
  const _1 = __importDefault(require("./"));
42
+ const gherkin_document_parser_1 = require("./helpers/gherkin_document_parser");
43
43
  const DEFAULT_SEPARATOR = '\n';
44
44
  function isFailedAttempt(worstTestStepResult) {
45
45
  return worstTestStepResult.status !== messages.TestStepResultStatus.PASSED;
@@ -88,4 +88,4 @@ class RerunFormatter extends _1.default {
88
88
  }
89
89
  }
90
90
  exports.default = RerunFormatter;
91
- //# sourceMappingURL=rerun_formatter.js.map
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVydW5fZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zvcm1hdHRlci9yZXJ1bl9mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBOEM7QUFDOUMsb0RBQWtGO0FBQ2xGLDBDQUFzRDtBQUN0RCwrRUFBaUY7QUFFakYsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUE7QUFNOUIsU0FBUyxlQUFlLENBQUMsbUJBQTRDO0lBQ25FLE9BQU8sbUJBQW1CLENBQUMsTUFBTSxLQUFLLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUE7QUFDNUUsQ0FBQztBQUVELE1BQXFCLGNBQWUsU0FBUSxVQUFTO0lBQ2hDLFNBQVMsQ0FBUTtJQUM3QixNQUFNLENBQVUsYUFBYSxHQUFXLHlDQUF5QyxDQUFBO0lBRXhGLFlBQVksT0FBMEI7UUFDcEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2QsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUEyQixFQUFFLEVBQUU7WUFDdEUsSUFBSSxJQUFBLDZCQUFhLEVBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFBO1lBQzNCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNGLE1BQU0sWUFBWSxHQUFHLElBQUEsOEJBQWMsRUFBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFBO1FBQ3hFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBQSw4QkFBYyxFQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLENBQUMsQ0FBQTtJQUM1RSxDQUFDO0lBRUQsYUFBYTtRQUNYLE1BQU0sT0FBTyxHQUFrQixFQUFFLENBQUE7UUFDakMsSUFBSSxDQUFDLGtCQUFrQjthQUNwQixtQkFBbUIsRUFBRTthQUNyQixPQUFPLENBQUMsQ0FBQyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLEVBQUUsRUFBRTtZQUMzRSxJQUFJLGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzNELE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUE7Z0JBQzlCLE1BQU0sSUFBSSxHQUNSLElBQUEsdURBQTZCLEVBQUMsZUFBZSxDQUFDLENBQzVDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQ2hELENBQUMsSUFBSSxDQUFBO2dCQUNSLElBQUksSUFBQSxnQ0FBZ0IsRUFBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUMzQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxDQUFBO2dCQUMzQixDQUFDO2dCQUNELE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDakMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO1FBRUosT0FBTyxPQUFPLENBQUE7SUFDaEIsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUE7UUFFcEMsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQzthQUN4QixHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUNYLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUMxQixPQUFPLEdBQUcsR0FBRyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQTtRQUNwQyxDQUFDLENBQUM7YUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUE7UUFDcEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQTtJQUMzQixDQUFDOztBQWxESCxpQ0FtREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgeyBkb2VzSGF2ZVZhbHVlLCBkb2VzTm90SGF2ZVZhbHVlLCB2YWx1ZU9yRGVmYXVsdCB9IGZyb20gJy4uL3ZhbHVlX2NoZWNrZXInXG5pbXBvcnQgRm9ybWF0dGVyLCB7IHR5cGUgSUZvcm1hdHRlck9wdGlvbnMgfSBmcm9tICcuLydcbmltcG9ydCB7IGdldEdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwIH0gZnJvbSAnLi9oZWxwZXJzL2doZXJraW5fZG9jdW1lbnRfcGFyc2VyJ1xuXG5jb25zdCBERUZBVUxUX1NFUEFSQVRPUiA9ICdcXG4nXG5cbmludGVyZmFjZSBVcmlUb0xpbmVzTWFwIHtcbiAgW3VyaTogc3RyaW5nXTogbnVtYmVyW11cbn1cblxuZnVuY3Rpb24gaXNGYWlsZWRBdHRlbXB0KHdvcnN0VGVzdFN0ZXBSZXN1bHQ6IG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0KSB7XG4gIHJldHVybiB3b3JzdFRlc3RTdGVwUmVzdWx0LnN0YXR1cyAhPT0gbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuUEFTU0VEXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFJlcnVuRm9ybWF0dGVyIGV4dGVuZHMgRm9ybWF0dGVyIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHNlcGFyYXRvcjogc3RyaW5nXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZG9jdW1lbnRhdGlvbjogc3RyaW5nID0gJ1ByaW50cyBmYWlsaW5nIGZpbGVzIHdpdGggbGluZSBudW1iZXJzLidcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBJRm9ybWF0dGVyT3B0aW9ucykge1xuICAgIHN1cGVyKG9wdGlvbnMpXG4gICAgb3B0aW9ucy5ldmVudEJyb2FkY2FzdGVyLm9uKCdlbnZlbG9wZScsIChlbnZlbG9wZTogbWVzc2FnZXMuRW52ZWxvcGUpID0+IHtcbiAgICAgIGlmIChkb2VzSGF2ZVZhbHVlKGVudmVsb3BlLnRlc3RSdW5GaW5pc2hlZCkpIHtcbiAgICAgICAgdGhpcy5sb2dGYWlsZWRUZXN0Q2FzZXMoKVxuICAgICAgfVxuICAgIH0pXG4gICAgY29uc3QgcmVydW5PcHRpb25zID0gdmFsdWVPckRlZmF1bHQob3B0aW9ucy5wYXJzZWRBcmd2T3B0aW9ucy5yZXJ1biwge30pXG4gICAgdGhpcy5zZXBhcmF0b3IgPSB2YWx1ZU9yRGVmYXVsdChyZXJ1bk9wdGlvbnMuc2VwYXJhdG9yLCBERUZBVUxUX1NFUEFSQVRPUilcbiAgfVxuXG4gIGdldEZhaWx1cmVNYXAoKTogVXJpVG9MaW5lc01hcCB7XG4gICAgY29uc3QgbWFwcGluZzogVXJpVG9MaW5lc01hcCA9IHt9XG4gICAgdGhpcy5ldmVudERhdGFDb2xsZWN0b3JcbiAgICAgIC5nZXRUZXN0Q2FzZUF0dGVtcHRzKClcbiAgICAgIC5mb3JFYWNoKCh7IGdoZXJraW5Eb2N1bWVudCwgcGlja2xlLCB3b3JzdFRlc3RTdGVwUmVzdWx0LCB3aWxsQmVSZXRyaWVkIH0pID0+IHtcbiAgICAgICAgaWYgKGlzRmFpbGVkQXR0ZW1wdCh3b3JzdFRlc3RTdGVwUmVzdWx0KSAmJiAhd2lsbEJlUmV0cmllZCkge1xuICAgICAgICAgIGNvbnN0IHJlbGF0aXZlVXJpID0gcGlja2xlLnVyaVxuICAgICAgICAgIGNvbnN0IGxpbmUgPVxuICAgICAgICAgICAgZ2V0R2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAoZ2hlcmtpbkRvY3VtZW50KVtcbiAgICAgICAgICAgICAgcGlja2xlLmFzdE5vZGVJZHNbcGlja2xlLmFzdE5vZGVJZHMubGVuZ3RoIC0gMV1cbiAgICAgICAgICAgIF0ubGluZVxuICAgICAgICAgIGlmIChkb2VzTm90SGF2ZVZhbHVlKG1hcHBpbmdbcmVsYXRpdmVVcmldKSkge1xuICAgICAgICAgICAgbWFwcGluZ1tyZWxhdGl2ZVVyaV0gPSBbXVxuICAgICAgICAgIH1cbiAgICAgICAgICBtYXBwaW5nW3JlbGF0aXZlVXJpXS5wdXNoKGxpbmUpXG4gICAgICAgIH1cbiAgICAgIH0pXG5cbiAgICByZXR1cm4gbWFwcGluZ1xuICB9XG5cbiAgZm9ybWF0RmFpbGVkVGVzdENhc2VzKCk6IHN0cmluZyB7XG4gICAgY29uc3QgbWFwcGluZyA9IHRoaXMuZ2V0RmFpbHVyZU1hcCgpXG5cbiAgICByZXR1cm4gT2JqZWN0LmtleXMobWFwcGluZylcbiAgICAgIC5tYXAoKHVyaSkgPT4ge1xuICAgICAgICBjb25zdCBsaW5lcyA9IG1hcHBpbmdbdXJpXVxuICAgICAgICByZXR1cm4gYCR7dXJpfToke2xpbmVzLmpvaW4oJzonKX1gXG4gICAgICB9KVxuICAgICAgLmpvaW4odGhpcy5zZXBhcmF0b3IpXG4gIH1cblxuICBsb2dGYWlsZWRUZXN0Q2FzZXMoKTogdm9pZCB7XG4gICAgY29uc3QgZmFpbGVkVGVzdENhc2VzID0gdGhpcy5mb3JtYXRGYWlsZWRUZXN0Q2FzZXMoKVxuICAgIHRoaXMubG9nKGZhaWxlZFRlc3RDYXNlcylcbiAgfVxufVxuIl19
@@ -1,2 +1,2 @@
1
- import { FormatterImplementation } from './index';
1
+ import type { FormatterImplementation } from './index';
2
2
  export declare function resolveImplementation(specifier: string, cwd: string): Promise<FormatterImplementation>;
@@ -5,8 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.resolveImplementation = resolveImplementation;
7
7
  const builtin_1 = __importDefault(require("./builtin"));
8
- const import_code_1 = require("./import_code");
9
8
  const find_class_or_plugin_1 = require("./find_class_or_plugin");
9
+ const import_code_1 = require("./import_code");
10
10
  async function resolveImplementation(specifier, cwd) {
11
11
  const fromBuiltin = builtin_1.default[specifier];
12
12
  if (fromBuiltin) {
@@ -24,4 +24,4 @@ async function resolveImplementation(specifier, cwd) {
24
24
  }
25
25
  return found;
26
26
  }
27
- //# sourceMappingURL=resolve_implementation.js.map
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZV9pbXBsZW1lbnRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3JtYXR0ZXIvcmVzb2x2ZV9pbXBsZW1lbnRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLHNEQWtCQztBQXZCRCx3REFBK0I7QUFDL0IsaUVBQTBEO0FBQzFELCtDQUEwQztBQUduQyxLQUFLLFVBQVUscUJBQXFCLENBQ3pDLFNBQWlCLEVBQ2pCLEdBQVc7SUFFWCxNQUFNLFdBQVcsR0FBRyxpQkFBTyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ3RDLElBQUksV0FBVyxFQUFFLENBQUM7UUFDaEIsSUFBSSxPQUFPLFdBQVcsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNwQyxPQUFPLFdBQVcsQ0FBQTtRQUNwQixDQUFDO2FBQU0sQ0FBQztZQUNOLFNBQVMsR0FBRyxXQUFXLENBQUE7UUFDekIsQ0FBQztJQUNILENBQUM7SUFDRCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUEsd0JBQVUsRUFBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUE7SUFDakQsTUFBTSxLQUFLLEdBQUcsSUFBQSx3Q0FBaUIsRUFBQyxRQUFRLENBQUMsQ0FBQTtJQUN6QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsU0FBUyxtQ0FBbUMsQ0FBQyxDQUFBO0lBQ2xFLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYnVpbHRpbiBmcm9tICcuL2J1aWx0aW4nXG5pbXBvcnQgeyBmaW5kQ2xhc3NPclBsdWdpbiB9IGZyb20gJy4vZmluZF9jbGFzc19vcl9wbHVnaW4nXG5pbXBvcnQgeyBpbXBvcnRDb2RlIH0gZnJvbSAnLi9pbXBvcnRfY29kZSdcbmltcG9ydCB0eXBlIHsgRm9ybWF0dGVySW1wbGVtZW50YXRpb24gfSBmcm9tICcuL2luZGV4J1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVzb2x2ZUltcGxlbWVudGF0aW9uKFxuICBzcGVjaWZpZXI6IHN0cmluZyxcbiAgY3dkOiBzdHJpbmdcbik6IFByb21pc2U8Rm9ybWF0dGVySW1wbGVtZW50YXRpb24+IHtcbiAgY29uc3QgZnJvbUJ1aWx0aW4gPSBidWlsdGluW3NwZWNpZmllcl1cbiAgaWYgKGZyb21CdWlsdGluKSB7XG4gICAgaWYgKHR5cGVvZiBmcm9tQnVpbHRpbiAhPT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBmcm9tQnVpbHRpblxuICAgIH0gZWxzZSB7XG4gICAgICBzcGVjaWZpZXIgPSBmcm9tQnVpbHRpblxuICAgIH1cbiAgfVxuICBjb25zdCBpbXBvcnRlZCA9IGF3YWl0IGltcG9ydENvZGUoc3BlY2lmaWVyLCBjd2QpXG4gIGNvbnN0IGZvdW5kID0gZmluZENsYXNzT3JQbHVnaW4oaW1wb3J0ZWQpXG4gIGlmICghZm91bmQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYCR7c3BlY2lmaWVyfSBkb2VzIG5vdCBleHBvcnQgYSBmdW5jdGlvbi9jbGFzc2ApXG4gIH1cbiAgcmV0dXJuIGZvdW5kXG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import Formatter, { IFormatterOptions } from './';
1
+ import Formatter, { type IFormatterOptions } from './';
2
2
  export default class SnippetsFormatter extends Formatter {
3
3
  static readonly documentation: string;
4
4
  constructor(options: IFormatterOptions);
@@ -38,8 +38,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  const messages = __importStar(require("@cucumber/messages"));
40
40
  const value_checker_1 = require("../value_checker");
41
- const helpers_1 = require("./helpers");
42
41
  const _1 = __importDefault(require("./"));
42
+ const helpers_1 = require("./helpers");
43
43
  class SnippetsFormatter extends _1.default {
44
44
  static documentation = "The Snippets Formatter doesn't output anything regarding the test run; it just prints snippets to implement any undefined steps";
45
45
  constructor(options) {
@@ -68,4 +68,4 @@ class SnippetsFormatter extends _1.default {
68
68
  }
69
69
  }
70
70
  exports.default = SnippetsFormatter;
71
- //# sourceMappingURL=snippets_formatter.js.map
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25pcHBldHNfZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zvcm1hdHRlci9zbmlwcGV0c19mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBOEM7QUFDOUMsb0RBQWdEO0FBQ2hELDBDQUFzRDtBQUN0RCx1Q0FBZ0Q7QUFJaEQsTUFBcUIsaUJBQWtCLFNBQVEsVUFBUztJQUMvQyxNQUFNLENBQVUsYUFBYSxHQUNsQyxpSUFBaUksQ0FBQTtJQUVuSSxZQUFZLE9BQTBCO1FBQ3BDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNkLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsUUFBbUIsRUFBRSxFQUFFO1lBQzlELElBQUksSUFBQSw2QkFBYSxFQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7WUFDcEIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCxNQUFNLFFBQVEsR0FBYSxFQUFFLENBQUE7UUFDN0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUU7WUFDeEUsTUFBTSxNQUFNLEdBQUcsSUFBQSw4QkFBb0IsRUFBQztnQkFDbEMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsa0JBQWtCO2dCQUMzQyxlQUFlO2FBQ2hCLENBQUMsQ0FBQTtZQUNGLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ3BDLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEtBQUssUUFBUSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUN2RSxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQkFDakMsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtJQUNqQyxDQUFDOztBQTVCSCxvQ0E2QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgeyBkb2VzSGF2ZVZhbHVlIH0gZnJvbSAnLi4vdmFsdWVfY2hlY2tlcidcbmltcG9ydCBGb3JtYXR0ZXIsIHsgdHlwZSBJRm9ybWF0dGVyT3B0aW9ucyB9IGZyb20gJy4vJ1xuaW1wb3J0IHsgcGFyc2VUZXN0Q2FzZUF0dGVtcHQgfSBmcm9tICcuL2hlbHBlcnMnXG5cbmltcG9ydCBJRW52ZWxvcGUgPSBtZXNzYWdlcy5FbnZlbG9wZVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBTbmlwcGV0c0Zvcm1hdHRlciBleHRlbmRzIEZvcm1hdHRlciB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZG9jdW1lbnRhdGlvbjogc3RyaW5nID1cbiAgICBcIlRoZSBTbmlwcGV0cyBGb3JtYXR0ZXIgZG9lc24ndCBvdXRwdXQgYW55dGhpbmcgcmVnYXJkaW5nIHRoZSB0ZXN0IHJ1bjsgaXQganVzdCBwcmludHMgc25pcHBldHMgdG8gaW1wbGVtZW50IGFueSB1bmRlZmluZWQgc3RlcHNcIlxuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IElGb3JtYXR0ZXJPcHRpb25zKSB7XG4gICAgc3VwZXIob3B0aW9ucylcbiAgICBvcHRpb25zLmV2ZW50QnJvYWRjYXN0ZXIub24oJ2VudmVsb3BlJywgKGVudmVsb3BlOiBJRW52ZWxvcGUpID0+IHtcbiAgICAgIGlmIChkb2VzSGF2ZVZhbHVlKGVudmVsb3BlLnRlc3RSdW5GaW5pc2hlZCkpIHtcbiAgICAgICAgdGhpcy5sb2dTbmlwcGV0cygpXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGxvZ1NuaXBwZXRzKCk6IHZvaWQge1xuICAgIGNvbnN0IHNuaXBwZXRzOiBzdHJpbmdbXSA9IFtdXG4gICAgdGhpcy5ldmVudERhdGFDb2xsZWN0b3IuZ2V0VGVzdENhc2VBdHRlbXB0cygpLmZvckVhY2goKHRlc3RDYXNlQXR0ZW1wdCkgPT4ge1xuICAgICAgY29uc3QgcGFyc2VkID0gcGFyc2VUZXN0Q2FzZUF0dGVtcHQoe1xuICAgICAgICBzbmlwcGV0QnVpbGRlcjogdGhpcy5zbmlwcGV0QnVpbGRlcixcbiAgICAgICAgc3VwcG9ydENvZGVMaWJyYXJ5OiB0aGlzLnN1cHBvcnRDb2RlTGlicmFyeSxcbiAgICAgICAgdGVzdENhc2VBdHRlbXB0LFxuICAgICAgfSlcbiAgICAgIHBhcnNlZC50ZXN0U3RlcHMuZm9yRWFjaCgodGVzdFN0ZXApID0+IHtcbiAgICAgICAgaWYgKHRlc3RTdGVwLnJlc3VsdC5zdGF0dXMgPT09IG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLlVOREVGSU5FRCkge1xuICAgICAgICAgIHNuaXBwZXRzLnB1c2godGVzdFN0ZXAuc25pcHBldClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9KVxuICAgIHRoaXMubG9nKHNuaXBwZXRzLmpvaW4oJ1xcblxcbicpKVxuICB9XG59XG4iXX0=
@@ -1,7 +1,7 @@
1
- import { ParameterTypeRegistry } from '@cucumber/cucumber-expressions';
2
- import * as messages from '@cucumber/messages';
1
+ import { type ParameterTypeRegistry } from '@cucumber/cucumber-expressions';
2
+ import type * as messages from '@cucumber/messages';
3
3
  import { KeywordType } from '../helpers';
4
- import { ISnippetSnytax } from './snippet_syntax';
4
+ import type { ISnippetSnytax } from './snippet_syntax';
5
5
  export interface INewStepDefinitionSnippetBuilderOptions {
6
6
  snippetSyntax: ISnippetSnytax;
7
7
  parameterTypeRegistry: ParameterTypeRegistry;
@@ -13,7 +13,7 @@ export interface IBuildRequest {
13
13
  export default class StepDefinitionSnippetBuilder {
14
14
  private readonly snippetSyntax;
15
15
  private readonly cucumberExpressionGenerator;
16
- constructor({ snippetSyntax, parameterTypeRegistry, }: INewStepDefinitionSnippetBuilderOptions);
16
+ constructor({ snippetSyntax, parameterTypeRegistry }: INewStepDefinitionSnippetBuilderOptions);
17
17
  build({ keywordType, pickleStep }: IBuildRequest): string;
18
18
  buildMultiple({ keywordType, pickleStep }: IBuildRequest): string[];
19
19
  getFunctionName(keywordType: KeywordType): string;
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const cucumber_expressions_1 = require("@cucumber/cucumber-expressions");
4
- const helpers_1 = require("../helpers");
5
4
  const step_arguments_1 = require("../../step_arguments");
6
5
  const value_checker_1 = require("../../value_checker");
6
+ const helpers_1 = require("../helpers");
7
7
  class StepDefinitionSnippetBuilder {
8
8
  snippetSyntax;
9
9
  cucumberExpressionGenerator;
10
- constructor({ snippetSyntax, parameterTypeRegistry, }) {
10
+ constructor({ snippetSyntax, parameterTypeRegistry }) {
11
11
  this.snippetSyntax = snippetSyntax;
12
12
  this.cucumberExpressionGenerator = new cucumber_expressions_1.CucumberExpressionGenerator(() => parameterTypeRegistry.parameterTypes);
13
13
  }
@@ -59,4 +59,4 @@ class StepDefinitionSnippetBuilder {
59
59
  }
60
60
  }
61
61
  exports.default = StepDefinitionSnippetBuilder;
62
- //# sourceMappingURL=index.js.map
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZm9ybWF0dGVyL3N0ZXBfZGVmaW5pdGlvbl9zbmlwcGV0X2J1aWxkZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSx5RUFHdUM7QUFFdkMseURBQXdEO0FBQ3hELHVEQUFtRDtBQUNuRCx3Q0FBd0M7QUFheEMsTUFBcUIsNEJBQTRCO0lBQzlCLGFBQWEsQ0FBZ0I7SUFDN0IsMkJBQTJCLENBQTZCO0lBRXpFLFlBQVksRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQTJDO1FBQzNGLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFBO1FBQ2xDLElBQUksQ0FBQywyQkFBMkIsR0FBRyxJQUFJLGtEQUEyQixDQUNoRSxHQUFHLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQzNDLENBQUE7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBaUI7UUFDOUMsTUFBTSxPQUFPLEdBQUcsbUVBQW1FLENBQUE7UUFDbkYsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUN0RCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQywyQkFBMkIsQ0FBQyxtQkFBbUIsQ0FDL0UsVUFBVSxDQUFDLElBQUksQ0FDaEIsQ0FBQTtRQUNELE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2pFLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7WUFDOUIsT0FBTztZQUNQLFlBQVk7WUFDWixvQkFBb0I7WUFDcEIsa0JBQWtCO1NBQ25CLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxhQUFhLENBQUMsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFpQjtRQUN0RCxNQUFNLE9BQU8sR0FBRyxtRUFBbUUsQ0FBQTtRQUNuRixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ3RELE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLG1CQUFtQixDQUMvRSxVQUFVLENBQUMsSUFBSSxDQUNoQixDQUFBO1FBQ0QsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDakUsT0FBTyxvQkFBb0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFO1lBQ3RELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7Z0JBQzlCLE9BQU87Z0JBQ1AsWUFBWTtnQkFDWixvQkFBb0IsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUMzQyxrQkFBa0I7YUFDbkIsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsZUFBZSxDQUFDLFdBQXdCO1FBQ3RDLFFBQVEsV0FBVyxFQUFFLENBQUM7WUFDcEIsS0FBSyxxQkFBVyxDQUFDLEtBQUs7Z0JBQ3BCLE9BQU8sTUFBTSxDQUFBO1lBQ2YsS0FBSyxxQkFBVyxDQUFDLE9BQU87Z0JBQ3RCLE9BQU8sTUFBTSxDQUFBO1lBQ2YsS0FBSyxxQkFBVyxDQUFDLFlBQVk7Z0JBQzNCLE9BQU8sT0FBTyxDQUFBO1FBQ2xCLENBQUM7SUFDSCxDQUFDO0lBRUQscUJBQXFCLENBQUMsSUFBeUI7UUFDN0MsSUFBSSxJQUFBLDZCQUFhLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDakMsTUFBTSxZQUFZLEdBQUcsSUFBQSxrQ0FBaUIsRUFBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNwRCxTQUFTLEVBQUUsR0FBRyxFQUFFLENBQUMsV0FBVztnQkFDNUIsU0FBUyxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVc7YUFDN0IsQ0FBQyxDQUFBO1lBQ0YsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFBO1FBQ3ZCLENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQTtJQUNYLENBQUM7Q0FDRjtBQWhFRCwrQ0FnRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDdWN1bWJlckV4cHJlc3Npb25HZW5lcmF0b3IsXG4gIHR5cGUgUGFyYW1ldGVyVHlwZVJlZ2lzdHJ5LFxufSBmcm9tICdAY3VjdW1iZXIvY3VjdW1iZXItZXhwcmVzc2lvbnMnXG5pbXBvcnQgdHlwZSAqIGFzIG1lc3NhZ2VzIGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB7IHBhcnNlU3RlcEFyZ3VtZW50IH0gZnJvbSAnLi4vLi4vc3RlcF9hcmd1bWVudHMnXG5pbXBvcnQgeyBkb2VzSGF2ZVZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWVfY2hlY2tlcidcbmltcG9ydCB7IEtleXdvcmRUeXBlIH0gZnJvbSAnLi4vaGVscGVycydcbmltcG9ydCB0eXBlIHsgSVNuaXBwZXRTbnl0YXggfSBmcm9tICcuL3NuaXBwZXRfc3ludGF4J1xuXG5leHBvcnQgaW50ZXJmYWNlIElOZXdTdGVwRGVmaW5pdGlvblNuaXBwZXRCdWlsZGVyT3B0aW9ucyB7XG4gIHNuaXBwZXRTeW50YXg6IElTbmlwcGV0U255dGF4XG4gIHBhcmFtZXRlclR5cGVSZWdpc3RyeTogUGFyYW1ldGVyVHlwZVJlZ2lzdHJ5XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUJ1aWxkUmVxdWVzdCB7XG4gIGtleXdvcmRUeXBlOiBLZXl3b3JkVHlwZVxuICBwaWNrbGVTdGVwOiBtZXNzYWdlcy5QaWNrbGVTdGVwXG59XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFN0ZXBEZWZpbml0aW9uU25pcHBldEJ1aWxkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHNuaXBwZXRTeW50YXg6IElTbmlwcGV0U255dGF4XG4gIHByaXZhdGUgcmVhZG9ubHkgY3VjdW1iZXJFeHByZXNzaW9uR2VuZXJhdG9yOiBDdWN1bWJlckV4cHJlc3Npb25HZW5lcmF0b3JcblxuICBjb25zdHJ1Y3Rvcih7IHNuaXBwZXRTeW50YXgsIHBhcmFtZXRlclR5cGVSZWdpc3RyeSB9OiBJTmV3U3RlcERlZmluaXRpb25TbmlwcGV0QnVpbGRlck9wdGlvbnMpIHtcbiAgICB0aGlzLnNuaXBwZXRTeW50YXggPSBzbmlwcGV0U3ludGF4XG4gICAgdGhpcy5jdWN1bWJlckV4cHJlc3Npb25HZW5lcmF0b3IgPSBuZXcgQ3VjdW1iZXJFeHByZXNzaW9uR2VuZXJhdG9yKFxuICAgICAgKCkgPT4gcGFyYW1ldGVyVHlwZVJlZ2lzdHJ5LnBhcmFtZXRlclR5cGVzXG4gICAgKVxuICB9XG5cbiAgYnVpbGQoeyBrZXl3b3JkVHlwZSwgcGlja2xlU3RlcCB9OiBJQnVpbGRSZXF1ZXN0KTogc3RyaW5nIHtcbiAgICBjb25zdCBjb21tZW50ID0gJ1dyaXRlIGNvZGUgaGVyZSB0aGF0IHR1cm5zIHRoZSBwaHJhc2UgYWJvdmUgaW50byBjb25jcmV0ZSBhY3Rpb25zJ1xuICAgIGNvbnN0IGZ1bmN0aW9uTmFtZSA9IHRoaXMuZ2V0RnVuY3Rpb25OYW1lKGtleXdvcmRUeXBlKVxuICAgIGNvbnN0IGdlbmVyYXRlZEV4cHJlc3Npb25zID0gdGhpcy5jdWN1bWJlckV4cHJlc3Npb25HZW5lcmF0b3IuZ2VuZXJhdGVFeHByZXNzaW9ucyhcbiAgICAgIHBpY2tsZVN0ZXAudGV4dFxuICAgIClcbiAgICBjb25zdCBzdGVwUGFyYW1ldGVyTmFtZXMgPSB0aGlzLmdldFN0ZXBQYXJhbWV0ZXJOYW1lcyhwaWNrbGVTdGVwKVxuICAgIHJldHVybiB0aGlzLnNuaXBwZXRTeW50YXguYnVpbGQoe1xuICAgICAgY29tbWVudCxcbiAgICAgIGZ1bmN0aW9uTmFtZSxcbiAgICAgIGdlbmVyYXRlZEV4cHJlc3Npb25zLFxuICAgICAgc3RlcFBhcmFtZXRlck5hbWVzLFxuICAgIH0pXG4gIH1cblxuICBidWlsZE11bHRpcGxlKHsga2V5d29yZFR5cGUsIHBpY2tsZVN0ZXAgfTogSUJ1aWxkUmVxdWVzdCk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCBjb21tZW50ID0gJ1dyaXRlIGNvZGUgaGVyZSB0aGF0IHR1cm5zIHRoZSBwaHJhc2UgYWJvdmUgaW50byBjb25jcmV0ZSBhY3Rpb25zJ1xuICAgIGNvbnN0IGZ1bmN0aW9uTmFtZSA9IHRoaXMuZ2V0RnVuY3Rpb25OYW1lKGtleXdvcmRUeXBlKVxuICAgIGNvbnN0IGdlbmVyYXRlZEV4cHJlc3Npb25zID0gdGhpcy5jdWN1bWJlckV4cHJlc3Npb25HZW5lcmF0b3IuZ2VuZXJhdGVFeHByZXNzaW9ucyhcbiAgICAgIHBpY2tsZVN0ZXAudGV4dFxuICAgIClcbiAgICBjb25zdCBzdGVwUGFyYW1ldGVyTmFtZXMgPSB0aGlzLmdldFN0ZXBQYXJhbWV0ZXJOYW1lcyhwaWNrbGVTdGVwKVxuICAgIHJldHVybiBnZW5lcmF0ZWRFeHByZXNzaW9ucy5tYXAoKGdlbmVyYXRlZEV4cHJlc3Npb24pID0+IHtcbiAgICAgIHJldHVybiB0aGlzLnNuaXBwZXRTeW50YXguYnVpbGQoe1xuICAgICAgICBjb21tZW50LFxuICAgICAgICBmdW5jdGlvbk5hbWUsXG4gICAgICAgIGdlbmVyYXRlZEV4cHJlc3Npb25zOiBbZ2VuZXJhdGVkRXhwcmVzc2lvbl0sXG4gICAgICAgIHN0ZXBQYXJhbWV0ZXJOYW1lcyxcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIGdldEZ1bmN0aW9uTmFtZShrZXl3b3JkVHlwZTogS2V5d29yZFR5cGUpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoa2V5d29yZFR5cGUpIHtcbiAgICAgIGNhc2UgS2V5d29yZFR5cGUuRXZlbnQ6XG4gICAgICAgIHJldHVybiAnV2hlbidcbiAgICAgIGNhc2UgS2V5d29yZFR5cGUuT3V0Y29tZTpcbiAgICAgICAgcmV0dXJuICdUaGVuJ1xuICAgICAgY2FzZSBLZXl3b3JkVHlwZS5QcmVjb25kaXRpb246XG4gICAgICAgIHJldHVybiAnR2l2ZW4nXG4gICAgfVxuICB9XG5cbiAgZ2V0U3RlcFBhcmFtZXRlck5hbWVzKHN0ZXA6IG1lc3NhZ2VzLlBpY2tsZVN0ZXApOiBzdHJpbmdbXSB7XG4gICAgaWYgKGRvZXNIYXZlVmFsdWUoc3RlcC5hcmd1bWVudCkpIHtcbiAgICAgIGNvbnN0IGFyZ3VtZW50TmFtZSA9IHBhcnNlU3RlcEFyZ3VtZW50KHN0ZXAuYXJndW1lbnQsIHtcbiAgICAgICAgZGF0YVRhYmxlOiAoKSA9PiAnZGF0YVRhYmxlJyxcbiAgICAgICAgZG9jU3RyaW5nOiAoKSA9PiAnZG9jU3RyaW5nJyxcbiAgICAgIH0pXG4gICAgICByZXR1cm4gW2FyZ3VtZW50TmFtZV1cbiAgICB9XG4gICAgcmV0dXJuIFtdXG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { ISnippetSnytax, ISnippetSyntaxBuildOptions, SnippetInterface } from './snippet_syntax';
1
+ import { type ISnippetSnytax, type ISnippetSyntaxBuildOptions, SnippetInterface } from './snippet_syntax';
2
2
  export default class JavaScriptSnippetSyntax implements ISnippetSnytax {
3
3
  private readonly snippetInterface;
4
4
  constructor(snippetInterface: SnippetInterface);
@@ -10,7 +10,7 @@ class JavaScriptSnippetSyntax {
10
10
  build({ comment, generatedExpressions, functionName, stepParameterNames, }) {
11
11
  let functionKeyword = 'function ';
12
12
  if (this.snippetInterface === snippet_syntax_1.SnippetInterface.AsyncAwait) {
13
- functionKeyword = 'async ' + functionKeyword;
13
+ functionKeyword = `async ${functionKeyword}`;
14
14
  }
15
15
  let implementation;
16
16
  if (this.snippetInterface === snippet_syntax_1.SnippetInterface.Callback) {
@@ -30,9 +30,7 @@ class JavaScriptSnippetSyntax {
30
30
  }
31
31
  return `${prefix + functionName}('${this.escapeSpecialCharacters(generatedExpression)}', ${functionKeyword}(${allParameterNames.join(', ')}) {\n`;
32
32
  });
33
- return (`${definitionChoices.join('')} // ${comment}\n` +
34
- ` ${implementation}\n` +
35
- '});');
33
+ return `${definitionChoices.join('')} // ${comment}\n ${implementation}\n});`;
36
34
  }
37
35
  escapeSpecialCharacters(generatedExpression) {
38
36
  let source = generatedExpression.source;
@@ -44,4 +42,4 @@ class JavaScriptSnippetSyntax {
44
42
  }
45
43
  }
46
44
  exports.default = JavaScriptSnippetSyntax;
47
- //# sourceMappingURL=javascript_snippet_syntax.js.map
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YXNjcmlwdF9zbmlwcGV0X3N5bnRheC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mb3JtYXR0ZXIvc3RlcF9kZWZpbml0aW9uX3NuaXBwZXRfYnVpbGRlci9qYXZhc2NyaXB0X3NuaXBwZXRfc3ludGF4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQ0EscURBSXlCO0FBRXpCLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQTtBQUVoQyxNQUFxQix1QkFBdUI7SUFDekIsZ0JBQWdCLENBQWtCO0lBRW5ELFlBQVksZ0JBQWtDO1FBQzVDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQTtJQUMxQyxDQUFDO0lBRUQsS0FBSyxDQUFDLEVBQ0osT0FBTyxFQUNQLG9CQUFvQixFQUNwQixZQUFZLEVBQ1osa0JBQWtCLEdBQ1M7UUFDM0IsSUFBSSxlQUFlLEdBQUcsV0FBVyxDQUFBO1FBQ2pDLElBQUksSUFBSSxDQUFDLGdCQUFnQixLQUFLLGlDQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzFELGVBQWUsR0FBRyxTQUFTLGVBQWUsRUFBRSxDQUFBO1FBQzlDLENBQUM7UUFFRCxJQUFJLGNBQXNCLENBQUE7UUFDMUIsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssaUNBQWdCLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDeEQsY0FBYyxHQUFHLEdBQUcsYUFBYSxvQkFBb0IsQ0FBQTtRQUN2RCxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEtBQUssaUNBQWdCLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDOUQsY0FBYyxHQUFHLG9DQUFvQyxDQUFBO1FBQ3ZELENBQUM7YUFBTSxDQUFDO1lBQ04sY0FBYyxHQUFHLG1CQUFtQixDQUFBO1FBQ3RDLENBQUM7UUFFRCxNQUFNLGlCQUFpQixHQUFHLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDLG1CQUFtQixFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ2hGLE1BQU0sTUFBTSxHQUFHLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFBO1lBQ3ZDLE1BQU0saUJBQWlCLEdBQUcsbUJBQW1CLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO1lBQ3ZGLElBQUksSUFBSSxDQUFDLGdCQUFnQixLQUFLLGlDQUFnQixDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN4RCxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7WUFDdkMsQ0FBQztZQUNELE9BQU8sR0FBRyxNQUFNLEdBQUcsWUFBWSxLQUFLLElBQUksQ0FBQyx1QkFBdUIsQ0FDOUQsbUJBQW1CLENBQ3BCLE1BQU0sZUFBZSxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFBO1FBQy9ELENBQUMsQ0FBQyxDQUFBO1FBRUYsT0FBTyxHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsUUFBUSxPQUFPLE9BQU8sY0FBYyxPQUFPLENBQUE7SUFDakYsQ0FBQztJQUVPLHVCQUF1QixDQUFDLG1CQUF3QztRQUN0RSxJQUFJLE1BQU0sR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUE7UUFDdkMsaUVBQWlFO1FBQ2pFLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUN0Qyw4REFBOEQ7UUFDOUQsTUFBTSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ3BDLE9BQU8sTUFBTSxDQUFBO0lBQ2YsQ0FBQztDQUNGO0FBakRELDBDQWlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgR2VuZXJhdGVkRXhwcmVzc2lvbiB9IGZyb20gJ0BjdWN1bWJlci9jdWN1bWJlci1leHByZXNzaW9ucydcbmltcG9ydCB7XG4gIHR5cGUgSVNuaXBwZXRTbnl0YXgsXG4gIHR5cGUgSVNuaXBwZXRTeW50YXhCdWlsZE9wdGlvbnMsXG4gIFNuaXBwZXRJbnRlcmZhY2UsXG59IGZyb20gJy4vc25pcHBldF9zeW50YXgnXG5cbmNvbnN0IENBTExCQUNLX05BTUUgPSAnY2FsbGJhY2snXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEphdmFTY3JpcHRTbmlwcGV0U3ludGF4IGltcGxlbWVudHMgSVNuaXBwZXRTbnl0YXgge1xuICBwcml2YXRlIHJlYWRvbmx5IHNuaXBwZXRJbnRlcmZhY2U6IFNuaXBwZXRJbnRlcmZhY2VcblxuICBjb25zdHJ1Y3RvcihzbmlwcGV0SW50ZXJmYWNlOiBTbmlwcGV0SW50ZXJmYWNlKSB7XG4gICAgdGhpcy5zbmlwcGV0SW50ZXJmYWNlID0gc25pcHBldEludGVyZmFjZVxuICB9XG5cbiAgYnVpbGQoe1xuICAgIGNvbW1lbnQsXG4gICAgZ2VuZXJhdGVkRXhwcmVzc2lvbnMsXG4gICAgZnVuY3Rpb25OYW1lLFxuICAgIHN0ZXBQYXJhbWV0ZXJOYW1lcyxcbiAgfTogSVNuaXBwZXRTeW50YXhCdWlsZE9wdGlvbnMpOiBzdHJpbmcge1xuICAgIGxldCBmdW5jdGlvbktleXdvcmQgPSAnZnVuY3Rpb24gJ1xuICAgIGlmICh0aGlzLnNuaXBwZXRJbnRlcmZhY2UgPT09IFNuaXBwZXRJbnRlcmZhY2UuQXN5bmNBd2FpdCkge1xuICAgICAgZnVuY3Rpb25LZXl3b3JkID0gYGFzeW5jICR7ZnVuY3Rpb25LZXl3b3JkfWBcbiAgICB9XG5cbiAgICBsZXQgaW1wbGVtZW50YXRpb246IHN0cmluZ1xuICAgIGlmICh0aGlzLnNuaXBwZXRJbnRlcmZhY2UgPT09IFNuaXBwZXRJbnRlcmZhY2UuQ2FsbGJhY2spIHtcbiAgICAgIGltcGxlbWVudGF0aW9uID0gYCR7Q0FMTEJBQ0tfTkFNRX0obnVsbCwgJ3BlbmRpbmcnKTtgXG4gICAgfSBlbHNlIGlmICh0aGlzLnNuaXBwZXRJbnRlcmZhY2UgPT09IFNuaXBwZXRJbnRlcmZhY2UuUHJvbWlzZSkge1xuICAgICAgaW1wbGVtZW50YXRpb24gPSBcInJldHVybiBQcm9taXNlLnJlc29sdmUoJ3BlbmRpbmcnKTtcIlxuICAgIH0gZWxzZSB7XG4gICAgICBpbXBsZW1lbnRhdGlvbiA9IFwicmV0dXJuICdwZW5kaW5nJztcIlxuICAgIH1cblxuICAgIGNvbnN0IGRlZmluaXRpb25DaG9pY2VzID0gZ2VuZXJhdGVkRXhwcmVzc2lvbnMubWFwKChnZW5lcmF0ZWRFeHByZXNzaW9uLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3QgcHJlZml4ID0gaW5kZXggPT09IDAgPyAnJyA6ICcvLyAnXG4gICAgICBjb25zdCBhbGxQYXJhbWV0ZXJOYW1lcyA9IGdlbmVyYXRlZEV4cHJlc3Npb24ucGFyYW1ldGVyTmFtZXMuY29uY2F0KHN0ZXBQYXJhbWV0ZXJOYW1lcylcbiAgICAgIGlmICh0aGlzLnNuaXBwZXRJbnRlcmZhY2UgPT09IFNuaXBwZXRJbnRlcmZhY2UuQ2FsbGJhY2spIHtcbiAgICAgICAgYWxsUGFyYW1ldGVyTmFtZXMucHVzaChDQUxMQkFDS19OQU1FKVxuICAgICAgfVxuICAgICAgcmV0dXJuIGAke3ByZWZpeCArIGZ1bmN0aW9uTmFtZX0oJyR7dGhpcy5lc2NhcGVTcGVjaWFsQ2hhcmFjdGVycyhcbiAgICAgICAgZ2VuZXJhdGVkRXhwcmVzc2lvblxuICAgICAgKX0nLCAke2Z1bmN0aW9uS2V5d29yZH0oJHthbGxQYXJhbWV0ZXJOYW1lcy5qb2luKCcsICcpfSkge1xcbmBcbiAgICB9KVxuXG4gICAgcmV0dXJuIGAke2RlZmluaXRpb25DaG9pY2VzLmpvaW4oJycpfSAgLy8gJHtjb21tZW50fVxcbiAgJHtpbXBsZW1lbnRhdGlvbn1cXG59KTtgXG4gIH1cblxuICBwcml2YXRlIGVzY2FwZVNwZWNpYWxDaGFyYWN0ZXJzKGdlbmVyYXRlZEV4cHJlc3Npb246IEdlbmVyYXRlZEV4cHJlc3Npb24pIHtcbiAgICBsZXQgc291cmNlID0gZ2VuZXJhdGVkRXhwcmVzc2lvbi5zb3VyY2VcbiAgICAvLyBkb3VibGUgdXAgYW55IGJhY2tzbGFzaGVzIGJlY2F1c2Ugd2UncmUgaW4gYSBqYXZhc2NyaXB0IHN0cmluZ1xuICAgIHNvdXJjZSA9IHNvdXJjZS5yZXBsYWNlKC9cXFxcL2csICdcXFxcXFxcXCcpXG4gICAgLy8gZXNjYXBlIGFueSBzaW5nbGUgcXVvdGVzIGJlY2F1c2UgdGhhdCdzIG91ciBxdW90ZSBkZWxpbWl0ZXJcbiAgICBzb3VyY2UgPSBzb3VyY2UucmVwbGFjZSgvJy9nLCBcIlxcXFwnXCIpXG4gICAgcmV0dXJuIHNvdXJjZVxuICB9XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { GeneratedExpression } from '@cucumber/cucumber-expressions';
1
+ import type { GeneratedExpression } from '@cucumber/cucumber-expressions';
2
2
  export declare enum SnippetInterface {
3
3
  AsyncAwait = "async-await",
4
4
  Callback = "callback",
@@ -8,4 +8,4 @@ var SnippetInterface;
8
8
  SnippetInterface["Promise"] = "promise";
9
9
  SnippetInterface["Synchronous"] = "synchronous";
10
10
  })(SnippetInterface || (exports.SnippetInterface = SnippetInterface = {}));
11
- //# sourceMappingURL=snippet_syntax.js.map
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic25pcHBldF9zeW50YXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZm9ybWF0dGVyL3N0ZXBfZGVmaW5pdGlvbl9zbmlwcGV0X2J1aWxkZXIvc25pcHBldF9zeW50YXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsSUFBWSxnQkFLWDtBQUxELFdBQVksZ0JBQWdCO0lBQzFCLDhDQUEwQixDQUFBO0lBQzFCLHlDQUFxQixDQUFBO0lBQ3JCLHVDQUFtQixDQUFBO0lBQ25CLCtDQUEyQixDQUFBO0FBQzdCLENBQUMsRUFMVyxnQkFBZ0IsZ0NBQWhCLGdCQUFnQixRQUszQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgR2VuZXJhdGVkRXhwcmVzc2lvbiB9IGZyb20gJ0BjdWN1bWJlci9jdWN1bWJlci1leHByZXNzaW9ucydcblxuZXhwb3J0IGVudW0gU25pcHBldEludGVyZmFjZSB7XG4gIEFzeW5jQXdhaXQgPSAnYXN5bmMtYXdhaXQnLFxuICBDYWxsYmFjayA9ICdjYWxsYmFjaycsXG4gIFByb21pc2UgPSAncHJvbWlzZScsXG4gIFN5bmNocm9ub3VzID0gJ3N5bmNocm9ub3VzJyxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU25pcHBldFN5bnRheEJ1aWxkT3B0aW9ucyB7XG4gIGNvbW1lbnQ6IHN0cmluZ1xuICBmdW5jdGlvbk5hbWU6IHN0cmluZ1xuICBnZW5lcmF0ZWRFeHByZXNzaW9uczogcmVhZG9ubHkgR2VuZXJhdGVkRXhwcmVzc2lvbltdXG4gIHN0ZXBQYXJhbWV0ZXJOYW1lczogc3RyaW5nW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU25pcHBldFNueXRheCB7XG4gIGJ1aWxkOiAob3B0aW9uczogSVNuaXBwZXRTeW50YXhCdWlsZE9wdGlvbnMpID0+IHN0cmluZ1xufVxuIl19
@@ -1,10 +1,13 @@
1
- import * as messages from '@cucumber/messages';
2
- import { ITestCaseAttempt } from './helpers/event_data_collector';
3
- import Formatter, { IFormatterOptions } from './';
1
+ import type * as messages from '@cucumber/messages';
2
+ import Formatter, { type IFormatterOptions } from './';
3
+ import type { ITestCaseAttempt } from './helpers/event_data_collector';
4
4
  interface ILogIssuesRequest {
5
5
  issues: ITestCaseAttempt[];
6
6
  title: string;
7
7
  }
8
+ /**
9
+ * @deprecated the built-in `summary` formatter is now plugin-based and no longer uses this class; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
10
+ */
8
11
  export default class SummaryFormatter extends Formatter {
9
12
  static readonly documentation: string;
10
13
  constructor(options: IFormatterOptions);
@@ -3,11 +3,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const value_checker_1 = require("../value_checker");
7
6
  const time_1 = require("../time");
7
+ const value_checker_1 = require("../value_checker");
8
+ const _1 = __importDefault(require("./"));
8
9
  const helpers_1 = require("./helpers");
9
10
  const issue_helpers_1 = require("./helpers/issue_helpers");
10
- const _1 = __importDefault(require("./"));
11
+ /**
12
+ * @deprecated the built-in `summary` formatter is now plugin-based and no longer uses this class; see https://github.com/cucumber/cucumber-js/blob/main/docs/deprecations.md
13
+ */
11
14
  class SummaryFormatter extends _1.default {
12
15
  static documentation = 'Summary output of feature and scenarios';
13
16
  constructor(options) {
@@ -65,4 +68,4 @@ class SummaryFormatter extends _1.default {
65
68
  }
66
69
  }
67
70
  exports.default = SummaryFormatter;
68
- //# sourceMappingURL=summary_formatter.js.map
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtbWFyeV9mb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZm9ybWF0dGVyL3N1bW1hcnlfZm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0Esa0NBQW1EO0FBQ25ELG9EQUFnRDtBQUNoRCwwQ0FBc0Q7QUFDdEQsdUNBQTRFO0FBRTVFLDJEQUF1RTtBQU92RTs7R0FFRztBQUNILE1BQXFCLGdCQUFpQixTQUFRLFVBQVM7SUFDOUMsTUFBTSxDQUFVLGFBQWEsR0FBVyx5Q0FBeUMsQ0FBQTtJQUV4RixZQUFZLE9BQTBCO1FBQ3BDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNkLElBQUksdUJBQTJDLENBQUE7UUFDL0MsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUEyQixFQUFFLEVBQUU7WUFDdEUsSUFBSSxJQUFBLDZCQUFhLEVBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7Z0JBQzNDLHVCQUF1QixHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFBO1lBQzdELENBQUM7WUFDRCxJQUFJLElBQUEsNkJBQWEsRUFBQyxRQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztnQkFDNUMsTUFBTSx3QkFBd0IsR0FBRyxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQTtnQkFDbkUsSUFBSSxDQUFDLFVBQVUsQ0FDYixJQUFBLGdDQUF5QixFQUFDLHVCQUF1QixFQUFFLHdCQUF3QixDQUFDLENBQzdFLENBQUE7WUFDSCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsVUFBVSxDQUFDLGVBQWtDO1FBQzNDLE1BQU0sUUFBUSxHQUF1QixFQUFFLENBQUE7UUFDdkMsTUFBTSxRQUFRLEdBQXVCLEVBQUUsQ0FBQTtRQUN2QyxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxtQkFBbUIsRUFBRSxDQUFBO1FBQ3RFLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLGVBQWUsRUFBRSxFQUFFO1lBQzNDLElBQUksSUFBQSxtQkFBUyxFQUFDLGVBQWUsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDbEYsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTtZQUNoQyxDQUFDO2lCQUFNLElBQUksSUFBQSxtQkFBUyxFQUFDLGVBQWUsQ0FBQyxtQkFBbUIsRUFBRSxlQUFlLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQztnQkFDekYsUUFBUSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQTtZQUNoQyxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDRixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDL0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFBLDZDQUE2QixFQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUE7UUFDMUYsQ0FBQztRQUNELElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQTtRQUN6RCxDQUFDO1FBQ0QsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFBO1FBQ3pELENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUNOLElBQUEsdUJBQWEsRUFBQztZQUNaLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN2QixnQkFBZ0I7WUFDaEIsZUFBZTtTQUNoQixDQUFDLENBQ0gsQ0FBQTtJQUNILENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQjtRQUM1QyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxPQUFPLENBQUMsQ0FBQTtRQUN6QixNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsZUFBZSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxHQUFHLENBQ04sSUFBQSxxQkFBVyxFQUFDO2dCQUNWLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsTUFBTSxFQUFFLEtBQUssR0FBRyxDQUFDO2dCQUNqQixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7Z0JBQ25DLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7Z0JBQzNDLGVBQWU7Z0JBQ2YsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjthQUN4QyxDQUFDLENBQ0gsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQzs7QUE5REgsbUNBK0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgeyBkdXJhdGlvbkJldHdlZW5UaW1lc3RhbXBzIH0gZnJvbSAnLi4vdGltZSdcbmltcG9ydCB7IGRvZXNIYXZlVmFsdWUgfSBmcm9tICcuLi92YWx1ZV9jaGVja2VyJ1xuaW1wb3J0IEZvcm1hdHRlciwgeyB0eXBlIElGb3JtYXR0ZXJPcHRpb25zIH0gZnJvbSAnLi8nXG5pbXBvcnQgeyBmb3JtYXRJc3N1ZSwgZm9ybWF0U3VtbWFyeSwgaXNGYWlsdXJlLCBpc1dhcm5pbmcgfSBmcm9tICcuL2hlbHBlcnMnXG5pbXBvcnQgdHlwZSB7IElUZXN0Q2FzZUF0dGVtcHQgfSBmcm9tICcuL2hlbHBlcnMvZXZlbnRfZGF0YV9jb2xsZWN0b3InXG5pbXBvcnQgeyBmb3JtYXRVbmRlZmluZWRQYXJhbWV0ZXJUeXBlcyB9IGZyb20gJy4vaGVscGVycy9pc3N1ZV9oZWxwZXJzJ1xuXG5pbnRlcmZhY2UgSUxvZ0lzc3Vlc1JlcXVlc3Qge1xuICBpc3N1ZXM6IElUZXN0Q2FzZUF0dGVtcHRbXVxuICB0aXRsZTogc3RyaW5nXG59XG5cbi8qKlxuICogQGRlcHJlY2F0ZWQgdGhlIGJ1aWx0LWluIGBzdW1tYXJ5YCBmb3JtYXR0ZXIgaXMgbm93IHBsdWdpbi1iYXNlZCBhbmQgbm8gbG9uZ2VyIHVzZXMgdGhpcyBjbGFzczsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9jdWN1bWJlci9jdWN1bWJlci1qcy9ibG9iL21haW4vZG9jcy9kZXByZWNhdGlvbnMubWRcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU3VtbWFyeUZvcm1hdHRlciBleHRlbmRzIEZvcm1hdHRlciB7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgZG9jdW1lbnRhdGlvbjogc3RyaW5nID0gJ1N1bW1hcnkgb3V0cHV0IG9mIGZlYXR1cmUgYW5kIHNjZW5hcmlvcydcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBJRm9ybWF0dGVyT3B0aW9ucykge1xuICAgIHN1cGVyKG9wdGlvbnMpXG4gICAgbGV0IHRlc3RSdW5TdGFydGVkVGltZXN0YW1wOiBtZXNzYWdlcy5UaW1lc3RhbXBcbiAgICBvcHRpb25zLmV2ZW50QnJvYWRjYXN0ZXIub24oJ2VudmVsb3BlJywgKGVudmVsb3BlOiBtZXNzYWdlcy5FbnZlbG9wZSkgPT4ge1xuICAgICAgaWYgKGRvZXNIYXZlVmFsdWUoZW52ZWxvcGUudGVzdFJ1blN0YXJ0ZWQpKSB7XG4gICAgICAgIHRlc3RSdW5TdGFydGVkVGltZXN0YW1wID0gZW52ZWxvcGUudGVzdFJ1blN0YXJ0ZWQudGltZXN0YW1wXG4gICAgICB9XG4gICAgICBpZiAoZG9lc0hhdmVWYWx1ZShlbnZlbG9wZS50ZXN0UnVuRmluaXNoZWQpKSB7XG4gICAgICAgIGNvbnN0IHRlc3RSdW5GaW5pc2hlZFRpbWVzdGFtcCA9IGVudmVsb3BlLnRlc3RSdW5GaW5pc2hlZC50aW1lc3RhbXBcbiAgICAgICAgdGhpcy5sb2dTdW1tYXJ5KFxuICAgICAgICAgIGR1cmF0aW9uQmV0d2VlblRpbWVzdGFtcHModGVzdFJ1blN0YXJ0ZWRUaW1lc3RhbXAsIHRlc3RSdW5GaW5pc2hlZFRpbWVzdGFtcClcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBsb2dTdW1tYXJ5KHRlc3RSdW5EdXJhdGlvbjogbWVzc2FnZXMuRHVyYXRpb24pOiB2b2lkIHtcbiAgICBjb25zdCBmYWlsdXJlczogSVRlc3RDYXNlQXR0ZW1wdFtdID0gW11cbiAgICBjb25zdCB3YXJuaW5nczogSVRlc3RDYXNlQXR0ZW1wdFtdID0gW11cbiAgICBjb25zdCB0ZXN0Q2FzZUF0dGVtcHRzID0gdGhpcy5ldmVudERhdGFDb2xsZWN0b3IuZ2V0VGVzdENhc2VBdHRlbXB0cygpXG4gICAgdGVzdENhc2VBdHRlbXB0cy5mb3JFYWNoKCh0ZXN0Q2FzZUF0dGVtcHQpID0+IHtcbiAgICAgIGlmIChpc0ZhaWx1cmUodGVzdENhc2VBdHRlbXB0LndvcnN0VGVzdFN0ZXBSZXN1bHQsIHRlc3RDYXNlQXR0ZW1wdC53aWxsQmVSZXRyaWVkKSkge1xuICAgICAgICBmYWlsdXJlcy5wdXNoKHRlc3RDYXNlQXR0ZW1wdClcbiAgICAgIH0gZWxzZSBpZiAoaXNXYXJuaW5nKHRlc3RDYXNlQXR0ZW1wdC53b3JzdFRlc3RTdGVwUmVzdWx0LCB0ZXN0Q2FzZUF0dGVtcHQud2lsbEJlUmV0cmllZCkpIHtcbiAgICAgICAgd2FybmluZ3MucHVzaCh0ZXN0Q2FzZUF0dGVtcHQpXG4gICAgICB9XG4gICAgfSlcbiAgICBpZiAodGhpcy5ldmVudERhdGFDb2xsZWN0b3IudW5kZWZpbmVkUGFyYW1ldGVyVHlwZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5sb2coZm9ybWF0VW5kZWZpbmVkUGFyYW1ldGVyVHlwZXModGhpcy5ldmVudERhdGFDb2xsZWN0b3IudW5kZWZpbmVkUGFyYW1ldGVyVHlwZXMpKVxuICAgIH1cbiAgICBpZiAoZmFpbHVyZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5sb2dJc3N1ZXMoeyBpc3N1ZXM6IGZhaWx1cmVzLCB0aXRsZTogJ0ZhaWx1cmVzJyB9KVxuICAgIH1cbiAgICBpZiAod2FybmluZ3MubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5sb2dJc3N1ZXMoeyBpc3N1ZXM6IHdhcm5pbmdzLCB0aXRsZTogJ1dhcm5pbmdzJyB9KVxuICAgIH1cbiAgICB0aGlzLmxvZyhcbiAgICAgIGZvcm1hdFN1bW1hcnkoe1xuICAgICAgICBjb2xvckZuczogdGhpcy5jb2xvckZucyxcbiAgICAgICAgdGVzdENhc2VBdHRlbXB0cyxcbiAgICAgICAgdGVzdFJ1bkR1cmF0aW9uLFxuICAgICAgfSlcbiAgICApXG4gIH1cblxuICBsb2dJc3N1ZXMoeyBpc3N1ZXMsIHRpdGxlIH06IElMb2dJc3N1ZXNSZXF1ZXN0KTogdm9pZCB7XG4gICAgdGhpcy5sb2coYCR7dGl0bGV9OlxcblxcbmApXG4gICAgaXNzdWVzLmZvckVhY2goKHRlc3RDYXNlQXR0ZW1wdCwgaW5kZXgpID0+IHtcbiAgICAgIHRoaXMubG9nKFxuICAgICAgICBmb3JtYXRJc3N1ZSh7XG4gICAgICAgICAgY29sb3JGbnM6IHRoaXMuY29sb3JGbnMsXG4gICAgICAgICAgbnVtYmVyOiBpbmRleCArIDEsXG4gICAgICAgICAgc25pcHBldEJ1aWxkZXI6IHRoaXMuc25pcHBldEJ1aWxkZXIsXG4gICAgICAgICAgc3VwcG9ydENvZGVMaWJyYXJ5OiB0aGlzLnN1cHBvcnRDb2RlTGlicmFyeSxcbiAgICAgICAgICB0ZXN0Q2FzZUF0dGVtcHQsXG4gICAgICAgICAgcHJpbnRBdHRhY2htZW50czogdGhpcy5wcmludEF0dGFjaG1lbnRzLFxuICAgICAgICB9KVxuICAgICAgKVxuICAgIH0pXG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import Formatter, { IFormatterOptions } from './';
1
+ import Formatter, { type IFormatterOptions } from './';
2
2
  export default class UsageFormatter extends Formatter {
3
3
  static readonly documentation: string;
4
4
  constructor(options: IFormatterOptions);
@@ -36,11 +36,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- const cli_table3_1 = __importDefault(require("cli-table3"));
40
39
  const messages = __importStar(require("@cucumber/messages"));
40
+ const cli_table3_1 = __importDefault(require("cli-table3"));
41
41
  const value_checker_1 = require("../value_checker");
42
- const helpers_1 = require("./helpers");
43
42
  const _1 = __importDefault(require("./"));
43
+ const helpers_1 = require("./helpers");
44
44
  class UsageFormatter extends _1.default {
45
45
  static documentation = 'Prints where step definitions are used. The slowest step definitions (with duration) are listed first. If --dry-run is used the duration is not shown, and step definitions are sorted by filename instead.';
46
46
  constructor(options) {
@@ -70,7 +70,7 @@ class UsageFormatter extends _1.default {
70
70
  usage.forEach(({ line, matches, meanDuration, pattern, patternType, uri }) => {
71
71
  let formattedPattern = pattern;
72
72
  if (patternType === 'RegularExpression') {
73
- formattedPattern = '/' + formattedPattern + '/';
73
+ formattedPattern = `/${formattedPattern}/`;
74
74
  }
75
75
  const col1 = [formattedPattern];
76
76
  const col2 = [];
@@ -105,4 +105,4 @@ class UsageFormatter extends _1.default {
105
105
  }
106
106
  }
107
107
  exports.default = UsageFormatter;
108
- //# sourceMappingURL=usage_formatter.js.map
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNhZ2VfZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Zvcm1hdHRlci91c2FnZV9mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBOEM7QUFDOUMsNERBQThCO0FBQzlCLG9EQUFnRDtBQUNoRCwwQ0FBc0Q7QUFDdEQsdUNBQW9EO0FBSXBELE1BQXFCLGNBQWUsU0FBUSxVQUFTO0lBQzVDLE1BQU0sQ0FBVSxhQUFhLEdBQ2xDLDZNQUE2TSxDQUFBO0lBRS9NLFlBQVksT0FBMEI7UUFDcEMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ2QsT0FBTyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUFtQixFQUFFLEVBQUU7WUFDOUQsSUFBSSxJQUFBLDZCQUFhLEVBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7Z0JBQzVDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTtZQUNqQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sS0FBSyxHQUFHLElBQUEsa0JBQVEsRUFBQztZQUNyQixlQUFlLEVBQUUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWU7WUFDeEQsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtTQUM1QyxDQUFDLENBQUE7UUFDRixJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO1lBQy9CLE9BQU07UUFDUixDQUFDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxvQkFBSyxDQUFDO1lBQ3RCLElBQUksRUFBRSxDQUFDLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUM7WUFDaEQsS0FBSyxFQUFFO2dCQUNMLE1BQU0sRUFBRSxFQUFFO2dCQUNWLElBQUksRUFBRSxFQUFFO2FBQ1Q7U0FDRixDQUFDLENBQUE7UUFDRixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUU7WUFDM0UsSUFBSSxnQkFBZ0IsR0FBRyxPQUFPLENBQUE7WUFDOUIsSUFBSSxXQUFXLEtBQUssbUJBQW1CLEVBQUUsQ0FBQztnQkFDeEMsZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsR0FBRyxDQUFBO1lBQzVDLENBQUM7WUFDRCxNQUFNLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUE7WUFDL0IsTUFBTSxJQUFJLEdBQUcsRUFBRSxDQUFBO1lBQ2YsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN2QixJQUFJLElBQUEsNkJBQWEsRUFBQyxZQUFZLENBQUMsRUFBRSxDQUFDO29CQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUMzRixDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDaEIsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQ3JCLENBQUM7WUFDRCxNQUFNLElBQUksR0FBRyxDQUFDLElBQUEsd0JBQWMsRUFBQyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUE7WUFDNUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtnQkFDNUIsSUFBSSxJQUFBLDZCQUFhLEVBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7b0JBQ2xDLElBQUksQ0FBQyxJQUFJLENBQ1AsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDakYsQ0FBQTtnQkFDSCxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDaEIsQ0FBQztnQkFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUEsd0JBQWMsRUFBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO1lBQ2xDLENBQUMsQ0FBQyxDQUFBO1lBQ0YsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUN4RCxDQUFDO1lBQ0QsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFRLENBQUMsQ0FBQTtRQUN4RSxDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ25DLENBQUM7O0FBL0RILGlDQWdFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG1lc3NhZ2VzIGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCBUYWJsZSBmcm9tICdjbGktdGFibGUzJ1xuaW1wb3J0IHsgZG9lc0hhdmVWYWx1ZSB9IGZyb20gJy4uL3ZhbHVlX2NoZWNrZXInXG5pbXBvcnQgRm9ybWF0dGVyLCB7IHR5cGUgSUZvcm1hdHRlck9wdGlvbnMgfSBmcm9tICcuLydcbmltcG9ydCB7IGZvcm1hdExvY2F0aW9uLCBnZXRVc2FnZSB9IGZyb20gJy4vaGVscGVycydcblxuaW1wb3J0IElFbnZlbG9wZSA9IG1lc3NhZ2VzLkVudmVsb3BlXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFVzYWdlRm9ybWF0dGVyIGV4dGVuZHMgRm9ybWF0dGVyIHtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBkb2N1bWVudGF0aW9uOiBzdHJpbmcgPVxuICAgICdQcmludHMgd2hlcmUgc3RlcCBkZWZpbml0aW9ucyBhcmUgdXNlZC4gVGhlIHNsb3dlc3Qgc3RlcCBkZWZpbml0aW9ucyAod2l0aCBkdXJhdGlvbikgYXJlIGxpc3RlZCBmaXJzdC4gSWYgLS1kcnktcnVuIGlzIHVzZWQgdGhlIGR1cmF0aW9uIGlzIG5vdCBzaG93biwgYW5kIHN0ZXAgZGVmaW5pdGlvbnMgYXJlIHNvcnRlZCBieSBmaWxlbmFtZSBpbnN0ZWFkLidcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBJRm9ybWF0dGVyT3B0aW9ucykge1xuICAgIHN1cGVyKG9wdGlvbnMpXG4gICAgb3B0aW9ucy5ldmVudEJyb2FkY2FzdGVyLm9uKCdlbnZlbG9wZScsIChlbnZlbG9wZTogSUVudmVsb3BlKSA9PiB7XG4gICAgICBpZiAoZG9lc0hhdmVWYWx1ZShlbnZlbG9wZS50ZXN0UnVuRmluaXNoZWQpKSB7XG4gICAgICAgIHRoaXMubG9nVXNhZ2UoKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBsb2dVc2FnZSgpOiB2b2lkIHtcbiAgICBjb25zdCB1c2FnZSA9IGdldFVzYWdlKHtcbiAgICAgIHN0ZXBEZWZpbml0aW9uczogdGhpcy5zdXBwb3J0Q29kZUxpYnJhcnkuc3RlcERlZmluaXRpb25zLFxuICAgICAgZXZlbnREYXRhQ29sbGVjdG9yOiB0aGlzLmV2ZW50RGF0YUNvbGxlY3RvcixcbiAgICB9KVxuICAgIGlmICh1c2FnZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMubG9nKCdObyBzdGVwIGRlZmluaXRpb25zJylcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCB0YWJsZSA9IG5ldyBUYWJsZSh7XG4gICAgICBoZWFkOiBbJ1BhdHRlcm4gLyBUZXh0JywgJ0R1cmF0aW9uJywgJ0xvY2F0aW9uJ10sXG4gICAgICBzdHlsZToge1xuICAgICAgICBib3JkZXI6IFtdLFxuICAgICAgICBoZWFkOiBbXSxcbiAgICAgIH0sXG4gICAgfSlcbiAgICB1c2FnZS5mb3JFYWNoKCh7IGxpbmUsIG1hdGNoZXMsIG1lYW5EdXJhdGlvbiwgcGF0dGVybiwgcGF0dGVyblR5cGUsIHVyaSB9KSA9PiB7XG4gICAgICBsZXQgZm9ybWF0dGVkUGF0dGVybiA9IHBhdHRlcm5cbiAgICAgIGlmIChwYXR0ZXJuVHlwZSA9PT0gJ1JlZ3VsYXJFeHByZXNzaW9uJykge1xuICAgICAgICBmb3JtYXR0ZWRQYXR0ZXJuID0gYC8ke2Zvcm1hdHRlZFBhdHRlcm59L2BcbiAgICAgIH1cbiAgICAgIGNvbnN0IGNvbDEgPSBbZm9ybWF0dGVkUGF0dGVybl1cbiAgICAgIGNvbnN0IGNvbDIgPSBbXVxuICAgICAgaWYgKG1hdGNoZXMubGVuZ3RoID4gMCkge1xuICAgICAgICBpZiAoZG9lc0hhdmVWYWx1ZShtZWFuRHVyYXRpb24pKSB7XG4gICAgICAgICAgY29sMi5wdXNoKGAke21lc3NhZ2VzLlRpbWVDb252ZXJzaW9uLmR1cmF0aW9uVG9NaWxsaXNlY29uZHMobWVhbkR1cmF0aW9uKS50b0ZpeGVkKDIpfW1zYClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb2wyLnB1c2goJy0nKVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb2wyLnB1c2goJ1VOVVNFRCcpXG4gICAgICB9XG4gICAgICBjb25zdCBjb2wzID0gW2Zvcm1hdExvY2F0aW9uKHsgbGluZSwgdXJpIH0pXVxuICAgICAgbWF0Y2hlcy5zbGljZSgwLCA1KS5mb3JFYWNoKChtYXRjaCkgPT4ge1xuICAgICAgICBjb2wxLnB1c2goYCAgJHttYXRjaC50ZXh0fWApXG4gICAgICAgIGlmIChkb2VzSGF2ZVZhbHVlKG1hdGNoLmR1cmF0aW9uKSkge1xuICAgICAgICAgIGNvbDIucHVzaChcbiAgICAgICAgICAgIGAke21lc3NhZ2VzLlRpbWVDb252ZXJzaW9uLmR1cmF0aW9uVG9NaWxsaXNlY29uZHMobWF0Y2guZHVyYXRpb24pLnRvRml4ZWQoMil9bXNgXG4gICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbDIucHVzaCgnLScpXG4gICAgICAgIH1cbiAgICAgICAgY29sMy5wdXNoKGZvcm1hdExvY2F0aW9uKG1hdGNoKSlcbiAgICAgIH0pXG4gICAgICBpZiAobWF0Y2hlcy5sZW5ndGggPiA1KSB7XG4gICAgICAgIGNvbDEucHVzaChgICAkeyhtYXRjaGVzLmxlbmd0aCAtIDUpLnRvU3RyaW5nKCl9IG1vcmVgKVxuICAgICAgfVxuICAgICAgdGFibGUucHVzaChbY29sMS5qb2luKCdcXG4nKSwgY29sMi5qb2luKCdcXG4nKSwgY29sMy5qb2luKCdcXG4nKV0gYXMgYW55KVxuICAgIH0pXG4gICAgdGhpcy5sb2coYCR7dGFibGUudG9TdHJpbmcoKX1cXG5gKVxuICB9XG59XG4iXX0=
@@ -1,4 +1,4 @@
1
- import Formatter, { IFormatterOptions } from './';
1
+ import Formatter, { type IFormatterOptions } from './';
2
2
  export default class UsageJsonFormatter extends Formatter {
3
3
  static readonly documentation: string;
4
4
  constructor(options: IFormatterOptions);
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const value_checker_1 = require("../value_checker");
7
- const helpers_1 = require("./helpers");
8
7
  const _1 = __importDefault(require("./"));
8
+ const helpers_1 = require("./helpers");
9
9
  class UsageJsonFormatter extends _1.default {
10
10
  static documentation = 'Does what the Usage Formatter does, but outputs JSON, which can be output to a file and then consumed by other tools.';
11
11
  constructor(options) {
@@ -25,10 +25,10 @@ class UsageJsonFormatter extends _1.default {
25
25
  }
26
26
  replacer(key, value) {
27
27
  if (key === 'seconds') {
28
- return parseInt(value);
28
+ return parseInt(value, 10);
29
29
  }
30
30
  return value;
31
31
  }
32
32
  }
33
33
  exports.default = UsageJsonFormatter;
34
- //# sourceMappingURL=usage_json_formatter.js.map
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNhZ2VfanNvbl9mb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZm9ybWF0dGVyL3VzYWdlX2pzb25fZm9ybWF0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0Esb0RBQWdEO0FBQ2hELDBDQUFzRDtBQUN0RCx1Q0FBb0M7QUFJcEMsTUFBcUIsa0JBQW1CLFNBQVEsVUFBUztJQUNoRCxNQUFNLENBQVUsYUFBYSxHQUNsQyx1SEFBdUgsQ0FBQTtJQUV6SCxZQUFZLE9BQTBCO1FBQ3BDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNkLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsUUFBbUIsRUFBRSxFQUFFO1lBQzlELElBQUksSUFBQSw2QkFBYSxFQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUE7WUFDakIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixNQUFNLEtBQUssR0FBRyxJQUFBLGtCQUFRLEVBQUM7WUFDckIsZUFBZSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlO1lBQ3hELGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0I7U0FDNUMsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDbkQsQ0FBQztJQUVELFFBQVEsQ0FBQyxHQUFXLEVBQUUsS0FBVTtRQUM5QixJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QixPQUFPLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDNUIsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQzs7QUExQkgscUNBMkJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgZG9lc0hhdmVWYWx1ZSB9IGZyb20gJy4uL3ZhbHVlX2NoZWNrZXInXG5pbXBvcnQgRm9ybWF0dGVyLCB7IHR5cGUgSUZvcm1hdHRlck9wdGlvbnMgfSBmcm9tICcuLydcbmltcG9ydCB7IGdldFVzYWdlIH0gZnJvbSAnLi9oZWxwZXJzJ1xuXG5pbXBvcnQgSUVudmVsb3BlID0gbWVzc2FnZXMuRW52ZWxvcGVcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVXNhZ2VKc29uRm9ybWF0dGVyIGV4dGVuZHMgRm9ybWF0dGVyIHtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBkb2N1bWVudGF0aW9uOiBzdHJpbmcgPVxuICAgICdEb2VzIHdoYXQgdGhlIFVzYWdlIEZvcm1hdHRlciBkb2VzLCBidXQgb3V0cHV0cyBKU09OLCB3aGljaCBjYW4gYmUgb3V0cHV0IHRvIGEgZmlsZSBhbmQgdGhlbiBjb25zdW1lZCBieSBvdGhlciB0b29scy4nXG5cbiAgY29uc3RydWN0b3Iob3B0aW9uczogSUZvcm1hdHRlck9wdGlvbnMpIHtcbiAgICBzdXBlcihvcHRpb25zKVxuICAgIG9wdGlvbnMuZXZlbnRCcm9hZGNhc3Rlci5vbignZW52ZWxvcGUnLCAoZW52ZWxvcGU6IElFbnZlbG9wZSkgPT4ge1xuICAgICAgaWYgKGRvZXNIYXZlVmFsdWUoZW52ZWxvcGUudGVzdFJ1bkZpbmlzaGVkKSkge1xuICAgICAgICB0aGlzLmxvZ1VzYWdlKClcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgbG9nVXNhZ2UoKTogdm9pZCB7XG4gICAgY29uc3QgdXNhZ2UgPSBnZXRVc2FnZSh7XG4gICAgICBzdGVwRGVmaW5pdGlvbnM6IHRoaXMuc3VwcG9ydENvZGVMaWJyYXJ5LnN0ZXBEZWZpbml0aW9ucyxcbiAgICAgIGV2ZW50RGF0YUNvbGxlY3RvcjogdGhpcy5ldmVudERhdGFDb2xsZWN0b3IsXG4gICAgfSlcbiAgICB0aGlzLmxvZyhKU09OLnN0cmluZ2lmeSh1c2FnZSwgdGhpcy5yZXBsYWNlciwgMikpXG4gIH1cblxuICByZXBsYWNlcihrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IGFueSB7XG4gICAgaWYgKGtleSA9PT0gJ3NlY29uZHMnKSB7XG4gICAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUsIDEwKVxuICAgIH1cbiAgICByZXR1cm4gdmFsdWVcbiAgfVxufVxuIl19