@jbrowse/core 3.6.5 → 3.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BaseFeatureWidget/BaseFeatureDetail/CoreDetails.js +1 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceContents.d.ts +1 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceContents.js +31 -33
- package/BaseFeatureWidget/SequenceFeatureDetails/SequenceFeatureDetails.js +15 -7
- package/BaseFeatureWidget/SequenceFeatureDetails/consts.d.ts +6 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/consts.js +9 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceDialog.d.ts +1 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/dialogs/SequenceDialog.js +17 -7
- package/BaseFeatureWidget/SequenceFeatureDetails/model.d.ts +6 -3
- package/BaseFeatureWidget/SequenceFeatureDetails/model.js +1 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/CDNASequence.js +4 -3
- package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/CDSSequence.js +2 -1
- package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/GenomicSequence.js +4 -3
- package/BaseFeatureWidget/SequenceFeatureDetails/seqtypes/ProteinSequence.js +11 -10
- package/BaseFeatureWidget/SequenceFeatureDetails/useSequenceData.d.ts +13 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/useSequenceData.js +67 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/util.d.ts +2 -9
- package/BaseFeatureWidget/SequenceFeatureDetails/util.js +36 -39
- package/BaseFeatureWidget/stateModelFactory.d.ts +4 -4
- package/BaseFeatureWidget/util.d.ts +5 -2
- package/BaseFeatureWidget/util.js +41 -12
- package/PluginLoader.js +1 -1
- package/assemblyManager/assembly.d.ts +1 -0
- package/assemblyManager/assembly.js +3 -0
- package/assemblyManager/assemblyManager.d.ts +8 -0
- package/assemblyManager/assemblyManager.js +4 -0
- package/configuration/configurationSchema.js +1 -1
- package/data_adapters/BaseAdapter/BaseFeatureDataAdapter.js +2 -2
- package/package.json +3 -4
- package/tsconfig.build.tsbuildinfo +1 -1
- package/ui/BaseTooltip.d.ts +1 -1
- package/ui/CascadingMenu.js +25 -3
- package/ui/ConfirmDialog.d.ts +10 -0
- package/ui/ConfirmDialog.js +18 -0
- package/ui/EditableTypography.js +1 -8
- package/ui/LoadingEllipses.d.ts +2 -1
- package/ui/LoadingEllipses.js +1 -1
- package/ui/Menu.d.ts +1 -0
- package/ui/Menu.js +2 -2
- package/ui/SanitizedHTML.js +13 -10
- package/util/aborting.js +1 -1
- package/util/cluster.js +17 -11
- package/util/color/index.d.ts +1 -0
- package/util/color/index.js +8 -0
- package/util/compositeMap.d.ts +2 -2
- package/util/convertCodingSequenceToPeptides.d.ts +6 -0
- package/util/convertCodingSequenceToPeptides.js +12 -0
- package/util/fetchSeq.d.ts +8 -0
- package/util/fetchSeq.js +27 -0
- package/util/flatbush/index.d.ts +25 -0
- package/util/flatbush/index.js +362 -0
- package/util/flatqueue/index.d.ts +11 -0
- package/util/flatqueue/index.js +66 -0
- package/util/index.js +10 -10
- package/util/jexl.js +1 -0
- package/util/layouts/PrecomputedLayout.d.ts +3 -1
- package/util/layouts/PrecomputedLayout.js +23 -14
- package/util/tracks.js +1 -1
- package/util/useFeatureSequence.d.ts +19 -0
- package/util/useFeatureSequence.js +90 -0
- package/BaseFeatureWidget/SequenceFeatureDetails/hooks.d.ts +0 -10
- package/BaseFeatureWidget/SequenceFeatureDetails/hooks.js +0 -65
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useFeatureSequence = useFeatureSequence;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const configuration_1 = require("../../configuration");
|
|
6
|
-
const util_1 = require("../../util");
|
|
7
|
-
const BPLIMIT = 500000;
|
|
8
|
-
function useFeatureSequence(model, feature, upDownBp, forceLoad) {
|
|
9
|
-
const [sequence, setSequence] = (0, react_1.useState)();
|
|
10
|
-
const [error, setError] = (0, react_1.useState)();
|
|
11
|
-
(0, react_1.useEffect)(() => {
|
|
12
|
-
var _a, _b;
|
|
13
|
-
if (!model) {
|
|
14
|
-
return;
|
|
15
|
-
}
|
|
16
|
-
const { assemblyManager, rpcManager } = (0, util_1.getSession)(model);
|
|
17
|
-
const assemblyName = ((_b = (_a = model.view) === null || _a === void 0 ? void 0 : _a.assemblyNames) === null || _b === void 0 ? void 0 : _b[0]) || '';
|
|
18
|
-
async function fetchSeq(start, end, refName) {
|
|
19
|
-
const assembly = await assemblyManager.waitForAssembly(assemblyName);
|
|
20
|
-
if (!assembly) {
|
|
21
|
-
throw new Error('assembly not found');
|
|
22
|
-
}
|
|
23
|
-
const sessionId = 'getSequence';
|
|
24
|
-
const feats = await rpcManager.call(sessionId, 'CoreGetFeatures', {
|
|
25
|
-
adapterConfig: (0, configuration_1.getConf)(assembly, ['sequence', 'adapter']),
|
|
26
|
-
sessionId,
|
|
27
|
-
regions: [
|
|
28
|
-
{
|
|
29
|
-
start,
|
|
30
|
-
end,
|
|
31
|
-
refName: assembly.getCanonicalRefName(refName),
|
|
32
|
-
assemblyName,
|
|
33
|
-
},
|
|
34
|
-
],
|
|
35
|
-
});
|
|
36
|
-
const [feat] = feats;
|
|
37
|
-
return (feat === null || feat === void 0 ? void 0 : feat.get('seq')) || '';
|
|
38
|
-
}
|
|
39
|
-
;
|
|
40
|
-
(async () => {
|
|
41
|
-
try {
|
|
42
|
-
setError(undefined);
|
|
43
|
-
const { start, end, refName } = feature;
|
|
44
|
-
if (!forceLoad && end - start > BPLIMIT) {
|
|
45
|
-
setSequence({
|
|
46
|
-
error: `Genomic sequence larger than ${BPLIMIT}bp, use "force load" button to display`,
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
const b = start - upDownBp;
|
|
51
|
-
const e = end + upDownBp;
|
|
52
|
-
const seq = await fetchSeq(start, end, refName);
|
|
53
|
-
const up = await fetchSeq(Math.max(0, b), start, refName);
|
|
54
|
-
const down = await fetchSeq(end, e, refName);
|
|
55
|
-
setSequence({ seq, upstream: up, downstream: down });
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
catch (e) {
|
|
59
|
-
console.error(e);
|
|
60
|
-
setError(e);
|
|
61
|
-
}
|
|
62
|
-
})();
|
|
63
|
-
}, [feature, model, upDownBp, forceLoad]);
|
|
64
|
-
return { sequence, error };
|
|
65
|
-
}
|