@jbrowse/plugin-alignments 2.4.2 → 2.6.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 (443) hide show
  1. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
  2. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureFlags.d.ts +2 -2
  3. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js +2 -1
  4. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js.map +1 -1
  5. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.d.ts +2 -2
  6. package/dist/AlignmentsFeatureDetail/index.d.ts +4 -1
  7. package/dist/AlignmentsTrack/configSchemaF.d.ts +74 -0
  8. package/dist/AlignmentsTrack/configSchemaF.js +19 -0
  9. package/dist/AlignmentsTrack/configSchemaF.js.map +1 -0
  10. package/dist/AlignmentsTrack/index.js +2 -15
  11. package/dist/AlignmentsTrack/index.js.map +1 -1
  12. package/dist/BamAdapter/BamAdapter.d.ts +2 -2
  13. package/dist/BamAdapter/BamAdapter.js +27 -32
  14. package/dist/BamAdapter/BamAdapter.js.map +1 -1
  15. package/dist/BamAdapter/BamSlightlyLazyFeature.d.ts +1 -1
  16. package/dist/BamAdapter/configSchema.d.ts +50 -1
  17. package/dist/CramAdapter/CramAdapter.d.ts +1 -1
  18. package/dist/CramAdapter/CramAdapter.js +49 -47
  19. package/dist/CramAdapter/CramAdapter.js.map +1 -1
  20. package/dist/CramAdapter/CramSlightlyLazyFeature.js +3 -5
  21. package/dist/CramAdapter/CramSlightlyLazyFeature.js.map +1 -1
  22. package/dist/CramAdapter/CramTestAdapters.js +3 -3
  23. package/dist/CramAdapter/CramTestAdapters.js.map +1 -1
  24. package/dist/CramAdapter/configSchema.d.ts +40 -1
  25. package/dist/HtsgetBamAdapter/configSchema.d.ts +26 -1
  26. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +2 -2
  27. package/dist/LinearAlignmentsDisplay/models/configSchema.d.ts +39 -1
  28. package/dist/LinearAlignmentsDisplay/models/model.d.ts +20 -6
  29. package/dist/LinearAlignmentsDisplay/models/model.js +9 -4
  30. package/dist/LinearAlignmentsDisplay/models/model.js.map +1 -1
  31. package/dist/LinearPileupDisplay/components/ColorByModifications.d.ts +2 -2
  32. package/dist/LinearPileupDisplay/components/ColorByModifications.js +3 -23
  33. package/dist/LinearPileupDisplay/components/ColorByModifications.js.map +1 -1
  34. package/dist/LinearPileupDisplay/components/ColorByTag.d.ts +2 -2
  35. package/dist/LinearPileupDisplay/components/ColorByTag.js +2 -6
  36. package/dist/LinearPileupDisplay/components/ColorByTag.js.map +1 -1
  37. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -3
  38. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +6 -6
  39. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +1 -1
  40. package/dist/LinearPileupDisplay/components/ModificationsTable.d.ts +4 -0
  41. package/dist/LinearPileupDisplay/components/ModificationsTable.js +29 -0
  42. package/dist/LinearPileupDisplay/components/ModificationsTable.js.map +1 -0
  43. package/dist/LinearPileupDisplay/components/SetFeatureHeight.d.ts +2 -2
  44. package/dist/LinearPileupDisplay/components/SetMaxHeight.d.ts +2 -2
  45. package/dist/LinearPileupDisplay/components/SetMaxHeight.js +3 -5
  46. package/dist/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -1
  47. package/dist/LinearPileupDisplay/components/SortByTag.d.ts +2 -2
  48. package/dist/LinearPileupDisplay/configSchema.d.ts +57 -1
  49. package/dist/LinearPileupDisplay/model.d.ts +160 -80
  50. package/dist/LinearPileupDisplay/model.js +181 -138
  51. package/dist/LinearPileupDisplay/model.js.map +1 -1
  52. package/dist/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -2
  53. package/dist/LinearReadArcsDisplay/components/ReactComponent.js +36 -39
  54. package/dist/LinearReadArcsDisplay/components/ReactComponent.js.map +1 -1
  55. package/dist/LinearReadArcsDisplay/configSchema.d.ts +59 -1
  56. package/dist/LinearReadArcsDisplay/drawFeats.d.ts +2 -15
  57. package/dist/LinearReadArcsDisplay/drawFeats.js +58 -66
  58. package/dist/LinearReadArcsDisplay/drawFeats.js.map +1 -1
  59. package/dist/LinearReadArcsDisplay/model.d.ts +58 -193
  60. package/dist/LinearReadArcsDisplay/model.js +65 -115
  61. package/dist/LinearReadArcsDisplay/model.js.map +1 -1
  62. package/dist/LinearReadArcsDisplay/util.d.ts +2 -0
  63. package/dist/LinearReadArcsDisplay/util.js +13 -0
  64. package/dist/LinearReadArcsDisplay/util.js.map +1 -0
  65. package/dist/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -2
  66. package/dist/LinearReadCloudDisplay/components/ReactComponent.js +34 -36
  67. package/dist/LinearReadCloudDisplay/components/ReactComponent.js.map +1 -1
  68. package/dist/LinearReadCloudDisplay/configSchema.d.ts +52 -1
  69. package/dist/LinearReadCloudDisplay/drawFeats.d.ts +2 -10
  70. package/dist/LinearReadCloudDisplay/drawFeats.js +11 -127
  71. package/dist/LinearReadCloudDisplay/drawFeats.js.map +1 -1
  72. package/dist/LinearReadCloudDisplay/drawLongReadChains.d.ts +11 -0
  73. package/dist/LinearReadCloudDisplay/drawLongReadChains.js +69 -0
  74. package/dist/LinearReadCloudDisplay/drawLongReadChains.js.map +1 -0
  75. package/dist/LinearReadCloudDisplay/drawPairChains.d.ts +17 -0
  76. package/dist/LinearReadCloudDisplay/drawPairChains.js +100 -0
  77. package/dist/LinearReadCloudDisplay/drawPairChains.js.map +1 -0
  78. package/dist/LinearReadCloudDisplay/model.d.ts +65 -196
  79. package/dist/LinearReadCloudDisplay/model.js +55 -92
  80. package/dist/LinearReadCloudDisplay/model.js.map +1 -1
  81. package/dist/LinearReadCloudDisplay/util.d.ts +2 -0
  82. package/dist/LinearReadCloudDisplay/util.js +35 -0
  83. package/dist/LinearReadCloudDisplay/util.js.map +1 -0
  84. package/dist/LinearSNPCoverageDisplay/components/Tooltip.d.ts +2 -2
  85. package/dist/LinearSNPCoverageDisplay/models/configSchema.d.ts +79 -1
  86. package/dist/LinearSNPCoverageDisplay/models/model.d.ts +157 -70
  87. package/dist/LinearSNPCoverageDisplay/models/model.js +46 -33
  88. package/dist/LinearSNPCoverageDisplay/models/model.js.map +1 -1
  89. package/dist/MismatchParser/index.d.ts +7 -2
  90. package/dist/MismatchParser/index.js +44 -5
  91. package/dist/MismatchParser/index.js.map +1 -1
  92. package/dist/PileupRPC/methods/GetReducedFeatures.d.ts +15 -2
  93. package/dist/PileupRPC/methods/GetReducedFeatures.js +1 -8
  94. package/dist/PileupRPC/methods/GetReducedFeatures.js.map +1 -1
  95. package/dist/PileupRenderer/PileupLayoutSession.d.ts +1 -1
  96. package/dist/PileupRenderer/PileupRenderer.d.ts +4 -117
  97. package/dist/PileupRenderer/PileupRenderer.js +18 -752
  98. package/dist/PileupRenderer/PileupRenderer.js.map +1 -1
  99. package/dist/PileupRenderer/colorBy.d.ts +7 -0
  100. package/dist/PileupRenderer/colorBy.js +69 -0
  101. package/dist/PileupRenderer/colorBy.js.map +1 -0
  102. package/dist/PileupRenderer/components/PileupRendering.d.ts +7 -2
  103. package/dist/PileupRenderer/components/PileupRendering.js +17 -18
  104. package/dist/PileupRenderer/components/PileupRendering.js.map +1 -1
  105. package/dist/PileupRenderer/configSchema.d.ts +87 -1
  106. package/dist/PileupRenderer/getAlignmentShapeColor.d.ts +10 -0
  107. package/dist/PileupRenderer/getAlignmentShapeColor.js +60 -0
  108. package/dist/PileupRenderer/getAlignmentShapeColor.js.map +1 -0
  109. package/dist/PileupRenderer/index.js +1 -1
  110. package/dist/PileupRenderer/index.js.map +1 -1
  111. package/dist/PileupRenderer/layoutFeature.d.ts +18 -0
  112. package/dist/PileupRenderer/layoutFeature.js +41 -0
  113. package/dist/PileupRenderer/layoutFeature.js.map +1 -0
  114. package/dist/PileupRenderer/layoutFeatures.d.ts +2 -0
  115. package/dist/PileupRenderer/layoutFeatures.js +35 -0
  116. package/dist/PileupRenderer/layoutFeatures.js.map +1 -0
  117. package/dist/PileupRenderer/makeImageData.d.ts +17 -0
  118. package/dist/PileupRenderer/makeImageData.js +64 -0
  119. package/dist/PileupRenderer/makeImageData.js.map +1 -0
  120. package/dist/PileupRenderer/renderAlignment.d.ts +13 -0
  121. package/dist/PileupRenderer/renderAlignment.js +72 -0
  122. package/dist/PileupRenderer/renderAlignment.js.map +1 -0
  123. package/dist/PileupRenderer/renderAlignmentShape.d.ts +7 -0
  124. package/dist/PileupRenderer/renderAlignmentShape.js +41 -0
  125. package/dist/PileupRenderer/renderAlignmentShape.js.map +1 -0
  126. package/dist/PileupRenderer/renderMethylation.d.ts +11 -0
  127. package/dist/PileupRenderer/renderMethylation.js +63 -0
  128. package/dist/PileupRenderer/renderMethylation.js.map +1 -0
  129. package/dist/PileupRenderer/renderMismatches.d.ts +21 -0
  130. package/dist/PileupRenderer/renderMismatches.js +135 -0
  131. package/dist/PileupRenderer/renderMismatches.js.map +1 -0
  132. package/dist/PileupRenderer/renderModifications.d.ts +11 -0
  133. package/dist/PileupRenderer/renderModifications.js +54 -0
  134. package/dist/PileupRenderer/renderModifications.js.map +1 -0
  135. package/dist/PileupRenderer/renderPerBaseLettering.d.ts +13 -0
  136. package/dist/PileupRenderer/renderPerBaseLettering.js +47 -0
  137. package/dist/PileupRenderer/renderPerBaseLettering.js.map +1 -0
  138. package/dist/PileupRenderer/renderPerBaseQuality.d.ts +9 -0
  139. package/dist/PileupRenderer/renderPerBaseQuality.js +39 -0
  140. package/dist/PileupRenderer/renderPerBaseQuality.js.map +1 -0
  141. package/dist/PileupRenderer/renderSoftClipping.d.ts +13 -0
  142. package/dist/PileupRenderer/renderSoftClipping.js +48 -0
  143. package/dist/PileupRenderer/renderSoftClipping.js.map +1 -0
  144. package/dist/PileupRenderer/sortUtil.js +1 -2
  145. package/dist/PileupRenderer/sortUtil.js.map +1 -1
  146. package/dist/PileupRenderer/util.d.ts +24 -0
  147. package/dist/PileupRenderer/util.js +51 -0
  148. package/dist/PileupRenderer/util.js.map +1 -0
  149. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +1 -3
  150. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +2 -5
  151. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -1
  152. package/dist/SNPCoverageAdapter/configSchema.d.ts +10 -1
  153. package/dist/SNPCoverageAdapter/generateCoverageBins.d.ts +3 -43
  154. package/dist/SNPCoverageAdapter/generateCoverageBins.js +86 -59
  155. package/dist/SNPCoverageAdapter/generateCoverageBins.js.map +1 -1
  156. package/dist/SNPCoverageAdapter/index.js +0 -2
  157. package/dist/SNPCoverageAdapter/index.js.map +1 -1
  158. package/dist/SNPCoverageAdapter/util.d.ts +29 -0
  159. package/dist/SNPCoverageAdapter/util.js +3 -0
  160. package/dist/SNPCoverageAdapter/util.js.map +1 -0
  161. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +1 -1
  162. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +2 -2
  163. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js.map +1 -1
  164. package/dist/SNPCoverageRenderer/configSchema.d.ts +47 -1
  165. package/dist/SNPCoverageRenderer/configSchema.js +5 -0
  166. package/dist/SNPCoverageRenderer/configSchema.js.map +1 -1
  167. package/dist/shared/BaseDisplayComponent.d.ts +8 -0
  168. package/dist/shared/BaseDisplayComponent.js +49 -0
  169. package/dist/shared/BaseDisplayComponent.js.map +1 -0
  170. package/dist/shared/FilterByTag.d.ts +13 -12
  171. package/dist/shared/FilterByTag.js +8 -13
  172. package/dist/shared/FilterByTag.js.map +1 -1
  173. package/dist/shared/afterAttach.d.ts +2 -0
  174. package/dist/shared/afterAttach.js +44 -0
  175. package/dist/shared/afterAttach.js.map +1 -0
  176. package/dist/shared/color.d.ts +44 -6
  177. package/dist/shared/color.js +57 -23
  178. package/dist/shared/color.js.map +1 -1
  179. package/dist/shared/fetchChains.d.ts +3 -2
  180. package/dist/shared/fetchChains.js +14 -20
  181. package/dist/shared/fetchChains.js.map +1 -1
  182. package/dist/shared/renderSvg.d.ts +7 -0
  183. package/dist/shared/renderSvg.js +69 -0
  184. package/dist/shared/renderSvg.js.map +1 -0
  185. package/dist/shared/util.d.ts +2 -0
  186. package/dist/shared/util.js +13 -0
  187. package/dist/shared/util.js.map +1 -0
  188. package/dist/util.d.ts +16 -2
  189. package/dist/util.js +45 -4
  190. package/dist/util.js.map +1 -1
  191. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +2 -2
  192. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureFlags.d.ts +2 -2
  193. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js +3 -2
  194. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js.map +1 -1
  195. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.d.ts +2 -2
  196. package/esm/AlignmentsFeatureDetail/index.d.ts +4 -1
  197. package/esm/AlignmentsTrack/configSchemaF.d.ts +74 -0
  198. package/esm/AlignmentsTrack/configSchemaF.js +16 -0
  199. package/esm/AlignmentsTrack/configSchemaF.js.map +1 -0
  200. package/esm/AlignmentsTrack/index.js +3 -16
  201. package/esm/AlignmentsTrack/index.js.map +1 -1
  202. package/esm/BamAdapter/BamAdapter.d.ts +2 -2
  203. package/esm/BamAdapter/BamAdapter.js +27 -32
  204. package/esm/BamAdapter/BamAdapter.js.map +1 -1
  205. package/esm/BamAdapter/BamSlightlyLazyFeature.d.ts +1 -1
  206. package/esm/BamAdapter/configSchema.d.ts +50 -1
  207. package/esm/CramAdapter/CramAdapter.d.ts +1 -1
  208. package/esm/CramAdapter/CramAdapter.js +50 -48
  209. package/esm/CramAdapter/CramAdapter.js.map +1 -1
  210. package/esm/CramAdapter/CramSlightlyLazyFeature.js +3 -5
  211. package/esm/CramAdapter/CramSlightlyLazyFeature.js.map +1 -1
  212. package/esm/CramAdapter/CramTestAdapters.js +2 -2
  213. package/esm/CramAdapter/CramTestAdapters.js.map +1 -1
  214. package/esm/CramAdapter/configSchema.d.ts +40 -1
  215. package/esm/HtsgetBamAdapter/configSchema.d.ts +26 -1
  216. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +2 -2
  217. package/esm/LinearAlignmentsDisplay/models/configSchema.d.ts +39 -1
  218. package/esm/LinearAlignmentsDisplay/models/model.d.ts +20 -6
  219. package/esm/LinearAlignmentsDisplay/models/model.js +9 -4
  220. package/esm/LinearAlignmentsDisplay/models/model.js.map +1 -1
  221. package/esm/LinearPileupDisplay/components/ColorByModifications.d.ts +2 -2
  222. package/esm/LinearPileupDisplay/components/ColorByModifications.js +2 -22
  223. package/esm/LinearPileupDisplay/components/ColorByModifications.js.map +1 -1
  224. package/esm/LinearPileupDisplay/components/ColorByTag.d.ts +2 -2
  225. package/esm/LinearPileupDisplay/components/ColorByTag.js +2 -6
  226. package/esm/LinearPileupDisplay/components/ColorByTag.js.map +1 -1
  227. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +3 -3
  228. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +6 -6
  229. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +1 -1
  230. package/esm/LinearPileupDisplay/components/ModificationsTable.d.ts +4 -0
  231. package/esm/LinearPileupDisplay/components/ModificationsTable.js +23 -0
  232. package/esm/LinearPileupDisplay/components/ModificationsTable.js.map +1 -0
  233. package/esm/LinearPileupDisplay/components/SetFeatureHeight.d.ts +2 -2
  234. package/esm/LinearPileupDisplay/components/SetMaxHeight.d.ts +2 -2
  235. package/esm/LinearPileupDisplay/components/SetMaxHeight.js +3 -5
  236. package/esm/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -1
  237. package/esm/LinearPileupDisplay/components/SortByTag.d.ts +2 -2
  238. package/esm/LinearPileupDisplay/configSchema.d.ts +57 -1
  239. package/esm/LinearPileupDisplay/model.d.ts +160 -80
  240. package/esm/LinearPileupDisplay/model.js +182 -139
  241. package/esm/LinearPileupDisplay/model.js.map +1 -1
  242. package/esm/LinearReadArcsDisplay/components/ReactComponent.d.ts +2 -2
  243. package/esm/LinearReadArcsDisplay/components/ReactComponent.js +13 -39
  244. package/esm/LinearReadArcsDisplay/components/ReactComponent.js.map +1 -1
  245. package/esm/LinearReadArcsDisplay/configSchema.d.ts +59 -1
  246. package/esm/LinearReadArcsDisplay/drawFeats.d.ts +2 -15
  247. package/esm/LinearReadArcsDisplay/drawFeats.js +56 -63
  248. package/esm/LinearReadArcsDisplay/drawFeats.js.map +1 -1
  249. package/esm/LinearReadArcsDisplay/model.d.ts +58 -193
  250. package/esm/LinearReadArcsDisplay/model.js +69 -119
  251. package/esm/LinearReadArcsDisplay/model.js.map +1 -1
  252. package/esm/LinearReadArcsDisplay/util.d.ts +2 -0
  253. package/esm/LinearReadArcsDisplay/util.js +9 -0
  254. package/esm/LinearReadArcsDisplay/util.js.map +1 -0
  255. package/esm/LinearReadCloudDisplay/components/ReactComponent.d.ts +2 -2
  256. package/esm/LinearReadCloudDisplay/components/ReactComponent.js +11 -36
  257. package/esm/LinearReadCloudDisplay/components/ReactComponent.js.map +1 -1
  258. package/esm/LinearReadCloudDisplay/configSchema.d.ts +52 -1
  259. package/esm/LinearReadCloudDisplay/drawFeats.d.ts +2 -10
  260. package/esm/LinearReadCloudDisplay/drawFeats.js +9 -126
  261. package/esm/LinearReadCloudDisplay/drawFeats.js.map +1 -1
  262. package/esm/LinearReadCloudDisplay/drawLongReadChains.d.ts +11 -0
  263. package/esm/LinearReadCloudDisplay/drawLongReadChains.js +65 -0
  264. package/esm/LinearReadCloudDisplay/drawLongReadChains.js.map +1 -0
  265. package/esm/LinearReadCloudDisplay/drawPairChains.d.ts +17 -0
  266. package/esm/LinearReadCloudDisplay/drawPairChains.js +95 -0
  267. package/esm/LinearReadCloudDisplay/drawPairChains.js.map +1 -0
  268. package/esm/LinearReadCloudDisplay/model.d.ts +65 -196
  269. package/esm/LinearReadCloudDisplay/model.js +59 -96
  270. package/esm/LinearReadCloudDisplay/model.js.map +1 -1
  271. package/esm/LinearReadCloudDisplay/util.d.ts +2 -0
  272. package/esm/LinearReadCloudDisplay/util.js +30 -0
  273. package/esm/LinearReadCloudDisplay/util.js.map +1 -0
  274. package/esm/LinearSNPCoverageDisplay/components/Tooltip.d.ts +2 -2
  275. package/esm/LinearSNPCoverageDisplay/models/configSchema.d.ts +79 -1
  276. package/esm/LinearSNPCoverageDisplay/models/model.d.ts +157 -70
  277. package/esm/LinearSNPCoverageDisplay/models/model.js +48 -35
  278. package/esm/LinearSNPCoverageDisplay/models/model.js.map +1 -1
  279. package/esm/MismatchParser/index.d.ts +7 -2
  280. package/esm/MismatchParser/index.js +41 -4
  281. package/esm/MismatchParser/index.js.map +1 -1
  282. package/esm/PileupRPC/methods/GetReducedFeatures.d.ts +15 -2
  283. package/esm/PileupRPC/methods/GetReducedFeatures.js +2 -9
  284. package/esm/PileupRPC/methods/GetReducedFeatures.js.map +1 -1
  285. package/esm/PileupRenderer/PileupLayoutSession.d.ts +1 -1
  286. package/esm/PileupRenderer/PileupRenderer.d.ts +4 -117
  287. package/esm/PileupRenderer/PileupRenderer.js +20 -754
  288. package/esm/PileupRenderer/PileupRenderer.js.map +1 -1
  289. package/esm/PileupRenderer/colorBy.d.ts +7 -0
  290. package/esm/PileupRenderer/colorBy.js +61 -0
  291. package/esm/PileupRenderer/colorBy.js.map +1 -0
  292. package/esm/PileupRenderer/components/PileupRendering.d.ts +7 -2
  293. package/esm/PileupRenderer/components/PileupRendering.js +17 -18
  294. package/esm/PileupRenderer/components/PileupRendering.js.map +1 -1
  295. package/esm/PileupRenderer/configSchema.d.ts +87 -1
  296. package/esm/PileupRenderer/getAlignmentShapeColor.d.ts +10 -0
  297. package/esm/PileupRenderer/getAlignmentShapeColor.js +56 -0
  298. package/esm/PileupRenderer/getAlignmentShapeColor.js.map +1 -0
  299. package/esm/PileupRenderer/index.js +1 -1
  300. package/esm/PileupRenderer/index.js.map +1 -1
  301. package/esm/PileupRenderer/layoutFeature.d.ts +18 -0
  302. package/esm/PileupRenderer/layoutFeature.js +37 -0
  303. package/esm/PileupRenderer/layoutFeature.js.map +1 -0
  304. package/esm/PileupRenderer/layoutFeatures.d.ts +2 -0
  305. package/esm/PileupRenderer/layoutFeatures.js +31 -0
  306. package/esm/PileupRenderer/layoutFeatures.js.map +1 -0
  307. package/esm/PileupRenderer/makeImageData.d.ts +17 -0
  308. package/esm/PileupRenderer/makeImageData.js +60 -0
  309. package/esm/PileupRenderer/makeImageData.js.map +1 -0
  310. package/esm/PileupRenderer/renderAlignment.d.ts +13 -0
  311. package/esm/PileupRenderer/renderAlignment.js +68 -0
  312. package/esm/PileupRenderer/renderAlignment.js.map +1 -0
  313. package/esm/PileupRenderer/renderAlignmentShape.d.ts +7 -0
  314. package/esm/PileupRenderer/renderAlignmentShape.js +37 -0
  315. package/esm/PileupRenderer/renderAlignmentShape.js.map +1 -0
  316. package/esm/PileupRenderer/renderMethylation.d.ts +11 -0
  317. package/esm/PileupRenderer/renderMethylation.js +59 -0
  318. package/esm/PileupRenderer/renderMethylation.js.map +1 -0
  319. package/esm/PileupRenderer/renderMismatches.d.ts +21 -0
  320. package/esm/PileupRenderer/renderMismatches.js +131 -0
  321. package/esm/PileupRenderer/renderMismatches.js.map +1 -0
  322. package/esm/PileupRenderer/renderModifications.d.ts +11 -0
  323. package/esm/PileupRenderer/renderModifications.js +50 -0
  324. package/esm/PileupRenderer/renderModifications.js.map +1 -0
  325. package/esm/PileupRenderer/renderPerBaseLettering.d.ts +13 -0
  326. package/esm/PileupRenderer/renderPerBaseLettering.js +43 -0
  327. package/esm/PileupRenderer/renderPerBaseLettering.js.map +1 -0
  328. package/esm/PileupRenderer/renderPerBaseQuality.d.ts +9 -0
  329. package/esm/PileupRenderer/renderPerBaseQuality.js +35 -0
  330. package/esm/PileupRenderer/renderPerBaseQuality.js.map +1 -0
  331. package/esm/PileupRenderer/renderSoftClipping.d.ts +13 -0
  332. package/esm/PileupRenderer/renderSoftClipping.js +44 -0
  333. package/esm/PileupRenderer/renderSoftClipping.js.map +1 -0
  334. package/esm/PileupRenderer/sortUtil.js +1 -2
  335. package/esm/PileupRenderer/sortUtil.js.map +1 -1
  336. package/esm/PileupRenderer/util.d.ts +24 -0
  337. package/esm/PileupRenderer/util.js +42 -0
  338. package/esm/PileupRenderer/util.js.map +1 -0
  339. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +1 -3
  340. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +2 -4
  341. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -1
  342. package/esm/SNPCoverageAdapter/configSchema.d.ts +10 -1
  343. package/esm/SNPCoverageAdapter/generateCoverageBins.d.ts +3 -43
  344. package/esm/SNPCoverageAdapter/generateCoverageBins.js +87 -60
  345. package/esm/SNPCoverageAdapter/generateCoverageBins.js.map +1 -1
  346. package/esm/SNPCoverageAdapter/index.js +0 -2
  347. package/esm/SNPCoverageAdapter/index.js.map +1 -1
  348. package/esm/SNPCoverageAdapter/util.d.ts +29 -0
  349. package/esm/SNPCoverageAdapter/util.js +2 -0
  350. package/esm/SNPCoverageAdapter/util.js.map +1 -0
  351. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +1 -1
  352. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +2 -2
  353. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js.map +1 -1
  354. package/esm/SNPCoverageRenderer/configSchema.d.ts +47 -1
  355. package/esm/SNPCoverageRenderer/configSchema.js +5 -0
  356. package/esm/SNPCoverageRenderer/configSchema.js.map +1 -1
  357. package/esm/shared/BaseDisplayComponent.d.ts +8 -0
  358. package/esm/shared/BaseDisplayComponent.js +44 -0
  359. package/esm/shared/BaseDisplayComponent.js.map +1 -0
  360. package/esm/shared/FilterByTag.d.ts +13 -12
  361. package/esm/shared/FilterByTag.js +8 -13
  362. package/esm/shared/FilterByTag.js.map +1 -1
  363. package/esm/shared/afterAttach.d.ts +2 -0
  364. package/esm/shared/afterAttach.js +40 -0
  365. package/esm/shared/afterAttach.js.map +1 -0
  366. package/esm/shared/color.d.ts +44 -6
  367. package/esm/shared/color.js +54 -20
  368. package/esm/shared/color.js.map +1 -1
  369. package/esm/shared/fetchChains.d.ts +3 -2
  370. package/esm/shared/fetchChains.js +14 -20
  371. package/esm/shared/fetchChains.js.map +1 -1
  372. package/esm/shared/renderSvg.d.ts +7 -0
  373. package/esm/shared/renderSvg.js +39 -0
  374. package/esm/shared/renderSvg.js.map +1 -0
  375. package/esm/shared/util.d.ts +2 -0
  376. package/esm/shared/util.js +9 -0
  377. package/esm/shared/util.js.map +1 -0
  378. package/esm/util.d.ts +16 -2
  379. package/esm/util.js +42 -3
  380. package/esm/util.js.map +1 -1
  381. package/package.json +3 -3
  382. package/src/AlignmentsFeatureDetail/AlignmentsFeatureFlags.tsx +3 -5
  383. package/src/AlignmentsFeatureDetail/__snapshots__/index.test.tsx.snap +1 -2
  384. package/src/AlignmentsTrack/configSchemaF.ts +22 -0
  385. package/src/AlignmentsTrack/index.ts +3 -24
  386. package/src/BamAdapter/BamAdapter.ts +46 -44
  387. package/src/CombinationTest.test.ts +2 -2
  388. package/src/CramAdapter/CramAdapter.ts +70 -56
  389. package/src/CramAdapter/CramSlightlyLazyFeature.ts +2 -5
  390. package/src/CramAdapter/CramTestAdapters.ts +2 -2
  391. package/src/LinearAlignmentsDisplay/models/model.tsx +16 -4
  392. package/src/LinearPileupDisplay/components/ColorByModifications.tsx +3 -39
  393. package/src/LinearPileupDisplay/components/ColorByTag.tsx +1 -6
  394. package/src/LinearPileupDisplay/components/LinearPileupDisplayBlurb.tsx +10 -11
  395. package/src/LinearPileupDisplay/components/ModificationsTable.tsx +38 -0
  396. package/src/LinearPileupDisplay/components/SetMaxHeight.tsx +3 -5
  397. package/src/LinearPileupDisplay/model.ts +235 -186
  398. package/src/LinearReadArcsDisplay/components/ReactComponent.tsx +23 -61
  399. package/src/LinearReadArcsDisplay/drawFeats.ts +79 -87
  400. package/src/LinearReadArcsDisplay/model.tsx +77 -155
  401. package/src/LinearReadArcsDisplay/util.ts +10 -0
  402. package/src/LinearReadCloudDisplay/components/ReactComponent.tsx +21 -59
  403. package/src/LinearReadCloudDisplay/drawFeats.ts +12 -166
  404. package/src/LinearReadCloudDisplay/drawLongReadChains.ts +85 -0
  405. package/src/LinearReadCloudDisplay/drawPairChains.ts +139 -0
  406. package/src/LinearReadCloudDisplay/model.tsx +72 -131
  407. package/src/LinearReadCloudDisplay/util.ts +47 -0
  408. package/src/LinearSNPCoverageDisplay/models/model.ts +63 -50
  409. package/src/MismatchParser/index.ts +46 -4
  410. package/src/PileupRPC/methods/GetReducedFeatures.ts +2 -10
  411. package/src/PileupRenderer/PileupLayoutSession.ts +1 -1
  412. package/src/PileupRenderer/PileupRenderer.ts +23 -1190
  413. package/src/PileupRenderer/colorBy.ts +74 -0
  414. package/src/PileupRenderer/components/PileupRendering.tsx +20 -25
  415. package/src/PileupRenderer/getAlignmentShapeColor.ts +87 -0
  416. package/src/PileupRenderer/index.ts +1 -1
  417. package/src/PileupRenderer/layoutFeature.ts +83 -0
  418. package/src/PileupRenderer/layoutFeatures.ts +44 -0
  419. package/src/PileupRenderer/makeImageData.ts +93 -0
  420. package/src/PileupRenderer/renderAlignment.ts +97 -0
  421. package/src/PileupRenderer/renderAlignmentShape.ts +45 -0
  422. package/src/PileupRenderer/renderMethylation.ts +75 -0
  423. package/src/PileupRenderer/renderMismatches.ts +206 -0
  424. package/src/PileupRenderer/renderModifications.ts +74 -0
  425. package/src/PileupRenderer/renderPerBaseLettering.ts +67 -0
  426. package/src/PileupRenderer/renderPerBaseQuality.ts +46 -0
  427. package/src/PileupRenderer/renderSoftClipping.ts +78 -0
  428. package/src/PileupRenderer/sortUtil.ts +1 -3
  429. package/src/PileupRenderer/util.ts +63 -0
  430. package/src/SNPCoverageAdapter/SNPCoverageAdapter.ts +5 -5
  431. package/src/SNPCoverageAdapter/generateCoverageBins.ts +105 -91
  432. package/src/SNPCoverageAdapter/index.ts +0 -2
  433. package/src/SNPCoverageAdapter/util.ts +33 -0
  434. package/src/SNPCoverageRenderer/SNPCoverageRenderer.ts +3 -3
  435. package/src/SNPCoverageRenderer/configSchema.ts +6 -0
  436. package/src/shared/BaseDisplayComponent.tsx +83 -0
  437. package/src/shared/FilterByTag.tsx +13 -23
  438. package/src/shared/afterAttach.tsx +66 -0
  439. package/src/shared/color.ts +59 -20
  440. package/src/shared/fetchChains.ts +23 -24
  441. package/src/shared/renderSvg.tsx +64 -0
  442. package/src/shared/util.ts +10 -0
  443. package/src/util.ts +54 -5
