import { IndicatorQueryResp } from 'oncokb-ts-api-client'; import * as React from 'react'; import mainStyles from './main.module.scss'; import { OncoKbCardTitle } from './OncoKbCardTitle'; import { OncoKbCardBody } from './OncoKbCardBody'; import { OncoKbCardDataType } from 'cbioportal-utils'; import oncoKbLogoImgSrc from 'oncokb-styles/dist/images/logo/oncokb.svg'; export type OncoKbCardProps = { type: OncoKbCardDataType; hugoSymbol: string; geneNotExist: boolean; isCancerGene: boolean; usingPublicOncoKbInstance: boolean; indicator?: IndicatorQueryResp; displayHighestLevelInTabTitle?: boolean; handleFeedbackOpen?: React.EventHandler; }; export const OncoKbCard: React.FunctionComponent = ( props: OncoKbCardProps ) => { function oncokbLinkOut() { let link: string | undefined = undefined; if (props.hugoSymbol) { link = `https://www.oncokb.org/gene/${props.hugoSymbol}`; if (!props.geneNotExist && props.indicator?.query?.alteration) { link = `${link}/${props.indicator.query.alteration}`; } } return link; } const oncokbLogo = ( OncoKB™ ); return (
{!props.geneNotExist && props.indicator && ( )}
{oncokbLinkOut() === undefined ? ( { oncokbLogo } ) : ( {oncokbLogo} )} {props.handleFeedbackOpen && ( )}
); };