@jbrowse/plugin-variants 2.18.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 (272) hide show
  1. package/dist/ChordVariantDisplay/models/stateModelFactory.d.ts +1 -1
  2. package/dist/LinearVariantDisplay/model.d.ts +5 -5
  3. package/dist/MultiLinearVariantDisplay/components/Crosshair.d.ts +7 -0
  4. package/dist/MultiLinearVariantDisplay/components/Crosshair.js +35 -0
  5. package/dist/MultiLinearVariantDisplay/components/VariantDisplayComponent.d.ts +1 -2
  6. package/dist/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +5 -49
  7. package/dist/MultiLinearVariantDisplay/index.js +18 -8
  8. package/dist/MultiLinearVariantDisplay/model.d.ts +113 -40
  9. package/dist/MultiLinearVariantDisplay/model.js +24 -176
  10. package/dist/MultiLinearVariantDisplay/renderSvg.d.ts +1 -2
  11. package/dist/MultiLinearVariantDisplay/renderSvg.js +2 -5
  12. package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +7 -0
  13. package/dist/MultiLinearVariantMatrixDisplay/components/Crosshair.js +28 -0
  14. package/dist/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.d.ts +1 -2
  15. package/dist/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +13 -16
  16. package/dist/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.d.ts +1 -2
  17. package/dist/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +6 -56
  18. package/dist/MultiLinearVariantMatrixDisplay/model.d.ts +109 -27
  19. package/dist/MultiLinearVariantMatrixDisplay/model.js +31 -136
  20. package/dist/MultiLinearVariantMatrixDisplay/renderSvg.d.ts +1 -2
  21. package/dist/MultiLinearVariantMatrixDisplay/renderSvg.js +3 -7
  22. package/dist/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.d.ts +4 -32
  23. package/dist/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.js +44 -63
  24. package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +3 -2
  25. package/dist/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +31 -5
  26. package/dist/MultiLinearVariantMatrixRenderer/index.js +2 -2
  27. package/dist/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +10 -0
  28. package/dist/MultiLinearVariantMatrixRenderer/makeImageData.js +100 -0
  29. package/dist/MultiLinearVariantMatrixRenderer/types.d.ts +15 -0
  30. package/dist/MultiLinearVariantMatrixRenderer/types.js +2 -0
  31. package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +4 -21
  32. package/dist/MultiLinearVariantRenderer/MultiVariantRenderer.js +38 -25
  33. package/dist/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +7 -3
  34. package/dist/MultiLinearVariantRenderer/MultiVariantRendering.js +36 -27
  35. package/dist/MultiLinearVariantRenderer/configSchema.d.ts +1 -33
  36. package/dist/MultiLinearVariantRenderer/configSchema.js +0 -5
  37. package/dist/MultiLinearVariantRenderer/makeImageData.d.ts +4 -0
  38. package/dist/MultiLinearVariantRenderer/makeImageData.js +67 -0
  39. package/dist/MultiLinearVariantRenderer/types.d.ts +19 -0
  40. package/dist/MultiLinearVariantRenderer/types.js +2 -0
  41. package/dist/MultiVariantBaseRenderer.d.ts +4 -4
  42. package/dist/StructuralVariantChordRenderer/Chord.d.ts +2 -19
  43. package/dist/StructuralVariantChordRenderer/Chord.js +3 -25
  44. package/dist/StructuralVariantChordRenderer/ReactComponent.d.ts +2 -3
  45. package/dist/StructuralVariantChordRenderer/ReactComponent.js +7 -29
  46. package/dist/StructuralVariantChordRenderer/types.d.ts +17 -0
  47. package/dist/StructuralVariantChordRenderer/types.js +2 -0
  48. package/dist/Tooltip.d.ts +2 -2
  49. package/dist/Tooltip.js +6 -32
  50. package/dist/VariantFeatureWidget/Checkbox2.d.ts +1 -2
  51. package/dist/VariantFeatureWidget/Checkbox2.js +2 -5
  52. package/dist/VariantFeatureWidget/LaunchBreakendPanel.d.ts +2 -3
  53. package/dist/VariantFeatureWidget/LaunchBreakendPanel.js +66 -69
  54. package/dist/VariantFeatureWidget/LaunchBreakendWidgetArea.d.ts +4 -0
  55. package/dist/VariantFeatureWidget/LaunchBreakendWidgetArea.js +60 -0
  56. package/dist/VariantFeatureWidget/VariantConsequenceDataGrid.d.ts +5 -0
  57. package/dist/VariantFeatureWidget/VariantConsequenceDataGrid.js +15 -0
  58. package/dist/VariantFeatureWidget/VariantConsequenceDataGridWrapper.d.ts +5 -0
  59. package/dist/VariantFeatureWidget/VariantConsequenceDataGridWrapper.js +20 -0
  60. package/dist/VariantFeatureWidget/VariantConsequencePanel.d.ts +5 -0
  61. package/dist/VariantFeatureWidget/VariantConsequencePanel.js +15 -0
  62. package/dist/VariantFeatureWidget/VariantFeatureWidget.d.ts +1 -2
  63. package/dist/VariantFeatureWidget/VariantFeatureWidget.js +47 -36
  64. package/dist/VariantFeatureWidget/VariantSampleFilters.d.ts +9 -0
  65. package/dist/VariantFeatureWidget/VariantSampleFilters.js +10 -0
  66. package/dist/VariantFeatureWidget/VariantSampleGrid.d.ts +9 -7
  67. package/dist/VariantFeatureWidget/VariantSampleGrid.js +14 -44
  68. package/dist/VariantFeatureWidget/index.js +17 -7
  69. package/dist/VariantFeatureWidget/types.d.ts +16 -0
  70. package/dist/VariantFeatureWidget/types.js +2 -0
  71. package/dist/VariantRPC/MultiVariantGetGenotypeMatrix.js +10 -27
  72. package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +12 -7
  73. package/dist/VariantRPC/MultiVariantGetSimplifiedFeatures.js +27 -37
  74. package/dist/VcfAdapter/VcfAdapter.d.ts +7 -0
  75. package/dist/VcfAdapter/VcfAdapter.js +29 -3
  76. package/dist/VcfAdapter/configSchema.d.ts +8 -0
  77. package/dist/VcfAdapter/configSchema.js +12 -1
  78. package/dist/VcfAdapter/index.js +17 -7
  79. package/dist/VcfFeature/index.js +2 -1
  80. package/dist/VcfFeature/util.js +3 -4
  81. package/dist/VcfTabixAdapter/VcfTabixAdapter.js +38 -12
  82. package/dist/VcfTabixAdapter/configSchema.d.ts +8 -0
  83. package/dist/VcfTabixAdapter/configSchema.js +8 -0
  84. package/dist/VcfTabixAdapter/index.js +17 -7
  85. package/dist/extensionPoints.js +21 -33
  86. package/dist/getMultiVariantFeaturesAutorun.d.ts +4 -7
  87. package/dist/getMultiVariantFeaturesAutorun.js +16 -15
  88. package/dist/getMultiVariantSourcesAutorun.d.ts +1 -6
  89. package/dist/shared/BulkEditPanel.d.ts +4 -5
  90. package/dist/shared/BulkEditPanel.js +69 -88
  91. package/dist/shared/ClusterDialog.d.ts +4 -5
  92. package/dist/shared/ClusterDialog.js +45 -86
  93. package/dist/shared/ColorLegend.d.ts +2 -3
  94. package/dist/shared/ColorLegend.js +8 -10
  95. package/dist/shared/HelpfulTips.d.ts +1 -0
  96. package/dist/shared/HelpfulTips.js +7 -0
  97. package/dist/shared/LegendBar.d.ts +3 -3
  98. package/dist/shared/LegendBar.js +6 -12
  99. package/dist/shared/MAFFilterDialog.d.ts +2 -3
  100. package/dist/shared/MAFFilterDialog.js +14 -42
  101. package/dist/shared/MultiVariantBaseModel.d.ts +341 -0
  102. package/dist/shared/MultiVariantBaseModel.js +316 -0
  103. package/dist/shared/MultiVariantTooltip.d.ts +6 -0
  104. package/dist/shared/MultiVariantTooltip.js +23 -0
  105. package/dist/shared/RectBg.d.ts +2 -3
  106. package/dist/shared/RectBg.js +3 -7
  107. package/dist/shared/RowPalettizer.d.ts +2 -3
  108. package/dist/shared/RowPalettizer.js +30 -28
  109. package/dist/shared/SetColorDialog.d.ts +2 -3
  110. package/dist/shared/SetColorDialog.js +26 -65
  111. package/dist/shared/SetMinMaxDialog.d.ts +1 -2
  112. package/dist/shared/SetMinMaxDialog.js +11 -41
  113. package/dist/shared/SetRowHeightDialog.d.ts +8 -0
  114. package/dist/shared/SetRowHeightDialog.js +18 -0
  115. package/dist/shared/SharedVariantMixin.d.ts +7 -7
  116. package/dist/shared/SourcesDataGrid.d.ts +6 -0
  117. package/dist/shared/SourcesDataGrid.js +68 -0
  118. package/dist/shared/SourcesGrid.d.ts +2 -3
  119. package/dist/shared/SourcesGrid.js +5 -134
  120. package/dist/shared/SourcesGridHeader.d.ts +7 -0
  121. package/dist/shared/SourcesGridHeader.js +41 -0
  122. package/dist/shared/multiVariantColor.d.ts +3 -0
  123. package/dist/shared/multiVariantColor.js +50 -0
  124. package/dist/types.d.ts +14 -0
  125. package/dist/types.js +2 -0
  126. package/dist/util.d.ts +6 -9
  127. package/dist/util.js +47 -14
  128. package/esm/ChordVariantDisplay/models/stateModelFactory.d.ts +1 -1
  129. package/esm/LinearVariantDisplay/model.d.ts +5 -5
  130. package/esm/MultiLinearVariantDisplay/components/Crosshair.d.ts +7 -0
  131. package/esm/MultiLinearVariantDisplay/components/Crosshair.js +30 -0
  132. package/esm/MultiLinearVariantDisplay/components/VariantDisplayComponent.d.ts +1 -2
  133. package/esm/MultiLinearVariantDisplay/components/VariantDisplayComponent.js +5 -26
  134. package/esm/MultiLinearVariantDisplay/index.js +1 -1
  135. package/esm/MultiLinearVariantDisplay/model.d.ts +113 -40
  136. package/esm/MultiLinearVariantDisplay/model.js +7 -169
  137. package/esm/MultiLinearVariantDisplay/renderSvg.d.ts +1 -2
  138. package/esm/MultiLinearVariantDisplay/renderSvg.js +2 -5
  139. package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.d.ts +7 -0
  140. package/esm/MultiLinearVariantMatrixDisplay/components/Crosshair.js +23 -0
  141. package/esm/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.d.ts +1 -2
  142. package/esm/MultiLinearVariantMatrixDisplay/components/LinesConnectingMatrixToGenomicPosition.js +13 -13
  143. package/esm/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.d.ts +1 -2
  144. package/esm/MultiLinearVariantMatrixDisplay/components/VariantDisplayComponent.js +6 -33
  145. package/esm/MultiLinearVariantMatrixDisplay/model.d.ts +109 -27
  146. package/esm/MultiLinearVariantMatrixDisplay/model.js +14 -129
  147. package/esm/MultiLinearVariantMatrixDisplay/renderSvg.d.ts +1 -2
  148. package/esm/MultiLinearVariantMatrixDisplay/renderSvg.js +3 -7
  149. package/esm/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.d.ts +4 -32
  150. package/esm/MultiLinearVariantMatrixRenderer/LinearVariantMatrixRenderer.js +11 -63
  151. package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.d.ts +3 -2
  152. package/esm/MultiLinearVariantMatrixRenderer/components/LinearVariantMatrixRendering.js +31 -2
  153. package/esm/MultiLinearVariantMatrixRenderer/index.js +1 -1
  154. package/esm/MultiLinearVariantMatrixRenderer/makeImageData.d.ts +10 -0
  155. package/esm/MultiLinearVariantMatrixRenderer/makeImageData.js +97 -0
  156. package/esm/MultiLinearVariantMatrixRenderer/types.d.ts +15 -0
  157. package/esm/MultiLinearVariantMatrixRenderer/types.js +1 -0
  158. package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.d.ts +4 -21
  159. package/esm/MultiLinearVariantRenderer/MultiVariantRenderer.js +6 -26
  160. package/esm/MultiLinearVariantRenderer/MultiVariantRendering.d.ts +7 -3
  161. package/esm/MultiLinearVariantRenderer/MultiVariantRendering.js +34 -5
  162. package/esm/MultiLinearVariantRenderer/configSchema.d.ts +1 -33
  163. package/esm/MultiLinearVariantRenderer/configSchema.js +0 -2
  164. package/esm/MultiLinearVariantRenderer/makeImageData.d.ts +4 -0
  165. package/esm/MultiLinearVariantRenderer/makeImageData.js +61 -0
  166. package/esm/MultiLinearVariantRenderer/types.d.ts +19 -0
  167. package/esm/MultiLinearVariantRenderer/types.js +1 -0
  168. package/esm/MultiVariantBaseRenderer.d.ts +4 -4
  169. package/esm/StructuralVariantChordRenderer/Chord.d.ts +2 -19
  170. package/esm/StructuralVariantChordRenderer/Chord.js +3 -2
  171. package/esm/StructuralVariantChordRenderer/ReactComponent.d.ts +2 -3
  172. package/esm/StructuralVariantChordRenderer/ReactComponent.js +7 -6
  173. package/esm/StructuralVariantChordRenderer/types.d.ts +17 -0
  174. package/esm/StructuralVariantChordRenderer/types.js +1 -0
  175. package/esm/Tooltip.d.ts +2 -2
  176. package/esm/Tooltip.js +6 -9
  177. package/esm/VariantFeatureWidget/Checkbox2.d.ts +1 -2
  178. package/esm/VariantFeatureWidget/Checkbox2.js +2 -2
  179. package/esm/VariantFeatureWidget/LaunchBreakendPanel.d.ts +2 -3
  180. package/esm/VariantFeatureWidget/LaunchBreakendPanel.js +48 -61
  181. package/esm/VariantFeatureWidget/LaunchBreakendWidgetArea.d.ts +4 -0
  182. package/esm/VariantFeatureWidget/LaunchBreakendWidgetArea.js +24 -0
  183. package/esm/VariantFeatureWidget/VariantConsequenceDataGrid.d.ts +5 -0
  184. package/esm/VariantFeatureWidget/VariantConsequenceDataGrid.js +9 -0
  185. package/esm/VariantFeatureWidget/VariantConsequenceDataGridWrapper.d.ts +5 -0
  186. package/esm/VariantFeatureWidget/VariantConsequenceDataGridWrapper.js +17 -0
  187. package/esm/VariantFeatureWidget/VariantConsequencePanel.d.ts +5 -0
  188. package/esm/VariantFeatureWidget/VariantConsequencePanel.js +9 -0
  189. package/esm/VariantFeatureWidget/VariantFeatureWidget.d.ts +1 -2
  190. package/esm/VariantFeatureWidget/VariantFeatureWidget.js +30 -29
  191. package/esm/VariantFeatureWidget/VariantSampleFilters.d.ts +9 -0
  192. package/esm/VariantFeatureWidget/VariantSampleFilters.js +7 -0
  193. package/esm/VariantFeatureWidget/VariantSampleGrid.d.ts +9 -7
  194. package/esm/VariantFeatureWidget/VariantSampleGrid.js +15 -22
  195. package/esm/VariantFeatureWidget/types.d.ts +16 -0
  196. package/esm/VariantFeatureWidget/types.js +1 -0
  197. package/esm/VariantRPC/MultiVariantGetGenotypeMatrix.js +10 -27
  198. package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.d.ts +12 -7
  199. package/esm/VariantRPC/MultiVariantGetSimplifiedFeatures.js +27 -37
  200. package/esm/VcfAdapter/VcfAdapter.d.ts +7 -0
  201. package/esm/VcfAdapter/VcfAdapter.js +31 -5
  202. package/esm/VcfAdapter/configSchema.d.ts +8 -0
  203. package/esm/VcfAdapter/configSchema.js +12 -1
  204. package/esm/VcfFeature/index.js +2 -1
  205. package/esm/VcfFeature/util.js +3 -4
  206. package/esm/VcfTabixAdapter/VcfTabixAdapter.js +38 -12
  207. package/esm/VcfTabixAdapter/configSchema.d.ts +8 -0
  208. package/esm/VcfTabixAdapter/configSchema.js +8 -0
  209. package/esm/extensionPoints.js +21 -33
  210. package/esm/getMultiVariantFeaturesAutorun.d.ts +4 -7
  211. package/esm/getMultiVariantFeaturesAutorun.js +16 -15
  212. package/esm/getMultiVariantSourcesAutorun.d.ts +1 -6
  213. package/esm/shared/BulkEditPanel.d.ts +4 -5
  214. package/esm/shared/BulkEditPanel.js +70 -66
  215. package/esm/shared/ClusterDialog.d.ts +4 -5
  216. package/esm/shared/ClusterDialog.js +44 -62
  217. package/esm/shared/ColorLegend.d.ts +2 -3
  218. package/esm/shared/ColorLegend.js +8 -10
  219. package/esm/shared/HelpfulTips.d.ts +1 -0
  220. package/esm/shared/HelpfulTips.js +4 -0
  221. package/esm/shared/LegendBar.d.ts +3 -3
  222. package/esm/shared/LegendBar.js +7 -13
  223. package/esm/shared/MAFFilterDialog.d.ts +2 -3
  224. package/esm/shared/MAFFilterDialog.js +14 -19
  225. package/esm/shared/MultiVariantBaseModel.d.ts +341 -0
  226. package/esm/shared/MultiVariantBaseModel.js +277 -0
  227. package/esm/shared/MultiVariantTooltip.d.ts +6 -0
  228. package/esm/shared/MultiVariantTooltip.js +17 -0
  229. package/esm/shared/RectBg.d.ts +2 -3
  230. package/esm/shared/RectBg.js +3 -4
  231. package/esm/shared/RowPalettizer.d.ts +2 -3
  232. package/esm/shared/RowPalettizer.js +30 -25
  233. package/esm/shared/SetColorDialog.d.ts +2 -3
  234. package/esm/shared/SetColorDialog.js +26 -42
  235. package/esm/shared/SetMinMaxDialog.d.ts +1 -2
  236. package/esm/shared/SetMinMaxDialog.js +11 -18
  237. package/esm/shared/SetRowHeightDialog.d.ts +8 -0
  238. package/esm/shared/SetRowHeightDialog.js +15 -0
  239. package/esm/shared/SharedVariantMixin.d.ts +7 -7
  240. package/esm/shared/SourcesDataGrid.d.ts +6 -0
  241. package/esm/shared/SourcesDataGrid.js +62 -0
  242. package/esm/shared/SourcesGrid.d.ts +2 -3
  243. package/esm/shared/SourcesGrid.js +5 -111
  244. package/esm/shared/SourcesGridHeader.d.ts +7 -0
  245. package/esm/shared/SourcesGridHeader.js +35 -0
  246. package/esm/shared/multiVariantColor.d.ts +3 -0
  247. package/esm/shared/multiVariantColor.js +45 -0
  248. package/esm/types.d.ts +14 -0
  249. package/esm/types.js +1 -0
  250. package/esm/util.d.ts +6 -9
  251. package/esm/util.js +43 -13
  252. package/package.json +6 -7
  253. package/dist/VariantFeatureWidget/AnnotGrid.d.ts +0 -6
  254. package/dist/VariantFeatureWidget/AnnotGrid.js +0 -39
  255. package/dist/VariantFeatureWidget/VariantAnnotationTable.d.ts +0 -6
  256. package/dist/VariantFeatureWidget/VariantAnnotationTable.js +0 -16
  257. package/dist/configSchema.d.ts +0 -34
  258. package/dist/configSchema.js +0 -44
  259. package/dist/shared/DraggableDialog.d.ts +0 -6
  260. package/dist/shared/DraggableDialog.js +0 -62
  261. package/dist/shared/Tooltip.d.ts +0 -18
  262. package/dist/shared/Tooltip.js +0 -38
  263. package/esm/VariantFeatureWidget/AnnotGrid.d.ts +0 -6
  264. package/esm/VariantFeatureWidget/AnnotGrid.js +0 -13
  265. package/esm/VariantFeatureWidget/VariantAnnotationTable.d.ts +0 -6
  266. package/esm/VariantFeatureWidget/VariantAnnotationTable.js +0 -10
  267. package/esm/configSchema.d.ts +0 -34
  268. package/esm/configSchema.js +0 -42
  269. package/esm/shared/DraggableDialog.d.ts +0 -6
  270. package/esm/shared/DraggableDialog.js +0 -34
  271. package/esm/shared/Tooltip.d.ts +0 -18
  272. package/esm/shared/Tooltip.js +0 -33
