@jbrowse/plugin-wiggle 2.5.0 → 2.6.2

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 (404) hide show
  1. package/dist/BigWigAdapter/BigWigAdapter.js +2 -2
  2. package/dist/BigWigAdapter/configSchema.js +0 -1
  3. package/dist/BigWigAdapter/index.js +0 -1
  4. package/dist/CreateMultiWiggleExtension/ConfirmDialog.d.ts +2 -1
  5. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js +0 -1
  6. package/dist/CreateMultiWiggleExtension/index.js +0 -1
  7. package/dist/DensityRenderer/DensityRenderer.js +0 -1
  8. package/dist/DensityRenderer/configSchema.js +0 -1
  9. package/dist/DensityRenderer/index.js +0 -1
  10. package/dist/LinePlotRenderer/LinePlotRenderer.js +0 -1
  11. package/dist/LinePlotRenderer/configSchema.js +0 -1
  12. package/dist/LinePlotRenderer/index.js +0 -1
  13. package/dist/LinearWiggleDisplay/components/SetColorDialog.d.ts +2 -1
  14. package/dist/LinearWiggleDisplay/components/SetColorDialog.js +0 -1
  15. package/dist/LinearWiggleDisplay/components/Tooltip.d.ts +1 -1
  16. package/dist/LinearWiggleDisplay/components/Tooltip.js +0 -1
  17. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -1
  18. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -1
  19. package/dist/LinearWiggleDisplay/index.js +27 -5
  20. package/dist/LinearWiggleDisplay/models/configSchema.d.ts +18 -35
  21. package/dist/LinearWiggleDisplay/models/configSchema.js +6 -68
  22. package/dist/LinearWiggleDisplay/models/model.d.ts +147 -342
  23. package/dist/LinearWiggleDisplay/models/model.js +17 -433
  24. package/dist/LinearWiggleDisplay/models/renderSvg.d.ts +4 -0
  25. package/dist/LinearWiggleDisplay/models/renderSvg.js +20 -0
  26. package/dist/MultiDensityRenderer/MultiDensityRenderer.js +1 -2
  27. package/dist/MultiDensityRenderer/configSchema.js +0 -1
  28. package/dist/MultiDensityRenderer/index.js +0 -1
  29. package/dist/MultiLineRenderer/MultiLineRenderer.js +1 -2
  30. package/dist/MultiLineRenderer/configSchema.js +0 -1
  31. package/dist/MultiLineRenderer/index.js +0 -1
  32. package/dist/MultiLinearWiggleDisplay/components/DraggableDialog.d.ts +2 -1
  33. package/dist/MultiLinearWiggleDisplay/components/DraggableDialog.js +0 -1
  34. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +2 -1
  35. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js +2 -3
  36. package/dist/MultiLinearWiggleDisplay/components/Tooltip.d.ts +1 -1
  37. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js +0 -1
  38. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +3 -2
  39. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -1
  40. package/dist/MultiLinearWiggleDisplay/components/util.js +0 -1
  41. package/dist/MultiLinearWiggleDisplay/index.js +25 -3
  42. package/dist/MultiLinearWiggleDisplay/models/configSchema.d.ts +24 -44
  43. package/dist/MultiLinearWiggleDisplay/models/configSchema.js +6 -67
  44. package/dist/MultiLinearWiggleDisplay/models/model.d.ts +263 -175
  45. package/dist/MultiLinearWiggleDisplay/models/model.js +335 -509
  46. package/dist/MultiLinearWiggleDisplay/models/renderSvg.d.ts +4 -0
  47. package/dist/MultiLinearWiggleDisplay/models/renderSvg.js +19 -0
  48. package/dist/MultiQuantitativeTrack/configSchema.js +0 -1
  49. package/dist/MultiQuantitativeTrack/index.js +0 -1
  50. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js +1 -2
  51. package/dist/MultiRowLineRenderer/configSchema.js +0 -1
  52. package/dist/MultiRowLineRenderer/index.js +0 -1
  53. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +1 -2
  54. package/dist/MultiRowXYPlotRenderer/configSchema.js +0 -1
  55. package/dist/MultiRowXYPlotRenderer/index.js +0 -1
  56. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js +0 -1
  57. package/dist/MultiWiggleAdapter/configSchema.js +0 -1
  58. package/dist/MultiWiggleAdapter/index.js +0 -1
  59. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.d.ts +2 -1
  60. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js +1 -2
  61. package/dist/MultiWiggleAddTrackWidget/index.js +0 -1
  62. package/dist/MultiWiggleRendering.d.ts +2 -1
  63. package/dist/MultiWiggleRendering.js +0 -1
  64. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js +3 -3
  65. package/dist/MultiXYPlotRenderer/configSchema.js +0 -1
  66. package/dist/MultiXYPlotRenderer/index.js +0 -1
  67. package/dist/QuantitativeTrack/configSchema.js +0 -1
  68. package/dist/QuantitativeTrack/index.js +0 -1
  69. package/dist/Tooltip.d.ts +1 -1
  70. package/dist/Tooltip.js +0 -1
  71. package/dist/WiggleBaseRenderer.d.ts +1 -1
  72. package/dist/WiggleBaseRenderer.js +0 -1
  73. package/dist/WiggleRPC/MultiWiggleGetSources.js +0 -1
  74. package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +0 -1
  75. package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +0 -1
  76. package/dist/WiggleRPC/rpcMethods.js +0 -1
  77. package/dist/WiggleRendering.d.ts +2 -1
  78. package/dist/WiggleRendering.js +0 -1
  79. package/dist/XYPlotRenderer/XYPlotRenderer.js +0 -1
  80. package/dist/XYPlotRenderer/configSchema.js +0 -1
  81. package/dist/XYPlotRenderer/index.js +0 -1
  82. package/dist/configSchema.js +0 -1
  83. package/dist/drawxy.js +0 -1
  84. package/dist/index.d.ts +222 -198
  85. package/dist/index.js +0 -1
  86. package/dist/shared/SetMinMaxDialog.d.ts +2 -1
  87. package/dist/shared/SetMinMaxDialog.js +0 -1
  88. package/dist/shared/YScaleBar.d.ts +4 -2
  89. package/dist/shared/YScaleBar.js +1 -2
  90. package/dist/shared/configShared.d.ts +85 -0
  91. package/dist/shared/configShared.js +83 -0
  92. package/dist/shared/modelShared.d.ts +576 -0
  93. package/dist/shared/modelShared.js +479 -0
  94. package/dist/util.d.ts +0 -3
  95. package/dist/util.js +1 -12
  96. package/esm/BigWigAdapter/BigWigAdapter.js +2 -2
  97. package/esm/BigWigAdapter/configSchema.js +0 -1
  98. package/esm/BigWigAdapter/index.js +0 -1
  99. package/esm/CreateMultiWiggleExtension/ConfirmDialog.d.ts +2 -1
  100. package/esm/CreateMultiWiggleExtension/ConfirmDialog.js +0 -1
  101. package/esm/CreateMultiWiggleExtension/index.js +0 -1
  102. package/esm/DensityRenderer/DensityRenderer.js +0 -1
  103. package/esm/DensityRenderer/configSchema.js +0 -1
  104. package/esm/DensityRenderer/index.js +0 -1
  105. package/esm/LinePlotRenderer/LinePlotRenderer.js +0 -1
  106. package/esm/LinePlotRenderer/configSchema.js +0 -1
  107. package/esm/LinePlotRenderer/index.js +0 -1
  108. package/esm/LinearWiggleDisplay/components/SetColorDialog.d.ts +2 -1
  109. package/esm/LinearWiggleDisplay/components/SetColorDialog.js +0 -1
  110. package/esm/LinearWiggleDisplay/components/Tooltip.d.ts +1 -1
  111. package/esm/LinearWiggleDisplay/components/Tooltip.js +0 -1
  112. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +2 -1
  113. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -1
  114. package/esm/LinearWiggleDisplay/index.js +2 -3
  115. package/esm/LinearWiggleDisplay/models/configSchema.d.ts +18 -35
  116. package/esm/LinearWiggleDisplay/models/configSchema.js +3 -68
  117. package/esm/LinearWiggleDisplay/models/model.d.ts +147 -342
  118. package/esm/LinearWiggleDisplay/models/model.js +20 -436
  119. package/esm/LinearWiggleDisplay/models/renderSvg.d.ts +4 -0
  120. package/esm/LinearWiggleDisplay/models/renderSvg.js +13 -0
  121. package/esm/MultiDensityRenderer/MultiDensityRenderer.js +1 -2
  122. package/esm/MultiDensityRenderer/configSchema.js +0 -1
  123. package/esm/MultiDensityRenderer/index.js +0 -1
  124. package/esm/MultiLineRenderer/MultiLineRenderer.js +1 -2
  125. package/esm/MultiLineRenderer/configSchema.js +0 -1
  126. package/esm/MultiLineRenderer/index.js +0 -1
  127. package/esm/MultiLinearWiggleDisplay/components/DraggableDialog.d.ts +2 -1
  128. package/esm/MultiLinearWiggleDisplay/components/DraggableDialog.js +0 -1
  129. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.d.ts +2 -1
  130. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js +1 -2
  131. package/esm/MultiLinearWiggleDisplay/components/Tooltip.d.ts +1 -1
  132. package/esm/MultiLinearWiggleDisplay/components/Tooltip.js +0 -1
  133. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.d.ts +3 -2
  134. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js +0 -1
  135. package/esm/MultiLinearWiggleDisplay/components/util.js +0 -1
  136. package/esm/MultiLinearWiggleDisplay/index.js +2 -3
  137. package/esm/MultiLinearWiggleDisplay/models/configSchema.d.ts +24 -44
  138. package/esm/MultiLinearWiggleDisplay/models/configSchema.js +3 -67
  139. package/esm/MultiLinearWiggleDisplay/models/model.d.ts +263 -175
  140. package/esm/MultiLinearWiggleDisplay/models/model.js +337 -513
  141. package/esm/MultiLinearWiggleDisplay/models/renderSvg.d.ts +4 -0
  142. package/esm/MultiLinearWiggleDisplay/models/renderSvg.js +12 -0
  143. package/esm/MultiQuantitativeTrack/configSchema.js +0 -1
  144. package/esm/MultiQuantitativeTrack/index.js +0 -1
  145. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js +1 -2
  146. package/esm/MultiRowLineRenderer/configSchema.js +0 -1
  147. package/esm/MultiRowLineRenderer/index.js +0 -1
  148. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js +1 -2
  149. package/esm/MultiRowXYPlotRenderer/configSchema.js +0 -1
  150. package/esm/MultiRowXYPlotRenderer/index.js +0 -1
  151. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js +0 -1
  152. package/esm/MultiWiggleAdapter/configSchema.js +0 -1
  153. package/esm/MultiWiggleAdapter/index.js +0 -1
  154. package/esm/MultiWiggleAddTrackWidget/AddTrackWorkflow.d.ts +2 -1
  155. package/esm/MultiWiggleAddTrackWidget/AddTrackWorkflow.js +1 -2
  156. package/esm/MultiWiggleAddTrackWidget/index.js +0 -1
  157. package/esm/MultiWiggleRendering.d.ts +2 -1
  158. package/esm/MultiWiggleRendering.js +0 -1
  159. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js +2 -2
  160. package/esm/MultiXYPlotRenderer/configSchema.js +0 -1
  161. package/esm/MultiXYPlotRenderer/index.js +0 -1
  162. package/esm/QuantitativeTrack/configSchema.js +0 -1
  163. package/esm/QuantitativeTrack/index.js +0 -1
  164. package/esm/Tooltip.d.ts +1 -1
  165. package/esm/Tooltip.js +0 -1
  166. package/esm/WiggleBaseRenderer.d.ts +1 -1
  167. package/esm/WiggleBaseRenderer.js +0 -1
  168. package/esm/WiggleRPC/MultiWiggleGetSources.js +0 -1
  169. package/esm/WiggleRPC/WiggleGetGlobalQuantitativeStats.js +0 -1
  170. package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js +0 -1
  171. package/esm/WiggleRPC/rpcMethods.js +0 -1
  172. package/esm/WiggleRendering.d.ts +2 -1
  173. package/esm/WiggleRendering.js +0 -1
  174. package/esm/XYPlotRenderer/XYPlotRenderer.js +0 -1
  175. package/esm/XYPlotRenderer/configSchema.js +0 -1
  176. package/esm/XYPlotRenderer/index.js +0 -1
  177. package/esm/configSchema.js +0 -1
  178. package/esm/drawxy.js +0 -1
  179. package/esm/index.d.ts +222 -198
  180. package/esm/index.js +0 -1
  181. package/esm/shared/SetMinMaxDialog.d.ts +2 -1
  182. package/esm/shared/SetMinMaxDialog.js +0 -1
  183. package/esm/shared/YScaleBar.d.ts +4 -2
  184. package/esm/shared/YScaleBar.js +1 -2
  185. package/esm/shared/configShared.d.ts +85 -0
  186. package/esm/shared/configShared.js +80 -0
  187. package/esm/shared/modelShared.d.ts +576 -0
  188. package/esm/shared/modelShared.js +453 -0
  189. package/esm/util.d.ts +0 -3
  190. package/esm/util.js +0 -10
  191. package/package.json +4 -5
  192. package/dist/BigWigAdapter/BigWigAdapter.js.map +0 -1
  193. package/dist/BigWigAdapter/configSchema.js.map +0 -1
  194. package/dist/BigWigAdapter/index.js.map +0 -1
  195. package/dist/CreateMultiWiggleExtension/ConfirmDialog.js.map +0 -1
  196. package/dist/CreateMultiWiggleExtension/index.js.map +0 -1
  197. package/dist/DensityRenderer/DensityRenderer.js.map +0 -1
  198. package/dist/DensityRenderer/configSchema.js.map +0 -1
  199. package/dist/DensityRenderer/index.js.map +0 -1
  200. package/dist/LinePlotRenderer/LinePlotRenderer.js.map +0 -1
  201. package/dist/LinePlotRenderer/configSchema.js.map +0 -1
  202. package/dist/LinePlotRenderer/index.js.map +0 -1
  203. package/dist/LinearWiggleDisplay/components/SetColorDialog.js.map +0 -1
  204. package/dist/LinearWiggleDisplay/components/Tooltip.js.map +0 -1
  205. package/dist/LinearWiggleDisplay/components/WiggleDisplayComponent.js.map +0 -1
  206. package/dist/LinearWiggleDisplay/index.js.map +0 -1
  207. package/dist/LinearWiggleDisplay/models/configSchema.js.map +0 -1
  208. package/dist/LinearWiggleDisplay/models/model.js.map +0 -1
  209. package/dist/MultiDensityRenderer/MultiDensityRenderer.js.map +0 -1
  210. package/dist/MultiDensityRenderer/configSchema.js.map +0 -1
  211. package/dist/MultiDensityRenderer/index.js.map +0 -1
  212. package/dist/MultiLineRenderer/MultiLineRenderer.js.map +0 -1
  213. package/dist/MultiLineRenderer/configSchema.js.map +0 -1
  214. package/dist/MultiLineRenderer/index.js.map +0 -1
  215. package/dist/MultiLinearWiggleDisplay/components/DraggableDialog.js.map +0 -1
  216. package/dist/MultiLinearWiggleDisplay/components/SetColorDialog.js.map +0 -1
  217. package/dist/MultiLinearWiggleDisplay/components/Tooltip.js.map +0 -1
  218. package/dist/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js.map +0 -1
  219. package/dist/MultiLinearWiggleDisplay/components/util.js.map +0 -1
  220. package/dist/MultiLinearWiggleDisplay/index.js.map +0 -1
  221. package/dist/MultiLinearWiggleDisplay/models/configSchema.js.map +0 -1
  222. package/dist/MultiLinearWiggleDisplay/models/model.js.map +0 -1
  223. package/dist/MultiQuantitativeTrack/configSchema.js.map +0 -1
  224. package/dist/MultiQuantitativeTrack/index.js.map +0 -1
  225. package/dist/MultiRowLineRenderer/MultiRowLineRenderer.js.map +0 -1
  226. package/dist/MultiRowLineRenderer/configSchema.js.map +0 -1
  227. package/dist/MultiRowLineRenderer/index.js.map +0 -1
  228. package/dist/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js.map +0 -1
  229. package/dist/MultiRowXYPlotRenderer/configSchema.js.map +0 -1
  230. package/dist/MultiRowXYPlotRenderer/index.js.map +0 -1
  231. package/dist/MultiWiggleAdapter/MultiWiggleAdapter.js.map +0 -1
  232. package/dist/MultiWiggleAdapter/configSchema.js.map +0 -1
  233. package/dist/MultiWiggleAdapter/index.js.map +0 -1
  234. package/dist/MultiWiggleAddTrackWidget/AddTrackWorkflow.js.map +0 -1
  235. package/dist/MultiWiggleAddTrackWidget/index.js.map +0 -1
  236. package/dist/MultiWiggleRendering.js.map +0 -1
  237. package/dist/MultiXYPlotRenderer/MultiXYPlotRenderer.js.map +0 -1
  238. package/dist/MultiXYPlotRenderer/configSchema.js.map +0 -1
  239. package/dist/MultiXYPlotRenderer/index.js.map +0 -1
  240. package/dist/QuantitativeTrack/configSchema.js.map +0 -1
  241. package/dist/QuantitativeTrack/index.js.map +0 -1
  242. package/dist/Tooltip.js.map +0 -1
  243. package/dist/WiggleBaseRenderer.js.map +0 -1
  244. package/dist/WiggleRPC/MultiWiggleGetSources.js.map +0 -1
  245. package/dist/WiggleRPC/WiggleGetGlobalQuantitativeStats.js.map +0 -1
  246. package/dist/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js.map +0 -1
  247. package/dist/WiggleRPC/rpcMethods.js.map +0 -1
  248. package/dist/WiggleRendering.js.map +0 -1
  249. package/dist/XYPlotRenderer/XYPlotRenderer.js.map +0 -1
  250. package/dist/XYPlotRenderer/configSchema.js.map +0 -1
  251. package/dist/XYPlotRenderer/index.js.map +0 -1
  252. package/dist/configSchema.js.map +0 -1
  253. package/dist/drawxy.js.map +0 -1
  254. package/dist/index.js.map +0 -1
  255. package/dist/shared/SetMinMaxDialog.js.map +0 -1
  256. package/dist/shared/YScaleBar.js.map +0 -1
  257. package/dist/util.js.map +0 -1
  258. package/esm/BigWigAdapter/BigWigAdapter.js.map +0 -1
  259. package/esm/BigWigAdapter/configSchema.js.map +0 -1
  260. package/esm/BigWigAdapter/index.js.map +0 -1
  261. package/esm/CreateMultiWiggleExtension/ConfirmDialog.js.map +0 -1
  262. package/esm/CreateMultiWiggleExtension/index.js.map +0 -1
  263. package/esm/DensityRenderer/DensityRenderer.js.map +0 -1
  264. package/esm/DensityRenderer/configSchema.js.map +0 -1
  265. package/esm/DensityRenderer/index.js.map +0 -1
  266. package/esm/LinePlotRenderer/LinePlotRenderer.js.map +0 -1
  267. package/esm/LinePlotRenderer/configSchema.js.map +0 -1
  268. package/esm/LinePlotRenderer/index.js.map +0 -1
  269. package/esm/LinearWiggleDisplay/components/SetColorDialog.js.map +0 -1
  270. package/esm/LinearWiggleDisplay/components/Tooltip.js.map +0 -1
  271. package/esm/LinearWiggleDisplay/components/WiggleDisplayComponent.js.map +0 -1
  272. package/esm/LinearWiggleDisplay/index.js.map +0 -1
  273. package/esm/LinearWiggleDisplay/models/configSchema.js.map +0 -1
  274. package/esm/LinearWiggleDisplay/models/model.js.map +0 -1
  275. package/esm/MultiDensityRenderer/MultiDensityRenderer.js.map +0 -1
  276. package/esm/MultiDensityRenderer/configSchema.js.map +0 -1
  277. package/esm/MultiDensityRenderer/index.js.map +0 -1
  278. package/esm/MultiLineRenderer/MultiLineRenderer.js.map +0 -1
  279. package/esm/MultiLineRenderer/configSchema.js.map +0 -1
  280. package/esm/MultiLineRenderer/index.js.map +0 -1
  281. package/esm/MultiLinearWiggleDisplay/components/DraggableDialog.js.map +0 -1
  282. package/esm/MultiLinearWiggleDisplay/components/SetColorDialog.js.map +0 -1
  283. package/esm/MultiLinearWiggleDisplay/components/Tooltip.js.map +0 -1
  284. package/esm/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.js.map +0 -1
  285. package/esm/MultiLinearWiggleDisplay/components/util.js.map +0 -1
  286. package/esm/MultiLinearWiggleDisplay/index.js.map +0 -1
  287. package/esm/MultiLinearWiggleDisplay/models/configSchema.js.map +0 -1
  288. package/esm/MultiLinearWiggleDisplay/models/model.js.map +0 -1
  289. package/esm/MultiQuantitativeTrack/configSchema.js.map +0 -1
  290. package/esm/MultiQuantitativeTrack/index.js.map +0 -1
  291. package/esm/MultiRowLineRenderer/MultiRowLineRenderer.js.map +0 -1
  292. package/esm/MultiRowLineRenderer/configSchema.js.map +0 -1
  293. package/esm/MultiRowLineRenderer/index.js.map +0 -1
  294. package/esm/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.js.map +0 -1
  295. package/esm/MultiRowXYPlotRenderer/configSchema.js.map +0 -1
  296. package/esm/MultiRowXYPlotRenderer/index.js.map +0 -1
  297. package/esm/MultiWiggleAdapter/MultiWiggleAdapter.js.map +0 -1
  298. package/esm/MultiWiggleAdapter/configSchema.js.map +0 -1
  299. package/esm/MultiWiggleAdapter/index.js.map +0 -1
  300. package/esm/MultiWiggleAddTrackWidget/AddTrackWorkflow.js.map +0 -1
  301. package/esm/MultiWiggleAddTrackWidget/index.js.map +0 -1
  302. package/esm/MultiWiggleRendering.js.map +0 -1
  303. package/esm/MultiXYPlotRenderer/MultiXYPlotRenderer.js.map +0 -1
  304. package/esm/MultiXYPlotRenderer/configSchema.js.map +0 -1
  305. package/esm/MultiXYPlotRenderer/index.js.map +0 -1
  306. package/esm/QuantitativeTrack/configSchema.js.map +0 -1
  307. package/esm/QuantitativeTrack/index.js.map +0 -1
  308. package/esm/Tooltip.js.map +0 -1
  309. package/esm/WiggleBaseRenderer.js.map +0 -1
  310. package/esm/WiggleRPC/MultiWiggleGetSources.js.map +0 -1
  311. package/esm/WiggleRPC/WiggleGetGlobalQuantitativeStats.js.map +0 -1
  312. package/esm/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.js.map +0 -1
  313. package/esm/WiggleRPC/rpcMethods.js.map +0 -1
  314. package/esm/WiggleRendering.js.map +0 -1
  315. package/esm/XYPlotRenderer/XYPlotRenderer.js.map +0 -1
  316. package/esm/XYPlotRenderer/configSchema.js.map +0 -1
  317. package/esm/XYPlotRenderer/index.js.map +0 -1
  318. package/esm/configSchema.js.map +0 -1
  319. package/esm/drawxy.js.map +0 -1
  320. package/esm/index.js.map +0 -1
  321. package/esm/shared/SetMinMaxDialog.js.map +0 -1
  322. package/esm/shared/YScaleBar.js.map +0 -1
  323. package/esm/util.js.map +0 -1
  324. package/src/BigWigAdapter/BigWigAdapter.test.ts +0 -66
  325. package/src/BigWigAdapter/BigWigAdapter.ts +0 -114
  326. package/src/BigWigAdapter/__snapshots__/BigWigAdapter.test.ts.snap +0 -117
  327. package/src/BigWigAdapter/configSchema.ts +0 -34
  328. package/src/BigWigAdapter/index.ts +0 -20
  329. package/src/BigWigAdapter/test_data/volvox.bw +0 -0
  330. package/src/CreateMultiWiggleExtension/ConfirmDialog.tsx +0 -68
  331. package/src/CreateMultiWiggleExtension/index.ts +0 -66
  332. package/src/DensityRenderer/DensityRenderer.test.ts +0 -62
  333. package/src/DensityRenderer/DensityRenderer.ts +0 -14
  334. package/src/DensityRenderer/__snapshots__/DensityRenderer.test.ts.snap +0 -21
  335. package/src/DensityRenderer/configSchema.ts +0 -22
  336. package/src/DensityRenderer/index.ts +0 -17
  337. package/src/LinePlotRenderer/LinePlotRenderer.ts +0 -19
  338. package/src/LinePlotRenderer/configSchema.ts +0 -30
  339. package/src/LinePlotRenderer/index.ts +0 -16
  340. package/src/LinearWiggleDisplay/components/SetColorDialog.tsx +0 -107
  341. package/src/LinearWiggleDisplay/components/Tooltip.tsx +0 -59
  342. package/src/LinearWiggleDisplay/components/WiggleDisplayComponent.tsx +0 -53
  343. package/src/LinearWiggleDisplay/index.ts +0 -26
  344. package/src/LinearWiggleDisplay/models/configSchema.ts +0 -116
  345. package/src/LinearWiggleDisplay/models/model.tsx +0 -713
  346. package/src/MultiDensityRenderer/MultiDensityRenderer.ts +0 -39
  347. package/src/MultiDensityRenderer/configSchema.ts +0 -21
  348. package/src/MultiDensityRenderer/index.ts +0 -16
  349. package/src/MultiLineRenderer/MultiLineRenderer.ts +0 -29
  350. package/src/MultiLineRenderer/configSchema.ts +0 -39
  351. package/src/MultiLineRenderer/index.ts +0 -17
  352. package/src/MultiLinearWiggleDisplay/components/DraggableDialog.tsx +0 -71
  353. package/src/MultiLinearWiggleDisplay/components/SetColorDialog.tsx +0 -287
  354. package/src/MultiLinearWiggleDisplay/components/Tooltip.tsx +0 -77
  355. package/src/MultiLinearWiggleDisplay/components/WiggleDisplayComponent.tsx +0 -254
  356. package/src/MultiLinearWiggleDisplay/components/declare.d.ts +0 -1
  357. package/src/MultiLinearWiggleDisplay/components/util.test.ts +0 -69
  358. package/src/MultiLinearWiggleDisplay/components/util.ts +0 -33
  359. package/src/MultiLinearWiggleDisplay/index.ts +0 -21
  360. package/src/MultiLinearWiggleDisplay/models/configSchema.ts +0 -142
  361. package/src/MultiLinearWiggleDisplay/models/model.tsx +0 -708
  362. package/src/MultiQuantitativeTrack/configSchema.ts +0 -23
  363. package/src/MultiQuantitativeTrack/index.ts +0 -20
  364. package/src/MultiRowLineRenderer/MultiRowLineRenderer.ts +0 -36
  365. package/src/MultiRowLineRenderer/configSchema.ts +0 -42
  366. package/src/MultiRowLineRenderer/index.ts +0 -16
  367. package/src/MultiRowXYPlotRenderer/MultiRowXYPlotRenderer.ts +0 -43
  368. package/src/MultiRowXYPlotRenderer/configSchema.ts +0 -56
  369. package/src/MultiRowXYPlotRenderer/index.ts +0 -16
  370. package/src/MultiWiggleAdapter/MultiWiggleAdapter.ts +0 -125
  371. package/src/MultiWiggleAdapter/configSchema.ts +0 -32
  372. package/src/MultiWiggleAdapter/index.ts +0 -24
  373. package/src/MultiWiggleAdapter/test_data/volvox.bw +0 -0
  374. package/src/MultiWiggleAddTrackWidget/AddTrackWorkflow.tsx +0 -130
  375. package/src/MultiWiggleAddTrackWidget/index.ts +0 -17
  376. package/src/MultiWiggleRendering.tsx +0 -125
  377. package/src/MultiXYPlotRenderer/MultiXYPlotRenderer.ts +0 -32
  378. package/src/MultiXYPlotRenderer/configSchema.ts +0 -54
  379. package/src/MultiXYPlotRenderer/index.ts +0 -17
  380. package/src/QuantitativeTrack/configSchema.ts +0 -23
  381. package/src/QuantitativeTrack/index.ts +0 -20
  382. package/src/Tooltip.tsx +0 -123
  383. package/src/WiggleBaseRenderer.tsx +0 -91
  384. package/src/WiggleRPC/MultiWiggleGetSources.ts +0 -68
  385. package/src/WiggleRPC/WiggleGetGlobalQuantitativeStats.ts +0 -44
  386. package/src/WiggleRPC/WiggleGetMultiRegionQuantitativeStats.ts +0 -73
  387. package/src/WiggleRPC/rpcMethods.ts +0 -3
  388. package/src/WiggleRendering.test.js +0 -21
  389. package/src/WiggleRendering.tsx +0 -76
  390. package/src/XYPlotRenderer/XYPlotRenderer.test.ts +0 -52
  391. package/src/XYPlotRenderer/XYPlotRenderer.ts +0 -37
  392. package/src/XYPlotRenderer/__snapshots__/XYPlotRenderer.test.ts.snap +0 -21
  393. package/src/XYPlotRenderer/configSchema.ts +0 -55
  394. package/src/XYPlotRenderer/index.ts +0 -20
  395. package/src/__snapshots__/WiggleRendering.test.js.snap +0 -15
  396. package/src/__snapshots__/index.test.ts.snap +0 -3
  397. package/src/configSchema.ts +0 -70
  398. package/src/drawxy.ts +0 -388
  399. package/src/index.test.ts +0 -16
  400. package/src/index.ts +0 -130
  401. package/src/shared/SetMinMaxDialog.tsx +0 -88
  402. package/src/shared/YScaleBar.tsx +0 -25
  403. package/src/util.test.ts +0 -43
  404. package/src/util.ts +0 -327