@@ -1 +1 @@
1
- {"version":3,"file":"PileupRenderer.js","sourceRoot":"","sources":["../../src/PileupRenderer/PileupRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PileupRenderer.js","sourceRoot":"","sources":["../../src/PileupRenderer/PileupRenderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ import { Feature } from '@jbrowse/core/util';
3
+ export declare function colorByInsertSize(feature: Feature): string;
4
+ export declare function colorByMappingQuality(feature: Feature): string;
5
+ export declare function colorByStrand(feature: Feature): "#EC8B8B" | "#8F8FD8";
6
+ export declare function colorByOrientation(feature: Feature, config: AnyConfigurationModel): string;
7
+ export declare function colorByStrandedRnaSeq(feature: Feature): string;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.colorByStrandedRnaSeq = exports.colorByOrientation = exports.colorByStrand = exports.colorByMappingQuality = exports.colorByInsertSize = void 0;
4
+ const configuration_1 = require("@jbrowse/core/configuration");
5
+ const color_1 = require("../shared/color");
6
+ const util_1 = require("../util");
7
+ function colorByInsertSize(feature) {
8
+ return feature.get('is_paired') &&
9
+ feature.get('refName') !== feature.get('next_ref')
10
+ ? '#555'
11
+ : `hsl(${Math.abs(feature.get('template_length')) / 10},50%,50%)`;
12
+ }
13
+ exports.colorByInsertSize = colorByInsertSize;
14
+ function colorByMappingQuality(feature) {
15
+ return `hsl(${feature.get('mq')},50%,50%)`;
16
+ }
17
+ exports.colorByMappingQuality = colorByMappingQuality;
18
+ function getOrientation(feature, config) {
19
+ const orientationType = (0, configuration_1.readConfObject)(config, 'orientationType');
20
+ const type = util_1.orientationTypes[orientationType];
21
+ const orientation = type[feature.get('pair_orientation')];
22
+ return {
23
+ LR: 'color_pair_lr',
24
+ RR: 'color_pair_rr',
25
+ RL: 'color_pair_rl',
26
+ LL: 'color_pair_ll',
27
+ }[orientation];
28
+ }
29
+ function colorByStrand(feature) {
30
+ return feature.get('strand') === -1 ? '#8F8FD8' : '#EC8B8B';
31
+ }
32
+ exports.colorByStrand = colorByStrand;
33
+ function colorByOrientation(feature, config) {
34
+ return color_1.fillColor[getOrientation(feature, config) || 'color_nostrand'];
35
+ }
36
+ exports.colorByOrientation = colorByOrientation;
37
+ function getStranded(feature) {
38
+ const flags = feature.get('flags');
39
+ const strand = feature.get('strand');
40
+ // is paired
41
+ if (flags & 1) {
42
+ const revflag = flags & 64;
43
+ const flipper = revflag ? -1 : 1;
44
+ // proper pairing
45
+ if (flags & 2) {
46
+ return strand * flipper === 1 ? 'color_rev_strand' : 'color_fwd_strand';
47
+ }
48
+ else if (feature.get('multi_segment_next_segment_unmapped')) {
49
+ return strand * flipper === 1
50
+ ? 'color_rev_missing_mate'
51
+ : 'color_fwd_missing_mate';
52
+ }
53
+ else if (feature.get('refName') === feature.get('next_refName')) {
54
+ return strand * flipper === 1
55
+ ? 'color_rev_strand_not_proper'
56
+ : 'color_fwd_strand_not_proper';
57
+ }
58
+ else {
59
+ // should only leave aberrant chr
60
+ return strand === 1 ? 'color_fwd_diff_chr' : 'color_rev_diff_chr';
61
+ }
62
+ }
63
+ return strand === 1 ? 'color_fwd_strand' : 'color_rev_strand';
64
+ }
65
+ function colorByStrandedRnaSeq(feature) {
66
+ return color_1.fillColor[getStranded(feature)];
67
+ }
68
+ exports.colorByStrandedRnaSeq = colorByStrandedRnaSeq;
69
+ //# sourceMappingURL=colorBy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colorBy.js","sourceRoot":"","sources":["../../src/PileupRenderer/colorBy.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,12 @@ declare function PileupRendering(props: {
17
17
  type: string;
18
18
  tag?: string;
19
19
  };
20
- onMouseMove?: (event: React.MouseEvent, featureId: string | undefined) => void;
21
- }): JSX.Element;
20
+ filterBy?: {
21
+ tagFilter?: {
22
+ tag: string;
23
+ };
24
+ };
25
+ onMouseMove?: (event: React.MouseEvent, featureId?: string) => void;
26
+ }): React.JSX.Element;
22
27
  declare const _default: typeof PileupRendering;
