@jbrowse/plugin-wiggle 1.7.11 → 2.1.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 (446) hide show
  1. package/dist/BigWigAdapter/BigWigAdapter.d.ts +8 -7
  2. package/dist/BigWigAdapter/BigWigAdapter.js +205 -283
  3. package/dist/BigWigAdapter/BigWigAdapter.js.map +1 -0
  4. package/dist/BigWigAdapter/configSchema.js +17 -21
  5. package/dist/BigWigAdapter/configSchema.js.map +1 -0
  6. package/dist/BigWigAdapter/index.d.ts +3 -1
  7. package/dist/BigWigAdapter/index.js +42 -12
  8. package/dist/BigWigAdapter/index.js.map +1 -0
  9. package/dist/CreateMultiWiggleExtension/ConfirmDialog.d.ts +9 -0
  10. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +68 -0
  11. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js.map +1 -0
  12. package/dist/CreateMultiWiggleExtension/index.d.ts +2 -0
  13. package/dist/CreateMultiWiggleExtension/index.js +111 -0
  14. package/dist/CreateMultiWiggleExtension/index.js.map +1 -0
  15. package/dist/DensityRenderer/DensityRenderer.d.ts +6 -0
  16. package/dist/DensityRenderer/DensityRenderer.js +74 -0
  17. package/dist/DensityRenderer/DensityRenderer.js.map +1 -0
  18. package/dist/DensityRenderer/configSchema.d.ts +2 -0
  19. package/dist/DensityRenderer/configSchema.js +10 -0
  20. package/dist/DensityRenderer/configSchema.js.map +1 -0
  21. package/dist/DensityRenderer/index.d.ts +3 -6
  22. package/dist/DensityRenderer/index.js +17 -135
  23. package/dist/DensityRenderer/index.js.map +1 -0
  24. package/dist/LinePlotRenderer/LinePlotRenderer.d.ts +4 -2
  25. package/dist/LinePlotRenderer/LinePlotRenderer.js +83 -168
  26. package/dist/LinePlotRenderer/LinePlotRenderer.js.map +1 -0
  27. package/dist/LinePlotRenderer/configSchema.d.ts +2 -2
  28. package/dist/LinePlotRenderer/configSchema.js +15 -69
  29. package/dist/LinePlotRenderer/configSchema.js.map +1 -0
  30. package/dist/LinePlotRenderer/index.d.ts +3 -3
  31. package/dist/LinePlotRenderer/index.js +17 -32
  32. package/dist/LinePlotRenderer/index.js.map +1 -0
  33. package/dist/LinearWiggleDisplay/components/SetColorDialog.d.ts +6 -2
  34. package/dist/LinearWiggleDisplay/components/SetColorDialog.js +88 -106
  35. package/dist/LinearWiggleDisplay/components/SetColorDialog.js.map +1 -0
  36. package/dist/LinearWiggleDisplay/components/SetMinMaxDialog.js +86 -107
  37. package/dist/LinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -0
  38. package/dist/LinearWiggleDisplay/components/Tooltip.d.ts +6 -11
  39. package/dist/LinearWiggleDisplay/components/Tooltip.js +47 -163
  40. package/dist/LinearWiggleDisplay/components/Tooltip.js.map +1 -0
  41. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +44 -50
  42. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -0
  43. package/dist/LinearWiggleDisplay/components/YScaleBar.js +24 -31
  44. package/dist/LinearWiggleDisplay/components/YScaleBar.js.map +1 -0
  45. package/dist/LinearWiggleDisplay/index.d.ts +7 -3
  46. package/dist/LinearWiggleDisplay/index.js +27 -41
  47. package/dist/LinearWiggleDisplay/index.js.map +1 -0
  48. package/dist/LinearWiggleDisplay/models/configSchema.js +65 -69
  49. package/dist/LinearWiggleDisplay/models/configSchema.js.map +1 -0
  50. package/dist/LinearWiggleDisplay/models/model.d.ts +39 -18
  51. package/dist/LinearWiggleDisplay/models/model.js +538 -696
  52. package/dist/LinearWiggleDisplay/models/model.js.map +1 -0
  53. package/dist/MultiDensityRenderer/MultiDensityRenderer.d.ts +7 -0
  54. package/dist/MultiDensityRenderer/MultiDensityRenderer.js +135 -0
  55. package/dist/MultiDensityRenderer/MultiDensityRenderer.js.map +1 -0
  56. package/dist/MultiDensityRenderer/configSchema.d.ts +2 -0
  57. package/dist/MultiDensityRenderer/configSchema.js +10 -0
  58. package/dist/MultiDensityRenderer/configSchema.js.map +1 -0
  59. package/dist/MultiDensityRenderer/index.d.ts +3 -0
  60. package/dist/MultiDensityRenderer/index.js +19 -0
  61. package/dist/MultiDensityRenderer/index.js.map +1 -0
  62. package/dist/MultiLineRenderer/MultiLineRenderer.d.ts +7 -0
  63. package/dist/MultiLineRenderer/MultiLineRenderer.js +124 -0
  64. package/dist/MultiLineRenderer/MultiLineRenderer.js.map +1 -0
  65. package/dist/MultiLineRenderer/configSchema.d.ts +2 -0
  66. package/dist/MultiLineRenderer/configSchema.js +23 -0
  67. package/dist/MultiLineRenderer/configSchema.js.map +1 -0
  68. package/dist/MultiLineRenderer/index.d.ts +3 -0
  69. package/dist/MultiLineRenderer/index.js +19 -0
  70. package/dist/MultiLineRenderer/index.js.map +1 -0
  71. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +10 -0
  72. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +239 -0
  73. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js.map +1 -0
  74. package/dist/MultiLinearWiggleDisplay/components/SetMinMaxDialog.d.ts +11 -0
  75. package/dist/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js +91 -0
  76. package/dist/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -0
  77. package/dist/MultiLinearWiggleDisplay/components/Tooltip.d.ts +25 -0
  78. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +78 -0
  79. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js.map +1 -0
  80. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +13 -0
  81. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +144 -0
  82. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -0
  83. package/dist/MultiLinearWiggleDisplay/components/YScaleBar.d.ts +7 -0
  84. package/dist/MultiLinearWiggleDisplay/components/YScaleBar.js +26 -0
  85. package/dist/MultiLinearWiggleDisplay/components/YScaleBar.js.map +1 -0
  86. package/dist/MultiLinearWiggleDisplay/components/util.d.ts +10 -0
  87. package/dist/MultiLinearWiggleDisplay/components/util.js +38 -0
  88. package/dist/MultiLinearWiggleDisplay/components/util.js.map +1 -0
  89. package/dist/MultiLinearWiggleDisplay/index.d.ts +3 -0
  90. package/dist/MultiLinearWiggleDisplay/index.js +23 -0
  91. package/dist/MultiLinearWiggleDisplay/index.js.map +1 -0
  92. package/dist/MultiLinearWiggleDisplay/models/configSchema.d.ts +2 -0
  93. package/dist/MultiLinearWiggleDisplay/models/configSchema.js +77 -0
  94. package/dist/MultiLinearWiggleDisplay/models/configSchema.js.map +1 -0
  95. package/dist/MultiLinearWiggleDisplay/models/model.d.ts +339 -0
  96. package/dist/MultiLinearWiggleDisplay/models/model.js +675 -0
  97. package/dist/MultiLinearWiggleDisplay/models/model.js.map +1 -0
  98. package/dist/MultiQuantitativeTrack/index.d.ts +3 -0
  99. package/dist/MultiQuantitativeTrack/index.js +19 -0
  100. package/dist/MultiQuantitativeTrack/index.js.map +1 -0
  101. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +7 -0
  102. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js +131 -0
  103. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js.map +1 -0
  104. package/dist/MultiRowLineRenderer/configSchema.d.ts +2 -0
  105. package/dist/MultiRowLineRenderer/configSchema.js +23 -0
  106. package/dist/MultiRowLineRenderer/configSchema.js.map +1 -0
  107. package/dist/MultiRowLineRenderer/index.d.ts +3 -0
  108. package/dist/MultiRowLineRenderer/index.js +19 -0
  109. package/dist/MultiRowLineRenderer/index.js.map +1 -0
  110. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +7 -0
  111. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +164 -0
  112. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js.map +1 -0
  113. package/dist/MultiRowXYPlotRenderer/configSchema.d.ts +2 -0
  114. package/dist/MultiRowXYPlotRenderer/configSchema.js +31 -0
  115. package/dist/MultiRowXYPlotRenderer/configSchema.js.map +1 -0
  116. package/dist/MultiRowXYPlotRenderer/index.d.ts +3 -0
  117. package/dist/MultiRowXYPlotRenderer/index.js +19 -0
  118. package/dist/MultiRowXYPlotRenderer/index.js.map +1 -0
  119. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +28 -0
  120. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +244 -0
  121. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js.map +1 -0
  122. package/dist/MultiWiggleAdapter/configSchema.d.ts +2 -0
  123. package/dist/MultiWiggleAdapter/configSchema.js +14 -0
  124. package/dist/MultiWiggleAdapter/configSchema.js.map +1 -0
  125. package/dist/MultiWiggleAdapter/index.d.ts +3 -0
  126. package/dist/MultiWiggleAdapter/index.js +47 -0
  127. package/dist/MultiWiggleAdapter/index.js.map +1 -0
  128. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.d.ts +5 -0
  129. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js +139 -0
  130. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js.map +1 -0
  131. package/dist/MultiWiggleAddTrackWidget/index.d.ts +3 -0
  132. package/dist/MultiWiggleAddTrackWidget/index.js +19 -0
  133. package/dist/MultiWiggleAddTrackWidget/index.js.map +1 -0
  134. package/dist/MultiWiggleRendering.d.ts +21 -0
  135. package/dist/MultiWiggleRendering.js +164 -0
  136. package/dist/MultiWiggleRendering.js.map +1 -0
  137. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +7 -0
  138. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js +153 -0
  139. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js.map +1 -0
  140. package/dist/MultiXYPlotRenderer/configSchema.d.ts +2 -0
  141. package/dist/MultiXYPlotRenderer/configSchema.js +31 -0
  142. package/dist/MultiXYPlotRenderer/configSchema.js.map +1 -0
  143. package/dist/MultiXYPlotRenderer/index.d.ts +3 -0
  144. package/dist/MultiXYPlotRenderer/index.js +19 -0
  145. package/dist/MultiXYPlotRenderer/index.js.map +1 -0
  146. package/dist/QuantitativeTrack/index.d.ts +3 -0
  147. package/dist/QuantitativeTrack/index.js +19 -0
  148. package/dist/QuantitativeTrack/index.js.map +1 -0
  149. package/dist/Tooltip.d.ts +20 -0
  150. package/dist/Tooltip.js +124 -0
  151. package/dist/Tooltip.js.map +1 -0
  152. package/dist/WiggleBaseRenderer.d.ts +11 -12
  153. package/dist/WiggleBaseRenderer.js +132 -129
  154. package/dist/WiggleBaseRenderer.js.map +1 -0
  155. package/dist/WiggleRPC/rpcMethods.d.ts +17 -1
  156. package/dist/WiggleRPC/rpcMethods.js +258 -289
  157. package/dist/WiggleRPC/rpcMethods.js.map +1 -0
  158. package/dist/WiggleRendering.d.ts +1 -1
  159. package/dist/WiggleRendering.js +103 -102
  160. package/dist/WiggleRendering.js.map +1 -0
  161. package/dist/XYPlotRenderer/XYPlotRenderer.d.ts +4 -1
  162. package/dist/XYPlotRenderer/XYPlotRenderer.js +147 -194
  163. package/dist/XYPlotRenderer/XYPlotRenderer.js.map +1 -0
  164. package/dist/XYPlotRenderer/configSchema.d.ts +2 -0
  165. package/dist/XYPlotRenderer/configSchema.js +31 -0
  166. package/dist/XYPlotRenderer/configSchema.js.map +1 -0
  167. package/dist/XYPlotRenderer/index.d.ts +7 -3
  168. package/dist/XYPlotRenderer/index.js +21 -32
  169. package/dist/XYPlotRenderer/index.js.map +1 -0
  170. package/dist/configSchema.js +42 -74
  171. package/dist/configSchema.js.map +1 -0
  172. package/dist/drawxy.d.ts +50 -0
  173. package/dist/drawxy.js +411 -0
  174. package/dist/drawxy.js.map +1 -0
  175. package/dist/index.d.ts +194 -85
  176. package/dist/index.js +139 -247
  177. package/dist/index.js.map +1 -0
  178. package/dist/util.d.ts +34 -1
  179. package/dist/util.js +270 -143
  180. package/dist/util.js.map +1 -0
  181. package/esm/BigWigAdapter/BigWigAdapter.d.ts +25 -0
  182. package/esm/BigWigAdapter/BigWigAdapter.js +81 -0
  183. package/esm/BigWigAdapter/BigWigAdapter.js.map +1 -0
  184. package/esm/BigWigAdapter/configSchema.d.ts +2 -0
  185. package/esm/BigWigAdapter/configSchema.js +16 -0
  186. package/esm/BigWigAdapter/configSchema.js.map +1 -0
  187. package/esm/BigWigAdapter/index.d.ts +3 -0
  188. package/esm/BigWigAdapter/index.js +15 -0
  189. package/esm/BigWigAdapter/index.js.map +1 -0
  190. package/esm/CreateMultiWiggleExtension/ConfirmDialog.d.ts +9 -0
  191. package/esm/CreateMultiWiggleExtension/ConfirmDialog.js +26 -0
  192. package/esm/CreateMultiWiggleExtension/ConfirmDialog.js.map +1 -0
  193. package/esm/CreateMultiWiggleExtension/index.d.ts +2 -0
  194. package/esm/CreateMultiWiggleExtension/index.js +51 -0
  195. package/esm/CreateMultiWiggleExtension/index.js.map +1 -0
  196. package/esm/DensityRenderer/DensityRenderer.d.ts +6 -0
  197. package/esm/DensityRenderer/DensityRenderer.js +8 -0
  198. package/esm/DensityRenderer/DensityRenderer.js.map +1 -0
  199. package/esm/DensityRenderer/configSchema.d.ts +2 -0
  200. package/esm/DensityRenderer/configSchema.js +5 -0
  201. package/esm/DensityRenderer/configSchema.js.map +1 -0
  202. package/esm/DensityRenderer/index.d.ts +3 -0
  203. package/esm/DensityRenderer/index.js +12 -0
  204. package/esm/DensityRenderer/index.js.map +1 -0
  205. package/esm/LinePlotRenderer/LinePlotRenderer.d.ts +6 -0
  206. package/esm/LinePlotRenderer/LinePlotRenderer.js +13 -0
  207. package/esm/LinePlotRenderer/LinePlotRenderer.js.map +1 -0
  208. package/esm/LinePlotRenderer/configSchema.d.ts +2 -0
  209. package/esm/LinePlotRenderer/configSchema.js +11 -0
  210. package/esm/LinePlotRenderer/configSchema.js.map +1 -0
  211. package/esm/LinePlotRenderer/index.d.ts +3 -0
  212. package/esm/LinePlotRenderer/index.js +12 -0
  213. package/esm/LinePlotRenderer/index.js.map +1 -0
  214. package/esm/LinearWiggleDisplay/components/SetColorDialog.d.ts +14 -0
  215. package/esm/LinearWiggleDisplay/components/SetColorDialog.js +48 -0
  216. package/esm/LinearWiggleDisplay/components/SetColorDialog.js.map +1 -0
  217. package/esm/LinearWiggleDisplay/components/SetMinMaxDialog.d.ts +11 -0
  218. package/esm/LinearWiggleDisplay/components/SetMinMaxDialog.js +46 -0
  219. package/esm/LinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -0
  220. package/esm/LinearWiggleDisplay/components/Tooltip.d.ts +19 -0
  221. package/esm/LinearWiggleDisplay/components/Tooltip.js +34 -0
  222. package/esm/LinearWiggleDisplay/components/Tooltip.js.map +1 -0
  223. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +8 -0
  224. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js +29 -0
  225. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -0
  226. package/esm/LinearWiggleDisplay/components/YScaleBar.d.ts +7 -0
  227. package/esm/LinearWiggleDisplay/components/YScaleBar.js +9 -0
  228. package/esm/LinearWiggleDisplay/components/YScaleBar.js.map +1 -0
  229. package/esm/LinearWiggleDisplay/index.d.ts +7 -0
  230. package/esm/LinearWiggleDisplay/index.js +21 -0
  231. package/esm/LinearWiggleDisplay/index.js.map +1 -0
  232. package/esm/LinearWiggleDisplay/models/configSchema.d.ts +2 -0
  233. package/esm/LinearWiggleDisplay/models/configSchema.js +64 -0
  234. package/esm/LinearWiggleDisplay/models/configSchema.js.map +1 -0
  235. package/esm/LinearWiggleDisplay/models/model.d.ts +309 -0
  236. package/esm/LinearWiggleDisplay/models/model.js +449 -0
  237. package/esm/LinearWiggleDisplay/models/model.js.map +1 -0
  238. package/esm/MultiDensityRenderer/MultiDensityRenderer.d.ts +7 -0
  239. package/esm/MultiDensityRenderer/MultiDensityRenderer.js +36 -0
  240. package/esm/MultiDensityRenderer/MultiDensityRenderer.js.map +1 -0
  241. package/esm/MultiDensityRenderer/configSchema.d.ts +2 -0
  242. package/esm/MultiDensityRenderer/configSchema.js +5 -0
  243. package/esm/MultiDensityRenderer/configSchema.js.map +1 -0
  244. package/esm/MultiDensityRenderer/index.d.ts +3 -0
  245. package/esm/MultiDensityRenderer/index.js +12 -0
  246. package/esm/MultiDensityRenderer/index.js.map +1 -0
  247. package/esm/MultiLineRenderer/MultiLineRenderer.d.ts +7 -0
  248. package/esm/MultiLineRenderer/MultiLineRenderer.js +25 -0
  249. package/esm/MultiLineRenderer/MultiLineRenderer.js.map +1 -0
  250. package/esm/MultiLineRenderer/configSchema.d.ts +2 -0
  251. package/esm/MultiLineRenderer/configSchema.js +18 -0
  252. package/esm/MultiLineRenderer/configSchema.js.map +1 -0
  253. package/esm/MultiLineRenderer/index.d.ts +3 -0
  254. package/esm/MultiLineRenderer/index.js +12 -0
  255. package/esm/MultiLineRenderer/index.js.map +1 -0
  256. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +10 -0
  257. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js +162 -0
  258. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js.map +1 -0
  259. package/esm/MultiLinearWiggleDisplay/components/SetMinMaxDialog.d.ts +11 -0
  260. package/esm/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js +46 -0
  261. package/esm/MultiLinearWiggleDisplay/components/SetMinMaxDialog.js.map +1 -0
  262. package/esm/MultiLinearWiggleDisplay/components/Tooltip.d.ts +25 -0
  263. package/esm/MultiLinearWiggleDisplay/components/Tooltip.js +43 -0
  264. package/esm/MultiLinearWiggleDisplay/components/Tooltip.js.map +1 -0
  265. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +13 -0
  266. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +99 -0
  267. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js.map +1 -0
  268. package/esm/MultiLinearWiggleDisplay/components/YScaleBar.d.ts +7 -0
  269. package/esm/MultiLinearWiggleDisplay/components/YScaleBar.js +9 -0
  270. package/esm/MultiLinearWiggleDisplay/components/YScaleBar.js.map +1 -0
  271. package/esm/MultiLinearWiggleDisplay/components/util.d.ts +10 -0
  272. package/esm/MultiLinearWiggleDisplay/components/util.js +31 -0
  273. package/esm/MultiLinearWiggleDisplay/components/util.js.map +1 -0
  274. package/esm/MultiLinearWiggleDisplay/index.d.ts +3 -0
  275. package/esm/MultiLinearWiggleDisplay/index.js +18 -0
  276. package/esm/MultiLinearWiggleDisplay/index.js.map +1 -0
  277. package/esm/MultiLinearWiggleDisplay/models/configSchema.d.ts +2 -0
  278. package/esm/MultiLinearWiggleDisplay/models/configSchema.js +74 -0
  279. package/esm/MultiLinearWiggleDisplay/models/configSchema.js.map +1 -0
  280. package/esm/MultiLinearWiggleDisplay/models/model.d.ts +339 -0
  281. package/esm/MultiLinearWiggleDisplay/models/model.js +570 -0
  282. package/esm/MultiLinearWiggleDisplay/models/model.js.map +1 -0
  283. package/esm/MultiQuantitativeTrack/index.d.ts +3 -0
  284. package/esm/MultiQuantitativeTrack/index.js +14 -0
  285. package/esm/MultiQuantitativeTrack/index.js.map +1 -0
  286. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.d.ts +7 -0
  287. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js +33 -0
  288. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js.map +1 -0
  289. package/esm/MultiRowLineRenderer/configSchema.d.ts +2 -0
  290. package/esm/MultiRowLineRenderer/configSchema.js +18 -0
  291. package/esm/MultiRowLineRenderer/configSchema.js.map +1 -0
  292. package/esm/MultiRowLineRenderer/index.d.ts +3 -0
  293. package/esm/MultiRowLineRenderer/index.js +12 -0
  294. package/esm/MultiRowLineRenderer/index.js.map +1 -0
  295. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.d.ts +7 -0
  296. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +39 -0
  297. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js.map +1 -0
  298. package/esm/MultiRowXYPlotRenderer/configSchema.d.ts +2 -0
  299. package/esm/MultiRowXYPlotRenderer/configSchema.js +26 -0
  300. package/esm/MultiRowXYPlotRenderer/configSchema.js.map +1 -0
  301. package/esm/MultiRowXYPlotRenderer/index.d.ts +3 -0
  302. package/esm/MultiRowXYPlotRenderer/index.js +12 -0
  303. package/esm/MultiRowXYPlotRenderer/index.js.map +1 -0
  304. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.d.ts +28 -0
  305. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +87 -0
  306. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js.map +1 -0
  307. package/esm/MultiWiggleAdapter/configSchema.d.ts +2 -0
  308. package/esm/MultiWiggleAdapter/configSchema.js +12 -0
  309. package/esm/MultiWiggleAdapter/configSchema.js.map +1 -0
  310. package/esm/MultiWiggleAdapter/index.d.ts +3 -0
  311. package/esm/MultiWiggleAdapter/index.js +15 -0
  312. package/esm/MultiWiggleAdapter/index.js.map +1 -0
  313. package/esm/MultiWiggleAddTrackWidget/AddTrackWorkflow.d.ts +5 -0
  314. package/esm/MultiWiggleAddTrackWidget/AddTrackWorkflow.js +87 -0
  315. package/esm/MultiWiggleAddTrackWidget/AddTrackWorkflow.js.map +1 -0
  316. package/esm/MultiWiggleAddTrackWidget/index.d.ts +3 -0
  317. package/esm/MultiWiggleAddTrackWidget/index.js +12 -0
  318. package/esm/MultiWiggleAddTrackWidget/index.js.map +1 -0
  319. package/esm/MultiWiggleRendering.d.ts +21 -0
  320. package/esm/MultiWiggleRendering.js +75 -0
  321. package/esm/MultiWiggleRendering.js.map +1 -0
  322. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.d.ts +7 -0
  323. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js +28 -0
  324. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js.map +1 -0
  325. package/esm/MultiXYPlotRenderer/configSchema.d.ts +2 -0
  326. package/esm/MultiXYPlotRenderer/configSchema.js +26 -0
  327. package/esm/MultiXYPlotRenderer/configSchema.js.map +1 -0
  328. package/esm/MultiXYPlotRenderer/index.d.ts +3 -0
  329. package/esm/MultiXYPlotRenderer/index.js +12 -0
  330. package/esm/MultiXYPlotRenderer/index.js.map +1 -0
  331. package/esm/QuantitativeTrack/index.d.ts +3 -0
  332. package/esm/QuantitativeTrack/index.js +14 -0
  333. package/esm/QuantitativeTrack/index.js.map +1 -0
  334. package/esm/Tooltip.d.ts +20 -0
  335. package/esm/Tooltip.js +71 -0
  336. package/esm/Tooltip.js.map +1 -0
  337. package/esm/WiggleBaseRenderer.d.ts +54 -0
  338. package/esm/WiggleBaseRenderer.js +36 -0
  339. package/esm/WiggleBaseRenderer.js.map +1 -0
  340. package/esm/WiggleRPC/rpcMethods.d.ts +47 -0
  341. package/esm/WiggleRPC/rpcMethods.js +112 -0
  342. package/esm/WiggleRPC/rpcMethods.js.map +1 -0
  343. package/esm/WiggleRendering.d.ts +16 -0
  344. package/esm/WiggleRendering.js +36 -0
  345. package/esm/WiggleRendering.js.map +1 -0
  346. package/esm/XYPlotRenderer/XYPlotRenderer.d.ts +7 -0
  347. package/esm/XYPlotRenderer/XYPlotRenderer.js +26 -0
  348. package/esm/XYPlotRenderer/XYPlotRenderer.js.map +1 -0
  349. package/esm/XYPlotRenderer/configSchema.d.ts +2 -0
  350. package/esm/XYPlotRenderer/configSchema.js +26 -0
  351. package/esm/XYPlotRenderer/configSchema.js.map +1 -0
  352. package/esm/XYPlotRenderer/index.d.ts +7 -0
  353. package/esm/XYPlotRenderer/index.js +13 -0
  354. package/esm/XYPlotRenderer/index.js.map +1 -0
  355. package/esm/configSchema.d.ts +2 -0
  356. package/esm/configSchema.js +41 -0
  357. package/esm/configSchema.js.map +1 -0
  358. package/esm/drawxy.d.ts +50 -0
  359. package/esm/drawxy.js +286 -0
  360. package/esm/drawxy.js.map +1 -0
  361. package/esm/index.d.ts +975 -0
  362. package/esm/index.js +90 -0
  363. package/esm/index.js.map +1 -0
  364. package/esm/util.d.ts +74 -0
  365. package/esm/util.js +231 -0
  366. package/esm/util.js.map +1 -0
  367. package/package.json +32 -18
  368. package/src/BigWigAdapter/BigWigAdapter.ts +53 -35
  369. package/src/BigWigAdapter/__snapshots__/BigWigAdapter.test.ts.snap +10 -10
  370. package/src/BigWigAdapter/configSchema.ts +5 -0
  371. package/src/BigWigAdapter/index.ts +19 -1
  372. package/src/CreateMultiWiggleExtension/ConfirmDialog.tsx +66 -0
  373. package/src/CreateMultiWiggleExtension/index.ts +57 -0
  374. package/src/DensityRenderer/DensityRenderer.test.js +8 -2
  375. package/src/DensityRenderer/DensityRenderer.ts +14 -0
  376. package/src/DensityRenderer/__snapshots__/DensityRenderer.test.js.snap +8 -0
  377. package/src/{LinePlotRenderer/index.js → DensityRenderer/configSchema.ts} +5 -5
  378. package/src/DensityRenderer/index.ts +14 -53
  379. package/src/LinePlotRenderer/LinePlotRenderer.ts +19 -0
  380. package/src/LinePlotRenderer/configSchema.ts +16 -0
  381. package/src/LinePlotRenderer/index.ts +16 -0
  382. package/src/LinearWiggleDisplay/components/SetColorDialog.tsx +26 -31
  383. package/src/LinearWiggleDisplay/components/SetMinMaxDialog.tsx +13 -11
  384. package/src/LinearWiggleDisplay/components/Tooltip.tsx +6 -121
  385. package/src/LinearWiggleDisplay/components/WiggleDisplayComponent.tsx +9 -4
  386. package/src/LinearWiggleDisplay/index.ts +24 -3
  387. package/src/LinearWiggleDisplay/models/model.tsx +139 -224
  388. package/src/MultiDensityRenderer/MultiDensityRenderer.ts +39 -0
  389. package/src/MultiDensityRenderer/configSchema.ts +10 -0
  390. package/src/MultiDensityRenderer/index.ts +16 -0
  391. package/src/MultiLineRenderer/MultiLineRenderer.ts +29 -0
  392. package/src/MultiLineRenderer/configSchema.ts +24 -0
  393. package/src/MultiLineRenderer/index.ts +17 -0
  394. package/src/MultiLinearWiggleDisplay/components/SetColorDialog.tsx +322 -0
  395. package/src/MultiLinearWiggleDisplay/components/SetMinMaxDialog.tsx +113 -0
  396. package/src/MultiLinearWiggleDisplay/components/Tooltip.tsx +76 -0
  397. package/src/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.tsx +261 -0
  398. package/src/MultiLinearWiggleDisplay/components/YScaleBar.tsx +25 -0
  399. package/src/MultiLinearWiggleDisplay/components/declare.d.ts +1 -0
  400. package/src/MultiLinearWiggleDisplay/components/util.test.ts +69 -0
  401. package/src/MultiLinearWiggleDisplay/components/util.ts +33 -0
  402. package/src/MultiLinearWiggleDisplay/index.ts +20 -0
  403. package/src/MultiLinearWiggleDisplay/models/configSchema.ts +94 -0
  404. package/src/MultiLinearWiggleDisplay/models/model.tsx +721 -0
  405. package/src/MultiQuantitativeTrack/index.ts +26 -0
  406. package/src/MultiRowLineRenderer/MultiRowLineRenderer.ts +36 -0
  407. package/src/MultiRowLineRenderer/configSchema.ts +25 -0
  408. package/src/MultiRowLineRenderer/index.ts +16 -0
  409. package/src/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.ts +43 -0
  410. package/src/MultiRowXYPlotRenderer/configSchema.ts +33 -0
  411. package/src/MultiRowXYPlotRenderer/index.ts +16 -0
  412. package/src/MultiWiggleAdapter/MultiWiggleAdapter.ts +120 -0
  413. package/src/MultiWiggleAdapter/configSchema.ts +16 -0
  414. package/src/MultiWiggleAdapter/index.ts +20 -0
  415. package/src/MultiWiggleAdapter/test_data/volvox.bw +0 -0
  416. package/src/MultiWiggleAddTrackWidget/AddTrackWorkflow.tsx +130 -0
  417. package/src/MultiWiggleAddTrackWidget/index.ts +17 -0
  418. package/src/MultiWiggleRendering.tsx +125 -0
  419. package/src/MultiXYPlotRenderer/MultiXYPlotRenderer.ts +32 -0
  420. package/src/MultiXYPlotRenderer/configSchema.ts +31 -0
  421. package/src/MultiXYPlotRenderer/index.ts +17 -0
  422. package/src/QuantitativeTrack/index.ts +26 -0
  423. package/src/Tooltip.tsx +123 -0
  424. package/src/WiggleBaseRenderer.tsx +17 -11
  425. package/src/WiggleRPC/rpcMethods.ts +68 -17
  426. package/src/WiggleRendering.tsx +12 -18
  427. package/src/XYPlotRenderer/XYPlotRenderer.test.js +3 -1
  428. package/src/XYPlotRenderer/XYPlotRenderer.ts +19 -124
  429. package/src/XYPlotRenderer/__snapshots__/XYPlotRenderer.test.js.snap +8 -0
  430. package/src/XYPlotRenderer/configSchema.ts +32 -0
  431. package/src/XYPlotRenderer/index.ts +16 -10
  432. package/src/__snapshots__/WiggleRendering.test.js.snap +0 -2
  433. package/src/configSchema.ts +0 -28
  434. package/src/declare.d.ts +0 -1
  435. package/src/drawxy.ts +387 -0
  436. package/src/index.ts +75 -129
  437. package/src/util.ts +174 -0
  438. package/dist/BigWigAdapter/BigWigAdapter.test.js +0 -157
  439. package/dist/DensityRenderer/DensityRenderer.test.js +0 -88
  440. package/dist/WiggleRendering.test.js +0 -52
  441. package/dist/XYPlotRenderer/XYPlotRenderer.test.js +0 -87
  442. package/dist/declare.d.js +0 -1
  443. package/dist/index.test.js +0 -24
  444. package/dist/util.test.js +0 -66
  445. package/src/LinePlotRenderer/LinePlotRenderer.js +0 -91
  446. package/src/LinePlotRenderer/configSchema.js +0 -68
