@jbrowse/plugin-variants 3.2.0 → 3.3.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 (221) hide show
  1. package/dist/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +3 -3
  2. package/dist/MultiLinearVariantDisplay/index.js +1 -1
  3. package/dist/MultiLinearVariantDisplay/model.d.ts +39 -3
  4. package/dist/MultiLinearVariantDisplay/model.js +0 -1
  5. package/dist/MultiLinearVariantDisplay/renderSvg.js +2 -2
  6. package/dist/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +15 -5
  7. package/dist/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +3 -3
  8. package/dist/MultiLinearVariantMatrixDisplay/index.js +1 -1
  9. package/dist/MultiLinearVariantMatrixDisplay/model.d.ts +39 -2
  10. package/dist/MultiLinearVariantMatrixDisplay/model.js +1 -0
  11. package/dist/MultiLinearVariantMatrixDisplay/renderSvg.js +2 -2
  12. package/dist/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.d.ts → MultiLinearVariantMatrixRenderer.d.ts} +7 -3
  13. package/dist/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.d.ts +8 -0
  14. package/dist/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.js +41 -0
  15. package/dist/MultiLinearVariantMatrixRenderer/index.js +4 -4
  16. package/dist/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +2 -2
  17. package/dist/MultiLinearVariantMatrixRenderer/makeImageData.js +12 -13
  18. package/dist/MultiLinearVariantMatrixRenderer/types.d.ts +2 -4
  19. package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +30 -1
  20. package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.js +11 -5
  21. package/dist/MultiLinearVariantRenderer/components/{MultiVariantRendering.d.ts → MultiLinearVariantRendering.d.ts} +10 -4
  22. package/dist/MultiLinearVariantRenderer/{MultiVariantRendering.js → components/MultiLinearVariantRendering.js} +25 -7
  23. package/dist/MultiLinearVariantRenderer/components/util.d.ts +1 -0
  24. package/dist/MultiLinearVariantRenderer/components/util.js +15 -0
  25. package/dist/MultiLinearVariantRenderer/index.js +2 -2
  26. package/dist/MultiLinearVariantRenderer/makeImageData.d.ts +9 -0
  27. package/dist/MultiLinearVariantRenderer/makeImageData.js +60 -28
  28. package/dist/MultiLinearVariantRenderer/types.d.ts +1 -0
  29. package/dist/SplitVcfTabixAdapter/configSchema.js +4 -2
  30. package/dist/VariantFeatureWidget/AltFormatter.d.ts +4 -0
  31. package/dist/VariantFeatureWidget/AltFormatter.js +13 -0
  32. package/dist/VariantFeatureWidget/Checkbox2.js +1 -8
  33. package/dist/VariantFeatureWidget/Formatter.d.ts +3 -0
  34. package/dist/VariantFeatureWidget/Formatter.js +23 -0
  35. package/dist/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.js → VariantConsequence/VariantConsequenceDataGridWrapper.js} +3 -5
  36. package/dist/VariantFeatureWidget/VariantFeatureWidget.js +7 -2
  37. package/dist/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.d.ts +4 -0
  38. package/dist/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.js +80 -0
  39. package/dist/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.d.ts +3 -9
  40. package/dist/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.js +41 -20
  41. package/dist/VariantFeatureWidget/VariantSampleGrid/types.d.ts +21 -0
  42. package/dist/VariantFeatureWidget/VariantSampleGrid/util.d.ts +1 -0
  43. package/dist/VariantFeatureWidget/VariantSampleGrid/util.js +14 -0
  44. package/dist/VariantRPC/MultiVariantClusterGenotypeMatrix.d.ts +2 -16
  45. package/dist/VariantRPC/MultiVariantClusterGenotypeMatrix.js +4 -7
  46. package/dist/VariantRPC/MultiVariantGetGenotypeMatrix.d.ts +2 -15
  47. package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +3 -13
  48. package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.js +14 -8
  49. package/dist/VariantRPC/getGenotypeMatrix.js +10 -5
  50. package/dist/VariantRPC/types.d.ts +23 -0
  51. package/dist/VcfFeature/index.js +0 -1
  52. package/dist/VcfFeature/util.d.ts +2 -0
  53. package/dist/VcfFeature/util.js +123 -25
  54. package/dist/VcfTabixAdapter/VcfTabixAdapter.js +12 -7
  55. package/dist/getMultiVariantFeaturesAutorun.d.ts +2 -0
  56. package/dist/getMultiVariantFeaturesAutorun.js +9 -2
  57. package/dist/getMultiVariantSourcesAutorun.js +3 -2
  58. package/dist/shared/MultiVariantBaseModel.d.ts +40 -3
  59. package/dist/shared/MultiVariantBaseModel.js +69 -3
  60. package/dist/shared/components/AddFiltersDialog.d.ts +9 -0
  61. package/dist/shared/components/AddFiltersDialog.js +61 -0
  62. package/dist/shared/components/MultiVariantBaseDisplayComponent.d.ts +5 -0
  63. package/dist/shared/components/MultiVariantBaseDisplayComponent.js +29 -0
  64. package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.js +2 -2
  65. package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.js +8 -3
  66. package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.js +29 -28
  67. package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/types.d.ts +1 -0
  68. package/dist/shared/components/MultiVariantClusterDialog/types.js +2 -0
  69. package/{esm/shared/components/ColorLegend.d.ts → dist/shared/components/MultiVariantColorLegend.d.ts} +2 -2
  70. package/dist/shared/components/{ColorLegend.js → MultiVariantColorLegend.js} +5 -3
  71. package/dist/shared/components/MultiVariantCrosshairs.d.ts +7 -0
  72. package/dist/shared/components/MultiVariantCrosshairs.js +40 -0
  73. package/dist/shared/components/MultiVariantLegendBar.d.ts +7 -0
  74. package/dist/shared/components/{LegendBar.js → MultiVariantLegendBar.js} +2 -2
  75. package/dist/shared/components/MultiVariantTooltip.d.ts +4 -0
  76. package/dist/shared/components/MultiVariantTooltip.js +3 -2
  77. package/dist/shared/components/RectBg.js +4 -2
  78. package/dist/shared/components/SetColorDialog.js +1 -1
  79. package/dist/shared/components/SourcesDataGrid.d.ts +2 -1
  80. package/dist/shared/components/SourcesDataGrid.js +40 -47
  81. package/dist/shared/components/SourcesGrid.js +1 -1
  82. package/dist/shared/components/SourcesGridHeader.d.ts +2 -1
  83. package/dist/shared/drawAlleleCount.d.ts +1 -1
  84. package/dist/shared/drawAlleleCount.js +29 -5
  85. package/dist/shared/drawPhased.d.ts +1 -1
  86. package/dist/shared/drawPhased.js +14 -10
  87. package/dist/shared/minorAlleleFrequencyUtils.d.ts +6 -1
  88. package/dist/shared/minorAlleleFrequencyUtils.js +4 -5
  89. package/dist/shared/sourcesGridUtils.d.ts +3 -2
  90. package/esm/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +2 -2
  91. package/esm/MultiLinearVariantDisplay/index.js +1 -1
  92. package/esm/MultiLinearVariantDisplay/model.d.ts +39 -3
  93. package/esm/MultiLinearVariantDisplay/model.js +0 -1
  94. package/esm/MultiLinearVariantDisplay/renderSvg.js +1 -1
  95. package/esm/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +15 -8
  96. package/esm/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +2 -2
  97. package/esm/MultiLinearVariantMatrixDisplay/index.js +1 -1
  98. package/esm/MultiLinearVariantMatrixDisplay/model.d.ts +39 -2
  99. package/esm/MultiLinearVariantMatrixDisplay/model.js +1 -0
  100. package/esm/MultiLinearVariantMatrixDisplay/renderSvg.js +1 -1
  101. package/esm/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.d.ts → MultiLinearVariantMatrixRenderer.d.ts} +7 -3
  102. package/esm/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.d.ts +8 -0
  103. package/esm/MultiLinearVariantMatrixRenderer/components/MultiLinearVariantMatrixRendering.js +39 -0
  104. package/esm/MultiLinearVariantMatrixRenderer/index.js +4 -4
  105. package/esm/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +2 -2
  106. package/esm/MultiLinearVariantMatrixRenderer/makeImageData.js +13 -14
  107. package/esm/MultiLinearVariantMatrixRenderer/types.d.ts +2 -4
  108. package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +30 -1
  109. package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.js +11 -5
  110. package/esm/MultiLinearVariantRenderer/components/{MultiVariantRendering.d.ts → MultiLinearVariantRendering.d.ts} +10 -4
  111. package/esm/MultiLinearVariantRenderer/components/{MultiVariantRendering.js → MultiLinearVariantRendering.js} +25 -7
  112. package/esm/MultiLinearVariantRenderer/components/util.d.ts +1 -0
  113. package/esm/MultiLinearVariantRenderer/components/util.js +12 -0
  114. package/esm/MultiLinearVariantRenderer/index.js +1 -1
  115. package/esm/MultiLinearVariantRenderer/makeImageData.d.ts +9 -0
  116. package/esm/MultiLinearVariantRenderer/makeImageData.js +61 -29
  117. package/esm/MultiLinearVariantRenderer/types.d.ts +1 -0
  118. package/esm/SplitVcfTabixAdapter/configSchema.js +4 -2
  119. package/esm/VariantFeatureWidget/AltFormatter.d.ts +4 -0
  120. package/esm/VariantFeatureWidget/AltFormatter.js +10 -0
  121. package/esm/VariantFeatureWidget/Checkbox2.js +2 -9
  122. package/esm/VariantFeatureWidget/Formatter.d.ts +3 -0
  123. package/esm/VariantFeatureWidget/Formatter.js +17 -0
  124. package/esm/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.js → VariantConsequence/VariantConsequenceDataGridWrapper.js} +4 -6
  125. package/esm/VariantFeatureWidget/VariantFeatureWidget.js +7 -2
  126. package/esm/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.d.ts +4 -0
  127. package/esm/VariantFeatureWidget/VariantSampleGrid/VariantGenotypeFrequencyTable.js +74 -0
  128. package/esm/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.d.ts +3 -9
  129. package/esm/VariantFeatureWidget/VariantSampleGrid/VariantSampleGrid.js +43 -22
  130. package/esm/VariantFeatureWidget/VariantSampleGrid/types.d.ts +21 -0
  131. package/esm/VariantFeatureWidget/VariantSampleGrid/util.d.ts +1 -0
  132. package/esm/VariantFeatureWidget/VariantSampleGrid/util.js +11 -0
  133. package/esm/VariantRPC/MultiVariantClusterGenotypeMatrix.d.ts +2 -16
  134. package/esm/VariantRPC/MultiVariantClusterGenotypeMatrix.js +4 -7
  135. package/esm/VariantRPC/MultiVariantGetGenotypeMatrix.d.ts +2 -15
  136. package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +3 -13
  137. package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.js +14 -8
  138. package/esm/VariantRPC/getGenotypeMatrix.js +10 -5
  139. package/esm/VariantRPC/types.d.ts +23 -0
  140. package/esm/VcfFeature/index.js +0 -1
  141. package/esm/VcfFeature/util.d.ts +2 -0
  142. package/esm/VcfFeature/util.js +121 -25
  143. package/esm/VcfTabixAdapter/VcfTabixAdapter.js +13 -8
  144. package/esm/getMultiVariantFeaturesAutorun.d.ts +2 -0
  145. package/esm/getMultiVariantFeaturesAutorun.js +9 -2
  146. package/esm/getMultiVariantSourcesAutorun.js +3 -2
  147. package/esm/shared/MultiVariantBaseModel.d.ts +40 -3
  148. package/esm/shared/MultiVariantBaseModel.js +71 -5
  149. package/esm/shared/components/AddFiltersDialog.d.ts +9 -0
  150. package/esm/shared/components/AddFiltersDialog.js +59 -0
  151. package/esm/shared/components/MultiVariantBaseDisplayComponent.d.ts +5 -0
  152. package/esm/shared/components/MultiVariantBaseDisplayComponent.js +24 -0
  153. package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.js +2 -2
  154. package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.js +9 -4
  155. package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.js +29 -28
  156. package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/types.d.ts +1 -0
  157. package/esm/shared/components/MultiVariantClusterDialog/types.js +1 -0
  158. package/{dist/shared/components/ColorLegend.d.ts → esm/shared/components/MultiVariantColorLegend.d.ts} +2 -2
  159. package/esm/shared/components/{ColorLegend.js → MultiVariantColorLegend.js} +6 -4
  160. package/esm/shared/components/MultiVariantCrosshairs.d.ts +7 -0
  161. package/esm/shared/components/MultiVariantCrosshairs.js +35 -0
  162. package/esm/shared/components/MultiVariantLegendBar.d.ts +7 -0
  163. package/esm/shared/components/{LegendBar.js → MultiVariantLegendBar.js} +1 -1
  164. package/esm/shared/components/MultiVariantTooltip.d.ts +4 -0
  165. package/esm/shared/components/MultiVariantTooltip.js +3 -2
  166. package/esm/shared/components/RectBg.js +4 -2
  167. package/esm/shared/components/SetColorDialog.js +1 -1
  168. package/esm/shared/components/SourcesDataGrid.d.ts +2 -1
  169. package/esm/shared/components/SourcesDataGrid.js +40 -47
  170. package/esm/shared/components/SourcesGrid.js +1 -1
  171. package/esm/shared/components/SourcesGridHeader.d.ts +2 -1
  172. package/esm/shared/drawAlleleCount.d.ts +1 -1
  173. package/esm/shared/drawAlleleCount.js +29 -5
  174. package/esm/shared/drawPhased.d.ts +1 -1
  175. package/esm/shared/drawPhased.js +14 -10
  176. package/esm/shared/minorAlleleFrequencyUtils.d.ts +6 -1
  177. package/esm/shared/minorAlleleFrequencyUtils.js +5 -6
  178. package/esm/shared/sourcesGridUtils.d.ts +3 -2
  179. package/package.json +10 -9
  180. package/dist/MultiLinearVariantDisplay/components/Crosshair.d.ts +0 -7
  181. package/dist/MultiLinearVariantDisplay/components/Crosshair.js +0 -35
  182. package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +0 -7
  183. package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.js +0 -28
  184. package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +0 -7
  185. package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +0 -38
  186. package/dist/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +0 -22
  187. package/dist/MultiLinearVariantRenderer/components/MultiVariantRendering.js +0 -52
  188. package/dist/VariantFeatureWidget/VariantConsequencePanel.d.ts +0 -5
  189. package/dist/VariantFeatureWidget/VariantConsequencePanel.js +0 -15
  190. package/dist/VariantRPC/cluster.d.ts +0 -17
  191. package/dist/VariantRPC/cluster.js +0 -84
  192. package/dist/shared/components/LegendBar.d.ts +0 -18
  193. package/esm/MultiLinearVariantDisplay/components/Crosshair.d.ts +0 -7
  194. package/esm/MultiLinearVariantDisplay/components/Crosshair.js +0 -30
  195. package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +0 -7
  196. package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.js +0 -23
  197. package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +0 -7
  198. package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +0 -36
  199. package/esm/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +0 -22
  200. package/esm/MultiLinearVariantRenderer/MultiVariantRendering.js +0 -47
  201. package/esm/VariantFeatureWidget/VariantConsequencePanel.d.ts +0 -5
  202. package/esm/VariantFeatureWidget/VariantConsequencePanel.js +0 -9
  203. package/esm/VariantRPC/cluster.d.ts +0 -17
  204. package/esm/VariantRPC/cluster.js +0 -79
  205. package/esm/shared/components/LegendBar.d.ts +0 -18
  206. /package/dist/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.js → MultiLinearVariantMatrixRenderer.js} +0 -0
  207. /package/dist/VariantFeatureWidget/{VariantConsequenceDataGrid.d.ts → VariantConsequence/VariantConsequenceDataGrid.d.ts} +0 -0
  208. /package/dist/VariantFeatureWidget/{VariantConsequenceDataGrid.js → VariantConsequence/VariantConsequenceDataGrid.js} +0 -0
  209. /package/dist/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.d.ts → VariantConsequence/VariantConsequenceDataGridWrapper.d.ts} +0 -0
  210. /package/dist/{shared/components/ClusterDialog → VariantFeatureWidget/VariantSampleGrid}/types.js +0 -0
  211. /package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.d.ts +0 -0
  212. /package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.d.ts +0 -0
  213. /package/dist/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.d.ts +0 -0
  214. /package/esm/MultiLinearVariantMatrixRenderer/{LinearVariantMatrixRenderer.js → MultiLinearVariantMatrixRenderer.js} +0 -0
  215. /package/esm/VariantFeatureWidget/{VariantConsequenceDataGrid.d.ts → VariantConsequence/VariantConsequenceDataGrid.d.ts} +0 -0
  216. /package/esm/VariantFeatureWidget/{VariantConsequenceDataGrid.js → VariantConsequence/VariantConsequenceDataGrid.js} +0 -0
  217. /package/esm/VariantFeatureWidget/{VariantConsequenceDataGridWrapper.d.ts → VariantConsequence/VariantConsequenceDataGridWrapper.d.ts} +0 -0
  218. /package/esm/{shared/components/ClusterDialog → VariantFeatureWidget/VariantSampleGrid}/types.js +0 -0
  219. /package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialog.d.ts +0 -0
  220. /package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogAuto.d.ts +0 -0
  221. /package/esm/shared/components/{ClusterDialog → MultiVariantClusterDialog}/ClusterDialogManual.d.ts +0 -0
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.MultiVariantClusterGenotypeMatrix = void 0;
7
7
  const RpcMethodTypeWithFiltersAndRenameRegions_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions"));
