@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,34 +1,9 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
4
  };
28
5
  Object.defineProperty(exports, "__esModule", { value: true });
29
6
  exports.BaseLinearDisplay = void 0;
30
- /* eslint-disable @typescript-eslint/no-explicit-any */
31
- const react_1 = __importDefault(require("react"));
32
7
  const models_1 = require("@jbrowse/core/pluggableElementTypes/models");
33
8
  const configuration_1 = require("@jbrowse/core/configuration");
34
9
  const util_1 = require("@jbrowse/core/util");
@@ -39,54 +14,34 @@ const mobx_state_tree_1 = require("mobx-state-tree");
39
14
  // icons
40
15
  const MenuOpen_1 = __importDefault(require("@mui/icons-material/MenuOpen"));
41
16
  const BaseLinearDisplay_1 = require("../components/BaseLinearDisplay");
42
- const TooLargeMessage_1 = __importDefault(require("../components/TooLargeMessage"));
43
- const serverSideRenderedBlock_1 = __importStar(require("./serverSideRenderedBlock"));
44
- const util_2 = require("./util");
17
+ const serverSideRenderedBlock_1 = __importDefault(require("./serverSideRenderedBlock"));
45
18
  const configSchema_1 = __importDefault(require("./configSchema"));
46
- const minDisplayHeight = 20;
19
+ const renderSvg_1 = __importDefault(require("./renderSvg"));
20
+ const TrackHeightMixin_1 = __importDefault(require("./TrackHeightMixin"));
21
+ const FeatureDensityMixin_1 = __importDefault(require("./FeatureDensityMixin"));
47
22
  /**
48
23
  * #stateModel BaseLinearDisplay
24
+ * #category display
49
25
  * extends `BaseDisplay`
50
26
  */
51
27
  function stateModelFactory() {
52
28
  return mobx_state_tree_1.types
53
- .compose('BaseLinearDisplay', models_1.BaseDisplay, mobx_state_tree_1.types.model({
54
- /**
55
- * #property
56
- */
57
- heightPreConfig: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.refinement('displayHeight', mobx_state_tree_1.types.number, n => n >= minDisplayHeight)),
29
+ .compose('BaseLinearDisplay', models_1.BaseDisplay, (0, TrackHeightMixin_1.default)(), (0, FeatureDensityMixin_1.default)(), mobx_state_tree_1.types.model({
58
30
  /**
59
31
  * #property
60
32
  * updated via autorun
61
33
  */
62
34
  blockState: mobx_state_tree_1.types.map(serverSideRenderedBlock_1.default),
63
- /**
64
- * #property
65
- */
66
- userBpPerPxLimit: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.number),
67
- /**
68
- * #property
69
- */
70
- userByteSizeLimit: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.number),
71
35
  /**
72
36
  * #property
73
37
  */
74
38
  configuration: (0, configuration_1.ConfigurationReference)(configSchema_1.default),
75
39
  }))
76
40
  .volatile(() => ({
77
- currBpPerPx: 0,
78
- scrollTop: 0,
79
- message: '',
80
41
  featureIdUnderMouse: undefined,
81
42
  contextMenuFeature: undefined,
82
- featureDensityStatsP: undefined,
83
- featureDensityStats: undefined,
84
43
  }))
85
44
  .views(self => ({
86
- get height() {
87
- var _a;
88
- return (_a = self.heightPreConfig) !== null && _a !== void 0 ? _a : (0, configuration_1.getConf)(self, 'height');
89
- },
90
45
  /**
91
46
  * #getter
92
47
  */
@@ -97,12 +52,11 @@ function stateModelFactory() {
97
52
  * #getter
98
53
  */
99
54
  get blockDefinitions() {
100
- const { blockType } = this;
101
55
  const view = (0, util_1.getContainingView)(self);
102
56
  if (!view.initialized) {
103
57
  throw new Error('view not initialized yet');
104
58
  }
105
- return view[blockType];
59
+ return view[this.blockType];
106
60
  },
107
61
  }))
108
62
  .views(self => ({
@@ -194,139 +148,8 @@ function stateModelFactory() {
194
148
  });
195
149
  return ret;
196
150
  },
197
- /**
198
- * #getter
199
- */
200
- get currentBytesRequested() {
201
- var _a;
202
- return ((_a = self.featureDensityStats) === null || _a === void 0 ? void 0 : _a.bytes) || 0;
203
- },
204
- /**
205
- * #getter
206
- */
207
- get currentFeatureScreenDensity() {
208
- var _a;
209
- const view = (0, util_1.getContainingView)(self);
210
- return (((_a = self.featureDensityStats) === null || _a === void 0 ? void 0 : _a.featureDensity) || 0) * view.bpPerPx;
211
- },
212
- /**
213
- * #getter
214
- */
215
- get maxFeatureScreenDensity() {
216
- return (0, configuration_1.getConf)(self, 'maxFeatureScreenDensity');
217
- },
218
- /**
219
- * #getter
220
- */
221
- get featureDensityStatsReady() {
222
- return !!self.featureDensityStats || !!self.userBpPerPxLimit;
223
- },
224
- /**
225
- * #getter
226
- */
227
- get maxAllowableBytes() {
228
- var _a;
229
- return (self.userByteSizeLimit ||
230
- ((_a = self.featureDensityStats) === null || _a === void 0 ? void 0 : _a.fetchSizeLimit) ||
231
- (0, configuration_1.getConf)(self, 'fetchSizeLimit'));
232
- },
233
- }))
234
- .actions(self => ({
235
- /**
236
- * #action
237
- */
238
- setMessage(message) {
239
- self.message = message;
240
- },
241
151
  }))
