@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
@@ -0,0 +1,499 @@
1
+ import { lazy } from 'react';
2
+ import { autorun, observable } from 'mobx';
3
+ import { cast, types, addDisposer, getSnapshot } from 'mobx-state-tree';
4
+ import copy from 'copy-to-clipboard';
5
+ import { ConfigurationReference, readConfObject, getConf, } from '@jbrowse/core/configuration';
6
+ import { getRpcSessionId } from '@jbrowse/core/util/tracks';
7
+ import { getEnv, getSession, isSessionModelWithWidgets, getContainingView, SimpleFeature, } from '@jbrowse/core/util';
8
+ import { BaseLinearDisplay, } from '@jbrowse/plugin-linear-genome-view';
9
+ // icons
10
+ import { ContentCopy as ContentCopyIcon } from '@jbrowse/core/ui/Icons';
11
+ import MenuOpenIcon from '@mui/icons-material/MenuOpen';
12
+ import FilterListIcon from '@mui/icons-material/ClearAll';
13
+ // locals
14
+ import LinearPileupDisplayBlurb from './components/LinearPileupDisplayBlurb';
15
+ import { getUniqueTagValues, FilterModel } from '../shared';
16
+ import { createAutorun } from '../util';
17
+ import { ColorByModel } from '../shared/color';
18
+ // async
19
+ const FilterByTagDlg = lazy(() => import('../shared/FilterByTag'));
20
+ const ColorByTagDlg = lazy(() => import('./components/ColorByTag'));
21
+ const SetFeatureHeightDlg = lazy(() => import('./components/SetFeatureHeight'));
22
+ const SetMaxHeightDlg = lazy(() => import('./components/SetMaxHeight'));
23
+ // using a map because it preserves order
24
+ const rendererTypes = new Map([
25
+ ['pileup', 'PileupRenderer'],
26
+ ['svg', 'SvgFeatureRenderer'],
27
+ ]);
28
+ /**
29
+ * #stateModel SharedLinearPileupDisplayMixin
30
+ * #category display
31
+ * extends `BaseLinearDisplay`
32
+ */
33
+ export function SharedLinearPileupDisplayMixin(configSchema) {
34
+ return types
35
+ .compose(BaseLinearDisplay, types.model({
36
+ /**
37
+ * #property
38
+ */
39
+ configuration: ConfigurationReference(configSchema),
40
+ /**
41
+ * #property
42
+ */
43
+ featureHeight: types.maybe(types.number),
44
+ /**
45
+ * #property
46
+ */
47
+ noSpacing: types.maybe(types.boolean),
48
+ /**
49
+ * #property
50
+ */
51
+ fadeLikelihood: types.maybe(types.boolean),
52
+ /**
53
+ * #property
54
+ */
55
+ trackMaxHeight: types.maybe(types.number),
56
+ /**
57
+ * #property
58
+ */
59
+ colorBy: ColorByModel,
60
+ /**
61
+ * #property
62
+ */
63
+ filterBy: types.optional(FilterModel, {}),
64
+ }))
65
+ .volatile(() => ({
66
+ colorTagMap: observable.map({}),
67
+ featureUnderMouseVolatile: undefined,
68
+ tagsReady: false,
69
+ }))
70
+ .views(self => ({
71
+ get autorunReady() {
72
+ const view = getContainingView(self);
73
+ return (view.initialized &&
74
+ self.featureDensityStatsReady &&
75
+ !self.regionTooLarge);
76
+ },
77
+ }))
78
+ .actions(self => ({
79
+ /**
80
+ * #action
81
+ */
82
+ setTagsReady(flag) {
83
+ self.tagsReady = flag;
84
+ },
85
+ /**
86
+ * #action
87
+ */
88
+ setMaxHeight(n) {
89
+ self.trackMaxHeight = n;
90
+ },
91
+ /**
92
+ * #action
93
+ */
94
+ setFeatureHeight(n) {
95
+ self.featureHeight = n;
96
+ },
97
+ /**
98
+ * #action
99
+ */
100
+ setNoSpacing(flag) {
101
+ self.noSpacing = flag;
102
+ },
103
+ /**
104
+ * #action
105
+ */
106
+ setColorScheme(colorScheme) {
107
+ self.colorTagMap = observable.map({}); // clear existing mapping
108
+ self.colorBy = cast(colorScheme);
109
+ if (colorScheme.tag) {
110
+ self.tagsReady = false;
111
+ }
112
+ },
113
+ /**
114
+ * #action
115
+ */
116
+ updateColorTagMap(uniqueTag) {
117
+ // pale color scheme
118
+ // https://cran.r-project.org/web/packages/khroma/vignettes/tol.html
119
+ // e.g. "tol_light"
120
+ const colorPalette = [
121
+ '#BBCCEE',
122
+ 'pink',
123
+ '#CCDDAA',
124
+ '#EEEEBB',
125
+ '#FFCCCC',
126
+ 'lightblue',
127
+ 'lightgreen',
128
+ 'tan',
129
+ '#CCEEFF',
130
+ 'lightsalmon',
131
+ ];
132
+ uniqueTag.forEach(value => {
133
+ if (!self.colorTagMap.has(value)) {
134
+ const totalKeys = [...self.colorTagMap.keys()].length;
135
+ self.colorTagMap.set(value, colorPalette[totalKeys]);
136
+ }
137
+ });
138
+ },
139
+ /**
140
+ * #action
141
+ */
142
+ setFeatureUnderMouse(feat) {
143
+ self.featureUnderMouseVolatile = feat;
144
+ },
145
+ /**
146
+ * #action
147
+ */
148
+ selectFeature(feature) {
149
+ const session = getSession(self);
150
+ if (isSessionModelWithWidgets(session)) {
151
+ const featureWidget = session.addWidget('AlignmentsFeatureWidget', 'alignmentFeature', { featureData: feature.toJSON(), view: getContainingView(self) });
152
+ session.showWidget(featureWidget);
153
+ }
154
+ session.setSelection(feature);
155
+ },
156
+ /**
157
+ * #action
158
+ * uses copy-to-clipboard and generates notification
159
+ */
160
+ copyFeatureToClipboard(feature) {
161
+ const { uniqueId, ...rest } = feature.toJSON();
162
+ const session = getSession(self);
163
+ copy(JSON.stringify(rest, null, 4));
164
+ session.notify('Copied to clipboard', 'success');
165
+ },
166
+ /**
167
+ * #action
168
+ */
169
+ setConfig(conf) {
170
+ self.configuration = conf;
171
+ },
172
+ /**
173
+ * #action
174
+ */
175
+ setFilterBy(filter) {
176
+ self.filterBy = cast(filter);
177
+ },
178
+ }))
179
+ .views(self => ({
180
+ /**
181
+ * #getter
182
+ */
183
+ get rendererConfig() {
184
+ const { featureHeight, noSpacing, trackMaxHeight, rendererTypeName } = self;
185
+ const configBlob = getConf(self, ['renderers', rendererTypeName]) || {};
186
+ return self.rendererType.configSchema.create({
187
+ ...configBlob,
188
+ ...(featureHeight !== undefined ? { height: featureHeight } : {}),
189
+ ...(noSpacing !== undefined ? { noSpacing } : {}),
190
+ ...(trackMaxHeight !== undefined
191
+ ? { maxHeight: trackMaxHeight }
192
+ : {}),
193
+ }, getEnv(self));
194
+ },
195
+ }))
196
+ .views(self => ({
197
+ /**
198
+ * #getter
199
+ */
200
+ get maxHeight() {
201
+ return readConfObject(self.rendererConfig, 'maxHeight');
202
+ },
203
+ /**
204
+ * #getter
205
+ */
206
+ get featureHeightSetting() {
207
+ return readConfObject(self.rendererConfig, 'height');
208
+ },
209
+ /**
210
+ * #getter
211
+ */
212
+ get featureUnderMouse() {
213
+ return self.featureUnderMouseVolatile;
214
+ },
215
+ /**
216
+ * #getter
217
+ */
218
+ renderReady() {
219
+ return self.tagsReady;
220
+ },
221
+ }))
222
+ .views(self => {
223
+ const { trackMenuItems: superTrackMenuItems, renderProps: superRenderProps, } = self;
224
+ return {
225
+ /**
226
+ * #getter
227
+ */
228
+ get rendererTypeName() {
229
+ const viewName = getConf(self, 'defaultRendering');
230
+ const rendererType = rendererTypes.get(viewName);
231
+ if (!rendererType) {
232
+ throw new Error(`unknown alignments view name ${viewName}`);
233
+ }
234
+ return rendererType;
235
+ },
236
+ /**
237
+ * #method
238
+ */
239
+ contextMenuItems() {
240
+ const feat = self.contextMenuFeature;
241
+ return feat
242
+ ? [
243
+ {
244
+ label: 'Open feature details',
245
+ icon: MenuOpenIcon,
246
+ onClick: () => {
247
+ self.clearFeatureSelection();
248
+ if (feat) {
249
+ self.selectFeature(feat);
250
+ }
251
+ },
252
+ },
253
+ {
254
+ label: 'Copy info to clipboard',
255
+ icon: ContentCopyIcon,
256
+ onClick: () => {
257
+ if (feat) {
258
+ self.copyFeatureToClipboard(feat);
259
+ }
260
+ },
261
+ },
262
+ ]
263
+ : [];
264
+ },
265
+ /**
266
+ * #getter
267
+ */
268
+ get DisplayBlurb() {
269
+ return LinearPileupDisplayBlurb;
270
+ },
271
+ /**
272
+ * #method
273
+ */
274
+ renderPropsPre() {
275
+ const { colorTagMap, colorBy, filterBy, rpcDriverName } = self;
276
+ const superProps = superRenderProps();
277
+ return {
278
+ ...superProps,
279
+ notReady: superProps.notReady || !self.renderReady(),
280
+ rpcDriverName,
281
+ displayModel: self,
282
+ colorBy: colorBy ? getSnapshot(colorBy) : undefined,
283
+ filterBy: JSON.parse(JSON.stringify(filterBy)),
284
+ colorTagMap: Object.fromEntries(colorTagMap.toJSON()),
285
+ config: self.rendererConfig,
286
+ async onFeatureClick(_, featureId) {
287
+ const session = getSession(self);
288
+ const { rpcManager } = session;
289
+ try {
290
+ const f = featureId || self.featureIdUnderMouse;
291
+ if (!f) {
292
+ self.clearFeatureSelection();
293
+ }
294
+ else {
295
+ const sessionId = getRpcSessionId(self);
296
+ const { feature } = (await rpcManager.call(sessionId, 'CoreGetFeatureDetails', {
297
+ featureId: f,
298
+ sessionId,
299
+ layoutId: getContainingView(self).id,
300
+ rendererType: 'PileupRenderer',
301
+ }));
302
+ if (feature) {
303
+ self.selectFeature(new SimpleFeature(feature));
304
+ }
305
+ }
306
+ }
307
+ catch (e) {
308
+ console.error(e);
309
+ session.notify(`${e}`);
310
+ }
311
+ },
312
+ onClick() {
313
+ self.clearFeatureSelection();
314
+ },
315
+ // similar to click but opens a menu with further options
316
+ async onFeatureContextMenu(_, featureId) {
317
+ const session = getSession(self);
318
+ const { rpcManager } = session;
319
+ try {
320
+ const f = featureId || self.featureIdUnderMouse;
321
+ if (!f) {
322
+ self.clearFeatureSelection();
323
+ }
324
+ else {
325
+ const sessionId = getRpcSessionId(self);
326
+ const { feature } = (await rpcManager.call(sessionId, 'CoreGetFeatureDetails', {
327
+ featureId: f,
328
+ sessionId,
329
+ layoutId: getContainingView(self).id,
330
+ rendererType: 'PileupRenderer',
331
+ }));
332
+ if (feature) {
333
+ self.setContextMenuFeature(new SimpleFeature(feature));
334
+ }
335
+ }
336
+ }
337
+ catch (e) {
338
+ console.error(e);
339
+ session.notify(`${e}`);
340
+ }
341
+ },
342
+ };
343
+ },
344
+ /**
345
+ * #method
346
+ */
347
+ colorSchemeSubMenuItems() {
348
+ return [
349
+ {
350
+ label: 'Normal',
351
+ onClick: () => self.setColorScheme({ type: 'normal' }),
352
+ },
353
+ {
354
+ label: 'Mapping quality',
355
+ onClick: () => self.setColorScheme({ type: 'mappingQuality' }),
356
+ },
357
+ {
358
+ label: 'Strand',
359
+ onClick: () => self.setColorScheme({ type: 'strand' }),
360
+ },
361
+ {
362
+ label: 'Per-base quality',
363
+ onClick: () => self.setColorScheme({ type: 'perBaseQuality' }),
364
+ },
365
+ {
366
+ label: 'Per-base lettering',
367
+ onClick: () => self.setColorScheme({ type: 'perBaseLettering' }),
368
+ },
369
+ {
370
+ label: 'First-of-pair strand',
371
+ onClick: () => self.setColorScheme({ type: 'stranded' }),
372
+ },
373
+ {
374
+ label: 'Color by tag...',
375
+ onClick: () => {
376
+ getSession(self).queueDialog(doneCallback => [
377
+ ColorByTagDlg,
378
+ { model: self, handleClose: doneCallback },
379
+ ]);
380
+ },
381
+ },
382
+ ];
383
+ },
384
+ /**
385
+ * #method
386
+ */
387
+ trackMenuItems() {
388
+ return [
389
+ ...superTrackMenuItems(),
390
+ {
391
+ label: 'Filter by',
392
+ icon: FilterListIcon,
393
+ onClick: () => {
394
+ getSession(self).queueDialog(doneCallback => [
395
+ FilterByTagDlg,
396
+ { model: self, handleClose: doneCallback },
397
+ ]);
398
+ },
399
+ },
400
+ {
401
+ label: 'Set feature height',
402
+ subMenu: [
403
+ {
404
+ label: 'Normal',
405
+ onClick: () => {
406
+ self.setFeatureHeight(7);
407
+ self.setNoSpacing(false);
408
+ },
409
+ },
410
+ {
411
+ label: 'Compact',
412
+ onClick: () => {
413
+ self.setFeatureHeight(2);
414
+ self.setNoSpacing(true);
415
+ },
416
+ },
417
+ {
418
+ label: 'Manually set height',
419
+ onClick: () => {
420
+ getSession(self).queueDialog(doneCallback => [
421
+ SetFeatureHeightDlg,
422
+ { model: self, handleClose: doneCallback },
423
+ ]);
424
+ },
425
+ },
426
+ ],
427
+ },
428
+ {
429
+ label: 'Set max height...',
430
+ onClick: () => {
431
+ getSession(self).queueDialog(doneCallback => [
432
+ SetMaxHeightDlg,
433
+ { model: self, handleClose: doneCallback },
434
+ ]);
435
+ },
436
+ },
437
+ ];
438
+ },
439
+ };
440
+ })
441
+ .views(self => ({
442
+ renderProps() {
443
+ return self.renderPropsPre();
444
+ },
445
+ }))
446
+ .actions(self => ({
447
+ afterAttach() {
448
+ createAutorun(self, async () => {
449
+ const view = getContainingView(self);
450
+ if (!self.autorunReady) {
451
+ return;
452
+ }
453
+ const { colorBy } = self;
454
+ const { staticBlocks } = view;
455
+ if (colorBy === null || colorBy === void 0 ? void 0 : colorBy.tag) {
456
+ const vals = await getUniqueTagValues(self, colorBy, staticBlocks);
457
+ self.updateColorTagMap(vals);
458
+ }
459
+ self.setTagsReady(true);
460
+ }, { delay: 1000 });
461
+ // autorun synchronizes featureUnderMouse with featureIdUnderMouse
462
+ // asynchronously. this is needed due to how we do not serialize all
463
+ // features from the BAM/CRAM over the rpc
464
+ addDisposer(self, autorun(async () => {
465
+ var _a;
466
+ const session = getSession(self);
467
+ try {
468
+ const featureId = self.featureIdUnderMouse;
469
+ if (((_a = self.featureUnderMouse) === null || _a === void 0 ? void 0 : _a.id()) !== featureId) {
470
+ if (!featureId) {
471
+ self.setFeatureUnderMouse(undefined);
472
+ }
473
+ else {
474
+ const sessionId = getRpcSessionId(self);
475
+ const view = getContainingView(self);
476
+ const { feature } = (await session.rpcManager.call(sessionId, 'CoreGetFeatureDetails', {
477
+ featureId,
478
+ sessionId,
479
+ layoutId: view.id,
480
+ rendererType: 'PileupRenderer',
481
+ }));
482
+ // check featureIdUnderMouse is still the same as the
483
+ // feature.id that was returned e.g. that the user hasn't
484
+ // moused over to a new position during the async operation
485
+ // above
486
+ if (self.featureIdUnderMouse === feature.uniqueId) {
487
+ self.setFeatureUnderMouse(new SimpleFeature(feature));
488
+ }
489
+ }
490
+ }
491
+ }
492
+ catch (e) {
493
+ console.error(e);
494
+ session.notify(`${e}`, 'error');
495
+ }
496
+ }));
497
+ },
498
+ }));
499
+ }
@@ -33,4 +33,3 @@ function ColorByTagDlg(props) {
33
33
  React.createElement(Button, { variant: "contained", color: "secondary", onClick: () => handleClose() }, "Cancel")))));
