@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.
- package/README.md +2 -2
- package/dist/{src/CucumberQueryContext.d.ts → CucumberQueryContext.d.ts} +0 -1
- package/dist/CucumberQueryContext.js +4 -0
- package/dist/{src/GherkinQueryContext.d.ts → GherkinQueryContext.d.ts} +0 -1
- package/dist/GherkinQueryContext.js +4 -0
- package/dist/{src/SearchContext.d.ts → SearchContext.d.ts} +0 -1
- package/dist/SearchContext.js +10 -0
- package/dist/{src/ciCommitLink.d.ts → ciCommitLink.d.ts} +0 -1
- package/dist/ciCommitLink.js +12 -0
- package/dist/{src/components → components}/app/CICommitLink.d.ts +0 -1
- package/dist/components/app/CICommitLink.js +16 -0
- package/dist/{src/components → components}/app/CIJobLink.d.ts +0 -1
- package/dist/components/app/CIJobLink.js +10 -0
- package/dist/{src/components → components}/app/ControlledSearchProvider.d.ts +0 -1
- package/dist/components/app/ControlledSearchProvider.js +39 -0
- package/dist/{src/components → components}/app/CopyButton.d.ts +0 -1
- package/dist/components/app/CopyButton.js +23 -0
- package/dist/{src/components → components}/app/DocumentAccordion.d.ts +0 -1
- package/dist/components/app/DocumentAccordion.js +22 -0
- package/dist/{src/components → components}/app/EnvelopesProvider.d.ts +0 -1
- package/dist/components/app/EnvelopesProvider.js +18 -0
- package/dist/{src/components → components}/app/ExecutionSummary.d.ts +0 -1
- package/dist/components/app/ExecutionSummary.js +38 -0
- package/dist/{src/components → components}/app/FilteredDocuments.d.ts +0 -1
- package/dist/components/app/FilteredDocuments.js +15 -0
- package/dist/{src/components → components}/app/GherkinDocumentList.d.ts +0 -1
- package/dist/components/app/GherkinDocumentList.js +23 -0
- package/dist/{src/components → components}/app/Header.d.ts +0 -1
- package/dist/components/app/Header.js +12 -0
- package/dist/{src/components → components}/app/HealthChart.d.ts +0 -1
- package/dist/components/app/HealthChart.js +14 -0
- package/dist/{src/components → components}/app/HighLight.d.ts +0 -1
- package/dist/components/app/HighLight.js +38 -0
- package/dist/{src/components → components}/app/ImplementationIcon.d.ts +0 -1
- package/dist/components/app/ImplementationIcon.js +10 -0
- package/dist/{src/components → components}/app/InMemorySearchProvider.d.ts +0 -1
- package/dist/components/app/InMemorySearchProvider.js +11 -0
- package/dist/{src/components → components}/app/NavigationButton.d.ts +0 -1
- package/dist/components/app/NavigationButton.js +6 -0
- package/dist/{src/components → components}/app/OSIcon.d.ts +0 -1
- package/dist/components/app/OSIcon.js +18 -0
- package/dist/{src/components → components}/app/QueriesProvider.d.ts +0 -1
- package/dist/components/app/QueriesProvider.js +7 -0
- package/dist/{src/components → components}/app/Report.d.ts +0 -1
- package/dist/components/app/Report.js +10 -0
- package/dist/{src/components → components}/app/RuntimeIcon.d.ts +0 -1
- package/dist/components/app/RuntimeIcon.js +18 -0
- package/dist/{src/components → components}/app/SearchBar.d.ts +0 -1
- package/dist/components/app/SearchBar.js +33 -0
- package/dist/{src/components → components}/app/StatusesSummary.d.ts +0 -1
- package/dist/components/app/StatusesSummary.js +16 -0
- package/dist/{src/components → components}/app/TestRunHooks.d.ts +0 -1
- package/dist/components/app/TestRunHooks.js +14 -0
- package/dist/{src/components → components}/app/UrlSearchProvider.d.ts +0 -1
- package/dist/components/app/UrlSearchProvider.js +29 -0
- package/dist/{src/components → components}/app/findMostSevereTestStepResultStatus.d.ts +0 -1
- package/dist/components/app/findMostSevereTestStepResultStatus.js +17 -0
- package/dist/{src/components → components}/app/icons/CucumberLogo.d.ts +0 -1
- package/dist/components/app/icons/CucumberLogo.js +5 -0
- package/dist/{src/components → components}/app/icons/Jvm.d.ts +0 -1
- package/dist/components/app/icons/Jvm.js +5 -0
- package/dist/{src/components → components}/app/icons/Linux.d.ts +0 -1
- package/dist/components/app/icons/Linux.js +5 -0
- package/dist/{src/components → components}/app/icons/MacOS.d.ts +0 -1
- package/dist/components/app/icons/MacOS.js +5 -0
- package/dist/{src/components → components}/app/icons/NodeJs.d.ts +0 -1
- package/dist/components/app/icons/NodeJs.js +5 -0
- package/dist/{src/components → components}/app/icons/Ruby.d.ts +0 -1
- package/dist/components/app/icons/Ruby.js +5 -0
- package/dist/{src/components → components}/app/icons/Windows.d.ts +0 -1
- package/dist/components/app/icons/Windows.js +5 -0
- package/dist/{src/components/app/index.js → components/app/index.d.ts} +0 -1
- package/dist/components/app/index.js +15 -0
- package/dist/{src/components → components}/app/makeSetupString.d.ts +0 -1
- package/dist/components/app/makeSetupString.js +21 -0
- package/dist/{src/components → components}/app/markdownComponents.d.ts +1 -2
- package/dist/components/app/markdownComponents.js +6 -0
- package/dist/{src/components → components}/app/rehypePlugins.d.ts +0 -1
- package/dist/components/app/rehypePlugins.js +9 -0
- package/dist/{src/components → components}/app/remarkPlugins.d.ts +0 -1
- package/dist/components/app/remarkPlugins.js +4 -0
- package/dist/{src/components → components}/customise/CustomRendering.d.ts +0 -1
- package/dist/components/customise/CustomRendering.js +35 -0
- package/dist/{src/components/customise/index.js → components/customise/index.d.ts} +0 -1
- package/dist/components/customise/index.js +3 -0
- package/dist/{src/components → components}/customise/theming.d.ts +0 -1
- package/dist/components/customise/theming.js +2 -0
- package/dist/{src/components → components}/gherkin/Anchor.d.ts +0 -1
- package/dist/components/gherkin/Anchor.js +13 -0
- package/dist/{src/components → components}/gherkin/Background.d.ts +0 -1
- package/dist/components/gherkin/Background.js +18 -0
- package/dist/{src/components → components}/gherkin/Children.d.ts +0 -1
- package/dist/components/gherkin/Children.js +11 -0
- package/dist/{src/components → components}/gherkin/DataTable.d.ts +0 -1
- package/dist/components/gherkin/DataTable.js +16 -0
- package/dist/{src/components → components}/gherkin/Description.d.ts +0 -1
- package/dist/components/gherkin/Description.js +15 -0
- package/dist/{src/components → components}/gherkin/DocString.d.ts +0 -1
- package/dist/components/gherkin/DocString.js +12 -0
- package/dist/{src/components → components}/gherkin/ErrorMessage.d.ts +0 -1
- package/dist/components/gherkin/ErrorMessage.js +13 -0
- package/dist/{src/components → components}/gherkin/Examples.d.ts +0 -1
- package/dist/components/gherkin/Examples.js +31 -0
- package/dist/{src/components → components}/gherkin/Feature.d.ts +0 -1
- package/dist/components/gherkin/Feature.js +30 -0
- package/dist/{src/components → components}/gherkin/GherkinDocument.d.ts +0 -1
- package/dist/components/gherkin/GherkinDocument.js +11 -0
- package/dist/{src/components → components}/gherkin/Keyword.d.ts +0 -1
- package/dist/components/gherkin/Keyword.js +11 -0
- package/dist/{src/components → components}/gherkin/Parameter.d.ts +0 -1
- package/dist/components/gherkin/Parameter.js +11 -0
- package/dist/{src/components → components}/gherkin/Rule.d.ts +0 -1
- package/dist/components/gherkin/Rule.js +26 -0
- package/dist/{src/components → components}/gherkin/Scenario.d.ts +0 -1
- package/dist/components/gherkin/Scenario.js +22 -0
- package/dist/{src/components → components}/gherkin/StatusIcon.d.ts +0 -1
- package/dist/components/gherkin/StatusIcon.js +24 -0
- package/dist/{src/components → components}/gherkin/StepsList.d.ts +0 -1
- package/dist/components/gherkin/StepsList.js +6 -0
- package/dist/{src/components → components}/gherkin/Tags.d.ts +0 -1
- package/dist/components/gherkin/Tags.js +15 -0
- package/dist/{src/components → components}/gherkin/Title.d.ts +0 -1
- package/dist/components/gherkin/Title.js +12 -0
- package/dist/{src/components → components}/gherkin/attachment/Attachment.d.ts +0 -1
- package/dist/components/gherkin/attachment/Attachment.js +45 -0
- package/dist/{src/components → components}/gherkin/attachment/Image.d.ts +0 -1
- package/dist/components/gherkin/attachment/Image.js +16 -0
- package/dist/{src/components → components}/gherkin/attachment/Links.d.ts +0 -1
- package/dist/components/gherkin/attachment/Links.js +14 -0
- package/dist/{src/components → components}/gherkin/attachment/Log.d.ts +0 -1
- package/dist/components/gherkin/attachment/Log.js +12 -0
- package/dist/{src/components → components}/gherkin/attachment/Text.d.ts +0 -1
- package/dist/components/gherkin/attachment/Text.js +16 -0
- package/dist/{src/components → components}/gherkin/attachment/Unknown.d.ts +0 -1
- package/dist/components/gherkin/attachment/Unknown.js +61 -0
- package/dist/{src/components → components}/gherkin/attachment/Video.d.ts +0 -1
- package/dist/components/gherkin/attachment/Video.js +16 -0
- package/dist/{src/components → components}/gherkin/attachment/attachmentFilename.d.ts +0 -1
- package/dist/components/gherkin/attachment/attachmentFilename.js +12 -0
- package/dist/{src/components → components}/gherkin/attachment/base64Decode.d.ts +0 -1
- package/dist/components/gherkin/attachment/base64Decode.js +19 -0
- package/dist/{src/components/gherkin/attachment/index.js → components/gherkin/attachment/index.d.ts} +0 -1
- package/dist/components/gherkin/attachment/index.js +2 -0
- package/dist/{src/components → components}/gherkin/attachment/useText.d.ts +0 -1
- package/dist/components/gherkin/attachment/useText.js +28 -0
- package/dist/{src/components → components}/gherkin/composeHookStepTitle.d.ts +0 -1
- package/dist/components/gherkin/composeHookStepTitle.js +23 -0
- package/dist/{src/components → components}/gherkin/composePickleStepTitle.d.ts +0 -1
- package/dist/components/gherkin/composePickleStepTitle.js +36 -0
- package/dist/{src/components/gherkin/index.js → components/gherkin/index.d.ts} +0 -1
- package/dist/components/gherkin/index.js +19 -0
- package/dist/{src/components → components}/gherkin/isNumber.d.ts +0 -1
- package/dist/components/gherkin/isNumber.js +7 -0
- package/dist/components/gherkin/statusName.d.ts +3 -0
- package/dist/components/gherkin/statusName.js +4 -0
- package/dist/{src/components/index.js → components/index.d.ts} +0 -1
- package/dist/components/index.js +4 -0
- package/dist/{src/components → components}/results/AmbiguousResult.d.ts +0 -1
- package/dist/components/results/AmbiguousResult.js +11 -0
- package/dist/{src/components → components}/results/FailedResult.d.ts +0 -1
- package/dist/components/results/FailedResult.js +15 -0
- package/dist/{src/components → components}/results/PendingResult.d.ts +0 -1
- package/dist/components/results/PendingResult.js +12 -0
- package/dist/{src/components → components}/results/ResultNote.d.ts +0 -1
- package/dist/components/results/ResultNote.js +6 -0
- package/dist/{src/components → components}/results/SkippedResult.d.ts +0 -1
- package/dist/components/results/SkippedResult.js +12 -0
- package/dist/{src/components → components}/results/SourceReference.d.ts +0 -1
- package/dist/components/results/SourceReference.js +13 -0
- package/dist/{src/components → components}/results/TestCaseOutcome.d.ts +0 -1
- package/dist/components/results/TestCaseOutcome.js +32 -0
- package/dist/{src/components → components}/results/TestRunHookOutcome.d.ts +0 -1
- package/dist/components/results/TestRunHookOutcome.js +11 -0
- package/dist/{src/components → components}/results/TestStepAttachments.d.ts +0 -1
- package/dist/components/results/TestStepAttachments.js +12 -0
- package/dist/{src/components → components}/results/TestStepDuration.d.ts +0 -1
- package/dist/components/results/TestStepDuration.js +19 -0
- package/dist/{src/components → components}/results/TestStepOutcome.d.ts +0 -1
- package/dist/components/results/TestStepOutcome.js +43 -0
- package/dist/{src/components → components}/results/UndefinedResult.d.ts +0 -1
- package/dist/components/results/UndefinedResult.js +18 -0
- package/dist/{src/components/results/index.js → components/results/index.d.ts} +0 -1
- package/dist/components/results/index.js +3 -0
- package/dist/{src/hooks/helpers.d.ts → ensure.d.ts} +0 -1
- package/dist/ensure.js +7 -0
- package/dist/{src/formatExecutionDistance.d.ts → formatExecutionDistance.d.ts} +0 -1
- package/dist/formatExecutionDistance.js +7 -0
- package/dist/{src/formatExecutionDuration.d.ts → formatExecutionDuration.d.ts} +0 -1
- package/dist/formatExecutionDuration.js +12 -0
- package/dist/{src/formatPassedQuantity.d.ts → formatPassedQuantity.d.ts} +0 -1
- package/dist/formatPassedQuantity.js +4 -0
- package/dist/{src/formatStatusRate.d.ts → formatStatusRate.d.ts} +0 -1
- package/dist/formatStatusRate.js +9 -0
- package/dist/{src/hooks/index.js → hooks/index.d.ts} +0 -1
- package/dist/hooks/index.js +3 -0
- package/dist/{src/hooks → hooks}/useFilteredDocuments.d.ts +1 -2
- package/dist/hooks/useFilteredDocuments.js +67 -0
- package/dist/hooks/useFilteredTestCases.d.ts +6 -0
- package/dist/hooks/useFilteredTestCases.js +36 -0
- package/dist/{src/hooks → hooks}/useMostSevereStatusByUri.d.ts +0 -1
- package/dist/hooks/useMostSevereStatusByUri.js +25 -0
- package/dist/{src/hooks → hooks}/useQueries.d.ts +0 -1
- package/dist/hooks/useQueries.js +9 -0
- package/dist/{src/hooks → hooks}/useResultStatistics.d.ts +0 -1
- package/dist/hooks/useResultStatistics.js +24 -0
- package/dist/{src/hooks → hooks}/useSearch.d.ts +0 -1
- package/dist/hooks/useSearch.js +6 -0
- package/dist/hooks/useSearchResult.d.ts +26 -0
- package/dist/hooks/useSearchResult.js +58 -0
- package/dist/{src/hooks → hooks}/useTestCaseStarted.d.ts +0 -1
- package/dist/hooks/useTestCaseStarted.js +20 -0
- package/dist/{src/hooks → hooks}/useTestRunHooks.d.ts +0 -1
- package/dist/hooks/useTestRunHooks.js +14 -0
- package/dist/{src/index.js → index.d.ts} +0 -1
- package/dist/index.js +3 -0
- package/dist/{src/isTagExpression.d.ts → isTagExpression.d.ts} +0 -1
- package/dist/isTagExpression.js +5 -0
- package/dist/{src/search → search}/FeatureSearch.d.ts +0 -1
- package/dist/search/FeatureSearch.js +39 -0
- package/dist/{src/search → search}/ScenarioLikeSearch.d.ts +0 -1
- package/dist/search/ScenarioLikeSearch.js +37 -0
- package/dist/{src/search → search}/StepSearch.d.ts +0 -1
- package/dist/search/StepSearch.js +40 -0
- package/dist/{src/search → search}/TextSearch.d.ts +1 -2
- package/dist/search/TextSearch.js +67 -0
- package/dist/{src/search → search}/createSearchIndex.d.ts +0 -1
- package/dist/search/createSearchIndex.js +10 -0
- package/dist/{src/search → search}/deriveLineageConstraints.d.ts +0 -1
- package/dist/search/deriveLineageConstraints.js +38 -0
- package/dist/search/filterAndExpandTestCaseEvents.d.ts +20 -0
- package/dist/search/filterAndExpandTestCaseEvents.js +32 -0
- package/dist/{src/search → search}/index.d.ts +2 -1
- package/dist/search/index.js +7 -0
- package/dist/{src/search → search}/pruneGherkinDocuments.d.ts +3 -4
- package/dist/search/pruneGherkinDocuments.js +179 -0
- package/dist/search/pruneTestCaseEvents.d.ts +16 -0
- package/dist/search/pruneTestCaseEvents.js +41 -0
- package/dist/{src/search → search}/types.d.ts +5 -6
- package/dist/search/types.js +2 -0
- package/dist/{src/statuses.d.ts → statuses.d.ts} +0 -1
- package/dist/statuses.js +12 -0
- package/dist/{src/toRepositoryId.d.ts → toRepositoryId.d.ts} +0 -1
- package/dist/toRepositoryId.js +12 -0
- package/package.json +30 -32
- package/dist/src/CucumberQueryContext.d.ts.map +0 -1
- package/dist/src/CucumberQueryContext.js +0 -4
- package/dist/src/CucumberQueryContext.js.map +0 -1
- package/dist/src/GherkinQueryContext.d.ts.map +0 -1
- package/dist/src/GherkinQueryContext.js +0 -4
- package/dist/src/GherkinQueryContext.js.map +0 -1
- package/dist/src/SearchContext.d.ts.map +0 -1
- package/dist/src/SearchContext.js +0 -10
- package/dist/src/SearchContext.js.map +0 -1
- package/dist/src/ciCommitLink.d.ts.map +0 -1
- package/dist/src/ciCommitLink.js +0 -12
- package/dist/src/ciCommitLink.js.map +0 -1
- package/dist/src/components/app/CICommitLink.d.ts.map +0 -1
- package/dist/src/components/app/CICommitLink.js +0 -16
- package/dist/src/components/app/CICommitLink.js.map +0 -1
- package/dist/src/components/app/CIJobLink.d.ts.map +0 -1
- package/dist/src/components/app/CIJobLink.js +0 -10
- package/dist/src/components/app/CIJobLink.js.map +0 -1
- package/dist/src/components/app/ControlledSearchProvider.d.ts.map +0 -1
- package/dist/src/components/app/ControlledSearchProvider.js +0 -39
- package/dist/src/components/app/ControlledSearchProvider.js.map +0 -1
- package/dist/src/components/app/CopyButton.d.ts.map +0 -1
- package/dist/src/components/app/CopyButton.js +0 -23
- package/dist/src/components/app/CopyButton.js.map +0 -1
- package/dist/src/components/app/DocumentAccordion.d.ts.map +0 -1
- package/dist/src/components/app/DocumentAccordion.js +0 -22
- package/dist/src/components/app/DocumentAccordion.js.map +0 -1
- package/dist/src/components/app/EnvelopesProvider.d.ts.map +0 -1
- package/dist/src/components/app/EnvelopesProvider.js +0 -18
- package/dist/src/components/app/EnvelopesProvider.js.map +0 -1
- package/dist/src/components/app/ExecutionSummary.d.ts.map +0 -1
- package/dist/src/components/app/ExecutionSummary.js +0 -38
- package/dist/src/components/app/ExecutionSummary.js.map +0 -1
- package/dist/src/components/app/FilteredDocuments.d.ts.map +0 -1
- package/dist/src/components/app/FilteredDocuments.js +0 -15
- package/dist/src/components/app/FilteredDocuments.js.map +0 -1
- package/dist/src/components/app/GherkinDocumentList.d.ts.map +0 -1
- package/dist/src/components/app/GherkinDocumentList.js +0 -23
- package/dist/src/components/app/GherkinDocumentList.js.map +0 -1
- package/dist/src/components/app/Header.d.ts.map +0 -1
- package/dist/src/components/app/Header.js +0 -12
- package/dist/src/components/app/Header.js.map +0 -1
- package/dist/src/components/app/HealthChart.d.ts.map +0 -1
- package/dist/src/components/app/HealthChart.js +0 -14
- package/dist/src/components/app/HealthChart.js.map +0 -1
- package/dist/src/components/app/HighLight.d.ts.map +0 -1
- package/dist/src/components/app/HighLight.js +0 -38
- package/dist/src/components/app/HighLight.js.map +0 -1
- package/dist/src/components/app/ImplementationIcon.d.ts.map +0 -1
- package/dist/src/components/app/ImplementationIcon.js +0 -10
- package/dist/src/components/app/ImplementationIcon.js.map +0 -1
- package/dist/src/components/app/InMemorySearchProvider.d.ts.map +0 -1
- package/dist/src/components/app/InMemorySearchProvider.js +0 -11
- package/dist/src/components/app/InMemorySearchProvider.js.map +0 -1
- package/dist/src/components/app/NavigationButton.d.ts.map +0 -1
- package/dist/src/components/app/NavigationButton.js +0 -6
- package/dist/src/components/app/NavigationButton.js.map +0 -1
- package/dist/src/components/app/OSIcon.d.ts.map +0 -1
- package/dist/src/components/app/OSIcon.js +0 -18
- package/dist/src/components/app/OSIcon.js.map +0 -1
- package/dist/src/components/app/QueriesProvider.d.ts.map +0 -1
- package/dist/src/components/app/QueriesProvider.js +0 -7
- package/dist/src/components/app/QueriesProvider.js.map +0 -1
- package/dist/src/components/app/Report.d.ts.map +0 -1
- package/dist/src/components/app/Report.js +0 -10
- package/dist/src/components/app/Report.js.map +0 -1
- package/dist/src/components/app/RuntimeIcon.d.ts.map +0 -1
- package/dist/src/components/app/RuntimeIcon.js +0 -18
- package/dist/src/components/app/RuntimeIcon.js.map +0 -1
- package/dist/src/components/app/SearchBar.d.ts.map +0 -1
- package/dist/src/components/app/SearchBar.js +0 -33
- package/dist/src/components/app/SearchBar.js.map +0 -1
- package/dist/src/components/app/StatusesSummary.d.ts.map +0 -1
- package/dist/src/components/app/StatusesSummary.js +0 -16
- package/dist/src/components/app/StatusesSummary.js.map +0 -1
- package/dist/src/components/app/TestRunHooks.d.ts.map +0 -1
- package/dist/src/components/app/TestRunHooks.js +0 -14
- package/dist/src/components/app/TestRunHooks.js.map +0 -1
- package/dist/src/components/app/UrlSearchProvider.d.ts.map +0 -1
- package/dist/src/components/app/UrlSearchProvider.js +0 -29
- package/dist/src/components/app/UrlSearchProvider.js.map +0 -1
- package/dist/src/components/app/findMostSevereTestStepResultStatus.d.ts.map +0 -1
- package/dist/src/components/app/findMostSevereTestStepResultStatus.js +0 -17
- package/dist/src/components/app/findMostSevereTestStepResultStatus.js.map +0 -1
- package/dist/src/components/app/icons/CucumberLogo.d.ts.map +0 -1
- package/dist/src/components/app/icons/CucumberLogo.js +0 -5
- package/dist/src/components/app/icons/CucumberLogo.js.map +0 -1
- package/dist/src/components/app/icons/Jvm.d.ts.map +0 -1
- package/dist/src/components/app/icons/Jvm.js +0 -5
- package/dist/src/components/app/icons/Jvm.js.map +0 -1
- package/dist/src/components/app/icons/Linux.d.ts.map +0 -1
- package/dist/src/components/app/icons/Linux.js +0 -5
- package/dist/src/components/app/icons/Linux.js.map +0 -1
- package/dist/src/components/app/icons/MacOS.d.ts.map +0 -1
- package/dist/src/components/app/icons/MacOS.js +0 -5
- package/dist/src/components/app/icons/MacOS.js.map +0 -1
- package/dist/src/components/app/icons/NodeJs.d.ts.map +0 -1
- package/dist/src/components/app/icons/NodeJs.js +0 -5
- package/dist/src/components/app/icons/NodeJs.js.map +0 -1
- package/dist/src/components/app/icons/Ruby.d.ts.map +0 -1
- package/dist/src/components/app/icons/Ruby.js +0 -5
- package/dist/src/components/app/icons/Ruby.js.map +0 -1
- package/dist/src/components/app/icons/Windows.d.ts.map +0 -1
- package/dist/src/components/app/icons/Windows.js +0 -5
- package/dist/src/components/app/icons/Windows.js.map +0 -1
- package/dist/src/components/app/index.d.ts +0 -15
- package/dist/src/components/app/index.d.ts.map +0 -1
- package/dist/src/components/app/index.js.map +0 -1
- package/dist/src/components/app/makeSetupString.d.ts.map +0 -1
- package/dist/src/components/app/makeSetupString.js +0 -21
- package/dist/src/components/app/makeSetupString.js.map +0 -1
- package/dist/src/components/app/markdownComponents.d.ts.map +0 -1
- package/dist/src/components/app/markdownComponents.js +0 -6
- package/dist/src/components/app/markdownComponents.js.map +0 -1
- package/dist/src/components/app/rehypePlugins.d.ts.map +0 -1
- package/dist/src/components/app/rehypePlugins.js +0 -9
- package/dist/src/components/app/rehypePlugins.js.map +0 -1
- package/dist/src/components/app/remarkPlugins.d.ts.map +0 -1
- package/dist/src/components/app/remarkPlugins.js +0 -4
- package/dist/src/components/app/remarkPlugins.js.map +0 -1
- package/dist/src/components/customise/CustomRendering.d.ts.map +0 -1
- package/dist/src/components/customise/CustomRendering.js +0 -35
- package/dist/src/components/customise/CustomRendering.js.map +0 -1
- package/dist/src/components/customise/index.d.ts +0 -3
- package/dist/src/components/customise/index.d.ts.map +0 -1
- package/dist/src/components/customise/index.js.map +0 -1
- package/dist/src/components/customise/theming.d.ts.map +0 -1
- package/dist/src/components/customise/theming.js +0 -2
- package/dist/src/components/customise/theming.js.map +0 -1
- package/dist/src/components/gherkin/Anchor.d.ts.map +0 -1
- package/dist/src/components/gherkin/Anchor.js +0 -13
- package/dist/src/components/gherkin/Anchor.js.map +0 -1
- package/dist/src/components/gherkin/Background.d.ts.map +0 -1
- package/dist/src/components/gherkin/Background.js +0 -18
- package/dist/src/components/gherkin/Background.js.map +0 -1
- package/dist/src/components/gherkin/Children.d.ts.map +0 -1
- package/dist/src/components/gherkin/Children.js +0 -11
- package/dist/src/components/gherkin/Children.js.map +0 -1
- package/dist/src/components/gherkin/DataTable.d.ts.map +0 -1
- package/dist/src/components/gherkin/DataTable.js +0 -16
- package/dist/src/components/gherkin/DataTable.js.map +0 -1
- package/dist/src/components/gherkin/Description.d.ts.map +0 -1
- package/dist/src/components/gherkin/Description.js +0 -15
- package/dist/src/components/gherkin/Description.js.map +0 -1
- package/dist/src/components/gherkin/DocString.d.ts.map +0 -1
- package/dist/src/components/gherkin/DocString.js +0 -12
- package/dist/src/components/gherkin/DocString.js.map +0 -1
- package/dist/src/components/gherkin/ErrorMessage.d.ts.map +0 -1
- package/dist/src/components/gherkin/ErrorMessage.js +0 -13
- package/dist/src/components/gherkin/ErrorMessage.js.map +0 -1
- package/dist/src/components/gherkin/Examples.d.ts.map +0 -1
- package/dist/src/components/gherkin/Examples.js +0 -31
- package/dist/src/components/gherkin/Examples.js.map +0 -1
- package/dist/src/components/gherkin/Feature.d.ts.map +0 -1
- package/dist/src/components/gherkin/Feature.js +0 -30
- package/dist/src/components/gherkin/Feature.js.map +0 -1
- package/dist/src/components/gherkin/GherkinDocument.d.ts.map +0 -1
- package/dist/src/components/gherkin/GherkinDocument.js +0 -11
- package/dist/src/components/gherkin/GherkinDocument.js.map +0 -1
- package/dist/src/components/gherkin/Keyword.d.ts.map +0 -1
- package/dist/src/components/gherkin/Keyword.js +0 -11
- package/dist/src/components/gherkin/Keyword.js.map +0 -1
- package/dist/src/components/gherkin/Parameter.d.ts.map +0 -1
- package/dist/src/components/gherkin/Parameter.js +0 -11
- package/dist/src/components/gherkin/Parameter.js.map +0 -1
- package/dist/src/components/gherkin/Rule.d.ts.map +0 -1
- package/dist/src/components/gherkin/Rule.js +0 -26
- package/dist/src/components/gherkin/Rule.js.map +0 -1
- package/dist/src/components/gherkin/Scenario.d.ts.map +0 -1
- package/dist/src/components/gherkin/Scenario.js +0 -22
- package/dist/src/components/gherkin/Scenario.js.map +0 -1
- package/dist/src/components/gherkin/StatusIcon.d.ts.map +0 -1
- package/dist/src/components/gherkin/StatusIcon.js +0 -24
- package/dist/src/components/gherkin/StatusIcon.js.map +0 -1
- package/dist/src/components/gherkin/StepsList.d.ts.map +0 -1
- package/dist/src/components/gherkin/StepsList.js +0 -6
- package/dist/src/components/gherkin/StepsList.js.map +0 -1
- package/dist/src/components/gherkin/Tags.d.ts.map +0 -1
- package/dist/src/components/gherkin/Tags.js +0 -15
- package/dist/src/components/gherkin/Tags.js.map +0 -1
- package/dist/src/components/gherkin/Title.d.ts.map +0 -1
- package/dist/src/components/gherkin/Title.js +0 -12
- package/dist/src/components/gherkin/Title.js.map +0 -1
- package/dist/src/components/gherkin/attachment/Attachment.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/Attachment.js +0 -45
- package/dist/src/components/gherkin/attachment/Attachment.js.map +0 -1
- package/dist/src/components/gherkin/attachment/Image.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/Image.js +0 -16
- package/dist/src/components/gherkin/attachment/Image.js.map +0 -1
- package/dist/src/components/gherkin/attachment/Links.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/Links.js +0 -14
- package/dist/src/components/gherkin/attachment/Links.js.map +0 -1
- package/dist/src/components/gherkin/attachment/Log.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/Log.js +0 -12
- package/dist/src/components/gherkin/attachment/Log.js.map +0 -1
- package/dist/src/components/gherkin/attachment/Text.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/Text.js +0 -16
- package/dist/src/components/gherkin/attachment/Text.js.map +0 -1
- package/dist/src/components/gherkin/attachment/Unknown.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/Unknown.js +0 -61
- package/dist/src/components/gherkin/attachment/Unknown.js.map +0 -1
- package/dist/src/components/gherkin/attachment/Video.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/Video.js +0 -16
- package/dist/src/components/gherkin/attachment/Video.js.map +0 -1
- package/dist/src/components/gherkin/attachment/attachmentFilename.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/attachmentFilename.js +0 -12
- package/dist/src/components/gherkin/attachment/attachmentFilename.js.map +0 -1
- package/dist/src/components/gherkin/attachment/base64Decode.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/base64Decode.js +0 -19
- package/dist/src/components/gherkin/attachment/base64Decode.js.map +0 -1
- package/dist/src/components/gherkin/attachment/index.d.ts +0 -2
- package/dist/src/components/gherkin/attachment/index.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/index.js.map +0 -1
- package/dist/src/components/gherkin/attachment/useText.d.ts.map +0 -1
- package/dist/src/components/gherkin/attachment/useText.js +0 -28
- package/dist/src/components/gherkin/attachment/useText.js.map +0 -1
- package/dist/src/components/gherkin/composeHookStepTitle.d.ts.map +0 -1
- package/dist/src/components/gherkin/composeHookStepTitle.js +0 -23
- package/dist/src/components/gherkin/composeHookStepTitle.js.map +0 -1
- package/dist/src/components/gherkin/composePickleStepTitle.d.ts.map +0 -1
- package/dist/src/components/gherkin/composePickleStepTitle.js +0 -36
- package/dist/src/components/gherkin/composePickleStepTitle.js.map +0 -1
- package/dist/src/components/gherkin/index.d.ts +0 -19
- package/dist/src/components/gherkin/index.d.ts.map +0 -1
- package/dist/src/components/gherkin/index.js.map +0 -1
- package/dist/src/components/gherkin/isNumber.d.ts.map +0 -1
- package/dist/src/components/gherkin/isNumber.js +0 -7
- package/dist/src/components/gherkin/isNumber.js.map +0 -1
- package/dist/src/components/gherkin/statusName.d.ts +0 -4
- package/dist/src/components/gherkin/statusName.d.ts.map +0 -1
- package/dist/src/components/gherkin/statusName.js +0 -4
- package/dist/src/components/gherkin/statusName.js.map +0 -1
- package/dist/src/components/index.d.ts +0 -4
- package/dist/src/components/index.d.ts.map +0 -1
- package/dist/src/components/index.js.map +0 -1
- package/dist/src/components/results/AmbiguousResult.d.ts.map +0 -1
- package/dist/src/components/results/AmbiguousResult.js +0 -11
- package/dist/src/components/results/AmbiguousResult.js.map +0 -1
- package/dist/src/components/results/FailedResult.d.ts.map +0 -1
- package/dist/src/components/results/FailedResult.js +0 -15
- package/dist/src/components/results/FailedResult.js.map +0 -1
- package/dist/src/components/results/PendingResult.d.ts.map +0 -1
- package/dist/src/components/results/PendingResult.js +0 -12
- package/dist/src/components/results/PendingResult.js.map +0 -1
- package/dist/src/components/results/ResultNote.d.ts.map +0 -1
- package/dist/src/components/results/ResultNote.js +0 -6
- package/dist/src/components/results/ResultNote.js.map +0 -1
- package/dist/src/components/results/SkippedResult.d.ts.map +0 -1
- package/dist/src/components/results/SkippedResult.js +0 -12
- package/dist/src/components/results/SkippedResult.js.map +0 -1
- package/dist/src/components/results/SourceReference.d.ts.map +0 -1
- package/dist/src/components/results/SourceReference.js +0 -13
- package/dist/src/components/results/SourceReference.js.map +0 -1
- package/dist/src/components/results/TestCaseOutcome.d.ts.map +0 -1
- package/dist/src/components/results/TestCaseOutcome.js +0 -32
- package/dist/src/components/results/TestCaseOutcome.js.map +0 -1
- package/dist/src/components/results/TestRunHookOutcome.d.ts.map +0 -1
- package/dist/src/components/results/TestRunHookOutcome.js +0 -11
- package/dist/src/components/results/TestRunHookOutcome.js.map +0 -1
- package/dist/src/components/results/TestStepAttachments.d.ts.map +0 -1
- package/dist/src/components/results/TestStepAttachments.js +0 -12
- package/dist/src/components/results/TestStepAttachments.js.map +0 -1
- package/dist/src/components/results/TestStepDuration.d.ts.map +0 -1
- package/dist/src/components/results/TestStepDuration.js +0 -19
- package/dist/src/components/results/TestStepDuration.js.map +0 -1
- package/dist/src/components/results/TestStepOutcome.d.ts.map +0 -1
- package/dist/src/components/results/TestStepOutcome.js +0 -45
- package/dist/src/components/results/TestStepOutcome.js.map +0 -1
- package/dist/src/components/results/UndefinedResult.d.ts.map +0 -1
- package/dist/src/components/results/UndefinedResult.js +0 -18
- package/dist/src/components/results/UndefinedResult.js.map +0 -1
- package/dist/src/components/results/index.d.ts +0 -3
- package/dist/src/components/results/index.d.ts.map +0 -1
- package/dist/src/components/results/index.js.map +0 -1
- package/dist/src/formatExecutionDistance.d.ts.map +0 -1
- package/dist/src/formatExecutionDistance.js +0 -7
- package/dist/src/formatExecutionDistance.js.map +0 -1
- package/dist/src/formatExecutionDuration.d.ts.map +0 -1
- package/dist/src/formatExecutionDuration.js +0 -12
- package/dist/src/formatExecutionDuration.js.map +0 -1
- package/dist/src/formatPassedQuantity.d.ts.map +0 -1
- package/dist/src/formatPassedQuantity.js +0 -4
- package/dist/src/formatPassedQuantity.js.map +0 -1
- package/dist/src/formatStatusRate.d.ts.map +0 -1
- package/dist/src/formatStatusRate.js +0 -9
- package/dist/src/formatStatusRate.js.map +0 -1
- package/dist/src/hooks/helpers.d.ts.map +0 -1
- package/dist/src/hooks/helpers.js +0 -7
- package/dist/src/hooks/helpers.js.map +0 -1
- package/dist/src/hooks/index.d.ts +0 -3
- package/dist/src/hooks/index.d.ts.map +0 -1
- package/dist/src/hooks/index.js.map +0 -1
- package/dist/src/hooks/useFilteredDocuments.d.ts.map +0 -1
- package/dist/src/hooks/useFilteredDocuments.js +0 -85
- package/dist/src/hooks/useFilteredDocuments.js.map +0 -1
- package/dist/src/hooks/useMostSevereStatusByUri.d.ts.map +0 -1
- package/dist/src/hooks/useMostSevereStatusByUri.js +0 -25
- package/dist/src/hooks/useMostSevereStatusByUri.js.map +0 -1
- package/dist/src/hooks/useQueries.d.ts.map +0 -1
- package/dist/src/hooks/useQueries.js +0 -9
- package/dist/src/hooks/useQueries.js.map +0 -1
- package/dist/src/hooks/useResultStatistics.d.ts.map +0 -1
- package/dist/src/hooks/useResultStatistics.js +0 -24
- package/dist/src/hooks/useResultStatistics.js.map +0 -1
- package/dist/src/hooks/useSearch.d.ts.map +0 -1
- package/dist/src/hooks/useSearch.js +0 -6
- package/dist/src/hooks/useSearch.js.map +0 -1
- package/dist/src/hooks/useTestCaseStarted.d.ts.map +0 -1
- package/dist/src/hooks/useTestCaseStarted.js +0 -20
- package/dist/src/hooks/useTestCaseStarted.js.map +0 -1
- package/dist/src/hooks/useTestRunHooks.d.ts.map +0 -1
- package/dist/src/hooks/useTestRunHooks.js +0 -14
- package/dist/src/hooks/useTestRunHooks.js.map +0 -1
- package/dist/src/index.d.ts +0 -3
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js.map +0 -1
- package/dist/src/isTagExpression.d.ts.map +0 -1
- package/dist/src/isTagExpression.js +0 -5
- package/dist/src/isTagExpression.js.map +0 -1
- package/dist/src/search/FeatureSearch.d.ts.map +0 -1
- package/dist/src/search/FeatureSearch.js +0 -37
- package/dist/src/search/FeatureSearch.js.map +0 -1
- package/dist/src/search/ScenarioLikeSearch.d.ts.map +0 -1
- package/dist/src/search/ScenarioLikeSearch.js +0 -37
- package/dist/src/search/ScenarioLikeSearch.js.map +0 -1
- package/dist/src/search/StepSearch.d.ts.map +0 -1
- package/dist/src/search/StepSearch.js +0 -40
- package/dist/src/search/StepSearch.js.map +0 -1
- package/dist/src/search/TextSearch.d.ts.map +0 -1
- package/dist/src/search/TextSearch.js +0 -70
- package/dist/src/search/TextSearch.js.map +0 -1
- package/dist/src/search/createSearchIndex.d.ts.map +0 -1
- package/dist/src/search/createSearchIndex.js +0 -10
- package/dist/src/search/createSearchIndex.js.map +0 -1
- package/dist/src/search/deriveLineageConstraints.d.ts.map +0 -1
- package/dist/src/search/deriveLineageConstraints.js +0 -38
- package/dist/src/search/deriveLineageConstraints.js.map +0 -1
- package/dist/src/search/index.d.ts.map +0 -1
- package/dist/src/search/index.js +0 -5
- package/dist/src/search/index.js.map +0 -1
- package/dist/src/search/pruneGherkinDocuments.d.ts.map +0 -1
- package/dist/src/search/pruneGherkinDocuments.js +0 -180
- package/dist/src/search/pruneGherkinDocuments.js.map +0 -1
- package/dist/src/search/types.d.ts.map +0 -1
- package/dist/src/search/types.js +0 -2
- package/dist/src/search/types.js.map +0 -1
- package/dist/src/statuses.d.ts.map +0 -1
- package/dist/src/statuses.js +0 -12
- package/dist/src/statuses.js.map +0 -1
- package/dist/src/toRepositoryId.d.ts.map +0 -1
- package/dist/src/toRepositoryId.js +0 -12
- package/dist/src/toRepositoryId.js.map +0 -1
- package/dist/tsconfig.build.tsbuildinfo +0 -1
- /package/dist/{src/components → components}/app/CopyButton.module.scss +0 -0
- /package/dist/{src/components → components}/app/DocumentAccordion.module.scss +0 -0
- /package/dist/{src/components → components}/app/ExecutionSummary.module.scss +0 -0
- /package/dist/{src/components → components}/app/FilteredDocuments.module.scss +0 -0
- /package/dist/{src/components → components}/app/Header.module.scss +0 -0
- /package/dist/{src/components → components}/app/HealthChart.module.scss +0 -0
- /package/dist/{src/components → components}/app/NavigationButton.module.scss +0 -0
- /package/dist/{src/components → components}/app/Report.module.scss +0 -0
- /package/dist/{src/components → components}/app/SearchBar.module.scss +0 -0
- /package/dist/{src/components → components}/app/StatusesSummary.module.scss +0 -0
- /package/dist/{src/components → components}/app/TestRunHooks.module.scss +0 -0
- /package/dist/{src/components → components}/customise/CustomRendering.stories.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Anchor.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Children.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/DataTable.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Description.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/DocString.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/ErrorMessage.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Examples.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Keyword.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Parameter.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/StatusIcon.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/StepsList.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Tags.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/Title.module.scss +0 -0
- /package/dist/{src/components → components}/gherkin/attachment/Attachment.module.scss +0 -0
- /package/dist/{src/components → components}/results/AmbiguousResult.module.scss +0 -0
- /package/dist/{src/components → components}/results/ResultNote.module.scss +0 -0
- /package/dist/{src/components → components}/results/SourceReference.module.scss +0 -0
- /package/dist/{src/components → components}/results/TestCaseOutcome.module.scss +0 -0
- /package/dist/{src/components → components}/results/TestRunHookOutcome.module.scss +0 -0
- /package/dist/{src/components → components}/results/TestStepAttachments.module.scss +0 -0
- /package/dist/{src/components → components}/results/TestStepDuration.module.scss +0 -0
- /package/dist/{src/components → components}/results/TestStepOutcome.module.scss +0 -0
- /package/dist/{src/components → components}/results/UndefinedResult.module.scss +0 -0
- /package/dist/{src/styles → styles}/statuses.scss +0 -0
- /package/dist/{src/styles → styles}/tables.scss +0 -0
- /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=
|
|
@@ -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==
|
|
@@ -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==
|
|
@@ -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==
|
|
@@ -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==
|
|
@@ -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=
|
|
@@ -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
|
|
@@ -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==
|
|
@@ -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=
|
|
@@ -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
|
|
@@ -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
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './FailedResult.js';
|
|
2
|
+
export * from './TestCaseOutcome.js';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9yZXN1bHRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYyxzQkFBc0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vRmFpbGVkUmVzdWx0LmpzJ1xuZXhwb3J0ICogZnJvbSAnLi9UZXN0Q2FzZU91dGNvbWUuanMnXG4iXX0=
|
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
|
|
@@ -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
|
|
@@ -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=
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export function formatPassedQuantity(passed, total) {
|
|
2
|
+
return `(${passed} / ${total})`;
|
|
3
|
+
}
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0UGFzc2VkUXVhbnRpdHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvZm9ybWF0UGFzc2VkUXVhbnRpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLG9CQUFvQixDQUFDLE1BQWMsRUFBRSxLQUFhO0lBQ2hFLE9BQU8sSUFBSSxNQUFNLE1BQU0sS0FBSyxHQUFHLENBQUE7QUFDakMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBmb3JtYXRQYXNzZWRRdWFudGl0eShwYXNzZWQ6IG51bWJlciwgdG90YWw6IG51bWJlcikge1xuICByZXR1cm4gYCgke3Bhc3NlZH0gLyAke3RvdGFsfSlgXG59XG4iXX0=
|
|
@@ -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=
|
|
@@ -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 {
|
|
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,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=
|