@cucumber/cucumber 13.0.0 → 13.1.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 (78) hide show
  1. package/lib/api/emit_support_code_messages.js +4 -38
  2. package/lib/api/run_cucumber.js +4 -4
  3. package/lib/api/wrapper.d.mts +5 -0
  4. package/lib/api/wrapper.mjs +6 -6
  5. package/lib/formatter/builder.d.ts +1 -1
  6. package/lib/formatter/builder.js +1 -1
  7. package/lib/formatter/create_stream.js +2 -3
  8. package/lib/formatter/helpers/event_data_collector.d.ts +14 -14
  9. package/lib/formatter/helpers/event_data_collector.js +14 -39
  10. package/lib/formatter/helpers/gherkin_document_parser.d.ts +5 -5
  11. package/lib/formatter/helpers/gherkin_document_parser.js +1 -1
  12. package/lib/formatter/helpers/issue_helpers.d.ts +6 -6
  13. package/lib/formatter/helpers/issue_helpers.js +1 -1
  14. package/lib/formatter/helpers/pickle_parser.d.ts +9 -9
  15. package/lib/formatter/helpers/pickle_parser.js +1 -1
  16. package/lib/formatter/helpers/step_argument_formatter.d.ts +2 -2
  17. package/lib/formatter/helpers/step_argument_formatter.js +1 -1
  18. package/lib/formatter/helpers/summary_helpers.d.ts +2 -2
  19. package/lib/formatter/helpers/summary_helpers.js +12 -45
  20. package/lib/formatter/helpers/test_case_attempt_formatter.js +12 -45
  21. package/lib/formatter/helpers/test_case_attempt_parser.d.ts +5 -5
  22. package/lib/formatter/helpers/test_case_attempt_parser.js +9 -37
  23. package/lib/formatter/helpers/usage_helpers/index.d.ts +3 -3
  24. package/lib/formatter/helpers/usage_helpers/index.js +9 -44
  25. package/lib/formatter/json_formatter.d.ts +20 -20
  26. package/lib/formatter/json_formatter.js +5 -38
  27. package/lib/formatter/progress_formatter.d.ts +3 -2
  28. package/lib/formatter/progress_formatter.js +8 -41
  29. package/lib/formatter/rerun_formatter.js +3 -36
  30. package/lib/formatter/snippets_formatter.js +3 -36
  31. package/lib/formatter/step_definition_snippet_builder/index.d.ts +3 -3
  32. package/lib/formatter/step_definition_snippet_builder/index.js +1 -1
  33. package/lib/formatter/summary_formatter.d.ts +2 -2
  34. package/lib/formatter/summary_formatter.js +1 -1
  35. package/lib/formatter/usage_formatter.js +4 -37
  36. package/lib/formatter/usage_json_formatter.js +1 -1
  37. package/lib/index.d.ts +3 -3
  38. package/lib/index.js +6 -7
  39. package/lib/models/data_table.d.ts +2 -2
  40. package/lib/models/data_table.js +1 -1
  41. package/lib/models/definition.d.ts +2 -2
  42. package/lib/models/definition.js +1 -1
  43. package/lib/models/test_case_hook_definition.d.ts +2 -2
  44. package/lib/models/test_case_hook_definition.js +1 -1
  45. package/lib/models/test_step_hook_definition.d.ts +2 -2
  46. package/lib/models/test_step_hook_definition.js +1 -1
  47. package/lib/pickle_filter.d.ts +8 -7
  48. package/lib/pickle_filter.js +1 -1
  49. package/lib/runtime/attachment_manager/index.d.ts +3 -3
  50. package/lib/runtime/attachment_manager/index.js +12 -45
  51. package/lib/runtime/coordinator.d.ts +4 -3
  52. package/lib/runtime/coordinator.js +14 -3
  53. package/lib/runtime/helpers.d.ts +3 -3
  54. package/lib/runtime/helpers.js +6 -39
  55. package/lib/runtime/make_runtime.js +2 -2
  56. package/lib/runtime/parallel/adapter.d.ts +5 -2
  57. package/lib/runtime/parallel/adapter.js +14 -2
  58. package/lib/runtime/step_runner.d.ts +3 -3
  59. package/lib/runtime/step_runner.js +6 -39
  60. package/lib/runtime/stopwatch.d.ts +1 -1
  61. package/lib/runtime/test_case_runner.d.ts +11 -12
  62. package/lib/runtime/test_case_runner.js +20 -57
  63. package/lib/runtime/types.d.ts +6 -1
  64. package/lib/runtime/types.js +1 -1
  65. package/lib/step_arguments.d.ts +4 -4
  66. package/lib/step_arguments.js +1 -1
  67. package/lib/support_code_library_builder/index.d.ts +2 -3
  68. package/lib/support_code_library_builder/index.js +1 -1
  69. package/lib/support_code_library_builder/parallel_can_assign_helpers.js +1 -1
  70. package/lib/support_code_library_builder/types.d.ts +10 -10
  71. package/lib/support_code_library_builder/types.js +1 -1
  72. package/lib/time.d.ts +2 -2
  73. package/lib/time.js +5 -38
  74. package/lib/version.d.ts +1 -1
  75. package/lib/version.js +3 -3
  76. package/lib/wrapper.d.mts +43 -0
  77. package/lib/wrapper.mjs +37 -41
  78. package/package.json +20 -22
@@ -1,17 +1,17 @@
1
- import type * as messages from '@cucumber/messages';
1
+ import type { GherkinDocument, Location, Pickle, PickleStep, Scenario, Step } from '@cucumber/messages';
2
2
  export interface IGetPickleLocationRequest {
3
- gherkinDocument: messages.GherkinDocument;
4
- pickle: messages.Pickle;
3
+ gherkinDocument: GherkinDocument;
4
+ pickle: Pickle;
5
5
  }
6
6
  export interface IGetStepKeywordRequest {
7
- pickleStep: messages.PickleStep;
8
- gherkinStepMap: Record<string, messages.Step>;
7
+ pickleStep: PickleStep;
8
+ gherkinStepMap: Record<string, Step>;
9
9
  }
10
10
  export interface IGetScenarioDescriptionRequest {
11
- pickle: messages.Pickle;
12
- gherkinScenarioMap: Record<string, messages.Scenario>;
11
+ pickle: Pickle;
12
+ gherkinScenarioMap: Record<string, Scenario>;
13
13
  }
14
14
  export declare function getScenarioDescription({ pickle, gherkinScenarioMap, }: IGetScenarioDescriptionRequest): string;
15
15
  export declare function getStepKeyword({ pickleStep, gherkinStepMap }: IGetStepKeywordRequest): string;
16
- export declare function getPickleStepMap(pickle: messages.Pickle): Record<string, messages.PickleStep>;
17
- export declare function getPickleLocation({ gherkinDocument, pickle, }: IGetPickleLocationRequest): messages.Location;
16
+ export declare function getPickleStepMap(pickle: Pickle): Record<string, PickleStep>;
17
+ export declare function getPickleLocation({ gherkinDocument, pickle, }: IGetPickleLocationRequest): Location;
@@ -23,4 +23,4 @@ function getPickleLocation({ gherkinDocument, pickle, }) {
23
23
  const gherkinScenarioLocationMap = (0, gherkin_document_parser_1.getGherkinScenarioLocationMap)(gherkinDocument);
24
24
  return gherkinScenarioLocationMap[pickle.astNodeIds[pickle.astNodeIds.length - 1]];
25
25
  }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2xlX3BhcnNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mb3JtYXR0ZXIvaGVscGVycy9waWNrbGVfcGFyc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBa0JBLHdEQU1DO0FBRUQsd0NBRUM7QUFFRCw0Q0FNQztBQUVELDhDQU1DO0FBM0NELHVFQUF5RTtBQWlCekUsU0FBZ0Isc0JBQXNCLENBQUMsRUFDckMsTUFBTSxFQUNOLGtCQUFrQixHQUNhO0lBQy9CLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3JGLFdBQVcsQ0FBQTtBQUNoQixDQUFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBMEI7SUFDbkYsT0FBTyxVQUFVLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFBO0FBQ2xHLENBQUM7QUFFRCxTQUFnQixnQkFBZ0IsQ0FBQyxNQUF1QjtJQUN0RCxNQUFNLE1BQU0sR0FBd0MsRUFBRSxDQUFBO0lBQ3RELEtBQUssTUFBTSxVQUFVLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3RDLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFBO0lBQ3BDLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUM7QUFFRCxTQUFnQixpQkFBaUIsQ0FBQyxFQUNoQyxlQUFlLEVBQ2YsTUFBTSxHQUNvQjtJQUMxQixNQUFNLDBCQUEwQixHQUFHLElBQUEsdURBQTZCLEVBQUMsZUFBZSxDQUFDLENBQUE7SUFDakYsT0FBTywwQkFBMEIsQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDcEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgZ2V0R2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAgfSBmcm9tICcuL2doZXJraW5fZG9jdW1lbnRfcGFyc2VyJ1xuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRQaWNrbGVMb2NhdGlvblJlcXVlc3Qge1xuICBnaGVya2luRG9jdW1lbnQ6IG1lc3NhZ2VzLkdoZXJraW5Eb2N1bWVudFxuICBwaWNrbGU6IG1lc3NhZ2VzLlBpY2tsZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRTdGVwS2V5d29yZFJlcXVlc3Qge1xuICBwaWNrbGVTdGVwOiBtZXNzYWdlcy5QaWNrbGVTdGVwXG4gIGdoZXJraW5TdGVwTWFwOiBSZWNvcmQ8c3RyaW5nLCBtZXNzYWdlcy5TdGVwPlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElHZXRTY2VuYXJpb0Rlc2NyaXB0aW9uUmVxdWVzdCB7XG4gIHBpY2tsZTogbWVzc2FnZXMuUGlja2xlXG4gIGdoZXJraW5TY2VuYXJpb01hcDogUmVjb3JkPHN0cmluZywgbWVzc2FnZXMuU2NlbmFyaW8+XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTY2VuYXJpb0Rlc2NyaXB0aW9uKHtcbiAgcGlja2xlLFxuICBnaGVya2luU2NlbmFyaW9NYXAsXG59OiBJR2V0U2NlbmFyaW9EZXNjcmlwdGlvblJlcXVlc3QpOiBzdHJpbmcge1xuICByZXR1cm4gcGlja2xlLmFzdE5vZGVJZHMubWFwKChpZCkgPT4gZ2hlcmtpblNjZW5hcmlvTWFwW2lkXSkuZmlsdGVyKCh4KSA9PiB4ICE9IG51bGwpWzBdXG4gICAgLmRlc2NyaXB0aW9uXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRTdGVwS2V5d29yZCh7IHBpY2tsZVN0ZXAsIGdoZXJraW5TdGVwTWFwIH06IElHZXRTdGVwS2V5d29yZFJlcXVlc3QpOiBzdHJpbmcge1xuICByZXR1cm4gcGlja2xlU3RlcC5hc3ROb2RlSWRzLm1hcCgoaWQpID0+IGdoZXJraW5TdGVwTWFwW2lkXSkuZmlsdGVyKCh4KSA9PiB4ICE9IG51bGwpWzBdLmtleXdvcmRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFBpY2tsZVN0ZXBNYXAocGlja2xlOiBtZXNzYWdlcy5QaWNrbGUpOiBSZWNvcmQ8c3RyaW5nLCBtZXNzYWdlcy5QaWNrbGVTdGVwPiB7XG4gIGNvbnN0IHJlc3VsdDogUmVjb3JkPHN0cmluZywgbWVzc2FnZXMuUGlja2xlU3RlcD4gPSB7fVxuICBmb3IgKGNvbnN0IHBpY2tsZVN0ZXAgb2YgcGlja2xlLnN0ZXBzKSB7XG4gICAgcmVzdWx0W3BpY2tsZVN0ZXAuaWRdID0gcGlja2xlU3RlcFxuICB9XG4gIHJldHVybiByZXN1bHRcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFBpY2tsZUxvY2F0aW9uKHtcbiAgZ2hlcmtpbkRvY3VtZW50LFxuICBwaWNrbGUsXG59OiBJR2V0UGlja2xlTG9jYXRpb25SZXF1ZXN0KTogbWVzc2FnZXMuTG9jYXRpb24ge1xuICBjb25zdCBnaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcCA9IGdldEdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwKGdoZXJraW5Eb2N1bWVudClcbiAgcmV0dXJuIGdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwW3BpY2tsZS5hc3ROb2RlSWRzW3BpY2tsZS5hc3ROb2RlSWRzLmxlbmd0aCAtIDFdXVxufVxuIl19
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2xlX3BhcnNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9mb3JtYXR0ZXIvaGVscGVycy9waWNrbGVfcGFyc2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBeUJBLHdEQU1DO0FBRUQsd0NBRUM7QUFFRCw0Q0FNQztBQUVELDhDQU1DO0FBM0NELHVFQUF5RTtBQWlCekUsU0FBZ0Isc0JBQXNCLENBQUMsRUFDckMsTUFBTSxFQUNOLGtCQUFrQixHQUNhO0lBQy9CLE9BQU8sTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3JGLFdBQVcsQ0FBQTtBQUNoQixDQUFDO0FBRUQsU0FBZ0IsY0FBYyxDQUFDLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBMEI7SUFDbkYsT0FBTyxVQUFVLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFBO0FBQ2xHLENBQUM7QUFFRCxTQUFnQixnQkFBZ0IsQ0FBQyxNQUFjO0lBQzdDLE1BQU0sTUFBTSxHQUErQixFQUFFLENBQUE7SUFDN0MsS0FBSyxNQUFNLFVBQVUsSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdEMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLENBQUE7SUFDcEMsQ0FBQztJQUNELE9BQU8sTUFBTSxDQUFBO0FBQ2YsQ0FBQztBQUVELFNBQWdCLGlCQUFpQixDQUFDLEVBQ2hDLGVBQWUsRUFDZixNQUFNLEdBQ29CO0lBQzFCLE1BQU0sMEJBQTBCLEdBQUcsSUFBQSx1REFBNkIsRUFBQyxlQUFlLENBQUMsQ0FBQTtJQUNqRixPQUFPLDBCQUEwQixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUNwRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBHaGVya2luRG9jdW1lbnQsXG4gIExvY2F0aW9uLFxuICBQaWNrbGUsXG4gIFBpY2tsZVN0ZXAsXG4gIFNjZW5hcmlvLFxuICBTdGVwLFxufSBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgeyBnZXRHaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcCB9IGZyb20gJy4vZ2hlcmtpbl9kb2N1bWVudF9wYXJzZXInXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldFBpY2tsZUxvY2F0aW9uUmVxdWVzdCB7XG4gIGdoZXJraW5Eb2N1bWVudDogR2hlcmtpbkRvY3VtZW50XG4gIHBpY2tsZTogUGlja2xlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldFN0ZXBLZXl3b3JkUmVxdWVzdCB7XG4gIHBpY2tsZVN0ZXA6IFBpY2tsZVN0ZXBcbiAgZ2hlcmtpblN0ZXBNYXA6IFJlY29yZDxzdHJpbmcsIFN0ZXA+XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdldFNjZW5hcmlvRGVzY3JpcHRpb25SZXF1ZXN0IHtcbiAgcGlja2xlOiBQaWNrbGVcbiAgZ2hlcmtpblNjZW5hcmlvTWFwOiBSZWNvcmQ8c3RyaW5nLCBTY2VuYXJpbz5cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFNjZW5hcmlvRGVzY3JpcHRpb24oe1xuICBwaWNrbGUsXG4gIGdoZXJraW5TY2VuYXJpb01hcCxcbn06IElHZXRTY2VuYXJpb0Rlc2NyaXB0aW9uUmVxdWVzdCk6IHN0cmluZyB7XG4gIHJldHVybiBwaWNrbGUuYXN0Tm9kZUlkcy5tYXAoKGlkKSA9PiBnaGVya2luU2NlbmFyaW9NYXBbaWRdKS5maWx0ZXIoKHgpID0+IHggIT0gbnVsbClbMF1cbiAgICAuZGVzY3JpcHRpb25cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFN0ZXBLZXl3b3JkKHsgcGlja2xlU3RlcCwgZ2hlcmtpblN0ZXBNYXAgfTogSUdldFN0ZXBLZXl3b3JkUmVxdWVzdCk6IHN0cmluZyB7XG4gIHJldHVybiBwaWNrbGVTdGVwLmFzdE5vZGVJZHMubWFwKChpZCkgPT4gZ2hlcmtpblN0ZXBNYXBbaWRdKS5maWx0ZXIoKHgpID0+IHggIT0gbnVsbClbMF0ua2V5d29yZFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UGlja2xlU3RlcE1hcChwaWNrbGU6IFBpY2tsZSk6IFJlY29yZDxzdHJpbmcsIFBpY2tsZVN0ZXA+IHtcbiAgY29uc3QgcmVzdWx0OiBSZWNvcmQ8c3RyaW5nLCBQaWNrbGVTdGVwPiA9IHt9XG4gIGZvciAoY29uc3QgcGlja2xlU3RlcCBvZiBwaWNrbGUuc3RlcHMpIHtcbiAgICByZXN1bHRbcGlja2xlU3RlcC5pZF0gPSBwaWNrbGVTdGVwXG4gIH1cbiAgcmV0dXJuIHJlc3VsdFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0UGlja2xlTG9jYXRpb24oe1xuICBnaGVya2luRG9jdW1lbnQsXG4gIHBpY2tsZSxcbn06IElHZXRQaWNrbGVMb2NhdGlvblJlcXVlc3QpOiBMb2NhdGlvbiB7XG4gIGNvbnN0IGdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwID0gZ2V0R2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAoZ2hlcmtpbkRvY3VtZW50KVxuICByZXR1cm4gZ2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXBbcGlja2xlLmFzdE5vZGVJZHNbcGlja2xlLmFzdE5vZGVJZHMubGVuZ3RoIC0gMV1dXG59XG4iXX0=
@@ -1,2 +1,2 @@
1
- import type * as messages from '@cucumber/messages';
2
- export declare function formatStepArgument(arg: messages.PickleStepArgument): string;
1
+ import type { PickleStepArgument } from '@cucumber/messages';
2
+ export declare function formatStepArgument(arg: PickleStepArgument): string;
@@ -44,4 +44,4 @@ function formatStepArgument(arg) {
44
44
  docString: formatDocString,
45
45
  });
