@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
@@ -1,15 +1,15 @@
1
1
  import { lazy } from 'react';
2
2
  import { getConf } from '@jbrowse/core/configuration';
3
3
  import { getContainingView, getSession } from '@jbrowse/core/util';
4
+ import { types } from '@jbrowse/mobx-state-tree';
4
5
  import EqualizerIcon from '@mui/icons-material/Equalizer';
5
6
  import PaletteIcon from '@mui/icons-material/Palette';
6
7
  import VisibilityIcon from '@mui/icons-material/Visibility';
7
- import { 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';
11
- const Tooltip = lazy(() => import('./components/Tooltip'));
12
- const SetColorDialog = lazy(() => import('./components/SetColorDialog'));
8
+ import SharedWiggleMixin from "../shared/SharedWiggleMixin.js";
9
+ import axisPropsFromTickScale from "../shared/axisPropsFromTickScale.js";
10
+ import { YSCALEBAR_LABEL_OFFSET, getScale } from "../util.js";
11
+ const Tooltip = lazy(() => import("./components/Tooltip.js"));
12
+ const SetColorDialog = lazy(() => import("./components/SetColorDialog.js"));
13
13
  const rendererTypes = new Map([
14
14
  ['xyplot', 'XYPlotRenderer'],
15
15
  ['density', 'DensityRenderer'],
@@ -39,17 +39,15 @@ function stateModelFactory(pluginManager, configSchema) {
39
39
  return rendererType;
40
40
  },
41
41
  get quantitativeStatsRelevantToCurrentZoom() {
42
- var _a;
43
42
  const view = getContainingView(self);
44
- return ((_a = self.stats) === null || _a === void 0 ? void 0 : _a.currStatsBpPerPx) === view.bpPerPx;
43
+ return self.stats?.currStatsBpPerPx === view.bpPerPx;
45
44
  },
46
45
  get graphType() {
47
46
  return (self.rendererTypeName === 'XYPlotRenderer' ||
48
47
  self.rendererTypeName === 'LinePlotRenderer');
49
48
  },
50
49
  get inverted() {
51
- var _a;
52
- return (_a = self.invertedSetting) !== null && _a !== void 0 ? _a : getConf(self, 'inverted');
50
+ return self.invertedSetting ?? getConf(self, 'inverted');
53
51
  },
54
52
  }))