34
34
  }
35
35
  export default observer(ColorByTagDlg);
36
- //# sourceMappingURL=ColorByModifications.js.map
@@ -21,4 +21,3 @@ function ColorByTagDlg(props) {
21
21
  React.createElement(Button, { variant: "contained", color: "secondary", onClick: handleClose }, "Cancel")))));
22
22
  }
23
23
  export default observer(ColorByTagDlg);
24
- //# sourceMappingURL=ColorByTag.js.map
@@ -10,4 +10,3 @@ export default observer(function LinearPileupDisplayBlurb(props) {
10
10
  ? `Sorted by ${(_a = sortedBy.tag) !== null && _a !== void 0 ? _a : sortedBy.type} at ${sortedBy.refName}:${sortedBy.pos}`
11
11
  : null))) : null;
12
12
  });
13
- //# sourceMappingURL=LinearPileupDisplayBlurb.js.map
@@ -20,4 +20,3 @@ export default function ModificationTable({ modifications, }) {
20
20
  background: value,
21
21
  } })))))));
22
22
  }
23
- //# sourceMappingURL=ModificationsTable.js.map
@@ -22,4 +22,3 @@ function SetFeatureHeightDlg(props) {
22
22
  React.createElement(Button, { variant: "contained", color: "secondary", onClick: () => handleClose() }, "Cancel")))));
