@jbrowse/plugin-alignments 2.6.1 → 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (524) hide show
  1. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +0 -1
  2. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js +0 -1
  3. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.js +0 -1
  4. package/dist/AlignmentsFeatureDetail/index.js +0 -1
  5. package/dist/AlignmentsFeatureDetail/util.js +0 -1
  6. package/dist/AlignmentsTrack/configSchemaF.js +0 -1
  7. package/dist/AlignmentsTrack/index.js +0 -1
  8. package/dist/BamAdapter/BamAdapter.js +0 -1
  9. package/dist/BamAdapter/BamSlightlyLazyFeature.js +0 -1
  10. package/dist/BamAdapter/configSchema.js +0 -1
  11. package/dist/BamAdapter/index.js +0 -1
  12. package/dist/CramAdapter/CramAdapter.js +0 -1
  13. package/dist/CramAdapter/CramSlightlyLazyFeature.js +0 -1
  14. package/dist/CramAdapter/CramTestAdapters.js +0 -1
  15. package/dist/CramAdapter/configSchema.js +0 -1
  16. package/dist/CramAdapter/index.js +0 -1
  17. package/dist/CramAdapter/util.js +0 -1
  18. package/dist/GuessAlignmentsTypes/index.js +0 -1
  19. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js +0 -1
  20. package/dist/HtsgetBamAdapter/configSchema.js +0 -1
  21. package/dist/HtsgetBamAdapter/index.js +0 -1
  22. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +1 -1
  23. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +5 -2
  24. package/dist/LinearAlignmentsDisplay/index.js +0 -1
  25. package/dist/LinearAlignmentsDisplay/models/configSchema.js +0 -1
  26. package/dist/LinearAlignmentsDisplay/models/model.js +5 -2
  27. package/dist/LinearPileupDisplay/components/ColorByModifications.js +0 -1
  28. package/dist/LinearPileupDisplay/components/ColorByTag.js +0 -1
  29. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +0 -1
  30. package/dist/LinearPileupDisplay/components/ModificationsTable.js +0 -1
  31. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +0 -1
  32. package/dist/LinearPileupDisplay/components/SetMaxHeight.js +0 -1
  33. package/dist/LinearPileupDisplay/components/SortByTag.js +0 -1
  34. package/dist/LinearPileupDisplay/configSchema.js +0 -1
  35. package/dist/LinearPileupDisplay/index.js +0 -1
  36. package/dist/LinearPileupDisplay/model.d.ts +18 -26
  37. package/dist/LinearPileupDisplay/model.js +2 -3
  38. package/dist/LinearReadArcsDisplay/components/ReactComponent.js +0 -1
  39. package/dist/LinearReadArcsDisplay/configSchema.js +0 -1
  40. package/dist/LinearReadArcsDisplay/drawFeats.js +0 -1
  41. package/dist/LinearReadArcsDisplay/index.js +0 -1
  42. package/dist/LinearReadArcsDisplay/model.js +0 -1
  43. package/dist/LinearReadArcsDisplay/util.js +0 -1
  44. package/dist/LinearReadCloudDisplay/components/ReactComponent.js +0 -1
  45. package/dist/LinearReadCloudDisplay/configSchema.d.ts +4 -4
  46. package/dist/LinearReadCloudDisplay/configSchema.js +0 -1
  47. package/dist/LinearReadCloudDisplay/drawFeats.js +0 -1
  48. package/dist/LinearReadCloudDisplay/drawLongReadChains.js +0 -1
  49. package/dist/LinearReadCloudDisplay/drawPairChains.js +0 -1
  50. package/dist/LinearReadCloudDisplay/index.js +0 -1
  51. package/dist/LinearReadCloudDisplay/model.d.ts +1 -3
  52. package/dist/LinearReadCloudDisplay/model.js +0 -1
  53. package/dist/LinearReadCloudDisplay/util.js +0 -1
  54. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +0 -1
  55. package/dist/LinearSNPCoverageDisplay/index.js +0 -1
  56. package/dist/LinearSNPCoverageDisplay/models/configSchema.d.ts +3 -0
  57. package/dist/LinearSNPCoverageDisplay/models/configSchema.js +0 -1
  58. package/dist/LinearSNPCoverageDisplay/models/model.d.ts +31 -15
  59. package/dist/LinearSNPCoverageDisplay/models/model.js +0 -1
  60. package/dist/MismatchParser/index.js +0 -1
  61. package/dist/PileupRPC/base.js +0 -1
  62. package/dist/PileupRPC/index.js +0 -1
  63. package/dist/PileupRPC/methods/GetGlobalValueForTag.js +0 -1
  64. package/dist/PileupRPC/methods/GetReducedFeatures.js +0 -1
  65. package/dist/PileupRPC/methods/GetVisibleModifications.js +0 -1
  66. package/dist/PileupRPC/rpcMethods.js +0 -1
  67. package/dist/PileupRPC/util.js +0 -1
  68. package/dist/PileupRenderer/PileupLayoutSession.js +0 -1
  69. package/dist/PileupRenderer/PileupRenderer.js +0 -1
  70. package/dist/PileupRenderer/colorBy.js +8 -7
  71. package/dist/PileupRenderer/components/PileupRendering.js +0 -1
  72. package/dist/PileupRenderer/configSchema.js +0 -1
  73. package/dist/PileupRenderer/getAlignmentShapeColor.js +0 -1
  74. package/dist/PileupRenderer/index.js +0 -1
  75. package/dist/PileupRenderer/layoutFeature.js +0 -1
  76. package/dist/PileupRenderer/layoutFeatures.js +0 -1
  77. package/dist/PileupRenderer/makeImageData.js +0 -1
  78. package/dist/PileupRenderer/renderAlignment.js +0 -1
  79. package/dist/PileupRenderer/renderAlignmentShape.js +1 -2
  80. package/dist/PileupRenderer/renderMethylation.js +0 -1
  81. package/dist/PileupRenderer/renderMismatches.js +0 -1
  82. package/dist/PileupRenderer/renderModifications.js +0 -1
  83. package/dist/PileupRenderer/renderPerBaseLettering.js +0 -1
  84. package/dist/PileupRenderer/renderPerBaseQuality.js +0 -1
  85. package/dist/PileupRenderer/renderSoftClipping.js +0 -1
  86. package/dist/PileupRenderer/sortUtil.js +0 -1
  87. package/dist/PileupRenderer/util.js +0 -1
  88. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +0 -1
  89. package/dist/SNPCoverageAdapter/configSchema.js +0 -1
  90. package/dist/SNPCoverageAdapter/generateCoverageBins.js +0 -1
  91. package/dist/SNPCoverageAdapter/index.js +0 -1
  92. package/dist/SNPCoverageAdapter/util.js +0 -1
  93. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +0 -1
  94. package/dist/SNPCoverageRenderer/configSchema.js +0 -1
  95. package/dist/SNPCoverageRenderer/index.js +0 -1
  96. package/dist/index.js +0 -1
  97. package/dist/shared/BaseDisplayComponent.js +0 -1
  98. package/dist/shared/FilterByTag.js +0 -1
  99. package/dist/shared/afterAttach.js +0 -1
  100. package/dist/shared/color.js +0 -1
  101. package/dist/shared/fetchChains.js +0 -1
  102. package/dist/shared/index.js +0 -1
  103. package/dist/shared/renderSvg.js +0 -1
  104. package/dist/shared/util.js +0 -1
  105. package/dist/util.js +0 -1
  106. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +0 -1
  107. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js +0 -1
  108. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.js +0 -1
  109. package/esm/AlignmentsFeatureDetail/index.js +0 -1
  110. package/esm/AlignmentsFeatureDetail/util.js +0 -1
  111. package/esm/AlignmentsTrack/configSchemaF.js +0 -1
  112. package/esm/AlignmentsTrack/index.js +0 -1
  113. package/esm/BamAdapter/BamAdapter.js +0 -1
  114. package/esm/BamAdapter/BamSlightlyLazyFeature.js +0 -1
  115. package/esm/BamAdapter/configSchema.js +0 -1
  116. package/esm/BamAdapter/index.js +0 -1
  117. package/esm/CramAdapter/CramAdapter.js +0 -1
  118. package/esm/CramAdapter/CramSlightlyLazyFeature.js +0 -1
  119. package/esm/CramAdapter/CramTestAdapters.js +0 -1
  120. package/esm/CramAdapter/configSchema.js +0 -1
  121. package/esm/CramAdapter/index.js +0 -1
  122. package/esm/CramAdapter/util.js +0 -1
  123. package/esm/GuessAlignmentsTypes/index.js +0 -1
  124. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js +0 -1
  125. package/esm/HtsgetBamAdapter/configSchema.js +0 -1
  126. package/esm/HtsgetBamAdapter/index.js +0 -1
  127. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +1 -1
  128. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +5 -2
  129. package/esm/LinearAlignmentsDisplay/index.js +0 -1
  130. package/esm/LinearAlignmentsDisplay/models/configSchema.js +0 -1
  131. package/esm/LinearAlignmentsDisplay/models/model.js +5 -2
  132. package/esm/LinearPileupDisplay/components/ColorByModifications.js +0 -1
  133. package/esm/LinearPileupDisplay/components/ColorByTag.js +0 -1
  134. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +0 -1
  135. package/esm/LinearPileupDisplay/components/ModificationsTable.js +0 -1
  136. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js +0 -1
  137. package/esm/LinearPileupDisplay/components/SetMaxHeight.js +0 -1
  138. package/esm/LinearPileupDisplay/components/SortByTag.js +0 -1
  139. package/esm/LinearPileupDisplay/configSchema.js +0 -1
  140. package/esm/LinearPileupDisplay/index.js +0 -1
  141. package/esm/LinearPileupDisplay/model.d.ts +18 -26
  142. package/esm/LinearPileupDisplay/model.js +2 -3
  143. package/esm/LinearReadArcsDisplay/components/ReactComponent.js +0 -1
  144. package/esm/LinearReadArcsDisplay/configSchema.js +0 -1
  145. package/esm/LinearReadArcsDisplay/drawFeats.js +0 -1
  146. package/esm/LinearReadArcsDisplay/index.js +0 -1
  147. package/esm/LinearReadArcsDisplay/model.js +0 -1
  148. package/esm/LinearReadArcsDisplay/util.js +0 -1
  149. package/esm/LinearReadCloudDisplay/components/ReactComponent.js +0 -1
  150. package/esm/LinearReadCloudDisplay/configSchema.d.ts +4 -4
  151. package/esm/LinearReadCloudDisplay/configSchema.js +0 -1
  152. package/esm/LinearReadCloudDisplay/drawFeats.js +0 -1
  153. package/esm/LinearReadCloudDisplay/drawLongReadChains.js +0 -1
  154. package/esm/LinearReadCloudDisplay/drawPairChains.js +0 -1
  155. package/esm/LinearReadCloudDisplay/index.js +0 -1
  156. package/esm/LinearReadCloudDisplay/model.d.ts +1 -3
  157. package/esm/LinearReadCloudDisplay/model.js +0 -1
  158. package/esm/LinearReadCloudDisplay/util.js +0 -1
  159. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +0 -1
  160. package/esm/LinearSNPCoverageDisplay/index.js +0 -1
  161. package/esm/LinearSNPCoverageDisplay/models/configSchema.d.ts +3 -0
  162. package/esm/LinearSNPCoverageDisplay/models/configSchema.js +0 -1
  163. package/esm/LinearSNPCoverageDisplay/models/model.d.ts +31 -15
  164. package/esm/LinearSNPCoverageDisplay/models/model.js +0 -1
  165. package/esm/MismatchParser/index.js +0 -1
  166. package/esm/PileupRPC/base.js +0 -1
  167. package/esm/PileupRPC/index.js +0 -1
  168. package/esm/PileupRPC/methods/GetGlobalValueForTag.js +0 -1
  169. package/esm/PileupRPC/methods/GetReducedFeatures.js +0 -1
  170. package/esm/PileupRPC/methods/GetVisibleModifications.js +0 -1
  171. package/esm/PileupRPC/rpcMethods.js +0 -1
  172. package/esm/PileupRPC/util.js +0 -1
  173. package/esm/PileupRenderer/PileupLayoutSession.js +0 -1
  174. package/esm/PileupRenderer/PileupRenderer.js +0 -1
  175. package/esm/PileupRenderer/colorBy.js +8 -7
  176. package/esm/PileupRenderer/components/PileupRendering.js +0 -1
  177. package/esm/PileupRenderer/configSchema.js +0 -1
  178. package/esm/PileupRenderer/getAlignmentShapeColor.js +0 -1
  179. package/esm/PileupRenderer/index.js +0 -1
  180. package/esm/PileupRenderer/layoutFeature.js +0 -1
  181. package/esm/PileupRenderer/layoutFeatures.js +0 -1
  182. package/esm/PileupRenderer/makeImageData.js +0 -1
  183. package/esm/PileupRenderer/renderAlignment.js +0 -1
  184. package/esm/PileupRenderer/renderAlignmentShape.js +1 -2
  185. package/esm/PileupRenderer/renderMethylation.js +0 -1
  186. package/esm/PileupRenderer/renderMismatches.js +0 -1
  187. package/esm/PileupRenderer/renderModifications.js +0 -1
  188. package/esm/PileupRenderer/renderPerBaseLettering.js +0 -1
  189. package/esm/PileupRenderer/renderPerBaseQuality.js +0 -1
  190. package/esm/PileupRenderer/renderSoftClipping.js +0 -1
  191. package/esm/PileupRenderer/sortUtil.js +0 -1
  192. package/esm/PileupRenderer/util.js +0 -1
  193. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +0 -1
  194. package/esm/SNPCoverageAdapter/configSchema.js +0 -1
  195. package/esm/SNPCoverageAdapter/generateCoverageBins.js +0 -1
  196. package/esm/SNPCoverageAdapter/index.js +0 -1
  197. package/esm/SNPCoverageAdapter/util.js +0 -1
  198. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +0 -1
  199. package/esm/SNPCoverageRenderer/configSchema.js +0 -1
  200. package/esm/SNPCoverageRenderer/index.js +0 -1
  201. package/esm/index.js +0 -1
  202. package/esm/shared/BaseDisplayComponent.js +0 -1
  203. package/esm/shared/FilterByTag.js +0 -1
  204. package/esm/shared/afterAttach.js +0 -1
  205. package/esm/shared/color.js +0 -1
  206. package/esm/shared/fetchChains.js +0 -1
  207. package/esm/shared/index.js +0 -1
  208. package/esm/shared/renderSvg.js +0 -1
  209. package/esm/shared/util.js +0 -1
  210. package/esm/util.js +0 -1
  211. package/package.json +4 -5
  212. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +0 -1
  213. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js.map +0 -1
  214. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.js.map +0 -1
  215. package/dist/AlignmentsFeatureDetail/index.js.map +0 -1
  216. package/dist/AlignmentsFeatureDetail/util.js.map +0 -1
  217. package/dist/AlignmentsTrack/configSchemaF.js.map +0 -1
  218. package/dist/AlignmentsTrack/index.js.map +0 -1
  219. package/dist/BamAdapter/BamAdapter.js.map +0 -1
  220. package/dist/BamAdapter/BamSlightlyLazyFeature.js.map +0 -1
  221. package/dist/BamAdapter/configSchema.js.map +0 -1
  222. package/dist/BamAdapter/index.js.map +0 -1
  223. package/dist/CramAdapter/CramAdapter.js.map +0 -1
  224. package/dist/CramAdapter/CramSlightlyLazyFeature.js.map +0 -1
  225. package/dist/CramAdapter/CramTestAdapters.js.map +0 -1
  226. package/dist/CramAdapter/configSchema.js.map +0 -1
  227. package/dist/CramAdapter/index.js.map +0 -1
  228. package/dist/CramAdapter/util.js.map +0 -1
  229. package/dist/GuessAlignmentsTypes/index.js.map +0 -1
  230. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js.map +0 -1
  231. package/dist/HtsgetBamAdapter/configSchema.js.map +0 -1
  232. package/dist/HtsgetBamAdapter/index.js.map +0 -1
  233. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +0 -1
  234. package/dist/LinearAlignmentsDisplay/index.js.map +0 -1
  235. package/dist/LinearAlignmentsDisplay/models/configSchema.js.map +0 -1
  236. package/dist/LinearAlignmentsDisplay/models/model.js.map +0 -1
  237. package/dist/LinearPileupDisplay/components/ColorByModifications.js.map +0 -1
  238. package/dist/LinearPileupDisplay/components/ColorByTag.js.map +0 -1
  239. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +0 -1
  240. package/dist/LinearPileupDisplay/components/ModificationsTable.js.map +0 -1
  241. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js.map +0 -1
  242. package/dist/LinearPileupDisplay/components/SetMaxHeight.js.map +0 -1
  243. package/dist/LinearPileupDisplay/components/SortByTag.js.map +0 -1
  244. package/dist/LinearPileupDisplay/configSchema.js.map +0 -1
  245. package/dist/LinearPileupDisplay/index.js.map +0 -1
  246. package/dist/LinearPileupDisplay/model.js.map +0 -1
  247. package/dist/LinearReadArcsDisplay/components/ReactComponent.js.map +0 -1
  248. package/dist/LinearReadArcsDisplay/configSchema.js.map +0 -1
  249. package/dist/LinearReadArcsDisplay/drawFeats.js.map +0 -1
  250. package/dist/LinearReadArcsDisplay/index.js.map +0 -1
  251. package/dist/LinearReadArcsDisplay/model.js.map +0 -1
  252. package/dist/LinearReadArcsDisplay/util.js.map +0 -1
  253. package/dist/LinearReadCloudDisplay/components/ReactComponent.js.map +0 -1
  254. package/dist/LinearReadCloudDisplay/configSchema.js.map +0 -1
  255. package/dist/LinearReadCloudDisplay/drawFeats.js.map +0 -1
  256. package/dist/LinearReadCloudDisplay/drawLongReadChains.js.map +0 -1
  257. package/dist/LinearReadCloudDisplay/drawPairChains.js.map +0 -1
  258. package/dist/LinearReadCloudDisplay/index.js.map +0 -1
  259. package/dist/LinearReadCloudDisplay/model.js.map +0 -1
  260. package/dist/LinearReadCloudDisplay/util.js.map +0 -1
  261. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js.map +0 -1
  262. package/dist/LinearSNPCoverageDisplay/index.js.map +0 -1
  263. package/dist/LinearSNPCoverageDisplay/models/configSchema.js.map +0 -1
  264. package/dist/LinearSNPCoverageDisplay/models/model.js.map +0 -1
  265. package/dist/MismatchParser/index.js.map +0 -1
  266. package/dist/PileupRPC/base.js.map +0 -1
  267. package/dist/PileupRPC/index.js.map +0 -1
  268. package/dist/PileupRPC/methods/GetGlobalValueForTag.js.map +0 -1
  269. package/dist/PileupRPC/methods/GetReducedFeatures.js.map +0 -1
  270. package/dist/PileupRPC/methods/GetVisibleModifications.js.map +0 -1
  271. package/dist/PileupRPC/rpcMethods.js.map +0 -1
  272. package/dist/PileupRPC/util.js.map +0 -1
  273. package/dist/PileupRenderer/PileupLayoutSession.js.map +0 -1
  274. package/dist/PileupRenderer/PileupRenderer.js.map +0 -1
  275. package/dist/PileupRenderer/colorBy.js.map +0 -1
  276. package/dist/PileupRenderer/components/PileupRendering.js.map +0 -1
  277. package/dist/PileupRenderer/configSchema.js.map +0 -1
  278. package/dist/PileupRenderer/getAlignmentShapeColor.js.map +0 -1
  279. package/dist/PileupRenderer/index.js.map +0 -1
  280. package/dist/PileupRenderer/layoutFeature.js.map +0 -1
  281. package/dist/PileupRenderer/layoutFeatures.js.map +0 -1
  282. package/dist/PileupRenderer/makeImageData.js.map +0 -1
  283. package/dist/PileupRenderer/renderAlignment.js.map +0 -1
  284. package/dist/PileupRenderer/renderAlignmentShape.js.map +0 -1
  285. package/dist/PileupRenderer/renderMethylation.js.map +0 -1
  286. package/dist/PileupRenderer/renderMismatches.js.map +0 -1
  287. package/dist/PileupRenderer/renderModifications.js.map +0 -1
  288. package/dist/PileupRenderer/renderPerBaseLettering.js.map +0 -1
  289. package/dist/PileupRenderer/renderPerBaseQuality.js.map +0 -1
  290. package/dist/PileupRenderer/renderSoftClipping.js.map +0 -1
  291. package/dist/PileupRenderer/sortUtil.js.map +0 -1
  292. package/dist/PileupRenderer/util.js.map +0 -1
  293. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js.map +0 -1
  294. package/dist/SNPCoverageAdapter/configSchema.js.map +0 -1
  295. package/dist/SNPCoverageAdapter/generateCoverageBins.js.map +0 -1
  296. package/dist/SNPCoverageAdapter/index.js.map +0 -1
  297. package/dist/SNPCoverageAdapter/util.js.map +0 -1
  298. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js.map +0 -1
  299. package/dist/SNPCoverageRenderer/configSchema.js.map +0 -1
  300. package/dist/SNPCoverageRenderer/index.js.map +0 -1
  301. package/dist/index.js.map +0 -1
  302. package/dist/shared/BaseDisplayComponent.js.map +0 -1
  303. package/dist/shared/FilterByTag.js.map +0 -1
  304. package/dist/shared/afterAttach.js.map +0 -1
  305. package/dist/shared/color.js.map +0 -1
  306. package/dist/shared/fetchChains.js.map +0 -1
  307. package/dist/shared/index.js.map +0 -1
  308. package/dist/shared/renderSvg.js.map +0 -1
  309. package/dist/shared/util.js.map +0 -1
  310. package/dist/util.js.map +0 -1
  311. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +0 -1
  312. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js.map +0 -1
  313. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.js.map +0 -1
  314. package/esm/AlignmentsFeatureDetail/index.js.map +0 -1
  315. package/esm/AlignmentsFeatureDetail/util.js.map +0 -1
  316. package/esm/AlignmentsTrack/configSchemaF.js.map +0 -1
  317. package/esm/AlignmentsTrack/index.js.map +0 -1
  318. package/esm/BamAdapter/BamAdapter.js.map +0 -1
  319. package/esm/BamAdapter/BamSlightlyLazyFeature.js.map +0 -1
  320. package/esm/BamAdapter/configSchema.js.map +0 -1
  321. package/esm/BamAdapter/index.js.map +0 -1
  322. package/esm/CramAdapter/CramAdapter.js.map +0 -1
  323. package/esm/CramAdapter/CramSlightlyLazyFeature.js.map +0 -1
  324. package/esm/CramAdapter/CramTestAdapters.js.map +0 -1
  325. package/esm/CramAdapter/configSchema.js.map +0 -1
  326. package/esm/CramAdapter/index.js.map +0 -1
  327. package/esm/CramAdapter/util.js.map +0 -1
  328. package/esm/GuessAlignmentsTypes/index.js.map +0 -1
  329. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js.map +0 -1
  330. package/esm/HtsgetBamAdapter/configSchema.js.map +0 -1
  331. package/esm/HtsgetBamAdapter/index.js.map +0 -1
  332. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +0 -1
  333. package/esm/LinearAlignmentsDisplay/index.js.map +0 -1
  334. package/esm/LinearAlignmentsDisplay/models/configSchema.js.map +0 -1
  335. package/esm/LinearAlignmentsDisplay/models/model.js.map +0 -1
  336. package/esm/LinearPileupDisplay/components/ColorByModifications.js.map +0 -1
  337. package/esm/LinearPileupDisplay/components/ColorByTag.js.map +0 -1
  338. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +0 -1
  339. package/esm/LinearPileupDisplay/components/ModificationsTable.js.map +0 -1
  340. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js.map +0 -1
  341. package/esm/LinearPileupDisplay/components/SetMaxHeight.js.map +0 -1
  342. package/esm/LinearPileupDisplay/components/SortByTag.js.map +0 -1
  343. package/esm/LinearPileupDisplay/configSchema.js.map +0 -1
  344. package/esm/LinearPileupDisplay/index.js.map +0 -1
  345. package/esm/LinearPileupDisplay/model.js.map +0 -1
  346. package/esm/LinearReadArcsDisplay/components/ReactComponent.js.map +0 -1
  347. package/esm/LinearReadArcsDisplay/configSchema.js.map +0 -1
  348. package/esm/LinearReadArcsDisplay/drawFeats.js.map +0 -1
  349. package/esm/LinearReadArcsDisplay/index.js.map +0 -1
  350. package/esm/LinearReadArcsDisplay/model.js.map +0 -1
  351. package/esm/LinearReadArcsDisplay/util.js.map +0 -1
  352. package/esm/LinearReadCloudDisplay/components/ReactComponent.js.map +0 -1
  353. package/esm/LinearReadCloudDisplay/configSchema.js.map +0 -1
  354. package/esm/LinearReadCloudDisplay/drawFeats.js.map +0 -1
  355. package/esm/LinearReadCloudDisplay/drawLongReadChains.js.map +0 -1
  356. package/esm/LinearReadCloudDisplay/drawPairChains.js.map +0 -1
  357. package/esm/LinearReadCloudDisplay/index.js.map +0 -1
  358. package/esm/LinearReadCloudDisplay/model.js.map +0 -1
  359. package/esm/LinearReadCloudDisplay/util.js.map +0 -1
  360. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js.map +0 -1
  361. package/esm/LinearSNPCoverageDisplay/index.js.map +0 -1
  362. package/esm/LinearSNPCoverageDisplay/models/configSchema.js.map +0 -1
  363. package/esm/LinearSNPCoverageDisplay/models/model.js.map +0 -1
  364. package/esm/MismatchParser/index.js.map +0 -1
  365. package/esm/PileupRPC/base.js.map +0 -1
  366. package/esm/PileupRPC/index.js.map +0 -1
  367. package/esm/PileupRPC/methods/GetGlobalValueForTag.js.map +0 -1
  368. package/esm/PileupRPC/methods/GetReducedFeatures.js.map +0 -1
  369. package/esm/PileupRPC/methods/GetVisibleModifications.js.map +0 -1
  370. package/esm/PileupRPC/rpcMethods.js.map +0 -1
  371. package/esm/PileupRPC/util.js.map +0 -1
  372. package/esm/PileupRenderer/PileupLayoutSession.js.map +0 -1
  373. package/esm/PileupRenderer/PileupRenderer.js.map +0 -1
  374. package/esm/PileupRenderer/colorBy.js.map +0 -1
  375. package/esm/PileupRenderer/components/PileupRendering.js.map +0 -1
  376. package/esm/PileupRenderer/configSchema.js.map +0 -1
  377. package/esm/PileupRenderer/getAlignmentShapeColor.js.map +0 -1
  378. package/esm/PileupRenderer/index.js.map +0 -1
  379. package/esm/PileupRenderer/layoutFeature.js.map +0 -1
  380. package/esm/PileupRenderer/layoutFeatures.js.map +0 -1
  381. package/esm/PileupRenderer/makeImageData.js.map +0 -1
  382. package/esm/PileupRenderer/renderAlignment.js.map +0 -1
  383. package/esm/PileupRenderer/renderAlignmentShape.js.map +0 -1
  384. package/esm/PileupRenderer/renderMethylation.js.map +0 -1
  385. package/esm/PileupRenderer/renderMismatches.js.map +0 -1
  386. package/esm/PileupRenderer/renderModifications.js.map +0 -1
  387. package/esm/PileupRenderer/renderPerBaseLettering.js.map +0 -1
  388. package/esm/PileupRenderer/renderPerBaseQuality.js.map +0 -1
  389. package/esm/PileupRenderer/renderSoftClipping.js.map +0 -1
  390. package/esm/PileupRenderer/sortUtil.js.map +0 -1
  391. package/esm/PileupRenderer/util.js.map +0 -1
  392. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js.map +0 -1
  393. package/esm/SNPCoverageAdapter/configSchema.js.map +0 -1
  394. package/esm/SNPCoverageAdapter/generateCoverageBins.js.map +0 -1
  395. package/esm/SNPCoverageAdapter/index.js.map +0 -1
  396. package/esm/SNPCoverageAdapter/util.js.map +0 -1
  397. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js.map +0 -1
  398. package/esm/SNPCoverageRenderer/configSchema.js.map +0 -1
  399. package/esm/SNPCoverageRenderer/index.js.map +0 -1
  400. package/esm/index.js.map +0 -1
  401. package/esm/shared/BaseDisplayComponent.js.map +0 -1
  402. package/esm/shared/FilterByTag.js.map +0 -1
  403. package/esm/shared/afterAttach.js.map +0 -1
  404. package/esm/shared/color.js.map +0 -1
  405. package/esm/shared/fetchChains.js.map +0 -1
  406. package/esm/shared/index.js.map +0 -1
  407. package/esm/shared/renderSvg.js.map +0 -1
  408. package/esm/shared/util.js.map +0 -1
  409. package/esm/util.js.map +0 -1
  410. package/src/AlignmentsFeatureDetail/AlignmentsFeatureDetail.tsx +0 -155
  411. package/src/AlignmentsFeatureDetail/AlignmentsFeatureFlags.tsx +0 -60
  412. package/src/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.tsx +0 -51
  413. package/src/AlignmentsFeatureDetail/__snapshots__/index.test.tsx.snap +0 -327
  414. package/src/AlignmentsFeatureDetail/index.test.tsx +0 -47
  415. package/src/AlignmentsFeatureDetail/index.ts +0 -33
  416. package/src/AlignmentsFeatureDetail/util.ts +0 -27
  417. package/src/AlignmentsTrack/configSchemaF.ts +0 -22
  418. package/src/AlignmentsTrack/index.ts +0 -22
  419. package/src/BamAdapter/BamAdapter.test.ts +0 -124
  420. package/src/BamAdapter/BamAdapter.ts +0 -251
  421. package/src/BamAdapter/BamSlightlyLazyFeature.ts +0 -149
  422. package/src/BamAdapter/__snapshots__/BamAdapter.test.ts.snap +0 -1105
  423. package/src/BamAdapter/configSchema.ts +0 -65
  424. package/src/BamAdapter/index.ts +0 -14
  425. package/src/CombinationTest.test.ts +0 -108
  426. package/src/CramAdapter/CramAdapter.test.ts +0 -85
  427. package/src/CramAdapter/CramAdapter.ts +0 -323
  428. package/src/CramAdapter/CramSlightlyLazyFeature.ts +0 -185
  429. package/src/CramAdapter/CramTestAdapters.ts +0 -98
  430. package/src/CramAdapter/__snapshots__/CramAdapter.test.ts.snap +0 -256
  431. package/src/CramAdapter/__snapshots__/util.test.ts.snap +0 -14
  432. package/src/CramAdapter/configSchema.ts +0 -57
  433. package/src/CramAdapter/index.ts +0 -16
  434. package/src/CramAdapter/util.test.ts +0 -26
  435. package/src/CramAdapter/util.ts +0 -251
  436. package/src/GuessAlignmentsTypes/index.ts +0 -79
  437. package/src/HtsgetBamAdapter/HtsgetBamAdapter.ts +0 -24
  438. package/src/HtsgetBamAdapter/configSchema.ts +0 -40
  439. package/src/HtsgetBamAdapter/index.ts +0 -17
  440. package/src/LinearAlignmentsDisplay/components/AlignmentsDisplay.tsx +0 -52
  441. package/src/LinearAlignmentsDisplay/index.ts +0 -21
  442. package/src/LinearAlignmentsDisplay/models/configSchema.test.ts +0 -60
  443. package/src/LinearAlignmentsDisplay/models/configSchema.ts +0 -41
  444. package/src/LinearAlignmentsDisplay/models/model.tsx +0 -403
  445. package/src/LinearPileupDisplay/components/ColorByModifications.tsx +0 -102
  446. package/src/LinearPileupDisplay/components/ColorByTag.tsx +0 -61
  447. package/src/LinearPileupDisplay/components/LinearPileupDisplayBlurb.tsx +0 -32
  448. package/src/LinearPileupDisplay/components/ModificationsTable.tsx +0 -38
  449. package/src/LinearPileupDisplay/components/SetFeatureHeight.tsx +0 -82
  450. package/src/LinearPileupDisplay/components/SetMaxHeight.tsx +0 -71
  451. package/src/LinearPileupDisplay/components/SortByTag.tsx +0 -64
  452. package/src/LinearPileupDisplay/configSchema.test.js +0 -55
  453. package/src/LinearPileupDisplay/configSchema.ts +0 -67
  454. package/src/LinearPileupDisplay/index.ts +0 -24
  455. package/src/LinearPileupDisplay/model.ts +0 -884
  456. package/src/LinearReadArcsDisplay/components/ReactComponent.tsx +0 -50
  457. package/src/LinearReadArcsDisplay/configSchema.ts +0 -68
  458. package/src/LinearReadArcsDisplay/declare.d.ts +0 -1
  459. package/src/LinearReadArcsDisplay/drawFeats.ts +0 -210
  460. package/src/LinearReadArcsDisplay/index.ts +0 -23
  461. package/src/LinearReadArcsDisplay/model.tsx +0 -355
  462. package/src/LinearReadArcsDisplay/util.ts +0 -10
  463. package/src/LinearReadCloudDisplay/components/ReactComponent.tsx +0 -48
  464. package/src/LinearReadCloudDisplay/configSchema.ts +0 -57
  465. package/src/LinearReadCloudDisplay/drawFeats.ts +0 -35
  466. package/src/LinearReadCloudDisplay/drawLongReadChains.ts +0 -85
  467. package/src/LinearReadCloudDisplay/drawPairChains.ts +0 -139
  468. package/src/LinearReadCloudDisplay/index.ts +0 -23
  469. package/src/LinearReadCloudDisplay/model.tsx +0 -246
  470. package/src/LinearReadCloudDisplay/util.ts +0 -47
  471. package/src/LinearSNPCoverageDisplay/components/Tooltip.tsx +0 -128
  472. package/src/LinearSNPCoverageDisplay/index.ts +0 -20
  473. package/src/LinearSNPCoverageDisplay/models/configSchema.test.ts +0 -35
  474. package/src/LinearSNPCoverageDisplay/models/configSchema.ts +0 -82
  475. package/src/LinearSNPCoverageDisplay/models/model.ts +0 -336
  476. package/src/MismatchParser/index.test.ts +0 -283
  477. package/src/MismatchParser/index.ts +0 -508
  478. package/src/PileupRPC/base.ts +0 -24
  479. package/src/PileupRPC/index.ts +0 -12
  480. package/src/PileupRPC/methods/GetGlobalValueForTag.ts +0 -44
  481. package/src/PileupRPC/methods/GetReducedFeatures.ts +0 -67
  482. package/src/PileupRPC/methods/GetVisibleModifications.ts +0 -45
  483. package/src/PileupRPC/rpcMethods.ts +0 -3
  484. package/src/PileupRPC/util.ts +0 -19
  485. package/src/PileupRenderer/PileupLayoutSession.ts +0 -64
  486. package/src/PileupRenderer/PileupRenderer.ts +0 -142
  487. package/src/PileupRenderer/colorBy.ts +0 -74
  488. package/src/PileupRenderer/components/PileupRendering.tsx +0 -209
  489. package/src/PileupRenderer/configSchema.ts +0 -108
  490. package/src/PileupRenderer/getAlignmentShapeColor.ts +0 -87
  491. package/src/PileupRenderer/index.ts +0 -16
  492. package/src/PileupRenderer/layoutFeature.ts +0 -83
  493. package/src/PileupRenderer/layoutFeatures.ts +0 -44
  494. package/src/PileupRenderer/makeImageData.ts +0 -93
  495. package/src/PileupRenderer/renderAlignment.ts +0 -97
  496. package/src/PileupRenderer/renderAlignmentShape.ts +0 -45
  497. package/src/PileupRenderer/renderMethylation.ts +0 -75
  498. package/src/PileupRenderer/renderMismatches.ts +0 -206
  499. package/src/PileupRenderer/renderModifications.ts +0 -74
  500. package/src/PileupRenderer/renderPerBaseLettering.ts +0 -67
  501. package/src/PileupRenderer/renderPerBaseQuality.ts +0 -46
  502. package/src/PileupRenderer/renderSoftClipping.ts +0 -78
  503. package/src/PileupRenderer/sortUtil.ts +0 -107
  504. package/src/PileupRenderer/util.ts +0 -63
  505. package/src/SNPCoverageAdapter/SNPCoverageAdapter.ts +0 -111
  506. package/src/SNPCoverageAdapter/configSchema.ts +0 -23
  507. package/src/SNPCoverageAdapter/generateCoverageBins.ts +0 -259
  508. package/src/SNPCoverageAdapter/index.ts +0 -18
  509. package/src/SNPCoverageAdapter/util.ts +0 -33
  510. package/src/SNPCoverageRenderer/SNPCoverageRenderer.ts +0 -270
  511. package/src/SNPCoverageRenderer/configSchema.ts +0 -64
  512. package/src/SNPCoverageRenderer/index.ts +0 -17
  513. package/src/__snapshots__/index.test.ts.snap +0 -3
  514. package/src/index.test.ts +0 -17
  515. package/src/index.ts +0 -48
  516. package/src/shared/BaseDisplayComponent.tsx +0 -83
  517. package/src/shared/FilterByTag.tsx +0 -187
  518. package/src/shared/afterAttach.tsx +0 -66
  519. package/src/shared/color.ts +0 -86
  520. package/src/shared/fetchChains.ts +0 -62
  521. package/src/shared/index.ts +0 -75
  522. package/src/shared/renderSvg.tsx +0 -64
  523. package/src/shared/util.ts +0 -10
  524. package/src/util.ts +0 -154