8
- const cluster_1 = require("./cluster");
8
+ const cluster_1 = require("@jbrowse/core/util/cluster");
9
9
  const getGenotypeMatrix_1 = require("./getGenotypeMatrix");
10
10
  class MultiVariantClusterGenotypeMatrix extends RpcMethodTypeWithFiltersAndRenameRegions_1.default {
11
11
  constructor() {
@@ -20,14 +20,11 @@ class MultiVariantClusterGenotypeMatrix extends RpcMethodTypeWithFiltersAndRenam
20
20
  });
21
21
  return (0, cluster_1.clusterData)({
22
22
  data: Object.values(matrix),
23
- onProgress: a => {
24
- deserializedArgs.statusCallback(`${toP(a * 100)}%`);
25
- },
26
23
  stopToken: deserializedArgs.stopToken,
24
+ onProgress: progress => {
25
+ deserializedArgs.statusCallback(progress);
26
+ },
27
27
  });
28
28
  }
29
29
  }
30
30
  exports.MultiVariantClusterGenotypeMatrix = MultiVariantClusterGenotypeMatrix;
31
- function toP(n) {
32
- return Number.parseFloat(n.toPrecision(3));
33
- }
@@ -1,19 +1,6 @@
1
1
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
2
- import type { Source } from '../shared/types';
3
- import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
4
- import type { Region } from '@jbrowse/core/util';
5
- interface Args {
6
- adapterConfig: AnyConfigurationModel;
7
- stopToken?: string;
8
- sessionId: string;
9
- headers?: Record<string, string>;
10
- regions: Region[];
11
- bpPerPx: number;
12
- sources: Source[];
13
- minorAlleleFrequencyFilter: number;
14
- }
2
+ import type { GetGenotypeMatrixArgs } from './types';
15
3
  export declare class MultiVariantGetGenotypeMatrix extends RpcMethodTypeWithFiltersAndRenameRegions {
16
4
  name: string;
17
- execute(args: Args, rpcDriverClassName: string): Promise<Record<string, number[]>>;
5
+ execute(args: GetGenotypeMatrixArgs, rpcDriverClassName: string): Promise<Record<string, number[]>>;
18
6
  }
