From 3c12dea03ebe855ea7b67f1436dd1cae4387c82b Mon Sep 17 00:00:00 2001 From: Hunter Craft <118154470+hunterckx@users.noreply.github.com> Date: Sun, 19 Jan 2025 18:13:21 -0800 Subject: [PATCH] feat: rename analysis portals to resources and add ncbi links (#214) (#220) --- .../brc-analytics-catalog/common/constants.ts | 2 + .../common/viewModelBuilders.ts | 53 +++++++++++++----- public/analysis-portals/ncbi.png | Bin 0 -> 6337 bytes .../genome/analysisMethodsSideColumn.ts | 2 +- 4 files changed, 43 insertions(+), 14 deletions(-) create mode 100644 public/analysis-portals/ncbi.png diff --git a/app/viewModelBuilders/catalog/brc-analytics-catalog/common/constants.ts b/app/viewModelBuilders/catalog/brc-analytics-catalog/common/constants.ts index 1ad762d..7bd389b 100644 --- a/app/viewModelBuilders/catalog/brc-analytics-catalog/common/constants.ts +++ b/app/viewModelBuilders/catalog/brc-analytics-catalog/common/constants.ts @@ -1,2 +1,4 @@ export const GENOME_BROWSER = "UCSC Genome Browser"; +export const NCBI_ASSEMBLY = "NCBI Genome Assembly"; +export const NCBI_TAXONOMY = "NCBI Taxonomy"; export const NCBI_DATASETS_URL = "https://www.ncbi.nlm.nih.gov/datasets"; diff --git a/app/viewModelBuilders/catalog/brc-analytics-catalog/common/viewModelBuilders.ts b/app/viewModelBuilders/catalog/brc-analytics-catalog/common/viewModelBuilders.ts index 8219f76..16dbb5c 100644 --- a/app/viewModelBuilders/catalog/brc-analytics-catalog/common/viewModelBuilders.ts +++ b/app/viewModelBuilders/catalog/brc-analytics-catalog/common/viewModelBuilders.ts @@ -10,7 +10,12 @@ import { BRCDataCatalogOrganism, } from "../../../../apis/catalog/brc-analytics-catalog/common/entities"; import * as C from "../../../../components"; -import { GENOME_BROWSER, NCBI_DATASETS_URL } from "./constants"; +import { + GENOME_BROWSER, + NCBI_ASSEMBLY, + NCBI_DATASETS_URL, + NCBI_TAXONOMY, +} from "./constants"; import { ColumnDef } from "@tanstack/react-table"; import { BRC_DATA_CATALOG_CATEGORY_KEY, @@ -309,19 +314,41 @@ export const buildGenomeAnalysisPortals = ( genome: BRCDataCatalogGenome ): ComponentProps => { return { - portals: genome.ucscBrowserUrl - ? [ - { - imageProps: { - alt: GENOME_BROWSER, - src: "/analysis-portals/ucsc-genome.png", - width: 20, + portals: [ + ...(genome.ucscBrowserUrl + ? [ + { + imageProps: { + alt: GENOME_BROWSER, + src: "/analysis-portals/ucsc-genome.png", + width: 20, + }, + label: GENOME_BROWSER, + url: genome.ucscBrowserUrl, }, - label: GENOME_BROWSER, - url: genome.ucscBrowserUrl, - }, - ] - : [], + ] + : []), + { + imageProps: { + alt: NCBI_ASSEMBLY, + src: "/analysis-portals/ncbi.png", + width: 20, + }, + label: NCBI_ASSEMBLY, + url: `${NCBI_DATASETS_URL}/genome/${genome.accession}`, + }, + { + imageProps: { + alt: NCBI_TAXONOMY, + src: "/analysis-portals/ncbi.png", + width: 20, + }, + label: NCBI_TAXONOMY, + url: `${NCBI_DATASETS_URL}/taxonomy/${encodeURIComponent( + genome.ncbiTaxonomyId + )}`, + }, + ], }; }; diff --git a/public/analysis-portals/ncbi.png b/public/analysis-portals/ncbi.png new file mode 100644 index 0000000000000000000000000000000000000000..0fd73247051ab2d90ab7b66f8cff1b145278fd43 GIT binary patch literal 6337 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 literal 0 HcmV?d00001 diff --git a/site-config/brc-analytics/local/entity/genome/analysisMethodsSideColumn.ts b/site-config/brc-analytics/local/entity/genome/analysisMethodsSideColumn.ts index 0615791..1b99de6 100644 --- a/site-config/brc-analytics/local/entity/genome/analysisMethodsSideColumn.ts +++ b/site-config/brc-analytics/local/entity/genome/analysisMethodsSideColumn.ts @@ -32,7 +32,7 @@ export const sideColumn: ComponentsConfig = [ { component: C.SectionTitle, props: { - title: "Analysis Portals", + title: "Resources", }, } as ComponentConfig, {