@jbrowse/plugin-alignments 2.2.1 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (349) hide show
  1. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +1 -1
  2. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +1 -1
  3. package/dist/AlignmentsTrack/index.js +1 -0
  4. package/dist/AlignmentsTrack/index.js.map +1 -1
  5. package/dist/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -4
  6. package/dist/BamAdapter/BamSlightlyLazyFeature.js +11 -18
  7. package/dist/BamAdapter/BamSlightlyLazyFeature.js.map +1 -1
  8. package/dist/BamAdapter/index.js +1 -0
  9. package/dist/BamAdapter/index.js.map +1 -1
  10. package/dist/CramAdapter/CramSlightlyLazyFeature.d.ts +5 -7
  11. package/dist/CramAdapter/CramSlightlyLazyFeature.js +6 -8
  12. package/dist/CramAdapter/CramSlightlyLazyFeature.js.map +1 -1
  13. package/dist/CramAdapter/CramTestAdapters.js +2 -1
  14. package/dist/CramAdapter/CramTestAdapters.js.map +1 -1
  15. package/dist/CramAdapter/index.js +1 -0
  16. package/dist/CramAdapter/index.js.map +1 -1
  17. package/dist/GuessAlignmentsTypes/index.d.ts +3 -0
  18. package/dist/GuessAlignmentsTypes/index.js +56 -0
  19. package/dist/GuessAlignmentsTypes/index.js.map +1 -0
  20. package/dist/HtsgetBamAdapter/index.js +11 -11
  21. package/dist/HtsgetBamAdapter/index.js.map +1 -1
  22. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +10 -13
  23. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +1 -1
  24. package/dist/LinearAlignmentsDisplay/index.js +1 -0
  25. package/dist/LinearAlignmentsDisplay/index.js.map +1 -1
  26. package/dist/LinearAlignmentsDisplay/models/configSchema.d.ts +6 -3
  27. package/dist/LinearAlignmentsDisplay/models/configSchema.js +2 -3
  28. package/dist/LinearAlignmentsDisplay/models/configSchema.js.map +1 -1
  29. package/dist/LinearAlignmentsDisplay/models/model.d.ts +22 -36
  30. package/dist/LinearAlignmentsDisplay/models/model.js +166 -151
  31. package/dist/LinearAlignmentsDisplay/models/model.js.map +1 -1
  32. package/dist/LinearPileupDisplay/components/ColorByModifications.d.ts +3 -1
  33. package/dist/LinearPileupDisplay/components/ColorByModifications.js +7 -22
  34. package/dist/LinearPileupDisplay/components/ColorByModifications.js.map +1 -1
  35. package/dist/LinearPileupDisplay/components/ColorByTag.js +2 -22
  36. package/dist/LinearPileupDisplay/components/ColorByTag.js.map +1 -1
  37. package/dist/LinearPileupDisplay/components/SetFeatureHeight.d.ts +2 -2
  38. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +3 -22
  39. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js.map +1 -1
  40. package/dist/LinearPileupDisplay/components/SetMaxHeight.js +2 -18
  41. package/dist/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -1
  42. package/dist/LinearPileupDisplay/components/SortByTag.js +2 -23
  43. package/dist/LinearPileupDisplay/components/SortByTag.js.map +1 -1
  44. package/dist/LinearPileupDisplay/configSchema.d.ts +0 -3
  45. package/dist/LinearPileupDisplay/configSchema.js.map +1 -1
  46. package/dist/LinearPileupDisplay/index.js +2 -0
  47. package/dist/LinearPileupDisplay/index.js.map +1 -1
  48. package/dist/LinearPileupDisplay/model.d.ts +19 -16
  49. package/dist/LinearPileupDisplay/model.js +28 -13
  50. package/dist/LinearPileupDisplay/model.js.map +1 -1
  51. package/dist/LinearReadArcsDisplay/components/ReactComponent.d.ts +6 -0
  52. package/dist/LinearReadArcsDisplay/components/ReactComponent.js +49 -0
  53. package/dist/LinearReadArcsDisplay/components/ReactComponent.js.map +1 -0
  54. package/dist/LinearReadArcsDisplay/configSchema.d.ts +6 -0
  55. package/dist/LinearReadArcsDisplay/configSchema.js +52 -0
  56. package/dist/LinearReadArcsDisplay/configSchema.js.map +1 -0
  57. package/dist/LinearReadArcsDisplay/drawFeats.d.ts +14 -0
  58. package/dist/LinearReadArcsDisplay/drawFeats.js +162 -0
  59. package/dist/LinearReadArcsDisplay/drawFeats.js.map +1 -0
  60. package/dist/LinearReadArcsDisplay/index.d.ts +2 -0
  61. package/dist/LinearReadArcsDisplay/index.js +27 -0
  62. package/dist/LinearReadArcsDisplay/index.js.map +1 -0
  63. package/dist/LinearReadArcsDisplay/model.d.ts +342 -0
  64. package/dist/LinearReadArcsDisplay/model.js +327 -0
  65. package/dist/LinearReadArcsDisplay/model.js.map +1 -0
  66. package/dist/LinearReadCloudDisplay/components/ReactComponent.d.ts +6 -0
  67. package/dist/LinearReadCloudDisplay/components/ReactComponent.js +49 -0
  68. package/dist/LinearReadCloudDisplay/components/ReactComponent.js.map +1 -0
  69. package/dist/LinearReadCloudDisplay/configSchema.d.ts +6 -0
  70. package/dist/LinearReadCloudDisplay/configSchema.js +51 -0
  71. package/dist/LinearReadCloudDisplay/configSchema.js.map +1 -0
  72. package/dist/LinearReadCloudDisplay/drawFeats.d.ts +10 -0
  73. package/dist/LinearReadCloudDisplay/drawFeats.js +159 -0
  74. package/dist/LinearReadCloudDisplay/drawFeats.js.map +1 -0
  75. package/dist/LinearReadCloudDisplay/index.d.ts +2 -0
  76. package/dist/LinearReadCloudDisplay/index.js +27 -0
  77. package/dist/LinearReadCloudDisplay/index.js.map +1 -0
  78. package/dist/LinearReadCloudDisplay/model.d.ts +320 -0
  79. package/dist/LinearReadCloudDisplay/model.js +252 -0
  80. package/dist/LinearReadCloudDisplay/model.js.map +1 -0
  81. package/dist/LinearSNPCoverageDisplay/index.js +1 -0
  82. package/dist/LinearSNPCoverageDisplay/index.js.map +1 -1
  83. package/dist/LinearSNPCoverageDisplay/models/model.d.ts +22 -19
  84. package/dist/LinearSNPCoverageDisplay/models/model.js +9 -12
  85. package/dist/LinearSNPCoverageDisplay/models/model.js.map +1 -1
  86. package/dist/{BamAdapter/MismatchParser.d.ts → MismatchParser/index.d.ts} +23 -0
  87. package/dist/{BamAdapter/MismatchParser.js → MismatchParser/index.js} +116 -3
  88. package/dist/MismatchParser/index.js.map +1 -0
  89. package/dist/PileupRPC/base.d.ts +8 -0
  90. package/dist/PileupRPC/base.js +22 -0
  91. package/dist/PileupRPC/base.js.map +1 -0
  92. package/dist/PileupRPC/index.d.ts +3 -0
  93. package/dist/PileupRPC/index.js +9 -0
  94. package/dist/PileupRPC/index.js.map +1 -0
  95. package/dist/PileupRPC/methods/GetGlobalValueForTag.d.ts +14 -0
  96. package/dist/PileupRPC/methods/GetGlobalValueForTag.js +29 -0
  97. package/dist/PileupRPC/methods/GetGlobalValueForTag.js.map +1 -0
  98. package/dist/PileupRPC/methods/GetReducedFeatures.d.ts +25 -0
  99. package/dist/PileupRPC/methods/GetReducedFeatures.js +61 -0
  100. package/dist/PileupRPC/methods/GetReducedFeatures.js.map +1 -0
  101. package/dist/PileupRPC/methods/GetVisibleModifications.d.ts +14 -0
  102. package/dist/PileupRPC/methods/GetVisibleModifications.js +32 -0
  103. package/dist/PileupRPC/methods/GetVisibleModifications.js.map +1 -0
  104. package/dist/PileupRPC/rpcMethods.d.ts +4 -34
  105. package/dist/PileupRPC/rpcMethods.js +7 -77
  106. package/dist/PileupRPC/rpcMethods.js.map +1 -1
  107. package/dist/PileupRPC/util.d.ts +8 -0
  108. package/dist/PileupRPC/util.js +20 -0
  109. package/dist/PileupRPC/util.js.map +1 -0
  110. package/dist/PileupRenderer/PileupRenderer.d.ts +1 -1
  111. package/dist/PileupRenderer/PileupRenderer.js +5 -5
  112. package/dist/PileupRenderer/PileupRenderer.js.map +1 -1
  113. package/dist/PileupRenderer/configSchema.js +1 -1
  114. package/dist/PileupRenderer/configSchema.js.map +1 -1
  115. package/dist/PileupRenderer/index.js +1 -0
  116. package/dist/PileupRenderer/index.js.map +1 -1
  117. package/dist/PileupRenderer/sortUtil.d.ts +1 -1
  118. package/dist/PileupRenderer/sortUtil.js +2 -2
  119. package/dist/PileupRenderer/sortUtil.js.map +1 -1
  120. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +0 -51
  121. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +3 -182
  122. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -1
  123. package/dist/SNPCoverageAdapter/generateCoverageBins.d.ts +53 -0
  124. package/dist/SNPCoverageAdapter/generateCoverageBins.js +185 -0
  125. package/dist/SNPCoverageAdapter/generateCoverageBins.js.map +1 -0
  126. package/dist/SNPCoverageAdapter/index.js +1 -3
  127. package/dist/SNPCoverageAdapter/index.js.map +1 -1
  128. package/dist/index.d.ts +2 -2
  129. package/dist/index.js +12 -58
  130. package/dist/index.js.map +1 -1
  131. package/dist/{LinearPileupDisplay/components → shared}/FilterByTag.d.ts +0 -0
  132. package/dist/{LinearPileupDisplay/components → shared}/FilterByTag.js +5 -24
  133. package/dist/shared/FilterByTag.js.map +1 -0
  134. package/dist/shared/color.d.ts +17 -0
  135. package/dist/shared/color.js +43 -0
  136. package/dist/shared/color.js.map +1 -0
  137. package/dist/shared/fetchChains.d.ts +27 -0
  138. package/dist/shared/fetchChains.js +30 -0
  139. package/dist/shared/fetchChains.js.map +1 -0
  140. package/dist/shared/index.d.ts +36 -0
  141. package/dist/{shared.js → shared/index.js} +12 -2
  142. package/dist/shared/index.js.map +1 -0
  143. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +1 -1
  144. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +1 -1
  145. package/esm/AlignmentsTrack/index.js +1 -0
  146. package/esm/AlignmentsTrack/index.js.map +1 -1
  147. package/esm/BamAdapter/BamSlightlyLazyFeature.d.ts +3 -4
  148. package/esm/BamAdapter/BamSlightlyLazyFeature.js +11 -18
  149. package/esm/BamAdapter/BamSlightlyLazyFeature.js.map +1 -1
  150. package/esm/BamAdapter/index.js +1 -0
  151. package/esm/BamAdapter/index.js.map +1 -1
  152. package/esm/CramAdapter/CramSlightlyLazyFeature.d.ts +5 -7
  153. package/esm/CramAdapter/CramSlightlyLazyFeature.js +6 -8
  154. package/esm/CramAdapter/CramSlightlyLazyFeature.js.map +1 -1
  155. package/esm/CramAdapter/CramTestAdapters.js +2 -1
  156. package/esm/CramAdapter/CramTestAdapters.js.map +1 -1
  157. package/esm/CramAdapter/index.js +1 -0
  158. package/esm/CramAdapter/index.js.map +1 -1
  159. package/esm/GuessAlignmentsTypes/index.d.ts +3 -0
  160. package/esm/GuessAlignmentsTypes/index.js +54 -0
  161. package/esm/GuessAlignmentsTypes/index.js.map +1 -0
  162. package/esm/HtsgetBamAdapter/index.js +11 -11
  163. package/esm/HtsgetBamAdapter/index.js.map +1 -1
  164. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +10 -13
  165. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +1 -1
  166. package/esm/LinearAlignmentsDisplay/index.js +1 -0
  167. package/esm/LinearAlignmentsDisplay/index.js.map +1 -1
  168. package/esm/LinearAlignmentsDisplay/models/configSchema.d.ts +6 -3
  169. package/esm/LinearAlignmentsDisplay/models/configSchema.js +2 -4
  170. package/esm/LinearAlignmentsDisplay/models/configSchema.js.map +1 -1
  171. package/esm/LinearAlignmentsDisplay/models/model.d.ts +22 -36
  172. package/esm/LinearAlignmentsDisplay/models/model.js +167 -152
  173. package/esm/LinearAlignmentsDisplay/models/model.js.map +1 -1
  174. package/esm/LinearPileupDisplay/components/ColorByModifications.d.ts +3 -1
  175. package/esm/LinearPileupDisplay/components/ColorByModifications.js +8 -23
  176. package/esm/LinearPileupDisplay/components/ColorByModifications.js.map +1 -1
  177. package/esm/LinearPileupDisplay/components/ColorByTag.js +3 -20
  178. package/esm/LinearPileupDisplay/components/ColorByTag.js.map +1 -1
  179. package/esm/LinearPileupDisplay/components/SetFeatureHeight.d.ts +2 -2
  180. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js +4 -20
  181. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js.map +1 -1
  182. package/esm/LinearPileupDisplay/components/SetMaxHeight.js +3 -16
  183. package/esm/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -1
  184. package/esm/LinearPileupDisplay/components/SortByTag.js +3 -21
  185. package/esm/LinearPileupDisplay/components/SortByTag.js.map +1 -1
  186. package/esm/LinearPileupDisplay/configSchema.d.ts +0 -3
  187. package/esm/LinearPileupDisplay/configSchema.js.map +1 -1
  188. package/esm/LinearPileupDisplay/index.js +2 -0
  189. package/esm/LinearPileupDisplay/index.js.map +1 -1
  190. package/esm/LinearPileupDisplay/model.d.ts +19 -16
  191. package/esm/LinearPileupDisplay/model.js +29 -14
  192. package/esm/LinearPileupDisplay/model.js.map +1 -1
  193. package/esm/LinearReadArcsDisplay/components/ReactComponent.d.ts +6 -0
  194. package/esm/LinearReadArcsDisplay/components/ReactComponent.js +44 -0
  195. package/esm/LinearReadArcsDisplay/components/ReactComponent.js.map +1 -0
  196. package/esm/LinearReadArcsDisplay/configSchema.d.ts +6 -0
  197. package/esm/LinearReadArcsDisplay/configSchema.js +50 -0
  198. package/esm/LinearReadArcsDisplay/configSchema.js.map +1 -0
  199. package/esm/LinearReadArcsDisplay/drawFeats.d.ts +14 -0
  200. package/esm/LinearReadArcsDisplay/drawFeats.js +157 -0
  201. package/esm/LinearReadArcsDisplay/drawFeats.js.map +1 -0
  202. package/esm/LinearReadArcsDisplay/index.d.ts +2 -0
  203. package/esm/LinearReadArcsDisplay/index.js +21 -0
  204. package/esm/LinearReadArcsDisplay/index.js.map +1 -0
  205. package/esm/LinearReadArcsDisplay/model.d.ts +342 -0
  206. package/esm/LinearReadArcsDisplay/model.js +299 -0
  207. package/esm/LinearReadArcsDisplay/model.js.map +1 -0
  208. package/esm/LinearReadCloudDisplay/components/ReactComponent.d.ts +6 -0
  209. package/esm/LinearReadCloudDisplay/components/ReactComponent.js +44 -0
  210. package/esm/LinearReadCloudDisplay/components/ReactComponent.js.map +1 -0
  211. package/esm/LinearReadCloudDisplay/configSchema.d.ts +6 -0
  212. package/esm/LinearReadCloudDisplay/configSchema.js +49 -0
  213. package/esm/LinearReadCloudDisplay/configSchema.js.map +1 -0
  214. package/esm/LinearReadCloudDisplay/drawFeats.d.ts +10 -0
  215. package/esm/LinearReadCloudDisplay/drawFeats.js +156 -0
  216. package/esm/LinearReadCloudDisplay/drawFeats.js.map +1 -0
  217. package/esm/LinearReadCloudDisplay/index.d.ts +2 -0
  218. package/esm/LinearReadCloudDisplay/index.js +21 -0
  219. package/esm/LinearReadCloudDisplay/index.js.map +1 -0
  220. package/esm/LinearReadCloudDisplay/model.d.ts +320 -0
  221. package/esm/LinearReadCloudDisplay/model.js +224 -0
  222. package/esm/LinearReadCloudDisplay/model.js.map +1 -0
  223. package/esm/LinearSNPCoverageDisplay/index.js +1 -0
  224. package/esm/LinearSNPCoverageDisplay/index.js.map +1 -1
  225. package/esm/LinearSNPCoverageDisplay/models/model.d.ts +22 -19
  226. package/esm/LinearSNPCoverageDisplay/models/model.js +11 -14
  227. package/esm/LinearSNPCoverageDisplay/models/model.js.map +1 -1
  228. package/esm/{BamAdapter/MismatchParser.d.ts → MismatchParser/index.d.ts} +23 -0
  229. package/esm/{BamAdapter/MismatchParser.js → MismatchParser/index.js} +107 -2
  230. package/esm/MismatchParser/index.js.map +1 -0
  231. package/esm/PileupRPC/base.d.ts +8 -0
  232. package/esm/PileupRPC/base.js +16 -0
  233. package/esm/PileupRPC/base.js.map +1 -0
  234. package/esm/PileupRPC/index.d.ts +3 -0
  235. package/esm/PileupRPC/index.js +7 -0
  236. package/esm/PileupRPC/index.js.map +1 -0
  237. package/esm/PileupRPC/methods/GetGlobalValueForTag.d.ts +14 -0
  238. package/esm/PileupRPC/methods/GetGlobalValueForTag.js +23 -0
  239. package/esm/PileupRPC/methods/GetGlobalValueForTag.js.map +1 -0
  240. package/esm/PileupRPC/methods/GetReducedFeatures.d.ts +25 -0
  241. package/esm/PileupRPC/methods/GetReducedFeatures.js +55 -0
  242. package/esm/PileupRPC/methods/GetReducedFeatures.js.map +1 -0
  243. package/esm/PileupRPC/methods/GetVisibleModifications.d.ts +14 -0
  244. package/esm/PileupRPC/methods/GetVisibleModifications.js +26 -0
  245. package/esm/PileupRPC/methods/GetVisibleModifications.js.map +1 -0
  246. package/esm/PileupRPC/rpcMethods.d.ts +4 -34
  247. package/esm/PileupRPC/rpcMethods.js +4 -74
  248. package/esm/PileupRPC/rpcMethods.js.map +1 -1
  249. package/esm/PileupRPC/util.d.ts +8 -0
  250. package/esm/PileupRPC/util.js +15 -0
  251. package/esm/PileupRPC/util.js.map +1 -0
  252. package/esm/PileupRenderer/PileupRenderer.d.ts +1 -1
  253. package/esm/PileupRenderer/PileupRenderer.js +5 -5
  254. package/esm/PileupRenderer/PileupRenderer.js.map +1 -1
  255. package/esm/PileupRenderer/configSchema.js +1 -1
  256. package/esm/PileupRenderer/configSchema.js.map +1 -1
  257. package/esm/PileupRenderer/index.js +1 -0
  258. package/esm/PileupRenderer/index.js.map +1 -1
  259. package/esm/PileupRenderer/sortUtil.d.ts +1 -1
  260. package/esm/PileupRenderer/sortUtil.js +1 -1
  261. package/esm/PileupRenderer/sortUtil.js.map +1 -1
  262. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +0 -51
  263. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +4 -183
  264. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -1
  265. package/esm/SNPCoverageAdapter/generateCoverageBins.d.ts +53 -0
  266. package/esm/SNPCoverageAdapter/generateCoverageBins.js +182 -0
  267. package/esm/SNPCoverageAdapter/generateCoverageBins.js.map +1 -0
  268. package/esm/SNPCoverageAdapter/index.js +1 -3
  269. package/esm/SNPCoverageAdapter/index.js.map +1 -1
  270. package/esm/index.d.ts +2 -2
  271. package/esm/index.js +10 -56
  272. package/esm/index.js.map +1 -1
  273. package/esm/{LinearPileupDisplay/components → shared}/FilterByTag.d.ts +0 -0
  274. package/esm/{LinearPileupDisplay/components → shared}/FilterByTag.js +6 -22
  275. package/esm/shared/FilterByTag.js.map +1 -0
  276. package/esm/shared/color.d.ts +17 -0
  277. package/esm/shared/color.js +37 -0
  278. package/esm/shared/color.js.map +1 -0
  279. package/esm/shared/fetchChains.d.ts +27 -0
  280. package/esm/shared/fetchChains.js +26 -0
  281. package/esm/shared/fetchChains.js.map +1 -0
  282. package/esm/shared/index.d.ts +36 -0
  283. package/esm/{shared.js → shared/index.js} +11 -1
  284. package/esm/shared/index.js.map +1 -0
  285. package/package.json +5 -5
  286. package/src/AlignmentsFeatureDetail/AlignmentsFeatureDetail.tsx +1 -1
  287. package/src/AlignmentsTrack/index.ts +1 -0
  288. package/src/BamAdapter/BamSlightlyLazyFeature.ts +13 -19
  289. package/src/BamAdapter/index.ts +1 -0
  290. package/src/CramAdapter/CramSlightlyLazyFeature.ts +13 -15
  291. package/src/CramAdapter/CramTestAdapters.ts +1 -0
  292. package/src/CramAdapter/__snapshots__/CramAdapter.test.ts.snap +0 -10
  293. package/src/CramAdapter/index.ts +1 -0
  294. package/src/GuessAlignmentsTypes/index.ts +79 -0
  295. package/src/HtsgetBamAdapter/index.ts +11 -15
  296. package/src/LinearAlignmentsDisplay/components/AlignmentsDisplay.tsx +21 -29
  297. package/src/LinearAlignmentsDisplay/index.ts +1 -0
  298. package/src/LinearAlignmentsDisplay/models/configSchema.ts +2 -6
  299. package/src/LinearAlignmentsDisplay/models/model.tsx +238 -199
  300. package/src/LinearPileupDisplay/components/ColorByModifications.tsx +5 -34
  301. package/src/LinearPileupDisplay/components/ColorByTag.tsx +2 -29
  302. package/src/LinearPileupDisplay/components/SetFeatureHeight.tsx +5 -27
  303. package/src/LinearPileupDisplay/components/SetMaxHeight.tsx +2 -24
  304. package/src/LinearPileupDisplay/components/SortByTag.tsx +2 -31
  305. package/src/LinearPileupDisplay/configSchema.ts +1 -3
  306. package/src/LinearPileupDisplay/index.ts +2 -0
  307. package/src/LinearPileupDisplay/model.ts +36 -23
  308. package/src/LinearReadArcsDisplay/components/ReactComponent.tsx +86 -0
  309. package/src/LinearReadArcsDisplay/configSchema.ts +58 -0
  310. package/src/LinearReadArcsDisplay/declare.d.ts +1 -0
  311. package/src/LinearReadArcsDisplay/drawFeats.ts +199 -0
  312. package/src/LinearReadArcsDisplay/index.ts +23 -0
  313. package/src/LinearReadArcsDisplay/model.tsx +370 -0
  314. package/src/LinearReadCloudDisplay/components/ReactComponent.tsx +86 -0
  315. package/src/LinearReadCloudDisplay/configSchema.ts +57 -0
  316. package/src/LinearReadCloudDisplay/drawFeats.ts +201 -0
  317. package/src/LinearReadCloudDisplay/index.ts +23 -0
  318. package/src/LinearReadCloudDisplay/model.tsx +289 -0
  319. package/src/LinearSNPCoverageDisplay/index.ts +1 -0
  320. package/src/LinearSNPCoverageDisplay/models/model.ts +15 -21
  321. package/src/{BamAdapter/MismatchParser.test.ts → MismatchParser/index.test.ts} +1 -1
  322. package/src/{BamAdapter/MismatchParser.ts → MismatchParser/index.ts} +129 -2
  323. package/src/PileupRPC/base.ts +24 -0
  324. package/src/PileupRPC/index.ts +12 -0
  325. package/src/PileupRPC/methods/GetGlobalValueForTag.ts +41 -0
  326. package/src/PileupRPC/methods/GetReducedFeatures.ts +76 -0
  327. package/src/PileupRPC/methods/GetVisibleModifications.ts +45 -0
  328. package/src/PileupRPC/rpcMethods.ts +8 -113
  329. package/src/PileupRPC/util.ts +19 -0
  330. package/src/PileupRenderer/PileupRenderer.ts +5 -8
  331. package/src/PileupRenderer/configSchema.ts +1 -1
  332. package/src/PileupRenderer/index.ts +1 -0
  333. package/src/PileupRenderer/sortUtil.ts +2 -3
  334. package/src/SNPCoverageAdapter/SNPCoverageAdapter.ts +5 -249
  335. package/src/SNPCoverageAdapter/generateCoverageBins.ts +245 -0
  336. package/src/SNPCoverageAdapter/index.ts +1 -3
  337. package/src/index.ts +12 -93
  338. package/src/{LinearPileupDisplay/components → shared}/FilterByTag.tsx +5 -31
  339. package/src/shared/color.ts +47 -0
  340. package/src/shared/fetchChains.ts +63 -0
  341. package/src/{shared.ts → shared/index.ts} +17 -4
  342. package/dist/BamAdapter/MismatchParser.js.map +0 -1
  343. package/dist/LinearPileupDisplay/components/FilterByTag.js.map +0 -1
  344. package/dist/shared.d.ts +0 -25
  345. package/dist/shared.js.map +0 -1
  346. package/esm/BamAdapter/MismatchParser.js.map +0 -1
  347. package/esm/LinearPileupDisplay/components/FilterByTag.js.map +0 -1
  348. package/esm/shared.d.ts +0 -25
  349. package/esm/shared.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
