@genome-spy/core 0.36.0 → 0.37.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/README.md +1 -0
- package/dist/{index.es.js → bundled/index.es.js} +4227 -4085
- package/dist/{index.js → bundled/index.js} +191 -55
- package/dist/src/data/collector.d.ts +36 -0
- package/dist/src/data/collector.d.ts.map +1 -0
- package/dist/src/data/collector.js +184 -0
- package/dist/src/data/collector.test.js +84 -0
- package/dist/src/data/dataFlow.d.ts +65 -0
- package/dist/src/data/dataFlow.d.ts.map +1 -0
- package/dist/src/data/dataFlow.js +142 -0
- package/dist/src/data/dataFlow.test.js +5 -0
- package/dist/src/data/facetNode.d.ts +17 -0
- package/dist/src/data/facetNode.d.ts.map +1 -0
- package/dist/src/data/facetNode.js +17 -0
- package/dist/src/data/flow.test.js +72 -0
- package/dist/src/data/flowNode.d.ts +136 -0
- package/dist/src/data/flowNode.d.ts.map +1 -0
- package/dist/src/data/flowNode.js +286 -0
- package/dist/src/data/flowNode.test.js +50 -0
- package/dist/src/data/flowOptimizer.d.ts +27 -0
- package/dist/src/data/flowOptimizer.d.ts.map +1 -0
- package/dist/src/data/flowOptimizer.js +133 -0
- package/dist/src/data/flowOptimizer.test.js +193 -0
- package/dist/src/data/flowTestUtils.d.ts +30 -0
- package/dist/src/data/flowTestUtils.d.ts.map +1 -0
- package/dist/src/data/flowTestUtils.js +63 -0
- package/dist/src/data/formats/fasta.d.ts +20 -0
- package/dist/src/data/formats/fasta.d.ts.map +1 -0
- package/dist/src/data/formats/fasta.js +32 -0
- package/dist/src/data/formats/fasta.test.js +27 -0
- package/dist/src/data/sources/dataSource.d.ts +12 -0
- package/dist/src/data/sources/dataSource.d.ts.map +1 -0
- package/dist/src/data/sources/dataSource.js +25 -0
- package/dist/src/data/sources/dataSourceFactory.d.ts +16 -0
- package/dist/src/data/sources/dataSourceFactory.d.ts.map +1 -0
- package/dist/src/data/sources/dataSourceFactory.js +127 -0
- package/dist/src/data/sources/dataUtils.d.ts +50 -0
- package/dist/src/data/sources/dataUtils.d.ts.map +1 -0
- package/dist/src/data/sources/dataUtils.js +83 -0
- package/dist/src/data/sources/dynamic/README.md +3 -0
- package/dist/src/data/sources/dynamic/axisGenomeSource.d.ts +13 -0
- package/dist/src/data/sources/dynamic/axisGenomeSource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/axisGenomeSource.js +19 -0
- package/dist/src/data/sources/dynamic/axisTickSource.d.ts +18 -0
- package/dist/src/data/sources/dynamic/axisTickSource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/axisTickSource.js +73 -0
- package/dist/src/data/sources/dynamic/bamSource.d.ts +46 -0
- package/dist/src/data/sources/dynamic/bamSource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/bamSource.js +115 -0
- package/dist/src/data/sources/dynamic/bigBedSource.d.ts +51 -0
- package/dist/src/data/sources/dynamic/bigBedSource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/bigBedSource.js +128 -0
- package/dist/src/data/sources/dynamic/bigWigSource.d.ts +58 -0
- package/dist/src/data/sources/dynamic/bigWigSource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/bigWigSource.js +166 -0
- package/dist/src/data/sources/dynamic/gff3Source.d.ts +8 -0
- package/dist/src/data/sources/dynamic/gff3Source.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/gff3Source.js +19 -0
- package/dist/src/data/sources/dynamic/indexedFastaSource.d.ts +30 -0
- package/dist/src/data/sources/dynamic/indexedFastaSource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/indexedFastaSource.js +86 -0
- package/dist/src/data/sources/dynamic/singleAxisLazySource.d.ts +42 -0
- package/dist/src/data/sources/dynamic/singleAxisLazySource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/singleAxisLazySource.js +129 -0
- package/dist/src/data/sources/dynamic/tabixSource.d.ts +54 -0
- package/dist/src/data/sources/dynamic/tabixSource.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/tabixSource.js +140 -0
- package/dist/src/data/sources/dynamic/windowedMixin.d.ts +32 -0
- package/dist/src/data/sources/dynamic/windowedMixin.d.ts.map +1 -0
- package/dist/src/data/sources/dynamic/windowedMixin.js +53 -0
- package/dist/src/data/sources/inlineSource.d.ts +16 -0
- package/dist/src/data/sources/inlineSource.d.ts.map +1 -0
- package/dist/src/data/sources/inlineSource.js +68 -0
- package/dist/src/data/sources/inlineSource.test.js +56 -0
- package/dist/src/data/sources/namedSource.d.ts +25 -0
- package/dist/src/data/sources/namedSource.d.ts.map +1 -0
- package/dist/src/data/sources/namedSource.js +80 -0
- package/dist/src/data/sources/sequenceSource.d.ts +17 -0
- package/dist/src/data/sources/sequenceSource.d.ts.map +1 -0
- package/dist/src/data/sources/sequenceSource.js +47 -0
- package/dist/src/data/sources/sequenceSource.test.js +46 -0
- package/dist/src/data/sources/urlSource.d.ts +16 -0
- package/dist/src/data/sources/urlSource.d.ts.map +1 -0
- package/dist/src/data/sources/urlSource.js +74 -0
- package/dist/src/data/transforms/aggregate.d.ts +18 -0
- package/dist/src/data/transforms/aggregate.d.ts.map +1 -0
- package/dist/src/data/transforms/aggregate.js +67 -0
- package/dist/src/data/transforms/clone.d.ts +15 -0
- package/dist/src/data/transforms/clone.d.ts.map +1 -0
- package/dist/src/data/transforms/clone.js +40 -0
- package/dist/src/data/transforms/clone.test.js +11 -0
- package/dist/src/data/transforms/coverage.d.ts +30 -0
- package/dist/src/data/transforms/coverage.d.ts.map +1 -0
- package/dist/src/data/transforms/coverage.js +183 -0
- package/dist/src/data/transforms/coverage.test.js +123 -0
- package/dist/src/data/transforms/filter.d.ts +12 -0
- package/dist/src/data/transforms/filter.d.ts.map +1 -0
- package/dist/src/data/transforms/filter.js +33 -0
- package/dist/src/data/transforms/filter.test.js +18 -0
- package/dist/src/data/transforms/filterScoredLabels.d.ts +29 -0
- package/dist/src/data/transforms/filterScoredLabels.d.ts.map +1 -0
- package/dist/src/data/transforms/filterScoredLabels.js +134 -0
- package/dist/src/data/transforms/flatten.d.ts +10 -0
- package/dist/src/data/transforms/flatten.d.ts.map +1 -0
- package/dist/src/data/transforms/flatten.js +68 -0
- package/dist/src/data/transforms/flatten.test.js +93 -0
- package/dist/src/data/transforms/flattenCompressedExons.d.ts +19 -0
- package/dist/src/data/transforms/flattenCompressedExons.d.ts.map +1 -0
- package/dist/src/data/transforms/flattenCompressedExons.js +53 -0
- package/dist/src/data/transforms/flattenDelimited.d.ts +10 -0
- package/dist/src/data/transforms/flattenDelimited.d.ts.map +1 -0
- package/dist/src/data/transforms/flattenDelimited.js +66 -0
- package/dist/src/data/transforms/flattenDelimited.test.js +87 -0
- package/dist/src/data/transforms/flattenSequence.d.ts +11 -0
- package/dist/src/data/transforms/flattenSequence.d.ts.map +1 -0
- package/dist/src/data/transforms/flattenSequence.js +35 -0
- package/dist/src/data/transforms/flattenSequence.test.js +34 -0
- package/dist/src/data/transforms/formula.d.ts +13 -0
- package/dist/src/data/transforms/formula.d.ts.map +1 -0
- package/dist/src/data/transforms/formula.js +35 -0
- package/dist/src/data/transforms/formula.test.js +19 -0
- package/dist/src/data/transforms/identifier.d.ts +40 -0
- package/dist/src/data/transforms/identifier.d.ts.map +1 -0
- package/dist/src/data/transforms/identifier.js +106 -0
- package/dist/src/data/transforms/identifier.test.js +83 -0
- package/dist/src/data/transforms/linearizeGenomicCoordinate.d.ts +10 -0
- package/dist/src/data/transforms/linearizeGenomicCoordinate.d.ts.map +1 -0
- package/dist/src/data/transforms/linearizeGenomicCoordinate.js +97 -0
- package/dist/src/data/transforms/measureText.d.ts +18 -0
- package/dist/src/data/transforms/measureText.d.ts.map +1 -0
- package/dist/src/data/transforms/measureText.js +42 -0
- package/dist/src/data/transforms/pileup.d.ts +10 -0
- package/dist/src/data/transforms/pileup.d.ts.map +1 -0
- package/dist/src/data/transforms/pileup.js +126 -0
- package/dist/src/data/transforms/pileup.test.js +70 -0
- package/dist/src/data/transforms/project.d.ts +13 -0
- package/dist/src/data/transforms/project.d.ts.map +1 -0
- package/dist/src/data/transforms/project.js +38 -0
- package/dist/src/data/transforms/project.test.js +32 -0
- package/dist/src/data/transforms/regexExtract.d.ts +13 -0
- package/dist/src/data/transforms/regexExtract.d.ts.map +1 -0
- package/dist/src/data/transforms/regexExtract.js +57 -0
- package/dist/src/data/transforms/regexExtract.test.js +67 -0
- package/dist/src/data/transforms/regexFold.d.ts +14 -0
- package/dist/src/data/transforms/regexFold.d.ts.map +1 -0
- package/dist/src/data/transforms/regexFold.js +139 -0
- package/dist/src/data/transforms/regexFold.test.js +160 -0
- package/dist/src/data/transforms/sample.d.ts +42 -0
- package/dist/src/data/transforms/sample.d.ts.map +1 -0
- package/dist/src/data/transforms/sample.js +99 -0
- package/dist/src/data/transforms/sample.test.js +38 -0
- package/dist/src/data/transforms/stack.d.ts +11 -0
- package/dist/src/data/transforms/stack.d.ts.map +1 -0
- package/dist/src/data/transforms/stack.js +134 -0
- package/dist/src/data/transforms/stack.test.js +91 -0
- package/dist/src/data/transforms/transformFactory.d.ts +12 -0
- package/dist/src/data/transforms/transformFactory.d.ts.map +1 -0
- package/dist/src/data/transforms/transformFactory.js +59 -0
- package/dist/src/encoder/accessor.d.ts +15 -0
- package/dist/src/encoder/accessor.d.ts.map +1 -0
- package/dist/src/encoder/accessor.js +76 -0
- package/dist/src/encoder/accessor.test.js +47 -0
- package/dist/src/encoder/encoder.d.ts +144 -0
- package/dist/src/encoder/encoder.d.ts.map +1 -0
- package/dist/src/encoder/encoder.js +400 -0
- package/dist/src/encoder/encoder.test.js +98 -0
- package/dist/src/fonts/Lato-Regular.json +1267 -0
- package/dist/src/fonts/Lato-Regular.png +0 -0
- package/dist/src/fonts/OFL.txt +93 -0
- package/dist/src/fonts/README.md +3 -0
- package/dist/src/fonts/bmFontManager.d.ts +182 -0
- package/dist/src/fonts/bmFontManager.d.ts.map +1 -0
- package/dist/src/fonts/bmFontManager.js +359 -0
- package/dist/src/fonts/bmFontMetrics.d.ts +45 -0
- package/dist/src/fonts/bmFontMetrics.d.ts.map +1 -0
- package/dist/src/fonts/bmFontMetrics.js +108 -0
- package/dist/src/genome/genome.d.ts +172 -0
- package/dist/src/genome/genome.d.ts.map +1 -0
- package/dist/src/genome/genome.js +379 -0
- package/dist/src/genome/genome.test.js +226 -0
- package/dist/src/genome/genomeStore.d.ts +20 -0
- package/dist/src/genome/genomeStore.d.ts.map +1 -0
- package/dist/src/genome/genomeStore.js +54 -0
- package/dist/src/genome/locusFormat.d.ts +14 -0
- package/dist/src/genome/locusFormat.d.ts.map +1 -0
- package/dist/src/genome/locusFormat.js +37 -0
- package/dist/src/genome/scaleIndex.d.ts +6 -0
- package/dist/src/genome/scaleIndex.d.ts.map +1 -0
- package/dist/src/genome/scaleIndex.js +165 -0
- package/dist/src/genome/scaleIndex.test.js +78 -0
- package/dist/src/genome/scaleLocus.d.ts +3 -0
- package/dist/src/genome/scaleLocus.d.ts.map +1 -0
- package/dist/src/genome/scaleLocus.js +101 -0
- package/dist/src/genome/scaleLocus.test.js +4 -0
- package/dist/src/genomeSpy.d.ts +141 -0
- package/dist/src/genomeSpy.d.ts.map +1 -0
- package/dist/src/genomeSpy.js +788 -0
- package/dist/src/gl/arrayBuilder.d.ts +71 -0
- package/dist/src/gl/arrayBuilder.d.ts.map +1 -0
- package/dist/src/gl/arrayBuilder.js +199 -0
- package/dist/src/gl/dataToVertices.d.ts +194 -0
- package/dist/src/gl/dataToVertices.d.ts.map +1 -0
- package/dist/src/gl/dataToVertices.js +639 -0
- package/dist/src/gl/includes/common.glsl.js +2 -0
- package/dist/src/gl/includes/picking.fragment.glsl.js +2 -0
- package/dist/src/gl/includes/picking.vertex.glsl.js +2 -0
- package/dist/src/gl/includes/sampleFacet.glsl.js +2 -0
- package/dist/src/gl/includes/scales.glsl.js +2 -0
- package/dist/src/gl/link.fragment.glsl.js +2 -0
- package/dist/src/gl/link.vertex.glsl.js +2 -0
- package/dist/src/gl/point.fragment.glsl.js +2 -0
- package/dist/src/gl/point.vertex.glsl.js +2 -0
- package/dist/src/gl/rect.fragment.glsl.js +2 -0
- package/dist/src/gl/rect.vertex.glsl.js +2 -0
- package/dist/src/gl/rule.fragment.glsl.js +2 -0
- package/dist/src/gl/rule.vertex.glsl.js +2 -0
- package/dist/src/gl/text.fragment.glsl.js +2 -0
- package/dist/src/gl/text.vertex.glsl.js +2 -0
- package/dist/src/gl/webGLHelper.d.ts +118 -0
- package/dist/src/gl/webGLHelper.d.ts.map +1 -0
- package/dist/src/gl/webGLHelper.js +513 -0
- package/dist/src/img/bowtie.svg +1 -0
- package/dist/src/img/genomespy-favicon.svg +34 -0
- package/dist/src/index.d.ts +15 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.html +11 -0
- package/dist/src/index.js +129 -0
- package/dist/src/marks/link.d.ts +11 -0
- package/dist/src/marks/link.d.ts.map +1 -0
- package/dist/src/marks/link.js +175 -0
- package/dist/src/marks/mark.d.ts +226 -0
- package/dist/src/marks/mark.d.ts.map +1 -0
- package/dist/src/marks/mark.js +1004 -0
- package/dist/src/marks/markUtils.d.ts +23 -0
- package/dist/src/marks/markUtils.d.ts.map +1 -0
- package/dist/src/marks/markUtils.js +125 -0
- package/dist/src/marks/pointMark.d.ts +11 -0
- package/dist/src/marks/pointMark.d.ts.map +1 -0
- package/dist/src/marks/pointMark.js +251 -0
- package/dist/src/marks/rectMark.d.ts +18 -0
- package/dist/src/marks/rectMark.d.ts.map +1 -0
- package/dist/src/marks/rectMark.js +255 -0
- package/dist/src/marks/rule.d.ts +6 -0
- package/dist/src/marks/rule.d.ts.map +1 -0
- package/dist/src/marks/rule.js +250 -0
- package/dist/src/marks/text.d.ts +13 -0
- package/dist/src/marks/text.d.ts.map +1 -0
- package/dist/src/marks/text.js +279 -0
- package/dist/src/scale/colorUtils.d.ts +34 -0
- package/dist/src/scale/colorUtils.d.ts.map +1 -0
- package/dist/src/scale/colorUtils.js +184 -0
- package/dist/src/scale/glslScaleGenerator.d.ts +45 -0
- package/dist/src/scale/glslScaleGenerator.d.ts.map +1 -0
- package/dist/src/scale/glslScaleGenerator.js +506 -0
- package/dist/src/scale/scale.d.ts +10 -0
- package/dist/src/scale/scale.d.ts.map +1 -0
- package/dist/src/scale/scale.js +456 -0
- package/dist/src/scale/scale.test.js +324 -0
- package/dist/src/scale/ticks.d.ts +47 -0
- package/dist/src/scale/ticks.d.ts.map +1 -0
- package/dist/src/scale/ticks.js +203 -0
- package/dist/src/scale/ticks.test.js +40 -0
- package/dist/src/singlePageApp.d.ts +2 -0
- package/dist/src/singlePageApp.d.ts.map +1 -0
- package/dist/src/singlePageApp.js +13 -0
- package/dist/src/spec/axis.d.ts +402 -0
- package/dist/src/spec/channel.d.ts +440 -0
- package/dist/src/spec/data.d.ts +370 -0
- package/dist/src/spec/font.d.ts +15 -0
- package/dist/src/spec/genome.d.ts +35 -0
- package/dist/src/spec/mark.d.ts +435 -0
- package/dist/src/spec/root.d.ts +22 -0
- package/dist/src/spec/sampleView.d.ts +185 -0
- package/dist/src/spec/scale.d.ts +273 -0
- package/dist/src/spec/title.d.ts +102 -0
- package/dist/src/spec/tooltip.d.ts +9 -0
- package/dist/src/spec/transform.d.ts +504 -0
- package/dist/src/spec/view.d.ts +214 -0
- package/dist/src/styles/genome-spy.css.d.ts +3 -0
- package/dist/src/styles/genome-spy.css.d.ts.map +1 -0
- package/dist/src/styles/genome-spy.css.js +114 -0
- package/dist/src/styles/genome-spy.scss +153 -0
- package/dist/src/tooltip/dataTooltipHandler.d.ts +2 -0
- package/dist/src/tooltip/dataTooltipHandler.d.ts.map +1 -0
- package/dist/src/tooltip/dataTooltipHandler.js +64 -0
- package/dist/src/tooltip/refseqGeneTooltipHandler.d.ts +2 -0
- package/dist/src/tooltip/refseqGeneTooltipHandler.d.ts.map +1 -0
- package/dist/src/tooltip/refseqGeneTooltipHandler.js +78 -0
- package/dist/src/tooltip/tooltipHandler.d.ts +9 -0
- package/dist/src/tooltip/tooltipHandler.d.ts.map +1 -0
- package/dist/src/tooltip/tooltipHandler.ts +12 -0
- package/dist/src/types/bmFont.d.ts +58 -0
- package/dist/src/types/embedApi.d.ts +67 -0
- package/dist/src/types/encoder.d.ts +84 -0
- package/dist/src/types/flowBatch.d.ts +40 -0
- package/dist/src/types/rendering.d.ts +65 -0
- package/dist/src/types/scaleResolutionApi.d.ts +40 -0
- package/dist/src/types/viewContext.d.ts +85 -0
- package/dist/src/utils/addBaseUrl.d.ts +6 -0
- package/dist/src/utils/addBaseUrl.d.ts.map +1 -0
- package/dist/src/utils/addBaseUrl.js +19 -0
- package/dist/src/utils/addBaseUrl.test.js +22 -0
- package/dist/src/utils/animator.d.ts +41 -0
- package/dist/src/utils/animator.d.ts.map +1 -0
- package/dist/src/utils/animator.js +83 -0
- package/dist/src/utils/arrayUtils.d.ts +34 -0
- package/dist/src/utils/arrayUtils.d.ts.map +1 -0
- package/dist/src/utils/arrayUtils.js +61 -0
- package/dist/src/utils/binnedIndex.d.ts +23 -0
- package/dist/src/utils/binnedIndex.d.ts.map +1 -0
- package/dist/src/utils/binnedIndex.js +167 -0
- package/dist/src/utils/binnedIndex.test.js +155 -0
- package/dist/src/utils/clamp.d.ts +7 -0
- package/dist/src/utils/clamp.d.ts.map +1 -0
- package/dist/src/utils/clamp.js +8 -0
- package/dist/src/utils/cloner.d.ts +16 -0
- package/dist/src/utils/cloner.d.ts.map +1 -0
- package/dist/src/utils/cloner.js +34 -0
- package/dist/src/utils/cloner.test.js +24 -0
- package/dist/src/utils/coalesce.d.ts +6 -0
- package/dist/src/utils/coalesce.d.ts.map +1 -0
- package/dist/src/utils/coalesce.js +11 -0
- package/dist/src/utils/coalesce.test.js +16 -0
- package/dist/src/utils/concatIterables.d.ts +8 -0
- package/dist/src/utils/concatIterables.d.ts.map +1 -0
- package/dist/src/utils/concatIterables.js +26 -0
- package/dist/src/utils/concatIterables.test.js +8 -0
- package/dist/src/utils/debounce.d.ts +8 -0
- package/dist/src/utils/debounce.d.ts.map +1 -0
- package/dist/src/utils/debounce.js +37 -0
- package/dist/src/utils/domainArray.d.ts +61 -0
- package/dist/src/utils/domainArray.d.ts.map +1 -0
- package/dist/src/utils/domainArray.js +216 -0
- package/dist/src/utils/domainArray.test.js +130 -0
- package/dist/src/utils/eerp.d.ts +12 -0
- package/dist/src/utils/eerp.d.ts.map +1 -0
- package/dist/src/utils/eerp.js +13 -0
- package/dist/src/utils/expression.d.ts +9 -0
- package/dist/src/utils/expression.d.ts.map +1 -0
- package/dist/src/utils/expression.js +32 -0
- package/dist/src/utils/field.d.ts +17 -0
- package/dist/src/utils/field.d.ts.map +1 -0
- package/dist/src/utils/field.js +28 -0
- package/dist/src/utils/formatObject.d.ts +7 -0
- package/dist/src/utils/formatObject.d.ts.map +1 -0
- package/dist/src/utils/formatObject.js +37 -0
- package/dist/src/utils/indexer.d.ts +16 -0
- package/dist/src/utils/indexer.d.ts.map +1 -0
- package/dist/src/utils/indexer.js +43 -0
- package/dist/src/utils/indexer.test.js +47 -0
- package/dist/src/utils/inertia.d.ts +42 -0
- package/dist/src/utils/inertia.d.ts.map +1 -0
- package/dist/src/utils/inertia.js +124 -0
- package/dist/src/utils/interactionEvent.d.ts +26 -0
- package/dist/src/utils/interactionEvent.d.ts.map +1 -0
- package/dist/src/utils/interactionEvent.js +33 -0
- package/dist/src/utils/iterateNestedMaps.d.ts +11 -0
- package/dist/src/utils/iterateNestedMaps.d.ts.map +1 -0
- package/dist/src/utils/iterateNestedMaps.js +21 -0
- package/dist/src/utils/iterateNestedMaps.test.js +33 -0
- package/dist/src/utils/kWayMerge.d.ts +9 -0
- package/dist/src/utils/kWayMerge.d.ts.map +1 -0
- package/dist/src/utils/kWayMerge.js +42 -0
- package/dist/src/utils/kWayMerge.test.js +26 -0
- package/dist/src/utils/layout/flexLayout.d.ts +182 -0
- package/dist/src/utils/layout/flexLayout.d.ts.map +1 -0
- package/dist/src/utils/layout/flexLayout.js +381 -0
- package/dist/src/utils/layout/flexLayout.test.js +323 -0
- package/dist/src/utils/layout/grid.d.ts +29 -0
- package/dist/src/utils/layout/grid.d.ts.map +1 -0
- package/dist/src/utils/layout/grid.js +95 -0
- package/dist/src/utils/layout/grid.test.js +71 -0
- package/dist/src/utils/layout/padding.d.ts +83 -0
- package/dist/src/utils/layout/padding.d.ts.map +1 -0
- package/dist/src/utils/layout/padding.js +155 -0
- package/dist/src/utils/layout/point.d.ts +16 -0
- package/dist/src/utils/layout/point.d.ts.map +1 -0
- package/dist/src/utils/layout/point.js +23 -0
- package/dist/src/utils/layout/rectangle.d.ts +142 -0
- package/dist/src/utils/layout/rectangle.d.ts.map +1 -0
- package/dist/src/utils/layout/rectangle.js +296 -0
- package/dist/src/utils/layout/rectangle.test.js +172 -0
- package/dist/src/utils/mergeObjects.d.ts +15 -0
- package/dist/src/utils/mergeObjects.d.ts.map +1 -0
- package/dist/src/utils/mergeObjects.js +99 -0
- package/dist/src/utils/mergeObjects.test.js +42 -0
- package/dist/src/utils/numberExtractor.d.ts +9 -0
- package/dist/src/utils/numberExtractor.d.ts.map +1 -0
- package/dist/src/utils/numberExtractor.js +24 -0
- package/dist/src/utils/numberExtractor.test.js +6 -0
- package/dist/src/utils/point.d.ts +9 -0
- package/dist/src/utils/point.d.ts.map +1 -0
- package/dist/src/utils/point.js +14 -0
- package/dist/src/utils/propertyCacher.d.ts +30 -0
- package/dist/src/utils/propertyCacher.d.ts.map +1 -0
- package/dist/src/utils/propertyCacher.js +70 -0
- package/dist/src/utils/propertyCacher.test.js +85 -0
- package/dist/src/utils/propertyCoalescer.d.ts +15 -0
- package/dist/src/utils/propertyCoalescer.d.ts.map +1 -0
- package/dist/src/utils/propertyCoalescer.js +42 -0
- package/dist/src/utils/propertyCoalescer.test.js +22 -0
- package/dist/src/utils/reservationMap.d.ts +42 -0
- package/dist/src/utils/reservationMap.d.ts.map +1 -0
- package/dist/src/utils/reservationMap.js +103 -0
- package/dist/src/utils/reservationMap.test.js +20 -0
- package/dist/src/utils/scaleNull.d.ts +13 -0
- package/dist/src/utils/scaleNull.d.ts.map +1 -0
- package/dist/src/utils/scaleNull.js +21 -0
- package/dist/src/utils/setOperations.d.ts +31 -0
- package/dist/src/utils/setOperations.d.ts.map +1 -0
- package/dist/src/utils/setOperations.js +75 -0
- package/dist/src/utils/smoothstep.d.ts +7 -0
- package/dist/src/utils/smoothstep.d.ts.map +1 -0
- package/dist/src/utils/smoothstep.js +10 -0
- package/dist/src/utils/throttle.d.ts +8 -0
- package/dist/src/utils/throttle.d.ts.map +1 -0
- package/dist/src/utils/throttle.js +34 -0
- package/dist/src/utils/topK.d.ts +22 -0
- package/dist/src/utils/topK.d.ts.map +1 -0
- package/dist/src/utils/topK.js +76 -0
- package/dist/src/utils/topK.test.js +64 -0
- package/dist/src/utils/transition.d.ts +44 -0
- package/dist/src/utils/transition.d.ts.map +1 -0
- package/dist/src/utils/transition.js +74 -0
- package/dist/src/utils/trees.d.ts +56 -0
- package/dist/src/utils/trees.d.ts.map +1 -0
- package/dist/src/utils/trees.js +92 -0
- package/dist/src/utils/trees.test.js +130 -0
- package/dist/src/utils/ui/tooltip.d.ts +50 -0
- package/dist/src/utils/ui/tooltip.d.ts.map +1 -0
- package/dist/src/utils/ui/tooltip.js +189 -0
- package/dist/src/utils/url.d.ts +9 -0
- package/dist/src/utils/url.d.ts.map +1 -0
- package/dist/src/utils/url.js +22 -0
- package/dist/src/utils/variableTools.d.ts +14 -0
- package/dist/src/utils/variableTools.d.ts.map +1 -0
- package/dist/src/utils/variableTools.js +24 -0
- package/dist/src/utils/variableTools.test.js +13 -0
- package/dist/src/view/axisGridView.d.ts +39 -0
- package/dist/src/view/axisGridView.d.ts.map +1 -0
- package/dist/src/view/axisGridView.js +246 -0
- package/dist/src/view/axisResolution.d.ts +24 -0
- package/dist/src/view/axisResolution.d.ts.map +1 -0
- package/dist/src/view/axisResolution.js +141 -0
- package/dist/src/view/axisResolution.test.js +201 -0
- package/dist/src/view/axisView.d.ts +49 -0
- package/dist/src/view/axisView.d.ts.map +1 -0
- package/dist/src/view/axisView.js +629 -0
- package/dist/src/view/concatView.d.ts +16 -0
- package/dist/src/view/concatView.d.ts.map +1 -0
- package/dist/src/view/concatView.js +84 -0
- package/dist/src/view/containerView.d.ts +43 -0
- package/dist/src/view/containerView.d.ts.map +1 -0
- package/dist/src/view/containerView.js +137 -0
- package/dist/src/view/facetView.d.ts +71 -0
- package/dist/src/view/facetView.d.ts.map +1 -0
- package/dist/src/view/facetView.js +492 -0
- package/dist/src/view/flowBuilder.d.ts +37 -0
- package/dist/src/view/flowBuilder.d.ts.map +1 -0
- package/dist/src/view/flowBuilder.js +383 -0
- package/dist/src/view/flowBuilder.test.js +125 -0
- package/dist/src/view/gridView.d.ts +111 -0
- package/dist/src/view/gridView.d.ts.map +1 -0
- package/dist/src/view/gridView.js +1086 -0
- package/dist/src/view/implicitRootView.d.ts +9 -0
- package/dist/src/view/implicitRootView.d.ts.map +1 -0
- package/dist/src/view/implicitRootView.js +23 -0
- package/dist/src/view/importView.d.ts +17 -0
- package/dist/src/view/importView.d.ts.map +1 -0
- package/dist/src/view/importView.js +22 -0
- package/dist/src/view/layerView.d.ts +25 -0
- package/dist/src/view/layerView.d.ts.map +1 -0
- package/dist/src/view/layerView.js +77 -0
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts +30 -0
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts.map +1 -0
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.js +175 -0
- package/dist/src/view/renderingContext/compositeViewRenderingContext.d.ts +14 -0
- package/dist/src/view/renderingContext/compositeViewRenderingContext.d.ts.map +1 -0
- package/dist/src/view/renderingContext/compositeViewRenderingContext.js +51 -0
- package/dist/src/view/renderingContext/debuggingViewRenderingContext.d.ts +51 -0
- package/dist/src/view/renderingContext/debuggingViewRenderingContext.d.ts.map +1 -0
- package/dist/src/view/renderingContext/debuggingViewRenderingContext.js +94 -0
- package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.d.ts +60 -0
- package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.d.ts.map +1 -0
- package/dist/src/view/renderingContext/layoutRecorderViewRenderingContext.js +128 -0
- package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts +19 -0
- package/dist/src/view/renderingContext/simpleViewRenderingContext.d.ts.map +1 -0
- package/dist/src/view/renderingContext/simpleViewRenderingContext.js +64 -0
- package/dist/src/view/renderingContext/svgViewRenderingContext.d.ts +22 -0
- package/dist/src/view/renderingContext/svgViewRenderingContext.d.ts.map +1 -0
- package/dist/src/view/renderingContext/svgViewRenderingContext.js +125 -0
- package/dist/src/view/renderingContext/viewRenderingContext.d.ts +33 -0
- package/dist/src/view/renderingContext/viewRenderingContext.d.ts.map +1 -0
- package/dist/src/view/renderingContext/viewRenderingContext.js +41 -0
- package/dist/src/view/scaleResolution.d.ts +170 -0
- package/dist/src/view/scaleResolution.d.ts.map +1 -0
- package/dist/src/view/scaleResolution.js +874 -0
- package/dist/src/view/scaleResolution.test.js +658 -0
- package/dist/src/view/testUtils.d.ts +30 -0
- package/dist/src/view/testUtils.d.ts.map +1 -0
- package/dist/src/view/testUtils.js +101 -0
- package/dist/src/view/title.d.ts +6 -0
- package/dist/src/view/title.d.ts.map +1 -0
- package/dist/src/view/title.js +165 -0
- package/dist/src/view/unitView.d.ts +93 -0
- package/dist/src/view/unitView.d.ts.map +1 -0
- package/dist/src/view/unitView.js +345 -0
- package/dist/src/view/view.d.ts +291 -0
- package/dist/src/view/view.d.ts.map +1 -0
- package/dist/src/view/view.js +691 -0
- package/dist/src/view/view.test.js +214 -0
- package/dist/src/view/viewFactory.d.ts +76 -0
- package/dist/src/view/viewFactory.d.ts.map +1 -0
- package/dist/src/view/viewFactory.js +178 -0
- package/dist/src/view/viewFactory.test.js +17 -0
- package/dist/src/view/viewUtils.d.ts +90 -0
- package/dist/src/view/viewUtils.d.ts.map +1 -0
- package/dist/src/view/viewUtils.js +326 -0
- package/dist/src/view/zoom.d.ts +23 -0
- package/dist/src/view/zoom.d.ts.map +1 -0
- package/dist/src/view/zoom.js +89 -0
- package/package.json +15 -12
- package/dist/style.css +0 -1
|
@@ -0,0 +1,440 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Partially based on
|
|
3
|
+
* https://github.com/vega/vega-lite/blob/master/src/channeldef.ts
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) 2015-2018, University of Washington Interactive Data Lab
|
|
6
|
+
* All rights reserved.
|
|
7
|
+
*
|
|
8
|
+
* BSD-3-Clause License: https://github.com/vega/vega-lite/blob/master/LICENSE
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
import { Scale } from "./scale";
|
|
12
|
+
import { GenomeAxis } from "./axis";
|
|
13
|
+
|
|
14
|
+
export type Scalar = string | number | boolean;
|
|
15
|
+
export type Value = Scalar | null;
|
|
16
|
+
|
|
17
|
+
export type FieldName = string;
|
|
18
|
+
export type Field = FieldName;
|
|
19
|
+
|
|
20
|
+
export type PrimaryPositionalChannel = "x" | "y";
|
|
21
|
+
export type SecondaryPositionalChannel = "x2" | "y2";
|
|
22
|
+
|
|
23
|
+
export type PositionalChannel =
|
|
24
|
+
| PrimaryPositionalChannel
|
|
25
|
+
| SecondaryPositionalChannel;
|
|
26
|
+
|
|
27
|
+
// Remember to updata the type guard when adding channels!
|
|
28
|
+
export type ChannelWithScale =
|
|
29
|
+
| PositionalChannel
|
|
30
|
+
| "color"
|
|
31
|
+
| "fill"
|
|
32
|
+
| "stroke"
|
|
33
|
+
| "opacity"
|
|
34
|
+
| "fillOpacity"
|
|
35
|
+
| "strokeOpacity"
|
|
36
|
+
| "strokeWidth"
|
|
37
|
+
| "size"
|
|
38
|
+
| "shape"
|
|
39
|
+
| "angle"
|
|
40
|
+
| "dx"
|
|
41
|
+
| "dy"
|
|
42
|
+
| "sample"; // Needed for collecting sample ids (domain) from multiple views
|
|
43
|
+
|
|
44
|
+
export type ChannelWithoutScale =
|
|
45
|
+
| "uniqueId"
|
|
46
|
+
| "search"
|
|
47
|
+
| "text"
|
|
48
|
+
| "facetIndex"
|
|
49
|
+
| "semanticScore"
|
|
50
|
+
| "uniqueId";
|
|
51
|
+
|
|
52
|
+
export type Channel = ChannelWithScale | ChannelWithoutScale;
|
|
53
|
+
|
|
54
|
+
// TODO
|
|
55
|
+
export type FacetFieldDef = any;
|
|
56
|
+
|
|
57
|
+
// TODO: Belongs to "guide"
|
|
58
|
+
export interface TitleMixins {
|
|
59
|
+
/**
|
|
60
|
+
* A title for the field. If `null`, the title will be removed.
|
|
61
|
+
*/
|
|
62
|
+
title?: string | null;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export interface BandMixins {
|
|
66
|
+
/**
|
|
67
|
+
* Relative position on band scale. For example, the marks will be positioned at the beginning of the band if set to `0`, and at the middle of the band if set to `0.5`.
|
|
68
|
+
*
|
|
69
|
+
* @minimum 0
|
|
70
|
+
* @maximum 1
|
|
71
|
+
*/
|
|
72
|
+
// TODO: rename to bandPosition: https://github.com/vega/vega-lite/pull/7190
|
|
73
|
+
// bandPosition?: number;
|
|
74
|
+
band?: number;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export interface FormatMixins {
|
|
78
|
+
/**
|
|
79
|
+
* When used with the default `"number"` format type, the text formatting pattern for labels of guides (axes, legends, headers) and text marks.
|
|
80
|
+
*
|
|
81
|
+
* - If the format type is `"number"` (e.g., for quantitative fields), this is D3's [number format pattern](https://github.com/d3/d3-format#locale_format).
|
|
82
|
+
*
|
|
83
|
+
* See the [format documentation](https://vega.github.io/vega-lite/docs/format.html) for more examples.
|
|
84
|
+
*/
|
|
85
|
+
format?: string;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export type StringDatumDef = DatumDef & FormatMixins;
|
|
89
|
+
|
|
90
|
+
export type Type = "quantitative" | "ordinal" | "nominal" | "index" | "locus";
|
|
91
|
+
|
|
92
|
+
export type TypeForShape = "ordinal" | "nominal";
|
|
93
|
+
|
|
94
|
+
export interface TypeMixins<T extends Type> {
|
|
95
|
+
type: T;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export interface FieldDefBase<F> {
|
|
99
|
+
/**
|
|
100
|
+
* __Required.__ A string defining the name of the field from which to pull a data value
|
|
101
|
+
* or an object defining iterated values from the [`repeat`](https://vega.github.io/vega-lite/docs/repeat.html) operator.
|
|
102
|
+
*
|
|
103
|
+
* __See also:__ [`field`](https://vega.github.io/vega-lite/docs/field.html) documentation.
|
|
104
|
+
*
|
|
105
|
+
* __Notes:__
|
|
106
|
+
* 1) Dots (`.`) and brackets (`[` and `]`) can be used to access nested objects (e.g., `"field": "foo.bar"` and `"field": "foo['bar']"`).
|
|
107
|
+
* If field names contain dots or brackets but are not nested, you can use `\\` to escape dots and brackets (e.g., `"a\\.b"` and `"a\\[0\\]"`).
|
|
108
|
+
* See more details about escaping in the [field documentation](https://vega.github.io/vega-lite/docs/field.html).
|
|
109
|
+
* 2) `field` is not required if `aggregate` is `count`.
|
|
110
|
+
*/
|
|
111
|
+
field?: F;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export type TypedFieldDef<
|
|
115
|
+
F extends Field,
|
|
116
|
+
T extends Type = any
|
|
117
|
+
> = FieldDefBase<F> & TitleMixins & TypeMixins<T>;
|
|
118
|
+
|
|
119
|
+
export type ScaleFieldDef<F extends Field, T extends Type> = TypedFieldDef<
|
|
120
|
+
F,
|
|
121
|
+
T
|
|
122
|
+
> &
|
|
123
|
+
ScaleMixins;
|
|
124
|
+
|
|
125
|
+
export type FieldDefWithoutScale<F extends Field> = FieldDefBase<F> &
|
|
126
|
+
TitleMixins;
|
|
127
|
+
|
|
128
|
+
export interface ScaleMixins {
|
|
129
|
+
/**
|
|
130
|
+
* An object defining properties of the channel's scale, which is the function that transforms values in the data domain (numbers, dates, strings, etc) to visual values (pixels, colors, sizes) of the encoding channels.
|
|
131
|
+
*
|
|
132
|
+
* If `null`, the scale will be [disabled and the data value will be directly encoded](https://vega.github.io/vega-lite/docs/scale.html#disable).
|
|
133
|
+
*
|
|
134
|
+
* __Default value:__ If undefined, default [scale properties](https://vega.github.io/vega-lite/docs/scale.html) are applied.
|
|
135
|
+
*
|
|
136
|
+
* __See also:__ [`scale`](https://vega.github.io/vega-lite/docs/scale.html) documentation.
|
|
137
|
+
*/
|
|
138
|
+
scale?: Scale | null;
|
|
139
|
+
|
|
140
|
+
/**
|
|
141
|
+
* An alternative channel for scale resolution.
|
|
142
|
+
*
|
|
143
|
+
* This is mainly for internal use and allows using `color` channel to resolve `fill` and `stroke` channels under certain circumstances.
|
|
144
|
+
*/
|
|
145
|
+
resolutionChannel?: ChannelWithScale;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
export interface ValueDefBase<V extends Value = Scalar> {
|
|
149
|
+
/**
|
|
150
|
+
* A constant value in visual domain (e.g., `"red"` / `"#0099ff"`, values between `0` to `1` for opacity).
|
|
151
|
+
*/
|
|
152
|
+
value: V;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export type ValueDef<V extends Value = Scalar> = ValueDefBase<V> & TitleMixins;
|
|
156
|
+
|
|
157
|
+
export interface DatumDefBase {
|
|
158
|
+
/**
|
|
159
|
+
* A constant value in data domain.
|
|
160
|
+
*/
|
|
161
|
+
datum?: Scalar;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
export type DatumDef = DatumDefBase & TitleMixins;
|
|
165
|
+
|
|
166
|
+
export interface ExprDef {
|
|
167
|
+
/** An expression. Properties of the data can be accessed through the `datum` object. */
|
|
168
|
+
expr: string;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Field definition of a mark property, which can contain a legend.
|
|
173
|
+
*/
|
|
174
|
+
export type MarkPropFieldDef<
|
|
175
|
+
F extends Field,
|
|
176
|
+
T extends Type = Type
|
|
177
|
+
> = ScaleFieldDef<F, T> & LegendMixins;
|
|
178
|
+
|
|
179
|
+
export type MarkPropExprDef<T extends Type = Type> = ExprDef &
|
|
180
|
+
TypeMixins<T> &
|
|
181
|
+
ScaleMixins &
|
|
182
|
+
TitleMixins;
|
|
183
|
+
|
|
184
|
+
export type MarkPropDatumDef<T extends Type> = LegendMixins &
|
|
185
|
+
ScaleDatumDef &
|
|
186
|
+
TypeMixins<T>;
|
|
187
|
+
|
|
188
|
+
export type MarkPropFieldOrDatumOrExprDef<
|
|
189
|
+
F extends Field,
|
|
190
|
+
T extends Type = Type
|
|
191
|
+
> = MarkPropFieldDef<F, T> | MarkPropDatumDef<T> | MarkPropExprDef;
|
|
192
|
+
|
|
193
|
+
export interface LegendMixins {
|
|
194
|
+
/**
|
|
195
|
+
* An object defining properties of the legend.
|
|
196
|
+
* If `null`, the legend for the encoding channel will be removed.
|
|
197
|
+
*
|
|
198
|
+
* __Default value:__ If undefined, default [legend properties](https://vega.github.io/vega-lite/docs/legend.html) are applied.
|
|
199
|
+
*
|
|
200
|
+
* __See also:__ [`legend`](https://vega.github.io/vega-lite/docs/legend.html) documentation.
|
|
201
|
+
*/
|
|
202
|
+
// TODO: legend?: Legend<ExprRef | SignalRef> | null;
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
export type MarkPropDef<
|
|
206
|
+
F extends Field,
|
|
207
|
+
V extends Value,
|
|
208
|
+
T extends Type = Type
|
|
209
|
+
> = MarkPropFieldOrDatumOrExprDef<F, T> | ValueDef<V>;
|
|
210
|
+
|
|
211
|
+
export type ColorDef<F extends Field> = MarkPropDef<F, string | null>;
|
|
212
|
+
|
|
213
|
+
export type SecondaryFieldDef<F extends Field> = FieldDefBase<F> & TitleMixins;
|
|
214
|
+
|
|
215
|
+
export type NumericValueDef = ValueDef<number>;
|
|
216
|
+
|
|
217
|
+
export type ScaleDatumDef = ScaleMixins & DatumDef;
|
|
218
|
+
|
|
219
|
+
export type PositionDatumDefBase = ScaleDatumDef & TypeMixins<Type>;
|
|
220
|
+
|
|
221
|
+
export type PositionFieldDef<F extends Field> = PositionFieldDefBase<F> &
|
|
222
|
+
PositionMixins;
|
|
223
|
+
|
|
224
|
+
export type PositionDatumDef = PositionDatumDefBase & PositionMixins;
|
|
225
|
+
|
|
226
|
+
export type PositionExprDef = ExprDef &
|
|
227
|
+
PositionMixins &
|
|
228
|
+
BandMixins &
|
|
229
|
+
TypeMixins<Type>;
|
|
230
|
+
|
|
231
|
+
export type PositionValueDef = NumericValueDef;
|
|
232
|
+
|
|
233
|
+
export interface PositionMixins extends BandMixins {
|
|
234
|
+
/**
|
|
235
|
+
* An object defining properties of axis's gridlines, ticks and labels.
|
|
236
|
+
* If `null`, the axis for the encoding channel will be removed.
|
|
237
|
+
*
|
|
238
|
+
* __Default value:__ If undefined, default [axis properties](https://vega.github.io/vega-lite/docs/axis.html) are applied.
|
|
239
|
+
*
|
|
240
|
+
* __See also:__ [`axis`](https://vega.github.io/vega-lite/docs/axis.html) documentation.
|
|
241
|
+
*/
|
|
242
|
+
axis?: GenomeAxis | null;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
export type PositionFieldDefBase<F extends Field> = ScaleFieldDef<F, Type>;
|
|
246
|
+
|
|
247
|
+
export interface ChromPosDefBase extends BandMixins {
|
|
248
|
+
/**
|
|
249
|
+
* The field having the chromosome or contig.
|
|
250
|
+
*/
|
|
251
|
+
chrom: FieldName;
|
|
252
|
+
|
|
253
|
+
/**
|
|
254
|
+
* The field having an intra-chromosomal position.
|
|
255
|
+
*/
|
|
256
|
+
pos?: FieldName;
|
|
257
|
+
|
|
258
|
+
/**
|
|
259
|
+
* An offset or offsets that allow for adjusting the numbering base. The offset
|
|
260
|
+
* is subtracted from the positions.
|
|
261
|
+
*
|
|
262
|
+
* GenomeSpy uses internally zero-based indexing with half-open intervals.
|
|
263
|
+
* UCSC-based formats (BED, etc.) generally use this scheme. However, for example,
|
|
264
|
+
* VCF files use one-based indexing and must be adjusted by setting the offset to
|
|
265
|
+
* `1`.
|
|
266
|
+
*
|
|
267
|
+
* **Default:** `0`
|
|
268
|
+
*/
|
|
269
|
+
offset?: number;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
export type SecondaryChromPosDef = ChromPosDefBase &
|
|
273
|
+
TitleMixins &
|
|
274
|
+
PositionMixins;
|
|
275
|
+
|
|
276
|
+
export type ChromPosDef = SecondaryChromPosDef &
|
|
277
|
+
TypeMixins<"locus"> &
|
|
278
|
+
ScaleMixins;
|
|
279
|
+
|
|
280
|
+
export type PositionDef<F extends Field> =
|
|
281
|
+
| PositionFieldDef<F>
|
|
282
|
+
| ChromPosDef
|
|
283
|
+
| PositionDatumDef
|
|
284
|
+
| PositionExprDef
|
|
285
|
+
| PositionValueDef;
|
|
286
|
+
|
|
287
|
+
export type Position2Def<F extends Field> =
|
|
288
|
+
| (SecondaryFieldDef<F> & BandMixins)
|
|
289
|
+
| SecondaryChromPosDef
|
|
290
|
+
| (DatumDef & BandMixins)
|
|
291
|
+
| (ExprDef & BandMixins)
|
|
292
|
+
| PositionValueDef;
|
|
293
|
+
|
|
294
|
+
export type NumericMarkPropDef<F extends Field> = MarkPropDef<F, number>;
|
|
295
|
+
|
|
296
|
+
export type ShapeDef<F extends Field> = MarkPropDef<
|
|
297
|
+
F,
|
|
298
|
+
string | null,
|
|
299
|
+
TypeForShape
|
|
300
|
+
>;
|
|
301
|
+
|
|
302
|
+
export interface StringFieldDef<F extends Field>
|
|
303
|
+
extends FieldDefWithoutScale<F>,
|
|
304
|
+
FormatMixins {}
|
|
305
|
+
|
|
306
|
+
export type TextDef<F extends Field> =
|
|
307
|
+
| StringFieldDef<F>
|
|
308
|
+
| StringDatumDef
|
|
309
|
+
| ExprDef;
|
|
310
|
+
|
|
311
|
+
export type ChannelDef<F extends Field = string> =
|
|
312
|
+
Encoding<F>[keyof Encoding<F>];
|
|
313
|
+
|
|
314
|
+
// TODO: Does this make sense?
|
|
315
|
+
export type ChannelDefWithScale = ScaleMixins & TypeMixins<Type>;
|
|
316
|
+
|
|
317
|
+
export interface Encoding<F extends Field = string> {
|
|
318
|
+
/**
|
|
319
|
+
* X coordinates of the marks.
|
|
320
|
+
*
|
|
321
|
+
* The `value` of this channel can be a number between zero and one.
|
|
322
|
+
*/
|
|
323
|
+
x?: PositionDef<F>;
|
|
324
|
+
|
|
325
|
+
/**
|
|
326
|
+
* Y coordinates of the marks.
|
|
327
|
+
*
|
|
328
|
+
* The `value` of this channel can be a number between zero and one.
|
|
329
|
+
*/
|
|
330
|
+
y?: PositionDef<F>;
|
|
331
|
+
|
|
332
|
+
/**
|
|
333
|
+
* X2 coordinates of the marks.
|
|
334
|
+
*
|
|
335
|
+
* The `value` of this channel can be a number between zero and one.
|
|
336
|
+
*/
|
|
337
|
+
x2?: Position2Def<F>;
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Y2 coordinates of the marks.
|
|
341
|
+
*
|
|
342
|
+
* The `value` of this channel can be a number between zero and one.
|
|
343
|
+
*/
|
|
344
|
+
y2?: Position2Def<F>;
|
|
345
|
+
|
|
346
|
+
dx?: NumericMarkPropDef<F>;
|
|
347
|
+
dy?: NumericMarkPropDef<F>;
|
|
348
|
+
|
|
349
|
+
/**
|
|
350
|
+
* Color of the marks – either fill or stroke color based on the `filled` property of mark definition.
|
|
351
|
+
*
|
|
352
|
+
* _Note:_
|
|
353
|
+
* 1) For fine-grained control over both fill and stroke colors of the marks, please use the `fill` and `stroke` channels. The `fill` or `stroke` encodings have higher precedence than `color`, thus may override the `color` encoding if conflicting encodings are specified.
|
|
354
|
+
* 2) See the scale documentation for more information about customizing [color scheme](https://vega.github.io/vega-lite/docs/scale.html#scheme).
|
|
355
|
+
*/
|
|
356
|
+
color?: ColorDef<F>;
|
|
357
|
+
|
|
358
|
+
/**
|
|
359
|
+
* Fill color of the marks.
|
|
360
|
+
*
|
|
361
|
+
* _Note:_ The `fill` encoding has higher precedence than `color`, thus may override the `color` encoding if conflicting encodings are specified.
|
|
362
|
+
*/
|
|
363
|
+
fill?: ColorDef<F>;
|
|
364
|
+
|
|
365
|
+
/**
|
|
366
|
+
* Stroke color of the marks.
|
|
367
|
+
*
|
|
368
|
+
* _Note:_ The `stroke` encoding has higher precedence than `color`, thus may override the `color` encoding if conflicting encodings are specified.
|
|
369
|
+
*/
|
|
370
|
+
|
|
371
|
+
stroke?: ColorDef<F>;
|
|
372
|
+
|
|
373
|
+
/**
|
|
374
|
+
* Opacity of the marks.
|
|
375
|
+
*/
|
|
376
|
+
opacity?: NumericMarkPropDef<F>;
|
|
377
|
+
|
|
378
|
+
/**
|
|
379
|
+
* Fill opacity of the marks.
|
|
380
|
+
*/
|
|
381
|
+
fillOpacity?: NumericMarkPropDef<F>;
|
|
382
|
+
|
|
383
|
+
/**
|
|
384
|
+
* Stroke opacity of the marks.
|
|
385
|
+
*/
|
|
386
|
+
strokeOpacity?: NumericMarkPropDef<F>;
|
|
387
|
+
|
|
388
|
+
/**
|
|
389
|
+
* Stroke width of the marks.
|
|
390
|
+
*/
|
|
391
|
+
strokeWidth?: NumericMarkPropDef<F>;
|
|
392
|
+
|
|
393
|
+
/**
|
|
394
|
+
* Size of the mark.
|
|
395
|
+
* - For `"point"` – the symbol size, or pixel area of the mark.
|
|
396
|
+
* - For `"text"` – the text's font size.
|
|
397
|
+
*/
|
|
398
|
+
size?: NumericMarkPropDef<F>;
|
|
399
|
+
|
|
400
|
+
/**
|
|
401
|
+
* Rotation angle of point and text marks.
|
|
402
|
+
*/
|
|
403
|
+
angle?: NumericMarkPropDef<F>;
|
|
404
|
+
|
|
405
|
+
/**
|
|
406
|
+
* Shape of the mark.
|
|
407
|
+
*
|
|
408
|
+
* For `point` marks the supported values include:
|
|
409
|
+
* - plotting shapes: `"circle"`, `"square"`, `"cross"`, `"diamond"`, `"triangle-up"`, `"triangle-down"`, `"triangle-right"`, or `"triangle-left"`.
|
|
410
|
+
* - centered directional shape `"triangle"`
|
|
411
|
+
*/
|
|
412
|
+
shape?: ShapeDef<F>;
|
|
413
|
+
|
|
414
|
+
/**
|
|
415
|
+
* Text of the `text` mark.
|
|
416
|
+
*/
|
|
417
|
+
text?: TextDef<F>;
|
|
418
|
+
|
|
419
|
+
/**
|
|
420
|
+
* Facet identifier for interactive filtering, sorting, and grouping in the App.
|
|
421
|
+
*/
|
|
422
|
+
sample?: FieldDefWithoutScale<F>;
|
|
423
|
+
|
|
424
|
+
/**
|
|
425
|
+
* For internal use
|
|
426
|
+
*/
|
|
427
|
+
// TODO: proper type
|
|
428
|
+
uniqueId?: FieldDefWithoutScale<F>;
|
|
429
|
+
|
|
430
|
+
// TODO: proper type
|
|
431
|
+
search?: FieldDefWithoutScale<F>;
|
|
432
|
+
|
|
433
|
+
/**
|
|
434
|
+
* For internal use
|
|
435
|
+
*/
|
|
436
|
+
// TODO: proper type
|
|
437
|
+
facetIndex?: FieldDefWithoutScale<F>;
|
|
438
|
+
|
|
439
|
+
semanticScore?: FieldDefWithoutScale<F>;
|
|
440
|
+
}
|