@jbrowse/plugin-alignments 2.6.2 → 2.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/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
- package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +2 -1
- package/dist/AlignmentsFeatureDetail/util.d.ts +1 -3
- package/dist/BamAdapter/BamAdapter.d.ts +2 -9
- package/dist/CramAdapter/CramAdapter.d.ts +3 -11
- package/dist/CramAdapter/CramAdapter.js +2 -1
- package/dist/CramAdapter/util.js +3 -6
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +3 -4
- package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +3 -3
- package/dist/LinearAlignmentsDisplay/models/model.d.ts +5 -9
- package/dist/LinearAlignmentsDisplay/models/model.js +1 -0
- package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +514 -0
- package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +547 -0
- package/dist/LinearPileupDisplay/components/ColorByModifications.d.ts +4 -5
- package/dist/LinearPileupDisplay/components/ColorByModifications.js +3 -4
- package/dist/LinearPileupDisplay/components/ColorByTag.d.ts +7 -5
- package/dist/LinearPileupDisplay/components/ColorByTag.js +4 -7
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -4
- package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +2 -2
- package/dist/LinearPileupDisplay/components/SetFeatureHeight.d.ts +4 -5
- package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +3 -3
- package/dist/LinearPileupDisplay/components/SetMaxHeight.d.ts +3 -4
- package/dist/LinearPileupDisplay/components/SetMaxHeight.js +3 -3
- package/dist/LinearPileupDisplay/components/SortByTag.d.ts +3 -4
- package/dist/LinearPileupDisplay/components/SortByTag.js +3 -3
- package/dist/LinearPileupDisplay/index.d.ts +1 -0
- package/dist/LinearPileupDisplay/index.js +3 -1
- package/dist/LinearPileupDisplay/model.d.ts +142 -234
- package/dist/LinearPileupDisplay/model.js +50 -446
- package/dist/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -2
- package/dist/LinearReadArcsDisplay/components/ReactComponent.js +2 -1
- package/dist/LinearReadArcsDisplay/model.d.ts +9 -14
- package/dist/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -2
- package/dist/LinearReadCloudDisplay/components/ReactComponent.js +2 -1
- package/dist/LinearReadCloudDisplay/drawPairChains.js +1 -2
- package/dist/LinearReadCloudDisplay/model.d.ts +13 -15
- package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +1 -1
- package/dist/LinearSNPCoverageDisplay/models/model.d.ts +18 -423
- package/dist/LinearSNPCoverageDisplay/models/model.js +18 -0
- package/dist/MismatchParser/index.js +6 -8
- package/dist/PileupRenderer/PileupRenderer.js +0 -25
- package/dist/PileupRenderer/colorBy.js +1 -1
- package/dist/PileupRenderer/components/PileupRendering.d.ts +9 -10
- package/dist/PileupRenderer/components/PileupRendering.js +3 -5
- package/dist/PileupRenderer/getAlignmentShapeColor.js +1 -1
- package/dist/PileupRenderer/layoutFeature.js +1 -2
- package/dist/PileupRenderer/makeImageData.d.ts +1 -3
- package/dist/PileupRenderer/renderMethylation.js +5 -10
- package/dist/PileupRenderer/renderMismatches.d.ts +2 -6
- package/dist/PileupRenderer/renderMismatches.js +8 -11
- package/dist/PileupRenderer/renderModifications.js +4 -8
- package/dist/PileupRenderer/renderSoftClipping.js +26 -25
- package/dist/PileupRenderer/sortUtil.js +2 -2
- package/dist/SNPCoverageAdapter/util.d.ts +9 -13
- package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +6 -12
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -1
- package/dist/shared/BaseDisplayComponent.d.ts +2 -2
- package/dist/shared/BaseDisplayComponent.js +2 -1
- package/dist/shared/FilterByTag.d.ts +6 -15
- package/dist/shared/FilterByTag.js +4 -6
- package/dist/shared/color.d.ts +10 -0
- package/dist/shared/color.js +7 -1
- package/dist/shared/fetchChains.js +1 -0
- package/dist/shared/index.d.ts +9 -0
- package/dist/util.d.ts +3 -9
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
- package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +2 -1
- package/esm/AlignmentsFeatureDetail/util.d.ts +1 -3
- package/esm/BamAdapter/BamAdapter.d.ts +2 -9
- package/esm/CramAdapter/CramAdapter.d.ts +3 -11
- package/esm/CramAdapter/CramAdapter.js +2 -1
- package/esm/CramAdapter/util.js +3 -6
- package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +3 -4
- package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +3 -3
- package/esm/LinearAlignmentsDisplay/models/model.d.ts +5 -9
- package/esm/LinearAlignmentsDisplay/models/model.js +1 -0
- package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +514 -0
- package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +517 -0
- package/esm/LinearPileupDisplay/components/ColorByModifications.d.ts +4 -5
- package/esm/LinearPileupDisplay/components/ColorByModifications.js +3 -4
- package/esm/LinearPileupDisplay/components/ColorByTag.d.ts +7 -5
- package/esm/LinearPileupDisplay/components/ColorByTag.js +4 -7
- package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -4
- package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +2 -2
- package/esm/LinearPileupDisplay/components/SetFeatureHeight.d.ts +4 -5
- package/esm/LinearPileupDisplay/components/SetFeatureHeight.js +3 -3
- package/esm/LinearPileupDisplay/components/SetMaxHeight.d.ts +3 -4
- package/esm/LinearPileupDisplay/components/SetMaxHeight.js +3 -3
- package/esm/LinearPileupDisplay/components/SortByTag.d.ts +3 -4
- package/esm/LinearPileupDisplay/components/SortByTag.js +3 -3
- package/esm/LinearPileupDisplay/index.d.ts +1 -0
- package/esm/LinearPileupDisplay/index.js +1 -0
- package/esm/LinearPileupDisplay/model.d.ts +142 -234
- package/esm/LinearPileupDisplay/model.js +51 -447
- package/esm/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -2
- package/esm/LinearReadArcsDisplay/components/ReactComponent.js +2 -1
- package/esm/LinearReadArcsDisplay/model.d.ts +9 -14
- package/esm/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -2
- package/esm/LinearReadCloudDisplay/components/ReactComponent.js +2 -1
- package/esm/LinearReadCloudDisplay/drawPairChains.js +1 -2
- package/esm/LinearReadCloudDisplay/model.d.ts +13 -15
- package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +1 -1
- package/esm/LinearSNPCoverageDisplay/models/model.d.ts +18 -423
- package/esm/LinearSNPCoverageDisplay/models/model.js +18 -0
- package/esm/MismatchParser/index.js +6 -8
- package/esm/PileupRenderer/PileupRenderer.js +0 -2
- package/esm/PileupRenderer/colorBy.js +1 -1
- package/esm/PileupRenderer/components/PileupRendering.d.ts +9 -10
- package/esm/PileupRenderer/components/PileupRendering.js +3 -5
- package/esm/PileupRenderer/getAlignmentShapeColor.js +1 -1
- package/esm/PileupRenderer/layoutFeature.js +1 -2
- package/esm/PileupRenderer/makeImageData.d.ts +1 -3
- package/esm/PileupRenderer/renderMethylation.js +5 -10
- package/esm/PileupRenderer/renderMismatches.d.ts +2 -6
- package/esm/PileupRenderer/renderMismatches.js +8 -11
- package/esm/PileupRenderer/renderModifications.js +4 -8
- package/esm/PileupRenderer/renderSoftClipping.js +26 -25
- package/esm/PileupRenderer/sortUtil.js +2 -2
- package/esm/SNPCoverageAdapter/util.d.ts +9 -13
- package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +6 -12
- package/esm/index.d.ts +1 -1
- package/esm/index.js +1 -1
- package/esm/shared/BaseDisplayComponent.d.ts +2 -2
- package/esm/shared/BaseDisplayComponent.js +3 -2
- package/esm/shared/FilterByTag.d.ts +6 -15
- package/esm/shared/FilterByTag.js +4 -6
- package/esm/shared/color.d.ts +10 -0
- package/esm/shared/color.js +6 -0
- package/esm/shared/fetchChains.js +1 -0
- package/esm/shared/index.d.ts +9 -0
- package/esm/util.d.ts +3 -9
- package/package.json +3 -4
|
@@ -70,7 +70,7 @@ function Bitmask(props) {
|
|
|
70
70
|
react_1.default.createElement("label", { htmlFor: key }, name)));
|
|
71
71
|
})));
|
|
72
72
|
}
|
|
73
|
-
function
|
|
73
|
+
const FilterByTagDialog = (0, mobx_react_1.observer)(function (props) {
|
|
74
74
|
var _a, _b;
|
|
75
75
|
const { model, handleClose } = props;
|
|
76
76
|
const { classes } = useStyles();
|
|
@@ -99,9 +99,7 @@ function FilterByTagDlg(props) {
|
|
|
99
99
|
react_1.default.createElement(Bitmask, { flag: flagExclude, setFlag: setFlagExclude })))),
|
|
100
100
|
react_1.default.createElement(material_1.Paper, { className: classes.paper, variant: "outlined" },
|
|
101
101
|
react_1.default.createElement(material_1.Typography, null, "Filter by tag name and value. Use * in the value field to get all reads containing any value for that tag. Example: filter tag name SA with value * to get all split/supplementary reads. Other examples include HP for haplotype, or RG for read group"),
|
|
102
|
-
react_1.default.createElement(material_1.TextField, { className: classes.field, value: tag, onChange: event => setTag(event.target.value), placeholder: "Enter tag name", inputProps: {
|
|
103
|
-
maxLength: 2,
|
|
104
|
-
}, error: tag.length === 2 && !validTag, helperText: tag.length === 2 && !validTag ? 'Not a valid tag' : '' }),
|
|
102
|
+
react_1.default.createElement(material_1.TextField, { className: classes.field, value: tag, onChange: event => setTag(event.target.value), placeholder: "Enter tag name", inputProps: { maxLength: 2 }, error: tag.length === 2 && !validTag, helperText: tag.length === 2 && !validTag ? 'Not a valid tag' : '' }),
|
|
105
103
|
react_1.default.createElement(material_1.TextField, { className: classes.field, value: tagValue, onChange: event => setTagValue(event.target.value), placeholder: "Enter tag value" })),
|
|
106
104
|
react_1.default.createElement(material_1.Paper, { className: classes.paper, variant: "outlined" },
|
|
107
105
|
react_1.default.createElement(material_1.Typography, null, "Filter by read name"),
|
|
@@ -122,5 +120,5 @@ function FilterByTagDlg(props) {
|
|
|
122
120
|
handleClose();
|
|
123
121
|
} }, "Submit"),
|
|
124
122
|
react_1.default.createElement(material_1.Button, { variant: "contained", color: "secondary", onClick: () => handleClose() }, "Cancel")))));
|
|
125
|
-
}
|
|
126
|
-
exports.default =
|
|
123
|
+
});
|
|
124
|
+
exports.default = FilterByTagDialog;
|
package/dist/shared/color.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Instance } from 'mobx-state-tree';
|
|
1
2
|
import { ChainStats } from './fetchChains';
|
|
2
3
|
export declare const fillColor: {
|
|
3
4
|
color_fwd_strand_not_proper: string;
|
|
@@ -53,3 +54,12 @@ export declare function getPairedInsertSizeAndOrientationColor(f1: {
|
|
|
53
54
|
export declare function getPairedOrientationColor(f: {
|
|
54
55
|
pair_orientation?: string;
|
|
55
56
|
}): readonly [string, string];
|
|
57
|
+
export interface ExtraColorBy {
|
|
58
|
+
custom?: Record<string, string>;
|
|
59
|
+
}
|
|
60
|
+
export declare const ColorByModel: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IModelType<{
|
|
61
|
+
type: import("mobx-state-tree").ISimpleType<string>;
|
|
62
|
+
tag: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
|
|
63
|
+
extra: import("mobx-state-tree").IType<any, any, any>;
|
|
64
|
+
}, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
65
|
+
export type IColorByModel = Instance<typeof ColorByModel>;
|
package/dist/shared/color.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPairedOrientationColor = exports.getPairedInsertSizeAndOrientationColor = exports.getPairedInsertSizeColor = exports.strokeColor = exports.fillColor = void 0;
|
|
3
|
+
exports.ColorByModel = exports.getPairedOrientationColor = exports.getPairedInsertSizeAndOrientationColor = exports.getPairedInsertSizeColor = exports.strokeColor = exports.fillColor = void 0;
|
|
4
|
+
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
4
5
|
const util_1 = require("../util");
|
|
5
6
|
exports.fillColor = {
|
|
6
7
|
color_fwd_strand_not_proper: '#ECC8C8',
|
|
@@ -74,3 +75,8 @@ function getPairedOrientationColor(f) {
|
|
|
74
75
|
];
|
|
75
76
|
}
|
|
76
77
|
exports.getPairedOrientationColor = getPairedOrientationColor;
|
|
78
|
+
exports.ColorByModel = mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.model({
|
|
79
|
+
type: mobx_state_tree_1.types.string,
|
|
80
|
+
tag: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.string),
|
|
81
|
+
extra: mobx_state_tree_1.types.frozen(),
|
|
82
|
+
}));
|
|
@@ -4,6 +4,7 @@ exports.fetchChains = void 0;
|
|
|
4
4
|
const util_1 = require("@jbrowse/core/util");
|
|
5
5
|
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
6
6
|
async function fetchChains(self) {
|
|
7
|
+
// @ts-expect-error
|
|
7
8
|
const { rpcSessionId: sessionId } = (0, util_1.getContainingTrack)(self);
|
|
8
9
|
const { rpcManager } = (0, util_1.getSession)(self);
|
|
9
10
|
const view = (0, util_1.getContainingView)(self);
|
package/dist/shared/index.d.ts
CHANGED
|
@@ -33,4 +33,13 @@ export declare const FilterModel: import("mobx-state-tree").IModelType<{
|
|
|
33
33
|
value: import("mobx-state-tree").ISimpleType<string>;
|
|
34
34
|
}, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
35
35
|
}, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
36
|
+
export interface IFilter {
|
|
37
|
+
flagExclude: number;
|
|
38
|
+
flagInclude: number;
|
|
39
|
+
readName?: string;
|
|
40
|
+
tagFilter?: {
|
|
41
|
+
tag: string;
|
|
42
|
+
value: string;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
36
45
|
export {};
|
package/dist/util.d.ts
CHANGED
|
@@ -5,15 +5,9 @@ import { IAutorunOptions } from 'mobx';
|
|
|
5
5
|
export declare function getTag(feature: Feature, tag: string): any;
|
|
6
6
|
export declare function getTagAlt(feature: Feature, tag: string, alt: string): any;
|
|
7
7
|
export declare const orientationTypes: {
|
|
8
|
-
fr:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
rf: {
|
|
12
|
-
[key: string]: string;
|
|
13
|
-
};
|
|
14
|
-
ff: {
|
|
15
|
-
[key: string]: string;
|
|
16
|
-
};
|
|
8
|
+
fr: Record<string, string>;
|
|
9
|
+
rf: Record<string, string>;
|
|
10
|
+
ff: Record<string, string>;
|
|
17
11
|
};
|
|
18
12
|
export declare const pairMap: {
|
|
19
13
|
readonly LR: "color_pair_lr";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { IAnyStateTreeNode } from 'mobx-state-tree';
|
|
3
|
-
declare const
|
|
3
|
+
declare const AlignmentsFeatureDetails: (props: {
|
|
4
4
|
model: IAnyStateTreeNode;
|
|
5
5
|
}) => React.JSX.Element;
|
|
6
|
-
export default
|
|
6
|
+
export default AlignmentsFeatureDetails;
|
|
@@ -92,7 +92,7 @@ function PairLink({ locString, model, }) {
|
|
|
92
92
|
navToLoc(locString, model);
|
|
93
93
|
}, href: "#" }, locString));
|
|
94
94
|
}
|
|
95
|
-
|
|
95
|
+
const AlignmentsFeatureDetails = observer(function (props) {
|
|
96
96
|
const { model } = props;
|
|
97
97
|
const feat = clone(model.featureData);
|
|
98
98
|
const SA = getTag('SA', feat);
|
|
@@ -103,3 +103,4 @@ export default observer(function AlignmentFeatureDetails(props) {
|
|
|
103
103
|
SA ? React.createElement(SupplementaryAlignments, { model: model, tag: SA }) : null,
|
|
104
104
|
feat.flags !== undefined ? (React.createElement(AlignmentFlags, { feature: feat, ...props })) : null));
|
|
105
105
|
});
|
|
106
|
+
export default AlignmentsFeatureDetails;
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { IAnyStateTreeNode } from 'mobx-state-tree';
|
|
2
2
|
export declare function getTag(tag: string, feat: {
|
|
3
|
-
tags?:
|
|
4
|
-
[key: string]: unknown;
|
|
5
|
-
};
|
|
3
|
+
tags?: Record<string, unknown>;
|
|
6
4
|
[key: string]: unknown;
|
|
7
5
|
}): unknown;
|
|
8
6
|
export declare function navToLoc(locString: string, model: IAnyStateTreeNode): Promise<void>;
|
|
@@ -2,6 +2,7 @@ import { BamFile } from '@gmod/bam';
|
|
|
2
2
|
import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
3
3
|
import { Region } from '@jbrowse/core/util/types';
|
|
4
4
|
import { Feature } from '@jbrowse/core/util';
|
|
5
|
+
import { IFilter } from '../shared';
|
|
5
6
|
interface Header {
|
|
6
7
|
idToName: string[];
|
|
7
8
|
nameToId: Record<string, number>;
|
|
@@ -29,15 +30,7 @@ export default class BamAdapter extends BaseFeatureDataAdapter {
|
|
|
29
30
|
getFeatures(region: Region & {
|
|
30
31
|
originalRefName?: string;
|
|
31
32
|
}, opts?: BaseOptions & {
|
|
32
|
-
filterBy:
|
|
33
|
-
flagInclude: number;
|
|
34
|
-
flagExclude: number;
|
|
35
|
-
tagFilter: {
|
|
36
|
-
tag: string;
|
|
37
|
-
value: unknown;
|
|
38
|
-
};
|
|
39
|
-
readName: string;
|
|
40
|
-
};
|
|
33
|
+
filterBy: IFilter;
|
|
41
34
|
}): import("rxjs").Observable<Feature>;
|
|
42
35
|
getMultiRegionFeatureDensityStats(regions: Region[], opts?: BaseOptions): Promise<import("@jbrowse/core/data_adapters/BaseAdapter").FeatureDensityStats | {
|
|
43
36
|
bytes: number;
|
|
@@ -2,20 +2,12 @@ import { IndexedCramFile, CramRecord } from '@gmod/cram';
|
|
|
2
2
|
import { BaseFeatureDataAdapter, BaseOptions, BaseSequenceAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
3
3
|
import { Region, Feature } from '@jbrowse/core/util';
|
|
4
4
|
import CramSlightlyLazyFeature from './CramSlightlyLazyFeature';
|
|
5
|
+
import { IFilter } from '../shared';
|
|
5
6
|
interface Header {
|
|
6
7
|
idToName?: string[];
|
|
7
8
|
nameToId?: Record<string, number>;
|
|
8
9
|
readGroups?: (string | undefined)[];
|
|
9
10
|
}
|
|
10
|
-
interface FilterBy {
|
|
11
|
-
flagInclude: number;
|
|
12
|
-
flagExclude: number;
|
|
13
|
-
tagFilter: {
|
|
14
|
-
tag: string;
|
|
15
|
-
value: unknown;
|
|
16
|
-
};
|
|
17
|
-
readName: string;
|
|
18
|
-
}
|
|
19
11
|
export default class CramAdapter extends BaseFeatureDataAdapter {
|
|
20
12
|
samHeader: Header;
|
|
21
13
|
private setupP?;
|
|
@@ -30,7 +22,7 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
|
|
|
30
22
|
cram: IndexedCramFile;
|
|
31
23
|
sequenceAdapter: BaseSequenceAdapter;
|
|
32
24
|
}>;
|
|
33
|
-
getHeader(
|
|
25
|
+
getHeader(_opts?: BaseOptions): Promise<string | undefined>;
|
|
34
26
|
private seqFetch;
|
|
35
27
|
private setupPre;
|
|
36
28
|
private setup;
|
|
@@ -41,7 +33,7 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
|
|
|
41
33
|
getFeatures(region: Region & {
|
|
42
34
|
originalRefName?: string;
|
|
43
35
|
}, opts?: BaseOptions & {
|
|
44
|
-
filterBy:
|
|
36
|
+
filterBy: IFilter;
|
|
45
37
|
}): import("rxjs").Observable<Feature>;
|
|
46
38
|
freeResources(): void;
|
|
47
39
|
cramRecordToFeature(record: CramRecord): CramSlightlyLazyFeature;
|
|
@@ -5,6 +5,7 @@ import { openLocation } from '@jbrowse/core/util/io';
|
|
|
5
5
|
import { ObservableCreate } from '@jbrowse/core/util/rxjs';
|
|
6
6
|
import { toArray } from 'rxjs/operators';
|
|
7
7
|
import { firstValueFrom } from 'rxjs';
|
|
8
|
+
// locals
|
|
8
9
|
import CramSlightlyLazyFeature from './CramSlightlyLazyFeature';
|
|
9
10
|
export default class CramAdapter extends BaseFeatureDataAdapter {
|
|
10
11
|
constructor() {
|
|
@@ -49,7 +50,7 @@ export default class CramAdapter extends BaseFeatureDataAdapter {
|
|
|
49
50
|
}
|
|
50
51
|
return this.configureP;
|
|
51
52
|
}
|
|
52
|
-
async getHeader(
|
|
53
|
+
async getHeader(_opts) {
|
|
53
54
|
const { cram } = await this.configure();
|
|
54
55
|
return cram.cram.getHeaderText();
|
|
55
56
|
}
|
package/esm/CramAdapter/util.js
CHANGED
|
@@ -8,9 +8,7 @@ export function readFeaturesToMismatches(readFeatures, start, qual) {
|
|
|
8
8
|
let refPos = 0;
|
|
9
9
|
let sublen = 0;
|
|
10
10
|
let lastPos = start;
|
|
11
|
-
for (
|
|
12
|
-
const f = readFeatures[i];
|
|
13
|
-
const { code, pos, data, sub, ref } = f;
|
|
11
|
+
for (const { refPos: p, code, pos, data, sub, ref } of readFeatures) {
|
|
14
12
|
sublen = refPos - lastPos;
|
|
15
13
|
lastPos = refPos;
|
|
16
14
|
if (sublen && insLen > 0) {
|
|
@@ -22,7 +20,7 @@ export function readFeaturesToMismatches(readFeatures, start, qual) {
|
|
|
22
20
|
};
|
|
23
21
|
insLen = 0;
|
|
24
22
|
}
|
|
25
|
-
refPos =
|
|
23
|
+
refPos = p - 1 - start;
|
|
26
24
|
if (code === 'X') {
|
|
27
25
|
// substitution
|
|
28
26
|
mismatches[j++] = {
|
|
@@ -130,8 +128,7 @@ export function readFeaturesToCIGAR(readFeatures, alignmentStart, readLen, refRe
|
|
|
130
128
|
let sublen = 0;
|
|
131
129
|
let insLen = 0;
|
|
132
130
|
if (readFeatures !== undefined) {
|
|
133
|
-
for (
|
|
134
|
-
const { code, refPos, sub, data } = readFeatures[i];
|
|
131
|
+
for (const { code, refPos, sub, data } of readFeatures) {
|
|
135
132
|
sublen = refPos - lastPos;
|
|
136
133
|
seq += ref.slice(lastPos - refStart, refPos - refStart);
|
|
137
134
|
lastPos = refPos;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { AlignmentsDisplayModel } from '../models/model';
|
|
3
|
-
declare
|
|
3
|
+
declare const AlignmentsDisplay: ({ model, }: {
|
|
4
4
|
model: AlignmentsDisplayModel;
|
|
5
|
-
})
|
|
6
|
-
|
|
7
|
-
export default _default;
|
|
5
|
+
}) => React.JSX.Element | null;
|
|
6
|
+
export default AlignmentsDisplay;
|
|
@@ -10,7 +10,7 @@ const useStyles = makeStyles()({
|
|
|
10
10
|
zIndex: 2,
|
|
11
11
|
},
|
|
12
12
|
});
|
|
13
|
-
function AlignmentsDisplay({ model }) {
|
|
13
|
+
const AlignmentsDisplay = observer(function AlignmentsDisplay({ model, }) {
|
|
14
14
|
var _a;
|
|
15
15
|
const { PileupDisplay, SNPCoverageDisplay } = model;
|
|
16
16
|
const { classes } = useStyles();
|
|
@@ -30,5 +30,5 @@ function AlignmentsDisplay({ model }) {
|
|
|
30
30
|
top,
|
|
31
31
|
} },
|
|
32
32
|
React.createElement(PileupDisplay.RenderingComponent, { model: PileupDisplay }))));
|
|
33
|
-
}
|
|
34
|
-
export default
|
|
33
|
+
});
|
|
34
|
+
export default AlignmentsDisplay;
|
|
@@ -55,10 +55,7 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
|
|
|
55
55
|
} & import("mobx-state-tree/dist/internal").NonEmptyObject & {
|
|
56
56
|
rendererTypeName: string;
|
|
57
57
|
error: unknown;
|
|
58
|
-
message: string | undefined;
|
|
59
|
-
* #property
|
|
60
|
-
* refers to LinearPileupDisplay sub-display model
|
|
61
|
-
*/
|
|
58
|
+
message: string | undefined;
|
|
62
59
|
} & IStateTreeNode<import("mobx-state-tree").IModelType<{
|
|
63
60
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
64
61
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
@@ -69,14 +66,13 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
|
|
|
69
66
|
message: string | undefined;
|
|
70
67
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
|
|
71
68
|
}> | null;
|
|
72
|
-
readonly adapterConfig: any;
|
|
73
|
-
* #stateModel LinearAlignmentsDisplay
|
|
74
|
-
* extends `BaseDisplay`
|
|
75
|
-
*/
|
|
69
|
+
readonly adapterConfig: any;
|
|
76
70
|
readonly parentTrack: any;
|
|
77
71
|
renderProps(): any;
|
|
78
72
|
readonly rendererType: import("@jbrowse/core/pluggableElementTypes").RendererType;
|
|
79
|
-
readonly DisplayMessageComponent: React.FC<any> | undefined;
|
|
73
|
+
readonly DisplayMessageComponent: React.FC<any> | undefined; /**
|
|
74
|
+
* #action
|
|
75
|
+
*/
|
|
80
76
|
trackMenuItems(): MenuItem[];
|
|
81
77
|
readonly viewMenuActions: MenuItem[];
|
|
82
78
|
regionCannotBeRendered(): null;
|