@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.
- package/dist/bundle/__vite-browser-external-ENoMJThg.js +8 -0
- package/dist/bundle/_commonjsHelpers-QtkX90xp.js +30 -0
- package/dist/bundle/index-1QVesMzU.js +1074 -0
- package/dist/bundle/index-Cbz74kpR.js +638 -0
- package/dist/bundle/index-LD6yPc3X.js +515 -0
- package/dist/bundle/index-Pv3tKJ1W.js +2190 -0
- package/dist/bundle/index-UyrC0vvF.js +72 -0
- package/dist/bundle/index-Y-LdHNIz.js +501 -0
- package/dist/bundle/index-gn8bhQ8w.js +4050 -0
- package/dist/bundle/index-lmJu1tfP.js +1372 -0
- package/dist/bundle/index-z4Cs62EO.js +279 -0
- package/dist/bundle/index.es.js +6448 -20571
- package/dist/bundle/index.js +93 -112
- package/dist/bundle/long-Veu0zKh9.js +2382 -0
- package/dist/bundle/remoteFile-Ur-gRKsH.js +96 -0
- package/dist/schema.json +492 -108
- package/dist/src/data/collector.d.ts +11 -11
- package/dist/src/data/collector.d.ts.map +1 -1
- package/dist/src/data/collector.js +8 -8
- package/dist/src/data/dataFlow.d.ts +18 -18
- package/dist/src/data/dataFlow.d.ts.map +1 -1
- package/dist/src/data/dataFlow.js +7 -7
- package/dist/src/data/flowNode.d.ts +9 -9
- package/dist/src/data/flowNode.d.ts.map +1 -1
- package/dist/src/data/flowNode.js +5 -5
- package/dist/src/data/flowOptimizer.d.ts +11 -11
- package/dist/src/data/flowOptimizer.d.ts.map +1 -1
- package/dist/src/data/flowOptimizer.js +7 -7
- package/dist/src/data/flowTestUtils.d.ts +2 -2
- package/dist/src/data/flowTestUtils.d.ts.map +1 -1
- package/dist/src/data/flowTestUtils.js +1 -1
- package/dist/src/data/sources/dataSource.js +1 -1
- package/dist/src/data/sources/dataSourceFactory.d.ts +3 -3
- package/dist/src/data/sources/dataSourceFactory.d.ts.map +1 -1
- package/dist/src/data/sources/dataSourceFactory.js +20 -20
- package/dist/src/data/sources/dataUtils.d.ts +20 -20
- package/dist/src/data/sources/dataUtils.d.ts.map +1 -1
- package/dist/src/data/sources/dataUtils.js +11 -11
- package/dist/src/data/sources/dynamic/axisGenomeSource.d.ts +3 -3
- package/dist/src/data/sources/dynamic/axisGenomeSource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/axisGenomeSource.js +2 -2
- package/dist/src/data/sources/dynamic/axisTickSource.d.ts +6 -6
- package/dist/src/data/sources/dynamic/axisTickSource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/axisTickSource.js +4 -4
- package/dist/src/data/sources/dynamic/bamSource.d.ts +7 -13
- package/dist/src/data/sources/dynamic/bamSource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/bamSource.js +35 -27
- package/dist/src/data/sources/dynamic/bigBedSource.d.ts +9 -9
- package/dist/src/data/sources/dynamic/bigBedSource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/bigBedSource.js +31 -18
- package/dist/src/data/sources/dynamic/bigWigSource.d.ts +7 -7
- package/dist/src/data/sources/dynamic/bigWigSource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/bigWigSource.js +33 -26
- package/dist/src/data/sources/dynamic/gff3Source.d.ts +9 -0
- package/dist/src/data/sources/dynamic/gff3Source.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/gff3Source.js +17 -2
- package/dist/src/data/sources/dynamic/indexedFastaSource.d.ts +6 -9
- package/dist/src/data/sources/dynamic/indexedFastaSource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/indexedFastaSource.js +28 -18
- package/dist/src/data/sources/dynamic/singleAxisLazySource.d.ts +10 -10
- package/dist/src/data/sources/dynamic/singleAxisLazySource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/singleAxisLazySource.js +6 -6
- package/dist/src/data/sources/dynamic/tabixSource.d.ts +11 -8
- package/dist/src/data/sources/dynamic/tabixSource.d.ts.map +1 -1
- package/dist/src/data/sources/dynamic/tabixSource.js +31 -17
- package/dist/src/data/sources/inlineSource.d.ts +7 -7
- package/dist/src/data/sources/inlineSource.d.ts.map +1 -1
- package/dist/src/data/sources/inlineSource.js +5 -5
- package/dist/src/data/sources/namedSource.d.ts +9 -9
- package/dist/src/data/sources/namedSource.d.ts.map +1 -1
- package/dist/src/data/sources/namedSource.js +6 -6
- package/dist/src/data/sources/sequenceSource.d.ts +7 -7
- package/dist/src/data/sources/sequenceSource.d.ts.map +1 -1
- package/dist/src/data/sources/sequenceSource.js +4 -4
- package/dist/src/data/sources/urlSource.d.ts +7 -7
- package/dist/src/data/sources/urlSource.d.ts.map +1 -1
- package/dist/src/data/sources/urlSource.js +4 -4
- package/dist/src/data/transforms/aggregate.d.ts +3 -3
- package/dist/src/data/transforms/aggregate.d.ts.map +1 -1
- package/dist/src/data/transforms/aggregate.js +2 -2
- package/dist/src/data/transforms/clone.d.ts +2 -2
- package/dist/src/data/transforms/clone.d.ts.map +1 -1
- package/dist/src/data/transforms/clone.js +1 -1
- package/dist/src/data/transforms/coverage.d.ts +3 -3
- package/dist/src/data/transforms/coverage.d.ts.map +1 -1
- package/dist/src/data/transforms/coverage.js +1 -1
- package/dist/src/data/transforms/coverage.test.js +1 -1
- package/dist/src/data/transforms/filter.d.ts +3 -3
- package/dist/src/data/transforms/filter.d.ts.map +1 -1
- package/dist/src/data/transforms/filter.js +2 -2
- package/dist/src/data/transforms/filter.test.js +1 -1
- package/dist/src/data/transforms/filterScoredLabels.d.ts +4 -4
- package/dist/src/data/transforms/filterScoredLabels.d.ts.map +1 -1
- package/dist/src/data/transforms/filterScoredLabels.js +3 -3
- package/dist/src/data/transforms/flatten.d.ts +2 -2
- package/dist/src/data/transforms/flatten.d.ts.map +1 -1
- package/dist/src/data/transforms/flatten.js +3 -3
- package/dist/src/data/transforms/flatten.test.js +6 -6
- package/dist/src/data/transforms/flattenCompressedExons.d.ts +2 -2
- package/dist/src/data/transforms/flattenCompressedExons.d.ts.map +1 -1
- package/dist/src/data/transforms/flattenCompressedExons.js +1 -1
- package/dist/src/data/transforms/flattenDelimited.d.ts +2 -2
- package/dist/src/data/transforms/flattenDelimited.d.ts.map +1 -1
- package/dist/src/data/transforms/flattenDelimited.js +2 -2
- package/dist/src/data/transforms/flattenDelimited.test.js +5 -5
- package/dist/src/data/transforms/flattenSequence.d.ts +2 -2
- package/dist/src/data/transforms/flattenSequence.d.ts.map +1 -1
- package/dist/src/data/transforms/flattenSequence.js +1 -1
- package/dist/src/data/transforms/flattenSequence.test.js +1 -1
- package/dist/src/data/transforms/formula.d.ts +3 -3
- package/dist/src/data/transforms/formula.d.ts.map +1 -1
- package/dist/src/data/transforms/formula.js +2 -2
- package/dist/src/data/transforms/identifier.d.ts +3 -3
- package/dist/src/data/transforms/identifier.d.ts.map +1 -1
- package/dist/src/data/transforms/identifier.js +2 -2
- package/dist/src/data/transforms/linearizeGenomicCoordinate.d.ts +3 -3
- package/dist/src/data/transforms/linearizeGenomicCoordinate.d.ts.map +1 -1
- package/dist/src/data/transforms/linearizeGenomicCoordinate.js +2 -2
- package/dist/src/data/transforms/measureText.d.ts +2 -2
- package/dist/src/data/transforms/measureText.d.ts.map +1 -1
- package/dist/src/data/transforms/measureText.js +1 -1
- package/dist/src/data/transforms/pileup.d.ts +3 -3
- package/dist/src/data/transforms/pileup.d.ts.map +1 -1
- package/dist/src/data/transforms/pileup.js +1 -1
- package/dist/src/data/transforms/pileup.test.js +1 -1
- package/dist/src/data/transforms/project.d.ts +2 -2
- package/dist/src/data/transforms/project.d.ts.map +1 -1
- package/dist/src/data/transforms/project.js +1 -1
- package/dist/src/data/transforms/project.test.js +1 -1
- package/dist/src/data/transforms/regexExtract.d.ts +2 -2
- package/dist/src/data/transforms/regexExtract.d.ts.map +1 -1
- package/dist/src/data/transforms/regexExtract.js +1 -1
- package/dist/src/data/transforms/regexExtract.test.js +3 -3
- package/dist/src/data/transforms/regexFold.d.ts +2 -2
- package/dist/src/data/transforms/regexFold.d.ts.map +1 -1
- package/dist/src/data/transforms/regexFold.js +2 -2
- package/dist/src/data/transforms/regexFold.test.js +3 -3
- package/dist/src/data/transforms/sample.d.ts +2 -2
- package/dist/src/data/transforms/sample.d.ts.map +1 -1
- package/dist/src/data/transforms/sample.js +2 -2
- package/dist/src/data/transforms/stack.d.ts +3 -3
- package/dist/src/data/transforms/stack.d.ts.map +1 -1
- package/dist/src/data/transforms/stack.js +2 -2
- package/dist/src/data/transforms/stack.test.js +2 -2
- package/dist/src/data/transforms/transformFactory.d.ts +5 -5
- package/dist/src/data/transforms/transformFactory.d.ts.map +1 -1
- package/dist/src/data/transforms/transformFactory.js +3 -3
- package/dist/src/encoder/accessor.d.ts +6 -6
- package/dist/src/encoder/accessor.d.ts.map +1 -1
- package/dist/src/encoder/accessor.js +4 -4
- package/dist/src/encoder/encoder.d.ts +59 -59
- package/dist/src/encoder/encoder.d.ts.map +1 -1
- package/dist/src/encoder/encoder.js +40 -40
- package/dist/src/encoder/encoder.test.js +4 -4
- package/dist/src/fonts/bmFontManager.d.ts +7 -7
- package/dist/src/fonts/bmFontManager.d.ts.map +1 -1
- package/dist/src/fonts/bmFontManager.js +3 -3
- package/dist/src/fonts/bmFontMetrics.d.ts +6 -6
- package/dist/src/fonts/bmFontMetrics.d.ts.map +1 -1
- package/dist/src/fonts/bmFontMetrics.js +4 -4
- package/dist/src/genome/genome.d.ts +7 -7
- package/dist/src/genome/genome.d.ts.map +1 -1
- package/dist/src/genome/genome.js +2 -2
- package/dist/src/genome/genomeStore.d.ts +2 -2
- package/dist/src/genome/genomeStore.d.ts.map +1 -1
- package/dist/src/genome/genomeStore.js +1 -1
- package/dist/src/genome/locusFormat.d.ts +7 -7
- package/dist/src/genome/locusFormat.d.ts.map +1 -1
- package/dist/src/genome/locusFormat.js +4 -4
- package/dist/src/genome/scaleIndex.d.ts +1 -1
- package/dist/src/genome/scaleIndex.d.ts.map +1 -1
- package/dist/src/genome/scaleIndex.js +1 -1
- package/dist/src/genome/scaleLocus.d.ts +2 -2
- package/dist/src/genome/scaleLocus.d.ts.map +1 -1
- package/dist/src/genome/scaleLocus.js +3 -3
- package/dist/src/genomeSpy.d.ts +12 -12
- package/dist/src/genomeSpy.d.ts.map +1 -1
- package/dist/src/genomeSpy.js +51 -34
- package/dist/src/gl/arrayBuilder.d.ts.map +1 -1
- package/dist/src/gl/dataToVertices.d.ts +18 -18
- package/dist/src/gl/dataToVertices.d.ts.map +1 -1
- package/dist/src/gl/dataToVertices.js +10 -10
- package/dist/src/gl/webGLHelper.d.ts +4 -4
- package/dist/src/gl/webGLHelper.d.ts.map +1 -1
- package/dist/src/gl/webGLHelper.js +2 -2
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/marks/link.js +5 -5
- package/dist/src/marks/mark.d.ts +35 -32
- package/dist/src/marks/mark.d.ts.map +1 -1
- package/dist/src/marks/mark.js +26 -23
- package/dist/src/marks/markUtils.d.ts +10 -10
- package/dist/src/marks/markUtils.d.ts.map +1 -1
- package/dist/src/marks/markUtils.js +5 -5
- package/dist/src/marks/pointMark.d.ts +1 -1
- package/dist/src/marks/pointMark.d.ts.map +1 -1
- package/dist/src/marks/pointMark.js +7 -7
- package/dist/src/marks/rectMark.d.ts +2 -2
- package/dist/src/marks/rectMark.d.ts.map +1 -1
- package/dist/src/marks/rectMark.js +7 -7
- package/dist/src/marks/rule.js +6 -6
- package/dist/src/marks/text.d.ts +1 -1
- package/dist/src/marks/text.d.ts.map +1 -1
- package/dist/src/marks/text.js +6 -6
- package/dist/src/scale/colorUtils.d.ts +4 -4
- package/dist/src/scale/colorUtils.d.ts.map +1 -1
- package/dist/src/scale/colorUtils.js +2 -2
- package/dist/src/scale/glslScaleGenerator.d.ts +3 -3
- package/dist/src/scale/glslScaleGenerator.d.ts.map +1 -1
- package/dist/src/scale/glslScaleGenerator.js +2 -2
- package/dist/src/scale/scale.d.ts +3 -3
- package/dist/src/scale/scale.d.ts.map +1 -1
- package/dist/src/scale/scale.js +2 -2
- package/dist/src/scale/ticks.d.ts +4 -4
- package/dist/src/scale/ticks.js +4 -4
- package/dist/src/spec/axis.d.ts +1 -1
- package/dist/src/spec/channel.d.ts +2 -2
- package/dist/src/spec/data.d.ts +2 -2
- package/dist/src/spec/mark.d.ts +3 -3
- package/dist/src/spec/root.d.ts +2 -2
- package/dist/src/spec/sampleView.d.ts +5 -5
- package/dist/src/spec/scale.d.ts +1 -1
- package/dist/src/spec/title.d.ts +1 -1
- package/dist/src/spec/view.d.ts +36 -9
- package/dist/src/tooltip/dataTooltipHandler.js +1 -1
- package/dist/src/tooltip/refseqGeneTooltipHandler.d.ts.map +1 -1
- package/dist/src/tooltip/refseqGeneTooltipHandler.js +1 -1
- package/dist/src/tooltip/tooltipHandler.d.ts +1 -1
- package/dist/src/tooltip/tooltipHandler.d.ts.map +1 -1
- package/dist/src/tooltip/tooltipHandler.ts +1 -1
- package/dist/src/types/embedApi.d.ts +3 -3
- package/dist/src/types/encoder.d.ts +4 -4
- package/dist/src/types/flowBatch.d.ts +1 -1
- package/dist/src/types/rendering.d.ts +3 -3
- package/dist/src/types/scaleResolutionApi.d.ts +2 -2
- package/dist/src/types/viewContext.d.ts +41 -12
- package/dist/src/utils/animator.d.ts +2 -2
- package/dist/src/utils/animator.d.ts.map +1 -1
- package/dist/src/utils/animator.js +1 -1
- package/dist/src/utils/inertia.d.ts +3 -3
- package/dist/src/utils/inertia.d.ts.map +1 -1
- package/dist/src/utils/inertia.js +1 -1
- package/dist/src/utils/interactionEvent.d.ts +5 -5
- package/dist/src/utils/interactionEvent.d.ts.map +1 -1
- package/dist/src/utils/interactionEvent.js +2 -2
- package/dist/src/utils/trees.js +1 -1
- package/dist/src/view/axisGridView.d.ts +17 -16
- package/dist/src/view/axisGridView.d.ts.map +1 -1
- package/dist/src/view/axisGridView.js +24 -20
- package/dist/src/view/axisResolution.d.ts +10 -10
- package/dist/src/view/axisResolution.d.ts.map +1 -1
- package/dist/src/view/axisResolution.js +6 -6
- package/dist/src/view/axisResolution.test.js +1 -1
- package/dist/src/view/axisView.d.ts +18 -17
- package/dist/src/view/axisView.d.ts.map +1 -1
- package/dist/src/view/axisView.js +39 -35
- package/dist/src/view/concatView.d.ts +5 -5
- package/dist/src/view/concatView.d.ts.map +1 -1
- package/dist/src/view/concatView.js +23 -23
- package/dist/src/view/containerView.d.ts +10 -8
- package/dist/src/view/containerView.d.ts.map +1 -1
- package/dist/src/view/containerView.js +18 -13
- package/dist/src/view/facetView.d.ts +12 -12
- package/dist/src/view/facetView.d.ts.map +1 -1
- package/dist/src/view/facetView.js +19 -19
- package/dist/src/view/flowBuilder.d.ts +4 -4
- package/dist/src/view/flowBuilder.d.ts.map +1 -1
- package/dist/src/view/flowBuilder.js +13 -13
- package/dist/src/view/flowBuilder.test.js +7 -7
- package/dist/src/view/gridView.d.ts +63 -35
- package/dist/src/view/gridView.d.ts.map +1 -1
- package/dist/src/view/gridView.js +400 -113
- package/dist/src/view/layerView.d.ts +12 -14
- package/dist/src/view/layerView.d.ts.map +1 -1
- package/dist/src/view/layerView.js +55 -26
- package/dist/src/{utils → view}/layout/flexLayout.d.ts +6 -6
- package/dist/src/view/layout/flexLayout.d.ts.map +1 -0
- package/dist/src/{utils → view}/layout/flexLayout.js +4 -4
- package/dist/src/view/layout/grid.d.ts.map +1 -0
- package/dist/src/{utils → view}/layout/padding.d.ts +4 -4
- package/dist/src/view/layout/padding.d.ts.map +1 -0
- package/dist/src/{utils → view}/layout/padding.js +2 -2
- package/dist/src/view/layout/point.d.ts.map +1 -0
- package/dist/src/{utils → view}/layout/rectangle.d.ts +8 -2
- package/dist/src/view/layout/rectangle.d.ts.map +1 -0
- package/dist/src/{utils → view}/layout/rectangle.js +22 -2
- package/dist/src/{utils → view}/layout/rectangle.test.js +8 -0
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts +10 -10
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.js +10 -10
- package/dist/src/view/renderingContext/compositeViewRenderingContext.d.ts +2 -2
- package/dist/src/view/renderingContext/compositeViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/compositeViewRenderingContext.js +4 -4
- package/dist/src/view/renderingContext/debuggingViewRenderingContext.d.ts +4 -4
- package/dist/src/view/renderingContext/debuggingViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/debuggingViewRenderingContext.js +3 -3
- package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.d.ts +8 -8
- package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.js +4 -4
- package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts +6 -6
- package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/simpleViewRenderingContext.js +7 -7
- package/dist/src/view/renderingContext/svgViewRenderingContext.d.ts +4 -4
- package/dist/src/view/renderingContext/svgViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/svgViewRenderingContext.js +6 -6
- package/dist/src/view/renderingContext/viewRenderingContext.d.ts +10 -10
- package/dist/src/view/renderingContext/viewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/viewRenderingContext.js +5 -5
- package/dist/src/view/scaleResolution.d.ts +21 -17
- package/dist/src/view/scaleResolution.d.ts.map +1 -1
- package/dist/src/view/scaleResolution.js +29 -24
- package/dist/src/view/scaleResolution.test.js +57 -72
- package/dist/src/view/testUtils.d.ts +6 -15
- package/dist/src/view/testUtils.d.ts.map +1 -1
- package/dist/src/view/testUtils.js +40 -44
- package/dist/src/view/title.d.ts +3 -3
- package/dist/src/view/title.d.ts.map +1 -1
- package/dist/src/view/title.js +12 -12
- package/dist/src/view/unitView.d.ts +31 -30
- package/dist/src/view/unitView.d.ts.map +1 -1
- package/dist/src/view/unitView.js +30 -22
- package/dist/src/view/view.d.ts +86 -57
- package/dist/src/view/view.d.ts.map +1 -1
- package/dist/src/view/view.js +148 -103
- package/dist/src/view/view.test.js +9 -8
- package/dist/src/view/viewError.d.ts +9 -0
- package/dist/src/view/viewError.d.ts.map +1 -0
- package/dist/src/view/viewError.js +11 -0
- package/dist/src/view/viewFactory.d.ts +53 -20
- package/dist/src/view/viewFactory.d.ts.map +1 -1
- package/dist/src/view/viewFactory.js +148 -33
- package/dist/src/view/viewFactory.test.js +8 -0
- package/dist/src/view/viewUtils.d.ts +14 -12
- package/dist/src/view/viewUtils.d.ts.map +1 -1
- package/dist/src/view/viewUtils.js +10 -63
- package/dist/src/view/zoom.d.ts +4 -4
- package/dist/src/view/zoom.d.ts.map +1 -1
- package/dist/src/view/zoom.js +3 -3
- package/package.json +7 -5
- package/dist/src/utils/layout/flexLayout.d.ts.map +0 -1
- package/dist/src/utils/layout/grid.d.ts.map +0 -1
- package/dist/src/utils/layout/padding.d.ts.map +0 -1
- package/dist/src/utils/layout/point.d.ts.map +0 -1
- package/dist/src/utils/layout/rectangle.d.ts.map +0 -1
- package/dist/src/view/implicitRootView.d.ts +0 -9
- package/dist/src/view/implicitRootView.d.ts.map +0 -1
- package/dist/src/view/implicitRootView.js +0 -23
- package/dist/src/view/importView.d.ts +0 -17
- package/dist/src/view/importView.d.ts.map +0 -1
- package/dist/src/view/importView.js +0 -22
- /package/dist/src/{utils → view}/layout/flexLayout.test.js +0 -0
- /package/dist/src/{utils → view}/layout/grid.d.ts +0 -0
- /package/dist/src/{utils → view}/layout/grid.js +0 -0
- /package/dist/src/{utils → view}/layout/grid.test.js +0 -0
- /package/dist/src/{utils → view}/layout/point.d.ts +0 -0
- /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
|
+
};
|