@jbrowse/plugin-alignments 1.7.9 → 2.0.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 (294) hide show
  1. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +192 -207
  2. package/dist/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +1 -0
  3. package/dist/AlignmentsFeatureDetail/index.d.ts +28 -3
  4. package/dist/AlignmentsFeatureDetail/index.js +48 -55
  5. package/dist/AlignmentsFeatureDetail/index.js.map +1 -0
  6. package/dist/AlignmentsTrack/index.js +24 -32
  7. package/dist/AlignmentsTrack/index.js.map +1 -0
  8. package/dist/BamAdapter/BamAdapter.js +345 -585
  9. package/dist/BamAdapter/BamAdapter.js.map +1 -0
  10. package/dist/BamAdapter/BamSlightlyLazyFeature.js +143 -174
  11. package/dist/BamAdapter/BamSlightlyLazyFeature.js.map +1 -0
  12. package/dist/BamAdapter/MismatchParser.js +340 -416
  13. package/dist/BamAdapter/MismatchParser.js.map +1 -0
  14. package/dist/BamAdapter/configSchema.js +33 -46
  15. package/dist/BamAdapter/configSchema.js.map +1 -0
  16. package/dist/BamAdapter/index.js +36 -32
  17. package/dist/BamAdapter/index.js.map +1 -0
  18. package/dist/CramAdapter/CramAdapter.js +376 -644
  19. package/dist/CramAdapter/CramAdapter.js.map +1 -0
  20. package/dist/CramAdapter/CramSlightlyLazyFeature.js +374 -439
  21. package/dist/CramAdapter/CramSlightlyLazyFeature.js.map +1 -0
  22. package/dist/CramAdapter/CramTestAdapters.js +169 -227
  23. package/dist/CramAdapter/CramTestAdapters.js.map +1 -0
  24. package/dist/CramAdapter/configSchema.js +28 -38
  25. package/dist/CramAdapter/configSchema.js.map +1 -0
  26. package/dist/CramAdapter/index.js +37 -32
  27. package/dist/CramAdapter/index.js.map +1 -0
  28. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js +91 -93
  29. package/dist/HtsgetBamAdapter/HtsgetBamAdapter.js.map +1 -0
  30. package/dist/HtsgetBamAdapter/configSchema.js +19 -29
  31. package/dist/HtsgetBamAdapter/configSchema.js.map +1 -0
  32. package/dist/HtsgetBamAdapter/index.js +44 -38
  33. package/dist/HtsgetBamAdapter/index.js.map +1 -0
  34. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +36 -65
  35. package/dist/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +1 -0
  36. package/dist/LinearAlignmentsDisplay/index.js +22 -28
  37. package/dist/LinearAlignmentsDisplay/index.js.map +1 -0
  38. package/dist/LinearAlignmentsDisplay/models/configSchema.js +12 -23
  39. package/dist/LinearAlignmentsDisplay/models/configSchema.js.map +1 -0
  40. package/dist/LinearAlignmentsDisplay/models/model.d.ts +10 -10
  41. package/dist/LinearAlignmentsDisplay/models/model.js +257 -245
  42. package/dist/LinearAlignmentsDisplay/models/model.js.map +1 -0
  43. package/dist/LinearPileupDisplay/components/ColorByModifications.js +98 -116
  44. package/dist/LinearPileupDisplay/components/ColorByModifications.js.map +1 -0
  45. package/dist/LinearPileupDisplay/components/ColorByTag.js +82 -91
  46. package/dist/LinearPileupDisplay/components/ColorByTag.js.map +1 -0
  47. package/dist/LinearPileupDisplay/components/FilterByTag.js +156 -192
  48. package/dist/LinearPileupDisplay/components/FilterByTag.js.map +1 -0
  49. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +15 -29
  50. package/dist/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +1 -0
  51. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js +79 -93
  52. package/dist/LinearPileupDisplay/components/SetFeatureHeight.js.map +1 -0
  53. package/dist/LinearPileupDisplay/components/SetMaxHeight.js +78 -81
  54. package/dist/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -0
  55. package/dist/LinearPileupDisplay/components/SortByTag.js +80 -88
  56. package/dist/LinearPileupDisplay/components/SortByTag.js.map +1 -0
  57. package/dist/LinearPileupDisplay/configSchema.js +40 -42
  58. package/dist/LinearPileupDisplay/configSchema.js.map +1 -0
  59. package/dist/LinearPileupDisplay/index.js +21 -27
  60. package/dist/LinearPileupDisplay/index.js.map +1 -0
  61. package/dist/LinearPileupDisplay/model.d.ts +33 -20
  62. package/dist/LinearPileupDisplay/model.js +702 -716
  63. package/dist/LinearPileupDisplay/model.js.map +1 -0
  64. package/dist/LinearSNPCoverageDisplay/components/Tooltip.d.ts +1 -1
  65. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js +105 -57
  66. package/dist/LinearSNPCoverageDisplay/components/Tooltip.js.map +1 -0
  67. package/dist/LinearSNPCoverageDisplay/index.js +21 -27
  68. package/dist/LinearSNPCoverageDisplay/index.js.map +1 -0
  69. package/dist/LinearSNPCoverageDisplay/models/configSchema.js +45 -55
  70. package/dist/LinearSNPCoverageDisplay/models/configSchema.js.map +1 -0
  71. package/dist/LinearSNPCoverageDisplay/models/model.d.ts +14 -12
  72. package/dist/LinearSNPCoverageDisplay/models/model.js +257 -230
  73. package/dist/LinearSNPCoverageDisplay/models/model.js.map +1 -0
  74. package/dist/NestedFrequencyTable.js +104 -139
  75. package/dist/NestedFrequencyTable.js.map +1 -0
  76. package/dist/PileupRPC/rpcMethods.js +199 -278
  77. package/dist/PileupRPC/rpcMethods.js.map +1 -0
  78. package/dist/PileupRenderer/PileupLayoutSession.js +56 -76
  79. package/dist/PileupRenderer/PileupLayoutSession.js.map +1 -0
  80. package/dist/PileupRenderer/PileupRenderer.d.ts +56 -11
  81. package/dist/PileupRenderer/PileupRenderer.js +942 -1134
  82. package/dist/PileupRenderer/PileupRenderer.js.map +1 -0
  83. package/dist/PileupRenderer/components/PileupRendering.d.ts +1 -1
  84. package/dist/PileupRenderer/components/PileupRendering.js +173 -253
  85. package/dist/PileupRenderer/components/PileupRendering.js.map +1 -0
  86. package/dist/PileupRenderer/configSchema.js +65 -71
  87. package/dist/PileupRenderer/configSchema.js.map +1 -0
  88. package/dist/PileupRenderer/index.js +17 -22
  89. package/dist/PileupRenderer/index.js.map +1 -0
  90. package/dist/PileupRenderer/sortUtil.js +83 -107
  91. package/dist/PileupRenderer/sortUtil.js.map +1 -0
  92. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +2 -0
  93. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js +436 -586
  94. package/dist/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -0
  95. package/dist/SNPCoverageAdapter/configSchema.js +10 -20
  96. package/dist/SNPCoverageAdapter/configSchema.js.map +1 -0
  97. package/dist/SNPCoverageAdapter/index.js +46 -41
  98. package/dist/SNPCoverageAdapter/index.js.map +1 -0
  99. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +1 -1
  100. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js +265 -290
  101. package/dist/SNPCoverageRenderer/SNPCoverageRenderer.js.map +1 -0
  102. package/dist/SNPCoverageRenderer/configSchema.js +30 -39
  103. package/dist/SNPCoverageRenderer/configSchema.js.map +1 -0
  104. package/dist/SNPCoverageRenderer/index.js +19 -30
  105. package/dist/SNPCoverageRenderer/index.js.map +1 -0
  106. package/dist/index.js +135 -152
  107. package/dist/index.js.map +1 -0
  108. package/dist/shared.js +84 -92
  109. package/dist/shared.js.map +1 -0
  110. package/dist/util.js +130 -121
  111. package/dist/util.js.map +1 -0
  112. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.d.ts +6 -0
  113. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js +145 -0
  114. package/esm/AlignmentsFeatureDetail/AlignmentsFeatureDetail.js.map +1 -0
  115. package/esm/AlignmentsFeatureDetail/index.d.ts +38 -0
  116. package/esm/AlignmentsFeatureDetail/index.js +23 -0
  117. package/esm/AlignmentsFeatureDetail/index.js.map +1 -0
  118. package/esm/AlignmentsTrack/index.d.ts +2 -0
  119. package/esm/AlignmentsTrack/index.js +23 -0
  120. package/esm/AlignmentsTrack/index.js.map +1 -0
  121. package/esm/BamAdapter/BamAdapter.d.ts +40 -0
  122. package/esm/BamAdapter/BamAdapter.js +173 -0
  123. package/esm/BamAdapter/BamAdapter.js.map +1 -0
  124. package/esm/BamAdapter/BamSlightlyLazyFeature.d.ts +33 -0
  125. package/esm/BamAdapter/BamSlightlyLazyFeature.js +107 -0
  126. package/esm/BamAdapter/BamSlightlyLazyFeature.js.map +1 -0
  127. package/esm/BamAdapter/MismatchParser.d.ts +25 -0
  128. package/esm/BamAdapter/MismatchParser.js +294 -0
  129. package/esm/BamAdapter/MismatchParser.js.map +1 -0
  130. package/esm/BamAdapter/configSchema.d.ts +2 -0
  131. package/esm/BamAdapter/configSchema.js +31 -0
  132. package/esm/BamAdapter/configSchema.js.map +1 -0
  133. package/esm/BamAdapter/index.d.ts +3 -0
  134. package/esm/BamAdapter/index.js +10 -0
  135. package/esm/BamAdapter/index.js.map +1 -0
  136. package/esm/CramAdapter/CramAdapter.d.ts +53 -0
  137. package/esm/CramAdapter/CramAdapter.js +228 -0
  138. package/esm/CramAdapter/CramAdapter.js.map +1 -0
  139. package/esm/CramAdapter/CramSlightlyLazyFeature.d.ts +49 -0
  140. package/esm/CramAdapter/CramSlightlyLazyFeature.js +349 -0
  141. package/esm/CramAdapter/CramSlightlyLazyFeature.js.map +1 -0
  142. package/esm/CramAdapter/CramTestAdapters.d.ts +29 -0
  143. package/esm/CramAdapter/CramTestAdapters.js +70 -0
  144. package/esm/CramAdapter/CramTestAdapters.js.map +1 -0
  145. package/esm/CramAdapter/configSchema.d.ts +3 -0
  146. package/esm/CramAdapter/configSchema.js +26 -0
  147. package/esm/CramAdapter/configSchema.js.map +1 -0
  148. package/esm/CramAdapter/index.d.ts +3 -0
  149. package/esm/CramAdapter/index.js +11 -0
  150. package/esm/CramAdapter/index.js.map +1 -0
  151. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.d.ts +9 -0
  152. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js +27 -0
  153. package/esm/HtsgetBamAdapter/HtsgetBamAdapter.js.map +1 -0
  154. package/esm/HtsgetBamAdapter/configSchema.d.ts +2 -0
  155. package/esm/HtsgetBamAdapter/configSchema.js +17 -0
  156. package/esm/HtsgetBamAdapter/configSchema.js.map +1 -0
  157. package/esm/HtsgetBamAdapter/index.d.ts +3 -0
  158. package/esm/HtsgetBamAdapter/index.js +16 -0
  159. package/esm/HtsgetBamAdapter/index.js.map +1 -0
  160. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.d.ts +7 -0
  161. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js +34 -0
  162. package/esm/LinearAlignmentsDisplay/components/AlignmentsDisplay.js.map +1 -0
  163. package/esm/LinearAlignmentsDisplay/index.d.ts +2 -0
  164. package/esm/LinearAlignmentsDisplay/index.js +19 -0
  165. package/esm/LinearAlignmentsDisplay/index.js.map +1 -0
  166. package/esm/LinearAlignmentsDisplay/models/configSchema.d.ts +4 -0
  167. package/esm/LinearAlignmentsDisplay/models/configSchema.js +12 -0
  168. package/esm/LinearAlignmentsDisplay/models/configSchema.js.map +1 -0
  169. package/esm/LinearAlignmentsDisplay/models/model.d.ts +105 -0
  170. package/esm/LinearAlignmentsDisplay/models/model.js +181 -0
  171. package/esm/LinearAlignmentsDisplay/models/model.js.map +1 -0
  172. package/esm/LinearPileupDisplay/components/ColorByModifications.d.ts +14 -0
  173. package/esm/LinearPileupDisplay/components/ColorByModifications.js +71 -0
  174. package/esm/LinearPileupDisplay/components/ColorByModifications.js.map +1 -0
  175. package/esm/LinearPileupDisplay/components/ColorByTag.d.ts +9 -0
  176. package/esm/LinearPileupDisplay/components/ColorByTag.js +45 -0
  177. package/esm/LinearPileupDisplay/components/ColorByTag.js.map +1 -0
  178. package/esm/LinearPileupDisplay/components/FilterByTag.d.ts +18 -0
  179. package/esm/LinearPileupDisplay/components/FilterByTag.js +123 -0
  180. package/esm/LinearPileupDisplay/components/FilterByTag.js.map +1 -0
  181. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.d.ts +13 -0
  182. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js +13 -0
  183. package/esm/LinearPileupDisplay/components/LinearPileupDisplayBlurb.js.map +1 -0
  184. package/esm/LinearPileupDisplay/components/SetFeatureHeight.d.ts +16 -0
  185. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js +41 -0
  186. package/esm/LinearPileupDisplay/components/SetFeatureHeight.js.map +1 -0
  187. package/esm/LinearPileupDisplay/components/SetMaxHeight.d.ts +10 -0
  188. package/esm/LinearPileupDisplay/components/SetMaxHeight.js +43 -0
  189. package/esm/LinearPileupDisplay/components/SetMaxHeight.js.map +1 -0
  190. package/esm/LinearPileupDisplay/components/SortByTag.d.ts +9 -0
  191. package/esm/LinearPileupDisplay/components/SortByTag.js +43 -0
  192. package/esm/LinearPileupDisplay/components/SortByTag.js.map +1 -0
  193. package/esm/LinearPileupDisplay/configSchema.d.ts +6 -0
  194. package/esm/LinearPileupDisplay/configSchema.js +41 -0
  195. package/esm/LinearPileupDisplay/configSchema.js.map +1 -0
  196. package/esm/LinearPileupDisplay/index.d.ts +2 -0
  197. package/esm/LinearPileupDisplay/index.js +18 -0
  198. package/esm/LinearPileupDisplay/index.js.map +1 -0
  199. package/esm/LinearPileupDisplay/model.d.ts +332 -0
  200. package/esm/LinearPileupDisplay/model.js +576 -0
  201. package/esm/LinearPileupDisplay/model.js.map +1 -0
  202. package/esm/LinearSNPCoverageDisplay/components/Tooltip.d.ts +10 -0
  203. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js +57 -0
  204. package/esm/LinearSNPCoverageDisplay/components/Tooltip.js.map +1 -0
  205. package/esm/LinearSNPCoverageDisplay/index.d.ts +2 -0
  206. package/esm/LinearSNPCoverageDisplay/index.js +18 -0
  207. package/esm/LinearSNPCoverageDisplay/index.js.map +1 -0
  208. package/esm/LinearSNPCoverageDisplay/models/configSchema.d.ts +2 -0
  209. package/esm/LinearSNPCoverageDisplay/models/configSchema.js +44 -0
  210. package/esm/LinearSNPCoverageDisplay/models/configSchema.js.map +1 -0
  211. package/esm/LinearSNPCoverageDisplay/models/model.d.ts +348 -0
  212. package/esm/LinearSNPCoverageDisplay/models/model.js +185 -0
  213. package/esm/LinearSNPCoverageDisplay/models/model.js.map +1 -0
  214. package/esm/NestedFrequencyTable.d.ts +14 -0
  215. package/esm/NestedFrequencyTable.js +101 -0
  216. package/esm/NestedFrequencyTable.js.map +1 -0
  217. package/esm/PileupRPC/rpcMethods.d.ts +34 -0
  218. package/esm/PileupRPC/rpcMethods.js +70 -0
  219. package/esm/PileupRPC/rpcMethods.js.map +1 -0
  220. package/esm/PileupRenderer/PileupLayoutSession.d.ts +32 -0
  221. package/esm/PileupRenderer/PileupLayoutSession.js +32 -0
  222. package/esm/PileupRenderer/PileupLayoutSession.js.map +1 -0
  223. package/esm/PileupRenderer/PileupRenderer.d.ts +182 -0
  224. package/esm/PileupRenderer/PileupRenderer.js +830 -0
  225. package/esm/PileupRenderer/PileupRenderer.js.map +1 -0
  226. package/esm/PileupRenderer/components/PileupRendering.d.ts +23 -0
  227. package/esm/PileupRenderer/components/PileupRendering.js +138 -0
  228. package/esm/PileupRenderer/components/PileupRendering.js.map +1 -0
  229. package/esm/PileupRenderer/configSchema.d.ts +2 -0
  230. package/esm/PileupRenderer/configSchema.js +64 -0
  231. package/esm/PileupRenderer/configSchema.js.map +1 -0
  232. package/esm/PileupRenderer/index.d.ts +2 -0
  233. package/esm/PileupRenderer/index.js +12 -0
  234. package/esm/PileupRenderer/index.js.map +1 -0
  235. package/esm/PileupRenderer/sortUtil.d.ts +8 -0
  236. package/esm/PileupRenderer/sortUtil.js +80 -0
  237. package/esm/PileupRenderer/sortUtil.js.map +1 -0
  238. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.d.ts +67 -0
  239. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js +259 -0
  240. package/esm/SNPCoverageAdapter/SNPCoverageAdapter.js.map +1 -0
  241. package/esm/SNPCoverageAdapter/configSchema.d.ts +3 -0
  242. package/esm/SNPCoverageAdapter/configSchema.js +6 -0
  243. package/esm/SNPCoverageAdapter/configSchema.js.map +1 -0
  244. package/esm/SNPCoverageAdapter/index.d.ts +3 -0
  245. package/esm/SNPCoverageAdapter/index.js +18 -0
  246. package/esm/SNPCoverageAdapter/index.js.map +1 -0
  247. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.d.ts +20 -0
  248. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js +185 -0
  249. package/esm/SNPCoverageRenderer/SNPCoverageRenderer.js.map +1 -0
  250. package/esm/SNPCoverageRenderer/configSchema.d.ts +2 -0
  251. package/esm/SNPCoverageRenderer/configSchema.js +29 -0
  252. package/esm/SNPCoverageRenderer/configSchema.js.map +1 -0
  253. package/esm/SNPCoverageRenderer/index.d.ts +3 -0
  254. package/esm/SNPCoverageRenderer/index.js +14 -0
  255. package/esm/SNPCoverageRenderer/index.js.map +1 -0
  256. package/esm/index.d.ts +10 -0
  257. package/esm/index.js +91 -0
  258. package/esm/index.js.map +1 -0
  259. package/esm/shared.d.ts +25 -0
  260. package/esm/shared.js +28 -0
  261. package/esm/shared.js.map +1 -0
  262. package/esm/util.d.ts +19 -0
  263. package/esm/util.js +83 -0
  264. package/esm/util.js.map +1 -0
  265. package/package.json +19 -11
  266. package/src/AlignmentsFeatureDetail/AlignmentsFeatureDetail.tsx +16 -6
  267. package/src/AlignmentsFeatureDetail/__snapshots__/index.test.js.snap +321 -397
  268. package/src/AlignmentsFeatureDetail/index.ts +7 -17
  269. package/src/BamAdapter/MismatchParser.ts +1 -0
  270. package/src/LinearAlignmentsDisplay/components/AlignmentsDisplay.tsx +3 -3
  271. package/src/LinearPileupDisplay/components/ColorByModifications.tsx +7 -7
  272. package/src/LinearPileupDisplay/components/ColorByTag.tsx +5 -5
  273. package/src/LinearPileupDisplay/components/FilterByTag.tsx +5 -5
  274. package/src/LinearPileupDisplay/components/LinearPileupDisplayBlurb.tsx +1 -1
  275. package/src/LinearPileupDisplay/components/SetFeatureHeight.tsx +9 -9
  276. package/src/LinearPileupDisplay/components/SetMaxHeight.tsx +5 -5
  277. package/src/LinearPileupDisplay/components/SortByTag.tsx +5 -5
  278. package/src/LinearPileupDisplay/model.ts +90 -32
  279. package/src/LinearSNPCoverageDisplay/components/Tooltip.tsx +44 -30
  280. package/src/LinearSNPCoverageDisplay/models/model.ts +25 -25
  281. package/src/PileupRenderer/PileupRenderer.tsx +399 -198
  282. package/src/PileupRenderer/components/PileupRendering.tsx +11 -11
  283. package/src/SNPCoverageAdapter/SNPCoverageAdapter.ts +5 -0
  284. package/src/SNPCoverageRenderer/SNPCoverageRenderer.ts +7 -5
  285. package/dist/AlignmentsFeatureDetail/index.test.js +0 -60
  286. package/dist/BamAdapter/BamAdapter.test.js +0 -177
  287. package/dist/BamAdapter/MismatchParser.test.js +0 -251
  288. package/dist/CramAdapter/CramAdapter.test.js +0 -138
  289. package/dist/LinearAlignmentsDisplay/models/configSchema.test.js +0 -83
  290. package/dist/LinearPileupDisplay/configSchema.test.js +0 -92
  291. package/dist/LinearSNPCoverageDisplay/models/configSchema.test.js +0 -62
  292. package/dist/PileupRenderer/components/PileupRendering.test.js +0 -36
  293. package/dist/declare.d.js +0 -1
  294. package/dist/index.test.js +0 -26
