import { DefaultTooltip } from 'cbioportal-frontend-commons'; import { Mutation } from 'cbioportal-utils'; import * as React from 'react'; import styles from './mutationStatus.module.scss'; type MutationStatusProps = { value?: string; mutation?: Mutation; displayValueMap?: { [mutationStatus: string]: string }; enableTooltip?: boolean; styleMap?: { [mutationStatus: string]: React.CSSProperties }; }; export class MutationStatus extends React.Component { public static defaultProps: Partial = { enableTooltip: true, }; public render() { const value = this.props.value || (this.props.mutation ? this.props.mutation.mutationStatus : undefined); let content: JSX.Element; if (value) { if (value.toLowerCase().includes('somatic')) { content = ( {(this.props.displayValueMap && (this.props.displayValueMap[value.toLowerCase()] || this.props.displayValueMap['somatic'])) || 'Somatic'} ); } else if (value.toLowerCase().includes('germline')) { content = ( {(this.props.displayValueMap && (this.props.displayValueMap[value.toLowerCase()] || this.props.displayValueMap['germline'])) || 'Germline'} ); } else { content = {value}; } } else { content = ; } if (this.props.enableTooltip) { content = ( {value}} placement="right" > {content} ); } return content; } }