@genome-spy/core 0.37.4 → 0.38.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 (356) hide show
  1. package/dist/bundle/__vite-browser-external-ENoMJThg.js +8 -0
  2. package/dist/bundle/_commonjsHelpers-QtkX90xp.js +30 -0
  3. package/dist/bundle/index-1QVesMzU.js +1074 -0
  4. package/dist/bundle/index-Cbz74kpR.js +638 -0
  5. package/dist/bundle/index-LD6yPc3X.js +515 -0
  6. package/dist/bundle/index-Pv3tKJ1W.js +2190 -0
  7. package/dist/bundle/index-UyrC0vvF.js +72 -0
  8. package/dist/bundle/index-Y-LdHNIz.js +501 -0
  9. package/dist/bundle/index-gn8bhQ8w.js +4050 -0
  10. package/dist/bundle/index-lmJu1tfP.js +1372 -0
  11. package/dist/bundle/index-z4Cs62EO.js +279 -0
  12. package/dist/bundle/index.es.js +6448 -20571
  13. package/dist/bundle/index.js +93 -112
  14. package/dist/bundle/long-Veu0zKh9.js +2382 -0
  15. package/dist/bundle/remoteFile-Ur-gRKsH.js +96 -0
  16. package/dist/schema.json +492 -108
  17. package/dist/src/data/collector.d.ts +11 -11
  18. package/dist/src/data/collector.d.ts.map +1 -1
  19. package/dist/src/data/collector.js +8 -8
  20. package/dist/src/data/dataFlow.d.ts +18 -18
  21. package/dist/src/data/dataFlow.d.ts.map +1 -1
  22. package/dist/src/data/dataFlow.js +7 -7
  23. package/dist/src/data/flowNode.d.ts +9 -9
  24. package/dist/src/data/flowNode.d.ts.map +1 -1
  25. package/dist/src/data/flowNode.js +5 -5
  26. package/dist/src/data/flowOptimizer.d.ts +11 -11
  27. package/dist/src/data/flowOptimizer.d.ts.map +1 -1
  28. package/dist/src/data/flowOptimizer.js +7 -7
  29. package/dist/src/data/flowTestUtils.d.ts +2 -2
  30. package/dist/src/data/flowTestUtils.d.ts.map +1 -1
  31. package/dist/src/data/flowTestUtils.js +1 -1
  32. package/dist/src/data/sources/dataSource.js +1 -1
  33. package/dist/src/data/sources/dataSourceFactory.d.ts +3 -3
  34. package/dist/src/data/sources/dataSourceFactory.d.ts.map +1 -1
  35. package/dist/src/data/sources/dataSourceFactory.js +20 -20
  36. package/dist/src/data/sources/dataUtils.d.ts +20 -20
  37. package/dist/src/data/sources/dataUtils.d.ts.map +1 -1
  38. package/dist/src/data/sources/dataUtils.js +11 -11
  39. package/dist/src/data/sources/dynamic/axisGenomeSource.d.ts +3 -3
  40. package/dist/src/data/sources/dynamic/axisGenomeSource.d.ts.map +1 -1
  41. package/dist/src/data/sources/dynamic/axisGenomeSource.js +2 -2
  42. package/dist/src/data/sources/dynamic/axisTickSource.d.ts +6 -6
  43. package/dist/src/data/sources/dynamic/axisTickSource.d.ts.map +1 -1
  44. package/dist/src/data/sources/dynamic/axisTickSource.js +4 -4
  45. package/dist/src/data/sources/dynamic/bamSource.d.ts +7 -13
  46. package/dist/src/data/sources/dynamic/bamSource.d.ts.map +1 -1
  47. package/dist/src/data/sources/dynamic/bamSource.js +35 -27
  48. package/dist/src/data/sources/dynamic/bigBedSource.d.ts +9 -9
  49. package/dist/src/data/sources/dynamic/bigBedSource.d.ts.map +1 -1
  50. package/dist/src/data/sources/dynamic/bigBedSource.js +31 -18
  51. package/dist/src/data/sources/dynamic/bigWigSource.d.ts +7 -7
  52. package/dist/src/data/sources/dynamic/bigWigSource.d.ts.map +1 -1
  53. package/dist/src/data/sources/dynamic/bigWigSource.js +33 -26
  54. package/dist/src/data/sources/dynamic/gff3Source.d.ts +9 -0
  55. package/dist/src/data/sources/dynamic/gff3Source.d.ts.map +1 -1
  56. package/dist/src/data/sources/dynamic/gff3Source.js +17 -2
  57. package/dist/src/data/sources/dynamic/indexedFastaSource.d.ts +6 -9
  58. package/dist/src/data/sources/dynamic/indexedFastaSource.d.ts.map +1 -1
  59. package/dist/src/data/sources/dynamic/indexedFastaSource.js +28 -18
  60. package/dist/src/data/sources/dynamic/singleAxisLazySource.d.ts +10 -10
  61. package/dist/src/data/sources/dynamic/singleAxisLazySource.d.ts.map +1 -1
  62. package/dist/src/data/sources/dynamic/singleAxisLazySource.js +6 -6
  63. package/dist/src/data/sources/dynamic/tabixSource.d.ts +11 -8
  64. package/dist/src/data/sources/dynamic/tabixSource.d.ts.map +1 -1
  65. package/dist/src/data/sources/dynamic/tabixSource.js +31 -17
  66. package/dist/src/data/sources/inlineSource.d.ts +7 -7
  67. package/dist/src/data/sources/inlineSource.d.ts.map +1 -1
  68. package/dist/src/data/sources/inlineSource.js +5 -5
  69. package/dist/src/data/sources/namedSource.d.ts +9 -9
  70. package/dist/src/data/sources/namedSource.d.ts.map +1 -1
  71. package/dist/src/data/sources/namedSource.js +6 -6
  72. package/dist/src/data/sources/sequenceSource.d.ts +7 -7
  73. package/dist/src/data/sources/sequenceSource.d.ts.map +1 -1
  74. package/dist/src/data/sources/sequenceSource.js +4 -4
  75. package/dist/src/data/sources/urlSource.d.ts +7 -7
  76. package/dist/src/data/sources/urlSource.d.ts.map +1 -1
  77. package/dist/src/data/sources/urlSource.js +4 -4
  78. package/dist/src/data/transforms/aggregate.d.ts +3 -3
  79. package/dist/src/data/transforms/aggregate.d.ts.map +1 -1
  80. package/dist/src/data/transforms/aggregate.js +2 -2
  81. package/dist/src/data/transforms/clone.d.ts +2 -2
  82. package/dist/src/data/transforms/clone.d.ts.map +1 -1
  83. package/dist/src/data/transforms/clone.js +1 -1
  84. package/dist/src/data/transforms/coverage.d.ts +3 -3
  85. package/dist/src/data/transforms/coverage.d.ts.map +1 -1
  86. package/dist/src/data/transforms/coverage.js +1 -1
  87. package/dist/src/data/transforms/coverage.test.js +1 -1
  88. package/dist/src/data/transforms/filter.d.ts +3 -3
  89. package/dist/src/data/transforms/filter.d.ts.map +1 -1
  90. package/dist/src/data/transforms/filter.js +2 -2
  91. package/dist/src/data/transforms/filter.test.js +1 -1
  92. package/dist/src/data/transforms/filterScoredLabels.d.ts +4 -4
  93. package/dist/src/data/transforms/filterScoredLabels.d.ts.map +1 -1
  94. package/dist/src/data/transforms/filterScoredLabels.js +3 -3
  95. package/dist/src/data/transforms/flatten.d.ts +2 -2
  96. package/dist/src/data/transforms/flatten.d.ts.map +1 -1
  97. package/dist/src/data/transforms/flatten.js +3 -3
  98. package/dist/src/data/transforms/flatten.test.js +6 -6
  99. package/dist/src/data/transforms/flattenCompressedExons.d.ts +2 -2
  100. package/dist/src/data/transforms/flattenCompressedExons.d.ts.map +1 -1
  101. package/dist/src/data/transforms/flattenCompressedExons.js +1 -1
  102. package/dist/src/data/transforms/flattenDelimited.d.ts +2 -2
  103. package/dist/src/data/transforms/flattenDelimited.d.ts.map +1 -1
  104. package/dist/src/data/transforms/flattenDelimited.js +2 -2
  105. package/dist/src/data/transforms/flattenDelimited.test.js +5 -5
  106. package/dist/src/data/transforms/flattenSequence.d.ts +2 -2
  107. package/dist/src/data/transforms/flattenSequence.d.ts.map +1 -1
  108. package/dist/src/data/transforms/flattenSequence.js +1 -1
  109. package/dist/src/data/transforms/flattenSequence.test.js +1 -1
  110. package/dist/src/data/transforms/formula.d.ts +3 -3
  111. package/dist/src/data/transforms/formula.d.ts.map +1 -1
  112. package/dist/src/data/transforms/formula.js +2 -2
  113. package/dist/src/data/transforms/identifier.d.ts +3 -3
  114. package/dist/src/data/transforms/identifier.d.ts.map +1 -1
  115. package/dist/src/data/transforms/identifier.js +2 -2
  116. package/dist/src/data/transforms/linearizeGenomicCoordinate.d.ts +3 -3
  117. package/dist/src/data/transforms/linearizeGenomicCoordinate.d.ts.map +1 -1
  118. package/dist/src/data/transforms/linearizeGenomicCoordinate.js +2 -2
  119. package/dist/src/data/transforms/measureText.d.ts +2 -2
  120. package/dist/src/data/transforms/measureText.d.ts.map +1 -1
  121. package/dist/src/data/transforms/measureText.js +1 -1
  122. package/dist/src/data/transforms/pileup.d.ts +3 -3
  123. package/dist/src/data/transforms/pileup.d.ts.map +1 -1
  124. package/dist/src/data/transforms/pileup.js +1 -1
  125. package/dist/src/data/transforms/pileup.test.js +1 -1
  126. package/dist/src/data/transforms/project.d.ts +2 -2
  127. package/dist/src/data/transforms/project.d.ts.map +1 -1
  128. package/dist/src/data/transforms/project.js +1 -1
  129. package/dist/src/data/transforms/project.test.js +1 -1
  130. package/dist/src/data/transforms/regexExtract.d.ts +2 -2
  131. package/dist/src/data/transforms/regexExtract.d.ts.map +1 -1
  132. package/dist/src/data/transforms/regexExtract.js +1 -1
  133. package/dist/src/data/transforms/regexExtract.test.js +3 -3
  134. package/dist/src/data/transforms/regexFold.d.ts +2 -2
  135. package/dist/src/data/transforms/regexFold.d.ts.map +1 -1
  136. package/dist/src/data/transforms/regexFold.js +2 -2
  137. package/dist/src/data/transforms/regexFold.test.js +3 -3
  138. package/dist/src/data/transforms/sample.d.ts +2 -2
  139. package/dist/src/data/transforms/sample.d.ts.map +1 -1
  140. package/dist/src/data/transforms/sample.js +2 -2
  141. package/dist/src/data/transforms/stack.d.ts +3 -3
  142. package/dist/src/data/transforms/stack.d.ts.map +1 -1
  143. package/dist/src/data/transforms/stack.js +2 -2
  144. package/dist/src/data/transforms/stack.test.js +2 -2
  145. package/dist/src/data/transforms/transformFactory.d.ts +5 -5
  146. package/dist/src/data/transforms/transformFactory.d.ts.map +1 -1
  147. package/dist/src/data/transforms/transformFactory.js +3 -3
  148. package/dist/src/encoder/accessor.d.ts +6 -6
  149. package/dist/src/encoder/accessor.d.ts.map +1 -1
  150. package/dist/src/encoder/accessor.js +4 -4
  151. package/dist/src/encoder/encoder.d.ts +59 -59
  152. package/dist/src/encoder/encoder.d.ts.map +1 -1
  153. package/dist/src/encoder/encoder.js +40 -40
  154. package/dist/src/encoder/encoder.test.js +4 -4
  155. package/dist/src/fonts/bmFontManager.d.ts +7 -7
  156. package/dist/src/fonts/bmFontManager.d.ts.map +1 -1
  157. package/dist/src/fonts/bmFontManager.js +3 -3
  158. package/dist/src/fonts/bmFontMetrics.d.ts +6 -6
  159. package/dist/src/fonts/bmFontMetrics.d.ts.map +1 -1
  160. package/dist/src/fonts/bmFontMetrics.js +4 -4
  161. package/dist/src/genome/genome.d.ts +7 -7
  162. package/dist/src/genome/genome.d.ts.map +1 -1
  163. package/dist/src/genome/genome.js +2 -2
  164. package/dist/src/genome/genomeStore.d.ts +2 -2
  165. package/dist/src/genome/genomeStore.d.ts.map +1 -1
  166. package/dist/src/genome/genomeStore.js +1 -1
  167. package/dist/src/genome/locusFormat.d.ts +7 -7
  168. package/dist/src/genome/locusFormat.d.ts.map +1 -1
  169. package/dist/src/genome/locusFormat.js +4 -4
  170. package/dist/src/genome/scaleIndex.d.ts +1 -1
  171. package/dist/src/genome/scaleIndex.d.ts.map +1 -1
  172. package/dist/src/genome/scaleIndex.js +1 -1
  173. package/dist/src/genome/scaleLocus.d.ts +2 -2
  174. package/dist/src/genome/scaleLocus.d.ts.map +1 -1
  175. package/dist/src/genome/scaleLocus.js +3 -3
  176. package/dist/src/genomeSpy.d.ts +12 -12
  177. package/dist/src/genomeSpy.d.ts.map +1 -1
  178. package/dist/src/genomeSpy.js +51 -34
  179. package/dist/src/gl/arrayBuilder.d.ts.map +1 -1
  180. package/dist/src/gl/dataToVertices.d.ts +18 -18
  181. package/dist/src/gl/dataToVertices.d.ts.map +1 -1
  182. package/dist/src/gl/dataToVertices.js +10 -10
  183. package/dist/src/gl/webGLHelper.d.ts +4 -4
  184. package/dist/src/gl/webGLHelper.d.ts.map +1 -1
  185. package/dist/src/gl/webGLHelper.js +2 -2
  186. package/dist/src/index.d.ts.map +1 -1
  187. package/dist/src/index.js +1 -1
  188. package/dist/src/marks/link.js +5 -5
  189. package/dist/src/marks/mark.d.ts +35 -32
  190. package/dist/src/marks/mark.d.ts.map +1 -1
  191. package/dist/src/marks/mark.js +26 -23
  192. package/dist/src/marks/markUtils.d.ts +10 -10
  193. package/dist/src/marks/markUtils.d.ts.map +1 -1
  194. package/dist/src/marks/markUtils.js +5 -5
  195. package/dist/src/marks/pointMark.d.ts +1 -1
  196. package/dist/src/marks/pointMark.d.ts.map +1 -1
  197. package/dist/src/marks/pointMark.js +7 -7
  198. package/dist/src/marks/rectMark.d.ts +2 -2
  199. package/dist/src/marks/rectMark.d.ts.map +1 -1
  200. package/dist/src/marks/rectMark.js +7 -7
  201. package/dist/src/marks/rule.js +6 -6
  202. package/dist/src/marks/text.d.ts +1 -1
  203. package/dist/src/marks/text.d.ts.map +1 -1
  204. package/dist/src/marks/text.js +6 -6
  205. package/dist/src/scale/colorUtils.d.ts +4 -4
  206. package/dist/src/scale/colorUtils.d.ts.map +1 -1
  207. package/dist/src/scale/colorUtils.js +2 -2
  208. package/dist/src/scale/glslScaleGenerator.d.ts +3 -3
  209. package/dist/src/scale/glslScaleGenerator.d.ts.map +1 -1
  210. package/dist/src/scale/glslScaleGenerator.js +2 -2
  211. package/dist/src/scale/scale.d.ts +3 -3
  212. package/dist/src/scale/scale.d.ts.map +1 -1
  213. package/dist/src/scale/scale.js +2 -2
  214. package/dist/src/scale/ticks.d.ts +4 -4
  215. package/dist/src/scale/ticks.js +4 -4
  216. package/dist/src/spec/axis.d.ts +1 -1
  217. package/dist/src/spec/channel.d.ts +2 -2
  218. package/dist/src/spec/data.d.ts +2 -2
  219. package/dist/src/spec/mark.d.ts +3 -3
  220. package/dist/src/spec/root.d.ts +2 -2
  221. package/dist/src/spec/sampleView.d.ts +5 -5
  222. package/dist/src/spec/scale.d.ts +1 -1
  223. package/dist/src/spec/title.d.ts +1 -1
  224. package/dist/src/spec/view.d.ts +36 -9
  225. package/dist/src/tooltip/dataTooltipHandler.js +1 -1
  226. package/dist/src/tooltip/refseqGeneTooltipHandler.d.ts.map +1 -1
  227. package/dist/src/tooltip/refseqGeneTooltipHandler.js +1 -1
  228. package/dist/src/tooltip/tooltipHandler.d.ts +1 -1
  229. package/dist/src/tooltip/tooltipHandler.d.ts.map +1 -1
  230. package/dist/src/tooltip/tooltipHandler.ts +1 -1
  231. package/dist/src/types/embedApi.d.ts +3 -3
  232. package/dist/src/types/encoder.d.ts +4 -4
  233. package/dist/src/types/flowBatch.d.ts +1 -1
  234. package/dist/src/types/rendering.d.ts +3 -3
  235. package/dist/src/types/scaleResolutionApi.d.ts +2 -2
  236. package/dist/src/types/viewContext.d.ts +41 -12
  237. package/dist/src/utils/animator.d.ts +2 -2
  238. package/dist/src/utils/animator.d.ts.map +1 -1
  239. package/dist/src/utils/animator.js +1 -1
  240. package/dist/src/utils/inertia.d.ts +3 -3
  241. package/dist/src/utils/inertia.d.ts.map +1 -1
  242. package/dist/src/utils/inertia.js +1 -1
  243. package/dist/src/utils/interactionEvent.d.ts +5 -5
  244. package/dist/src/utils/interactionEvent.d.ts.map +1 -1
  245. package/dist/src/utils/interactionEvent.js +2 -2
  246. package/dist/src/utils/trees.js +1 -1
  247. package/dist/src/view/axisGridView.d.ts +17 -16
  248. package/dist/src/view/axisGridView.d.ts.map +1 -1
  249. package/dist/src/view/axisGridView.js +24 -20
  250. package/dist/src/view/axisResolution.d.ts +10 -10
  251. package/dist/src/view/axisResolution.d.ts.map +1 -1
  252. package/dist/src/view/axisResolution.js +6 -6
  253. package/dist/src/view/axisResolution.test.js +1 -1
  254. package/dist/src/view/axisView.d.ts +18 -17
  255. package/dist/src/view/axisView.d.ts.map +1 -1
  256. package/dist/src/view/axisView.js +39 -35
  257. package/dist/src/view/concatView.d.ts +5 -5
  258. package/dist/src/view/concatView.d.ts.map +1 -1
  259. package/dist/src/view/concatView.js +23 -23
  260. package/dist/src/view/containerView.d.ts +10 -8
  261. package/dist/src/view/containerView.d.ts.map +1 -1
  262. package/dist/src/view/containerView.js +18 -13
  263. package/dist/src/view/facetView.d.ts +12 -12
  264. package/dist/src/view/facetView.d.ts.map +1 -1
  265. package/dist/src/view/facetView.js +19 -19
  266. package/dist/src/view/flowBuilder.d.ts +4 -4
  267. package/dist/src/view/flowBuilder.d.ts.map +1 -1
  268. package/dist/src/view/flowBuilder.js +13 -13
  269. package/dist/src/view/flowBuilder.test.js +7 -7
  270. package/dist/src/view/gridView.d.ts +63 -35
  271. package/dist/src/view/gridView.d.ts.map +1 -1
  272. package/dist/src/view/gridView.js +400 -113
  273. package/dist/src/view/layerView.d.ts +12 -14
  274. package/dist/src/view/layerView.d.ts.map +1 -1
  275. package/dist/src/view/layerView.js +55 -26
  276. package/dist/src/{utils → view}/layout/flexLayout.d.ts +6 -6
  277. package/dist/src/view/layout/flexLayout.d.ts.map +1 -0
  278. package/dist/src/{utils → view}/layout/flexLayout.js +4 -4
  279. package/dist/src/view/layout/grid.d.ts.map +1 -0
  280. package/dist/src/{utils → view}/layout/padding.d.ts +4 -4
  281. package/dist/src/view/layout/padding.d.ts.map +1 -0
  282. package/dist/src/{utils → view}/layout/padding.js +2 -2
  283. package/dist/src/view/layout/point.d.ts.map +1 -0
  284. package/dist/src/{utils → view}/layout/rectangle.d.ts +8 -2
  285. package/dist/src/view/layout/rectangle.d.ts.map +1 -0
  286. package/dist/src/{utils → view}/layout/rectangle.js +22 -2
  287. package/dist/src/{utils → view}/layout/rectangle.test.js +8 -0
  288. package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts +10 -10
  289. package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts.map +1 -1
  290. package/dist/src/view/renderingContext/bufferedViewRenderingContext.js +10 -10
  291. package/dist/src/view/renderingContext/compositeViewRenderingContext.d.ts +2 -2
  292. package/dist/src/view/renderingContext/compositeViewRenderingContext.d.ts.map +1 -1
  293. package/dist/src/view/renderingContext/compositeViewRenderingContext.js +4 -4
  294. package/dist/src/view/renderingContext/debuggingViewRenderingContext.d.ts +4 -4
  295. package/dist/src/view/renderingContext/debuggingViewRenderingContext.d.ts.map +1 -1
  296. package/dist/src/view/renderingContext/debuggingViewRenderingContext.js +3 -3
  297. package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.d.ts +8 -8
  298. package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.d.ts.map +1 -1
  299. package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.js +4 -4
  300. package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts +6 -6
  301. package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts.map +1 -1
  302. package/dist/src/view/renderingContext/simpleViewRenderingContext.js +7 -7
  303. package/dist/src/view/renderingContext/svgViewRenderingContext.d.ts +4 -4
  304. package/dist/src/view/renderingContext/svgViewRenderingContext.d.ts.map +1 -1
  305. package/dist/src/view/renderingContext/svgViewRenderingContext.js +6 -6
  306. package/dist/src/view/renderingContext/viewRenderingContext.d.ts +10 -10
  307. package/dist/src/view/renderingContext/viewRenderingContext.d.ts.map +1 -1
  308. package/dist/src/view/renderingContext/viewRenderingContext.js +5 -5
  309. package/dist/src/view/scaleResolution.d.ts +21 -17
  310. package/dist/src/view/scaleResolution.d.ts.map +1 -1
  311. package/dist/src/view/scaleResolution.js +29 -24
  312. package/dist/src/view/scaleResolution.test.js +57 -72
  313. package/dist/src/view/testUtils.d.ts +6 -15
  314. package/dist/src/view/testUtils.d.ts.map +1 -1
  315. package/dist/src/view/testUtils.js +40 -44
  316. package/dist/src/view/title.d.ts +3 -3
  317. package/dist/src/view/title.d.ts.map +1 -1
  318. package/dist/src/view/title.js +12 -12
  319. package/dist/src/view/unitView.d.ts +31 -30
  320. package/dist/src/view/unitView.d.ts.map +1 -1
  321. package/dist/src/view/unitView.js +30 -22
  322. package/dist/src/view/view.d.ts +86 -57
  323. package/dist/src/view/view.d.ts.map +1 -1
  324. package/dist/src/view/view.js +148 -103
  325. package/dist/src/view/view.test.js +9 -8
  326. package/dist/src/view/viewError.d.ts +9 -0
  327. package/dist/src/view/viewError.d.ts.map +1 -0
  328. package/dist/src/view/viewError.js +11 -0
  329. package/dist/src/view/viewFactory.d.ts +53 -20
  330. package/dist/src/view/viewFactory.d.ts.map +1 -1
  331. package/dist/src/view/viewFactory.js +148 -33
  332. package/dist/src/view/viewFactory.test.js +8 -0
  333. package/dist/src/view/viewUtils.d.ts +14 -12
  334. package/dist/src/view/viewUtils.d.ts.map +1 -1
  335. package/dist/src/view/viewUtils.js +10 -63
  336. package/dist/src/view/zoom.d.ts +4 -4
  337. package/dist/src/view/zoom.d.ts.map +1 -1
  338. package/dist/src/view/zoom.js +3 -3
  339. package/package.json +7 -5
  340. package/dist/src/utils/layout/flexLayout.d.ts.map +0 -1
  341. package/dist/src/utils/layout/grid.d.ts.map +0 -1
  342. package/dist/src/utils/layout/padding.d.ts.map +0 -1
  343. package/dist/src/utils/layout/point.d.ts.map +0 -1
  344. package/dist/src/utils/layout/rectangle.d.ts.map +0 -1
  345. package/dist/src/view/implicitRootView.d.ts +0 -9
  346. package/dist/src/view/implicitRootView.d.ts.map +0 -1
  347. package/dist/src/view/implicitRootView.js +0 -23
  348. package/dist/src/view/importView.d.ts +0 -17
  349. package/dist/src/view/importView.d.ts.map +0 -1
  350. package/dist/src/view/importView.js +0 -22
  351. /package/dist/src/{utils → view}/layout/flexLayout.test.js +0 -0
  352. /package/dist/src/{utils → view}/layout/grid.d.ts +0 -0
  353. /package/dist/src/{utils → view}/layout/grid.js +0 -0
  354. /package/dist/src/{utils → view}/layout/grid.test.js +0 -0
  355. /package/dist/src/{utils → view}/layout/point.d.ts +0 -0
  356. /package/dist/src/{utils → view}/layout/point.js +0 -0