@@ -48,70 +48,70 @@ Array [
48
48
  "refName": "ctgA",
49
49
  "score": 18,
50
50
  "start": 1002,
51
- "uniqueId": "ctgA:1002-1003",
51
+ "uniqueId": ":ctgA:1002-1003",
52
52
  },
53
53
  Object {
54
54
  "end": 1004,
55
55
  "refName": "ctgA",
56
56
  "score": 18,
57
57
  "start": 1003,
58
- "uniqueId": "ctgA:1003-1004",
58
+ "uniqueId": ":ctgA:1003-1004",
59
59
  },
60
60
  Object {
61
61
  "end": 1005,
62
62
  "refName": "ctgA",
63
63
  "score": 18,
64
64
  "start": 1004,
65
- "uniqueId": "ctgA:1004-1005",
65
+ "uniqueId": ":ctgA:1004-1005",
66
66
  },
67
67
  Object {
68
68
  "end": 1006,
69
69
  "refName": "ctgA",
70
70
  "score": 19,
71
71
  "start": 1005,
72
- "uniqueId": "ctgA:1005-1006",
72
+ "uniqueId": ":ctgA:1005-1006",
73
73
  },
74
74
  Object {
75
75
  "end": 1007,
76
76
  "refName": "ctgA",
77
77
  "score": 20,
78
78
  "start": 1006,
79
- "uniqueId": "ctgA:1006-1007",
79
+ "uniqueId": ":ctgA:1006-1007",
80
80
  },
