@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
|
@@ -2,20 +2,20 @@
|
|
|
2
2
|
* Validates data source params, infers format if not specified explicitly,
|
|
3
3
|
* returns a complete DataSource params object.
|
|
4
4
|
*
|
|
5
|
-
* @param {import("../../spec/data").DataSource} params
|
|
5
|
+
* @param {import("../../spec/data.js").DataSource} params
|
|
6
6
|
* DataSource parameters
|
|
7
7
|
*/
|
|
8
|
-
export function getFormat(params: import("../../spec/data").DataSource): {
|
|
8
|
+
export function getFormat(params: import("../../spec/data.js").DataSource): {
|
|
9
9
|
type?: "csv" | "tsv";
|
|
10
|
-
parse?: import("../../spec/data").Parse;
|
|
10
|
+
parse?: import("../../spec/data.js").Parse;
|
|
11
11
|
} | {
|
|
12
12
|
type?: "dsv";
|
|
13
13
|
delimiter: string;
|
|
14
|
-
parse?: import("../../spec/data").Parse;
|
|
14
|
+
parse?: import("../../spec/data.js").Parse;
|
|
15
15
|
} | {
|
|
16
16
|
type?: "json";
|
|
17
17
|
property?: string;
|
|
18
|
-
parse?: import("../../spec/data").Parse;
|
|
18
|
+
parse?: import("../../spec/data.js").Parse;
|
|
19
19
|
} | {
|
|
20
20
|
type: string;
|
|
21
21
|
};
|
|
@@ -24,27 +24,27 @@ export function getFormat(params: import("../../spec/data").DataSource): {
|
|
|
24
24
|
*/
|
|
25
25
|
export function extractTypeFromUrl(url: string | string[]): string;
|
|
26
26
|
/**
|
|
27
|
-
* @param {import("../../spec/data").DataFormat} dataFormat
|
|
28
|
-
* @return {dataFormat is import("../../spec/data").CsvDataFormat}
|
|
27
|
+
* @param {import("../../spec/data.js").DataFormat} dataFormat
|
|
28
|
+
* @return {dataFormat is import("../../spec/data.js").CsvDataFormat}
|
|
29
29
|
*/
|
|
30
|
-
export function isCsvDataFormat(dataFormat: import("../../spec/data").DataFormat): dataFormat is import("../../spec/data").CsvDataFormat;
|
|
30
|
+
export function isCsvDataFormat(dataFormat: import("../../spec/data.js").DataFormat): dataFormat is import("../../spec/data.js").CsvDataFormat;
|
|
31
31
|
/**
|
|
32
|
-
* @param {import("../../spec/data").DataFormat} dataFormat
|
|
33
|
-
* @return {dataFormat is import("../../spec/data").DsvDataFormat}
|
|
32
|
+
* @param {import("../../spec/data.js").DataFormat} dataFormat
|
|
33
|
+
* @return {dataFormat is import("../../spec/data.js").DsvDataFormat}
|
|
34
34
|
*/
|
|
35
|
-
export function isDsvDataFormat(dataFormat: import("../../spec/data").DataFormat): dataFormat is import("../../spec/data").DsvDataFormat;
|
|
35
|
+
export function isDsvDataFormat(dataFormat: import("../../spec/data.js").DataFormat): dataFormat is import("../../spec/data.js").DsvDataFormat;
|
|
36
36
|
/**
|
|
37
|
-
* @param {import("../../spec/data").DataFormat} dataFormat
|
|
38
|
-
* @return {dataFormat is import("../../spec/data").JsonDataFormat}
|
|
37
|
+
* @param {import("../../spec/data.js").DataFormat} dataFormat
|
|
38
|
+
* @return {dataFormat is import("../../spec/data.js").JsonDataFormat}
|
|
39
39
|
*/
|
|
40
|
-
export function isJsonDataFormat(dataFormat: import("../../spec/data").DataFormat): dataFormat is import("../../spec/data").JsonDataFormat;
|
|
40
|
+
export function isJsonDataFormat(dataFormat: import("../../spec/data.js").DataFormat): dataFormat is import("../../spec/data.js").JsonDataFormat;
|
|
41
41
|
/**
|
|
42
42
|
*
|
|
43
|
-
* @param {import("../../spec/data").DataSource} dataSource
|
|
44
|
-
* @return {dataSource is import("../../spec/data").UrlData}
|
|
43
|
+
* @param {import("../../spec/data.js").DataSource} dataSource
|
|
44
|
+
* @return {dataSource is import("../../spec/data.js").UrlData}
|
|
45
45
|
*/
|
|
46
|
-
export function isUrlData(dataSource: import("../../spec/data").DataSource): dataSource is import("../../spec/data").UrlData;
|
|
47
|
-
export function makeWrapper(d: any): ((x: import("../../spec/channel").Scalar) => {
|
|
48
|
-
data: import("../../spec/channel").Scalar;
|
|
49
|
-
}) | ((x: import("../flowNode").Datum) => import("../flowNode").Datum);
|
|
46
|
+
export function isUrlData(dataSource: import("../../spec/data.js").DataSource): dataSource is import("../../spec/data.js").UrlData;
|
|
47
|
+
export function makeWrapper(d: any): ((x: import("../../spec/channel.js").Scalar) => {
|
|
48
|
+
data: import("../../spec/channel.js").Scalar;
|
|
49
|
+
}) | ((x: import("../flowNode.js").Datum) => import("../flowNode.js").Datum);
|
|
50
50
|
//# sourceMappingURL=dataUtils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataUtils.d.ts","sourceRoot":"","sources":["../../../../src/data/sources/dataUtils.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,kCAHW,OAAO,
|
|
1
|
+
{"version":3,"file":"dataUtils.d.ts","sourceRoot":"","sources":["../../../../src/data/sources/dataUtils.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,kCAHW,OAAO,oBAAoB,EAAE,UAAU;;;;;;;;;;;;;EAqBjD;AAED;;GAEG;AACH,wCAFW,MAAM,GAAG,MAAM,EAAE,UAU3B;AAWD;;;GAGG;AACH,4CAHW,OAAO,oBAAoB,EAAE,UAAU,4DAKjD;AAED;;;GAGG;AACH,4CAHW,OAAO,oBAAoB,EAAE,UAAU,4DAKjD;AAED;;;GAGG;AACH,6CAHW,OAAO,oBAAoB,EAAE,UAAU,6DAKjD;AAED;;;;GAIG;AACH,sCAHW,OAAO,oBAAoB,EAAE,UAAU,sDAKjD;AAxCM,+BAAgC,GAAG,QAI3B,OAAO,uBAAuB,EAAE,MAAM;;UAGtB,OAAO,gBAAgB,EAAE,KAAK,qCANR"}
|
|
@@ -4,7 +4,7 @@ import { isInlineData } from "./inlineSource.js";
|
|
|
4
4
|
* Validates data source params, infers format if not specified explicitly,
|
|
5
5
|
* returns a complete DataSource params object.
|
|
6
6
|
*
|
|
7
|
-
* @param {import("../../spec/data").DataSource} params
|
|
7
|
+
* @param {import("../../spec/data.js").DataSource} params
|
|
8
8
|
* DataSource parameters
|
|
9
9
|
*/
|
|
10
10
|
export function getFormat(params) {
|
|
@@ -44,30 +44,30 @@ export const makeWrapper = (/** @type {any} */ d) =>
|
|
|
44
44
|
typeof d != "object" ? scalarWrapper : nopWrapper;
|
|
45
45
|
|
|
46
46
|
const scalarWrapper = (
|
|
47
|
-
/** @type {import("../../spec/channel").Scalar} */ x
|
|
47
|
+
/** @type {import("../../spec/channel.js").Scalar} */ x
|
|
48
48
|
) => ({ data: x });
|
|
49
49
|
|
|
50
|
-
const nopWrapper = (/** @type {import("../flowNode").Datum} */ x) => x;
|
|
50
|
+
const nopWrapper = (/** @type {import("../flowNode.js").Datum} */ x) => x;
|
|
51
51
|
|
|
52
52
|
/**
|
|
53
|
-
* @param {import("../../spec/data").DataFormat} dataFormat
|
|
54
|
-
* @return {dataFormat is import("../../spec/data").CsvDataFormat}
|
|
53
|
+
* @param {import("../../spec/data.js").DataFormat} dataFormat
|
|
54
|
+
* @return {dataFormat is import("../../spec/data.js").CsvDataFormat}
|
|
55
55
|
*/
|
|
56
56
|
export function isCsvDataFormat(dataFormat) {
|
|
57
57
|
return dataFormat.type == "csv" || dataFormat.type == "tsv";
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
|
-
* @param {import("../../spec/data").DataFormat} dataFormat
|
|
62
|
-
* @return {dataFormat is import("../../spec/data").DsvDataFormat}
|
|
61
|
+
* @param {import("../../spec/data.js").DataFormat} dataFormat
|
|
62
|
+
* @return {dataFormat is import("../../spec/data.js").DsvDataFormat}
|
|
63
63
|
*/
|
|
64
64
|
export function isDsvDataFormat(dataFormat) {
|
|
65
65
|
return dataFormat.type == "dsv";
|
|
66
66
|
}
|
|
67
67
|
|
|
68
68
|
/**
|
|
69
|
-
* @param {import("../../spec/data").DataFormat} dataFormat
|
|
70
|
-
* @return {dataFormat is import("../../spec/data").JsonDataFormat}
|
|
69
|
+
* @param {import("../../spec/data.js").DataFormat} dataFormat
|
|
70
|
+
* @return {dataFormat is import("../../spec/data.js").JsonDataFormat}
|
|
71
71
|
*/
|
|
72
72
|
export function isJsonDataFormat(dataFormat) {
|
|
73
73
|
return dataFormat.type == "json";
|
|
@@ -75,8 +75,8 @@ export function isJsonDataFormat(dataFormat) {
|
|
|
75
75
|
|
|
76
76
|
/**
|
|
77
77
|
*
|
|
78
|
-
* @param {import("../../spec/data").DataSource} dataSource
|
|
79
|
-
* @return {dataSource is import("../../spec/data").UrlData}
|
|
78
|
+
* @param {import("../../spec/data.js").DataSource} dataSource
|
|
79
|
+
* @return {dataSource is import("../../spec/data.js").UrlData}
|
|
80
80
|
*/
|
|
81
81
|
export function isUrlData(dataSource) {
|
|
82
82
|
return "url" in dataSource;
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export default class AxisGenomeSource extends SingleAxisLazySource {
|
|
6
6
|
/**
|
|
7
|
-
* @param {import("../../../spec/data").AxisGenomeData} params
|
|
8
|
-
* @param {import("../../../view/view").default} view
|
|
7
|
+
* @param {import("../../../spec/data.js").AxisGenomeData} params
|
|
8
|
+
* @param {import("../../../view/view.js").default} view
|
|
9
9
|
*/
|
|
10
|
-
constructor(params: import("../../../spec/data").AxisGenomeData, view: import("../../../view/view").default);
|
|
10
|
+
constructor(params: import("../../../spec/data.js").AxisGenomeData, view: import("../../../view/view.js").default);
|
|
11
11
|
}
|
|
12
12
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
13
13
|
//# sourceMappingURL=axisGenomeSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axisGenomeSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/axisGenomeSource.js"],"names":[],"mappings":"AAEA;;;GAGG;AACH;IACI;;;OAGG;IACH,oBAHW,OAAO,
|
|
1
|
+
{"version":3,"file":"axisGenomeSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/axisGenomeSource.js"],"names":[],"mappings":"AAEA;;;GAGG;AACH;IACI;;;OAGG;IACH,oBAHW,OAAO,uBAAuB,EAAE,cAAc,QAC9C,OAAO,uBAAuB,EAAE,OAAO,EAIjD;CAKJ;iCAlBgC,2BAA2B"}
|
|
@@ -6,8 +6,8 @@ import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
|
6
6
|
*/
|
|
7
7
|
export default class AxisGenomeSource extends SingleAxisLazySource {
|
|
8
8
|
/**
|
|
9
|
-
* @param {import("../../../spec/data").AxisGenomeData} params
|
|
10
|
-
* @param {import("../../../view/view").default} view
|
|
9
|
+
* @param {import("../../../spec/data.js").AxisGenomeData} params
|
|
10
|
+
* @param {import("../../../view/view.js").default} view
|
|
11
11
|
*/
|
|
12
12
|
constructor(params, view) {
|
|
13
13
|
super(view, params.channel);
|
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export default class AxisTickSource extends SingleAxisLazySource {
|
|
5
5
|
/**
|
|
6
|
-
* @param {import("../../../spec/data").AxisTicksData} params
|
|
7
|
-
* @param {import("../../../view/view").default} view
|
|
6
|
+
* @param {import("../../../spec/data.js").AxisTicksData} params
|
|
7
|
+
* @param {import("../../../view/view.js").default} view
|
|
8
8
|
*/
|
|
9
|
-
constructor(params: import("../../../spec/data").AxisTicksData, view: import("../../../view/view").default);
|
|
9
|
+
constructor(params: import("../../../spec/data.js").AxisTicksData, view: import("../../../view/view.js").default);
|
|
10
10
|
/**
|
|
11
|
-
* @type {import("../../../spec/channel").Scalar[]}
|
|
11
|
+
* @type {import("../../../spec/channel.js").Scalar[]}
|
|
12
12
|
*/
|
|
13
|
-
ticks: import("../../../spec/channel").Scalar[];
|
|
14
|
-
params: import("../../../spec/data").AxisTicksData;
|
|
13
|
+
ticks: import("../../../spec/channel.js").Scalar[];
|
|
14
|
+
params: import("../../../spec/data.js").AxisTicksData;
|
|
15
15
|
onDomainChanged(): Promise<void>;
|
|
16
16
|
}
|
|
17
17
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axisTickSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/axisTickSource.js"],"names":[],"mappings":"AAYA;;GAEG;AACH;IAMI;;;OAGG;IACH,oBAHW,OAAO,
|
|
1
|
+
{"version":3,"file":"axisTickSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/axisTickSource.js"],"names":[],"mappings":"AAYA;;GAEG;AACH;IAMI;;;OAGG;IACH,oBAHW,OAAO,uBAAuB,EAAE,aAAa,QAC7C,OAAO,uBAAuB,EAAE,OAAO,EAYjD;IAnBD;;OAEG;IACH,OAFU,OAAO,0BAA0B,EAAE,MAAM,EAAE,CAE1C;IAeP,sDAAoB;IAGxB,iCAkCC;CACJ;iCA9DgC,2BAA2B"}
|
|
@@ -15,16 +15,16 @@ import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
|
15
15
|
*/
|
|
16
16
|
export default class AxisTickSource extends SingleAxisLazySource {
|
|
17
17
|
/**
|
|
18
|
-
* @type {import("../../../spec/channel").Scalar[]}
|
|
18
|
+
* @type {import("../../../spec/channel.js").Scalar[]}
|
|
19
19
|
*/
|
|
20
20
|
ticks = [];
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
|
-
* @param {import("../../../spec/data").AxisTicksData} params
|
|
24
|
-
* @param {import("../../../view/view").default} view
|
|
23
|
+
* @param {import("../../../spec/data.js").AxisTicksData} params
|
|
24
|
+
* @param {import("../../../view/view.js").default} view
|
|
25
25
|
*/
|
|
26
26
|
constructor(params, view) {
|
|
27
|
-
/** @type {import("../../../spec/data").AxisTicksData} params */
|
|
27
|
+
/** @type {import("../../../spec/data.js").AxisTicksData} params */
|
|
28
28
|
const paramsWithDefaults = {
|
|
29
29
|
axis: {},
|
|
30
30
|
...params,
|
|
@@ -8,12 +8,14 @@ declare const BamSource_base: {
|
|
|
8
8
|
} & typeof SingleAxisLazySource;
|
|
9
9
|
export default class BamSource extends BamSource_base {
|
|
10
10
|
/**
|
|
11
|
-
* @param {import("../../../spec/data").BamData} params
|
|
12
|
-
* @param {import("../../../view/view").default} view
|
|
11
|
+
* @param {import("../../../spec/data.js").BamData} params
|
|
12
|
+
* @param {import("../../../view/view.js").default} view
|
|
13
13
|
*/
|
|
14
|
-
constructor(params: import("../../../spec/data").BamData, view: import("../../../view/view").default);
|
|
14
|
+
constructor(params: import("../../../spec/data.js").BamData, view: import("../../../view/view.js").default);
|
|
15
15
|
/** Keep track of the order of the requests */
|
|
16
16
|
lastRequestId: number;
|
|
17
|
+
/** @type {import("@gmod/bam").BamFile} */
|
|
18
|
+
bam: import("@gmod/bam").BamFile;
|
|
17
19
|
/**
|
|
18
20
|
* Some BAM files lack the "chr" prefix on their reference names. For example:
|
|
19
21
|
* http://genome.ucsc.edu/goldenPath/help/examples/bamExample.bam
|
|
@@ -24,15 +26,8 @@ export default class BamSource extends BamSource_base {
|
|
|
24
26
|
* @type {(chr: string) => string}
|
|
25
27
|
*/
|
|
26
28
|
chrPrefixFixer: (chr: string) => string;
|
|
27
|
-
params: import("../../../spec/data").BamData;
|
|
28
|
-
|
|
29
|
-
headerPromise: Promise<{
|
|
30
|
-
tag: string;
|
|
31
|
-
data: {
|
|
32
|
-
tag: string;
|
|
33
|
-
value: string;
|
|
34
|
-
}[];
|
|
35
|
-
}[]>;
|
|
29
|
+
params: import("../../../spec/data.js").BamData;
|
|
30
|
+
initializedPromise: Promise<any>;
|
|
36
31
|
/**
|
|
37
32
|
* Listen to the domain change event and update data when the covered windows change.
|
|
38
33
|
*
|
|
@@ -41,6 +36,5 @@ export default class BamSource extends BamSource_base {
|
|
|
41
36
|
onDomainChanged(domain: number[]): Promise<void>;
|
|
42
37
|
}
|
|
43
38
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
44
|
-
import { BamFile } from "@gmod/bam";
|
|
45
39
|
export {};
|
|
46
40
|
//# sourceMappingURL=bamSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bamSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/bamSource.js"],"names":[],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"bamSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/bamSource.js"],"names":[],"mappings":";;;;;;;;AAIA;IAkBI;;;OAGG;IACH,oBAHW,OAAO,uBAAuB,EAAE,OAAO,QACvC,OAAO,uBAAuB,EAAE,OAAO,EA+CjD;IAlED,8CAA8C;IAC9C,sBAAkB;IAElB,0CAA0C;IAC1C,KADW,OAAO,WAAW,EAAE,OAAO,CAClC;IAEJ;;;;;;;;OAQG;IACH,sBAFgB,MAAM,KAAK,MAAM,CAEH;IAgB1B,gDAAgC;IAMhC,iCA4BE;IAGN;;;;OAIG;IACH,wBAFW,MAAM,EAAE,iBA6ClB;CACJ;iCA1HgC,2BAA2B"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import { RemoteFile } from "generic-filehandle";
|
|
2
|
-
import { BamFile } from "@gmod/bam";
|
|
3
|
-
|
|
4
1
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
5
2
|
import windowedMixin from "./windowedMixin.js";
|
|
6
3
|
import addBaseUrl from "../../../utils/addBaseUrl.js";
|
|
@@ -9,6 +6,9 @@ export default class BamSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
9
6
|
/** Keep track of the order of the requests */
|
|
10
7
|
lastRequestId = 0;
|
|
11
8
|
|
|
9
|
+
/** @type {import("@gmod/bam").BamFile} */
|
|
10
|
+
bam;
|
|
11
|
+
|
|
12
12
|
/**
|
|
13
13
|
* Some BAM files lack the "chr" prefix on their reference names. For example:
|
|
14
14
|
* http://genome.ucsc.edu/goldenPath/help/examples/bamExample.bam
|
|
@@ -21,11 +21,11 @@ export default class BamSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
21
21
|
chrPrefixFixer = (chr) => chr;
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
|
-
* @param {import("../../../spec/data").BamData} params
|
|
25
|
-
* @param {import("../../../view/view").default} view
|
|
24
|
+
* @param {import("../../../spec/data.js").BamData} params
|
|
25
|
+
* @param {import("../../../view/view.js").default} view
|
|
26
26
|
*/
|
|
27
27
|
constructor(params, view) {
|
|
28
|
-
/** @type {import("../../../spec/data").BamData} */
|
|
28
|
+
/** @type {import("../../../spec/data.js").BamData} */
|
|
29
29
|
const paramsWithDefaults = {
|
|
30
30
|
channel: "x",
|
|
31
31
|
windowSize: 20000,
|
|
@@ -40,26 +40,34 @@ export default class BamSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
40
40
|
throw new Error("No URL provided for BamSource");
|
|
41
41
|
}
|
|
42
42
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
43
|
+
this.initializedPromise = new Promise((resolve) => {
|
|
44
|
+
Promise.all([
|
|
45
|
+
import("@gmod/bam"),
|
|
46
|
+
import("generic-filehandle"),
|
|
47
|
+
]).then(([{ BamFile }, { RemoteFile }]) => {
|
|
48
|
+
const withBase = (/** @type {string} */ uri) =>
|
|
49
|
+
new RemoteFile(addBaseUrl(uri, this.view.getBaseUrl()));
|
|
50
|
+
|
|
51
|
+
this.bam = new BamFile({
|
|
52
|
+
bamFilehandle: withBase(this.params.url),
|
|
53
|
+
baiFilehandle: withBase(
|
|
54
|
+
this.params.indexUrl ?? this.params.url + ".bai"
|
|
55
|
+
),
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
this.bam.getHeader().then((_header) => {
|
|
59
|
+
const g = this.genome.hasChrPrefix();
|
|
60
|
+
const b =
|
|
61
|
+
this.bam.indexToChr?.[0]?.refName.startsWith("chr");
|
|
62
|
+
if (g && !b) {
|
|
63
|
+
this.chrPrefixFixer = (chr) => chr.replace("chr", "");
|
|
64
|
+
} else if (!g && b) {
|
|
65
|
+
this.chrPrefixFixer = (chr) => "chr" + chr;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
resolve();
|
|
69
|
+
});
|
|
70
|
+
});
|
|
63
71
|
});
|
|
64
72
|
}
|
|
65
73
|
|
|
@@ -75,7 +83,7 @@ export default class BamSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
75
83
|
return;
|
|
76
84
|
}
|
|
77
85
|
|
|
78
|
-
await this.
|
|
86
|
+
await this.initializedPromise;
|
|
79
87
|
|
|
80
88
|
const quantizedInterval = this.quantizeInterval(domain, windowSize);
|
|
81
89
|
|
|
@@ -8,17 +8,19 @@ declare const BigBedSource_base: {
|
|
|
8
8
|
} & typeof SingleAxisLazySource;
|
|
9
9
|
export default class BigBedSource extends BigBedSource_base {
|
|
10
10
|
/**
|
|
11
|
-
* @param {import("../../../spec/data").BigBedData} params
|
|
12
|
-
* @param {import("../../../view/view").default} view
|
|
11
|
+
* @param {import("../../../spec/data.js").BigBedData} params
|
|
12
|
+
* @param {import("../../../view/view.js").default} view
|
|
13
13
|
*/
|
|
14
|
-
constructor(params: import("../../../spec/data").BigBedData, view: import("../../../view/view").default);
|
|
14
|
+
constructor(params: import("../../../spec/data.js").BigBedData, view: import("../../../view/view.js").default);
|
|
15
15
|
/** Keep track of the order of the requests */
|
|
16
16
|
lastRequestId: number;
|
|
17
|
-
/** @type {
|
|
18
|
-
parser:
|
|
19
|
-
|
|
20
|
-
bbi: BigBed;
|
|
17
|
+
/** @type {import("@gmod/bed").default} */
|
|
18
|
+
parser: import("@gmod/bed").default;
|
|
19
|
+
/** @type {import("@gmod/bbi").BigBed} */
|
|
20
|
+
bbi: import("@gmod/bbi").BigBed;
|
|
21
|
+
params: import("../../../spec/data.js").BigBedData;
|
|
21
22
|
doDebouncedRequest: (...args: any[]) => Promise<any>;
|
|
23
|
+
initializedPromise: Promise<any>;
|
|
22
24
|
headerPromise: Promise<import("@gmod/bbi").Header>;
|
|
23
25
|
/**
|
|
24
26
|
* Listen to the domain change event and update data when the covered windows change.
|
|
@@ -45,7 +47,5 @@ export default class BigBedSource extends BigBedSource_base {
|
|
|
45
47
|
}>;
|
|
46
48
|
}
|
|
47
49
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
48
|
-
import BED from "@gmod/bed";
|
|
49
|
-
import { BigBed } from "@gmod/bbi";
|
|
50
50
|
export {};
|
|
51
51
|
//# sourceMappingURL=bigBedSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bigBedSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/bigBedSource.js"],"names":[],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"bigBedSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/bigBedSource.js"],"names":[],"mappings":";;;;;;;;AAKA;IAUI;;;OAGG;IACH,oBAHW,OAAO,uBAAuB,EAAE,UAAU,QAC1C,OAAO,uBAAuB,EAAE,OAAO,EA+CjD;IA1DD,8CAA8C;IAC9C,sBAAkB;IAElB,0CAA0C;IAC1C,QADW,OAAO,WAAW,EAAE,OAAO,CAC/B;IAEP,yCAAyC;IACzC,KADW,OAAO,WAAW,EAAE,MAAM,CACjC;IAgBA,mDAAgC;IAMhC,qDAIC;IAED,iCAsBE;IARM,mDAAyC;IAWrD;;;;OAIG;IACH,wBAFW,MAAM,EAAE,iBAgBlB;IAED;;;;OAIG;IACH,oBAFW,MAAM,EAAE,iBAWlB;IAED;;;OAGG;IACH,sBAFW,MAAM,EAAE;;;;;;OAkClB;CACJ;iCA5IgC,2BAA2B"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import { BigBed } from "@gmod/bbi";
|
|
2
|
-
import { RemoteFile } from "generic-filehandle";
|
|
3
|
-
import BED from "@gmod/bed";
|
|
4
|
-
|
|
5
1
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
6
2
|
import windowedMixin from "./windowedMixin.js";
|
|
7
3
|
import { debounce } from "../../../utils/debounce.js";
|
|
@@ -11,15 +7,18 @@ export default class BigBedSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
11
7
|
/** Keep track of the order of the requests */
|
|
12
8
|
lastRequestId = 0;
|
|
13
9
|
|
|
14
|
-
/** @type {
|
|
10
|
+
/** @type {import("@gmod/bed").default} */
|
|
15
11
|
parser;
|
|
16
12
|
|
|
13
|
+
/** @type {import("@gmod/bbi").BigBed} */
|
|
14
|
+
bbi;
|
|
15
|
+
|
|
17
16
|
/**
|
|
18
|
-
* @param {import("../../../spec/data").BigBedData} params
|
|
19
|
-
* @param {import("../../../view/view").default} view
|
|
17
|
+
* @param {import("../../../spec/data.js").BigBedData} params
|
|
18
|
+
* @param {import("../../../view/view.js").default} view
|
|
20
19
|
*/
|
|
21
20
|
constructor(params, view) {
|
|
22
|
-
/** @type {import("../../../spec/data").BigBedData} */
|
|
21
|
+
/** @type {import("../../../spec/data.js").BigBedData} */
|
|
23
22
|
const paramsWithDefaults = {
|
|
24
23
|
channel: "x",
|
|
25
24
|
windowSize: 1000000,
|
|
@@ -34,22 +33,34 @@ export default class BigBedSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
34
33
|
throw new Error("No URL provided for BigBedSource");
|
|
35
34
|
}
|
|
36
35
|
|
|
37
|
-
this.bbi = new BigBed({
|
|
38
|
-
filehandle: new RemoteFile(
|
|
39
|
-
addBaseUrl(this.params.url, this.view.getBaseUrl())
|
|
40
|
-
),
|
|
41
|
-
});
|
|
42
|
-
|
|
43
36
|
this.doDebouncedRequest = debounce(
|
|
44
37
|
this.doRequest.bind(this),
|
|
45
38
|
200,
|
|
46
39
|
false
|
|
47
40
|
);
|
|
48
41
|
|
|
49
|
-
this.
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
42
|
+
this.initializedPromise = new Promise((resolve) => {
|
|
43
|
+
Promise.all([
|
|
44
|
+
import("@gmod/bed"),
|
|
45
|
+
import("@gmod/bbi"),
|
|
46
|
+
import("generic-filehandle"),
|
|
47
|
+
]).then(([bed, { BigBed }, { RemoteFile }]) => {
|
|
48
|
+
const BED = bed.default;
|
|
49
|
+
|
|
50
|
+
this.bbi = new BigBed({
|
|
51
|
+
filehandle: new RemoteFile(
|
|
52
|
+
addBaseUrl(this.params.url, this.view.getBaseUrl())
|
|
53
|
+
),
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
this.headerPromise = this.bbi.getHeader();
|
|
57
|
+
this.headerPromise.then(async (header) => {
|
|
58
|
+
// @ts-ignore TODO: Fix
|
|
59
|
+
this.parser = new BED({ autoSql: header.autoSql });
|
|
60
|
+
|
|
61
|
+
resolve();
|
|
62
|
+
});
|
|
63
|
+
});
|
|
53
64
|
});
|
|
54
65
|
}
|
|
55
66
|
|
|
@@ -59,6 +70,8 @@ export default class BigBedSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
59
70
|
* @param {number[]} domain Linearized domain
|
|
60
71
|
*/
|
|
61
72
|
async onDomainChanged(domain) {
|
|
73
|
+
await this.initializedPromise;
|
|
74
|
+
|
|
62
75
|
const windowSize = this.params.windowSize;
|
|
63
76
|
|
|
64
77
|
if (domain[1] - domain[0] > windowSize) {
|
|
@@ -11,18 +11,19 @@ declare const BigWigSource_base: {
|
|
|
11
11
|
*/
|
|
12
12
|
export default class BigWigSource extends BigWigSource_base {
|
|
13
13
|
/**
|
|
14
|
-
* @param {import("../../../spec/data").BigWigData} params
|
|
15
|
-
* @param {import("../../../view/view").default} view
|
|
14
|
+
* @param {import("../../../spec/data.js").BigWigData} params
|
|
15
|
+
* @param {import("../../../view/view.js").default} view
|
|
16
16
|
*/
|
|
17
|
-
constructor(params: import("../../../spec/data").BigWigData, view: import("../../../view/view").default);
|
|
17
|
+
constructor(params: import("../../../spec/data.js").BigWigData, view: import("../../../view/view.js").default);
|
|
18
18
|
/** @type {number[]} */
|
|
19
19
|
reductionLevels: number[];
|
|
20
20
|
/** Keep track of the order of the requests */
|
|
21
21
|
lastRequestId: number;
|
|
22
|
-
|
|
23
|
-
bbi: BigWig;
|
|
22
|
+
/** @type {import("@gmod/bbi").BigWig} */
|
|
23
|
+
bbi: import("@gmod/bbi").BigWig;
|
|
24
|
+
params: import("../../../spec/data.js").BigWigData;
|
|
24
25
|
doDebouncedRequest: (...args: any[]) => Promise<any>;
|
|
25
|
-
|
|
26
|
+
initializedPromise: Promise<any>;
|
|
26
27
|
/**
|
|
27
28
|
* Listen to the domain change event and update data when the covered windows change.
|
|
28
29
|
*
|
|
@@ -53,6 +54,5 @@ export default class BigWigSource extends BigWigSource_base {
|
|
|
53
54
|
}>;
|
|
54
55
|
}
|
|
55
56
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
56
|
-
import { BigWig } from "@gmod/bbi";
|
|
57
57
|
export {};
|
|
58
58
|
//# sourceMappingURL=bigWigSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bigWigSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/bigWigSource.js"],"names":[],"mappings":";;;;;;;;
|
|
1
|
+
{"version":3,"file":"bigWigSource.d.ts","sourceRoot":"","sources":["../../../../../src/data/sources/dynamic/bigWigSource.js"],"names":[],"mappings":";;;;;;;;AAKA;;GAEG;AACH;IAUI;;;OAGG;IACH,oBAHW,OAAO,uBAAuB,EAAE,UAAU,QAC1C,OAAO,uBAAuB,EAAE,OAAO,EAmDjD;IA9DD,uBAAuB;IACvB,iBADW,MAAM,EAAE,CACE;IAErB,8CAA8C;IAC9C,sBAAkB;IAElB,yCAAyC;IACzC,KADW,OAAO,WAAW,EAAE,MAAM,CACjC;IAgBA,mDAAgC;IAMhC,qDAIC;IAED,iCA0BE;IAGN;;;;OAIG;IACH,wBAFW,MAAM,EAAE,iBAuBlB;IAED;;;;;OAKG;IACH,oBAHW,MAAM,EAAE,kBACR,MAAM,iBAchB;IAED;;;;OAIG;IACH,sBAHW,MAAM,EAAE,SACR,MAAM;;;;;;;;;OAmChB;CACJ;iCA/JgC,2BAA2B"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import { BigWig } from "@gmod/bbi";
|
|
2
|
-
import { RemoteFile } from "generic-filehandle";
|
|
3
|
-
|
|
4
1
|
import { debounce } from "../../../utils/debounce.js";
|
|
5
2
|
import SingleAxisLazySource from "./singleAxisLazySource.js";
|
|
6
3
|
import windowedMixin from "./windowedMixin.js";
|
|
@@ -16,12 +13,15 @@ export default class BigWigSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
16
13
|
/** Keep track of the order of the requests */
|
|
17
14
|
lastRequestId = 0;
|
|
18
15
|
|
|
16
|
+
/** @type {import("@gmod/bbi").BigWig} */
|
|
17
|
+
bbi;
|
|
18
|
+
|
|
19
19
|
/**
|
|
20
|
-
* @param {import("../../../spec/data").BigWigData} params
|
|
21
|
-
* @param {import("../../../view/view").default} view
|
|
20
|
+
* @param {import("../../../spec/data.js").BigWigData} params
|
|
21
|
+
* @param {import("../../../view/view.js").default} view
|
|
22
22
|
*/
|
|
23
23
|
constructor(params, view) {
|
|
24
|
-
/** @type {import("../../../spec/data").BigWigData} */
|
|
24
|
+
/** @type {import("../../../spec/data.js").BigWigData} */
|
|
25
25
|
const paramsWithDefaults = {
|
|
26
26
|
pixelsPerBin: 2,
|
|
27
27
|
channel: "x",
|
|
@@ -36,30 +36,38 @@ export default class BigWigSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
36
36
|
throw new Error("No URL provided for BigWigSource");
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
this.bbi = new BigWig({
|
|
40
|
-
filehandle: new RemoteFile(
|
|
41
|
-
addBaseUrl(this.params.url, this.view.getBaseUrl())
|
|
42
|
-
),
|
|
43
|
-
});
|
|
44
|
-
|
|
45
39
|
this.doDebouncedRequest = debounce(
|
|
46
40
|
this.doRequest.bind(this),
|
|
47
41
|
200,
|
|
48
42
|
false
|
|
49
43
|
);
|
|
50
44
|
|
|
51
|
-
this.
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
45
|
+
this.initializedPromise = new Promise((resolve) => {
|
|
46
|
+
Promise.all([
|
|
47
|
+
import("@gmod/bbi"),
|
|
48
|
+
import("generic-filehandle"),
|
|
49
|
+
]).then(([{ BigWig }, { RemoteFile }]) => {
|
|
50
|
+
this.bbi = new BigWig({
|
|
51
|
+
filehandle: new RemoteFile(
|
|
52
|
+
addBaseUrl(this.params.url, this.view.getBaseUrl())
|
|
53
|
+
),
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
this.bbi.getHeader().then((header) => {
|
|
57
|
+
this.reductionLevels =
|
|
58
|
+
/** @type {{reductionLevel: number}[]} */ (
|
|
59
|
+
header.zoomLevels
|
|
60
|
+
)
|
|
61
|
+
.map((z) => z.reductionLevel)
|
|
62
|
+
.reverse();
|
|
63
|
+
|
|
64
|
+
// Add the non-reduced level. Not sure if this is the best way to do it.
|
|
65
|
+
// Afaik, the non-reduced bin size is not available in the header.
|
|
66
|
+
this.reductionLevels.push(1);
|
|
67
|
+
|
|
68
|
+
resolve();
|
|
69
|
+
});
|
|
70
|
+
});
|
|
63
71
|
});
|
|
64
72
|
}
|
|
65
73
|
|
|
@@ -69,8 +77,7 @@ export default class BigWigSource extends windowedMixin(SingleAxisLazySource) {
|
|
|
69
77
|
* @param {number[]} domain Linearized domain
|
|
70
78
|
*/
|
|
71
79
|
async onDomainChanged(domain) {
|
|
72
|
-
|
|
73
|
-
await this.headerPromise;
|
|
80
|
+
await this.initializedPromise;
|
|
74
81
|
|
|
75
82
|
// TODO: Postpone the initial load until layout is computed and remove 700.
|
|
76
83
|
const length = this.getAxisLength() || 700;
|