@jbrowse/plugin-alignments 2.17.0 → 3.0.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 (471) hide show
  1. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -3
  2. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +25 -24
  3. package/dist/AlignmentsFeatureDetail/BreakendMultiLevelOptionDialog.js +0 -1
  4. package/dist/AlignmentsFeatureDetail/BreakendSingleLevelOptionDialog.js +0 -1
  5. package/dist/AlignmentsFeatureDetail/Flags.d.ts +1 -2
  6. package/dist/AlignmentsFeatureDetail/Flags.js +8 -10
  7. package/dist/AlignmentsFeatureDetail/Formatter.d.ts +1 -2
  8. package/dist/AlignmentsFeatureDetail/Formatter.js +11 -39
  9. package/dist/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.d.ts +4 -7
  10. package/dist/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.js +46 -54
  11. package/dist/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.d.ts +4 -7
  12. package/dist/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.js +58 -61
  13. package/dist/AlignmentsFeatureDetail/LinkedPairedAlignments.d.ts +3 -4
  14. package/dist/AlignmentsFeatureDetail/LinkedPairedAlignments.js +4 -5
  15. package/dist/AlignmentsFeatureDetail/PairLink.d.ts +2 -3
  16. package/dist/AlignmentsFeatureDetail/PairLink.js +3 -7
  17. package/dist/AlignmentsFeatureDetail/SupplementaryAlignments.d.ts +3 -4
  18. package/dist/AlignmentsFeatureDetail/SupplementaryAlignments.js +6 -9
  19. package/dist/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.d.ts +2 -3
  20. package/dist/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.js +21 -31
  21. package/dist/AlignmentsFeatureDetail/getSAFeatures.d.ts +2 -2
  22. package/dist/AlignmentsFeatureDetail/getSAFeatures.js +0 -4
  23. package/dist/AlignmentsFeatureDetail/index.d.ts +1 -1
  24. package/dist/AlignmentsFeatureDetail/index.js +17 -7
  25. package/dist/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +2 -2
  26. package/dist/AlignmentsFeatureDetail/stateModelFactory.d.ts +2 -2
  27. package/dist/AlignmentsFeatureDetail/stateModelFactory.js +1 -1
  28. package/dist/AlignmentsFeatureDetail/tagInfo.js +1 -1
  29. package/dist/AlignmentsFeatureDetail/util.d.ts +1 -1
  30. package/dist/AlignmentsTrack/configSchemaF.d.ts +1 -1
  31. package/dist/AlignmentsTrack/configSchemaF.js +1 -8
  32. package/dist/AlignmentsTrack/index.d.ts +1 -1
  33. package/dist/AlignmentsTrack/index.js +0 -3
  34. package/dist/BamAdapter/BamAdapter.d.ts +6 -5
  35. package/dist/BamAdapter/BamAdapter.js +21 -39
  36. package/dist/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -3
  37. package/dist/BamAdapter/BamSlightlyLazyFeature.js +0 -3
  38. package/dist/BamAdapter/configSchema.d.ts +0 -17
  39. package/dist/BamAdapter/configSchema.js +1 -22
  40. package/dist/BamAdapter/index.d.ts +1 -1
  41. package/dist/BamAdapter/index.js +17 -7
  42. package/dist/CramAdapter/CramAdapter.d.ts +6 -9
  43. package/dist/CramAdapter/CramAdapter.js +25 -43
  44. package/dist/CramAdapter/CramSlightlyLazyFeature.d.ts +3 -3
  45. package/dist/CramAdapter/CramSlightlyLazyFeature.js +0 -17
  46. package/dist/CramAdapter/CramTestAdapters.d.ts +3 -3
  47. package/dist/CramAdapter/CramTestAdapters.js +6 -6
  48. package/dist/CramAdapter/configSchema.d.ts +0 -14
  49. package/dist/CramAdapter/configSchema.js +1 -19
  50. package/dist/CramAdapter/index.d.ts +1 -1
  51. package/dist/CramAdapter/index.js +17 -8
  52. package/dist/CramAdapter/util.d.ts +2 -2
  53. package/dist/CramAdapter/util.js +1 -24
  54. package/dist/GuessAlignmentsTypes/index.d.ts +1 -1
  55. package/dist/GuessAlignmentsTypes/index.js +19 -34
  56. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +2 -2
  57. package/dist/HtsgetBamAdapter/configSchema.d.ts +0 -9
  58. package/dist/HtsgetBamAdapter/configSchema.js +1 -14
  59. package/dist/HtsgetBamAdapter/index.d.ts +1 -1
  60. package/dist/HtsgetBamAdapter/index.js +18 -8
  61. package/dist/LinearAlignmentsDisplay/alignmentsModel.d.ts +2 -5
  62. package/dist/LinearAlignmentsDisplay/alignmentsModel.js +1 -31
  63. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +2 -3
  64. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +10 -18
  65. package/dist/LinearAlignmentsDisplay/configSchema.d.ts +2 -16
  66. package/dist/LinearAlignmentsDisplay/configSchema.js +3 -20
  67. package/dist/LinearAlignmentsDisplay/index.d.ts +1 -1
  68. package/dist/LinearAlignmentsDisplay/index.js +1 -2
  69. package/dist/LinearAlignmentsDisplay/model.d.ts +7 -77
  70. package/dist/LinearAlignmentsDisplay/model.js +10 -85
  71. package/dist/LinearAlignmentsDisplay/util.d.ts +1 -1
  72. package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +52 -164
  73. package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +71 -145
  74. package/dist/LinearPileupDisplay/components/ColorByTagDialog.d.ts +1 -2
  75. package/dist/LinearPileupDisplay/components/ColorByTagDialog.js +12 -41
  76. package/dist/LinearPileupDisplay/components/GroupByDialog.d.ts +3 -4
  77. package/dist/LinearPileupDisplay/components/GroupByDialog.js +106 -92
  78. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -8
  79. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +3 -7
  80. package/dist/LinearPileupDisplay/components/SetFeatureHeightDialog.d.ts +1 -2
  81. package/dist/LinearPileupDisplay/components/SetFeatureHeightDialog.js +15 -44
  82. package/dist/LinearPileupDisplay/components/SetMaxHeightDialog.d.ts +1 -2
  83. package/dist/LinearPileupDisplay/components/SetMaxHeightDialog.js +12 -40
  84. package/dist/LinearPileupDisplay/components/SortByTagDialog.d.ts +1 -2
  85. package/dist/LinearPileupDisplay/components/SortByTagDialog.js +17 -46
  86. package/dist/LinearPileupDisplay/configSchema.d.ts +13 -16
  87. package/dist/LinearPileupDisplay/configSchema.js +12 -30
  88. package/dist/LinearPileupDisplay/index.d.ts +1 -1
  89. package/dist/LinearPileupDisplay/index.js +2 -2
  90. package/dist/LinearPileupDisplay/model.d.ts +123 -111
  91. package/dist/LinearPileupDisplay/model.js +29 -109
  92. package/dist/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -3
  93. package/dist/LinearReadArcsDisplay/components/ReactComponent.js +6 -33
  94. package/dist/LinearReadArcsDisplay/configSchema.d.ts +12 -20
  95. package/dist/LinearReadArcsDisplay/configSchema.js +8 -31
  96. package/dist/LinearReadArcsDisplay/drawFeats.d.ts +1 -1
  97. package/dist/LinearReadArcsDisplay/drawFeats.js +1 -9
  98. package/dist/LinearReadArcsDisplay/index.d.ts +1 -1
  99. package/dist/LinearReadArcsDisplay/index.js +18 -9
  100. package/dist/LinearReadArcsDisplay/model.d.ts +16 -94
  101. package/dist/LinearReadArcsDisplay/model.js +34 -111
  102. package/dist/LinearReadArcsDisplay/util.d.ts +1 -1
  103. package/dist/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -3
  104. package/dist/LinearReadCloudDisplay/components/ReactComponent.js +6 -33
  105. package/dist/LinearReadCloudDisplay/configSchema.d.ts +5 -17
  106. package/dist/LinearReadCloudDisplay/configSchema.js +3 -28
  107. package/dist/LinearReadCloudDisplay/drawFeats.d.ts +1 -1
  108. package/dist/LinearReadCloudDisplay/drawFeats.js +2 -2
  109. package/dist/LinearReadCloudDisplay/drawLongReadChains.d.ts +4 -4
  110. package/dist/LinearReadCloudDisplay/drawLongReadChains.js +1 -4
  111. package/dist/LinearReadCloudDisplay/drawPairChains.d.ts +4 -4
  112. package/dist/LinearReadCloudDisplay/drawPairChains.js +0 -3
  113. package/dist/LinearReadCloudDisplay/index.d.ts +1 -1
  114. package/dist/LinearReadCloudDisplay/index.js +18 -9
  115. package/dist/LinearReadCloudDisplay/model.d.ts +14 -56
  116. package/dist/LinearReadCloudDisplay/model.js +34 -75
  117. package/dist/LinearReadCloudDisplay/util.js +0 -1
  118. package/dist/LinearSNPCoverageDisplay/components/Tooltip.d.ts +2 -3
  119. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +16 -55
  120. package/dist/LinearSNPCoverageDisplay/configSchema.d.ts +17 -22
  121. package/dist/LinearSNPCoverageDisplay/configSchema.js +16 -32
  122. package/dist/LinearSNPCoverageDisplay/index.d.ts +1 -1
  123. package/dist/LinearSNPCoverageDisplay/index.js +1 -2
  124. package/dist/LinearSNPCoverageDisplay/model.d.ts +13 -54
  125. package/dist/LinearSNPCoverageDisplay/model.js +69 -159
  126. package/dist/MismatchParser/cigarToMismatches.d.ts +2 -3
  127. package/dist/MismatchParser/cigarToMismatches.js +4 -7
  128. package/dist/MismatchParser/getNextRefPos.js +0 -2
  129. package/dist/MismatchParser/index.d.ts +3 -4
  130. package/dist/MismatchParser/index.js +1 -9
  131. package/dist/MismatchParser/mdToMismatches.d.ts +2 -3
  132. package/dist/MismatchParser/mdToMismatches.js +0 -6
  133. package/dist/ModificationParser/index.d.ts +1 -1
  134. package/dist/ModificationParser/index.js +1 -18
  135. package/dist/PileupRPC/base.d.ts +2 -2
  136. package/dist/PileupRPC/base.js +0 -1
  137. package/dist/PileupRPC/index.d.ts +1 -1
  138. package/dist/PileupRPC/methods/GetGlobalValueForTag.d.ts +2 -3
  139. package/dist/PileupRPC/methods/GetGlobalValueForTag.js +1 -2
  140. package/dist/PileupRPC/methods/GetReducedFeatures.d.ts +2 -3
  141. package/dist/PileupRPC/methods/GetReducedFeatures.js +3 -5
  142. package/dist/PileupRPC/methods/GetVisibleModifications.d.ts +3 -4
  143. package/dist/PileupRPC/methods/GetVisibleModifications.js +1 -1
  144. package/dist/PileupRPC/util.d.ts +1 -1
  145. package/dist/PileupRenderer/PileupLayoutSession.d.ts +5 -5
  146. package/dist/PileupRenderer/PileupLayoutSession.js +2 -5
  147. package/dist/PileupRenderer/PileupRenderer.d.ts +14 -24
  148. package/dist/PileupRenderer/PileupRenderer.js +28 -23
  149. package/dist/PileupRenderer/colorBy.d.ts +2 -2
  150. package/dist/PileupRenderer/colorBy.js +0 -6
  151. package/dist/PileupRenderer/components/PileupRendering.d.ts +2 -3
  152. package/dist/PileupRenderer/components/PileupRendering.js +15 -43
  153. package/dist/PileupRenderer/configSchema.d.ts +5 -31
  154. package/dist/PileupRenderer/configSchema.js +6 -35
  155. package/dist/PileupRenderer/getAlignmentShapeColor.d.ts +2 -2
  156. package/dist/PileupRenderer/getAlignmentShapeColor.js +1 -6
  157. package/dist/PileupRenderer/index.d.ts +1 -1
  158. package/dist/PileupRenderer/index.js +1 -1
  159. package/dist/PileupRenderer/layoutFeature.d.ts +2 -2
  160. package/dist/PileupRenderer/layoutFeature.js +0 -1
  161. package/dist/PileupRenderer/layoutFeatures.d.ts +5 -2
  162. package/dist/PileupRenderer/layoutFeatures.js +6 -4
  163. package/dist/PileupRenderer/makeImageData.d.ts +3 -4
  164. package/dist/PileupRenderer/makeImageData.js +10 -2
  165. package/dist/PileupRenderer/renderAlignment.d.ts +3 -3
  166. package/dist/PileupRenderer/renderAlignment.js +3 -5
  167. package/dist/PileupRenderer/renderAlignmentShape.d.ts +3 -3
  168. package/dist/PileupRenderer/renderAlignmentShape.js +1 -1
  169. package/dist/PileupRenderer/renderMethylation.d.ts +4 -4
  170. package/dist/PileupRenderer/renderMethylation.js +0 -4
  171. package/dist/PileupRenderer/renderMismatches.d.ts +5 -4
  172. package/dist/PileupRenderer/renderMismatches.js +19 -25
  173. package/dist/PileupRenderer/renderModifications.d.ts +3 -3
  174. package/dist/PileupRenderer/renderModifications.js +1 -3
  175. package/dist/PileupRenderer/renderPerBaseLettering.d.ts +2 -2
  176. package/dist/PileupRenderer/renderPerBaseLettering.js +0 -1
  177. package/dist/PileupRenderer/renderPerBaseQuality.d.ts +2 -2
  178. package/dist/PileupRenderer/renderPerBaseQuality.js +2 -2
  179. package/dist/PileupRenderer/renderSoftClipping.d.ts +5 -5
  180. package/dist/PileupRenderer/renderSoftClipping.js +0 -4
  181. package/dist/PileupRenderer/sortUtil.d.ts +2 -2
  182. package/dist/PileupRenderer/sortUtil.js +1 -4
  183. package/dist/PileupRenderer/types.d.ts +26 -0
  184. package/dist/PileupRenderer/types.js +2 -0
  185. package/dist/PileupRenderer/util.d.ts +2 -2
  186. package/dist/PileupRenderer/util.js +1 -3
  187. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +4 -3
  188. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +4 -6
  189. package/dist/SNPCoverageAdapter/configSchema.d.ts +0 -4
  190. package/dist/SNPCoverageAdapter/configSchema.js +1 -8
  191. package/dist/SNPCoverageAdapter/generateCoverageBins.d.ts +4 -8
  192. package/dist/SNPCoverageAdapter/generateCoverageBins.js +25 -247
  193. package/dist/SNPCoverageAdapter/index.d.ts +1 -1
  194. package/dist/SNPCoverageAdapter/index.js +17 -7
  195. package/dist/SNPCoverageAdapter/processDepth.d.ts +8 -0
  196. package/dist/SNPCoverageAdapter/processDepth.js +38 -0
  197. package/dist/SNPCoverageAdapter/processMismatches.d.ts +9 -0
  198. package/dist/SNPCoverageAdapter/processMismatches.js +58 -0
  199. package/dist/SNPCoverageAdapter/processModifications.d.ts +10 -0
  200. package/dist/SNPCoverageAdapter/processModifications.js +49 -0
  201. package/dist/SNPCoverageAdapter/processReferenceCpGs.d.ts +9 -0
  202. package/dist/SNPCoverageAdapter/processReferenceCpGs.js +63 -0
  203. package/dist/SNPCoverageAdapter/util.d.ts +10 -0
  204. package/dist/SNPCoverageAdapter/util.js +41 -0
  205. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +2 -18
  206. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +35 -288
  207. package/dist/SNPCoverageRenderer/configSchema.d.ts +3 -18
  208. package/dist/SNPCoverageRenderer/configSchema.js +4 -22
  209. package/dist/SNPCoverageRenderer/index.d.ts +1 -1
  210. package/dist/SNPCoverageRenderer/index.js +2 -2
  211. package/dist/SNPCoverageRenderer/makeImage.d.ts +2 -0
  212. package/dist/SNPCoverageRenderer/makeImage.js +270 -0
  213. package/dist/SNPCoverageRenderer/types.d.ts +19 -0
  214. package/dist/SNPCoverageRenderer/types.js +2 -0
  215. package/dist/index.d.ts +2 -2
  216. package/dist/index.js +29 -19
  217. package/dist/shared/afterAttach.d.ts +1 -1
  218. package/dist/shared/afterAttach.js +0 -2
  219. package/dist/shared/color.d.ts +1 -1
  220. package/dist/shared/color.js +0 -8
  221. package/dist/shared/components/BaseDisplayComponent.d.ts +3 -4
  222. package/dist/shared/components/BaseDisplayComponent.js +13 -19
  223. package/dist/shared/components/FilterByTagDialog.d.ts +2 -3
  224. package/dist/shared/components/FilterByTagDialog.js +44 -94
  225. package/dist/shared/fetchChains.d.ts +2 -2
  226. package/dist/shared/fetchChains.js +1 -2
  227. package/dist/shared/getMaximumModificationAtEachPosition.d.ts +1 -1
  228. package/dist/shared/getMaximumModificationAtEachPosition.js +1 -2
  229. package/dist/shared/getUniqueModifications.d.ts +5 -5
  230. package/dist/shared/getUniqueTags.d.ts +4 -4
  231. package/dist/shared/renderSvgUtil.d.ts +1 -2
  232. package/dist/shared/renderSvgUtil.js +20 -19
  233. package/dist/shared/util.d.ts +11 -1
  234. package/dist/shared/util.js +27 -1
  235. package/dist/util.d.ts +4 -4
  236. package/dist/util.js +3 -9
  237. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -3
  238. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +8 -17
  239. package/esm/AlignmentsFeatureDetail/BreakendMultiLevelOptionDialog.js +0 -1
  240. package/esm/AlignmentsFeatureDetail/BreakendSingleLevelOptionDialog.js +0 -1
  241. package/esm/AlignmentsFeatureDetail/Flags.d.ts +1 -2
  242. package/esm/AlignmentsFeatureDetail/Flags.js +8 -10
  243. package/esm/AlignmentsFeatureDetail/Formatter.d.ts +1 -2
  244. package/esm/AlignmentsFeatureDetail/Formatter.js +11 -16
  245. package/esm/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.d.ts +4 -7
  246. package/esm/AlignmentsFeatureDetail/LaunchPairedEndBreakpointSplitViewPanel.js +30 -48
  247. package/esm/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.d.ts +4 -7
  248. package/esm/AlignmentsFeatureDetail/LaunchSupplementaryAlignmentBreakpointSplitViewPanel.js +41 -54
  249. package/esm/AlignmentsFeatureDetail/LinkedPairedAlignments.d.ts +3 -4
  250. package/esm/AlignmentsFeatureDetail/LinkedPairedAlignments.js +4 -5
  251. package/esm/AlignmentsFeatureDetail/PairLink.d.ts +2 -3
  252. package/esm/AlignmentsFeatureDetail/PairLink.js +3 -4
  253. package/esm/AlignmentsFeatureDetail/SupplementaryAlignments.d.ts +3 -4
  254. package/esm/AlignmentsFeatureDetail/SupplementaryAlignments.js +6 -9
  255. package/esm/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.d.ts +2 -3
  256. package/esm/AlignmentsFeatureDetail/SupplementaryAlignmentsLocStrings.js +22 -29
  257. package/esm/AlignmentsFeatureDetail/getSAFeatures.d.ts +2 -2
  258. package/esm/AlignmentsFeatureDetail/getSAFeatures.js +0 -4
  259. package/esm/AlignmentsFeatureDetail/index.d.ts +1 -1
  260. package/esm/AlignmentsFeatureDetail/launchBreakpointSplitView.d.ts +2 -2
  261. package/esm/AlignmentsFeatureDetail/stateModelFactory.d.ts +2 -2
  262. package/esm/AlignmentsFeatureDetail/stateModelFactory.js +1 -1
  263. package/esm/AlignmentsFeatureDetail/tagInfo.js +1 -1
  264. package/esm/AlignmentsFeatureDetail/util.d.ts +1 -1
  265. package/esm/AlignmentsTrack/configSchemaF.d.ts +1 -1
  266. package/esm/AlignmentsTrack/configSchemaF.js +1 -8
  267. package/esm/AlignmentsTrack/index.d.ts +1 -1
  268. package/esm/AlignmentsTrack/index.js +0 -3
  269. package/esm/BamAdapter/BamAdapter.d.ts +6 -5
  270. package/esm/BamAdapter/BamAdapter.js +19 -37
  271. package/esm/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -3
  272. package/esm/BamAdapter/BamSlightlyLazyFeature.js +0 -3
  273. package/esm/BamAdapter/configSchema.d.ts +0 -17
  274. package/esm/BamAdapter/configSchema.js +1 -22
  275. package/esm/BamAdapter/index.d.ts +1 -1
  276. package/esm/CramAdapter/CramAdapter.d.ts +6 -9
  277. package/esm/CramAdapter/CramAdapter.js +24 -42
  278. package/esm/CramAdapter/CramSlightlyLazyFeature.d.ts +3 -3
  279. package/esm/CramAdapter/CramSlightlyLazyFeature.js +0 -17
  280. package/esm/CramAdapter/CramTestAdapters.d.ts +3 -3
  281. package/esm/CramAdapter/CramTestAdapters.js +6 -6
  282. package/esm/CramAdapter/configSchema.d.ts +0 -14
  283. package/esm/CramAdapter/configSchema.js +1 -19
  284. package/esm/CramAdapter/index.d.ts +1 -1
  285. package/esm/CramAdapter/index.js +0 -1
  286. package/esm/CramAdapter/util.d.ts +2 -2
  287. package/esm/CramAdapter/util.js +1 -24
  288. package/esm/GuessAlignmentsTypes/index.d.ts +1 -1
  289. package/esm/GuessAlignmentsTypes/index.js +20 -35
  290. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +2 -2
  291. package/esm/HtsgetBamAdapter/configSchema.d.ts +0 -9
  292. package/esm/HtsgetBamAdapter/configSchema.js +1 -14
  293. package/esm/HtsgetBamAdapter/index.d.ts +1 -1
  294. package/esm/HtsgetBamAdapter/index.js +1 -1
  295. package/esm/LinearAlignmentsDisplay/alignmentsModel.d.ts +2 -5
  296. package/esm/LinearAlignmentsDisplay/alignmentsModel.js +1 -31
  297. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +2 -3
  298. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +10 -15
  299. package/esm/LinearAlignmentsDisplay/configSchema.d.ts +2 -16
  300. package/esm/LinearAlignmentsDisplay/configSchema.js +3 -20
  301. package/esm/LinearAlignmentsDisplay/index.d.ts +1 -1
  302. package/esm/LinearAlignmentsDisplay/index.js +1 -2
  303. package/esm/LinearAlignmentsDisplay/model.d.ts +7 -77
  304. package/esm/LinearAlignmentsDisplay/model.js +11 -86
  305. package/esm/LinearAlignmentsDisplay/util.d.ts +1 -1
  306. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +52 -164
  307. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +56 -140
  308. package/esm/LinearPileupDisplay/components/ColorByTagDialog.d.ts +1 -2
  309. package/esm/LinearPileupDisplay/components/ColorByTagDialog.js +12 -18
  310. package/esm/LinearPileupDisplay/components/GroupByDialog.d.ts +3 -4
  311. package/esm/LinearPileupDisplay/components/GroupByDialog.js +106 -69
  312. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -8
  313. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +3 -4
  314. package/esm/LinearPileupDisplay/components/SetFeatureHeightDialog.d.ts +1 -2
  315. package/esm/LinearPileupDisplay/components/SetFeatureHeightDialog.js +15 -21
  316. package/esm/LinearPileupDisplay/components/SetMaxHeightDialog.d.ts +1 -2
  317. package/esm/LinearPileupDisplay/components/SetMaxHeightDialog.js +12 -17
  318. package/esm/LinearPileupDisplay/components/SortByTagDialog.d.ts +1 -2
  319. package/esm/LinearPileupDisplay/components/SortByTagDialog.js +17 -23
  320. package/esm/LinearPileupDisplay/configSchema.d.ts +13 -16
  321. package/esm/LinearPileupDisplay/configSchema.js +12 -30
  322. package/esm/LinearPileupDisplay/index.d.ts +1 -1
  323. package/esm/LinearPileupDisplay/index.js +2 -2
  324. package/esm/LinearPileupDisplay/model.d.ts +123 -111
  325. package/esm/LinearPileupDisplay/model.js +13 -103
  326. package/esm/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -3
  327. package/esm/LinearReadArcsDisplay/components/ReactComponent.js +6 -10
  328. package/esm/LinearReadArcsDisplay/configSchema.d.ts +12 -20
  329. package/esm/LinearReadArcsDisplay/configSchema.js +8 -31
  330. package/esm/LinearReadArcsDisplay/drawFeats.d.ts +1 -1
  331. package/esm/LinearReadArcsDisplay/drawFeats.js +1 -9
  332. package/esm/LinearReadArcsDisplay/index.d.ts +1 -1
  333. package/esm/LinearReadArcsDisplay/index.js +1 -2
  334. package/esm/LinearReadArcsDisplay/model.d.ts +16 -94
  335. package/esm/LinearReadArcsDisplay/model.js +18 -105
  336. package/esm/LinearReadArcsDisplay/util.d.ts +1 -1
  337. package/esm/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -3
  338. package/esm/LinearReadCloudDisplay/components/ReactComponent.js +6 -10
  339. package/esm/LinearReadCloudDisplay/configSchema.d.ts +5 -17
  340. package/esm/LinearReadCloudDisplay/configSchema.js +3 -28
  341. package/esm/LinearReadCloudDisplay/drawFeats.d.ts +1 -1
  342. package/esm/LinearReadCloudDisplay/drawFeats.js +2 -2
  343. package/esm/LinearReadCloudDisplay/drawLongReadChains.d.ts +4 -4
  344. package/esm/LinearReadCloudDisplay/drawLongReadChains.js +1 -4
  345. package/esm/LinearReadCloudDisplay/drawPairChains.d.ts +4 -4
  346. package/esm/LinearReadCloudDisplay/drawPairChains.js +0 -3
  347. package/esm/LinearReadCloudDisplay/index.d.ts +1 -1
  348. package/esm/LinearReadCloudDisplay/index.js +1 -2
  349. package/esm/LinearReadCloudDisplay/model.d.ts +14 -56
  350. package/esm/LinearReadCloudDisplay/model.js +17 -68
  351. package/esm/LinearReadCloudDisplay/util.js +0 -1
  352. package/esm/LinearSNPCoverageDisplay/components/Tooltip.d.ts +2 -3
  353. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +16 -52
  354. package/esm/LinearSNPCoverageDisplay/configSchema.d.ts +17 -22
  355. package/esm/LinearSNPCoverageDisplay/configSchema.js +16 -32
  356. package/esm/LinearSNPCoverageDisplay/index.d.ts +1 -1
  357. package/esm/LinearSNPCoverageDisplay/index.js +1 -2
  358. package/esm/LinearSNPCoverageDisplay/model.d.ts +13 -54
  359. package/esm/LinearSNPCoverageDisplay/model.js +53 -153
  360. package/esm/MismatchParser/cigarToMismatches.d.ts +2 -3
  361. package/esm/MismatchParser/cigarToMismatches.js +4 -7
  362. package/esm/MismatchParser/getNextRefPos.js +0 -2
  363. package/esm/MismatchParser/index.d.ts +3 -4
  364. package/esm/MismatchParser/index.js +1 -9
  365. package/esm/MismatchParser/mdToMismatches.d.ts +2 -3
  366. package/esm/MismatchParser/mdToMismatches.js +0 -6
  367. package/esm/ModificationParser/index.d.ts +1 -1
  368. package/esm/ModificationParser/index.js +1 -18
  369. package/esm/PileupRPC/base.d.ts +2 -2
  370. package/esm/PileupRPC/base.js +0 -1
  371. package/esm/PileupRPC/index.d.ts +1 -1
  372. package/esm/PileupRPC/index.js +1 -1
  373. package/esm/PileupRPC/methods/GetGlobalValueForTag.d.ts +2 -3
  374. package/esm/PileupRPC/methods/GetGlobalValueForTag.js +1 -2
  375. package/esm/PileupRPC/methods/GetReducedFeatures.d.ts +2 -3
  376. package/esm/PileupRPC/methods/GetReducedFeatures.js +3 -5
  377. package/esm/PileupRPC/methods/GetVisibleModifications.d.ts +3 -4
  378. package/esm/PileupRPC/methods/GetVisibleModifications.js +1 -1
  379. package/esm/PileupRPC/util.d.ts +1 -1
  380. package/esm/PileupRenderer/PileupLayoutSession.d.ts +5 -5
  381. package/esm/PileupRenderer/PileupLayoutSession.js +2 -5
  382. package/esm/PileupRenderer/PileupRenderer.d.ts +14 -24
  383. package/esm/PileupRenderer/PileupRenderer.js +12 -17
  384. package/esm/PileupRenderer/colorBy.d.ts +2 -2
  385. package/esm/PileupRenderer/colorBy.js +1 -7
  386. package/esm/PileupRenderer/components/PileupRendering.d.ts +2 -3
  387. package/esm/PileupRenderer/components/PileupRendering.js +15 -20
  388. package/esm/PileupRenderer/configSchema.d.ts +5 -31
  389. package/esm/PileupRenderer/configSchema.js +6 -35
  390. package/esm/PileupRenderer/getAlignmentShapeColor.d.ts +2 -2
  391. package/esm/PileupRenderer/getAlignmentShapeColor.js +2 -7
  392. package/esm/PileupRenderer/index.d.ts +1 -1
  393. package/esm/PileupRenderer/index.js +1 -1
  394. package/esm/PileupRenderer/layoutFeature.d.ts +2 -2
  395. package/esm/PileupRenderer/layoutFeature.js +0 -1
  396. package/esm/PileupRenderer/layoutFeatures.d.ts +5 -2
  397. package/esm/PileupRenderer/layoutFeatures.js +7 -5
  398. package/esm/PileupRenderer/makeImageData.d.ts +3 -4
  399. package/esm/PileupRenderer/makeImageData.js +10 -2
  400. package/esm/PileupRenderer/renderAlignment.d.ts +3 -3
  401. package/esm/PileupRenderer/renderAlignment.js +3 -5
  402. package/esm/PileupRenderer/renderAlignmentShape.d.ts +3 -3
  403. package/esm/PileupRenderer/renderAlignmentShape.js +1 -1
  404. package/esm/PileupRenderer/renderMethylation.d.ts +4 -4
  405. package/esm/PileupRenderer/renderMethylation.js +0 -4
  406. package/esm/PileupRenderer/renderMismatches.d.ts +5 -4
  407. package/esm/PileupRenderer/renderMismatches.js +19 -25
  408. package/esm/PileupRenderer/renderModifications.d.ts +3 -3
  409. package/esm/PileupRenderer/renderModifications.js +1 -3
  410. package/esm/PileupRenderer/renderPerBaseLettering.d.ts +2 -2
  411. package/esm/PileupRenderer/renderPerBaseLettering.js +0 -1
  412. package/esm/PileupRenderer/renderPerBaseQuality.d.ts +2 -2
  413. package/esm/PileupRenderer/renderPerBaseQuality.js +2 -2
  414. package/esm/PileupRenderer/renderSoftClipping.d.ts +5 -5
  415. package/esm/PileupRenderer/renderSoftClipping.js +1 -5
  416. package/esm/PileupRenderer/sortUtil.d.ts +2 -2
  417. package/esm/PileupRenderer/sortUtil.js +1 -4
  418. package/esm/PileupRenderer/types.d.ts +26 -0
  419. package/esm/PileupRenderer/types.js +1 -0
  420. package/esm/PileupRenderer/util.d.ts +2 -2
  421. package/esm/PileupRenderer/util.js +1 -3
  422. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +4 -3
  423. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +5 -7
  424. package/esm/SNPCoverageAdapter/configSchema.d.ts +0 -4
  425. package/esm/SNPCoverageAdapter/configSchema.js +1 -8
  426. package/esm/SNPCoverageAdapter/generateCoverageBins.d.ts +4 -8
  427. package/esm/SNPCoverageAdapter/generateCoverageBins.js +24 -246
  428. package/esm/SNPCoverageAdapter/index.d.ts +1 -1
  429. package/esm/SNPCoverageAdapter/processDepth.d.ts +8 -0
  430. package/esm/SNPCoverageAdapter/processDepth.js +35 -0
  431. package/esm/SNPCoverageAdapter/processMismatches.d.ts +9 -0
  432. package/esm/SNPCoverageAdapter/processMismatches.js +55 -0
  433. package/esm/SNPCoverageAdapter/processModifications.d.ts +10 -0
  434. package/esm/SNPCoverageAdapter/processModifications.js +46 -0
  435. package/esm/SNPCoverageAdapter/processReferenceCpGs.d.ts +9 -0
  436. package/esm/SNPCoverageAdapter/processReferenceCpGs.js +60 -0
  437. package/esm/SNPCoverageAdapter/util.d.ts +10 -0
  438. package/esm/SNPCoverageAdapter/util.js +35 -0
  439. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +2 -18
  440. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +3 -289
  441. package/esm/SNPCoverageRenderer/configSchema.d.ts +3 -18
  442. package/esm/SNPCoverageRenderer/configSchema.js +4 -22
  443. package/esm/SNPCoverageRenderer/index.d.ts +1 -1
  444. package/esm/SNPCoverageRenderer/index.js +2 -2
  445. package/esm/SNPCoverageRenderer/makeImage.d.ts +2 -0
  446. package/esm/SNPCoverageRenderer/makeImage.js +267 -0
  447. package/esm/SNPCoverageRenderer/types.d.ts +19 -0
  448. package/esm/SNPCoverageRenderer/types.js +1 -0
  449. package/esm/index.d.ts +2 -2
  450. package/esm/index.js +10 -10
  451. package/esm/shared/afterAttach.d.ts +1 -1
  452. package/esm/shared/afterAttach.js +0 -2
  453. package/esm/shared/color.d.ts +1 -1
  454. package/esm/shared/color.js +0 -8
  455. package/esm/shared/components/BaseDisplayComponent.d.ts +3 -4
  456. package/esm/shared/components/BaseDisplayComponent.js +13 -16
  457. package/esm/shared/components/FilterByTagDialog.d.ts +2 -3
  458. package/esm/shared/components/FilterByTagDialog.js +44 -71
  459. package/esm/shared/fetchChains.d.ts +2 -2
  460. package/esm/shared/fetchChains.js +1 -2
  461. package/esm/shared/getMaximumModificationAtEachPosition.d.ts +1 -1
  462. package/esm/shared/getMaximumModificationAtEachPosition.js +1 -2
  463. package/esm/shared/getUniqueModifications.d.ts +5 -5
  464. package/esm/shared/getUniqueTags.d.ts +4 -4
  465. package/esm/shared/renderSvgUtil.d.ts +1 -2
  466. package/esm/shared/renderSvgUtil.js +3 -9
  467. package/esm/shared/util.d.ts +11 -1
  468. package/esm/shared/util.js +24 -0
  469. package/esm/util.d.ts +4 -4
  470. package/esm/util.js +3 -9
  471. package/package.json +6 -7