81
81
  Object {
82
82
  "end": 1008,
83
83
  "refName": "ctgA",
84
84
  "score": 20,
85
85
  "start": 1007,
86
- "uniqueId": "ctgA:1007-1008",
86
+ "uniqueId": ":ctgA:1007-1008",
87
87
  },
88
88
  Object {
89
89
  "end": 1009,
90
90
  "refName": "ctgA",
91
91
  "score": 20,
92
92
  "start": 1008,
93
- "uniqueId": "ctgA:1008-1009",
93
+ "uniqueId": ":ctgA:1008-1009",
94
94
  },
95
95
  Object {
96
96
  "end": 1010,
97
97
  "refName": "ctgA",
98
98
  "score": 20,
99
99
  "start": 1009,
100
- "uniqueId": "ctgA:1009-1010",
100
+ "uniqueId": ":ctgA:1009-1010",
101
101
  },
102
102
  Object {
103
103
  "end": 1011,
104
104
  "refName": "ctgA",
105
105
  "score": 20,
106
106
  "start": 1010,
107
- "uniqueId": "ctgA:1010-1011",
107
+ "uniqueId": ":ctgA:1010-1011",
108
108
  },
109
109
  Object {
110
110
  "end": 1012,
111
111
  "refName": "ctgA",
112
112
  "score": 19,
113
113
  "start": 1011,
114
- "uniqueId": "ctgA:1011-1012",
114
+ "uniqueId": ":ctgA:1011-1012",
115
115
  },
