@jbrowse/plugin-alignments 2.6.1 → 2.6.3

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 (534) 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/SharedLinearPileupDisplayMixin.d.ts +492 -0
  28. package/dist/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +529 -0
  29. package/dist/LinearPileupDisplay/components/ColorByModifications.js +0 -1
  30. package/dist/LinearPileupDisplay/components/ColorByTag.js +0 -1
  31. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +0 -1
  32. package/dist/LinearPileupDisplay/components/ModificationsTable.js +0 -1
  33. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +0 -1
  34. package/dist/LinearPileupDisplay/components/SetMaxHeight.js +0 -1
  35. package/dist/LinearPileupDisplay/components/SortByTag.js +0 -1
  36. package/dist/LinearPileupDisplay/configSchema.js +0 -1
  37. package/dist/LinearPileupDisplay/index.d.ts +1 -0
  38. package/dist/LinearPileupDisplay/index.js +3 -2
  39. package/dist/LinearPileupDisplay/model.d.ts +110 -231
  40. package/dist/LinearPileupDisplay/model.js +47 -445
  41. package/dist/LinearReadArcsDisplay/components/ReactComponent.js +0 -1
  42. package/dist/LinearReadArcsDisplay/configSchema.js +0 -1
  43. package/dist/LinearReadArcsDisplay/drawFeats.js +0 -1
  44. package/dist/LinearReadArcsDisplay/index.js +0 -1
  45. package/dist/LinearReadArcsDisplay/model.js +0 -1
  46. package/dist/LinearReadArcsDisplay/util.js +0 -1
  47. package/dist/LinearReadCloudDisplay/components/ReactComponent.js +0 -1
  48. package/dist/LinearReadCloudDisplay/configSchema.d.ts +4 -4
  49. package/dist/LinearReadCloudDisplay/configSchema.js +0 -1
  50. package/dist/LinearReadCloudDisplay/drawFeats.js +0 -1
  51. package/dist/LinearReadCloudDisplay/drawLongReadChains.js +0 -1
  52. package/dist/LinearReadCloudDisplay/drawPairChains.js +0 -1
  53. package/dist/LinearReadCloudDisplay/index.js +0 -1
  54. package/dist/LinearReadCloudDisplay/model.d.ts +1 -3
  55. package/dist/LinearReadCloudDisplay/model.js +0 -1
  56. package/dist/LinearReadCloudDisplay/util.js +0 -1
  57. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +0 -1
  58. package/dist/LinearSNPCoverageDisplay/index.js +0 -1
  59. package/dist/LinearSNPCoverageDisplay/models/configSchema.d.ts +3 -0
  60. package/dist/LinearSNPCoverageDisplay/models/configSchema.js +0 -1
  61. package/dist/LinearSNPCoverageDisplay/models/model.d.ts +31 -15
  62. package/dist/LinearSNPCoverageDisplay/models/model.js +0 -1
  63. package/dist/MismatchParser/index.js +0 -1
  64. package/dist/PileupRPC/base.js +0 -1
  65. package/dist/PileupRPC/index.js +0 -1
  66. package/dist/PileupRPC/methods/GetGlobalValueForTag.js +0 -1
  67. package/dist/PileupRPC/methods/GetReducedFeatures.js +0 -1
  68. package/dist/PileupRPC/methods/GetVisibleModifications.js +0 -1
  69. package/dist/PileupRPC/rpcMethods.js +0 -1
  70. package/dist/PileupRPC/util.js +0 -1
  71. package/dist/PileupRenderer/PileupLayoutSession.js +0 -1
  72. package/dist/PileupRenderer/PileupRenderer.js +0 -1
  73. package/dist/PileupRenderer/colorBy.js +8 -7
  74. package/dist/PileupRenderer/components/PileupRendering.js +0 -1
  75. package/dist/PileupRenderer/configSchema.js +0 -1
  76. package/dist/PileupRenderer/getAlignmentShapeColor.js +0 -1
  77. package/dist/PileupRenderer/index.js +0 -1
  78. package/dist/PileupRenderer/layoutFeature.js +0 -1
  79. package/dist/PileupRenderer/layoutFeatures.js +0 -1
  80. package/dist/PileupRenderer/makeImageData.js +0 -1
  81. package/dist/PileupRenderer/renderAlignment.js +0 -1
  82. package/dist/PileupRenderer/renderAlignmentShape.js +1 -2
  83. package/dist/PileupRenderer/renderMethylation.js +0 -1
  84. package/dist/PileupRenderer/renderMismatches.js +0 -1
  85. package/dist/PileupRenderer/renderModifications.js +0 -1
  86. package/dist/PileupRenderer/renderPerBaseLettering.js +0 -1
  87. package/dist/PileupRenderer/renderPerBaseQuality.js +0 -1
  88. package/dist/PileupRenderer/renderSoftClipping.js +0 -1
  89. package/dist/PileupRenderer/sortUtil.js +0 -1
  90. package/dist/PileupRenderer/util.js +0 -1
  91. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +0 -1
  92. package/dist/SNPCoverageAdapter/configSchema.js +0 -1
  93. package/dist/SNPCoverageAdapter/generateCoverageBins.js +0 -1
  94. package/dist/SNPCoverageAdapter/index.js +0 -1
  95. package/dist/SNPCoverageAdapter/util.js +0 -1
  96. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +0 -1
  97. package/dist/SNPCoverageRenderer/configSchema.js +0 -1
  98. package/dist/SNPCoverageRenderer/index.js +0 -1
  99. package/dist/index.d.ts +1 -1
  100. package/dist/index.js +2 -2
  101. package/dist/shared/BaseDisplayComponent.js +0 -1
  102. package/dist/shared/FilterByTag.js +0 -1
  103. package/dist/shared/afterAttach.js +0 -1
  104. package/dist/shared/color.d.ts +10 -0
  105. package/dist/shared/color.js +7 -2
  106. package/dist/shared/fetchChains.js +0 -1
  107. package/dist/shared/index.js +0 -1
  108. package/dist/shared/renderSvg.js +0 -1
  109. package/dist/shared/util.js +0 -1
  110. package/dist/util.js +0 -1
  111. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +0 -1
  112. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js +0 -1
  113. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.js +0 -1
  114. package/esm/AlignmentsFeatureDetail/index.js +0 -1
  115. package/esm/AlignmentsFeatureDetail/util.js +0 -1
  116. package/esm/AlignmentsTrack/configSchemaF.js +0 -1
  117. package/esm/AlignmentsTrack/index.js +0 -1
  118. package/esm/BamAdapter/BamAdapter.js +0 -1
  119. package/esm/BamAdapter/BamSlightlyLazyFeature.js +0 -1
  120. package/esm/BamAdapter/configSchema.js +0 -1
  121. package/esm/BamAdapter/index.js +0 -1
  122. package/esm/CramAdapter/CramAdapter.js +0 -1
  123. package/esm/CramAdapter/CramSlightlyLazyFeature.js +0 -1
  124. package/esm/CramAdapter/CramTestAdapters.js +0 -1
  125. package/esm/CramAdapter/configSchema.js +0 -1
  126. package/esm/CramAdapter/index.js +0 -1
  127. package/esm/CramAdapter/util.js +0 -1
  128. package/esm/GuessAlignmentsTypes/index.js +0 -1
  129. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js +0 -1
  130. package/esm/HtsgetBamAdapter/configSchema.js +0 -1
  131. package/esm/HtsgetBamAdapter/index.js +0 -1
  132. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +1 -1
  133. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +5 -2
  134. package/esm/LinearAlignmentsDisplay/index.js +0 -1
  135. package/esm/LinearAlignmentsDisplay/models/configSchema.js +0 -1
  136. package/esm/LinearAlignmentsDisplay/models/model.js +5 -2
  137. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.d.ts +492 -0
  138. package/esm/LinearPileupDisplay/SharedLinearPileupDisplayMixin.js +499 -0
  139. package/esm/LinearPileupDisplay/components/ColorByModifications.js +0 -1
  140. package/esm/LinearPileupDisplay/components/ColorByTag.js +0 -1
  141. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +0 -1
  142. package/esm/LinearPileupDisplay/components/ModificationsTable.js +0 -1
  143. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js +0 -1
  144. package/esm/LinearPileupDisplay/components/SetMaxHeight.js +0 -1
  145. package/esm/LinearPileupDisplay/components/SortByTag.js +0 -1
  146. package/esm/LinearPileupDisplay/configSchema.js +0 -1
  147. package/esm/LinearPileupDisplay/index.d.ts +1 -0
  148. package/esm/LinearPileupDisplay/index.js +1 -1
  149. package/esm/LinearPileupDisplay/model.d.ts +110 -231
  150. package/esm/LinearPileupDisplay/model.js +48 -446
  151. package/esm/LinearReadArcsDisplay/components/ReactComponent.js +0 -1
  152. package/esm/LinearReadArcsDisplay/configSchema.js +0 -1
  153. package/esm/LinearReadArcsDisplay/drawFeats.js +0 -1
  154. package/esm/LinearReadArcsDisplay/index.js +0 -1
  155. package/esm/LinearReadArcsDisplay/model.js +0 -1
  156. package/esm/LinearReadArcsDisplay/util.js +0 -1
  157. package/esm/LinearReadCloudDisplay/components/ReactComponent.js +0 -1
  158. package/esm/LinearReadCloudDisplay/configSchema.d.ts +4 -4
  159. package/esm/LinearReadCloudDisplay/configSchema.js +0 -1
  160. package/esm/LinearReadCloudDisplay/drawFeats.js +0 -1
  161. package/esm/LinearReadCloudDisplay/drawLongReadChains.js +0 -1
  162. package/esm/LinearReadCloudDisplay/drawPairChains.js +0 -1
  163. package/esm/LinearReadCloudDisplay/index.js +0 -1
  164. package/esm/LinearReadCloudDisplay/model.d.ts +1 -3
  165. package/esm/LinearReadCloudDisplay/model.js +0 -1
  166. package/esm/LinearReadCloudDisplay/util.js +0 -1
  167. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +0 -1
  168. package/esm/LinearSNPCoverageDisplay/index.js +0 -1
  169. package/esm/LinearSNPCoverageDisplay/models/configSchema.d.ts +3 -0
  170. package/esm/LinearSNPCoverageDisplay/models/configSchema.js +0 -1
  171. package/esm/LinearSNPCoverageDisplay/models/model.d.ts +31 -15
  172. package/esm/LinearSNPCoverageDisplay/models/model.js +0 -1
  173. package/esm/MismatchParser/index.js +0 -1
  174. package/esm/PileupRPC/base.js +0 -1
  175. package/esm/PileupRPC/index.js +0 -1
  176. package/esm/PileupRPC/methods/GetGlobalValueForTag.js +0 -1
  177. package/esm/PileupRPC/methods/GetReducedFeatures.js +0 -1
  178. package/esm/PileupRPC/methods/GetVisibleModifications.js +0 -1
  179. package/esm/PileupRPC/rpcMethods.js +0 -1
  180. package/esm/PileupRPC/util.js +0 -1
  181. package/esm/PileupRenderer/PileupLayoutSession.js +0 -1
  182. package/esm/PileupRenderer/PileupRenderer.js +0 -1
  183. package/esm/PileupRenderer/colorBy.js +8 -7
  184. package/esm/PileupRenderer/components/PileupRendering.js +0 -1
  185. package/esm/PileupRenderer/configSchema.js +0 -1
  186. package/esm/PileupRenderer/getAlignmentShapeColor.js +0 -1
  187. package/esm/PileupRenderer/index.js +0 -1
  188. package/esm/PileupRenderer/layoutFeature.js +0 -1
  189. package/esm/PileupRenderer/layoutFeatures.js +0 -1
  190. package/esm/PileupRenderer/makeImageData.js +0 -1
  191. package/esm/PileupRenderer/renderAlignment.js +0 -1
  192. package/esm/PileupRenderer/renderAlignmentShape.js +1 -2
  193. package/esm/PileupRenderer/renderMethylation.js +0 -1
  194. package/esm/PileupRenderer/renderMismatches.js +0 -1
  195. package/esm/PileupRenderer/renderModifications.js +0 -1
  196. package/esm/PileupRenderer/renderPerBaseLettering.js +0 -1
  197. package/esm/PileupRenderer/renderPerBaseQuality.js +0 -1
  198. package/esm/PileupRenderer/renderSoftClipping.js +0 -1
  199. package/esm/PileupRenderer/sortUtil.js +0 -1
  200. package/esm/PileupRenderer/util.js +0 -1
  201. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +0 -1
  202. package/esm/SNPCoverageAdapter/configSchema.js +0 -1
  203. package/esm/SNPCoverageAdapter/generateCoverageBins.js +0 -1
  204. package/esm/SNPCoverageAdapter/index.js +0 -1
  205. package/esm/SNPCoverageAdapter/util.js +0 -1
  206. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +0 -1
  207. package/esm/SNPCoverageRenderer/configSchema.js +0 -1
  208. package/esm/SNPCoverageRenderer/index.js +0 -1
  209. package/esm/index.d.ts +1 -1
  210. package/esm/index.js +1 -2
  211. package/esm/shared/BaseDisplayComponent.js +0 -1
  212. package/esm/shared/FilterByTag.js +0 -1
  213. package/esm/shared/afterAttach.js +0 -1
  214. package/esm/shared/color.d.ts +10 -0
  215. package/esm/shared/color.js +6 -1
  216. package/esm/shared/fetchChains.js +0 -1
  217. package/esm/shared/index.js +0 -1
  218. package/esm/shared/renderSvg.js +0 -1
  219. package/esm/shared/util.js +0 -1
  220. package/esm/util.js +0 -1
  221. package/package.json +4 -5
  222. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +0 -1
  223. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js.map +0 -1
  224. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.js.map +0 -1
  225. package/dist/AlignmentsFeatureDetail/index.js.map +0 -1
  226. package/dist/AlignmentsFeatureDetail/util.js.map +0 -1
  227. package/dist/AlignmentsTrack/configSchemaF.js.map +0 -1
  228. package/dist/AlignmentsTrack/index.js.map +0 -1
  229. package/dist/BamAdapter/BamAdapter.js.map +0 -1
  230. package/dist/BamAdapter/BamSlightlyLazyFeature.js.map +0 -1
  231. package/dist/BamAdapter/configSchema.js.map +0 -1
  232. package/dist/BamAdapter/index.js.map +0 -1
  233. package/dist/CramAdapter/CramAdapter.js.map +0 -1
  234. package/dist/CramAdapter/CramSlightlyLazyFeature.js.map +0 -1
  235. package/dist/CramAdapter/CramTestAdapters.js.map +0 -1
  236. package/dist/CramAdapter/configSchema.js.map +0 -1
  237. package/dist/CramAdapter/index.js.map +0 -1
  238. package/dist/CramAdapter/util.js.map +0 -1
  239. package/dist/GuessAlignmentsTypes/index.js.map +0 -1
  240. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js.map +0 -1
  241. package/dist/HtsgetBamAdapter/configSchema.js.map +0 -1
  242. package/dist/HtsgetBamAdapter/index.js.map +0 -1
  243. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +0 -1
  244. package/dist/LinearAlignmentsDisplay/index.js.map +0 -1
  245. package/dist/LinearAlignmentsDisplay/models/configSchema.js.map +0 -1
  246. package/dist/LinearAlignmentsDisplay/models/model.js.map +0 -1
  247. package/dist/LinearPileupDisplay/components/ColorByModifications.js.map +0 -1
  248. package/dist/LinearPileupDisplay/components/ColorByTag.js.map +0 -1
  249. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +0 -1
  250. package/dist/LinearPileupDisplay/components/ModificationsTable.js.map +0 -1
  251. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js.map +0 -1
  252. package/dist/LinearPileupDisplay/components/SetMaxHeight.js.map +0 -1
  253. package/dist/LinearPileupDisplay/components/SortByTag.js.map +0 -1
  254. package/dist/LinearPileupDisplay/configSchema.js.map +0 -1
  255. package/dist/LinearPileupDisplay/index.js.map +0 -1
  256. package/dist/LinearPileupDisplay/model.js.map +0 -1
  257. package/dist/LinearReadArcsDisplay/components/ReactComponent.js.map +0 -1
  258. package/dist/LinearReadArcsDisplay/configSchema.js.map +0 -1
  259. package/dist/LinearReadArcsDisplay/drawFeats.js.map +0 -1
  260. package/dist/LinearReadArcsDisplay/index.js.map +0 -1
  261. package/dist/LinearReadArcsDisplay/model.js.map +0 -1
  262. package/dist/LinearReadArcsDisplay/util.js.map +0 -1
  263. package/dist/LinearReadCloudDisplay/components/ReactComponent.js.map +0 -1
  264. package/dist/LinearReadCloudDisplay/configSchema.js.map +0 -1
  265. package/dist/LinearReadCloudDisplay/drawFeats.js.map +0 -1
  266. package/dist/LinearReadCloudDisplay/drawLongReadChains.js.map +0 -1
  267. package/dist/LinearReadCloudDisplay/drawPairChains.js.map +0 -1
  268. package/dist/LinearReadCloudDisplay/index.js.map +0 -1
  269. package/dist/LinearReadCloudDisplay/model.js.map +0 -1
  270. package/dist/LinearReadCloudDisplay/util.js.map +0 -1
  271. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js.map +0 -1
  272. package/dist/LinearSNPCoverageDisplay/index.js.map +0 -1
  273. package/dist/LinearSNPCoverageDisplay/models/configSchema.js.map +0 -1
  274. package/dist/LinearSNPCoverageDisplay/models/model.js.map +0 -1
  275. package/dist/MismatchParser/index.js.map +0 -1
  276. package/dist/PileupRPC/base.js.map +0 -1
  277. package/dist/PileupRPC/index.js.map +0 -1
  278. package/dist/PileupRPC/methods/GetGlobalValueForTag.js.map +0 -1
  279. package/dist/PileupRPC/methods/GetReducedFeatures.js.map +0 -1
  280. package/dist/PileupRPC/methods/GetVisibleModifications.js.map +0 -1
  281. package/dist/PileupRPC/rpcMethods.js.map +0 -1
  282. package/dist/PileupRPC/util.js.map +0 -1
  283. package/dist/PileupRenderer/PileupLayoutSession.js.map +0 -1
  284. package/dist/PileupRenderer/PileupRenderer.js.map +0 -1
  285. package/dist/PileupRenderer/colorBy.js.map +0 -1
  286. package/dist/PileupRenderer/components/PileupRendering.js.map +0 -1
  287. package/dist/PileupRenderer/configSchema.js.map +0 -1
  288. package/dist/PileupRenderer/getAlignmentShapeColor.js.map +0 -1
  289. package/dist/PileupRenderer/index.js.map +0 -1
  290. package/dist/PileupRenderer/layoutFeature.js.map +0 -1
  291. package/dist/PileupRenderer/layoutFeatures.js.map +0 -1
  292. package/dist/PileupRenderer/makeImageData.js.map +0 -1
  293. package/dist/PileupRenderer/renderAlignment.js.map +0 -1
  294. package/dist/PileupRenderer/renderAlignmentShape.js.map +0 -1
  295. package/dist/PileupRenderer/renderMethylation.js.map +0 -1
  296. package/dist/PileupRenderer/renderMismatches.js.map +0 -1
  297. package/dist/PileupRenderer/renderModifications.js.map +0 -1
  298. package/dist/PileupRenderer/renderPerBaseLettering.js.map +0 -1
  299. package/dist/PileupRenderer/renderPerBaseQuality.js.map +0 -1
  300. package/dist/PileupRenderer/renderSoftClipping.js.map +0 -1
  301. package/dist/PileupRenderer/sortUtil.js.map +0 -1
  302. package/dist/PileupRenderer/util.js.map +0 -1
  303. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js.map +0 -1
  304. package/dist/SNPCoverageAdapter/configSchema.js.map +0 -1
  305. package/dist/SNPCoverageAdapter/generateCoverageBins.js.map +0 -1
  306. package/dist/SNPCoverageAdapter/index.js.map +0 -1
  307. package/dist/SNPCoverageAdapter/util.js.map +0 -1
  308. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js.map +0 -1
  309. package/dist/SNPCoverageRenderer/configSchema.js.map +0 -1
  310. package/dist/SNPCoverageRenderer/index.js.map +0 -1
  311. package/dist/index.js.map +0 -1
  312. package/dist/shared/BaseDisplayComponent.js.map +0 -1
  313. package/dist/shared/FilterByTag.js.map +0 -1
  314. package/dist/shared/afterAttach.js.map +0 -1
  315. package/dist/shared/color.js.map +0 -1
  316. package/dist/shared/fetchChains.js.map +0 -1
  317. package/dist/shared/index.js.map +0 -1
  318. package/dist/shared/renderSvg.js.map +0 -1
  319. package/dist/shared/util.js.map +0 -1
  320. package/dist/util.js.map +0 -1
  321. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +0 -1
  322. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureFlags.js.map +0 -1
  323. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.js.map +0 -1
  324. package/esm/AlignmentsFeatureDetail/index.js.map +0 -1
  325. package/esm/AlignmentsFeatureDetail/util.js.map +0 -1
  326. package/esm/AlignmentsTrack/configSchemaF.js.map +0 -1
  327. package/esm/AlignmentsTrack/index.js.map +0 -1
  328. package/esm/BamAdapter/BamAdapter.js.map +0 -1
  329. package/esm/BamAdapter/BamSlightlyLazyFeature.js.map +0 -1
  330. package/esm/BamAdapter/configSchema.js.map +0 -1
  331. package/esm/BamAdapter/index.js.map +0 -1
  332. package/esm/CramAdapter/CramAdapter.js.map +0 -1
  333. package/esm/CramAdapter/CramSlightlyLazyFeature.js.map +0 -1
  334. package/esm/CramAdapter/CramTestAdapters.js.map +0 -1
  335. package/esm/CramAdapter/configSchema.js.map +0 -1
  336. package/esm/CramAdapter/index.js.map +0 -1
  337. package/esm/CramAdapter/util.js.map +0 -1
  338. package/esm/GuessAlignmentsTypes/index.js.map +0 -1
  339. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js.map +0 -1
  340. package/esm/HtsgetBamAdapter/configSchema.js.map +0 -1
  341. package/esm/HtsgetBamAdapter/index.js.map +0 -1
  342. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +0 -1
  343. package/esm/LinearAlignmentsDisplay/index.js.map +0 -1
  344. package/esm/LinearAlignmentsDisplay/models/configSchema.js.map +0 -1
  345. package/esm/LinearAlignmentsDisplay/models/model.js.map +0 -1
  346. package/esm/LinearPileupDisplay/components/ColorByModifications.js.map +0 -1
  347. package/esm/LinearPileupDisplay/components/ColorByTag.js.map +0 -1
  348. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +0 -1
  349. package/esm/LinearPileupDisplay/components/ModificationsTable.js.map +0 -1
  350. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js.map +0 -1
  351. package/esm/LinearPileupDisplay/components/SetMaxHeight.js.map +0 -1
  352. package/esm/LinearPileupDisplay/components/SortByTag.js.map +0 -1
  353. package/esm/LinearPileupDisplay/configSchema.js.map +0 -1
  354. package/esm/LinearPileupDisplay/index.js.map +0 -1
  355. package/esm/LinearPileupDisplay/model.js.map +0 -1
  356. package/esm/LinearReadArcsDisplay/components/ReactComponent.js.map +0 -1
  357. package/esm/LinearReadArcsDisplay/configSchema.js.map +0 -1
  358. package/esm/LinearReadArcsDisplay/drawFeats.js.map +0 -1
  359. package/esm/LinearReadArcsDisplay/index.js.map +0 -1
  360. package/esm/LinearReadArcsDisplay/model.js.map +0 -1
  361. package/esm/LinearReadArcsDisplay/util.js.map +0 -1
  362. package/esm/LinearReadCloudDisplay/components/ReactComponent.js.map +0 -1
  363. package/esm/LinearReadCloudDisplay/configSchema.js.map +0 -1
  364. package/esm/LinearReadCloudDisplay/drawFeats.js.map +0 -1
  365. package/esm/LinearReadCloudDisplay/drawLongReadChains.js.map +0 -1
  366. package/esm/LinearReadCloudDisplay/drawPairChains.js.map +0 -1
  367. package/esm/LinearReadCloudDisplay/index.js.map +0 -1
  368. package/esm/LinearReadCloudDisplay/model.js.map +0 -1
  369. package/esm/LinearReadCloudDisplay/util.js.map +0 -1
  370. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js.map +0 -1
  371. package/esm/LinearSNPCoverageDisplay/index.js.map +0 -1
  372. package/esm/LinearSNPCoverageDisplay/models/configSchema.js.map +0 -1
  373. package/esm/LinearSNPCoverageDisplay/models/model.js.map +0 -1
  374. package/esm/MismatchParser/index.js.map +0 -1
  375. package/esm/PileupRPC/base.js.map +0 -1
  376. package/esm/PileupRPC/index.js.map +0 -1
  377. package/esm/PileupRPC/methods/GetGlobalValueForTag.js.map +0 -1
  378. package/esm/PileupRPC/methods/GetReducedFeatures.js.map +0 -1
  379. package/esm/PileupRPC/methods/GetVisibleModifications.js.map +0 -1
  380. package/esm/PileupRPC/rpcMethods.js.map +0 -1
  381. package/esm/PileupRPC/util.js.map +0 -1
  382. package/esm/PileupRenderer/PileupLayoutSession.js.map +0 -1
  383. package/esm/PileupRenderer/PileupRenderer.js.map +0 -1
  384. package/esm/PileupRenderer/colorBy.js.map +0 -1
  385. package/esm/PileupRenderer/components/PileupRendering.js.map +0 -1
  386. package/esm/PileupRenderer/configSchema.js.map +0 -1
  387. package/esm/PileupRenderer/getAlignmentShapeColor.js.map +0 -1
  388. package/esm/PileupRenderer/index.js.map +0 -1
  389. package/esm/PileupRenderer/layoutFeature.js.map +0 -1
  390. package/esm/PileupRenderer/layoutFeatures.js.map +0 -1
  391. package/esm/PileupRenderer/makeImageData.js.map +0 -1
  392. package/esm/PileupRenderer/renderAlignment.js.map +0 -1
  393. package/esm/PileupRenderer/renderAlignmentShape.js.map +0 -1
  394. package/esm/PileupRenderer/renderMethylation.js.map +0 -1
  395. package/esm/PileupRenderer/renderMismatches.js.map +0 -1
  396. package/esm/PileupRenderer/renderModifications.js.map +0 -1
  397. package/esm/PileupRenderer/renderPerBaseLettering.js.map +0 -1
  398. package/esm/PileupRenderer/renderPerBaseQuality.js.map +0 -1
  399. package/esm/PileupRenderer/renderSoftClipping.js.map +0 -1
  400. package/esm/PileupRenderer/sortUtil.js.map +0 -1
  401. package/esm/PileupRenderer/util.js.map +0 -1
  402. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js.map +0 -1
  403. package/esm/SNPCoverageAdapter/configSchema.js.map +0 -1
  404. package/esm/SNPCoverageAdapter/generateCoverageBins.js.map +0 -1
  405. package/esm/SNPCoverageAdapter/index.js.map +0 -1
  406. package/esm/SNPCoverageAdapter/util.js.map +0 -1
  407. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js.map +0 -1
  408. package/esm/SNPCoverageRenderer/configSchema.js.map +0 -1
  409. package/esm/SNPCoverageRenderer/index.js.map +0 -1
  410. package/esm/index.js.map +0 -1
  411. package/esm/shared/BaseDisplayComponent.js.map +0 -1
  412. package/esm/shared/FilterByTag.js.map +0 -1
  413. package/esm/shared/afterAttach.js.map +0 -1
  414. package/esm/shared/color.js.map +0 -1
  415. package/esm/shared/fetchChains.js.map +0 -1
  416. package/esm/shared/index.js.map +0 -1
  417. package/esm/shared/renderSvg.js.map +0 -1
  418. package/esm/shared/util.js.map +0 -1
  419. package/esm/util.js.map +0 -1
  420. package/src/AlignmentsFeatureDetail/AlignmentsFeatureDetail.tsx +0 -155
  421. package/src/AlignmentsFeatureDetail/AlignmentsFeatureFlags.tsx +0 -60
  422. package/src/AlignmentsFeatureDetail/AlignmentsFeatureSuppAligns.tsx +0 -51
  423. package/src/AlignmentsFeatureDetail/__snapshots__/index.test.tsx.snap +0 -327
  424. package/src/AlignmentsFeatureDetail/index.test.tsx +0 -47
  425. package/src/AlignmentsFeatureDetail/index.ts +0 -33
  426. package/src/AlignmentsFeatureDetail/util.ts +0 -27
  427. package/src/AlignmentsTrack/configSchemaF.ts +0 -22
  428. package/src/AlignmentsTrack/index.ts +0 -22
  429. package/src/BamAdapter/BamAdapter.test.ts +0 -124
  430. package/src/BamAdapter/BamAdapter.ts +0 -251
  431. package/src/BamAdapter/BamSlightlyLazyFeature.ts +0 -149
  432. package/src/BamAdapter/__snapshots__/BamAdapter.test.ts.snap +0 -1105
  433. package/src/BamAdapter/configSchema.ts +0 -65
  434. package/src/BamAdapter/index.ts +0 -14
  435. package/src/CombinationTest.test.ts +0 -108
  436. package/src/CramAdapter/CramAdapter.test.ts +0 -85
  437. package/src/CramAdapter/CramAdapter.ts +0 -323
  438. package/src/CramAdapter/CramSlightlyLazyFeature.ts +0 -185
  439. package/src/CramAdapter/CramTestAdapters.ts +0 -98
  440. package/src/CramAdapter/__snapshots__/CramAdapter.test.ts.snap +0 -256
  441. package/src/CramAdapter/__snapshots__/util.test.ts.snap +0 -14
  442. package/src/CramAdapter/configSchema.ts +0 -57
  443. package/src/CramAdapter/index.ts +0 -16
  444. package/src/CramAdapter/util.test.ts +0 -26
  445. package/src/CramAdapter/util.ts +0 -251
  446. package/src/GuessAlignmentsTypes/index.ts +0 -79
  447. package/src/HtsgetBamAdapter/HtsgetBamAdapter.ts +0 -24
  448. package/src/HtsgetBamAdapter/configSchema.ts +0 -40
  449. package/src/HtsgetBamAdapter/index.ts +0 -17
  450. package/src/LinearAlignmentsDisplay/components/AlignmentsDisplay.tsx +0 -52
  451. package/src/LinearAlignmentsDisplay/index.ts +0 -21
  452. package/src/LinearAlignmentsDisplay/models/configSchema.test.ts +0 -60
  453. package/src/LinearAlignmentsDisplay/models/configSchema.ts +0 -41
  454. package/src/LinearAlignmentsDisplay/models/model.tsx +0 -403
  455. package/src/LinearPileupDisplay/components/ColorByModifications.tsx +0 -102
  456. package/src/LinearPileupDisplay/components/ColorByTag.tsx +0 -61
  457. package/src/LinearPileupDisplay/components/LinearPileupDisplayBlurb.tsx +0 -32
  458. package/src/LinearPileupDisplay/components/ModificationsTable.tsx +0 -38
  459. package/src/LinearPileupDisplay/components/SetFeatureHeight.tsx +0 -82
  460. package/src/LinearPileupDisplay/components/SetMaxHeight.tsx +0 -71
  461. package/src/LinearPileupDisplay/components/SortByTag.tsx +0 -64
  462. package/src/LinearPileupDisplay/configSchema.test.js +0 -55
  463. package/src/LinearPileupDisplay/configSchema.ts +0 -67
  464. package/src/LinearPileupDisplay/index.ts +0 -24
  465. package/src/LinearPileupDisplay/model.ts +0 -884
  466. package/src/LinearReadArcsDisplay/components/ReactComponent.tsx +0 -50
  467. package/src/LinearReadArcsDisplay/configSchema.ts +0 -68
  468. package/src/LinearReadArcsDisplay/declare.d.ts +0 -1
  469. package/src/LinearReadArcsDisplay/drawFeats.ts +0 -210
  470. package/src/LinearReadArcsDisplay/index.ts +0 -23
  471. package/src/LinearReadArcsDisplay/model.tsx +0 -355
  472. package/src/LinearReadArcsDisplay/util.ts +0 -10
  473. package/src/LinearReadCloudDisplay/components/ReactComponent.tsx +0 -48
  474. package/src/LinearReadCloudDisplay/configSchema.ts +0 -57
  475. package/src/LinearReadCloudDisplay/drawFeats.ts +0 -35
  476. package/src/LinearReadCloudDisplay/drawLongReadChains.ts +0 -85
  477. package/src/LinearReadCloudDisplay/drawPairChains.ts +0 -139
  478. package/src/LinearReadCloudDisplay/index.ts +0 -23
  479. package/src/LinearReadCloudDisplay/model.tsx +0 -246
  480. package/src/LinearReadCloudDisplay/util.ts +0 -47
  481. package/src/LinearSNPCoverageDisplay/components/Tooltip.tsx +0 -128
  482. package/src/LinearSNPCoverageDisplay/index.ts +0 -20
  483. package/src/LinearSNPCoverageDisplay/models/configSchema.test.ts +0 -35
  484. package/src/LinearSNPCoverageDisplay/models/configSchema.ts +0 -82
  485. package/src/LinearSNPCoverageDisplay/models/model.ts +0 -336
  486. package/src/MismatchParser/index.test.ts +0 -283
  487. package/src/MismatchParser/index.ts +0 -508
  488. package/src/PileupRPC/base.ts +0 -24
  489. package/src/PileupRPC/index.ts +0 -12
  490. package/src/PileupRPC/methods/GetGlobalValueForTag.ts +0 -44
  491. package/src/PileupRPC/methods/GetReducedFeatures.ts +0 -67
  492. package/src/PileupRPC/methods/GetVisibleModifications.ts +0 -45
  493. package/src/PileupRPC/rpcMethods.ts +0 -3
  494. package/src/PileupRPC/util.ts +0 -19
  495. package/src/PileupRenderer/PileupLayoutSession.ts +0 -64
  496. package/src/PileupRenderer/PileupRenderer.ts +0 -142
  497. package/src/PileupRenderer/colorBy.ts +0 -74
  498. package/src/PileupRenderer/components/PileupRendering.tsx +0 -209
  499. package/src/PileupRenderer/configSchema.ts +0 -108
  500. package/src/PileupRenderer/getAlignmentShapeColor.ts +0 -87
  501. package/src/PileupRenderer/index.ts +0 -16
  502. package/src/PileupRenderer/layoutFeature.ts +0 -83
  503. package/src/PileupRenderer/layoutFeatures.ts +0 -44
  504. package/src/PileupRenderer/makeImageData.ts +0 -93
  505. package/src/PileupRenderer/renderAlignment.ts +0 -97
  506. package/src/PileupRenderer/renderAlignmentShape.ts +0 -45
  507. package/src/PileupRenderer/renderMethylation.ts +0 -75
  508. package/src/PileupRenderer/renderMismatches.ts +0 -206
  509. package/src/PileupRenderer/renderModifications.ts +0 -74
  510. package/src/PileupRenderer/renderPerBaseLettering.ts +0 -67
  511. package/src/PileupRenderer/renderPerBaseQuality.ts +0 -46
  512. package/src/PileupRenderer/renderSoftClipping.ts +0 -78
  513. package/src/PileupRenderer/sortUtil.ts +0 -107
  514. package/src/PileupRenderer/util.ts +0 -63
  515. package/src/SNPCoverageAdapter/SNPCoverageAdapter.ts +0 -111
  516. package/src/SNPCoverageAdapter/configSchema.ts +0 -23
  517. package/src/SNPCoverageAdapter/generateCoverageBins.ts +0 -259
  518. package/src/SNPCoverageAdapter/index.ts +0 -18
  519. package/src/SNPCoverageAdapter/util.ts +0 -33
  520. package/src/SNPCoverageRenderer/SNPCoverageRenderer.ts +0 -270
  521. package/src/SNPCoverageRenderer/configSchema.ts +0 -64
  522. package/src/SNPCoverageRenderer/index.ts +0 -17
  523. package/src/__snapshots__/index.test.ts.snap +0 -3
  524. package/src/index.test.ts +0 -17
  525. package/src/index.ts +0 -48
  526. package/src/shared/BaseDisplayComponent.tsx +0 -83
  527. package/src/shared/FilterByTag.tsx +0 -187
  528. package/src/shared/afterAttach.tsx +0 -66
  529. package/src/shared/color.ts +0 -86
  530. package/src/shared/fetchChains.ts +0 -62
  531. package/src/shared/index.ts +0 -75
  532. package/src/shared/renderSvg.tsx +0 -64
  533. package/src/shared/util.ts +0 -10
  534. package/src/util.ts +0 -154
