@jbrowse/plugin-wiggle 3.7.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) 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/index.js +1 -1
  7. package/esm/DensityRenderer/DensityRenderer.d.ts +5 -6
  8. package/esm/DensityRenderer/DensityRenderer.js +6 -5
  9. package/esm/DensityRenderer/configSchema.d.ts +3 -3
  10. package/esm/DensityRenderer/configSchema.js +1 -1
  11. package/esm/DensityRenderer/index.js +11 -9
  12. package/esm/DensityRenderer/makeImageData.d.ts +3 -0
  13. package/esm/DensityRenderer/makeImageData.js +13 -0
  14. package/esm/DensityRenderer/renderDensity.d.ts +3 -0
  15. package/esm/DensityRenderer/renderDensity.js +18 -0
  16. package/esm/LinePlotRenderer/LinePlotRenderer.d.ts +5 -7
  17. package/esm/LinePlotRenderer/LinePlotRenderer.js +6 -15
  18. package/esm/LinePlotRenderer/configSchema.d.ts +4 -4
  19. package/esm/LinePlotRenderer/configSchema.js +1 -1
  20. package/esm/LinePlotRenderer/index.js +4 -4
  21. package/esm/LinePlotRenderer/makeImageData.d.ts +3 -0
  22. package/esm/LinePlotRenderer/makeImageData.js +13 -0
  23. package/esm/LinePlotRenderer/renderLinePlot.d.ts +3 -0
  24. package/esm/LinePlotRenderer/renderLinePlot.js +23 -0
  25. package/esm/LinearWiggleDisplay/components/Tooltip.d.ts +2 -2
  26. package/esm/LinearWiggleDisplay/components/Tooltip.js +10 -6
  27. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +1 -1
  28. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -2
  29. package/esm/LinearWiggleDisplay/configSchema.d.ts +9 -9
  30. package/esm/LinearWiggleDisplay/configSchema.js +2 -2
  31. package/esm/LinearWiggleDisplay/index.d.ts +3 -3
  32. package/esm/LinearWiggleDisplay/index.js +6 -6
  33. package/esm/LinearWiggleDisplay/model.d.ts +1128 -105
  34. package/esm/LinearWiggleDisplay/model.js +58 -18
  35. package/esm/LinearWiggleDisplay/renderSvg.d.ts +1 -1
  36. package/esm/LinearWiggleDisplay/renderSvg.js +3 -2
  37. package/esm/MultiDensityRenderer/MultiDensityRenderer.d.ts +5 -7
  38. package/esm/MultiDensityRenderer/MultiDensityRenderer.js +6 -24
  39. package/esm/MultiDensityRenderer/configSchema.d.ts +3 -3
  40. package/esm/MultiDensityRenderer/configSchema.js +1 -1
  41. package/esm/MultiDensityRenderer/index.js +4 -4
  42. package/esm/MultiDensityRenderer/makeImageData.d.ts +3 -0
  43. package/esm/MultiDensityRenderer/makeImageData.js +7 -0
  44. package/esm/MultiDensityRenderer/renderMultiDensity.d.ts +3 -0
  45. package/esm/MultiDensityRenderer/renderMultiDensity.js +37 -0
  46. package/esm/MultiLineRenderer/MultiLineRenderer.d.ts +5 -7
  47. package/esm/MultiLineRenderer/MultiLineRenderer.js +6 -17
  48. package/esm/MultiLineRenderer/configSchema.d.ts +5 -5
  49. package/esm/MultiLineRenderer/configSchema.js +2 -2
  50. package/esm/MultiLineRenderer/index.js +4 -4
  51. package/esm/MultiLineRenderer/makeImageData.d.ts +3 -0
  52. package/esm/MultiLineRenderer/makeImageData.js +7 -0
  53. package/esm/MultiLineRenderer/renderMultiLine.d.ts +3 -0
  54. package/esm/MultiLineRenderer/renderMultiLine.js +34 -0
  55. package/esm/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +2 -2
  56. package/esm/MultiLinearWiggleDisplay/components/ColorLegend.js +11 -6
  57. package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +1 -1
  58. package/esm/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +4 -4
  59. package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +1 -1
  60. package/esm/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +5 -5
  61. package/esm/MultiLinearWiggleDisplay/components/LegendItem.d.ts +3 -3
  62. package/esm/MultiLinearWiggleDisplay/components/LegendItem.js +1 -1
  63. package/esm/MultiLinearWiggleDisplay/components/LegendItemText.d.ts +6 -4
  64. package/esm/MultiLinearWiggleDisplay/components/LegendItemText.js +2 -2
  65. package/esm/MultiLinearWiggleDisplay/components/RectBg.d.ts +1 -1
  66. package/esm/MultiLinearWiggleDisplay/components/RectBg.js +4 -3
  67. package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +2 -2
  68. package/esm/MultiLinearWiggleDisplay/components/ScoreLegend.js +3 -3
  69. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +1 -1
  70. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js +2 -2
  71. package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +1 -1
  72. package/esm/MultiLinearWiggleDisplay/components/SourcesGrid.js +2 -2
  73. package/esm/MultiLinearWiggleDisplay/components/Tooltip.d.ts +2 -4
  74. package/esm/MultiLinearWiggleDisplay/components/Tooltip.js +8 -9
  75. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.d.ts +1 -1
  76. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.js +3 -3
  77. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.d.ts +1 -1
  78. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.js +4 -5
  79. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.d.ts +1 -1
  80. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.js +12 -17
  81. package/esm/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.d.ts +1 -1
  82. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +1 -1
  83. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +2 -2
  84. package/esm/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +2 -2
  85. package/esm/MultiLinearWiggleDisplay/components/YScaleBars.js +5 -16
  86. package/esm/MultiLinearWiggleDisplay/components/YScaleBarsWrapper.d.ts +7 -0
  87. package/esm/MultiLinearWiggleDisplay/components/YScaleBarsWrapper.js +15 -0
  88. package/esm/MultiLinearWiggleDisplay/components/types.d.ts +10 -0
  89. package/esm/MultiLinearWiggleDisplay/components/types.js +1 -0
  90. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialog.js +4 -4
  91. package/esm/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.js +1 -1
  92. package/esm/MultiLinearWiggleDisplay/components/util.d.ts +1 -1
  93. package/esm/MultiLinearWiggleDisplay/configSchema.d.ts +9 -9
  94. package/esm/MultiLinearWiggleDisplay/configSchema.js +2 -2
  95. package/esm/MultiLinearWiggleDisplay/index.js +3 -3
  96. package/esm/MultiLinearWiggleDisplay/model.d.ts +3624 -106
  97. package/esm/MultiLinearWiggleDisplay/model.js +78 -48
  98. package/esm/MultiLinearWiggleDisplay/renderSvg.d.ts +1 -1
  99. package/esm/MultiLinearWiggleDisplay/renderSvg.js +3 -2
  100. package/esm/MultiQuantitativeTrack/configSchema.d.ts +16 -11
  101. package/esm/MultiQuantitativeTrack/index.js +13 -2
  102. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +5 -7
  103. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js +6 -29
  104. package/esm/MultiRowLineRenderer/configSchema.d.ts +5 -5
  105. package/esm/MultiRowLineRenderer/configSchema.js +2 -2
  106. package/esm/MultiRowLineRenderer/index.js +4 -4
  107. package/esm/MultiRowLineRenderer/makeImageData.d.ts +3 -0
  108. package/esm/MultiRowLineRenderer/makeImageData.js +7 -0
  109. package/esm/MultiRowLineRenderer/renderMultiRowLine.d.ts +3 -0
  110. package/esm/MultiRowLineRenderer/renderMultiRowLine.js +44 -0
  111. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +5 -7
  112. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +6 -29
  113. package/esm/MultiRowXYPlotRenderer/configSchema.d.ts +5 -5
  114. package/esm/MultiRowXYPlotRenderer/configSchema.js +2 -2
  115. package/esm/MultiRowXYPlotRenderer/index.js +4 -4
  116. package/esm/MultiRowXYPlotRenderer/makeImageData.d.ts +3 -0
  117. package/esm/MultiRowXYPlotRenderer/makeImageData.js +7 -0
  118. package/esm/MultiRowXYPlotRenderer/renderMultiRowXYPlot.d.ts +3 -0
  119. package/esm/MultiRowXYPlotRenderer/renderMultiRowXYPlot.js +42 -0
  120. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +5 -0
  121. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +48 -18
  122. package/esm/MultiWiggleAdapter/configSchema.d.ts +2 -2
  123. package/esm/MultiWiggleAdapter/index.js +2 -2
  124. package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.d.ts +1 -1
  125. package/esm/MultiWiggleAddTrackWorkflow/AddTrackWorkflow.js +3 -4
  126. package/esm/MultiWiggleAddTrackWorkflow/index.js +2 -2
  127. package/esm/MultiWiggleRendering.d.ts +7 -7
  128. package/esm/MultiWiggleRendering.js +9 -7
  129. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +5 -7
  130. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js +6 -20
  131. package/esm/MultiXYPlotRenderer/configSchema.d.ts +5 -5
  132. package/esm/MultiXYPlotRenderer/configSchema.js +2 -2
  133. package/esm/MultiXYPlotRenderer/index.js +4 -4
  134. package/esm/MultiXYPlotRenderer/makeImageData.d.ts +3 -0
  135. package/esm/MultiXYPlotRenderer/makeImageData.js +7 -0
  136. package/esm/MultiXYPlotRenderer/renderMultiXYPlot.d.ts +3 -0
  137. package/esm/MultiXYPlotRenderer/renderMultiXYPlot.js +35 -0
  138. package/esm/QuantitativeTrack/configSchema.d.ts +16 -11
  139. package/esm/QuantitativeTrack/index.js +13 -2
  140. package/esm/SVGErrorBox.d.ts +5 -0
  141. package/esm/SVGErrorBox.js +4 -0
  142. package/esm/Tooltip.d.ts +1 -3
  143. package/esm/Tooltip.js +7 -7
  144. package/esm/WiggleRPC/MultiWiggleClusterScoreMatrix.d.ts +2 -10
  145. package/esm/WiggleRPC/MultiWiggleClusterScoreMatrix.js +3 -15
  146. package/esm/WiggleRPC/MultiWiggleGetScoreMatrix.d.ts +1 -1
  147. package/esm/WiggleRPC/MultiWiggleGetScoreMatrix.js +2 -5
  148. package/esm/WiggleRPC/MultiWiggleGetSources.js +1 -4
  149. package/esm/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +1 -4
  150. package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.d.ts +10 -0
  151. package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +26 -5
  152. package/esm/WiggleRPC/executeClusterScoreMatrix.d.ts +6 -0
  153. package/esm/WiggleRPC/executeClusterScoreMatrix.js +15 -0
  154. package/esm/WiggleRPC/getScoreMatrix.d.ts +1 -1
  155. package/esm/WiggleRPC/getScoreMatrix.js +9 -6
  156. package/esm/WiggleRPC/rpcMethods.d.ts +5 -5
  157. package/esm/WiggleRPC/rpcMethods.js +5 -5
  158. package/esm/WiggleRPC/types.d.ts +1 -1
  159. package/esm/WiggleRendering.d.ts +2 -3
  160. package/esm/WiggleRendering.js +16 -3
  161. package/esm/XYPlotRenderer/XYPlotRenderer.d.ts +5 -6
  162. package/esm/XYPlotRenderer/XYPlotRenderer.js +6 -20
  163. package/esm/XYPlotRenderer/configSchema.d.ts +5 -5
  164. package/esm/XYPlotRenderer/configSchema.js +2 -2
  165. package/esm/XYPlotRenderer/index.d.ts +3 -3
  166. package/esm/XYPlotRenderer/index.js +14 -12
  167. package/esm/XYPlotRenderer/makeImageData.d.ts +3 -0
  168. package/esm/XYPlotRenderer/makeImageData.js +13 -0
  169. package/esm/XYPlotRenderer/renderXYPlot.d.ts +3 -0
  170. package/esm/XYPlotRenderer/renderXYPlot.js +23 -0
  171. package/esm/configSchema.d.ts +3 -3
  172. package/esm/configSchema.js +1 -1
  173. package/esm/drawDensity.d.ts +4 -2
  174. package/esm/drawDensity.js +25 -15
  175. package/esm/drawLine.d.ts +5 -3
  176. package/esm/drawLine.js +118 -41
  177. package/esm/drawXY.d.ts +4 -2
  178. package/esm/drawXY.js +75 -36
  179. package/esm/getMultiWiggleSourcesAutorun.d.ts +3 -2
  180. package/esm/getMultiWiggleSourcesAutorun.js +7 -2
  181. package/esm/getQuantitativeStats.d.ts +4 -2
  182. package/esm/getQuantitativeStats.js +18 -7
  183. package/esm/getQuantitativeStatsAutorun.d.ts +3 -2
  184. package/esm/getQuantitativeStatsAutorun.js +3 -3
  185. package/esm/index.d.ts +15 -19
  186. package/esm/index.js +31 -37
  187. package/esm/multiRendererHelper.d.ts +7 -0
  188. package/esm/multiRendererHelper.js +12 -0
  189. package/esm/saveTrackFormats/bedGraph.d.ts +4 -0
  190. package/esm/saveTrackFormats/bedGraph.js +11 -0
  191. package/esm/shared/SharedWiggleConfigSchema.d.ts +5 -5
  192. package/esm/shared/SharedWiggleConfigSchema.js +1 -1
  193. package/esm/shared/SharedWiggleMixin.d.ts +1081 -133
  194. package/esm/shared/SharedWiggleMixin.js +48 -26
  195. package/esm/shared/YScaleBar.d.ts +1 -1
  196. package/esm/shared/YScaleBar.js +16 -4
  197. package/esm/shared/axisPropsFromTickScale.d.ts +7 -0
  198. package/esm/shared/axisPropsFromTickScale.js +12 -0
  199. package/esm/svgExportUtil.d.ts +9 -0
  200. package/esm/svgExportUtil.js +6 -0
  201. package/esm/types.d.ts +24 -0
  202. package/esm/types.js +1 -0
  203. package/esm/util.d.ts +34 -1
  204. package/esm/util.js +60 -1
  205. package/package.json +35 -38
  206. package/dist/BigWigAdapter/BigWigAdapter.d.ts +0 -25
  207. package/dist/BigWigAdapter/BigWigAdapter.js +0 -81
  208. package/dist/BigWigAdapter/configSchema.d.ts +0 -20
  209. package/dist/BigWigAdapter/configSchema.js +0 -37
  210. package/dist/BigWigAdapter/index.d.ts +0 -2
  211. package/dist/BigWigAdapter/index.js +0 -54
  212. package/dist/CreateMultiWiggleExtension/ConfirmDialog.d.ts +0 -8
  213. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +0 -26
  214. package/dist/CreateMultiWiggleExtension/index.d.ts +0 -2
  215. package/dist/CreateMultiWiggleExtension/index.js +0 -95
  216. package/dist/DensityRenderer/DensityRenderer.d.ts +0 -7
  217. package/dist/DensityRenderer/DensityRenderer.js +0 -46
  218. package/dist/DensityRenderer/configSchema.d.ts +0 -37
  219. package/dist/DensityRenderer/configSchema.js +0 -13
  220. package/dist/DensityRenderer/index.d.ts +0 -2
  221. package/dist/DensityRenderer/index.js +0 -17
  222. package/dist/GuessAdapter/index.d.ts +0 -2
  223. package/dist/GuessAdapter/index.js +0 -25
  224. package/dist/LinePlotRenderer/LinePlotRenderer.d.ts +0 -8
  225. package/dist/LinePlotRenderer/LinePlotRenderer.js +0 -56
  226. package/dist/LinePlotRenderer/configSchema.d.ts +0 -43
  227. package/dist/LinePlotRenderer/configSchema.js +0 -19
  228. package/dist/LinePlotRenderer/index.d.ts +0 -2
  229. package/dist/LinePlotRenderer/index.js +0 -17
  230. package/dist/LinearWiggleDisplay/components/SetColorDialog.d.ts +0 -12
  231. package/dist/LinearWiggleDisplay/components/SetColorDialog.js +0 -31
  232. package/dist/LinearWiggleDisplay/components/Tooltip.d.ts +0 -15
  233. package/dist/LinearWiggleDisplay/components/Tooltip.js +0 -32
  234. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +0 -5
  235. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -28
  236. package/dist/LinearWiggleDisplay/configSchema.d.ts +0 -78
  237. package/dist/LinearWiggleDisplay/configSchema.js +0 -29
  238. package/dist/LinearWiggleDisplay/index.d.ts +0 -5
  239. package/dist/LinearWiggleDisplay/index.js +0 -65
  240. package/dist/LinearWiggleDisplay/model.d.ts +0 -434
  241. package/dist/LinearWiggleDisplay/model.js +0 -262
  242. package/dist/LinearWiggleDisplay/renderSvg.d.ts +0 -3
  243. package/dist/LinearWiggleDisplay/renderSvg.js +0 -16
  244. package/dist/MultiDensityRenderer/MultiDensityRenderer.d.ts +0 -8
  245. package/dist/MultiDensityRenderer/MultiDensityRenderer.js +0 -65
  246. package/dist/MultiDensityRenderer/configSchema.d.ts +0 -37
  247. package/dist/MultiDensityRenderer/configSchema.js +0 -13
  248. package/dist/MultiDensityRenderer/index.d.ts +0 -2
  249. package/dist/MultiDensityRenderer/index.js +0 -17
  250. package/dist/MultiLineRenderer/MultiLineRenderer.d.ts +0 -8
  251. package/dist/MultiLineRenderer/MultiLineRenderer.js +0 -58
  252. package/dist/MultiLineRenderer/configSchema.d.ts +0 -49
  253. package/dist/MultiLineRenderer/configSchema.js +0 -26
  254. package/dist/MultiLineRenderer/index.d.ts +0 -2
  255. package/dist/MultiLineRenderer/index.js +0 -17
  256. package/dist/MultiLinearWiggleDisplay/components/ColorLegend.d.ts +0 -7
  257. package/dist/MultiLinearWiggleDisplay/components/ColorLegend.js +0 -19
  258. package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.d.ts +0 -7
  259. package/dist/MultiLinearWiggleDisplay/components/FullHeightScaleBar.js +0 -17
  260. package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.d.ts +0 -7
  261. package/dist/MultiLinearWiggleDisplay/components/IndividualScaleBars.js +0 -15
  262. package/dist/MultiLinearWiggleDisplay/components/LegendItem.d.ts +0 -11
  263. package/dist/MultiLinearWiggleDisplay/components/LegendItem.js +0 -17
  264. package/dist/MultiLinearWiggleDisplay/components/LegendItemText.d.ts +0 -10
  265. package/dist/MultiLinearWiggleDisplay/components/LegendItemText.js +0 -13
  266. package/dist/MultiLinearWiggleDisplay/components/RectBg.d.ts +0 -8
  267. package/dist/MultiLinearWiggleDisplay/components/RectBg.js +0 -9
  268. package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.d.ts +0 -5
  269. package/dist/MultiLinearWiggleDisplay/components/ScoreLegend.js +0 -19
  270. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +0 -9
  271. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +0 -12
  272. package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.d.ts +0 -7
  273. package/dist/MultiLinearWiggleDisplay/components/SourcesGrid.js +0 -130
  274. package/dist/MultiLinearWiggleDisplay/components/Tooltip.d.ts +0 -18
  275. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +0 -39
  276. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.d.ts +0 -6
  277. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialog.js +0 -29
  278. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.d.ts +0 -7
  279. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogAuto.js +0 -87
  280. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.d.ts +0 -7
  281. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/WiggleClusterDialogManual.js +0 -153
  282. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.d.ts +0 -8
  283. package/dist/MultiLinearWiggleDisplay/components/WiggleClusterDialog/types.js +0 -2
  284. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +0 -5
  285. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -14
  286. package/dist/MultiLinearWiggleDisplay/components/YScaleBars.d.ts +0 -7
  287. package/dist/MultiLinearWiggleDisplay/components/YScaleBars.js +0 -28
  288. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialog.d.ts +0 -31
  289. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialog.js +0 -51
  290. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.d.ts +0 -10
  291. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogBulkEditPanel.js +0 -84
  292. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogHelpfulTips.d.ts +0 -1
  293. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogHelpfulTips.js +0 -7
  294. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogRowPalettizer.d.ts +0 -10
  295. package/dist/MultiLinearWiggleDisplay/components/ui/SetColorDialogRowPalettizer.js +0 -42
  296. package/dist/MultiLinearWiggleDisplay/components/util.d.ts +0 -9
  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 -453
  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 -15
  307. package/dist/MultiLinearWiggleDisplay/types.js +0 -2
  308. package/dist/MultiLinearWiggleDisplay/util.d.ts +0 -0
  309. package/dist/MultiLinearWiggleDisplay/util.js +0 -1
  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 -31
  327. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +0 -110
  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/types.d.ts +0 -13
  367. package/dist/WiggleRPC/types.js +0 -2
  368. package/dist/WiggleRendering.d.ts +0 -14
  369. package/dist/WiggleRendering.js +0 -35
  370. package/dist/XYPlotRenderer/XYPlotRenderer.d.ts +0 -7
  371. package/dist/XYPlotRenderer/XYPlotRenderer.js +0 -61
  372. package/dist/XYPlotRenderer/configSchema.d.ts +0 -57
  373. package/dist/XYPlotRenderer/configSchema.js +0 -34
  374. package/dist/XYPlotRenderer/index.d.ts +0 -5
  375. package/dist/XYPlotRenderer/index.js +0 -24
  376. package/dist/configSchema.d.ts +0 -37
  377. package/dist/configSchema.js +0 -47
  378. package/dist/drawDensity.d.ts +0 -18
  379. package/dist/drawDensity.js +0 -81
  380. package/dist/drawLine.d.ts +0 -20
  381. package/dist/drawLine.js +0 -77
  382. package/dist/drawXY.d.ts +0 -21
  383. package/dist/drawXY.js +0 -191
  384. package/dist/getMultiWiggleSourcesAutorun.d.ts +0 -18
  385. package/dist/getMultiWiggleSourcesAutorun.js +0 -38
  386. package/dist/getQuantitativeStats.d.ts +0 -13
  387. package/dist/getQuantitativeStats.js +0 -70
  388. package/dist/getQuantitativeStatsAutorun.d.ts +0 -13
  389. package/dist/getQuantitativeStatsAutorun.js +0 -35
  390. package/dist/index.d.ts +0 -91
  391. package/dist/index.js +0 -112
  392. package/dist/shared/SetMinMaxDialog.d.ts +0 -10
  393. package/dist/shared/SetMinMaxDialog.js +0 -26
  394. package/dist/shared/SharedWiggleConfigSchema.d.ts +0 -66
  395. package/dist/shared/SharedWiggleConfigSchema.js +0 -56
  396. package/dist/shared/SharedWiggleMixin.d.ts +0 -420
  397. package/dist/shared/SharedWiggleMixin.js +0 -343
  398. package/dist/shared/YScaleBar.d.ts +0 -9
  399. package/dist/shared/YScaleBar.js +0 -12
  400. package/dist/util.d.ts +0 -25
  401. package/dist/util.js +0 -105
  402. package/esm/WiggleBaseRenderer.d.ts +0 -57
  403. package/esm/WiggleBaseRenderer.js +0 -36