116
116
  ]
117
117
  `;
@@ -10,6 +10,11 @@ export default ConfigurationSchema(
10
10
  locationType: 'UriLocation',
11
11
  },
12
12
  },
13
+ source: {
14
+ type: 'string',
15
+ defaultValue: '',
16
+ description: 'Used for multiwiggle',
17
+ },
13
18
  },
14
19
  { explicitlyTyped: true },
15
20
  )
@@ -1 +1,19 @@
1
- export { default as configSchema } from './configSchema'
1
+ import PluginManager from '@jbrowse/core/PluginManager'
2
+ import AdapterType from '@jbrowse/core/pluggableElementTypes/AdapterType'
3
+ import configSchema from './configSchema'
4
+
5
+ export default (pluginManager: PluginManager) => {
6
+ pluginManager.addAdapterType(
7
+ () =>
8
+ new AdapterType({
9
+ name: 'BigWigAdapter',
10
+ configSchema,
11
+ adapterCapabilities: [
12
+ 'hasResolution',
13
+ 'hasLocalStats',
14
+ 'hasGlobalStats',
15
+ ],
16
+ getAdapterClass: () => import('./BigWigAdapter').then(r => r.default),
17
+ }),
18
+ )
19
+ }
@@ -0,0 +1,66 @@
1
+ import React, { useState } from 'react'
2
+ import {
3
+ Button,
4
+ Dialog,
5
+ DialogActions,
6
+ DialogContent,
7
+ DialogTitle,
8
+ TextField,
9
+ Typography,
10
+ } from '@mui/material'
11
+ import {
12
+ AnyConfigurationModel,
13
+ readConfObject,
14
+ } from '@jbrowse/core/configuration'
15
+
16
+ const ConfirmDialog = ({
17
+ tracks,
18
+ onClose,
19
+ }: {
20
+ tracks: AnyConfigurationModel[]
21
+ onClose: (arg: boolean, arg1?: { name: string }) => void
22
+ }) => {
23
+ const [val, setVal] = useState('MultiWiggle ' + Date.now())
24
+ const allQuant = tracks.every(t => t.type === 'QuantitativeTrack')
25
+ return (
26
+ <Dialog open onClose={() => onClose(false)}>
27
+ <DialogTitle>Confirm multi-wiggle track create</DialogTitle>
28
+ <DialogContent>
29
+ <Typography>
30
+ {!allQuant
31
+ ? 'Not every track looks like a QuantitativeTrack. This could have unexpected behavior, confirm if it looks ok.'
32
+ : null}
33
+ Listing:
34
+ </Typography>
35
+ <ul>
36
+ {tracks.map(track => (
37
+ <li key={track.trackId}>
38
+ {readConfObject(track, 'name')} - {track.type}
39
+ </li>
40
+ ))}
41
+ </ul>
42
+ <TextField
43
+ value={val}
44
+ onChange={event => setVal(event.target.value)}
45
+ helperText="Track name"
46
+ />
47
+ <Typography>Confirm creation of track?</Typography>
48
+ </DialogContent>
49
+ <DialogActions>
50
+ <Button onClick={() => onClose(false)} color="primary">
51
+ Cancel
52
+ </Button>
53
+ <Button
54
+ onClick={() => onClose(true, { name: val })}
55
+ color="primary"
56
+ variant="contained"
57
+ autoFocus
58
+ >
59
+ Submit
60
+ </Button>
61
+ </DialogActions>
62
+ </Dialog>
63
+ )
64
+ }
65
+
66
+ export default ConfirmDialog
@@ -0,0 +1,57 @@
1
+ import { lazy } from 'react'
2
+ import PluginManager from '@jbrowse/core/PluginManager'
3
+ import { readConfObject } from '@jbrowse/core/configuration'
4
+ import { getSession } from '@jbrowse/core/util'
5
+ import { HierarchicalTrackSelectorModel } from '@jbrowse/plugin-data-management'
6
+
7
+ const ConfirmDialog = lazy(() => import('./ConfirmDialog'))
8
+
9
+ export default function (pm: PluginManager) {
10
+ pm.addToExtensionPoint('TrackSelector-multiTrackMenuItems', () => {
11
+ return [
12
+ {
13
+ label: 'Create multi-wiggle track',
14
+ onClick: (model: HierarchicalTrackSelectorModel) => {
15
+ const tracks = model.selection
16
+ const trackIds = tracks.map(c => readConfObject(c, 'name'))
17
+ function makeTrack(arg: { name: string }) {
18
+ const subadapters = tracks
19
+ .map(c => readConfObject(c, 'adapter'))
20
+ .map((c, idx) => ({ ...c, source: trackIds[idx] }))
21
+ const assemblyNames = [
22
+ ...new Set(
23
+ tracks.map(c => readConfObject(c, 'assemblyNames')).flat(),
24
+ ),
25
+ ]
26
+ const now = +Date.now()
27
+ const trackId = `multitrack-${now}-sessionTrack`
28
+
29
+ getSession(model).addTrackConf({
30
+ type: 'MultiQuantitativeTrack',
31
+ trackId,
32
+ name: arg.name,
33
+ assemblyNames,
34
+ adapter: {
35
+ type: 'MultiWiggleAdapter',
36
+ subadapters,
37
+ },
38
+ })
39
+ model.view.showTrack(trackId)
40
+ }
41
+ getSession(model).queueDialog(handleClose => [
42
+ ConfirmDialog,
43
+ {
44
+ tracks,
45
+ onClose: (arg: boolean, arg1: { name: string }) => {
46
+ if (arg) {
47
+ makeTrack(arg1)
48
+ }
49
+ handleClose()
50
+ },
51
+ },
52
+ ])
53
+ },
54
+ },
55
+ ]
56
+ })
57
+ }
@@ -1,6 +1,8 @@
1
1
  import SimpleFeature from '@jbrowse/core/util/simpleFeature'
2
2
  import { renderToAbstractCanvas } from '@jbrowse/core/util/offscreenCanvasUtils'
3
- import DensityRenderer, { configSchema, ReactComponent } from '.'
3
+ import DensityRenderer from './DensityRenderer'
4
+ import configSchema from './configSchema'
5
+ import ReactComponent from '../WiggleRendering'
4
6
 
5
7
  import { Image, createCanvas } from 'canvas'
6
8
 
@@ -32,12 +34,16 @@ test('inverted mode and reversed', async () => {
32
34
  ],
33
35
  scaleOpts: {
34
36
  domain: [0, 100],
37
+ range: [0, 200],
35
38
  inverted: true,
36
39
  scaleType: 'linear',
37
40
  },
41
+ config: {
42
+ posColor: 'red',
43
+ negColor: 'blue',
44
+ },
38
45
  bpPerPx: 3,
39
46
  highResolutionScaling: 1,
40
- config: {},
41
47
  height: 100,
42
48
  }
43
49
 
@@ -0,0 +1,14 @@
1
+ import { drawDensity } from '../drawxy'
2
+
3
+ import WiggleBaseRenderer, {
4
+ RenderArgsDeserializedWithFeatures,
5
+ } from '../WiggleBaseRenderer'
6
+
7
+ export default class DensityRenderer extends WiggleBaseRenderer {
8
+ async draw(
9
+ ctx: CanvasRenderingContext2D,
10
+ props: RenderArgsDeserializedWithFeatures,
11
+ ) {
12
+ return drawDensity(ctx, props)
13
+ }
14
+ }
@@ -3,5 +3,13 @@
3
3
  exports[`inverted mode and reversed 1`] = `