23
28
  export default _default;
@@ -31,7 +31,8 @@ const mobx_react_1 = require("mobx-react");
31
31
  // (issue #1248)
32
32
  const canvasPadding = 100;
33
33
  function PileupRendering(props) {
34
- const { onMouseMove, blockKey, displayModel, width, height, regions, bpPerPx, sortedBy, colorBy, } = props;
34
+ var _a;
35
+ const { onMouseMove, blockKey, displayModel, width, height, regions, bpPerPx, sortedBy, colorBy, filterBy, } = props;
35
36
  const { selectedFeatureId, featureIdUnderMouse, contextMenuFeature } = displayModel;
36
37
  const [region] = regions;
37
38
  const highlightOverlayCanvas = (0, react_1.useRef)(null);
@@ -117,25 +118,18 @@ function PileupRendering(props) {
117
118
  callMouseHandler('ContextMenu', event);
118
119
  }
119
120
  function mouseMove(event) {
121
+ if (!highlightOverlayCanvas.current) {
122
+ return;
123
+ }
120
124
  if (mouseIsDown) {
121
125
  setMovedDuringLastMouseDown(true);
122
126
  }
123
- let offsetX = 0;
124
- let offsetY = 0;
125
- const canvas = highlightOverlayCanvas.current;
126
- if (canvas) {
127
- const { left, top } = canvas.getBoundingClientRect();
128
- offsetX = left;
129
- offsetY = top;
130
- }
131
- offsetX = event.clientX - offsetX;
132
- offsetY = event.clientY - offsetY;
127
+ const rect = highlightOverlayCanvas.current.getBoundingClientRect();
128
+ const offsetX = event.clientX - rect.left;
129
+ const offsetY = event.clientY - rect.top;
133
130
  const px = region.reversed ? width - offsetX : offsetX;
134
131
  const clientBp = region.start + bpPerPx * px;
135
- const featIdUnderMouse = displayModel.getFeatureOverlapping(blockKey, clientBp, offsetY);
136
- if (onMouseMove) {
137
- onMouseMove(event, featIdUnderMouse);
138
- }
132
+ onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(event, displayModel.getFeatureOverlapping(blockKey, clientBp, offsetY));
139
133
  }
140
134
  function callMouseHandler(handlerName, event) {
141
135
  // @ts-expect-error
@@ -153,9 +147,14 @@ function PileupRendering(props) {
153
147
  }
154
148
  const canvasWidth = Math.ceil(width);
155
149
  // need to call this in render so we get the right observer behavior
156
- return (react_1.default.createElement("div", { className: "PileupRendering", "data-testid": `pileup-${sortedBy || colorBy
157
- ? `${(sortedBy === null || sortedBy === void 0 ? void 0 : sortedBy.type) || ''}${(colorBy === null || colorBy === void 0 ? void 0 : colorBy.type) || ''}${(colorBy === null || colorBy === void 0 ? void 0 : colorBy.tag) || ''}`
158
- : 'normal'}`, style: { position: 'relative', width: canvasWidth, height } },
150
+ return (react_1.default.createElement("div", { "data-testid": `pileup-${[
151
+ sortedBy === null || sortedBy === void 0 ? void 0 : sortedBy.type,
152
+ colorBy === null || colorBy === void 0 ? void 0 : colorBy.type,
153
+ colorBy === null || colorBy === void 0 ? void 0 : colorBy.tag,
154
+ (_a = filterBy === null || filterBy === void 0 ? void 0 : filterBy.tagFilter) === null || _a === void 0 ? void 0 : _a.tag,
155
+ ]
156
+ .filter(f => !!f)
157
+ .join('-')}`, style: { position: 'relative', width: canvasWidth, height } },
159
158
  react_1.default.createElement(ui_1.PrerenderedCanvas, { ...props, style: { position: 'absolute', left: 0, top: 0 } }),
160
159
  react_1.default.createElement("canvas", { "data-testid": "pileup_overlay_canvas", width: canvasWidth, height: height + canvasPadding, style: { position: 'absolute', left: 0, top: 0 }, className: "highlightOverlayCanvas", ref: highlightOverlayCanvas, onMouseDown: event => onMouseDown(event), onMouseEnter: event => onMouseEnter(event), onMouseOut: event => onMouseOut(event), onMouseOver: event => onMouseOver(event), onMouseUp: event => onMouseUp(event), onMouseLeave: event => onMouseLeave(event), onMouseMove: event => mouseMove(event), onClick: event => onClick(event), onContextMenu: event => onContextMenu(event), onFocus: () => { }, onBlur: () => { } })));
161
160
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PileupRendering.js","sourceRoot":"","sources":["../../../src/PileupRenderer/components/PileupRendering.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PileupRendering.js","sourceRoot":"","sources":["../../../src/PileupRenderer/components/PileupRendering.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,88 @@
1
- declare const PileupRenderer: import("@jbrowse/core/configuration").AnyConfigurationSchemaType;
1
+ declare const PileupRenderer: import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaType<{
2
+ /**
3
+ * #slot
4
+ * default magenta here is used to detect the user has not customized this
5
+ */
6
+ color: {
7
+ type: string;
8
+ description: string;
9
+ defaultValue: string;
10
+ contextVariable: string[];
11
+ };
12
+ /**
13
+ * #slot
14
+ */
15
+ orientationType: {
16
+ type: string;
17
+ model: import("mobx-state-tree").ISimpleType<string>;
18
+ defaultValue: string;
19
+ description: string;
20
+ };
21
+ /**
22
+ * #slot
23
+ */
24
+ displayMode: {
25
+ type: string;
26
+ model: import("mobx-state-tree").ISimpleType<string>;
27
+ description: string;
28
+ defaultValue: string;
29
+ };
30
+ /**
31
+ * #slot
32
+ */
33
+ minSubfeatureWidth: {
34
+ type: string;
35
+ description: string;
36
+ defaultValue: number;
37
+ };
38
+ /**
39
+ * #slot
40
+ */
41
+ maxHeight: {
42
+ type: string;
43
+ description: string;
44
+ defaultValue: number;
45
+ };
46
+ /**
47
+ * #slot
48
+ */
49
+ maxClippingSize: {
50
+ type: string;
51
+ description: string;
52
+ defaultValue: number;
53
+ };
54
+ /**
55
+ * #slot
56
+ */
57
+ height: {
58
+ type: string;
59
+ description: string;
60
+ defaultValue: number;
61
+ contextVariable: string[];
62
+ };
63
+ /**
64
+ * #slot
65
+ */
66
+ noSpacing: {
67
+ type: string;
68
+ description: string;
69
+ defaultValue: boolean;
70
+ };
71
+ /**
72
+ * #slot
73
+ */
74
+ largeInsertionIndicatorScale: {
75
+ type: string;
76
+ description: string;
77
+ defaultValue: number;
78
+ };
79
+ /**
80
+ * #slot
81
+ */
82
+ mismatchAlpha: {
83
+ type: string;
84
+ defaultValue: boolean;
85
+ description: string;
86
+ };
87
+ }, import("@jbrowse/core/configuration/configurationSchema").ConfigurationSchemaOptions<undefined, undefined>>;
2
88
  export default PileupRenderer;
@@ -0,0 +1,10 @@
1
+ import { AnyConfigurationModel } from '@jbrowse/core/configuration';
2
+ import { Feature } from '@jbrowse/core/util';
3
+ export declare function getAlignmentShapeColor({ colorType, tag, feature, config, defaultColor, colorTagMap, }: {
4
+ colorType: string;
5
+ tag: string;
6
+ feature: Feature;
7
+ defaultColor: boolean;
8
+ config: AnyConfigurationModel;
9
+ colorTagMap: Record<string, string>;
10
+ }): any;
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAlignmentShapeColor = void 0;
4
+ const configuration_1 = require("@jbrowse/core/configuration");
5
+ const color_1 = require("../shared/color");
6
+ const colorBy_1 = require("./colorBy");
7
+ function getAlignmentShapeColor({ colorType, tag, feature, config, defaultColor, colorTagMap, }) {
8
+ // first pass for simple color changes that change the color of the
9
+ // alignment
10
+ switch (colorType) {
11
+ case 'insertSize':
12
+ return (0, colorBy_1.colorByInsertSize)(feature);
13
+ case 'strand':
14
+ return (0, colorBy_1.colorByStrand)(feature);
15
+ case 'mappingQuality':
16
+ return (0, colorBy_1.colorByMappingQuality)(feature);
17
+ case 'pairOrientation':
18
+ return (0, colorBy_1.colorByOrientation)(feature, config);
19
+ case 'stranded':
20
+ return (0, colorBy_1.colorByStrandedRnaSeq)(feature);
21
+ case 'xs':
22
+ case 'tag': {
23
+ const tags = feature.get('tags');
24
+ const val = tags ? tags[tag] : feature.get(tag);
25
+ if (tag === 'XS' || tag === 'TS') {
26
+ return color_1.fillColor[{
27
+ '-': 'color_rev_strand',
28
+ '+': 'color_fwd_strand',
29
+ }[val] || 'color_nostrand'];
30
+ }
31
+ else if (tag === 'ts') {
32
+ return color_1.fillColor[{
33
+ '-': feature.get('strand') === -1
34
+ ? 'color_fwd_strand'
35
+ : 'color_rev_strand',
36
+ '+': feature.get('strand') === -1
37
+ ? 'color_rev_strand'
38
+ : 'color_fwd_strand',
39
+ }[val] || 'color_nostrand'];
40
+ }
41
+ else {
42
+ return colorTagMap[val] || color_1.fillColor['color_nostrand'];
43
+ }
44
+ }
45
+ case 'insertSizeAndPairOrientation':
46
+ break;
47
+ case 'modifications':
48
+ case 'methylation':
49
+ // this coloring is similar to igv.js, and is helpful to color negative
50
+ // strand reads differently because their c-g will be flipped (e.g. g-c
51
+ // read right to left)
52
+ return feature.get('flags') & 16 ? '#c8dcc8' : '#c8c8c8';
53
+ default:
54
+ return defaultColor
55
+ ? 'lightgrey'
56
+ : (0, configuration_1.readConfObject)(config, 'color', { feature });
57
+ }
58
+ }
59
+ exports.getAlignmentShapeColor = getAlignmentShapeColor;
60
+ //# sourceMappingURL=getAlignmentShapeColor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAlignmentShapeColor.js","sourceRoot":"","sources":["../../src/PileupRenderer/getAlignmentShapeColor.ts"],"names":[],"mappings":";;;AAAA,+DAGoC;AAEpC,2CAA2C;AAC3C,uCAMkB;AAElB,SAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,GAAG,EACH,OAAO,EACP,MAAM,EACN,YAAY,EACZ,WAAW,GAQZ;IACC,mEAAmE;IACnE,YAAY;IACZ,QAAQ,SAAS,EAAE;QACjB,KAAK,YAAY;YACf,OAAO,IAAA,2BAAiB,EAAC,OAAO,CAAC,CAAA;QACnC,KAAK,QAAQ;YACX,OAAO,IAAA,uBAAa,EAAC,OAAO,CAAC,CAAA;QAC/B,KAAK,gBAAgB;YACnB,OAAO,IAAA,+BAAqB,EAAC,OAAO,CAAC,CAAA;QACvC,KAAK,iBAAiB;YACpB,OAAO,IAAA,4BAAkB,EAAC,OAAO,EAAE,MAAM,CAAC,CAAA;QAC5C,KAAK,UAAU;YACb,OAAO,IAAA,+BAAqB,EAAC,OAAO,CAAC,CAAA;QACvC,KAAK,IAAI,CAAC;QACV,KAAK,KAAK,CAAC,CAAC;YACV,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAE/C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,IAAI,EAAE;gBAChC,OAAO,iBAAS,CACd;oBACE,GAAG,EAAE,kBAA2B;oBAChC,GAAG,EAAE,kBAA2B;iBACjC,CAAC,GAAgB,CAAC,IAAI,gBAAgB,CACxC,CAAA;aACF;iBAAM,IAAI,GAAG,KAAK,IAAI,EAAE;gBACvB,OAAO,iBAAS,CACd;oBACE,GAAG,EACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;wBAC1B,CAAC,CAAE,kBAA4B;wBAC/B,CAAC,CAAE,kBAA4B;oBACnC,GAAG,EACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;wBAC1B,CAAC,CAAE,kBAA4B;wBAC/B,CAAC,CAAE,kBAA4B;iBACpC,CAAC,GAAgB,CAAC,IAAI,gBAAgB,CACxC,CAAA;aACF;iBAAM;gBACL,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,iBAAS,CAAC,gBAAgB,CAAC,CAAA;aACvD;SACF;QACD,KAAK,8BAA8B;YACjC,MAAK;QAEP,KAAK,eAAe,CAAC;QACrB,KAAK,aAAa;YAChB,uEAAuE;YACvE,uEAAuE;YACvE,sBAAsB;YACtB,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;QAE1D;YACE,OAAO,YAAY;gBACjB,CAAC,CAAC,WAAW;gBACb,CAAC,CAAC,IAAA,8BAAc,EAAC,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;KACnD;AACH,CAAC;AAxED,wDAwEC"}
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const PileupRenderer_1 = __importDefault(require("./PileupRenderer"));
7
- const PileupRendering_1 = __importDefault(require("./components/PileupRendering"));
8
7
  const configSchema_1 = __importDefault(require("./configSchema"));
8
+ const PileupRendering_1 = __importDefault(require("./components/PileupRendering"));
9
9
  function register(pluginManager) {
10
10
  pluginManager.addRendererType(() => {
11
11
  return new PileupRenderer_1.default({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/PileupRenderer/index.ts"],"names":[],"mappings":";;;;;AACA,sEAA6C;AAC7C,mFAAyD;AACzD,kEAAyC;AAEzC,SAAwB,QAAQ,CAAC,aAA4B;IAC3D,aAAa,CAAC,eAAe,CAAC,GAAG,EAAE;QACjC,OAAO,IAAI,wBAAc,CAAC;YACxB,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,iBAAiB;YAC9B,cAAc,EAAd,yBAAc;YACd,YAAY,EAAZ,sBAAY;YACZ,aAAa;SACd,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAVD,2BAUC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/PileupRenderer/index.ts"],"names":[],"mappings":";;;;;AACA,sEAA6C;AAC7C,kEAAyC;AACzC,mFAAyD;AAEzD,SAAwB,QAAQ,CAAC,aAA4B;IAC3D,aAAa,CAAC,eAAe,CAAC,GAAG,EAAE;QACjC,OAAO,IAAI,wBAAc,CAAC;YACxB,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,iBAAiB;YAC9B,cAAc,EAAd,yBAAc;YACd,YAAY,EAAZ,sBAAY;YACZ,aAAa;SACd,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC;AAVD,2BAUC"}
@@ -0,0 +1,18 @@
1
+ import { Feature, Region } from '@jbrowse/core/util';
2
+ import { BaseLayout } from '@jbrowse/core/util/layouts';
3
+ export interface LayoutRecord {
4
+ feature: Feature;
5
+ leftPx: number;
6
+ rightPx: number;
7
+ topPx: number;
8
+ heightPx: number;
9
+ }
10
+ export declare function layoutFeature({ feature, layout, bpPerPx, region, showSoftClip, heightPx, displayMode, }: {
11
+ feature: Feature;
12
+ layout: BaseLayout<Feature>;
13
+ bpPerPx: number;
14
+ region: Region;
15
+ showSoftClip?: boolean;
16
+ heightPx: number;
17
+ displayMode: string;
18
+ }): LayoutRecord | null;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.layoutFeature = void 0;
4
+ const util_1 = require("@jbrowse/core/util");
5
+ function layoutFeature({ feature, layout, bpPerPx, region, showSoftClip, heightPx, displayMode, }) {
6
+ let expansionBefore = 0;
7
+ let expansionAfter = 0;
8
+ // Expand the start and end of feature when softclipping enabled
9
+ if (showSoftClip) {
10
+ const mismatches = feature.get('mismatches');
11
+ const seq = feature.get('seq');
12
+ if (seq) {
13
+ for (let i = 0; i < mismatches.length; i += 1) {
14
+ const { type, start, cliplen = 0 } = mismatches[i];
15
+ if (type === 'softclip') {
16
+ start === 0 ? (expansionBefore = cliplen) : (expansionAfter = cliplen);
17
+ }
18
+ }
19
+ }
20
+ }
21
+ const [leftPx, rightPx] = (0, util_1.bpSpanPx)(feature.get('start') - expansionBefore, feature.get('end') + expansionAfter, region, bpPerPx);
22
+ if (displayMode === 'compact') {
23
+ heightPx /= 3;
24
+ }
25
+ if (feature.get('refName') !== region.refName) {
26
+ throw new Error(`feature ${feature.id()} is not on the current region's reference sequence ${region.refName}`);
27
+ }
28
+ const topPx = layout.addRect(feature.id(), feature.get('start') - expansionBefore, feature.get('end') + expansionAfter, heightPx, feature);
29
+ if (topPx === null) {
30
+ return null;
31
+ }
32
+ return {
33
+ feature,
34
+ leftPx,
35
+ rightPx,
36
+ topPx: displayMode === 'collapse' ? 0 : topPx,
37
+ heightPx,
38
+ };
39
+ }
40
+ exports.layoutFeature = layoutFeature;
41
+ //# sourceMappingURL=layoutFeature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layoutFeature.js","sourceRoot":"","sources":["../../src/PileupRenderer/layoutFeature.ts"],"names":[],"mappings":";;;AAAA,6CAA8D;AAa9D,SAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,MAAM,EACN,OAAO,EACP,MAAM,EACN,YAAY,EACZ,QAAQ,EACR,WAAW,GASZ;IACC,IAAI,eAAe,GAAG,CAAC,CAAA;IACvB,IAAI,cAAc,GAAG,CAAC,CAAA;IAEtB,gEAAgE;IAChE,IAAI,YAAY,EAAE;QAChB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAe,CAAA;QAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAW,CAAA;QACxC,IAAI,GAAG,EAAE;YACP,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBAC7C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;gBAClD,IAAI,IAAI,KAAK,UAAU,EAAE;oBACvB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,GAAG,OAAO,CAAC,CAAA;iBACvE;aACF;SACF;KACF;IAED,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAA,eAAQ,EAChC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,eAAe,EACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,cAAc,EACnC,MAAM,EACN,OAAO,CACR,CAAA;IAED,IAAI,WAAW,KAAK,SAAS,EAAE;QAC7B,QAAQ,IAAI,CAAC,CAAA;KACd;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,MAAM,CAAC,OAAO,EAAE;QAC7C,MAAM,IAAI,KAAK,CACb,WAAW,OAAO,CAAC,EAAE,EAAE,sDACrB,MAAM,CAAC,OACT,EAAE,CACH,CAAA;KACF;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAC1B,OAAO,CAAC,EAAE,EAAE,EACZ,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,eAAe,EACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,cAAc,EACnC,QAAQ,EACR,OAAO,CACR,CAAA;IACD,IAAI,KAAK,KAAK,IAAI,EAAE;QAClB,OAAO,IAAI,CAAA;KACZ;IAED,OAAO;QACL,OAAO;QACP,MAAM;QACN,OAAO;QACP,KAAK,EAAE,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;QAC7C,QAAQ;KACT,CAAA;AACH,CAAC;AArED,sCAqEC"}
@@ -0,0 +1,2 @@
1
+ import { RenderArgsDeserializedWithFeaturesAndLayout } from './PileupRenderer';
2
+ export declare function layoutFeats(props: RenderArgsDeserializedWithFeaturesAndLayout): (import("./layoutFeature").LayoutRecord | null)[];
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.layoutFeats = void 0;
4
+ const configuration_1 = require("@jbrowse/core/configuration");
5
+ const util_1 = require("@jbrowse/core/util");
6
+ // locals
7
+ const layoutFeature_1 = require("./layoutFeature");
8
+ const sortUtil_1 = require("./sortUtil");
9
+ // layout determines the height of the canvas that we use to render
10
+ function layoutFeats(props) {
11
+ const { layout, features, sortedBy, config, bpPerPx, showSoftClip, regions } = props;
12
+ const [region] = regions;
13
+ if (!layout) {
14
+ throw new Error(`layout required`);
15
+ }
16
+ if (!layout.addRect) {
17
+ throw new Error('invalid layout object');
18
+ }
19
+ const featureMap = (sortedBy === null || sortedBy === void 0 ? void 0 : sortedBy.type) && region.start === sortedBy.pos
20
+ ? (0, sortUtil_1.sortFeature)(features, sortedBy)
21
+ : features;
22
+ const heightPx = (0, configuration_1.readConfObject)(config, 'height');
23
+ const displayMode = (0, configuration_1.readConfObject)(config, 'displayMode');
24
+ return (0, util_1.iterMap)(featureMap.values(), feature => (0, layoutFeature_1.layoutFeature)({
25
+ feature,
26
+ layout,
27
+ bpPerPx,
28
+ region,
29
+ showSoftClip,
30
+ heightPx,
31
+ displayMode,
32
+ }), featureMap.size);
33
+ }
34
+ exports.layoutFeats = layoutFeats;
35
+ //# sourceMappingURL=layoutFeatures.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layoutFeatures.js","sourceRoot":"","sources":["../../src/PileupRenderer/layoutFeatures.ts"],"names":[],"mappings":";;;AAAA,+DAA4D;AAC5D,6CAA4C;AAE5C,SAAS;AACT,mDAA+C;AAE/C,yCAAwC;AAExC,mEAAmE;AACnE,SAAgB,WAAW,CACzB,KAAkD;IAElD,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,GAC1E,KAAK,CAAA;IACP,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAA;IACxB,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;KACnC;IACD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;KACzC;IAED,MAAM,UAAU,GACd,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,KAAI,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,GAAG;QAC7C,CAAC,CAAC,IAAA,sBAAW,EAAC,QAAQ,EAAE,QAAQ,CAAC;QACjC,CAAC,CAAC,QAAQ,CAAA;IAEd,MAAM,QAAQ,GAAG,IAAA,8BAAc,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACjD,MAAM,WAAW,GAAG,IAAA,8BAAc,EAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IACzD,OAAO,IAAA,cAAO,EACZ,UAAU,CAAC,MAAM,EAAE,EACnB,OAAO,CAAC,EAAE,CACR,IAAA,6BAAa,EAAC;QACZ,OAAO;QACP,MAAM;QACN,OAAO;QACP,MAAM;QACN,YAAY;QACZ,QAAQ;QACR,WAAW;KACZ,CAAC,EACJ,UAAU,CAAC,IAAI,CAChB,CAAA;AACH,CAAC;AAlCD,kCAkCC"}
@@ -0,0 +1,17 @@
1
+ import { Feature } from '@jbrowse/core/util';
2
+ import { RenderArgsDeserializedWithFeaturesAndLayout } from './PileupRenderer';
3
+ export interface RenderArgsWithColor extends RenderArgsDeserializedWithFeaturesAndLayout {
4
+ Color: Awaited<typeof import('color')>;
5
+ }
6
+ interface LayoutFeature {
7
+ heightPx: number;
8
+ topPx: number;
9
+ feature: Feature;
10
+ }
11
+ export declare function makeImageData({ ctx, layoutRecords, canvasWidth, renderArgs, }: {
12
+ ctx: CanvasRenderingContext2D;
13
+ canvasWidth: number;
14
+ layoutRecords: LayoutFeature[];
15
+ renderArgs: RenderArgsWithColor;
16
+ }): void;
17
+ export {};