@@ -0,0 +1,4 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ export function ErrorBox({ error, width, height, }) {
3
+ return (_jsxs(_Fragment, { children: [_jsx("rect", { x: 0, y: 0, width: width, height: height, fill: "#ffdddd" }), _jsx("text", { x: 10, y: height / 2, fill: "#cc0000", fontSize: 14, children: `${error}` })] }));
4
+ }
package/esm/Tooltip.d.ts CHANGED
@@ -4,15 +4,13 @@ export type TooltipContentsComponent = React.ForwardRefExoticComponent<{
4
4
  feature: Feature;
5
5
  model: any;
6
6
  } & React.RefAttributes<HTMLDivElement>>;
7
- declare const Tooltip: ({ model, height, clientMouseCoord, offsetMouseCoord, clientRect, TooltipContents, useClientY, }: {
7
+ declare const Tooltip: ({ model, height, clientMouseCoord, offsetMouseCoord, TooltipContents, }: {
8
8
  model: {
9
9
  featureUnderMouse?: Feature;
10
10
  };
11
- useClientY?: boolean;
12
11
  height: number;
13
12
  clientMouseCoord: Coord;
14
13
  offsetMouseCoord: Coord;
15
- clientRect?: DOMRect;
16
14
  TooltipContents: TooltipContentsComponent;
17
15
  }) => import("react/jsx-runtime").JSX.Element | null;
18
16
  export default Tooltip;
package/esm/Tooltip.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Suspense } from 'react';
3
3
  import BaseTooltip from '@jbrowse/core/ui/BaseTooltip';
4
+ import { makeStyles } from '@jbrowse/core/util/tss-react';
4
5
  import { observer } from 'mobx-react';
5
- import { makeStyles } from 'tss-react/mui';
6
- import { YSCALEBAR_LABEL_OFFSET } from './util';
7
- const useStyles = makeStyles()({
6
+ import { YSCALEBAR_LABEL_OFFSET } from "./util.js";
7
+ const useStyles = makeStyles()(theme => ({
8
8
  hoverVertical: {
9
- background: '#333',
9
+ background: theme.palette.text.primary,
10
10
  border: 'none',
11
11
  width: 1,
12
12
  height: '100%',
@@ -15,12 +15,12 @@ const useStyles = makeStyles()({
15
15
  position: 'absolute',
16
16
  pointerEvents: 'none',
17
17
  },
18
- });
19
- const Tooltip = observer(function Tooltip({ model, height, clientMouseCoord, offsetMouseCoord, clientRect, TooltipContents, useClientY, }) {
18
+ }));
19
+ const Tooltip = observer(function Tooltip({ model, height, clientMouseCoord, offsetMouseCoord, TooltipContents, }) {
20
20
  const { featureUnderMouse } = model;
21
21
  const { classes } = useStyles();
22
22
  const x = clientMouseCoord[0] + 5;
23
- const y = useClientY ? clientMouseCoord[1] : (clientRect === null || clientRect === void 0 ? void 0 : clientRect.top) || 0;
23
+ const y = clientMouseCoord[1];
24
24
  return featureUnderMouse ? (_jsxs(_Fragment, { children: [_jsx(Suspense, { fallback: null, children: _jsx(BaseTooltip, { clientPoint: { x, y }, children: _jsx(TooltipContents, { model: model, feature: featureUnderMouse }) }) }), _jsx("div", { className: classes.hoverVertical, style: {
25
25
  left: offsetMouseCoord[0],
26
26
  height: height - YSCALEBAR_LABEL_OFFSET * 2,
@@ -1,14 +1,6 @@
1
1
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
2
- import type { GetScoreMatrixArgs } from './types';
2
+ import type { GetScoreMatrixArgs } from './types.ts';
3
3
  export declare class MultiWiggleClusterScoreMatrix extends RpcMethodTypeWithFiltersAndRenameRegions {
4
4
  name: string;
5
- execute(args: GetScoreMatrixArgs, rpcDriverClassName: string): Promise<{
6
- clusters: {
7
- height: number;
8
- indexes: number[];
9
- } | undefined;
10
- distances: number[][];
11
- order: number[];
12
- clustersGivenK: number[][][];
13
- }>;
5
+ execute(args: GetScoreMatrixArgs, rpcDriverClassName: string): Promise<import("@gmod/hclust").ClusterResult>;
14
6
  }
@@ -1,24 +1,12 @@
1
1
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
2
- import { clusterData } from '@jbrowse/core/util/cluster';
3
- import { getScoreMatrix } from './getScoreMatrix';
4
2
  export class MultiWiggleClusterScoreMatrix extends RpcMethodTypeWithFiltersAndRenameRegions {
5
- constructor() {
6
- super(...arguments);
7
- this.name = 'MultiWiggleClusterScoreMatrix';
8
- }
3
+ name = 'MultiWiggleClusterScoreMatrix';
9
4
  async execute(args, rpcDriverClassName) {
10
5
  const deserializedArgs = await this.deserializeArguments(args, rpcDriverClassName);
11
- const matrix = await getScoreMatrix({
6
+ const { executeClusterScoreMatrix } = await import("./executeClusterScoreMatrix.js");
7
+ return executeClusterScoreMatrix({
12
8
  pluginManager: this.pluginManager,
13
9
  args: deserializedArgs,
14
10
  });
15
- return clusterData({
16
- data: Object.values(matrix),
17
- stopToken: deserializedArgs.stopToken,
18
- onProgress: a => {
19
- var _a;
20
- (_a = deserializedArgs.statusCallback) === null || _a === void 0 ? void 0 : _a.call(deserializedArgs, a);
21
- },
22
- });
23
11
  }
24
12
  }
@@ -1,5 +1,5 @@
1
1
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
2
- import type { GetScoreMatrixArgs } from './types';
2
+ import type { GetScoreMatrixArgs } from './types.ts';
3
3
  export declare class MultiWiggleGetScoreMatrix extends RpcMethodTypeWithFiltersAndRenameRegions {
4
4
  name: string;
5
5
  execute(args: GetScoreMatrixArgs, rpcDriverClassName: string): Promise<Record<string, number[]>>;
@@ -1,10 +1,7 @@
1
1
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
2
- import { getScoreMatrix } from './getScoreMatrix';
2
+ import { getScoreMatrix } from "./getScoreMatrix.js";
3
3
  export class MultiWiggleGetScoreMatrix extends RpcMethodTypeWithFiltersAndRenameRegions {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'MultiWiggleGetScoreMatrix';
7
- }
4
+ name = 'MultiWiggleGetScoreMatrix';
8
5
  async execute(args, rpcDriverClassName) {
9
6
  const deserializedArgs = await this.deserializeArguments(args, rpcDriverClassName);
10
7
  return getScoreMatrix({
@@ -1,10 +1,7 @@
1
1
  import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
2
2
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
3
3
  export class MultiWiggleGetSources extends RpcMethodTypeWithFiltersAndRenameRegions {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'MultiWiggleGetSources';
7
- }
4
+ name = 'MultiWiggleGetSources';
8
5
  async execute(args, rpcDriverClassName) {
9
6
  const pm = this.pluginManager;
10
7
  const deserializedArgs = await this.deserializeArguments(args, rpcDriverClassName);
@@ -1,10 +1,7 @@
1
1
  import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
2
2
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
3
3
  export class WiggleGetGlobalQuantitativeStats extends RpcMethodTypeWithFiltersAndRenameRegions {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'WiggleGetGlobalQuantitativeStats';
7
- }
4
+ name = 'WiggleGetGlobalQuantitativeStats';
8
5
  async execute(args, rpcDriverClassName) {
9
6
  const pm = this.pluginManager;
10
7
  const deserializedArgs = await this.deserializeArguments(args, rpcDriverClassName);
@@ -1,13 +1,23 @@
1
1
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
2
+ import type { RenderArgs } from '@jbrowse/core/rpc/coreRpcMethods';
2
3
  import type { Region } from '@jbrowse/core/util';
3
4
  export declare class WiggleGetMultiRegionQuantitativeStats extends RpcMethodTypeWithFiltersAndRenameRegions {
4
5
  name: string;
6
+ serializeArguments(args: RenderArgs & {
7
+ staticBlocks?: Region[];
8
+ stopToken?: string;
9
+ statusCallback?: (arg: string) => void;
10
+ }, rpcDriverClassName: string): Promise<{
11
+ staticBlocks: Region[] | undefined;
12
+ }>;
5
13
  execute(args: {
6
14
  adapterConfig: Record<string, unknown>;
7
15
  stopToken?: string;
8
16
  sessionId: string;
17
+ trackInstanceId: string;
9
18
  headers?: Record<string, string>;
10
19
  regions: Region[];
20
+ staticBlocks?: Region[];
11
21
  bpPerPx: number;
12
22
  }, rpcDriverClassName: string): Promise<any>;
13
23
  }
@@ -1,15 +1,36 @@
1
1
  import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
2
2
  import RpcMethodTypeWithFiltersAndRenameRegions from '@jbrowse/core/pluggableElementTypes/RpcMethodTypeWithFiltersAndRenameRegions';
3
+ import { renameRegionsIfNeeded } from '@jbrowse/core/util';
3
4
  export class WiggleGetMultiRegionQuantitativeStats extends RpcMethodTypeWithFiltersAndRenameRegions {
4
- constructor() {
5
- super(...arguments);
6
- this.name = 'WiggleGetMultiRegionQuantitativeStats';
5
+ name = 'WiggleGetMultiRegionQuantitativeStats';
6
+ async serializeArguments(args, rpcDriverClassName) {
7
+ const pm = this.pluginManager;
8
+ const assemblyManager = pm.rootModel?.session?.assemblyManager;
9
+ if (!assemblyManager) {
10
+ throw new Error('no assembly manager');
11
+ }
12
+ let renamedStaticBlocks = args.staticBlocks;
13
+ if (args.staticBlocks?.length) {
14
+ const renamed = await renameRegionsIfNeeded(assemblyManager, {
15
+ ...args,
16
+ regions: args.staticBlocks,
17
+ });
18
+ renamedStaticBlocks = renamed.regions;
19
+ }
20
+ const baseResult = await super.serializeArguments(args, rpcDriverClassName);
21
+ return {
22
+ ...baseResult,
23
+ staticBlocks: renamedStaticBlocks,
24
+ };
7
25
  }
8
26
  async execute(args, rpcDriverClassName) {
9
27
  const pm = this.pluginManager;
10
28
  const deserializedArgs = await this.deserializeArguments(args, rpcDriverClassName);
11
- const { regions, adapterConfig, sessionId } = deserializedArgs;
29
+ const { regions, staticBlocks, adapterConfig, sessionId } = deserializedArgs;
12
30
  const { dataAdapter } = await getAdapter(pm, sessionId, adapterConfig);
13
- return dataAdapter.getMultiRegionQuantitativeStats(regions, deserializedArgs);
31
+ return dataAdapter.getMultiRegionQuantitativeStats(regions, {
32
+ ...deserializedArgs,
33
+ staticBlocks,
34
+ });
14
35
  }
15
36
  }
@@ -0,0 +1,6 @@
1
+ import type { GetScoreMatrixArgs } from './types.ts';
2
+ import type PluginManager from '@jbrowse/core/PluginManager';
3
+ export declare function executeClusterScoreMatrix({ pluginManager, args, }: {
4
+ pluginManager: PluginManager;
5
+ args: GetScoreMatrixArgs;
6
+ }): Promise<import("@gmod/hclust").ClusterResult>;
@@ -0,0 +1,15 @@
1
+ import { clusterData } from '@gmod/hclust';
2
+ import { getScoreMatrix } from "./getScoreMatrix.js";
3
+ export async function executeClusterScoreMatrix({ pluginManager, args, }) {
4
+ const matrix = await getScoreMatrix({
5
+ pluginManager,
6
+ args,
7
+ });
8
+ return clusterData({
9
+ data: Object.values(matrix),
10
+ stopToken: args.stopToken,
11
+ onProgress: a => {
12
+ args.statusCallback?.(a);
13
+ },
14
+ });
15
+ }
@@ -1,4 +1,4 @@
1
- import type { GetScoreMatrixArgs } from './types';
1
+ import type { GetScoreMatrixArgs } from './types.ts';
2
2
  import type PluginManager from '@jbrowse/core/PluginManager';
3
3
  export declare function getScoreMatrix({ pluginManager, args, }: {
4
4
  args: GetScoreMatrixArgs;
@@ -11,22 +11,25 @@ export async function getScoreMatrix({ pluginManager, args, }) {
11
11
  const feats = await firstValueFrom(dataAdapter.getFeatures(r0, args).pipe(toArray()));
12
12
  const groups = groupBy(feats, f => f.get('source'));
13
13
  const rows = {};
14
+ const r0Start = r0.start;
15
+ const invBpPerPx = 1 / bpPerPx;
14
16
  for (const source of sources) {
15
17
  const { name } = source;
16
18
  const features = groups[name] || [];
17
- const arr = new Array(w).fill(0);
19
+ const arr = new Float32Array(w);
18
20
  for (const feat of features) {
19
21
  const fstart = feat.get('start');
20
22
  const fend = feat.get('end');
21
23
  const score = feat.get('score');
22
- for (let i = fstart; i < fend; i += bpPerPx) {
23
- const x = Math.floor((i - r0.start) / bpPerPx);
24
- if (x >= 0 && x < w) {
25
- arr[x] || (arr[x] = score);
24
+ const startX = Math.max(0, ((fstart - r0Start) * invBpPerPx) | 0);
25
+ const endX = Math.min(w, ((fend - r0Start) * invBpPerPx) | 0);
26
+ for (let x = startX; x < endX; x++) {
27
+ if (arr[x] === 0) {
28
+ arr[x] = score;
26
29
  }
27
30
  }
28
31
  }
29
- rows[name] = arr;
32
+ rows[name] = Array.from(arr);
30
33
  }
31
34
  return rows;
32
35
  }
@@ -1,5 +1,5 @@
1
- export * from './MultiWiggleGetSources';
2
- export * from './WiggleGetMultiRegionQuantitativeStats';
3
- export * from './WiggleGetGlobalQuantitativeStats';
4
- export * from './MultiWiggleGetScoreMatrix';
5
- export * from './MultiWiggleClusterScoreMatrix';
1
+ export * from './MultiWiggleGetSources.ts';
2
+ export * from './WiggleGetMultiRegionQuantitativeStats.ts';
3
+ export * from './WiggleGetGlobalQuantitativeStats.ts';
4
+ export * from './MultiWiggleGetScoreMatrix.ts';
5
+ export * from './MultiWiggleClusterScoreMatrix.ts';
@@ -1,5 +1,5 @@
1
- export * from './MultiWiggleGetSources';
2
- export * from './WiggleGetMultiRegionQuantitativeStats';
3
- export * from './WiggleGetGlobalQuantitativeStats';
4
- export * from './MultiWiggleGetScoreMatrix';
5
- export * from './MultiWiggleClusterScoreMatrix';
1
+ export * from "./MultiWiggleGetSources.js";
2
+ export * from "./WiggleGetMultiRegionQuantitativeStats.js";
3
+ export * from "./WiggleGetGlobalQuantitativeStats.js";
4
+ export * from "./MultiWiggleGetScoreMatrix.js";
5
+ export * from "./MultiWiggleClusterScoreMatrix.js";
@@ -1,4 +1,4 @@
1
- import type { Source } from '../util';
1
+ import type { Source } from '../util.ts';
2
2
  import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
3
  import type { Region } from '@jbrowse/core/util';
4
4
  export interface GetScoreMatrixArgs {
@@ -1,5 +1,6 @@
1
1
  import type { Feature } from '@jbrowse/core/util';
2
2
  import type { Region } from '@jbrowse/core/util/types';
3
+ import type { BaseLinearDisplayModel } from '@jbrowse/plugin-linear-genome-view';
3
4
  declare const WiggleRendering: (props: {
4
5
  regions: Region[];
5
6
  features: Map<string, Feature>;
@@ -7,8 +8,6 @@ declare const WiggleRendering: (props: {
7
8
  width: number;
8
9
  height: number;
9
10
  blockKey: string;
10
- onMouseLeave?: (event: React.MouseEvent) => void;
11
- onMouseMove?: (event: React.MouseEvent, arg?: string) => void;
12
- onFeatureClick?: (event: React.MouseEvent, arg?: string) => void;
11
+ displayModel: BaseLinearDisplayModel;
13
12
  }) => import("react/jsx-runtime").JSX.Element;
14
13
  export default WiggleRendering;
@@ -1,9 +1,10 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useRef } from 'react';
3
3
  import { PrerenderedCanvas } from '@jbrowse/core/ui';
4
+ import { getSession } from '@jbrowse/core/util';
4
5
  import { observer } from 'mobx-react';
5
- const WiggleRendering = observer(function (props) {
6
- const { regions, features, bpPerPx, width, height, onMouseLeave, onMouseMove, onFeatureClick, } = props;
6
+ const WiggleRendering = observer(function WiggleRendering(props) {
7
+ const { regions, features, bpPerPx, width, height, displayModel } = props;
7
8
  const region = regions[0];
8
9
  const ref = useRef(null);
9
10
  function getFeatureUnderMouse(eventClientX) {
@@ -24,7 +25,19 @@ const WiggleRendering = observer(function (props) {
24
25
  }
25
26
  return featureUnderMouse;
26
27
  }
27
- return (_jsx("div", { ref: ref, "data-testid": "wiggle-rendering-test", onMouseMove: e => { var _a; return onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(e, (_a = getFeatureUnderMouse(e.clientX)) === null || _a === void 0 ? void 0 : _a.id()); }, onClick: e => { var _a; return onFeatureClick === null || onFeatureClick === void 0 ? void 0 : onFeatureClick(e, (_a = getFeatureUnderMouse(e.clientX)) === null || _a === void 0 ? void 0 : _a.id()); }, onMouseLeave: e => onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave(e), style: {
28
+ return (_jsx("div", { ref: ref, "data-testid": "wiggle-rendering-test", onMouseMove: e => {
29
+ displayModel.setFeatureIdUnderMouse(getFeatureUnderMouse(e.clientX)?.id());
30
+ }, onClick: e => {
31
+ const featureId = getFeatureUnderMouse(e.clientX)?.id();
32
+ if (featureId) {
33
+ displayModel.selectFeatureById(featureId).catch((err) => {
34
+ console.error(err);
35
+ getSession(displayModel).notifyError(`${err}`, err);
36
+ });
37
+ }
38
+ }, onMouseLeave: () => {
39
+ displayModel.setFeatureIdUnderMouse(undefined);
40
+ }, style: {
28
41
  overflow: 'visible',
29
42
  position: 'relative',
30
43
  height,
@@ -1,7 +1,6 @@
1
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
2
- import type { RenderArgsDeserializedWithFeatures } from '../WiggleBaseRenderer';
3
- export default class XYPlotRenderer extends WiggleBaseRenderer {
4
- draw(ctx: CanvasRenderingContext2D, props: RenderArgsDeserializedWithFeatures): Promise<{
5
- reducedFeatures: import("@jbrowse/core/util").Feature[];
6
- }>;
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ import type { RenderArgsDeserialized } from '../types.ts';
3
+ export default class XYPlotRenderer extends FeatureRendererType {
4
+ supportsSVG: boolean;
5
+ render(renderProps: RenderArgsDeserialized): Promise<import("librpc-web-mod").RpcResult>;
7
6
  }
@@ -1,22 +1,8 @@
1
- import { readConfObject } from '@jbrowse/core/configuration';
2
- import WiggleBaseRenderer from '../WiggleBaseRenderer';
3
- import { YSCALEBAR_LABEL_OFFSET } from '../util';
4
- export default class XYPlotRenderer extends WiggleBaseRenderer {
5
- async draw(ctx, props) {
6
- const { inverted, stopToken, features, config } = props;
7
- const { drawXY } = await import('../drawXY');
8
- const pivotValue = readConfObject(config, 'bicolorPivotValue');
9
- const negColor = readConfObject(config, 'negColor');
10
- const posColor = readConfObject(config, 'posColor');
11
- return drawXY(ctx, {
12
- ...props,
13
- colorCallback: !config.color.isCallback
14
- ? (_feature, score) => (score < pivotValue ? negColor : posColor)
15
- : (feature, _score) => readConfObject(config, 'color', { feature }),
16
- offset: YSCALEBAR_LABEL_OFFSET,
17
- features: [...features.values()],
18
- inverted,
19
- stopToken,
20
- });
1
+ import FeatureRendererType from '@jbrowse/core/pluggableElementTypes/renderers/FeatureRendererType';
2
+ export default class XYPlotRenderer extends FeatureRendererType {
3
+ supportsSVG = true;
4
+ async render(renderProps) {
5
+ const { makeImageData } = await import("./makeImageData.js");
6
+ return makeImageData(renderProps, this.pluginManager);
21
7
  }
22
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
  filled: {
3
3
  type: string;
4
4
  defaultValue: boolean;
@@ -10,7 +10,7 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
10
10
  };
11
11
  summaryScoreMode: {
12
12
  type: string;
13
- model: import("mobx-state-tree").ISimpleType<string>;
13
+ model: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
14
14
  description: string;
15
15
  defaultValue: string;
16
16
  };
@@ -18,7 +18,7 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
18
18
  type: string;
19
19
  defaultValue: number;
20
20
  };
21
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
21
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaType<{
22
22
  color: {
23
23
  type: string;
24
24
  description: string;
@@ -44,7 +44,7 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
44
44
  };
45
45
  bicolorPivot: {
46
46
  type: string;
47
- model: import("mobx-state-tree").ISimpleType<string>;
47
+ model: import("@jbrowse/mobx-state-tree").ISimpleType<string>;
48
48
  description: string;
49
49
  defaultValue: string;
50
50
  };
@@ -53,5 +53,5 @@ declare const configSchema: import("@jbrowse/core/configuration/configurationSch
53
53
  defaultValue: number;
54
54
  description: string;
55
55
  };
56
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>, undefined>>;
56
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema.ts").ConfigurationSchemaOptions<undefined, undefined>>, undefined>>;
57
57
  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('XYPlotRenderer', {
6
6
  filled: {
@@ -1,5 +1,5 @@
1
1
  import type PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function XYPlotRendererF(pluginManager: PluginManager): void;
3
- export { default as XYPlotRenderer } from './XYPlotRenderer';
4
- export { default as ReactComponent } from '../WiggleRendering';
5
- export { default as configSchema } from './configSchema';
3
+ export { default as XYPlotRenderer } from './XYPlotRenderer.ts';
4
+ export { default as ReactComponent } from '../WiggleRendering.tsx';
5
+ export { default as configSchema } from './configSchema.ts';
@@ -1,14 +1,16 @@
1
- import ReactComponent from '../WiggleRendering';
2
- import XYPlotRenderer from './XYPlotRenderer';
3
- import configSchema from './configSchema';
1
+ import { lazy } from 'react';
2
+ import XYPlotRenderer from "./XYPlotRenderer.js";
3
+ import configSchema from "./configSchema.js";
4
4
  export default function XYPlotRendererF(pluginManager) {
5
- pluginManager.addRendererType(() => new XYPlotRenderer({
6
- name: 'XYPlotRenderer',
7
- ReactComponent,
8
- configSchema,
9
- pluginManager,
10
- }));
5
+ pluginManager.addRendererType(() => {
6
+ return new XYPlotRenderer({
7
+ name: 'XYPlotRenderer',
8
+ ReactComponent: lazy(() => import("../WiggleRendering.js")),
9
+ configSchema,
10
+ pluginManager,
11
+ });
12
+ });
11
13
  }
12
- export { default as XYPlotRenderer } from './XYPlotRenderer';
13
- export { default as ReactComponent } from '../WiggleRendering';
14
- export { default as configSchema } from './configSchema';
14
+ export { default as XYPlotRenderer } from "./XYPlotRenderer.js";
15
+ export { default as ReactComponent } from "../WiggleRendering.js";
16
+ export { default as configSchema } from "./configSchema.js";
@@ -0,0 +1,3 @@
1
+ import type { RenderArgsDeserialized } from '../types.ts';
2
+ import type PluginManager from '@jbrowse/core/PluginManager';
3
+ export declare function makeImageData(renderProps: RenderArgsDeserialized, pluginManager: PluginManager): Promise<import("librpc-web-mod").RpcResult>;
@@ -0,0 +1,13 @@
1
+ import { getAdapter } from '@jbrowse/core/data_adapters/dataAdapterCache';
2
+ import { firstValueFrom } from 'rxjs';
3
+ import { toArray } from 'rxjs/operators';
4
+ export async function makeImageData(renderProps, pluginManager) {
5
+ const { sessionId, adapterConfig, regions } = renderProps;
6
+ const { dataAdapter } = await getAdapter(pluginManager, sessionId, adapterConfig);
7
+ const region = regions[0];
8
+ const features = await firstValueFrom(dataAdapter
9
+ .getFeatures(region, renderProps)
10
+ .pipe(toArray()));
11
+ const { renderXYPlot } = await import("./renderXYPlot.js");
12
+ return renderXYPlot(renderProps, features);
13
+ }
@@ -0,0 +1,3 @@
1
+ import type { RenderArgsDeserialized } from '../types.ts';
2
+ import type { Feature } from '@jbrowse/core/util';
3
+ export declare function renderXYPlot(renderProps: RenderArgsDeserialized, features: Feature[]): Promise<import("librpc-web-mod").RpcResult>;
@@ -0,0 +1,23 @@
1
+ import { renderToAbstractCanvas, updateStatus } from '@jbrowse/core/util';
2
+ import { rpcResult } from '@jbrowse/core/util/librpc';
3
+ import { collectTransferables } from '@jbrowse/core/util/offscreenCanvasPonyfill';
4
+ import { drawXY } from "../drawXY.js";
5
+ import { getColorCallback, serializeWiggleFeature } from "../util.js";
6
+ export async function renderXYPlot(renderProps, features) {
7
+ const { config, height, regions, bpPerPx, statusCallback = () => { }, } = renderProps;
8
+ const region = regions[0];
9
+ const width = (region.end - region.start) / bpPerPx;
10
+ const colorCallback = getColorCallback(config);
11
+ const { reducedFeatures, ...rest } = await updateStatus('Rendering plot', statusCallback, () => renderToAbstractCanvas(width, height, renderProps, ctx => drawXY(ctx, {
12
+ ...renderProps,
13
+ colorCallback,
14
+ features,
15
+ })));
16
+ const serialized = {
17
+ ...rest,
18
+ features: reducedFeatures.map(serializeWiggleFeature),
19
+ height,
20
+ width,
21
+ };
22
+ return rpcResult(serialized, collectTransferables(rest));
23
+ }
@@ -1,4 +1,4 @@
1
- declare const WiggleRenderer: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
1
+ declare const WiggleRenderer: import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaType<{
2
2
  color: {
3
3
  type: string;
4
4
  description: string;
@@ -24,7 +24,7 @@ declare const WiggleRenderer: import("@jbrowse/core/configuration/configurationS
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 WiggleRenderer: import("@jbrowse/core/configuration/configurationS
33
33
  defaultValue: number;
34
34
  description: string;
35
35
  };
36
- }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
36
+ }, import("node_modules/@jbrowse/core/src/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
37
37
  export default WiggleRenderer;
@@ -1,5 +1,5 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
- import { types } from 'mobx-state-tree';
2
+ import { types } from '@jbrowse/mobx-state-tree';
3
3
  function x() { }
4
4
  const WiggleRenderer = ConfigurationSchema('WiggleRenderer', {
5
5
  color: {
@@ -1,6 +1,7 @@
1
- import type { ScaleOpts } from './util';
1
+ import type { ScaleOpts } from './util.ts';
2
2
  import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
3
  import type { Feature, Region } from '@jbrowse/core/util';
4
+ import type { LastStopTokenCheck, StopToken } from '@jbrowse/core/util/stopToken';
4
5
  export declare function drawDensity(ctx: CanvasRenderingContext2D, props: {
5
6
  features: Map<string, Feature> | Feature[];
6
7
  regions: Region[];
@@ -12,7 +13,8 @@ export declare function drawDensity(ctx: CanvasRenderingContext2D, props: {
12
13
  };
13
14
  displayCrossHatches: boolean;
14
15
  config: AnyConfigurationModel;
15
- stopToken?: string;
16
+ stopToken?: StopToken;
17
+ lastCheck?: LastStopTokenCheck;
16
18
  }): {
17
19
  reducedFeatures: Feature[];
18
20
  };