@jbrowse/plugin-wiggle 3.6.5 → 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 (407) hide show
  1. package/esm/BigWigAdapter/BigWigAdapter.d.ts +14 -1
  2. package/esm/BigWigAdapter/BigWigAdapter.js +118 -22
  3. package/esm/BigWigAdapter/configSchema.d.ts +2 -2
  4. package/esm/BigWigAdapter/configSchema.js +1 -1
  5. package/esm/BigWigAdapter/index.js +2 -2
  6. package/esm/CreateMultiWiggleExtension/ConfirmDialog.js +1 -1
  7. package/esm/CreateMultiWiggleExtension/index.js +2 -2
  8. package/esm/DensityRenderer/DensityRenderer.d.ts +5 -6
  9. package/esm/DensityRenderer/DensityRenderer.js +6 -5
  10. package/esm/DensityRenderer/configSchema.d.ts +3 -3
  11. package/esm/DensityRenderer/configSchema.js +1 -1
  12. package/esm/DensityRenderer/index.js +11 -9
  13. package/esm/DensityRenderer/makeImageData.d.ts +3 -0
  14. package/esm/DensityRenderer/makeImageData.js +13 -0
  15. package/esm/DensityRenderer/renderDensity.d.ts +3 -0
  16. package/esm/DensityRenderer/renderDensity.js +18 -0
  17. package/esm/LinePlotRenderer/LinePlotRenderer.d.ts +5 -7
  18. package/esm/LinePlotRenderer/LinePlotRenderer.js +6 -15
  19. package/esm/LinePlotRenderer/configSchema.d.ts +4 -4
  20. package/esm/LinePlotRenderer/configSchema.js +1 -1
  21. package/esm/LinePlotRenderer/index.js +4 -4
  22. package/esm/LinePlotRenderer/makeImageData.d.ts +3 -0
  23. package/esm/LinePlotRenderer/makeImageData.js +13 -0
  24. package/esm/LinePlotRenderer/renderLinePlot.d.ts +3 -0
  25. package/esm/LinePlotRenderer/renderLinePlot.js +23 -0
  26. package/esm/LinearWiggleDisplay/components/Tooltip.d.ts +2 -2
  27. package/esm/LinearWiggleDisplay/components/Tooltip.js +10 -6
  28. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +1 -1
  29. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -2
  30. package/esm/LinearWiggleDisplay/configSchema.d.ts +9 -9
  31. package/esm/LinearWiggleDisplay/configSchema.js +2 -2
  32. package/esm/LinearWiggleDisplay/index.d.ts +3 -3
  33. package/esm/LinearWiggleDisplay/index.js +6 -6
  34. package/esm/LinearWiggleDisplay/model.d.ts +1130 -92
  35. package/esm/LinearWiggleDisplay/model.js +58 -18
  36. package/esm/LinearWiggleDisplay/renderSvg.d.ts +1 -1
  37. package/esm/LinearWiggleDisplay/renderSvg.js +3 -2
  38. package/esm/MultiDensityRenderer/MultiDensityRenderer.d.ts +5 -7
  39. package/esm/MultiDensityRenderer/MultiDensityRenderer.js +6 -24
  40. package/esm/MultiDensityRenderer/configSchema.d.ts +3 -3
  41. package/esm/MultiDensityRenderer/configSchema.js +1 -1
  42. package/esm/MultiDensityRenderer/index.js +4 -4
  43. package/esm/MultiDensityRenderer/makeImageData.d.ts +3 -0
  44. package/esm/MultiDensityRenderer/makeImageData.js +7 -0
  45. package/esm/MultiDensityRenderer/renderMultiDensity.d.ts +3 -0
  46. package/esm/MultiDensityRenderer/renderMultiDensity.js +37 -0
  47. package/esm/MultiLineRenderer/MultiLineRenderer.d.ts +5 -7
  48. package/esm/MultiLineRenderer/MultiLineRenderer.js +6 -17
  49. package/esm/MultiLineRenderer/configSchema.d.ts +5 -5
  50. package/esm/MultiLineRenderer/configSchema.js +2 -2
  51. package/esm/MultiLineRenderer/index.js +4 -4
  52. package/esm/MultiLineRenderer/makeImageData.d.ts +3 -0
  53. package/esm/MultiLineRenderer/makeImageData.js +7 -0
  54. package/esm/MultiLineRenderer/renderMultiLine.d.ts +3 -0
  55. package/esm/MultiLineRenderer/renderMultiLine.js +34 -0
  56. package/esm/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +2 -2
  57. package/esm/MultiLinearWiggleDisplay/components/ColorLegend.js +11 -5
  58. package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +1 -1
  59. package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +4 -4
  60. package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +1 -1
  61. package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +5 -5
  62. package/esm/MultiLinearWiggleDisplay/components/LegendItem.d.ts +3 -3
  63. package/esm/MultiLinearWiggleDisplay/components/LegendItem.js +2 -4
  64. package/esm/MultiLinearWiggleDisplay/components/LegendItemText.d.ts +12 -0
  65. package/esm/MultiLinearWiggleDisplay/components/LegendItemText.js +11 -0
  66. package/esm/MultiLinearWiggleDisplay/components/RectBg.d.ts +1 -1
  67. package/esm/MultiLinearWiggleDisplay/components/RectBg.js +4 -3
  68. package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +2 -2
  69. package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.js +3 -3
  70. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +1 -1
  71. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js +4 -34
  72. package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +1 -1
  73. package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.js +3 -3
  74. package/esm/MultiLinearWiggleDisplay/components/Tooltip.d.ts +2 -4
  75. package/esm/MultiLinearWiggleDisplay/components/Tooltip.js +15 -12
  76. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.d.ts +1 -1
  77. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.js +3 -3
  78. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.d.ts +1 -1
  79. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.js +13 -6
  80. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.d.ts +1 -1
  81. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.js +24 -21
  82. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.d.ts +2 -1
  83. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +1 -1
  84. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -2
  85. package/esm/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +2 -2
  86. package/esm/MultiLinearWiggleDisplay/components/YScaleBars.js +5 -16
  87. package/esm/MultiLinearWiggleDisplay/components/YScaleBarsWrapper.d.ts +7 -0
  88. package/esm/MultiLinearWiggleDisplay/components/YScaleBarsWrapper.js +15 -0
  89. package/esm/MultiLinearWiggleDisplay/components/types.d.ts +10 -0
  90. package/esm/MultiLinearWiggleDisplay/components/types.js +1 -0
  91. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialog.d.ts +31 -0
  92. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialog.js +45 -0
  93. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.d.ts +10 -0
  94. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.js +81 -0
  95. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogHelpfulTips.d.ts +1 -0
  96. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogHelpfulTips.js +4 -0
  97. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogRowPalettizer.d.ts +10 -0
  98. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogRowPalettizer.js +39 -0
  99. package/esm/MultiLinearWiggleDisplay/components/util.d.ts +5 -9
  100. package/esm/MultiLinearWiggleDisplay/configSchema.d.ts +9 -9
  101. package/esm/MultiLinearWiggleDisplay/configSchema.js +2 -2
  102. package/esm/MultiLinearWiggleDisplay/index.js +3 -3
  103. package/esm/MultiLinearWiggleDisplay/model.d.ts +3628 -93
  104. package/esm/MultiLinearWiggleDisplay/model.js +80 -50
  105. package/esm/MultiLinearWiggleDisplay/renderSvg.d.ts +1 -1
  106. package/esm/MultiLinearWiggleDisplay/renderSvg.js +3 -2
  107. package/esm/MultiLinearWiggleDisplay/types.d.ts +1 -0
  108. package/esm/MultiLinearWiggleDisplay/util.d.ts +0 -1
  109. package/esm/MultiLinearWiggleDisplay/util.js +1 -7
  110. package/esm/MultiQuantitativeTrack/configSchema.d.ts +16 -11
  111. package/esm/MultiQuantitativeTrack/index.js +13 -2
  112. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +5 -7
  113. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js +6 -29
  114. package/esm/MultiRowLineRenderer/configSchema.d.ts +5 -5
  115. package/esm/MultiRowLineRenderer/configSchema.js +2 -2
  116. package/esm/MultiRowLineRenderer/index.js +4 -4
  117. package/esm/MultiRowLineRenderer/makeImageData.d.ts +3 -0
  118. package/esm/MultiRowLineRenderer/makeImageData.js +7 -0
  119. package/esm/MultiRowLineRenderer/renderMultiRowLine.d.ts +3 -0
  120. package/esm/MultiRowLineRenderer/renderMultiRowLine.js +44 -0
  121. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +5 -7
  122. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +6 -29
  123. package/esm/MultiRowXYPlotRenderer/configSchema.d.ts +5 -5
  124. package/esm/MultiRowXYPlotRenderer/configSchema.js +2 -2
  125. package/esm/MultiRowXYPlotRenderer/index.js +4 -4
  126. package/esm/MultiRowXYPlotRenderer/makeImageData.d.ts +3 -0
  127. package/esm/MultiRowXYPlotRenderer/makeImageData.js +7 -0
  128. package/esm/MultiRowXYPlotRenderer/renderMultiRowXYPlot.d.ts +3 -0
  129. package/esm/MultiRowXYPlotRenderer/renderMultiRowXYPlot.js +42 -0
  130. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +7 -1
  131. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +81 -26
  132. package/esm/MultiWiggleAdapter/configSchema.d.ts +2 -2
  133. package/esm/MultiWiggleAdapter/index.js +2 -2
  134. package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.d.ts +1 -1
  135. package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.js +4 -5
  136. package/esm/MultiWiggleAddTrackWorkflow/index.js +2 -2
  137. package/esm/MultiWiggleRendering.d.ts +7 -7
  138. package/esm/MultiWiggleRendering.js +9 -7
  139. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +5 -7
  140. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js +6 -20
  141. package/esm/MultiXYPlotRenderer/configSchema.d.ts +5 -5
  142. package/esm/MultiXYPlotRenderer/configSchema.js +2 -2
  143. package/esm/MultiXYPlotRenderer/index.js +4 -4
  144. package/esm/MultiXYPlotRenderer/makeImageData.d.ts +3 -0
  145. package/esm/MultiXYPlotRenderer/makeImageData.js +7 -0
  146. package/esm/MultiXYPlotRenderer/renderMultiXYPlot.d.ts +3 -0
  147. package/esm/MultiXYPlotRenderer/renderMultiXYPlot.js +35 -0
  148. package/esm/QuantitativeTrack/configSchema.d.ts +16 -11
  149. package/esm/QuantitativeTrack/index.js +13 -2
  150. package/esm/SVGErrorBox.d.ts +5 -0
  151. package/esm/SVGErrorBox.js +4 -0
  152. package/esm/Tooltip.d.ts +1 -3
  153. package/esm/Tooltip.js +7 -7
  154. package/esm/WiggleRPC/MultiWiggleClusterScoreMatrix.d.ts +2 -10
  155. package/esm/WiggleRPC/MultiWiggleClusterScoreMatrix.js +3 -15
  156. package/esm/WiggleRPC/MultiWiggleGetScoreMatrix.d.ts +1 -1
  157. package/esm/WiggleRPC/MultiWiggleGetScoreMatrix.js +2 -5
  158. package/esm/WiggleRPC/MultiWiggleGetSources.js +1 -4
  159. package/esm/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +1 -4
  160. package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.d.ts +10 -0
  161. package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +26 -5
  162. package/esm/WiggleRPC/executeClusterScoreMatrix.d.ts +6 -0
  163. package/esm/WiggleRPC/executeClusterScoreMatrix.js +15 -0
  164. package/esm/WiggleRPC/getScoreMatrix.d.ts +1 -1
  165. package/esm/WiggleRPC/getScoreMatrix.js +9 -6
  166. package/esm/WiggleRPC/rpcMethods.d.ts +5 -5
  167. package/esm/WiggleRPC/rpcMethods.js +5 -5
  168. package/esm/WiggleRPC/types.d.ts +1 -1
  169. package/esm/WiggleRendering.d.ts +2 -3
  170. package/esm/WiggleRendering.js +16 -3
  171. package/esm/XYPlotRenderer/XYPlotRenderer.d.ts +5 -6
  172. package/esm/XYPlotRenderer/XYPlotRenderer.js +6 -20
  173. package/esm/XYPlotRenderer/configSchema.d.ts +5 -5
  174. package/esm/XYPlotRenderer/configSchema.js +2 -2
  175. package/esm/XYPlotRenderer/index.d.ts +3 -3
  176. package/esm/XYPlotRenderer/index.js +14 -12
  177. package/esm/XYPlotRenderer/makeImageData.d.ts +3 -0
  178. package/esm/XYPlotRenderer/makeImageData.js +13 -0
  179. package/esm/XYPlotRenderer/renderXYPlot.d.ts +3 -0
  180. package/esm/XYPlotRenderer/renderXYPlot.js +23 -0
  181. package/esm/configSchema.d.ts +3 -3
  182. package/esm/configSchema.js +1 -1
  183. package/esm/drawDensity.d.ts +4 -2
  184. package/esm/drawDensity.js +25 -15
  185. package/esm/drawLine.d.ts +5 -3
  186. package/esm/drawLine.js +118 -41
  187. package/esm/drawXY.d.ts +4 -2
  188. package/esm/drawXY.js +75 -36
  189. package/esm/getMultiWiggleSourcesAutorun.d.ts +4 -2
  190. package/esm/getMultiWiggleSourcesAutorun.js +7 -2
  191. package/esm/getQuantitativeStats.d.ts +4 -2
  192. package/esm/getQuantitativeStats.js +18 -7
  193. package/esm/getQuantitativeStatsAutorun.d.ts +3 -2
  194. package/esm/getQuantitativeStatsAutorun.js +3 -3
  195. package/esm/index.d.ts +15 -19
  196. package/esm/index.js +31 -37
  197. package/esm/multiRendererHelper.d.ts +7 -0
  198. package/esm/multiRendererHelper.js +12 -0
  199. package/esm/saveTrackFormats/bedGraph.d.ts +4 -0
  200. package/esm/saveTrackFormats/bedGraph.js +11 -0
  201. package/esm/shared/SharedWiggleConfigSchema.d.ts +5 -5
  202. package/esm/shared/SharedWiggleConfigSchema.js +1 -1
  203. package/esm/shared/SharedWiggleMixin.d.ts +1083 -120
  204. package/esm/shared/SharedWiggleMixin.js +48 -26
  205. package/esm/shared/YScaleBar.d.ts +1 -1
  206. package/esm/shared/YScaleBar.js +16 -4
  207. package/esm/shared/axisPropsFromTickScale.d.ts +7 -0
  208. package/esm/shared/axisPropsFromTickScale.js +12 -0
  209. package/esm/svgExportUtil.d.ts +9 -0
  210. package/esm/svgExportUtil.js +6 -0
  211. package/esm/types.d.ts +24 -0
  212. package/esm/types.js +1 -0
  213. package/esm/util.d.ts +35 -1
  214. package/esm/util.js +61 -2
  215. package/package.json +35 -38
  216. package/dist/BigWigAdapter/BigWigAdapter.d.ts +0 -25
  217. package/dist/BigWigAdapter/BigWigAdapter.js +0 -81
  218. package/dist/BigWigAdapter/configSchema.d.ts +0 -20
  219. package/dist/BigWigAdapter/configSchema.js +0 -37
  220. package/dist/BigWigAdapter/index.d.ts +0 -2
  221. package/dist/BigWigAdapter/index.js +0 -54
  222. package/dist/CreateMultiWiggleExtension/ConfirmDialog.d.ts +0 -8
  223. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +0 -26
  224. package/dist/CreateMultiWiggleExtension/index.d.ts +0 -2
  225. package/dist/CreateMultiWiggleExtension/index.js +0 -95
  226. package/dist/DensityRenderer/DensityRenderer.d.ts +0 -7
  227. package/dist/DensityRenderer/DensityRenderer.js +0 -46
  228. package/dist/DensityRenderer/configSchema.d.ts +0 -37
  229. package/dist/DensityRenderer/configSchema.js +0 -13
  230. package/dist/DensityRenderer/index.d.ts +0 -2
  231. package/dist/DensityRenderer/index.js +0 -17
  232. package/dist/GuessAdapter/index.d.ts +0 -2
  233. package/dist/GuessAdapter/index.js +0 -25
  234. package/dist/LinePlotRenderer/LinePlotRenderer.d.ts +0 -8
  235. package/dist/LinePlotRenderer/LinePlotRenderer.js +0 -56
  236. package/dist/LinePlotRenderer/configSchema.d.ts +0 -43
  237. package/dist/LinePlotRenderer/configSchema.js +0 -19
  238. package/dist/LinePlotRenderer/index.d.ts +0 -2
  239. package/dist/LinePlotRenderer/index.js +0 -17
  240. package/dist/LinearWiggleDisplay/components/SetColorDialog.d.ts +0 -12
  241. package/dist/LinearWiggleDisplay/components/SetColorDialog.js +0 -31
  242. package/dist/LinearWiggleDisplay/components/Tooltip.d.ts +0 -15
  243. package/dist/LinearWiggleDisplay/components/Tooltip.js +0 -32
  244. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +0 -5
  245. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -28
  246. package/dist/LinearWiggleDisplay/configSchema.d.ts +0 -78
  247. package/dist/LinearWiggleDisplay/configSchema.js +0 -29
  248. package/dist/LinearWiggleDisplay/index.d.ts +0 -5
  249. package/dist/LinearWiggleDisplay/index.js +0 -65
  250. package/dist/LinearWiggleDisplay/model.d.ts +0 -419
  251. package/dist/LinearWiggleDisplay/model.js +0 -262
  252. package/dist/LinearWiggleDisplay/renderSvg.d.ts +0 -3
  253. package/dist/LinearWiggleDisplay/renderSvg.js +0 -16
  254. package/dist/MultiDensityRenderer/MultiDensityRenderer.d.ts +0 -8
  255. package/dist/MultiDensityRenderer/MultiDensityRenderer.js +0 -65
  256. package/dist/MultiDensityRenderer/configSchema.d.ts +0 -37
  257. package/dist/MultiDensityRenderer/configSchema.js +0 -13
  258. package/dist/MultiDensityRenderer/index.d.ts +0 -2
  259. package/dist/MultiDensityRenderer/index.js +0 -17
  260. package/dist/MultiLineRenderer/MultiLineRenderer.d.ts +0 -8
  261. package/dist/MultiLineRenderer/MultiLineRenderer.js +0 -58
  262. package/dist/MultiLineRenderer/configSchema.d.ts +0 -49
  263. package/dist/MultiLineRenderer/configSchema.js +0 -26
  264. package/dist/MultiLineRenderer/index.d.ts +0 -2
  265. package/dist/MultiLineRenderer/index.js +0 -17
  266. package/dist/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +0 -7
  267. package/dist/MultiLinearWiggleDisplay/components/ColorLegend.js +0 -18
  268. package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +0 -7
  269. package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +0 -17
  270. package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +0 -7
  271. package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +0 -15
  272. package/dist/MultiLinearWiggleDisplay/components/LegendItem.d.ts +0 -11
  273. package/dist/MultiLinearWiggleDisplay/components/LegendItem.js +0 -19
  274. package/dist/MultiLinearWiggleDisplay/components/RectBg.d.ts +0 -8
  275. package/dist/MultiLinearWiggleDisplay/components/RectBg.js +0 -9
  276. package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +0 -5
  277. package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.js +0 -19
  278. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +0 -9
  279. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +0 -42
  280. package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +0 -7
  281. package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.js +0 -130
  282. package/dist/MultiLinearWiggleDisplay/components/Tooltip.d.ts +0 -18
  283. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +0 -35
  284. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.d.ts +0 -6
  285. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.js +0 -29
  286. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.d.ts +0 -7
  287. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.js +0 -79
  288. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.d.ts +0 -7
  289. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.js +0 -145
  290. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.d.ts +0 -7
  291. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.js +0 -2
  292. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +0 -5
  293. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -14
  294. package/dist/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +0 -7
  295. package/dist/MultiLinearWiggleDisplay/components/YScaleBars.js +0 -28
  296. package/dist/MultiLinearWiggleDisplay/components/util.d.ts +0 -13
  297. package/dist/MultiLinearWiggleDisplay/components/util.js +0 -45
  298. package/dist/MultiLinearWiggleDisplay/configSchema.d.ts +0 -84
  299. package/dist/MultiLinearWiggleDisplay/configSchema.js +0 -44
  300. package/dist/MultiLinearWiggleDisplay/index.d.ts +0 -2
  301. package/dist/MultiLinearWiggleDisplay/index.js +0 -57
  302. package/dist/MultiLinearWiggleDisplay/model.d.ts +0 -436
  303. package/dist/MultiLinearWiggleDisplay/model.js +0 -413
  304. package/dist/MultiLinearWiggleDisplay/renderSvg.d.ts +0 -3
  305. package/dist/MultiLinearWiggleDisplay/renderSvg.js +0 -15
  306. package/dist/MultiLinearWiggleDisplay/types.d.ts +0 -14
  307. package/dist/MultiLinearWiggleDisplay/types.js +0 -2
  308. package/dist/MultiLinearWiggleDisplay/util.d.ts +0 -1
  309. package/dist/MultiLinearWiggleDisplay/util.js +0 -10
  310. package/dist/MultiQuantitativeTrack/configSchema.d.ts +0 -80
  311. package/dist/MultiQuantitativeTrack/configSchema.js +0 -11
  312. package/dist/MultiQuantitativeTrack/index.d.ts +0 -2
  313. package/dist/MultiQuantitativeTrack/index.js +0 -20
  314. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +0 -8
  315. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js +0 -70
  316. package/dist/MultiRowLineRenderer/configSchema.d.ts +0 -49
  317. package/dist/MultiRowLineRenderer/configSchema.js +0 -26
  318. package/dist/MultiRowLineRenderer/index.d.ts +0 -2
  319. package/dist/MultiRowLineRenderer/index.js +0 -17
  320. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +0 -8
  321. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +0 -70
  322. package/dist/MultiRowXYPlotRenderer/configSchema.d.ts +0 -57
  323. package/dist/MultiRowXYPlotRenderer/configSchema.js +0 -34
  324. package/dist/MultiRowXYPlotRenderer/index.d.ts +0 -2
  325. package/dist/MultiRowXYPlotRenderer/index.js +0 -17
  326. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +0 -30
  327. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +0 -85
  328. package/dist/MultiWiggleAdapter/configSchema.d.ts +0 -13
  329. package/dist/MultiWiggleAdapter/configSchema.js +0 -17
  330. package/dist/MultiWiggleAdapter/index.d.ts +0 -2
  331. package/dist/MultiWiggleAdapter/index.js +0 -57
  332. package/dist/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.d.ts +0 -5
  333. package/dist/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.js +0 -89
  334. package/dist/MultiWiggleAddTrackWorkflow/index.d.ts +0 -2
  335. package/dist/MultiWiggleAddTrackWorkflow/index.js +0 -46
  336. package/dist/MultiWiggleRendering.d.ts +0 -19
  337. package/dist/MultiWiggleRendering.js +0 -81
  338. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +0 -8
  339. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js +0 -61
  340. package/dist/MultiXYPlotRenderer/configSchema.d.ts +0 -57
  341. package/dist/MultiXYPlotRenderer/configSchema.js +0 -34
  342. package/dist/MultiXYPlotRenderer/index.d.ts +0 -2
  343. package/dist/MultiXYPlotRenderer/index.js +0 -17
  344. package/dist/QuantitativeTrack/configSchema.d.ts +0 -80
  345. package/dist/QuantitativeTrack/configSchema.js +0 -11
  346. package/dist/QuantitativeTrack/index.d.ts +0 -2
  347. package/dist/QuantitativeTrack/index.js +0 -20
  348. package/dist/Tooltip.d.ts +0 -18
  349. package/dist/Tooltip.js +0 -34
  350. package/dist/WiggleBaseRenderer.d.ts +0 -57
  351. package/dist/WiggleBaseRenderer.js +0 -42
  352. package/dist/WiggleRPC/MultiWiggleClusterScoreMatrix.d.ts +0 -14
  353. package/dist/WiggleRPC/MultiWiggleClusterScoreMatrix.js +0 -31
  354. package/dist/WiggleRPC/MultiWiggleGetScoreMatrix.d.ts +0 -6
  355. package/dist/WiggleRPC/MultiWiggleGetScoreMatrix.js +0 -22
  356. package/dist/WiggleRPC/MultiWiggleGetSources.d.ts +0 -14
  357. package/dist/WiggleRPC/MultiWiggleGetSources.js +0 -22
  358. package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.d.ts +0 -12
  359. package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +0 -22
  360. package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.d.ts +0 -13
  361. package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +0 -22
  362. package/dist/WiggleRPC/getScoreMatrix.d.ts +0 -6
  363. package/dist/WiggleRPC/getScoreMatrix.js +0 -35
  364. package/dist/WiggleRPC/rpcMethods.d.ts +0 -5
  365. package/dist/WiggleRPC/rpcMethods.js +0 -21
  366. package/dist/WiggleRPC/type.d.ts +0 -0
  367. package/dist/WiggleRPC/type.js +0 -1
  368. package/dist/WiggleRPC/types.d.ts +0 -13
  369. package/dist/WiggleRPC/types.js +0 -2
  370. package/dist/WiggleRendering.d.ts +0 -14
  371. package/dist/WiggleRendering.js +0 -35
  372. package/dist/XYPlotRenderer/XYPlotRenderer.d.ts +0 -7
  373. package/dist/XYPlotRenderer/XYPlotRenderer.js +0 -61
  374. package/dist/XYPlotRenderer/configSchema.d.ts +0 -57
  375. package/dist/XYPlotRenderer/configSchema.js +0 -34
  376. package/dist/XYPlotRenderer/index.d.ts +0 -5
  377. package/dist/XYPlotRenderer/index.js +0 -24
  378. package/dist/configSchema.d.ts +0 -37
  379. package/dist/configSchema.js +0 -47
  380. package/dist/drawDensity.d.ts +0 -18
  381. package/dist/drawDensity.js +0 -81
  382. package/dist/drawLine.d.ts +0 -20
  383. package/dist/drawLine.js +0 -77
  384. package/dist/drawXY.d.ts +0 -21
  385. package/dist/drawXY.js +0 -191
  386. package/dist/getMultiWiggleSourcesAutorun.d.ts +0 -17
  387. package/dist/getMultiWiggleSourcesAutorun.js +0 -38
  388. package/dist/getQuantitativeStats.d.ts +0 -13
  389. package/dist/getQuantitativeStats.js +0 -70
  390. package/dist/getQuantitativeStatsAutorun.d.ts +0 -13
  391. package/dist/getQuantitativeStatsAutorun.js +0 -35
  392. package/dist/index.d.ts +0 -91
  393. package/dist/index.js +0 -112
  394. package/dist/shared/SetMinMaxDialog.d.ts +0 -10
  395. package/dist/shared/SetMinMaxDialog.js +0 -26
  396. package/dist/shared/SharedWiggleConfigSchema.d.ts +0 -66
  397. package/dist/shared/SharedWiggleConfigSchema.js +0 -56
  398. package/dist/shared/SharedWiggleMixin.d.ts +0 -405
  399. package/dist/shared/SharedWiggleMixin.js +0 -343
  400. package/dist/shared/YScaleBar.d.ts +0 -9
  401. package/dist/shared/YScaleBar.js +0 -12
  402. package/dist/util.d.ts +0 -24
  403. package/dist/util.js +0 -105
  404. package/esm/WiggleBaseRenderer.d.ts +0 -57
  405. package/esm/WiggleBaseRenderer.js +0 -36
  406. package/esm/WiggleRPC/type.d.ts +0 -0
  407. package/esm/WiggleRPC/type.js +0 -1