55
53
  .views(self => {
@@ -60,8 +58,7 @@ function stateModelFactory(pluginManager, configSchema) {
60
58
  const { filters, resolution, scaleOpts } = self;
61
59
  return {
62
60
  ...superProps,
63
- rpcDriverName: self.rpcDriverName,
64
- displayModel: self,
61
+ rpcDriverName: self.effectiveRpcDriverName,
65
62
  config: self.rendererConfig,
66
63
  displayCrossHatches: self.displayCrossHatchesSetting,
67
64
  scaleOpts,
@@ -94,14 +91,19 @@ function stateModelFactory(pluginManager, configSchema) {
94
91
  })
95
92
  .views(self => ({
96
93
  renderProps() {
97
- const { inverted, ticks, height } = self;
94
+ const { inverted, ticks, height, domain } = self;
98
95
  const superProps = self.adapterProps();
96
+ const view = getContainingView(self);
97
+ const statsRegion = JSON.stringify(view.dynamicBlocks);
99
98
  return {
100
99
  ...self.adapterProps(),
101
- notReady: superProps.notReady || !self.stats,
100
+ notReady: superProps.notReady ||
101
+ !domain ||
102
+ self.stats?.statsRegion !== statsRegion,
102
103
  height,
103
104
  ticks,
104
105
  inverted,
106
+ offset: YSCALEBAR_LABEL_OFFSET,
105
107
  };
106
108
  },
107
109
  get fillSetting() {
@@ -117,14 +119,16 @@ function stateModelFactory(pluginManager, configSchema) {
117
119
  },
118
120
  get quantitativeStatsReady() {
119
121
  const view = getContainingView(self);
120
- return (view.initialized && self.statsReadyAndRegionNotTooLarge && !self.error);
122
+ return (view.initialized &&
123
+ self.featureDensityStatsReadyAndRegionNotTooLarge &&
124
+ !self.error);
121
125
  },
122
126
  }))
123
127
  .views(self => {
124
128
  const { trackMenuItems: superTrackMenuItems } = self;
125
129
  const hasRenderings = getConf(self, 'defaultRendering');
126
130
  return {
127
- trackMenuItems() {
131
+ wiggleBaseTrackMenuItems() {
128
132
  return [
129
133
  ...superTrackMenuItems(),
130
134
  {
@@ -132,6 +136,10 @@ function stateModelFactory(pluginManager, configSchema) {
132
136
  icon: EqualizerIcon,
133
137
  subMenu: self.scoreTrackMenuItems(),
134
138
  },
139
+ ];
140
+ },
141
+ wiggleOnlyTrackMenuItems() {
142
+ return [
135
143
  ...(self.graphType
136
144
  ? [
137
145
  {
@@ -204,21 +212,53 @@ function stateModelFactory(pluginManager, configSchema) {
204
212
  },
205
213
  };
206
214
  })
215
+ .views(self => ({
216
+ trackMenuItems() {
217
+ return [
218
+ ...self.wiggleBaseTrackMenuItems(),
219
+ {
220
+ label: 'Show...',
221
+ icon: VisibilityIcon,
222
+ subMenu: [
223
+ {
224
+ label: 'Show tooltips',
225
+ type: 'checkbox',
226
+ checked: self.showTooltipsEnabled,
227
+ onClick: () => {
228
+ self.setShowTooltips(!self.showTooltipsEnabled);
229
+ },
230
+ },
231
+ ],
232
+ },
233
+ ...self.wiggleOnlyTrackMenuItems(),
234
+ ];
235
+ },
236
+ }))
207
237
  .actions(self => {
208
238
  const { renderSvg: superRenderSvg } = self;
209
239
  return {
210
240
  afterAttach() {
211
241
  ;
212
242
  (async () => {
213
- const { getQuantitativeStatsAutorun } = await import('../getQuantitativeStatsAutorun');
243
+ const { getQuantitativeStatsAutorun } = await import("../getQuantitativeStatsAutorun.js");
214
244
  getQuantitativeStatsAutorun(self);
215
245
  })();
216
246
  },
217
247
  async renderSvg(opts) {
218
- const { renderSvg } = await import('./renderSvg');
248
+ const { renderSvg } = await import("./renderSvg.js");
219
249
  return renderSvg(self, opts, superRenderSvg);
220
250
  },
221
251
  };
252
+ })
253
+ .postProcessSnapshot(snap => {
254
+ if (!snap) {
255
+ return snap;
256
+ }
257
+ const { invertedSetting, ...rest } = snap;
258
+ return {
259
+ ...rest,
260
+ ...(invertedSetting !== undefined ? { invertedSetting } : {}),
261
+ };
222
262
  });
223
263
  }
224
264
  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 YScaleBar from '../shared/YScaleBar';
4
+ import YScaleBar from "../shared/YScaleBar.js";
5
+ import { isReadyOrHasError } from "../svgExportUtil.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 { graphType, stats } = self;
8
9
  const { offsetPx } = getContainingView(self);
9
10
  return (_jsxs(_Fragment, { children: [_jsx("g", { children: await superRenderSvg(opts) }), graphType && stats ? (_jsx("g", { transform: `translate(${Math.max(-offsetPx, 0)})`, children: _jsx(YScaleBar, { model: self, orientation: "left" }) })) : null] }));
@@ -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 MultiDensityPlotRenderer 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 MultiDensityPlotRenderer extends FeatureRendererType {
4
+ supportsSVG: boolean;
5
+ render(renderProps: MultiRenderArgsDeserialized): Promise<import("@jbrowse/core/pluggableElementTypes/renderers/RendererType").RenderReturn>;
8
6
  }
@@ -1,26 +1,8 @@
1
- import { forEachWithStopTokenCheck, groupBy } from '@jbrowse/core/util';
2
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
3
- export default class MultiDensityPlotRenderer extends WiggleBaseRenderer {
4
- async draw(ctx, props) {
5
- const { stopToken, sources, features } = props;
6
- const groups = groupBy(features.values(), f => f.get('source'));
7
- const height = props.height / sources.length;
8
- let feats = [];
9
- const { drawDensity } = await import('../drawDensity');
10
- ctx.save();
11
- forEachWithStopTokenCheck(sources, stopToken, source => {
12
- const features = groups[source.name] || [];
13
- const { reducedFeatures } = drawDensity(ctx, {
14
- ...props,
15
- features,
16
- height,
17
- });
18
- ctx.translate(0, height);
19
- feats = feats.concat(reducedFeatures);
20
- });
21
- ctx.restore();
22
- return {
23
- reducedFeatures: feats,
24
- };
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ export default class MultiDensityPlotRenderer extends FeatureRendererType {
3
+ supportsSVG = true;
4
+ async render(renderProps) {
5
+ const { makeImageData } = await import("./makeImageData.js");
6
+ return makeImageData(renderProps, this.pluginManager);
25
7
  }
26
8
  }
@@ -1,4 +1,4 @@
1
- declare const configSchema: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
1
+ declare const configSchema: import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{}, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{
2
2
  color: {
3
3
  type: string;
4
4
  description: string;
@@ -24,7 +24,7 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
24
24
  };
25
25
  bicolorPivot: {
26
26
  type: string;
27
- model: import("mobx-state-tree").ISimpleType<string>;
27
+ model: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
28
28
  description: string;
29
29
  defaultValue: string;
30
30
  };
@@ -33,5 +33,5 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
33
33
  defaultValue: number;
34
34
  description: string;
35
35
  };
36
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>, undefined>>;
36
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<undefined, undefined>>, undefined>>;
37
37
  export default configSchema;
@@ -1,5 +1,5 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- import baseWiggleRendererConfigSchema from '../configSchema';
2
+ import baseWiggleRendererConfigSchema from "../configSchema.js";
3
3
  function x() { }
4
4
  const configSchema = ConfigurationSchema('MultiDensityRenderer', {}, {
5
5
  baseConfiguration: baseWiggleRendererConfigSchema,
@@ -1,10 +1,10 @@
1
- import configSchema from './configSchema';
2
- import ReactComponent from '../MultiWiggleRendering';
3
- import MultiDensityRenderer from './MultiDensityRenderer';
1
+ import { lazy } from 'react';
2
+ import MultiDensityRenderer from "./MultiDensityRenderer.js";
3
+ import configSchema from "./configSchema.js";
4
4
  export default function MultiDensityRendererF(pluginManager) {
5
5
  pluginManager.addRendererType(() => new MultiDensityRenderer({
6
6
  name: 'MultiDensityRenderer',
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 { renderMultiDensity } = await import("./renderMultiDensity.js");
5
+ return renderMultiDensity(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 renderMultiDensity(renderProps: MultiRenderArgsDeserialized, features: Feature[]): Promise<import("librpc-web-mod").RpcResult>;
@@ -0,0 +1,37 @@
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 { drawDensity } from "../drawDensity.js";
6
+ import { serializeWiggleFeature } from "../util.js";
7
+ export async function renderMultiDensity(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 } = drawDensity(ctx, {
19
+ ...renderProps,
20
+ features: groups[source.name] || [],
21
+ height: rowHeight,
22
+ lastCheck,
23
+ });
24
+ ctx.translate(0, rowHeight);
25
+ feats = feats.concat(reducedFeatures);
26
+ }
27
+ ctx.restore();
28
+ return { reducedFeatures: feats };
29
+ }));
30
+ const serialized = {
31
+ ...rest,
32
+ features: reducedFeatures.map(serializeWiggleFeature),
33
+ height,
34
+ width,
35
+ };
36
+ return rpcResult(serialized, collectTransferables(rest));
37
+ }
@@ -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 MultiLineRenderer 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 MultiLineRenderer extends FeatureRendererType {
4
+ supportsSVG: boolean;
5
+ render(renderProps: MultiRenderArgsDeserialized): Promise<import("@jbrowse/core/pluggableElementTypes/renderers/RendererType").RenderReturn>;
8
6
  }
@@ -1,19 +1,8 @@
1
- import { forEachWithStopTokenCheck, groupBy } from '@jbrowse/core/util';
2
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
3
- export default class MultiLineRenderer extends WiggleBaseRenderer {
4
- async draw(ctx, props) {
5
- const { stopToken, sources, features } = props;
6
- const groups = groupBy(features.values(), f => f.get('source'));
7
- const { drawLine } = await import('../drawLine');
8
- let feats = [];
9
- forEachWithStopTokenCheck(sources, stopToken, source => {
10
- const { reducedFeatures } = drawLine(ctx, {
11
- ...props,
12
- features: groups[source.name] || [],
13
- colorCallback: () => source.color || 'blue',
14
- });
15
- feats = feats.concat(reducedFeatures);
16
- });
17
- return { reducedFeatures: feats };
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ export default class MultiLineRenderer extends FeatureRendererType {
3
+ supportsSVG = true;
4
+ async render(renderProps) {
5
+ const { makeImageData } = await import("./makeImageData.js");
6
+ return makeImageData(renderProps, this.pluginManager);
18
7
  }
19
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('MultiLineRenderer', {
6
6
  displayCrossHatches: {
@@ -1,10 +1,10 @@
1
- import ReactComponent from '../MultiWiggleRendering';
2
- import MultiLineRenderer from './MultiLineRenderer';
3
- import configSchema from './configSchema';
1
+ import { lazy } from 'react';
2
+ import MultiLineRenderer from "./MultiLineRenderer.js";
3
+ import configSchema from "./configSchema.js";
4
4
  export default function MultiLineRendererF(pluginManager) {
5
5
  pluginManager.addRendererType(() => new MultiLineRenderer({
6
6
  name: 'MultiLineRenderer',
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 { renderMultiLine } = await import("./renderMultiLine.js");
5
+ return renderMultiLine(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 renderMultiLine(renderProps: MultiRenderArgsDeserialized, features: Feature[]): Promise<import("librpc-web-mod").RpcResult>;
@@ -0,0 +1,34 @@
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 renderMultiLine(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 lastCheck = createStopTokenChecker(stopToken);
12
+ const { reducedFeatures, ...rest } = await updateStatus('Rendering plot', statusCallback, () => renderToAbstractCanvas(width, height, renderProps, ctx => {
13
+ const groups = groupBy(features, f => f.get('source'));
14
+ let feats = [];
15
+ for (const source of sources) {
16
+ const { reducedFeatures } = drawLine(ctx, {
17
+ ...renderProps,
18
+ features: groups[source.name] || [],
19
+ staticColor: source.color || 'blue',
20
+ colorCallback: () => '',
21
+ lastCheck,
22
+ });
23
+ feats = feats.concat(reducedFeatures);
24
+ }
25
+ return { reducedFeatures: feats };
26
+ }));
27
+ const serialized = {
28
+ ...rest,
29
+ features: reducedFeatures.map(serializeWiggleFeature),
30
+ height,
31
+ width,
32
+ };
33
+ return rpcResult(serialized, collectTransferables(rest));
34
+ }
@@ -1,6 +1,6 @@
1
- import type { WiggleDisplayModel } from '../model';
1
+ import type { MinimalModel } from './types.ts';
2
2
  declare const ColorLegend: ({ model, rowHeight, exportSVG, }: {
3
- model: WiggleDisplayModel;
3
+ model: MinimalModel;
4
4
  rowHeight: number;
5
5
  exportSVG?: boolean;
6
6
  }) => import("react/jsx-runtime").JSX.Element | null;
@@ -1,13 +1,19 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMemo } from 'react';
3
+ import { getFillProps } from '@jbrowse/core/util';
4
+ import { useTheme } from '@mui/material';
2
5
  import { observer } from 'mobx-react';
3
- import LegendItem from './LegendItem';
4
- import RectBg from './RectBg';
5
- const ColorLegend = observer(function ({ model, rowHeight, exportSVG, }) {
6
+ import LegendItem from "./LegendItem.js";
7
+ import LegendItemText from "./LegendItemText.js";
8
+ import RectBg from "./RectBg.js";
9
+ const ColorLegend = observer(function ColorLegend({ model, rowHeight, exportSVG, }) {
6
10
  const { graphType, needsFullHeightScalebar, rowHeightTooSmallForScalebar, renderColorBoxes, sources, labelWidth, } = model;
7
- const colorBoxWidth = renderColorBoxes ? 15 : 0;
11
+ const colorBoxWidth = renderColorBoxes ? 20 : 0;
8
12
  const legendWidth = labelWidth + colorBoxWidth + 5;
9
13
  const svgOffset = exportSVG ? 10 : 0;
10
14
  const extraOffset = svgOffset || (graphType && !rowHeightTooSmallForScalebar ? 50 : 0);
11
- return sources ? (_jsxs(_Fragment, { children: [needsFullHeightScalebar ? (_jsx(RectBg, { y: 0, x: extraOffset, width: legendWidth, height: (sources.length + 0.25) * rowHeight })) : null, sources.map((source, idx) => (_jsx(LegendItem, { source: source, idx: idx, model: model, rowHeight: rowHeight, exportSVG: exportSVG, labelWidth: labelWidth }, `${source.name}-${idx}`)))] })) : null;
15
+ const theme = useTheme();
16
+ const textFillProps = useMemo(() => getFillProps(theme.palette.text.primary), [theme.palette.text.primary]);
17
+ return sources ? (_jsxs(_Fragment, { children: [needsFullHeightScalebar ? (_jsx(RectBg, { y: 0, x: extraOffset, width: legendWidth, height: (sources.length + 0.25) * rowHeight })) : null, sources.map((source, idx) => (_jsx(LegendItem, { source: source, idx: idx, model: model, rowHeight: rowHeight, exportSVG: exportSVG, labelWidth: legendWidth }, `${source.name}-${idx}`))), sources.map((source, idx) => (_jsx(LegendItemText, { source: source, idx: idx, model: model, rowHeight: rowHeight, exportSVG: exportSVG, textFillProps: textFillProps }, `${source.name}-text-${idx}`)))] })) : null;
12
18
  });
13
19
  export default ColorLegend;
@@ -1,4 +1,4 @@
1
- import type { WiggleDisplayModel } from '../model';
1
+ import type { WiggleDisplayModel } from '../model.ts';
2
2
  declare const FullHeightScaleBar: ({ model, orientation, exportSVG, }: {
3
3
  model: WiggleDisplayModel;
4
4
  orientation?: string;
@@ -1,10 +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 { observer } from 'mobx-react';
4
- import ColorLegend from './ColorLegend';
5
- import { getOffset } from './util';
6
- import YScaleBar from '../../shared/YScaleBar';
7
- const FullHeightScaleBar = observer(function ({ model, orientation, exportSVG, }) {
4
+ import ColorLegend from "./ColorLegend.js";
5
+ import { getOffset } from "./util.js";
6
+ import YScaleBar from "../../shared/YScaleBar.js";
7
+ const FullHeightScaleBar = observer(function FullHeightScaleBar({ model, orientation, exportSVG, }) {
8
8
  const { labelWidth } = model;
9
9
  const { width: viewWidth } = getContainingView(model);
10
10
  return (_jsxs(_Fragment, { children: [_jsx("g", { transform: `translate(${!exportSVG ? getOffset(model) : 0},0)`, children: _jsx(YScaleBar, { model: model, orientation: orientation }) }), _jsx("g", { transform: `translate(${viewWidth - labelWidth - 100},0)`, children: _jsx(ColorLegend, { exportSVG: exportSVG, model: model, rowHeight: 12 }) })] }));
@@ -1,4 +1,4 @@
1
- import type { WiggleDisplayModel } from '../model';
1
+ import type { WiggleDisplayModel } from '../model.ts';
2
2
  declare const IndividualScaleBars: ({ model, orientation, exportSVG, }: {
3
3
  model: WiggleDisplayModel;
4
4
  orientation?: string;
@@ -1,10 +1,10 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { observer } from 'mobx-react';
3
- import ColorLegend from './ColorLegend';
4
- import ScoreLegend from './ScoreLegend';
5
- import YScaleBar from '../../shared/YScaleBar';
6
- const IndividualScaleBars = observer(function ({ model, orientation, exportSVG, }) {
3
+ import ColorLegend from "./ColorLegend.js";
4
+ import ScoreLegend from "./ScoreLegend.js";
5
+ import YScaleBar from "../../shared/YScaleBar.js";
6
+ const IndividualScaleBars = observer(function IndividualScaleBars({ model, orientation, exportSVG, }) {
7
7
  const { sources, rowHeight, rowHeightTooSmallForScalebar, needsCustomLegend, ticks, } = model;
8
- return (sources === null || sources === void 0 ? void 0 : sources.length) ? (_jsxs(_Fragment, { children: [_jsx(ColorLegend, { exportSVG: exportSVG, model: model, rowHeight: model.rowHeight }), rowHeightTooSmallForScalebar || needsCustomLegend ? (_jsx(ScoreLegend, { model: model })) : (sources.map((_source, idx) => (_jsx("g", { transform: `translate(0 ${rowHeight * idx})`, children: _jsx(YScaleBar, { model: model, orientation: orientation }) }, `${JSON.stringify(ticks)}-${idx}`))))] })) : null;
8
+ return sources?.length ? (_jsxs(_Fragment, { children: [_jsx(ColorLegend, { exportSVG: exportSVG, model: model, rowHeight: model.rowHeight }), rowHeightTooSmallForScalebar || needsCustomLegend ? (_jsx(ScoreLegend, { model: model })) : (sources.map((_source, idx) => (_jsx("g", { transform: `translate(0 ${rowHeight * idx})`, children: _jsx(YScaleBar, { model: model, orientation: orientation }) }, `${JSON.stringify(ticks)}-${idx}`))))] })) : null;
9
9
  });
10
10
  export default IndividualScaleBars;
@@ -1,11 +1,11 @@
1
- import type { Source } from '../../util';
2
- import type { WiggleDisplayModel } from '../model';
1
+ import type { MinimalModel } from './types.ts';
2
+ import type { Source } from '../../util.ts';
3
3
  declare const LegendItem: ({ source, idx, rowHeight, labelWidth, model, exportSVG, }: {
4
4
  source: Source;
5
5
  idx: number;
6
6
  rowHeight: number;
7
7
  labelWidth: number;
8
- model: WiggleDisplayModel;
8
+ model: MinimalModel;
9
9
  exportSVG?: boolean;
10
10
  }) => import("react/jsx-runtime").JSX.Element;
11
11
  export default LegendItem;
@@ -1,14 +1,12 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
- import RectBg from './RectBg';
2
+ import RectBg from "./RectBg.js";
3
3
  const LegendItem = function ({ source, idx, rowHeight, labelWidth, model, exportSVG, }) {
4
4
  const boxHeight = Math.min(20, rowHeight);
5
5
  const { needsCustomLegend, graphType, needsFullHeightScalebar, rowHeightTooSmallForScalebar, renderColorBoxes, } = model;
6
- const svgFontSize = Math.min(rowHeight, 12);
7
- const canDisplayLabel = rowHeight > 11;
8
6
  const colorBoxWidth = renderColorBoxes ? 15 : 0;
9
7
  const legendWidth = labelWidth + colorBoxWidth + 5;
10
8
  const svgOffset = exportSVG ? 10 : 0;
11
9
  const extraOffset = svgOffset || (graphType && !rowHeightTooSmallForScalebar ? 50 : 0);
12
- return (_jsxs(_Fragment, { children: [needsFullHeightScalebar ? null : (_jsx(RectBg, { y: idx * rowHeight + 1, x: extraOffset, width: legendWidth, height: boxHeight })), source.color ? (_jsx(RectBg, { y: idx * rowHeight + 1, x: extraOffset, width: colorBoxWidth, height: needsCustomLegend ? rowHeight : boxHeight, color: source.color })) : null, canDisplayLabel ? (_jsx("text", { y: idx * rowHeight + 13, x: extraOffset + colorBoxWidth + 2, fontSize: svgFontSize, children: source.name })) : null] }));
10
+ return (_jsxs(_Fragment, { children: [needsFullHeightScalebar ? null : (_jsx(RectBg, { y: idx * rowHeight + 1, x: extraOffset, width: legendWidth, height: boxHeight })), source.color ? (_jsx(RectBg, { y: idx * rowHeight + 1, x: extraOffset, width: colorBoxWidth, height: needsCustomLegend ? rowHeight : boxHeight, color: source.color })) : null] }));
13
11
  };
14
12
  export default LegendItem;
@@ -0,0 +1,12 @@
1
+ import type { MinimalModel } from './types.ts';
2
+ import type { Source } from '../../util.ts';
3
+ import type { getFillProps } from '@jbrowse/core/util';
4
+ declare const LegendItemText: ({ source, idx, rowHeight, model, exportSVG, textFillProps, }: {
5
+ source: Source;
6
+ idx: number;
7
+ rowHeight: number;
8
+ model: MinimalModel;
9
+ exportSVG?: boolean;
10
+ textFillProps: ReturnType<typeof getFillProps>;
11
+ }) => import("react/jsx-runtime").JSX.Element | null;
12
+ export default LegendItemText;