@jbrowse/plugin-gccontent 2.17.0 → 3.0.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 (48) hide show
  1. package/dist/GCContentAdapter/GCContentAdapter.d.ts +5 -9
  2. package/dist/GCContentAdapter/GCContentAdapter.js +55 -49
  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/GCContentAdapter/index.js +17 -7
  7. package/dist/GCContentTrack/configSchema.d.ts +1 -1
  8. package/dist/GCContentTrack/configSchema.js +1 -8
  9. package/dist/GCContentTrack/index.d.ts +1 -1
  10. package/dist/LinearGCContentDisplay/components/EditGCContentParams.d.ts +1 -2
  11. package/dist/LinearGCContentDisplay/components/EditGCContentParams.js +17 -47
  12. package/dist/LinearGCContentDisplay/config1.d.ts +1 -6
  13. package/dist/LinearGCContentDisplay/config1.js +0 -8
  14. package/dist/LinearGCContentDisplay/config2.d.ts +1 -6
  15. package/dist/LinearGCContentDisplay/config2.js +0 -8
  16. package/dist/LinearGCContentDisplay/index.d.ts +1 -1
  17. package/dist/LinearGCContentDisplay/shared.d.ts +41 -51
  18. package/dist/LinearGCContentDisplay/shared.js +21 -28
  19. package/dist/LinearGCContentDisplay/stateModel1.d.ts +41 -37
  20. package/dist/LinearGCContentDisplay/stateModel1.js +0 -6
  21. package/dist/LinearGCContentDisplay/stateModel2.d.ts +41 -42
  22. package/dist/LinearGCContentDisplay/stateModel2.js +0 -11
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.js +0 -1
  25. package/esm/GCContentAdapter/GCContentAdapter.d.ts +5 -9
  26. package/esm/GCContentAdapter/GCContentAdapter.js +55 -49
  27. package/esm/GCContentAdapter/configSchema.d.ts +1 -10
  28. package/esm/GCContentAdapter/configSchema.js +1 -14
  29. package/esm/GCContentAdapter/index.d.ts +1 -1
  30. package/esm/GCContentTrack/configSchema.d.ts +1 -1
  31. package/esm/GCContentTrack/configSchema.js +1 -8
  32. package/esm/GCContentTrack/index.d.ts +1 -1
  33. package/esm/LinearGCContentDisplay/components/EditGCContentParams.d.ts +1 -2
  34. package/esm/LinearGCContentDisplay/components/EditGCContentParams.js +17 -24
  35. package/esm/LinearGCContentDisplay/config1.d.ts +1 -6
  36. package/esm/LinearGCContentDisplay/config1.js +0 -8
  37. package/esm/LinearGCContentDisplay/config2.d.ts +1 -6
  38. package/esm/LinearGCContentDisplay/config2.js +0 -8
  39. package/esm/LinearGCContentDisplay/index.d.ts +1 -1
  40. package/esm/LinearGCContentDisplay/shared.d.ts +41 -51
  41. package/esm/LinearGCContentDisplay/shared.js +5 -22
  42. package/esm/LinearGCContentDisplay/stateModel1.d.ts +41 -37
  43. package/esm/LinearGCContentDisplay/stateModel1.js +0 -6
  44. package/esm/LinearGCContentDisplay/stateModel2.d.ts +41 -42
  45. package/esm/LinearGCContentDisplay/stateModel2.js +0 -11
  46. package/esm/index.d.ts +1 -1
  47. package/esm/index.js +0 -1
  48. package/package.json +2 -2
@@ -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,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const BaseAdapter_1 = require("@jbrowse/core/data_adapters/BaseAdapter");
4
- const rxjs_1 = require("rxjs");
5
- const rxjs_2 = require("@jbrowse/core/util/rxjs");
6
4
  const util_1 = require("@jbrowse/core/util");
5
+ const rxjs_1 = require("@jbrowse/core/util/rxjs");
6
+ const stopToken_1 = require("@jbrowse/core/util/stopToken");
7
+ const rxjs_2 = require("rxjs");
7
8
  const operators_1 = require("rxjs/operators");
