import type PluginManager from '@jbrowse/core/PluginManager' import type { Feature } from '@jbrowse/core/util' function toP(s = 0) { return +s.toPrecision(6) } const en = (n: number) => n.toLocaleString('en-US') function getTooltip(feature: Feature) { const start = feature.get('start') + 1 const end = feature.get('end') const refName = feature.get('refName') const name = feature.get('name') const rsid = feature.get('rsid') const loc = [refName, start === end ? en(start) : `${en(start)}..${en(end)}`] .filter(f => !!f) .join(':') return `${loc}
${toP(feature.get('score'))}
${name || rsid}` } export default function JexlMouseoverF(pluginManager: PluginManager) { pluginManager.jexl.addFunction('getTooltip', (feature: Feature) => getTooltip(feature), ) }