@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
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { faCodeCommit } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
|
-
import ciCommitLink from '../../ciCommitLink.js';
|
|
5
|
-
export const CICommitLink = ({ ci }) => {
|
|
6
|
-
if (!ci.git) {
|
|
7
|
-
return null;
|
|
8
|
-
}
|
|
9
|
-
const shortHash = ci.git.revision.substring(0, 7);
|
|
10
|
-
const commitLink = ciCommitLink(ci);
|
|
11
|
-
if (commitLink) {
|
|
12
|
-
return (_jsxs(_Fragment, { children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", style: { opacity: 0.75 }, icon: faCodeCommit }), _jsx("a", { href: commitLink, target: "_blank", rel: "noopener nofollow noreferrer", children: _jsx("code", { children: shortHash }) })] }));
|
|
13
|
-
}
|
|
14
|
-
return (_jsxs(_Fragment, { children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", style: { opacity: 0.75 }, icon: faCodeCommit }), _jsx("code", { children: shortHash })] }));
|
|
15
|
-
};
|
|
16
|
-
//# sourceMappingURL=CICommitLink.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CICommitLink.js","sourceRoot":"","sources":["../../../../src/components/app/CICommitLink.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAGhE,OAAO,YAAY,MAAM,uBAAuB,CAAA;AAEhD,MAAM,CAAC,MAAM,YAAY,GAEpB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;IACd,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACZ,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,SAAS,GAAG,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACjD,MAAM,UAAU,GAAG,YAAY,CAAC,EAAE,CAAC,CAAA;IAEnC,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CACL,8BACE,KAAC,eAAe,mBAAa,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,GAAI,EACpF,YAAG,IAAI,EAAE,UAAU,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,8BAA8B,YACrE,yBAAO,SAAS,GAAQ,GACtB,IACH,CACJ,CAAA;IACH,CAAC;IACD,OAAO,CACL,8BACE,KAAC,eAAe,mBAAa,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,GAAI,EACpF,yBAAO,SAAS,GAAQ,IACvB,CACJ,CAAA;AACH,CAAC,CAAA","sourcesContent":["import type { Ci } from '@cucumber/messages'\nimport { faCodeCommit } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport type { FC } from 'react'\n\nimport ciCommitLink from '../../ciCommitLink.js'\n\nexport const CICommitLink: FC<{\n ci: Ci\n}> = ({ ci }) => {\n if (!ci.git) {\n return null\n }\n\n const shortHash = ci.git.revision.substring(0, 7)\n const commitLink = ciCommitLink(ci)\n\n if (commitLink) {\n return (\n <>\n <FontAwesomeIcon aria-hidden=\"true\" style={{ opacity: 0.75 }} icon={faCodeCommit} />\n <a href={commitLink} target=\"_blank\" rel=\"noopener nofollow noreferrer\">\n <code>{shortHash}</code>\n </a>\n </>\n )\n }\n return (\n <>\n <FontAwesomeIcon aria-hidden=\"true\" style={{ opacity: 0.75 }} icon={faCodeCommit} />\n <code>{shortHash}</code>\n </>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CIJobLink.d.ts","sourceRoot":"","sources":["../../../../src/components/app/CIJobLink.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAA;AAG5C,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAE/B,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC;IACzB,EAAE,EAAE,EAAE,CAAA;CACP,CAiBA,CAAA"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { faServer } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
|
-
export const CIJobLink = ({ ci }) => {
|
|
5
|
-
if (ci.url) {
|
|
6
|
-
return (_jsxs(_Fragment, { children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", style: { opacity: 0.75 }, icon: faServer }), _jsx("a", { href: ci.url, target: "_blank", rel: "noopener nofollow noreferrer", children: ci.name })] }));
|
|
7
|
-
}
|
|
8
|
-
return (_jsxs(_Fragment, { children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", style: { opacity: 0.75 }, icon: faServer }), _jsx("span", { children: ci.name })] }));
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=CIJobLink.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CIJobLink.js","sourceRoot":"","sources":["../../../../src/components/app/CIJobLink.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAGhE,MAAM,CAAC,MAAM,SAAS,GAEjB,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;IACd,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC;QACX,OAAO,CACL,8BACE,KAAC,eAAe,mBAAa,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,GAAI,EAChF,YAAG,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAC,QAAQ,EAAC,GAAG,EAAC,8BAA8B,YAChE,EAAE,CAAC,IAAI,GACN,IACH,CACJ,CAAA;IACH,CAAC;IACD,OAAO,CACL,8BACE,KAAC,eAAe,mBAAa,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,GAAI,EAChF,yBAAO,EAAE,CAAC,IAAI,GAAQ,IACrB,CACJ,CAAA;AACH,CAAC,CAAA","sourcesContent":["import type { Ci } from '@cucumber/messages'\nimport { faServer } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport type { FC } from 'react'\n\nexport const CIJobLink: FC<{\n ci: Ci\n}> = ({ ci }) => {\n if (ci.url) {\n return (\n <>\n <FontAwesomeIcon aria-hidden=\"true\" style={{ opacity: 0.75 }} icon={faServer} />\n <a href={ci.url} target=\"_blank\" rel=\"noopener nofollow noreferrer\">\n {ci.name}\n </a>\n </>\n )\n }\n return (\n <>\n <FontAwesomeIcon aria-hidden=\"true\" style={{ opacity: 0.75 }} icon={faServer} />\n <span>{ci.name}</span>\n </>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ControlledSearchProvider.d.ts","sourceRoot":"","sources":["../../../../src/components/app/ControlledSearchProvider.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAW,MAAM,OAAO,CAAA;AAGhE,OAA2B,EAEzB,KAAK,WAAW,EACjB,MAAM,wBAAwB,CAAA;AAE/B,UAAU,KAAK;IACb,KAAK,EAAE,WAAW,CAAA;IAClB,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,CAAA;CAC1C;AAED,eAAO,MAAM,wBAAwB,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAkBjE,CAAA"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { parse } from '@cucumber/tag-expressions';
|
|
3
|
-
import { useMemo } from 'react';
|
|
4
|
-
import isTagExpression from '../../isTagExpression.js';
|
|
5
|
-
import SearchQueryContext from '../../SearchContext.js';
|
|
6
|
-
export const ControlledSearchProvider = ({ value, onChange, children, }) => {
|
|
7
|
-
const contextValue = useMemo(() => {
|
|
8
|
-
const unchanged = !value.query && !value.hideStatuses.length;
|
|
9
|
-
return {
|
|
10
|
-
query: value.query,
|
|
11
|
-
hideStatuses: value.hideStatuses,
|
|
12
|
-
unchanged,
|
|
13
|
-
...deriveState(value.query),
|
|
14
|
-
update: (newValues) => {
|
|
15
|
-
onChange({ ...value, ...newValues });
|
|
16
|
-
},
|
|
17
|
-
};
|
|
18
|
-
}, [value, onChange]);
|
|
19
|
-
return _jsx(SearchQueryContext.Provider, { value: contextValue, children: children });
|
|
20
|
-
};
|
|
21
|
-
function deriveState(query) {
|
|
22
|
-
if (!query) {
|
|
23
|
-
return {};
|
|
24
|
-
}
|
|
25
|
-
if (isTagExpression(query)) {
|
|
26
|
-
try {
|
|
27
|
-
return {
|
|
28
|
-
tagExpression: parse(query),
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
catch (error) {
|
|
32
|
-
console.error(`Failed to parse tag expression "${query}":`, error);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
return {
|
|
36
|
-
searchTerm: query,
|
|
37
|
-
};
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=ControlledSearchProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ControlledSearchProvider.js","sourceRoot":"","sources":["../../../../src/components/app/ControlledSearchProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAA;AACjD,OAAO,EAAmC,OAAO,EAAE,MAAM,OAAO,CAAA;AAEhE,OAAO,eAAe,MAAM,0BAA0B,CAAA;AACtD,OAAO,kBAGN,MAAM,wBAAwB,CAAA;AAO/B,MAAM,CAAC,MAAM,wBAAwB,GAAiC,CAAC,EACrE,KAAK,EACL,QAAQ,EACR,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,YAAY,GAAuB,OAAO,CAAC,GAAG,EAAE;QACpD,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAA;QAC5D,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS;YACT,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;YAC3B,MAAM,EAAE,CAAC,SAA+B,EAAE,EAAE;gBAC1C,QAAQ,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,SAAS,EAAE,CAAC,CAAA;YACtC,CAAC;SACF,CAAA;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;IACrB,OAAO,KAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YAAG,QAAQ,GAA+B,CAAA;AACnG,CAAC,CAAA;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,CAAA;IACX,CAAC;IACD,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,IAAI,CAAC;YACH,OAAO;gBACL,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC;aAC5B,CAAA;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,mCAAmC,KAAK,IAAI,EAAE,KAAK,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IACD,OAAO;QACL,UAAU,EAAE,KAAK;KAClB,CAAA;AACH,CAAC","sourcesContent":["import { parse } from '@cucumber/tag-expressions'\nimport { type FC, type PropsWithChildren, useMemo } from 'react'\n\nimport isTagExpression from '../../isTagExpression.js'\nimport SearchQueryContext, {\n type SearchContextValue,\n type SearchState,\n} from '../../SearchContext.js'\n\ninterface Props {\n value: SearchState\n onChange: (newValue: SearchState) => void\n}\n\nexport const ControlledSearchProvider: FC<PropsWithChildren<Props>> = ({\n value,\n onChange,\n children,\n}) => {\n const contextValue: SearchContextValue = useMemo(() => {\n const unchanged = !value.query && !value.hideStatuses.length\n return {\n query: value.query,\n hideStatuses: value.hideStatuses,\n unchanged,\n ...deriveState(value.query),\n update: (newValues: Partial<SearchState>) => {\n onChange({ ...value, ...newValues })\n },\n }\n }, [value, onChange])\n return <SearchQueryContext.Provider value={contextValue}>{children}</SearchQueryContext.Provider>\n}\n\nfunction deriveState(query: string): Pick<SearchContextValue, 'searchTerm' | 'tagExpression'> {\n if (!query) {\n return {}\n }\n if (isTagExpression(query)) {\n try {\n return {\n tagExpression: parse(query),\n }\n } catch (error) {\n console.error(`Failed to parse tag expression \"${query}\":`, error)\n }\n }\n return {\n searchTerm: query,\n }\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CopyButton.d.ts","sourceRoot":"","sources":["../../../../src/components/app/CopyButton.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,EAAY,MAAM,OAAO,CAAA;AAIzC,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CA4B/D,CAAA"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { faCheck, faCopy } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
|
-
import { useState } from 'react';
|
|
5
|
-
import styles from './CopyButton.module.scss';
|
|
6
|
-
export const CopyButton = ({ text, className }) => {
|
|
7
|
-
const [copied, setCopied] = useState(false);
|
|
8
|
-
const handleCopy = () => {
|
|
9
|
-
navigator.clipboard
|
|
10
|
-
.writeText(text)
|
|
11
|
-
.then(() => {
|
|
12
|
-
setCopied(true);
|
|
13
|
-
setTimeout(() => {
|
|
14
|
-
setCopied(false);
|
|
15
|
-
}, 3000);
|
|
16
|
-
})
|
|
17
|
-
.catch((err) => {
|
|
18
|
-
console.error('Failed to copy', err);
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
return (_jsx("button", { type: "button", onClick: handleCopy, "aria-label": copied ? 'Copied' : 'Copy', disabled: copied, className: `${styles.button}${className ? ` ${className}` : ''}`, children: _jsx(FontAwesomeIcon, { icon: copied ? faCheck : faCopy }) }));
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=CopyButton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CopyButton.js","sourceRoot":"","sources":["../../../../src/components/app/CopyButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAW,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAE7C,MAAM,CAAC,MAAM,UAAU,GAA6C,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;IAC1F,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAE3C,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,SAAS,CAAC,SAAS;aAChB,SAAS,CAAC,IAAI,CAAC;aACf,IAAI,CAAC,GAAG,EAAE;YACT,SAAS,CAAC,IAAI,CAAC,CAAA;YACf,UAAU,CAAC,GAAG,EAAE;gBACd,SAAS,CAAC,KAAK,CAAC,CAAA;YAClB,CAAC,EAAE,IAAI,CAAC,CAAA;QACV,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAA;QACtC,CAAC,CAAC,CAAA;IACN,CAAC,CAAA;IAED,OAAO,CACL,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,UAAU,gBACP,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EACtC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,GAAG,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,YAEhE,KAAC,eAAe,IAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,GAAI,GAC7C,CACV,CAAA;AACH,CAAC,CAAA","sourcesContent":["import { faCheck, faCopy } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { type FC, useState } from 'react'\n\nimport styles from './CopyButton.module.scss'\n\nexport const CopyButton: FC<{ text: string; className?: string }> = ({ text, className }) => {\n const [copied, setCopied] = useState(false)\n\n const handleCopy = () => {\n navigator.clipboard\n .writeText(text)\n .then(() => {\n setCopied(true)\n setTimeout(() => {\n setCopied(false)\n }, 3000)\n })\n .catch((err) => {\n console.error('Failed to copy', err)\n })\n }\n\n return (\n <button\n type=\"button\"\n onClick={handleCopy}\n aria-label={copied ? 'Copied' : 'Copy'}\n disabled={copied}\n className={`${styles.button}${className ? ` ${className}` : ''}`}\n >\n <FontAwesomeIcon icon={copied ? faCheck : faCopy} />\n </button>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentAccordion.d.ts","sourceRoot":"","sources":["../../../../src/components/app/DocumentAccordion.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAG9D,OAAO,EAAE,KAAK,EAAE,EAAqB,KAAK,SAAS,EAAwB,MAAM,OAAO,CAAA;AAaxF,UAAU,sBAAsB;IAC9B,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC1B,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED,UAAU,0BAA0B;IAClC,MAAM,EAAE,oBAAoB,CAAA;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,SAAS,CAAA;CACpB;AAaD,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAUxD,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,EAAE,CAAC,0BAA0B,CAuBhE,CAAA"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { faChevronRight } from '@fortawesome/free-solid-svg-icons';
|
|
3
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
|
-
import { useContext, useState } from 'react';
|
|
5
|
-
import { Button, Disclosure, DisclosureGroup, DisclosurePanel, DisclosureStateContext, Heading, } from 'react-aria-components';
|
|
6
|
-
import { StatusIcon } from '../gherkin/index.js';
|
|
7
|
-
import styles from './DocumentAccordion.module.scss';
|
|
8
|
-
const LazyContent = ({ children }) => {
|
|
9
|
-
const state = useContext(DisclosureStateContext);
|
|
10
|
-
const [hasBeenExpanded, setHasBeenExpanded] = useState(state?.isExpanded ?? false);
|
|
11
|
-
if (state?.isExpanded && !hasBeenExpanded) {
|
|
12
|
-
setHasBeenExpanded(true);
|
|
13
|
-
}
|
|
14
|
-
return hasBeenExpanded ? children : null;
|
|
15
|
-
};
|
|
16
|
-
export const DocumentAccordion = ({ expanded, children }) => {
|
|
17
|
-
return (_jsx(DisclosureGroup, { allowsMultipleExpanded: true, defaultExpandedKeys: expanded, className: styles.accordion, children: children }));
|
|
18
|
-
};
|
|
19
|
-
export const DocumentAccordionItem = ({ status, uri, children, }) => {
|
|
20
|
-
return (_jsxs(Disclosure, { id: uri, className: styles.item, children: [_jsx(Heading, { className: styles.heading, children: _jsxs(Button, { slot: "trigger", className: styles.button, children: [_jsx(FontAwesomeIcon, { className: styles.chevron, "aria-hidden": "true", icon: faChevronRight }), _jsx("span", { className: styles.icon, children: _jsx(StatusIcon, { status: status }) }), _jsx("span", { children: uri })] }) }), _jsx(DisclosurePanel, { children: _jsx(LazyContent, { children: _jsx("div", { className: styles.content, children: children }) }) })] }));
|
|
21
|
-
};
|
|
22
|
-
//# sourceMappingURL=DocumentAccordion.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DocumentAccordion.js","sourceRoot":"","sources":["../../../../src/components/app/DocumentAccordion.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAA8C,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACxF,OAAO,EACL,MAAM,EACN,UAAU,EACV,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,OAAO,GACR,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,MAAM,MAAM,iCAAiC,CAAA;AAapD,MAAM,WAAW,GAAmC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACnE,MAAM,KAAK,GAAG,UAAU,CAAC,sBAAsB,CAAC,CAAA;IAChD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,KAAK,EAAE,UAAU,IAAI,KAAK,CAAC,CAAA;IAElF,IAAI,KAAK,EAAE,UAAU,IAAI,CAAC,eAAe,EAAE,CAAC;QAC1C,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;IAED,OAAO,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAA;AAC1C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAA+B,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE;IACtF,OAAO,CACL,KAAC,eAAe,IACd,sBAAsB,QACtB,mBAAmB,EAAE,QAAQ,EAC7B,SAAS,EAAE,MAAM,CAAC,SAAS,YAE1B,QAAQ,GACO,CACnB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAmC,CAAC,EACpE,MAAM,EACN,GAAG,EACH,QAAQ,GACT,EAAE,EAAE;IACH,OAAO,CACL,MAAC,UAAU,IAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,aACzC,KAAC,OAAO,IAAC,SAAS,EAAE,MAAM,CAAC,OAAO,YAChC,MAAC,MAAM,IAAC,IAAI,EAAC,SAAS,EAAC,SAAS,EAAE,MAAM,CAAC,MAAM,aAC7C,KAAC,eAAe,IAAC,SAAS,EAAE,MAAM,CAAC,OAAO,iBAAc,MAAM,EAAC,IAAI,EAAE,cAAc,GAAI,EACvF,eAAM,SAAS,EAAE,MAAM,CAAC,IAAI,YAC1B,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,GAAI,GACzB,EACP,yBAAO,GAAG,GAAQ,IACX,GACD,EACV,KAAC,eAAe,cACd,KAAC,WAAW,cACV,cAAK,SAAS,EAAE,MAAM,CAAC,OAAO,YAAG,QAAQ,GAAO,GACpC,GACE,IACP,CACd,CAAA;AACH,CAAC,CAAA","sourcesContent":["import type { TestStepResultStatus } from '@cucumber/messages'\nimport { faChevronRight } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport { type FC, type ReactElement, type ReactNode, useContext, useState } from 'react'\nimport {\n Button,\n Disclosure,\n DisclosureGroup,\n DisclosurePanel,\n DisclosureStateContext,\n Heading,\n} from 'react-aria-components'\n\nimport { StatusIcon } from '../gherkin/index.js'\nimport styles from './DocumentAccordion.module.scss'\n\ninterface DocumentAccordionProps {\n expanded: Iterable<string>\n children: ReactNode\n}\n\ninterface DocumentAccordionItemProps {\n status: TestStepResultStatus\n uri: string\n children: ReactNode\n}\n\nconst LazyContent: FC<{ children: ReactElement }> = ({ children }) => {\n const state = useContext(DisclosureStateContext)\n const [hasBeenExpanded, setHasBeenExpanded] = useState(state?.isExpanded ?? false)\n\n if (state?.isExpanded && !hasBeenExpanded) {\n setHasBeenExpanded(true)\n }\n\n return hasBeenExpanded ? children : null\n}\n\nexport const DocumentAccordion: FC<DocumentAccordionProps> = ({ expanded, children }) => {\n return (\n <DisclosureGroup\n allowsMultipleExpanded\n defaultExpandedKeys={expanded}\n className={styles.accordion}\n >\n {children}\n </DisclosureGroup>\n )\n}\n\nexport const DocumentAccordionItem: FC<DocumentAccordionItemProps> = ({\n status,\n uri,\n children,\n}) => {\n return (\n <Disclosure id={uri} className={styles.item}>\n <Heading className={styles.heading}>\n <Button slot=\"trigger\" className={styles.button}>\n <FontAwesomeIcon className={styles.chevron} aria-hidden=\"true\" icon={faChevronRight} />\n <span className={styles.icon}>\n <StatusIcon status={status} />\n </span>\n <span>{uri}</span>\n </Button>\n </Heading>\n <DisclosurePanel>\n <LazyContent>\n <div className={styles.content}>{children}</div>\n </LazyContent>\n </DisclosurePanel>\n </Disclosure>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EnvelopesProvider.d.ts","sourceRoot":"","sources":["../../../../src/components/app/EnvelopesProvider.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAElD,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAW,MAAM,OAAO,CAAA;AAIhE,UAAU,KAAK;IACb,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAA;CAC/B;AAED,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAe1D,CAAA"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Query as GherkinQuery } from '@cucumber/gherkin-utils';
|
|
3
|
-
import { Query as CucumberQuery } from '@cucumber/query';
|
|
4
|
-
import { useMemo } from 'react';
|
|
5
|
-
import { QueriesProvider } from './QueriesProvider.js';
|
|
6
|
-
export const EnvelopesProvider = ({ envelopes, children }) => {
|
|
7
|
-
const { gherkinQuery, cucumberQuery } = useMemo(() => {
|
|
8
|
-
const gherkinQuery = new GherkinQuery();
|
|
9
|
-
const cucumberQuery = new CucumberQuery();
|
|
10
|
-
for (const envelope of envelopes) {
|
|
11
|
-
gherkinQuery.update(envelope);
|
|
12
|
-
cucumberQuery.update(envelope);
|
|
13
|
-
}
|
|
14
|
-
return { gherkinQuery, cucumberQuery };
|
|
15
|
-
}, [envelopes]);
|
|
16
|
-
return (_jsx(QueriesProvider, { gherkinQuery: gherkinQuery, cucumberQuery: cucumberQuery, children: children }));
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=EnvelopesProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EnvelopesProvider.js","sourceRoot":"","sources":["../../../../src/components/app/EnvelopesProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAE/D,OAAO,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,EAAmC,OAAO,EAAE,MAAM,OAAO,CAAA;AAEhE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAMtD,MAAM,CAAC,MAAM,iBAAiB,GAAiC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IACzF,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE;QACnD,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAA;QACvC,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAA;QACzC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAC7B,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QAChC,CAAC;QACD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,CAAA;IACxC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IACf,OAAO,CACL,KAAC,eAAe,IAAC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,YACtE,QAAQ,GACO,CACnB,CAAA;AACH,CAAC,CAAA","sourcesContent":["import { Query as GherkinQuery } from '@cucumber/gherkin-utils'\nimport type { Envelope } from '@cucumber/messages'\nimport { Query as CucumberQuery } from '@cucumber/query'\nimport { type FC, type PropsWithChildren, useMemo } from 'react'\n\nimport { QueriesProvider } from './QueriesProvider.js'\n\ninterface Props {\n envelopes: readonly Envelope[]\n}\n\nexport const EnvelopesProvider: FC<PropsWithChildren<Props>> = ({ envelopes, children }) => {\n const { gherkinQuery, cucumberQuery } = useMemo(() => {\n const gherkinQuery = new GherkinQuery()\n const cucumberQuery = new CucumberQuery()\n for (const envelope of envelopes) {\n gherkinQuery.update(envelope)\n cucumberQuery.update(envelope)\n }\n return { gherkinQuery, cucumberQuery }\n }, [envelopes])\n return (\n <QueriesProvider gherkinQuery={gherkinQuery} cucumberQuery={cucumberQuery}>\n {children}\n </QueriesProvider>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionSummary.d.ts","sourceRoot":"","sources":["../../../../src/components/app/ExecutionSummary.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAmB/B,eAAO,MAAM,gBAAgB,EAAE,EAmG9B,CAAA"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { TestStepResultStatus, TimeConversion } from '@cucumber/messages';
|
|
3
|
-
import { faCodeBranch, faStopwatch, faTag } from '@fortawesome/free-solid-svg-icons';
|
|
4
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
5
|
-
import { formatExecutionDistance } from '../../formatExecutionDistance.js';
|
|
6
|
-
import { formatExecutionDuration } from '../../formatExecutionDuration.js';
|
|
7
|
-
import { formatPassedQuantity } from '../../formatPassedQuantity.js';
|
|
8
|
-
import { formatStatusRate } from '../../formatStatusRate.js';
|
|
9
|
-
import { useQueries } from '../../hooks/index.js';
|
|
10
|
-
import { useResultStatistics } from '../../hooks/useResultStatistics.js';
|
|
11
|
-
import { CICommitLink } from './CICommitLink.js';
|
|
12
|
-
import { CIJobLink } from './CIJobLink.js';
|
|
13
|
-
import { CopyButton } from './CopyButton.js';
|
|
14
|
-
import styles from './ExecutionSummary.module.scss';
|
|
15
|
-
import { HeaderItem, HeaderSection, HeaderSubItem } from './Header.js';
|
|
16
|
-
import { HealthChart } from './HealthChart.js';
|
|
17
|
-
import { ImplementationIcon } from './ImplementationIcon.js';
|
|
18
|
-
import { makeSetupString } from './makeSetupString.js';
|
|
19
|
-
import { OSIcon } from './OSIcon.js';
|
|
20
|
-
import { RuntimeIcon } from './RuntimeIcon.js';
|
|
21
|
-
export const ExecutionSummary = () => {
|
|
22
|
-
const { cucumberQuery } = useQueries();
|
|
23
|
-
const testRunStarted = cucumberQuery.findTestRunStarted();
|
|
24
|
-
const testRunFinished = cucumberQuery.findTestRunFinished();
|
|
25
|
-
const meta = cucumberQuery.findMeta();
|
|
26
|
-
const { scenarioCountByStatus, totalScenarioCount } = useResultStatistics();
|
|
27
|
-
const startDate = testRunStarted?.timestamp
|
|
28
|
-
? new Date(TimeConversion.timestampToMillisecondsSinceEpoch(testRunStarted.timestamp))
|
|
29
|
-
: undefined;
|
|
30
|
-
const finishDate = testRunFinished?.timestamp
|
|
31
|
-
? new Date(TimeConversion.timestampToMillisecondsSinceEpoch(testRunFinished.timestamp))
|
|
32
|
-
: undefined;
|
|
33
|
-
return (_jsxs(_Fragment, { children: [meta && (_jsx(HeaderSection, { children: _jsxs(HeaderItem, { testId: "cucumber.summary.setup", children: [_jsxs(HeaderSubItem, { children: [_jsx(ImplementationIcon, { implementation: meta.implementation }), _jsx(RuntimeIcon, { runtime: meta.runtime }), _jsx(OSIcon, { os: meta.os })] }), _jsxs("span", { "data-testid": "cucumber.summary.setup.phrase", children: [_jsx(VersionedTool, { ...meta.implementation, fallback: "unknown tool" }), _jsx("em", { className: styles.conjunction, children: " with " }), _jsx(VersionedTool, { ...meta.runtime, fallback: "unknown runtime" }), _jsx("em", { className: styles.conjunction, children: " on " }), _jsx(VersionedTool, { ...meta.os, fallback: "unknown platform" })] }), _jsx(CopyButton, { text: makeSetupString(meta) })] }) })), _jsxs(HeaderSection, { children: [_jsx(HeaderItem, { testId: "cucumber.summary.status", children: _jsxs(HeaderSubItem, { children: [_jsx(HealthChart, {}), _jsxs("span", { children: [formatStatusRate(scenarioCountByStatus[TestStepResultStatus.PASSED], totalScenarioCount), ' ', formatPassedQuantity(scenarioCountByStatus[TestStepResultStatus.PASSED], totalScenarioCount), ' passed'] })] }) }), startDate && (_jsx(HeaderItem, { testId: "cucumber.summary.timing", children: _jsxs(HeaderSubItem, { children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", style: { opacity: 0.75 }, icon: faStopwatch }), _jsxs("span", { children: [_jsx("time", { title: startDate.toString(), dateTime: startDate.toISOString(), children: formatExecutionDistance(startDate) }), finishDate && (_jsxs(_Fragment, { children: [_jsx("em", { className: styles.conjunction, children: " in " }), _jsx("span", { children: formatExecutionDuration(startDate, finishDate) })] }))] })] }) })), meta?.ci && (_jsx(HeaderItem, { testId: "cucumber.summary.ci", children: _jsx(HeaderSubItem, { children: _jsx(CIJobLink, { ci: meta.ci }) }) })), meta?.ci?.git && (_jsxs(HeaderItem, { testId: "cucumber.summary.git", children: [_jsx(HeaderSubItem, { children: _jsx(CICommitLink, { ci: meta.ci }) }), meta.ci.git.branch && (_jsxs(HeaderSubItem, { children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", style: { opacity: 0.75 }, icon: faCodeBranch }), _jsx("code", { children: meta.ci.git.branch })] })), meta.ci.git.tag && (_jsxs(HeaderSubItem, { children: [_jsx(FontAwesomeIcon, { "aria-hidden": "true", style: { opacity: 0.75 }, icon: faTag }), _jsx("code", { children: meta.ci.git.tag })] }))] }))] })] }));
|
|
34
|
-
};
|
|
35
|
-
const VersionedTool = ({ name, fallback, version }) => {
|
|
36
|
-
return (_jsxs("code", { children: [_jsx("strong", { children: name || fallback }), version && _jsxs("span", { children: ["@", version] })] }));
|
|
37
|
-
};
|
|
38
|
-
//# sourceMappingURL=ExecutionSummary.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExecutionSummary.js","sourceRoot":"","sources":["../../../../src/components/app/ExecutionSummary.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAgB,oBAAoB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAA;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAGhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAA;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAA;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,MAAM,MAAM,gCAAgC,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACtE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,MAAM,CAAC,MAAM,gBAAgB,GAAO,GAAG,EAAE;IACvC,MAAM,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,CAAA;IACtC,MAAM,cAAc,GAAG,aAAa,CAAC,kBAAkB,EAAE,CAAA;IACzD,MAAM,eAAe,GAAG,aAAa,CAAC,mBAAmB,EAAE,CAAA;IAC3D,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAA;IACrC,MAAM,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,GAAG,mBAAmB,EAAE,CAAA;IAE3E,MAAM,SAAS,GAAG,cAAc,EAAE,SAAS;QACzC,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,iCAAiC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACtF,CAAC,CAAC,SAAS,CAAA;IACb,MAAM,UAAU,GAAG,eAAe,EAAE,SAAS;QAC3C,CAAC,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,iCAAiC,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QACvF,CAAC,CAAC,SAAS,CAAA;IAEb,OAAO,CACL,8BACG,IAAI,IAAI,CACP,KAAC,aAAa,cACZ,MAAC,UAAU,IAAC,MAAM,EAAC,wBAAwB,aACzC,MAAC,aAAa,eACZ,KAAC,kBAAkB,IAAC,cAAc,EAAE,IAAI,CAAC,cAAc,GAAI,EAC3D,KAAC,WAAW,IAAC,OAAO,EAAE,IAAI,CAAC,OAAO,GAAI,EACtC,KAAC,MAAM,IAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAI,IACT,EAChB,+BAAkB,+BAA+B,aAC/C,KAAC,aAAa,OAAK,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAC,cAAc,GAAG,EAClE,aAAI,SAAS,EAAE,MAAM,CAAC,WAAW,uBAAa,EAC9C,KAAC,aAAa,OAAK,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAC,iBAAiB,GAAG,EAC9D,aAAI,SAAS,EAAE,MAAM,CAAC,WAAW,qBAAW,EAC5C,KAAC,aAAa,OAAK,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAC,kBAAkB,GAAG,IACrD,EACP,KAAC,UAAU,IAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,GAAI,IAChC,GACC,CACjB,EACD,MAAC,aAAa,eACZ,KAAC,UAAU,IAAC,MAAM,EAAC,yBAAyB,YAC1C,MAAC,aAAa,eACZ,KAAC,WAAW,KAAG,EACf,2BACG,gBAAgB,CACf,qBAAqB,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAClD,kBAAkB,CACnB,EAAE,GAAG,EACL,oBAAoB,CACnB,qBAAqB,CAAC,oBAAoB,CAAC,MAAM,CAAC,EAClD,kBAAkB,CACnB,EACA,SAAS,IACL,IACO,GACL,EACZ,SAAS,IAAI,CACZ,KAAC,UAAU,IAAC,MAAM,EAAC,yBAAyB,YAC1C,MAAC,aAAa,eACZ,KAAC,eAAe,mBAAa,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,GAAI,EACnF,2BACE,eAAM,KAAK,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,SAAS,CAAC,WAAW,EAAE,YACjE,uBAAuB,CAAC,SAAS,CAAC,GAC9B,EACN,UAAU,IAAI,CACb,8BACE,aAAI,SAAS,EAAE,MAAM,CAAC,WAAW,qBAAW,EAC5C,yBAAO,uBAAuB,CAAC,SAAS,EAAE,UAAU,CAAC,GAAQ,IAC5D,CACJ,IACI,IACO,GACL,CACd,EACA,IAAI,EAAE,EAAE,IAAI,CACX,KAAC,UAAU,IAAC,MAAM,EAAC,qBAAqB,YACtC,KAAC,aAAa,cACZ,KAAC,SAAS,IAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAI,GACZ,GACL,CACd,EACA,IAAI,EAAE,EAAE,EAAE,GAAG,IAAI,CAChB,MAAC,UAAU,IAAC,MAAM,EAAC,sBAAsB,aACvC,KAAC,aAAa,cACZ,KAAC,YAAY,IAAC,EAAE,EAAE,IAAI,CAAC,EAAE,GAAI,GACf,EACf,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,CACrB,MAAC,aAAa,eACZ,KAAC,eAAe,mBAAa,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,GAAI,EACpF,yBAAO,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,GAAQ,IACnB,CACjB,EACA,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAClB,MAAC,aAAa,eACZ,KAAC,eAAe,mBAAa,MAAM,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,GAAI,EAC7E,yBAAO,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,GAAQ,IAChB,CACjB,IACU,CACd,IACa,IACf,CACJ,CAAA;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAuC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;IACxF,OAAO,CACL,2BACE,2BAAS,IAAI,IAAI,QAAQ,GAAU,EAClC,OAAO,IAAI,gCAAQ,OAAO,IAAQ,IAC9B,CACR,CAAA;AACH,CAAC,CAAA","sourcesContent":["import { type Product, TestStepResultStatus, TimeConversion } from '@cucumber/messages'\nimport { faCodeBranch, faStopwatch, faTag } from '@fortawesome/free-solid-svg-icons'\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\nimport type { FC } from 'react'\n\nimport { formatExecutionDistance } from '../../formatExecutionDistance.js'\nimport { formatExecutionDuration } from '../../formatExecutionDuration.js'\nimport { formatPassedQuantity } from '../../formatPassedQuantity.js'\nimport { formatStatusRate } from '../../formatStatusRate.js'\nimport { useQueries } from '../../hooks/index.js'\nimport { useResultStatistics } from '../../hooks/useResultStatistics.js'\nimport { CICommitLink } from './CICommitLink.js'\nimport { CIJobLink } from './CIJobLink.js'\nimport { CopyButton } from './CopyButton.js'\nimport styles from './ExecutionSummary.module.scss'\nimport { HeaderItem, HeaderSection, HeaderSubItem } from './Header.js'\nimport { HealthChart } from './HealthChart.js'\nimport { ImplementationIcon } from './ImplementationIcon.js'\nimport { makeSetupString } from './makeSetupString.js'\nimport { OSIcon } from './OSIcon.js'\nimport { RuntimeIcon } from './RuntimeIcon.js'\n\nexport const ExecutionSummary: FC = () => {\n const { cucumberQuery } = useQueries()\n const testRunStarted = cucumberQuery.findTestRunStarted()\n const testRunFinished = cucumberQuery.findTestRunFinished()\n const meta = cucumberQuery.findMeta()\n const { scenarioCountByStatus, totalScenarioCount } = useResultStatistics()\n\n const startDate = testRunStarted?.timestamp\n ? new Date(TimeConversion.timestampToMillisecondsSinceEpoch(testRunStarted.timestamp))\n : undefined\n const finishDate = testRunFinished?.timestamp\n ? new Date(TimeConversion.timestampToMillisecondsSinceEpoch(testRunFinished.timestamp))\n : undefined\n\n return (\n <>\n {meta && (\n <HeaderSection>\n <HeaderItem testId=\"cucumber.summary.setup\">\n <HeaderSubItem>\n <ImplementationIcon implementation={meta.implementation} />\n <RuntimeIcon runtime={meta.runtime} />\n <OSIcon os={meta.os} />\n </HeaderSubItem>\n <span data-testid=\"cucumber.summary.setup.phrase\">\n <VersionedTool {...meta.implementation} fallback=\"unknown tool\" />\n <em className={styles.conjunction}> with </em>\n <VersionedTool {...meta.runtime} fallback=\"unknown runtime\" />\n <em className={styles.conjunction}> on </em>\n <VersionedTool {...meta.os} fallback=\"unknown platform\" />\n </span>\n <CopyButton text={makeSetupString(meta)} />\n </HeaderItem>\n </HeaderSection>\n )}\n <HeaderSection>\n <HeaderItem testId=\"cucumber.summary.status\">\n <HeaderSubItem>\n <HealthChart />\n <span>\n {formatStatusRate(\n scenarioCountByStatus[TestStepResultStatus.PASSED],\n totalScenarioCount\n )}{' '}\n {formatPassedQuantity(\n scenarioCountByStatus[TestStepResultStatus.PASSED],\n totalScenarioCount\n )}\n {' passed'}\n </span>\n </HeaderSubItem>\n </HeaderItem>\n {startDate && (\n <HeaderItem testId=\"cucumber.summary.timing\">\n <HeaderSubItem>\n <FontAwesomeIcon aria-hidden=\"true\" style={{ opacity: 0.75 }} icon={faStopwatch} />\n <span>\n <time title={startDate.toString()} dateTime={startDate.toISOString()}>\n {formatExecutionDistance(startDate)}\n </time>\n {finishDate && (\n <>\n <em className={styles.conjunction}> in </em>\n <span>{formatExecutionDuration(startDate, finishDate)}</span>\n </>\n )}\n </span>\n </HeaderSubItem>\n </HeaderItem>\n )}\n {meta?.ci && (\n <HeaderItem testId=\"cucumber.summary.ci\">\n <HeaderSubItem>\n <CIJobLink ci={meta.ci} />\n </HeaderSubItem>\n </HeaderItem>\n )}\n {meta?.ci?.git && (\n <HeaderItem testId=\"cucumber.summary.git\">\n <HeaderSubItem>\n <CICommitLink ci={meta.ci} />\n </HeaderSubItem>\n {meta.ci.git.branch && (\n <HeaderSubItem>\n <FontAwesomeIcon aria-hidden=\"true\" style={{ opacity: 0.75 }} icon={faCodeBranch} />\n <code>{meta.ci.git.branch}</code>\n </HeaderSubItem>\n )}\n {meta.ci.git.tag && (\n <HeaderSubItem>\n <FontAwesomeIcon aria-hidden=\"true\" style={{ opacity: 0.75 }} icon={faTag} />\n <code>{meta.ci.git.tag}</code>\n </HeaderSubItem>\n )}\n </HeaderItem>\n )}\n </HeaderSection>\n </>\n )\n}\n\nconst VersionedTool: FC<Product & { fallback: string }> = ({ name, fallback, version }) => {\n return (\n <code>\n <strong>{name || fallback}</strong>\n {version && <span>@{version}</span>}\n </code>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FilteredDocuments.d.ts","sourceRoot":"","sources":["../../../../src/components/app/FilteredDocuments.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAM/B,eAAO,MAAM,iBAAiB,EAAE,EAc/B,CAAA"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useFilteredDocuments } from '../../hooks/useFilteredDocuments.js';
|
|
3
|
-
import styles from './FilteredDocuments.module.scss';
|
|
4
|
-
import { GherkinDocumentList } from './GherkinDocumentList.js';
|
|
5
|
-
export const FilteredDocuments = () => {
|
|
6
|
-
const { results, filtered } = useFilteredDocuments();
|
|
7
|
-
if (!results) {
|
|
8
|
-
return null;
|
|
9
|
-
}
|
|
10
|
-
if (!results.length) {
|
|
11
|
-
return filtered ? (_jsx("p", { className: styles.empty, children: "No scenarios match your query and/or filters." })) : (_jsx("p", { className: styles.empty, children: "No scenarios were executed." }));
|
|
12
|
-
}
|
|
13
|
-
return _jsx(GherkinDocumentList, { gherkinDocuments: results, preExpand: true });
|
|
14
|
-
};
|
|
15
|
-
//# sourceMappingURL=FilteredDocuments.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FilteredDocuments.js","sourceRoot":"","sources":["../../../../src/components/app/FilteredDocuments.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAA;AAC1E,OAAO,MAAM,MAAM,iCAAiC,CAAA;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAE9D,MAAM,CAAC,MAAM,iBAAiB,GAAO,GAAG,EAAE;IACxC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,oBAAoB,EAAE,CAAA;IAEpD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAChB,YAAG,SAAS,EAAE,MAAM,CAAC,KAAK,8DAAmD,CAC9E,CAAC,CAAC,CAAC,CACF,YAAG,SAAS,EAAE,MAAM,CAAC,KAAK,4CAAiC,CAC5D,CAAA;IACH,CAAC;IACD,OAAO,KAAC,mBAAmB,IAAC,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,GAAI,CAAA;AAC5E,CAAC,CAAA","sourcesContent":["import type { FC } from 'react'\n\nimport { useFilteredDocuments } from '../../hooks/useFilteredDocuments.js'\nimport styles from './FilteredDocuments.module.scss'\nimport { GherkinDocumentList } from './GherkinDocumentList.js'\n\nexport const FilteredDocuments: FC = () => {\n const { results, filtered } = useFilteredDocuments()\n\n if (!results) {\n return null\n }\n if (!results.length) {\n return filtered ? (\n <p className={styles.empty}>No scenarios match your query and/or filters.</p>\n ) : (\n <p className={styles.empty}>No scenarios were executed.</p>\n )\n }\n return <GherkinDocumentList gherkinDocuments={results} preExpand={true} />\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GherkinDocumentList.d.ts","sourceRoot":"","sources":["../../../../src/components/app/GherkinDocumentList.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,eAAe,IAAI,sBAAsB,EAE/C,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,KAAK,EAAE,EAAY,MAAM,OAAO,CAAA;AAUzC,UAAU,KAAK;IACb,gBAAgB,EAAE,SAAS,sBAAsB,EAAE,CAAA;IAEnD,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,KAAK,CA0BzC,CAAA"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { TestStepResultStatus, } from '@cucumber/messages';
|
|
3
|
-
import { useState } from 'react';
|
|
4
|
-
import { useMostSevereStatusByUri } from '../../hooks/useMostSevereStatusByUri.js';
|
|
5
|
-
import { GherkinDocument } from '../gherkin/index.js';
|
|
6
|
-
import { DocumentAccordion, DocumentAccordionItem } from './DocumentAccordion.js';
|
|
7
|
-
export const GherkinDocumentList = ({ gherkinDocuments, preExpand }) => {
|
|
8
|
-
const validDocuments = gherkinDocuments.filter((doc) => !!doc.uri);
|
|
9
|
-
const mostSevereStatusByUri = useMostSevereStatusByUri();
|
|
10
|
-
const [expanded] = useState(() => {
|
|
11
|
-
// Pre-expand any document that is *not* passed - assuming this is what people want to look at first
|
|
12
|
-
return preExpand
|
|
13
|
-
? validDocuments
|
|
14
|
-
.filter((doc) => mostSevereStatusByUri.get(doc.uri) !== TestStepResultStatus.PASSED)
|
|
15
|
-
.map((doc) => doc.uri)
|
|
16
|
-
: [];
|
|
17
|
-
});
|
|
18
|
-
return (_jsx(DocumentAccordion, { expanded: expanded, children: validDocuments.map((validDocument) => {
|
|
19
|
-
const status = mostSevereStatusByUri.get(validDocument.uri) ?? TestStepResultStatus.UNKNOWN;
|
|
20
|
-
return (_jsx(DocumentAccordionItem, { uri: validDocument.uri, status: status, children: _jsx(GherkinDocument, { gherkinDocument: validDocument }) }, validDocument.uri));
|
|
21
|
-
}) }));
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=GherkinDocumentList.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GherkinDocumentList.js","sourceRoot":"","sources":["../../../../src/components/app/GherkinDocumentList.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,oBAAoB,GACrB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAW,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAA;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAYjF,MAAM,CAAC,MAAM,mBAAmB,GAAc,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,EAAE,EAAE;IAChF,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAC5C,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CACoB,CAAA;IACxC,MAAM,qBAAqB,GAAG,wBAAwB,EAAE,CAAA;IACxD,MAAM,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAwB,GAAG,EAAE;QACtD,oGAAoG;QACpG,OAAO,SAAS;YACd,CAAC,CAAE,cAAc;iBACZ,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,oBAAoB,CAAC,MAAM,CAAC;iBACnF,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAc;YACvC,CAAC,CAAC,EAAE,CAAA;IACR,CAAC,CAAC,CAAA;IAEF,OAAO,CACL,KAAC,iBAAiB,IAAC,QAAQ,EAAE,QAAQ,YAClC,cAAc,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,EAAE;YACpC,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,oBAAoB,CAAC,OAAO,CAAA;YAC3F,OAAO,CACL,KAAC,qBAAqB,IAAyB,GAAG,EAAE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,YACnF,KAAC,eAAe,IAAC,eAAe,EAAE,aAAa,GAAI,IADzB,aAAa,CAAC,GAAG,CAErB,CACzB,CAAA;QACH,CAAC,CAAC,GACgB,CACrB,CAAA;AACH,CAAC,CAAA","sourcesContent":["import {\n type GherkinDocument as GherkinDocumentMessage,\n TestStepResultStatus,\n} from '@cucumber/messages'\nimport { type FC, useState } from 'react'\n\nimport { useMostSevereStatusByUri } from '../../hooks/useMostSevereStatusByUri.js'\nimport { GherkinDocument } from '../gherkin/index.js'\nimport { DocumentAccordion, DocumentAccordionItem } from './DocumentAccordion.js'\n\ninterface ValidGherkinDocument extends GherkinDocumentMessage {\n uri: string\n}\n\ninterface Props {\n gherkinDocuments: readonly GherkinDocumentMessage[]\n // Set to true if non-PASSED documents should be pre-expanded\n preExpand?: boolean\n}\n\nexport const GherkinDocumentList: FC<Props> = ({ gherkinDocuments, preExpand }) => {\n const validDocuments = gherkinDocuments.filter(\n (doc) => !!doc.uri\n ) as ReadonlyArray<ValidGherkinDocument>\n const mostSevereStatusByUri = useMostSevereStatusByUri()\n const [expanded] = useState<ReadonlyArray<string>>(() => {\n // Pre-expand any document that is *not* passed - assuming this is what people want to look at first\n return preExpand\n ? (validDocuments\n .filter((doc) => mostSevereStatusByUri.get(doc.uri) !== TestStepResultStatus.PASSED)\n .map((doc) => doc.uri) as string[])\n : []\n })\n\n return (\n <DocumentAccordion expanded={expanded}>\n {validDocuments.map((validDocument) => {\n const status = mostSevereStatusByUri.get(validDocument.uri) ?? TestStepResultStatus.UNKNOWN\n return (\n <DocumentAccordionItem key={validDocument.uri} uri={validDocument.uri} status={status}>\n <GherkinDocument gherkinDocument={validDocument} />\n </DocumentAccordionItem>\n )\n })}\n </DocumentAccordion>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../../src/components/app/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAIlD,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAE/C,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,iBAAiB,CAAC;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAMjE,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAE/C,CAAA"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import styles from './Header.module.scss';
|
|
3
|
-
export const HeaderSection = ({ children }) => {
|
|
4
|
-
return _jsx("div", { className: styles.section, children: children });
|
|
5
|
-
};
|
|
6
|
-
export const HeaderItem = ({ testId, children }) => {
|
|
7
|
-
return (_jsx("div", { "data-testid": testId, className: styles.item, children: children }));
|
|
8
|
-
};
|
|
9
|
-
export const HeaderSubItem = ({ children }) => {
|
|
10
|
-
return _jsx("div", { className: styles.subItem, children: children });
|
|
11
|
-
};
|
|
12
|
-
//# sourceMappingURL=Header.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../../src/components/app/Header.tsx"],"names":[],"mappings":";AAEA,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAEzC,MAAM,CAAC,MAAM,aAAa,GAA0B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACnE,OAAO,cAAK,SAAS,EAAE,MAAM,CAAC,OAAO,YAAG,QAAQ,GAAO,CAAA;AACzD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAA+C,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7F,OAAO,CACL,6BAAkB,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,YAC7C,QAAQ,GACL,CACP,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAA0B,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACnE,OAAO,cAAK,SAAS,EAAE,MAAM,CAAC,OAAO,YAAG,QAAQ,GAAO,CAAA;AACzD,CAAC,CAAA","sourcesContent":["import type { FC, PropsWithChildren } from 'react'\n\nimport styles from './Header.module.scss'\n\nexport const HeaderSection: FC<PropsWithChildren> = ({ children }) => {\n return <div className={styles.section}>{children}</div>\n}\n\nexport const HeaderItem: FC<PropsWithChildren<{ testId?: string }>> = ({ testId, children }) => {\n return (\n <div data-testid={testId} className={styles.item}>\n {children}\n </div>\n )\n}\n\nexport const HeaderSubItem: FC<PropsWithChildren> = ({ children }) => {\n return <div className={styles.subItem}>{children}</div>\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HealthChart.d.ts","sourceRoot":"","sources":["../../../../src/components/app/HealthChart.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAK/B,eAAO,MAAM,WAAW,EAAE,EAwCzB,CAAA"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { TestStepResultStatus } from '@cucumber/messages';
|
|
3
|
-
import { useResultStatistics } from '../../hooks/useResultStatistics.js';
|
|
4
|
-
import styles from './HealthChart.module.scss';
|
|
5
|
-
export const HealthChart = () => {
|
|
6
|
-
const { scenarioCountByStatus, totalScenarioCount, statusesWithScenarios } = useResultStatistics();
|
|
7
|
-
let offsetAccumulator = 0;
|
|
8
|
-
return (_jsxs("svg", { viewBox: "0 0 100 100", children: [_jsx("title", { children: "Pie chart showing proportion of results by status" }), _jsx("g", { transform: "rotate(-90 50 50)", children: statusesWithScenarios.length > 0 ? ([...statusesWithScenarios].map((status) => {
|
|
9
|
-
const scenarioCount = scenarioCountByStatus[status];
|
|
10
|
-
offsetAccumulator += scenarioCount;
|
|
11
|
-
return (_jsx("path", { className: styles.segment, "data-status": status, pathLength: totalScenarioCount, strokeDasharray: `${scenarioCount} ${totalScenarioCount - scenarioCount}`, strokeDashoffset: offsetAccumulator, strokeWidth: "50", d: "M75 50a1 1 90 10-50 0a1 1 90 10 50 0", fill: "none" }, status));
|
|
12
|
-
})) : (_jsx("path", { className: styles.segment, "data-status": TestStepResultStatus.UNKNOWN, pathLength: "1", strokeDasharray: "1 0", strokeDashoffset: "1", strokeWidth: "50", d: "M75 50a1 1 90 10-50 0a1 1 90 10 50 0", fill: "none" })) })] }));
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=HealthChart.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HealthChart.js","sourceRoot":"","sources":["../../../../src/components/app/HealthChart.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAGzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAA;AACxE,OAAO,MAAM,MAAM,2BAA2B,CAAA;AAE9C,MAAM,CAAC,MAAM,WAAW,GAAO,GAAG,EAAE;IAClC,MAAM,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,GAAG,mBAAmB,EAAE,CAAA;IAClG,IAAI,iBAAiB,GAAG,CAAC,CAAA;IACzB,OAAO,CACL,eAAK,OAAO,EAAC,aAAa,aACxB,gFAAgE,EAChE,YAAG,SAAS,EAAC,mBAAmB,YAC7B,qBAAqB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAClC,CAAC,GAAG,qBAAqB,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBACxC,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;oBACnD,iBAAiB,IAAI,aAAa,CAAA;oBAClC,OAAO,CACL,eAEE,SAAS,EAAE,MAAM,CAAC,OAAO,iBACZ,MAAM,EACnB,UAAU,EAAE,kBAAkB,EAC9B,eAAe,EAAE,GAAG,aAAa,IAAI,kBAAkB,GAAG,aAAa,EAAE,EACzE,gBAAgB,EAAE,iBAAiB,EACnC,WAAW,EAAC,IAAI,EAChB,CAAC,EAAC,sCAAsC,EACxC,IAAI,EAAC,MAAM,IARN,MAAM,CASX,CACH,CAAA;gBACH,CAAC,CAAC,CACH,CAAC,CAAC,CAAC,CACF,eACE,SAAS,EAAE,MAAM,CAAC,OAAO,iBACZ,oBAAoB,CAAC,OAAO,EACzC,UAAU,EAAC,GAAG,EACd,eAAe,EAAC,KAAK,EACrB,gBAAgB,EAAC,GAAG,EACpB,WAAW,EAAC,IAAI,EAChB,CAAC,EAAC,sCAAsC,EACxC,IAAI,EAAC,MAAM,GACX,CACH,GACC,IACA,CACP,CAAA;AACH,CAAC,CAAA","sourcesContent":["import { TestStepResultStatus } from '@cucumber/messages'\nimport type { FC } from 'react'\n\nimport { useResultStatistics } from '../../hooks/useResultStatistics.js'\nimport styles from './HealthChart.module.scss'\n\nexport const HealthChart: FC = () => {\n const { scenarioCountByStatus, totalScenarioCount, statusesWithScenarios } = useResultStatistics()\n let offsetAccumulator = 0\n return (\n <svg viewBox=\"0 0 100 100\">\n <title>Pie chart showing proportion of results by status</title>\n <g transform=\"rotate(-90 50 50)\">\n {statusesWithScenarios.length > 0 ? (\n [...statusesWithScenarios].map((status) => {\n const scenarioCount = scenarioCountByStatus[status]\n offsetAccumulator += scenarioCount\n return (\n <path\n key={status}\n className={styles.segment}\n data-status={status}\n pathLength={totalScenarioCount}\n strokeDasharray={`${scenarioCount} ${totalScenarioCount - scenarioCount}`}\n strokeDashoffset={offsetAccumulator}\n strokeWidth=\"50\"\n d=\"M75 50a1 1 90 10-50 0a1 1 90 10 50 0\"\n fill=\"none\"\n />\n )\n })\n ) : (\n <path\n className={styles.segment}\n data-status={TestStepResultStatus.UNKNOWN}\n pathLength=\"1\"\n strokeDasharray=\"1 0\"\n strokeDashoffset=\"1\"\n strokeWidth=\"50\"\n d=\"M75 50a1 1 90 10-50 0a1 1 90 10 50 0\"\n fill=\"none\"\n />\n )}\n </g>\n </svg>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HighLight.d.ts","sourceRoot":"","sources":["../../../../src/components/app/HighLight.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAS/B,UAAU,MAAM;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAcD,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,MAAM,CAsChC,CAAA"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { stemmer } from '@orama/stemmers/english';
|
|
3
|
-
import { findAll } from 'highlight-words-core';
|
|
4
|
-
import ReactMarkdown from 'react-markdown';
|
|
5
|
-
import { useSearch } from '../../hooks/index.js';
|
|
6
|
-
import markdownComponents from './markdownComponents.js';
|
|
7
|
-
import rehypePlugins from './rehypePlugins.js';
|
|
8
|
-
import remarkPlugins from './remarkPlugins.js';
|
|
9
|
-
const allQueryWords = (queryWords) => {
|
|
10
|
-
return queryWords.reduce((allWords, word) => {
|
|
11
|
-
const stem = stemmer(word);
|
|
12
|
-
allWords.push(word);
|
|
13
|
-
if (stem !== word) {
|
|
14
|
-
allWords.push(stem);
|
|
15
|
-
}
|
|
16
|
-
return allWords;
|
|
17
|
-
}, []);
|
|
18
|
-
};
|
|
19
|
-
export const HighLight = ({ text, markdown = false, className = '' }) => {
|
|
20
|
-
const searchQueryContext = useSearch();
|
|
21
|
-
const searchWords = allQueryWords(searchQueryContext.query ? searchQueryContext.query.split(' ') : []);
|
|
22
|
-
const appliedClassName = className ? `highlight ${className}` : 'highlight';
|
|
23
|
-
const chunks = findAll({ textToHighlight: text, searchWords });
|
|
24
|
-
if (markdown) {
|
|
25
|
-
const highlightedText = chunks
|
|
26
|
-
.map(({ start, end, highlight }) => {
|
|
27
|
-
const chunkText = text.substring(start, end);
|
|
28
|
-
return highlight ? `<mark>${chunkText}</mark>` : chunkText;
|
|
29
|
-
})
|
|
30
|
-
.join('');
|
|
31
|
-
return (_jsx("div", { className: appliedClassName, children: _jsx(ReactMarkdown, { remarkPlugins: remarkPlugins, rehypePlugins: rehypePlugins, components: markdownComponents, children: highlightedText }) }));
|
|
32
|
-
}
|
|
33
|
-
return (_jsx("span", { className: appliedClassName, children: chunks.map(({ start, end, highlight }) => {
|
|
34
|
-
const chunkText = text.substring(start, end);
|
|
35
|
-
return highlight ? _jsx("mark", { children: chunkText }, start) : chunkText;
|
|
36
|
-
}) }));
|
|
37
|
-
};
|
|
38
|
-
//# sourceMappingURL=HighLight.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"HighLight.js","sourceRoot":"","sources":["../../../../src/components/app/HighLight.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAG9C,OAAO,aAAa,MAAM,gBAAgB,CAAA;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,kBAAkB,MAAM,yBAAyB,CAAA;AACxD,OAAO,aAAa,MAAM,oBAAoB,CAAA;AAC9C,OAAO,aAAa,MAAM,oBAAoB,CAAA;AAQ9C,MAAM,aAAa,GAAG,CAAC,UAAoB,EAAY,EAAE;IACvD,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;QAC1B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAEnB,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrB,CAAC;QACD,OAAO,QAAQ,CAAA;IACjB,CAAC,EAAE,EAAc,CAAC,CAAA;AACpB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,SAAS,GAAe,CAAC,EAAE,IAAI,EAAE,QAAQ,GAAG,KAAK,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE;IAClF,MAAM,kBAAkB,GAAG,SAAS,EAAE,CAAA;IACtC,MAAM,WAAW,GAAG,aAAa,CAC/B,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CACpE,CAAA;IACD,MAAM,gBAAgB,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,SAAS,EAAE,CAAC,CAAC,CAAC,WAAW,CAAA;IAE3E,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;IAE9D,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,eAAe,GAAG,MAAM;aAC3B,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE;YACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YAC5C,OAAO,SAAS,CAAC,CAAC,CAAC,SAAS,SAAS,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;QAC5D,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAA;QAEX,OAAO,CACL,cAAK,SAAS,EAAE,gBAAgB,YAC9B,KAAC,aAAa,IACZ,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,kBAAkB,YAE7B,eAAe,GACF,GACZ,CACP,CAAA;IACH,CAAC;IAED,OAAO,CACL,eAAM,SAAS,EAAE,gBAAgB,YAC9B,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,EAAE;YACxC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YAC5C,OAAO,SAAS,CAAC,CAAC,CAAC,yBAAmB,SAAS,IAAjB,KAAK,CAAoB,CAAC,CAAC,CAAC,SAAS,CAAA;QACrE,CAAC,CAAC,GACG,CACR,CAAA;AACH,CAAC,CAAA","sourcesContent":["import { stemmer } from '@orama/stemmers/english'\nimport { findAll } from 'highlight-words-core'\nimport type { FC } from 'react'\n\nimport ReactMarkdown from 'react-markdown'\n\nimport { useSearch } from '../../hooks/index.js'\nimport markdownComponents from './markdownComponents.js'\nimport rehypePlugins from './rehypePlugins.js'\nimport remarkPlugins from './remarkPlugins.js'\n\ninterface IProps {\n text: string\n markdown?: boolean\n className?: string\n}\n\nconst allQueryWords = (queryWords: string[]): string[] => {\n return queryWords.reduce((allWords, word) => {\n const stem = stemmer(word)\n allWords.push(word)\n\n if (stem !== word) {\n allWords.push(stem)\n }\n return allWords\n }, [] as string[])\n}\n\nexport const HighLight: FC<IProps> = ({ text, markdown = false, className = '' }) => {\n const searchQueryContext = useSearch()\n const searchWords = allQueryWords(\n searchQueryContext.query ? searchQueryContext.query.split(' ') : []\n )\n const appliedClassName = className ? `highlight ${className}` : 'highlight'\n\n const chunks = findAll({ textToHighlight: text, searchWords })\n\n if (markdown) {\n const highlightedText = chunks\n .map(({ start, end, highlight }) => {\n const chunkText = text.substring(start, end)\n return highlight ? `<mark>${chunkText}</mark>` : chunkText\n })\n .join('')\n\n return (\n <div className={appliedClassName}>\n <ReactMarkdown\n remarkPlugins={remarkPlugins}\n rehypePlugins={rehypePlugins}\n components={markdownComponents}\n >\n {highlightedText}\n </ReactMarkdown>\n </div>\n )\n }\n\n return (\n <span className={appliedClassName}>\n {chunks.map(({ start, end, highlight }) => {\n const chunkText = text.substring(start, end)\n return highlight ? <mark key={start}>{chunkText}</mark> : chunkText\n })}\n </span>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ImplementationIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/app/ImplementationIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAI/B,eAAO,MAAM,kBAAkB,EAAE,EAAE,CAAC;IAAE,cAAc,EAAE,OAAO,CAAA;CAAE,CAM9D,CAAA"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { CucumberLogo } from './icons/CucumberLogo.js';
|
|
3
|
-
export const ImplementationIcon = ({ implementation }) => {
|
|
4
|
-
const { name } = implementation;
|
|
5
|
-
if (name.toLowerCase().includes('cucumber')) {
|
|
6
|
-
return _jsx(CucumberLogo, {});
|
|
7
|
-
}
|
|
8
|
-
return null;
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=ImplementationIcon.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ImplementationIcon.js","sourceRoot":"","sources":["../../../../src/components/app/ImplementationIcon.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,MAAM,CAAC,MAAM,kBAAkB,GAAoC,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE;IACxF,MAAM,EAAE,IAAI,EAAE,GAAG,cAAc,CAAA;IAC/B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,OAAO,KAAC,YAAY,KAAG,CAAA;IACzB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA","sourcesContent":["import type { Product } from '@cucumber/messages'\nimport type { FC } from 'react'\n\nimport { CucumberLogo } from './icons/CucumberLogo.js'\n\nexport const ImplementationIcon: FC<{ implementation: Product }> = ({ implementation }) => {\n const { name } = implementation\n if (name.toLowerCase().includes('cucumber')) {\n return <CucumberLogo />\n }\n return null\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InMemorySearchProvider.d.ts","sourceRoot":"","sources":["../../../../src/components/app/InMemorySearchProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAAY,MAAM,OAAO,CAAA;AAKjE,UAAU,KAAK;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,mBAAmB,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAA;CACtD;AAED,eAAO,MAAM,sBAAsB,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAc/D,CAAA"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { useState } from 'react';
|
|
3
|
-
import { ControlledSearchProvider } from './ControlledSearchProvider.js';
|
|
4
|
-
export const InMemorySearchProvider = ({ defaultQuery = '', defaultHideStatuses = [], children, }) => {
|
|
5
|
-
const [value, setValue] = useState({
|
|
6
|
-
query: defaultQuery,
|
|
7
|
-
hideStatuses: defaultHideStatuses,
|
|
8
|
-
});
|
|
9
|
-
return (_jsx(ControlledSearchProvider, { value: value, onChange: setValue, children: children }));
|
|
10
|
-
};
|
|
11
|
-
//# sourceMappingURL=InMemorySearchProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"InMemorySearchProvider.js","sourceRoot":"","sources":["../../../../src/components/app/InMemorySearchProvider.tsx"],"names":[],"mappings":";AACA,OAAO,EAAmC,QAAQ,EAAE,MAAM,OAAO,CAAA;AAGjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AAOxE,MAAM,CAAC,MAAM,sBAAsB,GAAiC,CAAC,EACnE,YAAY,GAAG,EAAE,EACjB,mBAAmB,GAAG,EAAE,EACxB,QAAQ,GACT,EAAE,EAAE;IACH,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAc;QAC9C,KAAK,EAAE,YAAY;QACnB,YAAY,EAAE,mBAAmB;KAClC,CAAC,CAAA;IACF,OAAO,CACL,KAAC,wBAAwB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,YACvD,QAAQ,GACgB,CAC5B,CAAA;AACH,CAAC,CAAA","sourcesContent":["import type { TestStepResultStatus } from '@cucumber/messages'\nimport { type FC, type PropsWithChildren, useState } from 'react'\n\nimport type { SearchState } from '../../SearchContext.js'\nimport { ControlledSearchProvider } from './ControlledSearchProvider.js'\n\ninterface Props {\n defaultQuery?: string\n defaultHideStatuses?: readonly TestStepResultStatus[]\n}\n\nexport const InMemorySearchProvider: FC<PropsWithChildren<Props>> = ({\n defaultQuery = '',\n defaultHideStatuses = [],\n children,\n}) => {\n const [value, setValue] = useState<SearchState>({\n query: defaultQuery,\n hideStatuses: defaultHideStatuses,\n })\n return (\n <ControlledSearchProvider value={value} onChange={setValue}>\n {children}\n </ControlledSearchProvider>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationButton.d.ts","sourceRoot":"","sources":["../../../../src/components/app/NavigationButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAI/C,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAMlE,CAAA"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import styles from './NavigationButton.module.scss';
|
|
3
|
-
export const NavigationButton = ({ children, ...props }) => {
|
|
4
|
-
return (_jsx("button", { type: "button", ...props, className: styles.navigationButton, children: children }));
|
|
5
|
-
};
|
|
6
|
-
//# sourceMappingURL=NavigationButton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavigationButton.js","sourceRoot":"","sources":["../../../../src/components/app/NavigationButton.tsx"],"names":[],"mappings":";AAEA,OAAO,MAAM,MAAM,gCAAgC,CAAA;AAEnD,MAAM,CAAC,MAAM,gBAAgB,GAA0C,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAChG,OAAO,CACL,iBAAQ,IAAI,EAAC,QAAQ,KAAK,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,gBAAgB,YAChE,QAAQ,GACF,CACV,CAAA;AACH,CAAC,CAAA","sourcesContent":["import type { FC, HTMLAttributes } from 'react'\n\nimport styles from './NavigationButton.module.scss'\n\nexport const NavigationButton: FC<HTMLAttributes<HTMLButtonElement>> = ({ children, ...props }) => {\n return (\n <button type=\"button\" {...props} className={styles.navigationButton}>\n {children}\n </button>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OSIcon.d.ts","sourceRoot":"","sources":["../../../../src/components/app/OSIcon.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAM/B,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC;IAAE,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;CAAE,CAYzC,CAAA"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Linux } from './icons/Linux.js';
|
|
3
|
-
import { MacOS } from './icons/MacOS.js';
|
|
4
|
-
import { Windows } from './icons/Windows.js';
|
|
5
|
-
export const OSIcon = ({ os }) => {
|
|
6
|
-
const { name } = os;
|
|
7
|
-
if (name.match(/windows|win32/i)) {
|
|
8
|
-
return _jsx(Windows, {});
|
|
9
|
-
}
|
|
10
|
-
if (name.match(/(darwin|mac)/i)) {
|
|
11
|
-
return _jsx(MacOS, {});
|
|
12
|
-
}
|
|
13
|
-
if (name.match(/linux/i)) {
|
|
14
|
-
return _jsx(Linux, {});
|
|
15
|
-
}
|
|
16
|
-
return null;
|
|
17
|
-
};
|
|
18
|
-
//# sourceMappingURL=OSIcon.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"OSIcon.js","sourceRoot":"","sources":["../../../../src/components/app/OSIcon.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAE5C,MAAM,CAAC,MAAM,MAAM,GAA2B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;IACvD,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;IACnB,IAAI,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACjC,OAAO,KAAC,OAAO,KAAG,CAAA;IACpB,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QAChC,OAAO,KAAC,KAAK,KAAG,CAAA;IAClB,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzB,OAAO,KAAC,KAAK,KAAG,CAAA;IAClB,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA","sourcesContent":["import type { Meta } from '@cucumber/messages'\nimport type { FC } from 'react'\n\nimport { Linux } from './icons/Linux.js'\nimport { MacOS } from './icons/MacOS.js'\nimport { Windows } from './icons/Windows.js'\n\nexport const OSIcon: FC<{ os: Meta['os'] }> = ({ os }) => {\n const { name } = os\n if (name.match(/windows|win32/i)) {\n return <Windows />\n }\n if (name.match(/(darwin|mac)/i)) {\n return <MacOS />\n }\n if (name.match(/linux/i)) {\n return <Linux />\n }\n return null\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueriesProvider.d.ts","sourceRoot":"","sources":["../../../../src/components/app/QueriesProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,KAAK,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC7D,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAA;AAKlD,UAAU,KAAK;IACb,aAAa,EAAE,aAAa,CAAA;IAC5B,YAAY,EAAE,YAAY,CAAA;CAC3B;AAED,eAAO,MAAM,eAAe,EAAE,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAUxD,CAAA"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import CucumberQueryContext from '../../CucumberQueryContext.js';
|
|
3
|
-
import GherkinQueryContext from '../../GherkinQueryContext.js';
|
|
4
|
-
export const QueriesProvider = ({ cucumberQuery, gherkinQuery, children, }) => {
|
|
5
|
-
return (_jsx(CucumberQueryContext.Provider, { value: cucumberQuery, children: _jsx(GherkinQueryContext.Provider, { value: gherkinQuery, children: children }) }));
|
|
6
|
-
};
|
|
7
|
-
//# sourceMappingURL=QueriesProvider.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QueriesProvider.js","sourceRoot":"","sources":["../../../../src/components/app/QueriesProvider.tsx"],"names":[],"mappings":";AAIA,OAAO,oBAAoB,MAAM,+BAA+B,CAAA;AAChE,OAAO,mBAAmB,MAAM,8BAA8B,CAAA;AAO9D,MAAM,CAAC,MAAM,eAAe,GAAiC,CAAC,EAC5D,aAAa,EACb,YAAY,EACZ,QAAQ,GACT,EAAE,EAAE;IACH,OAAO,CACL,KAAC,oBAAoB,CAAC,QAAQ,IAAC,KAAK,EAAE,aAAa,YACjD,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,YAAG,QAAQ,GAAgC,GAC9D,CACjC,CAAA;AACH,CAAC,CAAA","sourcesContent":["import type { Query as GherkinQuery } from '@cucumber/gherkin-utils'\nimport type { Query as CucumberQuery } from '@cucumber/query'\nimport type { FC, PropsWithChildren } from 'react'\n\nimport CucumberQueryContext from '../../CucumberQueryContext.js'\nimport GherkinQueryContext from '../../GherkinQueryContext.js'\n\ninterface Props {\n cucumberQuery: CucumberQuery\n gherkinQuery: GherkinQuery\n}\n\nexport const QueriesProvider: FC<PropsWithChildren<Props>> = ({\n cucumberQuery,\n gherkinQuery,\n children,\n}) => {\n return (\n <CucumberQueryContext.Provider value={cucumberQuery}>\n <GherkinQueryContext.Provider value={gherkinQuery}>{children}</GherkinQueryContext.Provider>\n </CucumberQueryContext.Provider>\n )\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Report.d.ts","sourceRoot":"","sources":["../../../../src/components/app/Report.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAA;AAQ/B,eAAO,MAAM,MAAM,EAAE,EAiBpB,CAAA"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { ExecutionSummary } from './ExecutionSummary.js';
|
|
3
|
-
import { FilteredDocuments } from './FilteredDocuments.js';
|
|
4
|
-
import styles from './Report.module.scss';
|
|
5
|
-
import { SearchBar } from './SearchBar.js';
|
|
6
|
-
import { TestRunHooks } from './TestRunHooks.js';
|
|
7
|
-
export const Report = () => {
|
|
8
|
-
return (_jsxs("article", { className: styles.layout, children: [_jsxs("section", { children: [_jsx(ExecutionSummary, {}), _jsx(SearchBar, {})] }), _jsxs("section", { children: [_jsx("h2", { className: styles.heading, children: "Scenarios" }), _jsx(FilteredDocuments, {})] }), _jsxs("section", { children: [_jsx("h2", { className: styles.heading, children: "Hooks" }), _jsx(TestRunHooks, {})] })] }));
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=Report.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Report.js","sourceRoot":"","sources":["../../../../src/components/app/Report.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,MAAM,MAAM,sBAAsB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,MAAM,CAAC,MAAM,MAAM,GAAO,GAAG,EAAE;IAC7B,OAAO,CACL,mBAAS,SAAS,EAAE,MAAM,CAAC,MAAM,aAC/B,8BACE,KAAC,gBAAgB,KAAG,EACpB,KAAC,SAAS,KAAG,IACL,EACV,8BACE,aAAI,SAAS,EAAE,MAAM,CAAC,OAAO,0BAAgB,EAC7C,KAAC,iBAAiB,KAAG,IACb,EACV,8BACE,aAAI,SAAS,EAAE,MAAM,CAAC,OAAO,sBAAY,EACzC,KAAC,YAAY,KAAG,IACR,IACF,CACX,CAAA;AACH,CAAC,CAAA","sourcesContent":["import type { FC } from 'react'\n\nimport { ExecutionSummary } from './ExecutionSummary.js'\nimport { FilteredDocuments } from './FilteredDocuments.js'\nimport styles from './Report.module.scss'\nimport { SearchBar } from './SearchBar.js'\nimport { TestRunHooks } from './TestRunHooks.js'\n\nexport const Report: FC = () => {\n return (\n <article className={styles.layout}>\n <section>\n <ExecutionSummary />\n <SearchBar />\n </section>\n <section>\n <h2 className={styles.heading}>Scenarios</h2>\n <FilteredDocuments />\n </section>\n <section>\n <h2 className={styles.heading}>Hooks</h2>\n <TestRunHooks />\n </section>\n </article>\n )\n}\n"]}
|