46
46
  }
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcF9hcmd1bWVudF9mb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZm9ybWF0dGVyL2hlbHBlcnMvc3RlcF9hcmd1bWVudF9mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUF3Q0EsZ0RBS0M7QUE1Q0QsNERBQThCO0FBQzlCLHlEQUF3RDtBQUV4RCxTQUFTLGVBQWUsQ0FBQyxTQUErQjtJQUN0RCxNQUFNLEtBQUssR0FBRyxJQUFJLG9CQUFLLENBQUM7UUFDdEIsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFLEVBQUU7WUFDVixhQUFhLEVBQUUsRUFBRTtZQUNqQixZQUFZLEVBQUUsRUFBRTtZQUNoQixjQUFjLEVBQUUsRUFBRTtZQUNsQixJQUFJLEVBQUUsR0FBRztZQUNULFVBQVUsRUFBRSxFQUFFO1lBQ2QsR0FBRyxFQUFFLEVBQUU7WUFDUCxTQUFTLEVBQUUsRUFBRTtZQUNiLE1BQU0sRUFBRSxHQUFHO1lBQ1gsS0FBSyxFQUFFLEdBQUc7WUFDVixXQUFXLEVBQUUsRUFBRTtZQUNmLEdBQUcsRUFBRSxFQUFFO1lBQ1AsVUFBVSxFQUFFLEVBQUU7WUFDZCxTQUFTLEVBQUUsRUFBRTtZQUNiLFdBQVcsRUFBRSxFQUFFO1NBQ2hCO1FBQ0QsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFLEVBQUU7WUFDVixjQUFjLEVBQUUsQ0FBQztZQUNqQixlQUFlLEVBQUUsQ0FBQztTQUNuQjtLQUNGLENBQUMsQ0FBQTtJQUNGLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDdEMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ2pGLENBQUE7SUFDRCxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUE7SUFDbkIsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7QUFDekIsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLFNBQW1DO0lBQzFELE9BQU8sUUFBUSxTQUFTLENBQUMsT0FBTyxPQUFPLENBQUE7QUFDekMsQ0FBQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLEdBQWdDO0lBQ2pFLE9BQU8sSUFBQSxrQ0FBaUIsRUFBQyxHQUFHLEVBQUU7UUFDNUIsU0FBUyxFQUFFLGVBQWU7UUFDMUIsU0FBUyxFQUFFLGVBQWU7S0FDM0IsQ0FBQyxDQUFBO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IFRhYmxlIGZyb20gJ2NsaS10YWJsZTMnXG5pbXBvcnQgeyBwYXJzZVN0ZXBBcmd1bWVudCB9IGZyb20gJy4uLy4uL3N0ZXBfYXJndW1lbnRzJ1xuXG5mdW5jdGlvbiBmb3JtYXREYXRhVGFibGUoZGF0YVRhYmxlOiBtZXNzYWdlcy5QaWNrbGVUYWJsZSk6IHN0cmluZyB7XG4gIGNvbnN0IHRhYmxlID0gbmV3IFRhYmxlKHtcbiAgICBjaGFyczoge1xuICAgICAgYm90dG9tOiAnJyxcbiAgICAgICdib3R0b20tbGVmdCc6ICcnLFxuICAgICAgJ2JvdHRvbS1taWQnOiAnJyxcbiAgICAgICdib3R0b20tcmlnaHQnOiAnJyxcbiAgICAgIGxlZnQ6ICd8JyxcbiAgICAgICdsZWZ0LW1pZCc6ICcnLFxuICAgICAgbWlkOiAnJyxcbiAgICAgICdtaWQtbWlkJzogJycsXG4gICAgICBtaWRkbGU6ICd8JyxcbiAgICAgIHJpZ2h0OiAnfCcsXG4gICAgICAncmlnaHQtbWlkJzogJycsXG4gICAgICB0b3A6ICcnLFxuICAgICAgJ3RvcC1sZWZ0JzogJycsXG4gICAgICAndG9wLW1pZCc6ICcnLFxuICAgICAgJ3RvcC1yaWdodCc6ICcnLFxuICAgIH0sXG4gICAgc3R5bGU6IHtcbiAgICAgIGJvcmRlcjogW10sXG4gICAgICAncGFkZGluZy1sZWZ0JzogMSxcbiAgICAgICdwYWRkaW5nLXJpZ2h0JzogMSxcbiAgICB9LFxuICB9KVxuICBjb25zdCByb3dzID0gZGF0YVRhYmxlLnJvd3MubWFwKChyb3cpID0+XG4gICAgcm93LmNlbGxzLm1hcCgoY2VsbCkgPT4gY2VsbC52YWx1ZS5yZXBsYWNlKC9cXFxcL2csICdcXFxcXFxcXCcpLnJlcGxhY2UoL1xcbi9nLCAnXFxcXG4nKSlcbiAgKVxuICB0YWJsZS5wdXNoKC4uLnJvd3MpXG4gIHJldHVybiB0YWJsZS50b1N0cmluZygpXG59XG5cbmZ1bmN0aW9uIGZvcm1hdERvY1N0cmluZyhkb2NTdHJpbmc6IG1lc3NhZ2VzLlBpY2tsZURvY1N0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgXCJcIlwiXFxuJHtkb2NTdHJpbmcuY29udGVudH1cXG5cIlwiXCJgXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRTdGVwQXJndW1lbnQoYXJnOiBtZXNzYWdlcy5QaWNrbGVTdGVwQXJndW1lbnQpOiBzdHJpbmcge1xuICByZXR1cm4gcGFyc2VTdGVwQXJndW1lbnQoYXJnLCB7XG4gICAgZGF0YVRhYmxlOiBmb3JtYXREYXRhVGFibGUsXG4gICAgZG9jU3RyaW5nOiBmb3JtYXREb2NTdHJpbmcsXG4gIH0pXG59XG4iXX0=
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcF9hcmd1bWVudF9mb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZm9ybWF0dGVyL2hlbHBlcnMvc3RlcF9hcmd1bWVudF9mb3JtYXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUF3Q0EsZ0RBS0M7QUE1Q0QsNERBQThCO0FBQzlCLHlEQUF3RDtBQUV4RCxTQUFTLGVBQWUsQ0FBQyxTQUFzQjtJQUM3QyxNQUFNLEtBQUssR0FBRyxJQUFJLG9CQUFLLENBQUM7UUFDdEIsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFLEVBQUU7WUFDVixhQUFhLEVBQUUsRUFBRTtZQUNqQixZQUFZLEVBQUUsRUFBRTtZQUNoQixjQUFjLEVBQUUsRUFBRTtZQUNsQixJQUFJLEVBQUUsR0FBRztZQUNULFVBQVUsRUFBRSxFQUFFO1lBQ2QsR0FBRyxFQUFFLEVBQUU7WUFDUCxTQUFTLEVBQUUsRUFBRTtZQUNiLE1BQU0sRUFBRSxHQUFHO1lBQ1gsS0FBSyxFQUFFLEdBQUc7WUFDVixXQUFXLEVBQUUsRUFBRTtZQUNmLEdBQUcsRUFBRSxFQUFFO1lBQ1AsVUFBVSxFQUFFLEVBQUU7WUFDZCxTQUFTLEVBQUUsRUFBRTtZQUNiLFdBQVcsRUFBRSxFQUFFO1NBQ2hCO1FBQ0QsS0FBSyxFQUFFO1lBQ0wsTUFBTSxFQUFFLEVBQUU7WUFDVixjQUFjLEVBQUUsQ0FBQztZQUNqQixlQUFlLEVBQUUsQ0FBQztTQUNuQjtLQUNGLENBQUMsQ0FBQTtJQUNGLE1BQU0sSUFBSSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDdEMsR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ2pGLENBQUE7SUFDRCxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUE7SUFDbkIsT0FBTyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7QUFDekIsQ0FBQztBQUVELFNBQVMsZUFBZSxDQUFDLFNBQTBCO0lBQ2pELE9BQU8sUUFBUSxTQUFTLENBQUMsT0FBTyxPQUFPLENBQUE7QUFDekMsQ0FBQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLEdBQXVCO0lBQ3hELE9BQU8sSUFBQSxrQ0FBaUIsRUFBQyxHQUFHLEVBQUU7UUFDNUIsU0FBUyxFQUFFLGVBQWU7UUFDMUIsU0FBUyxFQUFFLGVBQWU7S0FDM0IsQ0FBQyxDQUFBO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUGlja2xlRG9jU3RyaW5nLCBQaWNrbGVTdGVwQXJndW1lbnQsIFBpY2tsZVRhYmxlIH0gZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IFRhYmxlIGZyb20gJ2NsaS10YWJsZTMnXG5pbXBvcnQgeyBwYXJzZVN0ZXBBcmd1bWVudCB9IGZyb20gJy4uLy4uL3N0ZXBfYXJndW1lbnRzJ1xuXG5mdW5jdGlvbiBmb3JtYXREYXRhVGFibGUoZGF0YVRhYmxlOiBQaWNrbGVUYWJsZSk6IHN0cmluZyB7XG4gIGNvbnN0IHRhYmxlID0gbmV3IFRhYmxlKHtcbiAgICBjaGFyczoge1xuICAgICAgYm90dG9tOiAnJyxcbiAgICAgICdib3R0b20tbGVmdCc6ICcnLFxuICAgICAgJ2JvdHRvbS1taWQnOiAnJyxcbiAgICAgICdib3R0b20tcmlnaHQnOiAnJyxcbiAgICAgIGxlZnQ6ICd8JyxcbiAgICAgICdsZWZ0LW1pZCc6ICcnLFxuICAgICAgbWlkOiAnJyxcbiAgICAgICdtaWQtbWlkJzogJycsXG4gICAgICBtaWRkbGU6ICd8JyxcbiAgICAgIHJpZ2h0OiAnfCcsXG4gICAgICAncmlnaHQtbWlkJzogJycsXG4gICAgICB0b3A6ICcnLFxuICAgICAgJ3RvcC1sZWZ0JzogJycsXG4gICAgICAndG9wLW1pZCc6ICcnLFxuICAgICAgJ3RvcC1yaWdodCc6ICcnLFxuICAgIH0sXG4gICAgc3R5bGU6IHtcbiAgICAgIGJvcmRlcjogW10sXG4gICAgICAncGFkZGluZy1sZWZ0JzogMSxcbiAgICAgICdwYWRkaW5nLXJpZ2h0JzogMSxcbiAgICB9LFxuICB9KVxuICBjb25zdCByb3dzID0gZGF0YVRhYmxlLnJvd3MubWFwKChyb3cpID0+XG4gICAgcm93LmNlbGxzLm1hcCgoY2VsbCkgPT4gY2VsbC52YWx1ZS5yZXBsYWNlKC9cXFxcL2csICdcXFxcXFxcXCcpLnJlcGxhY2UoL1xcbi9nLCAnXFxcXG4nKSlcbiAgKVxuICB0YWJsZS5wdXNoKC4uLnJvd3MpXG4gIHJldHVybiB0YWJsZS50b1N0cmluZygpXG59XG5cbmZ1bmN0aW9uIGZvcm1hdERvY1N0cmluZyhkb2NTdHJpbmc6IFBpY2tsZURvY1N0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBgXCJcIlwiXFxuJHtkb2NTdHJpbmcuY29udGVudH1cXG5cIlwiXCJgXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRTdGVwQXJndW1lbnQoYXJnOiBQaWNrbGVTdGVwQXJndW1lbnQpOiBzdHJpbmcge1xuICByZXR1cm4gcGFyc2VTdGVwQXJndW1lbnQoYXJnLCB7XG4gICAgZGF0YVRhYmxlOiBmb3JtYXREYXRhVGFibGUsXG4gICAgZG9jU3RyaW5nOiBmb3JtYXREb2NTdHJpbmcsXG4gIH0pXG59XG4iXX0=
@@ -1,9 +1,9 @@
1
- import * as messages from '@cucumber/messages';
1
+ import { type Duration } from '@cucumber/messages';
2
2
  import type { IColorFns } from '../get_color_fns';
3
3
  import type { ITestCaseAttempt } from './event_data_collector';
4
4
  export interface IFormatSummaryRequest {
5
5
  colorFns: IColorFns;
6
6
  testCaseAttempts: ITestCaseAttempt[];
7
- testRunDuration: messages.Duration;
7
+ testRunDuration: Duration;
8
8
  }
9
9
  export declare function formatSummary({ colorFns, testCaseAttempts, testRunDuration, }: IFormatSummaryRequest): string;
@@ -1,58 +1,25 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  Object.defineProperty(exports, "__esModule", { value: true });
36
3
  exports.formatSummary = formatSummary;
37
- const messages = __importStar(require("@cucumber/messages"));
4
+ const messages_1 = require("@cucumber/messages");
38
5
  const luxon_1 = require("luxon");
39
6
  const value_checker_1 = require("../../value_checker");
40
7
  const STATUS_REPORT_ORDER = [
41
- messages.TestStepResultStatus.FAILED,
42
- messages.TestStepResultStatus.AMBIGUOUS,
43
- messages.TestStepResultStatus.UNDEFINED,
44
- messages.TestStepResultStatus.PENDING,
45
- messages.TestStepResultStatus.SKIPPED,
46
- messages.TestStepResultStatus.PASSED,
47
- messages.TestStepResultStatus.UNKNOWN,
8
+ messages_1.TestStepResultStatus.FAILED,
9
+ messages_1.TestStepResultStatus.AMBIGUOUS,
10
+ messages_1.TestStepResultStatus.UNDEFINED,
11
+ messages_1.TestStepResultStatus.PENDING,
12
+ messages_1.TestStepResultStatus.SKIPPED,
13
+ messages_1.TestStepResultStatus.PASSED,
14
+ messages_1.TestStepResultStatus.UNKNOWN,
48
15
  ];
