@jbrowse/plugin-linear-genome-view 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 (459) hide show
  1. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +1 -1
  2. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js +0 -1
  3. package/dist/BaseLinearDisplay/components/Block.d.ts +3 -3
  4. package/dist/BaseLinearDisplay/components/Block.js +0 -1
  5. package/dist/BaseLinearDisplay/components/BlockMsg.d.ts +1 -1
  6. package/dist/BaseLinearDisplay/components/BlockMsg.js +0 -1
  7. package/dist/BaseLinearDisplay/components/LinearBlocks.d.ts +3 -2
  8. package/dist/BaseLinearDisplay/components/LinearBlocks.js +0 -1
  9. package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +0 -1
  10. package/dist/BaseLinearDisplay/components/TooLargeMessage.d.ts +2 -1
  11. package/dist/BaseLinearDisplay/components/TooLargeMessage.js +0 -1
  12. package/dist/BaseLinearDisplay/components/Tooltip.d.ts +2 -1
  13. package/dist/BaseLinearDisplay/components/Tooltip.js +0 -1
  14. package/dist/BaseLinearDisplay/index.d.ts +5 -2
  15. package/dist/BaseLinearDisplay/index.js +7 -2
  16. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +62 -142
  17. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js +34 -356
  18. package/dist/BaseLinearDisplay/models/FeatureDensityMixin.d.ts +99 -0
  19. package/dist/BaseLinearDisplay/models/FeatureDensityMixin.js +189 -0
  20. package/dist/BaseLinearDisplay/models/TrackHeightMixin.d.ts +30 -0
  21. package/dist/BaseLinearDisplay/models/TrackHeightMixin.js +55 -0
  22. package/dist/BaseLinearDisplay/models/autorunFeatureDensityStats.d.ts +2 -0
  23. package/dist/BaseLinearDisplay/models/autorunFeatureDensityStats.js +41 -0
  24. package/dist/BaseLinearDisplay/models/configSchema.js +1 -1
  25. package/dist/BaseLinearDisplay/models/renderSvg.d.ts +8 -0
  26. package/dist/BaseLinearDisplay/models/renderSvg.js +82 -0
  27. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js +20 -17
  28. package/dist/BaseLinearDisplay/models/util.js +0 -1
  29. package/dist/BasicTrack/configSchema.js +1 -1
  30. package/dist/BasicTrack/index.js +0 -1
  31. package/dist/FeatureTrack/configSchema.d.ts +1 -3
  32. package/dist/FeatureTrack/configSchema.js +1 -1
  33. package/dist/FeatureTrack/index.js +0 -1
  34. package/dist/LaunchLinearGenomeView/index.js +0 -1
  35. package/dist/LinearBareDisplay/configSchema.d.ts +1 -0
  36. package/dist/LinearBareDisplay/configSchema.js +1 -1
  37. package/dist/LinearBareDisplay/index.js +0 -1
  38. package/dist/LinearBareDisplay/model.d.ts +52 -39
  39. package/dist/LinearBareDisplay/model.js +1 -1
  40. package/dist/LinearBasicDisplay/components/SetMaxHeight.d.ts +2 -1
  41. package/dist/LinearBasicDisplay/components/SetMaxHeight.js +0 -1
  42. package/dist/LinearBasicDisplay/configSchema.d.ts +1 -0
  43. package/dist/LinearBasicDisplay/configSchema.js +1 -1
  44. package/dist/LinearBasicDisplay/index.js +0 -1
  45. package/dist/LinearBasicDisplay/model.d.ts +67 -66
  46. package/dist/LinearBasicDisplay/model.js +1 -1
  47. package/dist/LinearGenomeView/components/CenterLine.d.ts +2 -1
  48. package/dist/LinearGenomeView/components/CenterLine.js +0 -1
  49. package/dist/LinearGenomeView/components/Cytobands.d.ts +2 -1
  50. package/dist/LinearGenomeView/components/Cytobands.js +0 -1
  51. package/dist/LinearGenomeView/components/ExportSvgDialog.d.ts +2 -1
  52. package/dist/LinearGenomeView/components/ExportSvgDialog.js +0 -1
  53. package/dist/LinearGenomeView/components/GetSequenceDialog.d.ts +2 -1
  54. package/dist/LinearGenomeView/components/GetSequenceDialog.js +0 -1
  55. package/dist/LinearGenomeView/components/Gridlines.d.ts +2 -1
  56. package/dist/LinearGenomeView/components/Gridlines.js +0 -1
  57. package/dist/LinearGenomeView/components/Header.d.ts +2 -1
  58. package/dist/LinearGenomeView/components/Header.js +0 -1
  59. package/dist/LinearGenomeView/components/ImportForm.d.ts +2 -1
  60. package/dist/LinearGenomeView/components/ImportForm.js +0 -1
  61. package/dist/LinearGenomeView/components/LinearGenomeView.d.ts +2 -1
  62. package/dist/LinearGenomeView/components/LinearGenomeView.js +28 -5
  63. package/dist/LinearGenomeView/components/MiniControls.d.ts +3 -2
  64. package/dist/LinearGenomeView/components/MiniControls.js +20 -41
  65. package/dist/LinearGenomeView/components/OverviewRubberband.d.ts +1 -1
  66. package/dist/LinearGenomeView/components/OverviewRubberband.js +0 -1
  67. package/dist/LinearGenomeView/components/OverviewScalebar.d.ts +2 -2
  68. package/dist/LinearGenomeView/components/OverviewScalebar.js +10 -5
  69. package/dist/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.d.ts +10 -0
  70. package/dist/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.js +21 -0
  71. package/dist/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.d.ts +5 -0
  72. package/dist/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.js +51 -0
  73. package/dist/LinearGenomeView/components/{HelpDialog.d.ts → RefNameAutocomplete/HelpDialog.d.ts} +2 -1
  74. package/dist/LinearGenomeView/components/{HelpDialog.js → RefNameAutocomplete/HelpDialog.js} +0 -1
  75. package/dist/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +18 -0
  76. package/dist/LinearGenomeView/components/RefNameAutocomplete/index.js +110 -0
  77. package/dist/LinearGenomeView/components/RefNameAutocomplete/util.d.ts +12 -0
  78. package/dist/LinearGenomeView/components/RefNameAutocomplete/util.js +58 -0
  79. package/dist/LinearGenomeView/components/Rubberband.d.ts +1 -1
  80. package/dist/LinearGenomeView/components/Rubberband.js +0 -1
  81. package/dist/LinearGenomeView/components/RubberbandSpan.d.ts +2 -1
  82. package/dist/LinearGenomeView/components/RubberbandSpan.js +0 -1
  83. package/dist/LinearGenomeView/components/Scalebar.js +0 -1
  84. package/dist/LinearGenomeView/components/SearchBox.d.ts +2 -1
  85. package/dist/LinearGenomeView/components/SearchBox.js +0 -1
  86. package/dist/LinearGenomeView/components/SearchResultsDialog.d.ts +2 -1
  87. package/dist/LinearGenomeView/components/SearchResultsDialog.js +0 -1
  88. package/dist/LinearGenomeView/components/SearchResultsTable.d.ts +2 -1
  89. package/dist/LinearGenomeView/components/SearchResultsTable.js +0 -1
  90. package/dist/LinearGenomeView/components/SequenceSearchDialog.d.ts +2 -1
  91. package/dist/LinearGenomeView/components/SequenceSearchDialog.js +0 -1
  92. package/dist/LinearGenomeView/components/TrackContainer.d.ts +3 -3
  93. package/dist/LinearGenomeView/components/TrackContainer.js +12 -69
  94. package/dist/LinearGenomeView/components/TrackLabel.js +7 -12
  95. package/dist/LinearGenomeView/components/TrackLabelContainer.d.ts +9 -0
  96. package/dist/LinearGenomeView/components/TrackLabelContainer.js +31 -0
  97. package/dist/LinearGenomeView/components/TrackRenderingContainer.d.ts +10 -0
  98. package/dist/LinearGenomeView/components/TrackRenderingContainer.js +73 -0
  99. package/dist/LinearGenomeView/components/TracksContainer.d.ts +1 -1
  100. package/dist/LinearGenomeView/components/TracksContainer.js +2 -3
  101. package/dist/LinearGenomeView/components/VerticalGuide.d.ts +2 -1
  102. package/dist/LinearGenomeView/components/VerticalGuide.js +0 -1
  103. package/dist/LinearGenomeView/components/ZoomControls.d.ts +2 -1
  104. package/dist/LinearGenomeView/components/ZoomControls.js +0 -1
  105. package/dist/LinearGenomeView/components/hooks.js +0 -1
  106. package/dist/LinearGenomeView/components/util.js +0 -1
  107. package/dist/LinearGenomeView/index.js +0 -1
  108. package/dist/LinearGenomeView/model.d.ts +13 -12
  109. package/dist/LinearGenomeView/model.js +25 -26
  110. package/dist/LinearGenomeView/svgcomponents/SVGBackground.d.ts +2 -1
  111. package/dist/LinearGenomeView/svgcomponents/SVGBackground.js +0 -1
  112. package/dist/LinearGenomeView/svgcomponents/SVGHeader.d.ts +3 -4
  113. package/dist/LinearGenomeView/svgcomponents/SVGHeader.js +7 -3
  114. package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +1 -2
  115. package/dist/LinearGenomeView/svgcomponents/SVGRegionSeparators.d.ts +2 -1
  116. package/dist/LinearGenomeView/svgcomponents/SVGRegionSeparators.js +0 -1
  117. package/dist/LinearGenomeView/svgcomponents/SVGRuler.d.ts +2 -1
  118. package/dist/LinearGenomeView/svgcomponents/SVGRuler.js +0 -1
  119. package/dist/LinearGenomeView/svgcomponents/SVGScalebar.d.ts +2 -1
  120. package/dist/LinearGenomeView/svgcomponents/SVGScalebar.js +0 -1
  121. package/dist/LinearGenomeView/svgcomponents/SVGTrackLabel.d.ts +2 -1
  122. package/dist/LinearGenomeView/svgcomponents/SVGTrackLabel.js +0 -1
  123. package/dist/LinearGenomeView/svgcomponents/SVGTracks.d.ts +2 -1
  124. package/dist/LinearGenomeView/svgcomponents/SVGTracks.js +0 -1
  125. package/dist/LinearGenomeView/util.d.ts +2 -2
  126. package/dist/LinearGenomeView/util.js +0 -1
  127. package/dist/index.d.ts +160 -134
  128. package/dist/index.js +6 -4
  129. package/esm/BaseLinearDisplay/components/BaseLinearDisplay.d.ts +1 -1
  130. package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js +0 -1
  131. package/esm/BaseLinearDisplay/components/Block.d.ts +3 -3
  132. package/esm/BaseLinearDisplay/components/Block.js +0 -1
  133. package/esm/BaseLinearDisplay/components/BlockMsg.d.ts +1 -1
  134. package/esm/BaseLinearDisplay/components/BlockMsg.js +0 -1
  135. package/esm/BaseLinearDisplay/components/LinearBlocks.d.ts +3 -2
  136. package/esm/BaseLinearDisplay/components/LinearBlocks.js +0 -1
  137. package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js +0 -1
  138. package/esm/BaseLinearDisplay/components/TooLargeMessage.d.ts +2 -1
  139. package/esm/BaseLinearDisplay/components/TooLargeMessage.js +0 -1
  140. package/esm/BaseLinearDisplay/components/Tooltip.d.ts +2 -1
  141. package/esm/BaseLinearDisplay/components/Tooltip.js +0 -1
  142. package/esm/BaseLinearDisplay/index.d.ts +5 -2
  143. package/esm/BaseLinearDisplay/index.js +3 -1
  144. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.d.ts +62 -142
  145. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js +36 -335
  146. package/esm/BaseLinearDisplay/models/FeatureDensityMixin.d.ts +99 -0
  147. package/esm/BaseLinearDisplay/models/FeatureDensityMixin.js +183 -0
  148. package/esm/BaseLinearDisplay/models/TrackHeightMixin.d.ts +30 -0
  149. package/esm/BaseLinearDisplay/models/TrackHeightMixin.js +52 -0
  150. package/esm/BaseLinearDisplay/models/autorunFeatureDensityStats.d.ts +2 -0
  151. package/esm/BaseLinearDisplay/models/autorunFeatureDensityStats.js +38 -0
  152. package/esm/BaseLinearDisplay/models/configSchema.js +1 -1
  153. package/esm/BaseLinearDisplay/models/renderSvg.d.ts +8 -0
  154. package/esm/BaseLinearDisplay/models/renderSvg.js +53 -0
  155. package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js +20 -17
  156. package/esm/BaseLinearDisplay/models/util.js +0 -1
  157. package/esm/BasicTrack/configSchema.js +1 -1
  158. package/esm/BasicTrack/index.js +0 -1
  159. package/esm/FeatureTrack/configSchema.d.ts +1 -3
  160. package/esm/FeatureTrack/configSchema.js +1 -1
  161. package/esm/FeatureTrack/index.js +0 -1
  162. package/esm/LaunchLinearGenomeView/index.js +0 -1
  163. package/esm/LinearBareDisplay/configSchema.d.ts +1 -0
  164. package/esm/LinearBareDisplay/configSchema.js +1 -1
  165. package/esm/LinearBareDisplay/index.js +0 -1
  166. package/esm/LinearBareDisplay/model.d.ts +52 -39
  167. package/esm/LinearBareDisplay/model.js +1 -1
  168. package/esm/LinearBasicDisplay/components/SetMaxHeight.d.ts +2 -1
  169. package/esm/LinearBasicDisplay/components/SetMaxHeight.js +0 -1
  170. package/esm/LinearBasicDisplay/configSchema.d.ts +1 -0
  171. package/esm/LinearBasicDisplay/configSchema.js +1 -1
  172. package/esm/LinearBasicDisplay/index.js +0 -1
  173. package/esm/LinearBasicDisplay/model.d.ts +67 -66
  174. package/esm/LinearBasicDisplay/model.js +1 -1
  175. package/esm/LinearGenomeView/components/CenterLine.d.ts +2 -1
  176. package/esm/LinearGenomeView/components/CenterLine.js +0 -1
  177. package/esm/LinearGenomeView/components/Cytobands.d.ts +2 -1
  178. package/esm/LinearGenomeView/components/Cytobands.js +0 -1
  179. package/esm/LinearGenomeView/components/ExportSvgDialog.d.ts +2 -1
  180. package/esm/LinearGenomeView/components/ExportSvgDialog.js +0 -1
  181. package/esm/LinearGenomeView/components/GetSequenceDialog.d.ts +2 -1
  182. package/esm/LinearGenomeView/components/GetSequenceDialog.js +0 -1
  183. package/esm/LinearGenomeView/components/Gridlines.d.ts +2 -1
  184. package/esm/LinearGenomeView/components/Gridlines.js +0 -1
  185. package/esm/LinearGenomeView/components/Header.d.ts +2 -1
  186. package/esm/LinearGenomeView/components/Header.js +0 -1
  187. package/esm/LinearGenomeView/components/ImportForm.d.ts +2 -1
  188. package/esm/LinearGenomeView/components/ImportForm.js +0 -1
  189. package/esm/LinearGenomeView/components/LinearGenomeView.d.ts +2 -1
  190. package/esm/LinearGenomeView/components/LinearGenomeView.js +4 -4
  191. package/esm/LinearGenomeView/components/MiniControls.d.ts +3 -2
  192. package/esm/LinearGenomeView/components/MiniControls.js +20 -18
  193. package/esm/LinearGenomeView/components/OverviewRubberband.d.ts +1 -1
  194. package/esm/LinearGenomeView/components/OverviewRubberband.js +0 -1
  195. package/esm/LinearGenomeView/components/OverviewScalebar.d.ts +2 -2
  196. package/esm/LinearGenomeView/components/OverviewScalebar.js +10 -5
  197. package/esm/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.d.ts +10 -0
  198. package/esm/LinearGenomeView/components/RefNameAutocomplete/AutocompleteTextField.js +15 -0
  199. package/esm/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.d.ts +5 -0
  200. package/esm/LinearGenomeView/components/RefNameAutocomplete/EndAdornment.js +22 -0
  201. package/esm/LinearGenomeView/components/{HelpDialog.d.ts → RefNameAutocomplete/HelpDialog.d.ts} +2 -1
  202. package/esm/LinearGenomeView/components/{HelpDialog.js → RefNameAutocomplete/HelpDialog.js} +0 -1
  203. package/esm/LinearGenomeView/components/RefNameAutocomplete/index.d.ts +18 -0
  204. package/esm/LinearGenomeView/components/RefNameAutocomplete/index.js +82 -0
  205. package/esm/LinearGenomeView/components/RefNameAutocomplete/util.d.ts +12 -0
  206. package/esm/LinearGenomeView/components/RefNameAutocomplete/util.js +49 -0
  207. package/esm/LinearGenomeView/components/Rubberband.d.ts +1 -1
  208. package/esm/LinearGenomeView/components/Rubberband.js +0 -1
  209. package/esm/LinearGenomeView/components/RubberbandSpan.d.ts +2 -1
  210. package/esm/LinearGenomeView/components/RubberbandSpan.js +0 -1
  211. package/esm/LinearGenomeView/components/Scalebar.js +0 -1
  212. package/esm/LinearGenomeView/components/SearchBox.d.ts +2 -1
  213. package/esm/LinearGenomeView/components/SearchBox.js +0 -1
  214. package/esm/LinearGenomeView/components/SearchResultsDialog.d.ts +2 -1
  215. package/esm/LinearGenomeView/components/SearchResultsDialog.js +0 -1
  216. package/esm/LinearGenomeView/components/SearchResultsTable.d.ts +2 -1
  217. package/esm/LinearGenomeView/components/SearchResultsTable.js +0 -1
  218. package/esm/LinearGenomeView/components/SequenceSearchDialog.d.ts +2 -1
  219. package/esm/LinearGenomeView/components/SequenceSearchDialog.js +0 -1
  220. package/esm/LinearGenomeView/components/TrackContainer.d.ts +3 -3
  221. package/esm/LinearGenomeView/components/TrackContainer.js +13 -70
  222. package/esm/LinearGenomeView/components/TrackLabel.js +7 -12
  223. package/esm/LinearGenomeView/components/TrackLabelContainer.d.ts +9 -0
  224. package/esm/LinearGenomeView/components/TrackLabelContainer.js +26 -0
  225. package/esm/LinearGenomeView/components/TrackRenderingContainer.d.ts +10 -0
  226. package/esm/LinearGenomeView/components/TrackRenderingContainer.js +48 -0
  227. package/esm/LinearGenomeView/components/TracksContainer.d.ts +1 -1
  228. package/esm/LinearGenomeView/components/TracksContainer.js +2 -3
  229. package/esm/LinearGenomeView/components/VerticalGuide.d.ts +2 -1
  230. package/esm/LinearGenomeView/components/VerticalGuide.js +0 -1
  231. package/esm/LinearGenomeView/components/ZoomControls.d.ts +2 -1
  232. package/esm/LinearGenomeView/components/ZoomControls.js +0 -1
  233. package/esm/LinearGenomeView/components/hooks.js +0 -1
  234. package/esm/LinearGenomeView/components/util.js +0 -1
  235. package/esm/LinearGenomeView/index.js +0 -1
  236. package/esm/LinearGenomeView/model.d.ts +13 -12
  237. package/esm/LinearGenomeView/model.js +21 -22
  238. package/esm/LinearGenomeView/svgcomponents/SVGBackground.d.ts +2 -1
  239. package/esm/LinearGenomeView/svgcomponents/SVGBackground.js +0 -1
  240. package/esm/LinearGenomeView/svgcomponents/SVGHeader.d.ts +3 -4
  241. package/esm/LinearGenomeView/svgcomponents/SVGHeader.js +7 -3
  242. package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js +1 -2
  243. package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.d.ts +2 -1
  244. package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.js +0 -1
  245. package/esm/LinearGenomeView/svgcomponents/SVGRuler.d.ts +2 -1
  246. package/esm/LinearGenomeView/svgcomponents/SVGRuler.js +0 -1
  247. package/esm/LinearGenomeView/svgcomponents/SVGScalebar.d.ts +2 -1
  248. package/esm/LinearGenomeView/svgcomponents/SVGScalebar.js +0 -1
  249. package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.d.ts +2 -1
  250. package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.js +0 -1
  251. package/esm/LinearGenomeView/svgcomponents/SVGTracks.d.ts +2 -1
  252. package/esm/LinearGenomeView/svgcomponents/SVGTracks.js +0 -1
  253. package/esm/LinearGenomeView/util.d.ts +2 -2
  254. package/esm/LinearGenomeView/util.js +0 -1
  255. package/esm/index.d.ts +160 -134
  256. package/esm/index.js +1 -2
  257. package/package.json +3 -4
  258. package/dist/BaseLinearDisplay/components/BaseLinearDisplay.js.map +0 -1
  259. package/dist/BaseLinearDisplay/components/Block.js.map +0 -1
  260. package/dist/BaseLinearDisplay/components/BlockMsg.js.map +0 -1
  261. package/dist/BaseLinearDisplay/components/LinearBlocks.js.map +0 -1
  262. package/dist/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js.map +0 -1
  263. package/dist/BaseLinearDisplay/components/TooLargeMessage.js.map +0 -1
  264. package/dist/BaseLinearDisplay/components/Tooltip.js.map +0 -1
  265. package/dist/BaseLinearDisplay/index.js.map +0 -1
  266. package/dist/BaseLinearDisplay/models/BaseLinearDisplayModel.js.map +0 -1
  267. package/dist/BaseLinearDisplay/models/configSchema.js.map +0 -1
  268. package/dist/BaseLinearDisplay/models/serverSideRenderedBlock.js.map +0 -1
  269. package/dist/BaseLinearDisplay/models/util.js.map +0 -1
  270. package/dist/BasicTrack/configSchema.js.map +0 -1
  271. package/dist/BasicTrack/index.js.map +0 -1
  272. package/dist/FeatureTrack/configSchema.js.map +0 -1
  273. package/dist/FeatureTrack/index.js.map +0 -1
  274. package/dist/LaunchLinearGenomeView/index.js.map +0 -1
  275. package/dist/LinearBareDisplay/configSchema.js.map +0 -1
  276. package/dist/LinearBareDisplay/index.js.map +0 -1
  277. package/dist/LinearBareDisplay/model.js.map +0 -1
  278. package/dist/LinearBasicDisplay/components/SetMaxHeight.js.map +0 -1
  279. package/dist/LinearBasicDisplay/configSchema.js.map +0 -1
  280. package/dist/LinearBasicDisplay/index.js.map +0 -1
  281. package/dist/LinearBasicDisplay/model.js.map +0 -1
  282. package/dist/LinearGenomeView/components/CenterLine.js.map +0 -1
  283. package/dist/LinearGenomeView/components/Cytobands.js.map +0 -1
  284. package/dist/LinearGenomeView/components/ExportSvgDialog.js.map +0 -1
  285. package/dist/LinearGenomeView/components/GetSequenceDialog.js.map +0 -1
  286. package/dist/LinearGenomeView/components/Gridlines.js.map +0 -1
  287. package/dist/LinearGenomeView/components/Header.js.map +0 -1
  288. package/dist/LinearGenomeView/components/HelpDialog.js.map +0 -1
  289. package/dist/LinearGenomeView/components/ImportForm.js.map +0 -1
  290. package/dist/LinearGenomeView/components/LinearGenomeView.js.map +0 -1
  291. package/dist/LinearGenomeView/components/MiniControls.js.map +0 -1
  292. package/dist/LinearGenomeView/components/OverviewRubberband.js.map +0 -1
  293. package/dist/LinearGenomeView/components/OverviewScalebar.js.map +0 -1
  294. package/dist/LinearGenomeView/components/RefNameAutocomplete.d.ts +0 -23
  295. package/dist/LinearGenomeView/components/RefNameAutocomplete.js +0 -189
  296. package/dist/LinearGenomeView/components/RefNameAutocomplete.js.map +0 -1
  297. package/dist/LinearGenomeView/components/Rubberband.js.map +0 -1
  298. package/dist/LinearGenomeView/components/RubberbandSpan.js.map +0 -1
  299. package/dist/LinearGenomeView/components/Scalebar.js.map +0 -1
  300. package/dist/LinearGenomeView/components/SearchBox.js.map +0 -1
  301. package/dist/LinearGenomeView/components/SearchResultsDialog.js.map +0 -1
  302. package/dist/LinearGenomeView/components/SearchResultsTable.js.map +0 -1
  303. package/dist/LinearGenomeView/components/SequenceSearchDialog.js.map +0 -1
  304. package/dist/LinearGenomeView/components/TrackContainer.js.map +0 -1
  305. package/dist/LinearGenomeView/components/TrackLabel.js.map +0 -1
  306. package/dist/LinearGenomeView/components/TracksContainer.js.map +0 -1
  307. package/dist/LinearGenomeView/components/VerticalGuide.js.map +0 -1
  308. package/dist/LinearGenomeView/components/ZoomControls.js.map +0 -1
  309. package/dist/LinearGenomeView/components/hooks.js.map +0 -1
  310. package/dist/LinearGenomeView/components/util.js.map +0 -1
  311. package/dist/LinearGenomeView/index.js.map +0 -1
  312. package/dist/LinearGenomeView/model.js.map +0 -1
  313. package/dist/LinearGenomeView/svgcomponents/SVGBackground.js.map +0 -1
  314. package/dist/LinearGenomeView/svgcomponents/SVGHeader.js.map +0 -1
  315. package/dist/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js.map +0 -1
  316. package/dist/LinearGenomeView/svgcomponents/SVGRegionSeparators.js.map +0 -1
  317. package/dist/LinearGenomeView/svgcomponents/SVGRuler.js.map +0 -1
  318. package/dist/LinearGenomeView/svgcomponents/SVGScalebar.js.map +0 -1
  319. package/dist/LinearGenomeView/svgcomponents/SVGTrackLabel.js.map +0 -1
  320. package/dist/LinearGenomeView/svgcomponents/SVGTracks.js.map +0 -1
  321. package/dist/LinearGenomeView/util.js.map +0 -1
  322. package/dist/index.js.map +0 -1
  323. package/esm/BaseLinearDisplay/components/BaseLinearDisplay.js.map +0 -1
  324. package/esm/BaseLinearDisplay/components/Block.js.map +0 -1
  325. package/esm/BaseLinearDisplay/components/BlockMsg.js.map +0 -1
  326. package/esm/BaseLinearDisplay/components/LinearBlocks.js.map +0 -1
  327. package/esm/BaseLinearDisplay/components/ServerSideRenderedBlockContent.js.map +0 -1
  328. package/esm/BaseLinearDisplay/components/TooLargeMessage.js.map +0 -1
  329. package/esm/BaseLinearDisplay/components/Tooltip.js.map +0 -1
  330. package/esm/BaseLinearDisplay/index.js.map +0 -1
  331. package/esm/BaseLinearDisplay/models/BaseLinearDisplayModel.js.map +0 -1
  332. package/esm/BaseLinearDisplay/models/configSchema.js.map +0 -1
  333. package/esm/BaseLinearDisplay/models/serverSideRenderedBlock.js.map +0 -1
  334. package/esm/BaseLinearDisplay/models/util.js.map +0 -1
  335. package/esm/BasicTrack/configSchema.js.map +0 -1
  336. package/esm/BasicTrack/index.js.map +0 -1
  337. package/esm/FeatureTrack/configSchema.js.map +0 -1
  338. package/esm/FeatureTrack/index.js.map +0 -1
  339. package/esm/LaunchLinearGenomeView/index.js.map +0 -1
  340. package/esm/LinearBareDisplay/configSchema.js.map +0 -1
  341. package/esm/LinearBareDisplay/index.js.map +0 -1
  342. package/esm/LinearBareDisplay/model.js.map +0 -1
  343. package/esm/LinearBasicDisplay/components/SetMaxHeight.js.map +0 -1
  344. package/esm/LinearBasicDisplay/configSchema.js.map +0 -1
  345. package/esm/LinearBasicDisplay/index.js.map +0 -1
  346. package/esm/LinearBasicDisplay/model.js.map +0 -1
  347. package/esm/LinearGenomeView/components/CenterLine.js.map +0 -1
  348. package/esm/LinearGenomeView/components/Cytobands.js.map +0 -1
  349. package/esm/LinearGenomeView/components/ExportSvgDialog.js.map +0 -1
  350. package/esm/LinearGenomeView/components/GetSequenceDialog.js.map +0 -1
  351. package/esm/LinearGenomeView/components/Gridlines.js.map +0 -1
  352. package/esm/LinearGenomeView/components/Header.js.map +0 -1
  353. package/esm/LinearGenomeView/components/HelpDialog.js.map +0 -1
  354. package/esm/LinearGenomeView/components/ImportForm.js.map +0 -1
  355. package/esm/LinearGenomeView/components/LinearGenomeView.js.map +0 -1
  356. package/esm/LinearGenomeView/components/MiniControls.js.map +0 -1
  357. package/esm/LinearGenomeView/components/OverviewRubberband.js.map +0 -1
  358. package/esm/LinearGenomeView/components/OverviewScalebar.js.map +0 -1
  359. package/esm/LinearGenomeView/components/RefNameAutocomplete.d.ts +0 -23
  360. package/esm/LinearGenomeView/components/RefNameAutocomplete.js +0 -161
  361. package/esm/LinearGenomeView/components/RefNameAutocomplete.js.map +0 -1
  362. package/esm/LinearGenomeView/components/Rubberband.js.map +0 -1
  363. package/esm/LinearGenomeView/components/RubberbandSpan.js.map +0 -1
  364. package/esm/LinearGenomeView/components/Scalebar.js.map +0 -1
  365. package/esm/LinearGenomeView/components/SearchBox.js.map +0 -1
  366. package/esm/LinearGenomeView/components/SearchResultsDialog.js.map +0 -1
  367. package/esm/LinearGenomeView/components/SearchResultsTable.js.map +0 -1
  368. package/esm/LinearGenomeView/components/SequenceSearchDialog.js.map +0 -1
  369. package/esm/LinearGenomeView/components/TrackContainer.js.map +0 -1
  370. package/esm/LinearGenomeView/components/TrackLabel.js.map +0 -1
  371. package/esm/LinearGenomeView/components/TracksContainer.js.map +0 -1
  372. package/esm/LinearGenomeView/components/VerticalGuide.js.map +0 -1
  373. package/esm/LinearGenomeView/components/ZoomControls.js.map +0 -1
  374. package/esm/LinearGenomeView/components/hooks.js.map +0 -1
  375. package/esm/LinearGenomeView/components/util.js.map +0 -1
  376. package/esm/LinearGenomeView/index.js.map +0 -1
  377. package/esm/LinearGenomeView/model.js.map +0 -1
  378. package/esm/LinearGenomeView/svgcomponents/SVGBackground.js.map +0 -1
  379. package/esm/LinearGenomeView/svgcomponents/SVGHeader.js.map +0 -1
  380. package/esm/LinearGenomeView/svgcomponents/SVGLinearGenomeView.js.map +0 -1
  381. package/esm/LinearGenomeView/svgcomponents/SVGRegionSeparators.js.map +0 -1
  382. package/esm/LinearGenomeView/svgcomponents/SVGRuler.js.map +0 -1
  383. package/esm/LinearGenomeView/svgcomponents/SVGScalebar.js.map +0 -1
  384. package/esm/LinearGenomeView/svgcomponents/SVGTrackLabel.js.map +0 -1
  385. package/esm/LinearGenomeView/svgcomponents/SVGTracks.js.map +0 -1
  386. package/esm/LinearGenomeView/util.js.map +0 -1
  387. package/esm/index.js.map +0 -1
  388. package/src/BaseLinearDisplay/components/BaseLinearDisplay.tsx +0 -117
  389. package/src/BaseLinearDisplay/components/Block.tsx +0 -77
  390. package/src/BaseLinearDisplay/components/BlockMsg.tsx +0 -42
  391. package/src/BaseLinearDisplay/components/LinearBlocks.tsx +0 -119
  392. package/src/BaseLinearDisplay/components/ServerSideRenderedBlockContent.tsx +0 -69
  393. package/src/BaseLinearDisplay/components/TooLargeMessage.tsx +0 -36
  394. package/src/BaseLinearDisplay/components/Tooltip.tsx +0 -107
  395. package/src/BaseLinearDisplay/index.ts +0 -12
  396. package/src/BaseLinearDisplay/models/BaseLinearDisplayModel.tsx +0 -768
  397. package/src/BaseLinearDisplay/models/configSchema.ts +0 -59
  398. package/src/BaseLinearDisplay/models/serverSideRenderedBlock.ts +0 -318
  399. package/src/BaseLinearDisplay/models/util.ts +0 -67
  400. package/src/BasicTrack/configSchema.ts +0 -23
  401. package/src/BasicTrack/index.ts +0 -18
  402. package/src/FeatureTrack/configSchema.ts +0 -27
  403. package/src/FeatureTrack/index.ts +0 -18
  404. package/src/LaunchLinearGenomeView/index.ts +0 -66
  405. package/src/LinearBareDisplay/configSchema.ts +0 -27
  406. package/src/LinearBareDisplay/index.test.js +0 -34
  407. package/src/LinearBareDisplay/index.ts +0 -25
  408. package/src/LinearBareDisplay/model.ts +0 -53
  409. package/src/LinearBasicDisplay/components/SetMaxHeight.tsx +0 -73
  410. package/src/LinearBasicDisplay/configSchema.ts +0 -27
  411. package/src/LinearBasicDisplay/index.ts +0 -25
  412. package/src/LinearBasicDisplay/model.ts +0 -214
  413. package/src/LinearGenomeView/README.md +0 -9
  414. package/src/LinearGenomeView/components/CenterLine.tsx +0 -65
  415. package/src/LinearGenomeView/components/Cytobands.tsx +0 -154
  416. package/src/LinearGenomeView/components/ExportSvgDialog.tsx +0 -149
  417. package/src/LinearGenomeView/components/GetSequenceDialog.tsx +0 -269
  418. package/src/LinearGenomeView/components/Gridlines.tsx +0 -119
  419. package/src/LinearGenomeView/components/Header.tsx +0 -126
  420. package/src/LinearGenomeView/components/HelpDialog.tsx +0 -69
  421. package/src/LinearGenomeView/components/ImportForm.tsx +0 -217
  422. package/src/LinearGenomeView/components/LinearGenomeView.test.tsx +0 -167
  423. package/src/LinearGenomeView/components/LinearGenomeView.tsx +0 -72
  424. package/src/LinearGenomeView/components/MiniControls.tsx +0 -55
  425. package/src/LinearGenomeView/components/OverviewRubberband.tsx +0 -219
  426. package/src/LinearGenomeView/components/OverviewScalebar.tsx +0 -345
  427. package/src/LinearGenomeView/components/RefNameAutocomplete.tsx +0 -321
  428. package/src/LinearGenomeView/components/Rubberband.tsx +0 -89
  429. package/src/LinearGenomeView/components/RubberbandSpan.tsx +0 -99
  430. package/src/LinearGenomeView/components/Scalebar.test.tsx +0 -145
  431. package/src/LinearGenomeView/components/Scalebar.tsx +0 -199
  432. package/src/LinearGenomeView/components/SearchBox.tsx +0 -123
  433. package/src/LinearGenomeView/components/SearchResultsDialog.tsx +0 -57
  434. package/src/LinearGenomeView/components/SearchResultsTable.tsx +0 -121
  435. package/src/LinearGenomeView/components/SequenceSearchDialog.tsx +0 -136
  436. package/src/LinearGenomeView/components/TrackContainer.tsx +0 -180
  437. package/src/LinearGenomeView/components/TrackLabel.tsx +0 -143
  438. package/src/LinearGenomeView/components/TracksContainer.tsx +0 -114
  439. package/src/LinearGenomeView/components/VerticalGuide.tsx +0 -37
  440. package/src/LinearGenomeView/components/ZoomControls.tsx +0 -62
  441. package/src/LinearGenomeView/components/__snapshots__/LinearGenomeView.test.tsx.snap +0 -1520
  442. package/src/LinearGenomeView/components/hooks.ts +0 -306
  443. package/src/LinearGenomeView/components/util.ts +0 -76
  444. package/src/LinearGenomeView/hg38DisplayedRegions.json +0 -3187
  445. package/src/LinearGenomeView/index.test.ts +0 -993
  446. package/src/LinearGenomeView/index.ts +0 -17
  447. package/src/LinearGenomeView/model.ts +0 -1532
  448. package/src/LinearGenomeView/svgcomponents/SVGBackground.tsx +0 -21
  449. package/src/LinearGenomeView/svgcomponents/SVGHeader.tsx +0 -93
  450. package/src/LinearGenomeView/svgcomponents/SVGLinearGenomeView.tsx +0 -114
  451. package/src/LinearGenomeView/svgcomponents/SVGRegionSeparators.tsx +0 -31
  452. package/src/LinearGenomeView/svgcomponents/SVGRuler.tsx +0 -125
  453. package/src/LinearGenomeView/svgcomponents/SVGScalebar.tsx +0 -57
  454. package/src/LinearGenomeView/svgcomponents/SVGTrackLabel.tsx +0 -47
  455. package/src/LinearGenomeView/svgcomponents/SVGTracks.tsx +0 -67
  456. package/src/LinearGenomeView/util.test.ts +0 -33
  457. package/src/LinearGenomeView/util.ts +0 -182
  458. package/src/LinearGenomeView/volvoxDisplayedRegions.json +0 -16
  459. package/src/index.ts +0 -85
