@jbrowse/plugin-dotplot-view 3.7.0 → 4.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 (224) hide show
  1. package/esm/ComparativeRenderer/index.d.ts +10 -10
  2. package/esm/ComparativeRenderer/index.js +4 -17
  3. package/esm/DiagonalizeDotplotRpc.js +9 -12
  4. package/esm/DotplotDisplay/components/DotplotDisplay.d.ts +1 -1
  5. package/esm/DotplotDisplay/index.d.ts +3 -3
  6. package/esm/DotplotDisplay/index.js +4 -4
  7. package/esm/DotplotDisplay/renderDotplotBlock.d.ts +2 -1
  8. package/esm/DotplotDisplay/renderDotplotBlock.js +6 -4
  9. package/esm/DotplotDisplay/stateModelFactory.d.ts +143 -30
  10. package/esm/DotplotDisplay/stateModelFactory.js +5 -14
  11. package/esm/DotplotReadVsRef/DotplotReadVsRef.js +5 -6
  12. package/esm/DotplotReadVsRef/index.js +1 -1
  13. package/esm/DotplotRenderer/DotplotRenderer.d.ts +30 -39
  14. package/esm/DotplotRenderer/DotplotRenderer.js +55 -22
  15. package/esm/DotplotRenderer/components/DotplotRendering.d.ts +1 -1
  16. package/esm/DotplotRenderer/components/DotplotRendering.js +1 -1
  17. package/esm/DotplotRenderer/configSchema.d.ts +3 -3
  18. package/esm/DotplotRenderer/configSchema.js +1 -1
  19. package/esm/DotplotRenderer/drawDotplot.d.ts +3 -3
  20. package/esm/DotplotRenderer/drawDotplot.js +5 -6
  21. package/esm/DotplotRenderer/index.js +4 -4
  22. package/esm/DotplotView/1dview.d.ts +25 -25
  23. package/esm/DotplotView/1dview.js +13 -3
  24. package/esm/DotplotView/components/Axes.d.ts +1 -1
  25. package/esm/DotplotView/components/Axes.js +31 -41
  26. package/esm/DotplotView/components/ColorBySelector.d.ts +1 -1
  27. package/esm/DotplotView/components/ColorBySelector.js +3 -4
  28. package/esm/DotplotView/components/DiagonalizationProgressDialog.d.ts +1 -1
  29. package/esm/DotplotView/components/DiagonalizationProgressDialog.js +1 -1
  30. package/esm/DotplotView/components/DotplotControls.d.ts +1 -1
  31. package/esm/DotplotView/components/DotplotControls.js +7 -8
  32. package/esm/DotplotView/components/DotplotGrid.d.ts +6 -0
  33. package/esm/DotplotView/components/{Grid.js → DotplotGrid.js} +19 -20
  34. package/esm/DotplotView/components/DotplotGridWrapper.d.ts +6 -0
  35. package/esm/DotplotView/components/DotplotGridWrapper.js +8 -0
  36. package/esm/DotplotView/components/DotplotTooltipClick.d.ts +2 -2
  37. package/esm/DotplotView/components/DotplotTooltipClick.js +4 -4
  38. package/esm/DotplotView/components/DotplotTooltipMouseover.d.ts +1 -1
  39. package/esm/DotplotView/components/DotplotTooltipMouseover.js +2 -2
  40. package/esm/DotplotView/components/DotplotTooltips.d.ts +1 -1
  41. package/esm/DotplotView/components/DotplotTooltips.js +2 -2
  42. package/esm/DotplotView/components/DotplotView.d.ts +2 -2
  43. package/esm/DotplotView/components/DotplotView.js +23 -21
  44. package/esm/DotplotView/components/DotplotWarnings.d.ts +1 -1
  45. package/esm/DotplotView/components/DotplotWarnings.js +3 -3
  46. package/esm/DotplotView/components/ExportSvgDialog.d.ts +1 -1
  47. package/esm/DotplotView/components/Header.d.ts +1 -1
  48. package/esm/DotplotView/components/Header.js +5 -5
  49. package/esm/DotplotView/components/ImportForm/ImportSyntenyOpenCustomTrack.d.ts +1 -1
  50. package/esm/DotplotView/components/ImportForm/ImportSyntenyOpenCustomTrack.js +6 -5
  51. package/esm/DotplotView/components/ImportForm/ImportSyntenyTrackSelector.d.ts +1 -1
  52. package/esm/DotplotView/components/ImportForm/ImportSyntenyTrackSelector.js +2 -3
  53. package/esm/DotplotView/components/ImportForm/TrackSelector.d.ts +10 -1
  54. package/esm/DotplotView/components/ImportForm/TrackSelector.js +8 -4
  55. package/esm/DotplotView/components/ImportForm/index.d.ts +1 -1
  56. package/esm/DotplotView/components/ImportForm/index.js +4 -9
  57. package/esm/DotplotView/components/ImportForm/selectors/AnchorsFileSelector.d.ts +1 -1
  58. package/esm/DotplotView/components/ImportForm/selectors/AnchorsFileSelector.js +2 -2
  59. package/esm/DotplotView/components/ImportForm/selectors/PifGzSelector.d.ts +1 -1
  60. package/esm/DotplotView/components/ImportForm/selectors/PifGzSelector.js +2 -2
  61. package/esm/DotplotView/components/ImportForm/selectors/SwapAssemblies.js +3 -3
  62. package/esm/DotplotView/components/ImportForm/selectors/SyntenyFileSelector.d.ts +1 -1
  63. package/esm/DotplotView/components/ImportForm/selectors/SyntenyFileSelector.js +3 -3
  64. package/esm/DotplotView/components/ImportForm/selectors/index.d.ts +3 -3
  65. package/esm/DotplotView/components/ImportForm/selectors/index.js +3 -3
  66. package/esm/DotplotView/components/MinLengthSlider.d.ts +1 -1
  67. package/esm/DotplotView/components/MinLengthSlider.js +7 -7
  68. package/esm/DotplotView/components/MouseInteractionLayer.d.ts +3 -3
  69. package/esm/DotplotView/components/MouseInteractionLayer.js +6 -4
  70. package/esm/DotplotView/components/OpacitySlider.d.ts +1 -1
  71. package/esm/DotplotView/components/OpacitySlider.js +5 -6
  72. package/esm/DotplotView/components/PanButtons.d.ts +1 -1
  73. package/esm/DotplotView/components/PanButtons.js +1 -1
  74. package/esm/DotplotView/components/SelectionContextMenu.d.ts +1 -1
  75. package/esm/DotplotView/components/WarningDialog.js +1 -1
  76. package/esm/DotplotView/components/util.d.ts +1 -1
  77. package/esm/DotplotView/components/util.js +17 -5
  78. package/esm/DotplotView/index.js +2 -2
  79. package/esm/DotplotView/model.d.ts +208 -90
  80. package/esm/DotplotView/model.js +118 -79
  81. package/esm/DotplotView/svgcomponents/SVGDotplotView.d.ts +1 -1
  82. package/esm/DotplotView/svgcomponents/SVGDotplotView.js +5 -6
  83. package/esm/DotplotView/types.d.ts +7 -1
  84. package/esm/LaunchDotplotView.js +6 -36
  85. package/esm/ServerSideRenderedBlockContent.js +2 -6
  86. package/esm/ServerSideSyntenyRendering.d.ts +1 -1
  87. package/esm/ServerSideSyntenyRendering.js +1 -1
  88. package/esm/index.d.ts +1 -0
  89. package/esm/index.js +8 -11
  90. package/esm/util.d.ts +1 -1
  91. package/package.json +28 -35
  92. package/dist/ComparativeRenderer/index.d.ts +0 -22
  93. package/dist/ComparativeRenderer/index.js +0 -53
  94. package/dist/DiagonalizeDotplotRpc.d.ts +0 -30
  95. package/dist/DiagonalizeDotplotRpc.js +0 -156
  96. package/dist/DotplotDisplay/components/DotplotDisplay.d.ts +0 -6
  97. package/dist/DotplotDisplay/components/DotplotDisplay.js +0 -18
  98. package/dist/DotplotDisplay/index.d.ts +0 -5
  99. package/dist/DotplotDisplay/index.js +0 -36
  100. package/dist/DotplotDisplay/renderDotplotBlock.d.ts +0 -11
  101. package/dist/DotplotDisplay/renderDotplotBlock.js +0 -52
  102. package/dist/DotplotDisplay/stateModelFactory.d.ts +0 -108
  103. package/dist/DotplotDisplay/stateModelFactory.js +0 -134
  104. package/dist/DotplotReadVsRef/DotplotReadVsRef.d.ts +0 -3
  105. package/dist/DotplotReadVsRef/DotplotReadVsRef.js +0 -100
  106. package/dist/DotplotReadVsRef/index.d.ts +0 -2
  107. package/dist/DotplotReadVsRef/index.js +0 -41
  108. package/dist/DotplotRenderer/ComparativeRenderRpc.d.ts +0 -22
  109. package/dist/DotplotRenderer/ComparativeRenderRpc.js +0 -53
  110. package/dist/DotplotRenderer/DotplotRenderer.d.ts +0 -65
  111. package/dist/DotplotRenderer/DotplotRenderer.js +0 -102
  112. package/dist/DotplotRenderer/clamp.d.ts +0 -7
  113. package/dist/DotplotRenderer/clamp.js +0 -62
  114. package/dist/DotplotRenderer/components/DotplotRendering.d.ts +0 -3
  115. package/dist/DotplotRenderer/components/DotplotRendering.js +0 -9
  116. package/dist/DotplotRenderer/configSchema.d.ts +0 -40
  117. package/dist/DotplotRenderer/configSchema.js +0 -57
  118. package/dist/DotplotRenderer/drawDotplot.d.ts +0 -22
  119. package/dist/DotplotRenderer/drawDotplot.js +0 -209
  120. package/dist/DotplotRenderer/index.d.ts +0 -2
  121. package/dist/DotplotRenderer/index.js +0 -17
  122. package/dist/DotplotView/1dview.d.ts +0 -199
  123. package/dist/DotplotView/1dview.js +0 -65
  124. package/dist/DotplotView/components/Axes.d.ts +0 -13
  125. package/dist/DotplotView/components/Axes.js +0 -107
  126. package/dist/DotplotView/components/ColorBySelector.d.ts +0 -5
  127. package/dist/DotplotView/components/ColorBySelector.js +0 -79
  128. package/dist/DotplotView/components/CursorIcon.d.ts +0 -3
  129. package/dist/DotplotView/components/CursorIcon.js +0 -15
  130. package/dist/DotplotView/components/DiagonalizationProgressDialog.d.ts +0 -6
  131. package/dist/DotplotView/components/DiagonalizationProgressDialog.js +0 -125
  132. package/dist/DotplotView/components/DotplotControls.d.ts +0 -5
  133. package/dist/DotplotView/components/DotplotControls.js +0 -187
  134. package/dist/DotplotView/components/DotplotTooltipClick.d.ts +0 -10
  135. package/dist/DotplotView/components/DotplotTooltipClick.js +0 -17
  136. package/dist/DotplotView/components/DotplotTooltipMouseover.d.ts +0 -9
  137. package/dist/DotplotView/components/DotplotTooltipMouseover.js +0 -16
  138. package/dist/DotplotView/components/DotplotTooltips.d.ts +0 -15
  139. package/dist/DotplotView/components/DotplotTooltips.js +0 -43
  140. package/dist/DotplotView/components/DotplotView.d.ts +0 -5
  141. package/dist/DotplotView/components/DotplotView.js +0 -100
  142. package/dist/DotplotView/components/DotplotWarnings.d.ts +0 -5
  143. package/dist/DotplotView/components/DotplotWarnings.js +0 -53
  144. package/dist/DotplotView/components/ExportSvgDialog.d.ts +0 -7
  145. package/dist/DotplotView/components/ExportSvgDialog.js +0 -53
  146. package/dist/DotplotView/components/Grid.d.ts +0 -9
  147. package/dist/DotplotView/components/Grid.js +0 -47
  148. package/dist/DotplotView/components/Header.d.ts +0 -9
  149. package/dist/DotplotView/components/Header.js +0 -33
  150. package/dist/DotplotView/components/ImportForm/ImportSyntenyOpenCustomTrack.d.ts +0 -7
  151. package/dist/DotplotView/components/ImportForm/ImportSyntenyOpenCustomTrack.js +0 -78
  152. package/dist/DotplotView/components/ImportForm/ImportSyntenyTrackSelector.d.ts +0 -7
  153. package/dist/DotplotView/components/ImportForm/ImportSyntenyTrackSelector.js +0 -42
  154. package/dist/DotplotView/components/ImportForm/TrackSelector.d.ts +0 -7
  155. package/dist/DotplotView/components/ImportForm/TrackSelector.js +0 -23
  156. package/dist/DotplotView/components/ImportForm/getAdapter.d.ts +0 -117
  157. package/dist/DotplotView/components/ImportForm/getAdapter.js +0 -68
  158. package/dist/DotplotView/components/ImportForm/index.d.ts +0 -5
  159. package/dist/DotplotView/components/ImportForm/index.js +0 -75
  160. package/dist/DotplotView/components/ImportForm/selectors/AnchorsFileSelector.d.ts +0 -3
  161. package/dist/DotplotView/components/ImportForm/selectors/AnchorsFileSelector.js +0 -23
  162. package/dist/DotplotView/components/ImportForm/selectors/PifGzSelector.d.ts +0 -3
  163. package/dist/DotplotView/components/ImportForm/selectors/PifGzSelector.js +0 -13
  164. package/dist/DotplotView/components/ImportForm/selectors/SelectorTypes.d.ts +0 -23
  165. package/dist/DotplotView/components/ImportForm/selectors/SelectorTypes.js +0 -10
  166. package/dist/DotplotView/components/ImportForm/selectors/SwapAssemblies.d.ts +0 -13
  167. package/dist/DotplotView/components/ImportForm/selectors/SwapAssemblies.js +0 -32
  168. package/dist/DotplotView/components/ImportForm/selectors/SyntenyFileSelector.d.ts +0 -3
  169. package/dist/DotplotView/components/ImportForm/selectors/SyntenyFileSelector.js +0 -24
  170. package/dist/DotplotView/components/ImportForm/selectors/index.d.ts +0 -3
  171. package/dist/DotplotView/components/ImportForm/selectors/index.js +0 -12
  172. package/dist/DotplotView/components/ImportForm/util.d.ts +0 -10
  173. package/dist/DotplotView/components/ImportForm/util.js +0 -24
  174. package/dist/DotplotView/components/MinLengthSlider.d.ts +0 -5
  175. package/dist/DotplotView/components/MinLengthSlider.js +0 -44
  176. package/dist/DotplotView/components/MouseInteractionLayer.d.ts +0 -17
  177. package/dist/DotplotView/components/MouseInteractionLayer.js +0 -18
  178. package/dist/DotplotView/components/OpacitySlider.d.ts +0 -5
  179. package/dist/DotplotView/components/OpacitySlider.js +0 -43
  180. package/dist/DotplotView/components/PanButtons.d.ts +0 -5
  181. package/dist/DotplotView/components/PanButtons.js +0 -47
  182. package/dist/DotplotView/components/SelectionContextMenu.d.ts +0 -13
  183. package/dist/DotplotView/components/SelectionContextMenu.js +0 -42
  184. package/dist/DotplotView/components/SliderTooltip.d.ts +0 -2
  185. package/dist/DotplotView/components/SliderTooltip.js +0 -9
  186. package/dist/DotplotView/components/WarningDialog.d.ts +0 -16
  187. package/dist/DotplotView/components/WarningDialog.js +0 -39
  188. package/dist/DotplotView/components/hooks/useCtrlKeyTracking.d.ts +0 -1
  189. package/dist/DotplotView/components/hooks/useCtrlKeyTracking.js +0 -24
  190. package/dist/DotplotView/components/hooks/useCursorMode.d.ts +0 -7
  191. package/dist/DotplotView/components/hooks/useCursorMode.js +0 -19
  192. package/dist/DotplotView/components/hooks/useMouseCoordinates.d.ts +0 -29
  193. package/dist/DotplotView/components/hooks/useMouseCoordinates.js +0 -52
  194. package/dist/DotplotView/components/hooks/useMouseMoveHandler.d.ts +0 -6
  195. package/dist/DotplotView/components/hooks/useMouseMoveHandler.js +0 -27
  196. package/dist/DotplotView/components/hooks/useMouseUpHandler.d.ts +0 -3
  197. package/dist/DotplotView/components/hooks/useMouseUpHandler.js +0 -31
  198. package/dist/DotplotView/components/hooks/useWheelHandler.d.ts +0 -8
  199. package/dist/DotplotView/components/hooks/useWheelHandler.js +0 -47
  200. package/dist/DotplotView/components/util.d.ts +0 -14
  201. package/dist/DotplotView/components/util.js +0 -80
  202. package/dist/DotplotView/index.d.ts +0 -2
  203. package/dist/DotplotView/index.js +0 -52
  204. package/dist/DotplotView/model.d.ts +0 -440
  205. package/dist/DotplotView/model.js +0 -502
  206. package/dist/DotplotView/svgcomponents/SVGBackground.d.ts +0 -4
  207. package/dist/DotplotView/svgcomponents/SVGBackground.js +0 -10
  208. package/dist/DotplotView/svgcomponents/SVGDotplotView.d.ts +0 -2
  209. package/dist/DotplotView/svgcomponents/SVGDotplotView.js +0 -30
  210. package/dist/DotplotView/types.d.ts +0 -12
  211. package/dist/DotplotView/types.js +0 -2
  212. package/dist/LaunchDotplotView.d.ts +0 -2
  213. package/dist/LaunchDotplotView.js +0 -43
  214. package/dist/ServerSideRenderedBlockContent.d.ts +0 -12
  215. package/dist/ServerSideRenderedBlockContent.js +0 -48
  216. package/dist/ServerSideSyntenyRendering.d.ts +0 -13
  217. package/dist/ServerSideSyntenyRendering.js +0 -23
  218. package/dist/index.d.ts +0 -7
  219. package/dist/index.js +0 -42
  220. package/dist/util.d.ts +0 -9
  221. package/dist/util.js +0 -7
  222. package/esm/DotplotRenderer/ComparativeRenderRpc.d.ts +0 -22
  223. package/esm/DotplotRenderer/ComparativeRenderRpc.js +0 -47
  224. package/esm/DotplotView/components/Grid.d.ts +0 -9