49
16
  function formatSummary({ colorFns, testCaseAttempts, testRunDuration, }) {
50
17
  const testCaseResults = [];
51
18
  const testStepResults = [];
52
- let totalStepDuration = messages.TimeConversion.millisecondsToDuration(0);
19
+ let totalStepDuration = messages_1.TimeConversion.millisecondsToDuration(0);
53
20
  testCaseAttempts.forEach(({ testCase, willBeRetried, worstTestStepResult, stepResults }) => {
54
21
  Object.values(stepResults).forEach((stepResult) => {
55
- totalStepDuration = messages.TimeConversion.addDurations(totalStepDuration, stepResult.duration);
22
+ totalStepDuration = messages_1.TimeConversion.addDurations(totalStepDuration, stepResult.duration);
56
23
  });
57
24
  if (!willBeRetried) {
58
25
  testCaseResults.push(worstTestStepResult);
@@ -99,7 +66,7 @@ function getCountSummary({ colorFns, objects, type }) {
99
66
  }
100
67
  function getDurationSummary(durationMsg) {
101
68
  const start = new Date(0);
102
- const end = new Date(messages.TimeConversion.durationToMilliseconds(durationMsg));
69
+ const end = new Date(messages_1.TimeConversion.durationToMilliseconds(durationMsg));
103
70
  const duration = luxon_1.Interval.fromDateTimes(start, end).toDuration([
104
71
  'minutes',
105
72
  'seconds',
@@ -107,4 +74,4 @@ function getDurationSummary(durationMsg) {
107
74
  ]);
108
75
  return duration.toFormat("m'm'ss.SSS's'");
109
76
  }
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtbWFyeV9oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Zvcm1hdHRlci9oZWxwZXJzL3N1bW1hcnlfaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNCQSxzQ0FzQ0M7QUE1REQsNkRBQThDO0FBQzlDLGlDQUFnQztBQUNoQyx1REFBbUQ7QUFJbkQsTUFBTSxtQkFBbUIsR0FBRztJQUMxQixRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTTtJQUNwQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsU0FBUztJQUN2QyxRQUFRLENBQUMsb0JBQW9CLENBQUMsU0FBUztJQUN2QyxRQUFRLENBQUMsb0JBQW9CLENBQUMsT0FBTztJQUNyQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsT0FBTztJQUNyQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTTtJQUNwQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsT0FBTztDQUN0QyxDQUFBO0FBUUQsU0FBZ0IsYUFBYSxDQUFDLEVBQzVCLFFBQVEsRUFDUixnQkFBZ0IsRUFDaEIsZUFBZSxHQUNPO0lBQ3RCLE1BQU0sZUFBZSxHQUE4QixFQUFFLENBQUE7SUFDckQsTUFBTSxlQUFlLEdBQThCLEVBQUUsQ0FBQTtJQUNyRCxJQUFJLGlCQUFpQixHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDekUsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUU7UUFDekYsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRTtZQUNoRCxpQkFBaUIsR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FDdEQs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Q0FBQyxDQUFDLENBQUE7SUFDekIsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFBO0lBQ2pGLE1BQU0sUUFBUSxHQUFHLGdCQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUM7UUFDN0QsU0FBUztRQUNULFNBQVM7UUFDVCxjQUFjO0tBQ2YsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0FBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBtZXNzYWdlcyBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgeyBJbnRlcnZhbCB9IGZyb20gJ2x1eG9uJ1xuaW1wb3J0IHsgZG9lc0hhdmVWYWx1ZSB9IGZyb20gJy4uLy4uL3ZhbHVlX2NoZWNrZXInXG5pbXBvcnQgdHlwZSB7IElDb2xvckZucyB9IGZyb20gJy4uL2dldF9jb2xvcl9mbnMnXG5pbXBvcnQgdHlwZSB7IElUZXN0Q2FzZUF0dGVtcHQgfSBmcm9tICcuL2V2ZW50X2RhdGFfY29sbGVjdG9yJ1xuXG5jb25zdCBTVEFUVVNfUkVQT1JUX09SREVSID0gW1xuICBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5GQUlMRUQsXG4gIG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLkFNQklHVU9VUyxcbiAgbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuVU5ERUZJTkVELFxuICBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5QRU5ESU5HLFxuICBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5TS0lQUEVELFxuICBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5QQVNTRUQsXG4gIG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLlVOS05PV04sXG5dXG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZvcm1hdFN1bW1hcnlSZXF1ZXN0IHtcbiAgY29sb3JGbnM6IElDb2xvckZuc1xuICB0ZXN0Q2FzZUF0dGVtcHRzOiBJVGVzdENhc2VBdHRlbXB0W11cbiAgdGVzdFJ1bkR1cmF0aW9uOiBtZXNzYWdlcy5EdXJhdGlvblxufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0U3VtbWFyeSh7XG4gIGNvbG9yRm5zLFxuICB0ZXN0Q2FzZUF0dGVtcHRzLFxuICB0ZXN0UnVuRHVyYXRpb24sXG59OiBJRm9ybWF0U3VtbWFyeVJlcXVlc3QpOiBzdHJpbmcge1xuICBjb25zdCB0ZXN0Q2FzZVJlc3VsdHM6IG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0W10gPSBbXVxuICBjb25zdCB0ZXN0U3RlcFJlc3VsdHM6IG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0W10gPSBbXVxuICBsZXQgdG90YWxTdGVwRHVyYXRpb24gPSBtZXNzYWdlcy5UaW1lQ29udmVyc2lvbi5taWxsaXNlY29uZHNUb0R1cmF0aW9uKDApXG4gIHRlc3RDYXNlQXR0ZW1wdHMuZm9yRWFjaCgoeyB0ZXN0Q2FzZSwgd2lsbEJlUmV0cmllZCwgd29yc3RUZXN0U3RlcFJlc3VsdCwgc3RlcFJlc3VsdHMgfSkgPT4ge1xuICAgIE9iamVjdC52YWx1ZXMoc3RlcFJlc3VsdHMpLmZvckVhY2goKHN0ZXBSZXN1bHQpID0+IHtcbiAgICAgIHRvdGFsU3RlcER1cmF0aW9uID0gbWVzc2FnZXMuVGltZUNvbnZlcnNpb24uYWRkRHVyYXRpb25zKFxuICAgICAgICB0b3RhbFN0ZXBEdXJhdGlvbixcbiAgICAgICAgc3RlcFJlc3VsdC5kdXJhdGlvblxuICAgICAgKVxuICAgIH0pXG4gICAgaWYgKCF3aWxsQmVSZXRyaWVkKSB7XG4gICAgICB0ZXN0Q2FzZVJlc3VsdHMucHVzaCh3b3JzdFRlc3RTdGVwUmVzdWx0KVxuICAgICAgdGVzdENhc2UudGVzdFN0ZXBzLmZvckVhY2goKHRlc3RTdGVwKSA9PiB7XG4gICAgICAgIGlmIChkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLnBpY2tsZVN0ZXBJZCkpIHtcbiAgICAgICAgICB0ZXN0U3RlcFJlc3VsdHMucHVzaChzdGVwUmVzdWx0c1t0ZXN0U3RlcC5pZF0pXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgfVxuICB9KVxuICBjb25zdCBzY2VuYXJpb1N1bW1hcnkgPSBnZXRDb3VudFN1bW1hcnkoe1xuICAgIGNvbG9yRm5zLFxuICAgIG9iamVjdHM6IHRlc3RDYXNlUmVzdWx0cyxcbiAgICB0eXBlOiAnc2NlbmFyaW8nLFxuICB9KVxuICBjb25zdCBzdGVwU3VtbWFyeSA9IGdldENvdW50U3VtbWFyeSh7XG4gICAgY29sb3JGbnMsXG4gICAgb2JqZWN0czogdGVzdFN0ZXBSZXN1bHRzLFxuICAgIHR5cGU6ICdzdGVwJyxcbiAgfSlcbiAgY29uc3QgZHVyYXRpb25TdW1tYXJ5ID0gYCR7Z2V0RHVyYXRpb25TdW1tYXJ5KFxuICAgIHRlc3RSdW5EdXJhdGlvblxuICApfSAoZXhlY3V0aW5nIHN0ZXBzOiAke2dldER1cmF0aW9uU3VtbWFyeSh0b3RhbFN0ZXBEdXJhdGlvbil9KVxcbmBcbiAgcmV0dXJuIFtzY2VuYXJpb1N1bW1hcnksIHN0ZXBTdW1tYXJ5LCBkdXJhdGlvblN1bW1hcnldLmpvaW4oJ1xcbicpXG59XG5cbmludGVyZmFjZSBJR2V0Q291bnRTdW1tYXJ5UmVxdWVzdCB7XG4gIGNvbG9yRm5zOiBJQ29sb3JGbnNcbiAgb2JqZWN0czogbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRbXVxuICB0eXBlOiBzdHJpbmdcbn1cblxuZnVuY3Rpb24gZ2V0Q291bnRTdW1tYXJ5KHsgY29sb3JGbnMsIG9iamVjdHMsIHR5cGUgfTogSUdldENvdW50U3VtbWFyeVJlcXVlc3QpOiBzdHJpbmcge1xuICBjb25zdCBjb3VudHM6IFJlY29yZDxzdHJpbmcsIG51bWJlcj4gPSB7fVxuICBmb3IgKGNvbnN0IHggb2YgU1RBVFVTX1JFUE9SVF9PUkRFUikge1xuICAgIGNvdW50c1t4XSA9IDBcbiAgfVxuICBmb3IgKGNvbnN0IHggb2Ygb2JqZWN0cykge1xuICAgIGNvdW50c1t4LnN0YXR1c10gKz0gMVxuICB9XG4gIGNvbnN0IHRvdGFsID0gT2JqZWN0LnZhbHVlcyhjb3VudHMpLnJlZHVjZSgoYWNjLCB4KSA9PiBhY2MgKyB4LCAwKVxuICBsZXQgdGV4dCA9IGAke3RvdGFsLnRvU3RyaW5nKCl9ICR7dHlwZX0ke3RvdGFsID09PSAxID8gJycgOiAncyd9YFxuICBpZiAodG90YWwgPiAwKSB7XG4gICAgY29uc3QgZGV0YWlsczogc3RyaW5nW10gPSBbXVxuICAgIFNUQVRVU19SRVBPUlRfT1JERVIuZm9yRWFjaCgoc3RhdHVzKSA9PiB7XG4gICAgICBpZiAoY291bnRzW3N0YXR1c10gPiAwKSB7XG4gICAgICAgIGRldGFpbHMucHVzaChcbiAgICAgICAgICBjb2xvckZucy5mb3JTdGF0dXMoc3RhdHVzKShgJHtjb3VudHNbc3RhdHVzXS50b1N0cmluZygpfSAke3N0YXR1cy50b0xvd2VyQ2FzZSgpfWApXG4gICAgICAgIClcbiAgICAgIH1cbiAgICB9KVxuICAgIHRleHQgKz0gYCAoJHtkZXRhaWxzLmpvaW4oJywgJyl9KWBcbiAgfVxuICByZXR1cm4gdGV4dFxufVxuXG5mdW5jdGlvbiBnZXREdXJhdGlvblN1bW1hcnkoZHVyYXRpb25Nc2c6IG1lc3NhZ2VzLkR1cmF0aW9uKTogc3RyaW5nIHtcbiAgY29uc3Qgc3RhcnQgPSBuZXcgRGF0ZSgwKVxuICBjb25zdCBlbmQgPSBuZXcgRGF0ZShtZXNzYWdlcy5UaW1lQ29udmVyc2lvbi5kdXJhdGlvblRvTWlsbGlzZWNvbmRzKGR1cmF0aW9uTXNnKSlcbiAgY29uc3QgZHVyYXRpb24gPSBJbnRlcnZhbC5mcm9tRGF0ZVRpbWVzKHN0YXJ0LCBlbmQpLnRvRHVyYXRpb24oW1xuICAgICdtaW51dGVzJyxcbiAgICAnc2Vjb25kcycsXG4gICAgJ21pbGxpc2Vjb25kcycsXG4gIF0pXG4gIHJldHVybiBkdXJhdGlvbi50b0Zvcm1hdChcIm0nbSdzcy5TU1MncydcIilcbn1cbiJdfQ==
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VtbWFyeV9oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Zvcm1hdHRlci9oZWxwZXJzL3N1bW1hcnlfaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQTJCQSxzQ0FtQ0M7QUE5REQsaURBSzJCO0FBQzNCLGlDQUFnQztBQUNoQyx1REFBbUQ7QUFJbkQsTUFBTSxtQkFBbUIsR0FBRztJQUMxQiwrQkFBb0IsQ0FBQyxNQUFNO0lBQzNCLCtCQUFvQixDQUFDLFNBQVM7SUFDOUIsK0JBQW9CLENBQUMsU0FBUztJQUM5QiwrQkFBb0IsQ0FBQyxPQUFPO0lBQzVCLCtCQUFvQixDQUFDLE9BQU87SUFDNUIsK0JBQW9CLENBQUMsTUFBTTtJQUMzQiwrQkFBb0IsQ0FBQyxPQUFPO0NBQzdCLENBQUE7QUFRRCxTQUFnQixhQUFhLENBQUMsRUFDNUIsUUFBUSxFQUNSLGdCQUFnQixFQUNoQixlQUFlLEdBQ087SUFDdEIsTUFBTSxlQUFlLEdBQXFCLEVBQUUsQ0FBQTtJQUM1QyxNQUFNLGVBQWUsR0FBcUIsRUFBRSxDQUFBO0lBQzVDLElBQUksaUJBQWlCLEdBQUcseUJBQWMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQTtJQUNoRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRTtRQUN6RixNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ2hELGlCQUFpQixHQUFHLHlCQUFjLENBQUMsWUFBWSxDQUFDLGlCQUFpQixFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQTtRQUN6RixDQUFDLENBQUMsQ0FBQTtRQUNGLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQixlQUFlLENBQUMsSUFBSSxDQUFDLG1CQUFtQixD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QUMsYUFBYSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUM7UUFDN0QsU0FBUztRQUNULFNBQVM7UUFDVCxjQUFjO0tBQ2YsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0FBQzNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIER1cmF0aW9uLFxuICB0eXBlIFRlc3RTdGVwUmVzdWx0LFxuICBUZXN0U3RlcFJlc3VsdFN0YXR1cyxcbiAgVGltZUNvbnZlcnNpb24sXG59IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB7IEludGVydmFsIH0gZnJvbSAnbHV4b24nXG5pbXBvcnQgeyBkb2VzSGF2ZVZhbHVlIH0gZnJvbSAnLi4vLi4vdmFsdWVfY2hlY2tlcidcbmltcG9ydCB0eXBlIHsgSUNvbG9yRm5zIH0gZnJvbSAnLi4vZ2V0X2NvbG9yX2ZucydcbmltcG9ydCB0eXBlIHsgSVRlc3RDYXNlQXR0ZW1wdCB9IGZyb20gJy4vZXZlbnRfZGF0YV9jb2xsZWN0b3InXG5cbmNvbnN0IFNUQVRVU19SRVBPUlRfT1JERVIgPSBbXG4gIFRlc3RTdGVwUmVzdWx0U3RhdHVzLkZBSUxFRCxcbiAgVGVzdFN0ZXBSZXN1bHRTdGF0dXMuQU1CSUdVT1VTLFxuICBUZXN0U3RlcFJlc3VsdFN0YXR1cy5VTkRFRklORUQsXG4gIFRlc3RTdGVwUmVzdWx0U3RhdHVzLlBFTkRJTkcsXG4gIFRlc3RTdGVwUmVzdWx0U3RhdHVzLlNLSVBQRUQsXG4gIFRlc3RTdGVwUmVzdWx0U3RhdHVzLlBBU1NFRCxcbiAgVGVzdFN0ZXBSZXN1bHRTdGF0dXMuVU5LTk9XTixcbl1cblxuZXhwb3J0IGludGVyZmFjZSBJRm9ybWF0U3VtbWFyeVJlcXVlc3Qge1xuICBjb2xvckZuczogSUNvbG9yRm5zXG4gIHRlc3RDYXNlQXR0ZW1wdHM6IElUZXN0Q2FzZUF0dGVtcHRbXVxuICB0ZXN0UnVuRHVyYXRpb246IER1cmF0aW9uXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRTdW1tYXJ5KHtcbiAgY29sb3JGbnMsXG4gIHRlc3RDYXNlQXR0ZW1wdHMsXG4gIHRlc3RSdW5EdXJhdGlvbixcbn06IElGb3JtYXRTdW1tYXJ5UmVxdWVzdCk6IHN0cmluZyB7XG4gIGNvbnN0IHRlc3RDYXNlUmVzdWx0czogVGVzdFN0ZXBSZXN1bHRbXSA9IFtdXG4gIGNvbnN0IHRlc3RTdGVwUmVzdWx0czogVGVzdFN0ZXBSZXN1bHRbXSA9IFtdXG4gIGxldCB0b3RhbFN0ZXBEdXJhdGlvbiA9IFRpbWVDb252ZXJzaW9uLm1pbGxpc2Vjb25kc1RvRHVyYXRpb24oMClcbiAgdGVzdENhc2VBdHRlbXB0cy5mb3JFYWNoKCh7IHRlc3RDYXNlLCB3aWxsQmVSZXRyaWVkLCB3b3JzdFRlc3RTdGVwUmVzdWx0LCBzdGVwUmVzdWx0cyB9KSA9PiB7XG4gICAgT2JqZWN0LnZhbHVlcyhzdGVwUmVzdWx0cykuZm9yRWFjaCgoc3RlcFJlc3VsdCkgPT4ge1xuICAgICAgdG90YWxTdGVwRHVyYXRpb24gPSBUaW1lQ29udmVyc2lvbi5hZGREdXJhdGlvbnModG90YWxTdGVwRHVyYXRpb24sIHN0ZXBSZXN1bHQuZHVyYXRpb24pXG4gICAgfSlcbiAgICBpZiAoIXdpbGxCZVJldHJpZWQpIHtcbiAgICAgIHRlc3RDYXNlUmVzdWx0cy5wdXNoKHdvcnN0VGVzdFN0ZXBSZXN1bHQpXG4gICAgICB0ZXN0Q2FzZS50ZXN0U3RlcHMuZm9yRWFjaCgodGVzdFN0ZXApID0+IHtcbiAgICAgICAgaWYgKGRvZXNIYXZlVmFsdWUodGVzdFN0ZXAucGlja2xlU3RlcElkKSkge1xuICAgICAgICAgIHRlc3RTdGVwUmVzdWx0cy5wdXNoKHN0ZXBSZXN1bHRzW3Rlc3RTdGVwLmlkXSlcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9XG4gIH0pXG4gIGNvbnN0IHNjZW5hcmlvU3VtbWFyeSA9IGdldENvdW50U3VtbWFyeSh7XG4gICAgY29sb3JGbnMsXG4gICAgb2JqZWN0czogdGVzdENhc2VSZXN1bHRzLFxuICAgIHR5cGU6ICdzY2VuYXJpbycsXG4gIH0pXG4gIGNvbnN0IHN0ZXBTdW1tYXJ5ID0gZ2V0Q291bnRTdW1tYXJ5KHtcbiAgICBjb2xvckZucyxcbiAgICBvYmplY3RzOiB0ZXN0U3RlcFJlc3VsdHMsXG4gICAgdHlwZTogJ3N0ZXAnLFxuICB9KVxuICBjb25zdCBkdXJhdGlvblN1bW1hcnkgPSBgJHtnZXREdXJhdGlvblN1bW1hcnkoXG4gICAgdGVzdFJ1bkR1cmF0aW9uXG4gICl9IChleGVjdXRpbmcgc3RlcHM6ICR7Z2V0RHVyYXRpb25TdW1tYXJ5KHRvdGFsU3RlcER1cmF0aW9uKX0pXFxuYFxuICByZXR1cm4gW3NjZW5hcmlvU3VtbWFyeSwgc3RlcFN1bW1hcnksIGR1cmF0aW9uU3VtbWFyeV0uam9pbignXFxuJylcbn1cblxuaW50ZXJmYWNlIElHZXRDb3VudFN1bW1hcnlSZXF1ZXN0IHtcbiAgY29sb3JGbnM6IElDb2xvckZuc1xuICBvYmplY3RzOiBUZXN0U3RlcFJlc3VsdFtdXG4gIHR5cGU6IHN0cmluZ1xufVxuXG5mdW5jdGlvbiBnZXRDb3VudFN1bW1hcnkoeyBjb2xvckZucywgb2JqZWN0cywgdHlwZSB9OiBJR2V0Q291bnRTdW1tYXJ5UmVxdWVzdCk6IHN0cmluZyB7XG4gIGNvbnN0IGNvdW50czogUmVjb3JkPHN0cmluZywgbnVtYmVyPiA9IHt9XG4gIGZvciAoY29uc3QgeCBvZiBTVEFUVVNfUkVQT1JUX09SREVSKSB7XG4gICAgY291bnRzW3hdID0gMFxuICB9XG4gIGZvciAoY29uc3QgeCBvZiBvYmplY3RzKSB7XG4gICAgY291bnRzW3guc3RhdHVzXSArPSAxXG4gIH1cbiAgY29uc3QgdG90YWwgPSBPYmplY3QudmFsdWVzKGNvdW50cykucmVkdWNlKChhY2MsIHgpID0+IGFjYyArIHgsIDApXG4gIGxldCB0ZXh0ID0gYCR7dG90YWwudG9TdHJpbmcoKX0gJHt0eXBlfSR7dG90YWwgPT09IDEgPyAnJyA6ICdzJ31gXG4gIGlmICh0b3RhbCA+IDApIHtcbiAgICBjb25zdCBkZXRhaWxzOiBzdHJpbmdbXSA9IFtdXG4gICAgU1RBVFVTX1JFUE9SVF9PUkRFUi5mb3JFYWNoKChzdGF0dXMpID0+IHtcbiAgICAgIGlmIChjb3VudHNbc3RhdHVzXSA+IDApIHtcbiAgICAgICAgZGV0YWlscy5wdXNoKFxuICAgICAgICAgIGNvbG9yRm5zLmZvclN0YXR1cyhzdGF0dXMpKGAke2NvdW50c1tzdGF0dXNdLnRvU3RyaW5nKCl9ICR7c3RhdHVzLnRvTG93ZXJDYXNlKCl9YClcbiAgICAgICAgKVxuICAgICAgfVxuICAgIH0pXG4gICAgdGV4dCArPSBgICgke2RldGFpbHMuam9pbignLCAnKX0pYFxuICB9XG4gIHJldHVybiB0ZXh0XG59XG5cbmZ1bmN0aW9uIGdldER1cmF0aW9uU3VtbWFyeShkdXJhdGlvbk1zZzogRHVyYXRpb24pOiBzdHJpbmcge1xuICBjb25zdCBzdGFydCA9IG5ldyBEYXRlKDApXG4gIGNvbnN0IGVuZCA9IG5ldyBEYXRlKFRpbWVDb252ZXJzaW9uLmR1cmF0aW9uVG9NaWxsaXNlY29uZHMoZHVyYXRpb25Nc2cpKVxuICBjb25zdCBkdXJhdGlvbiA9IEludGVydmFsLmZyb21EYXRlVGltZXMoc3RhcnQsIGVuZCkudG9EdXJhdGlvbihbXG4gICAgJ21pbnV0ZXMnLFxuICAgICdzZWNvbmRzJyxcbiAgICAnbWlsbGlzZWNvbmRzJyxcbiAgXSlcbiAgcmV0dXJuIGR1cmF0aW9uLnRvRm9ybWF0KFwibSdtJ3NzLlNTUydzJ1wiKVxufVxuIl19
@@ -1,43 +1,10 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
4
  };
38
5
  Object.defineProperty(exports, "__esModule", { value: true });
39
6
  exports.formatTestCaseAttempt = formatTestCaseAttempt;
40
- const messages = __importStar(require("@cucumber/messages"));
7
+ const messages_1 = require("@cucumber/messages");
41
8
  const figures_1 = __importDefault(require("figures"));
42
9
  const indent_string_1 = __importDefault(require("indent-string"));
43
10
  const value_checker_1 = require("../../value_checker");
@@ -45,21 +12,21 @@ const location_helpers_1 = require("./location_helpers");
45
12
  const step_argument_formatter_1 = require("./step_argument_formatter");
46
13
  const test_case_attempt_parser_1 = require("./test_case_attempt_parser");
47
14
  const CHARACTERS = new Map([
48
- [messages.TestStepResultStatus.AMBIGUOUS, figures_1.default.cross],
49
- [messages.TestStepResultStatus.FAILED, figures_1.default.cross],
50
- [messages.TestStepResultStatus.PASSED, figures_1.default.tick],
51
- [messages.TestStepResultStatus.PENDING, '?'],
52
- [messages.TestStepResultStatus.SKIPPED, '-'],
53
- [messages.TestStepResultStatus.UNDEFINED, '?'],
15
+ [messages_1.TestStepResultStatus.AMBIGUOUS, figures_1.default.cross],
16
+ [messages_1.TestStepResultStatus.FAILED, figures_1.default.cross],
17
+ [messages_1.TestStepResultStatus.PASSED, figures_1.default.tick],
18
+ [messages_1.TestStepResultStatus.PENDING, '?'],
19
+ [messages_1.TestStepResultStatus.SKIPPED, '-'],
20
+ [messages_1.TestStepResultStatus.UNDEFINED, '?'],
54
21
  ]);
55
22
  function getStepMessage(testStep) {
56
23
  switch (testStep.result.status) {
57
- case messages.TestStepResultStatus.AMBIGUOUS:
58
- case messages.TestStepResultStatus.FAILED:
24
+ case messages_1.TestStepResultStatus.AMBIGUOUS:
25
+ case messages_1.TestStepResultStatus.FAILED:
59
26
  return testStep.result.message;
60
- case messages.TestStepResultStatus.UNDEFINED:
27
+ case messages_1.TestStepResultStatus.UNDEFINED:
61
28
  return `${'Undefined. Implement with the following snippet:' + '\n\n'}${(0, indent_string_1.default)(testStep.snippet, 2)}\n`;
62
- case messages.TestStepResultStatus.PENDING:
29
+ case messages_1.TestStepResultStatus.PENDING:
63
30
  return 'Pending';
64
31
  }
65
32
  return '';
@@ -120,4 +87,4 @@ function getAttemptText(attempt, willBeRetried) {
120
87
  }
121
88
  return '';
122
89
  }
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jYXNlX2F0dGVtcHRfZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Zvcm1hdHRlci9oZWxwZXJzL3Rlc3RfY2FzZV9hdHRlbXB0X2Zvcm1hdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXlGQSxzREFtQkM7QUE1R0QsNkRBQThDO0FBQzlDLHNEQUE2QjtBQUM3QixrRUFBd0M7QUFFeEMsdURBQW1FO0FBSW5FLHlEQUFtRDtBQUNuRCx1RUFBOEQ7QUFDOUQseUVBQXVGO0FBRXZGLE1BQU0sVUFBVSxHQUErQyxJQUFJLEdBQUcsQ0FBQztJQUNyRSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsaUJBQU8sQ0FBQyxLQUFLLENBQUM7SUFDeEQsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxFQUFFLGlCQUFPLENBQUMsS0FBSyxDQUFDO0lBQ3JELENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRSxpQkFBTyxDQUFDLElBQUksQ0FBQztJQUNwRCxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDO0lBQzVDLENBQUMsUUFBUSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7SUFDNUMsQ0FBQyxRQUFRLENBQUMsb0JBQW9CLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQztDQUMvQyxDQUFDLENBQUE7QUFFRixTQUFTLGNBQWMsQ0FBQyxRQUF5QjtJQUMvQyxRQUFRLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDL0IsS0FBSyxRQUFRLENBQUMsb0JBQW9CLENBQUMsU0FBUyxDQUFDO1FBQzdDLEtBQUssUUFBUSxDQUFDLG9CQUFvQixDQUFDLE1BQU07WUFDdkMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLE9B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bWVzc2FnZXMnXG5pbXBvcnQgZmlndXJlcyBmcm9tICdmaWd1cmVzJ1xuaW1wb3J0IGluZGVudFN0cmluZyBmcm9tICdpbmRlbnQtc3RyaW5nJ1xuaW1wb3J0IHR5cGUgeyBTdXBwb3J0Q29kZUxpYnJhcnkgfSBmcm9tICcuLi8uLi9zdXBwb3J0X2NvZGVfbGlicmFyeV9idWlsZGVyL3R5cGVzJ1xuaW1wb3J0IHsgZG9lc0hhdmVWYWx1ZSwgdmFsdWVPckRlZmF1bHQgfSBmcm9tICcuLi8uLi92YWx1ZV9jaGVja2VyJ1xuaW1wb3J0IHR5cGUgeyBJQ29sb3JGbnMgfSBmcm9tICcuLi9nZXRfY29sb3JfZm5zJ1xuaW1wb3J0IHR5cGUgU3RlcERlZmluaXRpb25TbmlwcGV0QnVpbGRlciBmcm9tICcuLi9zdGVwX2RlZmluaXRpb25fc25pcHBldF9idWlsZGVyJ1xuaW1wb3J0IHR5cGUgeyBJVGVzdENhc2VBdHRlbXB0IH0gZnJvbSAnLi9ldmVudF9kYXRhX2NvbGxlY3RvcidcbmltcG9ydCB7IGZvcm1hdExvY2F0aW9uIH0gZnJvbSAnLi9sb2NhdGlvbl9oZWxwZXJzJ1xuaW1wb3J0IHsgZm9ybWF0U3RlcEFyZ3VtZW50IH0gZnJvbSAnLi9zdGVwX2FyZ3VtZW50X2Zvcm1hdHRlcidcbmltcG9ydCB7IHR5cGUgSVBhcnNlZFRlc3RTdGVwLCBwYXJzZVRlc3RDYXNlQXR0ZW1wdCB9IGZyb20gJy4vdGVzdF9jYXNlX2F0dGVtcHRfcGFyc2VyJ1xuXG5jb25zdCBDSEFSQUNURVJTOiBNYXA8bWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMsIHN0cmluZz4gPSBuZXcgTWFwKFtcbiAgW21lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLkFNQklHVU9VUywgZmlndXJlcy5jcm9zc10sXG4gIFttZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5GQUlMRUQsIGZpZ3VyZXMuY3Jvc3NdLFxuICBbbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuUEFTU0VELCBmaWd1cmVzLnRpY2tdLFxuICBbbWVzc2FnZXMuVGVzdFN0ZXBSZXN1bHRTdGF0dXMuUEVORElORywgJz8nXSxcbiAgW21lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLlNLSVBQRUQsICctJ10sXG4gIFttZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5VTkRFRklORUQsICc/J10sXG5dKVxuXG5mdW5jdGlvbiBnZXRTdGVwTWVzc2FnZSh0ZXN0U3RlcDogSVBhcnNlZFRlc3RTdGVwKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgc3dpdGNoICh0ZXN0U3RlcC5yZXN1bHQuc3RhdHVzKSB7XG4gICAgY2FzZSBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5BTUJJR1VPVVM6XG4gICAgY2FzZSBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFN0YXR1cy5GQUlMRUQ6XG4gICAgICByZXR1cm4gdGVzdFN0ZXAucmVzdWx0Lm1lc3NhZ2VcbiAgICBjYXNlIG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLlVOREVGSU5FRDpcbiAgICAgIHJldHVybiBgJHtcbiAgICAgICAgJ1VuZGVmaW5lZC4gSW1wbGVtZW50IHdpdGggdGhlIGZvbGxvd2luZyBzbmlwcGV0OicgKyAnXFxuXFxuJ1xuICAgICAgfSR7aW5kZW50U3RyaW5nKHRlc3RTdGVwLnNuaXBwZXQsIDIpfVxcbmBcbiAgICBjYXNlIG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLlBFTkRJTkc6XG4gICAgICByZXR1cm4gJ1BlbmRpbmcnXG4gIH1cbiAgcmV0dXJuICcnXG59XG5cbmludGVyZmFjZSBJRm9ybWF0U3RlcFJlcXVlc3Qge1xuICBjb2xvckZuczogSUNvbG9yRm5zXG4gIHRlc3RTdGVwOiBJUGFyc2VkVGVzdFN0ZXBcbiAgcHJpbnRBdHRhY2htZW50cz86IGJvb2xlYW5cbn1cblxuZnVuY3Rpb24gZm9ybWF0U3RlcCh7IGNvbG9yRm5zLCB0ZXN0U3RlcCwgcHJpbnRBdHRhY2htZW50cyB9OiBJRm9ybWF0U3RlcFJlcXVlc3QpOiBzdHJpbmcge1xuICBjb25zdCB7XG4gICAgbmFtZSxcbiAgICByZXN1bHQ6IHsgc3RhdHVzIH0sXG4gICAgYWN0aW9uTG9jYXRpb24sXG4gICAgYXR0YWNobWVudHMsXG4gIH0gPSB0ZXN0U3RlcFxuICBjb25zdCBjb2xvckZuID0gY29sb3JGbnMuZm9yU3RhdHVzKHN0YXR1cylcbiAgY29uc3QgaWRlbnRpZmllciA9IHRlc3RTdGVwLmtleXdvcmQgKyB2YWx1ZU9yRGVmYXVsdCh0ZXN0U3RlcC50ZXh0LCAnJylcbiAgbGV0IHRleHQgPSBjb2xvckZuKGAke0NIQVJBQ1RFUlMuZ2V0KHN0YXR1cyl9ICR7aWRlbnRpZmllcn1gKVxuICBpZiAoZG9lc0hhdmVWYWx1ZShuYW1lKSkge1xuICAgIHRleHQgKz0gY29sb3JGbihgICgke25hbWV9KWApXG4gIH1cbiAgaWYgKGRvZXNIYXZlVmFsdWUoYWN0aW9uTG9jYXRpb24pKSB7XG4gICAgdGV4dCArPSBgICMgJHtjb2xvckZucy5sb2NhdGlvbihmb3JtYXRMb2NhdGlvbihhY3Rpb25Mb2NhdGlvbikpfWBcbiAgfVxuICB0ZXh0ICs9ICdcXG4nXG4gIGlmIChkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLmFyZ3VtZW50KSkge1xuICAgIGNvbnN0IGFyZ3VtZW50c1RleHQgPSBmb3JtYXRTdGVwQXJndW1lbnQodGVzdFN0ZXAuYXJndW1lbnQpXG4gICAgdGV4dCArPSBpbmRlbnRTdHJpbmcoYCR7Y29sb3JGbihhcmd1bWVudHNUZXh0KX1cXG5gLCA0KVxuICB9XG4gIGlmICh2YWx1ZU9yRGVmYXVsdChwcmludEF0dGFjaG1lbnRzLCB0cnVlKSkge1xuICAgIGF0dGFjaG1lbnRzLmZvckVhY2goKHsgYm9keSwgbWVkaWFUeXBlLCBmaWxlTmFtZSB9KSA9PiB7XG4gICAgICBsZXQgbWVzc2FnZSA9ICcnXG4gICAgICBpZiAobWVkaWFUeXBlID09PSAndGV4dC9wbGFpbicpIHtcbiAgICAgICAgbWVzc2FnZSA9IGA6ICR7Ym9keX1gXG4gICAgICB9IGVsc2UgaWYgKGZpbGVOYW1lKSB7XG4gICAgICAgIG1lc3NhZ2UgPSBgOiAke2ZpbGVOYW1lfWBcbiAgICAgIH1cbiAgICAgIHRleHQgKz0gaW5kZW50U3RyaW5nKGBBdHRhY2htZW50ICgke21lZGlhVHlwZX0pJHttZXNzYWdlfVxcbmAsIDQpXG4gICAgfSlcbiAgfVxuICBjb25zdCBtZXNzYWdlID0gZ2V0U3RlcE1lc3NhZ2UodGVzdFN0ZXApXG4gIGlmIChtZXNzYWdlKSB7XG4gICAgdGV4dCArPSBgJHtpbmRlbnRTdHJpbmcoY29sb3JGbihtZXNzYWdlKSwgNCl9XFxuYFxuICB9XG4gIHJldHVybiB0ZXh0XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZvcm1hdFRlc3RDYXNlQXR0ZW1wdFJlcXVlc3Qge1xuICBjb2xvckZuczogSUNvbG9yRm5zXG4gIHRlc3RDYXNlQXR0ZW1wdDogSVRlc3RDYXNlQXR0ZW1wdFxuICBzbmlwcGV0QnVpbGRlcjogU3RlcERlZmluaXRpb25TbmlwcGV0QnVpbGRlclxuICBzdXBwb3J0Q29kZUxpYnJhcnk6IFN1cHBvcnRDb2RlTGlicmFyeVxuICBwcmludEF0dGFjaG1lbnRzPzogYm9vbGVhblxufVxuXG5leHBvcnQgZnVuY3Rpb24gZm9ybWF0VGVzdENhc2VBdHRlbXB0KHtcbiAgY29sb3JGbnMsXG4gIHNuaXBwZXRCdWlsZGVyLFxuICBzdXBwb3J0Q29kZUxpYnJhcnksXG4gIHRlc3RDYXNlQXR0ZW1wdCxcbiAgcHJpbnRBdHRhY2htZW50cyxcbn06IElGb3JtYXRUZXN0Q2FzZUF0dGVtcHRSZXF1ZXN0KTogc3RyaW5nIHtcbiAgY29uc3QgcGFyc2VkID0gcGFyc2VUZXN0Q2FzZUF0dGVtcHQoe1xuICAgIHNuaXBwZXRCdWlsZGVyLFxuICAgIHRlc3RDYXNlQXR0ZW1wdCxcbiAgICBzdXBwb3J0Q29kZUxpYnJhcnksXG4gIH0pXG4gIGxldCB0ZXh0ID0gYFNjZW5hcmlvOiAke3BhcnNlZC50ZXN0Q2FzZS5uYW1lfWBcbiAgdGV4dCArPSBnZXRBdHRlbXB0VGV4dChwYXJzZWQudGVzdENhc2UuYXR0ZW1wdCwgdGVzdENhc2VBdHRlbXB0LndpbGxCZVJldHJpZWQpXG4gIHRleHQgKz0gYCAjICR7Y29sb3JGbnMubG9jYXRpb24oZm9ybWF0TG9jYXRpb24ocGFyc2VkLnRlc3RDYXNlLnNvdXJjZUxvY2F0aW9uKSl9XFxuYFxuICBwYXJzZWQudGVzdFN0ZXBzLmZvckVhY2goKHRlc3RTdGVwKSA9PiB7XG4gICAgdGV4dCArPSBmb3JtYXRTdGVwKHsgY29sb3JGbnMsIHRlc3RTdGVwLCBwcmludEF0dGFjaG1lbnRzIH0pXG4gIH0pXG4gIHJldHVybiBgJHt0ZXh0fVxcbmBcbn1cblxuZnVuY3Rpb24gZ2V0QXR0ZW1wdFRleHQoYXR0ZW1wdDogbnVtYmVyLCB3aWxsQmVSZXRyaWVkOiBib29sZWFuKTogc3RyaW5nIHtcbiAgaWYgKGF0dGVtcHQgPiAwIHx8IHdpbGxCZVJldHJpZWQpIHtcbiAgICBjb25zdCBudW1iZXJTdHIgPSAoYXR0ZW1wdCArIDEpLnRvU3RyaW5nKClcbiAgICBjb25zdCByZXRyaWVkU3RyID0gd2lsbEJlUmV0cmllZCA/ICcsIHJldHJpZWQnIDogJydcbiAgICByZXR1cm4gYCAoYXR0ZW1wdCAke251bWJlclN0cn0ke3JldHJpZWRTdHJ9KWBcbiAgfVxuICByZXR1cm4gJydcbn1cbiJdfQ==
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jYXNlX2F0dGVtcHRfZm9ybWF0dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Zvcm1hdHRlci9oZWxwZXJzL3Rlc3RfY2FzZV9hdHRlbXB0X2Zvcm1hdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQXlGQSxzREFtQkM7QUE1R0QsaURBQXlEO0FBQ3pELHNEQUE2QjtBQUM3QixrRUFBd0M7QUFFeEMsdURBQW1FO0FBSW5FLHlEQUFtRDtBQUNuRCx1RUFBOEQ7QUFDOUQseUVBQXVGO0FBRXZGLE1BQU0sVUFBVSxHQUFzQyxJQUFJLEdBQUcsQ0FBQztJQUM1RCxDQUFDLCtCQUFvQixDQUFDLFNBQVMsRUFBRSxpQkFBTyxDQUFDLEtBQUssQ0FBQztJQUMvQyxDQUFDLCtCQUFvQixDQUFDLE1BQU0sRUFBRSxpQkFBTyxDQUFDLEtBQUssQ0FBQztJQUM1QyxDQUFDLCtCQUFvQixDQUFDLE1BQU0sRUFBRSxpQkFBTyxDQUFDLElBQUksQ0FBQztJQUMzQyxDQUFDLCtCQUFvQixDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUM7SUFDbkMsQ0FBQywrQkFBb0IsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDO0lBQ25DLENBQUMsK0JBQW9CLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQztDQUN0QyxDQUFDLENBQUE7QUFFRixTQUFTLGNBQWMsQ0FBQyxRQUF5QjtJQUMvQyxRQUFRLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDL0IsS0FBSywrQkFBb0IsQ0FBQyxTQUFTLENBQUM7UUFDcEMsS0FBSywrQkFBb0IsQ0FBQyxNQUFNO1lBQzlCLE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUE7UUFDaEMsS0FBSywrQkFBb0IsQ0FBQyxTQUFTO1lBQ2pDLE9BQU8sR0FDTCxrREFBa0QsR0FBRyxNQUN2RCxHQUFHLElBQUEsdUJBQVksRUFBQyxRQUFRLENBQUMsT0FBTyxFQUFFLENB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TUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUM5QyxJQUFJLElBQUksY0FBYyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLGVBQWUsQ0FBQyxhQUFhLENBQUMsQ0FBQTtJQUM5RSxJQUFJLElBQUksTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUEsaUNBQWMsRUFBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLElBQUksQ0FBQTtJQUNuRixNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1FBQ3BDLElBQUksSUFBSSxVQUFVLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQTtJQUM5RCxDQUFDLENBQUMsQ0FBQTtJQUNGLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQTtBQUNwQixDQUFDO0FBRUQsU0FBUyxjQUFjLENBQUMsT0FBZSxFQUFFLGFBQXNCO0lBQzdELElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBQztRQUNqQyxNQUFNLFNBQVMsR0FBRyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtRQUMxQyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO1FBQ25ELE9BQU8sYUFBYSxTQUFTLEdBQUcsVUFBVSxHQUFHLENBQUE7SUFDL0MsQ0FBQztJQUNELE9BQU8sRUFBRSxDQUFBO0FBQ1gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRlc3RTdGVwUmVzdWx0U3RhdHVzIH0gZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IGZpZ3VyZXMgZnJvbSAnZmlndXJlcydcbmltcG9ydCBpbmRlbnRTdHJpbmcgZnJvbSAnaW5kZW50LXN0cmluZydcbmltcG9ydCB0eXBlIHsgU3VwcG9ydENvZGVMaWJyYXJ5IH0gZnJvbSAnLi4vLi4vc3VwcG9ydF9jb2RlX2xpYnJhcnlfYnVpbGRlci90eXBlcydcbmltcG9ydCB7IGRvZXNIYXZlVmFsdWUsIHZhbHVlT3JEZWZhdWx0IH0gZnJvbSAnLi4vLi4vdmFsdWVfY2hlY2tlcidcbmltcG9ydCB0eXBlIHsgSUNvbG9yRm5zIH0gZnJvbSAnLi4vZ2V0X2NvbG9yX2ZucydcbmltcG9ydCB0eXBlIFN0ZXBEZWZpbml0aW9uU25pcHBldEJ1aWxkZXIgZnJvbSAnLi4vc3RlcF9kZWZpbml0aW9uX3NuaXBwZXRfYnVpbGRlcidcbmltcG9ydCB0eXBlIHsgSVRlc3RDYXNlQXR0ZW1wdCB9IGZyb20gJy4vZXZlbnRfZGF0YV9jb2xsZWN0b3InXG5pbXBvcnQgeyBmb3JtYXRMb2NhdGlvbiB9IGZyb20gJy4vbG9jYXRpb25faGVscGVycydcbmltcG9ydCB7IGZvcm1hdFN0ZXBBcmd1bWVudCB9IGZyb20gJy4vc3RlcF9hcmd1bWVudF9mb3JtYXR0ZXInXG5pbXBvcnQgeyB0eXBlIElQYXJzZWRUZXN0U3RlcCwgcGFyc2VUZXN0Q2FzZUF0dGVtcHQgfSBmcm9tICcuL3Rlc3RfY2FzZV9hdHRlbXB0X3BhcnNlcidcblxuY29uc3QgQ0hBUkFDVEVSUzogTWFwPFRlc3RTdGVwUmVzdWx0U3RhdHVzLCBzdHJpbmc+ID0gbmV3IE1hcChbXG4gIFtUZXN0U3RlcFJlc3VsdFN0YXR1cy5BTUJJR1VPVVMsIGZpZ3VyZXMuY3Jvc3NdLFxuICBbVGVzdFN0ZXBSZXN1bHRTdGF0dXMuRkFJTEVELCBmaWd1cmVzLmNyb3NzXSxcbiAgW1Rlc3RTdGVwUmVzdWx0U3RhdHVzLlBBU1NFRCwgZmlndXJlcy50aWNrXSxcbiAgW1Rlc3RTdGVwUmVzdWx0U3RhdHVzLlBFTkRJTkcsICc/J10sXG4gIFtUZXN0U3RlcFJlc3VsdFN0YXR1cy5TS0lQUEVELCAnLSddLFxuICBbVGVzdFN0ZXBSZXN1bHRTdGF0dXMuVU5ERUZJTkVELCAnPyddLFxuXSlcblxuZnVuY3Rpb24gZ2V0U3RlcE1lc3NhZ2UodGVzdFN0ZXA6IElQYXJzZWRUZXN0U3RlcCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gIHN3aXRjaCAodGVzdFN0ZXAucmVzdWx0LnN0YXR1cykge1xuICAgIGNhc2UgVGVzdFN0ZXBSZXN1bHRTdGF0dXMuQU1CSUdVT1VTOlxuICAgIGNhc2UgVGVzdFN0ZXBSZXN1bHRTdGF0dXMuRkFJTEVEOlxuICAgICAgcmV0dXJuIHRlc3RTdGVwLnJlc3VsdC5tZXNzYWdlXG4gICAgY2FzZSBUZXN0U3RlcFJlc3VsdFN0YXR1cy5VTkRFRklORUQ6XG4gICAgICByZXR1cm4gYCR7XG4gICAgICAgICdVbmRlZmluZWQuIEltcGxlbWVudCB3aXRoIHRoZSBmb2xsb3dpbmcgc25pcHBldDonICsgJ1xcblxcbidcbiAgICAgIH0ke2luZGVudFN0cmluZyh0ZXN0U3RlcC5zbmlwcGV0LCAyKX1cXG5gXG4gICAgY2FzZSBUZXN0U3RlcFJlc3VsdFN0YXR1cy5QRU5ESU5HOlxuICAgICAgcmV0dXJuICdQZW5kaW5nJ1xuICB9XG4gIHJldHVybiAnJ1xufVxuXG5pbnRlcmZhY2UgSUZvcm1hdFN0ZXBSZXF1ZXN0IHtcbiAgY29sb3JGbnM6IElDb2xvckZuc1xuICB0ZXN0U3RlcDogSVBhcnNlZFRlc3RTdGVwXG4gIHByaW50QXR0YWNobWVudHM/OiBib29sZWFuXG59XG5cbmZ1bmN0aW9uIGZvcm1hdFN0ZXAoeyBjb2xvckZucywgdGVzdFN0ZXAsIHByaW50QXR0YWNobWVudHMgfTogSUZvcm1hdFN0ZXBSZXF1ZXN0KTogc3RyaW5nIHtcbiAgY29uc3Qge1xuICAgIG5hbWUsXG4gICAgcmVzdWx0OiB7IHN0YXR1cyB9LFxuICAgIGFjdGlvbkxvY2F0aW9uLFxuICAgIGF0dGFjaG1lbnRzLFxuICB9ID0gdGVzdFN0ZXBcbiAgY29uc3QgY29sb3JGbiA9IGNvbG9yRm5zLmZvclN0YXR1cyhzdGF0dXMpXG4gIGNvbnN0IGlkZW50aWZpZXIgPSB0ZXN0U3RlcC5rZXl3b3JkICsgdmFsdWVPckRlZmF1bHQodGVzdFN0ZXAudGV4dCwgJycpXG4gIGxldCB0ZXh0ID0gY29sb3JGbihgJHtDSEFSQUNURVJTLmdldChzdGF0dXMpfSAke2lkZW50aWZpZXJ9YClcbiAgaWYgKGRvZXNIYXZlVmFsdWUobmFtZSkpIHtcbiAgICB0ZXh0ICs9IGNvbG9yRm4oYCAoJHtuYW1lfSlgKVxuICB9XG4gIGlmIChkb2VzSGF2ZVZhbHVlKGFjdGlvbkxvY2F0aW9uKSkge1xuICAgIHRleHQgKz0gYCAjICR7Y29sb3JGbnMubG9jYXRpb24oZm9ybWF0TG9jYXRpb24oYWN0aW9uTG9jYXRpb24pKX1gXG4gIH1cbiAgdGV4dCArPSAnXFxuJ1xuICBpZiAoZG9lc0hhdmVWYWx1ZSh0ZXN0U3RlcC5hcmd1bWVudCkpIHtcbiAgICBjb25zdCBhcmd1bWVudHNUZXh0ID0gZm9ybWF0U3RlcEFyZ3VtZW50KHRlc3RTdGVwLmFyZ3VtZW50KVxuICAgIHRleHQgKz0gaW5kZW50U3RyaW5nKGAke2NvbG9yRm4oYXJndW1lbnRzVGV4dCl9XFxuYCwgNClcbiAgfVxuICBpZiAodmFsdWVPckRlZmF1bHQocHJpbnRBdHRhY2htZW50cywgdHJ1ZSkpIHtcbiAgICBhdHRhY2htZW50cy5mb3JFYWNoKCh7IGJvZHksIG1lZGlhVHlwZSwgZmlsZU5hbWUgfSkgPT4ge1xuICAgICAgbGV0IG1lc3NhZ2UgPSAnJ1xuICAgICAgaWYgKG1lZGlhVHlwZSA9PT0gJ3RleHQvcGxhaW4nKSB7XG4gICAgICAgIG1lc3NhZ2UgPSBgOiAke2JvZHl9YFxuICAgICAgfSBlbHNlIGlmIChmaWxlTmFtZSkge1xuICAgICAgICBtZXNzYWdlID0gYDogJHtmaWxlTmFtZX1gXG4gICAgICB9XG4gICAgICB0ZXh0ICs9IGluZGVudFN0cmluZyhgQXR0YWNobWVudCAoJHttZWRpYVR5cGV9KSR7bWVzc2FnZX1cXG5gLCA0KVxuICAgIH0pXG4gIH1cbiAgY29uc3QgbWVzc2FnZSA9IGdldFN0ZXBNZXNzYWdlKHRlc3RTdGVwKVxuICBpZiAobWVzc2FnZSkge1xuICAgIHRleHQgKz0gYCR7aW5kZW50U3RyaW5nKGNvbG9yRm4obWVzc2FnZSksIDQpfVxcbmBcbiAgfVxuICByZXR1cm4gdGV4dFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGb3JtYXRUZXN0Q2FzZUF0dGVtcHRSZXF1ZXN0IHtcbiAgY29sb3JGbnM6IElDb2xvckZuc1xuICB0ZXN0Q2FzZUF0dGVtcHQ6IElUZXN0Q2FzZUF0dGVtcHRcbiAgc25pcHBldEJ1aWxkZXI6IFN0ZXBEZWZpbml0aW9uU25pcHBldEJ1aWxkZXJcbiAgc3VwcG9ydENvZGVMaWJyYXJ5OiBTdXBwb3J0Q29kZUxpYnJhcnlcbiAgcHJpbnRBdHRhY2htZW50cz86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdFRlc3RDYXNlQXR0ZW1wdCh7XG4gIGNvbG9yRm5zLFxuICBzbmlwcGV0QnVpbGRlcixcbiAgc3VwcG9ydENvZGVMaWJyYXJ5LFxuICB0ZXN0Q2FzZUF0dGVtcHQsXG4gIHByaW50QXR0YWNobWVudHMsXG59OiBJRm9ybWF0VGVzdENhc2VBdHRlbXB0UmVxdWVzdCk6IHN0cmluZyB7XG4gIGNvbnN0IHBhcnNlZCA9IHBhcnNlVGVzdENhc2VBdHRlbXB0KHtcbiAgICBzbmlwcGV0QnVpbGRlcixcbiAgICB0ZXN0Q2FzZUF0dGVtcHQsXG4gICAgc3VwcG9ydENvZGVMaWJyYXJ5LFxuICB9KVxuICBsZXQgdGV4dCA9IGBTY2VuYXJpbzogJHtwYXJzZWQudGVzdENhc2UubmFtZX1gXG4gIHRleHQgKz0gZ2V0QXR0ZW1wdFRleHQocGFyc2VkLnRlc3RDYXNlLmF0dGVtcHQsIHRlc3RDYXNlQXR0ZW1wdC53aWxsQmVSZXRyaWVkKVxuICB0ZXh0ICs9IGAgIyAke2NvbG9yRm5zLmxvY2F0aW9uKGZvcm1hdExvY2F0aW9uKHBhcnNlZC50ZXN0Q2FzZS5zb3VyY2VMb2NhdGlvbikpfVxcbmBcbiAgcGFyc2VkLnRlc3RTdGVwcy5mb3JFYWNoKCh0ZXN0U3RlcCkgPT4ge1xuICAgIHRleHQgKz0gZm9ybWF0U3RlcCh7IGNvbG9yRm5zLCB0ZXN0U3RlcCwgcHJpbnRBdHRhY2htZW50cyB9KVxuICB9KVxuICByZXR1cm4gYCR7dGV4dH1cXG5gXG59XG5cbmZ1bmN0aW9uIGdldEF0dGVtcHRUZXh0KGF0dGVtcHQ6IG51bWJlciwgd2lsbEJlUmV0cmllZDogYm9vbGVhbik6IHN0cmluZyB7XG4gIGlmIChhdHRlbXB0ID4gMCB8fCB3aWxsQmVSZXRyaWVkKSB7XG4gICAgY29uc3QgbnVtYmVyU3RyID0gKGF0dGVtcHQgKyAxKS50b1N0cmluZygpXG4gICAgY29uc3QgcmV0cmllZFN0ciA9IHdpbGxCZVJldHJpZWQgPyAnLCByZXRyaWVkJyA6ICcnXG4gICAgcmV0dXJuIGAgKGF0dGVtcHQgJHtudW1iZXJTdHJ9JHtyZXRyaWVkU3RyfSlgXG4gIH1cbiAgcmV0dXJuICcnXG59XG4iXX0=
@@ -1,15 +1,15 @@
1
- import * as messages from '@cucumber/messages';
1
+ import { type Attachment, type PickleStepArgument, type TestStepResult } from '@cucumber/messages';
2
2
  import type { SupportCodeLibrary } from '../../support_code_library_builder/types';
3
3
  import type { ILineAndUri } from '../../types';
4
4
  import type StepDefinitionSnippetBuilder from '../step_definition_snippet_builder';
5
5
  import type { ITestCaseAttempt } from './event_data_collector';
6
6
  export interface IParsedTestStep {
7
7
  actionLocation?: ILineAndUri;
8
- argument?: messages.PickleStepArgument;
9
- attachments: messages.Attachment[];
8
+ argument?: PickleStepArgument;
9
+ attachments: Attachment[];
10
10
  keyword: string;
11
11
  name?: string;
12
- result: messages.TestStepResult;
12
+ result: TestStepResult;
13
13
  snippet?: string;
14
14
  sourceLocation?: ILineAndUri;
15
15
  text?: string;
@@ -18,7 +18,7 @@ export interface IParsedTestCase {
18
18
  attempt: number;
19
19
  name: string;
20
20
  sourceLocation?: ILineAndUri;
21
- worstTestStepResult: messages.TestStepResult;
21
+ worstTestStepResult: TestStepResult;
22
22
  }
23
23
  export interface IParsedTestCaseAttempt {
24
24
  testCase: IParsedTestCase;
@@ -1,40 +1,6 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
2
  Object.defineProperty(exports, "__esModule", { value: true });
36
3
  exports.parseTestCaseAttempt = parseTestCaseAttempt;
37
- const messages = __importStar(require("@cucumber/messages"));
38
4
  const messages_1 = require("@cucumber/messages");
39
5
  const value_checker_1 = require("../../value_checker");
40
6
  const gherkin_document_parser_1 = require("./gherkin_document_parser");
@@ -77,7 +43,7 @@ function parseStep({ isBeforeHook, gherkinStepMap, keyword, keywordType, pickleS
77
43
  out.argument = pickleStep.argument;
78
44
  }
79
45
  }
80
- if (testStepResult.status === messages.TestStepResultStatus.UNDEFINED) {
46
+ if (testStepResult.status === messages_1.TestStepResultStatus.UNDEFINED) {
81
47
  out.snippet = snippetBuilder.build({ keywordType, pickleStep });
82
48
  }
83
49
  return out;
@@ -103,7 +69,13 @@ function parseTestCaseAttempt({ testCaseAttempt, snippetBuilder, supportCodeLibr
103
69
  let isBeforeHook = true;
104
70
  let previousKeywordType = keyword_type_1.KeywordType.Precondition;
105
71
  testCase.testSteps.forEach((testStep) => {
106
- const testStepResult = testCaseAttempt.stepResults[testStep.id] || new messages_1.TestStepResult();
72
+ const testStepResult = testCaseAttempt.stepResults[testStep.id] || {
73
+ duration: {
74
+ seconds: 0,
75
+ nanos: 0,
76
+ },
77
+ status: messages_1.TestStepResultStatus.UNKNOWN,
78
+ };
107
79
  isBeforeHook = isBeforeHook && (0, value_checker_1.doesHaveValue)(testStep.hookId);
108
80
  let keyword, keywordType, pickleStep;
109
81
  if ((0, value_checker_1.doesHaveValue)(testStep.pickleStepId)) {
@@ -136,4 +108,4 @@ function parseTestCaseAttempt({ testCaseAttempt, snippetBuilder, supportCodeLibr
136
108
  testSteps: parsedTestSteps,
137
109
  };
138
110
  }
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jYXNlX2F0dGVtcHRfcGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Zvcm1hdHRlci9oZWxwZXJzL3Rlc3RfY2FzZV9hdHRlbXB0X3BhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXNIQSxvREEwREM7QUFoTEQsNkRBQThDO0FBQzlDLGlEQUFtRDtBQUluRCx1REFBbUU7QUFHbkUsdUVBQTRGO0FBQzVGLGlEQUFnRTtBQUNoRSxtREFBa0U7QUF3Q2xFLFNBQVMsU0FBUyxDQUFDLEVBQ2pCLFlBQVksRUFDWixjQUFjLEVBQ2QsT0FBTyxFQUNQLFdBQVcsRUFDWCxVQUFVLEVBQ1YsU0FBUyxFQUNULGNBQWMsRUFDZCxrQkFBa0IsRUFDbEIsUUFBUSxFQUNSLGNBQWMsRUFDZCxtQkFBbUIsR0FDRDtJQUNsQixNQUFNLEdBQUcsR0FBb0I7UUFDM0IsV0FBVyxFQUFFLG1CQUFtQjtRQUNoQyxPQUFPLEVBQUUsSUFBQSw2QkFBYSxFQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsT0FBTztRQUMzRixNQUFNLEVBQUUsY0FBYztLQUN2QixDQUFBO0lBQ0QsSUFBSSxJQUFBLDZCQUFhLEVBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsSUFBSSxjQUFzQyxDQUFBO1FBQzFDLElBQUksWUFBWSxFQUFFLENBQUM7WUFDakIsY0FBYyxHQUFHLGtCQUFrQixDQUFDLDZCQUE2QixDQUFDLElBQUksQ0FDcEUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssUUFBUSxDQUFDLE1BQU0sQ0FDaEMsQ0FBQTtRQUNILENBQUM7YUFBTSxDQUFDO1lBQ04sY0FBYyxHQUFH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LENBQUMsQ0FBQTtRQUNGLGVBQWUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDaEMsbUJBQW1CLEdBQUcsV0FBVyxDQUFBO0lBQ25DLENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTztRQUNMLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLFNBQVMsRUFBRSxlQUFlO0tBQzNCLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbWVzc2FnZXMgZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgVGVzdFN0ZXBSZXN1bHQgfSBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgdHlwZSBUZXN0Q2FzZUhvb2tEZWZpbml0aW9uIGZyb20gJy4uLy4uL21vZGVscy90ZXN0X2Nhc2VfaG9va19kZWZpbml0aW9uJ1xuaW1wb3J0IHR5cGUgeyBTdXBwb3J0Q29kZUxpYnJhcnkgfSBmcm9tICcuLi8uLi9zdXBwb3J0X2NvZGVfbGlicmFyeV9idWlsZGVyL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBJTGluZUFuZFVyaSB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuaW1wb3J0IHsgZG9lc0hhdmVWYWx1ZSwgdmFsdWVPckRlZmF1bHQgfSBmcm9tICcuLi8uLi92YWx1ZV9jaGVja2VyJ1xuaW1wb3J0IHR5cGUgU3RlcERlZmluaXRpb25TbmlwcGV0QnVpbGRlciBmcm9tICcuLi9zdGVwX2RlZmluaXRpb25fc25pcHBldF9idWlsZGVyJ1xuaW1wb3J0IHR5cGUgeyBJVGVzdENhc2VBdHRlbXB0IH0gZnJvbSAnLi9ldmVudF9kYXRhX2NvbGxlY3RvcidcbmltcG9ydCB7IGdldEdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwLCBnZXRHaGVya2luU3RlcE1hcCB9IGZyb20gJy4vZ2hlcmtpbl9kb2N1bWVudF9wYXJzZXInXG5pbXBvcnQgeyBnZXRTdGVwS2V5d29yZFR5cGUsIEtleXdvcmRUeXBlIH0gZnJvbSAnLi9rZXl3b3JkX3R5cGUnXG5pbXBvcnQgeyBnZXRQaWNrbGVTdGVwTWFwLCBnZXRTdGVwS2V5d29yZCB9IGZyb20gJy4vcGlja2xlX3BhcnNlcidcblxuZXhwb3J0IGludGVyZmFjZSBJUGFyc2VkVGVzdFN0ZXAge1xuICBhY3Rpb25Mb2NhdGlvbj86IElMaW5lQW5kVXJpXG4gIGFyZ3VtZW50PzogbWVzc2FnZXMuUGlja2xlU3RlcEFyZ3VtZW50XG4gIGF0dGFjaG1lbnRzOiBtZXNzYWdlcy5BdHRhY2htZW50W11cbiAga2V5d29yZDogc3RyaW5nXG4gIG5hbWU/OiBzdHJpbmdcbiAgcmVzdWx0OiBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFxuICBzbmlwcGV0Pzogc3RyaW5nXG4gIHNvdXJjZUxvY2F0aW9uPzogSUxpbmVBbmRVcmlcbiAgdGV4dD86IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQYXJzZWRUZXN0Q2FzZSB7XG4gIGF0dGVtcHQ6IG51bWJlclxuICBuYW1lOiBzdHJpbmdcbiAgc291cmNlTG9jYXRpb24/OiBJTGluZUFuZFVyaVxuICB3b3JzdFRlc3RTdGVwUmVzdWx0OiBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQYXJzZWRUZXN0Q2FzZUF0dGVtcHQge1xuICB0ZXN0Q2FzZTogSVBhcnNlZFRlc3RDYXNlXG4gIHRlc3RTdGVwczogSVBhcnNlZFRlc3RTdGVwW11cbn1cblxuaW50ZXJmYWNlIElQYXJzZVN0ZXBSZXF1ZXN0IHtcbiAgaXNCZWZvcmVIb29rOiBib29sZWFuXG4gIGdoZXJraW5TdGVwTWFwOiBSZWNvcmQ8c3RyaW5nLCBtZXNzYWdlcy5TdGVwPlxuICBrZXl3b3JkOiBzdHJpbmdcbiAga2V5d29yZFR5cGU6IEtleXdvcmRUeXBlXG4gIHBpY2tsZVN0ZXA6IG1lc3NhZ2VzLlBpY2tsZVN0ZXBcbiAgcGlja2xlVXJpOiBzdHJpbmdcbiAgc25pcHBldEJ1aWxkZXI6IFN0ZXBEZWZpbml0aW9uU25pcHBldEJ1aWxkZXJcbiAgc3VwcG9ydENvZGVMaWJyYXJ5OiBTdXBwb3J0Q29kZUxpYnJhcnlcbiAgdGVzdFN0ZXA6IG1lc3NhZ2VzLlRlc3RTdGVwXG4gIHRlc3RTdGVwUmVzdWx0OiBtZXNzYWdlcy5UZXN0U3RlcFJlc3VsdFxuICB0ZXN0U3RlcEF0dGFjaG1lbnRzOiBtZXNzYWdlcy5BdHRhY2htZW50W11cbn1cblxuZnVuY3Rpb24gcGFyc2VTdGVwKHtcbiAgaXNCZWZvcmVIb29rLFxuICBnaGVya2luU3RlcE1hcCxcbiAga2V5d29yZCxcbiAga2V5d29yZFR5cGUsXG4gIHBpY2tsZVN0ZXAsXG4gIHBpY2tsZVVyaSxcbiAgc25pcHBldEJ1aWxkZXIsXG4gIHN1cHBvcnRDb2RlTGlicmFyeSxcbiAgdGVzdFN0ZXAsXG4gIHRlc3RTdGVwUmVzdWx0LFxuICB0ZXN0U3RlcEF0dGFjaG1lbnRzLFxufTogSVBhcnNlU3RlcFJlcXVlc3QpOiBJUGFyc2VkVGVzdFN0ZXAge1xuICBjb25zdCBvdXQ6IElQYXJzZWRUZXN0U3RlcCA9IHtcbiAgICBhdHRhY2htZW50czogdGVzdFN0ZXBBdHRhY2htZW50cyxcbiAgICBrZXl3b3JkOiBkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLnBpY2tsZVN0ZXBJZCkgPyBrZXl3b3JkIDogaXNCZWZvcmVIb29rID8gJ0JlZm9yZScgOiAnQWZ0ZXInLFxuICAgIHJlc3VsdDogdGVzdFN0ZXBSZXN1bHQsXG4gIH1cbiAgaWYgKGRvZXNIYXZlVmFsdWUodGVzdFN0ZXAuaG9va0lkKSkge1xuICAgIGxldCBob29rRGVmaW5pdGlvbjogVGVzdENhc2VIb29rRGVmaW5pdGlvblxuICAgIGlmIChpc0JlZm9yZUhvb2spIHtcbiAgICAgIGhvb2tEZWZpbml0aW9uID0gc3VwcG9ydENvZGVMaWJyYXJ5LmJlZm9yZVRlc3RDYXNlSG9va0RlZmluaXRpb25zLmZpbmQoXG4gICAgICAgICh4KSA9PiB4LmlkID09PSB0ZXN0U3RlcC5ob29rSWRcbiAgICAgIClcbiAgICB9IGVsc2Uge1xuICAgICAgaG9va0RlZmluaXRpb24gPSBzdXBwb3J0Q29kZUxpYnJhcnkuYWZ0ZXJUZXN0Q2FzZUhvb2tEZWZpbml0aW9ucy5maW5kKFxuICAgICAgICAoeCkgPT4geC5pZCA9PT0gdGVzdFN0ZXAuaG9va0lkXG4gICAgICApXG4gICAgfVxuICAgIG91dC5hY3Rpb25Mb2NhdGlvbiA9IHtcbiAgICAgIHVyaTogaG9va0RlZmluaXRpb24udXJpLFxuICAgICAgbGluZTogaG9va0RlZmluaXRpb24ubGluZSxcbiAgICB9XG4gICAgb3V0Lm5hbWUgPSBob29rRGVmaW5pdGlvbi5uYW1lXG4gIH1cbiAgaWYgKGRvZXNIYXZlVmFsdWUodGVzdFN0ZXAuc3RlcERlZmluaXRpb25JZHMpICYmIHRlc3RTdGVwLnN0ZXBEZWZpbml0aW9uSWRzLmxlbmd0aCA9PT0gMSkge1xuICAgIGNvbnN0IHN0ZXBEZWZpbml0aW9uID0gc3VwcG9ydENvZGVMaWJyYXJ5LnN0ZXBEZWZpbml0aW9ucy5maW5kKFxuICAgICAgKHgpID0+IHguaWQgPT09IHRlc3RTdGVwLnN0ZXBEZWZpbml0aW9uSWRzWzBdXG4gICAgKVxuICAgIG91dC5hY3Rpb25Mb2NhdGlvbiA9IHtcbiAgICAgIHVyaTogc3RlcERlZmluaXRpb24udXJpLFxuICAgICAgbGluZTogc3RlcERlZmluaXRpb24ubGluZSxcbiAgICB9XG4gIH1cbiAgaWYgKGRvZXNIYXZlVmFsdWUodGVzdFN0ZXAucGlja2xlU3RlcElkKSkge1xuICAgIG91dC5zb3VyY2VMb2NhdGlvbiA9IHtcbiAgICAgIHVyaTogcGlja2xlVXJpLFxuICAgICAgbGluZTogZ2hlcmtpblN0ZXBNYXBbcGlja2xlU3RlcC5hc3ROb2RlSWRzWzBdXS5sb2NhdGlvbi5saW5lLFxuICAgIH1cbiAgICBvdXQudGV4dCA9IHBpY2tsZVN0ZXAudGV4dFxuICAgIGlmIChkb2VzSGF2ZVZhbHVlKHBpY2tsZVN0ZXAuYXJndW1lbnQpKSB7XG4gICAgICBvdXQuYXJndW1lbnQgPSBwaWNrbGVTdGVwLmFyZ3VtZW50XG4gICAgfVxuICB9XG4gIGlmICh0ZXN0U3RlcFJlc3VsdC5zdGF0dXMgPT09IG1lc3NhZ2VzLlRlc3RTdGVwUmVzdWx0U3RhdHVzLlVOREVGSU5FRCkge1xuICAgIG91dC5zbmlwcGV0ID0gc25pcHBldEJ1aWxkZXIuYnVpbGQoeyBrZXl3b3JkVHlwZSwgcGlja2xlU3RlcCB9KVxuICB9XG4gIHJldHVybiBvdXRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUGFyc2VUZXN0Q2FzZUF0dGVtcHRSZXF1ZXN0IHtcbiAgdGVzdENhc2VBdHRlbXB0OiBJVGVzdENhc2VBdHRlbXB0XG4gIHNuaXBwZXRCdWlsZGVyOiBTdGVwRGVmaW5pdGlvblNuaXBwZXRCdWlsZGVyXG4gIHN1cHBvcnRDb2RlTGlicmFyeTogU3VwcG9ydENvZGVMaWJyYXJ5XG59XG5cbi8vIENvbnZlcnRzIGEgdGVzdENhc2VBdHRlbXB0IGludG8gYSBqc29uIG9iamVjdCB3aXRoIGFsbCBkYXRhIG5lZWRlZCBmb3Jcbi8vIGRpc3BsYXlpbmcgaXQgaW4gYSBwcmV0dHkgZm9ybWF0XG5leHBvcnQgZnVuY3Rpb24gcGFyc2VUZXN0Q2FzZUF0dGVtcHQoe1xuICB0ZXN0Q2FzZUF0dGVtcHQsXG4gIHNuaXBwZXRCdWlsZGVyLFxuICBzdXBwb3J0Q29kZUxpYnJhcnksXG59OiBJUGFyc2VUZXN0Q2FzZUF0dGVtcHRSZXF1ZXN0KTogSVBhcnNlZFRlc3RDYXNlQXR0ZW1wdCB7XG4gIGNvbnN0IHsgdGVzdENhc2UsIHBpY2tsZSwgZ2hlcmtpbkRvY3VtZW50IH0gPSB0ZXN0Q2FzZUF0dGVtcHRcbiAgY29uc3QgZ2hlcmtpblN0ZXBNYXAgPSBnZXRHaGVya2luU3RlcE1hcChnaGVya2luRG9jdW1lbnQpXG4gIGNvbnN0IGdoZXJraW5TY2VuYXJpb0xvY2F0aW9uTWFwID0gZ2V0R2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAoZ2hlcmtpbkRvY3VtZW50KVxuICBjb25zdCBwaWNrbGVTdGVwTWFwID0gZ2V0UGlja2xlU3RlcE1hcChwaWNrbGUpXG4gIGNvbnN0IHJlbGF0aXZlUGlja2xlVXJpID0gcGlja2xlLnVyaVxuICBjb25zdCBwYXJzZWRUZXN0Q2FzZTogSVBhcnNlZFRlc3RDYXNlID0ge1xuICAgIGF0dGVtcHQ6IHRlc3RDYXNlQXR0ZW1wdC5hdHRlbXB0LFxuICAgIG5hbWU6IHBpY2tsZS5uYW1lLFxuICAgIHNvdXJjZUxvY2F0aW9uOiB7XG4gICAgICB1cmk6IHJlbGF0aXZlUGlja2xlVXJpLFxuICAgICAgbGluZTogZ2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXBbcGlja2xlLmFzdE5vZGVJZHNbcGlja2xlLmFzdE5vZGVJZHMubGVuZ3RoIC0gMV1dLmxpbmUsXG4gICAgfSxcbiAgICB3b3JzdFRlc3RTdGVwUmVzdWx0OiB0ZXN0Q2FzZUF0dGVtcHQud29yc3RUZXN0U3RlcFJlc3VsdCxcbiAgfVxuICBjb25zdCBwYXJzZWRUZXN0U3RlcHM6IElQYXJzZWRUZXN0U3RlcFtdID0gW11cbiAgbGV0IGlzQmVmb3JlSG9vayA9IHRydWVcbiAgbGV0IHByZXZpb3VzS2V5d29yZFR5cGUgPSBLZXl3b3JkVHlwZS5QcmVjb25kaXRpb25cblxuICB0ZXN0Q2FzZS50ZXN0U3RlcHMuZm9yRWFjaCgodGVzdFN0ZXApID0+IHtcbiAgICBjb25zdCB0ZXN0U3RlcFJlc3VsdCA9IHRlc3RDYXNlQXR0ZW1wdC5zdGVwUmVzdWx0c1t0ZXN0U3RlcC5pZF0gfHwgbmV3IFRlc3RTdGVwUmVzdWx0KClcblxuICAgIGlzQmVmb3JlSG9vayA9IGlzQmVmb3JlSG9vayAmJiBkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLmhvb2tJZClcblxuICAgIGxldCBrZXl3b3JkOiBhbnksIGtleXdvcmRUeXBlOiBhbnksIHBpY2tsZVN0ZXA6IGFueVxuICAgIGlmIChkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLnBpY2tsZVN0ZXBJZCkpIHtcbiAgICAgIHBpY2tsZVN0ZXAgPSBwaWNrbGVTdGVwTWFwW3Rlc3RTdGVwLnBpY2tsZVN0ZXBJZF1cbiAgICAgIGtleXdvcmQgPSBnZXRTdGVwS2V5d29yZCh7IHBpY2tsZVN0ZXAsIGdoZXJraW5TdGVwTWFwIH0pXG4gICAgICBrZXl3b3JkVHlwZSA9IGdldFN0ZXBLZXl3b3JkVHlwZSh7XG4gICAgICAgIGtleXdvcmQsXG4gICAgICAgIGxhbmd1YWdlOiBnaGVya2luRG9jdW1lbnQuZmVhdHVyZS5sYW5ndWFnZSxcbiAgICAgICAgcHJldmlvdXNLZXl3b3JkVHlwZSxcbiAgICAgIH0pXG4gICAgfVxuICAgIGNvbnN0IHBhcnNlZFN0ZXAgPSBwYXJzZVN0ZXAoe1xuICAgICAgaXNCZWZvcmVIb29rLFxuICAgICAgZ2hlcmtpblN0ZXBNYXAsXG4gICAgICBrZXl3b3JkLFxuICAgICAga2V5d29yZFR5cGUsXG4gICAgICBwaWNrbGVTdGVwLFxuICAgICAgcGlja2xlVXJpOiByZWxhdGl2ZVBpY2tsZVVyaSxcbiAgICAgIHNuaXBwZXRCdWlsZGVyLFxuICAgICAgc3VwcG9ydENvZGVMaWJyYXJ5LFxuICAgICAgdGVzdFN0ZXAsXG4gICAgICB0ZXN0U3RlcFJlc3VsdCxcbiAgICAgIHRlc3RTdGVwQXR0YWNobWVudHM6IHZhbHVlT3JEZWZhdWx0KHRlc3RDYXNlQXR0ZW1wdC5zdGVwQXR0YWNobWVudHNbdGVzdFN0ZXAuaWRdLCBbXSksXG4gICAgfSlcbiAgICBwYXJzZWRUZXN0U3RlcHMucHVzaChwYXJzZWRTdGVwKVxuICAgIHByZXZpb3VzS2V5d29yZFR5cGUgPSBrZXl3b3JkVHlwZVxuICB9KVxuICByZXR1cm4ge1xuICAgIHRlc3RDYXNlOiBwYXJzZWRUZXN0Q2FzZSxcbiAgICB0ZXN0U3RlcHM6IHBhcnNlZFRlc3RTdGVwcyxcbiAgfVxufVxuIl19
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9jYXNlX2F0dGVtcHRfcGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Zvcm1hdHRlci9oZWxwZXJzL3Rlc3RfY2FzZV9hdHRlbXB0X3BhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQTZIQSxvREFnRUM7QUE3TEQsaURBUTJCO0FBSTNCLHVEQUFtRTtBQUduRSx1RUFBNEY7QUFDNUYsaURBQWdFO0FBQ2hFLG1EQUFrRTtBQXdDbEUsU0FBUyxTQUFTLENBQUMsRUFDakIsWUFBWSxFQUNaLGNBQWMsRUFDZCxPQUFPLEVBQ1AsV0FBVyxFQUNYLFVBQVUsRUFDVixTQUFTLEVBQ1QsY0FBYyxFQUNkLGtCQUFrQixFQUNsQixRQUFRLEVBQ1IsY0FBYyxFQUNkLG1CQUFtQixHQUNEO0lBQ2xCLE1BQU0sR0FBRyxHQUFvQjtRQUMzQixXQUFXLEVBQUUsbUJBQW1CO1FBQ2hDLE9BQU8sRUFBRSxJQUFBLDZCQUFhLEVBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxPQUFPO1FBQzNGLE1BQU0sRUFBRSxjQUFjO0tBQ3ZCLENBQUE7SUFDRCxJQUFJLElBQUEsNkJBQWEsRUFBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUNuQyxJQUFJLGNBQXNDLENBQUE7UUFDMUMsSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQixjQUFjLEdBQUcsa0JBQWtCLENBQUMsNkJBQTZCLENBQUMsSUFBSSxDQUNwRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxRQUFRLENBQUMsTUFBTSxDQUNoQyxDQUFBO1FBQ0gsQ0FBQzthQUFNLENBQUM7WUFDTixjQUFjLEdBQUcsa0JBQWtCLENBQUMsNEJBQTRCLENBQUMsSUFBSSxDQUNuRSxDQUFDLENBQUMs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QUFFLENBQUMsRUFBRSxFQUFFLENBQUM7U0FDdEYsQ0FBQyxDQUFBO1FBQ0YsZUFBZSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNoQyxtQkFBbUIsR0FBRyxXQUFXLENBQUE7SUFDbkMsQ0FBQyxDQUFDLENBQUE7SUFDRixPQUFPO1FBQ0wsUUFBUSxFQUFFLGNBQWM7UUFDeEIsU0FBUyxFQUFFLGVBQWU7S0FDM0IsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIEF0dGFjaG1lbnQsXG4gIHR5cGUgUGlja2xlU3RlcCxcbiAgdHlwZSBQaWNrbGVTdGVwQXJndW1lbnQsXG4gIHR5cGUgU3RlcCxcbiAgdHlwZSBUZXN0U3RlcCxcbiAgdHlwZSBUZXN0U3RlcFJlc3VsdCxcbiAgVGVzdFN0ZXBSZXN1bHRTdGF0dXMsXG59IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB0eXBlIFRlc3RDYXNlSG9va0RlZmluaXRpb24gZnJvbSAnLi4vLi4vbW9kZWxzL3Rlc3RfY2FzZV9ob29rX2RlZmluaXRpb24nXG5pbXBvcnQgdHlwZSB7IFN1cHBvcnRDb2RlTGlicmFyeSB9IGZyb20gJy4uLy4uL3N1cHBvcnRfY29kZV9saWJyYXJ5X2J1aWxkZXIvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IElMaW5lQW5kVXJpIH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5pbXBvcnQgeyBkb2VzSGF2ZVZhbHVlLCB2YWx1ZU9yRGVmYXVsdCB9IGZyb20gJy4uLy4uL3ZhbHVlX2NoZWNrZXInXG5pbXBvcnQgdHlwZSBTdGVwRGVmaW5pdGlvblNuaXBwZXRCdWlsZGVyIGZyb20gJy4uL3N0ZXBfZGVmaW5pdGlvbl9zbmlwcGV0X2J1aWxkZXInXG5pbXBvcnQgdHlwZSB7IElUZXN0Q2FzZUF0dGVtcHQgfSBmcm9tICcuL2V2ZW50X2RhdGFfY29sbGVjdG9yJ1xuaW1wb3J0IHsgZ2V0R2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAsIGdldEdoZXJraW5TdGVwTWFwIH0gZnJvbSAnLi9naGVya2luX2RvY3VtZW50X3BhcnNlcidcbmltcG9ydCB7IGdldFN0ZXBLZXl3b3JkVHlwZSwgS2V5d29yZFR5cGUgfSBmcm9tICcuL2tleXdvcmRfdHlwZSdcbmltcG9ydCB7IGdldFBpY2tsZVN0ZXBNYXAsIGdldFN0ZXBLZXl3b3JkIH0gZnJvbSAnLi9waWNrbGVfcGFyc2VyJ1xuXG5leHBvcnQgaW50ZXJmYWNlIElQYXJzZWRUZXN0U3RlcCB7XG4gIGFjdGlvbkxvY2F0aW9uPzogSUxpbmVBbmRVcmlcbiAgYXJndW1lbnQ/OiBQaWNrbGVTdGVwQXJndW1lbnRcbiAgYXR0YWNobWVudHM6IEF0dGFjaG1lbnRbXVxuICBrZXl3b3JkOiBzdHJpbmdcbiAgbmFtZT86IHN0cmluZ1xuICByZXN1bHQ6IFRlc3RTdGVwUmVzdWx0XG4gIHNuaXBwZXQ/OiBzdHJpbmdcbiAgc291cmNlTG9jYXRpb24/OiBJTGluZUFuZFVyaVxuICB0ZXh0Pzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBhcnNlZFRlc3RDYXNlIHtcbiAgYXR0ZW1wdDogbnVtYmVyXG4gIG5hbWU6IHN0cmluZ1xuICBzb3VyY2VMb2NhdGlvbj86IElMaW5lQW5kVXJpXG4gIHdvcnN0VGVzdFN0ZXBSZXN1bHQ6IFRlc3RTdGVwUmVzdWx0XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVBhcnNlZFRlc3RDYXNlQXR0ZW1wdCB7XG4gIHRlc3RDYXNlOiBJUGFyc2VkVGVzdENhc2VcbiAgdGVzdFN0ZXBzOiBJUGFyc2VkVGVzdFN0ZXBbXVxufVxuXG5pbnRlcmZhY2UgSVBhcnNlU3RlcFJlcXVlc3Qge1xuICBpc0JlZm9yZUhvb2s6IGJvb2xlYW5cbiAgZ2hlcmtpblN0ZXBNYXA6IFJlY29yZDxzdHJpbmcsIFN0ZXA+XG4gIGtleXdvcmQ6IHN0cmluZ1xuICBrZXl3b3JkVHlwZTogS2V5d29yZFR5cGVcbiAgcGlja2xlU3RlcDogUGlja2xlU3RlcFxuICBwaWNrbGVVcmk6IHN0cmluZ1xuICBzbmlwcGV0QnVpbGRlcjogU3RlcERlZmluaXRpb25TbmlwcGV0QnVpbGRlclxuICBzdXBwb3J0Q29kZUxpYnJhcnk6IFN1cHBvcnRDb2RlTGlicmFyeVxuICB0ZXN0U3RlcDogVGVzdFN0ZXBcbiAgdGVzdFN0ZXBSZXN1bHQ6IFRlc3RTdGVwUmVzdWx0XG4gIHRlc3RTdGVwQXR0YWNobWVudHM6IEF0dGFjaG1lbnRbXVxufVxuXG5mdW5jdGlvbiBwYXJzZVN0ZXAoe1xuICBpc0JlZm9yZUhvb2ssXG4gIGdoZXJraW5TdGVwTWFwLFxuICBrZXl3b3JkLFxuICBrZXl3b3JkVHlwZSxcbiAgcGlja2xlU3RlcCxcbiAgcGlja2xlVXJpLFxuICBzbmlwcGV0QnVpbGRlcixcbiAgc3VwcG9ydENvZGVMaWJyYXJ5LFxuICB0ZXN0U3RlcCxcbiAgdGVzdFN0ZXBSZXN1bHQsXG4gIHRlc3RTdGVwQXR0YWNobWVudHMsXG59OiBJUGFyc2VTdGVwUmVxdWVzdCk6IElQYXJzZWRUZXN0U3RlcCB7XG4gIGNvbnN0IG91dDogSVBhcnNlZFRlc3RTdGVwID0ge1xuICAgIGF0dGFjaG1lbnRzOiB0ZXN0U3RlcEF0dGFjaG1lbnRzLFxuICAgIGtleXdvcmQ6IGRvZXNIYXZlVmFsdWUodGVzdFN0ZXAucGlja2xlU3RlcElkKSA/IGtleXdvcmQgOiBpc0JlZm9yZUhvb2sgPyAnQmVmb3JlJyA6ICdBZnRlcicsXG4gICAgcmVzdWx0OiB0ZXN0U3RlcFJlc3VsdCxcbiAgfVxuICBpZiAoZG9lc0hhdmVWYWx1ZSh0ZXN0U3RlcC5ob29rSWQpKSB7XG4gICAgbGV0IGhvb2tEZWZpbml0aW9uOiBUZXN0Q2FzZUhvb2tEZWZpbml0aW9uXG4gICAgaWYgKGlzQmVmb3JlSG9vaykge1xuICAgICAgaG9va0RlZmluaXRpb24gPSBzdXBwb3J0Q29kZUxpYnJhcnkuYmVmb3JlVGVzdENhc2VIb29rRGVmaW5pdGlvbnMuZmluZChcbiAgICAgICAgKHgpID0+IHguaWQgPT09IHRlc3RTdGVwLmhvb2tJZFxuICAgICAgKVxuICAgIH0gZWxzZSB7XG4gICAgICBob29rRGVmaW5pdGlvbiA9IHN1cHBvcnRDb2RlTGlicmFyeS5hZnRlclRlc3RDYXNlSG9va0RlZmluaXRpb25zLmZpbmQoXG4gICAgICAgICh4KSA9PiB4LmlkID09PSB0ZXN0U3RlcC5ob29rSWRcbiAgICAgIClcbiAgICB9XG4gICAgb3V0LmFjdGlvbkxvY2F0aW9uID0ge1xuICAgICAgdXJpOiBob29rRGVmaW5pdGlvbi51cmksXG4gICAgICBsaW5lOiBob29rRGVmaW5pdGlvbi5saW5lLFxuICAgIH1cbiAgICBvdXQubmFtZSA9IGhvb2tEZWZpbml0aW9uLm5hbWVcbiAgfVxuICBpZiAoZG9lc0hhdmVWYWx1ZSh0ZXN0U3RlcC5zdGVwRGVmaW5pdGlvbklkcykgJiYgdGVzdFN0ZXAuc3RlcERlZmluaXRpb25JZHMubGVuZ3RoID09PSAxKSB7XG4gICAgY29uc3Qgc3RlcERlZmluaXRpb24gPSBzdXBwb3J0Q29kZUxpYnJhcnkuc3RlcERlZmluaXRpb25zLmZpbmQoXG4gICAgICAoeCkgPT4geC5pZCA9PT0gdGVzdFN0ZXAuc3RlcERlZmluaXRpb25JZHNbMF1cbiAgICApXG4gICAgb3V0LmFjdGlvbkxvY2F0aW9uID0ge1xuICAgICAgdXJpOiBzdGVwRGVmaW5pdGlvbi51cmksXG4gICAgICBsaW5lOiBzdGVwRGVmaW5pdGlvbi5saW5lLFxuICAgIH1cbiAgfVxuICBpZiAoZG9lc0hhdmVWYWx1ZSh0ZXN0U3RlcC5waWNrbGVTdGVwSWQpKSB7XG4gICAgb3V0LnNvdXJjZUxvY2F0aW9uID0ge1xuICAgICAgdXJpOiBwaWNrbGVVcmksXG4gICAgICBsaW5lOiBnaGVya2luU3RlcE1hcFtwaWNrbGVTdGVwLmFzdE5vZGVJZHNbMF1dLmxvY2F0aW9uLmxpbmUsXG4gICAgfVxuICAgIG91dC50ZXh0ID0gcGlja2xlU3RlcC50ZXh0XG4gICAgaWYgKGRvZXNIYXZlVmFsdWUocGlja2xlU3RlcC5hcmd1bWVudCkpIHtcbiAgICAgIG91dC5hcmd1bWVudCA9IHBpY2tsZVN0ZXAuYXJndW1lbnRcbiAgICB9XG4gIH1cbiAgaWYgKHRlc3RTdGVwUmVzdWx0LnN0YXR1cyA9PT0gVGVzdFN0ZXBSZXN1bHRTdGF0dXMuVU5ERUZJTkVEKSB7XG4gICAgb3V0LnNuaXBwZXQgPSBzbmlwcGV0QnVpbGRlci5idWlsZCh7IGtleXdvcmRUeXBlLCBwaWNrbGVTdGVwIH0pXG4gIH1cbiAgcmV0dXJuIG91dFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQYXJzZVRlc3RDYXNlQXR0ZW1wdFJlcXVlc3Qge1xuICB0ZXN0Q2FzZUF0dGVtcHQ6IElUZXN0Q2FzZUF0dGVtcHRcbiAgc25pcHBldEJ1aWxkZXI6IFN0ZXBEZWZpbml0aW9uU25pcHBldEJ1aWxkZXJcbiAgc3VwcG9ydENvZGVMaWJyYXJ5OiBTdXBwb3J0Q29kZUxpYnJhcnlcbn1cblxuLy8gQ29udmVydHMgYSB0ZXN0Q2FzZUF0dGVtcHQgaW50byBhIGpzb24gb2JqZWN0IHdpdGggYWxsIGRhdGEgbmVlZGVkIGZvclxuLy8gZGlzcGxheWluZyBpdCBpbiBhIHByZXR0eSBmb3JtYXRcbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVRlc3RDYXNlQXR0ZW1wdCh7XG4gIHRlc3RDYXNlQXR0ZW1wdCxcbiAgc25pcHBldEJ1aWxkZXIsXG4gIHN1cHBvcnRDb2RlTGlicmFyeSxcbn06IElQYXJzZVRlc3RDYXNlQXR0ZW1wdFJlcXVlc3QpOiBJUGFyc2VkVGVzdENhc2VBdHRlbXB0IHtcbiAgY29uc3QgeyB0ZXN0Q2FzZSwgcGlja2xlLCBnaGVya2luRG9jdW1lbnQgfSA9IHRlc3RDYXNlQXR0ZW1wdFxuICBjb25zdCBnaGVya2luU3RlcE1hcCA9IGdldEdoZXJraW5TdGVwTWFwKGdoZXJraW5Eb2N1bWVudClcbiAgY29uc3QgZ2hlcmtpblNjZW5hcmlvTG9jYXRpb25NYXAgPSBnZXRHaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcChnaGVya2luRG9jdW1lbnQpXG4gIGNvbnN0IHBpY2tsZVN0ZXBNYXAgPSBnZXRQaWNrbGVTdGVwTWFwKHBpY2tsZSlcbiAgY29uc3QgcmVsYXRpdmVQaWNrbGVVcmkgPSBwaWNrbGUudXJpXG4gIGNvbnN0IHBhcnNlZFRlc3RDYXNlOiBJUGFyc2VkVGVzdENhc2UgPSB7XG4gICAgYXR0ZW1wdDogdGVzdENhc2VBdHRlbXB0LmF0dGVtcHQsXG4gICAgbmFtZTogcGlja2xlLm5hbWUsXG4gICAgc291cmNlTG9jYXRpb246IHtcbiAgICAgIHVyaTogcmVsYXRpdmVQaWNrbGVVcmksXG4gICAgICBsaW5lOiBnaGVya2luU2NlbmFyaW9Mb2NhdGlvbk1hcFtwaWNrbGUuYXN0Tm9kZUlkc1twaWNrbGUuYXN0Tm9kZUlkcy5sZW5ndGggLSAxXV0ubGluZSxcbiAgICB9LFxuICAgIHdvcnN0VGVzdFN0ZXBSZXN1bHQ6IHRlc3RDYXNlQXR0ZW1wdC53b3JzdFRlc3RTdGVwUmVzdWx0LFxuICB9XG4gIGNvbnN0IHBhcnNlZFRlc3RTdGVwczogSVBhcnNlZFRlc3RTdGVwW10gPSBbXVxuICBsZXQgaXNCZWZvcmVIb29rID0gdHJ1ZVxuICBsZXQgcHJldmlvdXNLZXl3b3JkVHlwZSA9IEtleXdvcmRUeXBlLlByZWNvbmRpdGlvblxuXG4gIHRlc3RDYXNlLnRlc3RTdGVwcy5mb3JFYWNoKCh0ZXN0U3RlcCkgPT4ge1xuICAgIGNvbnN0IHRlc3RTdGVwUmVzdWx0OiBUZXN0U3RlcFJlc3VsdCA9IHRlc3RDYXNlQXR0ZW1wdC5zdGVwUmVzdWx0c1t0ZXN0U3RlcC5pZF0gfHwge1xuICAgICAgZHVyYXRpb246IHtcbiAgICAgICAgc2Vjb25kczogMCxcbiAgICAgICAgbmFub3M6IDAsXG4gICAgICB9LFxuICAgICAgc3RhdHVzOiBUZXN0U3RlcFJlc3VsdFN0YXR1cy5VTktOT1dOLFxuICAgIH1cblxuICAgIGlzQmVmb3JlSG9vayA9IGlzQmVmb3JlSG9vayAmJiBkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLmhvb2tJZClcblxuICAgIGxldCBrZXl3b3JkOiBhbnksIGtleXdvcmRUeXBlOiBhbnksIHBpY2tsZVN0ZXA6IGFueVxuICAgIGlmIChkb2VzSGF2ZVZhbHVlKHRlc3RTdGVwLnBpY2tsZVN0ZXBJZCkpIHtcbiAgICAgIHBpY2tsZVN0ZXAgPSBwaWNrbGVTdGVwTWFwW3Rlc3RTdGVwLnBpY2tsZVN0ZXBJZF1cbiAgICAgIGtleXdvcmQgPSBnZXRTdGVwS2V5d29yZCh7IHBpY2tsZVN0ZXAsIGdoZXJraW5TdGVwTWFwIH0pXG4gICAgICBrZXl3b3JkVHlwZSA9IGdldFN0ZXBLZXl3b3JkVHlwZSh7XG4gICAgICAgIGtleXdvcmQsXG4gICAgICAgIGxhbmd1YWdlOiBnaGVya2luRG9jdW1lbnQuZmVhdHVyZS5sYW5ndWFnZSxcbiAgICAgICAgcHJldmlvdXNLZXl3b3JkVHlwZSxcbiAgICAgIH0pXG4gICAgfVxuICAgIGNvbnN0IHBhcnNlZFN0ZXAgPSBwYXJzZVN0ZXAoe1xuICAgICAgaXNCZWZvcmVIb29rLFxuICAgICAgZ2hlcmtpblN0ZXBNYXAsXG4gICAgICBrZXl3b3JkLFxuICAgICAga2V5d29yZFR5cGUsXG4gICAgICBwaWNrbGVTdGVwLFxuICAgICAgcGlja2xlVXJpOiByZWxhdGl2ZVBpY2tsZVVyaSxcbiAgICAgIHNuaXBwZXRCdWlsZGVyLFxuICAgICAgc3VwcG9ydENvZGVMaWJyYXJ5LFxuICAgICAgdGVzdFN0ZXAsXG4gICAgICB0ZXN0U3RlcFJlc3VsdCxcbiAgICAgIHRlc3RTdGVwQXR0YWNobWVudHM6IHZhbHVlT3JEZWZhdWx0KHRlc3RDYXNlQXR0ZW1wdC5zdGVwQXR0YWNobWVudHNbdGVzdFN0ZXAuaWRdLCBbXSksXG4gICAgfSlcbiAgICBwYXJzZWRUZXN0U3RlcHMucHVzaChwYXJzZWRTdGVwKVxuICAgIHByZXZpb3VzS2V5d29yZFR5cGUgPSBrZXl3b3JkVHlwZVxuICB9KVxuICByZXR1cm4ge1xuICAgIHRlc3RDYXNlOiBwYXJzZWRUZXN0Q2FzZSxcbiAgICB0ZXN0U3RlcHM6IHBhcnNlZFRlc3RTdGVwcyxcbiAgfVxufVxuIl19
@@ -1,8 +1,8 @@
1
- import * as messages from '@cucumber/messages';
1
+ import { type Duration } from '@cucumber/messages';
2
2
  import type StepDefinition from '../../../models/step_definition';
3
3
  import type EventDataCollector from '../event_data_collector';
4
4
  export interface IUsageMatch {
5
- duration?: messages.Duration;
5
+ duration?: Duration;
6
6
  line: number;
7
7
  text: string;
8
8
  uri: string;
@@ -11,7 +11,7 @@ export interface IUsage {
11
11
  code: string;
12
12
  line: number;
13
13
  matches: IUsageMatch[];
14
- meanDuration?: messages.Duration;
14
+ meanDuration?: Duration;
15
15
  pattern: string;
16
16
  patternType: string;
17
17
  uri: string;