@@ -1,237 +1,264 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.default = void 0;
9
-
10
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
- var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
-
14
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
-
16
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
-
18
- var _mobxStateTree = require("mobx-state-tree");
19
-
20
- var _mobx = require("mobx");
21
-
22
- var _configuration = require("@jbrowse/core/configuration");
23
-
24
- var _pluginWiggle = require("@jbrowse/plugin-wiggle");
25
-
26
- var _util = require("@jbrowse/core/util");
27
-
28
- var _Tooltip = _interopRequireDefault(require("../components/Tooltip"));
29
-
30
- var _shared = require("../../shared");
31
-
32
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
33
-
34
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
35
-
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
+ return new (P || (P = Promise))(function (resolve, reject) {
16
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
20
+ });
21
+ };
22
+ var __generator = (this && this.__generator) || function (thisArg, body) {
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
+ function verb(n) { return function (v) { return step([n, v]); }; }
26
+ function step(op) {
27
+ if (f) throw new TypeError("Generator is already executing.");
28
+ while (_) try {
29
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
+ if (y = 0, t) op = [op[0] & 2, t.value];
31
+ switch (op[0]) {
32
+ case 0: case 1: t = op; break;
33
+ case 4: _.label++; return { value: op[1], done: false };
34
+ case 5: _.label++; y = op[1]; op = [0]; continue;
35
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
+ default:
37
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
+ if (t[2]) _.ops.pop();
42
+ _.trys.pop(); continue;
43
+ }
44
+ op = body.call(thisArg, _);
45
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
+ }
48
+ };
49
+ var __read = (this && this.__read) || function (o, n) {
50
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
51
+ if (!m) return o;
52
+ var i = m.call(o), r, ar = [], e;
53
+ try {
54
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
55
+ }
56
+ catch (error) { e = { error: error }; }
57
+ finally {
58
+ try {
59
+ if (r && !r.done && (m = i["return"])) m.call(i);
60
+ }
61
+ finally { if (e) throw e.error; }
62
+ }
63
+ return ar;
64
+ };
65
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
66
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
67
+ if (ar || !(i in from)) {
68
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
69
+ ar[i] = from[i];
70
+ }
71
+ }
72
+ return to.concat(ar || Array.prototype.slice.call(from));
73
+ };
74
+ var __importDefault = (this && this.__importDefault) || function (mod) {
75
+ return (mod && mod.__esModule) ? mod : { "default": mod };
76
+ };
77
+ Object.defineProperty(exports, "__esModule", { value: true });
78
+ var mobx_state_tree_1 = require("mobx-state-tree");
79
+ var mobx_1 = require("mobx");
80
+ var configuration_1 = require("@jbrowse/core/configuration");
81
+ var plugin_wiggle_1 = require("@jbrowse/plugin-wiggle");
82
+ var util_1 = require("@jbrowse/core/util");
83
+ var Tooltip_1 = __importDefault(require("../components/Tooltip"));
84
+ var shared_1 = require("../../shared");
36
85
  // using a map because it preserves order