19
- export {};
@@ -1,19 +1,9 @@
1
1
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
2
+ import type { GetSimplifiedFeaturesArgs } from './types';
2
3
  import type { SampleInfo } from '../shared/types';
3
- import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
4
- import type { Region } from '@jbrowse/core/util';
5
- interface Args {
6
- adapterConfig: AnyConfigurationModel;
7
- stopToken?: string;
8
- sessionId: string;
9
- headers?: Record<string, string>;
10
- regions: Region[];
11
- bpPerPx: number;
12
- minorAlleleFrequencyFilter: number;
13
- }
14
4
  export declare class MultiVariantGetSimplifiedFeatures extends RpcMethodTypeWithFiltersAndRenameRegions {
15
5
  name: string;
16
- execute(args: Args, rpcDriverClassName: string): Promise<{
6
+ execute(args: GetSimplifiedFeaturesArgs, rpcDriverClassName: string): Promise<{
17
7
  hasPhased: boolean;
18
8
  sampleInfo: Record<string, SampleInfo>;
19
9
  features: {
@@ -22,8 +12,8 @@ export declare class MultiVariantGetSimplifiedFeatures extends RpcMethodTypeWith
22
12
  start: number;
23
13
  end: number;
24
14
  refName: string;
15
+ name: any;
25
16
  };
26
17
  }[];
27
18
  }>;
28
19
  }
