wuepgg3-track 5.0.0 → 5.0.2

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 (100) hide show
  1. package/dist/{BufferResource-ChgmE3N0.mjs → BufferResource-RmJVWkXV.mjs} +1 -1
  2. package/dist/{CanvasRenderer-DhKd7knL.mjs → CanvasRenderer-CqXi5K_I.mjs} +2 -2
  3. package/dist/{Filter-Cmf7BYhk.mjs → Filter-hBKIgKG1.mjs} +1 -1
  4. package/dist/{RenderTargetSystem-CSn-OARB.mjs → RenderTargetSystem-DZg7wxxc.mjs} +2 -2
  5. package/dist/{WebGLRenderer-DOtXnBSh.mjs → WebGLRenderer-CyKbwsab.mjs} +3 -3
  6. package/dist/{WebGPURenderer-BBVV8q01.mjs → WebGPURenderer-CxkXXhfW.mjs} +3 -3
  7. package/dist/{browserAll-BF2mDjKn.mjs → browserAll-BhOrSw39.mjs} +2 -2
  8. package/dist/components/GenomeView/TrackComponents/GroupedTrackManager.d.ts +12 -10
  9. package/dist/components/GenomeView/TrackComponents/commonComponents/ErrorBoundary.d.ts +24 -0
  10. package/dist/components/GenomeView/TrackComponents/commonComponents/VerticalDivider.d.ts +12 -0
  11. package/dist/components/GenomeView/TrackComponents/displayModeComponentMap.d.ts +1 -1
  12. package/dist/components/GenomeView/genomeNavigator/DragAcrossDiv.d.ts +7 -58
  13. package/dist/components/GenomeView/genomeNavigator/GeneSearchBox.d.ts +2 -1
  14. package/dist/components/GenomeView/genomeNavigator/RegionsPanel.d.ts +17 -0
  15. package/dist/components/GenomeView/genomeNavigator/SnpSearchBox.d.ts +3 -1
  16. package/dist/components/GenomeView/genomeNavigator/TrackRegionButton.d.ts +8 -0
  17. package/dist/components/GenomeView/genomeNavigator/TrackRegionController.d.ts +2 -2
  18. package/dist/genome-hub/GenomeHubManager.d.ts +1 -0
  19. package/dist/genome-hub/LocalGenomeRepository.d.ts +1 -0
  20. package/dist/getLocalData/LocalBigSourceGmod.d.ts +2 -5
  21. package/dist/getRemoteData/BigSourceWorkerGmod.d.ts +8 -22
  22. package/dist/getRemoteData/VcfSource.d.ts +3 -1
  23. package/dist/getRemoteData/tabixSource.d.ts +2 -24
  24. package/dist/{index-Dky1S9zX.mjs → index-CF0QNcGP.mjs} +58805 -59118
  25. package/dist/index.d.ts +6 -0
  26. package/dist/index.es.js +84 -76
  27. package/dist/index.umd.js +157 -157
  28. package/dist/{init-BuN8b-s9.mjs → init-DBpfulRP.mjs} +2 -2
  29. package/dist/lib/EscapeHandlerContext.d.ts +6 -0
  30. package/dist/lib/PortalContext.d.ts +7 -0
  31. package/dist/models/NavigationContext.d.ts +2 -1
  32. package/dist/models/genomes/Creinhardtii506/Creinhardtii506.d.ts +1 -1
  33. package/dist/models/genomes/GRCg7b/GRCg7b.d.ts +1 -1
  34. package/dist/models/genomes/GRCg7w/GRCg7w.d.ts +1 -1
  35. package/dist/models/genomes/GenomeConfig.d.ts +2 -2
  36. package/dist/models/genomes/allGenomes.d.ts +5 -5
  37. package/dist/models/genomes/aplCal3/aplCal3.d.ts +1 -1
  38. package/dist/models/genomes/araTha1/araTha1.d.ts +1 -1
  39. package/dist/models/genomes/bosTau8/bosTau8.d.ts +1 -1
  40. package/dist/models/genomes/brapa/brara_chiifu_v3.0.d.ts +1 -1
  41. package/dist/models/genomes/calJac3/calJac3.d.ts +1 -1
  42. package/dist/models/genomes/calJac4/calJac4.d.ts +1 -1
  43. package/dist/models/genomes/canFam2/canFam2.d.ts +1 -1
  44. package/dist/models/genomes/canFam3/canFam3.d.ts +1 -1
  45. package/dist/models/genomes/canFam6/canFam6.d.ts +1 -1
  46. package/dist/models/genomes/ce11/ce11.d.ts +1 -1
  47. package/dist/models/genomes/danRer10/danRer10.d.ts +1 -1
  48. package/dist/models/genomes/danRer11/danRer11.d.ts +1 -1
  49. package/dist/models/genomes/danRer7/danRer7.d.ts +1 -1
  50. package/dist/models/genomes/dm6/dm6.d.ts +1 -1
  51. package/dist/models/genomes/galGal5/galGal5.d.ts +1 -1
  52. package/dist/models/genomes/galGal6/galGal6.d.ts +1 -1
  53. package/dist/models/genomes/gorGor3/gorGor3.d.ts +1 -1
  54. package/dist/models/genomes/gorGor4/gorGor4.d.ts +1 -1
  55. package/dist/models/genomes/hg19/assays.json.d.ts +2019 -1
  56. package/dist/models/genomes/hg19/hg19.d.ts +1 -1
  57. package/dist/models/genomes/hg38/cytoBand.json.d.ts +6094 -1
  58. package/dist/models/genomes/hg38/hg38.d.ts +1 -1
  59. package/dist/models/genomes/lepOcu1/lepOcu1.d.ts +1 -1
  60. package/dist/models/genomes/mCalJa1.2.pat.X/mCalJa1.2.pat.X.d.ts +1 -1
  61. package/dist/models/genomes/mT2T-Y_v1.0/mT2T-Y_v1.0.d.ts +1 -1
  62. package/dist/models/genomes/mm10/mm10.d.ts +1 -1
  63. package/dist/models/genomes/mm39/mm39.d.ts +1 -1
  64. package/dist/models/genomes/mm9/mm9.d.ts +1 -1
  65. package/dist/models/genomes/monDom5/monDom5.d.ts +1 -1
  66. package/dist/models/genomes/nomLeu3/nomLeu3.d.ts +1 -1
  67. package/dist/models/genomes/oryCun2/oryCun2.d.ts +1 -1
  68. package/dist/models/genomes/oviAri4/oviAri4.d.ts +1 -1
  69. package/dist/models/genomes/panTro4/panTro4.d.ts +1 -1
  70. package/dist/models/genomes/panTro5/panTro5.d.ts +1 -1
  71. package/dist/models/genomes/panTro6/panTro6.d.ts +1 -1
  72. package/dist/models/genomes/papAnu2/papAnu2.d.ts +1 -1
  73. package/dist/models/genomes/pfal3d7/pfal3d7.d.ts +1 -1
  74. package/dist/models/genomes/phaw5/phaw5.d.ts +1 -1
  75. package/dist/models/genomes/rheMac10/rheMac10.d.ts +1 -1
  76. package/dist/models/genomes/rheMac2/rheMac2.d.ts +1 -1
  77. package/dist/models/genomes/rheMac3/rheMac3.d.ts +1 -1
  78. package/dist/models/genomes/rheMac8/rheMac8.d.ts +1 -1
  79. package/dist/models/genomes/rn4/rn4.d.ts +1 -1
  80. package/dist/models/genomes/rn6/rn6.d.ts +1 -1
  81. package/dist/models/genomes/rn7/rn7.d.ts +1 -1
  82. package/dist/models/genomes/sacCer3/sacCer3.d.ts +1 -1
  83. package/dist/models/genomes/susScr11/susScr11.d.ts +1 -1
  84. package/dist/models/genomes/susScr3/susScr3.d.ts +1 -1
  85. package/dist/models/genomes/t2t-chm13-v1.1/chm13.d.ts +1 -1
  86. package/dist/models/genomes/t2t-chm13-v2.0/chm13v2.d.ts +1 -1
  87. package/dist/models/genomes/trypanosome/TbruceiLister427.d.ts +1 -1
  88. package/dist/models/genomes/trypanosome/TbruceiTREU927.d.ts +1 -1
  89. package/dist/models/genomes/virus/ebola.d.ts +1 -1
  90. package/dist/models/genomes/virus/hpv16.d.ts +1 -1
  91. package/dist/models/genomes/virus/mers.d.ts +1 -1
  92. package/dist/models/genomes/virus/nCoV2019.d.ts +1 -1
  93. package/dist/models/genomes/virus/sars.d.ts +1 -1
  94. package/dist/models/genomes/xenTro10/xenTro10.d.ts +1 -1
  95. package/dist/style.css +1 -1
  96. package/dist/track-container/index.d.ts +1 -1
  97. package/dist/types/track-container.d.ts +33 -21
  98. package/dist/webworkerAll-CtUkS9Ui.mjs +2 -0
  99. package/package.json +3 -4
  100. package/dist/webworkerAll-Bu0Yjjgj.mjs +0 -2