23
23
  }
24
24
  export default observer(SetFeatureHeightDlg);
25
- //# sourceMappingURL=SetFeatureHeight.js.map
@@ -25,4 +25,3 @@ function SetMaxHeightDlg(props) {
25
25
  React.createElement(Button, { variant: "contained", color: "secondary", onClick: () => handleClose() }, "Cancel")))));
26
26
  }
27
27
  export default observer(SetMaxHeightDlg);
28
- //# sourceMappingURL=SetMaxHeight.js.map
@@ -22,4 +22,3 @@ function SortByTagDlg(props) {
22
22
  React.createElement(Button, { variant: "contained", color: "secondary", onClick: () => handleClose() }, "Cancel")))));
23
23
  }
24
24
  export default observer(SortByTagDlg);
25
- //# sourceMappingURL=SortByTag.js.map
@@ -55,4 +55,3 @@ function configSchemaF(pluginManager) {
55
55
  });
56
56
  }
57
57
  export default configSchemaF;
58
- //# sourceMappingURL=configSchema.js.map
@@ -2,3 +2,4 @@ import PluginManager from '@jbrowse/core/PluginManager';
2
2
  export default function register(pluginManager: PluginManager): void;
3
3
  export { default as linearPileupDisplayStateModelFactory } from './model';
4
4
  export { default as linearPileupDisplayConfigSchemaFactory } from './configSchema';
5
+ export { SharedLinearPileupDisplayMixin } from './SharedLinearPileupDisplayMixin';
@@ -19,4 +19,4 @@ export default function register(pluginManager) {
19
19
  }
20
20
  export { default as linearPileupDisplayStateModelFactory } from './model';
21
21
  export { default as linearPileupDisplayConfigSchemaFactory } from './configSchema';
22
- //# sourceMappingURL=index.js.map
22
+ export { SharedLinearPileupDisplayMixin } from './SharedLinearPileupDisplayMixin';