@@ -1,502 +0,0 @@
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 () {
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
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.Dotplot1DView = void 0;
40
- exports.default = stateModelFactory;
41
- const react_1 = require("react");
42
- const configuration_1 = require("@jbrowse/core/configuration");
43
- const BaseViewModel_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/models/BaseViewModel"));
44
- const Icons_1 = require("@jbrowse/core/ui/Icons");
45
- const util_1 = require("@jbrowse/core/util");
46
- const tracks_1 = require("@jbrowse/core/util/tracks");
47
- const mst_1 = require("@jbrowse/core/util/types/mst");
48
- const FolderOpen_1 = __importDefault(require("@mui/icons-material/FolderOpen"));
49
- const PhotoCamera_1 = __importDefault(require("@mui/icons-material/PhotoCamera"));
50
- const file_saver_1 = require("file-saver");
51
- const mobx_1 = require("mobx");
52
- const mobx_state_tree_1 = require("mobx-state-tree");
53
- const _1dview_1 = require("./1dview");
54
- const util_2 = require("./components/util");
55
- const ExportSvgDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('./components/ExportSvgDialog'))));
56
- const ReturnToImportFormDialog = (0, react_1.lazy)(() => Promise.resolve().then(() => __importStar(require('@jbrowse/core/ui/ReturnToImportFormDialog'))));
57
- function stringLenPx(a) {
58
- return (0, util_1.measureText)(a.slice(0, 30));
59
- }
60
- function pxWidthForBlocks(blocks, bpPerPx, hide) {
61
- return (0, util_1.max)([
62
- ...blocks.filter(b => !hide.has(b.key)).map(b => stringLenPx(b.refName)),
63
- ...blocks
64
- .filter(b => !hide.has(b.key))
65
- .map(b => stringLenPx((0, util_1.getTickDisplayStr)(b.end, bpPerPx))),
66
- ]);
67
- }
68
- function stateModelFactory(pm) {
69
- return mobx_state_tree_1.types
70
- .compose('DotplotView', BaseViewModel_1.default, mobx_state_tree_1.types.model({
71
- id: mst_1.ElementId,
72
- type: mobx_state_tree_1.types.literal('DotplotView'),
73
- height: 600,
74
- borderSize: 20,
75
- tickSize: 5,
76
- vtextRotation: 0,
77
- htextRotation: -90,
78
- fontSize: 15,
79
- trackSelectorType: 'hierarchical',
80
- assemblyNames: mobx_state_tree_1.types.array(mobx_state_tree_1.types.string),
81
- drawCigar: true,
82
- hview: mobx_state_tree_1.types.optional(_1dview_1.DotplotHView, {}),
83
- vview: mobx_state_tree_1.types.optional(_1dview_1.DotplotVView, {}),
84
- tracks: mobx_state_tree_1.types.array(pm.pluggableMstType('track', 'stateModel')),
85
- viewTrackConfigs: mobx_state_tree_1.types.array(pm.pluggableConfigSchemaType('track')),
86
- }))
87
- .volatile(() => ({
88
- volatileWidth: undefined,
89
- volatileError: undefined,
90
- cursorMode: (0, util_1.localStorageGetItem)('dotplot-cursorMode') || 'crosshair',
91
- showPanButtons: (0, util_1.localStorageGetBoolean)('dotplot-showPanbuttons', true),
92
- wheelMode: (0, util_1.localStorageGetItem)('dotplot-wheelMode') || 'zoom',
93
- borderX: 100,
94
- borderY: 100,
95
- importFormSyntenyTrackSelections: mobx_1.observable.array(),
96
- }))
97
- .actions(self => ({
98
- importFormRemoveRow(idx) {
99
- self.importFormSyntenyTrackSelections.splice(idx, 1);
100
- },
101
- clearImportFormSyntenyTracks() {
102
- self.importFormSyntenyTrackSelections.clear();
103
- },
104
- setImportFormSyntenyTrack(arg, val) {
105
- self.importFormSyntenyTrackSelections[arg] = val;
106
- },
107
- }))
108
- .views(self => ({
109
- get width() {
110
- if (!self.volatileWidth) {
111
- throw new Error('width not initialized');
112
- }
113
- return self.volatileWidth;
114
- },
115
- }))
116
- .views(self => ({
117
- get assemblyErrors() {
118
- const { assemblyManager } = (0, util_1.getSession)(self);
119
- return self.assemblyNames
120
- .map(a => { var _a; return (_a = assemblyManager.get(a)) === null || _a === void 0 ? void 0 : _a.error; })
121
- .filter(f => !!f)
122
- .join(', ');
123
- },
124
- get assembliesInitialized() {
125
- const { assemblyManager } = (0, util_1.getSession)(self);
126
- return self.assemblyNames.every(n => { var _a, _b; return (_b = (_a = assemblyManager.get(n)) === null || _a === void 0 ? void 0 : _a.initialized) !== null && _b !== void 0 ? _b : true; });
127
- },
128
- }))
129
- .views(self => ({
130
- get initialized() {
131
- return (self.volatileWidth !== undefined &&
132
- self.hview.displayedRegions.length > 0 &&
133
- self.vview.displayedRegions.length > 0 &&
134
- self.assembliesInitialized);
135
- },
136
- get hticks() {
137
- const { hview } = self;
138
- const { dynamicBlocks, staticBlocks, bpPerPx } = hview;
139
- return dynamicBlocks.contentBlocks.length > 5
140
- ? []
141
- : (0, util_2.makeTicks)(staticBlocks.contentBlocks, bpPerPx);
142
- },
143
- get vticks() {
144
- const { vview } = self;
145
- const { dynamicBlocks, staticBlocks, bpPerPx } = vview;
146
- return dynamicBlocks.contentBlocks.length > 5
147
- ? []
148
- : (0, util_2.makeTicks)(staticBlocks.contentBlocks, bpPerPx);
149
- },
150
- get loading() {
151
- return self.assemblyNames.length > 0 && !this.initialized;
152
- },
153
- get viewWidth() {
154
- return self.width - self.borderX;
155
- },
156
- get viewHeight() {
157
- return self.height - self.borderY;
158
- },
159
- get views() {
160
- return [self.hview, self.vview];
161
- },
162
- renderProps() {
163
- const session = (0, util_1.getSession)(self);
164
- return {
165
- ...(0, tracks_1.getParentRenderProps)(self),
166
- drawCigar: self.drawCigar,
167
- highResolutionScaling: (0, configuration_1.getConf)(session, 'highResolutionScaling'),
168
- };
169
- },
170
- }))
171
- .actions(self => ({
172
- setShowPanButtons(flag) {
173
- self.showPanButtons = flag;
174
- },
175
- setWheelMode(str) {
176
- self.wheelMode = str;
177
- },
178
- setCursorMode(str) {
179
- self.cursorMode = str;
180
- },
181
- setDrawCigar(flag) {
182
- self.drawCigar = flag;
183
- },
184
- clearView() {
185
- self.hview.setDisplayedRegions([]);
186
- self.vview.setDisplayedRegions([]);
187
- self.assemblyNames = (0, mobx_state_tree_1.cast)([]);
188
- self.tracks.clear();
189
- },
190
- setBorderX(n) {
191
- self.borderX = n;
192
- },
193
- setBorderY(n) {
194
- self.borderY = n;
195
- },
196
- setWidth(newWidth) {
197
- self.volatileWidth = newWidth;
198
- return self.volatileWidth;
199
- },
200
- setHeight(newHeight) {
201
- self.height = newHeight;
202
- return self.height;
203
- },
204
- setError(e) {
205
- self.volatileError = e;
206
- },
207
- zoomOut() {
208
- self.hview.zoomOut();
209
- self.vview.zoomOut();
210
- },
211
- zoomIn() {
212
- self.hview.zoomIn();
213
- self.vview.zoomIn();
214
- },
215
- }))
216
- .actions(self => ({
217
- activateTrackSelector() {
218
- if (self.trackSelectorType === 'hierarchical') {
219
- const session = (0, util_1.getSession)(self);
220
- if ((0, util_1.isSessionModelWithWidgets)(session)) {
221
- const selector = session.addWidget('HierarchicalTrackSelectorWidget', 'hierarchicalTrackSelector', { view: self });
222
- session.showWidget(selector);
223
- return selector;
224
- }
225
- }
226
- throw new Error(`invalid track selector type ${self.trackSelectorType}`);
227
- },
228
- showTrack(trackId, initialSnapshot = {}) {
229
- const schema = pm.pluggableConfigSchemaType('track');
230
- const conf = (0, mobx_state_tree_1.resolveIdentifier)(schema, (0, mobx_state_tree_1.getRoot)(self), trackId);
231
- const trackType = pm.getTrackType(conf.type);
232
- if (!trackType) {
233
- throw new Error(`unknown track type ${conf.type}`);
234
- }
235
- const viewType = pm.getViewType(self.type);
236
- const displayConf = conf.displays.find((d) => viewType.displayTypes.find(type => type.name === d.type));
237
- if (!displayConf) {
238
- throw new Error(`could not find a compatible display for view type ${self.type}`);
239
- }
240
- const track = trackType.stateModel.create({
241
- ...initialSnapshot,
242
- type: conf.type,
243
- configuration: conf,
244
- displays: [{ type: displayConf.type, configuration: displayConf }],
245
- });
246
- self.tracks.push(track);
247
- },
248
- hideTrack(trackId) {
249
- const schema = pm.pluggableConfigSchemaType('track');
250
- const conf = (0, mobx_state_tree_1.resolveIdentifier)(schema, (0, mobx_state_tree_1.getRoot)(self), trackId);
251
- const tracks = self.tracks.filter(t => t.configuration === conf);
252
- (0, mobx_1.transaction)(() => {
253
- for (const track of tracks) {
254
- self.tracks.remove(track);
255
- }
256
- });
257
- return tracks.length;
258
- },
259
- toggleTrack(trackId) {
260
- const hiddenCount = this.hideTrack(trackId);
261
- if (!hiddenCount) {
262
- this.showTrack(trackId);
263
- return true;
264
- }
265
- return false;
266
- },
267
- setAssemblyNames(target, query) {
268
- self.assemblyNames = (0, mobx_state_tree_1.cast)([target, query]);
269
- },
270
- setViews(arr) {
271
- self.hview = (0, mobx_state_tree_1.cast)(arr[0]);
272
- self.vview = (0, mobx_state_tree_1.cast)(arr[1]);
273
- },
274
- getCoords(mousedown, mouseup) {
275
- const [xmin, xmax] = (0, util_1.minmax)(mouseup[0], mousedown[0]);
276
- const [ymin, ymax] = (0, util_1.minmax)(mouseup[1], mousedown[1]);
277
- return Math.abs(xmax - xmin) > 3 && Math.abs(ymax - ymin) > 3
278
- ? [
279
- self.hview.pxToBp(xmin),
280
- self.hview.pxToBp(xmax),
281
- self.vview.pxToBp(self.viewHeight - ymin),
282
- self.vview.pxToBp(self.viewHeight - ymax),
283
- ]
284
- : undefined;
285
- },
286
- zoomInToMouseCoords(mousedown, mouseup) {
287
- const result = this.getCoords(mousedown, mouseup);
288
- if (result) {
289
- const [x1, x2, y1, y2] = result;
290
- self.hview.moveTo(x1, x2);
291
- self.vview.moveTo(y2, y1);
292
- }
293
- },
294
- calculateBorders() {
295
- if (self.volatileWidth === undefined) {
296
- return { borderX: self.borderX, borderY: self.borderY };
297
- }
298
- const { vview, hview, viewHeight, viewWidth } = self;
299
- const padding = 40;
300
- const vblocks = vview.dynamicBlocks.contentBlocks;
301
- const hblocks = hview.dynamicBlocks.contentBlocks;
302
- const hoffset = hview.offsetPx;
303
- const voffset = vview.offsetPx;
304
- const vhide = (0, util_2.getBlockLabelKeysToHide)(vblocks, viewHeight, voffset);
305
- const hhide = (0, util_2.getBlockLabelKeysToHide)(hblocks, viewWidth, hoffset);
306
- const by = pxWidthForBlocks(hblocks, vview.bpPerPx, hhide);
307
- const bx = pxWidthForBlocks(vblocks, hview.bpPerPx, vhide);
308
- return {
309
- borderX: Math.max(bx + padding, 50),
310
- borderY: Math.max(by + padding, 50),
311
- };
312
- },
313
- showAllRegions() {
314
- self.hview.zoomTo(self.hview.maxBpPerPx);
315
- self.vview.zoomTo(self.vview.maxBpPerPx);
316
- const { borderX, borderY } = this.calculateBorders();
317
- self.setBorderX(borderX);
318
- self.setBorderY(borderY);
319
- self.hview.zoomTo(self.hview.maxBpPerPx);
320
- self.vview.zoomTo(self.vview.maxBpPerPx);
321
- self.vview.center();
322
- self.hview.center();
323
- },
324
- onDotplotView(mousedown, mouseup) {
325
- const result = this.getCoords(mousedown, mouseup);
326
- if (result) {
327
- const [x1, x2, y1, y2] = result;
328
- const session = (0, util_1.getSession)(self);
329
- const d1 = _1dview_1.Dotplot1DView.create({
330
- ...(0, mobx_state_tree_1.getSnapshot)(self.hview),
331
- minimumBlockWidth: 0,
332
- interRegionPaddingWidth: 0,
333
- });
334
- const d2 = _1dview_1.Dotplot1DView.create({
335
- ...(0, mobx_state_tree_1.getSnapshot)(self.vview),
336
- minimumBlockWidth: 0,
337
- interRegionPaddingWidth: 0,
338
- });
339
- d1.setVolatileWidth(self.hview.width);
340
- d2.setVolatileWidth(self.vview.width);
341
- d1.moveTo(x1, x2);
342
- d2.moveTo(y2, y1);
343
- d1.zoomTo(d1.bpPerPx / (self.width / self.hview.width), 0);
344
- d2.zoomTo(d2.bpPerPx / (self.width / self.vview.width), 0);
345
- const tracks = self.tracks
346
- .map(track => track.configuration.displays.find((display) => display.type === 'LinearSyntenyDisplay'))
347
- .filter(f => !!f)
348
- .map(displayConf => {
349
- const trackConf = (0, mobx_state_tree_1.getParent)(displayConf, 2);
350
- return {
351
- type: trackConf.type,
352
- configuration: trackConf,
353
- displays: [
354
- { type: displayConf.type, configuration: displayConf },
355
- ],
356
- };
357
- });
358
- const { id: _unused1, ...rest1 } = (0, mobx_state_tree_1.getSnapshot)(d1);
359
- const { id: _unused2, ...rest2 } = (0, mobx_state_tree_1.getSnapshot)(d2);
360
- const viewSnapshot = {
361
- type: 'LinearSyntenyView',
362
- views: [
363
- {
364
- type: 'LinearGenomeView',
365
- tracks: [],
366
- hideHeader: true,
367
- ...rest1,
368
- },
369
- {
370
- type: 'LinearGenomeView',
371
- tracks: [],
372
- hideHeader: true,
373
- ...rest2,
374
- },
375
- ],
376
- tracks,
377
- };
378
- session.addView('LinearSyntenyView', viewSnapshot);
379
- }
380
- },
381
- }))
382
- .actions(self => ({
383
- async exportSvg(opts = {}) {
384
- const { renderToSvg } = await Promise.resolve().then(() => __importStar(require('./svgcomponents/SVGDotplotView')));
385
- const html = await renderToSvg(self, opts);
386
- const blob = new Blob([html], { type: 'image/svg+xml' });
387
- (0, file_saver_1.saveAs)(blob, opts.filename || 'image.svg');
388
- },
389
- beforeDestroy() {
390
- var _a;
391
- const session = (0, util_1.getSession)(self);
392
- for (const name of self.assemblyNames) {
393
- (_a = session.removeTemporaryAssembly) === null || _a === void 0 ? void 0 : _a.call(session, name);
394
- }
395
- },
396
- afterAttach() {
397
- (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
398
- const s = (s) => JSON.stringify(s);
399
- const { showPanButtons, wheelMode, cursorMode } = self;
400
- if (typeof localStorage !== 'undefined') {
401
- localStorage.setItem('dotplot-showPanbuttons', s(showPanButtons));
402
- localStorage.setItem('dotplot-cursorMode', cursorMode);
403
- localStorage.setItem('dotplot-wheelMode', wheelMode);
404
- }
405
- }));
406
- (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
407
- const session = (0, util_1.getSession)(self);
408
- if (self.volatileWidth === undefined ||
409
- !self.assembliesInitialized) {
410
- return;
411
- }
412
- const { hview, assemblyNames, vview } = self;
413
- if (hview.displayedRegions.length &&
414
- vview.displayedRegions.length) {
415
- return;
416
- }
417
- (0, mobx_1.transaction)(() => {
418
- var _a, _b;
419
- hview.setDisplayedRegions(((_a = session.assemblyManager.get(assemblyNames[0])) === null || _a === void 0 ? void 0 : _a.regions) || []);
420
- vview.setDisplayedRegions(((_b = session.assemblyManager.get(assemblyNames[1])) === null || _b === void 0 ? void 0 : _b.regions) || []);
421
- self.showAllRegions();
422
- });
423
- }, { delay: 1000 }));
424
- (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(function borderSetter() {
425
- if (self.volatileWidth === undefined) {
426
- return;
427
- }
428
- const { borderX, borderY } = self.calculateBorders();
429
- self.setBorderX(borderX);
430
- self.setBorderY(borderY);
431
- }));
432
- },
433
- squareView() {
434
- const { hview, vview } = self;
435
- const avg = (hview.bpPerPx + vview.bpPerPx) / 2;
436
- const hpx = hview.pxToBp(hview.width / 2);
437
- const vpx = vview.pxToBp(vview.width / 2);
438
- hview.setBpPerPx(avg);
439
- hview.centerAt(hpx.coord, hpx.refName, hpx.index);
440
- vview.setBpPerPx(avg);
441
- vview.centerAt(vpx.coord, vpx.refName, vpx.index);
442
- },
443
- squareViewProportional() {
444
- const { hview, vview } = self;
445
- const ratio = hview.width / vview.width;
446
- const avg = (hview.bpPerPx + vview.bpPerPx) / 2;
447
- const hpx = hview.pxToBp(hview.width / 2);
448
- const vpx = vview.pxToBp(vview.width / 2);
449
- hview.setBpPerPx(avg / ratio);
450
- hview.centerAt(hpx.coord, hpx.refName, hpx.index);
451
- vview.setBpPerPx(avg);
452
- vview.centerAt(vpx.coord, vpx.refName, vpx.index);
453
- },
454
- }))
455
- .views(self => ({
456
- menuItems() {
457
- const session = (0, util_1.getSession)(self);
458
- return [
459
- {
460
- label: 'Return to import form',
461
- icon: FolderOpen_1.default,
462
- onClick: () => {
463
- (0, util_1.getSession)(self).queueDialog(handleClose => [
464
- ReturnToImportFormDialog,
465
- {
466
- model: self,
467
- handleClose,
468
- },
469
- ]);
470
- },
471
- },
472
- {
473
- label: 'Export SVG',
474
- icon: PhotoCamera_1.default,
475
- onClick: () => {
476
- (0, util_1.getSession)(self).queueDialog(handleClose => [
477
- ExportSvgDialog,
478
- {
479
- model: self,
480
- handleClose,
481
- },
482
- ]);
483
- },
484
- },
485
- ...((0, util_1.isSessionModelWithWidgets)(session)
486
- ? [
487
- {
488
- label: 'Open track selector',
489
- onClick: self.activateTrackSelector,
490
- icon: Icons_1.TrackSelector,
491
- },
492
- ]
493
- : []),
494
- ];
495
- },
496
- get error() {
497
- return self.volatileError || self.assemblyErrors;
498
- },
499
- }));
500
- }
501
- var _1dview_2 = require("./1dview");
502
- Object.defineProperty(exports, "Dotplot1DView", { enumerable: true, get: function () { return _1dview_2.Dotplot1DView; } });
@@ -1,4 +0,0 @@
1
- export default function SVGBackground({ width, height, }: {
2
- width: number;
3
- height: number;
4
- }): import("react/jsx-runtime").JSX.Element;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = SVGBackground;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const util_1 = require("@jbrowse/core/util");
6
- const material_1 = require("@mui/material");
7
- function SVGBackground({ width, height, }) {
8
- const theme = (0, material_1.useTheme)();
9
- return ((0, jsx_runtime_1.jsx)("rect", { x: 0, y: 0, width: width, height: height, fill: (0, util_1.stripAlpha)(theme.palette.background.default) }));
10
- }
@@ -1,2 +0,0 @@
1
- import type { DotplotViewModel, ExportSvgOptions } from '../model';
2
- export declare function renderToSvg(model: DotplotViewModel, opts: ExportSvgOptions): Promise<string>;
@@ -1,30 +0,0 @@
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
- exports.renderToSvg = renderToSvg;
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const ui_1 = require("@jbrowse/core/ui");
9
- const util_1 = require("@jbrowse/core/util");
10
- const material_1 = require("@mui/material");
11
- const mobx_1 = require("mobx");
12
- const SVGBackground_1 = __importDefault(require("./SVGBackground"));
13
- const Axes_1 = require("../components/Axes");
14
- const Grid_1 = require("../components/Grid");
15
- async function renderToSvg(model, opts) {
16
- var _a;
17
- await (0, mobx_1.when)(() => model.initialized);
18
- const { themeName = 'default', Wrapper = ({ children }) => children } = opts;
19
- const session = (0, util_1.getSession)(model);
20
- const theme = (_a = session.allThemes) === null || _a === void 0 ? void 0 : _a.call(session)[themeName];
21
- const { width, borderX, viewWidth, viewHeight, tracks, height } = model;
22
- const shift = 50;
23
- const displayResults = await Promise.all(tracks.map(async (track) => {
24
- const display = track.displays[0];
25
- await (0, mobx_1.when)(() => (display.ready !== undefined ? display.ready : true));
26
- return { track, result: await display.renderSvg({ ...opts, theme }) };
27
- }));
28
- const w = width + shift * 2;
29
- return (0, util_1.renderToStaticMarkup)((0, jsx_runtime_1.jsx)(material_1.ThemeProvider, { theme: (0, ui_1.createJBrowseTheme)(theme), children: (0, jsx_runtime_1.jsx)(Wrapper, { children: (0, jsx_runtime_1.jsxs)("svg", { width: width, height: height, xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink", viewBox: [0, 0, w, height].toString(), children: [(0, jsx_runtime_1.jsx)(SVGBackground_1.default, { width: w, height: height }), (0, jsx_runtime_1.jsx)(Axes_1.VerticalAxisRaw, { model: model }), (0, jsx_runtime_1.jsxs)("g", { transform: `translate(${borderX} 0)`, children: [(0, jsx_runtime_1.jsx)(Grid_1.GridRaw, { model: model }), (0, jsx_runtime_1.jsx)("defs", { children: (0, jsx_runtime_1.jsx)("clipPath", { id: "clip-ruler", children: (0, jsx_runtime_1.jsx)("rect", { x: 0, y: 0, width: viewWidth, height: viewHeight }) }) }), (0, jsx_runtime_1.jsx)("g", { clipPath: "url(#clip-ruler)", children: displayResults.map(({ result }, i) => ((0, jsx_runtime_1.jsx)("g", { children: result }, i))) })] }), (0, jsx_runtime_1.jsx)("g", { transform: `translate(${borderX} ${viewHeight})`, children: (0, jsx_runtime_1.jsx)(Axes_1.HorizontalAxisRaw, { model: model }) })] }) }) }));
30
- }
@@ -1,12 +0,0 @@
1
- import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
- import type { SnapshotIn } from 'mobx-state-tree';
3
- export type Conf = SnapshotIn<AnyConfigurationModel>;
4
- export type ImportFormSyntenyTrack = {
5
- type: 'preConfigured';
6
- value: string;
7
- } | {
8
- type: 'userOpened';
9
- value: Conf;
10
- } | {
11
- type: 'none';
12
- };
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,2 +0,0 @@
1
- import type PluginManager from '@jbrowse/core/PluginManager';
2
- export default function LaunchDotplotView(pluginManager: PluginManager): void;
@@ -1,43 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = LaunchDotplotView;
4
- const mobx_1 = require("mobx");
5
- function LaunchDotplotView(pluginManager) {
6
- pluginManager.addToExtensionPoint('LaunchView-DotplotView', async ({ session, views, tracks = [], }) => {
7
- try {
8
- const model = session.addView('DotplotView', {});
9
- const assemblyNames = views.map(view => view.assembly);
10
- (0, mobx_1.transaction)(() => {
11
- model.setViews([
12
- { bpPerPx: 0.1, offsetPx: 0 },
13
- { bpPerPx: 0.1, offsetPx: 0 },
14
- ]);
15
- model.setAssemblyNames(assemblyNames[0], assemblyNames[1]);
16
- });
17
- const idsNotFound = [];
18
- for (const track of tracks) {
19
- tryTrack(model, track, idsNotFound);
20
- }
21
- if (idsNotFound.length) {
22
- throw new Error(`Could not resolve identifiers: ${idsNotFound.join(',')}`);
23
- }
24
- }
25
- catch (e) {
26
- session.notifyError(`${e}`, e);
27
- throw e;
28
- }
29
- });
30
- }
31
- function tryTrack(model, trackId, idsNotFound) {
32
- try {
33
- model.showTrack(trackId);
34
- }
35
- catch (e) {
36
- if (/Could not resolve identifier/.exec(`${e}`)) {
37
- idsNotFound.push(trackId);
38
- }
39
- else {
40
- throw e;
41
- }
42
- }
43
- }
@@ -1,12 +0,0 @@
1
- import type { CSSProperties } from 'react';
2
- declare const ServerSideRenderedDotplotContent: ({ model, style, }: {
3
- model: {
4
- error?: unknown;
5
- message?: string;
6
- filled?: boolean;
7
- shouldDisplay?: boolean;
8
- reactElement?: React.ReactElement;
9
- };
10
- style: CSSProperties;
11
- }) => import("react/jsx-runtime").JSX.Element | null;
12
- export default ServerSideRenderedDotplotContent;
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const jsx_runtime_1 = require("react/jsx-runtime");
4
- const ui_1 = require("@jbrowse/core/ui");
5
- const mobx_react_1 = require("mobx-react");
6
- const mui_1 = require("tss-react/mui");
7
- const useStyles = (0, mui_1.makeStyles)()(theme => {
8
- const bg = theme.palette.action.disabledBackground;
9
- return {
10
- loading: {
11
- paddingLeft: '0.6em',
12
- backgroundColor: theme.palette.background.default,
13
- backgroundImage: `repeating-linear-gradient(45deg, transparent, transparent 5px, ${bg} 5px, ${bg} 10px)`,
14
- textAlign: 'center',
15
- },
16
- blockMessage: {
17
- backgroundColor: bg,
18
- padding: '10px',
19
- },
20
- };
21
- });
22
- function LoadingMessage() {
23
- const { classes } = useStyles();
24
- return ((0, jsx_runtime_1.jsx)("div", { className: classes.loading, children: (0, jsx_runtime_1.jsx)(ui_1.LoadingEllipses, {}) }));
25
- }
26
- function BlockMessage({ messageText }) {
27
- const { classes } = useStyles();
28
- return ((0, jsx_runtime_1.jsx)("div", { className: classes.loading, children: (0, jsx_runtime_1.jsx)(ui_1.LoadingEllipses, { message: messageText }) }));
29
- }
30
- function BlockError({ error }) {
31
- return (0, jsx_runtime_1.jsx)(ui_1.ErrorMessage, { error: error });
32
- }
33
- const ServerSideRenderedDotplotContent = (0, mobx_react_1.observer)(function ({ model, style, }) {
34
- if (model.error) {
35
- return (0, jsx_runtime_1.jsx)(BlockError, { error: model.error, "data-testid": "reload_button" });
36
- }
37
- else if (model.message) {
38
- return (0, jsx_runtime_1.jsx)(BlockMessage, { messageText: model.message });
39
- }
40
- else if (!model.filled) {
41
- return (0, jsx_runtime_1.jsx)(LoadingMessage, {});
42
- }
43
- else if (model.shouldDisplay) {
44
- return (0, jsx_runtime_1.jsx)("div", { style: style, children: model.reactElement });
45
- }
46
- return null;
47
- });
48
- exports.default = ServerSideRenderedDotplotContent;