+ import { Instance, IStateTreeNode } from 'mobx-state-tree';
2
3
  import { AnyConfigurationModel, AnyConfigurationSchemaType } from '@jbrowse/core/configuration';
3
4
  import PluginManager from '@jbrowse/core/PluginManager';
4
5
  import { MenuItem } from '@jbrowse/core/ui';
5
- import { Instance } from 'mobx-state-tree';
6
6
  /**
7
7
  * #stateModel LinearAlignmentsDisplay
8
8
  * extends `BaseDisplay`
@@ -12,15 +12,14 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
12
12
  type: import("mobx-state-tree").ISimpleType<string>;
13
13
  rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
14
14
  } & {
15
- PileupDisplay: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IAnyModelType>;
15
+ PileupDisplay: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IAnyType>;
16
16
  SNPCoverageDisplay: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IAnyModelType>;
17
17
  snpCovHeight: import("mobx-state-tree").IType<number | undefined, number, number>;
18
18
  type: import("mobx-state-tree").ISimpleType<"LinearAlignmentsDisplay">;
19
19
  configuration: import("mobx-state-tree").ITypeUnion<any, any, any>;
20
20
  height: import("mobx-state-tree").IType<number | undefined, number, number>;
21
- showCoverage: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
22
- showPileup: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
23
21
  userFeatureScreenDensity: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<number>>;
22
+ lowerPanelType: import("mobx-state-tree").IType<string | undefined, string, string>;
24
23
  }, {
25
24
  rendererTypeName: string;
26
25
  error: unknown;
@@ -33,11 +32,9 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
33
32
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
34
33
  rendererTypeName: string;
35
34
  error: unknown;
36
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
35
+ } & IStateTreeNode<import("mobx-state-tree").IModelType<{
37
36
  id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
38
- type: import("mobx-state-tree").ISimpleType<string>; /**
39
- * #property
40
- */
37
+ type: import("mobx-state-tree").ISimpleType<string>;
41
38
  rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