242
152
  .actions(self => ({
243
- afterAttach() {
244
- // watch the parent's blocks to update our block state when they change,
245
- // then we recreate the blocks on our own model (creating and deleting to
246
- // match the parent blocks)
247
- (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
248
- const blocksPresent = {};
249
- const view = (0, util_1.getContainingView)(self);
250
- if (view.initialized) {
251
- self.blockDefinitions.contentBlocks.forEach(block => {
252
- blocksPresent[block.key] = true;
253
- if (!self.blockState.has(block.key)) {
254
- this.addBlock(block.key, block);
255
- }
256
- });
257
- self.blockState.forEach((_, key) => {
258
- if (!blocksPresent[key]) {
259
- this.deleteBlock(key);
260
- }
261
- });
262
- }
263
- }));
264
- },
265
- /**
266
- * #action
267
- */
268
- async getFeatureDensityStats() {
269
- if (!self.featureDensityStatsP) {
270
- self.featureDensityStatsP = (0, util_2.getFeatureDensityStatsPre)(self).catch(e => {
271
- this.setFeatureDensityStatsP(undefined);
272
- throw e;
273
- });
274
- }
275
- return self.featureDensityStatsP;
276
- },
277
- /**
278
- * #action
279
- */
280
- setFeatureDensityStatsP(arg) {
281
- self.featureDensityStatsP = arg;
282
- },
283
- /**
284
- * #action
285
- */
286
- setFeatureDensityStats(featureDensityStats) {
287
- self.featureDensityStats = featureDensityStats;
288
- },
289
- /**
290
- * #action
291
- */
292
- clearFeatureDensityStats() {
293
- self.featureDensityStatsP = undefined;
294
- self.featureDensityStats = undefined;
295
- },
296
- /**
297
- * #action
298
- */
299
- setHeight(displayHeight) {
300
- self.heightPreConfig =
301
- displayHeight > minDisplayHeight ? displayHeight : minDisplayHeight;
302
- return self.height;
303
- },
304
- /**
305
- * #action
306
- */
307
- resizeHeight(distance) {
308
- const oldHeight = self.height;
309
- const newHeight = this.setHeight(self.height + distance);
310
- return newHeight - oldHeight;
311
- },
312
- /**
313
- * #action
314
- */
315
- setScrollTop(scrollTop) {
316
- self.scrollTop = scrollTop;
317
- },
318
- /**
319
- * #action
320
- */
321
- setFeatureDensityStatsLimit(stats) {
322
- const view = (0, util_1.getContainingView)(self);
323
- if (stats === null || stats === void 0 ? void 0 : stats.bytes) {
324
- self.userByteSizeLimit = stats.bytes;
325
- }
326
- else {
327
- self.userBpPerPxLimit = view.bpPerPx;
328
- }
329
- },
330
153
  /**
331
154
  * #action
332
155
  */
@@ -336,12 +159,6 @@ function stateModelFactory() {
336
159
  region: block.toRegion(),
337
160
  }));
338
161
  },
339
- /**
340
- * #action
341
- */
342
- setCurrBpPerPx(n) {
343
- self.currBpPerPx = n;
344
- },
345
162
  /**
346
163
  * #action
347
164
  */