@@ -11,8 +11,8 @@ exports.getLengthSansClipping = getLengthSansClipping;
11
11
  exports.getClip = getClip;
12
12
  exports.getTag = getTag;
13
13
  exports.featurizeSA = featurizeSA;
14
- const mdToMismatches_1 = require("./mdToMismatches");
15
14
  const cigarToMismatches_1 = require("./cigarToMismatches");
15
+ const mdToMismatches_1 = require("./mdToMismatches");
16
16
  const cigarRegex = new RegExp(/([MIDNSHPX=])/);
17
17
  const startClip = new RegExp(/(\d+)[SH]$/);
18
18
  const endClip = new RegExp(/^(\d+)([SH])/);
@@ -22,11 +22,9 @@ function parseCigar(cigar = '') {
22
22
  function getMismatches(cigar, md, seq, ref, qual) {
23
23
  let mismatches = [];
24
24
  const ops = parseCigar(cigar);
25
- // parse the CIGAR tag if it has one
26
25
  if (cigar) {
27
26
  mismatches = mismatches.concat((0, cigarToMismatches_1.cigarToMismatches)(ops, seq, ref, qual));
28
27
  }
29
- // now let's look for CRAM or MD mismatches
30
28
  if (md && seq) {
31
29
  mismatches = mismatches.concat((0, mdToMismatches_1.mdToMismatches)(md, ops, mismatches, seq, qual));
32
30
  }
@@ -98,12 +96,6 @@ function getClip(cigar, strand) {
98
96
  function getTag(feature, tag) {
99
97
  return feature.get('tags')[tag];
100
98
  }
101
- // produces a list of "feature-like" object from parsing supplementary
102
- // alignments in the SA tag
103
- //
104
- // @param normalize - used specifically in the linear-read-vs-ref context, it
105
- // flips features around relative to the original feature. other contexts of
106
- // usage can keep this false
107
99
  function featurizeSA(SA, id, strand, readName, normalize) {
108
100
  return ((SA === null || SA === void 0 ? void 0 : SA.split(';').filter(aln => !!aln).map((aln, index) => {
109
101
  const ret = aln.split(',');
@@ -1,3 +1,2 @@
1
- import { Mismatch } from '../shared/types';
2
- import { Buffer } from 'buffer';
3
- export declare function mdToMismatches(mdstring: string, ops: string[], cigarMismatches: Mismatch[], seq: string, qual?: Buffer | number[] | null): Mismatch[];
1
+ import type { Mismatch } from '../shared/types';
2
+ export declare function mdToMismatches(mdstring: string, ops: string[], cigarMismatches: Mismatch[], seq: string, qual?: Uint8Array): Mismatch[];
@@ -10,11 +10,8 @@ function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
10
10
  let lastSkipPos = 0;
11
11
  const mismatchRecords = [];
12
12
  const skips = cigarMismatches.filter(cigar => cigar.type === 'skip');
13
- // convert a position on the reference sequence to a position on the template
14
- // sequence, taking into account hard and soft clipping of reads
15
13
  function nextRecord() {
16
14
  mismatchRecords.push(curr);
17
- // get a new mismatch record ready
18
15
  curr = {
19
16
  start: curr.start + curr.length,
20
17
  length: 0,
@@ -43,7 +40,6 @@ function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
43
40
  lastRefOffset = refOffset;
44
41
  return templateOffset - (refOffset - refCoord);
45
42
  }
46
- // now actually parse the MD string
47
43
  const md = mdstring.match(mdRegex) || [];
48
44
  for (const token of md) {
49
45
  const num = +token;
@@ -54,8 +50,6 @@ function mdToMismatches(mdstring, ops, cigarMismatches, seq, qual) {
54
50
  curr.start += token.length - 1;
55
51
  }
56
52
  else {
57
- // mismatch
58
- // eslint-disable-next-line @typescript-eslint/prefer-for-of
59
53
  for (let j = 0; j < token.length; j += 1) {
60
54
  curr.length = 1;
61
55
  while (lastSkipPos < skips.length) {
@@ -1,4 +1,4 @@
1
- import { Feature } from '@jbrowse/core/util';
1
+ import type { Feature } from '@jbrowse/core/util';
2
2
  export declare function getModProbabilities(feature: Feature): number[] | undefined;
3
3
  export declare function getModPositions(mm: string, fseq: string, fstrand: number): {
4
4
  type: string;
@@ -5,17 +5,9 @@ exports.getModPositions = getModPositions;
5
5
  exports.getModTypes = getModTypes;
6
6
  exports.getMethBins = getMethBins;
7
7
  const util_1 = require("@jbrowse/core/util");
8
- const util_2 = require("../util");
9
8
  const MismatchParser_1 = require("../MismatchParser");
9
+ const util_2 = require("../util");
10
10
  const modificationRegex = new RegExp(/([A-Z])([-+])([^,.?]+)([.?])?/);
11
- // ML stores probabilities as array of numerics and MP is scaled phred scores
12
- // https://github.com/samtools/hts-specs/pull/418/files#diff-e765c6479316309f56b636f88189cdde8c40b854c7bdcce9ee7fe87a4e76febcR596
13
- //
14
- // if we have ML or Ml, it is an 8bit probability, divide by 255
15
- //
16
- // if we have MP or Mp it is phred scaled ASCII, which can go up to 90 but has
17
- // very high likelihood basecalls at that point, we really only care about low
18
- // qual calls <20 approx
19
11
  function getModProbabilities(feature) {
20
12
  var _a;
21
13
  const m = (0, util_2.getTagAlt)(feature, 'ML', 'Ml') || [];
@@ -29,15 +21,11 @@ function getModPositions(mm, fseq, fstrand) {
29
21
  const result = [];
30
22
  for (const mod of mods) {
31
23
  const [basemod, ...skips] = mod.split(',');
32
- // regexes based on parse_mm.pl from hts-specs
33
- // https://github.com/samtools/hts-specs/blob/master/test/SAMtags/parse_mm.pl
34
24
  const matches = modificationRegex.exec(basemod);
35
25
  if (!matches) {
36
26
  throw new Error('bad format for MM tag');
37
27
  }
38
28
  const [, base, strand, typestr] = matches;
39
- // can be a multi e.g. C+mh for both meth (m) and hydroxymeth (h) so split,
40
- // and they can also be chemical codes (ChEBI) e.g. C+16061
41
29
  const types = typestr.split(/(\d+|.)/).filter(f => !!f);
42
30
  if (strand === '-') {
43
31
  console.warn('unsupported negative strand modifications');
@@ -48,7 +36,6 @@ function getModPositions(mm, fseq, fstrand) {
48
36
  strand: strand,
49
37
  });
50
38
  }
51
- // this logic based on parse_mm.pl from hts-specs
52
39
  for (const type of types) {
53
40
  let i = 0;
54
41
  const positions = [];
@@ -63,8 +50,6 @@ function getModPositions(mm, fseq, fstrand) {
63
50
  if (fstrand === -1) {
64
51
  const pos = seq.length - i;
65
52
  if (pos >= 0) {
66
- // avoid negative-number-positions in array, seen in #4629 cause
67
- // unknown, could warrant some further investigation
68
53
  positions.unshift(pos);
69
54
  }
70
55
  }
@@ -93,8 +78,6 @@ function getModTypes(mm) {
93
78
  throw new Error('bad format for MM tag');
94
79
  }
95
80
  const [, base, strand, typestr] = matches;
96
- // can be a multi e.g. C+mh for both meth (m) and hydroxymeth (h) so
97
- // split, and they can also be chemical codes (ChEBI) e.g. C+16061
98
81
  return typestr
99
82
  .split(/(\d+|.)/)
100
83
  .filter(f => !!f)
@@ -1,8 +1,8 @@
1
1
  import RpcMethodType from '@jbrowse/core/pluggableElementTypes/RpcMethodType';
2
- import { RenderArgs } from '@jbrowse/core/rpc/coreRpcMethods';
2
+ import type { RenderArgs } from '@jbrowse/core/rpc/coreRpcMethods';
3
3
  export default abstract class PileupBaseRPC extends RpcMethodType {
4
4
  serializeArguments(args: RenderArgs & {
5
- signal?: AbortSignal;
5
+ stopToken?: string;
6
6
  statusCallback?: (arg: string) => void;
7
7
  }, rpcDriver: string): Promise<Record<string, unknown>>;
8
8
  }
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const RpcMethodType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/RpcMethodType"));
7
7
  const util_1 = require("@jbrowse/core/util");
8
- // specialized get features to return limited data about alignments
9
8
  class PileupBaseRPC extends RpcMethodType_1.default {
10
9
  async serializeArguments(args, rpcDriver) {
11
10
  var _a;
@@ -1,2 +1,2 @@
1
- import PluginManager from '@jbrowse/core/PluginManager';
1
+ import type PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function PileupRPCMethodsF(pm: PluginManager): void;
@@ -1,11 +1,10 @@
1
- import { Region } from '@jbrowse/core/util';
2
- import { RemoteAbortSignal } from '@jbrowse/core/rpc/remoteAbortSignals';
3
1
  import PileupBaseRPC from '../base';
2
+ import type { Region } from '@jbrowse/core/util';
4
3
  export default class PileupGetGlobalValueForTag extends PileupBaseRPC {
5
4
  name: string;
6
5
  execute(args: {
7
6
  adapterConfig: Record<string, unknown>;
8
- signal?: RemoteAbortSignal;
7
+ stopToken?: string;
9
8
  headers?: Record<string, string>;
10
9
  regions: Region[];
11
10
  sessionId: string;
@@ -4,9 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const dataAdapterCache_1 = require("@jbrowse/core/data_adapters/dataAdapterCache");
7
- const operators_1 = require("rxjs/operators");
8
7
  const rxjs_1 = require("rxjs");
9
- // locals
8
+ const operators_1 = require("rxjs/operators");
10
9
  const base_1 = __importDefault(require("../base"));
11
10
  class PileupGetGlobalValueForTag extends base_1.default {
12
11
  constructor() {
@@ -1,11 +1,10 @@
1
- import { Region } from '@jbrowse/core/util';
2
- import { RemoteAbortSignal } from '@jbrowse/core/rpc/remoteAbortSignals';
3
1
  import PileupBaseRPC from '../base';
2
+ import type { Region } from '@jbrowse/core/util';
4
3
  export default class PileupGetReducedFeatures extends PileupBaseRPC {
5
4
  name: string;
6
5
  execute(args: {
7
6
  adapterConfig: Record<string, unknown>;
8
- signal?: RemoteAbortSignal;
7
+ stopToken?: string;
9
8
  headers?: Record<string, string>;
10
9
  regions: Region[];
11
10
  sessionId: string;
@@ -5,13 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const dataAdapterCache_1 = require("@jbrowse/core/data_adapters/dataAdapterCache");
7
7
  const util_1 = require("@jbrowse/core/util");
8
- const operators_1 = require("rxjs/operators");
9
8
  const rxjs_1 = require("rxjs");
10
- // locals
11
- const util_2 = require("../util");
12
- const base_1 = __importDefault(require("../base"));
9
+ const operators_1 = require("rxjs/operators");
13
10
  const MismatchParser_1 = require("../../MismatchParser");
14
- // specialized get features to return limited data about alignments
11
+ const base_1 = __importDefault(require("../base"));
12
+ const util_2 = require("../util");
15
13
  class PileupGetReducedFeatures extends base_1.default {
16
14
  constructor() {
17
15
  super(...arguments);
@@ -1,12 +1,11 @@
1
- import { RemoteAbortSignal } from '@jbrowse/core/rpc/remoteAbortSignals';
2
- import { Region } from '@jbrowse/core/util';
3
- import { ModificationType } from '../../shared/types';
4
1
  import PileupBaseRPC from '../base';
2
+ import type { ModificationType } from '../../shared/types';
3
+ import type { Region } from '@jbrowse/core/util';
5
4
  export default class PileupGetVisibleModifications extends PileupBaseRPC {
6
5
  name: string;
7
6
  execute(args: {
8
7
  adapterConfig: Record<string, unknown>;
9
- signal?: RemoteAbortSignal;
8
+ stopToken?: string;
10
9
  headers?: Record<string, string>;
11
10
  regions: Region[];
12
11
  sessionId: string;
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const dataAdapterCache_1 = require("@jbrowse/core/data_adapters/dataAdapterCache");
7
- const operators_1 = require("rxjs/operators");
8
7
  const rxjs_1 = require("rxjs");
8
+ const operators_1 = require("rxjs/operators");
9
9
  const ModificationParser_1 = require("../../ModificationParser");
10
10
  const util_1 = require("../../util");
11
11
  const base_1 = __importDefault(require("../base"));
@@ -1,4 +1,4 @@
1
- import { ReducedFeature } from '../shared/fetchChains';
1
+ import type { ReducedFeature } from '../shared/fetchChains';
2
2
  export declare function getInsertSizeStats(features: ReducedFeature[]): {
3
3
  upper: number;
4
4
  lower: number;
@@ -1,9 +1,9 @@
1
1
  import { LayoutSession } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
2
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
3
- import SerializableFilterChain from '@jbrowse/core/pluggableElementTypes/renderers/util/serializableFilterChain';
4
- import GranularRectLayout from '@jbrowse/core/util/layouts/GranularRectLayout';
5
- import MultiLayout from '@jbrowse/core/util/layouts/MultiLayout';
6
- import { FilterBy, SortedBy } from '../shared/types';
2
+ import type { FilterBy, SortedBy } from '../shared/types';
3
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
4
+ import type SerializableFilterChain from '@jbrowse/core/pluggableElementTypes/renderers/util/serializableFilterChain';
5
+ import type GranularRectLayout from '@jbrowse/core/util/layouts/GranularRectLayout';
6
+ import type MultiLayout from '@jbrowse/core/util/layouts/MultiLayout';
7
7
  export interface PileupLayoutSessionProps {
8
8
  config: AnyConfigurationModel;
9
9
  bpPerPx: number;
@@ -4,12 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.PileupLayoutSession = void 0;
7
- const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
8
- const BoxRendererType_1 = require("@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType");
9
7
  const configuration_1 = require("@jbrowse/core/configuration");
10
- // The pileup layout session adds
11
- // - sorting and revealing soft clip changes the layout of pileup renderer
12
- // - extra conditions to see if cached layout is valid
8
+ const BoxRendererType_1 = require("@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType");
9
+ const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
13
10
  class PileupLayoutSession extends BoxRendererType_1.LayoutSession {
14
11
  constructor(args) {
15
12
  super(args);
@@ -1,29 +1,16 @@
1
- import BoxRendererType, { RenderArgsDeserialized as BoxRenderArgsDeserialized } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
2
- import { Feature, Region } from '@jbrowse/core/util';
3
- import { BaseLayout } from '@jbrowse/core/util/layouts/BaseLayout';
4
- import { PileupLayoutSession, PileupLayoutSessionProps } from './PileupLayoutSession';
5
- import { ColorBy, ModificationTypeWithColor, SortedBy } from '../shared/types';
6
- export interface RenderArgsDeserialized extends BoxRenderArgsDeserialized {
7
- colorBy?: ColorBy;
8
- colorTagMap?: Record<string, string>;
9
- visibleModifications?: Record<string, ModificationTypeWithColor>;
10
- sortedBy?: SortedBy;
11
- showSoftClip: boolean;
12
- highResolutionScaling: number;
13
- }
14
- export interface RenderArgsDeserializedWithFeaturesAndLayout extends RenderArgsDeserialized {
15
- features: Map<string, Feature>;
16
- layout: BaseLayout<Feature>;
17
- regionSequence?: string;
18
- }
1
+ import BoxRendererType from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
2
+ import { PileupLayoutSession } from './PileupLayoutSession';
3
+ import type { PileupLayoutSessionProps } from './PileupLayoutSession';
4
+ import type { RenderArgsDeserialized } from './types';
5
+ import type { Region } from '@jbrowse/core/util';
19
6
  export default class PileupRenderer extends BoxRendererType {
20
7
  supportsSVG: boolean;
21
- fetchSequence(renderProps: RenderArgsDeserialized): Promise<any>;
8
+ fetchSequence(renderProps: RenderArgsDeserialized, region: Region): Promise<any>;
22
9
  getExpandedRegion(region: Region, renderArgs: RenderArgsDeserialized): {
23
10
  start: number;
24
11
  end: number;
25
- reversed?: boolean | undefined;
26
12
  refName: string;
13
+ reversed?: boolean | undefined;
27
14
  assemblyName: string;
28
15
  };
29
16
  render(renderProps: RenderArgsDeserialized): Promise<{
@@ -32,8 +19,9 @@ export default class PileupRenderer extends BoxRendererType {
32
19
  height: number;
33
20
  width: number;
34
21
  maxHeightReached: boolean;
22
+ containsNoTransferables: boolean;
35
23
  canvasRecordedData: any;
36
- reactElement?: import("react").ReactElement;
24
+ reactElement?: React.ReactElement;
37
25
  html?: string;
38
26
  } | {
39
27
  features: Map<any, any>;
@@ -41,7 +29,8 @@ export default class PileupRenderer extends BoxRendererType {
41
29
  height: number;
42
30
  width: number;
43
31
  maxHeightReached: boolean;
44
- reactElement: React.JSX.Element;
32
+ containsNoTransferables: boolean;
33
+ reactElement: import("react/jsx-runtime").JSX.Element;
45
34
  html?: string;
46
35
  } | {
47
36
  features: Map<any, any>;
@@ -49,10 +38,11 @@ export default class PileupRenderer extends BoxRendererType {
49
38
  height: number;
50
39
  width: number;
51
40
  maxHeightReached: boolean;
41
+ containsNoTransferables: boolean;
52
42
  imageData: any;
53
- reactElement?: import("react").ReactElement;
43
+ reactElement?: React.ReactElement;
54
44
  html?: string;
55
45
  }>;
56
46
  createSession(args: PileupLayoutSessionProps): PileupLayoutSession;
57
47
  }
58
- export type { RenderArgs, RenderResults, RenderArgsSerialized, ResultsSerialized, ResultsDeserialized, } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
48
+ export type { RenderArgs, RenderArgsSerialized, RenderResults, ResultsDeserialized, ResultsSerialized, } from '@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType';
@@ -15,23 +15,32 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
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
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
25
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
37
  };
28
38
  Object.defineProperty(exports, "__esModule", { value: true });
29
- const BoxRendererType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType"));
30
- const util_1 = require("@jbrowse/core/util");
31
39
  const configuration_1 = require("@jbrowse/core/configuration");
32
40
  const dataAdapterCache_1 = require("@jbrowse/core/data_adapters/dataAdapterCache");
41
+ const BoxRendererType_1 = __importDefault(require("@jbrowse/core/pluggableElementTypes/renderers/BoxRendererType"));
42
+ const util_1 = require("@jbrowse/core/util");
33
43
  const PileupLayoutSession_1 = require("./PileupLayoutSession");
34
- // locals
35
44
  const util_2 = require("../util");
36
45
  const layoutFeatures_1 = require("./layoutFeatures");
37
46
  class PileupRenderer extends BoxRendererType_1.default {
@@ -39,14 +48,13 @@ class PileupRenderer extends BoxRendererType_1.default {
39
48
  super(...arguments);
40
49
  this.supportsSVG = true;
41
50
  }
42
- async fetchSequence(renderProps) {
43
- const { sessionId, regions, adapterConfig } = renderProps;
51
+ async fetchSequence(renderProps, region) {
52
+ const { sessionId, adapterConfig } = renderProps;
44
53
  const { sequenceAdapter } = adapterConfig;
45
54
  if (!sequenceAdapter) {
46
55
  return undefined;
47
56
  }
48
57
  const { dataAdapter } = await (0, dataAdapterCache_1.getAdapter)(this.pluginManager, sessionId, sequenceAdapter);
49
- const region = regions[0];
50
58
  return (0, util_2.fetchSequence)({
51
59
  ...region,
52
60
  start: Math.max(0, region.start - 1),
@@ -59,7 +67,6 @@ class PileupRenderer extends BoxRendererType_1.default {
59
67
  const maxClippingSize = (0, configuration_1.readConfObject)(config, 'maxClippingSize');
60
68
  const bpExpansion = showSoftClip ? Math.round(maxClippingSize) : 0;
61
69
  return {
62
- // xref https://github.com/mobxjs/mobx-state-tree/issues/1524 for Omit
63
70
  ...region,
64
71
  start: Math.floor(Math.max(start - bpExpansion, 0)),
65
72
  end: Math.ceil(end + bpExpansion),
@@ -68,25 +75,22 @@ class PileupRenderer extends BoxRendererType_1.default {
68
75
  async render(renderProps) {
69
76
  const features = await this.getFeatures(renderProps);
70
77
  const layout = this.createLayoutInWorker(renderProps);
71
- const { regions, bpPerPx } = renderProps;
78
+ const { colorBy, regions, bpPerPx } = renderProps;
72
79
  const region = regions[0];
73
- const layoutRecords = (0, layoutFeatures_1.layoutFeats)({
80
+ const regionSequence = (colorBy === null || colorBy === void 0 ? void 0 : colorBy.type) === 'methylation' && features.size
81
+ ? await this.fetchSequence(renderProps, region)
82
+ : undefined;
83
+ const { layoutRecords, height } = (0, layoutFeatures_1.layoutFeats)({
74
84
  ...renderProps,
75
85
  features,
76
86
  layout,
77
87
  });
78
- // only need reference sequence if there are features and only for some
79
- // cases
80
- const regionSequence = features.size
81
- ? await this.fetchSequence(renderProps)
82
- : undefined;
83
88
  const width = (region.end - region.start) / bpPerPx;
84
- const height = Math.max(layout.getTotalHeight(), 1);
85
89
  const { makeImageData } = await Promise.resolve().then(() => __importStar(require('./makeImageData')));
86
90
  const res = await (0, util_1.renderToAbstractCanvas)(width, height, renderProps, ctx => {
87
91
  makeImageData({
88
92
  ctx,
89
- layoutRecords: layoutRecords.filter(util_1.notEmpty),
93
+ layoutRecords,
90
94
  canvasWidth: width,
91
95
  renderArgs: {
92
96
  ...renderProps,
@@ -113,6 +117,7 @@ class PileupRenderer extends BoxRendererType_1.default {
113
117
  height,
114
118
  width,
115
119
  maxHeightReached: layout.maxHeightReached,
120
+ containsNoTransferables: true,
116
121
  };
117
122
  }
118
123
  createSession(args) {
@@ -1,5 +1,5 @@
1
- import { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
- import { Feature } from '@jbrowse/core/util';
1
+ import type { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ import type { Feature } from '@jbrowse/core/util';
3
3
  export declare function colorByInsertSize(feature: Feature): string;
4
4
  export declare function colorByMappingQuality(feature: Feature): string;
5
5
  export declare function colorByStrand(feature: Feature): "#EC8B8B" | "#8F8FD8";
@@ -37,27 +37,21 @@ function colorByOrientation(feature, config) {
37
37
  function getStranded(feature) {
38
38
  const flags = feature.get('flags');
39
39
  const strand = feature.get('strand');
40
- // is paired
41
40
  if (flags & 1) {
42
- // first-of-pair?
43
41
  const flipper = flags & 64 ? -1 : 1;
44
- // proper pairing
45
42
  if (flags & 2) {
46
43
  return strand * flipper === 1 ? 'color_rev_strand' : 'color_fwd_strand';
47
44
  }
48
- // mate missing, separate color
49
45
  if (flags & 8) {
50
46
  return strand * flipper === 1
51
47
  ? 'color_rev_missing_mate'
52
48
  : 'color_fwd_missing_mate';
53
49
  }
54
- // same chrom without proper pairing gets separate color
55
50
  if (feature.get('refName') === feature.get('next_ref')) {
56
51
  return strand * flipper === 1
57
52
  ? 'color_rev_strand_not_proper'
58
53
  : 'color_fwd_strand_not_proper';
59
54
  }
60
- // abberant chrom
61
55
  return strand === 1 ? 'color_fwd_diff_chr' : 'color_rev_diff_chr';
62
56
  }
63
57
  return 'color_unknown';
@@ -1,5 +1,4 @@
1
- import React from 'react';
2
- import { Region } from '@jbrowse/core/util/types';
1
+ import type { Region } from '@jbrowse/core/util/types';
3
2
  import type { BaseLinearDisplayModel } from '@jbrowse/plugin-linear-genome-view';
4
3
  declare const PileupRendering: (props: {
5
4
  blockKey: string;
@@ -23,5 +22,5 @@ declare const PileupRendering: (props: {
23
22
  };
24
23
  };
25
24
  onMouseMove?: (event: React.MouseEvent, featureId?: string) => void;
26
- }) => React.JSX.Element;
25
+ }) => import("react/jsx-runtime").JSX.Element;
27
26
  export default PileupRendering;
@@ -1,29 +1,7 @@
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
  Object.defineProperty(exports, "__esModule", { value: true });
26
- const react_1 = __importStar(require("react"));
3
+ const jsx_runtime_1 = require("react/jsx-runtime");
4
+ const react_1 = require("react");
27
5
  const ui_1 = require("@jbrowse/core/ui");
28
6
  const util_1 = require("@jbrowse/core/util");
29
7
  const mobx_react_1 = require("mobx-react");
@@ -106,9 +84,7 @@ const PileupRendering = (0, mobx_react_1.observer)(function (props) {
106
84
  onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(event, displayModel === null || displayModel === void 0 ? void 0 : displayModel.getFeatureOverlapping(blockKey, clientBp, offsetY));
107
85
  }
108
86
  function callMouseHandler(handlerName, event) {
109
- // @ts-expect-error
110
87
  const featureHandler = props[`onFeature${handlerName}`];
111
- // @ts-expect-error
112
88
  const canvasHandler = props[`on${handlerName}`];
113
89
  if (featureHandler && featureIdUnderMouse) {
114
90
  featureHandler(event, featureIdUnderMouse);
@@ -118,8 +94,7 @@ const PileupRendering = (0, mobx_react_1.observer)(function (props) {
118
94
  }
119
95
  }
120
96
  const canvasWidth = Math.ceil(width);
121
- // need to call this in render so we get the right observer behavior
122
- return (react_1.default.createElement("div", { ref: ref, "data-testid": [
97
+ return ((0, jsx_runtime_1.jsxs)("div", { ref: ref, "data-testid": [
123
98
  'pileup-overlay',
124
99
  sortedBy === null || sortedBy === void 0 ? void 0 : sortedBy.type,
125
100
  colorBy === null || colorBy === void 0 ? void 0 : colorBy.type,
@@ -145,20 +120,17 @@ const PileupRendering = (0, mobx_react_1.observer)(function (props) {
145
120
  onClick(event);
146
121
  }, onContextMenu: event => {
147
122
  onContextMenu(event);
148
- }, onFocus: () => { }, onBlur: () => { } },
149
- react_1.default.createElement(ui_1.PrerenderedCanvas, { ...props, style: { position: 'absolute', left: 0, top: 0 } }),
150
- firstRender && highlight ? (react_1.default.createElement("div", { style: {
151
- position: 'absolute',
152
- backgroundColor: '#0003',
153
- pointerEvents: 'none',
154
- ...highlight,
155
- } })) : null,
156
- firstRender && selected ? (react_1.default.createElement("div", { style: {
157
- position: 'absolute',
158
- border: '2px solid #00b8ff',
159
- boxSizing: 'content-box',
160
- pointerEvents: 'none',
161
- ...selected,
162
- } })) : null));
123
+ }, onFocus: () => { }, onBlur: () => { }, children: [(0, jsx_runtime_1.jsx)(ui_1.PrerenderedCanvas, { ...props, style: { position: 'absolute', left: 0, top: 0 } }), firstRender && highlight ? ((0, jsx_runtime_1.jsx)("div", { style: {
124
+ position: 'absolute',
125
+ backgroundColor: '#0003',
126
+ pointerEvents: 'none',
127
+ ...highlight,
128
+ } })) : null, firstRender && selected ? ((0, jsx_runtime_1.jsx)("div", { style: {
129
+ position: 'absolute',
130
+ border: '2px solid #00b8ff',
131
+ boxSizing: 'content-box',
132
+ pointerEvents: 'none',
133
+ ...selected,
134
+ } })) : null] }));
163
135
  });
164
136
  exports.default = PileupRendering;