semiotic 3.7.4 → 3.8.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/CLAUDE.md +60 -15
- package/README.md +135 -24
- package/agent-skill/semiotic-charts/SKILL.md +146 -0
- package/ai/cli.js +133 -45
- package/ai/componentMetadata.cjs +6 -1
- package/ai/dist/mcp-server.js +1651 -154
- package/ai/examples.md +174 -0
- package/ai/schema.json +2934 -517
- package/ai/surface-manifest.json +200 -0
- package/ai/system-prompt.md +19 -3
- package/dist/components/Annotation.d.ts +4 -0
- package/dist/components/CategoryColors.d.ts +1 -1
- package/dist/components/ChartContainer.d.ts +91 -0
- package/dist/components/ChartGrid.d.ts +11 -1
- package/dist/components/CircularBrush.d.ts +61 -0
- package/dist/components/ContextLayout.d.ts +5 -1
- package/dist/components/DataSummaryContext.d.ts +1 -0
- package/dist/components/DirectManipulationControl.d.ts +63 -0
- package/dist/components/LinkedCharts.d.ts +3 -1
- package/dist/components/MobileAnnotationCalloutList.d.ts +13 -0
- package/dist/components/MobileChartContainer.d.ts +51 -0
- package/dist/components/MobileStandardControls.d.ts +68 -0
- package/dist/components/SmallMultipleChart.d.ts +84 -0
- package/dist/components/Tooltip/FlippingTooltip.d.ts +21 -0
- package/dist/components/ai/ChartRecipe.d.ts +16 -0
- package/dist/components/ai/IntentMark.d.ts +15 -0
- package/dist/components/ai/chartCapabilities.d.ts +8 -1
- package/dist/components/ai/chartCapabilityTypes.d.ts +42 -1
- package/dist/components/ai/chartClinic.d.ts +91 -0
- package/dist/components/ai/chartRecipeRegistry.d.ts +14 -0
- package/dist/components/ai/chartRecipes.d.ts +278 -0
- package/dist/components/ai/dataPitfallsBridge.d.ts +203 -0
- package/dist/components/ai/dataQualityBridge.d.ts +201 -0
- package/dist/components/ai/describeChart.d.ts +9 -0
- package/dist/components/ai/describeRecipeChart.d.ts +16 -0
- package/dist/components/ai/generativeChart.d.ts +170 -0
- package/dist/components/ai/intentManifest.d.ts +62 -0
- package/dist/components/ai/navigationTree.d.ts +3 -0
- package/dist/components/ai/observedSceneAudit.d.ts +72 -0
- package/dist/components/ai/readerGrounding.d.ts +83 -0
- package/dist/components/ai/recipeCapability.d.ts +8 -0
- package/dist/components/ai/recipeNavigation.d.ts +13 -0
- package/dist/components/ai/recipeSemantics.d.ts +11 -0
- package/dist/components/ai/repairChartConfig.d.ts +9 -0
- package/dist/components/ai/suggestCharts.d.ts +11 -1
- package/dist/components/charts/custom/GeoCustomChart.d.ts +48 -0
- package/dist/components/charts/custom/NetworkCustomChart.d.ts +22 -3
- package/dist/components/charts/custom/OrdinalCustomChart.d.ts +8 -2
- package/dist/components/charts/custom/XYCustomChart.d.ts +11 -2
- package/dist/components/charts/geo/DistanceCartogram.d.ts +1 -1
- package/dist/components/charts/geo/FlowMap.d.ts +1 -1
- package/dist/components/charts/geo/ProportionalSymbolMap.d.ts +1 -1
- package/dist/components/charts/geo/index.d.ts +2 -0
- package/dist/components/charts/index.d.ts +29 -1
- package/dist/components/charts/network/ChordDiagram.d.ts +1 -1
- package/dist/components/charts/network/CirclePack.d.ts +1 -1
- package/dist/components/charts/network/ForceDirectedGraph.d.ts +15 -5
- package/dist/components/charts/network/OrbitDiagram.d.ts +1 -1
- package/dist/components/charts/network/ProcessSankey.d.ts +1 -1
- package/dist/components/charts/network/SankeyDiagram.d.ts +1 -1
- package/dist/components/charts/network/TreeDiagram.d.ts +1 -1
- package/dist/components/charts/network/Treemap.d.ts +1 -1
- package/dist/components/charts/network/useForceLayout.d.ts +17 -0
- package/dist/components/charts/ordinal/BarChart.d.ts +1 -1
- package/dist/components/charts/ordinal/BoxPlot.d.ts +1 -1
- package/dist/components/charts/ordinal/DonutChart.d.ts +1 -1
- package/dist/components/charts/ordinal/DotPlot.d.ts +1 -1
- package/dist/components/charts/ordinal/FunnelChart.d.ts +1 -1
- package/dist/components/charts/ordinal/GroupedBarChart.d.ts +1 -1
- package/dist/components/charts/ordinal/Histogram.d.ts +1 -1
- package/dist/components/charts/ordinal/PieChart.d.ts +1 -1
- package/dist/components/charts/ordinal/RidgelinePlot.d.ts +1 -1
- package/dist/components/charts/ordinal/StackedBarChart.d.ts +1 -1
- package/dist/components/charts/ordinal/SwarmPlot.d.ts +8 -1
- package/dist/components/charts/ordinal/SwimlaneChart.d.ts +1 -1
- package/dist/components/charts/ordinal/ViolinPlot.d.ts +1 -1
- package/dist/components/charts/physics/ChainReactionChart.d.ts +9 -0
- package/dist/components/charts/physics/CollisionSwarmChart.capability.d.ts +2 -0
- package/dist/components/charts/physics/CollisionSwarmChart.d.ts +47 -0
- package/dist/components/charts/physics/EventDropChart.capability.d.ts +2 -0
- package/dist/components/charts/physics/EventDropChart.d.ts +53 -0
- package/dist/components/charts/physics/GaltonBoardChart.capability.d.ts +2 -0
- package/dist/components/charts/physics/GaltonBoardChart.d.ts +66 -0
- package/dist/components/charts/physics/GauntletChart.capability.d.ts +2 -0
- package/dist/components/charts/physics/GauntletChart.d.ts +73 -0
- package/dist/components/charts/physics/PhysicalFlowChart.capability.d.ts +2 -0
- package/dist/components/charts/physics/PhysicalFlowChart.d.ts +63 -0
- package/dist/components/charts/physics/PhysicsCustomChart.d.ts +120 -0
- package/dist/components/charts/physics/PhysicsPileChart.capability.d.ts +2 -0
- package/dist/components/charts/physics/PhysicsPileChart.d.ts +53 -0
- package/dist/components/charts/physics/ProcessFlowChart.capability.d.ts +2 -0
- package/dist/components/charts/physics/ProcessFlowChart.d.ts +96 -0
- package/dist/components/charts/physics/chainReactionOverlay.d.ts +22 -0
- package/dist/components/charts/physics/chainReactionRuntime.d.ts +37 -0
- package/dist/components/charts/physics/chainReactionTypes.d.ts +97 -0
- package/dist/components/charts/physics/collisionSwarmPhysics.d.ts +27 -0
- package/dist/components/charts/physics/dependencyMachine.d.ts +188 -0
- package/dist/components/charts/physics/eventDropPhysics.d.ts +64 -0
- package/dist/components/charts/physics/galtonBoardPhysics.d.ts +28 -0
- package/dist/components/charts/physics/gauntletChartProps.d.ts +67 -0
- package/dist/components/charts/physics/gauntletChrome.d.ts +33 -0
- package/dist/components/charts/physics/gauntletController.d.ts +73 -0
- package/dist/components/charts/physics/gauntletEffects.d.ts +36 -0
- package/dist/components/charts/physics/gauntletPhysics.d.ts +71 -0
- package/dist/components/charts/physics/gauntletRuntime.d.ts +42 -0
- package/dist/components/charts/physics/gauntletTypes.d.ts +213 -0
- package/dist/components/charts/physics/physicalFlowPhysics.d.ts +57 -0
- package/dist/components/charts/physics/physicsChartShared.d.ts +41 -0
- package/dist/components/charts/physics/physicsChartUtils.d.ts +18 -0
- package/dist/components/charts/physics/physicsEncoding.d.ts +142 -0
- package/dist/components/charts/physics/physicsHocHandle.d.ts +53 -0
- package/dist/components/charts/physics/physicsHocUtils.d.ts +128 -0
- package/dist/components/charts/physics/physicsPilePhysics.d.ts +41 -0
- package/dist/components/charts/physics/physicsProcessPrimitives.d.ts +38 -0
- package/dist/components/charts/physics/processFlowPhysics.d.ts +97 -0
- package/dist/components/charts/realtime/RealtimeHeatmap.d.ts +9 -1
- package/dist/components/charts/realtime/RealtimeHistogram.d.ts +9 -1
- package/dist/components/charts/realtime/RealtimeLineChart.d.ts +30 -1
- package/dist/components/charts/realtime/RealtimeSwarmChart.d.ts +16 -2
- package/dist/components/charts/realtime/RealtimeWaterfallChart.d.ts +9 -1
- package/dist/components/charts/realtime/aggregate.d.ts +51 -0
- package/dist/components/charts/realtime/eventTime.d.ts +26 -0
- package/dist/components/charts/shared/auditMobileVisualization.d.ts +91 -0
- package/dist/components/charts/shared/chartDefinitionPilot.d.ts +145 -0
- package/dist/components/charts/shared/chartFamilySets.d.ts +20 -0
- package/dist/components/charts/shared/chartSpecCore.d.ts +165 -0
- package/dist/components/charts/shared/chartSpecs.d.ts +8 -127
- package/dist/components/charts/shared/chartSpecsGeo.d.ts +2 -0
- package/dist/components/charts/shared/chartSpecsNetwork.d.ts +2 -0
- package/dist/components/charts/shared/chartSpecsOrdinal.d.ts +2 -0
- package/dist/components/charts/shared/chartSpecsPhysics.d.ts +2 -0
- package/dist/components/charts/shared/chartSpecsRealtime.d.ts +2 -0
- package/dist/components/charts/shared/chartSpecsValue.d.ts +2 -0
- package/dist/components/charts/shared/chartSpecsXY.d.ts +2 -0
- package/dist/components/charts/shared/colorContrast.d.ts +3 -0
- package/dist/components/charts/shared/colorPalettes.d.ts +2 -0
- package/dist/components/charts/shared/colorUtils.d.ts +17 -13
- package/dist/components/charts/shared/diagnoseAnnotationChecks.d.ts +4 -0
- package/dist/components/charts/shared/diagnoseConfig.d.ts +9 -14
- package/dist/components/charts/shared/diagnoseMisleadingChecks.d.ts +9 -0
- package/dist/components/charts/shared/diagnosePhysicsChecks.d.ts +3 -0
- package/dist/components/charts/shared/diagnoseTypes.d.ts +10 -0
- package/dist/components/charts/shared/hooks.d.ts +28 -5
- package/dist/components/charts/shared/minMax.d.ts +3 -0
- package/dist/components/charts/shared/motionEncoding.d.ts +145 -0
- package/dist/components/charts/shared/radialGeometry.d.ts +0 -18
- package/dist/components/charts/shared/responsiveRules.d.ts +56 -0
- package/dist/components/charts/shared/smartTooltip.d.ts +27 -0
- package/dist/components/charts/shared/statisticalOverlays.d.ts +35 -0
- package/dist/components/charts/shared/streamPropsHelpers.d.ts +12 -2
- package/dist/components/charts/shared/temporalStrings.d.ts +7 -0
- package/dist/components/charts/shared/tooltipUtils.d.ts +2 -0
- package/dist/components/charts/shared/types.d.ts +49 -1
- package/dist/components/charts/shared/useChartSetup.d.ts +10 -3
- package/dist/components/charts/shared/useCustomChartSetup.d.ts +15 -6
- package/dist/components/charts/shared/useNetworkChartSetup.d.ts +6 -2
- package/dist/components/charts/shared/useOrdinalPieceStyle.d.ts +1 -1
- package/dist/components/charts/shared/useStreamingLegend.d.ts +1 -1
- package/dist/components/charts/shared/useSyncedPushData.d.ts +49 -0
- package/dist/components/charts/shared/validateChartData.d.ts +1 -1
- package/dist/components/charts/shared/validationMap.d.ts +0 -11
- package/dist/components/charts/xy/AreaChart.d.ts +1 -1
- package/dist/components/charts/xy/BubbleChart.d.ts +1 -1
- package/dist/components/charts/xy/LineChart.d.ts +1 -1
- package/dist/components/charts/xy/MinimapChart.d.ts +1 -1
- package/dist/components/charts/xy/MultiAxisLineChart.d.ts +2 -2
- package/dist/components/charts/xy/QuadrantChart.d.ts +1 -1
- package/dist/components/charts/xy/Scatterplot.d.ts +10 -1
- package/dist/components/charts/xy/ScatterplotMatrix.d.ts +11 -1
- package/dist/components/charts/xy/StackedAreaChart.d.ts +9 -4
- package/dist/components/controls/controlAudit.d.ts +24 -0
- package/dist/components/controls/controlContract.d.ts +57 -0
- package/dist/components/data/fromArrow.d.ts +54 -0
- package/dist/components/data/fromFlintChart.d.ts +74 -0
- package/dist/components/data/fromMermaid.d.ts +47 -0
- package/dist/components/data/fromObservablePlot.d.ts +69 -0
- package/dist/components/data/fromVegaLite.d.ts +27 -0
- package/dist/components/data/portability/index.d.ts +17 -0
- package/dist/components/data/portability/result.d.ts +52 -0
- package/dist/components/data/portability/spec.d.ts +160 -0
- package/dist/components/data/portability/vegaLite.d.ts +80 -0
- package/dist/components/export/chartConfig.d.ts +11 -0
- package/dist/components/realtime/ReorderBuffer.d.ts +54 -0
- package/dist/components/realtime/RunningStats.d.ts +66 -0
- package/dist/components/realtime/WindowAccumulator.d.ts +105 -0
- package/dist/components/realtime/parseWindowDuration.d.ts +12 -0
- package/dist/components/realtime/types.d.ts +11 -0
- package/dist/components/recipes/annotationLayout.d.ts +29 -0
- package/dist/components/recipes/axisFixedForce.d.ts +119 -0
- package/dist/components/recipes/boba.d.ts +23 -0
- package/dist/components/recipes/customTooltip.d.ts +31 -0
- package/dist/components/recipes/cyclical.d.ts +39 -0
- package/dist/components/recipes/edgeRouter.d.ts +103 -0
- package/dist/components/recipes/forceLayout.d.ts +48 -0
- package/dist/components/recipes/forceLayoutAsync.d.ts +17 -0
- package/dist/components/recipes/gofishBobaHandwritten.d.ts +3 -0
- package/dist/components/recipes/gofishDisplayListFixtures.generated.d.ts +37 -0
- package/dist/components/recipes/gofishIR.d.ts +215 -0
- package/dist/components/recipes/gofishIRExamples.d.ts +38 -0
- package/dist/components/recipes/intervalLanes.d.ts +87 -0
- package/dist/components/recipes/intervals.d.ts +80 -0
- package/dist/components/recipes/isometricLandmarks.d.ts +88 -0
- package/dist/components/recipes/isotypeGlyphs.d.ts +17 -0
- package/dist/components/recipes/mermaidDag.d.ts +44 -0
- package/dist/components/recipes/mobileAnnotationStrategy.d.ts +48 -0
- package/dist/components/recipes/mobileChartFamilyRecipes.d.ts +59 -0
- package/dist/components/recipes/networkAnalysis.d.ts +102 -0
- package/dist/components/recipes/networkLayouts.d.ts +83 -0
- package/dist/components/recipes/packedClusterMatrix.d.ts +166 -0
- package/dist/components/recipes/physics.d.ts +122 -0
- package/dist/components/recipes/physicsReference.d.ts +102 -0
- package/dist/components/recipes/processAggregates.d.ts +32 -0
- package/dist/components/recipes/processChrome.d.ts +67 -0
- package/dist/components/recipes/processJourney.d.ts +54 -0
- package/dist/components/recipes/processPhysics.d.ts +300 -0
- package/dist/components/recipes/processVolumeGeometry.d.ts +28 -0
- package/dist/components/recipes/radialCoords.d.ts +69 -0
- package/dist/components/recipes/random.d.ts +2 -0
- package/dist/components/recipes/recipeChrome.d.ts +191 -0
- package/dist/components/recipes/recipeGlyph.d.ts +42 -0
- package/dist/components/recipes/recipeLegend.d.ts +109 -0
- package/dist/components/recipes/recipeUtils.d.ts +157 -0
- package/dist/components/recipes/runs.d.ts +59 -0
- package/dist/components/recipes/tokenEncoding.d.ts +157 -0
- package/dist/components/recipes/tokenLayer.d.ts +79 -0
- package/dist/components/recipes/unitize.d.ts +108 -0
- package/dist/components/recipes/vector.d.ts +28 -0
- package/dist/components/recipes/waffle.d.ts +43 -0
- package/dist/components/semiotic-ai-core.d.ts +47 -0
- package/dist/components/semiotic-ai.d.ts +52 -4
- package/dist/components/semiotic-controls.d.ts +18 -0
- package/dist/components/semiotic-data.d.ts +2 -0
- package/dist/components/semiotic-experimental.d.ts +49 -0
- package/dist/components/semiotic-geo.d.ts +11 -0
- package/dist/components/semiotic-network.d.ts +14 -1
- package/dist/components/semiotic-ordinal.d.ts +10 -0
- package/dist/components/semiotic-physics-matter.d.ts +10 -0
- package/dist/components/semiotic-physics-rapier.d.ts +9 -0
- package/dist/components/semiotic-physics.d.ts +56 -0
- package/dist/components/semiotic-realtime-core.d.ts +34 -0
- package/dist/components/semiotic-realtime-react.d.ts +10 -0
- package/dist/components/semiotic-realtime.d.ts +4 -22
- package/dist/components/semiotic-recipes-core.d.ts +92 -0
- package/dist/components/semiotic-recipes-react.d.ts +7 -0
- package/dist/components/semiotic-recipes.d.ts +4 -26
- package/dist/components/semiotic-server-edge.d.ts +8 -0
- package/dist/components/semiotic-server-node.d.ts +5 -0
- package/dist/components/semiotic-server.d.ts +2 -2
- package/dist/components/semiotic-themes-core.d.ts +53 -0
- package/dist/components/semiotic-themes-react.d.ts +4 -0
- package/dist/components/semiotic-themes.d.ts +6 -74
- package/dist/components/semiotic-utils-core.d.ts +46 -0
- package/dist/components/semiotic-utils-react.d.ts +5 -0
- package/dist/components/semiotic-utils.d.ts +3 -39
- package/dist/components/semiotic-xy.d.ts +10 -0
- package/dist/components/semiotic.d.ts +39 -7
- package/dist/components/server/animatedGif.d.ts +36 -0
- package/dist/components/server/renderEvidence.d.ts +1 -1
- package/dist/components/server/renderToStaticSVG.d.ts +3 -35
- package/dist/components/server/serverChartConfigShared.d.ts +17 -0
- package/dist/components/server/serverChartConfigs.d.ts +19 -9
- package/dist/components/server/serverChartConfigsCustom.d.ts +5 -0
- package/dist/components/server/serverChartConfigsGeo.d.ts +9 -0
- package/dist/components/server/serverChartConfigsNetwork.d.ts +8 -0
- package/dist/components/server/serverChartConfigsOrdinal.d.ts +16 -0
- package/dist/components/server/serverChartConfigsPhysics.d.ts +9 -0
- package/dist/components/server/serverChartConfigsXY.d.ts +11 -0
- package/dist/components/server/staticGeo.d.ts +4 -0
- package/dist/components/server/staticLegend.d.ts +1 -1
- package/dist/components/server/staticNetwork.d.ts +8 -0
- package/dist/components/server/staticOrdinal.d.ts +11 -0
- package/dist/components/server/staticPhysics.d.ts +3 -0
- package/dist/components/server/staticSVGChrome.d.ts +110 -0
- package/dist/components/server/staticXY.d.ts +4 -0
- package/dist/components/store/ObservationStore.d.ts +23 -3
- package/dist/components/store/SelectionStore.d.ts +1 -1
- package/dist/components/store/ThemeStore.d.ts +1 -1
- package/dist/components/store/TooltipStore.d.ts +1 -1
- package/dist/components/store/createStore.d.ts +1 -1
- package/dist/components/store/designTokens.d.ts +15 -0
- package/dist/components/store/themeSerialization.d.ts +32 -0
- package/dist/components/store/useChartInterrogation.d.ts +9 -0
- package/dist/components/stream/AccessibleDataTable.d.ts +3 -13
- package/dist/components/stream/FocusRing.d.ts +4 -2
- package/dist/components/stream/GeoCanvasHitTester.d.ts +1 -1
- package/dist/components/stream/GeoPipelineStore.d.ts +28 -0
- package/dist/components/stream/NetworkHtmlMarksLayer.d.ts +44 -0
- package/dist/components/stream/NetworkPipelineStore.d.ts +62 -25
- package/dist/components/stream/NetworkSVGOverlay.d.ts +15 -0
- package/dist/components/stream/OrdinalPipelineStore.d.ts +64 -2
- package/dist/components/stream/PipelineStore.d.ts +100 -162
- package/dist/components/stream/SceneGraph.d.ts +14 -2
- package/dist/components/stream/StreamGeoFrame.d.ts +1 -1
- package/dist/components/stream/StreamNetworkFrame.d.ts +1 -1
- package/dist/components/stream/StreamOrdinalFrame.d.ts +1 -1
- package/dist/components/stream/StreamXYFrame.d.ts +2 -18
- package/dist/components/stream/accessibleDataRows.d.ts +33 -0
- package/dist/components/stream/accessorUtils.d.ts +23 -10
- package/dist/components/stream/brushAccessibility.d.ts +25 -0
- package/dist/components/stream/canvasBackground.d.ts +24 -0
- package/dist/components/stream/canvasSetup.d.ts +4 -1
- package/dist/components/stream/customLayout.d.ts +20 -0
- package/dist/components/stream/customLayoutDiagnostics.d.ts +11 -0
- package/dist/components/stream/customLayoutFailure.d.ts +33 -0
- package/dist/components/stream/customLayoutPalette.d.ts +19 -9
- package/dist/components/stream/customLayoutSelection.d.ts +52 -0
- package/dist/components/stream/frameThemeColors.d.ts +24 -0
- package/dist/components/stream/geoAnnotationAnchors.d.ts +14 -0
- package/dist/components/stream/geoCartogram.d.ts +17 -0
- package/dist/components/stream/geoCustomLayout.d.ts +59 -0
- package/dist/components/stream/geoDefaultTooltip.d.ts +11 -0
- package/dist/components/stream/geoFrameHelpers.d.ts +34 -0
- package/dist/components/stream/geoPipelineHelpers.d.ts +46 -0
- package/dist/components/stream/geoTypes.d.ts +56 -7
- package/dist/components/stream/glyphDef.d.ts +98 -0
- package/dist/components/stream/hitTarget.d.ts +170 -0
- package/dist/components/stream/hoverUtils.d.ts +3 -0
- package/dist/components/stream/keyboardNav.d.ts +4 -1
- package/dist/components/stream/layouts/forceLayoutPlugin.d.ts +9 -1
- package/dist/components/stream/layouts/forceLayoutWorkerClient.d.ts +57 -0
- package/dist/components/stream/networkBezier.d.ts +10 -0
- package/dist/components/stream/networkColorAccessors.d.ts +49 -0
- package/dist/components/stream/networkCustomLayout.d.ts +66 -1
- package/dist/components/stream/networkDefaultTooltip.d.ts +10 -0
- package/dist/components/stream/networkFrameInteraction.d.ts +37 -0
- package/dist/components/stream/networkFramePaint.d.ts +43 -0
- package/dist/components/stream/networkPipelineConfig.d.ts +22 -0
- package/dist/components/stream/networkPipelineHelpers.d.ts +12 -0
- package/dist/components/stream/networkRealtimeEncoding.d.ts +41 -0
- package/dist/components/stream/networkTypes.d.ts +104 -5
- package/dist/components/stream/ordinalCanvasRenderers.d.ts +7 -0
- package/dist/components/stream/ordinalCustomLayout.d.ts +17 -1
- package/dist/components/stream/ordinalDataIndex.d.ts +5 -0
- package/dist/components/stream/ordinalDefaultTooltip.d.ts +10 -0
- package/dist/components/stream/ordinalDomain.d.ts +38 -0
- package/dist/components/stream/ordinalPipelineUpdateResults.d.ts +12 -0
- package/dist/components/stream/ordinalPulse.d.ts +10 -0
- package/dist/components/stream/ordinalPulseResources.d.ts +3 -0
- package/dist/components/stream/ordinalSceneBuilders/sceneBuilderMap.d.ts +5 -0
- package/dist/components/stream/ordinalSceneBuilders/types.d.ts +2 -0
- package/dist/components/stream/ordinalSpatialIndex.d.ts +9 -0
- package/dist/components/stream/ordinalTypes.d.ts +56 -8
- package/dist/components/stream/paintNeeds.d.ts +31 -0
- package/dist/components/stream/physics/CapacityQueueController.d.ts +5 -0
- package/dist/components/stream/physics/CapacityQueueTypes.d.ts +134 -0
- package/dist/components/stream/physics/MatterPhysicsEngineAdapter.d.ts +42 -0
- package/dist/components/stream/physics/PhysicsAccessibility.d.ts +48 -0
- package/dist/components/stream/physics/PhysicsAnnotations.d.ts +58 -0
- package/dist/components/stream/physics/PhysicsBodyBudget.d.ts +26 -0
- package/dist/components/stream/physics/PhysicsBodySpatialIndex.d.ts +10 -0
- package/dist/components/stream/physics/PhysicsCanvasTheme.d.ts +26 -0
- package/dist/components/stream/physics/PhysicsControllers.d.ts +75 -0
- package/dist/components/stream/physics/PhysicsEngineAdapter.d.ts +59 -0
- package/dist/components/stream/physics/PhysicsEngineConformance.d.ts +23 -0
- package/dist/components/stream/physics/PhysicsEvidence.d.ts +25 -0
- package/dist/components/stream/physics/PhysicsKernel.d.ts +207 -0
- package/dist/components/stream/physics/PhysicsOptionalEngineAdapters.d.ts +12 -0
- package/dist/components/stream/physics/PhysicsPipelineStore.d.ts +84 -0
- package/dist/components/stream/physics/PhysicsPipelineTypes.d.ts +181 -0
- package/dist/components/stream/physics/PhysicsSVGOverlay.d.ts +72 -0
- package/dist/components/stream/physics/PhysicsSediment.d.ts +69 -0
- package/dist/components/stream/physics/PhysicsSettledSVG.d.ts +18 -0
- package/dist/components/stream/physics/PhysicsSettledScene.d.ts +21 -0
- package/dist/components/stream/physics/PhysicsWorkerClient.d.ts +24 -0
- package/dist/components/stream/physics/PhysicsWorkerProtocol.d.ts +101 -0
- package/dist/components/stream/physics/PhysicsWorkerRuntime.d.ts +5 -0
- package/dist/components/stream/physics/RapierPhysicsEngineAdapter.d.ts +18 -0
- package/dist/components/stream/physics/ServiceOperationsControllers.d.ts +27 -0
- package/dist/components/stream/physics/ServiceOperationsTypes.d.ts +89 -0
- package/dist/components/stream/physics/StreamPhysicsFrame.d.ts +6 -0
- package/dist/components/stream/physics/StreamPhysicsTypes.d.ts +302 -0
- package/dist/components/stream/physics/physicsBodyCanvas.d.ts +27 -0
- package/dist/components/stream/physics/physicsPipelineControls.d.ts +4 -0
- package/dist/components/stream/physics/physicsPipelineHelpers.d.ts +41 -0
- package/dist/components/stream/physics/physicsPipelineObservations.d.ts +14 -0
- package/dist/components/stream/physics/physicsPipelineUpdateResults.d.ts +9 -0
- package/dist/components/stream/physics/physicsRegionRuntime.d.ts +54 -0
- package/dist/components/stream/physics/physicsSemanticUI.d.ts +20 -0
- package/dist/components/stream/physics/usePhysicsFrameLifecyclePolicy.d.ts +16 -0
- package/dist/components/stream/pipelineBufferUtils.d.ts +26 -0
- package/dist/components/stream/pipelineConfig.d.ts +177 -0
- package/dist/components/stream/pipelineDecay.d.ts +20 -2
- package/dist/components/stream/pipelineDomainResolution.d.ts +62 -0
- package/dist/components/stream/pipelineIdentityOps.d.ts +26 -0
- package/dist/components/stream/pipelinePulse.d.ts +16 -2
- package/dist/components/stream/pipelineRibbons.d.ts +41 -0
- package/dist/components/stream/pipelineSpatialIndex.d.ts +12 -0
- package/dist/components/stream/pipelineStoreUpdateResults.d.ts +12 -0
- package/dist/components/stream/pipelineStyleResolvers.d.ts +46 -0
- package/dist/components/stream/pipelineTransitions.d.ts +2 -0
- package/dist/components/stream/pipelineUpdateContract.d.ts +62 -0
- package/dist/components/stream/pulseFrameRefresh.d.ts +22 -0
- package/dist/components/stream/renderers/glyphCanvasRenderer.d.ts +6 -0
- package/dist/components/stream/renderers/networkSymbolRenderer.d.ts +2 -0
- package/dist/components/stream/renderers/resolveCSSColor.d.ts +6 -0
- package/dist/components/stream/renderers/symbolCanvasRenderer.d.ts +2 -0
- package/dist/components/stream/sceneRevisionDiagnostics.d.ts +18 -0
- package/dist/components/stream/stalenessBands.d.ts +28 -0
- package/dist/components/stream/streamStoreSync.d.ts +37 -0
- package/dist/components/stream/symbolPath.d.ts +24 -0
- package/dist/components/stream/types.d.ts +206 -9
- package/dist/components/stream/useFrame.d.ts +21 -2
- package/dist/components/stream/useHydration.d.ts +6 -0
- package/dist/components/stream/useLegendCategoryEmission.d.ts +5 -0
- package/dist/components/stream/useStalenessCheck.d.ts +6 -1
- package/dist/components/stream/workerModuleUrl.d.ts +10 -0
- package/dist/components/stream/xyAnnotationAnchors.d.ts +13 -0
- package/dist/components/stream/xyCanvasRenderers.d.ts +7 -0
- package/dist/components/stream/xyCrosshair.d.ts +11 -0
- package/dist/components/stream/xyDateTicks.d.ts +9 -0
- package/dist/components/stream/xyDefaultTooltip.d.ts +10 -0
- package/dist/components/stream/xySceneBuilders/pointScene.d.ts +2 -2
- package/dist/components/stream/xySceneBuilders/types.d.ts +9 -4
- package/dist/controls.min.js +2 -0
- package/dist/controls.module.min.js +2 -0
- package/dist/forceLayoutWorker.js +1 -0
- package/dist/geo.min.js +1 -1
- package/dist/geo.module.min.js +1 -1
- package/dist/network.min.js +1 -1
- package/dist/network.module.min.js +1 -1
- package/dist/ordinal.min.js +1 -1
- package/dist/ordinal.module.min.js +1 -1
- package/dist/physics-matter.min.js +1 -0
- package/dist/physics-matter.module.min.js +1 -0
- package/dist/physics-rapier.min.js +1 -0
- package/dist/physics-rapier.module.min.js +1 -0
- package/dist/physics.min.js +2 -0
- package/dist/physics.module.min.js +2 -0
- package/dist/physicsWorker.js +1 -0
- package/dist/realtime.min.js +1 -1
- package/dist/realtime.module.min.js +1 -1
- package/dist/semiotic-ai-chunk-OG7BQUUW.module.min.js +2 -0
- package/dist/semiotic-ai-core.d.ts +47 -0
- package/dist/semiotic-ai-core.min.js +1 -0
- package/dist/semiotic-ai-core.module.min.js +1 -0
- package/dist/semiotic-ai-statisticalOverlays-CY4WKR4A.module.min.js +2 -0
- package/dist/semiotic-ai.d.ts +52 -4
- package/dist/semiotic-ai.min.js +1 -1
- package/dist/semiotic-ai.module.min.js +1 -1
- package/dist/semiotic-chunk-3FSVZ46U.module.min.js +2 -0
- package/dist/semiotic-controls.d.ts +18 -0
- package/dist/semiotic-data.d.ts +2 -0
- package/dist/semiotic-data.min.js +1 -1
- package/dist/semiotic-data.module.min.js +1 -1
- package/dist/semiotic-experimental.d.ts +49 -0
- package/dist/semiotic-experimental.min.js +1 -0
- package/dist/semiotic-experimental.module.min.js +1 -0
- package/dist/semiotic-geo.d.ts +11 -0
- package/dist/semiotic-network.d.ts +14 -1
- package/dist/semiotic-ordinal.d.ts +10 -0
- package/dist/semiotic-physics-matter.d.ts +10 -0
- package/dist/semiotic-physics-rapier.d.ts +9 -0
- package/dist/semiotic-physics.d.ts +56 -0
- package/dist/semiotic-realtime-core.d.ts +34 -0
- package/dist/semiotic-realtime-core.min.js +1 -0
- package/dist/semiotic-realtime-core.module.min.js +1 -0
- package/dist/semiotic-realtime-react.d.ts +10 -0
- package/dist/semiotic-realtime-react.min.js +2 -0
- package/dist/semiotic-realtime-react.module.min.js +2 -0
- package/dist/semiotic-realtime.d.ts +4 -22
- package/dist/semiotic-recipes-core.d.ts +92 -0
- package/dist/semiotic-recipes-core.min.js +1 -0
- package/dist/semiotic-recipes-core.module.min.js +1 -0
- package/dist/semiotic-recipes-react.d.ts +7 -0
- package/dist/semiotic-recipes-react.min.js +2 -0
- package/dist/semiotic-recipes-react.module.min.js +2 -0
- package/dist/semiotic-recipes.d.ts +4 -26
- package/dist/semiotic-recipes.min.js +1 -1
- package/dist/semiotic-recipes.module.min.js +1 -1
- package/dist/semiotic-server-edge.d.ts +8 -0
- package/dist/semiotic-server-edge.min.js +1 -0
- package/dist/semiotic-server-edge.module.min.js +1 -0
- package/dist/semiotic-server-node.d.ts +5 -0
- package/dist/semiotic-server-node.min.js +1 -0
- package/dist/semiotic-server-node.module.min.js +1 -0
- package/dist/semiotic-server.d.ts +2 -2
- package/dist/semiotic-statisticalOverlays-UOMSFKVJ.module.min.js +2 -0
- package/dist/semiotic-themes-core.d.ts +53 -0
- package/dist/semiotic-themes-core.min.js +1 -0
- package/dist/semiotic-themes-core.module.min.js +1 -0
- package/dist/semiotic-themes-react.d.ts +4 -0
- package/dist/semiotic-themes-react.min.js +2 -0
- package/dist/semiotic-themes-react.module.min.js +2 -0
- package/dist/semiotic-themes.d.ts +6 -74
- package/dist/semiotic-themes.min.js +1 -2
- package/dist/semiotic-themes.module.min.js +1 -2
- package/dist/semiotic-utils-core.d.ts +46 -0
- package/dist/semiotic-utils-core.min.js +1 -0
- package/dist/semiotic-utils-core.module.min.js +1 -0
- package/dist/semiotic-utils-react.d.ts +5 -0
- package/dist/semiotic-utils-react.min.js +2 -0
- package/dist/semiotic-utils-react.module.min.js +2 -0
- package/dist/semiotic-utils.d.ts +3 -39
- package/dist/semiotic-utils.min.js +1 -2
- package/dist/semiotic-utils.module.min.js +1 -2
- package/dist/semiotic-value.min.js +1 -1
- package/dist/semiotic-value.module.min.js +1 -1
- package/dist/semiotic-xy.d.ts +10 -0
- package/dist/semiotic.d.ts +39 -7
- package/dist/semiotic.min.js +1 -1
- package/dist/semiotic.module.min.js +1 -1
- package/dist/server.min.js +1 -1
- package/dist/server.module.min.js +1 -1
- package/dist/xy-chunk-IWD6IB6V.module.min.js +2 -0
- package/dist/xy-statisticalOverlays-7RWG6LJT.module.min.js +2 -0
- package/dist/xy.min.js +1 -1
- package/dist/xy.module.min.js +1 -1
- package/package.json +246 -86
- package/spec/README.md +152 -0
- package/spec/bindings/README.md +35 -0
- package/spec/bindings/vega-lite.mjs +112 -0
- package/spec/v0.1/annotation-provenance.schema.json +127 -0
- package/spec/v0.1/audience-profile.schema.json +67 -0
- package/spec/v0.1/chart-capability.schema.json +186 -0
- package/dist/semiotic-ai-statisticalOverlays-C2PPlmXv.js +0 -1
- package/dist/semiotic-statisticalOverlays-C3DsOgr_.js +0 -1
- package/dist/xy-statisticalOverlays-C2PPlmXv.js +0 -1
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const HIERARCHY_CHARTS: Set<string>;
|
|
2
|
+
export declare const NETWORK_CHARTS: Set<string>;
|
|
3
|
+
export declare const BAR_AREA_CHARTS: Set<string>;
|
|
4
|
+
export declare const TREND_SERIES_CHARTS: Set<string>;
|
|
5
|
+
export declare const ORDINAL_BAR_CHARTS: Set<string>;
|
|
6
|
+
export declare const CURVE_CHARTS: Set<string>;
|
|
7
|
+
export declare const PIE_CHARTS: Set<string>;
|
|
8
|
+
export declare const PART_TO_WHOLE_ACCESSORS: Record<string, string>;
|
|
9
|
+
export declare const PART_TO_WHOLE_CHARTS: Set<string>;
|
|
10
|
+
export declare const NORMALIZED_STACK_ACCESSORS: Record<string, string>;
|
|
11
|
+
export declare const VALUE_CHARTS: Set<string>;
|
|
12
|
+
export declare const XY_WITH_AXES_CHARTS: Set<string>;
|
|
13
|
+
export declare const PHYSICS_MOTION_CHARTS: Set<string>;
|
|
14
|
+
export declare const CONTINUOUS_MOTION_CHARTS: Set<string>;
|
|
15
|
+
export declare const PHYSICS_SETTLED_CHARTS: Set<string>;
|
|
16
|
+
export declare const PHYSICS_DIAGNOSTIC_CHARTS: Set<string>;
|
|
17
|
+
export declare const REALTIME_CHARTS: Set<string>;
|
|
18
|
+
export declare const DUAL_AXIS_CHARTS: Set<string>;
|
|
19
|
+
export declare const GEO_CHARTS: Set<string>;
|
|
20
|
+
export declare const POINT_TARGET_RADIUS_PROP: Record<string, string>;
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Single source of truth for per-chart prop specifications.
|
|
3
|
+
*
|
|
4
|
+
* Three downstream consumers used to maintain their own per-chart entries:
|
|
5
|
+
* - `ai/schema.json` (LLM tool definitions)
|
|
6
|
+
* - `src/components/charts/shared/validationMap.ts` (runtime prop validation)
|
|
7
|
+
* - `ai/componentMetadata.cjs` (category buckets)
|
|
8
|
+
*
|
|
9
|
+
* Today, `validationMap.ts` is derived directly from this registry, and
|
|
10
|
+
* `ai/schema.json` is generated from it — run `npm run docs:chart-specs:schema`
|
|
11
|
+
* to refresh the schema after editing a spec. `componentMetadata.cjs` is still
|
|
12
|
+
* hand-edited but gated for parity by the registry: `check:chart-specs` (run
|
|
13
|
+
* via `npm run check:chart-specs`) regenerates each chart's schema/
|
|
14
|
+
* validation/metadata entries with the pure functions in
|
|
15
|
+
* `scripts/lib/chart-specs-generators.mjs` and fails the build on any
|
|
16
|
+
* drift, including unexpected adds or removes that bypass the registry.
|
|
17
|
+
*
|
|
18
|
+
* Design notes:
|
|
19
|
+
* - Shared prop bags (common, xyAxis, ordinalAxis) live in `PROP_BAGS` and
|
|
20
|
+
* are referenced by name in each spec so common surface stays in one place.
|
|
21
|
+
* - The runtime PropType set ("string" | "number" | "boolean" | "array" |
|
|
22
|
+
* "object" | "function") is broader than JSON Schema's, but the schema
|
|
23
|
+
* generator emits whatever types this registry declares — including
|
|
24
|
+
* "function" inside type unions (canonical entries like
|
|
25
|
+
* `RidgelinePlot.tooltip: ["function", "object"]` and
|
|
26
|
+
* `SwimlaneChart.onBrush: "function"` already use this convention; LLMs
|
|
27
|
+
* read the union and pick a non-function alternative when they can't
|
|
28
|
+
* supply a function value). For props that are purely callbacks or
|
|
29
|
+
* escape hatches an LLM cannot meaningfully populate, tag the spec
|
|
30
|
+
* with `omitFromSchema: true` to keep it in validationMap but out of
|
|
31
|
+
* schema.json. `description` and `default` annotations surface in
|
|
32
|
+
* schema.json (and MCP responses) but are dropped from validationMap
|
|
33
|
+
* (which only reads `type` and `enum`).
|
|
34
|
+
*/
|
|
35
|
+
export type PropType = "string" | "number" | "boolean" | "array" | "object" | "function";
|
|
36
|
+
export type DataShape = "array" | "object" | "network" | "realtime" | "none";
|
|
37
|
+
export type ChartCategory = "xy" | "ordinal" | "network" | "geo" | "realtime" | "physics" | "value";
|
|
38
|
+
/**
|
|
39
|
+
* Capability tags for runtime behavior. Each chart declares which
|
|
40
|
+
* features it actually supports so docs, AI/MCP tools, and CI gates
|
|
41
|
+
* can read structured truth instead of inferring it from the source.
|
|
42
|
+
*
|
|
43
|
+
* All fields are required so a new chart entry can't omit them
|
|
44
|
+
* silently — the audit's anti-goal "Do not make registry metadata
|
|
45
|
+
* aspirational. It should describe real runtime behavior and be
|
|
46
|
+
* checked." applies here.
|
|
47
|
+
*/
|
|
48
|
+
export interface ChartCapabilities {
|
|
49
|
+
/**
|
|
50
|
+
* Render pipeline. `canvas` for Stream-Frame-driven charts that
|
|
51
|
+
* paint to canvas with SVG overlays for chrome (the common case).
|
|
52
|
+
* `svg` for charts that are pure SVG (none today, but reserved).
|
|
53
|
+
* `hybrid` for charts that use both — currently every Stream-Frame
|
|
54
|
+
* HOC qualifies as hybrid; reserve `canvas` for any future
|
|
55
|
+
* canvas-only fallback.
|
|
56
|
+
*/
|
|
57
|
+
renderModes: Array<"canvas" | "svg" | "hybrid">;
|
|
58
|
+
/** Renders a legend swatch column when `colorBy` (or equivalent)
|
|
59
|
+
* resolves to non-empty categories. */
|
|
60
|
+
supportsLegend: boolean;
|
|
61
|
+
/** Reads from a `selection` prop and dims/highlights matching
|
|
62
|
+
* marks via `wrapStyleWithSelection` or equivalent. */
|
|
63
|
+
supportsSelection: boolean;
|
|
64
|
+
/** Produces a hover-driven selection (used by linked crosshair /
|
|
65
|
+
* cross-filter patterns) via `linkedHover`. */
|
|
66
|
+
supportsLinkedHover: boolean;
|
|
67
|
+
/** Exposes a ref handle (`push`, `pushMany`, etc.) so consumers
|
|
68
|
+
* can mutate the data list without re-rendering. Hierarchy
|
|
69
|
+
* charts (Treemap/CirclePack/TreeDiagram/OrbitDiagram) and
|
|
70
|
+
* pure-synthetic charts (GaugeChart) declare false. */
|
|
71
|
+
supportsPush: boolean;
|
|
72
|
+
/** Renders to a static SVG via `renderChart()` from `semiotic/server`
|
|
73
|
+
* through a registered entry in `serverChartConfigs.ts`. SSR-only
|
|
74
|
+
* charts (none yet) and HOC-SSR exclusions also declare false. */
|
|
75
|
+
supportsSSR: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* How color is consumed by the chart's data marks.
|
|
78
|
+
* - `categorical`: discrete buckets, paired with a `colorBy` accessor.
|
|
79
|
+
* - `sequential`: continuous scale (heatmap intensity, choropleth value).
|
|
80
|
+
* - `threshold`: stepped scale with explicit breakpoints (gauge zones).
|
|
81
|
+
* - `continuous`: smooth interpolation along a 1-D path (gradient fill).
|
|
82
|
+
* - `none`: chart doesn't use color encoding (sparkline, pure layout).
|
|
83
|
+
*/
|
|
84
|
+
colorModel: "categorical" | "sequential" | "threshold" | "continuous" | "none";
|
|
85
|
+
/**
|
|
86
|
+
* Where the geometry comes from.
|
|
87
|
+
* - `plugin`: a built-in plugin in the frame (sankey/force/chord/tree
|
|
88
|
+
* for network; bar/pie/swarm/etc. for ordinal; line/area/etc. for XY).
|
|
89
|
+
* - `custom`: emitted via the frame's customLayout escape hatch
|
|
90
|
+
* (ProcessSankey via `customNetworkLayout`, NetworkCustomChart,
|
|
91
|
+
* XYCustomChart, OrdinalCustomChart).
|
|
92
|
+
* - `synthetic`: no layout — the chart constructs its scene from
|
|
93
|
+
* the input value(s) directly (GaugeChart computes arc geometry).
|
|
94
|
+
*/
|
|
95
|
+
layoutMode: "plugin" | "custom" | "synthetic";
|
|
96
|
+
/**
|
|
97
|
+
* Free-form tag list for opt-in features that don't fit the
|
|
98
|
+
* boolean shape — e.g. "particles", "forecast", "anomaly", "brush",
|
|
99
|
+
* "streamgraph", "minimap". Used by docs feature tables and
|
|
100
|
+
* potential capability-driven AI suggestions.
|
|
101
|
+
*/
|
|
102
|
+
specialFeatures: string[];
|
|
103
|
+
}
|
|
104
|
+
export interface ChartPropSpec {
|
|
105
|
+
/** Allowed runtime types. May be a single value or a union. */
|
|
106
|
+
type: PropType | PropType[];
|
|
107
|
+
/** Allowed enum values for string-typed props. */
|
|
108
|
+
enum?: readonly string[];
|
|
109
|
+
/** Default value surfaced in schema.json (and shown in MCP getSchema). */
|
|
110
|
+
default?: unknown;
|
|
111
|
+
/** Schema-side description; surfaces in LLM tool definitions. */
|
|
112
|
+
description?: string;
|
|
113
|
+
/**
|
|
114
|
+
* When true, the prop is included in validationMap but omitted from
|
|
115
|
+
* schema.json. Use for handler/callback props (`onClick`, `tooltip`)
|
|
116
|
+
* and pass-through escape hatches (`frameProps`) that LLMs shouldn't
|
|
117
|
+
* be asked to populate.
|
|
118
|
+
*/
|
|
119
|
+
omitFromSchema?: boolean;
|
|
120
|
+
}
|
|
121
|
+
export interface ChartSpec {
|
|
122
|
+
/** Component name, must match the React export. */
|
|
123
|
+
name: string;
|
|
124
|
+
category: ChartCategory;
|
|
125
|
+
/** Human-readable description for schema.tools[].function.description. */
|
|
126
|
+
description: string;
|
|
127
|
+
/** Statically-required props. Push-mode optionality lives in behaviorContracts. */
|
|
128
|
+
required: string[];
|
|
129
|
+
/** Drives validation dispatch (validateArrayData / validateNetworkData / …). */
|
|
130
|
+
dataShape: DataShape;
|
|
131
|
+
/** Accessor props validated against the data shape at runtime. */
|
|
132
|
+
dataAccessors: string[];
|
|
133
|
+
/**
|
|
134
|
+
* Shared prop bags this chart composes. Bag props are merged in left-to-right
|
|
135
|
+
* order; chart-specific `ownProps` win on key collision.
|
|
136
|
+
*/
|
|
137
|
+
propBags: ReadonlyArray<keyof typeof PROP_BAGS>;
|
|
138
|
+
/** Chart-specific prop spec, overlaid on top of the composed bags. */
|
|
139
|
+
ownProps: Record<string, ChartPropSpec>;
|
|
140
|
+
/**
|
|
141
|
+
* Capability matrix — declarative facts about runtime behavior.
|
|
142
|
+
* Drives docs feature tables, capability-aware AI/MCP tools, and
|
|
143
|
+
* the `check:capabilities` drift gate (which verifies, e.g., that
|
|
144
|
+
* a chart claiming `supportsSSR: true` has a matching entry in
|
|
145
|
+
* `serverChartConfigs.ts`).
|
|
146
|
+
*/
|
|
147
|
+
capabilities: ChartCapabilities;
|
|
148
|
+
}
|
|
149
|
+
export declare const PROP_BAGS: {
|
|
150
|
+
readonly common: Record<string, ChartPropSpec>;
|
|
151
|
+
readonly xyAxis: Record<string, ChartPropSpec>;
|
|
152
|
+
readonly ordinalAxis: Record<string, ChartPropSpec>;
|
|
153
|
+
readonly realtime: Record<string, ChartPropSpec>;
|
|
154
|
+
readonly physics: Record<string, ChartPropSpec>;
|
|
155
|
+
};
|
|
156
|
+
export declare const ORIENTATION_ENUM: readonly ["vertical", "horizontal"];
|
|
157
|
+
export declare const HORIZONTAL_VERTICAL_ENUM: readonly ["horizontal", "vertical"];
|
|
158
|
+
export declare const LEGEND_POSITION_ENUM: readonly ["right", "left", "top", "bottom"];
|
|
159
|
+
export declare const CURVE_ENUM: readonly ["linear", "monotoneX", "monotoneY", "step", "stepAfter", "stepBefore", "basis", "cardinal", "catmullRom"];
|
|
160
|
+
export declare const CHART_MODE_ENUM: readonly ["primary", "context", "sparkline"];
|
|
161
|
+
/**
|
|
162
|
+
* Compose a chart's full prop set (bags + ownProps) in deterministic order.
|
|
163
|
+
* ownProps wins on key collision so a chart can override a shared default.
|
|
164
|
+
*/
|
|
165
|
+
export declare function composeProps(spec: ChartSpec): Record<string, ChartPropSpec>;
|
|
@@ -1,131 +1,12 @@
|
|
|
1
|
-
export type PropType = "string" | "number" | "boolean" | "array" | "object" | "function";
|
|
2
|
-
export type DataShape = "array" | "object" | "network" | "realtime" | "none";
|
|
3
|
-
export type ChartCategory = "xy" | "ordinal" | "network" | "geo" | "realtime" | "value";
|
|
4
1
|
/**
|
|
5
|
-
*
|
|
6
|
-
* features it actually supports so docs, AI/MCP tools, and CI gates
|
|
7
|
-
* can read structured truth instead of inferring it from the source.
|
|
2
|
+
* Single source of truth for per-chart prop specifications.
|
|
8
3
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
4
|
+
* Spec entries are split by family (`chartSpecsXY.ts`, etc.); this module
|
|
5
|
+
* re-exports types/helpers and composes `CHART_SPECS`.
|
|
6
|
+
*
|
|
7
|
+
* See `chartSpecCore.ts` for types, prop bags, and `composeProps`.
|
|
13
8
|
*/
|
|
14
|
-
export
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
* paint to canvas with SVG overlays for chrome (the common case).
|
|
18
|
-
* `svg` for charts that are pure SVG (none today, but reserved).
|
|
19
|
-
* `hybrid` for charts that use both — currently every Stream-Frame
|
|
20
|
-
* HOC qualifies as hybrid; reserve `canvas` for any future
|
|
21
|
-
* canvas-only fallback.
|
|
22
|
-
*/
|
|
23
|
-
renderModes: Array<"canvas" | "svg" | "hybrid">;
|
|
24
|
-
/** Renders a legend swatch column when `colorBy` (or equivalent)
|
|
25
|
-
* resolves to non-empty categories. */
|
|
26
|
-
supportsLegend: boolean;
|
|
27
|
-
/** Reads from a `selection` prop and dims/highlights matching
|
|
28
|
-
* marks via `wrapStyleWithSelection` or equivalent. */
|
|
29
|
-
supportsSelection: boolean;
|
|
30
|
-
/** Produces a hover-driven selection (used by linked crosshair /
|
|
31
|
-
* cross-filter patterns) via `linkedHover`. */
|
|
32
|
-
supportsLinkedHover: boolean;
|
|
33
|
-
/** Exposes a ref handle (`push`, `pushMany`, etc.) so consumers
|
|
34
|
-
* can mutate the data list without re-rendering. Hierarchy
|
|
35
|
-
* charts (Treemap/CirclePack/TreeDiagram/OrbitDiagram) and
|
|
36
|
-
* pure-synthetic charts (GaugeChart) declare false. */
|
|
37
|
-
supportsPush: boolean;
|
|
38
|
-
/** Renders to a static SVG via `renderChart()` from `semiotic/server`
|
|
39
|
-
* through a registered entry in `serverChartConfigs.ts`. SSR-only
|
|
40
|
-
* charts (none yet) and HOC-SSR exclusions also declare false. */
|
|
41
|
-
supportsSSR: boolean;
|
|
42
|
-
/**
|
|
43
|
-
* How color is consumed by the chart's data marks.
|
|
44
|
-
* - `categorical`: discrete buckets, paired with a `colorBy` accessor.
|
|
45
|
-
* - `sequential`: continuous scale (heatmap intensity, choropleth value).
|
|
46
|
-
* - `threshold`: stepped scale with explicit breakpoints (gauge zones).
|
|
47
|
-
* - `continuous`: smooth interpolation along a 1-D path (gradient fill).
|
|
48
|
-
* - `none`: chart doesn't use color encoding (sparkline, pure layout).
|
|
49
|
-
*/
|
|
50
|
-
colorModel: "categorical" | "sequential" | "threshold" | "continuous" | "none";
|
|
51
|
-
/**
|
|
52
|
-
* Where the geometry comes from.
|
|
53
|
-
* - `plugin`: a built-in plugin in the frame (sankey/force/chord/tree
|
|
54
|
-
* for network; bar/pie/swarm/etc. for ordinal; line/area/etc. for XY).
|
|
55
|
-
* - `custom`: emitted via the frame's customLayout escape hatch
|
|
56
|
-
* (ProcessSankey via `customNetworkLayout`, NetworkCustomChart,
|
|
57
|
-
* XYCustomChart, OrdinalCustomChart).
|
|
58
|
-
* - `synthetic`: no layout — the chart constructs its scene from
|
|
59
|
-
* the input value(s) directly (GaugeChart computes arc geometry).
|
|
60
|
-
*/
|
|
61
|
-
layoutMode: "plugin" | "custom" | "synthetic";
|
|
62
|
-
/**
|
|
63
|
-
* Free-form tag list for opt-in features that don't fit the
|
|
64
|
-
* boolean shape — e.g. "particles", "forecast", "anomaly", "brush",
|
|
65
|
-
* "streamgraph", "minimap". Used by docs feature tables and
|
|
66
|
-
* potential capability-driven AI suggestions.
|
|
67
|
-
*/
|
|
68
|
-
specialFeatures: string[];
|
|
69
|
-
}
|
|
70
|
-
export interface ChartPropSpec {
|
|
71
|
-
/** Allowed runtime types. May be a single value or a union. */
|
|
72
|
-
type: PropType | PropType[];
|
|
73
|
-
/** Allowed enum values for string-typed props. */
|
|
74
|
-
enum?: readonly string[];
|
|
75
|
-
/** Default value surfaced in schema.json (and shown in MCP getSchema). */
|
|
76
|
-
default?: unknown;
|
|
77
|
-
/** Schema-side description; surfaces in LLM tool definitions. */
|
|
78
|
-
description?: string;
|
|
79
|
-
/**
|
|
80
|
-
* When true, the prop is included in validationMap but omitted from
|
|
81
|
-
* schema.json. Use for handler/callback props (`onClick`, `tooltip`)
|
|
82
|
-
* and pass-through escape hatches (`frameProps`) that LLMs shouldn't
|
|
83
|
-
* be asked to populate.
|
|
84
|
-
*/
|
|
85
|
-
omitFromSchema?: boolean;
|
|
86
|
-
}
|
|
87
|
-
export interface ChartSpec {
|
|
88
|
-
/** Component name, must match the React export. */
|
|
89
|
-
name: string;
|
|
90
|
-
category: ChartCategory;
|
|
91
|
-
/** Human-readable description for schema.tools[].function.description. */
|
|
92
|
-
description: string;
|
|
93
|
-
/** Statically-required props. Push-mode optionality lives in behaviorContracts. */
|
|
94
|
-
required: string[];
|
|
95
|
-
/** Drives validation dispatch (validateArrayData / validateNetworkData / …). */
|
|
96
|
-
dataShape: DataShape;
|
|
97
|
-
/** Accessor props validated against the data shape at runtime. */
|
|
98
|
-
dataAccessors: string[];
|
|
99
|
-
/**
|
|
100
|
-
* Shared prop bags this chart composes. Bag props are merged in left-to-right
|
|
101
|
-
* order; chart-specific `ownProps` win on key collision.
|
|
102
|
-
*/
|
|
103
|
-
propBags: ReadonlyArray<keyof typeof PROP_BAGS>;
|
|
104
|
-
/** Chart-specific prop spec, overlaid on top of the composed bags. */
|
|
105
|
-
ownProps: Record<string, ChartPropSpec>;
|
|
106
|
-
/**
|
|
107
|
-
* Capability matrix — declarative facts about runtime behavior.
|
|
108
|
-
* Drives docs feature tables, capability-aware AI/MCP tools, and
|
|
109
|
-
* the `check:capabilities` drift gate (which verifies, e.g., that
|
|
110
|
-
* a chart claiming `supportsSSR: true` has a matching entry in
|
|
111
|
-
* `serverChartConfigs.ts`).
|
|
112
|
-
*/
|
|
113
|
-
capabilities: ChartCapabilities;
|
|
114
|
-
}
|
|
115
|
-
export declare const PROP_BAGS: {
|
|
116
|
-
readonly common: Record<string, ChartPropSpec>;
|
|
117
|
-
readonly xyAxis: Record<string, ChartPropSpec>;
|
|
118
|
-
readonly ordinalAxis: Record<string, ChartPropSpec>;
|
|
119
|
-
readonly realtime: Record<string, ChartPropSpec>;
|
|
120
|
-
};
|
|
121
|
-
export declare const ORIENTATION_ENUM: readonly ["vertical", "horizontal"];
|
|
122
|
-
export declare const HORIZONTAL_VERTICAL_ENUM: readonly ["horizontal", "vertical"];
|
|
123
|
-
export declare const LEGEND_POSITION_ENUM: readonly ["right", "left", "top", "bottom"];
|
|
124
|
-
export declare const CURVE_ENUM: readonly ["linear", "monotoneX", "monotoneY", "step", "stepAfter", "stepBefore", "basis", "cardinal", "catmullRom"];
|
|
125
|
-
export declare const CHART_MODE_ENUM: readonly ["primary", "context", "sparkline"];
|
|
9
|
+
export type { PropType, DataShape, ChartCategory, ChartCapabilities, ChartPropSpec, ChartSpec, } from "./chartSpecCore";
|
|
10
|
+
export { PROP_BAGS, ORIENTATION_ENUM, HORIZONTAL_VERTICAL_ENUM, LEGEND_POSITION_ENUM, CURVE_ENUM, CHART_MODE_ENUM, composeProps, } from "./chartSpecCore";
|
|
11
|
+
import type { ChartSpec } from "./chartSpecCore";
|
|
126
12
|
export declare const CHART_SPECS: Record<string, ChartSpec>;
|
|
127
|
-
/**
|
|
128
|
-
* Compose a chart's full prop set (bags + ownProps) in deterministic order.
|
|
129
|
-
* ownProps wins on key collision so a chart can override a shared default.
|
|
130
|
-
*/
|
|
131
|
-
export declare function composeProps(spec: ChartSpec): Record<string, ChartPropSpec>;
|
|
@@ -53,6 +53,8 @@ export declare const interpolateInferno: (t: number) => string;
|
|
|
53
53
|
export declare const interpolateMagma: (t: number) => string;
|
|
54
54
|
export declare const interpolateCividis: (t: number) => string;
|
|
55
55
|
export declare const interpolateTurbo: (t: number) => string;
|
|
56
|
+
export declare const SEQUENTIAL_INTERPOLATORS: Record<string, (t: number) => string>;
|
|
57
|
+
export declare function getSequentialInterpolator(scheme: string | undefined): (t: number) => string;
|
|
56
58
|
export declare const interpolateRdBu: (t: number) => string;
|
|
57
59
|
export declare const interpolatePiYG: (t: number) => string;
|
|
58
60
|
export declare const interpolatePRGn: (t: number) => string;
|
|
@@ -2,18 +2,7 @@ import type { Datum } from "./datumTypes";
|
|
|
2
2
|
/**
|
|
3
3
|
* Predefined color schemes
|
|
4
4
|
*/
|
|
5
|
-
export declare const COLOR_SCHEMES:
|
|
6
|
-
category10: readonly string[];
|
|
7
|
-
tableau10: readonly string[];
|
|
8
|
-
set3: readonly string[];
|
|
9
|
-
blues: (t: number) => string;
|
|
10
|
-
reds: (t: number) => string;
|
|
11
|
-
greens: (t: number) => string;
|
|
12
|
-
oranges: (t: number) => string;
|
|
13
|
-
purples: (t: number) => string;
|
|
14
|
-
viridis: (t: number) => string;
|
|
15
|
-
plasma: (t: number) => string;
|
|
16
|
-
};
|
|
5
|
+
export declare const COLOR_SCHEMES: Record<string, readonly string[] | ((t: number) => string)>;
|
|
17
6
|
/**
|
|
18
7
|
* Default colors for charts
|
|
19
8
|
*/
|
|
@@ -46,6 +35,21 @@ export declare const DEPTH_PALETTE_COLORS: string[];
|
|
|
46
35
|
* ```
|
|
47
36
|
*/
|
|
48
37
|
export declare function getColor(dataPoint: Datum, colorBy: string | ((d: Datum) => string), colorScale?: (v: string) => string): string;
|
|
38
|
+
/**
|
|
39
|
+
* Look up a color for `key` in an explicit `{ category: color }` map.
|
|
40
|
+
*
|
|
41
|
+
* Guards against two hazards of a naive `key in map` lookup on a
|
|
42
|
+
* user-supplied object: inherited prototype keys (e.g. `"toString"`,
|
|
43
|
+
* `"constructor"`) must NOT register as mapped categories, and a mapped
|
|
44
|
+
* value that isn't a usable color string (a function, number, `""`) must
|
|
45
|
+
* not leak into a fill/stroke. Returns `undefined` when the key is unmapped
|
|
46
|
+
* or its value isn't a non-empty string, so callers apply their own default.
|
|
47
|
+
*
|
|
48
|
+
* Single source of truth for object-map `colorScheme` resolution across
|
|
49
|
+
* `createColorScale`, `resolveDefaultFill`, `buildResolveColor`,
|
|
50
|
+
* `buildColorScale`, and `CategoryColorProvider`.
|
|
51
|
+
*/
|
|
52
|
+
export declare function resolveExplicitColor(map: Record<string, unknown>, key: string | undefined | null): string | undefined;
|
|
49
53
|
/**
|
|
50
54
|
* Creates a color scale function from data
|
|
51
55
|
*
|
|
@@ -60,7 +64,7 @@ export declare function getColor(dataPoint: Datum, colorBy: string | ((d: Datum)
|
|
|
60
64
|
* const color = colorScale('A') // Returns color for category 'A'
|
|
61
65
|
* ```
|
|
62
66
|
*/
|
|
63
|
-
export declare function createColorScale(data: Array<Datum>, colorBy: string, scheme?: string | string[]): (v: string) => string;
|
|
67
|
+
export declare function createColorScale(data: Array<Datum>, colorBy: string, scheme?: string | string[] | Record<string, string>): (v: string) => string;
|
|
64
68
|
/**
|
|
65
69
|
* Generates a size function based on sizeBy configuration.
|
|
66
70
|
*
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Datum } from "./datumTypes";
|
|
2
|
+
import type { Diagnosis } from "./diagnoseTypes";
|
|
3
|
+
export declare function checkAnnotationConnectors(_component: string, props: Datum, out: Diagnosis[]): void;
|
|
4
|
+
export declare function checkAnnotationDensity(_component: string, props: Datum, out: Diagnosis[]): void;
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
import type { Datum } from "./datumTypes";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
/** WCAG contrast ratio between two hex colors. Exported for reuse by the
|
|
13
|
-
* accessibility audit (auditAccessibility.ts) — single source of truth for the
|
|
14
|
-
* contrast math. Returns null if either color isn't a parseable hex. */
|
|
15
|
-
export declare function contrastRatio(hex1: string, hex2: string): number | null;
|
|
2
|
+
import type { DiagnosisResult } from "./diagnoseTypes";
|
|
3
|
+
export { contrastRatio } from "./colorContrast";
|
|
4
|
+
export type { Diagnosis, DiagnosisResult } from "./diagnoseTypes";
|
|
5
|
+
/**
|
|
6
|
+
* Run anti-pattern diagnostics on a Semiotic chart configuration.
|
|
7
|
+
*
|
|
8
|
+
* Returns actionable diagnoses with severity, code, message, and fix instruction.
|
|
9
|
+
* Runs validateProps internally — validation errors are included as diagnoses.
|
|
10
|
+
*/
|
|
16
11
|
export declare function diagnoseConfig(componentName: string, props: Datum): DiagnosisResult;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { Datum } from "./datumTypes";
|
|
2
|
+
import type { Diagnosis } from "./diagnoseTypes";
|
|
3
|
+
export declare function checkInvertedAxis(_component: string, props: Datum, out: Diagnosis[]): void;
|
|
4
|
+
export declare function checkDualAxisUnlabeled(component: string, props: Datum, out: Diagnosis[]): void;
|
|
5
|
+
export declare function checkCherryPickedWindow(component: string, props: Datum, out: Diagnosis[]): void;
|
|
6
|
+
export declare function checkPartToWholeNegative(component: string, props: Datum, out: Diagnosis[]): void;
|
|
7
|
+
export declare function checkNonPassingCurve(component: string, props: Datum, out: Diagnosis[]): void;
|
|
8
|
+
export declare function checkExtremeAspectRatio(component: string, props: Datum, out: Diagnosis[]): void;
|
|
9
|
+
export declare function checkPieTooManySlices(component: string, props: Datum, out: Diagnosis[]): void;
|
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
import { createLegend } from "./legendUtils";
|
|
2
2
|
import type { SelectionHookResult } from "./selectionUtils";
|
|
3
3
|
import type { OnObservationCallback } from "../../store/ObservationStore";
|
|
4
|
-
import type { Accessor, SelectionConfig, LinkedHoverProp, ChartMode, HoverHighlightMode } from "./types";
|
|
4
|
+
import type { Accessor, SelectionConfig, LinkedHoverProp, ChartMode, HoverHighlightMode, MobileInteractionProp, ResolvedMobileInteractionConfig } from "./types";
|
|
5
5
|
import type { MarginType, PartialMargin } from "../../types/marginType";
|
|
6
6
|
import type { TransitionConfig } from "../../stream/types";
|
|
7
7
|
import type { Datum } from "./datumTypes";
|
|
8
|
+
import type { MobileVisualizationContract } from "./auditMobileVisualization";
|
|
9
|
+
import type { ResponsiveRule } from "./responsiveRules";
|
|
8
10
|
/**
|
|
9
11
|
* Default fill color used when no colorBy is specified
|
|
10
12
|
*/
|
|
11
13
|
export declare const DEFAULT_COLOR = "#007bff";
|
|
14
|
+
export declare const MOBILE_INTERACTION_TARGET_SIZE = 44;
|
|
15
|
+
export declare const MOBILE_INTERACTION_MIN_HIT_RADIUS = 24;
|
|
16
|
+
export declare const MOBILE_INTERACTION_DEFAULTS: ResolvedMobileInteractionConfig;
|
|
17
|
+
export declare const DISABLED_MOBILE_INTERACTION: ResolvedMobileInteractionConfig;
|
|
18
|
+
export declare function resolveMobileInteraction(input: MobileInteractionProp | undefined, context?: {
|
|
19
|
+
mode?: ChartMode;
|
|
20
|
+
width?: number;
|
|
21
|
+
mobileSemantics?: MobileVisualizationContract;
|
|
22
|
+
}): ResolvedMobileInteractionConfig;
|
|
12
23
|
/**
|
|
13
24
|
* Returns the theme's categorical palette, or undefined if no ThemeProvider or
|
|
14
25
|
* the palette is empty. Safe to call outside a ThemeProvider (returns undefined).
|
|
@@ -30,7 +41,7 @@ export declare function useThemeDiverging(): string | undefined;
|
|
|
30
41
|
* Priority: color prop > theme categorical > colorScheme > DEFAULT_COLOR.
|
|
31
42
|
* When a palette is available, cycles through colors by category name.
|
|
32
43
|
*/
|
|
33
|
-
export declare function resolveDefaultFill(color: string | undefined, themeCategorical: string[] | undefined, colorScheme: string | string[] | undefined, category: string | undefined, categoryIndexMap: Map<string, number>): string;
|
|
44
|
+
export declare function resolveDefaultFill(color: string | undefined, themeCategorical: string[] | undefined, colorScheme: string | string[] | Record<string, string> | undefined, category: string | undefined, categoryIndexMap: Map<string, number>): string;
|
|
34
45
|
/**
|
|
35
46
|
* Resolve an accessor (string key or function) into a function.
|
|
36
47
|
* Used across chart components to normalize `valueAccessor`, `categoryAccessor`, etc.
|
|
@@ -41,7 +52,7 @@ export declare function resolveAccessor<T = any>(accessor: string | ((d: Datum,
|
|
|
41
52
|
* Returns undefined when colorBy is absent or data is empty (push API mode).
|
|
42
53
|
* Supports both string and function accessors for colorBy.
|
|
43
54
|
*/
|
|
44
|
-
export declare function useColorScale(data: Array<Datum>, colorBy: string | ((d: any, i?: number) => any) | undefined, colorScheme?: string | string[]): ((v: string) => string) | undefined;
|
|
55
|
+
export declare function useColorScale(data: Array<Datum>, colorBy: string | ((d: any, i?: number) => any) | undefined, colorScheme?: string | string[] | Record<string, string>): ((v: string) => string) | undefined;
|
|
45
56
|
/**
|
|
46
57
|
* Hook to sort data by a value accessor.
|
|
47
58
|
* Used by BarChart and DotPlot.
|
|
@@ -64,7 +75,7 @@ export declare function useSortedData(data: Array<Datum>, sort: boolean | "asc"
|
|
|
64
75
|
* @param unwrapData - Deprecated / no-op. Hover data is always unwrapped
|
|
65
76
|
* (stream frames wrap the raw datum in { data, time, value, x, y }).
|
|
66
77
|
*/
|
|
67
|
-
export declare function useChartSelection({ selection, linkedHover, fallbackFields, unwrapData: _unwrapData, onObservation, chartType, chartId, onClick, hoverHighlight, colorByField, }: {
|
|
78
|
+
export declare function useChartSelection({ selection, linkedHover, fallbackFields, unwrapData: _unwrapData, onObservation, chartType, chartId, onClick, hoverHighlight, colorByField, mobileInteraction, }: {
|
|
68
79
|
selection?: SelectionConfig;
|
|
69
80
|
linkedHover?: LinkedHoverProp;
|
|
70
81
|
fallbackFields?: string[];
|
|
@@ -78,6 +89,7 @@ export declare function useChartSelection({ selection, linkedHover, fallbackFiel
|
|
|
78
89
|
}) => void;
|
|
79
90
|
hoverHighlight?: HoverHighlightMode;
|
|
80
91
|
colorByField?: string;
|
|
92
|
+
mobileInteraction?: ResolvedMobileInteractionConfig;
|
|
81
93
|
}): {
|
|
82
94
|
activeSelectionHook: SelectionHookResult | null;
|
|
83
95
|
hoverSelectionHook: SelectionHookResult | null;
|
|
@@ -161,8 +173,15 @@ interface ChartModeInput {
|
|
|
161
173
|
valueLabel?: string;
|
|
162
174
|
/** When truthy, enableHover is forced true regardless of mode (LinkedCharts needs hover) */
|
|
163
175
|
linkedHover?: any;
|
|
176
|
+
/** Optional mobile interaction policy surfaced through useChartMode for custom wrappers. */
|
|
177
|
+
mobileInteraction?: MobileInteractionProp;
|
|
178
|
+
/** Optional mobile semantic contract surfaced through useChartMode for custom wrappers. */
|
|
179
|
+
mobileSemantics?: MobileVisualizationContract;
|
|
180
|
+
/** Semantic responsive transformations resolved before mode defaults. */
|
|
181
|
+
responsiveRules?: ResponsiveRule[];
|
|
164
182
|
}
|
|
165
|
-
|
|
183
|
+
/** Result of {@link useChartMode} — exported so declaration emit can name it. */
|
|
184
|
+
export interface ChartModeResult {
|
|
166
185
|
width: number;
|
|
167
186
|
height: number;
|
|
168
187
|
showAxes: boolean;
|
|
@@ -186,6 +205,10 @@ interface ChartModeResult {
|
|
|
186
205
|
};
|
|
187
206
|
/** True when mode is context or sparkline — the "hide interactive chrome" union. */
|
|
188
207
|
compactMode: boolean;
|
|
208
|
+
/** Resolved touch-first behavior for mobile-capable wrappers. */
|
|
209
|
+
mobileInteraction: ResolvedMobileInteractionConfig;
|
|
210
|
+
/** Mobile semantic contract after matching responsive rules are applied. */
|
|
211
|
+
mobileSemantics: MobileVisualizationContract | undefined;
|
|
189
212
|
}
|
|
190
213
|
/**
|
|
191
214
|
* Resolve chart display mode into concrete prop defaults.
|