@@ -377,52 +194,12 @@ function stateModelFactory() {
377
194
  setFeatureIdUnderMouse(feature) {
378
195
  self.featureIdUnderMouse = feature;
379
196
  },
380
- /**
381
- * #action
382
- */
383
- reload() {
384
- ;
385
- [...self.blockState.values()].map(val => val.doReload());
386
- },
387
197
  /**
388
198
  * #action
389
199
  */
390
200
  setContextMenuFeature(feature) {
391
201
  self.contextMenuFeature = feature;
392
202
  },
393
- }))
394
- .views(self => ({
395
- /**
396
- * #getter
397
- * region is too large if:
398
- * - stats are ready
399
- * - region is greater than 20kb (don't warn when zoomed in less than that)
400
- * - and bytes is greater than max allowed bytes or density greater than max
401
- * density
402
- */
403
- get regionTooLarge() {
404
- const view = (0, util_1.getContainingView)(self);
405
- if (!self.featureDensityStatsReady ||
406
- view.dynamicBlocks.totalBp < 20000) {
407
- return false;
408
- }
409
- return (self.currentBytesRequested > self.maxAllowableBytes ||
410
- (self.userBpPerPxLimit
411
- ? view.bpPerPx > self.userBpPerPxLimit
412
- : self.currentFeatureScreenDensity > self.maxFeatureScreenDensity));
413
- },
414
- /**
415
- * #getter
416
- * only shows a message of bytes requested is defined, the feature density
417
- * based stats don't produce any helpful message besides to zoom in
418
- */
419
- get regionTooLargeReason() {
420
- const req = self.currentBytesRequested;
421
- const max = self.maxAllowableBytes;
422
- return req && req > max
423
- ? `Requested too much data (${(0, util_2.getDisplayStr)(req)})`
424
- : '';
425
- },
426
203
  }))
427
204
  .actions(self => {
428
205
  const { reload: superReload } = self;
@@ -432,88 +209,14 @@ function stateModelFactory() {
432
209
  */
433
210
  async reload() {
434
211
  self.setError();
435
- const view = (0, util_1.getContainingView)(self);
436
- // extra check for contentBlocks.length
437
- // https://github.com/GMOD/jbrowse-components/issues/2694
438
- if (!view.initialized || !view.staticBlocks.contentBlocks.length) {
439
- return;
440
- }
441
- try {
442
- const featureDensityStats = await self.getFeatureDensityStats();
443
- if ((0, mobx_state_tree_1.isAlive)(self)) {
444
- self.setFeatureDensityStats(featureDensityStats);
445
- superReload();
446
- }
447
- }
448
- catch (e) {
449
- console.error(e);
450
- self.setError(e);
451
- }
212
+ self.setCurrStatsBpPerPx(0);
213
+ self.clearFeatureDensityStats();
214
+ [...self.blockState.values()].map(val => val.doReload());
215
+ superReload();
452
216
  },
453
217
  };
454
218
  })
