@jbrowse/plugin-alignments 2.17.0 → 2.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (445) hide show
  1. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +1 -1
  2. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +6 -12
  3. package/dist/AlignmentsFeatureDetail/BreakendMultiLevelOptionDialog.js +0 -1
  4. package/dist/AlignmentsFeatureDetail/BreakendSingleLevelOptionDialog.js +0 -1
  5. package/dist/AlignmentsFeatureDetail/Flags.js +2 -2
  6. package/dist/AlignmentsFeatureDetail/Formatter.js +0 -3
  7. package/dist/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.d.ts +3 -5
  8. package/dist/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.js +4 -9
  9. package/dist/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.d.ts +3 -5
  10. package/dist/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.js +37 -36
  11. package/dist/AlignmentsFeatureDetail/LinkedPairedAlignments.d.ts +2 -2
  12. package/dist/AlignmentsFeatureDetail/LinkedPairedAlignments.js +3 -4
  13. package/dist/AlignmentsFeatureDetail/PairLink.d.ts +1 -1
  14. package/dist/AlignmentsFeatureDetail/PairLink.js +0 -1
  15. package/dist/AlignmentsFeatureDetail/SupplementaryAlignments.d.ts +2 -2
  16. package/dist/AlignmentsFeatureDetail/SupplementaryAlignments.js +5 -6
  17. package/dist/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.d.ts +1 -1
  18. package/dist/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.js +1 -5
  19. package/dist/AlignmentsFeatureDetail/getSAFeatures.d.ts +2 -2
  20. package/dist/AlignmentsFeatureDetail/getSAFeatures.js +0 -4
  21. package/dist/AlignmentsFeatureDetail/index.d.ts +1 -1
  22. package/dist/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +2 -2
  23. package/dist/AlignmentsFeatureDetail/stateModelFactory.d.ts +2 -2
  24. package/dist/AlignmentsFeatureDetail/stateModelFactory.js +1 -1
  25. package/dist/AlignmentsFeatureDetail/tagInfo.js +1 -1
  26. package/dist/AlignmentsFeatureDetail/util.d.ts +1 -1
  27. package/dist/AlignmentsTrack/configSchemaF.d.ts +1 -1
  28. package/dist/AlignmentsTrack/configSchemaF.js +1 -8
  29. package/dist/AlignmentsTrack/index.d.ts +1 -1
  30. package/dist/AlignmentsTrack/index.js +0 -3
  31. package/dist/BamAdapter/BamAdapter.d.ts +6 -5
  32. package/dist/BamAdapter/BamAdapter.js +21 -39
  33. package/dist/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -3
  34. package/dist/BamAdapter/BamSlightlyLazyFeature.js +0 -3
  35. package/dist/BamAdapter/configSchema.d.ts +0 -17
  36. package/dist/BamAdapter/configSchema.js +1 -22
  37. package/dist/BamAdapter/index.d.ts +1 -1
  38. package/dist/CramAdapter/CramAdapter.d.ts +6 -9
  39. package/dist/CramAdapter/CramAdapter.js +18 -41
  40. package/dist/CramAdapter/CramSlightlyLazyFeature.d.ts +3 -3
  41. package/dist/CramAdapter/CramSlightlyLazyFeature.js +0 -17
  42. package/dist/CramAdapter/CramTestAdapters.d.ts +3 -3
  43. package/dist/CramAdapter/CramTestAdapters.js +4 -5
  44. package/dist/CramAdapter/configSchema.d.ts +0 -14
  45. package/dist/CramAdapter/configSchema.js +1 -19
  46. package/dist/CramAdapter/index.d.ts +1 -1
  47. package/dist/CramAdapter/index.js +0 -1
  48. package/dist/CramAdapter/util.d.ts +2 -2
  49. package/dist/CramAdapter/util.js +1 -24
  50. package/dist/GuessAlignmentsTypes/index.d.ts +1 -1
  51. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +2 -2
  52. package/dist/HtsgetBamAdapter/configSchema.d.ts +0 -9
  53. package/dist/HtsgetBamAdapter/configSchema.js +1 -14
  54. package/dist/HtsgetBamAdapter/index.d.ts +1 -1
  55. package/dist/HtsgetBamAdapter/index.js +1 -1
  56. package/dist/LinearAlignmentsDisplay/alignmentsModel.d.ts +2 -5
  57. package/dist/LinearAlignmentsDisplay/alignmentsModel.js +1 -31
  58. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +1 -1
  59. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +2 -2
  60. package/dist/LinearAlignmentsDisplay/configSchema.d.ts +2 -16
  61. package/dist/LinearAlignmentsDisplay/configSchema.js +3 -20
  62. package/dist/LinearAlignmentsDisplay/index.d.ts +1 -1
  63. package/dist/LinearAlignmentsDisplay/index.js +1 -2
  64. package/dist/LinearAlignmentsDisplay/model.d.ts +6 -75
  65. package/dist/LinearAlignmentsDisplay/model.js +5 -78
  66. package/dist/LinearAlignmentsDisplay/util.d.ts +1 -1
  67. package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +31 -157
  68. package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +34 -133
  69. package/dist/LinearPileupDisplay/components/ColorByTagDialog.js +2 -2
  70. package/dist/LinearPileupDisplay/components/GroupByDialog.d.ts +2 -2
  71. package/dist/LinearPileupDisplay/components/GroupByDialog.js +109 -56
  72. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +2 -6
  73. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +1 -1
  74. package/dist/LinearPileupDisplay/components/SetFeatureHeightDialog.js +2 -2
  75. package/dist/LinearPileupDisplay/components/SetMaxHeightDialog.js +2 -2
  76. package/dist/LinearPileupDisplay/components/SortByTagDialog.js +2 -2
  77. package/dist/LinearPileupDisplay/configSchema.d.ts +13 -16
  78. package/dist/LinearPileupDisplay/configSchema.js +12 -30
  79. package/dist/LinearPileupDisplay/index.d.ts +1 -1
  80. package/dist/LinearPileupDisplay/index.js +2 -2
  81. package/dist/LinearPileupDisplay/model.d.ts +103 -105
  82. package/dist/LinearPileupDisplay/model.js +10 -101
  83. package/dist/LinearReadArcsDisplay/components/ReactComponent.d.ts +1 -1
  84. package/dist/LinearReadArcsDisplay/components/ReactComponent.js +2 -6
  85. package/dist/LinearReadArcsDisplay/configSchema.d.ts +12 -20
  86. package/dist/LinearReadArcsDisplay/configSchema.js +8 -31
  87. package/dist/LinearReadArcsDisplay/drawFeats.d.ts +1 -1
  88. package/dist/LinearReadArcsDisplay/drawFeats.js +1 -9
  89. package/dist/LinearReadArcsDisplay/index.d.ts +1 -1
  90. package/dist/LinearReadArcsDisplay/index.js +1 -2
  91. package/dist/LinearReadArcsDisplay/model.d.ts +15 -93
  92. package/dist/LinearReadArcsDisplay/model.js +17 -104
  93. package/dist/LinearReadArcsDisplay/util.d.ts +1 -1
  94. package/dist/LinearReadCloudDisplay/components/ReactComponent.d.ts +1 -1
  95. package/dist/LinearReadCloudDisplay/components/ReactComponent.js +2 -6
  96. package/dist/LinearReadCloudDisplay/configSchema.d.ts +5 -17
  97. package/dist/LinearReadCloudDisplay/configSchema.js +3 -28
  98. package/dist/LinearReadCloudDisplay/drawFeats.d.ts +1 -1
  99. package/dist/LinearReadCloudDisplay/drawFeats.js +2 -2
  100. package/dist/LinearReadCloudDisplay/drawLongReadChains.d.ts +4 -4
  101. package/dist/LinearReadCloudDisplay/drawLongReadChains.js +1 -4
  102. package/dist/LinearReadCloudDisplay/drawPairChains.d.ts +4 -4
  103. package/dist/LinearReadCloudDisplay/drawPairChains.js +0 -3
  104. package/dist/LinearReadCloudDisplay/index.d.ts +1 -1
  105. package/dist/LinearReadCloudDisplay/index.js +1 -2
  106. package/dist/LinearReadCloudDisplay/model.d.ts +13 -55
  107. package/dist/LinearReadCloudDisplay/model.js +17 -68
  108. package/dist/LinearReadCloudDisplay/util.js +0 -1
  109. package/dist/LinearSNPCoverageDisplay/components/Tooltip.d.ts +1 -1
  110. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +1 -1
  111. package/dist/LinearSNPCoverageDisplay/configSchema.d.ts +17 -22
  112. package/dist/LinearSNPCoverageDisplay/configSchema.js +16 -32
  113. package/dist/LinearSNPCoverageDisplay/index.d.ts +1 -1
  114. package/dist/LinearSNPCoverageDisplay/index.js +1 -2
  115. package/dist/LinearSNPCoverageDisplay/model.d.ts +9 -50
  116. package/dist/LinearSNPCoverageDisplay/model.js +20 -124
  117. package/dist/MismatchParser/cigarToMismatches.d.ts +1 -1
  118. package/dist/MismatchParser/cigarToMismatches.js +4 -7
  119. package/dist/MismatchParser/getNextRefPos.js +0 -2
  120. package/dist/MismatchParser/index.d.ts +2 -2
  121. package/dist/MismatchParser/index.js +1 -9
  122. package/dist/MismatchParser/mdToMismatches.d.ts +2 -2
  123. package/dist/MismatchParser/mdToMismatches.js +0 -6
  124. package/dist/ModificationParser/index.d.ts +1 -1
  125. package/dist/ModificationParser/index.js +1 -18
  126. package/dist/PileupRPC/base.d.ts +2 -2
  127. package/dist/PileupRPC/base.js +0 -1
  128. package/dist/PileupRPC/index.d.ts +1 -1
  129. package/dist/PileupRPC/methods/GetGlobalValueForTag.d.ts +2 -3
  130. package/dist/PileupRPC/methods/GetGlobalValueForTag.js +1 -2
  131. package/dist/PileupRPC/methods/GetReducedFeatures.d.ts +2 -3
  132. package/dist/PileupRPC/methods/GetReducedFeatures.js +3 -5
  133. package/dist/PileupRPC/methods/GetVisibleModifications.d.ts +3 -4
  134. package/dist/PileupRPC/methods/GetVisibleModifications.js +1 -1
  135. package/dist/PileupRPC/util.d.ts +1 -1
  136. package/dist/PileupRenderer/PileupLayoutSession.d.ts +5 -5
  137. package/dist/PileupRenderer/PileupLayoutSession.js +2 -5
  138. package/dist/PileupRenderer/PileupRenderer.d.ts +10 -20
  139. package/dist/PileupRenderer/PileupRenderer.js +11 -16
  140. package/dist/PileupRenderer/colorBy.d.ts +2 -2
  141. package/dist/PileupRenderer/colorBy.js +0 -6
  142. package/dist/PileupRenderer/components/PileupRendering.d.ts +1 -1
  143. package/dist/PileupRenderer/components/PileupRendering.js +0 -3
  144. package/dist/PileupRenderer/configSchema.d.ts +0 -31
  145. package/dist/PileupRenderer/configSchema.js +1 -35
  146. package/dist/PileupRenderer/getAlignmentShapeColor.d.ts +2 -2
  147. package/dist/PileupRenderer/getAlignmentShapeColor.js +1 -6
  148. package/dist/PileupRenderer/index.d.ts +1 -1
  149. package/dist/PileupRenderer/index.js +1 -1
  150. package/dist/PileupRenderer/layoutFeature.d.ts +2 -2
  151. package/dist/PileupRenderer/layoutFeature.js +0 -1
  152. package/dist/PileupRenderer/layoutFeatures.d.ts +5 -2
  153. package/dist/PileupRenderer/layoutFeatures.js +6 -4
  154. package/dist/PileupRenderer/makeImageData.d.ts +3 -4
  155. package/dist/PileupRenderer/makeImageData.js +8 -2
  156. package/dist/PileupRenderer/renderAlignment.d.ts +3 -3
  157. package/dist/PileupRenderer/renderAlignment.js +3 -5
  158. package/dist/PileupRenderer/renderAlignmentShape.d.ts +3 -3
  159. package/dist/PileupRenderer/renderAlignmentShape.js +1 -1
  160. package/dist/PileupRenderer/renderMethylation.d.ts +4 -4
  161. package/dist/PileupRenderer/renderMethylation.js +0 -4
  162. package/dist/PileupRenderer/renderMismatches.d.ts +3 -3
  163. package/dist/PileupRenderer/renderMismatches.js +1 -12
  164. package/dist/PileupRenderer/renderModifications.d.ts +3 -3
  165. package/dist/PileupRenderer/renderModifications.js +1 -3
  166. package/dist/PileupRenderer/renderPerBaseLettering.d.ts +2 -2
  167. package/dist/PileupRenderer/renderPerBaseLettering.js +0 -1
  168. package/dist/PileupRenderer/renderPerBaseQuality.d.ts +2 -2
  169. package/dist/PileupRenderer/renderPerBaseQuality.js +2 -2
  170. package/dist/PileupRenderer/renderSoftClipping.d.ts +5 -5
  171. package/dist/PileupRenderer/renderSoftClipping.js +0 -4
  172. package/dist/PileupRenderer/sortUtil.d.ts +2 -2
  173. package/dist/PileupRenderer/sortUtil.js +1 -4
  174. package/dist/PileupRenderer/types.d.ts +26 -0
  175. package/dist/PileupRenderer/types.js +2 -0
  176. package/dist/PileupRenderer/util.d.ts +2 -2
  177. package/dist/PileupRenderer/util.js +1 -3
  178. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +4 -3
  179. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +4 -6
  180. package/dist/SNPCoverageAdapter/configSchema.d.ts +0 -4
  181. package/dist/SNPCoverageAdapter/configSchema.js +1 -8
  182. package/dist/SNPCoverageAdapter/generateCoverageBins.d.ts +4 -8
  183. package/dist/SNPCoverageAdapter/generateCoverageBins.js +25 -247
  184. package/dist/SNPCoverageAdapter/index.d.ts +1 -1
  185. package/dist/SNPCoverageAdapter/processDepth.d.ts +8 -0
  186. package/dist/SNPCoverageAdapter/processDepth.js +38 -0
  187. package/dist/SNPCoverageAdapter/processMismatches.d.ts +9 -0
  188. package/dist/SNPCoverageAdapter/processMismatches.js +58 -0
  189. package/dist/SNPCoverageAdapter/processModifications.d.ts +10 -0
  190. package/dist/SNPCoverageAdapter/processModifications.js +49 -0
  191. package/dist/SNPCoverageAdapter/processReferenceCpGs.d.ts +9 -0
  192. package/dist/SNPCoverageAdapter/processReferenceCpGs.js +63 -0
  193. package/dist/SNPCoverageAdapter/util.d.ts +10 -0
  194. package/dist/SNPCoverageAdapter/util.js +41 -0
  195. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +5 -4
  196. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +14 -38
  197. package/dist/SNPCoverageRenderer/configSchema.d.ts +0 -15
  198. package/dist/SNPCoverageRenderer/configSchema.js +1 -19
  199. package/dist/SNPCoverageRenderer/index.d.ts +1 -1
  200. package/dist/SNPCoverageRenderer/index.js +2 -2
  201. package/dist/index.d.ts +2 -2
  202. package/dist/index.js +12 -12
  203. package/dist/shared/afterAttach.d.ts +1 -1
  204. package/dist/shared/afterAttach.js +0 -2
  205. package/dist/shared/color.d.ts +1 -1
  206. package/dist/shared/color.js +0 -8
  207. package/dist/shared/components/BaseDisplayComponent.d.ts +2 -2
  208. package/dist/shared/components/BaseDisplayComponent.js +12 -11
  209. package/dist/shared/components/FilterByTagDialog.d.ts +1 -1
  210. package/dist/shared/components/FilterByTagDialog.js +2 -2
  211. package/dist/shared/fetchChains.d.ts +2 -2
  212. package/dist/shared/fetchChains.js +1 -2
  213. package/dist/shared/getMaximumModificationAtEachPosition.d.ts +1 -1
  214. package/dist/shared/getMaximumModificationAtEachPosition.js +1 -2
  215. package/dist/shared/getUniqueModifications.d.ts +5 -5
  216. package/dist/shared/getUniqueTags.d.ts +4 -4
  217. package/dist/shared/renderSvgUtil.js +0 -2
  218. package/dist/shared/util.d.ts +11 -1
  219. package/dist/shared/util.js +27 -1
  220. package/dist/util.d.ts +4 -4
  221. package/dist/util.js +3 -9
  222. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +1 -1
  223. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +6 -12
  224. package/esm/AlignmentsFeatureDetail/BreakendMultiLevelOptionDialog.js +0 -1
  225. package/esm/AlignmentsFeatureDetail/BreakendSingleLevelOptionDialog.js +0 -1
  226. package/esm/AlignmentsFeatureDetail/Flags.js +2 -2
  227. package/esm/AlignmentsFeatureDetail/Formatter.js +0 -3
  228. package/esm/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.d.ts +3 -5
  229. package/esm/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.js +5 -10
  230. package/esm/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.d.ts +3 -5
  231. package/esm/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.js +37 -36
  232. package/esm/AlignmentsFeatureDetail/LinkedPairedAlignments.d.ts +2 -2
  233. package/esm/AlignmentsFeatureDetail/LinkedPairedAlignments.js +3 -4
  234. package/esm/AlignmentsFeatureDetail/PairLink.d.ts +1 -1
  235. package/esm/AlignmentsFeatureDetail/PairLink.js +0 -1
  236. package/esm/AlignmentsFeatureDetail/SupplementaryAlignments.d.ts +2 -2
  237. package/esm/AlignmentsFeatureDetail/SupplementaryAlignments.js +5 -6
  238. package/esm/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.d.ts +1 -1
  239. package/esm/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.js +2 -6
  240. package/esm/AlignmentsFeatureDetail/getSAFeatures.d.ts +2 -2
  241. package/esm/AlignmentsFeatureDetail/getSAFeatures.js +0 -4
  242. package/esm/AlignmentsFeatureDetail/index.d.ts +1 -1
  243. package/esm/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +2 -2
  244. package/esm/AlignmentsFeatureDetail/stateModelFactory.d.ts +2 -2
  245. package/esm/AlignmentsFeatureDetail/stateModelFactory.js +1 -1
  246. package/esm/AlignmentsFeatureDetail/tagInfo.js +1 -1
  247. package/esm/AlignmentsFeatureDetail/util.d.ts +1 -1
  248. package/esm/AlignmentsTrack/configSchemaF.d.ts +1 -1
  249. package/esm/AlignmentsTrack/configSchemaF.js +1 -8
  250. package/esm/AlignmentsTrack/index.d.ts +1 -1
  251. package/esm/AlignmentsTrack/index.js +0 -3
  252. package/esm/BamAdapter/BamAdapter.d.ts +6 -5
  253. package/esm/BamAdapter/BamAdapter.js +19 -37
  254. package/esm/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -3
  255. package/esm/BamAdapter/BamSlightlyLazyFeature.js +0 -3
  256. package/esm/BamAdapter/configSchema.d.ts +0 -17
  257. package/esm/BamAdapter/configSchema.js +1 -22
  258. package/esm/BamAdapter/index.d.ts +1 -1
  259. package/esm/CramAdapter/CramAdapter.d.ts +6 -9
  260. package/esm/CramAdapter/CramAdapter.js +17 -40
  261. package/esm/CramAdapter/CramSlightlyLazyFeature.d.ts +3 -3
  262. package/esm/CramAdapter/CramSlightlyLazyFeature.js +0 -17
  263. package/esm/CramAdapter/CramTestAdapters.d.ts +3 -3
  264. package/esm/CramAdapter/CramTestAdapters.js +4 -5
  265. package/esm/CramAdapter/configSchema.d.ts +0 -14
  266. package/esm/CramAdapter/configSchema.js +1 -19
  267. package/esm/CramAdapter/index.d.ts +1 -1
  268. package/esm/CramAdapter/index.js +0 -1
  269. package/esm/CramAdapter/util.d.ts +2 -2
  270. package/esm/CramAdapter/util.js +1 -24
  271. package/esm/GuessAlignmentsTypes/index.d.ts +1 -1
  272. package/esm/GuessAlignmentsTypes/index.js +1 -1
  273. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +2 -2
  274. package/esm/HtsgetBamAdapter/configSchema.d.ts +0 -9
  275. package/esm/HtsgetBamAdapter/configSchema.js +1 -14
  276. package/esm/HtsgetBamAdapter/index.d.ts +1 -1
  277. package/esm/HtsgetBamAdapter/index.js +1 -1
  278. package/esm/LinearAlignmentsDisplay/alignmentsModel.d.ts +2 -5
  279. package/esm/LinearAlignmentsDisplay/alignmentsModel.js +1 -31
  280. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +1 -1
  281. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +2 -2
  282. package/esm/LinearAlignmentsDisplay/configSchema.d.ts +2 -16
  283. package/esm/LinearAlignmentsDisplay/configSchema.js +3 -20
  284. package/esm/LinearAlignmentsDisplay/index.d.ts +1 -1
  285. package/esm/LinearAlignmentsDisplay/index.js +1 -2
  286. package/esm/LinearAlignmentsDisplay/model.d.ts +6 -75
  287. package/esm/LinearAlignmentsDisplay/model.js +6 -79
  288. package/esm/LinearAlignmentsDisplay/util.d.ts +1 -1
  289. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +31 -157
  290. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +36 -135
  291. package/esm/LinearPileupDisplay/components/ColorByTagDialog.js +2 -2
  292. package/esm/LinearPileupDisplay/components/GroupByDialog.d.ts +2 -2
  293. package/esm/LinearPileupDisplay/components/GroupByDialog.js +109 -56
  294. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +2 -6
  295. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +1 -1
  296. package/esm/LinearPileupDisplay/components/SetFeatureHeightDialog.js +2 -2
  297. package/esm/LinearPileupDisplay/components/SetMaxHeightDialog.js +2 -2
  298. package/esm/LinearPileupDisplay/components/SortByTagDialog.js +2 -2
  299. package/esm/LinearPileupDisplay/configSchema.d.ts +13 -16
  300. package/esm/LinearPileupDisplay/configSchema.js +12 -30
  301. package/esm/LinearPileupDisplay/index.d.ts +1 -1
  302. package/esm/LinearPileupDisplay/index.js +2 -2
  303. package/esm/LinearPileupDisplay/model.d.ts +103 -105
  304. package/esm/LinearPileupDisplay/model.js +11 -102
  305. package/esm/LinearReadArcsDisplay/components/ReactComponent.d.ts +1 -1
  306. package/esm/LinearReadArcsDisplay/components/ReactComponent.js +2 -6
  307. package/esm/LinearReadArcsDisplay/configSchema.d.ts +12 -20
  308. package/esm/LinearReadArcsDisplay/configSchema.js +8 -31
  309. package/esm/LinearReadArcsDisplay/drawFeats.d.ts +1 -1
  310. package/esm/LinearReadArcsDisplay/drawFeats.js +1 -9
  311. package/esm/LinearReadArcsDisplay/index.d.ts +1 -1
  312. package/esm/LinearReadArcsDisplay/index.js +1 -2
  313. package/esm/LinearReadArcsDisplay/model.d.ts +15 -93
  314. package/esm/LinearReadArcsDisplay/model.js +18 -105
  315. package/esm/LinearReadArcsDisplay/util.d.ts +1 -1
  316. package/esm/LinearReadCloudDisplay/components/ReactComponent.d.ts +1 -1
  317. package/esm/LinearReadCloudDisplay/components/ReactComponent.js +2 -6
  318. package/esm/LinearReadCloudDisplay/configSchema.d.ts +5 -17
  319. package/esm/LinearReadCloudDisplay/configSchema.js +3 -28
  320. package/esm/LinearReadCloudDisplay/drawFeats.d.ts +1 -1
  321. package/esm/LinearReadCloudDisplay/drawFeats.js +2 -2
  322. package/esm/LinearReadCloudDisplay/drawLongReadChains.d.ts +4 -4
  323. package/esm/LinearReadCloudDisplay/drawLongReadChains.js +1 -4
  324. package/esm/LinearReadCloudDisplay/drawPairChains.d.ts +4 -4
  325. package/esm/LinearReadCloudDisplay/drawPairChains.js +0 -3
  326. package/esm/LinearReadCloudDisplay/index.d.ts +1 -1
  327. package/esm/LinearReadCloudDisplay/index.js +1 -2
  328. package/esm/LinearReadCloudDisplay/model.d.ts +13 -55
  329. package/esm/LinearReadCloudDisplay/model.js +17 -68
  330. package/esm/LinearReadCloudDisplay/util.js +0 -1
  331. package/esm/LinearSNPCoverageDisplay/components/Tooltip.d.ts +1 -1
  332. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +1 -1
  333. package/esm/LinearSNPCoverageDisplay/configSchema.d.ts +17 -22
  334. package/esm/LinearSNPCoverageDisplay/configSchema.js +16 -32
  335. package/esm/LinearSNPCoverageDisplay/index.d.ts +1 -1
  336. package/esm/LinearSNPCoverageDisplay/index.js +1 -2
  337. package/esm/LinearSNPCoverageDisplay/model.d.ts +9 -50
  338. package/esm/LinearSNPCoverageDisplay/model.js +21 -125
  339. package/esm/MismatchParser/cigarToMismatches.d.ts +1 -1
  340. package/esm/MismatchParser/cigarToMismatches.js +4 -7
  341. package/esm/MismatchParser/getNextRefPos.js +0 -2
  342. package/esm/MismatchParser/index.d.ts +2 -2
  343. package/esm/MismatchParser/index.js +1 -9
  344. package/esm/MismatchParser/mdToMismatches.d.ts +2 -2
  345. package/esm/MismatchParser/mdToMismatches.js +0 -6
  346. package/esm/ModificationParser/index.d.ts +1 -1
  347. package/esm/ModificationParser/index.js +1 -18
  348. package/esm/PileupRPC/base.d.ts +2 -2
  349. package/esm/PileupRPC/base.js +0 -1
  350. package/esm/PileupRPC/index.d.ts +1 -1
  351. package/esm/PileupRPC/index.js +1 -1
  352. package/esm/PileupRPC/methods/GetGlobalValueForTag.d.ts +2 -3
  353. package/esm/PileupRPC/methods/GetGlobalValueForTag.js +1 -2
  354. package/esm/PileupRPC/methods/GetReducedFeatures.d.ts +2 -3
  355. package/esm/PileupRPC/methods/GetReducedFeatures.js +3 -5
  356. package/esm/PileupRPC/methods/GetVisibleModifications.d.ts +3 -4
  357. package/esm/PileupRPC/methods/GetVisibleModifications.js +1 -1
  358. package/esm/PileupRPC/util.d.ts +1 -1
  359. package/esm/PileupRenderer/PileupLayoutSession.d.ts +5 -5
  360. package/esm/PileupRenderer/PileupLayoutSession.js +2 -5
  361. package/esm/PileupRenderer/PileupRenderer.d.ts +10 -20
  362. package/esm/PileupRenderer/PileupRenderer.js +12 -17
  363. package/esm/PileupRenderer/colorBy.d.ts +2 -2
  364. package/esm/PileupRenderer/colorBy.js +1 -7
  365. package/esm/PileupRenderer/components/PileupRendering.d.ts +1 -1
  366. package/esm/PileupRenderer/components/PileupRendering.js +1 -4
  367. package/esm/PileupRenderer/configSchema.d.ts +0 -31
  368. package/esm/PileupRenderer/configSchema.js +1 -35
  369. package/esm/PileupRenderer/getAlignmentShapeColor.d.ts +2 -2
  370. package/esm/PileupRenderer/getAlignmentShapeColor.js +2 -7
  371. package/esm/PileupRenderer/index.d.ts +1 -1
  372. package/esm/PileupRenderer/index.js +1 -1
  373. package/esm/PileupRenderer/layoutFeature.d.ts +2 -2
  374. package/esm/PileupRenderer/layoutFeature.js +0 -1
  375. package/esm/PileupRenderer/layoutFeatures.d.ts +5 -2
  376. package/esm/PileupRenderer/layoutFeatures.js +7 -5
  377. package/esm/PileupRenderer/makeImageData.d.ts +3 -4
  378. package/esm/PileupRenderer/makeImageData.js +8 -2
  379. package/esm/PileupRenderer/renderAlignment.d.ts +3 -3
  380. package/esm/PileupRenderer/renderAlignment.js +3 -5
  381. package/esm/PileupRenderer/renderAlignmentShape.d.ts +3 -3
  382. package/esm/PileupRenderer/renderAlignmentShape.js +1 -1
  383. package/esm/PileupRenderer/renderMethylation.d.ts +4 -4
  384. package/esm/PileupRenderer/renderMethylation.js +0 -4
  385. package/esm/PileupRenderer/renderMismatches.d.ts +3 -3
  386. package/esm/PileupRenderer/renderMismatches.js +1 -12
  387. package/esm/PileupRenderer/renderModifications.d.ts +3 -3
  388. package/esm/PileupRenderer/renderModifications.js +1 -3
  389. package/esm/PileupRenderer/renderPerBaseLettering.d.ts +2 -2
  390. package/esm/PileupRenderer/renderPerBaseLettering.js +0 -1
  391. package/esm/PileupRenderer/renderPerBaseQuality.d.ts +2 -2
  392. package/esm/PileupRenderer/renderPerBaseQuality.js +2 -2
  393. package/esm/PileupRenderer/renderSoftClipping.d.ts +5 -5
  394. package/esm/PileupRenderer/renderSoftClipping.js +1 -5
  395. package/esm/PileupRenderer/sortUtil.d.ts +2 -2
  396. package/esm/PileupRenderer/sortUtil.js +1 -4
  397. package/esm/PileupRenderer/types.d.ts +26 -0
  398. package/esm/PileupRenderer/types.js +1 -0
  399. package/esm/PileupRenderer/util.d.ts +2 -2
  400. package/esm/PileupRenderer/util.js +1 -3
  401. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +4 -3
  402. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +5 -7
  403. package/esm/SNPCoverageAdapter/configSchema.d.ts +0 -4
  404. package/esm/SNPCoverageAdapter/configSchema.js +1 -8
  405. package/esm/SNPCoverageAdapter/generateCoverageBins.d.ts +4 -8
  406. package/esm/SNPCoverageAdapter/generateCoverageBins.js +24 -246
  407. package/esm/SNPCoverageAdapter/index.d.ts +1 -1
  408. package/esm/SNPCoverageAdapter/processDepth.d.ts +8 -0
  409. package/esm/SNPCoverageAdapter/processDepth.js +35 -0
  410. package/esm/SNPCoverageAdapter/processMismatches.d.ts +9 -0
  411. package/esm/SNPCoverageAdapter/processMismatches.js +55 -0
  412. package/esm/SNPCoverageAdapter/processModifications.d.ts +10 -0
  413. package/esm/SNPCoverageAdapter/processModifications.js +46 -0
  414. package/esm/SNPCoverageAdapter/processReferenceCpGs.d.ts +9 -0
  415. package/esm/SNPCoverageAdapter/processReferenceCpGs.js +60 -0
  416. package/esm/SNPCoverageAdapter/util.d.ts +10 -0
  417. package/esm/SNPCoverageAdapter/util.js +35 -0
  418. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +5 -4
  419. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +16 -40
  420. package/esm/SNPCoverageRenderer/configSchema.d.ts +0 -15
  421. package/esm/SNPCoverageRenderer/configSchema.js +1 -19
  422. package/esm/SNPCoverageRenderer/index.d.ts +1 -1
  423. package/esm/SNPCoverageRenderer/index.js +2 -2
  424. package/esm/index.d.ts +2 -2
  425. package/esm/index.js +10 -10
  426. package/esm/shared/afterAttach.d.ts +1 -1
  427. package/esm/shared/afterAttach.js +0 -2
  428. package/esm/shared/color.d.ts +1 -1
  429. package/esm/shared/color.js +0 -8
  430. package/esm/shared/components/BaseDisplayComponent.d.ts +2 -2
  431. package/esm/shared/components/BaseDisplayComponent.js +12 -11
  432. package/esm/shared/components/FilterByTagDialog.d.ts +1 -1
  433. package/esm/shared/components/FilterByTagDialog.js +2 -2
  434. package/esm/shared/fetchChains.d.ts +2 -2
  435. package/esm/shared/fetchChains.js +1 -2
  436. package/esm/shared/getMaximumModificationAtEachPosition.d.ts +1 -1
  437. package/esm/shared/getMaximumModificationAtEachPosition.js +1 -2
  438. package/esm/shared/getUniqueModifications.d.ts +5 -5
  439. package/esm/shared/getUniqueTags.d.ts +4 -4
  440. package/esm/shared/renderSvgUtil.js +0 -2
  441. package/esm/shared/util.d.ts +11 -1
  442. package/esm/shared/util.js +24 -0
  443. package/esm/util.d.ts +4 -4
  444. package/esm/util.js +3 -9
  445. package/package.json +3 -4
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { AlignmentFeatureWidgetModel } from './stateModelFactory';
2
+ import type { AlignmentFeatureWidgetModel } from './stateModelFactory';
3
3
  declare const AlignmentsFeatureDetails: (props: {
4
4
  model: AlignmentFeatureWidgetModel;
5
5
  }) => React.JSX.Element;
