@cucumber/react-components 24.3.0 → 24.5.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 (635) hide show
  1. package/README.md +2 -2
  2. package/dist/{src/CucumberQueryContext.d.ts → CucumberQueryContext.d.ts} +0 -1
  3. package/dist/CucumberQueryContext.js +4 -0
  4. package/dist/{src/GherkinQueryContext.d.ts → GherkinQueryContext.d.ts} +0 -1
  5. package/dist/GherkinQueryContext.js +4 -0
  6. package/dist/{src/SearchContext.d.ts → SearchContext.d.ts} +0 -1
  7. package/dist/SearchContext.js +10 -0
  8. package/dist/{src/ciCommitLink.d.ts → ciCommitLink.d.ts} +0 -1
  9. package/dist/ciCommitLink.js +12 -0
  10. package/dist/{src/components → components}/app/CICommitLink.d.ts +0 -1
  11. package/dist/components/app/CICommitLink.js +16 -0
  12. package/dist/{src/components → components}/app/CIJobLink.d.ts +0 -1
  13. package/dist/components/app/CIJobLink.js +10 -0
  14. package/dist/{src/components → components}/app/ControlledSearchProvider.d.ts +0 -1
  15. package/dist/components/app/ControlledSearchProvider.js +39 -0
  16. package/dist/{src/components → components}/app/CopyButton.d.ts +0 -1
  17. package/dist/components/app/CopyButton.js +23 -0
  18. package/dist/{src/components → components}/app/DocumentAccordion.d.ts +0 -1
  19. package/dist/components/app/DocumentAccordion.js +22 -0
  20. package/dist/{src/components → components}/app/EnvelopesProvider.d.ts +0 -1
  21. package/dist/components/app/EnvelopesProvider.js +18 -0
  22. package/dist/{src/components → components}/app/ExecutionSummary.d.ts +0 -1
  23. package/dist/components/app/ExecutionSummary.js +38 -0
  24. package/dist/{src/components → components}/app/FilteredDocuments.d.ts +0 -1
  25. package/dist/components/app/FilteredDocuments.js +15 -0
  26. package/dist/{src/components → components}/app/GherkinDocumentList.d.ts +0 -1
  27. package/dist/components/app/GherkinDocumentList.js +23 -0
  28. package/dist/{src/components → components}/app/Header.d.ts +0 -1
  29. package/dist/components/app/Header.js +12 -0
  30. package/dist/{src/components → components}/app/HealthChart.d.ts +0 -1
  31. package/dist/components/app/HealthChart.js +14 -0
  32. package/dist/{src/components → components}/app/HighLight.d.ts +0 -1
  33. package/dist/components/app/HighLight.js +38 -0
  34. package/dist/{src/components → components}/app/ImplementationIcon.d.ts +0 -1
  35. package/dist/components/app/ImplementationIcon.js +10 -0
  36. package/dist/{src/components → components}/app/InMemorySearchProvider.d.ts +0 -1
  37. package/dist/components/app/InMemorySearchProvider.js +11 -0
  38. package/dist/{src/components → components}/app/NavigationButton.d.ts +0 -1
  39. package/dist/components/app/NavigationButton.js +6 -0
  40. package/dist/{src/components → components}/app/OSIcon.d.ts +0 -1
  41. package/dist/components/app/OSIcon.js +18 -0
  42. package/dist/{src/components → components}/app/QueriesProvider.d.ts +0 -1
  43. package/dist/components/app/QueriesProvider.js +7 -0
  44. package/dist/{src/components → components}/app/Report.d.ts +0 -1
  45. package/dist/components/app/Report.js +10 -0
  46. package/dist/{src/components → components}/app/RuntimeIcon.d.ts +0 -1
  47. package/dist/components/app/RuntimeIcon.js +18 -0
  48. package/dist/{src/components → components}/app/SearchBar.d.ts +0 -1
  49. package/dist/components/app/SearchBar.js +33 -0
  50. package/dist/{src/components → components}/app/StatusesSummary.d.ts +0 -1
  51. package/dist/components/app/StatusesSummary.js +16 -0
  52. package/dist/{src/components → components}/app/TestRunHooks.d.ts +0 -1
  53. package/dist/components/app/TestRunHooks.js +14 -0
  54. package/dist/{src/components → components}/app/UrlSearchProvider.d.ts +0 -1
  55. package/dist/components/app/UrlSearchProvider.js +29 -0
  56. package/dist/{src/components → components}/app/findMostSevereTestStepResultStatus.d.ts +0 -1
  57. package/dist/components/app/findMostSevereTestStepResultStatus.js +17 -0
  58. package/dist/{src/components → components}/app/icons/CucumberLogo.d.ts +0 -1
  59. package/dist/components/app/icons/CucumberLogo.js +5 -0
  60. package/dist/{src/components → components}/app/icons/Jvm.d.ts +0 -1
  61. package/dist/components/app/icons/Jvm.js +5 -0
  62. package/dist/{src/components → components}/app/icons/Linux.d.ts +0 -1
  63. package/dist/components/app/icons/Linux.js +5 -0
  64. package/dist/{src/components → components}/app/icons/MacOS.d.ts +0 -1
  65. package/dist/components/app/icons/MacOS.js +5 -0
  66. package/dist/{src/components → components}/app/icons/NodeJs.d.ts +0 -1
  67. package/dist/components/app/icons/NodeJs.js +5 -0
  68. package/dist/{src/components → components}/app/icons/Ruby.d.ts +0 -1
  69. package/dist/components/app/icons/Ruby.js +5 -0
  70. package/dist/{src/components → components}/app/icons/Windows.d.ts +0 -1
  71. package/dist/components/app/icons/Windows.js +5 -0
  72. package/dist/{src/components/app/index.js → components/app/index.d.ts} +0 -1
  73. package/dist/components/app/index.js +15 -0
  74. package/dist/{src/components → components}/app/makeSetupString.d.ts +0 -1
  75. package/dist/components/app/makeSetupString.js +21 -0
  76. package/dist/{src/components → components}/app/markdownComponents.d.ts +1 -2
  77. package/dist/components/app/markdownComponents.js +6 -0
  78. package/dist/{src/components → components}/app/rehypePlugins.d.ts +0 -1
  79. package/dist/components/app/rehypePlugins.js +9 -0
  80. package/dist/{src/components → components}/app/remarkPlugins.d.ts +0 -1
  81. package/dist/components/app/remarkPlugins.js +4 -0
  82. package/dist/{src/components → components}/customise/CustomRendering.d.ts +0 -1
  83. package/dist/components/customise/CustomRendering.js +35 -0
  84. package/dist/{src/components/customise/index.js → components/customise/index.d.ts} +0 -1
  85. package/dist/components/customise/index.js +3 -0
  86. package/dist/{src/components → components}/customise/theming.d.ts +0 -1
  87. package/dist/components/customise/theming.js +2 -0
  88. package/dist/{src/components → components}/gherkin/Anchor.d.ts +0 -1
  89. package/dist/components/gherkin/Anchor.js +13 -0
  90. package/dist/{src/components → components}/gherkin/Background.d.ts +0 -1
  91. package/dist/components/gherkin/Background.js +18 -0
  92. package/dist/{src/components → components}/gherkin/Children.d.ts +0 -1
  93. package/dist/components/gherkin/Children.js +11 -0
  94. package/dist/{src/components → components}/gherkin/DataTable.d.ts +0 -1
  95. package/dist/components/gherkin/DataTable.js +16 -0
  96. package/dist/{src/components → components}/gherkin/Description.d.ts +0 -1
  97. package/dist/components/gherkin/Description.js +15 -0
  98. package/dist/{src/components → components}/gherkin/DocString.d.ts +0 -1
  99. package/dist/components/gherkin/DocString.js +12 -0
  100. package/dist/{src/components → components}/gherkin/ErrorMessage.d.ts +0 -1
  101. package/dist/components/gherkin/ErrorMessage.js +13 -0
  102. package/dist/{src/components → components}/gherkin/Examples.d.ts +0 -1
  103. package/dist/components/gherkin/Examples.js +31 -0
  104. package/dist/{src/components → components}/gherkin/Feature.d.ts +0 -1
  105. package/dist/components/gherkin/Feature.js +30 -0
  106. package/dist/{src/components → components}/gherkin/GherkinDocument.d.ts +0 -1
  107. package/dist/components/gherkin/GherkinDocument.js +11 -0
  108. package/dist/{src/components → components}/gherkin/Keyword.d.ts +0 -1
  109. package/dist/components/gherkin/Keyword.js +11 -0
  110. package/dist/{src/components → components}/gherkin/Parameter.d.ts +0 -1
  111. package/dist/components/gherkin/Parameter.js +11 -0
  112. package/dist/{src/components → components}/gherkin/Rule.d.ts +0 -1
  113. package/dist/components/gherkin/Rule.js +26 -0
  114. package/dist/{src/components → components}/gherkin/Scenario.d.ts +0 -1
  115. package/dist/components/gherkin/Scenario.js +22 -0
  116. package/dist/{src/components → components}/gherkin/StatusIcon.d.ts +0 -1
  117. package/dist/components/gherkin/StatusIcon.js +24 -0
  118. package/dist/{src/components → components}/gherkin/StepsList.d.ts +0 -1
  119. package/dist/components/gherkin/StepsList.js +6 -0
  120. package/dist/{src/components → components}/gherkin/Tags.d.ts +0 -1
  121. package/dist/components/gherkin/Tags.js +15 -0
  122. package/dist/{src/components → components}/gherkin/Title.d.ts +0 -1
  123. package/dist/components/gherkin/Title.js +12 -0
  124. package/dist/{src/components → components}/gherkin/attachment/Attachment.d.ts +0 -1
  125. package/dist/components/gherkin/attachment/Attachment.js +45 -0
  126. package/dist/{src/components → components}/gherkin/attachment/Image.d.ts +0 -1
  127. package/dist/components/gherkin/attachment/Image.js +16 -0
  128. package/dist/{src/components → components}/gherkin/attachment/Links.d.ts +0 -1
  129. package/dist/components/gherkin/attachment/Links.js +14 -0
  130. package/dist/{src/components → components}/gherkin/attachment/Log.d.ts +0 -1
  131. package/dist/components/gherkin/attachment/Log.js +12 -0
  132. package/dist/{src/components → components}/gherkin/attachment/Text.d.ts +0 -1
  133. package/dist/components/gherkin/attachment/Text.js +16 -0
  134. package/dist/{src/components → components}/gherkin/attachment/Unknown.d.ts +0 -1
  135. package/dist/components/gherkin/attachment/Unknown.js +61 -0
  136. package/dist/{src/components → components}/gherkin/attachment/Video.d.ts +0 -1
  137. package/dist/components/gherkin/attachment/Video.js +16 -0
  138. package/dist/{src/components → components}/gherkin/attachment/attachmentFilename.d.ts +0 -1
  139. package/dist/components/gherkin/attachment/attachmentFilename.js +12 -0
  140. package/dist/{src/components → components}/gherkin/attachment/base64Decode.d.ts +0 -1
  141. package/dist/components/gherkin/attachment/base64Decode.js +19 -0
  142. package/dist/{src/components/gherkin/attachment/index.js → components/gherkin/attachment/index.d.ts} +0 -1
  143. package/dist/components/gherkin/attachment/index.js +2 -0
  144. package/dist/{src/components → components}/gherkin/attachment/useText.d.ts +0 -1
  145. package/dist/components/gherkin/attachment/useText.js +28 -0
  146. package/dist/{src/components → components}/gherkin/composeHookStepTitle.d.ts +0 -1
  147. package/dist/components/gherkin/composeHookStepTitle.js +23 -0
  148. package/dist/{src/components → components}/gherkin/composePickleStepTitle.d.ts +0 -1
  149. package/dist/components/gherkin/composePickleStepTitle.js +36 -0
  150. package/dist/{src/components/gherkin/index.js → components/gherkin/index.d.ts} +0 -1
  151. package/dist/components/gherkin/index.js +19 -0
  152. package/dist/{src/components → components}/gherkin/isNumber.d.ts +0 -1
  153. package/dist/components/gherkin/isNumber.js +7 -0
  154. package/dist/components/gherkin/statusName.d.ts +3 -0
  155. package/dist/components/gherkin/statusName.js +4 -0
  156. package/dist/{src/components/index.js → components/index.d.ts} +0 -1
  157. package/dist/components/index.js +4 -0
  158. package/dist/{src/components → components}/results/AmbiguousResult.d.ts +0 -1
  159. package/dist/components/results/AmbiguousResult.js +11 -0
  160. package/dist/{src/components → components}/results/FailedResult.d.ts +0 -1
  161. package/dist/components/results/FailedResult.js +15 -0
  162. package/dist/{src/components → components}/results/PendingResult.d.ts +0 -1
  163. package/dist/components/results/PendingResult.js +12 -0
  164. package/dist/{src/components → components}/results/ResultNote.d.ts +0 -1
  165. package/dist/components/results/ResultNote.js +6 -0
  166. package/dist/{src/components → components}/results/SkippedResult.d.ts +0 -1
  167. package/dist/components/results/SkippedResult.js +12 -0
  168. package/dist/{src/components → components}/results/SourceReference.d.ts +0 -1
  169. package/dist/components/results/SourceReference.js +13 -0
  170. package/dist/{src/components → components}/results/TestCaseOutcome.d.ts +0 -1
  171. package/dist/components/results/TestCaseOutcome.js +32 -0
  172. package/dist/{src/components → components}/results/TestRunHookOutcome.d.ts +0 -1
  173. package/dist/components/results/TestRunHookOutcome.js +11 -0
  174. package/dist/{src/components → components}/results/TestStepAttachments.d.ts +0 -1
  175. package/dist/components/results/TestStepAttachments.js +12 -0
  176. package/dist/{src/components → components}/results/TestStepDuration.d.ts +0 -1
  177. package/dist/components/results/TestStepDuration.js +19 -0
  178. package/dist/{src/components → components}/results/TestStepOutcome.d.ts +0 -1
  179. package/dist/components/results/TestStepOutcome.js +43 -0
  180. package/dist/{src/components → components}/results/UndefinedResult.d.ts +0 -1
  181. package/dist/components/results/UndefinedResult.js +18 -0
  182. package/dist/{src/components/results/index.js → components/results/index.d.ts} +0 -1
  183. package/dist/components/results/index.js +3 -0
  184. package/dist/{src/hooks/helpers.d.ts → ensure.d.ts} +0 -1
  185. package/dist/ensure.js +7 -0
  186. package/dist/{src/formatExecutionDistance.d.ts → formatExecutionDistance.d.ts} +0 -1
  187. package/dist/formatExecutionDistance.js +7 -0
  188. package/dist/{src/formatExecutionDuration.d.ts → formatExecutionDuration.d.ts} +0 -1
  189. package/dist/formatExecutionDuration.js +12 -0
  190. package/dist/{src/formatPassedQuantity.d.ts → formatPassedQuantity.d.ts} +0 -1
  191. package/dist/formatPassedQuantity.js +4 -0
  192. package/dist/{src/formatStatusRate.d.ts → formatStatusRate.d.ts} +0 -1
  193. package/dist/formatStatusRate.js +9 -0
  194. package/dist/{src/hooks/index.js → hooks/index.d.ts} +0 -1
  195. package/dist/hooks/index.js +3 -0
  196. package/dist/{src/hooks → hooks}/useFilteredDocuments.d.ts +1 -2
  197. package/dist/hooks/useFilteredDocuments.js +67 -0
  198. package/dist/hooks/useFilteredTestCases.d.ts +6 -0
  199. package/dist/hooks/useFilteredTestCases.js +36 -0
  200. package/dist/{src/hooks → hooks}/useMostSevereStatusByUri.d.ts +0 -1
  201. package/dist/hooks/useMostSevereStatusByUri.js +25 -0
  202. package/dist/{src/hooks → hooks}/useQueries.d.ts +0 -1
  203. package/dist/hooks/useQueries.js +9 -0
  204. package/dist/{src/hooks → hooks}/useResultStatistics.d.ts +0 -1
  205. package/dist/hooks/useResultStatistics.js +24 -0
  206. package/dist/{src/hooks → hooks}/useSearch.d.ts +0 -1
  207. package/dist/hooks/useSearch.js +6 -0
  208. package/dist/hooks/useSearchResult.d.ts +26 -0
  209. package/dist/hooks/useSearchResult.js +58 -0
  210. package/dist/{src/hooks → hooks}/useTestCaseStarted.d.ts +0 -1
  211. package/dist/hooks/useTestCaseStarted.js +20 -0
  212. package/dist/{src/hooks → hooks}/useTestRunHooks.d.ts +0 -1
  213. package/dist/hooks/useTestRunHooks.js +14 -0
  214. package/dist/{src/index.js → index.d.ts} +0 -1
  215. package/dist/index.js +3 -0
  216. package/dist/{src/isTagExpression.d.ts → isTagExpression.d.ts} +0 -1
  217. package/dist/isTagExpression.js +5 -0
  218. package/dist/{src/search → search}/FeatureSearch.d.ts +0 -1
  219. package/dist/search/FeatureSearch.js +39 -0
  220. package/dist/{src/search → search}/ScenarioLikeSearch.d.ts +0 -1
  221. package/dist/search/ScenarioLikeSearch.js +37 -0
  222. package/dist/{src/search → search}/StepSearch.d.ts +0 -1
  223. package/dist/search/StepSearch.js +40 -0
  224. package/dist/{src/search → search}/TextSearch.d.ts +1 -2
  225. package/dist/search/TextSearch.js +67 -0
  226. package/dist/{src/search → search}/createSearchIndex.d.ts +0 -1
  227. package/dist/search/createSearchIndex.js +10 -0
  228. package/dist/{src/search → search}/deriveLineageConstraints.d.ts +0 -1
  229. package/dist/search/deriveLineageConstraints.js +38 -0
  230. package/dist/search/filterAndExpandTestCaseEvents.d.ts +20 -0
  231. package/dist/search/filterAndExpandTestCaseEvents.js +32 -0
  232. package/dist/{src/search → search}/index.d.ts +2 -1
  233. package/dist/search/index.js +7 -0
  234. package/dist/{src/search → search}/pruneGherkinDocuments.d.ts +3 -4
  235. package/dist/search/pruneGherkinDocuments.js +179 -0
  236. package/dist/search/pruneTestCaseEvents.d.ts +16 -0
  237. package/dist/search/pruneTestCaseEvents.js +41 -0
  238. package/dist/{src/search → search}/types.d.ts +5 -6
  239. package/dist/search/types.js +2 -0
  240. package/dist/{src/statuses.d.ts → statuses.d.ts} +0 -1
  241. package/dist/statuses.js +12 -0
  242. package/dist/{src/toRepositoryId.d.ts → toRepositoryId.d.ts} +0 -1
  243. package/dist/toRepositoryId.js +12 -0
  244. package/package.json +30 -32
  245. package/dist/src/CucumberQueryContext.d.ts.map +0 -1
  246. package/dist/src/CucumberQueryContext.js +0 -4
  247. package/dist/src/CucumberQueryContext.js.map +0 -1
  248. package/dist/src/GherkinQueryContext.d.ts.map +0 -1
  249. package/dist/src/GherkinQueryContext.js +0 -4
  250. package/dist/src/GherkinQueryContext.js.map +0 -1
  251. package/dist/src/SearchContext.d.ts.map +0 -1
  252. package/dist/src/SearchContext.js +0 -10
  253. package/dist/src/SearchContext.js.map +0 -1
  254. package/dist/src/ciCommitLink.d.ts.map +0 -1
  255. package/dist/src/ciCommitLink.js +0 -12
  256. package/dist/src/ciCommitLink.js.map +0 -1
  257. package/dist/src/components/app/CICommitLink.d.ts.map +0 -1
  258. package/dist/src/components/app/CICommitLink.js +0 -16
  259. package/dist/src/components/app/CICommitLink.js.map +0 -1
  260. package/dist/src/components/app/CIJobLink.d.ts.map +0 -1
  261. package/dist/src/components/app/CIJobLink.js +0 -10
  262. package/dist/src/components/app/CIJobLink.js.map +0 -1
  263. package/dist/src/components/app/ControlledSearchProvider.d.ts.map +0 -1
  264. package/dist/src/components/app/ControlledSearchProvider.js +0 -39
  265. package/dist/src/components/app/ControlledSearchProvider.js.map +0 -1
  266. package/dist/src/components/app/CopyButton.d.ts.map +0 -1
  267. package/dist/src/components/app/CopyButton.js +0 -23
  268. package/dist/src/components/app/CopyButton.js.map +0 -1
  269. package/dist/src/components/app/DocumentAccordion.d.ts.map +0 -1
  270. package/dist/src/components/app/DocumentAccordion.js +0 -22
  271. package/dist/src/components/app/DocumentAccordion.js.map +0 -1
  272. package/dist/src/components/app/EnvelopesProvider.d.ts.map +0 -1
  273. package/dist/src/components/app/EnvelopesProvider.js +0 -18
  274. package/dist/src/components/app/EnvelopesProvider.js.map +0 -1
  275. package/dist/src/components/app/ExecutionSummary.d.ts.map +0 -1
  276. package/dist/src/components/app/ExecutionSummary.js +0 -38
  277. package/dist/src/components/app/ExecutionSummary.js.map +0 -1
  278. package/dist/src/components/app/FilteredDocuments.d.ts.map +0 -1
  279. package/dist/src/components/app/FilteredDocuments.js +0 -15
  280. package/dist/src/components/app/FilteredDocuments.js.map +0 -1
  281. package/dist/src/components/app/GherkinDocumentList.d.ts.map +0 -1
  282. package/dist/src/components/app/GherkinDocumentList.js +0 -23
  283. package/dist/src/components/app/GherkinDocumentList.js.map +0 -1
  284. package/dist/src/components/app/Header.d.ts.map +0 -1
  285. package/dist/src/components/app/Header.js +0 -12
  286. package/dist/src/components/app/Header.js.map +0 -1
  287. package/dist/src/components/app/HealthChart.d.ts.map +0 -1
  288. package/dist/src/components/app/HealthChart.js +0 -14
  289. package/dist/src/components/app/HealthChart.js.map +0 -1
  290. package/dist/src/components/app/HighLight.d.ts.map +0 -1
  291. package/dist/src/components/app/HighLight.js +0 -38
  292. package/dist/src/components/app/HighLight.js.map +0 -1
  293. package/dist/src/components/app/ImplementationIcon.d.ts.map +0 -1
  294. package/dist/src/components/app/ImplementationIcon.js +0 -10
  295. package/dist/src/components/app/ImplementationIcon.js.map +0 -1
  296. package/dist/src/components/app/InMemorySearchProvider.d.ts.map +0 -1
  297. package/dist/src/components/app/InMemorySearchProvider.js +0 -11
  298. package/dist/src/components/app/InMemorySearchProvider.js.map +0 -1
  299. package/dist/src/components/app/NavigationButton.d.ts.map +0 -1
  300. package/dist/src/components/app/NavigationButton.js +0 -6
  301. package/dist/src/components/app/NavigationButton.js.map +0 -1
  302. package/dist/src/components/app/OSIcon.d.ts.map +0 -1
  303. package/dist/src/components/app/OSIcon.js +0 -18
  304. package/dist/src/components/app/OSIcon.js.map +0 -1
  305. package/dist/src/components/app/QueriesProvider.d.ts.map +0 -1
  306. package/dist/src/components/app/QueriesProvider.js +0 -7
  307. package/dist/src/components/app/QueriesProvider.js.map +0 -1
  308. package/dist/src/components/app/Report.d.ts.map +0 -1
  309. package/dist/src/components/app/Report.js +0 -10
  310. package/dist/src/components/app/Report.js.map +0 -1
  311. package/dist/src/components/app/RuntimeIcon.d.ts.map +0 -1
  312. package/dist/src/components/app/RuntimeIcon.js +0 -18
  313. package/dist/src/components/app/RuntimeIcon.js.map +0 -1
  314. package/dist/src/components/app/SearchBar.d.ts.map +0 -1
  315. package/dist/src/components/app/SearchBar.js +0 -33
  316. package/dist/src/components/app/SearchBar.js.map +0 -1
  317. package/dist/src/components/app/StatusesSummary.d.ts.map +0 -1
  318. package/dist/src/components/app/StatusesSummary.js +0 -16
  319. package/dist/src/components/app/StatusesSummary.js.map +0 -1
  320. package/dist/src/components/app/TestRunHooks.d.ts.map +0 -1
  321. package/dist/src/components/app/TestRunHooks.js +0 -14
  322. package/dist/src/components/app/TestRunHooks.js.map +0 -1
  323. package/dist/src/components/app/UrlSearchProvider.d.ts.map +0 -1
  324. package/dist/src/components/app/UrlSearchProvider.js +0 -29
  325. package/dist/src/components/app/UrlSearchProvider.js.map +0 -1
  326. package/dist/src/components/app/findMostSevereTestStepResultStatus.d.ts.map +0 -1
  327. package/dist/src/components/app/findMostSevereTestStepResultStatus.js +0 -17
  328. package/dist/src/components/app/findMostSevereTestStepResultStatus.js.map +0 -1
  329. package/dist/src/components/app/icons/CucumberLogo.d.ts.map +0 -1
  330. package/dist/src/components/app/icons/CucumberLogo.js +0 -5
  331. package/dist/src/components/app/icons/CucumberLogo.js.map +0 -1
  332. package/dist/src/components/app/icons/Jvm.d.ts.map +0 -1
  333. package/dist/src/components/app/icons/Jvm.js +0 -5
  334. package/dist/src/components/app/icons/Jvm.js.map +0 -1
  335. package/dist/src/components/app/icons/Linux.d.ts.map +0 -1
  336. package/dist/src/components/app/icons/Linux.js +0 -5
  337. package/dist/src/components/app/icons/Linux.js.map +0 -1
  338. package/dist/src/components/app/icons/MacOS.d.ts.map +0 -1
  339. package/dist/src/components/app/icons/MacOS.js +0 -5
  340. package/dist/src/components/app/icons/MacOS.js.map +0 -1
  341. package/dist/src/components/app/icons/NodeJs.d.ts.map +0 -1
  342. package/dist/src/components/app/icons/NodeJs.js +0 -5
  343. package/dist/src/components/app/icons/NodeJs.js.map +0 -1
  344. package/dist/src/components/app/icons/Ruby.d.ts.map +0 -1
  345. package/dist/src/components/app/icons/Ruby.js +0 -5
  346. package/dist/src/components/app/icons/Ruby.js.map +0 -1
  347. package/dist/src/components/app/icons/Windows.d.ts.map +0 -1
  348. package/dist/src/components/app/icons/Windows.js +0 -5
  349. package/dist/src/components/app/icons/Windows.js.map +0 -1
  350. package/dist/src/components/app/index.d.ts +0 -15
  351. package/dist/src/components/app/index.d.ts.map +0 -1
  352. package/dist/src/components/app/index.js.map +0 -1
  353. package/dist/src/components/app/makeSetupString.d.ts.map +0 -1
  354. package/dist/src/components/app/makeSetupString.js +0 -21
  355. package/dist/src/components/app/makeSetupString.js.map +0 -1
  356. package/dist/src/components/app/markdownComponents.d.ts.map +0 -1
  357. package/dist/src/components/app/markdownComponents.js +0 -6
  358. package/dist/src/components/app/markdownComponents.js.map +0 -1
  359. package/dist/src/components/app/rehypePlugins.d.ts.map +0 -1
  360. package/dist/src/components/app/rehypePlugins.js +0 -9
  361. package/dist/src/components/app/rehypePlugins.js.map +0 -1
  362. package/dist/src/components/app/remarkPlugins.d.ts.map +0 -1
  363. package/dist/src/components/app/remarkPlugins.js +0 -4
  364. package/dist/src/components/app/remarkPlugins.js.map +0 -1
  365. package/dist/src/components/customise/CustomRendering.d.ts.map +0 -1
  366. package/dist/src/components/customise/CustomRendering.js +0 -35
  367. package/dist/src/components/customise/CustomRendering.js.map +0 -1
  368. package/dist/src/components/customise/index.d.ts +0 -3
  369. package/dist/src/components/customise/index.d.ts.map +0 -1
  370. package/dist/src/components/customise/index.js.map +0 -1
  371. package/dist/src/components/customise/theming.d.ts.map +0 -1
  372. package/dist/src/components/customise/theming.js +0 -2
  373. package/dist/src/components/customise/theming.js.map +0 -1
  374. package/dist/src/components/gherkin/Anchor.d.ts.map +0 -1
  375. package/dist/src/components/gherkin/Anchor.js +0 -13
  376. package/dist/src/components/gherkin/Anchor.js.map +0 -1
  377. package/dist/src/components/gherkin/Background.d.ts.map +0 -1
  378. package/dist/src/components/gherkin/Background.js +0 -18
  379. package/dist/src/components/gherkin/Background.js.map +0 -1
  380. package/dist/src/components/gherkin/Children.d.ts.map +0 -1
  381. package/dist/src/components/gherkin/Children.js +0 -11
  382. package/dist/src/components/gherkin/Children.js.map +0 -1
  383. package/dist/src/components/gherkin/DataTable.d.ts.map +0 -1
  384. package/dist/src/components/gherkin/DataTable.js +0 -16
  385. package/dist/src/components/gherkin/DataTable.js.map +0 -1
  386. package/dist/src/components/gherkin/Description.d.ts.map +0 -1
  387. package/dist/src/components/gherkin/Description.js +0 -15
  388. package/dist/src/components/gherkin/Description.js.map +0 -1
  389. package/dist/src/components/gherkin/DocString.d.ts.map +0 -1
  390. package/dist/src/components/gherkin/DocString.js +0 -12
  391. package/dist/src/components/gherkin/DocString.js.map +0 -1
  392. package/dist/src/components/gherkin/ErrorMessage.d.ts.map +0 -1
  393. package/dist/src/components/gherkin/ErrorMessage.js +0 -13
  394. package/dist/src/components/gherkin/ErrorMessage.js.map +0 -1
  395. package/dist/src/components/gherkin/Examples.d.ts.map +0 -1
  396. package/dist/src/components/gherkin/Examples.js +0 -31
  397. package/dist/src/components/gherkin/Examples.js.map +0 -1
  398. package/dist/src/components/gherkin/Feature.d.ts.map +0 -1
  399. package/dist/src/components/gherkin/Feature.js +0 -30
  400. package/dist/src/components/gherkin/Feature.js.map +0 -1
  401. package/dist/src/components/gherkin/GherkinDocument.d.ts.map +0 -1
  402. package/dist/src/components/gherkin/GherkinDocument.js +0 -11
  403. package/dist/src/components/gherkin/GherkinDocument.js.map +0 -1
  404. package/dist/src/components/gherkin/Keyword.d.ts.map +0 -1
  405. package/dist/src/components/gherkin/Keyword.js +0 -11
  406. package/dist/src/components/gherkin/Keyword.js.map +0 -1
  407. package/dist/src/components/gherkin/Parameter.d.ts.map +0 -1
  408. package/dist/src/components/gherkin/Parameter.js +0 -11
  409. package/dist/src/components/gherkin/Parameter.js.map +0 -1
  410. package/dist/src/components/gherkin/Rule.d.ts.map +0 -1
  411. package/dist/src/components/gherkin/Rule.js +0 -26
  412. package/dist/src/components/gherkin/Rule.js.map +0 -1
  413. package/dist/src/components/gherkin/Scenario.d.ts.map +0 -1
  414. package/dist/src/components/gherkin/Scenario.js +0 -22
  415. package/dist/src/components/gherkin/Scenario.js.map +0 -1
  416. package/dist/src/components/gherkin/StatusIcon.d.ts.map +0 -1
  417. package/dist/src/components/gherkin/StatusIcon.js +0 -24
  418. package/dist/src/components/gherkin/StatusIcon.js.map +0 -1
  419. package/dist/src/components/gherkin/StepsList.d.ts.map +0 -1
  420. package/dist/src/components/gherkin/StepsList.js +0 -6
  421. package/dist/src/components/gherkin/StepsList.js.map +0 -1
  422. package/dist/src/components/gherkin/Tags.d.ts.map +0 -1
  423. package/dist/src/components/gherkin/Tags.js +0 -15
  424. package/dist/src/components/gherkin/Tags.js.map +0 -1
  425. package/dist/src/components/gherkin/Title.d.ts.map +0 -1
  426. package/dist/src/components/gherkin/Title.js +0 -12
  427. package/dist/src/components/gherkin/Title.js.map +0 -1
  428. package/dist/src/components/gherkin/attachment/Attachment.d.ts.map +0 -1
  429. package/dist/src/components/gherkin/attachment/Attachment.js +0 -45
  430. package/dist/src/components/gherkin/attachment/Attachment.js.map +0 -1
  431. package/dist/src/components/gherkin/attachment/Image.d.ts.map +0 -1
  432. package/dist/src/components/gherkin/attachment/Image.js +0 -16
  433. package/dist/src/components/gherkin/attachment/Image.js.map +0 -1
  434. package/dist/src/components/gherkin/attachment/Links.d.ts.map +0 -1
  435. package/dist/src/components/gherkin/attachment/Links.js +0 -14
  436. package/dist/src/components/gherkin/attachment/Links.js.map +0 -1
  437. package/dist/src/components/gherkin/attachment/Log.d.ts.map +0 -1
  438. package/dist/src/components/gherkin/attachment/Log.js +0 -12
  439. package/dist/src/components/gherkin/attachment/Log.js.map +0 -1
  440. package/dist/src/components/gherkin/attachment/Text.d.ts.map +0 -1
  441. package/dist/src/components/gherkin/attachment/Text.js +0 -16
  442. package/dist/src/components/gherkin/attachment/Text.js.map +0 -1
  443. package/dist/src/components/gherkin/attachment/Unknown.d.ts.map +0 -1
  444. package/dist/src/components/gherkin/attachment/Unknown.js +0 -61
  445. package/dist/src/components/gherkin/attachment/Unknown.js.map +0 -1
  446. package/dist/src/components/gherkin/attachment/Video.d.ts.map +0 -1
  447. package/dist/src/components/gherkin/attachment/Video.js +0 -16
  448. package/dist/src/components/gherkin/attachment/Video.js.map +0 -1
  449. package/dist/src/components/gherkin/attachment/attachmentFilename.d.ts.map +0 -1
  450. package/dist/src/components/gherkin/attachment/attachmentFilename.js +0 -12
  451. package/dist/src/components/gherkin/attachment/attachmentFilename.js.map +0 -1
  452. package/dist/src/components/gherkin/attachment/base64Decode.d.ts.map +0 -1
  453. package/dist/src/components/gherkin/attachment/base64Decode.js +0 -19
  454. package/dist/src/components/gherkin/attachment/base64Decode.js.map +0 -1
  455. package/dist/src/components/gherkin/attachment/index.d.ts +0 -2
  456. package/dist/src/components/gherkin/attachment/index.d.ts.map +0 -1
  457. package/dist/src/components/gherkin/attachment/index.js.map +0 -1
  458. package/dist/src/components/gherkin/attachment/useText.d.ts.map +0 -1
  459. package/dist/src/components/gherkin/attachment/useText.js +0 -28
  460. package/dist/src/components/gherkin/attachment/useText.js.map +0 -1
  461. package/dist/src/components/gherkin/composeHookStepTitle.d.ts.map +0 -1
  462. package/dist/src/components/gherkin/composeHookStepTitle.js +0 -23
  463. package/dist/src/components/gherkin/composeHookStepTitle.js.map +0 -1
  464. package/dist/src/components/gherkin/composePickleStepTitle.d.ts.map +0 -1
  465. package/dist/src/components/gherkin/composePickleStepTitle.js +0 -36
  466. package/dist/src/components/gherkin/composePickleStepTitle.js.map +0 -1
  467. package/dist/src/components/gherkin/index.d.ts +0 -19
  468. package/dist/src/components/gherkin/index.d.ts.map +0 -1
  469. package/dist/src/components/gherkin/index.js.map +0 -1
  470. package/dist/src/components/gherkin/isNumber.d.ts.map +0 -1
  471. package/dist/src/components/gherkin/isNumber.js +0 -7
  472. package/dist/src/components/gherkin/isNumber.js.map +0 -1
  473. package/dist/src/components/gherkin/statusName.d.ts +0 -4
  474. package/dist/src/components/gherkin/statusName.d.ts.map +0 -1
  475. package/dist/src/components/gherkin/statusName.js +0 -4
  476. package/dist/src/components/gherkin/statusName.js.map +0 -1
  477. package/dist/src/components/index.d.ts +0 -4
  478. package/dist/src/components/index.d.ts.map +0 -1
  479. package/dist/src/components/index.js.map +0 -1
  480. package/dist/src/components/results/AmbiguousResult.d.ts.map +0 -1
  481. package/dist/src/components/results/AmbiguousResult.js +0 -11
  482. package/dist/src/components/results/AmbiguousResult.js.map +0 -1
  483. package/dist/src/components/results/FailedResult.d.ts.map +0 -1
  484. package/dist/src/components/results/FailedResult.js +0 -15
  485. package/dist/src/components/results/FailedResult.js.map +0 -1
  486. package/dist/src/components/results/PendingResult.d.ts.map +0 -1
  487. package/dist/src/components/results/PendingResult.js +0 -12
  488. package/dist/src/components/results/PendingResult.js.map +0 -1
  489. package/dist/src/components/results/ResultNote.d.ts.map +0 -1
  490. package/dist/src/components/results/ResultNote.js +0 -6
  491. package/dist/src/components/results/ResultNote.js.map +0 -1
  492. package/dist/src/components/results/SkippedResult.d.ts.map +0 -1
  493. package/dist/src/components/results/SkippedResult.js +0 -12
  494. package/dist/src/components/results/SkippedResult.js.map +0 -1
  495. package/dist/src/components/results/SourceReference.d.ts.map +0 -1
  496. package/dist/src/components/results/SourceReference.js +0 -13
  497. package/dist/src/components/results/SourceReference.js.map +0 -1
  498. package/dist/src/components/results/TestCaseOutcome.d.ts.map +0 -1
  499. package/dist/src/components/results/TestCaseOutcome.js +0 -32
  500. package/dist/src/components/results/TestCaseOutcome.js.map +0 -1
  501. package/dist/src/components/results/TestRunHookOutcome.d.ts.map +0 -1
  502. package/dist/src/components/results/TestRunHookOutcome.js +0 -11
  503. package/dist/src/components/results/TestRunHookOutcome.js.map +0 -1
  504. package/dist/src/components/results/TestStepAttachments.d.ts.map +0 -1
  505. package/dist/src/components/results/TestStepAttachments.js +0 -12
  506. package/dist/src/components/results/TestStepAttachments.js.map +0 -1
  507. package/dist/src/components/results/TestStepDuration.d.ts.map +0 -1
  508. package/dist/src/components/results/TestStepDuration.js +0 -19
  509. package/dist/src/components/results/TestStepDuration.js.map +0 -1
  510. package/dist/src/components/results/TestStepOutcome.d.ts.map +0 -1
  511. package/dist/src/components/results/TestStepOutcome.js +0 -45
  512. package/dist/src/components/results/TestStepOutcome.js.map +0 -1
  513. package/dist/src/components/results/UndefinedResult.d.ts.map +0 -1
  514. package/dist/src/components/results/UndefinedResult.js +0 -18
  515. package/dist/src/components/results/UndefinedResult.js.map +0 -1
  516. package/dist/src/components/results/index.d.ts +0 -3
  517. package/dist/src/components/results/index.d.ts.map +0 -1
  518. package/dist/src/components/results/index.js.map +0 -1
  519. package/dist/src/formatExecutionDistance.d.ts.map +0 -1
  520. package/dist/src/formatExecutionDistance.js +0 -7
  521. package/dist/src/formatExecutionDistance.js.map +0 -1
  522. package/dist/src/formatExecutionDuration.d.ts.map +0 -1
  523. package/dist/src/formatExecutionDuration.js +0 -12
  524. package/dist/src/formatExecutionDuration.js.map +0 -1
  525. package/dist/src/formatPassedQuantity.d.ts.map +0 -1
  526. package/dist/src/formatPassedQuantity.js +0 -4
  527. package/dist/src/formatPassedQuantity.js.map +0 -1
  528. package/dist/src/formatStatusRate.d.ts.map +0 -1
  529. package/dist/src/formatStatusRate.js +0 -9
  530. package/dist/src/formatStatusRate.js.map +0 -1
  531. package/dist/src/hooks/helpers.d.ts.map +0 -1
  532. package/dist/src/hooks/helpers.js +0 -7
  533. package/dist/src/hooks/helpers.js.map +0 -1
  534. package/dist/src/hooks/index.d.ts +0 -3
  535. package/dist/src/hooks/index.d.ts.map +0 -1
  536. package/dist/src/hooks/index.js.map +0 -1
  537. package/dist/src/hooks/useFilteredDocuments.d.ts.map +0 -1
  538. package/dist/src/hooks/useFilteredDocuments.js +0 -85
  539. package/dist/src/hooks/useFilteredDocuments.js.map +0 -1
  540. package/dist/src/hooks/useMostSevereStatusByUri.d.ts.map +0 -1
  541. package/dist/src/hooks/useMostSevereStatusByUri.js +0 -25
  542. package/dist/src/hooks/useMostSevereStatusByUri.js.map +0 -1
  543. package/dist/src/hooks/useQueries.d.ts.map +0 -1
  544. package/dist/src/hooks/useQueries.js +0 -9
  545. package/dist/src/hooks/useQueries.js.map +0 -1
  546. package/dist/src/hooks/useResultStatistics.d.ts.map +0 -1
  547. package/dist/src/hooks/useResultStatistics.js +0 -24
  548. package/dist/src/hooks/useResultStatistics.js.map +0 -1
  549. package/dist/src/hooks/useSearch.d.ts.map +0 -1
  550. package/dist/src/hooks/useSearch.js +0 -6
  551. package/dist/src/hooks/useSearch.js.map +0 -1
  552. package/dist/src/hooks/useTestCaseStarted.d.ts.map +0 -1
  553. package/dist/src/hooks/useTestCaseStarted.js +0 -20
  554. package/dist/src/hooks/useTestCaseStarted.js.map +0 -1
  555. package/dist/src/hooks/useTestRunHooks.d.ts.map +0 -1
  556. package/dist/src/hooks/useTestRunHooks.js +0 -14
  557. package/dist/src/hooks/useTestRunHooks.js.map +0 -1
  558. package/dist/src/index.d.ts +0 -3
  559. package/dist/src/index.d.ts.map +0 -1
  560. package/dist/src/index.js.map +0 -1
  561. package/dist/src/isTagExpression.d.ts.map +0 -1
  562. package/dist/src/isTagExpression.js +0 -5
  563. package/dist/src/isTagExpression.js.map +0 -1
  564. package/dist/src/search/FeatureSearch.d.ts.map +0 -1
  565. package/dist/src/search/FeatureSearch.js +0 -37
  566. package/dist/src/search/FeatureSearch.js.map +0 -1
  567. package/dist/src/search/ScenarioLikeSearch.d.ts.map +0 -1
  568. package/dist/src/search/ScenarioLikeSearch.js +0 -37
  569. package/dist/src/search/ScenarioLikeSearch.js.map +0 -1
  570. package/dist/src/search/StepSearch.d.ts.map +0 -1
  571. package/dist/src/search/StepSearch.js +0 -40
  572. package/dist/src/search/StepSearch.js.map +0 -1
  573. package/dist/src/search/TextSearch.d.ts.map +0 -1
  574. package/dist/src/search/TextSearch.js +0 -70
  575. package/dist/src/search/TextSearch.js.map +0 -1
  576. package/dist/src/search/createSearchIndex.d.ts.map +0 -1
  577. package/dist/src/search/createSearchIndex.js +0 -10
  578. package/dist/src/search/createSearchIndex.js.map +0 -1
  579. package/dist/src/search/deriveLineageConstraints.d.ts.map +0 -1
  580. package/dist/src/search/deriveLineageConstraints.js +0 -38
  581. package/dist/src/search/deriveLineageConstraints.js.map +0 -1
  582. package/dist/src/search/index.d.ts.map +0 -1
  583. package/dist/src/search/index.js +0 -5
  584. package/dist/src/search/index.js.map +0 -1
  585. package/dist/src/search/pruneGherkinDocuments.d.ts.map +0 -1
  586. package/dist/src/search/pruneGherkinDocuments.js +0 -180
  587. package/dist/src/search/pruneGherkinDocuments.js.map +0 -1
  588. package/dist/src/search/types.d.ts.map +0 -1
  589. package/dist/src/search/types.js +0 -2
  590. package/dist/src/search/types.js.map +0 -1
  591. package/dist/src/statuses.d.ts.map +0 -1
  592. package/dist/src/statuses.js +0 -12
  593. package/dist/src/statuses.js.map +0 -1
  594. package/dist/src/toRepositoryId.d.ts.map +0 -1
  595. package/dist/src/toRepositoryId.js +0 -12
  596. package/dist/src/toRepositoryId.js.map +0 -1
  597. package/dist/tsconfig.build.tsbuildinfo +0 -1
  598. /package/dist/{src/components → components}/app/CopyButton.module.scss +0 -0
  599. /package/dist/{src/components → components}/app/DocumentAccordion.module.scss +0 -0
  600. /package/dist/{src/components → components}/app/ExecutionSummary.module.scss +0 -0
  601. /package/dist/{src/components → components}/app/FilteredDocuments.module.scss +0 -0
  602. /package/dist/{src/components → components}/app/Header.module.scss +0 -0
  603. /package/dist/{src/components → components}/app/HealthChart.module.scss +0 -0
  604. /package/dist/{src/components → components}/app/NavigationButton.module.scss +0 -0
  605. /package/dist/{src/components → components}/app/Report.module.scss +0 -0
  606. /package/dist/{src/components → components}/app/SearchBar.module.scss +0 -0
  607. /package/dist/{src/components → components}/app/StatusesSummary.module.scss +0 -0
  608. /package/dist/{src/components → components}/app/TestRunHooks.module.scss +0 -0
  609. /package/dist/{src/components → components}/customise/CustomRendering.stories.scss +0 -0
  610. /package/dist/{src/components → components}/gherkin/Anchor.module.scss +0 -0
  611. /package/dist/{src/components → components}/gherkin/Children.module.scss +0 -0
  612. /package/dist/{src/components → components}/gherkin/DataTable.module.scss +0 -0
  613. /package/dist/{src/components → components}/gherkin/Description.module.scss +0 -0
  614. /package/dist/{src/components → components}/gherkin/DocString.module.scss +0 -0
  615. /package/dist/{src/components → components}/gherkin/ErrorMessage.module.scss +0 -0
  616. /package/dist/{src/components → components}/gherkin/Examples.module.scss +0 -0
  617. /package/dist/{src/components → components}/gherkin/Keyword.module.scss +0 -0
  618. /package/dist/{src/components → components}/gherkin/Parameter.module.scss +0 -0
  619. /package/dist/{src/components → components}/gherkin/StatusIcon.module.scss +0 -0
  620. /package/dist/{src/components → components}/gherkin/StepsList.module.scss +0 -0
  621. /package/dist/{src/components → components}/gherkin/Tags.module.scss +0 -0
  622. /package/dist/{src/components → components}/gherkin/Title.module.scss +0 -0
  623. /package/dist/{src/components → components}/gherkin/attachment/Attachment.module.scss +0 -0
  624. /package/dist/{src/components → components}/results/AmbiguousResult.module.scss +0 -0
  625. /package/dist/{src/components → components}/results/ResultNote.module.scss +0 -0
  626. /package/dist/{src/components → components}/results/SourceReference.module.scss +0 -0
  627. /package/dist/{src/components → components}/results/TestCaseOutcome.module.scss +0 -0
  628. /package/dist/{src/components → components}/results/TestRunHookOutcome.module.scss +0 -0
  629. /package/dist/{src/components → components}/results/TestStepAttachments.module.scss +0 -0
  630. /package/dist/{src/components → components}/results/TestStepDuration.module.scss +0 -0
  631. /package/dist/{src/components → components}/results/TestStepOutcome.module.scss +0 -0
  632. /package/dist/{src/components → components}/results/UndefinedResult.module.scss +0 -0
  633. /package/dist/{src/styles → styles}/statuses.scss +0 -0
  634. /package/dist/{src/styles → styles}/tables.scss +0 -0
  635. /package/dist/{src/styles → styles}/theming.scss +0 -0