29
- export {};
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.MultiVariantGetSimplifiedFeatures = void 0;
7
7
  const dataAdapterCache_1 = require("@jbrowse/core/data_adapters/dataAdapterCache");
8
8
  const RpcMethodTypeWithFiltersAndRenameRegions_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions"));
9
+ const util_1 = require("@jbrowse/core/util");
9
10
  const rxjs_1 = require("rxjs");
10
11
  const minorAlleleFrequencyUtils_1 = require("../shared/minorAlleleFrequencyUtils");
11
12
  class MultiVariantGetSimplifiedFeatures extends RpcMethodTypeWithFiltersAndRenameRegions_1.default {
@@ -14,17 +15,21 @@ class MultiVariantGetSimplifiedFeatures extends RpcMethodTypeWithFiltersAndRenam
14
15
  this.name = 'MultiVariantGetSimplifiedFeatures';
15
16
  }
16
17
  async execute(args, rpcDriverClassName) {
17
- var _a, _b;
18
18
  const deserializedArgs = await this.deserializeArguments(args, rpcDriverClassName);
19
- const { minorAlleleFrequencyFilter, regions, adapterConfig, sessionId } = deserializedArgs;
19
+ const { lengthCutoffFilter, minorAlleleFrequencyFilter, regions, adapterConfig, stopToken, sessionId, } = deserializedArgs;
20
20
  const { dataAdapter } = await (0, dataAdapterCache_1.getAdapter)(this.pluginManager, sessionId, adapterConfig);
21
- const feats = await (0, rxjs_1.firstValueFrom)(dataAdapter
22
- .getFeaturesInMultipleRegions(regions, deserializedArgs)
23
- .pipe((0, rxjs_1.toArray)()));
24
- const features = (0, minorAlleleFrequencyUtils_1.getFeaturesThatPassMinorAlleleFrequencyFilter)(feats, minorAlleleFrequencyFilter);
21
+ const features = (0, minorAlleleFrequencyUtils_1.getFeaturesThatPassMinorAlleleFrequencyFilter)({
22
+ minorAlleleFrequencyFilter,
23
+ lengthCutoffFilter,
24
+ stopToken,
25
+ features: await (0, rxjs_1.firstValueFrom)(dataAdapter
26
+ .getFeaturesInMultipleRegions(regions, deserializedArgs)
27
+ .pipe((0, rxjs_1.toArray)())),
28
+ });
25
29
  const sampleInfo = {};
26
30
  let hasPhased = false;
27
- for (const { feature } of features) {
31
+ (0, util_1.forEachWithStopTokenCheck)(features, stopToken, ({ feature }) => {
32
+ var _a, _b;
28
33
  const samp = feature.get('genotypes');
29
34
  for (const [key, val] of Object.entries(samp)) {
30
35
  const isPhased = val.includes('|');
@@ -34,7 +39,7 @@ class MultiVariantGetSimplifiedFeatures extends RpcMethodTypeWithFiltersAndRenam
34
39
  isPhased: ((_b = sampleInfo[key]) === null || _b === void 0 ? void 0 : _b.isPhased) || isPhased,
35
40
  };
36
41
  }
37
- }
42
+ });
38
43
  return {
39
44
  hasPhased,
40
45
  sampleInfo,
@@ -44,6 +49,7 @@ class MultiVariantGetSimplifiedFeatures extends RpcMethodTypeWithFiltersAndRenam
44
49
  start: feature.get('start'),
45
50
  end: feature.get('end'),
46
51
  refName: feature.get('refName'),
52
+ name: feature.get('name'),
47
53
  },