@@ -0,0 +1,279 @@
1
+ import { L as g } from "./__vite-browser-external-ENoMJThg.js";
2
+ import { b as w } from "./index-1QVesMzU.js";
3
+ import { L as x, u as E } from "./long-Veu0zKh9.js";
4
+ import "./_commonjsHelpers-QtkX90xp.js";
5
+ const m = 1;
6
+ class _ {
7
+ constructor({ filehandle: e, path: t }) {
8
+ if (e)
9
+ this.filehandle = e;
10
+ else if (t)
11
+ this.filehandle = new g(t);
12
+ else
13
+ throw new TypeError("either filehandle or path must be defined");
14
+ }
15
+ _readLongWithOverflow(e, t = 0, i = !0) {
16
+ const n = x.fromBytesLE(e.slice(t, t + 8), i);
17
+ if (n.greaterThan(Number.MAX_SAFE_INTEGER) || n.lessThan(Number.MIN_SAFE_INTEGER))
18
+ throw new TypeError("integer overflow");
19
+ return n.toNumber();
20
+ }
21
+ _getIndex() {
22
+ return this.index || (this.index = this._readIndex()), this.index;
23
+ }
24
+ async _readIndex() {
25
+ let e = w.Buffer.allocUnsafe(8);
26
+ await this.filehandle.read(e, 0, 8, 0);
27
+ const t = this._readLongWithOverflow(e, 0, !0);
28
+ if (!t)
29
+ return [[0, 0]];
30
+ const i = new Array(t + 1);
31
+ i[0] = [0, 0];
32
+ const n = 8 * 2 * t;
33
+ if (n > Number.MAX_SAFE_INTEGER)
34
+ throw new TypeError("integer overflow");
35
+ e = w.Buffer.allocUnsafe(n), await this.filehandle.read(e, 0, n, 8);
36
+ for (let s = 0; s < t; s += 1) {
37
+ const r = this._readLongWithOverflow(e, s * 16), a = this._readLongWithOverflow(e, s * 16 + 8);
38
+ i[s + 1] = [r, a];
39
+ }
40
+ return i;
41
+ }
42
+ async getLastBlock() {
43
+ const e = await this._getIndex();
44
+ if (e.length)
45
+ return e[e.length - 1];
46
+ }
47
+ async getRelevantBlocksForRead(e, t) {
48
+ const i = t + e;
49
+ if (e === 0)
50
+ return [];
51
+ const n = await this._getIndex(), s = [], r = (h, u) => {
52
+ const p = h[m], b = u ? u[m] : 1 / 0;
53
+ return p <= t && b > t ? 0 : p < t ? -1 : 1;
54
+ };
55
+ let a = 0, f = n.length - 1, o = Math.floor(n.length / 2), d = r(n[o], n[o + 1]);
56
+ for (; d !== 0; )
57
+ d > 0 ? f = o - 1 : d < 0 && (a = o + 1), o = Math.ceil((f - a) / 2) + a, d = r(n[o], n[o + 1]);
58
+ s.push(n[o]);
59
+ let c = o + 1;
60
+ for (; c < n.length && (s.push(n[c]), !(n[c][m] >= i)); c += 1)
61
+ ;
62
+ return s[s.length - 1][m] < i && s.push([]), s;
63
+ }
64
+ }
65
+ class y {
66
+ constructor({ filehandle: e, path: t, gziFilehandle: i, gziPath: n }) {
67
+ if (e)
68
+ this.filehandle = e;
69
+ else if (t)
70
+ this.filehandle = new g(t);
71
+ else
72
+ throw new TypeError("either filehandle or path must be defined");
73
+ if (!i && !n && !t)
74
+ throw new TypeError("either gziFilehandle or gziPath must be defined");
75
+ this.gzi = new _({
76
+ filehandle: i,
77
+ path: !i && !n && t ? n : `${t}.gzi`
78
+ });
79
+ }
80
+ async stat() {
81
+ const e = await this.filehandle.stat();
82
+ return Object.assign(e, {
83
+ size: await this.getUncompressedFileSize(),
84
+ blocks: void 0,
85
+ blksize: void 0
86
+ });
87
+ }
88
+ async getUncompressedFileSize() {
89
+ const [, e] = await this.gzi.getLastBlock(), { size: t } = await this.filehandle.stat(), i = w.Buffer.allocUnsafe(4), { bytesRead: n } = await this.filehandle.read(i, 0, 4, t - 28 - 4);
90
+ if (n !== 4)
91
+ throw new Error("read error");
92
+ const s = i.readUInt32LE(0);
93
+ return e + s;
94
+ }
95
+ async _readAndUncompressBlock(e, [t], [i]) {
96
+ let n = i;
97
+ n || (n = (await this.filehandle.stat()).size);
98
+ const s = n - t;
99
+ return await this.filehandle.read(e, 0, s, t), await E(e.slice(0, s));
100
+ }
101
+ async read(e, t, i, n) {
102
+ const s = await this.gzi.getRelevantBlocksForRead(i, n), r = w.Buffer.allocUnsafe(32768 * 2);
103
+ let a = t, f = 0;
104
+ for (let o = 0; o < s.length - 1; o += 1) {
105
+ const d = await this._readAndUncompressBlock(r, s[o], s[o + 1]), [, c] = s[o], h = c >= n ? 0 : n - c, u = Math.min(n + i, c + d.length) - c;
106
+ h >= 0 && h < d.length && (d.copy(e, a, h, u), a += u - h, f += u - h);
107
+ }
108
+ return { bytesRead: f, buffer: e };
109
+ }
110
+ }
111
+ function S(l, e) {
112
+ return l.offset + l.lineBytes * Math.floor(e / l.lineLength) + e % l.lineLength;
113
+ }
114
+ async function I(l, e) {
115
+ const t = await l.readFile(e);
116
+ if (!(t && t.length))
117
+ throw new Error("No data read from FASTA index (FAI) file");
118
+ let i = 0, n;
119
+ const s = t.toString("utf8").split(/\r?\n/).filter((r) => /\S/.test(r)).map((r) => r.split(" ")).filter((r) => r[0] !== "").map((r) => ((!n || n.name !== r[0]) && (n = { name: r[0], id: i }, i += 1), {
120
+ id: n.id,
121
+ name: r[0],
122
+ length: +r[1],
123
+ start: 0,
124
+ end: +r[1],
125
+ offset: +r[2],
126
+ lineLength: +r[3],
127
+ lineBytes: +r[4]
128
+ }));
129
+ return {
130
+ name: Object.fromEntries(s.map((r) => [r.name, r])),
131
+ id: Object.fromEntries(s.map((r) => [r.id, r]))
132
+ };
133
+ }
134
+ class B {
135
+ constructor({ fasta: e, fai: t, path: i, faiPath: n, chunkSizeLimit: s = 1e6 }) {
136
+ if (e)
137
+ this.fasta = e;
138
+ else if (i)
139
+ this.fasta = new g(i);
140
+ else
141
+ throw new Error("Need to pass filehandle for fasta or path to localfile");
142
+ if (t)
143
+ this.fai = t;
144
+ else if (n)
145
+ this.fai = new g(n);
146
+ else if (i)
147
+ this.fai = new g(`${i}.fai`);
148
+ else
149
+ throw new Error("Need to pass filehandle for or path to localfile");
150
+ this.chunkSizeLimit = s;
151
+ }
152
+ async _getIndexes(e) {
153
+ return this.indexes || (this.indexes = I(this.fai, e)), this.indexes;
154
+ }
155
+ /**
156
+ * @returns {array[string]} array of string sequence
157
+ * names that are present in the index, in which the
158
+ * array index indicates the sequence ID, and the value
159
+ * is the sequence name
160
+ */
161
+ async getSequenceNames(e) {
162
+ return Object.keys((await this._getIndexes(e)).name);
163
+ }
164
+ /**
165
+ * @returns {array[string]} array of string sequence
166
+ * names that are present in the index, in which the
167
+ * array index indicates the sequence ID, and the value
168
+ * is the sequence name
169
+ */
170
+ async getSequenceSizes(e) {
171
+ const t = {}, i = await this._getIndexes(e), n = Object.values(i.id);
172
+ for (let s = 0; s < n.length; s += 1)
173
+ t[n[s].name] = n[s].length;
174
+ return t;
175
+ }
176
+ /**
177
+ * @returns {array[string]} array of string sequence
178
+ * names that are present in the index, in which the
179
+ * array index indicates the sequence ID, and the value
180
+ * is the sequence name
181
+ */
182
+ async getSequenceSize(e, t) {
183
+ var i;
184
+ return (i = (await this._getIndexes(t)).name[e]) === null || i === void 0 ? void 0 : i.length;
185
+ }
186
+ /**
187
+ *
188
+ * @param {string} name
189
+ * @returns {Promise[boolean]} true if the file contains the given reference sequence name
190
+ */
191
+ async hasReferenceSequence(e, t) {
192
+ return !!(await this._getIndexes(t)).name[e];
193
+ }
194
+ /**
195
+ *
196
+ * @param {number} seqId
197
+ * @param {number} min
198
+ * @param {number} max
199
+ */
200
+ async getResiduesById(e, t, i, n) {
201
+ const s = (await this._getIndexes(n)).id[e];
202
+ if (s)
203
+ return this._fetchFromIndexEntry(s, t, i, n);
204
+ }
205
+ /**
206
+ * @param {string} seqName
207
+ * @param {number} min
208
+ * @param {number} max
209
+ */
210
+ async getResiduesByName(e, t, i, n) {
211
+ const s = (await this._getIndexes(n)).name[e];
212
+ if (s)
213
+ return this._fetchFromIndexEntry(s, t, i, n);
214
+ }
215
+ //alias for getResiduesByName
216
+ async getSequence(e, t, i, n) {
217
+ return this.getResiduesByName(e, t, i, n);
218
+ }
219
+ async _fetchFromIndexEntry(e, t = 0, i, n) {
220
+ let s = i;
221
+ if (t < 0)
222
+ throw new TypeError("regionStart cannot be less than 0");
223
+ if ((s === void 0 || s > e.length) && (s = e.length), t >= s)
224
+ return "";
225
+ const r = S(e, t), a = S(e, s) - r;
226
+ if (a > this.chunkSizeLimit)
227
+ throw new Error(`data size of ${a.toLocaleString()} bytes exceeded chunk size limit of ${this.chunkSizeLimit.toLocaleString()} bytes`);
228
+ const f = Buffer.allocUnsafe(a);
229
+ return await this.fasta.read(f, 0, a, r, n), f.toString("utf8").replace(/\s+/g, "");
230
+ }
231
+ }
232
+ class O extends B {
233
+ constructor({ fasta: e, path: t, fai: i, faiPath: n, gzi: s, gziPath: r, chunkSizeLimit: a }) {
234
+ super({ fasta: e, path: t, fai: i, faiPath: n, chunkSizeLimit: a }), e && s ? this.fasta = new y({
235
+ filehandle: e,
236
+ gziFilehandle: s
237
+ }) : t && r && (this.fasta = new y({ path: t, gziPath: r }));
238
+ }
239
+ }
240
+ function L(l) {
241
+ return l.split(">").filter((e) => /\S/.test(e)).map((e) => {
242
+ const [t, ...i] = e.split(`
243
+ `), [n, ...s] = t.split(" "), r = i.join("").replace(/\s/g, "");
244
+ return {
245
+ id: n,
246
+ description: s.join(" "),
247
+ sequence: r
248
+ };
249
+ });
250
+ }
251
+ class v {
252
+ constructor({ fasta: e, path: t }) {
253
+ if (e)
254
+ this.fasta = e;
255
+ else if (t)
256
+ this.fasta = new g(t);
257
+ else
258
+ throw new Error("Need to pass fasta or path");
259
+ this.data = this.fasta.readFile().then((i) => {
260
+ const n = i.toString("utf8");
261
+ return L(n);
262
+ });
263
+ }
264
+ async fetch(e, t, i) {
265
+ const s = (await this.data).find((a) => a.id === e), r = i - t;
266
+ if (!s)
267
+ throw new Error(`no sequence with id ${e} exists`);
268
+ return s.sequence.substr(t, r);
269
+ }
270
+ async getSequenceNames() {
271
+ return (await this.data).map((t) => t.id);
272
+ }
273
+ }
274
+ export {
275
+ O as BgzipIndexedFasta,
276
+ v as FetchableSmallFasta,
277
+ B as IndexedFasta,
278
+ L as parseSmallFasta
279
+ };