From 064184da1e4d689ede391c3bed661a5a797edb2b Mon Sep 17 00:00:00 2001 From: Calvin Lu <59149377+calvinlu3@users.noreply.github.com> Date: Wed, 20 Mar 2024 16:30:08 -0400 Subject: [PATCH] Fix NCT reference link (#1096) --- .../src/components/RefComponent.tsx | 21 +++++++++++++------ .../oncokb-frontend-commons/src/lib/urls.ts | 12 +++++++++++ 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/src/main/webapp/app/oncokb-frontend-commons/src/components/RefComponent.tsx b/src/main/webapp/app/oncokb-frontend-commons/src/components/RefComponent.tsx index 0b6f44127..bdca819e2 100644 --- a/src/main/webapp/app/oncokb-frontend-commons/src/components/RefComponent.tsx +++ b/src/main/webapp/app/oncokb-frontend-commons/src/components/RefComponent.tsx @@ -1,5 +1,5 @@ import Tooltip from 'rc-tooltip'; -import { getNCBIlink } from '../lib/urls'; +import { getNCBIlink, getNCTlink } from '../lib/urls'; import * as React from 'react'; import { ReferenceList } from './ReferenceList'; @@ -50,11 +50,6 @@ export default class RefComponent extends React.Component<{ if (this.props.content.toLowerCase().includes('pmid')) { prefix = 'PMID: '; - } else if (this.props.content.toLowerCase().includes('nct')) { - prefix = 'NCT'; - } - - if (prefix) { link = ( ); + } else if (this.props.content.toLowerCase().includes('nct')) { + if (ids[0]) { + prefix = 'NCT'; + const studyId = `${prefix}${ids[0]}`; + link = ( + + {studyId} + + ); + } } } diff --git a/src/main/webapp/app/oncokb-frontend-commons/src/lib/urls.ts b/src/main/webapp/app/oncokb-frontend-commons/src/lib/urls.ts index 7bba777d4..bd4c78cf8 100644 --- a/src/main/webapp/app/oncokb-frontend-commons/src/lib/urls.ts +++ b/src/main/webapp/app/oncokb-frontend-commons/src/lib/urls.ts @@ -23,3 +23,15 @@ export function getNCBIlink( ...params, }); } + +export function getNCTlink(pathnameOrParams?: BuildUrlParams | string): string { + const params = + typeof pathnameOrParams === 'string' + ? { pathname: pathnameOrParams } + : pathnameOrParams; + return URL.format({ + protocol: 'https', + host: 'www.clinicaltrials.gov', + ...params, + }); +}