spb/cancerindex
Public
1export const SITE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://www.cancerindex.io';2export const SITE_NAME = 'CancerIndex';3export const TAGLINE = 'The global index of cancer.';4export const DISCLAIMER =5 'CancerIndex is a research and information platform. It is not a physician, does not diagnose, and does not recommend treatment. Population statistics do not predict individual outcomes.';6export const CONTACT_EMAIL = 'corrections@cancerindex.io';78export const NAV = [9 { href: '/cancers', label: 'Cancers' },10 { href: '/explore', label: 'Data' },11 { href: '/trials', label: 'Trials' },12 { href: '/drugs', label: 'Drugs' },13 { href: '/genes', label: 'Genes' },14 { href: '/approvals', label: 'Approvals' },15 { href: '/rankings', label: 'Rankings' },16 { href: '/research-gap', label: 'Research gap' },17 { href: '/graph', label: 'Graph' },18] as const;1920/** Secondary navigation (mobile menu + footer): everything not in the primary bar. */21export const MORE_NAV = [22 { href: '/pulse', label: 'Pulse' },23 { href: '/data-updates', label: 'Data updates' },24 { href: '/year/2025', label: 'Year in cancer' },25 { href: '/taxonomy', label: 'Taxonomy' },26 { href: '/countries', label: 'Countries' },27 { href: '/compare', label: 'Compare' },28 { href: '/trials/intelligence', label: 'Trial intelligence' },29 { href: '/trials/map', label: 'Trial map' },30 { href: '/pipeline', label: 'Drug pipeline' },31 { href: '/sources', label: 'Sources' },32 { href: '/methodology', label: 'Methodology' },33] as const;3435export const FOOTER_NAV = [36 { href: '/about', label: 'About' },37 { href: '/trust', label: 'Trust & policies' },38 { href: '/explore', label: 'Data explorer' },39 { href: '/data', label: 'Data downloads' },40 { href: '/pulse', label: 'Pulse' },41 { href: '/data-updates', label: 'Data update log' },42 { href: '/developers', label: 'Developers (API)' },43 { href: '/sources', label: 'Sources' },44 { href: '/methodology', label: 'Methodology' },45 { href: '/taxonomy', label: 'Taxonomy' },46 { href: '/countries', label: 'Countries' },47 { href: '/compare', label: 'Compare' },48] as const;4950/** External identifier browsers (chips on cancer pages link out to the authority). */51export function codeUrl(system: string, code: string): string | null {52 switch (system) {53 case 'ncit':54 return `https://evsexplore.semantics.cancer.gov/evsexplore/concept/ncit/${encodeURIComponent(code)}`;55 case 'oncotree':56 return `https://oncotree.mskcc.org/?version=oncotree_latest_stable&field=CODE&search=${encodeURIComponent(code)}`;57 case 'icd10':58 case 'icd10cm':59 return `https://icd.who.int/browse10/2019/en#/${encodeURIComponent(code)}`;60 case 'doid':61 return `https://disease-ontology.org/?id=${encodeURIComponent(code.startsWith('DOID:') ? code : `DOID:${code}`)}`;62 case 'umls':63 return `https://uts.nlm.nih.gov/uts/umls/concept/${encodeURIComponent(code)}`;64 case 'mesh':65 return `https://meshb.nlm.nih.gov/record/ui?ui=${encodeURIComponent(code)}`;66 case 'mondo':67 return `https://monarchinitiative.org/${encodeURIComponent(code)}`;68 case 'efo':69 return `https://www.ebi.ac.uk/efo/${encodeURIComponent(code)}`;70 case 'orphanet':71 return `https://www.orpha.net/en/disease/detail/${encodeURIComponent(code.replace(/^ORPHA:?/i, ''))}`;72 case 'gdc_project':73 return `https://portal.gdc.cancer.gov/projects/${encodeURIComponent(code)}`;74 default:75 return null;76 }77}7879export const CODE_SYSTEM_LABEL: Record<string, string> = {80 ncit: 'NCIt',81 oncotree: 'OncoTree',82 icd10: 'ICD-10',83 icd10cm: 'ICD-10-CM',84 icdo_topography: 'ICD-O topography',85 icdo_morphology: 'ICD-O morphology',86 doid: 'DOID',87 umls: 'UMLS CUI',88 mesh: 'MeSH',89 mondo: 'MONDO',90 seer_site: 'SEER site',91 efo: 'EFO',92 orphanet: 'Orphanet',93 gdc_project: 'GDC project',94};95