48
54
  })),
49
55
  };
@@ -2,22 +2,27 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getGenotypeMatrix = getGenotypeMatrix;
4
4
  const dataAdapterCache_1 = require("@jbrowse/core/data_adapters/dataAdapterCache");
5
+ const util_1 = require("@jbrowse/core/util");
5
6
  const rxjs_1 = require("rxjs");
6
7
  const minorAlleleFrequencyUtils_1 = require("../shared/minorAlleleFrequencyUtils");
7
8
  async function getGenotypeMatrix({ pluginManager, args, }) {
8
- const { sources, minorAlleleFrequencyFilter, regions, adapterConfig, sessionId, } = args;
9
+ const { sources, minorAlleleFrequencyFilter, regions, adapterConfig, sessionId, lengthCutoffFilter, stopToken, } = args;
9
10
  const adapter = await (0, dataAdapterCache_1.getAdapter)(pluginManager, sessionId, adapterConfig);
10
11
  const dataAdapter = adapter.dataAdapter;
11
- const feats = await (0, rxjs_1.firstValueFrom)(dataAdapter.getFeaturesInMultipleRegions(regions, args).pipe((0, rxjs_1.toArray)()));
12
12
  const genotypeFactor = new Set();
13
- const mafs = (0, minorAlleleFrequencyUtils_1.getFeaturesThatPassMinorAlleleFrequencyFilter)(feats, minorAlleleFrequencyFilter);
13
+ const mafs = (0, minorAlleleFrequencyUtils_1.getFeaturesThatPassMinorAlleleFrequencyFilter)({
14
+ minorAlleleFrequencyFilter,
15
+ lengthCutoffFilter,
16
+ stopToken,
17
+ features: await (0, rxjs_1.firstValueFrom)(dataAdapter.getFeaturesInMultipleRegions(regions, args).pipe((0, rxjs_1.toArray)())),
18
+ });
14
19
  for (const { alleleCounts } of mafs) {
15
20
  for (const alt of alleleCounts.keys()) {
16
21
  genotypeFactor.add(alt);
17
22
  }
18
23
  }
19
24
  const rows = {};
20
- for (const { feature } of mafs) {
25
+ (0, util_1.forEachWithStopTokenCheck)(mafs, stopToken, ({ feature }) => {
21
26
  const genotypes = feature.get('genotypes');
22
27
  for (const { name } of sources) {
23
28
  if (!rows[name]) {
@@ -50,6 +55,6 @@ async function getGenotypeMatrix({ pluginManager, args, }) {
50
55
  }
51
56
  rows[name].push(genotypeStatus);
52
57
  }
53
- }
58
+ });
54
59
  return rows;
55
60
  }
@@ -10,4 +10,27 @@ export interface GetGenotypeMatrixArgs {
10
10
  headers?: Record<string, string>;
11
11
  regions: Region[];
12
12
  bpPerPx: number;
13
+ lengthCutoffFilter: number;
14
+ }
15
+ export interface GetSimplifiedFeaturesArgs {
16
+ adapterConfig: AnyConfigurationModel;
17
+ stopToken?: string;
18
+ sessionId: string;
19
+ headers?: Record<string, string>;
20
+ regions: Region[];
21
+ bpPerPx: number;
22
+ minorAlleleFrequencyFilter: number;
23
+ lengthCutoffFilter: number;
24
+ }
25
+ export interface ClusterGenotypeMatrixArgs {
26
+ adapterConfig: AnyConfigurationModel;
27
+ stopToken?: string;
28
+ statusCallback: (arg: string) => void;
29
+ sessionId: string;
30
+ headers?: Record<string, string>;
31
+ regions: Region[];
32
+ bpPerPx: number;
33
+ sources: Source[];
34
+ minorAlleleFrequencyFilter: number;
35
+ lengthCutoffFilter: number;
13
36
  }
@@ -12,7 +12,6 @@ function dataFromVariant(variant, parser) {
12
12
  description,
13
13
  type,
14
14
  name: ID === null || ID === void 0 ? void 0 : ID.join(','),
15
- aliases: ID && ID.length > 1 ? ID.slice(1) : undefined,
16
15
  };
17
16
  }