@@ -1,28 +1,22 @@
1
1
  import React, { lazy } from 'react';
2
+ import FeatureDetails from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail/FeatureDetails';
2
3
  import { Paper } from '@mui/material';
3
4
  import { observer } from 'mobx-react';
4
- import clone from 'clone';
5
- import FeatureDetails from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail/FeatureDetails';
6
- // locals
7
- import { getTag } from './util';
8
- import { tags } from './tagInfo';
9
- // local components
10
5
  import Flags from './Flags';
11
- import PairLink from './PairLink';
12
6
  import Formatter from './Formatter';
13
- // lazies
7
+ import PairLink from './PairLink';
8
+ import { tags } from './tagInfo';
9
+ import { getTag } from './util';
14
10
  const SupplementaryAlignments = lazy(() => import('./SupplementaryAlignments'));
15
11
  const LinkedPairedAlignments = lazy(() => import('./LinkedPairedAlignments'));
16
12
  const AlignmentsFeatureDetails = observer(function (props) {
17
13
  const { model } = props;
18
14
  const { featureData } = model;
19
- const feat = clone(featureData);
15
+ const feat = structuredClone(featureData);
20
16
  const SA = getTag('SA', feat);
21
17
  const { flags } = feat;
22
18
  return (React.createElement(Paper, { "data-testid": "alignment-side-drawer" },
23
- React.createElement(FeatureDetails, { ...props,
24
- // @ts-expect-error
25
- descriptions: { ...tags, tags: tags }, feature: feat, formatter: (value, key) => key === 'next_segment_position' ? (React.createElement(PairLink, { model: model, locString: value })) : (React.createElement(Formatter, { value: value })) }),
19
+ React.createElement(FeatureDetails, { ...props, descriptions: { tags }, feature: feat, formatter: (value, key) => key === 'next_segment_position' ? (React.createElement(PairLink, { model: model, locString: value })) : (React.createElement(Formatter, { value: value })) }),
26
20
  SA !== undefined ? (React.createElement(SupplementaryAlignments, { model: model, tag: SA, feature: feat })) : null,
27
21
  flags & 1 ? (React.createElement(LinkedPairedAlignments, { model: model, feature: feat })) : null,
28
22
  flags !== undefined ? React.createElement(Flags, { feature: feat, ...props }) : null));
@@ -1,2 +1 @@
1
- // re-exported for react lazy
2
1
  export { BreakendMultiLevelOptionDialog as default } from '@jbrowse/sv-core';
@@ -1,2 +1 @@
1
- // re-exported for react lazy
2
1
  export { BreakendSingleLevelOptionDialog as default } from '@jbrowse/sv-core';
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
- import { Checkbox, FormControlLabel, FormGroup } from '@mui/material';
3
- import { makeStyles } from 'tss-react/mui';
4
2
  import BaseCard from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail/BaseCard';
5
3
  import SimpleField from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail/SimpleField';
4
+ import { Checkbox, FormControlLabel, FormGroup } from '@mui/material';
5
+ import { makeStyles } from 'tss-react/mui';
6
6
  const useStyles = makeStyles()({
7
7
  compact: {
8
8
  paddingRight: 0,
@@ -1,8 +1,5 @@
1
1
  import React, { useState } from 'react';
2
2
  import copy from 'copy-to-clipboard';
3
- // this 'show more...' used specifically as a formatter on alignments feature
4
- // details because long SEQ or CRAM files, even a single div full of a ton of
5
- // data from a long read, can slow down the rest of the app
6
3
  export default function Formatter({ value }) {
7
4
  const [show, setShow] = useState(false);
8
5
  const [copied, setCopied] = useState(false);
@@ -1,9 +1,7 @@
1
1
  import React from 'react';
2
- import { SimpleFeatureSerialized } from '@jbrowse/core/util';
3
- import { ViewType } from '@jbrowse/core/pluggableElementTypes';
4
- import { AlignmentFeatureWidgetModel } from './stateModelFactory';
5
- export default function LaunchPairedEndBreakpointSplitViewPanel({ model, feature, viewType, }: {
2
+ import type { AlignmentFeatureWidgetModel } from './stateModelFactory';
3
+ import type { SimpleFeatureSerialized } from '@jbrowse/core/util';
4
+ export default function LaunchPairedEndBreakpointSplitViewPanel({ model, feature, }: {
6
5
  model: AlignmentFeatureWidgetModel;
7
6
  feature: SimpleFeatureSerialized;
8
- viewType: ViewType;
9
7
  }): React.JSX.Element;
@@ -1,10 +1,9 @@
1
1
  import React, { lazy } from 'react';
2
- import { Typography, Link } from '@mui/material';
3
- import { SimpleFeature, getSession, toLocale, } from '@jbrowse/core/util';
4
- // lazies
2
+ import { SimpleFeature, getSession, toLocale } from '@jbrowse/core/util';
3
+ import { Link, Typography } from '@mui/material';
5
4
  const BreakendMultiLevelOptionDialog = lazy(() => import('./BreakendMultiLevelOptionDialog'));
6
5
  const BreakendSingleLevelOptionDialog = lazy(() => import('./BreakendSingleLevelOptionDialog'));
7
- export default function LaunchPairedEndBreakpointSplitViewPanel({ model, feature, viewType, }) {
6
+ export default function LaunchPairedEndBreakpointSplitViewPanel({ model, feature, }) {
8
7
  const session = getSession(model);
9
8
  const f1 = {
10
9
  uniqueId: feature.uniqueId,
@@ -38,10 +37,8 @@ export default function LaunchPairedEndBreakpointSplitViewPanel({ model, feature
38
37
  BreakendMultiLevelOptionDialog,
39
38
  {
40
39
  handleClose,
41
- model,
40
+ session,
42
41
  feature: new SimpleFeature({ ...f1, mate: f2 }),
43
- // @ts-expect-error
44
- viewType,
45
42
  view: model.view,
46
43
  assemblyName: model.view.displayedRegions[0].assemblyName,
47
44
  },
@@ -54,10 +51,8 @@ export default function LaunchPairedEndBreakpointSplitViewPanel({ model, feature
54
51
  BreakendSingleLevelOptionDialog,
55
52
  {
56
53
  handleClose,
57
- model,
54
+ session,
58
55
  feature: new SimpleFeature({ ...f1, mate: f2 }),
59
- // @ts-expect-error
60
- viewType,
61
56
  view: model.view,
62
57
  assemblyName: model.view.displayedRegions[0].assemblyName,
63
58
  },
@@ -1,9 +1,7 @@
1
1
  import React from 'react';
2
- import { SimpleFeatureSerialized } from '@jbrowse/core/util';
3
- import { ViewType } from '@jbrowse/core/pluggableElementTypes';
4
- import { AlignmentFeatureWidgetModel } from './stateModelFactory';
5
- export default function LaunchBreakpointSplitViewPanel({ model, feature, viewType, }: {
2
+ import type { AlignmentFeatureWidgetModel } from './stateModelFactory';
3
+ import type { SimpleFeatureSerialized } from '@jbrowse/core/util';
4
+ export default function LaunchBreakpointSplitViewPanel({ model, feature, }: {
6
5
  model: AlignmentFeatureWidgetModel;
7
6
  feature: SimpleFeatureSerialized;
8
- viewType: ViewType;
9
7
  }): React.JSX.Element | null;
@@ -1,18 +1,15 @@
1
1
  import React, { lazy, useEffect, useState } from 'react';
2
- import { Typography, Link } from '@mui/material';
3
- import { SimpleFeature, getSession, toLocale, } from '@jbrowse/core/util';
4
2
  import { ErrorMessage } from '@jbrowse/core/ui';
3
+ import { SimpleFeature, getSession, toLocale } from '@jbrowse/core/util';
4
+ import { Link, Typography } from '@mui/material';
5
5
  import { getSAFeatures } from './getSAFeatures';
6
- // lazies
7
6
  const BreakendMultiLevelOptionDialog = lazy(() => import('./BreakendMultiLevelOptionDialog'));
8
7
  const BreakendSingleLevelOptionDialog = lazy(() => import('./BreakendSingleLevelOptionDialog'));
9
- export default function LaunchBreakpointSplitViewPanel({ model, feature, viewType, }) {
10
- const session = getSession(model);
8
+ export default function LaunchBreakpointSplitViewPanel({ model, feature, }) {
11
9
  const { view } = model;
12
10
  const [res, setRes] = useState();
13
11
  const [error, setError] = useState();
14
12
  useEffect(() => {
15
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
16
13
  ;
17
14
  (async () => {
18
15
  try {
@@ -49,36 +46,40 @@ export default function LaunchBreakpointSplitViewPanel({ model, feature, viewTyp
49
46
  ":",
50
47
  toLocale(f2.strand === 1 ? f2.start : f2.end),
51
48
  ' ',
52
- React.createElement(Link, { href: "#", onClick: event => {
53
- event.preventDefault();
54
- session.queueDialog(handleClose => [
55
- BreakendMultiLevelOptionDialog,
56
- {
57
- handleClose,
58
- model,
59
- feature: new SimpleFeature({ ...f1, mate: f2 }),
60
- // @ts-expect-error
61
- viewType,
62
- view: model.view,
63
- assemblyName: model.view.displayedRegions[0].assemblyName,
64
- },
65
- ]);
66
- } }, "(top/bottom)"),
49
+ React.createElement(TopBottomSplitViewLink, { model: model, f1: f1, f2: f2 }),
67
50
  ' ',
68
- React.createElement(Link, { href: "#", onClick: event => {
69
- event.preventDefault();
70
- session.queueDialog(handleClose => [
71
- BreakendSingleLevelOptionDialog,
72
- {
73
- handleClose,
74
- model,
75
- feature: new SimpleFeature({ ...f1, mate: f2 }),
76
- // @ts-expect-error
77
- viewType,
78
- view: model.view,
79
- assemblyName: model.view.displayedRegions[0].assemblyName,
80
- },
81
- ]);
82
- } }, "(single row)")));
51
+ React.createElement(SideBySideViewLink, { model: model, f1: f1, f2: f2 })));
83
52
  })))) : null;
84
53
  }
54
+ function TopBottomSplitViewLink({ model, f1, f2, }) {
55
+ return (React.createElement(Link, { href: "#", onClick: event => {
56
+ event.preventDefault();
57
+ const session = getSession(model);
58
+ session.queueDialog(handleClose => [
59
+ BreakendMultiLevelOptionDialog,
60
+ {
61
+ handleClose,
62
+ session,
63
+ feature: new SimpleFeature({ ...f1, mate: f2 }),
64
+ view: model.view,
65
+ assemblyName: model.view.displayedRegions[0].assemblyName,
66
+ },
67
+ ]);
68
+ } }, "(top/bottom)"));
69
+ }
70
+ function SideBySideViewLink({ model, f1, f2, }) {
71
+ return (React.createElement(Link, { href: "#", onClick: event => {
72
+ event.preventDefault();
73
+ const session = getSession(model);
74
+ session.queueDialog(handleClose => [
75
+ BreakendSingleLevelOptionDialog,
76
+ {
77
+ handleClose,
78
+ session,
79
+ feature: new SimpleFeature({ ...f1, mate: f2 }),
80
+ view: model.view,
81
+ assemblyName: model.view.displayedRegions[0].assemblyName,
82
+ },
83
+ ]);
84
+ } }, "(single row)"));
85
+ }
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { SimpleFeatureSerialized } from '@jbrowse/core/util';
3
- import { AlignmentFeatureWidgetModel } from './stateModelFactory';
2
+ import type { AlignmentFeatureWidgetModel } from './stateModelFactory';
3
+ import type { SimpleFeatureSerialized } from '@jbrowse/core/util';
4
4
  export default function SuppAlignments(props: {
5
5
  model: AlignmentFeatureWidgetModel;
6
6
  feature: SimpleFeatureSerialized;
@@ -6,12 +6,11 @@ export default function SuppAlignments(props) {
6
6
  const { model, feature } = props;
7
7
  const session = getSession(model);
8
8
  const { pluginManager } = getEnv(session);
9
- let viewType;
9
+ let hasBreakendSplitView = false;
10
10
  try {
11
- viewType = pluginManager.getViewType('BreakpointSplitView');
11
+ hasBreakendSplitView = !!pluginManager.getViewType('BreakpointSplitView');
12
12
  }
13
13
  catch (e) {
14
- // ignore
15
14
  }
16
- return (React.createElement(BaseCard, { ...props, title: "Supplementary alignments" }, viewType ? (React.createElement(LaunchPairedEndBreakpointSplitViewPanel, { viewType: viewType, model: model, feature: feature })) : null));
15
+ return (React.createElement(BaseCard, { ...props, title: "Paired alignments" }, hasBreakendSplitView ? (React.createElement(LaunchPairedEndBreakpointSplitViewPanel, { model: model, feature: feature })) : null));
17
16
  }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { AlignmentFeatureWidgetModel } from './stateModelFactory';
2
+ import type { AlignmentFeatureWidgetModel } from './stateModelFactory';
3
3
  export default function PairLink({ locString, model, }: {
4
4
  locString: string;
5
5
  model: AlignmentFeatureWidgetModel;
@@ -4,7 +4,6 @@ import { navToLoc } from './util';
4
4
  export default function PairLink({ locString, model, }) {
5
5
  return (React.createElement(Link, { onClick: event => {
6
6
  event.preventDefault();
7
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
8
7
  navToLoc(locString, model);
9
8
  }, href: "#" }, locString));
10
9
  }
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { SimpleFeatureSerialized } from '@jbrowse/core/util';
3
- import { AlignmentFeatureWidgetModel } from './stateModelFactory';
2
+ import type { AlignmentFeatureWidgetModel } from './stateModelFactory';
3
+ import type { SimpleFeatureSerialized } from '@jbrowse/core/util';
4
4
  export default function SupplementaryAlignments(props: {
5
5
  tag: string;
6
6
  model: AlignmentFeatureWidgetModel;
@@ -1,20 +1,19 @@
1
1
  import React from 'react';
2
- import { getEnv, getSession } from '@jbrowse/core/util';
3
2
  import BaseCard from '@jbrowse/core/BaseFeatureWidget/BaseFeatureDetail/BaseCard';
4
- import SupplementaryAlignmentsLocStrings from './SupplementaryAlignmentsLocStrings';
3
+ import { getEnv, getSession } from '@jbrowse/core/util';
5
4
  import LaunchBreakpointSplitViewPanel from './LaunchSupplementaryAlignmentBreakpointSplitViewPanel';
5
+ import SupplementaryAlignmentsLocStrings from './SupplementaryAlignmentsLocStrings';
6
6
  export default function SupplementaryAlignments(props) {
7
7
  const { model, tag, feature } = props;
8
8
  const session = getSession(model);
9
9
  const { pluginManager } = getEnv(session);
10
- let viewType;
10
+ let hasBreakendSplitView = false;
11
11
  try {
12
- viewType = pluginManager.getViewType('BreakpointSplitView');
12
+ hasBreakendSplitView = !!pluginManager.getViewType('BreakpointSplitView');
13
13
  }
14
14
  catch (e) {
15
- // ignore
16
15
  }
17
16
  return (React.createElement(BaseCard, { ...props, title: "Supplementary alignments" },
18
17
  React.createElement(SupplementaryAlignmentsLocStrings, { model: model, tag: tag }),
19
- viewType ? (React.createElement(LaunchBreakpointSplitViewPanel, { viewType: viewType, model: model, feature: feature })) : null));
18
+ hasBreakendSplitView ? (React.createElement(LaunchBreakpointSplitViewPanel, { model: model, feature: feature })) : null));
20
19
  }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { AlignmentFeatureWidgetModel } from './stateModelFactory';
2
+ import type { AlignmentFeatureWidgetModel } from './stateModelFactory';
3
3
  export default function SupplementaryAlignmentsLocStrings({ tag, model, }: {
4
4
  tag: string;
5
5
  model: AlignmentFeatureWidgetModel;
@@ -1,6 +1,5 @@
1
1
  import React from 'react';
2
- import { Typography, Link } from '@mui/material';
3
- // locals
2
+ import { Link, Typography } from '@mui/material';
4
3
  import { getLengthOnRef } from '../MismatchParser';
5
4
  import { navToLoc } from './util';
6
5
  export default function SupplementaryAlignmentsLocStrings({ tag, model, }) {
@@ -21,12 +20,9 @@ export default function SupplementaryAlignmentsLocStrings({ tag, model, }) {
21
20
  const displayStart = start.toLocaleString('en-US');
22
21
  const displayEnd = end.toLocaleString('en-US');
23
22
  const displayString = `${saRef}:${displayStart}-${displayEnd} (${saStrand}) [${saLength}bp]`;
24
- return (
25
- /* biome-ignore lint/suspicious/noArrayIndexKey: */
26
- React.createElement("li", { key: `${locString}-${idx}` },
23
+ return (React.createElement("li", { key: `${locString}-${idx}` },
27
24
  React.createElement(Link, { href: "#", onClick: async (event) => {
28
25
  event.preventDefault();
29
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
30
26
  navToLoc(locString, model);
31
27
  } }, displayString)));
32
28
  }))));
@@ -1,5 +1,5 @@
1
- import { Feature } from '@jbrowse/core/util';
2
- import { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view';
1
+ import type { Feature } from '@jbrowse/core/util';
2
+ import type { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view';
3
3
  export interface ReducedFeature {
4
4
  refName: string;
5
5
  start: number;
@@ -1,5 +1,4 @@
1
1
  import { getSession } from '@jbrowse/core/util';
2
- // locals
3
2
  import { featurizeSA, getClip, getLengthSansClipping } from '../MismatchParser';
4
3
  export async function getSAFeatures({ view, feature, }) {
5
4
  var _a;
@@ -9,9 +8,6 @@ export async function getSAFeatures({ view, feature, }) {
9
8
  const SA = ((_a = feature.get('tags')) === null || _a === void 0 ? void 0 : _a.SA) || '';
10
9
  const readName = feature.get('name');
11
10
  const clipPos = getClip(cigar, 1);
12
- // get the canonical refname for the read because if the read.get('refName')
13
- // is chr1 and the actual fasta refName is 1 then no tracks can be opened on
14
- // the top panel of the linear read vs ref
15
11
  const assembly = await assemblyManager.waitForAssembly(view.assemblyNames[0]);
16
12
  if (!assembly) {
17
13
  throw new Error('assembly not found');
@@ -1,2 +1,2 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function AlignmentFeatureDetailsF(pluginManager: PluginManager): void;
@@ -1,5 +1,5 @@
1
- import { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view';
2
- import { ReducedFeature } from './getSAFeatures';
1
+ import type { ReducedFeature } from './getSAFeatures';
2
+ import type { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view';
3
3
  export declare function getBreakpointSplitView({ f1, f2, view, }: {
4
4
  f1: ReducedFeature;
5
5
  f2: ReducedFeature;
@@ -1,5 +1,5 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
2
- import { Instance } from 'mobx-state-tree';
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
+ import type { Instance } from 'mobx-state-tree';
3
3
  export declare function stateModelFactory(pluginManager: PluginManager): import("mobx-state-tree").IModelType<{
4
4
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
5
5
  type: import("mobx-state-tree").ISimpleType<"BaseFeatureWidget">;
@@ -1,5 +1,5 @@
1
- import { types } from 'mobx-state-tree';
2
1
  import { stateModelFactory as baseModelFactory } from '@jbrowse/core/BaseFeatureWidget';
2
+ import { types } from 'mobx-state-tree';
3
3
  export function stateModelFactory(pluginManager) {
4
4
  const baseModel = baseModelFactory(pluginManager);
5
5
  return types.compose(baseModel, types.model('AlignmentsFeatureWidget', {
@@ -17,7 +17,7 @@ export const tags = {
17
17
  E2: 'The 2nd most likely base calls',
18
18
  FI: 'The index of segment in the template',
19
19
  FS: 'Segment suffix',
20
- FZ: 'Flow signal intensities',
20
+ FZ: 'Flow stopToken intensities',
21
21
  GC: 'Reserved for backwards compatibility reasons',
22
22
  GQ: 'Reserved for backwards compatibility reasons',
23
23
  GS: 'Reserved for backwards compatibility reasons',
@@ -1,4 +1,4 @@
1
- import { IAnyStateTreeNode } from 'mobx-state-tree';
1
+ import type { IAnyStateTreeNode } from 'mobx-state-tree';
2
2
  export declare function getTag(tag: string, feat: {
3
3
  tags?: Record<string, unknown>;
4
4
  [key: string]: unknown;
@@ -1,4 +1,4 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function configSchemaFactory(pluginManager: PluginManager): import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{}, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
3
3
  name: {
4
4
  description: string;
@@ -1,15 +1,8 @@
1
1
  import { ConfigurationSchema } from '@jbrowse/core/configuration';
2
2
  import { createBaseTrackConfig } from '@jbrowse/core/pluggableElementTypes';
3
- /**
4
- * #config AlignmentsTrack
5
- * has very little config; most config and state logic is on the display
6
- */
7
- function x() { } // eslint-disable-line @typescript-eslint/no-unused-vars
3
+ function x() { }
8
4
  export default function configSchemaFactory(pluginManager) {
9
5
  return ConfigurationSchema('AlignmentsTrack', {}, {
10
- /**
11
- * #baseConfiguration
12
- */
13
6
  baseConfiguration: createBaseTrackConfig(pluginManager),
14
7
  });
15
8
  }
@@ -1,2 +1,2 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function register(pm: PluginManager): void;
@@ -11,9 +11,6 @@ export default function register(pm) {
11
11
  stateModel: createBaseTrackModel(pm, 'AlignmentsTrack', configSchema),
12
12
  });
13
13
  const linearAlignmentsDisplay = pm.getDisplayType('LinearAlignmentsDisplay');
14
- // Add LinearAlignmentsDisplay here so that it has priority over the other
15
- // linear displays (defaults to order the displays are added, but we have
16
- // to add the Pileup and SNPCoverage displays first).
17
14
  track.addDisplayType(linearAlignmentsDisplay);
18
15
  return track;
19
16
  });
@@ -1,8 +1,9 @@
1
1
  import { BamFile } from '@gmod/bam';
2
- import { BaseFeatureDataAdapter, BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
3
- import { Region } from '@jbrowse/core/util/types';
4
- import { Feature } from '@jbrowse/core/util';
5
- import { FilterBy } from '../shared/types';
2
+ import { BaseFeatureDataAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
3
+ import type { FilterBy } from '../shared/types';
4
+ import type { BaseOptions } from '@jbrowse/core/data_adapters/BaseAdapter';
5
+ import type { Feature } from '@jbrowse/core/util';
6
+ import type { Region } from '@jbrowse/core/util/types';
6
7
  interface Header {
7
8
  idToName: string[];
8
9
  nameToId: Record<string, number>;
@@ -23,7 +24,7 @@ export default class BamAdapter extends BaseFeatureDataAdapter {
23
24
  bam: BamFile;
24
25
  sequenceAdapter?: BaseFeatureDataAdapter;
25
26
  }>;
26
- getHeader(opts?: BaseOptions): Promise<string | undefined>;
27
+ getHeader(_opts?: BaseOptions): Promise<string | undefined>;
27
28
  private setupPre;
28
29
  setup(opts?: BaseOptions): Promise<Header>;
29
30
  getRefNames(opts?: BaseOptions): Promise<string[]>;
@@ -1,27 +1,21 @@
1
1
  import { BamFile } from '@gmod/bam';
2
- import { toArray } from 'rxjs/operators';
3
- import { firstValueFrom } from 'rxjs';
4
- // jbrowse
5
- import { BaseFeatureDataAdapter, } from '@jbrowse/core/data_adapters/BaseAdapter';
2
+ import { BaseFeatureDataAdapter } from '@jbrowse/core/data_adapters/BaseAdapter';
6
3
  import { bytesForRegions, updateStatus } from '@jbrowse/core/util';
4
+ import QuickLRU from '@jbrowse/core/util/QuickLRU';
7
5
  import { openLocation } from '@jbrowse/core/util/io';
8
6
  import { ObservableCreate } from '@jbrowse/core/util/rxjs';
9
- import QuickLRU from '@jbrowse/core/util/QuickLRU';
10
- // locals
7
+ import { checkStopToken } from '@jbrowse/core/util/stopToken';
8
+ import { firstValueFrom } from 'rxjs';
9
+ import { toArray } from 'rxjs/operators';
11
10
  import BamSlightlyLazyFeature from './BamSlightlyLazyFeature';
11
+ import { filterReadFlag, filterTagValue } from '../shared/util';
12
12
  export default class BamAdapter extends BaseFeatureDataAdapter {
13
13
  constructor() {
14
14
  super(...arguments);
15
- // used for avoiding re-creation new BamSlightlyLazyFeatures, keeping
16
- // mismatches in cache. at an average of 100kb-300kb, keeping even just 500
17
- // of these in memory is memory intensive but can reduce recomputation on
18
- // these objects
19
15
  this.ultraLongFeatureCache = new QuickLRU({
20
16
  maxSize: 500,
21
17
  });
22
18
  }
23
- // derived classes may not use the same configuration so a custom configure
24
- // method allows derived classes to override this behavior
25
19
  async configurePre() {
26
20
  const bamLocation = this.getConf('bamLocation');
27
21
  const location = this.getConf(['index', 'location']);
@@ -53,23 +47,20 @@ export default class BamAdapter extends BaseFeatureDataAdapter {
53
47
  }
54
48
  return this.configureP;
55
49
  }
56
- async getHeader(opts) {
50
+ async getHeader(_opts) {
57
51
  const { bam } = await this.configure();
58
- return bam.getHeaderText(opts);
52
+ return bam.getHeaderText();
59
53
  }
60
54
  async setupPre(opts) {
61
55
  const { statusCallback = () => { } } = opts || {};
62
56
  const { bam } = await this.configure();
63
57
  this.samHeader = await updateStatus('Downloading index', statusCallback, async () => {
64
- const samHeader = await bam.getHeader(opts);
65
- // use the @SQ lines in the header to figure out the
66
- // mapping between ref ref ID numbers and names
58
+ const samHeader = await bam.getHeader();
67
59
  const idToName = [];
68
60
  const nameToId = {};
69
61
  samHeader === null || samHeader === void 0 ? void 0 : samHeader.filter(l => l.tag === 'SQ').forEach((sqLine, refId) => {
70
62
  const SN = sqLine.data.find(item => item.tag === 'SN');
71
63
  if (SN) {
72
- // this is the ref name
73
64
  const refName = SN.value;
74
65
  nameToId[refName] = refId;
75
66
  idToName[refId] = refName;
@@ -127,11 +118,13 @@ export default class BamAdapter extends BaseFeatureDataAdapter {
127
118
  }
128
119
  getFeatures(region, opts) {
129
120
  const { refName, start, end, originalRefName } = region;
130
- const { signal, filterBy, statusCallback = () => { } } = opts || {};
121
+ const { stopToken, filterBy, statusCallback = () => { } } = opts || {};
131
122
  return ObservableCreate(async (observer) => {
132
123
  const { bam } = await this.configure();
133
124
  await this.setup(opts);
134
- const records = await updateStatus('Downloading alignments', statusCallback, () => bam.getRecordsForRange(refName, start, end, opts));
125
+ checkStopToken(stopToken);
126
+ const records = await updateStatus('Downloading alignments', statusCallback, () => bam.getRecordsForRange(refName, start, end));
127
+ checkStopToken(stopToken);
135
128
  await updateStatus('Processing alignments', statusCallback, async () => {
136
129
  const { flagInclude = 0, flagExclude = 0, tagFilter, readName, } = filterBy || {};
137
130
  for (const record of records) {
@@ -139,25 +132,16 @@ export default class BamAdapter extends BaseFeatureDataAdapter {
139
132
  if (!record.tags.MD) {
140
133
  ref = await this.seqFetch(originalRefName || refName, record.start, record.end);
141
134
  }
142
- const flags = record.flags;
143
- if ((flags & flagInclude) !== flagInclude && !(flags & flagExclude)) {
135
+ if (filterReadFlag(record.flags, flagInclude, flagExclude)) {
144
136
  continue;
145
137
  }
146
- if (tagFilter) {
147
- const readVal = record.tags[tagFilter.tag];
148
- const filterVal = tagFilter.value;
149
- if (filterVal === '*'
150
- ? readVal === undefined
151
- : `${readVal}` !== `${filterVal}`) {
152
- continue;
153
- }
138
+ if (tagFilter &&
139
+ filterTagValue(record.tags[tagFilter.tag], tagFilter.value)) {
140
+ continue;
154
141
  }
155
142
  if (readName && record.name !== readName) {
156
143
  continue;
157
144
  }
158
- // retrieve a feature from our feature cache if it is available, the
159
- // features in the cache have pre-computed mismatches objects that
160
- // can be re-used across blocks
161
145
  const ret = this.ultraLongFeatureCache.get(`${record.id}`);
162
146
  if (!ret) {
163
147
  const elt = new BamSlightlyLazyFeature(record, this, ref);
@@ -170,11 +154,10 @@ export default class BamAdapter extends BaseFeatureDataAdapter {
170
154
  }
171
155
  observer.complete();
172
156
  });
173
- }, signal);
157
+ });
174
158
  }
175
159
  async getMultiRegionFeatureDensityStats(regions, opts) {
176
160
  const { bam } = await this.configure();
177
- // this is a method to avoid calling on htsget adapters
178
161
  if (bam.index) {
179
162
  const bytes = await bytesForRegions(regions, bam);
180
163
  const fetchSizeLimit = this.getConf('fetchSizeLimit');
@@ -182,8 +165,7 @@ export default class BamAdapter extends BaseFeatureDataAdapter {
182
165
  }
183
166
  return super.getMultiRegionFeatureDensityStats(regions, opts);
184
167
  }
185
- freeResources( /* { region } */) { }
186
- // depends on setup being called before the BAM constructor
168
+ freeResources() { }
187
169
  refIdToName(refId) {
188
170
  var _a;
189
171
  return (_a = this.samHeader) === null || _a === void 0 ? void 0 : _a.idToName[refId];
@@ -1,6 +1,6 @@
1
- import { Feature, SimpleFeatureSerialized } from '@jbrowse/core/util/simpleFeature';
2
- import { BamRecord } from '@gmod/bam';
3
- import BamAdapter from './BamAdapter';
1
+ import type BamAdapter from './BamAdapter';
2
+ import type { BamRecord } from '@gmod/bam';
3
+ import type { Feature, SimpleFeatureSerialized } from '@jbrowse/core/util/simpleFeature';
4
4
  export default class BamSlightlyLazyFeature implements Feature {
5
5
  private record;
6
6
  private adapter;