4
4
  Object {
5
5
  "imageData": Any<Object>,
6
+ "reducedFeatures": Array [
7
+ Object {
8
+ "end": 200,
9
+ "score": 2,
10
+ "start": 101,
11
+ "uniqueId": "t2",
12
+ },
13
+ ],
6
14
  }
7
15
  `;
@@ -1,11 +1,11 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration'
2
- import ConfigSchema from '../configSchema'
3
2
 
4
- export { default as ReactComponent } from '../WiggleRendering'
5
- export { default } from './LinePlotRenderer'
3
+ import ConfigSchema from '../configSchema'
6
4
 
7
- export const configSchema = ConfigurationSchema(
8
- 'LinePlotRenderer',
5
+ const configSchema = ConfigurationSchema(
6
+ 'DensityRenderer',
9
7
  {},
10
8
  { baseConfiguration: ConfigSchema, explicitlyTyped: true },
11
9
  )
10
+
11
+ export default configSchema
@@ -1,56 +1,17 @@
1
- import {
2
- readConfObject,
3
- ConfigurationSchema,
4
- } from '@jbrowse/core/configuration'
5
- import { featureSpanPx } from '@jbrowse/core/util'
6
- import { Feature } from '@jbrowse/core/util/simpleFeature'
7
- import { getScale } from '../util'
1
+ import configSchema from './configSchema'
8
2
 
9
- import ConfigSchema from '../configSchema'
10
- import WiggleBaseRenderer, {
11
- RenderArgsDeserializedWithFeatures,
12
- } from '../WiggleBaseRenderer'
3
+ import PluginManager from '@jbrowse/core/PluginManager'
4
+ import DensityRenderer from './DensityRenderer'
5
+ import ReactComponent from '../WiggleRendering'
13
6
 
14
- export { default as ReactComponent } from '../WiggleRendering'
15
-
16
- export default class DensityRenderer extends WiggleBaseRenderer {
17
- draw(
18
- ctx: CanvasRenderingContext2D,
19
- props: RenderArgsDeserializedWithFeatures,
20
- ) {
21
- const { features, regions, bpPerPx, scaleOpts, height, config } = props
22
- const [region] = regions
23
- const pivot = readConfObject(config, 'bicolorPivot')
24
- const pivotValue = readConfObject(config, 'bicolorPivotValue')
25
- const negColor = readConfObject(config, 'negColor')
26
- const posColor = readConfObject(config, 'posColor')
27
- const color = readConfObject(config, 'color')
28
- let colorCallback
29
- if (color === '#f0f') {
30
- const colorScale =
31
- pivot !== 'none'
32
- ? getScale({
33
- ...scaleOpts,
34
- pivotValue,
35
- range: [negColor, 'white', posColor],
36
- })
37
- : getScale({ ...scaleOpts, range: ['white', posColor] })
38
- colorCallback = (feature: Feature) => colorScale(feature.get('score'))
39
- } else {
40
- colorCallback = (feature: Feature) =>
41
- readConfObject(config, 'color', { feature })
42
- }
43
-
44
- for (const feature of features.values()) {
45
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
46
- const w = rightPx - leftPx + 0.3 // fudge factor for subpixel rendering
47
- ctx.fillStyle = colorCallback(feature)
48
- ctx.fillRect(leftPx, 0, w, height)
49
- }
50
- }
7
+ export default (pluginManager: PluginManager) => {
8
+ pluginManager.addRendererType(
9
+ () =>
10
+ new DensityRenderer({
11
+ name: 'DensityRenderer',
12
+ ReactComponent,
13
+ configSchema,
14
+ pluginManager,
15
+ }),
16
+ )
51
17
  }
52
- export const configSchema = ConfigurationSchema(
53
- 'DensityRenderer',
54
- {},
55
- { baseConfiguration: ConfigSchema, explicitlyTyped: true },
56
- )
@@ -0,0 +1,19 @@
1
+ import WiggleBaseRenderer, {
2
+ RenderArgsDeserializedWithFeatures,
3
+ } from '../WiggleBaseRenderer'
4
+
5
+ import { YSCALEBAR_LABEL_OFFSET } from '../util'
6
+ import { drawLine } from '../drawxy'
7
+
8
+ export default class LinePlotRenderer extends WiggleBaseRenderer {
9
+ async draw(
10
+ ctx: CanvasRenderingContext2D,
11
+ props: RenderArgsDeserializedWithFeatures,
12
+ ) {
13
+ return drawLine(ctx, {
14
+ ...props,
15
+ offset: YSCALEBAR_LABEL_OFFSET,
16
+ colorCallback: () => 'grey',
17
+ })
18
+ }
19
+ }
@@ -0,0 +1,16 @@
1
+ import { ConfigurationSchema } from '@jbrowse/core/configuration'
2
+ import ConfigSchema from '../configSchema'
3
+
4
+ const configSchema = ConfigurationSchema(
5
+ 'LinePlotRenderer',
6
+ {
7
+ displayCrossHatches: {
8
+ type: 'boolean',
9
+ description: 'choose to draw cross hatches (sideways lines)',
10
+ defaultValue: false,
11
+ },
12
+ },
13
+ { baseConfiguration: ConfigSchema, explicitlyTyped: true },
14
+ )
15
+
16
+ export default configSchema
@@ -0,0 +1,16 @@
1
+ import PluginManager from '@jbrowse/core/PluginManager'
2
+ import configSchema from './configSchema'
3
+ import ReactComponent from '../WiggleRendering'
4
+ import LinePlotRenderer from './LinePlotRenderer'
5
+
6
+ export default (pluginManager: PluginManager) => {
7
+ pluginManager.addRendererType(
8
+ () =>
9
+ new LinePlotRenderer({
10
+ name: 'LinePlotRenderer',
11
+ ReactComponent,
12
+ configSchema,
13
+ pluginManager,
14
+ }),
15
+ )
16
+ }
@@ -1,20 +1,21 @@
1
1
  import React, { useState } from 'react'
2
+ import { observer } from 'mobx-react'
2
3
  import {
3
4
  Button,
4
5
  Dialog,
5
6
  DialogContent,
6
7
  DialogActions,
7
8
  DialogTitle,
8
- IconButton,
9
- Typography,
10
9
  FormControlLabel,
10
+ IconButton,
11
11
  Radio,
12
- makeStyles,
13
- } from '@material-ui/core'
14
- import CloseIcon from '@material-ui/icons/Close'
15
- import { CompactPicker, Color, RGBColor } from 'react-color'
12
+ Typography,
13
+ } from '@mui/material'
14
+ import { makeStyles } from 'tss-react/mui'
15
+ import CloseIcon from '@mui/icons-material/Close'
16
+ import { ColorPicker } from '@jbrowse/core/ui/ColorPicker'
16
17
 
17
- const useStyles = makeStyles(theme => ({
18
+ const useStyles = makeStyles()(theme => ({
18
19
  closeButton: {
19
20
  position: 'absolute',
20
21
  right: theme.spacing(1),
@@ -23,29 +24,21 @@ const useStyles = makeStyles(theme => ({
23
24
  },
24
25
  }))
25
26
 
26
- // this is needed because passing a entire color object into the react-color
27
- // for alpha, can't pass in an rgba string for example
28
- function serialize(color: Color) {
29
- if (color instanceof Object) {
30
- const { r, g, b } = color as RGBColor
31
- return `rgb(${r},${g},${b})`
32
- }
33
- return color
34
- }
35
-
36
- export default function SetColorDialog({
27
+ function SetColorDialog({
37
28
  model,
38
29
  handleClose,
39
30
  }: {
40
31
  model: {
41
- color: number
32
+ color?: string
33
+ posColor?: string
34
+ negColor?: string
42
35
  setColor: (arg?: string) => void
43
36
  setPosColor: (arg?: string) => void
44
37
  setNegColor: (arg?: string) => void
45
38
  }
46
39
  handleClose: () => void
47
40
  }) {
48
- const classes = useStyles()
41
+ const { classes } = useStyles()
49
42
  const [posneg, setPosNeg] = useState(false)
50
43
 
51
44
  return (
@@ -78,16 +71,19 @@ export default function SetColorDialog({
78
71
  {posneg ? (
79
72
  <>
80
73
  <Typography>Positive color</Typography>
81
- <CompactPicker
74
+ <ColorPicker
75
+ color={model.posColor || 'black'}
82
76
  onChange={event => {
83
- model.setPosColor(serialize(event.rgb))
77
+ model.setPosColor(event)
84
78
  model.setColor(undefined)
85
79
  }}
86
80
  />
87
81
  <Typography>Negative color</Typography>
88
- <CompactPicker
82
+
83
+ <ColorPicker
84
+ color={model.negColor || 'black'}
89
85
  onChange={event => {
90
- model.setNegColor(serialize(event.rgb))
86
+ model.setNegColor(event)
91
87
  model.setColor(undefined)
92
88
  }}
93
89
  />
@@ -95,10 +91,9 @@ export default function SetColorDialog({
95
91
  ) : (
96
92
  <>
97
93
  <Typography>Overall color</Typography>
98
- <CompactPicker
99
- onChange={event => {
100
- model.setColor(serialize(event.rgb))
101
- }}
94
+ <ColorPicker
95
+ color={model.color || 'black'}
96
+ onChange={event => model.setColor(event)}
102
97
  />
103
98
  </>
104
99
  )}
@@ -120,9 +115,7 @@ export default function SetColorDialog({
120
115
  variant="contained"
121
116
  color="primary"
122
117
  type="submit"
123
- onClick={() => {
124
- handleClose()
125
- }}
118
+ onClick={() => handleClose()}
126
119
  >
127
120
  Submit
128
121
  </Button>
@@ -130,3 +123,5 @@ export default function SetColorDialog({
130
123
  </Dialog>
131
124
  )
132
125
  }
126
+
127
+ export default observer(SetColorDialog)
@@ -1,15 +1,17 @@
1
1
  import React, { useState } from 'react'
2
- import { makeStyles } from '@material-ui/core/styles'
3
- import Button from '@material-ui/core/Button'
4
- import TextField from '@material-ui/core/TextField'
5
- import Typography from '@material-ui/core/Typography'
6
- import Dialog from '@material-ui/core/Dialog'
7
- import DialogContent from '@material-ui/core/DialogContent'
8
- import DialogTitle from '@material-ui/core/DialogTitle'
9
- import IconButton from '@material-ui/core/IconButton'
10
- import CloseIcon from '@material-ui/icons/Close'
2
+ import {
3
+ Button,
4
+ Dialog,
5
+ DialogContent,
6
+ DialogTitle,
7
+ IconButton,
8
+ TextField,
9
+ Typography,
10
+ } from '@mui/material'
11
+ import { makeStyles } from 'tss-react/mui'
12
+ import CloseIcon from '@mui/icons-material/Close'
11
13
 
12
- const useStyles = makeStyles(theme => ({
14
+ const useStyles = makeStyles()(theme => ({
13
15
  root: {},
14
16
  closeButton: {
15
17
  position: 'absolute',
@@ -29,7 +31,7 @@ export default function SetMinMaxDlg(props: {
29
31
  }
30
32
  handleClose: () => void
31
33
  }) {
32
- const classes = useStyles()
34
+ const { classes } = useStyles()
33
35
  const { model, handleClose } = props
34
36
  const { minScore, maxScore, scaleType } = model
35
37