@@ -1,4 +1,4 @@
1
- import { w as U, g, h as c, u as S, i as _, j as m, k as I, l as p } from "./index-Dky1S9zX.mjs";
1
+ import { w as U, g, h as c, u as S, i as _, j as m, k as I, l as p } from "./index-CF0QNcGP.mjs";
2
2
  const x = {
3
3
  name: "local-uniform-bit",
4
4
  vertex: {
@@ -1,5 +1,5 @@
1
- import { D as O, C as ee, m as D, n as Re, o as ce, M as F, E as R, p as Xe, w as $e, c as He, q as ze, s as Je, r as Ke, F as Qe, t as Ze, v as et, A as tt, R as nt, f as he } from "./index-Dky1S9zX.mjs";
2
- import { R as at, S as st, B as ot, a as rt, b as it, c as ct, A as lt, C as ht } from "./RenderTargetSystem-CSn-OARB.mjs";
1
+ import { D as O, C as ee, m as D, n as Re, o as ce, M as F, E as R, p as Xe, w as $e, c as He, q as ze, s as Je, r as Ke, F as Qe, t as Ze, v as et, A as tt, R as nt, f as he } from "./index-CF0QNcGP.mjs";
2
+ import { R as at, S as st, B as ot, a as rt, b as it, c as ct, A as lt, C as ht } from "./RenderTargetSystem-DZg7wxxc.mjs";
3
3
  let Z;
4
4
  function Ae(o) {
5
5
  const e = O.get().createCanvas(6, 1), t = e.getContext("2d");
@@ -1,4 +1,4 @@
1
- import { S as n, a as u, G as o, b as f } from "./index-Dky1S9zX.mjs";
1
+ import { S as n, a as u, G as o, b as f } from "./index-CF0QNcGP.mjs";
2
2
  const s = class i extends n {
3
3
  /**
4
4
  * @param options - The optional parameters of this filter.
@@ -1,5 +1,5 @@
1
- import { Z as Ve, U as oe, M as m, G as Ne, b as je, a as $e, _ as le, E as l, f as W, $ as w, a0 as qe, e as z, T, R as V, a1 as de, a2 as Ke, c as f, h as g, N as D, a3 as ue, w as ce, a4 as ee, a5 as he, a6 as pe, a7 as fe, a8 as me, H as P, a9 as Ye, C as E, D as N, O as v, aa as B, ab as Je, P as Xe, ac as Ze, B as Qe, x as te, ad as re, ae as p, l as et, v as O, af as tt, ag as rt, ah as st, ai as nt } from "./index-Dky1S9zX.mjs";
2
- import { F as at } from "./Filter-Cmf7BYhk.mjs";
1
+ import { Z as Ve, U as oe, M as m, G as Ne, b as je, a as $e, _ as le, E as l, f as W, $ as w, a0 as qe, e as z, T, R as V, a1 as de, a2 as Ke, c as f, h as g, N as D, a3 as ue, w as ce, a4 as ee, a5 as he, a6 as pe, a7 as fe, a8 as me, H as P, a9 as Ye, C as E, D as N, O as v, aa as B, ab as Je, P as Xe, ac as Ze, B as Qe, x as te, ad as re, ae as p, l as et, v as O, af as tt, ag as rt, ah as st, ai as nt } from "./index-CF0QNcGP.mjs";
2
+ import { F as at } from "./Filter-hBKIgKG1.mjs";
3
3
  var it = `in vec2 vMaskCoord;
4
4
  in vec2 vTextureCoord;
5
5
 
@@ -1,6 +1,6 @@
1
- import { D as R, a as F, E as d, J as O, j as B, w as p, g as z, b as ye, S as P, c as S, d as Ne, O as q, aj as Ce, h as g, aa as V, v as y, N, U as M, M as Z, ak as J, al as De, am as Q, an as Ie, ao as Ge, A as Ue, R as Fe, f as A } from "./index-Dky1S9zX.mjs";
2
- import { e as Oe, G as Pe, c as Me, b as Le, U as we, B as ee, d as C, f as te, g as He } from "./BufferResource-ChgmE3N0.mjs";
3
- import { R as Ve, S as Xe, d as ke } from "./RenderTargetSystem-CSn-OARB.mjs";
1
+ import { D as R, a as F, E as d, J as O, j as B, w as p, g as z, b as ye, S as P, c as S, d as Ne, O as q, aj as Ce, h as g, aa as V, v as y, N, U as M, M as Z, ak as J, al as De, am as Q, an as Ie, ao as Ge, A as Ue, R as Fe, f as A } from "./index-CF0QNcGP.mjs";
2
+ import { e as Oe, G as Pe, c as Me, b as Le, U as we, B as ee, d as C, f as te, g as He } from "./BufferResource-RmJVWkXV.mjs";
3
+ import { R as Ve, S as Xe, d as ke } from "./RenderTargetSystem-DZg7wxxc.mjs";
4
4
  function We() {
5
5
  const { userAgent: t } = R.get().getNavigator();
6
6
  return /^((?!chrome|android).)*safari/i.test(t);
@@ -1,6 +1,6 @@
1
- import { I as L, a as A, E as l, J as D, l as ce, K as de, D as B, h as C, j as T, i as he, B as k, L as w, w as v, N as y, v as pe, O as le, U as z, Q as M, M as F, V as O, W as fe, X as I, Y as ge, S as W, c as R, A as me, R as _e, f as S } from "./index-Dky1S9zX.mjs";
2
- import { c as be, u as ye, U as xe, B as Ge, G as Pe, e as Be, l as Se, a as Te, t as Ce } from "./BufferResource-ChgmE3N0.mjs";
3
- import { R as ve, S as Ue, d as we } from "./RenderTargetSystem-CSn-OARB.mjs";
1
+ import { I as L, a as A, E as l, J as D, l as ce, K as de, D as B, h as C, j as T, i as he, B as k, L as w, w as v, N as y, v as pe, O as le, U as z, Q as M, M as F, V as O, W as fe, X as I, Y as ge, S as W, c as R, A as me, R as _e, f as S } from "./index-CF0QNcGP.mjs";
2
+ import { c as be, u as ye, U as xe, B as Ge, G as Pe, e as Be, l as Se, a as Te, t as Ce } from "./BufferResource-RmJVWkXV.mjs";
3
+ import { R as ve, S as Ue, d as we } from "./RenderTargetSystem-DZg7wxxc.mjs";
4
4
  const G = A.for2d();
5
5
  class H {
6
6
  start(e, t, r) {
@@ -1,5 +1,5 @@
1
- import { x as O, y as Z, P as _, z as Q, E as P, k as ee, w as y, f as D, H as V } from "./index-Dky1S9zX.mjs";
2
- import "./init-BuN8b-s9.mjs";
1
+ import { x as O, y as Z, P as _, z as Q, E as P, k as ee, w as y, f as D, H as V } from "./index-CF0QNcGP.mjs";
2
+ import "./init-DBpfulRP.mjs";
3
3
  class te {
4
4
  constructor(e) {
5
5
  this._lastTransform = "", this._observer = null, this._tickerAttached = !1, this.updateTranslation = () => {
@@ -1,6 +1,9 @@
1
1
  import { default as TrackModel } from '../../../models/TrackModel';
2
2
  import { NumericalAggregator } from './commonComponents/numerical/NumericalAggregator';
3
3
  import { default as OpenInterval } from '../../../models/OpenInterval';
4
+ import { FeaturePlacementResult } from '../../../models/FeatureArranger';
5
+ import { default as DisplayedRegionModel } from '../../../models/DisplayedRegionModel';
6
+ import { Fiber } from '../../../models/Feature';
4
7
  export declare const numericalTracks: {
5
8
  bigwig: string;
6
9
  bedgraph: string;
@@ -33,18 +36,17 @@ export declare class GroupedTrackManager {
33
36
  * @returns list of groups found in the track list, their data, and their original indicies
34
37
  */
35
38
  aggregator: NumericalAggregator;
36
- dynseqAggregator: (data: any[], viewRegion: any, width: number, aggregatorId: string) => any;
37
39
  aggregateRecords: (data: any[], viewRegion: any, width: number) => any;
38
- aggregateFeaturesMatplot: (data: any, viewRegion: any, width: any, aggregatorId: any) => any;
39
- constructor();
40
- getGroupScale(tracks: TrackModel[], trackData: any, width: number, viewWindow: OpenInterval, dataIdx: number, trackFetchedDataCache: any): {
41
- [groupId: number]: {
42
- scale: TrackModel;
43
- min: {};
44
- max: {};
45
- };
40
+ aggregateFibers: (data: Fiber[], viewRegion: DisplayedRegionModel, width: number) => {
41
+ xToFibers: Array<{
42
+ on: number;
43
+ off: number;
44
+ count: number;
45
+ }>;
46
+ placements: FeaturePlacementResult["placements"];
46
47
  };
47
- getGroupScaleWithXvalues(tracks: TrackModel[], trackData: any, viewWindow: OpenInterval): {
48
+ constructor();
49
+ getGroupScale(trackData: any, width: number, viewWindow: OpenInterval, dataIdx: number, trackManagerState: any): {
48
50
  [groupId: number]: {
49
51
  scale: TrackModel;
50
52
  min: {};
@@ -0,0 +1,24 @@
1
+ import { default as React } from 'react';
2
+ type Props = {
3
+ children: React.ReactNode;
4
+ fallbackRender?: (error: Error | null) => React.ReactNode;
5
+ errorDrawData?: {
6
+ [key: string]: any;
7
+ } | null;
8
+ };
9
+ type State = {
10
+ hasError: boolean;
11
+ error?: Error | null;
12
+ fallbackElement?: React.ReactNode | null;
13
+ };
14
+ declare class ErrorBoundary extends React.Component<Props, State> {
15
+ constructor(props: Props);
16
+ static getDerivedStateFromError(error: Error): {
17
+ hasError: boolean;
18
+ error: Error;
19
+ };
20
+ componentDidCatch(error: Error, info: any): void;
21
+ reset: () => any;
22
+ render(): any;
23
+ }
24
+ export default ErrorBoundary;
@@ -0,0 +1,12 @@
1
+ import { default as React } from 'react';
2
+ interface VerticalDividerProps {
3
+ visData: {
4
+ visRegion: any;
5
+ viewWindowRegion: any;
6
+ viewWindow: {
7
+ getLength: () => number;
8
+ };
9
+ };
10
+ }
11
+ declare const VerticalDivider: React.FC<VerticalDividerProps>;
12
+ export default VerticalDivider;
@@ -21,6 +21,6 @@ export declare function getDisplayModeFunction(drawData: {
21
21
  [key: string]: any;
22
22
  }): any;
23
23
  export declare const twoDataTypeTracks: {};
24
- export declare function formatDataByType(genesArr: any[], type: string, initialLoad: boolean, regionLoci: Array<any>): any[] | {
24
+ export declare function formatDataByType(genesArr: any[], type: string, initialLoad?: boolean, regionLoci?: Array<any>): any[] | {
25
25
  error: any;
26
26
  };
@@ -4,68 +4,17 @@ export interface CoordinateDiff {
4
4
  dx: number;
5
5
  dy: number;
6
6
  }
7
- interface DragAcrossDivProps {
8
- mouseButton: MouseButton | undefined;
9
- style?: object;
10
- children: React.ReactNode;
11
- /**
12
- * Callback for when dragging starts.
13
- *
14
- * @param {React.MouseEvent} event - the event that triggered this callback
15
- */
16
- onDragStart?(event: React.MouseEvent): void;
17
- /**
18
- * Callback for each little bit of movement during a drag.
19
- *
20
- * @param {React.MouseEvent} event - the event that triggered this callback
21
- * @param {CoordinateDiff} coordinateDiff - how far the mouse has moved since the drag started
22
- */
23
- onDrag?(event: React.MouseEvent, coordinateDiff: CoordinateDiff): void;
24
- /**
25
- * Callback for when the user lets go of the mouse and stops dragging.
26
- *
27
- * @param {React.MouseEvent} event - the event that triggered this callback
28
- * @param {CoordinateDiff} coordinateDiff - how far the mouse has moved since the drag started
29
- */
30
- onDragEnd?(event: React.MouseEvent, coordinateDiff: CoordinateDiff): void;
7
+ interface DragAcrossDivProps extends React.HTMLAttributes<HTMLDivElement> {
8
+ mouseButton?: MouseButton;
9
+ onDragStart?(event: React.PointerEvent<HTMLDivElement>): void;
10
+ onDrag?(event: React.PointerEvent<HTMLDivElement>, coordinateDiff: CoordinateDiff): void;
11
+ onDragEnd?(event: React.PointerEvent<HTMLDivElement>, coordinateDiff: CoordinateDiff): void;
31
12
  }
32
- declare function doNothing(): void;
33
13
  /**
34
14
  * A <div> that listens for drag-across events, where a user drags the cursor inside the div. The drag callbacks will
35
15
  * fire even for short clicks; be sure to take this possibility into account when working with this component!
36
16
  *
37
- * @author Silas Hsu
17
+ * Implemented as a function component using hooks.
38
18
  */
39
- export declare class DragAcrossDiv extends React.Component<DragAcrossDivProps> {
40
- static defaultProps: {
41
- onDragStart: typeof doNothing;
42
- onDrag: typeof doNothing;
43
- onDragEnd: typeof doNothing;
44
- };
45
- private originEvent;
46
- constructor(props: DragAcrossDivProps);
47
- /**
48
- * Callback for mousedown events on the <div>.
49
- *
50
- * @param {React.MouseEvent} event - mouse event that triggered this callback
51
- */
52
- mousedown(event: React.MouseEvent): void;
53
- /**
54
- * Callback for mousemove events on the <div>.
55
- *
56
- * @param {React.MouseEvent} event - mouse event that triggered this callback
57
- */
58
- mousemove(event: React.MouseEvent): void;
59
- /**
60
- * Callback for mouseup events on the <div>.
61
- *
62
- * @param {React.MouseEvent} event - mouse event that triggered this callback
63
- */
64
- mouseup(event: React.MouseEvent): void;
65
- /**
66
- * @return {JSX.Element} a div that listens to drag events
67
- * @override
68
- */
69
- render(): any;
70
- }
19
+ export declare function DragAcrossDiv(props: DragAcrossDivProps): any;
71
20
  export {};
@@ -1,9 +1,10 @@
1
1
  import { FC } from 'react';
2
2
  import { default as NavigationContext } from '../../../models/NavigationContext';
3
3
  import { default as Genome } from '../../../models/Genome';
4
+ import { GenomeCoordinate } from '../../../types';
4
5
  interface GeneSearchBoxProps {
5
6
  navContext: NavigationContext;
6
- onRegionSelected: (newStart: number, newEnd: number, toolTitle: number | string, highlightSearch: boolean) => void;
7
+ onRegionSelected: (query: string | GenomeCoordinate, highlightSearch: boolean) => void;
7
8
  handleCloseModal: () => void;
8
9
  onNewHighlight?: (newStart: number, newEnd: number, geneName: string) => void;
9
10
  doHighlight: boolean;
@@ -0,0 +1,17 @@
1
+ import { default as React } from 'react';
2
+ import { default as Genome } from '../../../models/Genome';
3
+ import { default as DisplayedRegionModel } from '../../../models/DisplayedRegionModel';
4
+ import { GenomeCoordinate } from '../../../types/track-container';
5
+ interface RegionsPanelProps {
6
+ selectedRegion: DisplayedRegionModel;
7
+ onRegionSelected: (query: string | GenomeCoordinate, highlightSearch: boolean) => void;
8
+ contentColorSetup: {
9
+ color: string;
10
+ background: string;
11
+ };
12
+ virusBrowserMode?: boolean;
13
+ genomeConfig: Genome;
14
+ onClose: () => void;
15
+ }
16
+ declare const RegionsPanel: React.FC<RegionsPanelProps>;
17
+ export default RegionsPanel;
@@ -1,14 +1,16 @@
1
1
  import { default as React } from 'react';
2
2
  import { default as NavigationContext } from '../../../models/NavigationContext';
3
+ import { GenomeCoordinate } from '../../../types';
3
4
  interface SnpSearchBoxProps {
4
5
  genomeConfig: any;
5
6
  navContext: NavigationContext;
6
- onRegionSelected: (newStart: number, newEnd: number, toolTitle: number | string, highlightSearch: boolean) => void;
7
+ onRegionSelected: (query: string | GenomeCoordinate, highlightSearch: boolean) => void;
7
8
  handleCloseModal: () => void;
8
9
  onNewHighlight?: (start: number, end: number, text: string) => void;
9
10
  doHighlight: boolean;
10
11
  color?: string;
11
12
  background?: string;
13
+ customButton?: React.ElementType;
12
14
  }
13
15
  declare const SnpSearchBox: React.FC<SnpSearchBoxProps>;
14
16
  export default SnpSearchBox;
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ interface TrackRegionButtonProps {
3
+ coordinates: string;
4
+ onClick: () => void;
5
+ style?: React.CSSProperties;
6
+ }
7
+ declare const TrackRegionButton: React.FC<TrackRegionButtonProps>;
8
+ export default TrackRegionButton;
@@ -1,9 +1,10 @@
1
1
  import { FC } from 'react';
2
2
  import { default as DisplayedRegionModel } from '../../../models/DisplayedRegionModel';
3
3
  import { default as Genome } from '../../../models/Genome';
4
+ import { GenomeCoordinate } from '../../../types/track-container';
4
5
  interface TrackRegionControllerProps {
5
6
  selectedRegion: DisplayedRegionModel;
6
- onRegionSelected: (newStart: number, newEnd: number, toolTitle: number | string, highlightSearch: boolean) => void;
7
+ onRegionSelected: (query: string | GenomeCoordinate, highlightSearch: boolean) => void;
7
8
  contentColorSetup: {
8
9
  color: string;
9
10
  background: string;
@@ -13,7 +14,6 @@ interface TrackRegionControllerProps {
13
14
  genomeArr: any[];
14
15
  genomeIdx: number;
15
16
  addGlobalState: any;
16
- trackManagerState: any;
17
17
  windowWidth?: number;
18
18
  fontSize?: number;
19
19
  padding?: number;
@@ -12,4 +12,5 @@ export default class GenomeHubManager {
12
12
  getGenomeFromCache(id: string): IGenome | undefined;
13
13
  putGenome(genome: IGenome): Promise<void>;
14
14
  deleteAllGenomes(): Promise<void>;
15
+ deleteGenome(id: string): Promise<void>;
15
16
  }
@@ -10,6 +10,7 @@ export default class LocalGenomeRepository implements IGenomeHubSource {
10
10
  getGenomeById(id: uuid): Promise<IGenome>;
11
11
  putGenome(genome: IGenome): Promise<uuid>;
12
12
  deleteAllGenomes(): Promise<void>;
13
+ deleteGenome(id: uuid): Promise<void>;
13
14
  }
14
15
  type uuid = string;
15
16
  export {};
@@ -1,17 +1,14 @@
1
1
  import { BigWig } from '@gmod/bbi';
2
- /**
3
- * Reads and gets data from bigwig or bigbed files hosted remotely using @gmod/bbi library
4
- *
5
- * @author Daofeng Li
6
- */
7
2
  declare class LocalBigSourceGmod {
8
3
  blob: any;
9
4
  bw: BigWig;
5
+ private chromNamingCache;
10
6
  /**
11
7
  *
12
8
  * @param {string} url - the URL from which to fetch data
13
9
  */
14
10
  constructor(blob: any);
11
+ detectChromosomeNaming(): Promise<boolean | null>;
15
12
  /**
16
13
  * Gets BigWig or BigBed features inside the requested locations.
17
14
  *
@@ -1,33 +1,19 @@
1
1
  import { BigWig } from '@gmod/bbi';
2
+ /**
3
+ * Reads and gets data from bigwig or bigbed files hosted remotely using @gmod/bbi library
4
+ *
5
+ * @author Daofeng Li
6
+ */
2
7
  declare class BigSourceWorkerGmod {
3
- url: any;
4
- private chromNamingCache;
8
+ url: string;
5
9
  bw: BigWig;
6
- useEnsemblStyle: null | boolean;
10
+ private chromNamingCache;
7
11
  /**
8
12
  *
9
13
  * @param {string} url - the URL from which to fetch data
10
14
  */
11
15
  constructor(url: any);
12
- /**
13
- * Clears browser disk cache
14
- */
15
- private clearDiskCache;
16
- /**
17
- * Recreates the BigWig instance to clear any cached data
18
- */
19
- private recreateBigWigInstance;
20
- /**
21
- * Detects if the BigWig file uses Ensembl
22
- * @return {Promise<boolean>} True if Ensembl naming (1, 2, 3...), false if UCSC naming (chr1, chr2, chr3...)
23
- */
24
16
  detectChromosomeNaming(): Promise<boolean | null>;
25
- /**
26
- * Fetches features from BigWig/BigBed file for the given loci
27
- * @param {ChromosomeInterval[]} loci - locations for which to fetch data
28
- * @return {Promise<DASFeature[]>} a Promise for the data
29
- */
30
- private fetchSource;
31
17
  /**
32
18
  * Gets BigWig or BigBed features inside the requested locations.
33
19
  *
@@ -36,6 +22,6 @@ declare class BigSourceWorkerGmod {
36
22
  * @return {Promise<DASFeature[]>} a Promise for the data
37
23
  * @override
38
24
  */
39
- getData: (loci: any, basesPerPixel: any, options: any) => Promise<any[]>;
25
+ getData(loci: any, basesPerPixel: any, options: any): Promise<any[]>;
40
26
  }
41
27
  export default BigSourceWorkerGmod;
@@ -5,7 +5,9 @@ declare class VcfSource {
5
5
  parser: any;
6
6
  url: any;
7
7
  indexUrl: any;
8
+ private chromNamingCache;
8
9
  constructor(url: any, indexUrl?: null);
10
+ private detectChromosomeNaming;
9
11
  /**
10
12
  * Fetches data from VCF file for the given regions
11
13
  * @param {ChromosomeInterval[]} region - locations for which to fetch data
@@ -14,6 +16,6 @@ declare class VcfSource {
14
16
  */
15
17
  private fetchSource;
16
18
  getData(region: any, basesPerPixel: any, options: any): Promise<any[]>;
17
- _getDataInLocus(locus: any, options: any): Promise<any>;
19
+ _getDataInLocus(locus: any, isEnsembl: any): Promise<any>;
18
20
  }
19
21
  export default VcfSource;
@@ -1,4 +1,3 @@
1
- import { TabixIndexedFile } from '@gmod/tabix';
2
1
  /**
3
2
  * A DataSource that gets BedRecords from remote bed files. Designed to run in webworker context. Only indexed bed
4
3
  * files supported.
@@ -6,35 +5,14 @@ import { TabixIndexedFile } from '@gmod/tabix';
6
5
  * @author Daofeng Li based on Silas's version
7
6
  */
8
7
  declare class TabixSource {
9
- url: any;
10
- indexUrl?: any;
11
- dataLimit: number;
12
- tabix: TabixIndexedFile;
13
- private chromNamingCache;
14
- useEnsemblStyle: null | boolean;
15
8
  /**
16
9
  * Prepares to fetch data from a bed file located at the input url. Assumes the index is located at the same url,
17
10
  * plus a file extension of ".tbi". This method will request and store the tabix index from this url immediately.
18
11
  *
19
12
  * @param {string} url - the url of the bed-like file to fetch.
20
13
  */
21
- constructor(url: any, indexUrl?: null, dataLimit?: number);
22
- /**
23
- * Recreates the Tabix instance to clear any cached data
24
- */
25
- private recreateTabixInstance;
26
- /**
27
- * Detects if the Tabix file uses Ensembl
28
- * @return {Promise<boolean>} True if Ensembl naming (1, 2, 3...), false if UCSC naming (chr1, chr2, chr3...)
29
- */
30
- detectChromosomeNaming(): Promise<boolean | null>;
31
- /**
32
- * Fetches data from Tabix file for the given loci
33
- * @param {ChromosomeInterval[]} loci - locations for which to fetch data
34
- * @param {any} options - fetch options including ensemblStyle
35
- * @return {Promise<BedRecord[]>} a Promise for the data
36
- */
37
- private fetchSource;
14
+ constructor(url: any, indexUrl: any, dataLimit?: number);
15
+ detectChromosomeNaming(): Promise<any>;
38
16
  /**
39
17
  * Gets data for a list of chromosome intervals.
40
18
  *