package/src/drawxy.ts DELETED
@@ -1,388 +0,0 @@
1
- import {
2
- AnyConfigurationModel,
3
- readConfObject,
4
- } from '@jbrowse/core/configuration'
5
- import { clamp, featureSpanPx, Feature, Region } from '@jbrowse/core/util'
6
-
7
- // locals
8
- import { getOrigin, getScale, ScaleOpts } from './util'
9
-
10
- // avoid drawing negative width features for SVG exports
11
- function fillRectCtx(
12
- x: number,
13
- y: number,
14
- width: number,
15
- height: number,
16
- ctx: CanvasRenderingContext2D,
17
- color?: string,
18
- ) {
19
- if (width < 0) {
20
- x += width
21
- width = -width
22
- }
23
- if (height < 0) {
24
- y += height
25
- height = -height
26
- }
27
-
28
- if (color) {
29
- ctx.fillStyle = color
30
- }
31
- ctx.fillRect(x, y, width, height)
32
- }
33
-
34
- const fudgeFactor = 0.4
35
- const clipHeight = 2
36
-
37
- export function drawXY(
38
- ctx: CanvasRenderingContext2D,
39
- props: {
40
- features: Map<string, Feature> | Feature[]
41
- bpPerPx: number
42
- regions: Region[]
43
- scaleOpts: ScaleOpts
44
- height: number
45
- ticks: { values: number[] }
46
- config: AnyConfigurationModel
47
- displayCrossHatches: boolean
48
- offset?: number
49
- colorCallback: (f: Feature, score: number) => string
50
- Color: typeof import('color')
51
- },
52
- ) {
53
- const {
54
- features,
55
- bpPerPx,
56
- regions,
57
- scaleOpts,
58
- height: unadjustedHeight,
59
- config,
60
- ticks,
61
- displayCrossHatches,
62
- offset = 0,
63
- colorCallback,
64
- Color,
65
- } = props
66
- const [region] = regions
67
- const width = (region.end - region.start) / bpPerPx
68
-
69
- // the adjusted height takes into account YSCALEBAR_LABEL_OFFSET from the
70
- // wiggle display, and makes the height of the actual drawn area add
71
- // "padding" to the top and bottom of the display
72
- const height = unadjustedHeight - offset * 2
73
-
74
- const filled = readConfObject(config, 'filled')
75
- const clipColor = readConfObject(config, 'clipColor')
76
- const summaryScoreMode = readConfObject(config, 'summaryScoreMode')
77
- const pivotValue = readConfObject(config, 'bicolorPivotValue')
78
- const minSize = readConfObject(config, 'minSize')
79
-
80
- const scale = getScale({ ...scaleOpts, range: [0, height] })
81
- const originY = getOrigin(scaleOpts.scaleType)
82
- const [niceMin, niceMax] = scale.domain()
83
-
84
- const toY = (n: number) => clamp(height - (scale(n) || 0), 0, height) + offset
85
- const toOrigin = (n: number) => toY(originY) - toY(n)
86
- const getHeight = (n: number) => (filled ? toOrigin(n) : Math.max(minSize, 1))
87
- let hasClipping = false
88
-
89
- let prevLeftPx = -Infinity
90
- const reducedFeatures = []
91
- const crossingOrigin = niceMin < pivotValue && niceMax > pivotValue
92
-
93
- // we handle whiskers separately to render max row, min row, and avg in three
94
- // passes. this reduces subpixel rendering issues. note: for stylistic
95
- // reasons, clipping indicator is only drawn for score, not min/max score
96
- if (summaryScoreMode === 'whiskers') {
97
- let lastCol
98
- let lastMix
99
- for (const feature of features.values()) {
100
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
101
- if (feature.get('summary')) {
102
- const w = Math.max(rightPx - leftPx + fudgeFactor, minSize)
103
- const max = feature.get('maxScore')
104
- const c = colorCallback(feature, max)
105
- const effectiveC = crossingOrigin
106
- ? c
107
- : c === lastCol
108
- ? lastMix
109
- : (lastMix = Color(c).lighten(0.4).toString())
110
- fillRectCtx(leftPx, toY(max), w, getHeight(max), ctx, effectiveC)
111
- lastCol = c
112
- }
113
- }
114
- lastMix = undefined
115
- lastCol = undefined
116
- for (const feature of features.values()) {
117
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
118
- const score = feature.get('score')
119
- const max = feature.get('maxScore')
120
- const min = feature.get('minScore')
121
- const summary = feature.get('summary')
122
- const c = colorCallback(feature, score)
123
- const effectiveC =
124
- crossingOrigin && summary
125
- ? c === lastCol
126
- ? lastMix
127
- : (lastMix = Color(colorCallback(feature, max))
128
- .mix(Color(colorCallback(feature, min)))
129
- .toString())
130
- : c
131
- const w = Math.max(rightPx - leftPx + fudgeFactor, minSize)
132
- // create reduced features, avoiding multiple features per px
133
- if (Math.floor(leftPx) !== Math.floor(prevLeftPx)) {
134
- reducedFeatures.push(feature)
135
- prevLeftPx = leftPx
136
- }
137
- hasClipping = hasClipping || score < niceMin || score > niceMax
138
- fillRectCtx(leftPx, toY(score), w, getHeight(score), ctx, effectiveC)
139
- lastCol = c
140
- }
141
- lastMix = undefined
142
- lastCol = undefined
143
- for (const feature of features.values()) {
144
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
145
-
146
- if (feature.get('summary')) {
147
- const min = feature.get('minScore')
148
- const c = colorCallback(feature, min)
149
- const w = Math.max(rightPx - leftPx + fudgeFactor, minSize)
150
- const effectiveC = crossingOrigin
151
- ? c
152
- : c === lastCol
153
- ? lastMix
154
- : (lastMix = Color(c).darken(0.4).toString())
155
-
156
- fillRectCtx(leftPx, toY(min), w, getHeight(min), ctx, effectiveC)
157
- lastCol = c
158
- }
159
- }
160
- } else {
161
- for (const feature of features.values()) {
162
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
163
-
164
- // create reduced features, avoiding multiple features per px
165
- if (Math.floor(leftPx) !== Math.floor(prevLeftPx)) {
166
- reducedFeatures.push(feature)
167
- prevLeftPx = leftPx
168
- }
169
-
170
- const score = feature.get('score')
171
- const c = colorCallback(feature, score)
172
-
173
- hasClipping = hasClipping || score < niceMin || score > niceMax
174
- const w = Math.max(rightPx - leftPx + fudgeFactor, minSize)
175
-
176
- if (summaryScoreMode === 'max') {
177
- const s = feature.get('summary') ? feature.get('maxScore') : score
178
- fillRectCtx(leftPx, toY(s), w, getHeight(s), ctx, c)
179
- } else if (summaryScoreMode === 'min') {
180
- const s = feature.get('summary') ? feature.get('minScore') : score
181
- fillRectCtx(leftPx, toY(s), w, getHeight(s), ctx, c)
182
- } else {
183
- fillRectCtx(leftPx, toY(score), w, getHeight(score), ctx, c)
184
- }
185
- }
186
- }
187
-
188
- // second pass: draw clipping
189
- // avoid persisting the red fillstyle with save/restore
190
- ctx.save()
191
- if (hasClipping) {
192
- ctx.fillStyle = clipColor
193
- for (const feature of features.values()) {
194
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
195
- const w = rightPx - leftPx + fudgeFactor
196
- const score = feature.get('score')
197
- if (score > niceMax) {
198
- fillRectCtx(leftPx, offset, w, clipHeight, ctx)
199
- } else if (score < niceMin && scaleOpts.scaleType !== 'log') {
200
- fillRectCtx(leftPx, unadjustedHeight, w, clipHeight, ctx)
201
- }
202
- }
203
- }
204
- ctx.restore()
205
-
206
- if (displayCrossHatches) {
207
- ctx.lineWidth = 1
208
- ctx.strokeStyle = 'rgba(200,200,200,0.5)'
209
- ticks.values.forEach(tick => {
210
- ctx.beginPath()
211
- ctx.moveTo(0, Math.round(toY(tick)))
212
- ctx.lineTo(width, Math.round(toY(tick)))
213
- ctx.stroke()
214
- })
215
- }
216
-
217
- return { reducedFeatures }
218
- }
219
-
220
- export function drawLine(
221
- ctx: CanvasRenderingContext2D,
222
- props: {
223
- features: Map<string, Feature> | Feature[]
224
- regions: Region[]
225
- bpPerPx: number
226
- scaleOpts: ScaleOpts
227
- height: number
228
- ticks: { values: number[] }
229
- displayCrossHatches: boolean
230
- colorCallback: (f: Feature, score: number) => string
231
- config: AnyConfigurationModel
232
- offset?: number
233
- },
234
- ) {
235
- const {
236
- features,
237
- regions,
238
- bpPerPx,
239
- scaleOpts,
240
- height: unadjustedHeight,
241
- ticks: { values },
242
- displayCrossHatches,
243
- colorCallback,
244
- config,
245
- offset = 0,
246
- } = props
247
- const [region] = regions
248
- const width = (region.end - region.start) / bpPerPx
249
-
250
- // the adjusted height takes into account YSCALEBAR_LABEL_OFFSET from the
251
- // wiggle display, and makes the height of the actual drawn area add
252
- // "padding" to the top and bottom of the display
253
- const height = unadjustedHeight - offset * 2
254
- const clipColor = readConfObject(config, 'clipColor')
255
- const scale = getScale({ ...scaleOpts, range: [0, height] })
256
- const [niceMin, niceMax] = scale.domain()
257
- const toY = (n: number) => clamp(height - (scale(n) || 0), 0, height) + offset
258
-
259
- let lastVal
260
-
261
- let prevLeftPx = -Infinity
262
- const reducedFeatures = []
263
- for (const feature of features.values()) {
264
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
265
-
266
- // create reduced features, avoiding multiple features per px
267
- if (Math.floor(leftPx) !== Math.floor(prevLeftPx)) {
268
- reducedFeatures.push(feature)
269
- prevLeftPx = leftPx
270
- }
271
- const score = feature.get('score')
272
- const lowClipping = score < niceMin
273
- const highClipping = score > niceMax
274
- const w = rightPx - leftPx + fudgeFactor
275
-
276
- const c = colorCallback(feature, score)
277
-
278
- ctx.beginPath()
279
- ctx.strokeStyle = c
280
- const startPos = lastVal !== undefined ? lastVal : score
281
- if (!region.reversed) {
282
- ctx.moveTo(leftPx, toY(startPos))
283
- ctx.lineTo(leftPx, toY(score))
284
- ctx.lineTo(rightPx, toY(score))
285
- } else {
286
- ctx.moveTo(rightPx, toY(startPos))
287
- ctx.lineTo(rightPx, toY(score))
288
- ctx.lineTo(leftPx, toY(score))
289
- }
290
- ctx.stroke()
291
- lastVal = score
292
-
293
- if (highClipping) {
294
- ctx.fillStyle = clipColor
295
- ctx.fillRect(leftPx, offset, w, clipHeight)
296
- } else if (lowClipping && scaleOpts.scaleType !== 'log') {
297
- ctx.fillStyle = clipColor
298
- ctx.fillRect(leftPx, height - clipHeight, w, height)
299
- }
300
- }
301
-
302
- if (displayCrossHatches) {
303
- ctx.lineWidth = 1
304
- ctx.strokeStyle = 'rgba(200,200,200,0.5)'
305
- values.forEach(tick => {
306
- ctx.beginPath()
307
- ctx.moveTo(0, Math.round(toY(tick)))
308
- ctx.lineTo(width, Math.round(toY(tick)))
309
- ctx.stroke()
310
- })
311
- }
312
- return { reducedFeatures }
313
- }
314
-
315
- export function drawDensity(
316
- ctx: CanvasRenderingContext2D,
317
- props: {
318
- features: Map<string, Feature> | Feature[]
319
- regions: Region[]
320
- bpPerPx: number
321
- scaleOpts: ScaleOpts
322
- height: number
323
- ticks: { values: number[] }
324
- displayCrossHatches: boolean
325
- config: AnyConfigurationModel
326
- },
327
- ) {
328
- const { features, regions, bpPerPx, scaleOpts, height, config } = props
329
- const [region] = regions
330
- const pivot = readConfObject(config, 'bicolorPivot')
331
- const pivotValue = readConfObject(config, 'bicolorPivotValue')
332
- const negColor = readConfObject(config, 'negColor')
333
- const posColor = readConfObject(config, 'posColor')
334
- const color = readConfObject(config, 'color')
335
- const clipColor = readConfObject(config, 'clipColor')
336
- const crossing = pivot !== 'none' && scaleOpts.scaleType !== 'log'
337
- const scale = getScale({
338
- ...scaleOpts,
339
- pivotValue: crossing ? pivotValue : undefined,
340
- range: crossing ? [negColor, 'white', posColor] : ['white', posColor],
341
- })
342
-
343
- const scale2 = getScale({ ...scaleOpts, range: [0, height] })
344
- const cb =
345
- color === '#f0f'
346
- ? (_: Feature, score: number) => scale(score)
347
- : (feature: Feature, score: number) =>
348
- readConfObject(config, 'color', { feature, score })
349
- const [niceMin, niceMax] = scale2.domain()
350
-
351
- let prevLeftPx = -Infinity
352
- let hasClipping = false
353
- const reducedFeatures = []
354
- for (const feature of features.values()) {
355
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
356
-
357
- // create reduced features, avoiding multiple features per px
358
- if (Math.floor(leftPx) !== Math.floor(prevLeftPx)) {
359
- reducedFeatures.push(feature)
360
- prevLeftPx = leftPx
361
- }
362
- const score = feature.get('score')
363
- hasClipping = hasClipping || score > niceMax || score < niceMin
364
- const w = rightPx - leftPx + fudgeFactor
365
- ctx.fillStyle = cb(feature, score)
366
- ctx.fillRect(leftPx, 0, w, height)
367
- }
368
-
369
- // second pass: draw clipping
370
- // avoid persisting the red fillstyle with save/restore
371
- ctx.save()
372
- if (hasClipping) {
373
- ctx.fillStyle = clipColor
374
- for (const feature of features.values()) {
375
- const [leftPx, rightPx] = featureSpanPx(feature, region, bpPerPx)
376
- const w = rightPx - leftPx + fudgeFactor
377
- const score = feature.get('score')
378
- if (score > niceMax) {
379
- fillRectCtx(leftPx, 0, w, clipHeight, ctx)
380
- } else if (score < niceMin && scaleOpts.scaleType !== 'log') {
381
- fillRectCtx(leftPx, 0, w, clipHeight, ctx)
382
- }
383
- }
384
- }
385
- ctx.restore()
386
-
387
- return { reducedFeatures }
388
- }
package/src/index.test.ts DELETED
@@ -1,16 +0,0 @@
1
- import PluginManager from '@jbrowse/core/PluginManager'
2
- import { getSnapshot } from 'mobx-state-tree'
3
- import ThisPlugin from '.'
4
-
5
- test('plugin in a stock JBrowse', () => {
6
- const pluginManager = new PluginManager([new ThisPlugin()])
7
- pluginManager.createPluggableElements()
8
- pluginManager.configure()
9
- expect(() => pluginManager.addPlugin(new ThisPlugin())).toThrow(
10
- /JBrowse already configured, cannot add plugins/,
11
- )
12
-
13
- const BigWigAdapter = pluginManager.getAdapterType('BigWigAdapter')
14
- const config = BigWigAdapter.configSchema.create({ type: 'BigWigAdapter' })
15
- expect(getSnapshot(config)).toMatchSnapshot()
16
- })
package/src/index.ts DELETED
@@ -1,130 +0,0 @@
1
- import Plugin from '@jbrowse/core/Plugin'
2
- import PluginManager from '@jbrowse/core/PluginManager'
3
- import { FileLocation } from '@jbrowse/core/util/types'
4
- import {
5
- AdapterGuesser,
6
- TrackTypeGuesser,
7
- getFileName,
8
- } from '@jbrowse/core/util/tracks'
9
-
10
- // locals
11
- import WiggleBaseRenderer from './WiggleBaseRenderer'
12
-
13
- import BigWigAdapterF from './BigWigAdapter'
14
- import QuantitativeTrackF from './QuantitativeTrack'
15
- import MultiQuantitativeTrackF from './MultiQuantitativeTrack'
16
- import MultiWiggleAdapterF from './MultiWiggleAdapter'
17
- import DensityRendererF from './DensityRenderer'
18
- import XYPlotRendererF from './XYPlotRenderer'
19
- import LinePlotRendererF from './LinePlotRenderer'
20
- import LinearWiggleDisplayF from './LinearWiggleDisplay'
21
- import MultiLinearWiggleDisplayF from './MultiLinearWiggleDisplay'
22
- import MultiXYPlotRendererF from './MultiXYPlotRenderer'
23
- import MultiRowXYPlotRendererF from './MultiRowXYPlotRenderer'
24
- import MultiDensityRendererF from './MultiDensityRenderer'
25
- import MultiLineRendererF from './MultiLineRenderer'
26
- import MultiRowLineRendererF from './MultiRowLineRenderer'
27
- import CreateMultiWiggleExtensionF from './CreateMultiWiggleExtension'
28
- import MultiWiggleAddTrackWidgetF from './MultiWiggleAddTrackWidget'
29
-
30
- import * as utils from './util'
31
-
32
- import {
33
- WiggleGetGlobalQuantitativeStats,
34
- WiggleGetMultiRegionQuantitativeStats,
35
- MultiWiggleGetSources,
36
- } from './WiggleRPC/rpcMethods'
37
-
38
- import {
39
- ReactComponent as LinearWiggleDisplayReactComponent,
40
- modelFactory as linearWiggleDisplayModelFactory,
41
- } from './LinearWiggleDisplay'
42
-
43
- import {
44
- ReactComponent as XYPlotRendererReactComponent,
45
- configSchema as xyPlotRendererConfigSchema,
46
- XYPlotRenderer,
47
- } from './XYPlotRenderer'
48
-
49
- export default class WigglePlugin extends Plugin {
50
- name = 'WigglePlugin'
51
-
52
- install(pm: PluginManager) {
53
- MultiWiggleAdapterF(pm)
54
- BigWigAdapterF(pm)
55
- QuantitativeTrackF(pm)
56
- MultiQuantitativeTrackF(pm)
57
- LinearWiggleDisplayF(pm)
58
- MultiLinearWiggleDisplayF(pm)
59
- LinePlotRendererF(pm)
60
- XYPlotRendererF(pm)
61
- DensityRendererF(pm)
62
- MultiXYPlotRendererF(pm)
63
- MultiRowXYPlotRendererF(pm)
64
- MultiDensityRendererF(pm)
65
- MultiLineRendererF(pm)
66
- MultiRowLineRendererF(pm)
67
- MultiWiggleAddTrackWidgetF(pm)
68
- CreateMultiWiggleExtensionF(pm)
69
-
70
- pm.addToExtensionPoint(
71
- 'Core-guessAdapterForLocation',
72
- (cb: AdapterGuesser) => {
73
- return (file: FileLocation, index?: FileLocation, hint?: string) => {
74
- const regexGuess = /\.(bw|bigwig)$/i
75
- const adapterName = 'BigWigAdapter'
76
- const fileName = getFileName(file)
77
- const obj = {
78
- type: adapterName,
79
- bigWigLocation: file,
80
- }
81
-
82
- if (regexGuess.test(fileName) && !hint) {
83
- return obj
84
- } else if (hint === adapterName) {
85
- return obj
86
- }
87
-
88
- return cb(file, index, hint)
89
- }
90
- },
91
- )
92
- pm.addToExtensionPoint(
93
- 'Core-guessTrackTypeForLocation',
94
- (trackTypeGuesser: TrackTypeGuesser) => {
95
- return (adapterName: string) => {
96
- if (adapterName === 'BigWigAdapter') {
97
- return 'QuantitativeTrack'
98
- }
99
- return trackTypeGuesser(adapterName)
100
- }
101
- },
102
- )
103
-
104
- pm.addRpcMethod(() => new WiggleGetGlobalQuantitativeStats(pm))
105
- pm.addRpcMethod(() => new WiggleGetMultiRegionQuantitativeStats(pm))
106
- pm.addRpcMethod(() => new MultiWiggleGetSources(pm))
107
- }
108
-
109
- exports = {
110
- LinearWiggleDisplayReactComponent,
111
- XYPlotRendererReactComponent,
112
- XYPlotRenderer,
113
- WiggleBaseRenderer,
114
- linearWiggleDisplayModelFactory,
115
- xyPlotRendererConfigSchema,
116
- utils,
117
- }
118
- }
119
-
120
- export * from './util'
121
-
122
- export { default as WiggleRendering } from './WiggleRendering'
123
- export {
124
- Tooltip,
125
- ReactComponent as LinearWiggleDisplayReactComponent,
126
- modelFactory as linearWiggleDisplayModelFactory,
127
- } from './LinearWiggleDisplay'
128
- export { type TooltipContentsComponent } from './Tooltip'
129
-
130
- export { default as WiggleBaseRenderer } from './WiggleBaseRenderer'
@@ -1,88 +0,0 @@
1
- import React, { useState } from 'react'
2
- import {
3
- Button,
4
- DialogActions,
5
- DialogContent,
6
- TextField,
7
- Typography,
8
- } from '@mui/material'
9
- import { Dialog } from '@jbrowse/core/ui'
10
-
11
- export default function SetMinMaxDlg(props: {
12
- model: {
13
- minScore: number
14
- maxScore: number
15
- scaleType: string
16
- setMinScore: Function
17
- setMaxScore: Function
18
- }
19
- handleClose: () => void
20
- }) {
21
- const { model, handleClose } = props
22
- const { minScore, maxScore, scaleType } = model
23
-
24
- const [min, setMin] = useState(
25
- `${minScore !== Number.MIN_VALUE ? minScore : ''}`,
26
- )
27
- const [max, setMax] = useState(
28
- `${maxScore !== Number.MAX_VALUE ? maxScore : ''}`,
29
- )
30
-
31
- const ok =
32
- min !== '' && max !== '' && !Number.isNaN(+min) && !Number.isNaN(+max)
33
- ? +max > +min
34
- : true
35
-
36
- const logOk =
37
- scaleType === 'log' && min !== '' && !Number.isNaN(+min) ? +min > 0 : true
38
-
39
- return (
40
- <Dialog open onClose={handleClose} title="Set min/max score for track">
41
- <DialogContent>
42
- <Typography>Enter min/max score: </Typography>
43
- {!ok ? (
44
- <Typography color="error">
45
- Max is greater than or equal to min
46
- </Typography>
47
- ) : null}
48
-
49
- {!logOk ? (
50
- <Typography color="error">
51
- Min score should be greater than 0 for log scale
52
- </Typography>
53
- ) : null}
54
-
55
- <TextField
56
- value={min}
57
- onChange={event => setMin(event.target.value)}
58
- placeholder="Enter min score"
59
- />
60
- <TextField
61
- value={max}
62
- onChange={event => setMax(event.target.value)}
63
- placeholder="Enter max score"
64
- />
65
- </DialogContent>
66
- <DialogActions>
67
- <Button
68
- variant="contained"
69
- color="primary"
70
- type="submit"
71
- style={{ marginLeft: 20 }}
72
- disabled={!ok}
73
- onClick={() => {
74
- model.setMinScore(
75
- min !== '' && !Number.isNaN(+min) ? +min : undefined,
76
- )
77
- model.setMaxScore(
78
- max !== '' && !Number.isNaN(+max) ? +max : undefined,
79
- )
80
- handleClose()
81
- }}
82
- >
83
- Submit
84
- </Button>
85
- </DialogActions>
86
- </Dialog>
87
- )
88
- }
@@ -1,25 +0,0 @@
1
- import React from 'react'
2
- import { useTheme } from '@mui/material'
3
- import { observer } from 'mobx-react'
4
- import { axisPropsFromTickScale, Axis, LEFT, RIGHT } from 'react-d3-axis-mod'
5
-
6
- export default observer(function ({
7
- model,
8
- orientation,
9
- }: {
10
- model: { ticks?: ReturnType<typeof axisPropsFromTickScale> }
11
- orientation?: string
12
- }) {
13
- const { ticks } = model
14
- const theme = useTheme()
15
- return ticks ? (
16
- <Axis
17
- {...ticks}
18
- shadow={2}
19
- format={(n: number) => n}
20
- style={{ orient: orientation === 'left' ? LEFT : RIGHT }}
21
- bg={theme.palette.background.default}
22
- fg={theme.palette.text.primary}
23
- />
24
- ) : null
25
- })
package/src/util.test.ts DELETED
@@ -1,43 +0,0 @@
1
- import { getNiceDomain, getScale } from './util'
2
-
3
- test('linear scale', () => {
4
- const scaleType = 'linear'
5
- const domain = [0, 100]
6
- const range = [0, 100]
7
- const scale = getScale({ scaleType, domain, range })
8
- expect(scale.domain()).toEqual(domain)
9
- })
10
-
11
- test('log scale', () => {
12
- const scaleType = 'log'
13
- const domain = [1, 100]
14
- const range = [0, 100]
15
- const scale = getScale({ scaleType, domain, range })
16
- expect(scale.domain()).toEqual([1, 128])
17
- })
18
-
19
- test('test inverted', () => {
20
- const scaleType = 'log'
21
- const inverted = true
22
- const domain = [1, 100]
23
- const range = [0, 100]
24
- const scale = getScale({ scaleType, domain, range, inverted })
25
- expect(scale.domain()).toEqual([1, 128])
26
- expect(scale.range()).toEqual(range.reverse())
27
- })
28
-
29
- test('test minScore', () => {
30
- const scaleType = 'linear'
31
- const domain = [0, 100] as const
32
- const bounds = [50, undefined] as const
33
- const ret = getNiceDomain({ scaleType, domain, bounds })
34
- expect(ret).toEqual([50, 100])
35
- })
36
-
37
- test('test min and max score', () => {
38
- const scaleType = 'linear'
39
- const domain = [1, 100] as const
40
- const bounds = [undefined, 70] as const
41
- const ret = getNiceDomain({ scaleType, domain, bounds })
42
- expect(ret).toEqual([0, 70])
43
- })