@@ -15,198 +15,44 @@ 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
  };
28
38
  Object.defineProperty(exports, "__esModule", { value: true });
29
39
  exports.stateModelFactory = stateModelFactory;
30
- const react_1 = require("react");
31
- const colors_1 = require("@jbrowse/core/ui/colors");
32
40
  const util_1 = require("@jbrowse/core/util");
33
- const stopToken_1 = require("@jbrowse/core/util/stopToken");
34
- const plugin_linear_genome_view_1 = require("@jbrowse/plugin-linear-genome-view");
35
- const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
36
41
  const mobx_state_tree_1 = require("mobx-state-tree");
37
- const util_2 = require("../util");
38
- const Tooltip = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('../shared/Tooltip'))));
39
- const SetColorDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('../shared/SetColorDialog'))));
40
- const ClusterDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('../shared/ClusterDialog'))));
41
- function stateModelFactory(pluginManager, configSchema) {
42
+ const MultiVariantBaseModel_1 = __importDefault(require("../shared/MultiVariantBaseModel"));
43
+ function stateModelFactory(configSchema) {
42
44
  return mobx_state_tree_1.types
43
- .compose('MultiLinearVariantDisplay', (0, plugin_linear_genome_view_1.linearBareDisplayStateModelFactory)(configSchema), mobx_state_tree_1.types.model({
45
+ .compose('MultiLinearVariantDisplay', (0, MultiVariantBaseModel_1.default)(configSchema), mobx_state_tree_1.types.model({
44
46
  type: mobx_state_tree_1.types.literal('MultiLinearVariantDisplay'),
45
- layout: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.frozen(), []),
46
47
  rowHeightSetting: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.number, 11),
48
+ minorAlleleFrequencyFilter: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.number, 0),
47
49
  autoHeight: false,
48
- showSidebarLabelsSetting: true,
49
- }))
50
- .volatile(() => ({
51
- sourcesLoadingStopToken: undefined,
52
- featureUnderMouseVolatile: undefined,
53
- sourcesVolatile: undefined,
54
- }))
55
- .actions(self => ({
56
- setSourcesLoading(str) {
57
- if (self.sourcesLoadingStopToken) {
58
- (0, stopToken_1.stopStopToken)(self.sourcesLoadingStopToken);
59
- }
60
- self.sourcesLoadingStopToken = str;
61
- },
62
- setLayout(layout) {
63
- self.layout = layout;
64
- },
65
- clearLayout() {
66
- self.layout = [];
67
- },
68
- setSources(sources) {
69
- if (!(0, fast_deep_equal_1.default)(sources, self.sourcesVolatile)) {
70
- self.sourcesVolatile = sources;
71
- }
72
- },
73
- setFeatureUnderMouse(f) {
74
- self.featureUnderMouseVolatile = f;
75
- },
76
- setRowHeight(arg) {
77
- self.rowHeightSetting = arg;
78
- },
79
- setAutoHeight(arg) {
80
- self.autoHeight = arg;
81
- },
82
- setShowSidebarLabels(arg) {
83
- self.showSidebarLabelsSetting = arg;
84
- },
85
- }))
86
- .views(self => ({
87
- get featureUnderMouse() {
88
- return self.featureUnderMouseVolatile;
89
- },
90
- get TooltipComponent() {
91
- return Tooltip;
92
- },
93
50
  }))
94
- .views(self => ({
51
+ .views(() => ({
95
52
  get rendererTypeName() {
96
53
  return 'MultiVariantRenderer';
97
54
  },
98
- get sources() {
99
- var _a;
100
- const sources = Object.fromEntries(((_a = self.sourcesVolatile) === null || _a === void 0 ? void 0 : _a.map(s => [s.name, s])) || []);
101
- const iter = self.layout.length ? self.layout : self.sourcesVolatile;
102
- return iter === null || iter === void 0 ? void 0 : iter.map(s => ({
103
- ...sources[s.name],
104
- ...s,
105
- })).map((s, i) => ({
106
- ...s,
107
- color: s.color || colors_1.set1[i] || (0, util_2.randomColor)(s.name),
108
- }));
109
- },
110
- }))
111
- .views(self => ({
112
- get rowHeight() {
113
- const { autoHeight, sources, rowHeightSetting, height } = self;
114
- return autoHeight ? height / ((sources === null || sources === void 0 ? void 0 : sources.length) || 1) : rowHeightSetting;
115
- },
116
- }))
117
- .views(self => {
118
- const { renderProps: superRenderProps } = self;
119
- return {
120
- get canDisplayLabels() {
121
- return self.rowHeight > 8 && self.showSidebarLabelsSetting;
122
- },
123
- get totalHeight() {
124
- var _a;
125
- return self.rowHeight * (((_a = self.sources) === null || _a === void 0 ? void 0 : _a.length) || 1);
126
- },
127
- adapterProps() {
128
- const superProps = superRenderProps();
129
- return {
130
- ...superProps,
131
- displayModel: self,
132
- config: self.rendererConfig,
133
- rpcDriverName: self.rpcDriverName,
134
- sources: self.sources,
135
- };
136
- },
137
- };
138
- })
139
- .views(self => ({
140
- renderProps() {
141
- const superProps = self.adapterProps();
142
- return {
143
- ...superProps,
144
- notReady: superProps.notReady || !self.sources,
145
- displayModel: self,
146
- rpcDriverName: self.rpcDriverName,
147
- height: self.height,
148
- totalHeight: self.totalHeight,
149
- rowHeight: self.rowHeight,
150
- scrollTop: self.scrollTop,
151
- onMouseMove: (_, f) => {
152
- self.setFeatureUnderMouse(f);
153
- },
154
- onMouseLeave: () => {
155
- self.setFeatureUnderMouse(undefined);
156
- },
157
- };
158
- },
159
55
  }))
160
- .views(self => {
161
- const { trackMenuItems: superTrackMenuItems } = self;
162
- return {
163
- trackMenuItems() {
164
- return [
165
- ...superTrackMenuItems(),
166
- {
167
- label: 'Adjust to height of display?',
168
- type: 'checkbox',
169
- checked: self.autoHeight,
170
- onClick: () => {
171
- self.setAutoHeight(!self.autoHeight);
172
- },
173
- },
174
- {
175
- label: 'Show sidebar labels',
176
- type: 'checkbox',
177
- checked: self.showSidebarLabelsSetting,
178
- onClick: () => {
179
- self.setShowSidebarLabels(!self.showSidebarLabelsSetting);
180
- },
181
- },
182
- {
183
- label: 'Cluster by genotype',
184
- onClick: () => {
185
- (0, util_1.getSession)(self).queueDialog(handleClose => [
186
- ClusterDialog,
187
- {
188
- model: self,
189
- handleClose,
190
- },
191
- ]);
192
- },
193
- },
194
- {
195
- label: 'Edit colors/arrangement...',
196
- onClick: () => {
197
- (0, util_1.getSession)(self).queueDialog(handleClose => [
198
- SetColorDialog,
199
- {
200
- model: self,
201
- handleClose,
202
- },
203
- ]);
204
- },
205
- },
206
- ];
207
- },
208
- };
209
- })
210
56
  .actions(self => {
211
57
  const { renderSvg: superRenderSvg } = self;
212
58
  return {
@@ -215,7 +61,9 @@ function stateModelFactory(pluginManager, configSchema) {
215
61
  (async () => {
216
62
  try {
217
63
  const { getMultiVariantSourcesAutorun } = await Promise.resolve().then(() => __importStar(require('../getMultiVariantSourcesAutorun')));
64
+ const { getMultiVariantFeaturesAutorun } = await Promise.resolve().then(() => __importStar(require('../getMultiVariantFeaturesAutorun')));
218
65
  getMultiVariantSourcesAutorun(self);
66
+ getMultiVariantFeaturesAutorun(self);
219
67
  }
220
68
  catch (e) {
221
69
  if ((0, mobx_state_tree_1.isAlive)(self)) {
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import type { MultiLinearVariantDisplayModel } from './model';
3
2
  import type { ExportSvgDisplayOptions } from '@jbrowse/plugin-linear-genome-view';
4
- export declare function renderSvg(self: MultiLinearVariantDisplayModel, opts: ExportSvgDisplayOptions, superRenderSvg: (opts: ExportSvgDisplayOptions) => Promise<React.ReactNode>): Promise<React.JSX.Element>;
3
+ export declare function renderSvg(self: MultiLinearVariantDisplayModel, opts: ExportSvgDisplayOptions, superRenderSvg: (opts: ExportSvgDisplayOptions) => Promise<React.ReactNode>): Promise<import("react/jsx-runtime").JSX.Element>;
@@ -4,15 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.renderSvg = renderSvg;
7
- const react_1 = __importDefault(require("react"));
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
8
  const util_1 = require("@jbrowse/core/util");
9
9
  const mobx_1 = require("mobx");
10
10
  const LegendBar_1 = __importDefault(require("../shared/LegendBar"));
11
11
  async function renderSvg(self, opts, superRenderSvg) {
12
12
  await (0, mobx_1.when)(() => !!self.regionCannotBeRenderedText);
13
13
  const { offsetPx } = (0, util_1.getContainingView)(self);
14
- return (react_1.default.createElement(react_1.default.Fragment, null,
15
- react_1.default.createElement("g", null, await superRenderSvg(opts)),
16
- react_1.default.createElement("g", { transform: `translate(${Math.max(-offsetPx, 0)})` },
17
- react_1.default.createElement(LegendBar_1.default, { model: self, orientation: "left", exportSVG: true }))));
14
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("g", { children: await superRenderSvg(opts) }), (0, jsx_runtime_1.jsx)("g", { transform: `translate(${Math.max(-offsetPx, 0)})`, children: (0, jsx_runtime_1.jsx)(LegendBar_1.default, { model: self, orientation: "left", exportSVG: true }) })] }));
18
15
  }
@@ -0,0 +1,7 @@
1
+ import type { MultiLinearVariantMatrixDisplayModel } from '../model';
2
+ declare const Crosshair: ({ mouseX, mouseY, model, }: {
3
+ mouseX: number;
4
+ mouseY: number;
5
+ model: MultiLinearVariantMatrixDisplayModel;
6
+ }) => import("react/jsx-runtime").JSX.Element | null;
7
+ export default Crosshair;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const util_1 = require("@jbrowse/core/util");
8
+ const mobx_react_1 = require("mobx-react");
9
+ const mui_1 = require("tss-react/mui");
10
+ const MultiVariantTooltip_1 = __importDefault(require("../../shared/MultiVariantTooltip"));
11
+ const useStyles = (0, mui_1.makeStyles)()({
12
+ cursor: {
13
+ pointerEvents: 'none',
14
+ zIndex: 1000,
15
+ position: 'relative',
16
+ },
17
+ });
18
+ const Crosshair = (0, mobx_react_1.observer)(function ({ mouseX, mouseY, model, }) {
19
+ const { classes } = useStyles();
20
+ const { hoveredGenotype, lineZoneHeight, totalHeight, rowHeight, sources } = model;
21
+ const { width } = (0, util_1.getContainingView)(model);
22
+ const source = sources === null || sources === void 0 ? void 0 : sources[Math.floor((mouseY - lineZoneHeight) / rowHeight)];
23
+ const yoff = mouseY - lineZoneHeight;
24
+ return source ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("svg", { className: classes.cursor, width: width, height: totalHeight, style: {
25
+ top: lineZoneHeight,
26
+ }, children: [(0, jsx_runtime_1.jsx)("line", { x1: 0, x2: width, y1: yoff, y2: yoff, stroke: "black" }), (0, jsx_runtime_1.jsx)("line", { x1: mouseX, x2: mouseX, y1: 0, y2: totalHeight, stroke: "black" })] }), (0, jsx_runtime_1.jsx)(MultiVariantTooltip_1.default, { source: { ...source, hoveredGenotype } })] })) : null;
27
+ });
28
+ exports.default = Crosshair;
@@ -1,7 +1,6 @@
1
- import React from 'react';
2
1
  import type { MultiLinearVariantMatrixDisplayModel } from '../model';
3
2
  declare const LinesConnectingMatrixToGenomicPosition: ({ model, exportSVG, }: {
4
3
  model: MultiLinearVariantMatrixDisplayModel;
5
4
  exportSVG?: boolean;
6
- }) => React.JSX.Element | null;
5
+ }) => import("react/jsx-runtime").JSX.Element | null;
7
6
  export default LinesConnectingMatrixToGenomicPosition;
@@ -1,42 +1,39 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const react_1 = __importDefault(require("react"));
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
4
  const util_1 = require("@jbrowse/core/util");
8
5
  const mobx_react_1 = require("mobx-react");
9
6
  const Wrapper = (0, mobx_react_1.observer)(function ({ children, model, exportSVG, }) {
10
7
  const { height } = model;
11
8
  const { width, offsetPx } = (0, util_1.getContainingView)(model);
12
9
  const left = Math.max(0, -offsetPx);
13
- return exportSVG ? (react_1.default.createElement("g", { transform: `translate(${left})` }, children)) : (react_1.default.createElement("svg", { style: {
10
+ return exportSVG ? ((0, jsx_runtime_1.jsx)("g", { transform: `translate(${left})`, children: children })) : ((0, jsx_runtime_1.jsx)("svg", { style: {
14
11
  position: 'absolute',
15
12
  top: 0,
16
13
  left,
17
14
  pointerEvents: 'none',
18
15
  height,
19
16
  width,
20
- } }, children));
17
+ }, children: children }));
21
18
  });
22
19
  const LinesConnectingMatrixToGenomicPosition = (0, mobx_react_1.observer)(function ({ model, exportSVG, }) {
23
20
  var _a;
24
21
  const { assemblyManager } = (0, util_1.getSession)(model);
25
22
  const view = (0, util_1.getContainingView)(model);
26
- const { featuresVolatile } = model;
23
+ const { lineZoneHeight, featuresVolatile } = model;
27
24
  const { offsetPx, assemblyNames, dynamicBlocks } = view;
28
25
  const assembly = assemblyManager.get(assemblyNames[0]);
29
26
  const b0 = ((_a = dynamicBlocks.contentBlocks[0]) === null || _a === void 0 ? void 0 : _a.widthPx) || 0;
30
27
  const w = b0 / ((featuresVolatile === null || featuresVolatile === void 0 ? void 0 : featuresVolatile.length) || 1);
31
28
  const l = Math.max(offsetPx, 0);
32
- return assembly && featuresVolatile ? (react_1.default.createElement(Wrapper, { exportSVG: exportSVG, model: model }, featuresVolatile.map((f, i) => {
33
- var _a;
34
- const ref = f.get('refName');
35
- const c = (((_a = view.bpToPx({
36
- refName: assembly.getCanonicalRefName(ref) || ref,
37
- coord: f.get('start'),
38
- })) === null || _a === void 0 ? void 0 : _a.offsetPx) || 0) - l;
39
- return (react_1.default.createElement("line", { stroke: "black", key: f.id(), x1: i * w + w / 2, x2: c, y1: 20, y2: 0 }));
40
- }))) : null;
29
+ return assembly && featuresVolatile ? ((0, jsx_runtime_1.jsx)(Wrapper, { exportSVG: exportSVG, model: model, children: featuresVolatile.map((f, i) => {
30
+ var _a;
31
+ const ref = f.get('refName');
32
+ const c = (((_a = view.bpToPx({
33
+ refName: assembly.getCanonicalRefName(ref) || ref,
34
+ coord: f.get('start'),
35
+ })) === null || _a === void 0 ? void 0 : _a.offsetPx) || 0) - l;
36
+ return ((0, jsx_runtime_1.jsx)("line", { stroke: "#0004", x1: i * w + w / 2, x2: c, y1: lineZoneHeight, y2: 0 }, f.id()));
37
+ }) })) : null;
41
38
  });
42
39
  exports.default = LinesConnectingMatrixToGenomicPosition;
@@ -1,6 +1,5 @@
1
- import React from 'react';
2
1
  import type { MultiLinearVariantMatrixDisplayModel } from '../model';
3
2
  declare const MultiLinearVariantMatrixDisplayComponent: (props: {
4
3
  model: MultiLinearVariantMatrixDisplayModel;
5
- }) => React.JSX.Element;
4
+ }) => import("react/jsx-runtime").JSX.Element;
6
5
  export default MultiLinearVariantMatrixDisplayComponent;
@@ -1,56 +1,22 @@
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
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
4
  };
