@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
@@ -1,39 +0,0 @@
1
- import { Feature } from '@jbrowse/core/util'
2
- import { groupBy } from '../util'
3
- import WiggleBaseRenderer, {
4
- MultiRenderArgsDeserialized as MultiArgs,
5
- } from '../WiggleBaseRenderer'
6
- import { drawDensity } from '../drawxy'
7
-
8
- export default class MultiXYPlotRenderer extends WiggleBaseRenderer {
9
- // @ts-expect-error
10
- async draw(ctx: CanvasRenderingContext2D, props: MultiArgs) {
11
- const { bpPerPx, sources, regions, features } = props
12
- const [region] = regions
13
- const groups = groupBy([...features.values()], f => f.get('source'))
14
- const height = props.height / Object.keys(groups).length
15
- const width = (region.end - region.start) / bpPerPx
16
- let feats = [] as Feature[]
17
- ctx.save()
18
- sources.forEach(source => {
19
- const features = groups[source.name]
20
- if (!features) {
21
- return
22
- }
23
- const { reducedFeatures } = drawDensity(ctx, {
24
- ...props,
25
- features,
26
- height,
27
- })
28
- ctx.strokeStyle = 'rgba(200,200,200,0.8)'
29
- ctx.beginPath()
30
- ctx.moveTo(0, height)
31
- ctx.lineTo(width, height)
32
- ctx.stroke()
33
- ctx.translate(0, height)
34
- feats = [...feats, ...reducedFeatures]
35
- })
36
- ctx.restore()
37
- return { reducedFeatures: feats }
38
- }
39
- }
@@ -1,21 +0,0 @@
1
- import { ConfigurationSchema } from '@jbrowse/core/configuration'
2
- import baseWiggleRendererConfigSchema from '../configSchema'
3
-
4
- /**
5
- * #config MultiDensityRenderer
6
- */
7
- function x() {} // eslint-disable-line @typescript-eslint/no-unused-vars
8
-
9
- const configSchema = ConfigurationSchema(
10
- 'MultiDensityRenderer',
11
- {},
12
- {
13
- /**
14
- * #baseConfiguration
15
- */
16
- baseConfiguration: baseWiggleRendererConfigSchema,
17
- explicitlyTyped: true,
18
- },
19
- )
20
-
21
- export default configSchema
@@ -1,16 +0,0 @@
1
- import PluginManager from '@jbrowse/core/PluginManager'
2
- import configSchema from './configSchema'
3
- import ReactComponent from '../MultiWiggleRendering'
4
- import MultiDensityRenderer from './MultiDensityRenderer'
5
-
6
- export default (pluginManager: PluginManager) => {
7
- pluginManager.addRendererType(
8
- () =>
9
- new MultiDensityRenderer({
10
- name: 'MultiDensityRenderer',
11
- ReactComponent,
12
- configSchema,
13
- pluginManager,
14
- }),
15
- )
16
- }
@@ -1,29 +0,0 @@
1
- import { Feature } from '@jbrowse/core/util'
2
- import { drawLine } from '../drawxy'
3
- import { groupBy } from '../util'
4
-
5
- import WiggleBaseRenderer, {
6
- MultiRenderArgsDeserialized as MultiArgs,
7
- } from '../WiggleBaseRenderer'
8
-
9
- export default class MultiLineRenderer extends WiggleBaseRenderer {
10
- // @ts-expect-error
11
- async draw(ctx: CanvasRenderingContext2D, props: MultiArgs) {
12
- const { sources, features } = props
13
- const groups = groupBy([...features.values()], f => f.get('source'))
14
- let feats = [] as Feature[]
15
- sources.forEach(source => {
16
- const features = groups[source.name]
17
- if (!features) {
18
- return
19
- }
20
- const { reducedFeatures } = drawLine(ctx, {
21
- ...props,
22
- features,
23
- colorCallback: () => source.color || 'blue',
24
- })
25
- feats = [...feats, ...reducedFeatures]
26
- })
27
- return { reducedFeatures: feats }
28
- }
29
- }
@@ -1,39 +0,0 @@
1
- import { ConfigurationSchema } from '@jbrowse/core/configuration'
2
- import { types } from 'mobx-state-tree'
3
- import baseWiggleRendererConfigSchema from '../configSchema'
4
- /**
5
- * #config MultiLineRenderer
6
- */
7
- function x() {} // eslint-disable-line @typescript-eslint/no-unused-vars
8
-
9
- const configSchema = ConfigurationSchema(
10
- 'MultiLineRenderer',
11
- {
12
- /**
13
- * #slot
14
- */
15
- displayCrossHatches: {
16
- type: 'boolean',
17
- description: 'choose to draw cross hatches (sideways lines)',
18
- defaultValue: false,
19
- },
20
- /**
21
- * #slot
22
- */
23
- summaryScoreMode: {
24
- type: 'stringEnum',
25
- model: types.enumeration('Score type', ['max', 'min', 'avg', 'whiskers']),
26
- description:
27
- 'choose whether to use max/min/average or whiskers which combines all three into the same rendering',
28
- defaultValue: 'avg',
29
- },
30
- },
31
- {
32
- /**
33
- * #baseConfiguration
34
- */
35
- baseConfiguration: baseWiggleRendererConfigSchema,
36
- explicitlyTyped: true,
37
- },
38
- )
39
- export default configSchema
@@ -1,17 +0,0 @@
1
- import PluginManager from '@jbrowse/core/PluginManager'
2
-
3
- import ReactComponent from '../MultiWiggleRendering'
4
- import MultiLineRenderer from './MultiLineRenderer'
5
- import configSchema from './configSchema'
6
-
7
- export default (pluginManager: PluginManager) => {
8
- pluginManager.addRendererType(
9
- () =>
10
- new MultiLineRenderer({
11
- name: 'MultiLineRenderer',
12
- ReactComponent,
13
- configSchema,
14
- pluginManager,
15
- }),
16
- )
17
- }
@@ -1,71 +0,0 @@
1
- import React from 'react'
2
- import {
3
- Dialog,
4
- DialogTitle,
5
- IconButton,
6
- Divider,
7
- DialogProps,
8
- Paper,
9
- PaperProps,
10
- ScopedCssBaseline,
11
- } from '@mui/material'
12
- import { observer } from 'mobx-react'
13
- import { makeStyles } from 'tss-react/mui'
14
- import Draggable from 'react-draggable'
15
-
16
- // icons
17
- import CloseIcon from '@mui/icons-material/Close'
18
-
19
- const useStyles = makeStyles()(theme => ({
20
- closeButton: {
21
- position: 'absolute',
22
- right: theme.spacing(1),
23
- top: theme.spacing(1),
24
- color: theme.palette.grey[500],
25
- },
26
- }))
27
-
28
- // draggable dialog demo https://mui.com/material-ui/react-dialog/#draggable-dialog
29
- function PaperComponent(props: PaperProps) {
30
- return (
31
- <Draggable
32
- handle="#draggable-dialog-title"
33
- cancel={'[class*="MuiDialogContent-root"]'}
34
- >
35
- <Paper {...props} />
36
- </Draggable>
37
- )
38
- }
39
-
40
- function DraggableDialog(props: DialogProps & { title: string }) {
41
- const { classes } = useStyles()
42
- const { title, children, onClose } = props
43
-
44
- return (
45
- <Dialog
46
- {...props}
47
- PaperComponent={PaperComponent}
48
- aria-labelledby="draggable-dialog-title" // this area is important for the draggable functionality
49
- >
50
- <ScopedCssBaseline>
51
- <DialogTitle style={{ cursor: 'move' }} id="draggable-dialog-title">
52
- {title}
53
- {onClose ? (
54
- <IconButton
55
- className={classes.closeButton}
56
- onClick={() => {
57
- // @ts-expect-error
58
- onClose()
59
- }}
60
- >
61
- <CloseIcon />
62
- </IconButton>
63
- ) : null}
64
- </DialogTitle>
65
- <Divider />
66
- {children}
67
- </ScopedCssBaseline>
68
- </Dialog>
69
- )
70
- }
71
- export default observer(DraggableDialog)
@@ -1,287 +0,0 @@
1
- import React, { useState } from 'react'
2
- import { Button, DialogContent, DialogActions } from '@mui/material'
3
- import { makeStyles } from 'tss-react/mui'
4
- import {
5
- getStr,
6
- isUriLocation,
7
- measureGridWidth,
8
- useLocalStorage,
9
- } from '@jbrowse/core/util'
10
- import { DataGrid, GridCellParams } from '@mui/x-data-grid'
11
- import clone from 'clone'
12
-
13
- // locals
14
- import DraggableDialog from './DraggableDialog'
15
- import ColorPicker, { ColorPopover } from '@jbrowse/core/ui/ColorPicker'
16
- import { UriLink } from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail'
17
- import { moveUp, moveDown } from './util'
18
- import { Source } from '../../util'
19
-
20
- // icons
21
- import KeyboardDoubleArrowUpIcon from '@mui/icons-material/KeyboardDoubleArrowUp'
22
- import KeyboardDoubleArrowDownIcon from '@mui/icons-material/KeyboardDoubleArrowDown'
23
- import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown'
24
- import KeyboardArrowUpIcon from '@mui/icons-material/KeyboardArrowUp'
25
-
26
- const useStyles = makeStyles()({
27
- content: {
28
- minWidth: 800,
29
- },
30
- })
31
-
32
- export default function SetColorDialog({
33
- model,
34
- handleClose,
35
- }: {
36
- model: {
37
- sources?: Source[]
38
- setLayout: (s: Source[]) => void
39
- clearLayout: () => void
40
- }
41
- handleClose: () => void
42
- }) {
43
- const { classes } = useStyles()
44
- const { sources } = model
45
- const [currLayout, setCurrLayout] = useState(clone(sources || []))
46
- const [showTips, setShowTips] = useLocalStorage('multiwiggle-showTips', true)
47
- return (
48
- <DraggableDialog
49
- open
50
- onClose={handleClose}
51
- maxWidth="xl"
52
- title={'Multi-wiggle color/arrangement editor'}
53
- >
54
- <DialogContent className={classes.content}>
55
- <Button
56
- variant="contained"
57
- style={{ float: 'right' }}
58
- onClick={() => setShowTips(!showTips)}
59
- >
60
- {showTips ? 'Hide tips' : 'Show tips'}
61
- </Button>
62
- <br />
63
- {showTips ? (
64
- <>
65
- Helpful tips
66
- <ul>
67
- <li>You can select rows in the table with the checkboxes</li>
68
- <li>
69
- Multi-select is enabled with shift-click and control-click
70
- </li>
71
- <li>
72
- The "Move selected items up/down" can re-arrange subtracks
73
- </li>
74
- <li>
75
- Sorting the data grid itself can also re-arrange subtracks
76
- </li>
77
- <li>Changes are applied when you hit Submit</li>
78
- <li>
79
- You can click and drag the dialog box to move it on the screen
80
- </li>
81
- <li>
82
- Columns in the table can be hidden using a vertical '...' menu
83
- on the right side of each column
84
- </li>
85
- </ul>
86
- </>
87
- ) : null}
88
- <SourcesGrid
89
- rows={currLayout}
90
- onChange={setCurrLayout}
91
- showTips={showTips}
92
- />
93
- </DialogContent>
94
- <DialogActions>
95
- <Button
96
- variant="contained"
97
- type="submit"
98
- color="inherit"
99
- onClick={() => {
100
- model.clearLayout()
101
- setCurrLayout(model.sources || [])
102
- }}
103
- >
104
- Clear custom settings
105
- </Button>
106
- <Button
107
- variant="contained"
108
- color="secondary"
109
- onClick={() => {
110
- handleClose()
111
- setCurrLayout([...(model.sources || [])])
112
- }}
113
- >
114
- Cancel
115
- </Button>
116
- <Button
117
- variant="contained"
118
- color="primary"
119
- type="submit"
120
- onClick={() => {
121
- model.setLayout(currLayout)
122
- handleClose()
123
- }}
124
- >
125
- Submit
126
- </Button>
127
- </DialogActions>
128
- </DraggableDialog>
129
- )
130
- }
131
-
132
- interface SortField {
133
- idx: number
134
- field: string | null
135
- }
136
-
137
- function SourcesGrid({
138
- rows,
139
- onChange,
140
- showTips,
141
- }: {
142
- rows: Source[]
143
- onChange: (arg: Source[]) => void
144
- showTips: boolean
145
- }) {
146
- const [anchorEl, setAnchorEl] = useState<HTMLElement | null>(null)
147
- const [selected, setSelected] = useState([] as string[])
148
-
149
- // @ts-expect-error
150
- const { name: _name, color: _color, baseUri: _baseUri, ...rest } = rows[0]
151
- const [widgetColor, setWidgetColor] = useState('blue')
152
- const [currSort, setCurrSort] = useState<SortField>({
153
- idx: 0,
154
- field: null,
155
- })
156
-
157
- return (
158
- <div>
159
- <Button
160
- disabled={!selected.length}
161
- onClick={event => setAnchorEl(event.currentTarget)}
162
- >
163
- Change color of selected items
164
- </Button>
165
- <Button
166
- onClick={() => onChange(moveUp([...rows], selected))}
167
- disabled={!selected.length}
168
- >
169
- <KeyboardArrowUpIcon />
170
- {showTips ? 'Move selected items up' : null}
171
- </Button>
172
- <Button
173
- onClick={() => onChange(moveDown([...rows], selected))}
174
- disabled={!selected.length}
175
- >
176
- <KeyboardArrowDownIcon />
177
- {showTips ? 'Move selected items down' : null}
178
- </Button>
179
- <Button
180
- onClick={() => onChange(moveUp([...rows], selected, rows.length))}
181
- disabled={!selected.length}
182
- >
183
- <KeyboardDoubleArrowUpIcon />
184
- {showTips ? 'Move selected items to top' : null}
185
- </Button>
186
- <Button
187
- onClick={() => onChange(moveDown([...rows], selected, rows.length))}
188
- disabled={!selected.length}
189
- >
190
- <KeyboardDoubleArrowDownIcon />
191
- {showTips ? 'Move selected items to bottom' : null}
192
- </Button>
193
- <ColorPopover
194
- anchorEl={anchorEl}
195
- color={widgetColor}
196
- onChange={c => {
197
- setWidgetColor(c)
198
- selected.forEach(id => {
199
- const elt = rows.find(f => f.name === id)
200
- if (elt) {
201
- elt.color = c
202
- }
203
- })
204
-
205
- onChange([...rows])
206
- }}
207
- onClose={() => setAnchorEl(null)}
208
- />
209
- <div style={{ height: 400, width: '100%' }}>
210
- <DataGrid
211
- getRowId={row => row.name}
212
- checkboxSelection
213
- disableRowSelectionOnClick
214
- onRowSelectionModelChange={arg => setSelected(arg as string[])}
215
- rows={rows}
216
- rowHeight={25}
217
- columnHeaderHeight={33}
218
- columns={[
219
- {
220
- field: 'color',
221
- headerName: 'Color',
222
- renderCell: params => {
223
- const { value, id } = params
224
- return (
225
- <ColorPicker
226
- color={value || 'blue'}
227
- onChange={c => {
228
- const elt = rows.find(f => f.name === id)
229
- if (elt) {
230
- elt.color = c
231
- }
232
- onChange([...rows])
233
- }}
234
- />
235
- )
236
- },
237
- },
238
- {
239
- field: 'name',
240
- sortingOrder: [null],
241
- headerName: 'Name',
242
- width: measureGridWidth(rows.map(r => r.name)),
243
- },
244
- ...Object.keys(rest).map(val => ({
245
- field: val,
246
- sortingOrder: [null],
247
- renderCell: (params: GridCellParams) => {
248
- const { value } = params
249
- return isUriLocation(value) ? (
250
- <UriLink value={value} />
251
- ) : (
252
- getStr(value)
253
- )
254
- },
255
- // @ts-ignore
256
- width: measureGridWidth(rows.map(r => r[val])),
257
- })),
258
- ]}
259
- sortModel={
260
- [
261
- /* we control the sort as a controlled component using onSortModelChange */
262
- ]
263
- }
264
- onSortModelChange={args => {
265
- const sort = args[0]
266
- const idx = (currSort.idx + 1) % 2
267
- const field = sort?.field || currSort.field
268
- setCurrSort({ idx, field })
269
- onChange(
270
- field
271
- ? [...rows].sort((a, b) => {
272
- // @ts-expect-error
273
- const aa = getStr(a[field])
274
- // @ts-expect-error
275
- const bb = getStr(b[field])
276
- return idx === 1
277
- ? aa.localeCompare(bb)
278
- : bb.localeCompare(aa)
279
- })
280
- : rows,
281
- )
282
- }}
283
- />
284
- </div>
285
- </div>
286
- )
287
- }
@@ -1,77 +0,0 @@
1
- import React from 'react'
2
- import { observer } from 'mobx-react'
3
- import { Feature } from '@jbrowse/core/util'
4
-
5
- // locals
6
- import { Source, toP } from '../../util'
7
- import Tooltip, { TooltipContentsComponent } from '../../Tooltip'
8
-
9
- const en = (n: number) => n.toLocaleString('en-US')
10
-
11
- const TooltipContents = React.forwardRef<
12
- HTMLDivElement,
13
- { model: { sources: Source[] }; feature: Feature }
14
- >(({ model, feature }, ref) => {
15
- const start = feature.get('start')
16
- const end = feature.get('end')
17
- const refName = feature.get('refName')
18
- const coord = start === end ? en(start) : `${en(start)}..${en(end)}`
19
- const sources = feature.get('sources') as Record<string, { score: number }>
20
- const source = feature.get('source')
21
- const summary = feature.get('summary')
22
- const obj = Object.fromEntries(model.sources.map(ent => [ent.name, ent]))
23
-
24
- return (
25
- <div ref={ref}>
26
- {[refName, coord].filter(f => !!f).join(':')}
27
- <br />
28
- {sources ? (
29
- <table>
30
- <thead>
31
- <tr>
32
- <th>color</th>
33
- <th>source</th>
34
- <th>score</th>
35
- </tr>
36
- </thead>
37
- <tbody>
38
- {Object.entries(sources).map(([source, data]) => (
39
- <tr key={source}>
40
- <td style={{ background: obj[source]?.color }}> </td>
41
- <td>{source}</td>
42
- <td>{toP(data.score)}</td>
43
- </tr>
44
- ))}
45
- </tbody>
46
- </table>
47
- ) : (
48
- <span>
49
- {source}{' '}
50
- {summary
51
- ? `min:${toP(feature.get('minScore'))} avg:${toP(
52
- feature.get('score'),
53
- )} max:${toP(feature.get('maxScore'))}`
54
- : toP(feature.get('score'))}
55
- </span>
56
- )}
57
- </div>
58
- )
59
- })
60
-
61
- type Coord = [number, number]
62
-
63
- const WiggleTooltip = observer(
64
- (props: {
65
- model: { featureUnderMouse: Feature; sources: Source[]; rowHeight: number }
66
- height: number
67
- offsetMouseCoord: Coord
68
- clientMouseCoord: Coord
69
- clientRect?: DOMRect
70
- TooltipContents?: TooltipContentsComponent
71
- }) => {
72
- return <Tooltip useClientY TooltipContents={TooltipContents} {...props} />
73
- },
74
- )
75
- export default WiggleTooltip
76
-
77
- export { default as Tooltip } from '../../Tooltip'