42
39
  }, {
43
40
  rendererTypeName: string;
@@ -54,16 +51,16 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
54
51
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
55
52
  rendererTypeName: string;
56
53
  error: unknown;
57
- } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
58
- id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>; /**
59
- * #action
60
- */
54
+ } & IStateTreeNode<import("mobx-state-tree").IModelType<{
55
+ id: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").ISimpleType<string>, [undefined]>;
61
56
  type: import("mobx-state-tree").ISimpleType<string>;
62
57
  rpcDriverName: import("mobx-state-tree").IMaybe<import("mobx-state-tree").ISimpleType<string>>;
63
58
  }, {
64
59
  rendererTypeName: string;
65
60
  error: unknown;
66
- }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>;
61
+ }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /**
62
+ * #property
63
+ */
67
64
  }> | null;
68
65
  readonly adapterConfig: any;
69
66
  readonly parentTrack: any;
@@ -80,14 +77,6 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
80
77
  } & {
81
78
  scrollTop: number;
82
79
  } & {
83
- /**
84
- * #action
85
- */
86
- toggleCoverage(): void;
87
- /**
88
- * #action
89
- */
90
- togglePileup(): void;
91
80
  /**
92
81
  * #action
93
82
  */
@@ -100,7 +89,7 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
100
89
  /**
101
90
  * #getter
102
91
  */
103
- readonly pileupDisplayConfig: any;
92
+ readonly pileupConf: any;
104
93
  /**
105
94
  * #method
106
95
  */
@@ -124,19 +113,7 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
124
113
  /**
125
114
  * #getter
126
115
  */
127
- readonly sortedByPosition: any;
128
- /**
129
- * #getter
130
- */
131
- readonly sortedByRefName: any;
132
- /**
133
- * #getter
134
- */
135
- readonly snpCoverageDisplayConfig: any;
136
- /**
137
- * #method
138
- */
139
- trackMenuItems(): MenuItem[];
116
+ readonly coverageConf: any;
140
117
  } & {
141
118
  /**
142
119
  * #action
@@ -153,7 +130,11 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
153
130
  /**
154
131
  * #action
155
132
  */
156
- setHeight(displayHeight: number): number;
133
+ setHeight(n: number): number;
134
+ /**
135
+ * #action
136
+ */
137
+ setLowerPanelType(type: string): void;
157
138
  /**
158
139
  * #action
159
140
  */
@@ -166,6 +147,11 @@ declare function stateModelFactory(pluginManager: PluginManager, configSchema: A
166
147
  renderSvg(opts: {
167
148
  rasterizeLayers?: boolean;
168
149
  }): Promise<JSX.Element>;
150
+ } & {
151
+ /**
152
+ * #method
153
+ */
154
+ trackMenuItems(): MenuItem[];
169
155
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>;
170
156
  export default stateModelFactory;
171
157
  export type AlignmentsDisplayStateModel = ReturnType<typeof stateModelFactory>;
@@ -4,25 +4,58 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
- const configuration_1 = require("@jbrowse/core/configuration");
8
- const models_1 = require("@jbrowse/core/pluggableElementTypes/models");
9
7
  const mobx_1 = require("mobx");
10
8
  const mobx_state_tree_1 = require("mobx-state-tree");
11
- const util_1 = require("@jbrowse/core/util");
12
9
  const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
10
+ // jbrowse
11
+ const configuration_1 = require("@jbrowse/core/configuration");
12
+ const models_1 = require("@jbrowse/core/pluggableElementTypes/models");
13
13
  const minDisplayHeight = 20;
14
- /**
15
- * #stateModel LinearAlignmentsDisplay
16
- * extends `BaseDisplay`
17
- */
18
- function stateModelFactory(pluginManager, configSchema) {
19
- return mobx_state_tree_1.types
20
- .compose('LinearAlignmentsDisplay', models_1.BaseDisplay, mobx_state_tree_1.types.model({
14
+ function getLowerPanelDisplays(pluginManager) {
15
+ return (pluginManager
16
+ .getDisplayElements()
17
+ // @ts-ignore
18
+ .filter(f => { var _a; return ((_a = f.subDisplay) === null || _a === void 0 ? void 0 : _a.type) === 'LinearAlignmentsDisplay'; })
19
+ // @ts-ignore
20
+ .filter(f => { var _a; return (_a = f.subDisplay) === null || _a === void 0 ? void 0 : _a.lowerPanel; }));
21
+ }
22
+ function deepSnap(x1, x2) {
23
+ return (0, fast_deep_equal_1.default)(x1 ? (0, mobx_state_tree_1.getSnapshot)(x1) : undefined, x2 ? (0, mobx_state_tree_1.getSnapshot)(x2) : undefined);
24
+ }
25
+ function preCheck(self) {
26
+ const { PileupDisplay, SNPCoverageDisplay } = self;
27
+ return (PileupDisplay ||
28
+ (0, mobx_state_tree_1.isAlive)(PileupDisplay) ||
29
+ SNPCoverageDisplay ||
30
+ (0, mobx_state_tree_1.isAlive)(SNPCoverageDisplay));
31
+ }
32
+ function propagateColorBy(self) {
33
+ const { PileupDisplay, SNPCoverageDisplay } = self;
34
+ if (!preCheck(self) || !PileupDisplay.colorBy) {
35
+ return;
36
+ }
37
+ if (!deepSnap(PileupDisplay.colorBy, SNPCoverageDisplay.colorBy)) {
38
+ SNPCoverageDisplay.setColorBy((0, mobx_state_tree_1.getSnapshot)(PileupDisplay.colorBy));
39
+ }
40
+ }
41
+ function propagateFilterBy(self) {
42
+ const { PileupDisplay, SNPCoverageDisplay } = self;
43
+ if (!preCheck(self) || !PileupDisplay.filterBy) {
44
+ return;
45
+ }
46
+ if (!deepSnap(PileupDisplay.filterBy, SNPCoverageDisplay.filterBy)) {
47
+ SNPCoverageDisplay.setFilterBy((0, mobx_state_tree_1.getSnapshot)(PileupDisplay.filterBy));
48
+ }
49
+ }
50
+ function AlignmentsModel(pluginManager, configSchema) {
51
+ const lowerPanelDisplays = getLowerPanelDisplays(pluginManager).map(f => f.stateModel);
52
+ return mobx_state_tree_1.types.model({
21
53
  /**
22
54
  * #property
23
55
  * refers to LinearPileupDisplay sub-display model
24
56
  */
25
- PileupDisplay: mobx_state_tree_1.types.maybe(pluginManager.getDisplayType('LinearPileupDisplay').stateModel),
57
+ // @ts-ignore
58
+ PileupDisplay: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.union(...lowerPanelDisplays)),
26
59
  /**
27
60
  * #property
28
61
  * refers to LinearSNPCoverageDisplay sub-display model
@@ -47,16 +80,20 @@ function stateModelFactory(pluginManager, configSchema) {
47
80
  /**
48
81
  * #property
49
82
  */
50
- showCoverage: true,
51
- /**
52
- * #property
53
- */
54
- showPileup: true,
83
+ userFeatureScreenDensity: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.number),
55
84
  /**
56
85
  * #property
57
86
  */
58
- userFeatureScreenDensity: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.number),
59
- }))
87
+ lowerPanelType: 'LinearPileupDisplay',
88
+ });
89
+ }
90
+ /**
91
+ * #stateModel LinearAlignmentsDisplay
92
+ * extends `BaseDisplay`
93
+ */
94
+ function stateModelFactory(pluginManager, configSchema) {
95
+ return mobx_state_tree_1.types
96
+ .compose('LinearAlignmentsDisplay', models_1.BaseDisplay, AlignmentsModel(pluginManager, configSchema))
60
97
  .volatile(() => ({
61
98
  scrollTop: 0,
62
99
  }))
@@ -64,120 +101,70 @@ function stateModelFactory(pluginManager, configSchema) {
64
101
  /**
65
102
  * #action
66
103
  */
67
- toggleCoverage() {
68
- self.showCoverage = !self.showCoverage;
104
+ setScrollTop(scrollTop) {
105
+ self.scrollTop = scrollTop;
69
106
  },
70
107
  /**
71
108
  * #action
72
109
  */
73
- togglePileup() {
74
- self.showPileup = !self.showPileup;
110
+ setSNPCoverageHeight(n) {
111
+ self.snpCovHeight = n;
75
112
  },
113
+ }))
114
+ .views(self => ({
76
115
  /**
77
- * #action
116
+ * #getter
78
117
  */
79
- setScrollTop(scrollTop) {
80
- self.scrollTop = scrollTop;
118
+ get pileupConf() {
119
+ const conf = (0, configuration_1.getConf)(self, 'pileupDisplay');
120
+ return {
121
+ ...conf,
122
+ type: self.lowerPanelType,
123
+ displayId: `${self.configuration.displayId}_${self.lowerPanelType}_xyz`, // xyz to avoid someone accidentally naming the displayId similar to this
124
+ };
81
125
  },
82
126
  /**
83
- * #action
127
+ * #method
84
128
  */
85
- setSNPCoverageHeight(n) {
86
- self.snpCovHeight = n;
129
+ getFeatureByID(blockKey, id) {
130
+ return self.PileupDisplay.getFeatureByID(blockKey, id);
131
+ },
132
+ /**
133
+ * #method
134
+ */
135
+ searchFeatureByID(id) {
136
+ return self.PileupDisplay.searchFeatureByID(id);
137
+ },
138
+ /**
139
+ * #getter
140
+ */
141
+ get features() {
142
+ return self.PileupDisplay.features;
143
+ },
144
+ /**
145
+ * #getter
146
+ */
147
+ get DisplayBlurb() {
148
+ var _a;
149
+ return (_a = self.PileupDisplay) === null || _a === void 0 ? void 0 : _a.DisplayBlurb;
150
+ },
151
+ /**
152
+ * #getter
153
+ */
154
+ get sortedBy() {
155
+ return self.PileupDisplay.sortedBy;
156
+ },
157
+ /**
158
+ * #getter
159
+ */
160
+ get coverageConf() {
161
+ const conf = (0, configuration_1.getConf)(self, 'snpCoverageDisplay');
162
+ return {
163
+ ...conf,
164
+ displayId: `${self.configuration.displayId}_snpcoverage_xyz`, // xyz to avoid someone accidentally naming the displayId similar to this
165
+ };
87
166
  },
88
167
  }))
89
- .views(self => {
90
- const { trackMenuItems: superTrackMenuItems } = self;
91
- return {
92
- /**
93
- * #getter
94
- */
95
- get pileupDisplayConfig() {
96
- const conf = (0, configuration_1.getConf)(self, 'pileupDisplay');
97
- const track = (0, util_1.getContainingTrack)(self);
98
- return {
99
- ...conf,
100
- type: 'LinearPileupDisplay',
101
- name: `${(0, configuration_1.getConf)(track, 'name')} pileup`,
102
- displayId: `${self.configuration.displayId}_pileup_xyz`, // xyz to avoid someone accidentally naming the displayId similar to this
103
- };
104
- },
105
- /**
106
- * #method
107
- */
108
- getFeatureByID(blockKey, id) {
109
- return self.PileupDisplay.getFeatureByID(blockKey, id);
110
- },
111
- /**
112
- * #method
113
- */
114
- searchFeatureByID(id) {
115
- return self.PileupDisplay.searchFeatureByID(id);
116
- },
117
- /**
118
- * #getter
119
- */
120
- get features() {
121
- return self.PileupDisplay.features;
122
- },
123
- /**
124
- * #getter
125
- */
126
- get DisplayBlurb() {
127
- var _a;
128
- return (_a = self.PileupDisplay) === null || _a === void 0 ? void 0 : _a.DisplayBlurb;
129
- },
130
- /**
131
- * #getter
132
- */
133
- get sortedBy() {
134
- return self.PileupDisplay.sortedBy;
135
- },
136
- /**
137
- * #getter
138
- */
139
- get sortedByPosition() {
140
- return self.PileupDisplay.sortedByPosition;
141
- },
142
- /**
143
- * #getter
144
- */
145
- get sortedByRefName() {
146
- return self.PileupDisplay.sortedByRefName;
147
- },
148
- /**
149
- * #getter
150
- */
151
- get snpCoverageDisplayConfig() {
152
- const conf = (0, configuration_1.getConf)(self, 'snpCoverageDisplay');
153
- const track = (0, util_1.getContainingTrack)(self);
154
- return {
155
- ...conf,
156
- type: 'LinearSNPCoverageDisplay',
157
- name: `${(0, configuration_1.getConf)(track, 'name')} snp coverage`,
158
- displayId: `${self.configuration.displayId}_snpcoverage_xyz`, // xyz to avoid someone accidentally naming the displayId similar to this
159
- };
160
- },
161
- /**
162
- * #method
163
- */
164
- trackMenuItems() {
165
- return [
166
- ...superTrackMenuItems(),
167
- {
168
- type: 'subMenu',
169
- label: 'Pileup settings',
170
- subMenu: self.PileupDisplay.trackMenuItems(),
171
- },
172
- {
173
- type: 'subMenu',
174
- label: 'SNPCoverage settings',
175
- subMenu: self.SNPCoverageDisplay.trackMenuItems(),
176
- },
177
- ];
178
- },
179
- };
180
- })
181
168
  .actions(self => ({
182
169
  /**
183
170
  * #action
@@ -201,22 +188,23 @@ function stateModelFactory(pluginManager, configSchema) {
201
188
  */
202
189
  setPileupDisplay(configuration) {
203
190
  self.PileupDisplay = {
204
- type: 'LinearPileupDisplay',
191
+ type: configuration.type || 'LinearPileupDisplay',
205
192
  configuration,
206
193
  };
207
194
  },
208
195
  /**
209
196
  * #action
210
197
  */
211
- setHeight(displayHeight) {
212
- if (displayHeight > minDisplayHeight) {
213
- self.height = displayHeight;
214
- }
215
- else {
216
- self.height = minDisplayHeight;
217
- }
198
+ setHeight(n) {
199
+ self.height = Math.max(n, minDisplayHeight);
218
200
  return self.height;
219
201
  },
202
+ /**
203
+ * #action
204
+ */
205
+ setLowerPanelType(type) {
206
+ self.lowerPanelType = type;
207
+ },
220
208
  /**
221
209
  * #action
222
210
  */
@@ -229,36 +217,29 @@ function stateModelFactory(pluginManager, configSchema) {
229
217
  .actions(self => ({
230
218
  afterAttach() {
231
219
  (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
232
- if (!self.SNPCoverageDisplay) {
233
- self.setSNPCoverageDisplay(self.snpCoverageDisplayConfig);
220
+ const { SNPCoverageDisplay, PileupDisplay, coverageConf, pileupConf, } = self;
221
+ if (!SNPCoverageDisplay) {
222
+ self.setSNPCoverageDisplay(coverageConf);
234
223
  }
235
- else if (!(0, fast_deep_equal_1.default)(self.snpCoverageDisplayConfig, (0, mobx_state_tree_1.getSnapshot)(self.SNPCoverageDisplay.configuration))) {
236
- self.SNPCoverageDisplay.setHeight(self.snpCovHeight);
237
- self.SNPCoverageDisplay.setConfig(self.snpCoverageDisplayConfig);
224
+ else if (!(0, fast_deep_equal_1.default)(coverageConf, (0, mobx_state_tree_1.getSnapshot)(SNPCoverageDisplay.configuration))) {
225
+ SNPCoverageDisplay.setHeight(self.snpCovHeight);
226
+ SNPCoverageDisplay.setConfig(self.coverageConf);
238
227
  }
239
- if (!self.PileupDisplay) {
240
- self.setPileupDisplay(self.pileupDisplayConfig);
228
+ if (!PileupDisplay || self.lowerPanelType !== PileupDisplay.type) {
229
+ self.setPileupDisplay(pileupConf);
241
230
  }
242
- else if (!(0, fast_deep_equal_1.default)(self.pileupDisplayConfig, (0, mobx_state_tree_1.getSnapshot)(self.PileupDisplay.configuration))) {
243
- self.PileupDisplay.setConfig(self.pileupDisplayConfig);
244
- }
245
- // propagate the filterBy setting from pileupdisplay to snpcoverage
246
- // note: the snpcoverage display is not able to control filterBy
247
- // itself
248
- if (self.PileupDisplay.filterBy &&
249
- !(0, fast_deep_equal_1.default)((0, mobx_state_tree_1.getSnapshot)(self.PileupDisplay.filterBy), (0, mobx_state_tree_1.getSnapshot)(self.SNPCoverageDisplay.filterBy))) {
250
- self.SNPCoverageDisplay.setFilterBy((0, mobx_state_tree_1.getSnapshot)(self.PileupDisplay.filterBy));
251
- }
252
- if (self.PileupDisplay.colorBy &&
253
- !(0, fast_deep_equal_1.default)((0, mobx_state_tree_1.getSnapshot)(self.PileupDisplay.colorBy), self.SNPCoverageDisplay.colorBy
254
- ? (0, mobx_state_tree_1.getSnapshot)(self.SNPCoverageDisplay.colorBy)
255
- : {})) {
256
- self.SNPCoverageDisplay.setColorBy((0, mobx_state_tree_1.getSnapshot)(self.PileupDisplay.colorBy));
231
+ else if (!(0, fast_deep_equal_1.default)(pileupConf, (0, mobx_state_tree_1.getSnapshot)(PileupDisplay.configuration))) {
232
+ PileupDisplay.setConfig(self.pileupConf);
257
233
  }
234
+ propagateColorBy(self);
235
+ propagateFilterBy(self);
258
236
  }));
259
237
  (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
260
238
  self.setSNPCoverageHeight(self.SNPCoverageDisplay.height);
261
239
  }));
240
+ (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(() => {
241
+ self.PileupDisplay.setHeight(self.height - self.SNPCoverageDisplay.height);
242
+ }));
262
243
  },
263
244
  /**
264
245
  * #action
@@ -273,7 +254,41 @@ function stateModelFactory(pluginManager, configSchema) {
273
254
  overrideHeight: pileupHeight,
274
255
  }))));
275
256
  },
276
- }));
257
+ }))
258
+ .views(self => {
259
+ const { trackMenuItems: superTrackMenuItems } = self;
260
+ return {
261
+ /**
262
+ * #method
263
+ */
264
+ trackMenuItems() {
265
+ const extra = getLowerPanelDisplays(pluginManager).map(d => ({
266
+ type: 'radio',
267
+ label: d.displayName,
268
+ checked: d.name === self.PileupDisplay.type,
269
+ onClick: () => self.setLowerPanelType(d.name),
270
+ }));
271
+ return [
272
+ ...superTrackMenuItems(),
273
+ {
274
+ type: 'subMenu',
275
+ label: 'Pileup settings',
276
+ subMenu: self.PileupDisplay.trackMenuItems(),
277
+ },
278
+ {
279
+ type: 'subMenu',
280
+ label: 'SNPCoverage settings',
281
+ subMenu: self.SNPCoverageDisplay.trackMenuItems(),
282
+ },
283
+ {
284
+ type: 'subMenu',
285
+ label: `Replace lower panel with...`,
286
+ subMenu: extra,
287
+ },
288
+ ];
289
+ },
290
+ };
291
+ });
277
292
  }
278
293
  exports.default = stateModelFactory;
279
294
  //# sourceMappingURL=model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/LinearAlignmentsDisplay/models/model.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/LinearAlignmentsDisplay/models/model.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,9 @@
2
2
  import { ObservableMap } from 'mobx';
3
3
  declare function ColorByTagDlg(props: {
4
4
  model: {
5
- setColorScheme: Function;
5
+ setColorScheme: (arg: {
6
+ type: string;
7
+ }) => void;
6
8
  modificationTagMap: ObservableMap<string, string>;
7
9
  colorBy?: {
8
10
  type: string;
@@ -6,15 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const react_1 = __importDefault(require("react"));
7
7
  const mobx_react_1 = require("mobx-react");
8
8
  const material_1 = require("@mui/material");
9
+ const ui_1 = require("@jbrowse/core/ui");
9
10
  const mui_1 = require("tss-react/mui");
10
- const Close_1 = __importDefault(require("@mui/icons-material/Close"));
11
11
  const useStyles = (0, mui_1.makeStyles)()(theme => ({
12
- closeButton: {
13
- position: 'absolute',
14
- right: theme.spacing(1),
15
- top: theme.spacing(1),
16
- color: theme.palette.grey[500],
17
- },
18
12
  table: {
19
13
  border: '1px solid #888',
20
14
  margin: theme.spacing(4),
@@ -35,15 +29,10 @@ function ModificationTable({ modifications, }) {
35
29
  } })))))));
36
30
  }
37
31
  function ColorByTagDlg(props) {
38
- const { classes } = useStyles();
39
32
  const { model, handleClose } = props;
40
33
  const { colorBy, modificationTagMap } = model;
41
34
  const modifications = [...modificationTagMap.entries()];
42
- return (react_1.default.createElement(material_1.Dialog, { open: true, onClose: handleClose },
43
- react_1.default.createElement(material_1.DialogTitle, null,
44
- "Color by modifications",
45
- react_1.default.createElement(material_1.IconButton, { "aria-label": "close", className: classes.closeButton, onClick: handleClose },
46
- react_1.default.createElement(Close_1.default, null))),
35
+ return (react_1.default.createElement(ui_1.Dialog, { open: true, onClose: handleClose, title: "Color by modifications" },
47
36
  react_1.default.createElement(material_1.DialogContent, null,
48
37
  react_1.default.createElement(material_1.Typography, null, "You can choose to color the modifications in the BAM/CRAM MM/ML specification using this dialog. Choosing modifications colors the modified positions and can color multiple modification types. Choosing the methylation setting colors methylated and unmethylated CpG."),
49
38
  react_1.default.createElement(material_1.Typography, null, "Note: you can revisit this dialog to see the current mapping of colors to modification type for the modification coloring mode"),
@@ -58,19 +47,15 @@ function ColorByTagDlg(props) {
58
47
  ['unmethylated', 'blue'],
59
48
  ] })) : null),
60
49
  react_1.default.createElement(material_1.DialogActions, null,
61
- react_1.default.createElement(material_1.Button, { variant: "contained", color: "primary", style: { margin: 5 }, onClick: () => {
62
- model.setColorScheme({
63
- type: 'modifications',
64
- });
50
+ react_1.default.createElement(material_1.Button, { variant: "contained", onClick: () => {
51
+ model.setColorScheme({ type: 'modifications' });
65
52
  handleClose();
66
53
  } }, "Modifications"),
67
- react_1.default.createElement(material_1.Button, { variant: "contained", color: "primary", style: { margin: 5 }, onClick: () => {
68
- model.setColorScheme({
69
- type: 'methylation',
70
- });
54
+ react_1.default.createElement(material_1.Button, { variant: "contained", onClick: () => {
55
+ model.setColorScheme({ type: 'methylation' });
71
56
  handleClose();
72
57
  } }, "Methylation"),
73
- react_1.default.createElement(material_1.Button, { variant: "contained", color: "secondary", style: { margin: 5 }, onClick: () => handleClose() }, "Cancel")))));
58
+ react_1.default.createElement(material_1.Button, { variant: "contained", color: "secondary", onClick: () => handleClose() }, "Cancel")))));
74
59
  }
75
60
  exports.default = (0, mobx_react_1.observer)(ColorByTagDlg);
76
61
  //# sourceMappingURL=ColorByModifications.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ColorByModifications.js","sourceRoot":"","sources":["../../../src/LinearPileupDisplay/components/ColorByModifications.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ColorByModifications.js","sourceRoot":"","sources":["../../../src/LinearPileupDisplay/components/ColorByModifications.tsx"],"names":[],"mappings":"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"}