@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.
Files changed (45) hide show
  1. package/dist/GCContentAdapter/GCContentAdapter.d.ts +5 -9
  2. package/dist/GCContentAdapter/GCContentAdapter.js +47 -42
  3. package/dist/GCContentAdapter/configSchema.d.ts +1 -10
  4. package/dist/GCContentAdapter/configSchema.js +1 -14
  5. package/dist/GCContentAdapter/index.d.ts +1 -1
  6. package/dist/GCContentTrack/configSchema.d.ts +1 -1
  7. package/dist/GCContentTrack/configSchema.js +1 -8
  8. package/dist/GCContentTrack/index.d.ts +1 -1
  9. package/dist/LinearGCContentDisplay/components/EditGCContentParams.js +3 -3
  10. package/dist/LinearGCContentDisplay/config1.d.ts +1 -6
  11. package/dist/LinearGCContentDisplay/config1.js +0 -8
  12. package/dist/LinearGCContentDisplay/config2.d.ts +1 -6
  13. package/dist/LinearGCContentDisplay/config2.js +0 -8
  14. package/dist/LinearGCContentDisplay/index.d.ts +1 -1
  15. package/dist/LinearGCContentDisplay/shared.d.ts +16 -43
  16. package/dist/LinearGCContentDisplay/shared.js +4 -21
  17. package/dist/LinearGCContentDisplay/stateModel1.d.ts +16 -29
  18. package/dist/LinearGCContentDisplay/stateModel1.js +0 -6
  19. package/dist/LinearGCContentDisplay/stateModel2.d.ts +16 -34
  20. package/dist/LinearGCContentDisplay/stateModel2.js +0 -11
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.js +0 -1
  23. package/esm/GCContentAdapter/GCContentAdapter.d.ts +5 -9
  24. package/esm/GCContentAdapter/GCContentAdapter.js +47 -42
  25. package/esm/GCContentAdapter/configSchema.d.ts +1 -10
  26. package/esm/GCContentAdapter/configSchema.js +1 -14
  27. package/esm/GCContentAdapter/index.d.ts +1 -1
  28. package/esm/GCContentTrack/configSchema.d.ts +1 -1
  29. package/esm/GCContentTrack/configSchema.js +1 -8
  30. package/esm/GCContentTrack/index.d.ts +1 -1
  31. package/esm/LinearGCContentDisplay/components/EditGCContentParams.js +3 -3
  32. package/esm/LinearGCContentDisplay/config1.d.ts +1 -6
  33. package/esm/LinearGCContentDisplay/config1.js +0 -8
  34. package/esm/LinearGCContentDisplay/config2.d.ts +1 -6
  35. package/esm/LinearGCContentDisplay/config2.js +0 -8
  36. package/esm/LinearGCContentDisplay/index.d.ts +1 -1
  37. package/esm/LinearGCContentDisplay/shared.d.ts +16 -43
  38. package/esm/LinearGCContentDisplay/shared.js +5 -22
  39. package/esm/LinearGCContentDisplay/stateModel1.d.ts +16 -29
  40. package/esm/LinearGCContentDisplay/stateModel1.js +0 -6
  41. package/esm/LinearGCContentDisplay/stateModel2.d.ts +16 -34
  42. package/esm/LinearGCContentDisplay/stateModel2.js +0 -11
  43. package/esm/index.d.ts +1 -1
  44. package/esm/index.js +0 -1
  45. 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 { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
2
- import PluginManager from '@jbrowse/core/PluginManager';
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").IModelType<{
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
- renderInProgress: AbortController | undefined;
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(abortController: AbortController): void;
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 | AbortController;
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
- setLoading(aborter: AbortController): void;
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
- renderProps(): any;
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, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
2
- import { Feature, Region } from '@jbrowse/core/util';
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: BaseOptions): import("rxjs").Observable<Feature>;
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, } from '@jbrowse/core/data_adapters/BaseAdapter';
2
- import { firstValueFrom } from 'rxjs';
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 { SimpleFeature } from '@jbrowse/core/util';
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; // Half the window size
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 ret = sequenceAdapter.getFeatures({
40
+ const feats = await firstValueFrom(sequenceAdapter
41
+ .getFeatures({
39
42
  ...query,
40
43
  start: queryStart,
41
44
  end: queryEnd,
42
- }, opts);
43
- const feats = await firstValueFrom(ret.pipe(toArray()));
45
+ }, opts)
46
+ .pipe(toArray()));
44
47
  const residues = ((_a = feats[0]) === null || _a === void 0 ? void 0 : _a.get('seq')) || '';
45
- for (let i = hw; i < residues.length - hw; i += windowDelta) {
46
- const r = f ? residues[i] : residues.slice(i - hw, i + hw);
47
- let nc = 0;
48
- let ng = 0;
49
- let len = 0;
50
- for (const letter of r) {
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
- else if (letter === 'g' || letter === 'G') {
55
- ng++;
56
- }
57
- if (letter !== 'N') {
58
- len++;
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
- const pos = queryStart;
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 { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
2
- import PluginManager from '@jbrowse/core/PluginManager';
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").IModelType<{
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
- renderInProgress: AbortController | undefined;
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(abortController: AbortController): void;
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 | AbortController;
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
- setLoading(aborter: AbortController): void;
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>;