18
17
  function getEnd(variant) {
@@ -2,3 +2,5 @@ import type VCF from '@gmod/vcf';
2
2
  export declare function getSOTermAndDescription(ref: string, alt: string[] | undefined, parser: VCF): string[];
3
3
  export declare function getSOAndDescFromAltDefs(alt: string, parser: VCF): string[];
4
4
  export declare function getSOAndDescByExamination(ref: string, alt: string): string[];
5
+ export declare function getMinimalDesc(ref: string, alt: string): string;
6
+ export declare function makeSimpleAltString(genotype: string, ref: string, alt: string[]): string;
@@ -3,7 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getSOTermAndDescription = getSOTermAndDescription;
4
4
  exports.getSOAndDescFromAltDefs = getSOAndDescFromAltDefs;
5
5
  exports.getSOAndDescByExamination = getSOAndDescByExamination;
6
+ exports.getMinimalDesc = getMinimalDesc;
7
+ exports.makeSimpleAltString = makeSimpleAltString;
6
8
  const vcf_1 = require("@gmod/vcf");
9
+ const util_1 = require("@jbrowse/core/util");
7
10
  const altTypeToSO = {
8
11
  DEL: 'deletion',
9
12
  INS: 'insertion',
@@ -67,63 +70,158 @@ function getSOAndDescFromAltDefs(alt, parser) {
67
70
  return [soTerm, alt];
68
71
  }
69
72
  const modAlt = alt.split(':');
70
- if (modAlt.length > 1) {
71
- return getSOAndDescFromAltDefs(`<${modAlt.slice(0, -1).join(':')}>`, parser);
72
- }
73
- return [];
73
+ return modAlt.length > 1
74
+ ? getSOAndDescFromAltDefs(`<${modAlt.slice(0, -1).join(':')}>`, parser)
75
+ : [];
74
76
  }
75
77
  function getSOAndDescByExamination(ref, alt) {
76
78
  const bnd = (0, vcf_1.parseBreakend)(alt);
77
79
  if (bnd) {
78
80
  return ['breakend', alt];
79
81
  }
80
- if (ref.length === 1 && alt.length === 1) {
82
+ else if (ref.length === 1 && alt.length === 1) {
81
83
  return ['SNV', makeDescriptionString('SNV', ref, alt)];
82
84
  }
83
- if (alt === '<INS>') {
85
+ else if (alt === '<INS>') {
84
86
  return ['insertion', alt];
85
87
  }
86
- if (alt === '<DEL>') {
88
+ else if (alt === '<DEL>') {
87
89
  return ['deletion', alt];
88
90
  }
89
- if (alt === '<DUP>') {
91
+ else if (alt === '<DUP>') {
90
92
  return ['duplication', alt];
91
93
  }
92
- if (alt === '<CNV>') {
94
+ else if (alt === '<CNV>') {
93
95
  return ['cnv', alt];
94
96
  }
95
- if (alt === '<INV>') {
97
+ else if (alt === '<INV>') {
96
98
  return ['inversion', alt];
97
99
  }
98
- if (alt === '<TRA>') {
100
+ else if (alt === '<TRA>') {
99
101
  return ['translocation', alt];
100
102
  }
101
- if (alt.includes('<')) {
103
+ else if (alt.includes('<')) {
102
104
  return ['sv', alt];
103
105
  }
104
- if (ref.length === alt.length) {
105
- return ref.split('').reverse().join('') === alt
106
- ? ['inversion', makeDescriptionString('inversion', ref, alt)]
107
- : ['substitution', makeDescriptionString('substitution', ref, alt)];
106
+ else if (ref.length === alt.length) {
107
+ const lenRef = ref.length;
108
+ const lenAlt = alt.length;
109
+ if (lenRef > 5 || lenAlt > 5) {
110
+ const lena = (0, util_1.getBpDisplayStr)(lenRef);
111
+ const lenb = (0, util_1.getBpDisplayStr)(lenAlt);
112
+ return ref.split('').reverse().join('') === alt
113
+ ? ['inverson', makeDescriptionString('inv', lena, lenb)]
114
+ : ['substitution', makeDescriptionString('substitution', lena, lenb)];
115
+ }
116
+ else {
117
+ return ref.split('').reverse().join('') === alt
118
+ ? ['inversion', makeDescriptionString('inv', ref, alt)]
119
+ : ['substitution', makeDescriptionString('substitution', ref, alt)];
120
+ }
108
121
  }
109
- if (ref.length <= alt.length) {
122
+ else if (ref.length <= alt.length) {
110
123
  const len = alt.length - ref.length;
111
- const lena = len.toLocaleString('en-US');
124
+ const lenAlt = alt.length;
125
+ const lenRef = ref.length;
126
+ const lena = (0, util_1.getBpDisplayStr)(len);
112
127
  return [
113
128
  'insertion',
114
- len > 5 ? `${lena}bp INS` : makeDescriptionString('insertion', ref, alt),
129
+ lenRef > 5 || lenAlt > 5
130
+ ? `${lena} INS`
131
+ : makeDescriptionString('insertion', len > 5 ? lena : ref, alt),
115
132
  ];
116
133
  }
117
- if (ref.length > alt.length) {
118
- const len = ref.length - alt.length;
119
- const lena = len.toLocaleString('en-US');
134
+ else if (ref.length > alt.length) {
135
+ const lenRef = ref.length;
136
+ const lenAlt = alt.length;
137
+ const lena = (0, util_1.getBpDisplayStr)(lenRef - lenAlt);
120
138
  return [
121
139
  'deletion',
122
- len > 5 ? `${lena}bp DEL` : makeDescriptionString('deletion', ref, alt),
140
+ lenRef > 5 || lenAlt > 5
141
+ ? `${lena} DEL`
142
+ : makeDescriptionString('deletion', ref, alt),
123
143
  ];
124
144
  }
125
- return ['indel', makeDescriptionString('indel', ref, alt)];
145
+ else {
146
+ return ['indel', makeDescriptionString('indel', ref, alt)];
147
+ }
148
+ }
149
+ function getMinimalDesc(ref, alt) {
150
+ const bnd = (0, vcf_1.parseBreakend)(alt);
151
+ if (bnd) {
152
+ return alt;
153
+ }
154
+ else if (ref.length === 1 && alt.length === 1) {
155
+ return alt;
156
+ }
157
+ else if (alt === '<INS>') {
158
+ return alt;
159
+ }
160
+ else if (alt === '<DEL>') {
161
+ return alt;
162
+ }
163
+ else if (alt === '<DUP>') {
164
+ return alt;
165
+ }
166
+ else if (alt === '<CNV>') {
167
+ return alt;
168
+ }
169
+ else if (alt === '<INV>') {
170
+ return alt;
171
+ }
172
+ else if (alt === '<TRA>') {
173
+ return alt;
174
+ }
175
+ else if (alt.includes('<')) {
176
+ return alt;
177
+ }
178
+ else if (ref.length === alt.length) {
179
+ const lenRef = ref.length;
180
+ const lenAlt = alt.length;
181
+ if (lenRef > 5 || lenAlt > 5) {
182
+ const lena = (0, util_1.getBpDisplayStr)(lenRef);
183
+ const lenb = (0, util_1.getBpDisplayStr)(lenAlt);
184
+ return ref.split('').reverse().join('') === alt
185
+ ? makeDescriptionString('inv', lena, lenb)
186
+ : makeDescriptionString('substitution', lena, lenb);
187
+ }
188
+ else {
189
+ return ref.split('').reverse().join('') === alt
190
+ ? makeDescriptionString('inv', ref, alt)
191
+ : makeDescriptionString('substitution', ref, alt);
192
+ }
193
+ }
194
+ else if (ref.length <= alt.length) {
195
+ const len = alt.length - ref.length;
196
+ const lenAlt = alt.length;
197
+ const lenRef = ref.length;
198
+ const lena = (0, util_1.getBpDisplayStr)(len);
199
+ return lenRef > 5 || lenAlt > 5
200
+ ? `${lena} INS`
201
+ : makeDescriptionString('insertion', len > 5 ? lena : ref, alt);
202
+ }
203
+ else if (ref.length > alt.length) {
204
+ const lenRef = ref.length;
205
+ const lenAlt = alt.length;
206
+ const lena = (0, util_1.getBpDisplayStr)(lenRef - lenAlt);
207
+ return lenRef > 5 || lenAlt > 5
208
+ ? `${lena} DEL`
209
+ : makeDescriptionString('deletion', ref, alt);
210
+ }
211
+ else {
212
+ return makeDescriptionString('indel', ref, alt);
213
+ }
126
214
  }
127
215
  function makeDescriptionString(soTerm, ref, alt) {
128
- return `${soTerm} ${ref} -> ${alt}`;
216
+ return `${soTerm} ${[ref, alt].join(' -> ')}`;
217
+ }
218
+ function makeSimpleAltString(genotype, ref, alt) {
219
+ return genotype
220
+ .split(/[/|]/)
221
+ .map(r => r === '.'
222
+ ? '.'
223
+ : +r === 0
224
+ ? `ref(${ref.length < 10 ? ref : (0, util_1.getBpDisplayStr)(ref.length)})`
225
+ : getMinimalDesc(ref, alt[+r - 1] || ''))
226
+ .join(genotype.includes('|') ? '|' : '/');
129
227
  }
@@ -90,22 +90,27 @@ class VcfTabixAdapter extends BaseAdapter_1.BaseFeatureDataAdapter {
90
90
  const lines = txt.split(/\n|\r\n|\r/);
91
91
  const header = lines[0].split('\t');
92
92
  const { parser } = await this.configure();
93
- const s = new Set(parser.samples);
94
- const ret = lines
93
+ const metadataLines = lines
95
94
  .slice(1)
96
95
  .filter(f => !!f)
97
96
  .map(line => {
98
97
  const [name, ...rest] = line.split('\t');
99
98
  return {
100
- ...Object.fromEntries(rest.map((c, idx) => [header[idx + 1], c])),
99
+ ...Object.fromEntries(header.slice(1).map((c, idx) => [c, rest[idx] || ''])),
101
100
  name: name,
102
101
  };
103
102
  });
104
- const missing = ret.filter(f => !s.has(f.name));
105
- if (missing.length) {
106
- console.warn('Samples in metadata file not in VCF:', ret.filter(f => !s.has(f.name)));
103
+ const vcfSampleSet = new Set(parser.samples);
104
+ const metadataSet = new Set(metadataLines.map(r => r.name));
105
+ const metadataNotInVcfSamples = [...metadataSet].filter(f => !vcfSampleSet.has(f));
106
+ const vcfSamplesNotInMetadata = [...vcfSampleSet].filter(f => !metadataSet.has(f));
107
+ if (metadataNotInVcfSamples.length) {
108
+ console.warn(`There are ${metadataNotInVcfSamples.length} samples in metadata file (${metadataLines.length} lines) not in VCF (${parser.samples.length} samples):`, (0, util_1.shorten2)(metadataNotInVcfSamples.join(',')));
107
109
  }
108
- return ret.filter(f => s.has(f.name));
110
+ if (vcfSamplesNotInMetadata.length) {
111
+ console.warn(`There are ${vcfSamplesNotInMetadata.length} samples in VCF file (${parser.samples.length} samples) not in metadata file (${metadataLines.length} lines):`, (0, util_1.shorten2)(vcfSamplesNotInMetadata.map(m => m).join(',')));
112
+ }
113
+ return metadataLines.filter(f => vcfSampleSet.has(f.name));
109
114
  }
110
115
  }
111
116
  freeResources() { }
@@ -6,6 +6,7 @@ export declare function getMultiVariantFeaturesAutorun(self: {
6
6
  adapterConfig: AnyConfigurationModel;
7
7
  sources?: Source[];
8
8
  minorAlleleFrequencyFilter: number;
9
+ lengthCutoffFilter: number;
9
10
  statsReadyAndRegionNotTooLarge: boolean;
10
11
  adapterProps: () => Record<string, unknown>;
11
12
  setError: (error: unknown) => void;
@@ -13,4 +14,5 @@ export declare function getMultiVariantFeaturesAutorun(self: {
13
14
  setMessage: (str: string) => void;
14
15
  setHasPhased: (arg: boolean) => void;
15
16
  setSampleInfo: (arg: Record<string, SampleInfo>) => void;
17
+ setSimplifiedFeaturesLoading: (arg: string) => void;
16
18
  }): void;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getMultiVariantFeaturesAutorun = getMultiVariantFeaturesAutorun;
4
4
  const util_1 = require("@jbrowse/core/util");
5
5
  const aborting_1 = require("@jbrowse/core/util/aborting");
6
+ const stopToken_1 = require("@jbrowse/core/util/stopToken");
6
7
  const tracks_1 = require("@jbrowse/core/util/tracks");
7
8
  const mobx_1 = require("mobx");
8
9
  const mobx_state_tree_1 = require("mobx-state-tree");
@@ -13,16 +14,20 @@ function getMultiVariantFeaturesAutorun(self) {
13
14
  if (!view.initialized || !self.statsReadyAndRegionNotTooLarge) {
14
15
  return;
15
16
  }
17
+ const stopToken = (0, stopToken_1.createStopToken)();
18
+ self.setSimplifiedFeaturesLoading(stopToken);
16
19
  const { rpcManager } = (0, util_1.getSession)(self);
17
- const { sources, minorAlleleFrequencyFilter, adapterConfig } = self;
20
+ const { lengthCutoffFilter, sources, minorAlleleFrequencyFilter, adapterConfig, } = self;
18
21
  if (sources) {
19
22
  const sessionId = (0, tracks_1.getRpcSessionId)(self);
20
23
  const { sampleInfo, hasPhased, features } = (await rpcManager.call(sessionId, 'MultiVariantGetSimplifiedFeatures', {
21
24
  regions: view.dynamicBlocks.contentBlocks,
22
25
  sources,
23
26
  minorAlleleFrequencyFilter,
27
+ lengthCutoffFilter,
24
28
  sessionId,
25
29
  adapterConfig,
30
+ stopToken,
26
31
  }));
27
32
  if ((0, mobx_state_tree_1.isAlive)(self)) {
28
33
  self.setHasPhased(hasPhased);
@@ -37,5 +42,7 @@ function getMultiVariantFeaturesAutorun(self) {
37
42
  (0, util_1.getSession)(self).notifyError(`${e}`, e);
38
43
  }
39
44
  }
40
- }, { delay: 1000 }));
45
+ }, {
46
+ delay: 1000,
47
+ }));
41
48
  }
@@ -16,12 +16,13 @@ function getMultiVariantSourcesAutorun(self) {
16
16
  }
17
17
  const { rpcManager } = (0, util_1.getSession)(self);
18
18
  const { adapterConfig } = self;
19
- const token = (0, stopToken_1.createStopToken)();
20
- self.setSourcesLoading(token);
19
+ const stopToken = (0, stopToken_1.createStopToken)();
20
+ self.setSourcesLoading(stopToken);
21
21
  const sessionId = (0, tracks_1.getRpcSessionId)(self);
22
22
  const sources = (await rpcManager.call(sessionId, 'MultiVariantGetSources', {
23
23
  sessionId,
24
24
  adapterConfig,
25
+ stopToken,
25
26
  }));
26
27
  if ((0, mobx_state_tree_1.isAlive)(self)) {
27
28
  self.setSources(sources);
@@ -1,4 +1,4 @@
1
- import type { SampleInfo, Source } from '../shared/types';
1
+ import type { SampleInfo, Source } from './types';
2
2
  import type { AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
3
3
  import type { Feature } from '@jbrowse/core/util';
4
4
  import type { Instance } from 'mobx-state-tree';
@@ -90,6 +90,9 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
90
90
  renderingMode: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
91
91
  rowHeightSetting: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<number>, [undefined]>;
92
92
  autoHeight: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
93
+ lengthCutoffFilter: import("mobx-state-tree").IType<number | undefined, number, number>;
94
+ jexlFilters: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IArrayType<import("mobx-state-tree").ISimpleType<string>>>;
95
+ referenceDrawingMode: import("mobx-state-tree").IType<string | undefined, string, string>;
93
96
  }, {
94
97
  rendererTypeName: string;
95
98
  error: unknown;
@@ -233,19 +236,28 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
233
236
  renderProps(): any;
234
237
  } & {
235
238
  sourcesLoadingStopToken: string | undefined;
239
+ simplifiedFeaturesStopToken: string | undefined;
236
240
  featureUnderMouseVolatile: Feature | undefined;
237
241
  sourcesVolatile: Source[] | undefined;
238
242
  featuresVolatile: Feature[] | undefined;
239
243
  hasPhased: boolean;
240
244
  sampleInfo: undefined | Record<string, SampleInfo>;
241
- hoveredGenotype: string | undefined;
245
+ hoveredGenotype: {
246
+ genotype: string;
247
+ name: string;
248
+ } | undefined;
242
249
  } & {
250
+ setJexlFilters(f?: string[]): void;
243
251
  setRowHeight(arg: number): void;
244
- setHoveredGenotype(arg: string): void;
252
+ setHoveredGenotype(arg?: {
253
+ genotype: string;
254
+ name: string;
255
+ }): void;
245
256
  setFeatures(f: Feature[]): void;
246
257
  setLayout(layout: Source[]): void;
247
258
  clearLayout(): void;
248
259
  setSourcesLoading(str: string): void;
260
+ setSimplifiedFeaturesLoading(str: string): void;
249
261
  setSources(sources: Source[]): void;
250
262
  setMafFilter(arg: number): void;
251
263
  setShowSidebarLabels(arg: boolean): void;
@@ -253,7 +265,9 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
253
265
  setAutoHeight(arg: boolean): void;
254
266
  setHasPhased(arg: boolean): void;
255
267
  setSampleInfo(arg: Record<string, SampleInfo>): void;
268
+ setReferenceDrawingMode(arg: string): void;
256
269
  } & {
270
+ readonly activeFilters: any;
257
271
  readonly preSources: Source[] | undefined;
258
272
  readonly sourcesWithoutLayout: {
259
273
  label: string;
@@ -274,6 +288,17 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
274
288
  HP?: number;
275
289
  }[] | undefined;
276
290
  } & {
291
+ readonly sourceMap: {
292
+ [k: string]: {
293
+ label: string;
294
+ id: string;
295
+ baseUri?: string;
296
+ name: string;
297
+ color?: string;
298
+ group?: string;
299
+ HP?: number;
300
+ };
301
+ } | undefined;
277
302
  readonly rowHeight: number;
278
303
  adapterProps(): any;
279
304
  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 | {
@@ -327,6 +352,18 @@ export default function MultiVariantBaseModelF(configSchema: AnyConfigurationSch
327
352
  type?: undefined;
328
353
  checked?: undefined;
329
354
  onClick?: undefined;
355
+ } | {
356
+ label: string;
357
+ type: string;
358
+ subMenu: {
359
+ label: string;
360
+ type: string;
361
+ checked: boolean;
362
+ onClick: () => void;
363
+ }[];
364
+ icon?: undefined;
365
+ checked?: undefined;
366
+ onClick?: undefined;
330
367
  } | {
331
368
  label: string;
332
369
  icon: import("@mui/material/OverridableComponent").OverridableComponent<import("@mui/material").SvgIconTypeMap<{}, "svg">> & {