28
5
  Object.defineProperty(exports, "__esModule", { value: true });
29
- const react_1 = __importStar(require("react"));
30
- const ui_1 = require("@jbrowse/core/ui");
31
- const BaseTooltip_1 = __importDefault(require("@jbrowse/core/ui/BaseTooltip"));
32
- const util_1 = require("@jbrowse/core/util");
6
+ const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const react_1 = require("react");
33
8
  const plugin_linear_genome_view_1 = require("@jbrowse/plugin-linear-genome-view");
34
9
  const mobx_react_1 = require("mobx-react");
35
- const mui_1 = require("tss-react/mui");
10
+ const Crosshair_1 = __importDefault(require("./Crosshair"));
36
11
  const LinesConnectingMatrixToGenomicPosition_1 = __importDefault(require("./LinesConnectingMatrixToGenomicPosition"));
37
12
  const LegendBar_1 = __importDefault(require("../../shared/LegendBar"));
38
- const useStyles = (0, mui_1.makeStyles)()({
39
- cursor: {
40
- pointerEvents: 'none',
41
- zIndex: 1000,
42
- position: 'relative',
43
- },
44
- });
45
13
  const MultiLinearVariantMatrixDisplayComponent = (0, mobx_react_1.observer)(function (props) {
46
- const { classes } = useStyles();
47
14
  const { model } = props;
48
- const { height, sources, rowHeight } = model;
15
+ const { lineZoneHeight } = model;
49
16
  const ref = (0, react_1.useRef)(null);
50
17
  const [mouseY, setMouseY] = (0, react_1.useState)();
51
18
  const [mouseX, setMouseX] = (0, react_1.useState)();
52
- const { width } = (0, util_1.getContainingView)(model);
53
- return (react_1.default.createElement("div", { ref: ref, onMouseMove: event => {
19
+ return ((0, jsx_runtime_1.jsxs)("div", { ref: ref, onMouseMove: event => {
54
20
  var _a;
55
21
  const rect = (_a = ref.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
56
22
  const top = (rect === null || rect === void 0 ? void 0 : rect.top) || 0;
@@ -60,22 +26,6 @@ const MultiLinearVariantMatrixDisplayComponent = (0, mobx_react_1.observer)(func
60
26
  }, onMouseLeave: () => {
61
27
  setMouseY(undefined);
62
28
  setMouseX(undefined);
63
- } },
64
- react_1.default.createElement("div", { style: { position: 'relative' } },
65
- react_1.default.createElement(LinesConnectingMatrixToGenomicPosition_1.default, { model: model }),
66
- react_1.default.createElement("div", { style: { position: 'absolute', top: 20 } },
67
- react_1.default.createElement(LegendBar_1.default, { model: model }),
68
- react_1.default.createElement(plugin_linear_genome_view_1.BaseLinearDisplayComponent, { ...props }))),
69
- mouseY &&
70
- mouseY > 20 &&
71
- (sources === null || sources === void 0 ? void 0 : sources[Math.floor((mouseY - 20) / rowHeight)]) ? (react_1.default.createElement(react_1.default.Fragment, null,
72
- react_1.default.createElement("svg", { className: classes.cursor, width: width, height: height },
73
- react_1.default.createElement("line", { x1: 0, x2: width, y1: mouseY, y2: mouseY, stroke: "black" }),
74
- react_1.default.createElement("line", { x1: mouseX, x2: mouseX, y1: 0, y2: height, stroke: "black" })),
75
- react_1.default.createElement(BaseTooltip_1.default, null,
76
- react_1.default.createElement(ui_1.SanitizedHTML, { html: Object.entries(sources[Math.floor((mouseY - 20) / rowHeight)] || {})
77
- .filter(([key]) => key !== 'color')
78
- .map(([key, value]) => `${key}:${value}`)
79
- .join('\n') })))) : null));
29
+ }, children: [(0, jsx_runtime_1.jsxs)("div", { style: { position: 'relative' }, children: [(0, jsx_runtime_1.jsx)(LinesConnectingMatrixToGenomicPosition_1.default, { model: model }), (0, jsx_runtime_1.jsxs)("div", { style: { position: 'absolute', top: lineZoneHeight }, children: [(0, jsx_runtime_1.jsx)(LegendBar_1.default, { model: model }), (0, jsx_runtime_1.jsx)(plugin_linear_genome_view_1.BaseLinearDisplayComponent, { ...props })] })] }), mouseX && mouseY && mouseY > lineZoneHeight ? ((0, jsx_runtime_1.jsx)(Crosshair_1.default, { mouseX: mouseX, mouseY: mouseY, model: model })) : null] }));
80
30
  });
81
31
  exports.default = MultiLinearVariantMatrixDisplayComponent;