8
9
  class GCContentAdapter extends BaseAdapter_1.BaseFeatureDataAdapter {
9
10
  constructor() {
@@ -18,71 +19,76 @@ class GCContentAdapter extends BaseAdapter_1.BaseFeatureDataAdapter {
18
19
  }
19
20
  return adapter.dataAdapter;
20
21
  }
21
- async getRefNames() {
22
+ async getRefNames(opts) {
22
23
  const adapter = await this.configure();
23
- return adapter.getRefNames();
24
+ return adapter.getRefNames(opts);
24
25
  }
25
26
  getFeatures(query, opts) {
26
- return (0, rxjs_2.ObservableCreate)(async (observer) => {
27
+ const { statusCallback = () => { }, stopToken } = opts || {};
28
+ return (0, rxjs_1.ObservableCreate)(async (observer) => {
27
29
  var _a;
28
30
  const sequenceAdapter = await this.configure();
29
31
  const windowSize = this.getConf('windowSize');
30
32
  const windowDelta = this.getConf('windowDelta');
31
- const hw = windowSize === 1 ? 1 : windowSize / 2; // Half the window size
32
- const f = windowSize === 1;
33
- let { start: queryStart, end: queryEnd } = query;
34
- queryStart = Math.max(0, queryStart - hw);
35
- queryEnd += hw;
36
- if (queryEnd < 0 || queryStart > queryEnd) {
33
+ const halfWindowSize = windowSize === 1 ? 1 : Math.ceil(windowSize / 2);
34
+ const isWindowSizeOneBp = windowSize === 1;
35
+ const qs = Math.max(0, Math.floor((query.start - halfWindowSize) / windowSize) * windowSize);
36
+ const qe = Math.ceil((query.end + halfWindowSize) / windowSize) * windowSize;
37
+ if (qe < 0 || qs > qe) {
37
38
  observer.complete();
38
39
  return;
39
40
  }
40
- const ret = sequenceAdapter.getFeatures({
41
+ const feats = await (0, rxjs_2.firstValueFrom)(sequenceAdapter
42
+ .getFeatures({
41
43
  ...query,
42
- start: queryStart,
43
- end: queryEnd,
44
- }, opts);
45
- const feats = await (0, rxjs_1.firstValueFrom)(ret.pipe((0, operators_1.toArray)()));
44
+ start: qs,
45
+ end: qe,
46
+ }, opts)
47
+ .pipe((0, operators_1.toArray)()));
46
48
  const residues = ((_a = feats[0]) === null || _a === void 0 ? void 0 : _a.get('seq')) || '';
47
- for (let i = hw; i < residues.length - hw; i += windowDelta) {
48
- const r = f ? residues[i] : residues.slice(i - hw, i + hw);
49
- let nc = 0;
50
- let ng = 0;
51
- let len = 0;
52
- for (const letter of r) {
53
- if (letter === 'c' || letter === 'C') {
54
- nc++;
49
+ let start = performance.now();
50
+ await (0, util_1.updateStatus)('Calculating GC', statusCallback, () => {
51
+ for (let i = halfWindowSize; i < residues.length - halfWindowSize; i += windowDelta) {
52
+ if (performance.now() - start > 400) {
53
+ (0, stopToken_1.checkStopToken)(stopToken);
54
+ start = performance.now();
55
55
  }
56
- else if (letter === 'g' || letter === 'G') {
57
- ng++;
58
- }
59
- if (letter !== 'N') {
60
- len++;
56
+ const r = isWindowSizeOneBp
57
+ ? residues[i]
58
+ : residues.slice(i - halfWindowSize, i + halfWindowSize);
59
+ let nc = 0;
60
+ let ng = 0;
61
+ let len = 0;
62
+ for (const letter of r) {
63
+ if (letter === 'c' || letter === 'C') {
64
+ nc++;
65
+ }
66
+ else if (letter === 'g' || letter === 'G') {
67
+ ng++;
68
+ }
69
+ if (letter !== 'N') {
70
+ len++;
71
+ }
61
72
  }
73
+ const pos = qs;
74
+ const score = this.gcMode === 'content'
75
+ ? (ng + nc) / (len || 1)
76
+ : this.gcMode === 'skew'
77
+ ? (ng - nc) / (ng + nc || 1)
78
+ : 0;
79
+ observer.next(new util_1.SimpleFeature({
80
+ uniqueId: `${this.id}_${pos + i}`,
81
+ refName: query.refName,
82
+ start: pos + i,
83
+ end: pos + i + windowDelta,
84
+ score,
85
+ }));
62
86
  }
63
- const pos = queryStart;
64
- const score = this.gcMode === 'content'
65
- ? (ng + nc) / (len || 1)
66
- : this.gcMode === 'skew'
67
- ? (ng - nc) / (ng + nc || 1)
68
- : 0;
69
- observer.next(new util_1.SimpleFeature({
70
- uniqueId: `${this.id}_${pos + i}`,
71
- refName: query.refName,
72
- start: pos + i,
73
- end: pos + i + windowDelta,
74
- score,
75
- }));
76
- }
87
+ });
77
88
  observer.complete();
78
89
  });
79
90
  }
80
- /**
81
- * called to provide a hint that data tied to a certain region
82
- * will not be needed for the foreseeable future and can be purged
83
- * from caches, etc
84
- */
85
- freeResources( /* { region } */) { }
91
+ freeResources() { }
86
92
  }
87
93
  GCContentAdapter.capabilities = ['hasLocalStats'];
88
94
  exports.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,30 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const configuration_1 = require("@jbrowse/core/configuration");
4
- /**
5
- * #config GCContentAdapter
6
- * #category adapter
7
- */
8
- function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
4
+ function x() { }
9
5
  const GCContentAdapterF = (_pluginManager) => {
10
6
  return (0, configuration_1.ConfigurationSchema)('GCContentAdapter', {
11
- /**
12
- * #slot
13
- */
14
7
  sequenceAdapter: {
15
8
  type: 'frozen',
16
9
  defaultValue: null,
17
10
  },
18
- /**
19
- * #slot
20
- */
21
11
  windowSize: {
22
12
  type: 'number',
23
13
  defaultValue: 100,
24
14
  },
25
- /**
26
- * #slot
27
- */
28
15
  windowDelta: {
29
16
  type: 'number',
30
17
  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;
@@ -15,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
@@ -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;
@@ -2,15 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const configuration_1 = require("@jbrowse/core/configuration");
4
4
  const pluggableElementTypes_1 = require("@jbrowse/core/pluggableElementTypes");
5
- /**
6
- * #config GCContentTrack
7
- * used for having a gc content track outside of the "reference sequence display"
8
- */
9
- function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
5
+ function x() { }
10
6
  const configSchema = (pluginManager) => (0, configuration_1.ConfigurationSchema)('GCContentTrack', {}, {
11
- /**
12
- * #baseConfiguration
13
- */
14
7
  baseConfiguration: (0, pluggableElementTypes_1.createBaseTrackConfig)(pluginManager),
15
8
  });
16
9
  exports.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,4 +1,3 @@
1
- import React from 'react';
2
1
  declare const EditGCContentParamsDialog: ({ model, handleClose, }: {
3
2
  model: {
4
3
  windowSizeSetting: number;
@@ -9,5 +8,5 @@ declare const EditGCContentParamsDialog: ({ model, handleClose, }: {
9
8
  }) => void;
10
9
  };
11
10
  handleClose: () => void;
12
- }) => React.JSX.Element;
11
+ }) => import("react/jsx-runtime").JSX.Element;
13
12
  export default EditGCContentParamsDialog;
@@ -1,55 +1,25 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  Object.defineProperty(exports, "__esModule", { value: true });
26
- const react_1 = __importStar(require("react"));
27
- const mobx_react_1 = require("mobx-react");
28
- const material_1 = require("@mui/material");
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const react_1 = require("react");
29
5
  const ui_1 = require("@jbrowse/core/ui");
6
+ const material_1 = require("@mui/material");
7
+ const mobx_react_1 = require("mobx-react");
30
8
  const EditGCContentParamsDialog = (0, mobx_react_1.observer)(function ({ model, handleClose, }) {
31
9
  const [windowSize, setWindowSize] = (0, react_1.useState)(`${model.windowSizeSetting}`);
32
10
  const [windowDelta, setWindowDelta] = (0, react_1.useState)(`${model.windowDeltaSetting}`);
33
- return (react_1.default.createElement(ui_1.Dialog, { open: true, onClose: handleClose, title: "Edit GC content params" },
34
- react_1.default.createElement(material_1.DialogContent, null,
35
- react_1.default.createElement(material_1.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."),
36
- windowDelta > windowSize ? (react_1.default.createElement(ui_1.ErrorMessage, { error: "It is not recommended to make the step size larger than the window size" })) : null,
37
- react_1.default.createElement(material_1.TextField, { label: "Size of sliding window (bp)", value: windowSize, onChange: event => {
38
- setWindowSize(event.target.value);
39
- } }),
40
- react_1.default.createElement(material_1.TextField, { label: "Step size of sliding window (bp)", value: windowDelta, onChange: event => {
41
- setWindowDelta(event.target.value);
42
- } }),
43
- react_1.default.createElement(material_1.DialogActions, null,
44
- react_1.default.createElement(material_1.Button, { variant: "contained", onClick: () => {
45
- model.setGCContentParams({
46
- windowSize: +windowSize,
47
- windowDelta: +windowDelta,
48
- });
49
- handleClose();
50
- } }, "Submit"),
51
- react_1.default.createElement(material_1.Button, { variant: "contained", color: "secondary", onClick: () => {
52
- handleClose();
53
- } }, "Cancel")))));
11
+ return ((0, jsx_runtime_1.jsx)(ui_1.Dialog, { open: true, onClose: handleClose, title: "Edit GC content params", children: (0, jsx_runtime_1.jsxs)(material_1.DialogContent, { children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: "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." }), +windowDelta > +windowSize ? ((0, jsx_runtime_1.jsx)(ui_1.ErrorMessage, { error: "It is not recommended to make the step size larger than the window size" })) : null, (0, jsx_runtime_1.jsx)(material_1.TextField, { label: "Size of sliding window (bp)", value: windowSize, onChange: event => {
12
+ setWindowSize(event.target.value);
13
+ } }), (0, jsx_runtime_1.jsx)(material_1.TextField, { label: "Step size of sliding window (bp)", value: windowDelta, onChange: event => {
14
+ setWindowDelta(event.target.value);
15
+ } }), (0, jsx_runtime_1.jsxs)(material_1.DialogActions, { children: [(0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", onClick: () => {
16
+ model.setGCContentParams({
17
+ windowSize: +windowSize,
18
+ windowDelta: +windowDelta,
19
+ });
20
+ handleClose();
21
+ }, children: "Submit" }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", color: "secondary", onClick: () => {
22
+ handleClose();
23
+ }, children: "Cancel" })] })] }) }));
54
24
  });
55
25
  exports.default = EditGCContentParamsDialog;
@@ -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;
@@ -2,11 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = LinearGCContentDisplay;
4
4
  const configuration_1 = require("@jbrowse/core/configuration");
5
- /**
6
- * #config LinearGCContentDisplay
7
- * #category display
8
- * extends LinearWiggleDisplay
9
- */
10
5
  function LinearGCContentDisplay(pluginManager) {
11
6
  return (0, configuration_1.ConfigurationSchema)('LinearGCContentDisplay', {
12
7
  windowSize: {
@@ -18,9 +13,6 @@ function LinearGCContentDisplay(pluginManager) {
18
13
  defaultValue: 100,
19
14
  },
20
15
  }, {
21
- /**
22
- * #baseConfiguration
23
- */
24
16
  baseConfiguration: pluginManager.getDisplayType('LinearWiggleDisplay')
25
17
  .configSchema,
26
18
  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;
@@ -2,11 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.default = LinearGCContentTrackDisplayF;
4
4
  const configuration_1 = require("@jbrowse/core/configuration");
5
- /**
6
- * #config LinearGCContentTrackDisplay
7
- * #category display
8
- * extends LinearWiggleDisplay, used specifically for GCContentTrack
9
- */
10
5
  function LinearGCContentTrackDisplayF(pluginManager) {
11
6
  return (0, configuration_1.ConfigurationSchema)('LinearGCContentTrackDisplay', {
12
7
  windowSize: {
@@ -18,9 +13,6 @@ function LinearGCContentTrackDisplayF(pluginManager) {
18
13
  defaultValue: 100,
19
14
  },
20
15
  }, {
21
- /**
22
- * #baseConfiguration
23
- */
24
16
  baseConfiguration: pluginManager.getDisplayType('LinearWiggleDisplay')
25
17
  .configSchema,
26
18
  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;
@@ -52,21 +35,15 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
52
35
  status?: string;
53
36
  reactElement?: React.ReactElement;
54
37
  };
55
- }) => import("react").JSX.Element | undefined;
38
+ }) => import("react/jsx-runtime").JSX.Element | undefined;
56
39
  renderProps: any;
57
40
  } & {
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,14 +188,15 @@ 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
- regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react").JSX.Element | null;
193
+ regionCannotBeRendered(_region: import("@jbrowse/core/util").Region): import("react/jsx-runtime").JSX.Element | null;
222
194
  } & {
223
195
  featureIdUnderMouse: undefined | string;
224
196
  contextMenuFeature: undefined | import("@jbrowse/core/util").Feature;
225
197
  } & {
226
- readonly DisplayMessageComponent: import("react").FC<any> | undefined;
227
- readonly blockType: "dynamicBlocks" | "staticBlocks";
198
+ readonly DisplayMessageComponent: undefined | React.FC<any>;
199
+ readonly blockType: "staticBlocks" | "dynamicBlocks";
228
200
  readonly blockDefinitions: import("@jbrowse/core/util/blockTypes").BlockSet;
229
201
  } & {
230
202
  readonly renderDelay: number;
@@ -251,7 +223,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
251
223
  contextMenuItems(): import("@jbrowse/core/ui").MenuItem[];
252
224
  renderProps(): any;
253
225
  } & {
254
- renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
226
+ renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react/jsx-runtime").JSX.Element>;
255
227
  afterAttach(): void;
256
228
  } & {
257
229
  message: undefined | string;
@@ -260,7 +232,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
260
232
  scoreMin: number;
261
233
  scoreMax: number;
262
234
  } | undefined;
263
- statsFetchInProgress: undefined | AbortController;
235
+ statsFetchInProgress: undefined | string;
264
236
  } & {
265
237
  updateQuantitativeStats(stats: {
266
238
  currStatsBpPerPx: number;
@@ -270,7 +242,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
270
242
  setColor(color?: string): void;
271
243
  setPosColor(color?: string): void;
272
244
  setNegColor(color?: string): void;
273
- setStatsLoading(aborter: AbortController): void;
245
+ setStatsLoading(arg?: string): void;
274
246
  selectFeature(feature: import("@jbrowse/core/util").Feature): void;
275
247
  setResolution(res: number): void;
276
248
  setFill(fill: number): void;
@@ -367,7 +339,17 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
367
339
  readonly quantitativeStatsReady: boolean;
368
340
  } & {
369
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 | {
342
+ type: string;
343
+ label?: undefined;
344
+ icon?: undefined;
345
+ subMenu?: undefined;
346
+ onClick?: undefined;
347
+ checked?: undefined;
348
+ } | {
370
349
  label: string;
350
+ icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
351
+ muiName: string;
352
+ };
371
353
  subMenu: ({
372
354
  label: string;
373
355
  subMenu: {
@@ -390,8 +372,8 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
390
372
  subMenu?: undefined;
391
373
  })[];
392
374
  type?: undefined;
393
- checked?: undefined;
394
375
  onClick?: undefined;
376
+ checked?: undefined;
395
377
  } | {
396
378
  label: string;
397
379
  subMenu: {
@@ -401,10 +383,23 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
401
383
  onClick: () => void;
402
384
  }[];
403
385
  type?: undefined;
404
- checked?: undefined;
386
+ icon?: undefined;
405
387
  onClick?: undefined;
388
+ checked?: undefined;
389
+ } | {
390
+ label: string;
391
+ icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
392
+ muiName: string;
393
+ };
394
+ onClick: () => void;
395
+ type?: undefined;
396
+ subMenu?: undefined;
397
+ checked?: undefined;
406
398
  } | {
407
399
  type: string;
400
+ icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {
401
+ muiName: string;
402
+ };
408
403
  label: string;
409
404
  checked: boolean;
410
405
  onClick: () => void;
@@ -412,7 +407,7 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
412
407
  })[];
413
408
  } & {
414
409
  afterAttach(): void;
415
- renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react").JSX.Element>;
410
+ renderSvg(opts: import("@jbrowse/plugin-linear-genome-view").ExportSvgDisplayOptions): Promise<import("react/jsx-runtime").JSX.Element>;
416
411
  } & {
417
412
  setGCContentParams({ windowSize, windowDelta, }: {
418
413
  windowSize: number;
@@ -423,10 +418,5 @@ export default function SharedModelF(pluginManager: PluginManager, configSchema:
423
418
  readonly windowDeltaSetting: any;
424
419
  } & {
425
420
  trackMenuItems(): import("@jbrowse/core/ui").MenuItem[];
426
- /**
427
- * #method
428
- * retrieves the sequence adapter from parent track, and puts it as a
429
- * subadapter on a GCContentAdapter
430
- */
431
- renderProps(): any;
421
+ adapterProps(): any;
432
422
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;