37
86
  var rendererTypes = new Map([['snpcoverage', 'SNPCoverageRenderer']]);
38
-
39
- var stateModelFactory = function stateModelFactory(pluginManager, configSchema) {
40
- return _mobxStateTree.types.compose('LinearSNPCoverageDisplay', (0, _pluginWiggle.linearWiggleDisplayModelFactory)(pluginManager, configSchema), _mobxStateTree.types.model({
41
- type: _mobxStateTree.types.literal('LinearSNPCoverageDisplay'),
42
- drawInterbaseCounts: _mobxStateTree.types.maybe(_mobxStateTree.types.boolean),
43
- drawIndicators: _mobxStateTree.types.maybe(_mobxStateTree.types.boolean),
44
- drawArcs: _mobxStateTree.types.maybe(_mobxStateTree.types.boolean),
45
- filterBy: _mobxStateTree.types.optional(_mobxStateTree.types.model({
46
- flagInclude: _mobxStateTree.types.optional(_mobxStateTree.types.number, 0),
47
- flagExclude: _mobxStateTree.types.optional(_mobxStateTree.types.number, 1540),
48
- readName: _mobxStateTree.types.maybe(_mobxStateTree.types.string),
49
- tagFilter: _mobxStateTree.types.maybe(_mobxStateTree.types.model({
50
- tag: _mobxStateTree.types.string,
51
- value: _mobxStateTree.types.string
52
- }))
53
- }), {}),
54
- colorBy: _mobxStateTree.types.maybe(_mobxStateTree.types.model({
55
- type: _mobxStateTree.types.string,
56
- tag: _mobxStateTree.types.maybe(_mobxStateTree.types.string)
87
+ var stateModelFactory = function (pluginManager, configSchema) {
88
+ return mobx_state_tree_1.types
89
+ .compose('LinearSNPCoverageDisplay', (0, plugin_wiggle_1.linearWiggleDisplayModelFactory)(pluginManager, configSchema), mobx_state_tree_1.types.model({
90
+ type: mobx_state_tree_1.types.literal('LinearSNPCoverageDisplay'),
91
+ drawInterbaseCounts: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.boolean),
92
+ drawIndicators: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.boolean),
93
+ drawArcs: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.boolean),
94
+ filterBy: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.model({
95
+ flagInclude: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.number, 0),
96
+ flagExclude: mobx_state_tree_1.types.optional(mobx_state_tree_1.types.number, 1540),
97
+ readName: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.string),
98
+ tagFilter: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.model({ tag: mobx_state_tree_1.types.string, value: mobx_state_tree_1.types.string })),
99
+ }), {}),
100
+ colorBy: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.model({
101
+ type: mobx_state_tree_1.types.string,
102
+ tag: mobx_state_tree_1.types.maybe(mobx_state_tree_1.types.string),
103
+ })),
57
104
  }))
