@jbrowse/plugin-linear-genome-view
Version:
JBrowse 2 linear genome view
31 lines (30 loc) • 1.03 kB
JavaScript
import { getContainingView, isAbortException } from '@jbrowse/core/util';
import { isAlive } from 'mobx-state-tree';
export default async function autorunFeatureDensityStats(self) {
var _a;
try {
const view = getContainingView(self);
if (!view.initialized ||
!view.staticBlocks.contentBlocks.length ||
view.bpPerPx === self.currStatsBpPerPx ||
self.error) {
return;
}
if (((_a = self.featureDensityStats) === null || _a === void 0 ? void 0 : _a.featureDensity) !== undefined) {
self.setCurrStatsBpPerPx(view.bpPerPx);
return;
}
self.clearFeatureDensityStats();
self.setCurrStatsBpPerPx(view.bpPerPx);
const stats = await self.getFeatureDensityStats();
if (isAlive(self)) {
self.setFeatureDensityStats(stats);
}
}
catch (e) {
console.error(e);
if (isAlive(self) && !isAbortException(e)) {
self.setError(e);
}
}
}