@genome-spy/core 0.72.0 → 0.74.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/LICENSE +1 -1
- package/dist/bundle/AbortablePromiseCache-3gHJdF3E.js +96 -0
- package/dist/bundle/browser-BTgw5ieH.js +126 -0
- package/dist/bundle/chunk-DmhlhrBa.js +11 -0
- package/dist/bundle/esm-BDFRLEuD.js +1248 -0
- package/dist/bundle/esm-BygJiwh0.js +573 -0
- package/dist/bundle/esm-CGX-qz1d.js +155 -0
- package/dist/bundle/esm-CgfVIRJ-.js +121 -0
- package/dist/bundle/esm-CuMSzCHy.js +298 -0
- package/dist/bundle/esm-DMXpJXM4.js +369 -0
- package/dist/bundle/esm-DQiq2Zhd.js +1426 -0
- package/dist/bundle/esm-DtE8VqAv.js +1015 -0
- package/dist/bundle/esm-sIoQYZ21.js +461 -0
- package/dist/bundle/index.es.js +21078 -24556
- package/dist/bundle/index.js +379 -383
- package/dist/bundle/parquetRead-DG_-F5j5.js +1609 -0
- package/dist/schema.json +13349 -7082
- package/dist/src/config/axisConfig.d.ts +16 -0
- package/dist/src/config/axisConfig.d.ts.map +1 -0
- package/dist/src/config/axisConfig.js +84 -0
- package/dist/src/config/defaultConfig.d.ts +3 -0
- package/dist/src/config/defaultConfig.d.ts.map +1 -0
- package/dist/src/config/defaultConfig.js +38 -0
- package/dist/src/config/defaults/axisDefaults.d.ts +5 -0
- package/dist/src/config/defaults/axisDefaults.d.ts.map +1 -0
- package/dist/src/config/defaults/axisDefaults.js +72 -0
- package/dist/src/config/defaults/markDefaults.d.ts +15 -0
- package/dist/src/config/defaults/markDefaults.d.ts.map +1 -0
- package/dist/src/config/defaults/markDefaults.js +121 -0
- package/dist/src/config/defaults/scaleDefaults.d.ts +5 -0
- package/dist/src/config/defaults/scaleDefaults.d.ts.map +1 -0
- package/dist/src/config/defaults/scaleDefaults.js +18 -0
- package/dist/src/config/defaults/titleDefaults.d.ts +5 -0
- package/dist/src/config/defaults/titleDefaults.d.ts.map +1 -0
- package/dist/src/config/defaults/titleDefaults.js +47 -0
- package/dist/src/config/defaults/viewDefaults.d.ts +3 -0
- package/dist/src/config/defaults/viewDefaults.d.ts.map +1 -0
- package/dist/src/config/defaults/viewDefaults.js +2 -0
- package/dist/src/config/markConfig.d.ts +8 -0
- package/dist/src/config/markConfig.d.ts.map +1 -0
- package/dist/src/config/markConfig.js +27 -0
- package/dist/src/config/mergeConfig.d.ts +8 -0
- package/dist/src/config/mergeConfig.d.ts.map +1 -0
- package/dist/src/config/mergeConfig.js +81 -0
- package/dist/src/config/resolveConfig.d.ts +22 -0
- package/dist/src/config/resolveConfig.d.ts.map +1 -0
- package/dist/src/config/resolveConfig.js +32 -0
- package/dist/src/config/scaleConfig.d.ts +40 -0
- package/dist/src/config/scaleConfig.d.ts.map +1 -0
- package/dist/src/config/scaleConfig.js +220 -0
- package/dist/src/config/styleUtils.d.ts +6 -0
- package/dist/src/config/styleUtils.d.ts.map +1 -0
- package/dist/src/config/styleUtils.js +10 -0
- package/dist/src/config/themes.d.ts +15 -0
- package/dist/src/config/themes.d.ts.map +1 -0
- package/dist/src/config/themes.js +293 -0
- package/dist/src/config/titleConfig.d.ts +12 -0
- package/dist/src/config/titleConfig.d.ts.map +1 -0
- package/dist/src/config/titleConfig.js +42 -0
- package/dist/src/config/viewConfig.d.ts +7 -0
- package/dist/src/config/viewConfig.d.ts.map +1 -0
- package/dist/src/config/viewConfig.js +29 -0
- package/dist/src/data/flowNode.d.ts +22 -1
- package/dist/src/data/flowNode.d.ts.map +1 -1
- package/dist/src/data/flowNode.js +37 -1
- package/dist/src/data/formats/bed.d.ts +8 -0
- package/dist/src/data/formats/bed.d.ts.map +1 -0
- package/dist/src/data/formats/bed.js +58 -0
- package/dist/src/data/formats/bedpe.d.ts +8 -0
- package/dist/src/data/formats/bedpe.d.ts.map +1 -0
- package/dist/src/data/formats/bedpe.js +164 -0
- package/dist/src/data/formats/fasta.d.ts.map +1 -1
- package/dist/src/data/formats/fasta.js +4 -0
- package/dist/src/data/formats/parquet.d.ts.map +1 -1
- package/dist/src/data/formats/parquet.js +4 -0
- package/dist/src/data/sources/dataSourceFactory.d.ts +2 -13
- package/dist/src/data/sources/dataSourceFactory.d.ts.map +1 -1
- package/dist/src/data/sources/dataSourceFactory.js +5 -141
- package/dist/src/data/sources/dataUtils.d.ts +16 -0
- package/dist/src/data/sources/dataUtils.d.ts.map +1 -1
- package/dist/src/data/sources/dataUtils.js +53 -3
- package/dist/src/data/sources/lazy/axisGenomeSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/axisGenomeSource.js +11 -0
- package/dist/src/data/sources/lazy/axisTickSource.d.ts +1 -1
- package/dist/src/data/sources/lazy/axisTickSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/axisTickSource.js +19 -8
- package/dist/src/data/sources/lazy/bamSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/bamSource.js +11 -0
- package/dist/src/data/sources/lazy/bigBedSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/bigBedSource.js +12 -1
- package/dist/src/data/sources/lazy/bigWigSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/bigWigSource.js +11 -0
- package/dist/src/data/sources/lazy/gff3Source.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/gff3Source.js +12 -1
- package/dist/src/data/sources/lazy/indexedFastaSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/indexedFastaSource.js +11 -0
- package/dist/src/data/sources/lazy/lazyDataSourceRegistry.d.ts +27 -0
- package/dist/src/data/sources/lazy/lazyDataSourceRegistry.d.ts.map +1 -0
- package/dist/src/data/sources/lazy/lazyDataSourceRegistry.js +65 -0
- package/dist/src/data/sources/lazy/registerBuiltInLazySources.d.ts +2 -0
- package/dist/src/data/sources/lazy/registerBuiltInLazySources.d.ts.map +1 -0
- package/dist/src/data/sources/lazy/registerBuiltInLazySources.js +8 -0
- package/dist/src/data/sources/lazy/singleAxisLazySource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/singleAxisLazySource.js +11 -2
- package/dist/src/data/sources/lazy/vcfSource.d.ts.map +1 -1
- package/dist/src/data/sources/lazy/vcfSource.js +11 -0
- package/dist/src/data/sources/urlSource.d.ts +4 -0
- package/dist/src/data/sources/urlSource.d.ts.map +1 -1
- package/dist/src/data/sources/urlSource.js +138 -16
- package/dist/src/data/transforms/aggregate.d.ts +1 -0
- package/dist/src/data/transforms/aggregate.d.ts.map +1 -1
- package/dist/src/data/transforms/aggregate.js +30 -8
- package/dist/src/data/transforms/aggregateOps.d.ts.map +1 -1
- package/dist/src/data/transforms/aggregateOps.js +12 -1
- package/dist/src/data/transforms/coverage.js +2 -2
- package/dist/src/data/transforms/filter.js +1 -1
- package/dist/src/data/transforms/filterScoredLabels.d.ts +6 -0
- package/dist/src/data/transforms/filterScoredLabels.d.ts.map +1 -1
- package/dist/src/data/transforms/filterScoredLabels.js +9 -0
- package/dist/src/data/transforms/measureText.d.ts +1 -0
- package/dist/src/data/transforms/measureText.d.ts.map +1 -1
- package/dist/src/data/transforms/measureText.js +14 -5
- package/dist/src/data/transforms/pileup.d.ts.map +1 -1
- package/dist/src/data/transforms/pileup.js +1 -2
- package/dist/src/data/transforms/regexFold.d.ts.map +1 -1
- package/dist/src/data/transforms/regexFold.js +0 -1
- package/dist/src/embedFactory.d.ts +13 -0
- package/dist/src/embedFactory.d.ts.map +1 -0
- package/dist/src/embedFactory.js +127 -0
- package/dist/src/encoder/accessor.d.ts +3 -12
- package/dist/src/encoder/accessor.d.ts.map +1 -1
- package/dist/src/encoder/accessor.js +10 -65
- package/dist/src/encoder/encoder.d.ts +51 -8
- package/dist/src/encoder/encoder.d.ts.map +1 -1
- package/dist/src/encoder/encoder.js +179 -55
- package/dist/src/fonts/bmFontManager.js +1 -1
- package/dist/src/full.d.ts +2 -0
- package/dist/src/full.d.ts.map +1 -0
- package/dist/src/full.js +2 -0
- package/dist/src/genome/assemblyPreflight.d.ts +31 -0
- package/dist/src/genome/assemblyPreflight.d.ts.map +1 -0
- package/dist/src/genome/assemblyPreflight.js +99 -0
- package/dist/src/genome/genome.d.ts +10 -2
- package/dist/src/genome/genome.d.ts.map +1 -1
- package/dist/src/genome/genome.js +20 -2
- package/dist/src/genome/genomeStore.d.ts +34 -3
- package/dist/src/genome/genomeStore.d.ts.map +1 -1
- package/dist/src/genome/genomeStore.js +409 -18
- package/dist/src/genome/rootGenomeConfig.d.ts +26 -0
- package/dist/src/genome/rootGenomeConfig.d.ts.map +1 -0
- package/dist/src/genome/rootGenomeConfig.js +98 -0
- package/dist/src/genome/scaleLocus.d.ts.map +1 -1
- package/dist/src/genome/scaleLocus.js +26 -7
- package/dist/src/genomeSpy/cursorManager.d.ts +69 -0
- package/dist/src/genomeSpy/cursorManager.d.ts.map +1 -0
- package/dist/src/genomeSpy/cursorManager.js +131 -0
- package/dist/src/genomeSpy/headlessBootstrap.d.ts +113 -0
- package/dist/src/genomeSpy/headlessBootstrap.d.ts.map +1 -0
- package/dist/src/genomeSpy/headlessBootstrap.js +246 -0
- package/dist/src/genomeSpy/interactionController.d.ts +10 -1
- package/dist/src/genomeSpy/interactionController.d.ts.map +1 -1
- package/dist/src/genomeSpy/interactionController.js +448 -40
- package/dist/src/genomeSpy/interactionDispatcher.d.ts +50 -0
- package/dist/src/genomeSpy/interactionDispatcher.d.ts.map +1 -0
- package/dist/src/genomeSpy/interactionDispatcher.js +203 -0
- package/dist/src/genomeSpy/renderCoordinator.js +1 -1
- package/dist/src/genomeSpy/viewContextFactory.d.ts +4 -2
- package/dist/src/genomeSpy/viewContextFactory.d.ts.map +1 -1
- package/dist/src/genomeSpy/viewContextFactory.js +12 -4
- package/dist/src/genomeSpy/viewDataInit.d.ts.map +1 -1
- package/dist/src/genomeSpy/viewDataInit.js +7 -3
- package/dist/src/genomeSpy.d.ts +1 -114
- package/dist/src/genomeSpy.d.ts.map +1 -1
- package/dist/src/genomeSpy.js +7 -614
- package/dist/src/genomeSpyBase.d.ts +133 -0
- package/dist/src/genomeSpyBase.d.ts.map +1 -0
- package/dist/src/genomeSpyBase.js +719 -0
- package/dist/src/gl/arrayBuilder.d.ts.map +1 -1
- package/dist/src/gl/arrayBuilder.js +0 -3
- package/dist/src/gl/canvasSizeHelper.d.ts +74 -0
- package/dist/src/gl/canvasSizeHelper.d.ts.map +1 -0
- package/dist/src/gl/canvasSizeHelper.js +203 -0
- package/dist/src/gl/colorUtils.d.ts.map +1 -1
- package/dist/src/gl/colorUtils.js +3 -0
- package/dist/src/gl/dataToVertices.d.ts.map +1 -1
- package/dist/src/gl/dataToVertices.js +13 -8
- package/dist/src/gl/glslScaleGenerator.d.ts +2 -2
- package/dist/src/gl/glslScaleGenerator.d.ts.map +1 -1
- package/dist/src/gl/glslScaleGenerator.js +5 -7
- package/dist/src/gl/webGLHelper.d.ts +25 -11
- package/dist/src/gl/webGLHelper.d.ts.map +1 -1
- package/dist/src/gl/webGLHelper.js +59 -33
- package/dist/src/index.d.ts +3 -9
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +5 -111
- package/dist/src/marks/__snapshots__/shaderSnapshot.test.js.snap +4462 -0
- package/dist/src/marks/link.d.ts.map +1 -1
- package/dist/src/marks/link.js +5 -26
- package/dist/src/marks/mark.d.ts +8 -1
- package/dist/src/marks/mark.d.ts.map +1 -1
- package/dist/src/marks/mark.js +67 -21
- package/dist/src/marks/markUtils.d.ts +18 -1
- package/dist/src/marks/markUtils.d.ts.map +1 -1
- package/dist/src/marks/markUtils.js +52 -4
- package/dist/src/marks/point.d.ts.map +1 -1
- package/dist/src/marks/point.js +6 -26
- package/dist/src/marks/rect.d.ts.map +1 -1
- package/dist/src/marks/rect.js +13 -21
- package/dist/src/marks/rule.d.ts +7 -2
- package/dist/src/marks/rule.d.ts.map +1 -1
- package/dist/src/marks/rule.js +125 -16
- package/dist/src/marks/text.d.ts.map +1 -1
- package/dist/src/marks/text.js +5 -47
- package/dist/src/minimal.d.ts +8 -0
- package/dist/src/minimal.d.ts.map +1 -0
- package/dist/src/minimal.js +21 -0
- package/dist/src/paramRuntime/viewParamRuntime.d.ts +19 -0
- package/dist/src/paramRuntime/viewParamRuntime.d.ts.map +1 -1
- package/dist/src/paramRuntime/viewParamRuntime.js +35 -0
- package/dist/src/scale/scale.d.ts.map +1 -1
- package/dist/src/scale/scale.js +13 -7
- package/dist/src/scales/axisResolution.d.ts.map +1 -1
- package/dist/src/scales/axisResolution.js +9 -5
- package/dist/src/scales/domainPlanner.d.ts +58 -7
- package/dist/src/scales/domainPlanner.d.ts.map +1 -1
- package/dist/src/scales/domainPlanner.js +395 -40
- package/dist/src/scales/indexLikeDomainUtils.d.ts +29 -0
- package/dist/src/scales/indexLikeDomainUtils.d.ts.map +1 -0
- package/dist/src/scales/indexLikeDomainUtils.js +67 -0
- package/dist/src/scales/resolutionMemberOrder.d.ts +15 -0
- package/dist/src/scales/resolutionMemberOrder.d.ts.map +1 -0
- package/dist/src/scales/resolutionMemberOrder.js +22 -0
- package/dist/src/scales/scaleInstanceManager.d.ts +2 -1
- package/dist/src/scales/scaleInstanceManager.d.ts.map +1 -1
- package/dist/src/scales/scaleInstanceManager.js +10 -11
- package/dist/src/scales/scaleInteractionController.d.ts.map +1 -1
- package/dist/src/scales/scaleInteractionController.js +59 -18
- package/dist/src/scales/scalePropsResolver.d.ts +3 -1
- package/dist/src/scales/scalePropsResolver.d.ts.map +1 -1
- package/dist/src/scales/scalePropsResolver.js +83 -6
- package/dist/src/scales/scaleResolution.d.ts +39 -0
- package/dist/src/scales/scaleResolution.d.ts.map +1 -1
- package/dist/src/scales/scaleResolution.js +504 -82
- package/dist/src/scales/scaleResolutionTestUtils.d.ts +21 -0
- package/dist/src/scales/scaleResolutionTestUtils.d.ts.map +1 -0
- package/dist/src/scales/scaleResolutionTestUtils.js +37 -0
- package/dist/src/scales/scaleRules.d.ts.map +1 -1
- package/dist/src/scales/scaleRules.js +16 -2
- package/dist/src/scales/selectionDomainUtils.d.ts +52 -0
- package/dist/src/scales/selectionDomainUtils.d.ts.map +1 -0
- package/dist/src/scales/selectionDomainUtils.js +194 -0
- package/dist/src/scales/zoomDomainUtils.d.ts +18 -0
- package/dist/src/scales/zoomDomainUtils.d.ts.map +1 -0
- package/dist/src/scales/zoomDomainUtils.js +69 -0
- package/dist/src/screenshotHarness.d.ts +16 -0
- package/dist/src/screenshotHarness.d.ts.map +1 -0
- package/dist/src/screenshotHarness.js +241 -0
- package/dist/src/singlePageApp.js +1 -1
- package/dist/src/spec/axis.d.ts +41 -30
- package/dist/src/spec/channel.d.ts +15 -9
- package/dist/src/spec/config.d.ts +264 -0
- package/dist/src/spec/data.d.ts +30 -3
- package/dist/src/spec/decoration.d.ts +51 -0
- package/dist/src/spec/exampleFiles.d.ts +12 -0
- package/dist/src/spec/exampleFiles.d.ts.map +1 -0
- package/dist/src/spec/exampleFiles.js +52 -0
- package/dist/src/spec/font.d.ts +1 -1
- package/dist/src/spec/genome.d.ts +22 -2
- package/dist/src/spec/mark.d.ts +97 -13
- package/dist/src/spec/parameter.d.ts +62 -5
- package/dist/src/spec/root.d.ts +34 -1
- package/dist/src/spec/scale.d.ts +46 -5
- package/dist/src/spec/title.d.ts +13 -2
- package/dist/src/spec/tooltip.d.ts +1 -1
- package/dist/src/spec/transform.d.ts +39 -4
- package/dist/src/spec/view.d.ts +67 -19
- package/dist/src/styles/genome-spy.css +63 -55
- package/dist/src/styles/genome-spy.css.d.ts +1 -1
- package/dist/src/styles/genome-spy.css.d.ts.map +1 -1
- package/dist/src/styles/genome-spy.css.js +31 -22
- package/dist/src/testSetup.d.ts +2 -0
- package/dist/src/testSetup.d.ts.map +1 -0
- package/dist/src/testSetup.js +5 -0
- package/dist/src/tooltip/dataTooltipHandler.js +66 -11
- package/dist/src/tooltip/tooltipContext.d.ts.map +1 -1
- package/dist/src/tooltip/tooltipContext.js +3 -2
- package/dist/src/types/embedApi.d.ts +26 -0
- package/dist/src/types/encoder.d.ts +17 -15
- package/dist/src/types/scaleResolutionApi.d.ts +20 -0
- package/dist/src/types/viewContext.d.ts +23 -1
- package/dist/src/utils/expression.d.ts +2 -2
- package/dist/src/utils/expression.d.ts.map +1 -1
- package/dist/src/utils/expression.js +63 -8
- package/dist/src/utils/field.d.ts.map +1 -1
- package/dist/src/utils/field.js +0 -1
- package/dist/src/utils/inertia.d.ts.map +1 -1
- package/dist/src/utils/inertia.js +0 -1
- package/dist/src/utils/inferSpecBaseUrl.d.ts +14 -0
- package/dist/src/utils/inferSpecBaseUrl.d.ts.map +1 -0
- package/dist/src/utils/inferSpecBaseUrl.js +73 -0
- package/dist/src/utils/inputBinding.d.ts +1 -1
- package/dist/src/utils/interaction.d.ts +109 -0
- package/dist/src/utils/interaction.d.ts.map +1 -0
- package/dist/src/utils/interaction.js +200 -0
- package/dist/src/utils/interactionEvent.d.ts +62 -33
- package/dist/src/utils/interactionEvent.d.ts.map +1 -1
- package/dist/src/utils/interactionEvent.js +86 -48
- package/dist/src/utils/kWayMerge.js +1 -1
- package/dist/src/utils/mergeObjects.d.ts.map +1 -1
- package/dist/src/utils/mergeObjects.js +0 -2
- package/dist/src/utils/radixSort.d.ts.map +1 -1
- package/dist/src/utils/radixSort.js +0 -2
- package/dist/src/utils/throttle.d.ts.map +1 -1
- package/dist/src/utils/throttle.js +0 -2
- package/dist/src/utils/ui/tooltip.d.ts +1 -0
- package/dist/src/utils/ui/tooltip.d.ts.map +1 -1
- package/dist/src/utils/ui/tooltip.js +1 -0
- package/dist/src/utils/url.js +1 -1
- package/dist/src/view/axisGridView.d.ts +1 -1
- package/dist/src/view/axisGridView.d.ts.map +1 -1
- package/dist/src/view/axisGridView.js +2 -47
- package/dist/src/view/axisView.d.ts +2 -3
- package/dist/src/view/axisView.d.ts.map +1 -1
- package/dist/src/view/axisView.js +251 -106
- package/dist/src/view/concatView.d.ts +2 -1
- package/dist/src/view/concatView.d.ts.map +1 -1
- package/dist/src/view/concatView.js +4 -2
- package/dist/src/view/containerMutationHelper.d.ts +3 -0
- package/dist/src/view/containerMutationHelper.d.ts.map +1 -1
- package/dist/src/view/containerMutationHelper.js +12 -1
- package/dist/src/view/dataReadiness.d.ts +2 -2
- package/dist/src/view/dataReadiness.d.ts.map +1 -1
- package/dist/src/view/dataReadiness.js +63 -58
- package/dist/src/view/facetView.d.ts +1 -1
- package/dist/src/view/facetView.js +4 -4
- package/dist/src/view/flowBuilder.js +2 -2
- package/dist/src/view/gridView/gridChild.d.ts +13 -0
- package/dist/src/view/gridView/gridChild.d.ts.map +1 -1
- package/dist/src/view/gridView/gridChild.js +247 -49
- package/dist/src/view/gridView/gridView.d.ts.map +1 -1
- package/dist/src/view/gridView/gridView.js +296 -99
- package/dist/src/view/gridView/keyboardZoomController.d.ts +2 -2
- package/dist/src/view/gridView/keyboardZoomController.d.ts.map +1 -1
- package/dist/src/view/gridView/keyboardZoomController.js +1 -1
- package/dist/src/view/gridView/scrollbar.d.ts.map +1 -1
- package/dist/src/view/gridView/scrollbar.js +4 -2
- package/dist/src/view/gridView/selectionRect.d.ts +4 -0
- package/dist/src/view/gridView/selectionRect.d.ts.map +1 -1
- package/dist/src/view/gridView/selectionRect.js +20 -1
- package/dist/src/view/gridView/separatorView.d.ts +1 -0
- package/dist/src/view/gridView/separatorView.d.ts.map +1 -1
- package/dist/src/view/gridView/separatorView.js +9 -0
- package/dist/src/view/interactionRouting.d.ts +20 -0
- package/dist/src/view/interactionRouting.d.ts.map +1 -0
- package/dist/src/view/interactionRouting.js +53 -0
- package/dist/src/view/layerView.d.ts.map +1 -1
- package/dist/src/view/layerView.js +12 -9
- package/dist/src/view/layout/grid.js +1 -1
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.d.ts.map +1 -1
- package/dist/src/view/renderingContext/bufferedViewRenderingContext.js +0 -2
- package/dist/src/view/testUtils.d.ts +17 -3
- package/dist/src/view/testUtils.d.ts.map +1 -1
- package/dist/src/view/testUtils.js +62 -69
- package/dist/src/view/title.d.ts +8 -1
- package/dist/src/view/title.d.ts.map +1 -1
- package/dist/src/view/title.js +66 -76
- package/dist/src/view/unitView.d.ts +1 -1
- package/dist/src/view/unitView.d.ts.map +1 -1
- package/dist/src/view/unitView.js +67 -17
- package/dist/src/view/view.d.ts +76 -30
- package/dist/src/view/view.d.ts.map +1 -1
- package/dist/src/view/view.js +136 -47
- package/dist/src/view/viewFactory.d.ts +11 -3
- package/dist/src/view/viewFactory.d.ts.map +1 -1
- package/dist/src/view/viewFactory.js +37 -11
- package/dist/src/view/viewUtils.d.ts.map +1 -1
- package/dist/src/view/viewUtils.js +41 -5
- package/dist/src/view/zoom.d.ts +15 -3
- package/dist/src/view/zoom.d.ts.map +1 -1
- package/dist/src/view/zoom.js +375 -80
- package/package.json +20 -10
- package/dist/bundle/AbortablePromiseCache-Dj0vzLnp.js +0 -149
- package/dist/bundle/browser-0iNU5Wit.js +0 -138
- package/dist/bundle/index-BYsZN7b0.js +0 -1597
- package/dist/bundle/index-C3kClAEN.js +0 -1771
- package/dist/bundle/index-C7wOh6y1.js +0 -657
- package/dist/bundle/index-CRaQAuki.js +0 -326
- package/dist/bundle/index-D9v1PCj9.js +0 -507
- package/dist/bundle/index-GDOuv_D5.js +0 -266
- package/dist/bundle/index-Gt44EOIH.js +0 -628
- package/dist/bundle/inflate-GtwLkvSP.js +0 -1048
- package/dist/bundle/parquetRead-BnAGCa4_.js +0 -1663
- package/dist/bundle/unzip-Bac01w6X.js +0 -1492
- package/dist/src/config/scaleDefaults.d.ts +0 -8
- package/dist/src/config/scaleDefaults.d.ts.map +0 -1
- package/dist/src/config/scaleDefaults.js +0 -45
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arrayBuilder.d.ts","sourceRoot":"","sources":["../../../src/gl/arrayBuilder.js"],"names":[],"mappings":"AAQA;;;;;;;;GAQG;AACH;IAKI;;;OAGG;IACH,kBAFW,MAAM,EAehB;IAZG,aAAgB;IAEhB,mJAAmJ;IACnJ;;kBADkC,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY;2BAAiB,MAAM;sBAAY,MAAM;;MAC7H;IAEhB,kCAAkC;IAClC,SADW,CAAC,MAAW,IAAI,CAAC,EAAE,CACb;IAEjB,qCAAqC;IACrC,cADW,CAAC,CAAS,IAAG,EAAH,GAAG,KAAE,IAAI,CAAC,EAAE,CACX;IAEtB,oBAAoB;IAGxB,kBAOC;IAED;;;;OAIG;IACH,wBAHW,MAAM,YACN,iBAAiB,QAe3B;IAED;;;;;;;OAOG;IACH,6BANW,MAAM,iBACN,MAAM,oBACN,OAAO,WAAW,GAAG,OAAO,UAAU,GAAG,OAAO,WAAW,GAAG,OAAO,UAAU,GAAG,OAAO,YAAY,mBACrG,MAAM,EAAE,GACP,CAAS,IAAe,EAAf,MAAM,GAAC,MAAM,EAAE,QAAC,
|
|
1
|
+
{"version":3,"file":"arrayBuilder.d.ts","sourceRoot":"","sources":["../../../src/gl/arrayBuilder.js"],"names":[],"mappings":"AAQA;;;;;;;;GAQG;AACH;IAKI;;;OAGG;IACH,kBAFW,MAAM,EAehB;IAZG,aAAgB;IAEhB,mJAAmJ;IACnJ;;kBADkC,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY;2BAAiB,MAAM;sBAAY,MAAM;;MAC7H;IAEhB,kCAAkC;IAClC,SADW,CAAC,MAAW,IAAI,CAAC,EAAE,CACb;IAEjB,qCAAqC;IACrC,cADW,CAAC,CAAS,IAAG,EAAH,GAAG,KAAE,IAAI,CAAC,EAAE,CACX;IAEtB,oBAAoB;IAGxB,kBAOC;IAED;;;;OAIG;IACH,wBAHW,MAAM,YACN,iBAAiB,QAe3B;IAED;;;;;;;OAOG;IACH,6BANW,MAAM,iBACN,MAAM,oBACN,OAAO,WAAW,GAAG,OAAO,UAAU,GAAG,OAAO,WAAW,GAAG,OAAO,UAAU,GAAG,OAAO,YAAY,mBACrG,MAAM,EAAE,GACP,CAAS,IAAe,EAAf,MAAM,GAAC,MAAM,EAAE,QAAC,CAmFpC;IAED,gBAEC;IAED;;OAEG;IACH,uBAFW,MAAM,QAIhB;IAqDD;;;OAGG;IACH,qBAFW,MAAM,QAKhB;;CACJ;;;;;;;;;OA3NS,CAAS,IAAM,EAAN,MAAM,KAAE,GAAG;;;;qBACpB,MAAM,EAAE;oBACR,MAAM;;;;sBACN,OAAO,WAAW,GAAG,OAAO,UAAU,GAAG,OAAO,WAAW,GAAG,OAAO,UAAU,GAAG,OAAO,YAAY"}
|
|
@@ -91,7 +91,6 @@ export default class ArrayBuilder {
|
|
|
91
91
|
let updater;
|
|
92
92
|
let i = 0;
|
|
93
93
|
|
|
94
|
-
// eslint-disable-next-line new-cap
|
|
95
94
|
const array = new targetArrayType(this.size * numComponents);
|
|
96
95
|
|
|
97
96
|
this.arrays[attributeName] = {
|
|
@@ -178,7 +177,6 @@ export default class ArrayBuilder {
|
|
|
178
177
|
.join("\n");
|
|
179
178
|
const pushs = this.pushers.map((_v, i) => ` p${i}();`).join("\n");
|
|
180
179
|
|
|
181
|
-
// eslint-disable-next-line no-new-func
|
|
182
180
|
this.pushAll = new Function(
|
|
183
181
|
"that",
|
|
184
182
|
`${preps}
|
|
@@ -206,7 +204,6 @@ ${pushs}
|
|
|
206
204
|
.map((_v, i) => ` u${i}(datum);`)
|
|
207
205
|
.join("\n");
|
|
208
206
|
|
|
209
|
-
// eslint-disable-next-line no-new-func
|
|
210
207
|
this.updateFromDatum = new Function(
|
|
211
208
|
"that",
|
|
212
209
|
"datum",
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Handles logical/physical canvas size calculations and optional
|
|
3
|
+
* device-pixel-content-box observation.
|
|
4
|
+
*/
|
|
5
|
+
export default class CanvasSizeHelper {
|
|
6
|
+
/**
|
|
7
|
+
* @param {HTMLElement} container
|
|
8
|
+
* @param {HTMLCanvasElement} canvas
|
|
9
|
+
* @param {() => {width: number, height: number}} sizeSource
|
|
10
|
+
* @param {() => void} [onPhysicalSizeChange]
|
|
11
|
+
*/
|
|
12
|
+
constructor(container: HTMLElement, canvas: HTMLCanvasElement, sizeSource: () => {
|
|
13
|
+
width: number;
|
|
14
|
+
height: number;
|
|
15
|
+
}, onPhysicalSizeChange?: () => void);
|
|
16
|
+
_container: HTMLElement;
|
|
17
|
+
_canvas: HTMLCanvasElement;
|
|
18
|
+
_sizeSource: () => {
|
|
19
|
+
width: number;
|
|
20
|
+
height: number;
|
|
21
|
+
};
|
|
22
|
+
_onPhysicalSizeChange: () => void;
|
|
23
|
+
/**
|
|
24
|
+
* @type {{ width: number, height: number } | undefined}
|
|
25
|
+
*/
|
|
26
|
+
_logicalCanvasSize: {
|
|
27
|
+
width: number;
|
|
28
|
+
height: number;
|
|
29
|
+
} | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* @type {{ width: number, height: number } | undefined}
|
|
32
|
+
*/
|
|
33
|
+
_devicePixelContentBoxSize: {
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
} | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* @type {ResizeObserver | undefined}
|
|
39
|
+
*/
|
|
40
|
+
_devicePixelContentBoxObserver: ResizeObserver | undefined;
|
|
41
|
+
invalidate(): void;
|
|
42
|
+
finalize(): void;
|
|
43
|
+
/**
|
|
44
|
+
* Returns the canvas size in true display pixels
|
|
45
|
+
*
|
|
46
|
+
* @param {{ width: number, height: number }} [logicalSize]
|
|
47
|
+
*/
|
|
48
|
+
getPhysicalCanvasSize(logicalSize?: {
|
|
49
|
+
width: number;
|
|
50
|
+
height: number;
|
|
51
|
+
}): {
|
|
52
|
+
width: number;
|
|
53
|
+
height: number;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* Returns the ratio between true display pixels and logical pixels.
|
|
57
|
+
*
|
|
58
|
+
* @param {{ width: number, height: number }} [logicalSize]
|
|
59
|
+
*/
|
|
60
|
+
getDevicePixelRatio(logicalSize?: {
|
|
61
|
+
width: number;
|
|
62
|
+
height: number;
|
|
63
|
+
}): number;
|
|
64
|
+
/**
|
|
65
|
+
* Returns the size of the canvas canvas container size in logical pixels,
|
|
66
|
+
* without devicePixelRatio correction.
|
|
67
|
+
*/
|
|
68
|
+
getLogicalCanvasSize(): {
|
|
69
|
+
width: number;
|
|
70
|
+
height: number;
|
|
71
|
+
};
|
|
72
|
+
_observeDevicePixelContentBox(): void;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=canvasSizeHelper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvasSizeHelper.d.ts","sourceRoot":"","sources":["../../../src/gl/canvasSizeHelper.js"],"names":[],"mappings":"AAAA;;;GAGG;AACH;IACI;;;;;OAKG;IACH,uBALW,WAAW,UACX,iBAAiB,cACjB,MAAM;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,yBACrC,MAAM,IAAI,EAwBpB;IArBG,wBAA2B;IAC3B,2BAAqB;IACrB,mBANa;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAMf;IAC7B,6BANa,IAAI,CAM8C;IAE/D;;OAEG;IACH,oBAFU;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAEpB;IAEnC;;OAEG;IACH,4BAFU;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAEZ;IAE3C;;OAEG;IACH,gCAFU,cAAc,GAAG,SAAS,CAEW;IAKnD,mBAGC;IAED,iBAIC;IAED;;;;OAIG;IACH,oCAFW;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;eA1BrB,MAAM;gBAAU,MAAM;MA0C5C;IAED;;;;OAIG;IACH,kCAFW;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,UA2B3C;IAED;;;OAGG;IACH;eArFuB,MAAM;gBAAU,MAAM;MA8H5C;IAED,sCAuDC;CACJ"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Handles logical/physical canvas size calculations and optional
|
|
3
|
+
* device-pixel-content-box observation.
|
|
4
|
+
*/
|
|
5
|
+
export default class CanvasSizeHelper {
|
|
6
|
+
/**
|
|
7
|
+
* @param {HTMLElement} container
|
|
8
|
+
* @param {HTMLCanvasElement} canvas
|
|
9
|
+
* @param {() => {width: number, height: number}} sizeSource
|
|
10
|
+
* @param {() => void} [onPhysicalSizeChange]
|
|
11
|
+
*/
|
|
12
|
+
constructor(container, canvas, sizeSource, onPhysicalSizeChange) {
|
|
13
|
+
this._container = container;
|
|
14
|
+
this._canvas = canvas;
|
|
15
|
+
this._sizeSource = sizeSource;
|
|
16
|
+
this._onPhysicalSizeChange = onPhysicalSizeChange ?? (() => {});
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @type {{ width: number, height: number } | undefined}
|
|
20
|
+
*/
|
|
21
|
+
this._logicalCanvasSize = undefined;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* @type {{ width: number, height: number } | undefined}
|
|
25
|
+
*/
|
|
26
|
+
this._devicePixelContentBoxSize = undefined;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* @type {ResizeObserver | undefined}
|
|
30
|
+
*/
|
|
31
|
+
this._devicePixelContentBoxObserver = undefined;
|
|
32
|
+
|
|
33
|
+
this._observeDevicePixelContentBox();
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
invalidate() {
|
|
37
|
+
this._logicalCanvasSize = undefined;
|
|
38
|
+
this._devicePixelContentBoxSize = undefined;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
finalize() {
|
|
42
|
+
if (this._devicePixelContentBoxObserver) {
|
|
43
|
+
this._devicePixelContentBoxObserver.disconnect();
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Returns the canvas size in true display pixels
|
|
49
|
+
*
|
|
50
|
+
* @param {{ width: number, height: number }} [logicalSize]
|
|
51
|
+
*/
|
|
52
|
+
getPhysicalCanvasSize(logicalSize) {
|
|
53
|
+
// devicePixelContentBox gives the actual backing-store pixel size.
|
|
54
|
+
// Prefer it whenever available to avoid fractional DPR drift.
|
|
55
|
+
// https://web.dev/articles/device-pixel-content-box
|
|
56
|
+
if (this._devicePixelContentBoxSize) {
|
|
57
|
+
return this._devicePixelContentBoxSize;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
const dpr = window.devicePixelRatio ?? 1;
|
|
61
|
+
logicalSize = logicalSize || this.getLogicalCanvasSize();
|
|
62
|
+
return {
|
|
63
|
+
width: Math.round(logicalSize.width * dpr),
|
|
64
|
+
height: Math.round(logicalSize.height * dpr),
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Returns the ratio between true display pixels and logical pixels.
|
|
70
|
+
*
|
|
71
|
+
* @param {{ width: number, height: number }} [logicalSize]
|
|
72
|
+
*/
|
|
73
|
+
getDevicePixelRatio(logicalSize) {
|
|
74
|
+
logicalSize = logicalSize || this.getLogicalCanvasSize();
|
|
75
|
+
const physicalSize = this.getPhysicalCanvasSize(logicalSize);
|
|
76
|
+
const widthRatio =
|
|
77
|
+
logicalSize.width > 0
|
|
78
|
+
? physicalSize.width / logicalSize.width
|
|
79
|
+
: undefined;
|
|
80
|
+
const heightRatio =
|
|
81
|
+
logicalSize.height > 0
|
|
82
|
+
? physicalSize.height / logicalSize.height
|
|
83
|
+
: undefined;
|
|
84
|
+
|
|
85
|
+
if (widthRatio !== undefined && heightRatio !== undefined) {
|
|
86
|
+
// Width and height can differ slightly because backing-store dimensions
|
|
87
|
+
// are integers. Averaging keeps snapping stable in both directions.
|
|
88
|
+
return (widthRatio + heightRatio) / 2;
|
|
89
|
+
} else if (widthRatio !== undefined) {
|
|
90
|
+
// During transient layout states one logical dimension may be zero.
|
|
91
|
+
// Use the non-zero dimension instead of falling back to window DPR.
|
|
92
|
+
return widthRatio;
|
|
93
|
+
} else if (heightRatio !== undefined) {
|
|
94
|
+
return heightRatio;
|
|
95
|
+
} else {
|
|
96
|
+
return window.devicePixelRatio ?? 1;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Returns the size of the canvas canvas container size in logical pixels,
|
|
102
|
+
* without devicePixelRatio correction.
|
|
103
|
+
*/
|
|
104
|
+
getLogicalCanvasSize() {
|
|
105
|
+
if (this._logicalCanvasSize) {
|
|
106
|
+
return this._logicalCanvasSize;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
// TODO: The size should never be smaller than the minimum content size!
|
|
110
|
+
const contentSize = this._sizeSource();
|
|
111
|
+
|
|
112
|
+
const cs = window.getComputedStyle(this._container, null);
|
|
113
|
+
// clientWidth/clientHeight are integer CSS pixels, which causes subtle
|
|
114
|
+
// blur at fractional DPR. getBoundingClientRect preserves fractions.
|
|
115
|
+
const containerRect = this._container.getBoundingClientRect();
|
|
116
|
+
|
|
117
|
+
const paddingLeft = parseFloat(cs.paddingLeft);
|
|
118
|
+
const paddingRight = parseFloat(cs.paddingRight);
|
|
119
|
+
const paddingTop = parseFloat(cs.paddingTop);
|
|
120
|
+
const paddingBottom = parseFloat(cs.paddingBottom);
|
|
121
|
+
|
|
122
|
+
const borderLeft = parseFloat(cs.borderLeftWidth);
|
|
123
|
+
const borderRight = parseFloat(cs.borderRightWidth);
|
|
124
|
+
const borderTop = parseFloat(cs.borderTopWidth);
|
|
125
|
+
const borderBottom = parseFloat(cs.borderBottomWidth);
|
|
126
|
+
|
|
127
|
+
const width =
|
|
128
|
+
contentSize.width ??
|
|
129
|
+
containerRect.width -
|
|
130
|
+
paddingLeft -
|
|
131
|
+
paddingRight -
|
|
132
|
+
borderLeft -
|
|
133
|
+
borderRight;
|
|
134
|
+
|
|
135
|
+
const height =
|
|
136
|
+
contentSize.height ??
|
|
137
|
+
containerRect.height -
|
|
138
|
+
paddingTop -
|
|
139
|
+
paddingBottom -
|
|
140
|
+
borderTop -
|
|
141
|
+
borderBottom;
|
|
142
|
+
|
|
143
|
+
this._logicalCanvasSize = { width, height };
|
|
144
|
+
return this._logicalCanvasSize;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
_observeDevicePixelContentBox() {
|
|
148
|
+
if (typeof ResizeObserver != "function") {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
const observer = new ResizeObserver((entries) => {
|
|
153
|
+
const entry = entries.find(
|
|
154
|
+
(candidate) => candidate.target == this._canvas
|
|
155
|
+
);
|
|
156
|
+
if (!entry) {
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
const boxSize = entry.devicePixelContentBoxSize;
|
|
161
|
+
if (!boxSize) {
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
const contentBoxSize = Array.isArray(boxSize)
|
|
166
|
+
? boxSize[0]
|
|
167
|
+
: boxSize;
|
|
168
|
+
if (!contentBoxSize) {
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
// ResizeObserver reports device pixels directly, which is exactly what
|
|
173
|
+
// canvas width/height expect.
|
|
174
|
+
const nextPhysicalSize = {
|
|
175
|
+
width: contentBoxSize.inlineSize,
|
|
176
|
+
height: contentBoxSize.blockSize,
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
if (
|
|
180
|
+
this._devicePixelContentBoxSize &&
|
|
181
|
+
this._devicePixelContentBoxSize.width ==
|
|
182
|
+
nextPhysicalSize.width &&
|
|
183
|
+
this._devicePixelContentBoxSize.height ==
|
|
184
|
+
nextPhysicalSize.height
|
|
185
|
+
) {
|
|
186
|
+
return;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
this._devicePixelContentBoxSize = nextPhysicalSize;
|
|
190
|
+
this._onPhysicalSizeChange();
|
|
191
|
+
});
|
|
192
|
+
|
|
193
|
+
try {
|
|
194
|
+
// Fails in browsers that do not support device-pixel-content-box.
|
|
195
|
+
observer.observe(this._canvas, {
|
|
196
|
+
box: "device-pixel-content-box",
|
|
197
|
+
});
|
|
198
|
+
this._devicePixelContentBoxObserver = observer;
|
|
199
|
+
} catch {
|
|
200
|
+
observer.disconnect();
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorUtils.d.ts","sourceRoot":"","sources":["../../../src/gl/colorUtils.js"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,kDANW,MAAM,GAAG,OAAO,kBAAkB,EAAE,YAAY,MAChD,sBAAsB,UACtB,MAAM,oBACN,YAAY,YACZ,OAAO,gBAgDjB;AAED;;;;;GAKG;AACH,uDALW,MAAM,EAAE,qBACR,OAAO,kBAAkB,EAAE,gBAAgB,GAAG,OAAO,kBAAkB,EAAE,sBAAsB,MAC/F,sBAAsB,oBACtB,YAAY,gBA6BtB;AAED;;;;;;;;GAQG;AACH,6CALW,MAAM,EAAE,MACR,sBAAsB,UACtB,MAAM,oBACN,YAAY,gBAqBtB;AAED;;;;;;;GAOG;AACH,mDALW,MAAM,EAAE,MACR,sBAAsB,UACtB,MAAM,oBACN,YAAY,gBActB;AAyDD;;GAEG;AACH,uCAFW,MAAM,
|
|
1
|
+
{"version":3,"file":"colorUtils.d.ts","sourceRoot":"","sources":["../../../src/gl/colorUtils.js"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,kDANW,MAAM,GAAG,OAAO,kBAAkB,EAAE,YAAY,MAChD,sBAAsB,UACtB,MAAM,oBACN,YAAY,YACZ,OAAO,gBAgDjB;AAED;;;;;GAKG;AACH,uDALW,MAAM,EAAE,qBACR,OAAO,kBAAkB,EAAE,gBAAgB,GAAG,OAAO,kBAAkB,EAAE,sBAAsB,MAC/F,sBAAsB,oBACtB,YAAY,gBA6BtB;AAED;;;;;;;;GAQG;AACH,6CALW,MAAM,EAAE,MACR,sBAAsB,UACtB,MAAM,oBACN,YAAY,gBAqBtB;AAED;;;;;;;GAOG;AACH,mDALW,MAAM,EAAE,MACR,sBAAsB,UACtB,MAAM,oBACN,YAAY,gBActB;AAyDD;;GAEG;AACH,uCAFW,MAAM,YAQhB"}
|
|
@@ -206,6 +206,9 @@ function colorArrayToTextureData(scheme, count) {
|
|
|
206
206
|
* @param {string} color
|
|
207
207
|
*/
|
|
208
208
|
export function cssColorToArray(color) {
|
|
209
|
+
// TODO: Support CSS "transparent" like Vega/Vega-Lite do. Currently
|
|
210
|
+
// d3-color returns NaN RGB with zero opacity, but GenomeSpy color channels
|
|
211
|
+
// are RGB-only and cannot carry alpha in this conversion path.
|
|
209
212
|
const rgb = d3color(color).rgb();
|
|
210
213
|
return [rgb.r, rgb.g, rgb.b].map((x) => x / 255);
|
|
211
214
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataToVertices.d.ts","sourceRoot":"","sources":["../../../src/gl/dataToVertices.js"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH;IACI;;;OAGG;IAEH;;;;;;OAMG;IACH,mDALG;QAAsE,QAAQ,EAAtE,MAAM,CAAC,OAAO,oBAAoB,EAAE,OAAO,wCAAU;QACnC,UAAU,GAA5B,MAAM,EAAE;QACQ,WAAW,GAA3B,MAAM;KAEhB,EAiGA;IA/FG,8FAAwB;IAIxB,sGAQK;IAQL,0BAAoC;IAEpC,8BAAoD;IAqEpD,mBAAmB;IAEnB,yFAAyF;IACzF,UADW,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CACkB;IAGrD;;;;OAIG;IACH,mBAFW,GAAG,QAcb;IAED;;OAEG;IACH,oBAFW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,QAM5B;IAED;;;OAGG;IACH,cAHW,GAAG,QACH,MAAM,EAAE,kCAYlB;IAED;;;;OAIG;IACH,sBAJW,OAAO,qBAAqB,EAAE,IAAI,OAClC,MAAM,OACN,MAAM,
|
|
1
|
+
{"version":3,"file":"dataToVertices.d.ts","sourceRoot":"","sources":["../../../src/gl/dataToVertices.js"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH;IACI;;;OAGG;IAEH;;;;;;OAMG;IACH,mDALG;QAAsE,QAAQ,EAAtE,MAAM,CAAC,OAAO,oBAAoB,EAAE,OAAO,wCAAU;QACnC,UAAU,GAA5B,MAAM,EAAE;QACQ,WAAW,GAA3B,MAAM;KAEhB,EAiGA;IA/FG,8FAAwB;IAIxB,sGAQK;IAQL,0BAAoC;IAEpC,8BAAoD;IAqEpD,mBAAmB;IAEnB,yFAAyF;IACzF,UADW,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CACkB;IAGrD;;;;OAIG;IACH,mBAFW,GAAG,QAcb;IAED;;OAEG;IACH,oBAFW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,QAM5B;IAED;;;OAGG;IACH,cAHW,GAAG,QACH,MAAM,EAAE,kCAYlB;IAED;;;;OAIG;IACH,sBAJW,OAAO,qBAAqB,EAAE,IAAI,OAClC,MAAM,OACN,MAAM,QAsEhB;IAED;;;;;OAKG;IACH,mBAFW,OAAO,qBAAqB,EAAE,KAAK,QAI7C;IAtEO;;;MAAyB;IAwEjC;QAEQ,kJAAkJ;gBAAvI,MAAM,CAAC,MAAM,EAAE;YAAC,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,CAAC;YAAC,aAAa,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAC,CAAC;QAE9I,8BAA8B;;QAE9B,8CAA8C;;;MAIrD;CACJ;AAED;IACI;;;;;;OAMG;IACH,gDAJG;QAAwC,QAAQ,EAAxC,MAAM,CAAC,MAAM,wCAAU;QACN,UAAU,EAA3B,MAAM,EAAE;QACQ,QAAQ,GAAxB,MAAM;KAChB,EA8BA;IAnBG,qBAkBW;CA8BlB;AAED;IACI;;;;;;;;;OASG;IACH,sFAPG;QAAwC,QAAQ,EAAxC,MAAM,CAAC,MAAM,wCAAU;QACN,UAAU,EAA3B,MAAM,EAAE;QACQ,qBAAqB,GAArC,MAAM;QAEY,YAAY,GAA9B,MAAM,EAAE;QACQ,QAAQ,GAAxB,MAAM;KAChB,EAuBA;IARG,uBAAgC;IAEhC,8BAA8D;IAE9D,6CAA+D;IAC/D,4CAA6D;CA4CpE;AAED;IACI;;;;;;OAMG;IACH,gDAJG;QAAwC,QAAQ,EAAxC,MAAM,CAAC,MAAM,wCAAU;QACN,UAAU,EAA3B,MAAM,EAAE;QACQ,QAAQ,GAAxB,MAAM;KAChB,EAQA;CACJ;AAED;IACI;;;;;OAKG;IACH,gDAJG;QAAwC,QAAQ,EAAxC,MAAM,CAAC,MAAM,wCAAU;QACN,UAAU,EAA3B,MAAM,EAAE;QACQ,QAAQ,GAAxB,MAAM;KAChB,EAQA;CAYJ;AAED;IACI;;;;;;;;;OASG;IACH,+EAPG;QAAwC,QAAQ,EAAxC,MAAM,CAAC,MAAM,wCAAU;QACN,UAAU,EAA3B,MAAM,EAAE;QACkD,WAAW,EAArE,OAAO,2BAA2B,EAAE,aAAa;QACrB,UAAU,EAAtC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;QACH,aAAa,GAA7B,MAAM;QACW,WAAW,GAA5B,OAAO;KAAsB,EA6CvC;IA9BG,4DAA2B;IAC3B,2DAA0B;IAE1B,gCAA4B;IAO5B,qCAAqC;IACrC,cADW,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAMf;IAElB,oDAGC;IACD,qDAGC;IAED,8CAAiE;CAgJxE;;;;;;;;YAloBS,MAAM;;;;WACN,MAAM;YACN,OAAO,yBAAyB,EAAE,MAAM;;yBAjBzB,mBAAmB"}
|
|
@@ -4,7 +4,7 @@ import { isString } from "vega-util";
|
|
|
4
4
|
import ArrayBuilder from "./arrayBuilder.js";
|
|
5
5
|
import { SDF_PADDING } from "../fonts/bmFontMetrics.js";
|
|
6
6
|
import { createBinningRangeIndexer } from "../utils/binnedIndex.js";
|
|
7
|
-
import { isValueDef } from "../encoder/encoder.js";
|
|
7
|
+
import { getEncoderDataAccessor, isValueDef } from "../encoder/encoder.js";
|
|
8
8
|
import {
|
|
9
9
|
dedupeEncodingFields,
|
|
10
10
|
getAttributeAndArrayTypes,
|
|
@@ -60,7 +60,7 @@ export class GeometryBuilder {
|
|
|
60
60
|
|
|
61
61
|
// Create converters and updaters for all variable channels.
|
|
62
62
|
for (const [channel, ce] of Object.entries(this.variableEncoders)) {
|
|
63
|
-
const accessor = ce
|
|
63
|
+
const accessor = getEncoderDataAccessor(ce);
|
|
64
64
|
if (!accessor) {
|
|
65
65
|
continue;
|
|
66
66
|
}
|
|
@@ -211,8 +211,14 @@ export class GeometryBuilder {
|
|
|
211
211
|
|
|
212
212
|
// Only index variable data
|
|
213
213
|
if (xe && !xe.constant && (!x2e || !x2e.constant)) {
|
|
214
|
-
const xa = xe
|
|
215
|
-
const x2a = x2e
|
|
214
|
+
const xa = getEncoderDataAccessor(xe)?.asNumberAccessor();
|
|
215
|
+
const x2a = x2e
|
|
216
|
+
? getEncoderDataAccessor(x2e)?.asNumberAccessor()
|
|
217
|
+
: xa;
|
|
218
|
+
if (!xa || !x2a) {
|
|
219
|
+
disable();
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
216
222
|
|
|
217
223
|
/** @type {[number, number]} */
|
|
218
224
|
const dataDomain = [xa(data[lo]), x2a(data[hi - 1])];
|
|
@@ -370,7 +376,6 @@ export class RuleVertexBuilder extends GeometryBuilder {
|
|
|
370
376
|
this.variableBuilder.configure();
|
|
371
377
|
}
|
|
372
378
|
|
|
373
|
-
/* eslint-disable complexity */
|
|
374
379
|
/**
|
|
375
380
|
*
|
|
376
381
|
* @param {any} key
|
|
@@ -581,9 +586,9 @@ export class TextVertexBuilder extends GeometryBuilder {
|
|
|
581
586
|
x -= (firstChar.width - firstChar.xadvance) / base / 2; // TODO: Fix, this is a bit off..
|
|
582
587
|
}
|
|
583
588
|
|
|
584
|
-
let bottom
|
|
585
|
-
|
|
586
|
-
|
|
589
|
+
let bottom;
|
|
590
|
+
let height;
|
|
591
|
+
let normalWidth;
|
|
587
592
|
|
|
588
593
|
for (let i = 0; i < str.length; i++) {
|
|
589
594
|
const c = this.metrics.getCharByCode(str.charCodeAt(i));
|
|
@@ -65,9 +65,9 @@ export function generateScaleGlsl(channel: Channel, scale: any, channelDef: impo
|
|
|
65
65
|
/**
|
|
66
66
|
*
|
|
67
67
|
* @param {Channel} channel
|
|
68
|
-
* @param {import("../types/encoder.js").
|
|
68
|
+
* @param {import("../types/encoder.js").EncodingBranch[]} branches
|
|
69
69
|
*/
|
|
70
|
-
export function generateConditionalEncoderGlsl(channel: Channel,
|
|
70
|
+
export function generateConditionalEncoderGlsl(channel: Channel, branches: import("../types/encoder.js").EncodingBranch[]): string;
|
|
71
71
|
/**
|
|
72
72
|
* @param {Channel} channel
|
|
73
73
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glslScaleGenerator.d.ts","sourceRoot":"","sources":["../../../src/gl/glslScaleGenerator.js"],"names":[],"mappings":"AAsDA;;;;;GAKG;AACH,kDAJW,OAAO,mBACP,MAAM,GACJ,MAAM,CAIlB;AAED;;;;;;;;;;GAUG;AAEH;;;;;;;GAOG;AACH,mDALW,OAAO,mBACP,MAAM,SACN,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,OAAO,GAClC,aAAa,CA4CzB;AAED;;;;;;;GAOG;AACH,4DAJW,OAAO,mBACP,MAAM,GACJ,aAAa,CAkCzB;AAED;;;;;;GAMG;AACH,0CANW,OAAO,SACP,GAAG,mBACH,MAAM,+BACN,OAAO,EAAE,GACP,aAAa,CA8BzB;AACD;;;;;GAKG;AACH,qDALW,OAAO,SACP,GAAG,mBACH,MAAM,GACJ,aAAa,CAyBzB;AAED;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"glslScaleGenerator.d.ts","sourceRoot":"","sources":["../../../src/gl/glslScaleGenerator.js"],"names":[],"mappings":"AAsDA;;;;;GAKG;AACH,kDAJW,OAAO,mBACP,MAAM,GACJ,MAAM,CAIlB;AAED;;;;;;;;;;GAUG;AAEH;;;;;;;GAOG;AACH,mDALW,OAAO,mBACP,MAAM,SACN,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,GAAG,OAAO,GAClC,aAAa,CA4CzB;AAED;;;;;;;GAOG;AACH,4DAJW,OAAO,mBACP,MAAM,GACJ,aAAa,CAkCzB;AAED;;;;;;GAMG;AACH,0CANW,OAAO,SACP,GAAG,mBACH,MAAM,+BACN,OAAO,EAAE,GACP,aAAa,CA8BzB;AACD;;;;;GAKG;AACH,qDALW,OAAO,SACP,GAAG,mBACH,MAAM,GACJ,aAAa,CAyBzB;AAED;;;;;GAKG;AACH,2CAJW,OAAO,SACP,GAAG,cACH,OAAO,oBAAoB,EAAE,UAAU;;;;;;EAsQjD;AAED;;;;GAIG;AACH,wDAHW,OAAO,YACP,OAAO,qBAAqB,EAAE,cAAc,EAAE,UA+BxD;AAmED;;GAEG;AACH,qDAFW,OAAO,6BAQjB;AAuCD;;;;GAIG;AACH,iDAHW,OAAO,qBAAqB,EAAE,SAAS,WACvC,OAAO,oBAAoB,EAAE,OAAO;mBAQjB,MAAM;sBAAoB,sBAAsB,GAAG,sBAAsB,GAAG,uBAAuB;;;;;;EAkBhI;AAED;;;;GAIG;AACH,2CAFW,MAAM,6BAIhB;AAED;;;;GAIG;AACH,sCAFW,MAAM,EAAE,WAIlB;AAMD;;;GAGG;AACH,sCAHW,MAAM,QACN,MAAM,EAAE,YAYlB;AAED;;;GAGG;AACH,2CAHW,MAAM,QACN,MAAM,EAAE,YAUlB;AAYD;;GAEG;AACH,qDAFW,MAAM,EAAE,YAIlB;AAED;;GAEG;AAEH;;;;;GAKG;AACH,+CAFW,OAAO,CAAC,MAAM,CAAC,OAAO,oBAAoB,EAAE,OAAO,EAAE,OAAO,qBAAqB,EAAE,OAAO,CAAC,CAAC,+DA4BtG;AAED;;GAEG;AACH,2CAFW,OAAO,oBAAoB,EAAE,OAAO,GAAG,OAAO,oBAAoB,EAAE,OAAO,EAAE,UAIvF;AAwBD;;;;GAIG;AACH,uCAJW,MAAM,EAAE,cACR,MAAM,EAAE,GACN,MAAM,CAgClB;AAn0BD,+BAAgC,OAAO,CAAC;AACxC,4BAA6B,UAAU,CAAC;AACxC,2BAA4B,QAAQ,CAAC;AACrC,uCAAwC,WAAW,CAAC;AACpD,oCAAqC,QAAQ,CAAC;AAC9C,qCAAsC,YAAY,CAAC;AACnD,mCAAoC,gBAAgB,CAAC;AACrD,2BAA4B,SAAS,CAAC;AACtC,uCAAwC,iBAAiB,CAAC;AAgxBnD,uCAJI,GAAG,WACH,OAAO,GACL,MAAM,EAAE,CAQA;sBAhxBR,OAAO,oBAAoB,EAAE,OAAO;;aA+BvC,OAAO;kBACP,MAAM;0BACN,MAAM;oBACN,MAAM;oBACN,MAAM;kBACN,MAAM;kBACN,MAAM;eACN,CAAC,CAAC,EAAE,GAAG,KAAK,GAAG;;;;;8BAkfZ,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE;;;;uBAwLhD,CAAC,MAAM,EAAE,OAAO,CAAC;0BAnuBJ,WAAW"}
|
|
@@ -241,7 +241,6 @@ ${attributeType} ${accessorFunctionName}() {
|
|
|
241
241
|
* @param {any} scale
|
|
242
242
|
* @param {import("../spec/channel.js").ChannelDef} channelDef
|
|
243
243
|
*/
|
|
244
|
-
// eslint-disable-next-line complexity
|
|
245
244
|
export function generateScaleGlsl(channel, scale, channelDef) {
|
|
246
245
|
scale ??= scaleNull();
|
|
247
246
|
|
|
@@ -272,7 +271,6 @@ export function generateScaleGlsl(channel, scale, channelDef) {
|
|
|
272
271
|
* @param {...any} args
|
|
273
272
|
*/
|
|
274
273
|
const makeScaleCall = (name, ...args) =>
|
|
275
|
-
// eslint-disable-next-line no-useless-call
|
|
276
274
|
makeFunctionCall.apply(null, [name, "value", ...args]);
|
|
277
275
|
|
|
278
276
|
let functionCall;
|
|
@@ -508,9 +506,9 @@ ${scaleBody.map((x) => ` ${x}\n`).join("")}
|
|
|
508
506
|
/**
|
|
509
507
|
*
|
|
510
508
|
* @param {Channel} channel
|
|
511
|
-
* @param {import("../types/encoder.js").
|
|
509
|
+
* @param {import("../types/encoder.js").EncodingBranch[]} branches
|
|
512
510
|
*/
|
|
513
|
-
export function generateConditionalEncoderGlsl(channel,
|
|
511
|
+
export function generateConditionalEncoderGlsl(channel, branches) {
|
|
514
512
|
const type = getScaledDataTypeForChannel(channel);
|
|
515
513
|
|
|
516
514
|
/** @type {string[]} */
|
|
@@ -518,10 +516,10 @@ export function generateConditionalEncoderGlsl(channel, accessors) {
|
|
|
518
516
|
/** @type {string[]} */
|
|
519
517
|
const statements = [];
|
|
520
518
|
|
|
521
|
-
for (let i = 0; i <
|
|
522
|
-
const accessor =
|
|
519
|
+
for (let i = 0; i < branches.length; i++) {
|
|
520
|
+
const { accessor, predicate } = branches[i];
|
|
523
521
|
const accessorFunctionName = makeAccessorFunctionName(channel, i);
|
|
524
|
-
const { param, empty } =
|
|
522
|
+
const { param, empty } = predicate;
|
|
525
523
|
|
|
526
524
|
conditions.push(
|
|
527
525
|
param ? `${SELECTION_CHECKER_PREFIX}${param}(${!!empty})` : null
|
|
@@ -45,11 +45,19 @@ export default class WebGLHelper {
|
|
|
45
45
|
width: number;
|
|
46
46
|
height: number;
|
|
47
47
|
}, webglContextAttributes?: WebGLContextAttributes);
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
/**
|
|
49
|
+
* @type {CanvasSizeHelper}
|
|
50
|
+
*/
|
|
51
|
+
_canvasSizeHelper: CanvasSizeHelper;
|
|
52
|
+
/**
|
|
53
|
+
* @type {{ logicalWidth: number, logicalHeight: number, physicalWidth: number, physicalHeight: number } | undefined}
|
|
54
|
+
*/
|
|
55
|
+
_appliedCanvasSize: {
|
|
56
|
+
logicalWidth: number;
|
|
57
|
+
logicalHeight: number;
|
|
58
|
+
physicalWidth: number;
|
|
59
|
+
physicalHeight: number;
|
|
60
|
+
} | undefined;
|
|
53
61
|
/** @type {Map<string, WebGLShader>} */
|
|
54
62
|
_shaderCache: Map<string, WebGLShader>;
|
|
55
63
|
/** @type {WeakMap<import("../types/encoder.js").VegaScale, WebGLTexture>} */
|
|
@@ -64,10 +72,6 @@ export default class WebGLHelper {
|
|
|
64
72
|
_pickingAttachmentOptions: import("twgl.js").AttachmentOptions[];
|
|
65
73
|
_pickingBufferInfo: import("twgl.js").FramebufferInfo;
|
|
66
74
|
invalidateSize(): void;
|
|
67
|
-
_logicalCanvasSize: {
|
|
68
|
-
width: any;
|
|
69
|
-
height: any;
|
|
70
|
-
};
|
|
71
75
|
/**
|
|
72
76
|
* Compiles and caches a shader. The shader source is used as a cache key.
|
|
73
77
|
*
|
|
@@ -89,13 +93,22 @@ export default class WebGLHelper {
|
|
|
89
93
|
width: number;
|
|
90
94
|
height: number;
|
|
91
95
|
};
|
|
96
|
+
/**
|
|
97
|
+
* Returns the ratio between true display pixels and logical pixels.
|
|
98
|
+
*
|
|
99
|
+
* @param {{ width: number, height: number }} [logicalSize]
|
|
100
|
+
*/
|
|
101
|
+
getDevicePixelRatio(logicalSize?: {
|
|
102
|
+
width: number;
|
|
103
|
+
height: number;
|
|
104
|
+
}): number;
|
|
92
105
|
/**
|
|
93
106
|
* Returns the size of the canvas canvas container size in logical pixels,
|
|
94
107
|
* without devicePixelRatio correction.
|
|
95
108
|
*/
|
|
96
109
|
getLogicalCanvasSize(): {
|
|
97
|
-
width:
|
|
98
|
-
height:
|
|
110
|
+
width: number;
|
|
111
|
+
height: number;
|
|
99
112
|
};
|
|
100
113
|
/**
|
|
101
114
|
* Creates textures for color schemes and discrete/discretizing ranges.
|
|
@@ -113,4 +126,5 @@ export default class WebGLHelper {
|
|
|
113
126
|
*/
|
|
114
127
|
createSelectionTexture(selection: import("../types/selectionTypes.js").MultiPointSelection, update?: boolean): void;
|
|
115
128
|
}
|
|
129
|
+
import CanvasSizeHelper from "./canvasSizeHelper.js";
|
|
116
130
|
//# sourceMappingURL=webGLHelper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webGLHelper.d.ts","sourceRoot":"","sources":["../../../src/gl/webGLHelper.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"webGLHelper.d.ts","sourceRoot":"","sources":["../../../src/gl/webGLHelper.js"],"names":[],"mappings":"AAybA;;;;GAIG;AACH,kCAJW,sBAAsB,gBACtB,WAAW,kBACX,WAAW;;;;;;EA8CrB;AAED;;;;;GAKG;AACH,0CALW,qBAAqB,WACrB,IAAI,CAAC,OAAO,SAAS,EAAE,cAAc,EAAE,KAAK,CAAC,OAC7C,MAAM,EAAE,GAAG,eAAe,YAC1B,YAAY,gBAYtB;AAED;;;;;;GAMG;AACH,qCALW,sBAAsB,mBACtB,OAAO,SAAS,EAAE,eAAe,KACjC,MAAM,KACN,MAAM,2BAWhB;AAED;;;;;GAKG;AACH,yCAJW,sBAAsB,mBACtB,OAAO,SAAS,EAAE,eAAe,SACjC,MAAM,UA4BhB;AA7gBD;IACI;;;;;;;OAOG;IACH,uBANW,WAAW,eACX,MAAM;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,2BAGrC,sBAAsB,EAsGhC;IA5FG;;OAEG;IACH,mBAFU,gBAAgB,CAEQ;IAElC;;OAEG;IACH,oBAFU;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAEjF;IAEnC,uCAAuC;IACvC,cADW,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CACN;IAE7B,6EAA6E;IAC7E,eADW,OAAO,CAAC,OAAO,qBAAqB,EAAE,SAAS,EAAE,YAAY,CAAC,CACvC;IAElC;;OAEG;IACH,mBAFU,OAAO,CAAC,OAAO,4BAA4B,EAAE,mBAAmB,EAAE,YAAY,CAAC,CAEnD;IA8CtC,0BAAoB;IACpB,2BAAY;IAGZ,oDAAoD;IACpD,2BADW,OAAO,SAAS,EAAE,iBAAiB,EAAE,CAQ/C;IACD,sDAGC;IAaL,uBAGC;IAED;;;;;OAKG;IACH,oBAHW,MAAM,QACN,MAAM,GAAG,MAAM,EAAE,eA2B3B;IAED,iBAgCC;IAED,iBAGC;IAED;;;;OAIG;IACH,oCAFW;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;;;MAI3C;IAED;;;;OAIG;IACH,kCAFW;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,UAI3C;IAED;;;OAGG;IACH;;;MAEC;IAED;;;;;;;;;OASG;IACH,+BAHW,OAAO,8BAA8B,EAAE,OAAO,WAC9C,OAAO,QA2GjB;IAED;;OAEG;IACH,kCAFW,OAAO,4BAA4B,EAAE,mBAAmB,0BAwClE;CACJ;6BAvX4B,uBAAuB"}
|