@@ -0,0 +1,15 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ErrorMessage } from '../gherkin/index.js';
3
+ export const FailedResult = ({ result: { exception, message } }) => {
4
+ if (exception?.stackTrace) {
5
+ return _jsx(ErrorMessage, { children: exception.stackTrace });
6
+ }
7
+ if (exception) {
8
+ return (_jsxs(ErrorMessage, { children: [_jsx("strong", { children: exception.type }), " ", exception.message] }));
9
+ }
10
+ if (message) {
11
+ return _jsx(ErrorMessage, { children: message });
12
+ }
13
+ return null;
14
+ };
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmFpbGVkUmVzdWx0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVzdWx0cy9GYWlsZWRSZXN1bHQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFHQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFNbEQsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFjLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxFQUFFO0lBQzVFLElBQUksU0FBUyxFQUFFLFVBQVUsRUFBRSxDQUFDO1FBQzFCLE9BQU8sS0FBQyxZQUFZLGNBQUUsU0FBUyxDQUFDLFVBQVUsR0FBZ0IsQ0FBQTtJQUM1RCxDQUFDO0lBQ0QsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUNkLE9BQU8sQ0FDTCxNQUFDLFlBQVksZUFDWCwyQkFBUyxTQUFTLENBQUMsSUFBSSxHQUFVLE9BQUUsU0FBUyxDQUFDLE9BQU8sSUFDdkMsQ0FDaEIsQ0FBQTtJQUNILENBQUM7SUFDRCxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQ1osT0FBTyxLQUFDLFlBQVksY0FBRSxPQUFPLEdBQWdCLENBQUE7SUFDL0MsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBUZXN0U3RlcFJlc3VsdCB9IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB0eXBlIHsgRkMgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgRXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vZ2hlcmtpbi9pbmRleC5qcydcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgcmVzdWx0OiBUZXN0U3RlcFJlc3VsdFxufVxuXG5leHBvcnQgY29uc3QgRmFpbGVkUmVzdWx0OiBGQzxQcm9wcz4gPSAoeyByZXN1bHQ6IHsgZXhjZXB0aW9uLCBtZXNzYWdlIH0gfSkgPT4ge1xuICBpZiAoZXhjZXB0aW9uPy5zdGFja1RyYWNlKSB7XG4gICAgcmV0dXJuIDxFcnJvck1lc3NhZ2U+e2V4Y2VwdGlvbi5zdGFja1RyYWNlfTwvRXJyb3JNZXNzYWdlPlxuICB9XG4gIGlmIChleGNlcHRpb24pIHtcbiAgICByZXR1cm4gKFxuICAgICAgPEVycm9yTWVzc2FnZT5cbiAgICAgICAgPHN0cm9uZz57ZXhjZXB0aW9uLnR5cGV9PC9zdHJvbmc+IHtleGNlcHRpb24ubWVzc2FnZX1cbiAgICAgIDwvRXJyb3JNZXNzYWdlPlxuICAgIClcbiAgfVxuICBpZiAobWVzc2FnZSkge1xuICAgIHJldHVybiA8RXJyb3JNZXNzYWdlPnttZXNzYWdlfTwvRXJyb3JNZXNzYWdlPlxuICB9XG4gIHJldHVybiBudWxsXG59XG4iXX0=
@@ -5,4 +5,3 @@ interface Props {
5
5
  }
