diff --git a/web/src/ar/pages/version-details/DockerVersion/DockerVersionOverviewContent.tsx b/web/src/ar/pages/version-details/DockerVersion/DockerVersionOverviewContent.tsx index bd24592b7f..fa747ec4bf 100644 --- a/web/src/ar/pages/version-details/DockerVersion/DockerVersionOverviewContent.tsx +++ b/web/src/ar/pages/version-details/DockerVersion/DockerVersionOverviewContent.tsx @@ -26,7 +26,7 @@ import { DEFAULT_DATE_TIME_FORMAT } from '@ar/constants' import type { VersionDetailsPathParams } from '@ar/routes/types' import { getReadableDateTime } from '@ar/common/dateUtils' import PageContent from '@ar/components/PageContent/PageContent' -import { useAppStore, useDecodedParams, useGetSpaceRef } from '@ar/hooks' +import { useAppStore, useDecodedParams, useGetSpaceRef, useParentHooks } from '@ar/hooks' import useGetOCIVersionParams from '../hooks/useGetOCIVersionParams' import { VersionOverviewCard } from '../components/OverviewCards/types' @@ -41,6 +41,8 @@ export default function DockerVersionOverviewContent(): JSX.Element { const pathParams = useDecodedParams() const spaceRef = useGetSpaceRef() const { parent } = useAppStore() + const { useQueryParams } = useParentHooks() + const { tag } = useQueryParams<{ tag?: string }>() const { versionIdentifier, versionType, digest } = useGetOCIVersionParams() @@ -79,6 +81,7 @@ export default function DockerVersionOverviewContent(): JSX.Element { VersionOverviewCard.SUPPLY_CHAIN ]} digest={digest} + tag={tag} version={versionIdentifier} versionType={versionType} /> diff --git a/web/src/ar/pages/version-details/components/OverviewCards/OverviewCards.tsx b/web/src/ar/pages/version-details/components/OverviewCards/OverviewCards.tsx index 0ba349ebb7..1338fd148b 100644 --- a/web/src/ar/pages/version-details/components/OverviewCards/OverviewCards.tsx +++ b/web/src/ar/pages/version-details/components/OverviewCards/OverviewCards.tsx @@ -49,13 +49,14 @@ interface RedirectToTabOptions { interface VersionOverviewCardsProps { digest?: string + tag?: string version: string versionType: OCIVersionType cards?: Array } export default function VersionOverviewCards(props: VersionOverviewCardsProps) { - const { digest = '', cards = [], version, versionType } = props + const { digest = '', tag, cards = [], version, versionType } = props const { getString } = useStrings() const routes = useRoutes() const { scope, isCurrentSessionPublic } = useAppStore() @@ -90,9 +91,16 @@ export default function VersionOverviewCards(props: VersionOverviewCardsProps) { versionTab: tab, ...options }) - if (digest) { - url = `${url}?digest=${digest}` + + // Build query params to preserve both tag and digest + const params = [] + if (tag) params.push(`tag=${tag}`) + if (digest) params.push(`digest=${digest}`) + + if (params.length > 0) { + url = `${url}?${params.join('&')}` } + history.push(url) }