455
- .actions(self => ({
456
- afterAttach() {
457
- // this autorun performs stats estimation
458
- //
459
- // the chain of events calls getFeatureDensityStats against the data
460
- // adapter which by default uses featureDensity, but can also respond
461
- // with a byte size estimate and fetch size limit (data adapter can
462
- // define what is too much data)
463
- (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(async () => {
464
- var _a;
465
- try {
466
- const view = (0, util_1.getContainingView)(self);
467
- // extra check for contentBlocks.length
468
- // https://github.com/GMOD/jbrowse-components/issues/2694
469
- if (!view.initialized ||
470
- !view.staticBlocks.contentBlocks.length) {
471
- return;
472
- }
473
- // don't re-estimate featureDensity even if zoom level changes,
474
- // jbrowse1-style assume it's sort of representative
475
- if (((_a = self.featureDensityStats) === null || _a === void 0 ? void 0 : _a.featureDensity) !== undefined) {
476
- self.setCurrBpPerPx(view.bpPerPx);
477
- return;
478
- }
479
- // we estimate stats once at a given zoom level
480
- if (view.bpPerPx === self.currBpPerPx) {
481
- return;
482
- }
483
- self.clearFeatureDensityStats();
484
- self.setCurrBpPerPx(view.bpPerPx);
485
- const featureDensityStats = await self.getFeatureDensityStats();
486
- if ((0, mobx_state_tree_1.isAlive)(self)) {
487
- self.setFeatureDensityStats(featureDensityStats);
488
- }
489
- }
490
- catch (e) {
491
- if (!(0, util_1.isAbortException)(e) && (0, mobx_state_tree_1.isAlive)(self)) {
492
- console.error(e);
493
- self.setError(e);
494
- }
495
- }
496
- }));
497
- },
498
- }))
499
219
  .views(self => ({
500
- /**
501
- * #method
502
- */
503
- regionCannotBeRenderedText(_region) {
504
- return self.regionTooLarge ? 'Force load to see features' : '';
505
- },
506
- /**
507
- * #method
508
- * @param region -
509
- * @returns falsy if the region is fine to try rendering. Otherwise,
510
- * return a react node + string of text.
511
- * string of text describes why it cannot be rendered
512
- * react node allows user to force load at current setting
513
- */
514
- regionCannotBeRendered(_region) {
515
- return self.regionTooLarge ? react_1.default.createElement(TooLargeMessage_1.default, { model: self }) : null;
516
- },
517
220
  /**
518
221
  * #method
519
222
  */
@@ -544,10 +247,9 @@ function stateModelFactory() {
544
247
  * #method
545
248
  */
546
249
  renderProps() {
547
- const view = (0, util_1.getContainingView)(self);
548
250
  return {
549
251
  ...(0, tracks_1.getParentRenderProps)(self),
550
- notReady: self.currBpPerPx !== view.bpPerPx || !self.featureDensityStatsReady,
252
+ notReady: !self.featureDensityStatsReady,
551
253
  rpcDriverName: self.rpcDriverName,
552
254
  displayModel: self,
553
255
  onFeatureClick(_, featureId) {
@@ -594,53 +296,30 @@ function stateModelFactory() {
594
296
  * #method
595
297
  */
596
298
  async renderSvg(opts) {
597
- const { height, id } = self;
598
- const { overrideHeight } = opts;
599
- const view = (0, util_1.getContainingView)(self);
600
- const { offsetPx: viewOffsetPx, roundedDynamicBlocks, width } = view;
601
- const renderings = await Promise.all(roundedDynamicBlocks.map(async (block) => {
602
- const blockState = serverSideRenderedBlock_1.default.create({
603
- key: block.key,
604
- region: block,
605
- });
606
- // regionCannotBeRendered can return jsx so look for plaintext
607
- // version, or just get the default if none available
608
- const cannotBeRenderedReason = self.regionCannotBeRenderedText(block) ||
609
- self.regionCannotBeRendered(block);
610
- if (cannotBeRenderedReason) {
611
- return [
612
- block,
613
- {
614
- reactElement: (react_1.default.createElement(react_1.default.Fragment, null,
615
- react_1.default.createElement("rect", { x: 0, y: 0, width: width, height: 20, fill: "#aaa" }),
616
- react_1.default.createElement("text", { x: 0, y: 15 }, cannotBeRenderedReason))),
617
- },
618
- ];
299
+ return (0, renderSvg_1.default)(self, opts);
300
+ },
301
+ afterAttach() {
302
+ // watch the parent's blocks to update our block state when they change,
303
+ // then we recreate the blocks on our own model (creating and deleting to
304
+ // match the parent blocks)
305
+ (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
306
+ const blocksPresent = {};
307
+ const view = (0, util_1.getContainingView)(self);
308
+ if (!view.initialized) {
309
+ return;
619
310
  }
620
- const { rpcManager, renderArgs, renderProps, rendererType } = (0, serverSideRenderedBlock_1.renderBlockData)(blockState, self);
621
- return [
622
- block,
623
- await rendererType.renderInClient(rpcManager, {
624
- ...renderArgs,
625
- ...renderProps,
626
- viewParams: (0, util_1.getViewParams)(self, true),
627
- exportSVG: opts,
628
- theme: opts.theme || renderProps.theme,
629
- }),
630
- ];
311
+ self.blockDefinitions.contentBlocks.forEach(block => {
312
+ blocksPresent[block.key] = true;
313
+ if (!self.blockState.has(block.key)) {
314
+ self.addBlock(block.key, block);
315
+ }
316
+ });
317
+ self.blockState.forEach((_, key) => {
318
+ if (!blocksPresent[key]) {
319
+ self.deleteBlock(key);
320
+ }
321
+ });
631
322
  }));
632
- return (react_1.default.createElement(react_1.default.Fragment, null, renderings.map(([block, rendering], index) => {
633
- const { offsetPx, widthPx } = block;
634
- const offset = offsetPx - viewOffsetPx;
635
- const clipid = (0, util_2.getId)(id, index);
636
- return (react_1.default.createElement(react_1.default.Fragment, { key: `frag-${index}` },
637
- react_1.default.createElement("defs", null,
638
- react_1.default.createElement("clipPath", { id: clipid },
639
- react_1.default.createElement("rect", { x: 0, y: 0, width: widthPx, height: overrideHeight || height }))),
640
- react_1.default.createElement("g", { transform: `translate(${offset} 0)` },
641
- react_1.default.createElement("g", { clipPath: `url(#${clipid})` },
642
- react_1.default.createElement(util_1.ReactRendering, { rendering: rendering })))));
643
- })));
644
323
  },
645
324
  }))
646
325
  .preProcessSnapshot(snap => {
@@ -661,4 +340,3 @@ function stateModelFactory() {
661
340
  });
662
341
  }
663
342
  exports.BaseLinearDisplay = stateModelFactory();
664
- //# sourceMappingURL=BaseLinearDisplayModel.js.map
@@ -0,0 +1,99 @@
1
+ import React from 'react';
2
+ import { FeatureDensityStats } from '@jbrowse/core/data_adapters/BaseAdapter';
3
+ import { Region } from '@jbrowse/core/util/types';
4
+ /**
5
+ * #stateModel FeatureDensityMixin
6
+ * #category display
7
+ */
8
+ export default function FeatureDensityMixin(): import("mobx-state-tree").IModelType<{
9
+ /**
10
+ * #property
11
+ */
12
+ userBpPerPxLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
13
+ /**
14
+ * #property
15
+ */
16
+ userByteSizeLimit: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
17
+ }, {
18
+ featureDensityStatsP: Promise<FeatureDensityStats> | undefined;
19
+ featureDensityStats: FeatureDensityStats | undefined;
20
+ currStatsBpPerPx: number;
21
+ } & {
22
+ /**
23
+ * #getter
24
+ */
25
+ readonly currentBytesRequested: number;
26
+ /**
27
+ * #getter
28
+ */
29
+ readonly currentFeatureScreenDensity: number;
30
+ /**
31
+ * #getter
32
+ */
33
+ readonly maxFeatureScreenDensity: any;
34
+ /**
35
+ * #getter
36
+ */
37
+ readonly featureDensityStatsReady: boolean;
38
+ /**
39
+ * #getter
40
+ */
41
+ readonly maxAllowableBytes: number;
42
+ } & {
43
+ afterAttach(): void;
44
+ } & {
45
+ /**
46
+ * #action
47
+ */
48
+ setCurrStatsBpPerPx(n: number): void;
49
+ /**
50
+ * #action
51
+ */
52
+ setFeatureDensityStatsLimit(stats?: FeatureDensityStats): void;
53
+ /**
54
+ * #action
55
+ */
56
+ getFeatureDensityStats(): Promise<FeatureDensityStats>;
57
+ /**
58
+ * #action
59
+ */
60
+ setFeatureDensityStatsP(arg: any): void;
61
+ /**
62
+ * #action
63
+ */
64
+ setFeatureDensityStats(featureDensityStats?: FeatureDensityStats): void;
65
+ /**
66
+ * #action
67
+ */
68
+ clearFeatureDensityStats(): void;
69
+ } & {
70
+ /**
71
+ * #getter
72
+ * region is too large if:
73
+ * - stats are ready
74
+ * - region is greater than 20kb (don't warn when zoomed in less than that)
75
+ * - and bytes is greater than max allowed bytes or density greater than max
76
+ * density
77
+ */
78
+ readonly regionTooLarge: boolean;
79
+ /**
80
+ * #getter
81
+ * only shows a message of bytes requested is defined, the feature density
82
+ * based stats don't produce any helpful message besides to zoom in
83
+ */
84
+ readonly regionTooLargeReason: string;
85
+ } & {
86
+ /**
87
+ * #method
88
+ */
89
+ regionCannotBeRenderedText(_region: Region): "" | "Force load to see features";
90
+ /**
91
+ * #method
92
+ * @param region -
93
+ * @returns falsy if the region is fine to try rendering. Otherwise,
94
+ * return a react node + string of text.
95
+ * string of text describes why it cannot be rendered
96
+ * react node allows user to force load at current setting
97
+ */
98
+ regionCannotBeRendered(_region: Region): React.JSX.Element | null;
99
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;