6
6
  export declare const PendingResult: FC<Props>;
7
7
  export {};
8
- //# sourceMappingURL=PendingResult.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ResultNote } from './ResultNote.js';
3
+ export const PendingResult = ({ result: { exception, message } }) => {
4
+ if (exception?.message) {
5
+ return _jsx(ResultNote, { children: exception.message });
6
+ }
7
+ if (message) {
8
+ return _jsx(ResultNote, { children: message });
9
+ }
10
+ return null;
11
+ };
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGVuZGluZ1Jlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jlc3VsdHMvUGVuZGluZ1Jlc3VsdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUdBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQU01QyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQWMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUU7SUFDN0UsSUFBSSxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDdkIsT0FBTyxLQUFDLFVBQVUsY0FBRSxTQUFTLENBQUMsT0FBTyxHQUFjLENBQUE7SUFDckQsQ0FBQztJQUNELElBQUksT0FBTyxFQUFFLENBQUM7UUFDWixPQUFPLEtBQUMsVUFBVSxjQUFFLE9BQU8sR0FBYyxDQUFBO0lBQzNDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVGVzdFN0ZXBSZXN1bHQgfSBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7IFJlc3VsdE5vdGUgfSBmcm9tICcuL1Jlc3VsdE5vdGUuanMnXG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIHJlc3VsdDogVGVzdFN0ZXBSZXN1bHRcbn1cblxuZXhwb3J0IGNvbnN0IFBlbmRpbmdSZXN1bHQ6IEZDPFByb3BzPiA9ICh7IHJlc3VsdDogeyBleGNlcHRpb24sIG1lc3NhZ2UgfSB9KSA9PiB7XG4gIGlmIChleGNlcHRpb24/Lm1lc3NhZ2UpIHtcbiAgICByZXR1cm4gPFJlc3VsdE5vdGU+e2V4Y2VwdGlvbi5tZXNzYWdlfTwvUmVzdWx0Tm90ZT5cbiAgfVxuICBpZiAobWVzc2FnZSkge1xuICAgIHJldHVybiA8UmVzdWx0Tm90ZT57bWVzc2FnZX08L1Jlc3VsdE5vdGU+XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cbiJdfQ==
@@ -1,3 +1,2 @@
1
1
  import type { FC, PropsWithChildren } from 'react';