58
- })).volatile(function () {
59
- return {
60
- modificationTagMap: _mobx.observable.map({})
61
- };
62
- }).actions(function (self) {
63
- return {
64
- setConfig: function setConfig(configuration) {
65
- self.configuration = configuration;
66
- },
67
- setFilterBy: function setFilterBy(filter) {
68
- self.filterBy = (0, _mobxStateTree.cast)(filter);
69
- },
70
- setColorBy: function setColorBy(colorBy) {
71
- self.colorBy = (0, _mobxStateTree.cast)(colorBy);
72
- },
73
- updateModificationColorMap: function updateModificationColorMap(uniqueModifications) {
74
- var colorPalette = ['red', 'blue', 'green', 'orange', 'purple'];
75
- var i = 0;
76
- uniqueModifications.forEach(function (value) {
77
- if (!self.modificationTagMap.has(value)) {
78
- var newColor = colorPalette[i++];
79
- self.modificationTagMap.set(value, newColor);
80
- }
81
- });
82
- }
83
- };
84
- }).views(function (self) {
85
- var superRenderProps = self.renderProps;
86
- return {
87
- get rendererConfig() {
88
- var configBlob = (0, _configuration.getConf)(self, ['renderers', self.rendererTypeName]) || {};
89
- return self.rendererType.configSchema.create(_objectSpread(_objectSpread({}, configBlob), {}, {
90
- drawInterbaseCounts: self.drawInterbaseCounts === undefined ? configBlob.drawInterbaseCounts : self.drawInterbaseCounts,
91
- drawIndicators: self.drawIndicators === undefined ? configBlob.drawIndicators : self.drawIndicators,
92
- drawArcs: self.drawArcs === undefined ? configBlob.drawArcs : self.drawArcs
93
- }), (0, _mobxStateTree.getEnv)(self));
94
- },
95
-
96
- get drawArcsSetting() {
97
- return self.drawArcs !== undefined ? self.drawArcs : (0, _configuration.readConfObject)(this.rendererConfig, 'drawArcs');
98
- },
99
-
100
- get drawInterbaseCountsSetting() {
101
- return self.drawInterbaseCounts !== undefined ? self.drawInterbaseCounts : (0, _configuration.readConfObject)(this.rendererConfig, 'drawInterbaseCounts');
102
- },
103
-
104
- get drawIndicatorsSetting() {
105
- return self.drawIndicators !== undefined ? self.drawIndicators : (0, _configuration.readConfObject)(this.rendererConfig, 'drawIndicators');
106
- },
107
-
108
- get modificationsReady() {
109
- var _self$colorBy;
110
-
111
- return ((_self$colorBy = self.colorBy) === null || _self$colorBy === void 0 ? void 0 : _self$colorBy.type) === 'modifications' ? Object.keys(JSON.parse(JSON.stringify(self.modificationTagMap))).length > 0 : true;
112
- },
113
-
114
- renderProps: function renderProps() {
115
- var superProps = superRenderProps();
116
- return _objectSpread(_objectSpread({}, superProps), {}, {
117
- notReady: superProps.notReady || !this.modificationsReady,
118
- modificationTagMap: JSON.parse(JSON.stringify(self.modificationTagMap)),
119
- // must use getSnapshot because otherwise changes to e.g. just the
120
- // colorBy.type are not read
121
- colorBy: self.colorBy ? (0, _mobxStateTree.getSnapshot)(self.colorBy) : undefined,
122
- filterBy: self.filterBy ? (0, _mobxStateTree.getSnapshot)(self.filterBy) : undefined
123
- });
124
- }
125
- };
126
- }).actions(function (self) {
127
- return {
128
- toggleDrawIndicators: function toggleDrawIndicators() {
129
- self.drawIndicators = !self.drawIndicatorsSetting;
130
- },
131
- toggleDrawInterbaseCounts: function toggleDrawInterbaseCounts() {
132
- self.drawInterbaseCounts = !self.drawInterbaseCountsSetting;
133
- },
134
- toggleDrawArcs: function toggleDrawArcs() {
135
- self.drawArcs = !self.drawArcsSetting;
136
- },
137
- afterAttach: function afterAttach() {
138
- (0, _mobxStateTree.addDisposer)(self, (0, _mobx.autorun)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
139
- var colorBy, _ref2, staticBlocks, vals;
140
-
141
- return _regenerator.default.wrap(function _callee$(_context) {
142
- while (1) {
143
- switch (_context.prev = _context.next) {
144
- case 0:
145
- _context.prev = 0;
146
- colorBy = self.colorBy;
147
- _ref2 = (0, _util.getContainingView)(self), staticBlocks = _ref2.staticBlocks;
148
-
149
- if (!((colorBy === null || colorBy === void 0 ? void 0 : colorBy.type) === 'modifications')) {
150
- _context.next = 8;
151
- break;
152
- }
153
-
154
- _context.next = 6;
155
- return (0, _shared.getUniqueModificationValues)(self, (0, _configuration.getConf)(self.parentTrack, 'adapter'), colorBy, staticBlocks);
156
-
157
- case 6:
158
- vals = _context.sent;
159
- self.updateModificationColorMap(vals);
160
-
161
- case 8:
162
- _context.next = 14;
163
- break;
164
-
165
- case 10:
166
- _context.prev = 10;
167
- _context.t0 = _context["catch"](0);
168
- console.error(_context.t0);
169
- self.setError(_context.t0);
170
-
171
- case 14:
172
- case "end":
173
- return _context.stop();
174
- }
175
- }
176
- }, _callee, null, [[0, 10]]);
177
- })), {
178
- delay: 1000
179
- }));
180
- }
181
- };
182
- }).views(function (self) {
183
- var superTrackMenuItems = self.trackMenuItems;
184
- return {
185
- get TooltipComponent() {
186
- return _Tooltip.default;
187
- },
188
-
189
- get adapterConfig() {
190
- var subadapter = (0, _configuration.getConf)(self.parentTrack, 'adapter');
105
+ .volatile(function () { return ({
106
+ modificationTagMap: mobx_1.observable.map({}),
107
+ }); })
108
+ .actions(function (self) { return ({
109
+ setConfig: function (configuration) {
110
+ self.configuration = configuration;
111
+ },
112
+ setFilterBy: function (filter) {
113
+ self.filterBy = (0, mobx_state_tree_1.cast)(filter);
114
+ },
115
+ setColorBy: function (colorBy) {
116
+ self.colorBy = (0, mobx_state_tree_1.cast)(colorBy);
117
+ },
118
+ updateModificationColorMap: function (uniqueModifications) {
119
+ var colorPalette = ['red', 'blue', 'green', 'orange', 'purple'];
120
+ var i = 0;
121
+ uniqueModifications.forEach(function (value) {
122
+ if (!self.modificationTagMap.has(value)) {
123
+ var newColor = colorPalette[i++];
124
+ self.modificationTagMap.set(value, newColor);
125
+ }
126
+ });
127
+ },
128
+ }); })
129
+ .views(function (self) {
130
+ var superRenderProps = self.renderProps;
191
131
  return {
192
- type: 'SNPCoverageAdapter',
193
- subadapter: subadapter
132
+ get rendererConfig() {
133
+ var _a, _b, _c;
134
+ var configBlob = (0, configuration_1.getConf)(self, ['renderers', self.rendererTypeName]) || {};
135
+ return self.rendererType.configSchema.create(__assign(__assign({}, configBlob), { drawInterbaseCounts: (_a = self.drawInterbaseCounts) !== null && _a !== void 0 ? _a : configBlob.drawInterbaseCounts, drawIndicators: (_b = self.drawIndicators) !== null && _b !== void 0 ? _b : configBlob.drawIndicators, drawArcs: (_c = self.drawArcs) !== null && _c !== void 0 ? _c : configBlob.drawArcs }), (0, mobx_state_tree_1.getEnv)(self));
136
+ },
137
+ get drawArcsSetting() {
138
+ var _a;
139
+ return ((_a = self.drawArcs) !== null && _a !== void 0 ? _a : (0, configuration_1.readConfObject)(this.rendererConfig, 'drawArcs'));
140
+ },
141
+ get drawInterbaseCountsSetting() {
142
+ var _a;
143
+ return ((_a = self.drawInterbaseCounts) !== null && _a !== void 0 ? _a : (0, configuration_1.readConfObject)(this.rendererConfig, 'drawInterbaseCounts'));
144
+ },
145
+ get drawIndicatorsSetting() {
146
+ var _a;
147
+ return ((_a = self.drawIndicators) !== null && _a !== void 0 ? _a : (0, configuration_1.readConfObject)(this.rendererConfig, 'drawIndicators'));
148
+ },
149
+ get modificationsReady() {
150
+ var _a;
151
+ return ((_a = self.colorBy) === null || _a === void 0 ? void 0 : _a.type) === 'modifications'
152
+ ? Object.keys(JSON.parse(JSON.stringify(self.modificationTagMap)))
153
+ .length > 0
154
+ : true;
155
+ },
156
+ renderProps: function () {
157
+ var superProps = superRenderProps();
158
+ var colorBy = self.colorBy, filterBy = self.filterBy, modificationTagMap = self.modificationTagMap;
159
+ return __assign(__assign({}, superProps), { notReady: superProps.notReady || !this.modificationsReady, modificationTagMap: Object.fromEntries(modificationTagMap.toJSON()),
160
+ // must use getSnapshot because otherwise changes to e.g. just the
161
+ // colorBy.type are not read
162
+ colorBy: colorBy ? (0, mobx_state_tree_1.getSnapshot)(colorBy) : undefined, filterBy: filterBy ? (0, mobx_state_tree_1.getSnapshot)(filterBy) : undefined });
163
+ },
194
164
  };
195
- },
196
-
197
- get rendererTypeName() {
198
- return rendererTypes.get('snpcoverage');
199
- },
200
-
201
- get needsScalebar() {
202
- return true;
203
- },
204
-
205
- contextMenuItems: function contextMenuItems() {
206
- return [];
207
- },
208
- trackMenuItems: function trackMenuItems() {
209
- return [].concat((0, _toConsumableArray2.default)(superTrackMenuItems()), [{
210
- label: 'Draw insertion/clipping indicators',
211
- type: 'checkbox',
212
- checked: self.drawIndicatorsSetting,
213
- onClick: function onClick() {
214
- self.toggleDrawIndicators();
215
- }
216
- }, {
217
- label: 'Draw insertion/clipping counts',
218
- type: 'checkbox',
219
- checked: self.drawInterbaseCountsSetting,
220
- onClick: function onClick() {
221
- self.toggleDrawInterbaseCounts();
222
- }
223
- }, {
224
- label: 'Draw arcs',
225
- type: 'checkbox',
226
- checked: self.drawArcsSetting,
227
- onClick: function onClick() {
228
- self.toggleDrawArcs();
229
- }
230
- }]);
231
- }
232
- };
233
- });
165
+ })
166
+ .actions(function (self) { return ({
167
+ toggleDrawIndicators: function () {
168
+ self.drawIndicators = !self.drawIndicatorsSetting;
169
+ },
170
+ toggleDrawInterbaseCounts: function () {
171
+ self.drawInterbaseCounts = !self.drawInterbaseCountsSetting;
172
+ },
173
+ toggleDrawArcs: function () {
174
+ self.drawArcs = !self.drawArcsSetting;
175
+ },
176
+ afterAttach: function () {
177
+ var _this = this;
178
+ (0, mobx_state_tree_1.addDisposer)(self, (0, mobx_1.autorun)(function () { return __awaiter(_this, void 0, void 0, function () {
179
+ var colorBy, staticBlocks, vals, error_1;
180
+ return __generator(this, function (_a) {
181
+ switch (_a.label) {
182
+ case 0:
183
+ _a.trys.push([0, 3, , 4]);
184
+ colorBy = self.colorBy;
185
+ staticBlocks = (0, util_1.getContainingView)(self).staticBlocks;
186
+ if (!self.estimatedStatsReady) {
187
+ return [2 /*return*/];
188
+ }
189
+ if (self.regionTooLarge) {
190
+ return [2 /*return*/];
191
+ }
192
+ if (!((colorBy === null || colorBy === void 0 ? void 0 : colorBy.type) === 'modifications')) return [3 /*break*/, 2];
193
+ return [4 /*yield*/, (0, shared_1.getUniqueModificationValues)(self, (0, configuration_1.getConf)(self.parentTrack, 'adapter'), colorBy, staticBlocks)];
194
+ case 1:
195
+ vals = _a.sent();
196
+ self.updateModificationColorMap(vals);
197
+ _a.label = 2;
198
+ case 2: return [3 /*break*/, 4];
199
+ case 3:
200
+ error_1 = _a.sent();
201
+ console.error(error_1);
202
+ self.setError(error_1);
203
+ return [3 /*break*/, 4];
204
+ case 4: return [2 /*return*/];
205
+ }
206
+ });
207
+ }); }, { delay: 1000 }));
208
+ },
209
+ }); })
210
+ .views(function (self) {
211
+ var superTrackMenuItems = self.trackMenuItems;
212
+ return {
213
+ get TooltipComponent() {
214
+ return Tooltip_1.default;
215
+ },
216
+ get adapterConfig() {
217
+ var subadapter = (0, configuration_1.getConf)(self.parentTrack, 'adapter');
218
+ return {
219
+ type: 'SNPCoverageAdapter',
220
+ subadapter: subadapter,
221
+ };
222
+ },
223
+ get rendererTypeName() {
224
+ return rendererTypes.get('snpcoverage');
225
+ },
226
+ get needsScalebar() {
227
+ return true;
228
+ },
229
+ contextMenuItems: function () {
230
+ return [];
231
+ },
232
+ trackMenuItems: function () {
233
+ return __spreadArray(__spreadArray([], __read(superTrackMenuItems()), false), [
234
+ {
235
+ label: 'Draw insertion/clipping indicators',
236
+ type: 'checkbox',
237
+ checked: self.drawIndicatorsSetting,
238
+ onClick: function () {
239
+ self.toggleDrawIndicators();
240
+ },
241
+ },
242
+ {
243
+ label: 'Draw insertion/clipping counts',
244
+ type: 'checkbox',
245
+ checked: self.drawInterbaseCountsSetting,
246
+ onClick: function () {
247
+ self.toggleDrawInterbaseCounts();
248
+ },
249
+ },
250
+ {
251
+ label: 'Draw arcs',
252
+ type: 'checkbox',
253
+ checked: self.drawArcsSetting,
254
+ onClick: function () {
255
+ self.toggleDrawArcs();
256
+ },
257
+ },
258
+ ], false);
259
+ },
260
+ };
261
+ });
234
262
  };
235
-
236
- var _default = stateModelFactory;
237
- exports.default = _default;
263
+ exports.default = stateModelFactory;
264
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/LinearSNPCoverageDisplay/models/model.ts"],"names":[],"mappings":"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"}