@jbrowse/plugin-gccontent 2.16.1 → 2.18.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/GCContentAdapter/GCContentAdapter.d.ts +5 -9
- package/dist/GCContentAdapter/GCContentAdapter.js +47 -42
- package/dist/GCContentAdapter/configSchema.d.ts +1 -10
- package/dist/GCContentAdapter/configSchema.js +1 -14
- package/dist/GCContentAdapter/index.d.ts +1 -1
- package/dist/GCContentTrack/configSchema.d.ts +1 -1
- package/dist/GCContentTrack/configSchema.js +1 -8
- package/dist/GCContentTrack/index.d.ts +1 -1
- package/dist/LinearGCContentDisplay/components/EditGCContentParams.js +3 -3
- package/dist/LinearGCContentDisplay/config1.d.ts +1 -6
- package/dist/LinearGCContentDisplay/config1.js +0 -8
- package/dist/LinearGCContentDisplay/config2.d.ts +1 -6
- package/dist/LinearGCContentDisplay/config2.js +0 -8
- package/dist/LinearGCContentDisplay/index.d.ts +1 -1
- package/dist/LinearGCContentDisplay/shared.d.ts +16 -43
- package/dist/LinearGCContentDisplay/shared.js +4 -21
- package/dist/LinearGCContentDisplay/stateModel1.d.ts +16 -29
- package/dist/LinearGCContentDisplay/stateModel1.js +0 -6
- package/dist/LinearGCContentDisplay/stateModel2.d.ts +16 -34
- package/dist/LinearGCContentDisplay/stateModel2.js +0 -11
- package/dist/index.d.ts +1 -1
- package/dist/index.js +0 -1
- package/esm/GCContentAdapter/GCContentAdapter.d.ts +5 -9
- package/esm/GCContentAdapter/GCContentAdapter.js +47 -42
- package/esm/GCContentAdapter/configSchema.d.ts +1 -10
- package/esm/GCContentAdapter/configSchema.js +1 -14
- package/esm/GCContentAdapter/index.d.ts +1 -1
- package/esm/GCContentTrack/configSchema.d.ts +1 -1
- package/esm/GCContentTrack/configSchema.js +1 -8
- package/esm/GCContentTrack/index.d.ts +1 -1
- package/esm/LinearGCContentDisplay/components/EditGCContentParams.js +3 -3
- package/esm/LinearGCContentDisplay/config1.d.ts +1 -6
- package/esm/LinearGCContentDisplay/config1.js +0 -8
- package/esm/LinearGCContentDisplay/config2.d.ts +1 -6
- package/esm/LinearGCContentDisplay/config2.js +0 -8
- package/esm/LinearGCContentDisplay/index.d.ts +1 -1
- package/esm/LinearGCContentDisplay/shared.d.ts +16 -43
- package/esm/LinearGCContentDisplay/shared.js +5 -22
- package/esm/LinearGCContentDisplay/stateModel1.d.ts +16 -29
- package/esm/LinearGCContentDisplay/stateModel1.js +0 -6
- package/esm/LinearGCContentDisplay/stateModel2.d.ts +16 -34
- package/esm/LinearGCContentDisplay/stateModel2.js +0 -11
- package/esm/index.d.ts +1 -1
- package/esm/index.js +0 -1
- package/package.json +2 -2
|
@@ -5,13 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.default = stateModelF;
|
|
7
7
|
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
8
|
-
// locals
|
|
9
8
|
const shared_1 = __importDefault(require("./shared"));
|
|
10
|
-
/**
|
|
11
|
-
* #stateModel LinearGCContentDisplay
|
|
12
|
-
* #category display
|
|
13
|
-
* base model `SharedGCContentModel`
|
|
14
|
-
*/
|
|
15
9
|
function stateModelF(pluginManager, configSchema) {
|
|
16
10
|
return mobx_state_tree_1.types.compose('LinearGCContentDisplay', (0, shared_1.default)(pluginManager, configSchema), mobx_state_tree_1.types.model({
|
|
17
11
|
type: mobx_state_tree_1.types.literal('LinearGCContentDisplay'),
|
|
@@ -1,15 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
/**
|
|
4
|
-
* #stateModel LinearGCContentTrackDisplay
|
|
5
|
-
* #category display
|
|
6
|
-
*
|
|
7
|
-
* used on GCContentTrack, separately from the display type on the
|
|
8
|
-
* ReferenceSequenceTrack
|
|
9
|
-
*
|
|
10
|
-
* extends
|
|
11
|
-
* - [SharedGCContentModel](../sharedgccontentmodel)
|
|
12
|
-
*/
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
|
+
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
13
3
|
export default function stateModelF(pluginManager: PluginManager, configSchema: AnyConfigurationSchemaType): import("mobx-state-tree").IModelType<{
|
|
14
4
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
15
5
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
@@ -22,21 +12,12 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
22
12
|
} & {
|
|
23
13
|
blockState: import("mobx-state-tree").IMapType<import("mobx-state-tree").IModelType<{
|
|
24
14
|
key: import("mobx-state-tree").ISimpleType<string>;
|
|
25
|
-
region: import("mobx-state-tree").
|
|
26
|
-
refName: import("mobx-state-tree").ISimpleType<string>;
|
|
27
|
-
start: import("mobx-state-tree").ISimpleType<number>;
|
|
28
|
-
end: import("mobx-state-tree").ISimpleType<number>;
|
|
29
|
-
reversed: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
30
|
-
} & {
|
|
31
|
-
assemblyName: import("mobx-state-tree").ISimpleType<string>;
|
|
32
|
-
}, {
|
|
33
|
-
setRefName(newRefName: string): void;
|
|
34
|
-
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
15
|
+
region: import("mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
|
|
35
16
|
reloadFlag: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
36
17
|
isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
37
18
|
isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
38
19
|
}, {
|
|
39
|
-
|
|
20
|
+
stopToken: string | undefined;
|
|
40
21
|
filled: boolean;
|
|
41
22
|
reactElement: React.ReactElement | undefined;
|
|
42
23
|
features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
|
|
@@ -60,15 +41,9 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
60
41
|
doReload(): void;
|
|
61
42
|
afterAttach(): void;
|
|
62
43
|
setStatus(message: string): void;
|
|
63
|
-
setLoading(
|
|
44
|
+
setLoading(newStopToken: string): void;
|
|
64
45
|
setMessage(messageText: string): void;
|
|
65
|
-
setRendered(props:
|
|
66
|
-
reactElement: React.ReactElement;
|
|
67
|
-
features: Map<string, import("@jbrowse/core/util").Feature>;
|
|
68
|
-
layout: any;
|
|
69
|
-
maxHeightReached: boolean;
|
|
70
|
-
renderProps: any;
|
|
71
|
-
} | undefined): void;
|
|
46
|
+
setRendered(props: import("@jbrowse/plugin-linear-genome-view/src/BaseLinearDisplay/models/serverSideRenderedBlock").RenderedProps | undefined): void;
|
|
72
47
|
setError(error: unknown): void;
|
|
73
48
|
reload(): void;
|
|
74
49
|
beforeDestroy(): void;
|
|
@@ -215,6 +190,7 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
215
190
|
readonly regionTooLarge: boolean;
|
|
216
191
|
readonly regionTooLargeReason: string;
|
|
217
192
|
} & {
|
|
193
|
+
readonly statsReadyAndRegionNotTooLarge: boolean;
|
|
218
194
|
regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
|
|
219
195
|
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
|
|
220
196
|
} & {
|
|
@@ -254,19 +230,21 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
254
230
|
} & {
|
|
255
231
|
message: undefined | string;
|
|
256
232
|
stats: {
|
|
233
|
+
currStatsBpPerPx: number;
|
|
257
234
|
scoreMin: number;
|
|
258
235
|
scoreMax: number;
|
|
259
236
|
} | undefined;
|
|
260
|
-
statsFetchInProgress: undefined |
|
|
237
|
+
statsFetchInProgress: undefined | string;
|
|
261
238
|
} & {
|
|
262
239
|
updateQuantitativeStats(stats: {
|
|
240
|
+
currStatsBpPerPx: number;
|
|
263
241
|
scoreMin: number;
|
|
264
242
|
scoreMax: number;
|
|
265
243
|
}): void;
|
|
266
244
|
setColor(color?: string): void;
|
|
267
245
|
setPosColor(color?: string): void;
|
|
268
246
|
setNegColor(color?: string): void;
|
|
269
|
-
|
|
247
|
+
setStatsLoading(arg?: string): void;
|
|
270
248
|
selectFeature(feature: import("@jbrowse/core/util").Feature): void;
|
|
271
249
|
setResolution(res: number): void;
|
|
272
250
|
setFill(fill: number): void;
|
|
@@ -308,6 +286,7 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
308
286
|
readonly scaleOpts: {
|
|
309
287
|
domain: number[] | undefined;
|
|
310
288
|
stats: {
|
|
289
|
+
currStatsBpPerPx: number;
|
|
311
290
|
scoreMin: number;
|
|
312
291
|
scoreMax: number;
|
|
313
292
|
} | undefined;
|
|
@@ -346,7 +325,9 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
346
325
|
} & {
|
|
347
326
|
readonly TooltipComponent: import("@jbrowse/core/util").AnyReactComponentType;
|
|
348
327
|
readonly rendererTypeName: string;
|
|
328
|
+
readonly quantitativeStatsRelevantToCurrentZoom: boolean;
|
|
349
329
|
} & {
|
|
330
|
+
adapterProps(): any;
|
|
350
331
|
readonly ticks: {
|
|
351
332
|
range: number[];
|
|
352
333
|
values: number[];
|
|
@@ -357,6 +338,7 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
357
338
|
renderProps(): any;
|
|
358
339
|
readonly needsScalebar: boolean;
|
|
359
340
|
readonly fillSetting: 1 | 2 | 0;
|
|
341
|
+
readonly quantitativeStatsReady: boolean;
|
|
360
342
|
} & {
|
|
361
343
|
trackMenuItems(): (import("@jbrowse/core/ui").MenuDivider | import("@jbrowse/core/ui").MenuSubHeader | import("@jbrowse/core/ui").NormalMenuItem | import("@jbrowse/core/ui").CheckboxMenuItem | import("@jbrowse/core/ui").RadioMenuItem | import("@jbrowse/core/ui").SubMenuItem | {
|
|
362
344
|
label: string;
|
|
@@ -415,5 +397,5 @@ export default function stateModelF(pluginManager: PluginManager, configSchema:
|
|
|
415
397
|
readonly windowDeltaSetting: any;
|
|
416
398
|
} & {
|
|
417
399
|
trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
|
|
418
|
-
|
|
400
|
+
adapterProps(): any;
|
|
419
401
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
@@ -5,18 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.default = stateModelF;
|
|
7
7
|
const mobx_state_tree_1 = require("mobx-state-tree");
|
|
8
|
-
// locals
|
|
9
8
|
const shared_1 = __importDefault(require("./shared"));
|
|
10
|
-
/**
|
|
11
|
-
* #stateModel LinearGCContentTrackDisplay
|
|
12
|
-
* #category display
|
|
13
|
-
*
|
|
14
|
-
* used on GCContentTrack, separately from the display type on the
|
|
15
|
-
* ReferenceSequenceTrack
|
|
16
|
-
*
|
|
17
|
-
* extends
|
|
18
|
-
* - [SharedGCContentModel](../sharedgccontentmodel)
|
|
19
|
-
*/
|
|
20
9
|
function stateModelF(pluginManager, configSchema) {
|
|
21
10
|
return mobx_state_tree_1.types.compose('LinearGCContentTrackDisplay', (0, shared_1.default)(pluginManager, configSchema), mobx_state_tree_1.types.model({
|
|
22
11
|
type: mobx_state_tree_1.types.literal('LinearGCContentTrackDisplay'),
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import Plugin from '@jbrowse/core/Plugin';
|
|
2
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
2
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
3
3
|
export default class GCContentPlugin extends Plugin {
|
|
4
4
|
name: string;
|
|
5
5
|
install(pluginManager: PluginManager): void;
|
package/dist/index.js
CHANGED
|
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const Plugin_1 = __importDefault(require("@jbrowse/core/Plugin"));
|
|
7
|
-
// locals
|
|
8
7
|
const GCContentAdapter_1 = __importDefault(require("./GCContentAdapter"));
|
|
9
8
|
const GCContentTrack_1 = __importDefault(require("./GCContentTrack"));
|
|
10
9
|
const LinearGCContentDisplay_1 = __importDefault(require("./LinearGCContentDisplay"));
|
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
import { BaseFeatureDataAdapter
|
|
2
|
-
import {
|
|
1
|
+
import { BaseFeatureDataAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
2
|
+
import type { BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
3
|
+
import type { Feature, Region } from '@jbrowse/core/util';
|
|
3
4
|
export default class GCContentAdapter extends BaseFeatureDataAdapter {
|
|
4
5
|
private gcMode;
|
|
5
6
|
static capabilities: string[];
|
|
6
7
|
configure(): Promise<BaseFeatureDataAdapter>;
|
|
7
|
-
getRefNames(): Promise<string[]>;
|
|
8
|
-
getFeatures(query: Region, opts
|
|
9
|
-
/**
|
|
10
|
-
* called to provide a hint that data tied to a certain region
|
|
11
|
-
* will not be needed for the foreseeable future and can be purged
|
|
12
|
-
* from caches, etc
|
|
13
|
-
*/
|
|
8
|
+
getRefNames(opts?: BaseOptions): Promise<string[]>;
|
|
9
|
+
getFeatures(query: Region, opts?: BaseOptions): import("rxjs").Observable<Feature>;
|
|
14
10
|
freeResources(): void;
|
|
15
11
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { BaseFeatureDataAdapter
|
|
2
|
-
import {
|
|
1
|
+
import { BaseFeatureDataAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
|
|
2
|
+
import { SimpleFeature, updateStatus } from '@jbrowse/core/util';
|
|
3
3
|
import { ObservableCreate } from '@jbrowse/core/util/rxjs';
|
|
4
|
-
import {
|
|
4
|
+
import { checkStopToken } from '@jbrowse/core/util/stopToken';
|
|
5
|
+
import { firstValueFrom } from 'rxjs';
|
|
5
6
|
import { toArray } from 'rxjs/operators';
|
|
6
7
|
class GCContentAdapter extends BaseFeatureDataAdapter {
|
|
7
8
|
constructor() {
|
|
@@ -16,17 +17,18 @@ class GCContentAdapter extends BaseFeatureDataAdapter {
|
|
|
16
17
|
}
|
|
17
18
|
return adapter.dataAdapter;
|
|
18
19
|
}
|
|
19
|
-
async getRefNames() {
|
|
20
|
+
async getRefNames(opts) {
|
|
20
21
|
const adapter = await this.configure();
|
|
21
|
-
return adapter.getRefNames();
|
|
22
|
+
return adapter.getRefNames(opts);
|
|
22
23
|
}
|
|
23
24
|
getFeatures(query, opts) {
|
|
25
|
+
const { statusCallback = () => { }, stopToken } = opts || {};
|
|
24
26
|
return ObservableCreate(async (observer) => {
|
|
25
27
|
var _a;
|
|
26
28
|
const sequenceAdapter = await this.configure();
|
|
27
29
|
const windowSize = this.getConf('windowSize');
|
|
28
30
|
const windowDelta = this.getConf('windowDelta');
|
|
29
|
-
const hw = windowSize === 1 ? 1 : windowSize / 2;
|
|
31
|
+
const hw = windowSize === 1 ? 1 : windowSize / 2;
|
|
30
32
|
const f = windowSize === 1;
|
|
31
33
|
let { start: queryStart, end: queryEnd } = query;
|
|
32
34
|
queryStart = Math.max(0, queryStart - hw);
|
|
@@ -35,52 +37,55 @@ class GCContentAdapter extends BaseFeatureDataAdapter {
|
|
|
35
37
|
observer.complete();
|
|
36
38
|
return;
|
|
37
39
|
}
|
|
38
|
-
const
|
|
40
|
+
const feats = await firstValueFrom(sequenceAdapter
|
|
41
|
+
.getFeatures({
|
|
39
42
|
...query,
|
|
40
43
|
start: queryStart,
|
|
41
44
|
end: queryEnd,
|
|
42
|
-
}, opts)
|
|
43
|
-
|
|
45
|
+
}, opts)
|
|
46
|
+
.pipe(toArray()));
|
|
44
47
|
const residues = ((_a = feats[0]) === null || _a === void 0 ? void 0 : _a.get('seq')) || '';
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
let
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
if (letter === 'c' || letter === 'C') {
|
|
52
|
-
nc++;
|
|
48
|
+
let start = performance.now();
|
|
49
|
+
await updateStatus('Calculating GC', statusCallback, () => {
|
|
50
|
+
for (let i = hw; i < residues.length - hw; i += windowDelta) {
|
|
51
|
+
if (performance.now() - start > 400) {
|
|
52
|
+
checkStopToken(stopToken);
|
|
53
|
+
start = performance.now();
|
|
53
54
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
55
|
+
const r = f ? residues[i] : residues.slice(i - hw, i + hw);
|
|
56
|
+
let nc = 0;
|
|
57
|
+
let ng = 0;
|
|
58
|
+
let len = 0;
|
|
59
|
+
for (const letter of r) {
|
|
60
|
+
if (letter === 'c' || letter === 'C') {
|
|
61
|
+
nc++;
|
|
62
|
+
}
|
|
63
|
+
else if (letter === 'g' || letter === 'G') {
|
|
64
|
+
ng++;
|
|
65
|
+
}
|
|
66
|
+
if (letter !== 'N') {
|
|
67
|
+
len++;
|
|
68
|
+
}
|
|
59
69
|
}
|
|
70
|
+
const pos = queryStart;
|
|
71
|
+
const score = this.gcMode === 'content'
|
|
72
|
+
? (ng + nc) / (len || 1)
|
|
73
|
+
: this.gcMode === 'skew'
|
|
74
|
+
? (ng - nc) / (ng + nc || 1)
|
|
75
|
+
: 0;
|
|
76
|
+
observer.next(new SimpleFeature({
|
|
77
|
+
uniqueId: `${this.id}_${pos + i}`,
|
|
78
|
+
refName: query.refName,
|
|
79
|
+
start: pos + i,
|
|
80
|
+
end: pos + i + windowDelta,
|
|
81
|
+
score,
|
|
82
|
+
}));
|
|
60
83
|
}
|
|
61
|
-
|
|
62
|
-
const score = this.gcMode === 'content'
|
|
63
|
-
? (ng + nc) / (len || 1)
|
|
64
|
-
: this.gcMode === 'skew'
|
|
65
|
-
? (ng - nc) / (ng + nc || 1)
|
|
66
|
-
: 0;
|
|
67
|
-
observer.next(new SimpleFeature({
|
|
68
|
-
uniqueId: `${this.id}_${pos + i}`,
|
|
69
|
-
refName: query.refName,
|
|
70
|
-
start: pos + i,
|
|
71
|
-
end: pos + i + windowDelta,
|
|
72
|
-
score,
|
|
73
|
-
}));
|
|
74
|
-
}
|
|
84
|
+
});
|
|
75
85
|
observer.complete();
|
|
76
86
|
});
|
|
77
87
|
}
|
|
78
|
-
|
|
79
|
-
* called to provide a hint that data tied to a certain region
|
|
80
|
-
* will not be needed for the foreseeable future and can be purged
|
|
81
|
-
* from caches, etc
|
|
82
|
-
*/
|
|
83
|
-
freeResources( /* { region } */) { }
|
|
88
|
+
freeResources() { }
|
|
84
89
|
}
|
|
85
90
|
GCContentAdapter.capabilities = ['hasLocalStats'];
|
|
86
91
|
export default GCContentAdapter;
|
|
@@ -1,22 +1,13 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
declare const GCContentAdapterF: (_pluginManager: PluginManager) => import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
3
|
-
/**
|
|
4
|
-
* #slot
|
|
5
|
-
*/
|
|
6
3
|
sequenceAdapter: {
|
|
7
4
|
type: string;
|
|
8
5
|
defaultValue: null;
|
|
9
6
|
};
|
|
10
|
-
/**
|
|
11
|
-
* #slot
|
|
12
|
-
*/
|
|
13
7
|
windowSize: {
|
|
14
8
|
type: string;
|
|
15
9
|
defaultValue: number;
|
|
16
10
|
};
|
|
17
|
-
/**
|
|
18
|
-
* #slot
|
|
19
|
-
*/
|
|
20
11
|
windowDelta: {
|
|
21
12
|
type: string;
|
|
22
13
|
defaultValue: number;
|
|
@@ -1,28 +1,15 @@
|
|
|
1
1
|
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
|
-
|
|
3
|
-
* #config GCContentAdapter
|
|
4
|
-
* #category adapter
|
|
5
|
-
*/
|
|
6
|
-
function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
2
|
+
function x() { }
|
|
7
3
|
const GCContentAdapterF = (_pluginManager) => {
|
|
8
4
|
return ConfigurationSchema('GCContentAdapter', {
|
|
9
|
-
/**
|
|
10
|
-
* #slot
|
|
11
|
-
*/
|
|
12
5
|
sequenceAdapter: {
|
|
13
6
|
type: 'frozen',
|
|
14
7
|
defaultValue: null,
|
|
15
8
|
},
|
|
16
|
-
/**
|
|
17
|
-
* #slot
|
|
18
|
-
*/
|
|
19
9
|
windowSize: {
|
|
20
10
|
type: 'number',
|
|
21
11
|
defaultValue: 100,
|
|
22
12
|
},
|
|
23
|
-
/**
|
|
24
|
-
* #slot
|
|
25
|
-
*/
|
|
26
13
|
windowDelta: {
|
|
27
14
|
type: 'number',
|
|
28
15
|
defaultValue: 100,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
export default function GCContentAdapterF(pluginManager: PluginManager): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
3
3
|
name: {
|
|
4
4
|
description: string;
|
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
2
|
import { createBaseTrackConfig } from '@jbrowse/core/pluggableElementTypes';
|
|
3
|
-
|
|
4
|
-
* #config GCContentTrack
|
|
5
|
-
* used for having a gc content track outside of the "reference sequence display"
|
|
6
|
-
*/
|
|
7
|
-
function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
3
|
+
function x() { }
|
|
8
4
|
const configSchema = (pluginManager) => ConfigurationSchema('GCContentTrack', {}, {
|
|
9
|
-
/**
|
|
10
|
-
* #baseConfiguration
|
|
11
|
-
*/
|
|
12
5
|
baseConfiguration: createBaseTrackConfig(pluginManager),
|
|
13
6
|
});
|
|
14
7
|
export default configSchema;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
export default function GCContentTrackF(pm: PluginManager): void;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React, { useState } from 'react';
|
|
2
|
-
import { observer } from 'mobx-react';
|
|
3
|
-
import { Button, DialogActions, DialogContent, TextField, Typography, } from '@mui/material';
|
|
4
2
|
import { Dialog, ErrorMessage } from '@jbrowse/core/ui';
|
|
3
|
+
import { Button, DialogActions, DialogContent, TextField, Typography, } from '@mui/material';
|
|
4
|
+
import { observer } from 'mobx-react';
|
|
5
5
|
const EditGCContentParamsDialog = observer(function ({ model, handleClose, }) {
|
|
6
6
|
const [windowSize, setWindowSize] = useState(`${model.windowSizeSetting}`);
|
|
7
7
|
const [windowDelta, setWindowDelta] = useState(`${model.windowDeltaSetting}`);
|
|
8
8
|
return (React.createElement(Dialog, { open: true, onClose: handleClose, title: "Edit GC content params" },
|
|
9
9
|
React.createElement(DialogContent, null,
|
|
10
10
|
React.createElement(Typography, null, "GC content is calculated in a particular sliding window of size N, and then the sliding window moves (steps) some number of bases M forward. Note that small step sizes can result in high CPU over large areas, and it is not recommended to make the step size larger than the window size as then the sliding window will miss contents."),
|
|
11
|
-
windowDelta > windowSize ? (React.createElement(ErrorMessage, { error: "It is not recommended to make the step size larger than the window size" })) : null,
|
|
11
|
+
+windowDelta > +windowSize ? (React.createElement(ErrorMessage, { error: "It is not recommended to make the step size larger than the window size" })) : null,
|
|
12
12
|
React.createElement(TextField, { label: "Size of sliding window (bp)", value: windowSize, onChange: event => {
|
|
13
13
|
setWindowSize(event.target.value);
|
|
14
14
|
} }),
|
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
2
|
-
/**
|
|
3
|
-
* #config LinearGCContentDisplay
|
|
4
|
-
* #category display
|
|
5
|
-
* extends LinearWiggleDisplay
|
|
6
|
-
*/
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
7
2
|
export default function LinearGCContentDisplay(pluginManager: PluginManager): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
8
3
|
windowSize: {
|
|
9
4
|
type: string;
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
|
-
/**
|
|
3
|
-
* #config LinearGCContentDisplay
|
|
4
|
-
* #category display
|
|
5
|
-
* extends LinearWiggleDisplay
|
|
6
|
-
*/
|
|
7
2
|
export default function LinearGCContentDisplay(pluginManager) {
|
|
8
3
|
return ConfigurationSchema('LinearGCContentDisplay', {
|
|
9
4
|
windowSize: {
|
|
@@ -15,9 +10,6 @@ export default function LinearGCContentDisplay(pluginManager) {
|
|
|
15
10
|
defaultValue: 100,
|
|
16
11
|
},
|
|
17
12
|
}, {
|
|
18
|
-
/**
|
|
19
|
-
* #baseConfiguration
|
|
20
|
-
*/
|
|
21
13
|
baseConfiguration: pluginManager.getDisplayType('LinearWiggleDisplay')
|
|
22
14
|
.configSchema,
|
|
23
15
|
explicitlyTyped: true,
|
|
@@ -1,9 +1,4 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
2
|
-
/**
|
|
3
|
-
* #config LinearGCContentTrackDisplay
|
|
4
|
-
* #category display
|
|
5
|
-
* extends LinearWiggleDisplay, used specifically for GCContentTrack
|
|
6
|
-
*/
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
7
2
|
export default function LinearGCContentTrackDisplayF(pluginManager: PluginManager): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
|
|
8
3
|
windowSize: {
|
|
9
4
|
type: string;
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import { ConfigurationSchema } from '@jbrowse/core/configuration';
|
|
2
|
-
/**
|
|
3
|
-
* #config LinearGCContentTrackDisplay
|
|
4
|
-
* #category display
|
|
5
|
-
* extends LinearWiggleDisplay, used specifically for GCContentTrack
|
|
6
|
-
*/
|
|
7
2
|
export default function LinearGCContentTrackDisplayF(pluginManager) {
|
|
8
3
|
return ConfigurationSchema('LinearGCContentTrackDisplay', {
|
|
9
4
|
windowSize: {
|
|
@@ -15,9 +10,6 @@ export default function LinearGCContentTrackDisplayF(pluginManager) {
|
|
|
15
10
|
defaultValue: 100,
|
|
16
11
|
},
|
|
17
12
|
}, {
|
|
18
|
-
/**
|
|
19
|
-
* #baseConfiguration
|
|
20
|
-
*/
|
|
21
13
|
baseConfiguration: pluginManager.getDisplayType('LinearWiggleDisplay')
|
|
22
14
|
.configSchema,
|
|
23
15
|
explicitlyTyped: true,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import PluginManager from '@jbrowse/core/PluginManager';
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
2
|
export default function LinearGCContentDisplayF(pluginManager: PluginManager): void;
|
|
@@ -1,11 +1,5 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
/**
|
|
4
|
-
* #stateModel SharedGCContentModel
|
|
5
|
-
* #category display
|
|
6
|
-
* extends
|
|
7
|
-
* - [LinearWiggleDisplay](../linearwiggledisplay)
|
|
8
|
-
*/
|
|
1
|
+
import type PluginManager from '@jbrowse/core/PluginManager';
|
|
2
|
+
import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
|
|
9
3
|
export default function SharedModelF(pluginManager: PluginManager, configSchema: AnyConfigurationSchemaType): import("mobx-state-tree").IModelType<{
|
|
10
4
|
id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
|
|
11
5
|
type: import("mobx-state-tree").ISimpleType<string>;
|
|
@@ -18,23 +12,12 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
18
12
|
} & {
|
|
19
13
|
blockState: import("mobx-state-tree").IMapType<import("mobx-state-tree").IModelType<{
|
|
20
14
|
key: import("mobx-state-tree").ISimpleType<string>;
|
|
21
|
-
region: import("mobx-state-tree").
|
|
22
|
-
refName: import("mobx-state-tree").ISimpleType<string>;
|
|
23
|
-
start: import("mobx-state-tree").ISimpleType<number>;
|
|
24
|
-
end: import("mobx-state-tree").ISimpleType<number>;
|
|
25
|
-
reversed: import("mobx-state-tree" /**
|
|
26
|
-
* #property
|
|
27
|
-
*/).IOptionalIType<import("mobx-state-tree").ISimpleType<boolean>, [undefined]>;
|
|
28
|
-
} & {
|
|
29
|
-
assemblyName: import("mobx-state-tree").ISimpleType<string>;
|
|
30
|
-
}, {
|
|
31
|
-
setRefName(newRefName: string): void;
|
|
32
|
-
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|
|
15
|
+
region: import("mobx-state-tree").IType<import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region, import("@jbrowse/core/util").Region>;
|
|
33
16
|
reloadFlag: import("mobx-state-tree").IType<number | undefined, number, number>;
|
|
34
17
|
isLeftEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
35
18
|
isRightEndOfDisplayedRegion: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
|
|
36
19
|
}, {
|
|
37
|
-
|
|
20
|
+
stopToken: string | undefined;
|
|
38
21
|
filled: boolean;
|
|
39
22
|
reactElement: React.ReactElement | undefined;
|
|
40
23
|
features: Map<string, import("@jbrowse/core/util").Feature> | undefined;
|
|
@@ -58,15 +41,9 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
58
41
|
doReload(): void;
|
|
59
42
|
afterAttach(): void;
|
|
60
43
|
setStatus(message: string): void;
|
|
61
|
-
setLoading(
|
|
44
|
+
setLoading(newStopToken: string): void;
|
|
62
45
|
setMessage(messageText: string): void;
|
|
63
|
-
setRendered(props:
|
|
64
|
-
reactElement: React.ReactElement;
|
|
65
|
-
features: Map<string, import("@jbrowse/core/util").Feature>;
|
|
66
|
-
layout: any;
|
|
67
|
-
maxHeightReached: boolean;
|
|
68
|
-
renderProps: any;
|
|
69
|
-
} | undefined): void;
|
|
46
|
+
setRendered(props: import("@jbrowse/plugin-linear-genome-view/src/BaseLinearDisplay/models/serverSideRenderedBlock").RenderedProps | undefined): void;
|
|
70
47
|
setError(error: unknown): void;
|
|
71
48
|
reload(): void;
|
|
72
49
|
beforeDestroy(): void;
|
|
@@ -120,13 +97,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
120
97
|
} & {
|
|
121
98
|
type: import("mobx-state-tree").ISimpleType<"LinearWiggleDisplay">;
|
|
122
99
|
} & {
|
|
123
|
-
/**
|
|
124
|
-
* #property
|
|
125
|
-
*/
|
|
126
100
|
windowSize: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
127
|
-
/**
|
|
128
|
-
* #property
|
|
129
|
-
*/
|
|
130
101
|
windowDelta: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
|
|
131
102
|
}, {
|
|
132
103
|
rendererTypeName: string;
|
|
@@ -217,6 +188,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
217
188
|
readonly regionTooLarge: boolean;
|
|
218
189
|
readonly regionTooLargeReason: string;
|
|
219
190
|
} & {
|
|
191
|
+
readonly statsReadyAndRegionNotTooLarge: boolean;
|
|
220
192
|
regionCannotBeRenderedText(_region: import("@jbrowse/core/util").Region): "" | "Force load to see features";
|
|
221
193
|
regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
|
|
222
194
|
} & {
|
|
@@ -256,19 +228,21 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
256
228
|
} & {
|
|
257
229
|
message: undefined | string;
|
|
258
230
|
stats: {
|
|
231
|
+
currStatsBpPerPx: number;
|
|
259
232
|
scoreMin: number;
|
|
260
233
|
scoreMax: number;
|
|
261
234
|
} | undefined;
|
|
262
|
-
statsFetchInProgress: undefined |
|
|
235
|
+
statsFetchInProgress: undefined | string;
|
|
263
236
|
} & {
|
|
264
237
|
updateQuantitativeStats(stats: {
|
|
238
|
+
currStatsBpPerPx: number;
|
|
265
239
|
scoreMin: number;
|
|
266
240
|
scoreMax: number;
|
|
267
241
|
}): void;
|
|
268
242
|
setColor(color?: string): void;
|
|
269
243
|
setPosColor(color?: string): void;
|
|
270
244
|
setNegColor(color?: string): void;
|
|
271
|
-
|
|
245
|
+
setStatsLoading(arg?: string): void;
|
|
272
246
|
selectFeature(feature: import("@jbrowse/core/util").Feature): void;
|
|
273
247
|
setResolution(res: number): void;
|
|
274
248
|
setFill(fill: number): void;
|
|
@@ -310,6 +284,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
310
284
|
readonly scaleOpts: {
|
|
311
285
|
domain: number[] | undefined;
|
|
312
286
|
stats: {
|
|
287
|
+
currStatsBpPerPx: number;
|
|
313
288
|
scoreMin: number;
|
|
314
289
|
scoreMax: number;
|
|
315
290
|
} | undefined;
|
|
@@ -348,7 +323,9 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
348
323
|
} & {
|
|
349
324
|
readonly TooltipComponent: import("@jbrowse/core/util").AnyReactComponentType;
|
|
350
325
|
readonly rendererTypeName: string;
|
|
326
|
+
readonly quantitativeStatsRelevantToCurrentZoom: boolean;
|
|
351
327
|
} & {
|
|
328
|
+
adapterProps(): any;
|
|
352
329
|
readonly ticks: {
|
|
353
330
|
range: number[];
|
|
354
331
|
values: number[];
|
|
@@ -359,6 +336,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
359
336
|
renderProps(): any;
|
|
360
337
|
readonly needsScalebar: boolean;
|
|
361
338
|
readonly fillSetting: 1 | 2 | 0;
|
|
339
|
+
readonly quantitativeStatsReady: boolean;
|
|
362
340
|
} & {
|
|
363
341
|
trackMenuItems(): (import("@jbrowse/core/ui").MenuDivider | import("@jbrowse/core/ui").MenuSubHeader | import("@jbrowse/core/ui").NormalMenuItem | import("@jbrowse/core/ui").CheckboxMenuItem | import("@jbrowse/core/ui").RadioMenuItem | import("@jbrowse/core/ui").SubMenuItem | {
|
|
364
342
|
label: string;
|
|
@@ -417,10 +395,5 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
|
|
|
417
395
|
readonly windowDeltaSetting: any;
|
|
418
396
|
} & {
|
|
419
397
|
trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
|
|
420
|
-
|
|
421
|
-
* #method
|
|
422
|
-
* retrieves the sequence adapter from parent track, and puts it as a
|
|
423
|
-
* subadapter on a GCContentAdapter
|
|
424
|
-
*/
|
|
425
|
-
renderProps(): any;
|
|
398
|
+
adapterProps(): any;
|
|
426
399
|
}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
|