@@ -3,15 +3,16 @@ import { getConf } from '@jbrowse/core/configuration';
3
3
  import { set1 as colors } from '@jbrowse/core/ui/colors';
4
4
  import { getContainingView, getSession, max, measureText, } from '@jbrowse/core/util';
5
5
  import { stopStopToken } from '@jbrowse/core/util/stopToken';
6
+ import { isAlive, types } from '@jbrowse/mobx-state-tree';
7
+ import VisibilityIcon from '@mui/icons-material/Visibility';
6
8
  import deepEqual from 'fast-deep-equal';
7
- import { isAlive, types } from 'mobx-state-tree';
8
- import { axisPropsFromTickScale } from 'react-d3-axis-mod';
9
- import SharedWiggleMixin from '../shared/SharedWiggleMixin';
10
- import { YSCALEBAR_LABEL_OFFSET, getScale } from '../util';
9
+ import SharedWiggleMixin from "../shared/SharedWiggleMixin.js";
10
+ import axisPropsFromTickScale from "../shared/axisPropsFromTickScale.js";
11
+ import { YSCALEBAR_LABEL_OFFSET, getScale } from "../util.js";
11
12
  const randomColor = () => '#000000'.replaceAll('0', () => (~~(Math.random() * 16)).toString(16));
12
- const Tooltip = lazy(() => import('./components/Tooltip'));
13
- const SetColorDialog = lazy(() => import('./components/SetColorDialog'));
14
- const WiggleClusterDialog = lazy(() => import('./components/WiggleClusterDialog/WiggleClusterDialog'));
13
+ const Tooltip = lazy(() => import("./components/Tooltip.js"));
14
+ const SetColorDialog = lazy(() => import("./components/SetColorDialog.js"));
15
+ const WiggleClusterDialog = lazy(() => import("./components/WiggleClusterDialog/WiggleClusterDialog.js"));
15
16
  const rendererTypes = new Map([
16
17
  ['xyplot', 'MultiXYPlotRenderer'],
17
18
  ['multirowxy', 'MultiRowXYPlotRenderer'],
@@ -88,13 +89,13 @@ export function stateModelFactory(_pluginManager, configSchema) {
88
89
  self.rendererTypeName === 'MultiRowLineRenderer' ||
89
90
  self.rendererTypeName === 'MultiDensityRenderer');
90
91
  },
91
- get needsCustomLegend() {
92
- return self.rendererTypeName === 'MultiDensityRenderer';
93
- },
94
92
  get canHaveFill() {
95
93
  return (self.rendererTypeName === 'MultiXYPlotRenderer' ||
96
94
  self.rendererTypeName === 'MultiRowXYPlotRenderer');
97
95
  },
96
+ get needsCustomLegend() {
97
+ return self.rendererTypeName === 'MultiDensityRenderer';
98
+ },
98
99
  get renderColorBoxes() {
99
100
  return !(self.rendererTypeName === 'MultiRowLineRenderer' ||
100
101
  self.rendererTypeName === 'MultiRowXYPlotRenderer');
@@ -103,26 +104,28 @@ export function stateModelFactory(_pluginManager, configSchema) {
103
104
  return this.isMultiRow;
104
105
  },
105
106
  get sourcesWithoutLayout() {
106
- var _a;
107
- const sources = Object.fromEntries(((_a = self.sourcesVolatile) === null || _a === void 0 ? void 0 : _a.map(s => [s.name, s])) || []);
107
+ const sources = Object.fromEntries(self.sourcesVolatile?.map(s => [s.name, s]) || []);
108
108
  const iter = self.sourcesVolatile;
109
- return iter === null || iter === void 0 ? void 0 : iter.map(s => ({
109
+ return iter
110
+ ?.map(s => ({
110
111
  ...sources[s.name],
111
112
  ...s,
112
- })).map((s, i) => ({
113
+ }))
114
+ .map((s, i) => ({
113
115
  ...s,
114
116
  color: s.color ||
115
117
  (!this.isMultiRow ? colors[i] || randomColor() : 'blue'),
116
118
  }));
117
119
  },
118
120
  get sources() {
119
- var _a;
120
- const sources = Object.fromEntries(((_a = self.sourcesVolatile) === null || _a === void 0 ? void 0 : _a.map(s => [s.name, s])) || []);
121
+ const sources = Object.fromEntries(self.sourcesVolatile?.map(s => [s.name, s]) || []);
121
122
  const iter = self.layout.length ? self.layout : self.sourcesVolatile;
122
- return iter === null || iter === void 0 ? void 0 : iter.map(s => ({
123
+ return iter
124
+ ?.map(s => ({
123
125
  ...sources[s.name],
124
126
  ...s,
125
- })).map((s, i) => ({
127
+ }))
128
+ .map((s, i) => ({
126
129
  ...s,
127
130
  color: s.color ||
128
131
  (!this.isMultiRow ? colors[i] || randomColor() : 'blue'),
@@ -130,13 +133,15 @@ export function stateModelFactory(_pluginManager, configSchema) {
130
133
  },
131
134
  get quantitativeStatsReady() {
132
135
  const view = getContainingView(self);
133
- return (view.initialized && self.statsReadyAndRegionNotTooLarge && !self.error);
136
+ return (view.initialized &&
137
+ self.featureDensityStatsReadyAndRegionNotTooLarge &&
138
+ !self.error);
134
139
  },
135
140
  }))
136
141
  .views(self => ({
137
142
  get rowHeight() {
138
143
  const { sources, height, isMultiRow } = self;
139
- return isMultiRow ? height / ((sources === null || sources === void 0 ? void 0 : sources.length) || 1) : height;
144
+ return isMultiRow ? height / (sources?.length || 1) : height;
140
145
  },
141
146
  get rowHeightTooSmallForScalebar() {
142
147
  return this.rowHeight < 70;
@@ -153,11 +158,9 @@ export function stateModelFactory(_pluginManager, configSchema) {
153
158
  const superProps = superRenderProps();
154
159
  return {
155
160
  ...superProps,
156
- displayModel: self,
157
161
  config: self.rendererConfig,
158
162
  filters: self.filters,
159
163
  resolution: self.resolution,
160
- rpcDriverName: self.rpcDriverName,
161
164
  sources: self.sources,
162
165
  };
163
166
  },
@@ -190,23 +193,23 @@ export function stateModelFactory(_pluginManager, configSchema) {
190
193
  ];
191
194
  },
192
195
  get quantitativeStatsRelevantToCurrentZoom() {
193
- var _a;
194
196
  const view = getContainingView(self);
195
- return ((_a = self.stats) === null || _a === void 0 ? void 0 : _a.currStatsBpPerPx) === view.bpPerPx;
197
+ return self.stats?.currStatsBpPerPx === view.bpPerPx;
196
198
  },
197
199
  };
198
200
  })
199
201
  .views(self => ({
200
202
  get legendFontSize() {
201
- return Math.min(self.rowHeight, 12);
203
+ return Math.min(self.rowHeight, 8);
202
204
  },
203
205
  get canDisplayLegendLabels() {
204
- return self.rowHeight > 11;
206
+ return self.rowHeight > 7;
205
207
  },
206
208
  get labelWidth() {
207
- var _a;
208
209
  const minWidth = 20;
209
- return max(((_a = self.sources) === null || _a === void 0 ? void 0 : _a.map(s => measureText(s.name, this.legendFontSize)).map(width => (this.canDisplayLegendLabels ? width : minWidth))) ||
210
+ return max(self.sources
211
+ ?.map(s => measureText(s.name, this.legendFontSize))
212
+ .map(width => (this.canDisplayLegendLabels ? width : minWidth)) ||
210
213
  []);
211
214
  },
212
215
  renderProps() {
@@ -214,19 +217,17 @@ export function stateModelFactory(_pluginManager, configSchema) {
214
217
  return {
215
218
  ...superProps,
216
219
  notReady: superProps.notReady || !self.sources || !self.stats,
217
- displayModel: self,
218
- rpcDriverName: self.rpcDriverName,
219
220
  displayCrossHatches: self.displayCrossHatches,
220
221
  height: self.height,
221
222
  ticks: self.ticks,
222
223
  stats: self.stats,
223
224
  scaleOpts: self.scaleOpts,
224
- onMouseMove: (_, f) => {
225
- self.setFeatureUnderMouse(f);
226
- },
227
- onMouseLeave: () => {
228
- self.setFeatureUnderMouse(undefined);
229
- },
225
+ offset: self.isMultiRow ? 0 : YSCALEBAR_LABEL_OFFSET,
226
+ };
227
+ },
228
+ renderingProps() {
229
+ return {
230
+ displayModel: self,
230
231
  };
231
232
  },
232
233
  get hasResolution() {
@@ -254,6 +255,20 @@ export function stateModelFactory(_pluginManager, configSchema) {
254
255
  trackMenuItems() {
255
256
  return [
256
257
  ...superTrackMenuItems(),
258
+ {
259
+ label: 'Show...',
260
+ icon: VisibilityIcon,
261
+ subMenu: [
262
+ {
263
+ label: 'Show tooltips',
264
+ type: 'checkbox',
265
+ checked: self.showTooltipsEnabled,
266
+ onClick: () => {
267
+ self.setShowTooltips(!self.showTooltipsEnabled);
268
+ },
269
+ },
270
+ ],
271
+ },
257
272
  {
258
273
  label: 'Score',
259
274
  subMenu: self.scoreTrackMenuItems(),
@@ -306,18 +321,22 @@ export function stateModelFactory(_pluginManager, configSchema) {
306
321
  },
307
322
  ]
308
323
  : []),
309
- {
310
- label: 'Cluster by score',
311
- onClick: () => {
312
- getSession(self).queueDialog(handleClose => [
313
- WiggleClusterDialog,
314
- {
315
- model: self,
316
- handleClose,
324
+ ...(self.isMultiRow
325
+ ? [
326
+ {
327
+ label: 'Cluster rows by score',
328
+ onClick: () => {
329
+ getSession(self).queueDialog(handleClose => [
330
+ WiggleClusterDialog,
331
+ {
332
+ model: self,
333
+ handleClose,
334
+ },
335
+ ]);
317
336
  },
318
- ]);
319
- },
320
- },
337
+ },
338
+ ]
339
+ : []),
321
340
  {
322
341
  label: 'Show sidebar',
323
342
  type: 'checkbox',
@@ -350,8 +369,8 @@ export function stateModelFactory(_pluginManager, configSchema) {
350
369
  (async () => {
351
370
  try {
352
371
  const [{ getMultiWiggleSourcesAutorun }, { getQuantitativeStatsAutorun },] = await Promise.all([
353
- import('../getMultiWiggleSourcesAutorun'),
354
- import('../getQuantitativeStatsAutorun'),
372
+ import("../getMultiWiggleSourcesAutorun.js"),
373
+ import("../getQuantitativeStatsAutorun.js"),
355
374
  ]);
356
375
  getQuantitativeStatsAutorun(self);
357
376
  getMultiWiggleSourcesAutorun(self);
@@ -365,10 +384,21 @@ export function stateModelFactory(_pluginManager, configSchema) {
365
384
  })();
366
385
  },
367
386
  async renderSvg(opts) {
368
- const { renderSvg } = await import('./renderSvg');
387
+ const { renderSvg } = await import("./renderSvg.js");
369
388
  return renderSvg(self, opts, superRenderSvg);
370
389
  },
371
390
  };
391
+ })
392
+ .postProcessSnapshot(snap => {
393
+ if (!snap) {
394
+ return snap;
395
+ }
396
+ const { layout, showSidebar, ...rest } = snap;
397
+ return {
398
+ ...rest,
399
+ ...(layout?.length ? { layout } : {}),
400
+ ...(!showSidebar ? { showSidebar } : {}),
401
+ };
372
402
  });
373
403
  }
374
404
  export default stateModelFactory;
@@ -1,3 +1,3 @@
1
- import type { WiggleDisplayModel } from './model';
1
+ import type { WiggleDisplayModel } from './model.ts';
2
2
  import type { ExportSvgDisplayOptions } from '@jbrowse/plugin-linear-genome-view';
3
3
  export declare function renderSvg(self: WiggleDisplayModel, opts: ExportSvgDisplayOptions, superRenderSvg: (opts: ExportSvgDisplayOptions) => Promise<React.ReactNode>): Promise<import("react/jsx-runtime").JSX.Element>;
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { getContainingView } from '@jbrowse/core/util';
3
3
  import { when } from 'mobx';
4
- import YScaleBars from './components/YScaleBars';
4
+ import { isReadyOrHasError } from "../svgExportUtil.js";
5
+ import YScaleBars from "./components/YScaleBars.js";
5
6
  export async function renderSvg(self, opts, superRenderSvg) {
6
- await when(() => !!self.stats && !!self.regionCannotBeRenderedText);
7
+ await when(() => isReadyOrHasError(self));
7
8
  const { offsetPx } = getContainingView(self);
8
9
  return (_jsxs(_Fragment, { children: [_jsx("g", { children: await superRenderSvg(opts) }), _jsx("g", { transform: `translate(${Math.max(-offsetPx, 0)})`, children: _jsx(YScaleBars, { model: self, orientation: "left", exportSVG: true }) })] }));
9
10
  }
@@ -6,6 +6,7 @@ export interface Source {
6
6
  group?: string;
7
7
  HP?: number;
8
8
  id?: string;
9
+ source: string;
9
10
  [key: string]: unknown;
10
11
  }
11
12
  export interface SampleInfo {
@@ -1 +0,0 @@
1
- export declare function randomColor(str: string): string;
@@ -1,7 +1 @@
1
- export function randomColor(str) {
2
- let sum = 0;
3
- for (let i = 0; i < str.length; i++) {
4
- sum += str.charCodeAt(i);
5
- }
6
- return `hsl(${sum * 10}, 20%, 50%)`;
7
- }
1
+ "use strict";
@@ -1,5 +1,5 @@
1
1
  import type PluginManager from '@jbrowse/core/PluginManager';
2
- declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
2
+ declare const configSchema: (pluginManager: PluginManager) => import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{}, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{
3
3
  name: {
4
4
  description: string;
5
5
  type: string;
@@ -25,8 +25,13 @@ declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/c
25
25
  description: string;
26
26
  defaultValue: {};
27
27
  };
28
- adapter: import("mobx-state-tree").IAnyModelType;
29
- textSearching: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
28
+ rpcDriverName: {
29
+ type: string;
30
+ description: string;
31
+ defaultValue: string;
32
+ };
33
+ adapter: import("@jbrowse/mobx-state-tree").IAnyModelType;
34
+ textSearching: import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{
30
35
  indexingAttributes: {
31
36
  type: string;
32
37
  description: string;
@@ -37,10 +42,10 @@ declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/c
37
42
  description: string;
38
43
  defaultValue: string[];
39
44
  };
40
- textSearchAdapter: import("mobx-state-tree").IAnyModelType;
41
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
42
- displays: import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>;
43
- formatDetails: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
45
+ textSearchAdapter: import("@jbrowse/mobx-state-tree").IAnyModelType;
46
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
47
+ displays: import("@jbrowse/mobx-state-tree").IArrayType<import("@jbrowse/mobx-state-tree").IAnyModelType>;
48
+ formatDetails: import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{
44
49
  feature: {
45
50
  type: string;
46
51
  description: string;
@@ -63,8 +68,8 @@ declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/c
63
68
  defaultValue: number;
64
69
  description: string;
65
70
  };
66
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
67
- formatAbout: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
71
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
72
+ formatAbout: import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{
68
73
  config: {
69
74
  type: string;
70
75
  description: string;
@@ -75,6 +80,6 @@ declare const configSchema: (pluginManager: PluginManager) => import("@jbrowse/c
75
80
  type: string;
76
81
  defaultValue: boolean;
77
82
  };
78
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
79
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "trackId">>, undefined>>;
83
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
84
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, "trackId">>, undefined>>;
80
85
  export default configSchema;
@@ -1,6 +1,7 @@
1
1
  import TrackType from '@jbrowse/core/pluggableElementTypes/TrackType';
2
2
  import { createBaseTrackModel } from '@jbrowse/core/pluggableElementTypes/models';
3
- import configSchemaF from './configSchema';
3
+ import configSchemaF from "./configSchema.js";
4
+ import { stringifyBedGraph } from "../saveTrackFormats/bedGraph.js";
4
5
  export default function MultiQuantitativeTrackF(pluginManager) {
5
6
  pluginManager.addTrackType(() => {
6
7
  const configSchema = configSchemaF(pluginManager);
@@ -8,7 +9,17 @@ export default function MultiQuantitativeTrackF(pluginManager) {
8
9
  name: 'MultiQuantitativeTrack',
9
10
  displayName: 'Multi-quantitative track',
10
11
  configSchema,
11
- stateModel: createBaseTrackModel(pluginManager, 'MultiQuantitativeTrack', configSchema),
12
+ stateModel: createBaseTrackModel(pluginManager, 'MultiQuantitativeTrack', configSchema).views(() => ({
13
+ saveTrackFileFormatOptions() {
14
+ return {
15
+ bedGraph: {
16
+ name: 'BedGraph',
17
+ extension: 'bedgraph',
18
+ callback: stringifyBedGraph,
19
+ },
20
+ };
21
+ },
22
+ })),
12
23
  });
13
24
  });
14
25
  }
@@ -1,8 +1,6 @@
1
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
2
- import type { MultiRenderArgsDeserialized as MultiArgs } from '../WiggleBaseRenderer';
3
- import type { Feature } from '@jbrowse/core/util';
4
- export default class MultiRowLineRenderer extends WiggleBaseRenderer {
5
- draw(ctx: CanvasRenderingContext2D, props: MultiArgs): Promise<{
6
- reducedFeatures: Feature[];
7
- }>;
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ import type { MultiRenderArgsDeserialized } from '../types.ts';
3
+ export default class MultiRowLineRenderer extends FeatureRendererType {
4
+ supportsSVG: boolean;
5
+ render(renderProps: MultiRenderArgsDeserialized): Promise<import("@jbrowse/core/pluggableElementTypes/renderers/RendererType").RenderReturn>;
8
6
  }
@@ -1,31 +1,8 @@
1
- import { forEachWithStopTokenCheck, groupBy } from '@jbrowse/core/util';
2
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
3
- export default class MultiRowLineRenderer extends WiggleBaseRenderer {
4
- async draw(ctx, props) {
5
- const { stopToken, bpPerPx, sources, regions, features } = props;
6
- const region = regions[0];
7
- const groups = groupBy(features.values(), f => f.get('source'));
8
- const height = props.height / sources.length;
9
- const width = (region.end - region.start) / bpPerPx;
10
- const { drawLine } = await import('../drawLine');
11
- let feats = [];
12
- ctx.save();
13
- forEachWithStopTokenCheck(sources, stopToken, source => {
14
- const { reducedFeatures } = drawLine(ctx, {
15
- ...props,
16
- features: groups[source.name] || [],
17
- height,
18
- colorCallback: () => source.color || 'blue',
19
- });
20
- ctx.strokeStyle = 'rgba(200,200,200,0.8)';
21
- ctx.beginPath();
22
- ctx.moveTo(0, height);
23
- ctx.lineTo(width, height);
24
- ctx.stroke();
25
- ctx.translate(0, height);
26
- feats = feats.concat(reducedFeatures);
27
- });
28
- ctx.restore();
29
- return { reducedFeatures: feats };
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ export default class MultiRowLineRenderer extends FeatureRendererType {
3
+ supportsSVG = true;
4
+ async render(renderProps) {
5
+ const { makeImageData } = await import("./makeImageData.js");
6
+ return makeImageData(renderProps, this.pluginManager);
30
7
  }
31
8
  }
@@ -1,4 +1,4 @@
1
- declare const configSchema: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
1
+ declare const configSchema: import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{
2
2
  displayCrossHatches: {
3
3
  type: string;
4
4
  description: string;
@@ -6,11 +6,11 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
6
6
  };
7
7
  summaryScoreMode: {
8
8
  type: string;
9
- model: import("mobx-state-tree").ISimpleType<string>;
9
+ model: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
10
10
  description: string;
11
11
  defaultValue: string;
12
12
  };
13
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
13
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{
14
14
  color: {
15
15
  type: string;
16
16
  description: string;
@@ -36,7 +36,7 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
36
36
  };
37
37
  bicolorPivot: {
38
38
  type: string;
39
- model: import("mobx-state-tree").ISimpleType<string>;
39
+ model: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
40
40
  description: string;
41
41
  defaultValue: string;
42
42
  };
@@ -45,5 +45,5 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
45
45
  defaultValue: number;
46
46
  description: string;
47
47
  };
48
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>, undefined>>;
48
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<undefined, undefined>>, undefined>>;
49
49
  export default configSchema;
@@ -1,6 +1,6 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- import { types } from 'mobx-state-tree';
3
- import baseWiggleRendererConfigSchema from '../configSchema';
2
+ import { types } from '@jbrowse/mobx-state-tree';
3
+ import baseWiggleRendererConfigSchema from "../configSchema.js";
4
4
  function x() { }
5
5
  const configSchema = ConfigurationSchema('MultiRowLineRenderer', {
6
6
  displayCrossHatches: {
@@ -1,10 +1,10 @@
1
- import ReactComponent from '../MultiWiggleRendering';
2
- import MultiRowLineRenderer from './MultiRowLineRenderer';
3
- import configSchema from './configSchema';
1
+ import { lazy } from 'react';
2
+ import MultiRowLineRenderer from "./MultiRowLineRenderer.js";
3
+ import configSchema from "./configSchema.js";
4
4
  export default function MultiRowLineRendererF(pluginManager) {
5
5
  pluginManager.addRendererType(() => new MultiRowLineRenderer({
6
6
  name: 'MultiRowLineRenderer',
7
- ReactComponent,
7
+ ReactComponent: lazy(() => import("../MultiWiggleRendering.js")),
8
8
  configSchema,
9
9
  pluginManager,
10
10
  }));
@@ -0,0 +1,3 @@
1
+ import type { MultiRenderArgsDeserialized } from '../types.ts';
2
+ import type PluginManager from '@jbrowse/core/PluginManager';
3
+ export declare function makeImageData(renderProps: MultiRenderArgsDeserialized, pluginManager: PluginManager): Promise<import("@jbrowse/core/pluggableElementTypes/renderers/RendererType").RenderReturn>;
@@ -0,0 +1,7 @@
1
+ export async function makeImageData(renderProps, pluginManager) {
2
+ const { renderMultiWiggle } = await import("../multiRendererHelper.js");
3
+ return renderMultiWiggle(pluginManager, renderProps, async (props, features) => {
4
+ const { renderMultiRowLine } = await import("./renderMultiRowLine.js");
5
+ return renderMultiRowLine(props, features);
6
+ });
7
+ }
@@ -0,0 +1,3 @@
1
+ import type { MultiRenderArgsDeserialized } from '../types.ts';
2
+ import type { Feature } from '@jbrowse/core/util';
3
+ export declare function renderMultiRowLine(renderProps: MultiRenderArgsDeserialized, features: Feature[]): Promise<import("librpc-web-mod").RpcResult>;
@@ -0,0 +1,44 @@
1
+ import { groupBy, renderToAbstractCanvas, updateStatus, } from '@jbrowse/core/util';
2
+ import { rpcResult } from '@jbrowse/core/util/librpc';
3
+ import { collectTransferables } from '@jbrowse/core/util/offscreenCanvasPonyfill';
4
+ import { createStopTokenChecker } from '@jbrowse/core/util/stopToken';
5
+ import { drawLine } from "../drawLine.js";
6
+ import { serializeWiggleFeature } from "../util.js";
7
+ export async function renderMultiRowLine(renderProps, features) {
8
+ const { sources, height, regions, bpPerPx, stopToken, statusCallback = () => { }, } = renderProps;
9
+ const region = regions[0];
10
+ const width = (region.end - region.start) / bpPerPx;
11
+ const rowHeight = height / sources.length;
12
+ const lastCheck = createStopTokenChecker(stopToken);
13
+ const { reducedFeatures, ...rest } = await updateStatus('Rendering plot', statusCallback, () => renderToAbstractCanvas(width, height, renderProps, ctx => {
14
+ const groups = groupBy(features, f => f.get('source'));
15
+ let feats = [];
16
+ ctx.save();
17
+ for (const source of sources) {
18
+ const { reducedFeatures } = drawLine(ctx, {
19
+ ...renderProps,
20
+ features: groups[source.name] || [],
21
+ height: rowHeight,
22
+ staticColor: source.color || 'blue',
23
+ colorCallback: () => '',
24
+ lastCheck,
25
+ });
26
+ ctx.strokeStyle = 'rgba(200,200,200,0.8)';
27
+ ctx.beginPath();
28
+ ctx.moveTo(0, rowHeight);
29
+ ctx.lineTo(width, rowHeight);
30
+ ctx.stroke();
31
+ ctx.translate(0, rowHeight);
32
+ feats = feats.concat(reducedFeatures);
33
+ }
34
+ ctx.restore();
35
+ return { reducedFeatures: feats };
36
+ }));
37
+ const serialized = {
38
+ ...rest,
39
+ features: reducedFeatures.map(serializeWiggleFeature),
40
+ height,
41
+ width,
42
+ };
43
+ return rpcResult(serialized, collectTransferables(rest));
44
+ }
@@ -1,8 +1,6 @@
1
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
2
- import type { MultiRenderArgsDeserialized as MultiArgs } from '../WiggleBaseRenderer';
3
- import type { Feature } from '@jbrowse/core/util';
4
- export default class MultiXYPlotRenderer extends WiggleBaseRenderer {
5
- draw(ctx: CanvasRenderingContext2D, props: MultiArgs): Promise<{
6
- reducedFeatures: Feature[];
7
- }>;
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ import type { MultiRenderArgsDeserialized } from '../types.ts';
3
+ export default class MultiRowXYPlotRenderer extends FeatureRendererType {
4
+ supportsSVG: boolean;
5
+ render(renderProps: MultiRenderArgsDeserialized): Promise<import("@jbrowse/core/pluggableElementTypes/renderers/RendererType").RenderReturn>;
8
6
  }
@@ -1,31 +1,8 @@
1
- import { forEachWithStopTokenCheck, groupBy } from '@jbrowse/core/util';
2
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
3
- export default class MultiXYPlotRenderer extends WiggleBaseRenderer {
4
- async draw(ctx, props) {
5
- const { stopToken, bpPerPx, sources, regions, features } = props;
6
- const region = regions[0];
7
- const groups = groupBy(features.values(), f => f.get('source'));
8
- const height = props.height / sources.length;
9
- const width = (region.end - region.start) / bpPerPx;
10
- const { drawXY } = await import('../drawXY');
11
- let feats = [];
12
- ctx.save();
13
- forEachWithStopTokenCheck(sources, stopToken, source => {
14
- const { reducedFeatures } = drawXY(ctx, {
15
- ...props,
16
- features: groups[source.name] || [],
17
- height,
18
- colorCallback: () => source.color || 'blue',
19
- });
20
- ctx.strokeStyle = 'rgba(200,200,200,0.8)';
21
- ctx.beginPath();
22
- ctx.moveTo(0, height);
23
- ctx.lineTo(width, height);
24
- ctx.stroke();
25
- ctx.translate(0, height);
26
- feats = feats.concat(reducedFeatures);
27
- });
28
- ctx.restore();
29
- return { reducedFeatures: feats };
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ export default class MultiRowXYPlotRenderer extends FeatureRendererType {
3
+ supportsSVG = true;
4
+ async render(renderProps) {
5
+ const { makeImageData } = await import("./makeImageData.js");
6
+ return makeImageData(renderProps, this.pluginManager);
30
7
  }
31
8
  }