@@ -1,69 +0,0 @@
1
- import React from 'react'
2
- import { Button, DialogActions, DialogContent, Divider } from '@mui/material'
3
- import { Dialog } from '@jbrowse/core/ui'
4
-
5
- export default function HelpDialog({
6
- handleClose,
7
- }: {
8
- handleClose: () => void
9
- }) {
10
- return (
11
- <Dialog
12
- open
13
- maxWidth="xl"
14
- onClose={handleClose}
15
- title="Using the search box"
16
- >
17
- <DialogContent>
18
- <h3>Searching</h3>
19
- <ul>
20
- <li>
21
- Jump to a feature or reference sequence by typing its name in the
22
- location box and pressing Enter.
23
- </li>
24
- <li>
25
- Jump to a specific region by typing the region into the location box
26
- as: <code>ref:start..end</code> or <code>ref:start-end</code>.
27
- Commas are allowed in the start and end coordinates. A
28
- space-separated list of locstrings can be used to open up multiple
29
- chromosomes at a time
30
- </li>
31
- </ul>
32
- <h3>Example Searches</h3>
33
- <ul>
34
- <li>
35
- <code>BRCA</code> - searches for the feature named BRCA
36
- </li>
37
- <li>
38
- <code>chr4</code> - jumps to chromosome 4
39
- </li>
40
- <li>
41
- <code>chr4:79,500,000..80,000,000</code> - jumps the region on
42
- chromosome 4 between 79.5Mb and 80Mb.
43
- </li>
44
- <li>
45
- <code>chr1:1-100 chr2:1-100</code> - create a split view of
46
- chr1:1-100 and chr2:1-100
47
- </li>
48
- <li>
49
- <code>chr1 chr2 chr3</code> - open up multiple chromosomes at once
50
- </li>
51
- <li>
52
- <code>chr1:1-100[rev] chr2:1-100</code> - open up the first region
53
- in the horizontally flipped orientation
54
- </li>
55
- <li>
56
- <code>chr1 100 200</code> - use whitespace separated refname, start,
57
- end
58
- </li>
59
- </ul>
60
- </DialogContent>
61
- <Divider />
62
- <DialogActions>
63
- <Button onClick={() => handleClose()} color="primary">
64
- Close
65
- </Button>
66
- </DialogActions>
67
- </Dialog>
68
- )
69
- }
@@ -1,217 +0,0 @@
1
- import React, { useState, useEffect } from 'react'
2
- import { makeStyles } from 'tss-react/mui'
3
- import { observer } from 'mobx-react'
4
- import { getSession } from '@jbrowse/core/util'
5
- import {
6
- Button,
7
- FormControl,
8
- Container,
9
- Grid,
10
- CircularProgress,
11
- } from '@mui/material'
12
- import { ErrorMessage, AssemblySelector } from '@jbrowse/core/ui'
13
- import BaseResult from '@jbrowse/core/TextSearch/BaseResults'
14
-
15
- // icons
16
- import CloseIcon from '@mui/icons-material/Close'
17
-
18
- // locals
19
- import RefNameAutocomplete from './RefNameAutocomplete'
20
- import { fetchResults, splitLast } from './util'
21
- import { LinearGenomeViewModel } from '..'
22
-
23
- const useStyles = makeStyles()(theme => ({
24
- importFormContainer: {
25
- padding: theme.spacing(2),
26
- },
27
- button: {
28
- margin: theme.spacing(2),
29
- },
30
- container: {
31
- padding: theme.spacing(4),
32
- },
33
- }))
34
-
35
- type LGV = LinearGenomeViewModel
36
-
37
- export default observer(function ({ model }: { model: LGV }) {
38
- const { classes } = useStyles()
39
- const session = getSession(model)
40
- const { assemblyNames, assemblyManager, textSearchManager } = session
41
- const { rankSearchResults, error } = model
42
- const [selectedAsm, setSelectedAsm] = useState(assemblyNames[0])
43
- const [option, setOption] = useState<BaseResult>()
44
- const searchScope = model.searchScope(selectedAsm)
45
- const assembly = assemblyManager.get(selectedAsm)
46
- const assemblyError = assemblyNames.length
47
- ? assembly?.error
48
- : 'No configured assemblies'
49
- const displayError = assemblyError || error
50
- const [value, setValue] = useState('')
51
- const regions = assembly?.regions
52
- const assemblyLoaded = !!regions
53
- const r0 = regions ? regions[0]?.refName : ''
54
-
55
- // useEffect resets to an "initial state" of displaying first region from
56
- // assembly after assembly change. needs to react to selectedAsm as well as
57
- // r0 because changing assembly will run setValue('') and then r0 may not
58
- // change if assembly names are the same across assemblies, but it still
59
- // needs to be reset
60
- useEffect(() => {
61
- setValue(r0)
62
- }, [r0, selectedAsm])
63
-
64
- async function navToOption(option: BaseResult) {
65
- const location = option.getLocation()
66
- const trackId = option.getTrackId()
67
- if (location) {
68
- await model.navToLocString(location, selectedAsm)
69
- if (trackId) {
70
- model.showTrack(trackId)
71
- }
72
- }
73
- }
74
-
75
- // gets a string as input, or use stored option results from previous query,
76
- // then re-query and
77
- // 1) if it has multiple results: pop a dialog
78
- // 2) if it's a single result navigate to it
79
- // 3) else assume it's a locstring and navigate to it
80
- async function handleSelectedRegion(input: string) {
81
- try {
82
- if (option?.getDisplayString() === input && option.hasLocation()) {
83
- await navToOption(option)
84
- } else if (option?.results?.length) {
85
- model.setSearchResults(option.results, option.getLabel(), selectedAsm)
86
- } else {
87
- const [ref, rest] = splitLast(input, ':')
88
- const allRefs = assembly?.allRefNamesWithLowerCase || []
89
- if (
90
- allRefs.includes(input) ||
91
- (allRefs.includes(ref) && !Number.isNaN(Number.parseInt(rest, 10)))
92
- ) {
93
- await model.navToLocString(input, selectedAsm)
94
- } else {
95
- const results = await fetchResults({
96
- queryString: input,
97
- searchType: 'exact',
98
- searchScope,
99
- rankSearchResults,
100
- textSearchManager,
101
- assembly,
102
- })
103
-
104
- if (results.length > 1) {
105
- model.setSearchResults(results, input.toLowerCase(), selectedAsm)
106
- } else if (results.length === 1) {
107
- await navToOption(results[0])
108
- } else {
109
- await model.navToLocString(input, selectedAsm)
110
- }
111
- }
112
- }
113
- } catch (e) {
114
- console.error(e)
115
- session.notify(`${e}`, 'warning')
116
- }
117
- }
118
-
119
- // implementation notes:
120
- // having this wrapped in a form allows intuitive use of enter key to submit
121
- return (
122
- <div className={classes.container}>
123
- {displayError ? <ErrorMessage error={displayError} /> : null}
124
- <Container className={classes.importFormContainer}>
125
- <form
126
- onSubmit={async event => {
127
- event.preventDefault()
128
- model.setError(undefined)
129
- if (value) {
130
- // has it's own error handling
131
- await handleSelectedRegion(value)
132
- }
133
- }}
134
- >
135
- <Grid
136
- container
137
- spacing={1}
138
- justifyContent="center"
139
- alignItems="center"
140
- >
141
- <Grid item>
142
- <FormControl>
143
- <AssemblySelector
144
- onChange={val => setSelectedAsm(val)}
145
- localStorageKey="lgv"
146
- session={session}
147
- selected={selectedAsm}
148
- />
149
- </FormControl>
150
- </Grid>
151
- <Grid item>
152
- {selectedAsm ? (
153
- assemblyError ? (
154
- <CloseIcon style={{ color: 'red' }} />
155
- ) : assemblyLoaded ? (
156
- <FormControl>
157
- <RefNameAutocomplete
158
- fetchResults={queryString =>
159
- fetchResults({
160
- queryString,
161
- assembly,
162
- textSearchManager,
163
- rankSearchResults,
164
- searchScope,
165
- })
166
- }
167
- model={model}
168
- assemblyName={selectedAsm}
169
- value={value}
170
- minWidth={270}
171
- onChange={str => setValue(str)}
172
- onSelect={val => setOption(val)}
173
- TextFieldProps={{
174
- variant: 'outlined',
175
- helperText:
176
- 'Enter sequence name, feature name, or location',
177
- }}
178
- />
179
- </FormControl>
180
- ) : (
181
- <CircularProgress size={20} disableShrink />
182
- )
183
- ) : null}
184
- </Grid>
185
- <Grid item>
186
- <FormControl>
187
- <Button
188
- type="submit"
189
- disabled={!value}
190
- className={classes.button}
191
- variant="contained"
192
- color="primary"
193
- >
194
- Open
195
- </Button>
196
- </FormControl>
197
- <FormControl>
198
- <Button
199
- disabled={!value}
200
- className={classes.button}
201
- onClick={() => {
202
- model.setError(undefined)
203
- model.showAllRegionsInAssembly(selectedAsm)
204
- }}
205
- variant="contained"
206
- color="secondary"
207
- >
208
- Show all regions in assembly
209
- </Button>
210
- </FormControl>
211
- </Grid>
212
- </Grid>
213
- </form>
214
- </Container>
215
- </div>
216
- )
217
- })
@@ -1,167 +0,0 @@
1
- import React from 'react'
2
- import { fireEvent, render, waitFor } from '@testing-library/react'
3
- import { createTestSession } from '@jbrowse/web/src/rootModel'
4
- import 'requestidlecallback-polyfill'
5
-
6
- // locals
7
- import LinearGenomeView from './LinearGenomeView'
8
-
9
- // mock
10
- jest.mock('@jbrowse/web/src/makeWorkerInstance', () => () => {})
11
-
12
- const assemblyConf = {
13
- name: 'volMyt1',
14
- sequence: {
15
- trackId: 'sequenceConfigId',
16
- type: 'ReferenceSequenceTrack',
17
- adapter: {
18
- type: 'FromConfigSequenceAdapter',
19
- features: [
20
- {
21
- refName: 'ctgA',
22
- uniqueId: 'firstId',
23
- start: 0,
24
- end: 10,
25
- seq: 'cattgttgcg',
26
- },
27
- ],
28
- },
29
- },
30
- }
31
-
32
- test('renders setup wizard', async () => {
33
- const session = createTestSession()
34
- session.addAssemblyConf(assemblyConf)
35
- session.addView('LinearGenomeView', { id: 'lgv' })
36
- const model = session.views[0]
37
- model.setWidth(800)
38
- const { findByText } = render(<LinearGenomeView model={model} />)
39
- expect(model.displayedRegions.length).toEqual(0)
40
- const elt = await findByText('Open')
41
- await waitFor(() => expect(elt.getAttribute('disabled')).toBe(null))
42
- fireEvent.click(elt)
43
- await waitFor(() => expect(model.displayedRegions.length).toEqual(1), {
44
- timeout: 15000,
45
- })
46
- }, 15000)
47
-
48
- test('renders one track, one region', async () => {
49
- const session = createTestSession()
50
- session.addAssemblyConf(assemblyConf)
51
- session.addTrackConf({
52
- trackId: 'testConfig',
53
- assemblyNames: ['volMyt1'],
54
- name: 'Foo Track',
55
- type: 'BasicTrack',
56
- adapter: { type: 'FromConfigAdapter', features: [] },
57
- })
58
- session.addView('LinearGenomeView', {
59
- type: 'LinearGenomeView',
60
- id: 'lgv',
61
- offsetPx: 0,
62
- bpPerPx: 1,
63
- tracks: [
64
- {
65
- id: 'foo',
66
- type: 'BasicTrack',
67
- height: 20,
68
- configuration: 'testConfig',
69
- displays: [
70
- {
71
- type: 'LinearBareDisplay',
72
- configuration: 'testConfig-LinearBareDisplay',
73
- },
74
- ],
75
- },
76
- ],
77
- displayedRegions: [
78
- { assemblyName: 'volMyt1', refName: 'ctgA', start: 0, end: 100 },
79
- ],
80
- })
81
- const model = session.views[0]
82
- model.setWidth(800)
83
- const { container, queryAllByTestId, getByPlaceholderText, findByText } =
84
- render(<LinearGenomeView model={model} />)
85
- await findByText('Foo Track')
86
- // test needs to wait until it's updated to display 100 bp in the header to
87
- // make snapshot pass
88
- await findByText('100bp')
89
-
90
- await waitFor(() => {
91
- expect(
92
- (getByPlaceholderText('Search for location') as HTMLInputElement).value,
93
- ).toEqual('ctgA:1..100')
94
- })
95
- await waitFor(() => expect(queryAllByTestId('svgfeatures').length).toBe(1))
96
- // snapshot has no features rendered
97
- expect(container).toMatchSnapshot()
98
- })
99
-
100
- test('renders two tracks, two regions', async () => {
101
- const session = createTestSession()
102
- session.addAssemblyConf(assemblyConf)
103
- session.addTrackConf({
104
- trackId: 'testConfig',
105
- name: 'Foo Track',
106
- assemblyNames: ['volMyt1'],
107
- type: 'BasicTrack',
108
- adapter: { type: 'FromConfigAdapter', features: [] },
109
- })
110
-
111
- session.addTrackConf({
112
- trackId: 'testConfig2',
113
- name: 'Bar Track',
114
- assemblyNames: ['volMyt1'],
115
- type: 'BasicTrack',
116
- adapter: { type: 'FromConfigAdapter', features: [] },
117
- })
118
- session.addView('LinearGenomeView', {
119
- id: 'lgv',
120
- offsetPx: 0,
121
- bpPerPx: 1,
122
- displayedRegions: [
123
- { assemblyName: 'volMyt1', refName: 'ctgA', start: 0, end: 100 },
124
- {
125
- assemblyName: 'volMyt1',
126
- refName: 'ctgB',
127
- start: 1000,
128
- end: 2000,
129
- },
130
- ],
131
- tracks: [
132
- {
133
- id: 'foo',
134
- type: 'BasicTrack',
135
- height: 20,
136
- configuration: 'testConfig',
137
- displays: [
138
- {
139
- type: 'LinearBareDisplay',
140
- configuration: 'testConfig-LinearBareDisplay',
141
- },
142
- ],
143
- },
144
- {
145
- id: 'bar',
146
- type: 'BasicTrack',
147
- height: 20,
148
- configuration: 'testConfig2',
149
- displays: [
150
- {
151
- type: 'LinearBareDisplay',
152
- configuration: 'testConfig2-LinearBareDisplay',
153
- },
154
- ],
155
- },
156
- ],
157
- })
158
- const model = session.views[0]
159
- model.setWidth(800)
160
- const { container, findByText, queryAllByTestId } = render(
161
- <LinearGenomeView model={model} />,
162
- )
163
- await findByText('Foo Track')
164
- await findByText('798bp')
165
- await waitFor(() => expect(queryAllByTestId('svgfeatures').length).toBe(4))
166
- expect(container).toMatchSnapshot()
167
- }, 15000)
@@ -1,72 +0,0 @@
1
- import React from 'react'
2
- import { Button, Paper, Typography } from '@mui/material'
3
- import { makeStyles } from 'tss-react/mui'
4
- import { TrackSelector as TrackSelectorIcon } from '@jbrowse/core/ui/Icons'
5
- import { LoadingEllipses } from '@jbrowse/core/ui'
6
- import { observer } from 'mobx-react'
7
-
8
- // locals
9
- import { LinearGenomeViewModel } from '..'
10
- import TrackContainer from './TrackContainer'
11
- import TracksContainer from './TracksContainer'
12
- import ImportForm from './ImportForm'
13
-
14
- type LGV = LinearGenomeViewModel
15
-
16
- const useStyles = makeStyles()(theme => ({
17
- note: {
18
- textAlign: 'center',
19
- paddingTop: theme.spacing(1),
20
- paddingBottom: theme.spacing(1),
21
- },
22
- }))
23
-
24
- const LinearGenomeView = observer(({ model }: { model: LGV }) => {
25
- const { tracks, error, initialized, hasDisplayedRegions } = model
26
- const { classes } = useStyles()
27
-
28
- if (!initialized && !error) {
29
- return <LoadingEllipses variant="h6" />
30
- }
31
- if (!hasDisplayedRegions || error) {
32
- return <ImportForm model={model} />
33
- }
34
-
35
- const MiniControlsComponent = model.MiniControlsComponent()
36
- const HeaderComponent = model.HeaderComponent()
37
-
38
- return (
39
- <div style={{ position: 'relative' }}>
40
- <HeaderComponent model={model} />
41
- <MiniControlsComponent model={model} />
42
- <TracksContainer model={model}>
43
- {!tracks.length ? (
44
- <Paper variant="outlined" className={classes.note}>
45
- {!model.hideNoTracksActive ? (
46
- <>
47
- <Typography>No tracks active.</Typography>
48
- <Button
49
- variant="contained"
50
- color="primary"
51
- onClick={model.activateTrackSelector}
52
- style={{ zIndex: 1000 }}
53
- startIcon={<TrackSelectorIcon />}
54
- >
55
- Open track selector
56
- </Button>
57
- </>
58
- ) : (
59
- <div style={{ height: '48px' }}></div>
60
- )}
61
- </Paper>
62
- ) : (
63
- tracks.map(track => (
64
- <TrackContainer key={track.id} model={model} track={track} />
65
- ))
66
- )}
67
- </TracksContainer>
68
- </div>
69
- )
70
- })
71
-
72
- export default LinearGenomeView
@@ -1,55 +0,0 @@
1
- import React, { useState } from 'react'
2
- import { observer } from 'mobx-react'
3
- import { IconButton, Paper } from '@mui/material'
4
- import Menu from '@jbrowse/core/ui/Menu'
5
-
6
- // icons
7
- import ZoomIn from '@mui/icons-material/ZoomIn'
8
- import ZoomOut from '@mui/icons-material/ZoomOut'
9
- import ArrowDown from '@mui/icons-material/KeyboardArrowDown'
10
-
11
- // locals
12
- import { LinearGenomeViewModel } from '..'
13
-
14
- const MiniControls = observer((props: { model: LinearGenomeViewModel }) => {
15
- const { model } = props
16
- const { bpPerPx, maxBpPerPx, minBpPerPx, scaleFactor, hideHeader } = model
17
- const [anchorEl, setAnchorEl] = useState<HTMLElement>()
18
-
19
- return hideHeader ? (
20
- <div style={{ position: 'absolute', right: '0px', zIndex: '1001' }}>
21
- <Paper style={{ background: '#aaa7' }}>
22
- <IconButton onClick={event => setAnchorEl(event.currentTarget)}>
23
- <ArrowDown fontSize="small" />
24
- </IconButton>
25
-
26
- <IconButton
27
- data-testid="zoom_out"
28
- onClick={() => model.zoom(bpPerPx * 2)}
29
- disabled={bpPerPx >= maxBpPerPx - 0.0001 || scaleFactor !== 1}
30
- >
31
- <ZoomOut fontSize="small" />
32
- </IconButton>
33
- <IconButton
34
- data-testid="zoom_in"
35
- onClick={() => model.zoom(model.bpPerPx / 2)}
36
- disabled={bpPerPx <= minBpPerPx + 0.0001 || scaleFactor !== 1}
37
- >
38
- <ZoomIn fontSize="small" />
39
- </IconButton>
40
- <Menu
41
- anchorEl={anchorEl}
42
- open={Boolean(anchorEl)}
43
- onMenuItemClick={(_, callback) => {
44
- callback()
45
- setAnchorEl(undefined)
46
- }}
47
- onClose={() => setAnchorEl(undefined)}
48
- menuItems={model.menuItems()}
49
- />
50
- </Paper>
51
- </div>
52
- ) : null
53
- })
54
-
55
- export default MiniControls