@@ -1,50 +0,0 @@
1
- import React, { useCallback } from 'react'
2
- import { observer } from 'mobx-react'
3
- import { getContainingView } from '@jbrowse/core/util'
4
- import { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view'
5
-
6
- // local
7
- import { LinearReadArcsDisplayModel } from '../model'
8
- import BaseDisplayComponent from '../../shared/BaseDisplayComponent'
9
-
10
- type LGV = LinearGenomeViewModel
11
-
12
- const Arcs = observer(function ({
13
- model,
14
- }: {
15
- model: LinearReadArcsDisplayModel
16
- }) {
17
- const view = getContainingView(model) as LGV
18
- const width = Math.round(view.dynamicBlocks.totalWidthPx)
19
- const height = model.height
20
- const cb = useCallback(
21
- (ref: HTMLCanvasElement) => {
22
- model.setRef(ref)
23
- },
24
- // eslint-disable-next-line react-hooks/exhaustive-deps
25
- [model, width, height],
26
- )
27
-
28
- // note: the position absolute below avoids scrollbar from appearing on track
29
- return (
30
- <canvas
31
- data-testid="arc-canvas"
32
- ref={cb}
33
- style={{ width, height, position: 'absolute' }}
34
- width={width * 2}
35
- height={height * 2}
36
- />
37
- )
38
- })
39
-
40
- export default observer(function ({
41
- model,
42
- }: {
43
- model: LinearReadArcsDisplayModel
44
- }) {
45
- return (
46
- <BaseDisplayComponent model={model}>
47
- <Arcs model={model} />
48
- </BaseDisplayComponent>
49
- )
50
- })
@@ -1,68 +0,0 @@
1
- import PluginManager from '@jbrowse/core/PluginManager'
2
- import { ConfigurationSchema } from '@jbrowse/core/configuration'
3
- import { linearBasicDisplayConfigSchemaFactory } from '@jbrowse/plugin-linear-genome-view'
4
- import { types } from 'mobx-state-tree'
5
-
6
- /**
7
- * #config LinearReadArcsDisplay
8
- */
9
- function configSchemaF(pluginManager: PluginManager) {
10
- return ConfigurationSchema(
11
- 'LinearReadArcsDisplay',
12
- {
13
- /**
14
- * #slot
15
- */
16
- maxFeatureScreenDensity: {
17
- type: 'number',
18
- description: 'maximum features per pixel that is displayed in the view',
19
- defaultValue: 5,
20
- },
21
-
22
- /**
23
- * #slot
24
- */
25
- lineWidth: {
26
- type: 'number',
27
- description: 'set arc line width',
28
- defaultValue: 1,
29
- },
30
-
31
- /**
32
- * #slot
33
- */
34
- jitter: {
35
- type: 'number',
36
- description:
37
- 'jitters the x position so e.g. if many reads map to exact same x position, jittering makes it easy to see that there are many of them',
38
- defaultValue: 0,
39
- },
40
-
41
- /**
42
- * #slot
43
- */
44
- colorScheme: {
45
- type: 'stringEnum',
46
- model: types.enumeration('colorScheme', [
47
- 'strand',
48
- 'normal',
49
- 'insertSize',
50
- 'insertSizeAndOrientation',
51
- 'mappingQuality',
52
- 'tag',
53
- ]),
54
- description: 'color scheme to use',
55
- defaultValue: 'normal',
56
- },
57
- },
58
- {
59
- /**
60
- * #baseConfiguration
61
- */
62
- baseConfiguration: linearBasicDisplayConfigSchemaFactory(pluginManager),
63
- explicitlyTyped: true,
64
- },
65
- )
66
- }
67
-
68
- export default configSchemaF
@@ -1 +0,0 @@
1
- declare module 'canvas2svg'
@@ -1,210 +0,0 @@
1
- import { getContainingView, getSession } from '@jbrowse/core/util'
2
- import { LinearGenomeViewModel } from '@jbrowse/plugin-linear-genome-view'
3
- import { Assembly } from '@jbrowse/core/assemblyManager/assembly'
4
-
5
- // locals
6
- import {
7
- getPairedOrientationColor,
8
- getPairedInsertSizeColor,
9
- getPairedInsertSizeAndOrientationColor,
10
- } from '../shared/color'
11
- import { featurizeSA } from '../MismatchParser'
12
- import { LinearReadArcsDisplayModel } from './model'
13
- import { hasPairedReads } from '../shared/util'
14
-
15
- type LGV = LinearGenomeViewModel
16
-
17
- function jitter(n: number) {
18
- return Math.random() * 2 * n - n
19
- }
20
-
21
- interface CoreFeat {
22
- strand: number
23
- refName: string
24
- start: number
25
- end: number
26
- }
27
-
28
- function drawLineAtOffset(
29
- ctx: CanvasRenderingContext2D,
30
- offset: number,
31
- height: number,
32
- color: string,
33
- ) {
34
- // draws a vertical line off to middle of nowhere if the second end not found
35
- ctx.strokeStyle = color
36
- ctx.beginPath()
37
- ctx.moveTo(offset, 0)
38
- ctx.lineTo(offset, height)
39
- ctx.stroke()
40
- }
41
-
42
- export function drawFeats(
43
- self: LinearReadArcsDisplayModel,
44
- ctx: CanvasRenderingContext2D,
45
- width: number,
46
- height: number,
47
- ) {
48
- const {
49
- chainData,
50
- colorBy,
51
- drawInter,
52
- drawLongRange,
53
- lineWidthSetting,
54
- jitterVal,
55
- } = self
56
- if (!chainData) {
57
- return
58
- }
59
- const view = getContainingView(self) as LGV
60
- const { assemblyManager } = getSession(self)
61
- const { chains, stats } = chainData
62
- const hasPaired = hasPairedReads(chainData)
63
- const asm = assemblyManager.get(view.assemblyNames[0])
64
- const type = colorBy?.type || 'insertSizeAndOrientation'
65
- if (!asm) {
66
- return
67
- }
68
- ctx.lineWidth = lineWidthSetting
69
-
70
- function draw(
71
- k1: CoreFeat & { tlen?: number; pair_orientation?: string },
72
- k2: CoreFeat,
73
- assembly: Assembly,
74
- longRange?: boolean,
75
- ) {
76
- const s1 = k1.strand
77
- const s2 = k2.strand
78
- const f1 = s1 === -1
79
- const f2 = s2 === -1
80
-
81
- const p1 = f1 ? k1.start : k1.end
82
- const p2 = hasPaired ? (f2 ? k2.start : k2.end) : f2 ? k2.end : k2.start
83
- const ra1 = assembly.getCanonicalRefName(k1.refName) || k1.refName
84
- const ra2 = assembly.getCanonicalRefName(k2.refName) || k2.refName
85
- const r1 = view.bpToPx({ refName: ra1, coord: p1 })?.offsetPx
86
- const r2 = view.bpToPx({ refName: ra2, coord: p2 })?.offsetPx
87
-
88
- if (r1 !== undefined && r2 !== undefined) {
89
- const radius = (r2 - r1) / 2
90
- const absrad = Math.abs(radius)
91
- const p = r1 - view.offsetPx
92
- const p2 = r2 - view.offsetPx
93
- const drawArcInsteadOfBezier = absrad > 10_000
94
-
95
- // bezier (used for non-long-range arcs) requires moveTo before beginPath
96
- // arc (used for long-range) requires moveTo after beginPath (or else a
97
- // unwanted line at y=0 is rendered along with the arc)
98
- if (longRange && drawArcInsteadOfBezier) {
99
- ctx.moveTo(p, 0)
100
- ctx.beginPath()
101
- } else {
102
- ctx.beginPath()
103
- ctx.moveTo(p, 0)
104
- }
105
-
106
- if (longRange && drawArcInsteadOfBezier) {
107
- ctx.strokeStyle = 'red'
108
- } else {
109
- if (hasPaired) {
110
- if (type === 'insertSizeAndOrientation') {
111
- ctx.strokeStyle = getPairedInsertSizeAndOrientationColor(
112
- k1,
113
- k2,
114
- stats,
115
- )[0]
116
- } else if (type === 'orientation') {
117
- ctx.strokeStyle = getPairedOrientationColor(k1)[0]
118
- } else if (type === 'insertSize') {
119
- ctx.strokeStyle =
120
- getPairedInsertSizeColor(k1, k2, stats)?.[0] || 'grey'
121
- } else if (type === 'gradient') {
122
- ctx.strokeStyle = `hsl(${Math.log10(absrad) * 10},50%,50%)`
123
- }
124
- } else {
125
- if (type === 'orientation' || type === 'insertSizeAndOrientation') {
126
- if (s1 === -1 && s2 === 1) {
127
- ctx.strokeStyle = 'navy'
128
- } else if (s1 === 1 && s2 === -1) {
129
- ctx.strokeStyle = 'green'
130
- } else {
131
- ctx.strokeStyle = 'grey'
132
- }
133
- } else if (type === 'gradient') {
134
- ctx.strokeStyle = `hsl(${Math.log10(absrad) * 10},50%,50%)`
135
- }
136
- }
137
- }
138
-
139
- const destX = p + radius * 2
140
- const destY = Math.min(height + jitter(jitterVal), absrad)
141
- if (longRange) {
142
- // avoid drawing gigantic circles that glitch out the rendering,
143
- // instead draw vertical lines
144
- if (absrad > 100_000) {
145
- drawLineAtOffset(ctx, p + jitter(jitterVal), height, 'red')
146
- drawLineAtOffset(ctx, p2 + jitter(jitterVal), height, 'red')
147
- } else if (drawArcInsteadOfBezier) {
148
- ctx.arc(p + radius + jitter(jitterVal), 0, absrad, 0, Math.PI)
149
- ctx.stroke()
150
- } else {
151
- ctx.bezierCurveTo(
152
- p + jitter(jitterVal),
153
- destY,
154
- destX,
155
- destY,
156
- destX + jitter(jitterVal),
157
- 0,
158
- )
159
- ctx.stroke()
160
- }
161
- } else {
162
- ctx.bezierCurveTo(
163
- p + jitter(jitterVal),
164
- destY,
165
- destX,
166
- destY,
167
- destX + jitter(jitterVal),
168
- 0,
169
- )
170
- ctx.stroke()
171
- }
172
- } else if (r1 && drawInter) {
173
- drawLineAtOffset(ctx, r1 - view.offsetPx, height, 'purple')
174
- }
175
- }
176
-
177
- for (const chain of chains) {
178
- // chain.length === 1, singleton (other pairs/mates not in view)
179
- if (chain.length === 1 && drawLongRange) {
180
- const f = chain[0]
181
- if (hasPaired && !(f.flags & 8)) {
182
- const mate = {
183
- refName: f.next_ref || '',
184
- start: f.next_pos || 0,
185
- end: f.next_pos || 0,
186
- strand: f.strand,
187
- }
188
- draw(f, mate, asm, true)
189
- } else {
190
- const features = [f, ...featurizeSA(f.SA, f.id, f.strand, f.name)].sort(
191
- (a, b) => a.clipPos - b.clipPos,
192
- )
193
- for (let i = 0; i < features.length - 1; i++) {
194
- const f = features[i]
195
- const v1 = features[i + 1]
196
- draw(f, v1, asm, true)
197
- }
198
- }
199
- } else {
200
- const res = hasPaired
201
- ? chain.filter(f => !(f.flags & 2048) && !(f.flags & 8))
202
- : chain
203
- .sort((a, b) => a.clipPos - b.clipPos)
204
- .filter(f => !(f.flags & 256))
205
- for (let i = 0; i < res.length - 1; i++) {
206
- draw(res[i], res[i + 1], asm, false)
207
- }
208
- }
209
- }
210
- }
@@ -1,23 +0,0 @@
1
- import PluginManager from '@jbrowse/core/PluginManager'
2
- import DisplayType from '@jbrowse/core/pluggableElementTypes/DisplayType'
3
-
4
- // locals
5
- import ReactComponent from './components/ReactComponent'
6
- import configSchemaF from './configSchema'
7
- import stateModelF from './model'
8
-
9
- export default function register(pluginManager: PluginManager) {
10
- pluginManager.addDisplayType(() => {
11
- const configSchema = configSchemaF(pluginManager)
12
- return new DisplayType({
13
- name: 'LinearReadArcsDisplay',
14
- displayName: 'Arc display',
15
- configSchema,
16
- stateModel: stateModelF(configSchema),
17
- trackType: 'AlignmentsTrack',
18
- viewType: 'LinearGenomeView',
19
- subDisplay: { type: 'LinearAlignmentsDisplay', lowerPanel: true },
20
- ReactComponent,
21
- })
22
- })
23
- }
@@ -1,355 +0,0 @@
1
- import React, { lazy } from 'react'
2
- import { cast, types, Instance } from 'mobx-state-tree'
3
- import {
4
- AnyConfigurationSchemaType,
5
- ConfigurationReference,
6
- getConf,
7
- } from '@jbrowse/core/configuration'
8
- import { getSession } from '@jbrowse/core/util'
9
- import { BaseDisplay } from '@jbrowse/core/pluggableElementTypes'
10
- import {
11
- FeatureDensityMixin,
12
- TrackHeightMixin,
13
- } from '@jbrowse/plugin-linear-genome-view'
14
-
15
- // icons
16
- import PaletteIcon from '@mui/icons-material/Palette'
17
- import FilterListIcon from '@mui/icons-material/ClearAll'
18
-
19
- // locals
20
- import { FilterModel } from '../shared'
21
- import { ChainData } from '../shared/fetchChains'
22
-
23
- // async
24
- const FilterByTagDlg = lazy(() => import('../shared/FilterByTag'))
25
-
26
- interface Filter {
27
- flagInclude: number
28
- flagExclude: number
29
- readName?: string
30
- tagFilter?: { tag: string; value: string }
31
- }
32
-
33
- /**
34
- * #stateModel LinearReadArcsDisplay
35
- * extends `BaseDisplay`, it is not a block based track, hence not
36
- * BaseLinearDisplay
37
- */
38
- function stateModelFactory(configSchema: AnyConfigurationSchemaType) {
39
- return types
40
- .compose(
41
- 'LinearReadArcsDisplay',
42
- BaseDisplay,
43
- TrackHeightMixin(),
44
- FeatureDensityMixin(),
45
- types.model({
46
- /**
47
- * #property
48
- */
49
- type: types.literal('LinearReadArcsDisplay'),
50
- /**
51
- * #property
52
- */
53
- configuration: ConfigurationReference(configSchema),
54
-
55
- /**
56
- * #property
57
- */
58
- filterBy: types.optional(FilterModel, {}),
59
-
60
- /**
61
- * #property
62
- */
63
- lineWidth: types.maybe(types.number),
64
-
65
- /**
66
- * #property
67
- */
68
- jitter: types.maybe(types.number),
69
-
70
- /**
71
- * #property
72
- */
73
- colorBy: types.maybe(
74
- types.model({
75
- type: types.string,
76
- tag: types.maybe(types.string),
77
- extra: types.frozen(),
78
- }),
79
- ),
80
-
81
- /**
82
- * #property
83
- */
84
- drawInter: true,
85
-
86
- /**
87
- * #property
88
- */
89
- drawLongRange: true,
90
- }),
91
- )
92
- .volatile(() => ({
93
- loading: false,
94
- chainData: undefined as ChainData | undefined,
95
- lastDrawnOffsetPx: undefined as number | undefined,
96
- lastDrawnBpPerPx: 0,
97
- ref: null as HTMLCanvasElement | null,
98
- }))
99
- .actions(self => ({
100
- /**
101
- * #action
102
- */
103
- setLastDrawnOffsetPx(n: number) {
104
- self.lastDrawnOffsetPx = n
105
- },
106
- /**
107
- * #action
108
- */
109
- setLastDrawnBpPerPx(n: number) {
110
- self.lastDrawnBpPerPx = n
111
- },
112
- /**
113
- * #action
114
- */
115
- setLoading(f: boolean) {
116
- self.loading = f
117
- },
118
-
119
- /**
120
- * #action
121
- */
122
- reload() {
123
- self.error = undefined
124
- },
125
- /**
126
- * #action
127
- * internal, a reference to a HTMLCanvas because we use a autorun to draw
128
- * the canvas
129
- */
130
- setRef(ref: HTMLCanvasElement | null) {
131
- self.ref = ref
132
- },
133
-
134
- /**
135
- * #action
136
- */
137
- setColorScheme(s: { type: string }) {
138
- self.colorBy = cast(s)
139
- },
140
-
141
- /**
142
- * #action
143
- */
144
- setChainData(args: ChainData) {
145
- self.chainData = args
146
- },
147
-
148
- /**
149
- * #action
150
- */
151
- setDrawInter(f: boolean) {
152
- self.drawInter = f
153
- },
154
-
155
- /**
156
- * #action
157
- */
158
- setDrawLongRange(f: boolean) {
159
- self.drawLongRange = f
160
- },
161
-
162
- /**
163
- * #action
164
- */
165
- setFilterBy(filter: Filter) {
166
- self.filterBy = cast(filter)
167
- },
168
-
169
- /**
170
- * #action
171
- * thin, bold, extrabold, etc
172
- */
173
- setLineWidth(n: number) {
174
- self.lineWidth = n
175
- },
176
-
177
- /**
178
- * #action
179
- * jitter val, helpful to jitter the x direction so you see better
180
- * evidence when e.g. 100 long reads map to same x position
181
- */
182
- setJitter(n: number) {
183
- self.jitter = n
184
- },
185
- }))
186
-
187
- .views(self => ({
188
- /**
189
- * #getter
190
- */
191
- get drawn() {
192
- return self.lastDrawnOffsetPx !== undefined
193
- },
194
- /**
195
- * #getter
196
- */
197
- get lineWidthSetting() {
198
- return self.lineWidth ?? getConf(self, 'lineWidth')
199
- },
200
-
201
- /**
202
- * #getter
203
- */
204
- get jitterVal(): number {
205
- return self.jitter ?? getConf(self, 'jitter')
206
- },
207
- }))
208
- .views(self => {
209
- const {
210
- trackMenuItems: superTrackMenuItems,
211
- renderProps: superRenderProps,
212
- } = self
213
- return {
214
- /**
215
- * #method
216
- * only used to tell system it's ready for export
217
- */
218
- renderProps() {
219
- return {
220
- ...superRenderProps(),
221
- notReady: !self.chainData,
222
- }
223
- },
224
-
225
- /**
226
- * #method
227
- */
228
- trackMenuItems() {
229
- return [
230
- ...superTrackMenuItems(),
231
- {
232
- label: 'Filter by',
233
- icon: FilterListIcon,
234
- onClick: () => {
235
- getSession(self).queueDialog(handleClose => [
236
- FilterByTagDlg,
237
- { model: self, handleClose },
238
- ])
239
- },
240
- },
241
- {
242
- label: 'Line width',
243
- subMenu: [
244
- {
245
- label: 'Thin',
246
- onClick: () => self.setLineWidth(1),
247
- },
248
- {
249
- label: 'Bold',
250
- onClick: () => self.setLineWidth(2),
251
- },
252
- {
253
- label: 'Extra bold',
254
- onClick: () => self.setLineWidth(5),
255
- },
256
- ],
257
- },
258
- {
259
- label: 'Jitter x-positions',
260
- subMenu: [
261
- {
262
- type: 'checkbox',
263
- checked: self.jitterVal === 0,
264
- label: 'None',
265
- onClick: () => self.setJitter(0),
266
- },
267
- {
268
- type: 'checkbox',
269
- checked: self.jitterVal === 2,
270
- label: 'Small',
271
- onClick: () => self.setJitter(2),
272
- },
273
- {
274
- type: 'checkbox',
275
- checked: self.jitterVal === 10,
276
- label: 'Large',
277
- onClick: () => self.setJitter(10),
278
- },
279
- ],
280
- },
281
- {
282
- label: 'Draw inter-region vertical lines',
283
- type: 'checkbox',
284
- checked: self.drawInter,
285
- onClick: () => self.setDrawInter(!self.drawInter),
286
- },
287
- {
288
- label: 'Draw long range connections',
289
- type: 'checkbox',
290
- checked: self.drawLongRange,
291
- onClick: () => self.setDrawLongRange(!self.drawLongRange),
292
- },
293
- {
294
- label: 'Color scheme',
295
- icon: PaletteIcon,
296
- subMenu: [
297
- {
298
- label: 'Insert size ± 3σ and orientation',
299
- onClick: () =>
300
- self.setColorScheme({ type: 'insertSizeAndOrientation' }),
301
- },
302
- {
303
- label: 'Insert size ± 3σ',
304
- onClick: () => self.setColorScheme({ type: 'insertSize' }),
305
- },
306
- {
307
- label: 'Orientation',
308
- onClick: () => self.setColorScheme({ type: 'orientation' }),
309
- },
310
- {
311
- label: 'Insert size gradient',
312
- onClick: () => self.setColorScheme({ type: 'gradient' }),
313
- },
314
- ],
315
- },
316
- ]
317
- },
318
- }
319
- })
320
- .views(self => ({
321
- /**
322
- * #method
323
- */
324
- async renderSvg(opts: {
325
- rasterizeLayers?: boolean
326
- }): Promise<React.ReactNode> {
327
- const { renderSvg } = await import('../shared/renderSvg')
328
- const { drawFeats } = await import('./drawFeats')
329
- return renderSvg(self as LinearReadArcsDisplayModel, opts, drawFeats)
330
- },
331
- }))
332
- .actions(self => ({
333
- afterAttach() {
334
- // eslint-disable-next-line @typescript-eslint/no-floating-promises
335
- ;(async () => {
336
- try {
337
- const { doAfterAttach } = await import('../shared/afterAttach')
338
- const { drawFeats } = await import('./drawFeats')
339
- doAfterAttach(self, drawFeats)
340
- } catch (e) {
341
- console.error(e)
342
- self.setError(e)
343
- }
344
- })()
345
- },
346
- }))
347
- }
348
-
349
- export type LinearReadArcsDisplayStateModel = ReturnType<
350
- typeof stateModelFactory
351
- >
352
- export type LinearReadArcsDisplayModel =
353
- Instance<LinearReadArcsDisplayStateModel>
354
-
355
- export default stateModelFactory