2
2
  export declare const ResultNote: FC<PropsWithChildren>;
3
- //# sourceMappingURL=ResultNote.d.ts.map
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import styles from './ResultNote.module.scss';
3
+ export const ResultNote = ({ children }) => {
4
+ return _jsx("p", { className: styles.note, children: children });
5
+ };
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVzdWx0Tm90ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jlc3VsdHMvUmVzdWx0Tm90ZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sTUFBTSxNQUFNLDBCQUEwQixDQUFBO0FBRTdDLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBMEIsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7SUFDaEUsT0FBTyxZQUFHLFNBQVMsRUFBRSxNQUFNLENBQUMsSUFBSSxZQUFHLFFBQVEsR0FBSyxDQUFBO0FBQ2xELENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRkMsIFByb3BzV2l0aENoaWxkcmVuIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9SZXN1bHROb3RlLm1vZHVsZS5zY3NzJ1xuXG5leHBvcnQgY29uc3QgUmVzdWx0Tm90ZTogRkM8UHJvcHNXaXRoQ2hpbGRyZW4+ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICByZXR1cm4gPHAgY2xhc3NOYW1lPXtzdHlsZXMubm90ZX0+e2NoaWxkcmVufTwvcD5cbn1cbiJdfQ==
@@ -5,4 +5,3 @@ interface Props {
5
5
  }
6
6
  export declare const SkippedResult: FC<Props>;
7
7
  export {};
8
- //# sourceMappingURL=SkippedResult.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ResultNote } from './ResultNote.js';
3
+ export const SkippedResult = ({ result: { exception, message } }) => {
4
+ if (exception?.message) {
5
+ return _jsx(ResultNote, { children: exception.message });
6
+ }
7
+ if (message) {
8
+ return _jsx(ResultNote, { children: message });
9
+ }
10
+ return null;
11
+ };
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2tpcHBlZFJlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jlc3VsdHMvU2tpcHBlZFJlc3VsdC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUdBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQU01QyxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQWMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUU7SUFDN0UsSUFBSSxTQUFTLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDdkIsT0FBTyxLQUFDLFVBQVUsY0FBRSxTQUFTLENBQUMsT0FBTyxHQUFjLENBQUE7SUFDckQsQ0FBQztJQUNELElBQUksT0FBTyxFQUFFLENBQUM7UUFDWixPQUFPLEtBQUMsVUFBVSxjQUFFLE9BQU8sR0FBYyxDQUFBO0lBQzNDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQTtBQUNiLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVGVzdFN0ZXBSZXN1bHQgfSBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7IFJlc3VsdE5vdGUgfSBmcm9tICcuL1Jlc3VsdE5vdGUuanMnXG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIHJlc3VsdDogVGVzdFN0ZXBSZXN1bHRcbn1cblxuZXhwb3J0IGNvbnN0IFNraXBwZWRSZXN1bHQ6IEZDPFByb3BzPiA9ICh7IHJlc3VsdDogeyBleGNlcHRpb24sIG1lc3NhZ2UgfSB9KSA9PiB7XG4gIGlmIChleGNlcHRpb24/Lm1lc3NhZ2UpIHtcbiAgICByZXR1cm4gPFJlc3VsdE5vdGU+e2V4Y2VwdGlvbi5tZXNzYWdlfTwvUmVzdWx0Tm90ZT5cbiAgfVxuICBpZiAobWVzc2FnZSkge1xuICAgIHJldHVybiA8UmVzdWx0Tm90ZT57bWVzc2FnZX08L1Jlc3VsdE5vdGU+XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cbiJdfQ==
@@ -5,4 +5,3 @@ interface Props {
5
5
  }
6
6
  export declare const SourceReference: FC<Props>;
7
7
  export {};
8
- //# sourceMappingURL=SourceReference.d.ts.map
@@ -0,0 +1,13 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import styles from './SourceReference.module.scss';
3
+ export const SourceReference = ({ sourceReference }) => {
4
+ if (sourceReference.uri) {
5
+ let stringified = sourceReference.uri;
6
+ if (sourceReference.location) {
7
+ stringified += `:${sourceReference.location.line}`;
8
+ }
9
+ return _jsx("code", { className: styles.sourceReference, children: stringified });
10
+ }
11
+ return null;
12
+ };
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU291cmNlUmVmZXJlbmNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVzdWx0cy9Tb3VyY2VSZWZlcmVuY2UudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFHQSxPQUFPLE1BQU0sTUFBTSwrQkFBK0IsQ0FBQTtBQU1sRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQWMsQ0FBQyxFQUFFLGVBQWUsRUFBRSxFQUFFLEVBQUU7SUFDaEUsSUFBSSxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDeEIsSUFBSSxXQUFXLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQTtRQUNyQyxJQUFJLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM3QixXQUFXLElBQUksSUFBSSxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ3BELENBQUM7UUFDRCxPQUFPLGVBQU0sU0FBUyxFQUFFLE1BQU0sQ0FBQyxlQUFlLFlBQUcsV0FBVyxHQUFRLENBQUE7SUFDdEUsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFBO0FBQ2IsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBTb3VyY2VSZWZlcmVuY2UgYXMgU291cmNlUmVmZXJlbmNlTWVzc2FnZSB9IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB0eXBlIHsgRkMgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHN0eWxlcyBmcm9tICcuL1NvdXJjZVJlZmVyZW5jZS5tb2R1bGUuc2NzcydcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgc291cmNlUmVmZXJlbmNlOiBTb3VyY2VSZWZlcmVuY2VNZXNzYWdlXG59XG5cbmV4cG9ydCBjb25zdCBTb3VyY2VSZWZlcmVuY2U6IEZDPFByb3BzPiA9ICh7IHNvdXJjZVJlZmVyZW5jZSB9KSA9PiB7XG4gIGlmIChzb3VyY2VSZWZlcmVuY2UudXJpKSB7XG4gICAgbGV0IHN0cmluZ2lmaWVkID0gc291cmNlUmVmZXJlbmNlLnVyaVxuICAgIGlmIChzb3VyY2VSZWZlcmVuY2UubG9jYXRpb24pIHtcbiAgICAgIHN0cmluZ2lmaWVkICs9IGA6JHtzb3VyY2VSZWZlcmVuY2UubG9jYXRpb24ubGluZX1gXG4gICAgfVxuICAgIHJldHVybiA8Y29kZSBjbGFzc05hbWU9e3N0eWxlcy5zb3VyY2VSZWZlcmVuY2V9PntzdHJpbmdpZmllZH08L2NvZGU+XG4gIH1cbiAgcmV0dXJuIG51bGxcbn1cbiJdfQ==
@@ -5,4 +5,3 @@ interface Props {
5
5
  }
6
6
  export declare const TestCaseOutcome: FC<Props>;
7
7
  export {};