@@ -1,74 +0,0 @@
1
- import { bpSpanPx, Region } from '@jbrowse/core/util'
2
- import {
3
- getModificationPositions,
4
- getModificationProbabilities,
5
- getNextRefPos,
6
- parseCigar,
7
- } from '../MismatchParser'
8
- import { getTagAlt } from '../util'
9
- import { fillRect, LayoutFeature } from './util'
10
- import { RenderArgsWithColor } from './makeImageData'
11
-
12
- // render modifications stored in MM tag in BAM
13
- //
14
- // ML stores probabilities as array of numerics and MP is scaled phred scores
15
- // https://github.com/samtools/hts-specs/pull/418/files#diff-e765c6479316309f56b636f88189cdde8c40b854c7bdcce9ee7fe87a4e76febcR596
16
- //
17
- // if we have ML or Ml, it is an 8bit probability, divide by 255
18
- //
19
- // if we have MP or Mp it is phred scaled ASCII, which can go up to 90 but
20
- // has very high likelihood basecalls at that point, we really only care
21
- // about low qual calls <20 approx
22
- export function renderModifications({
23
- ctx,
24
- feat,
25
- region,
26
- bpPerPx,
27
- renderArgs,
28
- canvasWidth,
29
- }: {
30
- ctx: CanvasRenderingContext2D
31
- feat: LayoutFeature
32
- region: Region
33
- bpPerPx: number
34
- renderArgs: RenderArgsWithColor
35
- canvasWidth: number
36
- }) {
37
- const { feature, topPx, heightPx } = feat
38
- const { Color, modificationTagMap = {} } = renderArgs
39
-
40
- const seq = feature.get('seq') as string | undefined
41
-
42
- if (!seq) {
43
- return
44
- }
45
- const mm = (getTagAlt(feature, 'MM', 'Mm') as string) || ''
46
- const cigar = feature.get('CIGAR')
47
- const start = feature.get('start')
48
- const strand = feature.get('strand')
49
- const cigarOps = parseCigar(cigar)
50
- const probabilities = getModificationProbabilities(feature)
51
- const modifications = getModificationPositions(mm, seq, strand)
52
-
53
- // probIndex applies across multiple modifications e.g.
54
- let probIndex = 0
55
- for (const { type, positions } of modifications) {
56
- const col = modificationTagMap[type] || 'black'
57
- const base = Color(col)
58
- for (const readPos of getNextRefPos(cigarOps, positions)) {
59
- const r = start + readPos
60
- const [leftPx, rightPx] = bpSpanPx(r, r + 1, region, bpPerPx)
61
- const prob = probabilities?.[probIndex] || 0
62
- const c =
63
- prob !== 1
64
- ? base
65
- .alpha(prob + 0.1)
66
- .hsl()
67
- .string()
68
- : col
69
- const w = rightPx - leftPx + 0.5
70
- fillRect(ctx, leftPx, topPx, w, heightPx, canvasWidth, c)
71
- probIndex++
72
- }
73
- }
74
- }
@@ -1,67 +0,0 @@
1
- import { bpSpanPx, Region } from '@jbrowse/core/util'
2
- import { parseCigar } from '../MismatchParser'
3
- import { fillRect, LayoutFeature } from './util'
4
-
5
- export function renderPerBaseLettering({
6
- ctx,
7
- feat,
8
- region,
9
- bpPerPx,
10
- colorForBase,
11
- contrastForBase,
12
- charWidth,
13
- charHeight,
14
- canvasWidth,
15
- }: {
16
- ctx: CanvasRenderingContext2D
17
- feat: LayoutFeature
18
- region: Region
19
- bpPerPx: number
20
- colorForBase: Record<string, string>
21
- contrastForBase: Record<string, string>
22
- charWidth: number
23
- charHeight: number
24
- canvasWidth: number
25
- }) {
26
- const heightLim = charHeight - 2
27
- const { feature, topPx, heightPx } = feat
28
- const seq = feature.get('seq') as string | undefined
29
- const cigarOps = parseCigar(feature.get('CIGAR'))
30
- const w = 1 / bpPerPx
31
- const start = feature.get('start')
32
- let soffset = 0
33
- let roffset = 0
34
-
35
- if (!seq) {
36
- return
37
- }
38
- for (let i = 0; i < cigarOps.length; i += 2) {
39
- const len = +cigarOps[i]
40
- const op = cigarOps[i + 1]
41
- if (op === 'S' || op === 'I') {
42
- soffset += len
43
- } else if (op === 'D' || op === 'N') {
44
- roffset += len
45
- } else if (op === 'M' || op === 'X' || op === '=') {
46
- for (let m = 0; m < len; m++) {
47
- const letter = seq[soffset + m]
48
- const r = start + roffset + m
49
- const [leftPx] = bpSpanPx(r, r + 1, region, bpPerPx)
50
- const c = colorForBase[letter]
51
- fillRect(ctx, leftPx, topPx, w + 0.5, heightPx, canvasWidth, c)
52
-
53
- if (w >= charWidth && heightPx >= heightLim) {
54
- // normal SNP coloring
55
- ctx.fillStyle = contrastForBase[letter]
56
- ctx.fillText(
57
- letter,
58
- leftPx + (w - charWidth) / 2 + 1,
59
- topPx + heightPx,
60
- )
61
- }
62
- }
63
- soffset += len
64
- roffset += len
65
- }
66
- }
67
- }
@@ -1,46 +0,0 @@
1
- import { bpSpanPx, Region } from '@jbrowse/core/util'
2
- import { parseCigar } from '../MismatchParser'
3
- import { fillRect, LayoutFeature } from './util'
4
-
5
- export function renderPerBaseQuality({
6
- ctx,
7
- feat,
8
- region,
9
- bpPerPx,
10
- canvasWidth,
11
- }: {
12
- ctx: CanvasRenderingContext2D
13
- feat: LayoutFeature
14
- region: Region
15
- bpPerPx: number
16
- canvasWidth: number
17
- }) {
18
- const { feature, topPx, heightPx } = feat
19
- const qual: string = feature.get('qual') || ''
20
- const scores = qual.split(' ').map(val => +val)
21
- const cigarOps = parseCigar(feature.get('CIGAR'))
22
- const w = 1 / bpPerPx
23
- const start = feature.get('start')
24
- let soffset = 0 // sequence offset
25
- let roffset = 0 // reference offset
26
-
27
- for (let i = 0; i < cigarOps.length; i += 2) {
28
- const len = +cigarOps[i]
29
- const op = cigarOps[i + 1]
30
- if (op === 'S' || op === 'I') {
31
- soffset += len
32
- } else if (op === 'D' || op === 'N') {
33
- roffset += len
34
- } else if (op === 'M' || op === 'X' || op === '=') {
35
- for (let m = 0; m < len; m++) {
36
- const score = scores[soffset + m]
37
- const start0 = start + roffset + m
38
- const leftPx = bpSpanPx(start0, start0 + 1, region, bpPerPx)[0]
39
- const c = `hsl(${score === 255 ? 150 : score * 1.5},55%,50%)`
40
- fillRect(ctx, leftPx, topPx, w + 0.5, heightPx, canvasWidth, c)
41
- }
42
- soffset += len
43
- roffset += len
44
- }
45
- }
46
- }
@@ -1,78 +0,0 @@
1
- import {
2
- AnyConfigurationModel,
3
- readConfObject,
4
- } from '@jbrowse/core/configuration'
5
- import { bpSpanPx } from '@jbrowse/core/util'
6
- import { Theme } from '@mui/material'
7
-
8
- // locals
9
- import { Mismatch } from '../MismatchParser'
10
- import { RenderArgsDeserializedWithFeaturesAndLayout } from './PileupRenderer'
11
- import { fillRect, getCharWidthHeight, LayoutFeature } from './util'
12
-
13
- export function renderSoftClipping({
14
- ctx,
15
- feat,
16
- renderArgs,
17
- config,
18
- theme,
19
- colorForBase,
20
- canvasWidth,
21
- }: {
22
- ctx: CanvasRenderingContext2D
23
- feat: LayoutFeature
24
- renderArgs: RenderArgsDeserializedWithFeaturesAndLayout
25
- config: AnyConfigurationModel
26
- colorForBase: Record<string, string>
27
- theme: Theme
28
- canvasWidth: number
29
- }) {
30
- const { feature, topPx, heightPx } = feat
31
- const { regions, bpPerPx } = renderArgs
32
- const [region] = regions
33
- const minFeatWidth = readConfObject(config, 'minSubfeatureWidth')
34
- const mismatches = feature.get('mismatches') as Mismatch[] | undefined
35
- const seq = feature.get('seq') as string | undefined
36
- const { charWidth, charHeight } = getCharWidthHeight()
37
-
38
- // Display all bases softclipped off in lightened colors
39
- if (!(seq && mismatches)) {
40
- return
41
- }
42
- mismatches
43
- .filter(mismatch => mismatch.type === 'softclip')
44
- .forEach(mismatch => {
45
- const len = mismatch.cliplen || 0
46
- const s = feature.get('start')
47
- const start = mismatch.start === 0 ? s - len : s + mismatch.start
48
-
49
- for (let k = 0; k < len; k += 1) {
50
- const base = seq.charAt(k + mismatch.start)
51
-
52
- // If softclip length+start is longer than sequence, no need to
53
- // continue showing base
54
- if (!base) {
55
- return
56
- }
57
-
58
- const s0 = start + k
59
- const [leftPx, rightPx] = bpSpanPx(s0, s0 + 1, region, bpPerPx)
60
- const widthPx = Math.max(minFeatWidth, rightPx - leftPx)
61
-
62
- // Black accounts for IUPAC ambiguity code bases such as N that
63
- // show in soft clipping
64
- const baseColor = colorForBase[base] || '#000000'
65
- ctx.fillStyle = baseColor
66
- fillRect(ctx, leftPx, topPx, widthPx, heightPx, canvasWidth)
67
-
68
- if (widthPx >= charWidth && heightPx >= charHeight - 5) {
69
- ctx.fillStyle = theme.palette.getContrastText(baseColor)
70
- ctx.fillText(
71
- base,
72
- leftPx + (widthPx - charWidth) / 2 + 1,
73
- topPx + heightPx,
74
- )
75
- }
76
- }
77
- })
78
- }
@@ -1,107 +0,0 @@
1
- import { doesIntersect2, Feature } from '@jbrowse/core/util'
2
- import { Mismatch } from '../MismatchParser'
3
-
4
- interface SortObject {
5
- pos: number
6
- type: string
7
- tag?: string
8
- }
9
- export const sortFeature = (
10
- features: Map<string, Feature>,
11
- sortedBy: SortObject,
12
- ) => {
13
- const featureArray = Array.from(features.values())
14
- const featuresInCenterLine: Feature[] = []
15
- const featuresOutsideCenter: Feature[] = []
16
- const { pos, type } = sortedBy
17
-
18
- // only sort on features that intersect center line, append those outside post-sort
19
- featureArray.forEach(innerArray => {
20
- const feature = innerArray
21
- const start = feature.get('start')
22
- const end = feature.get('end')
23
- if (doesIntersect2(pos - 1, pos, start, end)) {
24
- featuresInCenterLine.push(innerArray)
25
- } else {
26
- featuresOutsideCenter.push(innerArray)
27
- }
28
- })
29
-
30
- const isCram = featureArray.length ? featureArray[0].get('tags') : false
31
- switch (type) {
32
- case 'Start location': {
33
- featuresInCenterLine.sort((a, b) => a.get('start') - b.get('start'))
34
- break
35
- }
36
-
37
- case 'tag': {
38
- const tag = sortedBy.tag as string
39
- const getTag = (f: Feature, t: string) => {
40
- return isCram ? f.get('tags')[t] : f.get(t)
41
- }
42
- const isString =
43
- featuresInCenterLine[0] &&
44
- typeof getTag(featuresInCenterLine[0], tag) === 'string'
45
- if (isString) {
46
- featuresInCenterLine.sort((a, b) =>
47
- getTag(b, tag).localeCompare(getTag(a, tag)),
48
- )
49
- } else {
50
- featuresInCenterLine.sort(
51
- (a, b) => (getTag(b, tag) || 0) - (getTag(a, tag) || 0),
52
- )
53
- }
54
- break
55
- }
56
-
57
- // first sort all mismatches, then all reference bases at the end
58
- case 'Base pair': {
59
- const baseSortArray: [string, Mismatch][] = []
60
- featuresInCenterLine.forEach(feature => {
61
- const mismatches: Mismatch[] = feature.get('mismatches')
62
- mismatches.forEach(mismatch => {
63
- const start = feature.get('start')
64
- const offset = start + mismatch.start + 1
65
- const consuming =
66
- mismatch.type === 'insertion' || mismatch.type === 'softclip'
67
- const len = consuming ? 0 : mismatch.length
68
- if (pos >= offset && pos < offset + len) {
69
- baseSortArray.push([feature.id(), mismatch])
70
- }
71
- })
72
- })
73
-
74
- const baseMap = new Map(baseSortArray)
75
- featuresInCenterLine.sort((a, b) => {
76
- const aMismatch = baseMap.get(a.id())
77
- const bMismatch = baseMap.get(b.id())
78
- const acode = bMismatch && bMismatch.base.toUpperCase()
79
- const bcode = aMismatch && aMismatch.base.toUpperCase()
80
- if (acode === bcode && acode === '*') {
81
- // @ts-expect-error
82
- return aMismatch.length - bMismatch.length
83
- }
84
- return (
85
- (acode ? acode.charCodeAt(0) : 0) - (bcode ? bcode.charCodeAt(0) : 0)
86
- )
87
- })
88
-
89
- break
90
- }
91
-
92
- // sorts positive strands then negative strands
93
- case 'Read strand': {
94
- featuresInCenterLine.sort((a, b) =>
95
- a.get('strand') <= b.get('strand') ? 1 : -1,
96
- )
97
- break
98
- }
99
- }
100
-
101
- return new Map(
102
- [...featuresInCenterLine, ...featuresOutsideCenter].map(feature => [
103
- feature.id(),
104
- feature,
105
- ]),
106
- )
107
- }
@@ -1,63 +0,0 @@
1
- import { Feature, measureText } from '@jbrowse/core/util'
2
- import { Theme } from '@mui/material'
3
-
4
- export function fillRect(
5
- ctx: CanvasRenderingContext2D,
6
- l: number,
7
- t: number,
8
- w: number,
9
- h: number,
10
- cw: number,
11
- color?: string,
12
- ) {
13
- if (l + w < 0 || l > cw) {
14
- return
15
- } else {
16
- if (color) {
17
- ctx.fillStyle = color
18
- }
19
- ctx.fillRect(l, t, w, h)
20
- }
21
- }
22
-
23
- export function getColorBaseMap(theme: Theme) {
24
- const { bases } = theme.palette
25
- return {
26
- A: bases.A.main,
27
- C: bases.C.main,
28
- G: bases.G.main,
29
- T: bases.T.main,
30
- deletion: '#808080', // gray
31
- }
32
- }
33
-
34
- export function getContrastBaseMap(theme: Theme) {
35
- return Object.fromEntries(
36
- Object.entries(getColorBaseMap(theme)).map(([key, value]) => [
37
- key,
38
- theme.palette.getContrastText(value),
39
- ]),
40
- )
41
- }
42
-
43
- export function shouldDrawSNPsMuted(type?: string) {
44
- return ['methylation', 'modifications'].includes(type || '')
45
- }
46
-
47
- export function shouldDrawIndels() {
48
- return true
49
- }
50
-
51
- export interface LayoutFeature {
52
- heightPx: number
53
- topPx: number
54
- feature: Feature
55
- }
56
-
57
- // get width and height of chars the height is an approximation: width letter M
58
- // is approximately the height
59
- export function getCharWidthHeight() {
60
- const charWidth = measureText('A')
61
- const charHeight = measureText('M') - 2
62
- return { charWidth, charHeight }
63
- }
@@ -1,111 +0,0 @@
1
- import {
2
- BaseFeatureDataAdapter,
3
- BaseOptions,
4
- } from '@jbrowse/core/data_adapters/BaseAdapter'
5
- import { AugmentedRegion as Region } from '@jbrowse/core/util/types'
6
- import SimpleFeature, { Feature } from '@jbrowse/core/util/simpleFeature'
7
- import { ObservableCreate } from '@jbrowse/core/util/rxjs'
8
- import { toArray } from 'rxjs/operators'
9
- import { firstValueFrom } from 'rxjs'
10
-
11
- // locals
12
- import generateCoverageBins from './generateCoverageBins'
13
- import { fetchSequence } from '../util'
14
-
15
- export default class SNPCoverageAdapter extends BaseFeatureDataAdapter {
16
- protected async configure() {
17
- const subadapterConfig = this.getConf('subadapter')
18
- const sequenceConf = subadapterConfig.sequenceAdapter
19
- const dataAdapter = await this.getSubAdapter?.(subadapterConfig)
20
-
21
- const sequenceAdapter = sequenceConf
22
- ? await this.getSubAdapter?.(sequenceConf)
23
- : undefined
24
-
25
- if (!dataAdapter) {
26
- throw new Error('Failed to get subadapter')
27
- }
28
-
29
- return {
30
- subadapter: dataAdapter.dataAdapter as BaseFeatureDataAdapter,
31
- sequenceAdapter: sequenceAdapter?.dataAdapter as
32
- | BaseFeatureDataAdapter
33
- | undefined,
34
- }
35
- }
36
-
37
- async fetchSequence(region: Region) {
38
- const { sequenceAdapter } = await this.configure()
39
- if (!sequenceAdapter) {
40
- return undefined
41
- }
42
-
43
- return fetchSequence(region, sequenceAdapter)
44
- }
45
-
46
- getFeatures(region: Region, opts: BaseOptions = {}) {
47
- return ObservableCreate<Feature>(async observer => {
48
- const { subadapter } = await this.configure()
49
- const feats = await firstValueFrom(
50
- subadapter.getFeatures(region, opts).pipe(toArray()),
51
- )
52
-
53
- const { bins, skipmap } = await generateCoverageBins(
54
- feats,
55
- region,
56
- opts,
57
- arg => this.fetchSequence(arg),
58
- )
59
-
60
- bins.forEach((bin, index) => {
61
- const start = region.start + index
62
- observer.next(
63
- new SimpleFeature({
64
- id: `${this.id}-${start}`,
65
- data: {
66
- score: bin.total,
67
- snpinfo: bin,
68
- start,
69
- end: start + 1,
70
- refName: region.refName,
71
- },
72
- }),
73
- )
74
- })
75
-
76
- // make fake features from the coverage
77
- Object.entries(skipmap).forEach(([key, skip]) => {
78
- observer.next(
79
- new SimpleFeature({
80
- id: key,
81
- data: {
82
- type: 'skip',
83
- start: skip.start,
84
- end: skip.end,
85
- strand: skip.strand,
86
- score: skip.score,
87
- xs: skip.xs,
88
- },
89
- }),
90
- )
91
- })
92
-
93
- observer.complete()
94
- }, opts.signal)
95
- }
96
-
97
- async getMultiRegionFeatureDensityStats(
98
- regions: Region[],
99
- opts?: BaseOptions,
100
- ) {
101
- const { subadapter } = await this.configure()
102
- return subadapter.getMultiRegionFeatureDensityStats(regions, opts)
103
- }
104
-
105
- async getRefNames(opts: BaseOptions = {}) {
106
- const { subadapter } = await this.configure()
107
- return subadapter.getRefNames(opts)
108
- }
109
-
110
- freeResources(/* { region } */): void {}
111
- }
@@ -1,23 +0,0 @@
1
- import { ConfigurationSchema } from '@jbrowse/core/configuration'
2
-
3
- /**
4
- * #config SNPCoverageAdapter
5
- */
6
- function x() {} // eslint-disable-line @typescript-eslint/no-unused-vars
7
-
8
- const configSchema = ConfigurationSchema(
9
- 'SNPCoverageAdapter',
10
- {
11
- /**
12
- * #slot
13
- * normally refers to a BAM or CRAM adapter
14
- */
15
- subadapter: {
16
- type: 'frozen',
17
- defaultValue: null,
18
- },
19
- },
20
- { explicitlyTyped: true },
21
- )
22
-
23
- export default configSchema