From 1e619e8219868980cfdc0cb0f2f18d03bf63d095 Mon Sep 17 00:00:00 2001 From: Shivanand Sonnad Date: Tue, 11 Feb 2025 16:50:21 +0000 Subject: [PATCH] feat: [AH-944]: support link to latest version in registry artifact list table (#3410) * feat: [AH-944]: support link to latest version in registry artifact list table --- web/src/ar/gitness/utils/getARRouteDefinitions.ts | 15 ++++++++++++++- .../RegistryArtifactListTableCell.tsx | 15 ++++++++++++--- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/web/src/ar/gitness/utils/getARRouteDefinitions.ts b/web/src/ar/gitness/utils/getARRouteDefinitions.ts index 91625c0ba..8e8149911 100644 --- a/web/src/ar/gitness/utils/getARRouteDefinitions.ts +++ b/web/src/ar/gitness/utils/getARRouteDefinitions.ts @@ -14,13 +14,26 @@ * limitations under the License. */ +import { defaultTo, isEmpty } from 'lodash-es' import type { ARRouteDefinitionsReturn } from '@ar/routes/RouteDefinitions' export default function getARRouteDefinitions(routeParams: Record): ARRouteDefinitionsReturn { return { // anything random, as this route will not be used in gitness toAR: () => '/ar', - toARRedirect: () => '/ar', // currently not used for gitness + toARRedirect: params => { + if (!isEmpty(params)) { + const queryParams = new URLSearchParams({ + packageType: defaultTo(params?.packageType, ''), + registryId: defaultTo(params?.registryId, ''), + artifactId: defaultTo(params?.artifactId, ''), + versionId: defaultTo(params?.versionId, ''), + versionDetailsTab: defaultTo(params?.versionDetailsTab, '') + }) + return `/redirect?${queryParams.toString()}` + } + return '/redirect' + }, toARRepositories: () => '/', toARRepositoryDetails: params => `/${params?.repositoryIdentifier}`, toARRepositoryDetailsTab: params => `/${params?.repositoryIdentifier}/${params?.tab}`, diff --git a/web/src/ar/pages/artifact-list/components/RegistryArtifactListTable/RegistryArtifactListTableCell.tsx b/web/src/ar/pages/artifact-list/components/RegistryArtifactListTable/RegistryArtifactListTableCell.tsx index d678b92bf..92f29bbb1 100644 --- a/web/src/ar/pages/artifact-list/components/RegistryArtifactListTable/RegistryArtifactListTableCell.tsx +++ b/web/src/ar/pages/artifact-list/components/RegistryArtifactListTable/RegistryArtifactListTableCell.tsx @@ -30,6 +30,7 @@ import LabelsPopover from '@ar/components/LabelsPopover/LabelsPopover' import RepositoryIcon from '@ar/frameworks/RepositoryStep/RepositoryIcon' import type { RepositoryPackageType } from '@ar/common/types' import { RepositoryDetailsTab } from '@ar/pages/repository-details/constants' +import { VersionDetailsTab } from '@ar/pages/version-details/components/VersionDetailsTabs/constants' type CellTypeWithActions, V = any> = TableInstance & { column: ColumnInstance @@ -115,6 +116,7 @@ export const RegistryArtifactDownloadsCell: CellType = ({ value }) => { } export const RegistryArtifactLatestUpdatedCell: CellType = ({ row }) => { + const routes = useRoutes() const { getString } = useStrings() const { original } = row const { latestVersion, lastModified } = original || {} @@ -127,9 +129,16 @@ export const RegistryArtifactLatestUpdatedCell: CellType = ({ row }) => { } return ( - - {latestVersion} - + )