8
- //# sourceMappingURL=TestCaseOutcome.d.ts.map
@@ -0,0 +1,32 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { TestStepResultStatus, } from '@cucumber/messages';
3
+ import { faCirclePlus } from '@fortawesome/free-solid-svg-icons';
4
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
5
+ import { useState } from 'react';
6
+ import { useQueries } from '../../hooks/index.js';
7
+ import styles from './TestCaseOutcome.module.scss';
8
+ import { TestStepOutcome } from './TestStepOutcome.js';
9
+ export const TestCaseOutcome = ({ testCaseStarted }) => {
10
+ const [showAllSteps, setShowAllSteps] = useState(false);
11
+ const { cucumberQuery } = useQueries();
12
+ const allSteps = cucumberQuery.findTestStepFinishedAndTestStepBy(testCaseStarted);
13
+ const filteredSteps = showAllSteps ? allSteps : filterSteps(allSteps);
14
+ const hiddenSteps = allSteps.length - filteredSteps.length;
15
+ return (_jsxs("article", { className: styles.container, children: [_jsx("ol", { className: styles.steps, children: filteredSteps.map(([testStepFinished, testStep]) => {
16
+ return (_jsx(TestStepOutcome, { testStep: testStep, testStepFinished: testStepFinished }, testStep.id));
17
+ }) }), hiddenSteps > 0 && (_jsxs("button", { type: "button", className: styles.expandButton, onClick: () => setShowAllSteps(true), children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", icon: faCirclePlus }), hiddenSteps, " hooks"] }))] }));
18
+ };
19
+ function filterSteps(allSteps) {
20
+ const statuses = allSteps.map(([testStepFinished]) => testStepFinished.testStepResult.status);
21
+ return allSteps.filter(([testStepFinished, testStep], index) => {
22
+ if (!testStep.hookId) {
23
+ return true;
24
+ }
25
+ if (testStepFinished.testStepResult.status === TestStepResultStatus.SKIPPED) {
26
+ const previousStatus = statuses[index - 1] ?? TestStepResultStatus.PASSED;
27
+ return previousStatus === TestStepResultStatus.PASSED;
28
+ }
29
+ return testStepFinished.testStepResult.status !== TestStepResultStatus.PASSED;
30
+ });
31
+ }
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVzdENhc2VPdXRjb21lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVzdWx0cy9UZXN0Q2FzZU91dGNvbWUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBSUwsb0JBQW9CLEdBQ3JCLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUNoRSxPQUFPLEVBQVcsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBRXpDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNqRCxPQUFPLE1BQU0sTUFBTSwrQkFBK0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFNdEQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFjLENBQUMsRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFO0lBQ2hFLE1BQU0sQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3ZELE1BQU0sRUFBRSxhQUFhLEVBQUUsR0FBRyxVQUFVLEVBQUUsQ0FBQTtJQUN0QyxNQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsaUNBQWlDLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDakYsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNyRSxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUE7SUFDMUQsT0FBTyxDQUNMLG1CQUFTLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUyxhQUNsQyxhQUFJLFNBQVMsRUFBRSxNQUFNLENBQUMsS0FBSyxZQUN4QixhQUFhLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFO29CQUNsRCxPQUFPLENBQ0wsS0FBQyxlQUFlLElBRWQsUUFBUSxFQUFFLFFBQVEsRUFDbEIsZ0JBQWdCLEVBQUUsZ0JBQWdCLElBRjdCLFFBQVEsQ0FBQyxFQUFFLENBR2hCLENBQ0gsQ0FBQTtnQkFDSCxDQUFDLENBQUMsR0FDQyxFQUNKLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FDbEIsa0JBQVEsSUFBSSxFQUFDLFFBQVEsRUFBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxhQUN4RixLQUFDLGVBQWUsbUJBQWEsTUFBTSxFQUFDLElBQUksRUFBRSxZQUFZLEdBQUksRUFDekQsV0FBVyxjQUNMLENBQ1YsSUFDTyxDQUNYLENBQUE7QUFDSCxDQUFDLENBQUE7QUFFRCxTQUFTLFdBQVcsQ0FBQyxRQUFxRDtJQUN4RSxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDN0YsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsRUFBRSxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUM3RCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3JCLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUNELElBQUksZ0JBQWdCLENBQUMsY0FBYyxDQUFDLE1BQU0sS0FBSyxvQkFBb0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM1RSxNQUFNLGNBQWMsR0FBRyxRQUFRLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLG9CQUFvQixDQUFDLE1BQU0sQ0FBQTtZQUN6RSxPQUFPLGNBQWMsS0FBSyxvQkFBb0IsQ0FBQyxNQUFNLENBQUE7UUFDdkQsQ0FBQztRQUNELE9BQU8sZ0JBQWdCLENBQUMsY0FBYyxDQUFDLE1BQU0sS0FBSyxvQkFBb0IsQ0FBQyxNQUFNLENBQUE7SUFDL0UsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBUZXN0Q2FzZVN0YXJ0ZWQsXG4gIHR5cGUgVGVzdFN0ZXAsXG4gIHR5cGUgVGVzdFN0ZXBGaW5pc2hlZCxcbiAgVGVzdFN0ZXBSZXN1bHRTdGF0dXMsXG59IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB7IGZhQ2lyY2xlUGx1cyB9IGZyb20gJ0Bmb3J0YXdlc29tZS9mcmVlLXNvbGlkLXN2Zy1pY29ucydcbmltcG9ydCB7IEZvbnRBd2Vzb21lSWNvbiB9IGZyb20gJ0Bmb3J0YXdlc29tZS9yZWFjdC1mb250YXdlc29tZSdcbmltcG9ydCB7IHR5cGUgRkMsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7IHVzZVF1ZXJpZXMgfSBmcm9tICcuLi8uLi9ob29rcy9pbmRleC5qcydcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9UZXN0Q2FzZU91dGNvbWUubW9kdWxlLnNjc3MnXG5pbXBvcnQgeyBUZXN0U3RlcE91dGNvbWUgfSBmcm9tICcuL1Rlc3RTdGVwT3V0Y29tZS5qcydcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgdGVzdENhc2VTdGFydGVkOiBUZXN0Q2FzZVN0YXJ0ZWRcbn1cblxuZXhwb3J0IGNvbnN0IFRlc3RDYXNlT3V0Y29tZTogRkM8UHJvcHM+ID0gKHsgdGVzdENhc2VTdGFydGVkIH0pID0+IHtcbiAgY29uc3QgW3Nob3dBbGxTdGVwcywgc2V0U2hvd0FsbFN0ZXBzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCB7IGN1Y3VtYmVyUXVlcnkgfSA9IHVzZVF1ZXJpZXMoKVxuICBjb25zdCBhbGxTdGVwcyA9IGN1Y3VtYmVyUXVlcnkuZmluZFRlc3RTdGVwRmluaXNoZWRBbmRUZXN0U3RlcEJ5KHRlc3RDYXNlU3RhcnRlZClcbiAgY29uc3QgZmlsdGVyZWRTdGVwcyA9IHNob3dBbGxTdGVwcyA/IGFsbFN0ZXBzIDogZmlsdGVyU3RlcHMoYWxsU3RlcHMpXG4gIGNvbnN0IGhpZGRlblN0ZXBzID0gYWxsU3RlcHMubGVuZ3RoIC0gZmlsdGVyZWRTdGVwcy5sZW5ndGhcbiAgcmV0dXJuIChcbiAgICA8YXJ0aWNsZSBjbGFzc05hbWU9e3N0eWxlcy5jb250YWluZXJ9PlxuICAgICAgPG9sIGNsYXNzTmFtZT17c3R5bGVzLnN0ZXBzfT5cbiAgICAgICAge2ZpbHRlcmVkU3RlcHMubWFwKChbdGVzdFN0ZXBGaW5pc2hlZCwgdGVzdFN0ZXBdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxUZXN0U3RlcE91dGNvbWVcbiAgICAgICAgICAgICAga2V5PXt0ZXN0U3RlcC5pZH1cbiAgICAgICAgICAgICAgdGVzdFN0ZXA9e3Rlc3RTdGVwfVxuICAgICAgICAgICAgICB0ZXN0U3RlcEZpbmlzaGVkPXt0ZXN0U3RlcEZpbmlzaGVkfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApXG4gICAgICAgIH0pfVxuICAgICAgPC9vbD5cbiAgICAgIHtoaWRkZW5TdGVwcyA+IDAgJiYgKFxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzc05hbWU9e3N0eWxlcy5leHBhbmRCdXR0b259IG9uQ2xpY2s9eygpID0+IHNldFNob3dBbGxTdGVwcyh0cnVlKX0+XG4gICAgICAgICAgPEZvbnRBd2Vzb21lSWNvbiBhcmlhLWhpZGRlbj1cInRydWVcIiBpY29uPXtmYUNpcmNsZVBsdXN9IC8+XG4gICAgICAgICAge2hpZGRlblN0ZXBzfSBob29rc1xuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICl9XG4gICAgPC9hcnRpY2xlPlxuICApXG59XG5cbmZ1bmN0aW9uIGZpbHRlclN0ZXBzKGFsbFN0ZXBzOiBSZWFkb25seUFycmF5PFtUZXN0U3RlcEZpbmlzaGVkLCBUZXN0U3RlcF0+KSB7XG4gIGNvbnN0IHN0YXR1c2VzID0gYWxsU3RlcHMubWFwKChbdGVzdFN0ZXBGaW5pc2hlZF0pID0+IHRlc3RTdGVwRmluaXNoZWQudGVzdFN0ZXBSZXN1bHQuc3RhdHVzKVxuICByZXR1cm4gYWxsU3RlcHMuZmlsdGVyKChbdGVzdFN0ZXBGaW5pc2hlZCwgdGVzdFN0ZXBdLCBpbmRleCkgPT4ge1xuICAgIGlmICghdGVzdFN0ZXAuaG9va0lkKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cbiAgICBpZiAodGVzdFN0ZXBGaW5pc2hlZC50ZXN0U3RlcFJlc3VsdC5zdGF0dXMgPT09IFRlc3RTdGVwUmVzdWx0U3RhdHVzLlNLSVBQRUQpIHtcbiAgICAgIGNvbnN0IHByZXZpb3VzU3RhdHVzID0gc3RhdHVzZXNbaW5kZXggLSAxXSA/PyBUZXN0U3RlcFJlc3VsdFN0YXR1cy5QQVNTRURcbiAgICAgIHJldHVybiBwcmV2aW91c1N0YXR1cyA9PT0gVGVzdFN0ZXBSZXN1bHRTdGF0dXMuUEFTU0VEXG4gICAgfVxuICAgIHJldHVybiB0ZXN0U3RlcEZpbmlzaGVkLnRlc3RTdGVwUmVzdWx0LnN0YXR1cyAhPT0gVGVzdFN0ZXBSZXN1bHRTdGF0dXMuUEFTU0VEXG4gIH0pXG59XG4iXX0=
@@ -6,4 +6,3 @@ interface Props {
6
6
  }
7
7
  export declare const TestRunHookOutcome: FC<Props>;
8
8
  export {};
9
- //# sourceMappingURL=TestRunHookOutcome.d.ts.map
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { HookType, TestStepResultStatus, } from '@cucumber/messages';
3
+ import { StatusIcon } from '../gherkin/index.js';
4
+ import { FailedResult } from './FailedResult.js';
5
+ import styles from './TestRunHookOutcome.module.scss';
6
+ import { TestStepAttachments } from './TestStepAttachments.js';
7
+ import { TestStepDuration } from './TestStepDuration.js';
8
+ export const TestRunHookOutcome = ({ hook, testRunHookFinished }) => {
9
+ return (_jsxs("li", { "data-status": testRunHookFinished.result.status, children: [_jsxs("div", { className: styles.header, children: [_jsx("div", { className: styles.status, children: _jsx(StatusIcon, { status: testRunHookFinished.result.status }) }), _jsxs("div", { className: styles.title, children: [_jsx("h3", { className: styles.name, children: hook.name ?? (hook.type === HookType.BEFORE_TEST_RUN ? 'BeforeAll' : 'AfterAll') }), _jsx(TestStepDuration, { duration: testRunHookFinished.result.duration })] })] }), _jsxs("div", { className: styles.content, children: [testRunHookFinished.result.status === TestStepResultStatus.FAILED && (_jsx(FailedResult, { result: testRunHookFinished.result })), _jsx(TestStepAttachments, { testStepOrHookFinished: testRunHookFinished })] })] }));
10
+ };
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVzdFJ1bkhvb2tPdXRjb21lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVzdWx0cy9UZXN0UnVuSG9va091dGNvbWUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUwsUUFBUSxFQUVSLG9CQUFvQixHQUNyQixNQUFNLG9CQUFvQixDQUFBO0FBRzNCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDaEQsT0FBTyxNQUFNLE1BQU0sa0NBQWtDLENBQUE7QUFDckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDOUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFPeEQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRSxFQUFFLEVBQUU7SUFDN0UsT0FBTyxDQUNMLDZCQUFpQixtQkFBbUIsQ0FBQyxNQUFNLENBQUMsTUFBTSxhQUNoRCxlQUFLLFNBQVMsRUFBRSxNQUFNLENBQUMsTUFBTSxhQUMzQixjQUFLLFNBQVMsRUFBRSxNQUFNLENBQUMsTUFBTSxZQUMzQixLQUFDLFVBQVUsSUFBQyxNQUFNLEVBQUUsbUJBQW1CLENBQUMsTUFBTSxDQUFDLE1BQU0sR0FBSSxHQUNyRCxFQUNOLGVBQUssU0FBUyxFQUFFLE1BQU0sQ0FBQyxLQUFLLGFBQzFCLGFBQUksU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLFlBQ3ZCLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQzlFLEVBQ0wsS0FBQyxnQkFBZ0IsSUFBQyxRQUFRLEVBQUUsbUJBQW1CLENBQUMsTUFBTSxDQUFDLFFBQVEsR0FBSSxJQUMvRCxJQUNGLEVBQ04sZUFBSyxTQUFTLEVBQUUsTUFBTSxDQUFDLE9BQU8sYUFDM0IsbUJBQW1CLENBQUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxvQkFBb0IsQ0FBQyxNQUFNLElBQUksQ0FDcEUsS0FBQyxZQUFZLElBQUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLE1BQU0sR0FBSSxDQUNyRCxFQUNELEtBQUMsbUJBQW1CLElBQUMsc0JBQXNCLEVBQUUsbUJBQW1CLEdBQUksSUFDaEUsSUFDSCxDQUNOLENBQUE7QUFDSCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0eXBlIEhvb2ssXG4gIEhvb2tUeXBlLFxuICB0eXBlIFRlc3RSdW5Ib29rRmluaXNoZWQsXG4gIFRlc3RTdGVwUmVzdWx0U3RhdHVzLFxufSBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7IFN0YXR1c0ljb24gfSBmcm9tICcuLi9naGVya2luL2luZGV4LmpzJ1xuaW1wb3J0IHsgRmFpbGVkUmVzdWx0IH0gZnJvbSAnLi9GYWlsZWRSZXN1bHQuanMnXG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vVGVzdFJ1bkhvb2tPdXRjb21lLm1vZHVsZS5zY3NzJ1xuaW1wb3J0IHsgVGVzdFN0ZXBBdHRhY2htZW50cyB9IGZyb20gJy4vVGVzdFN0ZXBBdHRhY2htZW50cy5qcydcbmltcG9ydCB7IFRlc3RTdGVwRHVyYXRpb24gfSBmcm9tICcuL1Rlc3RTdGVwRHVyYXRpb24uanMnXG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIGhvb2s6IEhvb2tcbiAgdGVzdFJ1bkhvb2tGaW5pc2hlZDogVGVzdFJ1bkhvb2tGaW5pc2hlZFxufVxuXG5leHBvcnQgY29uc3QgVGVzdFJ1bkhvb2tPdXRjb21lOiBGQzxQcm9wcz4gPSAoeyBob29rLCB0ZXN0UnVuSG9va0ZpbmlzaGVkIH0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8bGkgZGF0YS1zdGF0dXM9e3Rlc3RSdW5Ib29rRmluaXNoZWQucmVzdWx0LnN0YXR1c30+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmhlYWRlcn0+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuc3RhdHVzfT5cbiAgICAgICAgICA8U3RhdHVzSWNvbiBzdGF0dXM9e3Rlc3RSdW5Ib29rRmluaXNoZWQucmVzdWx0LnN0YXR1c30gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMudGl0bGV9PlxuICAgICAgICAgIDxoMyBjbGFzc05hbWU9e3N0eWxlcy5uYW1lfT5cbiAgICAgICAgICAgIHtob29rLm5hbWUgPz8gKGhvb2sudHlwZSA9PT0gSG9va1R5cGUuQkVGT1JFX1RFU1RfUlVOID8gJ0JlZm9yZUFsbCcgOiAnQWZ0ZXJBbGwnKX1cbiAgICAgICAgICA8L2gzPlxuICAgICAgICAgIDxUZXN0U3RlcER1cmF0aW9uIGR1cmF0aW9uPXt0ZXN0UnVuSG9va0ZpbmlzaGVkLnJlc3VsdC5kdXJhdGlvbn0gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuY29udGVudH0+XG4gICAgICAgIHt0ZXN0UnVuSG9va0ZpbmlzaGVkLnJlc3VsdC5zdGF0dXMgPT09IFRlc3RTdGVwUmVzdWx0U3RhdHVzLkZBSUxFRCAmJiAoXG4gICAgICAgICAgPEZhaWxlZFJlc3VsdCByZXN1bHQ9e3Rlc3RSdW5Ib29rRmluaXNoZWQucmVzdWx0fSAvPlxuICAgICAgICApfVxuICAgICAgICA8VGVzdFN0ZXBBdHRhY2htZW50cyB0ZXN0U3RlcE9ySG9va0ZpbmlzaGVkPXt0ZXN0UnVuSG9va0ZpbmlzaGVkfSAvPlxuICAgICAgPC9kaXY+XG4gICAgPC9saT5cbiAgKVxufVxuIl19
@@ -5,4 +5,3 @@ interface Props {
5
5
  }
6
6
  export declare const TestStepAttachments: FC<Props>;
7
7
  export {};
8
- //# sourceMappingURL=TestStepAttachments.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useQueries } from '../../hooks/index.js';
3
+ import { Attachment } from '../gherkin/index.js';
4
+ import styles from './TestStepAttachments.module.scss';
5
+ export const TestStepAttachments = ({ testStepOrHookFinished }) => {
6
+ const { cucumberQuery } = useQueries();
7
+ const attachments = cucumberQuery.findAttachmentsBy(testStepOrHookFinished);
8
+ return (_jsx("ol", { className: styles.attachments, children: attachments.map((attachment, index) => {
9
+ return (_jsx("li", { children: _jsx(Attachment, { attachment: attachment }) }, index));
10
+ }) }));
11
+ };
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVzdFN0ZXBBdHRhY2htZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jlc3VsdHMvVGVzdFN0ZXBBdHRhY2htZW50cy50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUdBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDaEQsT0FBTyxNQUFNLE1BQU0sbUNBQW1DLENBQUE7QUFNdEQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQWMsQ0FBQyxFQUFFLHNCQUFzQixFQUFFLEVBQUUsRUFBRTtJQUMzRSxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsVUFBVSxFQUFFLENBQUE7SUFDdEMsTUFBTSxXQUFXLEdBQUcsYUFBYSxDQUFDLGlCQUFpQixDQUFDLHNCQUFzQixDQUFDLENBQUE7SUFDM0UsT0FBTyxDQUNMLGFBQUksU0FBUyxFQUFFLE1BQU0sQ0FBQyxXQUFXLFlBQzlCLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDckMsT0FBTyxDQUNMLHVCQUNFLEtBQUMsVUFBVSxJQUFDLFVBQVUsRUFBRSxVQUFVLEdBQUksSUFEL0IsS0FBSyxDQUVULENBQ04sQ0FBQTtRQUNILENBQUMsQ0FBQyxHQUNDLENBQ04sQ0FBQTtBQUNILENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVGVzdFJ1bkhvb2tGaW5pc2hlZCwgVGVzdFN0ZXBGaW5pc2hlZCB9IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB0eXBlIHsgRkMgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgdXNlUXVlcmllcyB9IGZyb20gJy4uLy4uL2hvb2tzL2luZGV4LmpzJ1xuaW1wb3J0IHsgQXR0YWNobWVudCB9IGZyb20gJy4uL2doZXJraW4vaW5kZXguanMnXG5pbXBvcnQgc3R5bGVzIGZyb20gJy4vVGVzdFN0ZXBBdHRhY2htZW50cy5tb2R1bGUuc2NzcydcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgdGVzdFN0ZXBPckhvb2tGaW5pc2hlZDogVGVzdFN0ZXBGaW5pc2hlZCB8IFRlc3RSdW5Ib29rRmluaXNoZWRcbn1cblxuZXhwb3J0IGNvbnN0IFRlc3RTdGVwQXR0YWNobWVudHM6IEZDPFByb3BzPiA9ICh7IHRlc3RTdGVwT3JIb29rRmluaXNoZWQgfSkgPT4ge1xuICBjb25zdCB7IGN1Y3VtYmVyUXVlcnkgfSA9IHVzZVF1ZXJpZXMoKVxuICBjb25zdCBhdHRhY2htZW50cyA9IGN1Y3VtYmVyUXVlcnkuZmluZEF0dGFjaG1lbnRzQnkodGVzdFN0ZXBPckhvb2tGaW5pc2hlZClcbiAgcmV0dXJuIChcbiAgICA8b2wgY2xhc3NOYW1lPXtzdHlsZXMuYXR0YWNobWVudHN9PlxuICAgICAge2F0dGFjaG1lbnRzLm1hcCgoYXR0YWNobWVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8bGkga2V5PXtpbmRleH0+XG4gICAgICAgICAgICA8QXR0YWNobWVudCBhdHRhY2htZW50PXthdHRhY2htZW50fSAvPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIClcbiAgICAgIH0pfVxuICAgIDwvb2w+XG4gIClcbn1cbiJdfQ==
@@ -3,4 +3,3 @@ import type { FC } from 'react';
3
3
  export declare const TestStepDuration: FC<{
4
4
  duration: Duration;
5
5
  }>;
6
- //# sourceMappingURL=TestStepDuration.d.ts.map
@@ -0,0 +1,19 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { TimeConversion } from '@cucumber/messages';
3
+ import styles from './TestStepDuration.module.scss';
4
+ const subSecondFormat = new Intl.NumberFormat(undefined, {
5
+ maximumFractionDigits: 0,
6
+ });
7
+ const secondPlusFormat = new Intl.NumberFormat(undefined, {
8
+ maximumFractionDigits: 3,
9
+ });
10
+ export const TestStepDuration = ({ duration }) => {
11
+ const millis = TimeConversion.durationToMilliseconds(duration);
12
+ if (millis < 1) {
13
+ return null;
14
+ }
15
+ return (_jsx("span", { className: styles.duration, children: millis < 1000
16
+ ? `${subSecondFormat.format(millis)}ms`
17
+ : `${secondPlusFormat.format(millis / 1000)}s` }));
18
+ };
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVzdFN0ZXBEdXJhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jlc3VsdHMvVGVzdFN0ZXBEdXJhdGlvbi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFHbEUsT0FBTyxNQUFNLE1BQU0sZ0NBQWdDLENBQUE7QUFFbkQsTUFBTSxlQUFlLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRTtJQUN2RCxxQkFBcUIsRUFBRSxDQUFDO0NBQ3pCLENBQUMsQ0FBQTtBQUVGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRTtJQUN4RCxxQkFBcUIsRUFBRSxDQUFDO0NBQ3pCLENBQUMsQ0FBQTtBQUVGLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUErQixDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTtJQUMzRSxNQUFNLE1BQU0sR0FBRyxjQUFjLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDOUQsSUFBSSxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDZixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFDRCxPQUFPLENBQ0wsZUFBTSxTQUFTLEVBQUUsTUFBTSxDQUFDLFFBQVEsWUFDN0IsTUFBTSxHQUFHLElBQUk7WUFDWixDQUFDLENBQUMsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJO1lBQ3ZDLENBQUMsQ0FBQyxHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FDM0MsQ0FDUixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBEdXJhdGlvbiwgVGltZUNvbnZlcnNpb24gfSBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9UZXN0U3RlcER1cmF0aW9uLm1vZHVsZS5zY3NzJ1xuXG5jb25zdCBzdWJTZWNvbmRGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQodW5kZWZpbmVkLCB7XG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0czogMCxcbn0pXG5cbmNvbnN0IHNlY29uZFBsdXNGb3JtYXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQodW5kZWZpbmVkLCB7XG4gIG1heGltdW1GcmFjdGlvbkRpZ2l0czogMyxcbn0pXG5cbmV4cG9ydCBjb25zdCBUZXN0U3RlcER1cmF0aW9uOiBGQzx7IGR1cmF0aW9uOiBEdXJhdGlvbiB9PiA9ICh7IGR1cmF0aW9uIH0pID0+IHtcbiAgY29uc3QgbWlsbGlzID0gVGltZUNvbnZlcnNpb24uZHVyYXRpb25Ub01pbGxpc2Vjb25kcyhkdXJhdGlvbilcbiAgaWYgKG1pbGxpcyA8IDEpIHtcbiAgICByZXR1cm4gbnVsbFxuICB9XG4gIHJldHVybiAoXG4gICAgPHNwYW4gY2xhc3NOYW1lPXtzdHlsZXMuZHVyYXRpb259PlxuICAgICAge21pbGxpcyA8IDEwMDBcbiAgICAgICAgPyBgJHtzdWJTZWNvbmRGb3JtYXQuZm9ybWF0KG1pbGxpcyl9bXNgXG4gICAgICAgIDogYCR7c2Vjb25kUGx1c0Zvcm1hdC5mb3JtYXQobWlsbGlzIC8gMTAwMCl9c2B9XG4gICAgPC9zcGFuPlxuICApXG59XG4iXX0=
@@ -6,4 +6,3 @@ interface Props {
6
6
  }
7
7
  export declare const TestStepOutcome: FC<Props>;
8
8
  export {};
9
- //# sourceMappingURL=TestStepOutcome.d.ts.map
@@ -0,0 +1,43 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { TestStepResultStatus, } from '@cucumber/messages';
3
+ import { useQueries } from '../../hooks/index.js';
4
+ import { composeHookStepTitle } from '../gherkin/composeHookStepTitle.js';
5
+ import { composePickleStepTitle } from '../gherkin/composePickleStepTitle.js';
6
+ import { DataTable, DocString, Keyword, Parameter, StatusIcon } from '../gherkin/index.js';
7
+ import { AmbiguousResult } from './AmbiguousResult.js';
8
+ import { FailedResult } from './FailedResult.js';
9
+ import { PendingResult } from './PendingResult.js';
10
+ import { SkippedResult } from './SkippedResult.js';
11
+ import { TestStepAttachments } from './TestStepAttachments.js';
12
+ import { TestStepDuration } from './TestStepDuration.js';
13
+ import styles from './TestStepOutcome.module.scss';
14
+ import { UndefinedResult } from './UndefinedResult.js';
15
+ export const TestStepOutcome = ({ testStep, testStepFinished }) => {
16
+ return (_jsxs("li", { "data-status": testStepFinished.testStepResult.status, children: [_jsxs("div", { className: styles.header, children: [_jsx("div", { className: styles.status, children: _jsx(StatusIcon, { status: testStepFinished.testStepResult.status }) }), _jsxs("div", { className: styles.title, children: [_jsxs("h3", { className: styles.name, children: [testStep.hookId && _jsx(HookStepTitle, { testStep: testStep }), testStep.pickleStepId && _jsx(PickleStepTitle, { testStep: testStep })] }), _jsx(TestStepDuration, { duration: testStepFinished.testStepResult.duration })] })] }), _jsxs("div", { className: styles.content, children: [testStep.pickleStepId && _jsx(PickleStepArgument, { testStep: testStep }), testStepFinished.testStepResult.status === TestStepResultStatus.AMBIGUOUS && (_jsx(AmbiguousResult, { testStep: testStep })), testStepFinished.testStepResult.status === TestStepResultStatus.FAILED && (_jsx(FailedResult, { result: testStepFinished.testStepResult })), testStepFinished.testStepResult.status === TestStepResultStatus.PENDING && (_jsx(PendingResult, { result: testStepFinished.testStepResult })), testStepFinished.testStepResult.status === TestStepResultStatus.SKIPPED && (_jsx(SkippedResult, { result: testStepFinished.testStepResult })), testStepFinished.testStepResult.status === TestStepResultStatus.UNDEFINED && (_jsx(UndefinedResult, { testStep: testStep })), _jsx(TestStepAttachments, { testStepOrHookFinished: testStepFinished })] })] }));
17
+ };
18
+ const HookStepTitle = ({ testStep }) => {
19
+ const { cucumberQuery } = useQueries();
20
+ const hook = cucumberQuery.findHookBy(testStep);
21
+ return _jsx(_Fragment, { children: composeHookStepTitle(hook) });
22
+ };
23
+ const PickleStepTitle = ({ testStep }) => {
24
+ const { cucumberQuery } = useQueries();
25
+ const pickleStep = cucumberQuery.findPickleStepBy(testStep);
26
+ const step = cucumberQuery.findStepBy(pickleStep);
27
+ return (_jsxs(_Fragment, { children: [_jsx(Keyword, { children: step?.keyword?.trim() }), composePickleStepTitle(pickleStep.text, testStep.stepMatchArgumentsLists).map((fragment, index) => {
28
+ if (fragment.parameterTypeName) {
29
+ return (_jsx(Parameter, { value: fragment.value, parameterTypeName: fragment.parameterTypeName, children: fragment.value }, index));
30
+ }
31
+ return _jsx("span", { children: fragment.value }, index);
32
+ })] }));
33
+ };
34
+ const PickleStepArgument = ({ testStep }) => {
35
+ const { cucumberQuery } = useQueries();
36
+ const pickleStep = cucumberQuery.findPickleStepBy(testStep);
37
+ const { dataTable, docString } = pickleStep.argument ?? {};
38
+ const stepArguments = [dataTable, docString]
39
+ .filter((stepArgument) => stepArgument !== undefined)
40
+ .sort((a, b) => (a.argumentIndex ?? Number.MAX_SAFE_INTEGER) - (b.argumentIndex ?? Number.MAX_SAFE_INTEGER));
41
+ return (_jsx(_Fragment, { children: stepArguments.map((stepArgument, index) => 'content' in stepArgument ? (_jsx(DocString, { docString: stepArgument }, index)) : (_jsx(DataTable, { dataTable: stepArgument }, index))) }));
42
+ };
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVzdFN0ZXBPdXRjb21lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVzdWx0cy9UZXN0U3RlcE91dGNvbWUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBSUwsb0JBQW9CLEdBQ3JCLE1BQU0sb0JBQW9CLENBQUE7QUFHM0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFBO0FBQ3pFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQzdFLE9BQU8sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3RELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQTtBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFBO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQ3hELE9BQU8sTUFBTSxNQUFNLCtCQUErQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQU90RCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLEVBQUU7SUFDM0UsT0FBTyxDQUNMLDZCQUFpQixnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsTUFBTSxhQUNyRCxlQUFLLFNBQVMsRUFBRSxNQUFNLENBQUMs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QUFDLENBQ0YsS0FBQyxTQUFTLElBQWEsU0FBUyxFQUFFLFlBQVksSUFBOUIsS0FBSyxDQUE2QixDQUNuRCxDQUNGLEdBQ0EsQ0FDSixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgdHlwZSBQaWNrbGVTdGVwLFxuICB0eXBlIFRlc3RTdGVwLFxuICB0eXBlIFRlc3RTdGVwRmluaXNoZWQsXG4gIFRlc3RTdGVwUmVzdWx0U3RhdHVzLFxufSBmcm9tICdAY3VjdW1iZXIvbWVzc2FnZXMnXG5pbXBvcnQgdHlwZSB7IEZDIH0gZnJvbSAncmVhY3QnXG5cbmltcG9ydCB7IHVzZVF1ZXJpZXMgfSBmcm9tICcuLi8uLi9ob29rcy9pbmRleC5qcydcbmltcG9ydCB7IGNvbXBvc2VIb29rU3RlcFRpdGxlIH0gZnJvbSAnLi4vZ2hlcmtpbi9jb21wb3NlSG9va1N0ZXBUaXRsZS5qcydcbmltcG9ydCB7IGNvbXBvc2VQaWNrbGVTdGVwVGl0bGUgfSBmcm9tICcuLi9naGVya2luL2NvbXBvc2VQaWNrbGVTdGVwVGl0bGUuanMnXG5pbXBvcnQgeyBEYXRhVGFibGUsIERvY1N0cmluZywgS2V5d29yZCwgUGFyYW1ldGVyLCBTdGF0dXNJY29uIH0gZnJvbSAnLi4vZ2hlcmtpbi9pbmRleC5qcydcbmltcG9ydCB7IEFtYmlndW91c1Jlc3VsdCB9IGZyb20gJy4vQW1iaWd1b3VzUmVzdWx0LmpzJ1xuaW1wb3J0IHsgRmFpbGVkUmVzdWx0IH0gZnJvbSAnLi9GYWlsZWRSZXN1bHQuanMnXG5pbXBvcnQgeyBQZW5kaW5nUmVzdWx0IH0gZnJvbSAnLi9QZW5kaW5nUmVzdWx0LmpzJ1xuaW1wb3J0IHsgU2tpcHBlZFJlc3VsdCB9IGZyb20gJy4vU2tpcHBlZFJlc3VsdC5qcydcbmltcG9ydCB7IFRlc3RTdGVwQXR0YWNobWVudHMgfSBmcm9tICcuL1Rlc3RTdGVwQXR0YWNobWVudHMuanMnXG5pbXBvcnQgeyBUZXN0U3RlcER1cmF0aW9uIH0gZnJvbSAnLi9UZXN0U3RlcER1cmF0aW9uLmpzJ1xuaW1wb3J0IHN0eWxlcyBmcm9tICcuL1Rlc3RTdGVwT3V0Y29tZS5tb2R1bGUuc2NzcydcbmltcG9ydCB7IFVuZGVmaW5lZFJlc3VsdCB9IGZyb20gJy4vVW5kZWZpbmVkUmVzdWx0LmpzJ1xuXG5pbnRlcmZhY2UgUHJvcHMge1xuICB0ZXN0U3RlcDogVGVzdFN0ZXBcbiAgdGVzdFN0ZXBGaW5pc2hlZDogVGVzdFN0ZXBGaW5pc2hlZFxufVxuXG5leHBvcnQgY29uc3QgVGVzdFN0ZXBPdXRjb21lOiBGQzxQcm9wcz4gPSAoeyB0ZXN0U3RlcCwgdGVzdFN0ZXBGaW5pc2hlZCB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPGxpIGRhdGEtc3RhdHVzPXt0ZXN0U3RlcEZpbmlzaGVkLnRlc3RTdGVwUmVzdWx0LnN0YXR1c30+XG4gICAgICA8ZGl2IGNsYXNzTmFtZT17c3R5bGVzLmhlYWRlcn0+XG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuc3RhdHVzfT5cbiAgICAgICAgICA8U3RhdHVzSWNvbiBzdGF0dXM9e3Rlc3RTdGVwRmluaXNoZWQudGVzdFN0ZXBSZXN1bHQuc3RhdHVzfSAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9e3N0eWxlcy50aXRsZX0+XG4gICAgICAgICAgPGgzIGNsYXNzTmFtZT17c3R5bGVzLm5hbWV9PlxuICAgICAgICAgICAge3Rlc3RTdGVwLmhvb2tJZCAmJiA8SG9va1N0ZXBUaXRsZSB0ZXN0U3RlcD17dGVzdFN0ZXB9IC8+fVxuICAgICAgICAgICAge3Rlc3RTdGVwLnBpY2tsZVN0ZXBJZCAmJiA8UGlja2xlU3RlcFRpdGxlIHRlc3RTdGVwPXt0ZXN0U3RlcH0gLz59XG4gICAgICAgICAgPC9oMz5cbiAgICAgICAgICA8VGVzdFN0ZXBEdXJhdGlvbiBkdXJhdGlvbj17dGVzdFN0ZXBGaW5pc2hlZC50ZXN0U3RlcFJlc3VsdC5kdXJhdGlvbn0gLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPXtzdHlsZXMuY29udGVudH0+XG4gICAgICAgIHt0ZXN0U3RlcC5waWNrbGVTdGVwSWQgJiYgPFBpY2tsZVN0ZXBBcmd1bWVudCB0ZXN0U3RlcD17dGVzdFN0ZXB9IC8+fVxuICAgICAgICB7dGVzdFN0ZXBGaW5pc2hlZC50ZXN0U3RlcFJlc3VsdC5zdGF0dXMgPT09IFRlc3RTdGVwUmVzdWx0U3RhdHVzLkFNQklHVU9VUyAmJiAoXG4gICAgICAgICAgPEFtYmlndW91c1Jlc3VsdCB0ZXN0U3RlcD17dGVzdFN0ZXB9IC8+XG4gICAgICAgICl9XG4gICAgICAgIHt0ZXN0U3RlcEZpbmlzaGVkLnRlc3RTdGVwUmVzdWx0LnN0YXR1cyA9PT0gVGVzdFN0ZXBSZXN1bHRTdGF0dXMuRkFJTEVEICYmIChcbiAgICAgICAgICA8RmFpbGVkUmVzdWx0IHJlc3VsdD17dGVzdFN0ZXBGaW5pc2hlZC50ZXN0U3RlcFJlc3VsdH0gLz5cbiAgICAgICAgKX1cbiAgICAgICAge3Rlc3RTdGVwRmluaXNoZWQudGVzdFN0ZXBSZXN1bHQuc3RhdHVzID09PSBUZXN0U3RlcFJlc3VsdFN0YXR1cy5QRU5ESU5HICYmIChcbiAgICAgICAgICA8UGVuZGluZ1Jlc3VsdCByZXN1bHQ9e3Rlc3RTdGVwRmluaXNoZWQudGVzdFN0ZXBSZXN1bHR9IC8+XG4gICAgICAgICl9XG4gICAgICAgIHt0ZXN0U3RlcEZpbmlzaGVkLnRlc3RTdGVwUmVzdWx0LnN0YXR1cyA9PT0gVGVzdFN0ZXBSZXN1bHRTdGF0dXMuU0tJUFBFRCAmJiAoXG4gICAgICAgICAgPFNraXBwZWRSZXN1bHQgcmVzdWx0PXt0ZXN0U3RlcEZpbmlzaGVkLnRlc3RTdGVwUmVzdWx0fSAvPlxuICAgICAgICApfVxuICAgICAgICB7dGVzdFN0ZXBGaW5pc2hlZC50ZXN0U3RlcFJlc3VsdC5zdGF0dXMgPT09IFRlc3RTdGVwUmVzdWx0U3RhdHVzLlVOREVGSU5FRCAmJiAoXG4gICAgICAgICAgPFVuZGVmaW5lZFJlc3VsdCB0ZXN0U3RlcD17dGVzdFN0ZXB9IC8+XG4gICAgICAgICl9XG4gICAgICAgIDxUZXN0U3RlcEF0dGFjaG1lbnRzIHRlc3RTdGVwT3JIb29rRmluaXNoZWQ9e3Rlc3RTdGVwRmluaXNoZWR9IC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L2xpPlxuICApXG59XG5cbmNvbnN0IEhvb2tTdGVwVGl0bGU6IEZDPHsgdGVzdFN0ZXA6IFRlc3RTdGVwIH0+ID0gKHsgdGVzdFN0ZXAgfSkgPT4ge1xuICBjb25zdCB7IGN1Y3VtYmVyUXVlcnkgfSA9IHVzZVF1ZXJpZXMoKVxuICBjb25zdCBob29rID0gY3VjdW1iZXJRdWVyeS5maW5kSG9va0J5KHRlc3RTdGVwKVxuICByZXR1cm4gPD57Y29tcG9zZUhvb2tTdGVwVGl0bGUoaG9vayl9PC8+XG59XG5cbmNvbnN0IFBpY2tsZVN0ZXBUaXRsZTogRkM8eyB0ZXN0U3RlcDogVGVzdFN0ZXAgfT4gPSAoeyB0ZXN0U3RlcCB9KSA9PiB7XG4gIGNvbnN0IHsgY3VjdW1iZXJRdWVyeSB9ID0gdXNlUXVlcmllcygpXG4gIGNvbnN0IHBpY2tsZVN0ZXAgPSBjdWN1bWJlclF1ZXJ5LmZpbmRQaWNrbGVTdGVwQnkodGVzdFN0ZXApIGFzIFBpY2tsZVN0ZXBcbiAgY29uc3Qgc3RlcCA9IGN1Y3VtYmVyUXVlcnkuZmluZFN0ZXBCeShwaWNrbGVTdGVwKVxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8S2V5d29yZD57c3RlcD8ua2V5d29yZD8udHJpbSgpfTwvS2V5d29yZD5cbiAgICAgIHtjb21wb3NlUGlja2xlU3RlcFRpdGxlKHBpY2tsZVN0ZXAudGV4dCwgdGVzdFN0ZXAuc3RlcE1hdGNoQXJndW1lbnRzTGlzdHMpLm1hcChcbiAgICAgICAgKGZyYWdtZW50LCBpbmRleCkgPT4ge1xuICAgICAgICAgIGlmIChmcmFnbWVudC5wYXJhbWV0ZXJUeXBlTmFtZSkge1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgPFBhcmFtZXRlclxuICAgICAgICAgICAgICAgIGtleT17aW5kZXh9XG4gICAgICAgICAgICAgICAgdmFsdWU9e2ZyYWdtZW50LnZhbHVlfVxuICAgICAgICAgICAgICAgIHBhcmFtZXRlclR5cGVOYW1lPXtmcmFnbWVudC5wYXJhbWV0ZXJUeXBlTmFtZX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHtmcmFnbWVudC52YWx1ZX1cbiAgICAgICAgICAgICAgPC9QYXJhbWV0ZXI+XG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiA8c3BhbiBrZXk9e2luZGV4fT57ZnJhZ21lbnQudmFsdWV9PC9zcGFuPlxuICAgICAgICB9XG4gICAgICApfVxuICAgIDwvPlxuICApXG59XG5cbmNvbnN0IFBpY2tsZVN0ZXBBcmd1bWVudDogRkM8eyB0ZXN0U3RlcDogVGVzdFN0ZXAgfT4gPSAoeyB0ZXN0U3RlcCB9KSA9PiB7XG4gIGNvbnN0IHsgY3VjdW1iZXJRdWVyeSB9ID0gdXNlUXVlcmllcygpXG4gIGNvbnN0IHBpY2tsZVN0ZXAgPSBjdWN1bWJlclF1ZXJ5LmZpbmRQaWNrbGVTdGVwQnkodGVzdFN0ZXApIGFzIFBpY2tsZVN0ZXBcbiAgY29uc3QgeyBkYXRhVGFibGUsIGRvY1N0cmluZyB9ID0gcGlja2xlU3RlcC5hcmd1bWVudCA/PyB7fVxuICBjb25zdCBzdGVwQXJndW1lbnRzID0gW2RhdGFUYWJsZSwgZG9jU3RyaW5nXVxuICAgIC5maWx0ZXIoKHN0ZXBBcmd1bWVudCkgPT4gc3RlcEFyZ3VtZW50ICE9PSB1bmRlZmluZWQpXG4gICAgLnNvcnQoXG4gICAgICAoYSwgYikgPT5cbiAgICAgICAgKGEuYXJndW1lbnRJbmRleCA/PyBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUikgLSAoYi5hcmd1bWVudEluZGV4ID8/IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKVxuICAgIClcbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge3N0ZXBBcmd1bWVudHMubWFwKChzdGVwQXJndW1lbnQsIGluZGV4KSA9PlxuICAgICAgICAnY29udGVudCcgaW4gc3RlcEFyZ3VtZW50ID8gKFxuICAgICAgICAgIDxEb2NTdHJpbmcga2V5PXtpbmRleH0gZG9jU3RyaW5nPXtzdGVwQXJndW1lbnR9IC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPERhdGFUYWJsZSBrZXk9e2luZGV4fSBkYXRhVGFibGU9e3N0ZXBBcmd1bWVudH0gLz5cbiAgICAgICAgKVxuICAgICAgKX1cbiAgICA8Lz5cbiAgKVxufVxuIl19
@@ -5,4 +5,3 @@ interface Props {
5
5
  }
6
6
  export declare const UndefinedResult: FC<Props>;
7
7
  export {};
8
- //# sourceMappingURL=UndefinedResult.d.ts.map
@@ -0,0 +1,18 @@
1
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ensure } from '../../ensure.js';
3
+ import { useQueries } from '../../hooks/index.js';
4
+ import { ResultNote } from './ResultNote.js';
5
+ import styles from './UndefinedResult.module.scss';
6
+ export const UndefinedResult = ({ testStep }) => {
7
+ const { cucumberQuery } = useQueries();
8
+ const pickleStep = ensure(cucumberQuery.findPickleStepBy(testStep), 'Expected TestStep with UNDEFINED status to have a PickleStep');
9
+ const snippets = cucumberQuery
10
+ .findSuggestionsBy(pickleStep)
11
+ .flatMap((suggestion) => suggestion.snippets);
12
+ if (snippets.length === 0) {
13
+ return _jsx(ResultNote, { children: "No step definition found." });
14
+ }
15
+ const concatenatedCode = snippets.map((snippet) => snippet.code).join('\n\n');
16
+ return (_jsxs(_Fragment, { children: [_jsx(ResultNote, { children: "No step definition found. Implement with the snippet(s) below:" }), _jsx("pre", { className: styles.snippets, children: _jsx("code", { children: concatenatedCode }) })] }));
17
+ };
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVW5kZWZpbmVkUmVzdWx0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcmVzdWx0cy9VbmRlZmluZWRSZXN1bHQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFHQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM1QyxPQUFPLE1BQU0sTUFBTSwrQkFBK0IsQ0FBQTtBQU1sRCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7SUFDekQsTUFBTSxFQUFFLGFBQWEsRUFBRSxHQUFHLFVBQVUsRUFBRSxDQUFBO0lBQ3RDLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FDdkIsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxFQUN4Qyw4REFBOEQsQ0FDL0QsQ0FBQTtJQUNELE1BQU0sUUFBUSxHQUFHLGFBQWE7U0FDM0IsaUJBQWlCLENBQUMsVUFBVSxDQUFDO1NBQzdCLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQy9DLElBQUksUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMxQixPQUFPLEtBQUMsVUFBVSw0Q0FBdUMsQ0FBQTtJQUMzRCxDQUFDO0lBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQzdFLE9BQU8sQ0FDTCw4QkFDRSxLQUFDLFVBQVUsaUZBQTRFLEVBQ3ZGLGNBQUssU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLFlBQzdCLHlCQUFPLGdCQUFnQixHQUFRLEdBQzNCLElBQ0wsQ0FDSixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBUZXN0U3RlcCB9IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB0eXBlIHsgRkMgfSBmcm9tICdyZWFjdCdcblxuaW1wb3J0IHsgZW5zdXJlIH0gZnJvbSAnLi4vLi4vZW5zdXJlLmpzJ1xuaW1wb3J0IHsgdXNlUXVlcmllcyB9IGZyb20gJy4uLy4uL2hvb2tzL2luZGV4LmpzJ1xuaW1wb3J0IHsgUmVzdWx0Tm90ZSB9IGZyb20gJy4vUmVzdWx0Tm90ZS5qcydcbmltcG9ydCBzdHlsZXMgZnJvbSAnLi9VbmRlZmluZWRSZXN1bHQubW9kdWxlLnNjc3MnXG5cbmludGVyZmFjZSBQcm9wcyB7XG4gIHRlc3RTdGVwOiBUZXN0U3RlcFxufVxuXG5leHBvcnQgY29uc3QgVW5kZWZpbmVkUmVzdWx0OiBGQzxQcm9wcz4gPSAoeyB0ZXN0U3RlcCB9KSA9PiB7XG4gIGNvbnN0IHsgY3VjdW1iZXJRdWVyeSB9ID0gdXNlUXVlcmllcygpXG4gIGNvbnN0IHBpY2tsZVN0ZXAgPSBlbnN1cmUoXG4gICAgY3VjdW1iZXJRdWVyeS5maW5kUGlja2xlU3RlcEJ5KHRlc3RTdGVwKSxcbiAgICAnRXhwZWN0ZWQgVGVzdFN0ZXAgd2l0aCBVTkRFRklORUQgc3RhdHVzIHRvIGhhdmUgYSBQaWNrbGVTdGVwJ1xuICApXG4gIGNvbnN0IHNuaXBwZXRzID0gY3VjdW1iZXJRdWVyeVxuICAgIC5maW5kU3VnZ2VzdGlvbnNCeShwaWNrbGVTdGVwKVxuICAgIC5mbGF0TWFwKChzdWdnZXN0aW9uKSA9PiBzdWdnZXN0aW9uLnNuaXBwZXRzKVxuICBpZiAoc25pcHBldHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIDxSZXN1bHROb3RlPk5vIHN0ZXAgZGVmaW5pdGlvbiBmb3VuZC48L1Jlc3VsdE5vdGU+XG4gIH1cbiAgY29uc3QgY29uY2F0ZW5hdGVkQ29kZSA9IHNuaXBwZXRzLm1hcCgoc25pcHBldCkgPT4gc25pcHBldC5jb2RlKS5qb2luKCdcXG5cXG4nKVxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8UmVzdWx0Tm90ZT5ObyBzdGVwIGRlZmluaXRpb24gZm91bmQuIEltcGxlbWVudCB3aXRoIHRoZSBzbmlwcGV0KHMpIGJlbG93OjwvUmVzdWx0Tm90ZT5cbiAgICAgIDxwcmUgY2xhc3NOYW1lPXtzdHlsZXMuc25pcHBldHN9PlxuICAgICAgICA8Y29kZT57Y29uY2F0ZW5hdGVkQ29kZX08L2NvZGU+XG4gICAgICA8L3ByZT5cbiAgICA8Lz5cbiAgKVxufVxuIl19
@@ -1,3 +1,2 @@
1
1
  export * from './FailedResult.js';
2
2
  export * from './TestCaseOutcome.js';
3
- //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ export * from './FailedResult.js';
2
+ export * from './TestCaseOutcome.js';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9yZXN1bHRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYyxzQkFBc0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vRmFpbGVkUmVzdWx0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9UZXN0Q2FzZU91dGNvbWUuanMnXG4iXX0=
@@ -1,2 +1 @@
1
1
  export declare function ensure<T>(value: T | undefined, message: string): T;
2
- //# sourceMappingURL=helpers.d.ts.map
package/dist/ensure.js ADDED
@@ -0,0 +1,7 @@
1
+ export function ensure(value, message) {
2
+ if (!value) {
3
+ throw new Error(message);
4
+ }
5
+ return value;
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5zdXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2Vuc3VyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsTUFBTSxDQUFJLEtBQW9CLEVBQUUsT0FBZTtJQUM3RCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQzFCLENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQTtBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZW5zdXJlPFQ+KHZhbHVlOiBUIHwgdW5kZWZpbmVkLCBtZXNzYWdlOiBzdHJpbmcpOiBUIHtcbiAgaWYgKCF2YWx1ZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKVxuICB9XG4gIHJldHVybiB2YWx1ZVxufVxuIl19
@@ -1,2 +1 @@
1
1
  export declare function formatExecutionDistance(date: Date, referenceDate?: Date): string;
2
- //# sourceMappingURL=formatExecutionDistance.d.ts.map
@@ -0,0 +1,7 @@
1
+ import { formatDistanceStrict } from 'date-fns';
2
+ export function formatExecutionDistance(date, referenceDate = new Date()) {
3
+ return formatDistanceStrict(date, referenceDate, {
4
+ addSuffix: true,
5
+ });
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0RXhlY3V0aW9uRGlzdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZm9ybWF0RXhlY3V0aW9uRGlzdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFBO0FBRS9DLE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxJQUFVLEVBQUUsYUFBYSxHQUFTLElBQUksSUFBSSxFQUFFO0lBQ2xGLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtRQUMvQyxTQUFTLEVBQUUsSUFBSTtLQUNoQixDQUFDLENBQUE7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZm9ybWF0RGlzdGFuY2VTdHJpY3QgfSBmcm9tICdkYXRlLWZucydcblxuZXhwb3J0IGZ1bmN0aW9uIGZvcm1hdEV4ZWN1dGlvbkRpc3RhbmNlKGRhdGU6IERhdGUsIHJlZmVyZW5jZURhdGU6IERhdGUgPSBuZXcgRGF0ZSgpKSB7XG4gIHJldHVybiBmb3JtYXREaXN0YW5jZVN0cmljdChkYXRlLCByZWZlcmVuY2VEYXRlLCB7XG4gICAgYWRkU3VmZml4OiB0cnVlLFxuICB9KVxufVxuIl19
@@ -1,2 +1 @@
1
1
  export declare function formatExecutionDuration(startDate: Date, finishDate: Date): string;
2
- //# sourceMappingURL=formatExecutionDuration.d.ts.map
@@ -0,0 +1,12 @@
1
+ import { formatDuration, intervalToDuration } from 'date-fns';
2
+ export function formatExecutionDuration(startDate, finishDate) {
3
+ const inMilllis = finishDate.getTime() - startDate.getTime();
4
+ // if under 10s, use 0.01s precision, otherwise 1s is fine
5
+ if (inMilllis < 10000) {
6
+ return `${new Intl.NumberFormat(undefined, {
7
+ maximumFractionDigits: 2,
8
+ }).format(inMilllis / 1000)} seconds`;
9
+ }
10
+ return formatDuration(intervalToDuration({ start: startDate, end: finishDate }), {});
11
+ }
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0RXhlY3V0aW9uRHVyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZm9ybWF0RXhlY3V0aW9uRHVyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUU3RCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsU0FBZSxFQUFFLFVBQWdCO0lBQ3ZFLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUE7SUFDNUQsMERBQTBEO0lBQzFELElBQUksU0FBUyxHQUFHLEtBQUssRUFBRSxDQUFDO1FBQ3RCLE9BQU8sR0FBRyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFO1lBQ3pDLHFCQUFxQixFQUFFLENBQUM7U0FDekIsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQTtJQUN2QyxDQUFDO0lBQ0QsT0FBTyxjQUFjLENBQUMsa0JBQWtCLENBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ3RGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBmb3JtYXREdXJhdGlvbiwgaW50ZXJ2YWxUb0R1cmF0aW9uIH0gZnJvbSAnZGF0ZS1mbnMnXG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JtYXRFeGVjdXRpb25EdXJhdGlvbihzdGFydERhdGU6IERhdGUsIGZpbmlzaERhdGU6IERhdGUpIHtcbiAgY29uc3QgaW5NaWxsbGlzID0gZmluaXNoRGF0ZS5nZXRUaW1lKCkgLSBzdGFydERhdGUuZ2V0VGltZSgpXG4gIC8vIGlmIHVuZGVyIDEwcywgdXNlIDAuMDFzIHByZWNpc2lvbiwgb3RoZXJ3aXNlIDFzIGlzIGZpbmVcbiAgaWYgKGluTWlsbGxpcyA8IDEwMDAwKSB7XG4gICAgcmV0dXJuIGAke25ldyBJbnRsLk51bWJlckZvcm1hdCh1bmRlZmluZWQsIHtcbiAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogMixcbiAgICB9KS5mb3JtYXQoaW5NaWxsbGlzIC8gMTAwMCl9IHNlY29uZHNgXG4gIH1cbiAgcmV0dXJuIGZvcm1hdER1cmF0aW9uKGludGVydmFsVG9EdXJhdGlvbih7IHN0YXJ0OiBzdGFydERhdGUsIGVuZDogZmluaXNoRGF0ZSB9KSwge30pXG59XG4iXX0=
@@ -1,2 +1 @@
1
1
  export declare function formatPassedQuantity(passed: number, total: number): string;
2
- //# sourceMappingURL=formatPassedQuantity.d.ts.map
@@ -0,0 +1,4 @@
1
+ export function formatPassedQuantity(passed, total) {
2
+ return `(${passed} / ${total})`;
3
+ }
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0UGFzc2VkUXVhbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZm9ybWF0UGFzc2VkUXVhbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE1BQWMsRUFBRSxLQUFhO0lBQ2hFLE9BQU8sSUFBSSxNQUFNLE1BQU0sS0FBSyxHQUFHLENBQUE7QUFDakMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBmb3JtYXRQYXNzZWRRdWFudGl0eShwYXNzZWQ6IG51bWJlciwgdG90YWw6IG51bWJlcikge1xuICByZXR1cm4gYCgke3Bhc3NlZH0gLyAke3RvdGFsfSlgXG59XG4iXX0=
@@ -1,2 +1 @@
1
1
  export declare function formatStatusRate(passed: number, total: number): string;
2
- //# sourceMappingURL=formatStatusRate.d.ts.map
@@ -0,0 +1,9 @@
1
+ export function formatStatusRate(passed, total) {
2
+ const percentPassed = total > 0 ? passed / total : 0;
3
+ const roundedDown = Math.floor(percentPassed * 1000) / 1000;
4
+ return new Intl.NumberFormat(undefined, {
5
+ style: 'percent',
6
+ maximumFractionDigits: 1,
7
+ }).format(roundedDown);
8
+ }
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0U3RhdHVzUmF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9mb3JtYXRTdGF0dXNSYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxNQUFjLEVBQUUsS0FBYTtJQUM1RCxNQUFNLGFBQWEsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7SUFDcEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFBO0lBRTNELE9BQU8sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRTtRQUN0QyxLQUFLLEVBQUUsU0FBUztRQUNoQixxQkFBcUIsRUFBRSxDQUFDO0tBQ3pCLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7QUFDeEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBmb3JtYXRTdGF0dXNSYXRlKHBhc3NlZDogbnVtYmVyLCB0b3RhbDogbnVtYmVyKSB7XG4gIGNvbnN0IHBlcmNlbnRQYXNzZWQgPSB0b3RhbCA+IDAgPyBwYXNzZWQgLyB0b3RhbCA6IDBcbiAgY29uc3Qgcm91bmRlZERvd24gPSBNYXRoLmZsb29yKHBlcmNlbnRQYXNzZWQgKiAxMDAwKSAvIDEwMDBcblxuICByZXR1cm4gbmV3IEludGwuTnVtYmVyRm9ybWF0KHVuZGVmaW5lZCwge1xuICAgIHN0eWxlOiAncGVyY2VudCcsXG4gICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiAxLFxuICB9KS5mb3JtYXQocm91bmRlZERvd24pXG59XG4iXX0=
@@ -1,3 +1,2 @@
1
1
  export * from './useQueries.js';
2
2
  export * from './useSearch.js';
3
- //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ export * from './useQueries.js';
2
+ export * from './useSearch.js';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGdCQUFnQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi91c2VRdWVyaWVzLmpzJ1xuZXhwb3J0ICogZnJvbSAnLi91c2VTZWFyY2guanMnXG4iXX0=
@@ -1,6 +1,5 @@
1
- import { type GherkinDocument } from '@cucumber/messages';
1
+ import type { GherkinDocument } from '@cucumber/messages';
2
2
  export declare function useFilteredDocuments(): {
3
3
  results?: ReadonlyArray<GherkinDocument>;
4
4
  filtered: boolean;
5
5
  };
6
- //# sourceMappingURL=useFilteredDocuments.d.ts.map
@@ -0,0 +1,67 @@
1
+ import { useCallback, useEffect, useMemo, useState } from 'react';
2
+ import { deriveLineageConstraints, filterAndExpandTestCaseEvents, pruneGherkinDocuments, } from '../search/index.js';
3
+ import { useQueries } from './useQueries.js';
4
+ import { useSearch } from './useSearch.js';
5
+ import { useSearchResult } from './useSearchResult.js';
6
+ export function useFilteredDocuments() {
7
+ const { cucumberQuery, gherkinQuery } = useQueries();
8
+ const allTestCasesStarted = useMemo(() => cucumberQuery.findAllTestCaseStarted(), [cucumberQuery]);
9
+ const gherkinDocuments = useMemo(() => gherkinQuery.getGherkinDocuments(), [gherkinQuery]);
10
+ const { hideStatuses, tagExpression, unchanged } = useSearch();
11
+ const lineageConstraints = useMemo(() => deriveLineageConstraints(filterAndExpandTestCaseEvents(cucumberQuery, allTestCasesStarted, {
12
+ hideStatuses,
13
+ tagExpression,
14
+ })), [allTestCasesStarted, cucumberQuery, hideStatuses, tagExpression]);
15
+ const searchResult = useSearchResult();
16
+ const [results, setResults] = useState();
17
+ const setResultsSorting = useCallback((unsorted) => {
18
+ const sorted = [...unsorted];
19
+ sorted.sort((a, b) => comparePaths(a.uri || '', b.uri || ''));
20
+ setResults(sorted);
21
+ }, []);
22
+ useEffect(() => {
23
+ switch (searchResult.status) {
24
+ case 'WAITING':
25
+ // results are not ready yet - leave them as they are
26
+ return;
27
+ case 'NOOP':
28
+ case 'ERROR':
29
+ // no narrowing to apply
30
+ setResultsSorting(pruneGherkinDocuments(gherkinDocuments, lineageConstraints));
31
+ return;
32
+ case 'SUCCESS':
33
+ setResultsSorting(pruneGherkinDocuments(gherkinDocuments, lineageConstraints, searchResult.hits));
34
+ return;
35
+ }
36
+ }, [gherkinDocuments, lineageConstraints, searchResult, setResultsSorting]);
37
+ return {
38
+ results,
39
+ filtered: !unchanged,
40
+ };
41
+ }
42
+ // Helper function for sorting directories
43
+ function comparePaths(uriA, uriB) {
44
+ // Assumes that last part of every uri is a file
45
+ const partsA = uriA.split('/');
46
+ const partsB = uriB.split('/');
47
+ const minLength = Math.min(partsA.length, partsB.length);
48
+ for (let i = 0; i < minLength; i++) {
49
+ const partA = partsA[i];
50
+ const partB = partsB[i];
51
+ if (partA !== partB) {
52
+ const isALast = i === partsA.length - 1;
53
+ const isBLast = i === partsB.length - 1;
54
+ if (isALast && !isBLast) {
55
+ return 1; // A is file and B is directory -> B comes first
56
+ }
57
+ if (!isALast && isBLast) {
58
+ return -1; // A is directory and B is file -> A comes first
59
+ }
60
+ // Both are files or both are directories -> Alphabetical sorting
61
+ return partA.localeCompare(partB);
62
+ }
63
+ }
64
+ // If one path is prefix of other then shorter path comes first
65
+ return partsA.length - partsB.length;
66
+ }
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlRmlsdGVyZWREb2N1bWVudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlRmlsdGVyZWREb2N1bWVudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFpQixXQUFXLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUE7QUFDaEYsT0FBTyxFQUNMLHdCQUF3QixFQUN4Qiw2QkFBNkIsRUFDN0IscUJBQXFCLEdBQ3RCLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFdEQsTUFBTSxVQUFVLG9CQUFvQjtJQUlsQyxNQUFNLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxHQUFHLFVBQVUsRUFBRSxDQUFBO0lBQ3BELE1BQU0sbUJBQW1CLEdBQUcsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsRUFBRSxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQTtJQUNsRyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUE7SUFDMUYsTUFBTSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLEdBQUcsU0FBUyxFQUFFLENBQUE7SUFDOUQsTUFBTSxrQkFBa0IsR0FBRyxPQUFPLENBQ2hDLEdBQUcsRUFBRSxDQUNILHdCQUF3QixDQUN0Qiw2QkFBNkIsQ0FBQyxhQUFhLEVBQUUsbUJBQW1CLEVBQUU7UUFDaEUsWUFBWTtRQUNaLGFBQWE7S0FDZCxDQUFDLENBQ0gsRUFDSCxDQUFDLG1C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QUFNLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUE7QUFDdEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgR2hlcmtpbkRvY3VtZW50IH0gZnJvbSAnQGN1Y3VtYmVyL21lc3NhZ2VzJ1xuaW1wb3J0IHsgdHlwZSBEaXNwYXRjaCwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7XG4gIGRlcml2ZUxpbmVhZ2VDb25zdHJhaW50cyxcbiAgZmlsdGVyQW5kRXhwYW5kVGVzdENhc2VFdmVudHMsXG4gIHBydW5lR2hlcmtpbkRvY3VtZW50cyxcbn0gZnJvbSAnLi4vc2VhcmNoL2luZGV4LmpzJ1xuaW1wb3J0IHsgdXNlUXVlcmllcyB9IGZyb20gJy4vdXNlUXVlcmllcy5qcydcbmltcG9ydCB7IHVzZVNlYXJjaCB9IGZyb20gJy4vdXNlU2VhcmNoLmpzJ1xuaW1wb3J0IHsgdXNlU2VhcmNoUmVzdWx0IH0gZnJvbSAnLi91c2VTZWFyY2hSZXN1bHQuanMnXG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VGaWx0ZXJlZERvY3VtZW50cygpOiB7XG4gIHJlc3VsdHM/OiBSZWFkb25seUFycmF5PEdoZXJraW5Eb2N1bWVudD5cbiAgZmlsdGVyZWQ6IGJvb2xlYW5cbn0ge1xuICBjb25zdCB7IGN1Y3VtYmVyUXVlcnksIGdoZXJraW5RdWVyeSB9ID0gdXNlUXVlcmllcygpXG4gIGNvbnN0IGFsbFRlc3RDYXNlc1N0YXJ0ZWQgPSB1c2VNZW1vKCgpID0+IGN1Y3VtYmVyUXVlcnkuZmluZEFsbFRlc3RDYXNlU3RhcnRlZCgpLCBbY3VjdW1iZXJRdWVyeV0pXG4gIGNvbnN0IGdoZXJraW5Eb2N1bWVudHMgPSB1c2VNZW1vKCgpID0+IGdoZXJraW5RdWVyeS5nZXRHaGVya2luRG9jdW1lbnRzKCksIFtnaGVya2luUXVlcnldKVxuICBjb25zdCB7IGhpZGVTdGF0dXNlcywgdGFnRXhwcmVzc2lvbiwgdW5jaGFuZ2VkIH0gPSB1c2VTZWFyY2goKVxuICBjb25zdCBsaW5lYWdlQ29uc3RyYWludHMgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBkZXJpdmVMaW5lYWdlQ29uc3RyYWludHMoXG4gICAgICAgIGZpbHRlckFuZEV4cGFuZFRlc3RDYXNlRXZlbnRzKGN1Y3VtYmVyUXVlcnksIGFsbFRlc3RDYXNlc1N0YXJ0ZWQsIHtcbiAgICAgICAgICBoaWRlU3RhdHVzZXMsXG4gICAgICAgICAgdGFnRXhwcmVzc2lvbixcbiAgICAgICAgfSlcbiAgICAgICksXG4gICAgW2FsbFRlc3RDYXNlc1N0YXJ0ZWQsIGN1Y3VtYmVyUXVlcnksIGhpZGVTdGF0dXNlcywgdGFnRXhwcmVzc2lvbl1cbiAgKVxuICBjb25zdCBzZWFyY2hSZXN1bHQgPSB1c2VTZWFyY2hSZXN1bHQoKVxuICBjb25zdCBbcmVzdWx0cywgc2V0UmVzdWx0c10gPSB1c2VTdGF0ZTxSZWFkb25seUFycmF5PEdoZXJraW5Eb2N1bWVudD4+KClcbiAgY29uc3Qgc2V0UmVzdWx0c1NvcnRpbmc6IERpc3BhdGNoPFJlYWRvbmx5QXJyYXk8R2hlcmtpbkRvY3VtZW50Pj4gPSB1c2VDYWxsYmFjaygodW5zb3J0ZWQpID0+IHtcbiAgICBjb25zdCBzb3J0ZWQgPSBbLi4udW5zb3J0ZWRdXG4gICAgc29ydGVkLnNvcnQoKGEsIGIpID0+IGNvbXBhcmVQYXRocyhhLnVyaSB8fCAnJywgYi51cmkgfHwgJycpKVxuICAgIHNldFJlc3VsdHMoc29ydGVkKVxuICB9LCBbXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHN3aXRjaCAoc2VhcmNoUmVzdWx0LnN0YXR1cykge1xuICAgICAgY2FzZSAnV0FJVElORyc6XG4gICAgICAgIC8vIHJlc3VsdHMgYXJlIG5vdCByZWFkeSB5ZXQgLSBsZWF2ZSB0aGVtIGFzIHRoZXkgYXJlXG4gICAgICAgIHJldHVyblxuICAgICAgY2FzZSAnTk9PUCc6XG4gICAgICBjYXNlICdFUlJPUic6XG4gICAgICAgIC8vIG5vIG5hcnJvd2luZyB0byBhcHBseVxuICAgICAgICBzZXRSZXN1bHRzU29ydGluZyhwcnVuZUdoZXJraW5Eb2N1bWVudHMoZ2hlcmtpbkRvY3VtZW50cywgbGluZWFnZUNvbnN0cmFpbnRzKSlcbiAgICAgICAgcmV0dXJuXG4gICAgICBjYXNlICdTVUNDRVNTJzpcbiAgICAgICAgc2V0UmVzdWx0c1NvcnRpbmcoXG4gICAgICAgICAgcHJ1bmVHaGVya2luRG9jdW1lbnRzKGdoZXJraW5Eb2N1bWVudHMsIGxpbmVhZ2VDb25zdHJhaW50cywgc2VhcmNoUmVzdWx0LmhpdHMpXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuXG4gICAgfVxuICB9LCBbZ2hlcmtpbkRvY3VtZW50cywgbGluZWFnZUNvbnN0cmFpbnRzLCBzZWFyY2hSZXN1bHQsIHNldFJlc3VsdHNTb3J0aW5nXSlcblxuICByZXR1cm4ge1xuICAgIHJlc3VsdHMsXG4gICAgZmlsdGVyZWQ6ICF1bmNoYW5nZWQsXG4gIH1cbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIGZvciBzb3J0aW5nIGRpcmVjdG9yaWVzXG5mdW5jdGlvbiBjb21wYXJlUGF0aHModXJpQTogc3RyaW5nLCB1cmlCOiBzdHJpbmcpOiBudW1iZXIge1xuICAvLyBBc3N1bWVzIHRoYXQgbGFzdCBwYXJ0IG9mIGV2ZXJ5IHVyaSBpcyBhIGZpbGVcbiAgY29uc3QgcGFydHNBID0gdXJpQS5zcGxpdCgnLycpXG4gIGNvbnN0IHBhcnRzQiA9IHVyaUIuc3BsaXQoJy8nKVxuICBjb25zdCBtaW5MZW5ndGggPSBNYXRoLm1pbihwYXJ0c0EubGVuZ3RoLCBwYXJ0c0IubGVuZ3RoKVxuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgbWluTGVuZ3RoOyBpKyspIHtcbiAgICBjb25zdCBwYXJ0QSA9IHBhcnRzQVtpXVxuICAgIGNvbnN0IHBhcnRCID0gcGFydHNCW2ldXG5cbiAgICBpZiAocGFydEEgIT09IHBhcnRCKSB7XG4gICAgICBjb25zdCBpc0FMYXN0ID0gaSA9PT0gcGFydHNBLmxlbmd0aCAtIDFcbiAgICAgIGNvbnN0IGlzQkxhc3QgPSBpID09PSBwYXJ0c0IubGVuZ3RoIC0gMVxuXG4gICAgICBpZiAoaXNBTGFzdCAmJiAhaXNCTGFzdCkge1xuICAgICAgICByZXR1cm4gMSAvLyBBIGlzIGZpbGUgYW5kIEIgaXMgZGlyZWN0b3J5IC0+IEIgY29tZXMgZmlyc3RcbiAgICAgIH1cbiAgICAgIGlmICghaXNBTGFzdCAmJiBpc0JMYXN0KSB7XG4gICAgICAgIHJldHVybiAtMSAvLyBBIGlzIGRpcmVjdG9yeSBhbmQgQiBpcyBmaWxlIC0+IEEgY29tZXMgZmlyc3RcbiAgICAgIH1cblxuICAgICAgLy8gQm90aCBhcmUgZmlsZXMgb3IgYm90aCBhcmUgZGlyZWN0b3JpZXMgLT4gQWxwaGFiZXRpY2FsIHNvcnRpbmdcbiAgICAgIHJldHVybiBwYXJ0QS5sb2NhbGVDb21wYXJlKHBhcnRCKVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIG9uZSBwYXRoIGlzIHByZWZpeCBvZiBvdGhlciB0aGVuIHNob3J0ZXIgcGF0aCBjb21lcyBmaXJzdFxuICByZXR1cm4gcGFydHNBLmxlbmd0aCAtIHBhcnRzQi5sZW5ndGhcbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ import type { TestCaseFinished } from '@cucumber/messages';
2
+ import { type ExpandedTestCase } from '../search/index.js';
3
+ export declare function useFilteredTestCases(): {
4
+ results?: ReadonlyArray<ExpandedTestCase<TestCaseFinished>>;
5
+ filtered: boolean;
6
+ };
@@ -0,0 +1,36 @@
1
+ import { useEffect, useMemo, useState } from 'react';
2
+ import { filterAndExpandTestCaseEvents, pruneTestCaseEvents, } from '../search/index.js';
3
+ import { useQueries } from './useQueries.js';
4
+ import { useSearch } from './useSearch.js';
5
+ import { useSearchResult } from './useSearchResult.js';
6
+ export function useFilteredTestCases() {
7
+ const { cucumberQuery } = useQueries();
8
+ const allTestCasesFinished = useMemo(() => cucumberQuery.findAllTestCaseFinished(), [cucumberQuery]);
9
+ const { hideStatuses, tagExpression, unchanged } = useSearch();
10
+ const candidates = useMemo(() => filterAndExpandTestCaseEvents(cucumberQuery, allTestCasesFinished, {
11
+ hideStatuses,
12
+ tagExpression,
13
+ }), [allTestCasesFinished, cucumberQuery, hideStatuses, tagExpression]);
14
+ const searchResult = useSearchResult();
15
+ const [results, setResults] = useState();
16
+ useEffect(() => {
17
+ switch (searchResult.status) {
18
+ case 'WAITING':
19
+ // results are not ready yet - leave them as they are
20
+ return;
21
+ case 'NOOP':
22
+ case 'ERROR':
23
+ // no narrowing to apply
24
+ setResults(candidates);
25
+ return;
26
+ case 'SUCCESS':
27
+ setResults(pruneTestCaseEvents(candidates, searchResult.hits));
28
+ return;
29
+ }
30
+ }, [candidates, searchResult]);
31
+ return {
32
+ results,
33
+ filtered: !unchanged,
34
+ };
35
+ }
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlRmlsdGVyZWRUZXN0Q2FzZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXNlRmlsdGVyZWRUZXN0Q2FzZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFBO0FBQ3BELE9BQU8sRUFFTCw2QkFBNkIsRUFDN0IsbUJBQW1CLEdBQ3BCLE1BQU0sb0JBQW9CLENBQUE7QUFDM0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzVDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFdEQsTUFBTSxVQUFVLG9CQUFvQjtJQUlsQyxNQUFNLEVBQUUsYUFBYSxFQUFFLEdBQUcsVUFBVSxFQUFFLENBQUE7SUFDdEMsTUFBTSxvQkFBb0IsR0FBRyxPQUFPLENBQ2xDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsRUFBRSxFQUM3QyxDQUFDLGFBQWEsQ0FBQyxDQUNoQixDQUFBO0lBQ0QsTUFBTSxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLEdBQUcsU0FBUyxFQUFFLENBQUE7SUFDOUQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUN4QixHQUFHLEVBQUUsQ0FDSCw2QkFBNkIsQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLEVBQUU7UUFDakUsWUFBWTtRQUNaLGFBQWE7S0FDZCxDQUFDLEVBQ0osQ0FBQyxvQkFBb0IsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLGFBQWEsQ0FBQyxDQUNuRSxDQUFBO0lBQ0QsTUFBTSxZQUFZLEdBQUcsZUFBZSxFQUFFLENBQUE7SUFDdEMsTUFBTSxDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsR0FBRyxRQUFRLEVBQXFELENBQUE7SUFFM0YsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLFFBQVEsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVCLEtBQUssU0FBUztnQkFDWixxREFBcUQ7Z0JBQ3JELE9BQU07WUFDUixLQUFLLE1BQU0sQ0FBQztZQUNaLEtBQUssT0FBTztnQkFDVix3QkFBd0I7Z0JBQ3hCLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQTtnQkFDdEIsT0FBTTtZQUNSLEtBQUssU0FBUztnQkFDWixVQUFVLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO2dCQUM5RCxPQUFNO1FBQ1YsQ0FBQztJQUNILENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFBO0lBRTlCLE9BQU87UUFDTCxPQUFPO1FBQ1AsUUFBUSxFQUFFLENBQUMsU0FBUztLQUNyQixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgVGVzdENhc2VGaW5pc2hlZCB9IGZyb20gJ0BjdWN1bWJlci9tZXNzYWdlcydcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCdcbmltcG9ydCB7XG4gIHR5cGUgRXhwYW5kZWRUZXN0Q2FzZSxcbiAgZmlsdGVyQW5kRXhwYW5kVGVzdENhc2VFdmVudHMsXG4gIHBydW5lVGVzdENhc2VFdmVudHMsXG59IGZyb20gJy4uL3NlYXJjaC9pbmRleC5qcydcbmltcG9ydCB7IHVzZVF1ZXJpZXMgfSBmcm9tICcuL3VzZVF1ZXJpZXMuanMnXG5pbXBvcnQgeyB1c2VTZWFyY2ggfSBmcm9tICcuL3VzZVNlYXJjaC5qcydcbmltcG9ydCB7IHVzZVNlYXJjaFJlc3VsdCB9IGZyb20gJy4vdXNlU2VhcmNoUmVzdWx0LmpzJ1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlRmlsdGVyZWRUZXN0Q2FzZXMoKToge1xuICByZXN1bHRzPzogUmVhZG9ubHlBcnJheTxFeHBhbmRlZFRlc3RDYXNlPFRlc3RDYXNlRmluaXNoZWQ+PlxuICBmaWx0ZXJlZDogYm9vbGVhblxufSB7XG4gIGNvbnN0IHsgY3VjdW1iZXJRdWVyeSB9ID0gdXNlUXVlcmllcygpXG4gIGNvbnN0IGFsbFRlc3RDYXNlc0ZpbmlzaGVkID0gdXNlTWVtbyhcbiAgICAoKSA9PiBjdWN1bWJlclF1ZXJ5LmZpbmRBbGxUZXN0Q2FzZUZpbmlzaGVkKCksXG4gICAgW2N1Y3VtYmVyUXVlcnldXG4gIClcbiAgY29uc3QgeyBoaWRlU3RhdHVzZXMsIHRhZ0V4cHJlc3Npb24sIHVuY2hhbmdlZCB9ID0gdXNlU2VhcmNoKClcbiAgY29uc3QgY2FuZGlkYXRlcyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZpbHRlckFuZEV4cGFuZFRlc3RDYXNlRXZlbnRzKGN1Y3VtYmVyUXVlcnksIGFsbFRlc3RDYXNlc0ZpbmlzaGVkLCB7XG4gICAgICAgIGhpZGVTdGF0dXNlcyxcbiAgICAgICAgdGFnRXhwcmVzc2lvbixcbiAgICAgIH0pLFxuICAgIFthbGxUZXN0Q2FzZXNGaW5pc2hlZCwgY3VjdW1iZXJRdWVyeSwgaGlkZVN0YXR1c2VzLCB0YWdFeHByZXNzaW9uXVxuICApXG4gIGNvbnN0IHNlYXJjaFJlc3VsdCA9IHVzZVNlYXJjaFJlc3VsdCgpXG4gIGNvbnN0IFtyZXN1bHRzLCBzZXRSZXN1bHRzXSA9IHVzZVN0YXRlPFJlYWRvbmx5QXJyYXk8RXhwYW5kZWRUZXN0Q2FzZTxUZXN0Q2FzZUZpbmlzaGVkPj4+KClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIHN3aXRjaCAoc2VhcmNoUmVzdWx0LnN0YXR1cykge1xuICAgICAgY2FzZSAnV0FJVElORyc6XG4gICAgICAgIC8vIHJlc3VsdHMgYXJlIG5vdCByZWFkeSB5ZXQgLSBsZWF2ZSB0aGVtIGFzIHRoZXkgYXJlXG4gICAgICAgIHJldHVyblxuICAgICAgY2FzZSAnTk9PUCc6XG4gICAgICBjYXNlICdFUlJPUic6XG4gICAgICAgIC8vIG5vIG5hcnJvd2luZyB0byBhcHBseVxuICAgICAgICBzZXRSZXN1bHRzKGNhbmRpZGF0ZXMpXG4gICAgICAgIHJldHVyblxuICAgICAgY2FzZSAnU1VDQ0VTUyc6XG4gICAgICAgIHNldFJlc3VsdHMocHJ1bmVUZXN0Q2FzZUV2ZW50cyhjYW5kaWRhdGVzLCBzZWFyY2hSZXN1bHQuaGl0cykpXG4gICAgICAgIHJldHVyblxuICAgIH1cbiAgfSwgW2NhbmRpZGF0ZXMsIHNlYXJjaFJlc3VsdF0pXG5cbiAgcmV0dXJuIHtcbiAgICByZXN1bHRzLFxuICAgIGZpbHRlcmVkOiAhdW5jaGFuZ2VkLFxuICB9XG59XG4iXX0=
@@ -1,3 +1,2 @@
1
1
  import { TestStepResultStatus } from '@cucumber/messages';
2
2
  export declare function useMostSevereStatusByUri(): Map<string, TestStepResultStatus>;
3
- //# sourceMappingURL=useMostSevereStatusByUri.d.ts.map