semiotic 3.7.5 → 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 +54 -12
- package/README.md +121 -27
- 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 +2733 -536
- package/ai/surface-manifest.json +200 -0
- package/ai/system-prompt.md +18 -3
- 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/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 +26 -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 +102 -0
- package/dist/components/ai/describeChart.d.ts +7 -0
- package/dist/components/ai/describeRecipeChart.d.ts +16 -0
- package/dist/components/ai/generativeChart.d.ts +28 -3
- 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 +8 -2
- 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 +1 -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 +9 -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/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/colorUtils.d.ts +16 -1
- 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/motionEncoding.d.ts +145 -0
- package/dist/components/charts/shared/responsiveRules.d.ts +56 -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/types.d.ts +49 -1
- package/dist/components/charts/shared/useChartSetup.d.ts +9 -2
- package/dist/components/charts/shared/useCustomChartSetup.d.ts +14 -5
- 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/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 +1 -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/fromFlintChart.d.ts +74 -0
- package/dist/components/data/fromVegaLite.d.ts +27 -0
- package/dist/components/data/portability/index.d.ts +6 -3
- package/dist/components/data/portability/result.d.ts +52 -0
- package/dist/components/data/portability/spec.d.ts +31 -0
- package/dist/components/data/portability/vegaLite.d.ts +24 -6
- package/dist/components/export/chartConfig.d.ts +11 -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/{gofishBoba.d.ts → boba.d.ts} +2 -2
- 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 +178 -132
- package/dist/components/recipes/gofishIRExamples.d.ts +30 -81
- 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/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/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 +91 -0
- package/dist/components/recipes/recipeGlyph.d.ts +42 -0
- package/dist/components/recipes/recipeLegend.d.ts +53 -1
- package/dist/components/recipes/recipeUtils.d.ts +52 -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 +50 -8
- package/dist/components/semiotic-controls.d.ts +18 -0
- package/dist/components/semiotic-experimental.d.ts +38 -9
- package/dist/components/semiotic-geo.d.ts +11 -0
- package/dist/components/semiotic-network.d.ts +11 -0
- package/dist/components/semiotic-ordinal.d.ts +8 -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 -30
- 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 -43
- 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 -76
- 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 +8 -0
- package/dist/components/semiotic.d.ts +35 -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 +3 -2
- 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/NetworkPipelineStore.d.ts +31 -26
- package/dist/components/stream/NetworkSVGOverlay.d.ts +4 -1
- package/dist/components/stream/OrdinalPipelineStore.d.ts +46 -2
- package/dist/components/stream/PipelineStore.d.ts +81 -170
- package/dist/components/stream/SceneGraph.d.ts +9 -1
- 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/customLayoutFailure.d.ts +33 -0
- package/dist/components/stream/customLayoutPalette.d.ts +19 -9
- 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/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 +76 -5
- package/dist/components/stream/ordinalCanvasRenderers.d.ts +7 -0
- 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/ordinalSpatialIndex.d.ts +9 -0
- package/dist/components/stream/ordinalTypes.d.ts +40 -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/resolveCSSColor.d.ts +6 -0
- package/dist/components/stream/sceneRevisionDiagnostics.d.ts +18 -0
- package/dist/components/stream/streamStoreSync.d.ts +37 -0
- package/dist/components/stream/types.d.ts +135 -7
- 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/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/types.d.ts +4 -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 +50 -8
- 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.min.js +1 -1
- package/dist/semiotic-data.module.min.js +1 -1
- package/dist/semiotic-experimental.d.ts +38 -9
- package/dist/semiotic-experimental.min.js +1 -1
- package/dist/semiotic-experimental.module.min.js +1 -1
- package/dist/semiotic-geo.d.ts +11 -0
- package/dist/semiotic-network.d.ts +11 -0
- package/dist/semiotic-ordinal.d.ts +8 -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 -30
- 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 -43
- 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 -76
- 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 +8 -0
- package/dist/semiotic.d.ts +35 -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 +239 -87
- 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/components/recipes/gofish.d.ts +0 -207
- package/dist/components/recipes/gofishInterpreter.d.ts +0 -52
- package/dist/components/recipes/gofishLambdas.d.ts +0 -145
- package/dist/semiotic-ai-semiotic-ai-u954ylUn.js +0 -2
- package/dist/semiotic-ai-statisticalOverlays-CU7jW05Q.js +0 -1
- package/dist/semiotic-semiotic-BmrYbi99.js +0 -2
- package/dist/semiotic-statisticalOverlays-IjZw8Lsu.js +0 -1
- package/dist/xy-semiotic-xy-Dufu3D0-.js +0 -2
- package/dist/xy-statisticalOverlays-3Ni9bRph.js +0 -1
|
@@ -15,7 +15,7 @@ export interface GroupedBarChartProps<TDatum extends Datum = Datum> extends Base
|
|
|
15
15
|
valueLabel?: string;
|
|
16
16
|
valueFormat?: (d: number | string) => string;
|
|
17
17
|
colorBy?: ChartAccessor<TDatum, string>;
|
|
18
|
-
colorScheme?: string | string[]
|
|
18
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
19
19
|
/** Category sort order. Default: `false` (data insertion order). `"asc"`/`"desc"` sorts by total grouped value. `"auto"` preserves insertion order while streaming and falls through to value-desc on static data. Custom comparators receive category keys. */
|
|
20
20
|
sort?: boolean | "asc" | "desc" | "auto" | ((a: string, b: string) => number);
|
|
21
21
|
barPadding?: number;
|
|
@@ -51,7 +51,7 @@ export interface HistogramProps<TDatum extends Datum = Datum> extends BaseChartP
|
|
|
51
51
|
valueLabel?: string;
|
|
52
52
|
valueFormat?: (d: number | string) => string;
|
|
53
53
|
colorBy?: ChartAccessor<TDatum, string>;
|
|
54
|
-
colorScheme?: string | string[]
|
|
54
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
55
55
|
categoryPadding?: number;
|
|
56
56
|
enableHover?: boolean;
|
|
57
57
|
showGrid?: boolean;
|
|
@@ -41,7 +41,7 @@ export interface PieChartProps<TDatum extends Datum = Datum> extends BaseChartPr
|
|
|
41
41
|
* `"set2"`, etc.) or an explicit array of colors. Falls back to the
|
|
42
42
|
* theme's categorical palette when omitted.
|
|
43
43
|
*/
|
|
44
|
-
colorScheme?: string | string[]
|
|
44
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
45
45
|
/**
|
|
46
46
|
* Rotation in **degrees** applied to the first wedge. `0` starts at 12
|
|
47
47
|
* o'clock and proceeds clockwise; `90` starts at 3 o'clock, `180` at 6
|
|
@@ -17,7 +17,7 @@ export interface RidgelinePlotProps<TDatum extends Datum = Datum> extends BaseCh
|
|
|
17
17
|
valueLabel?: string;
|
|
18
18
|
valueFormat?: (d: number | string) => string;
|
|
19
19
|
colorBy?: ChartAccessor<TDatum, string>;
|
|
20
|
-
colorScheme?: string | string[]
|
|
20
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
21
21
|
categoryPadding?: number;
|
|
22
22
|
enableHover?: boolean;
|
|
23
23
|
showGrid?: boolean;
|
|
@@ -15,7 +15,7 @@ export interface StackedBarChartProps<TDatum extends Datum = Datum> extends Base
|
|
|
15
15
|
valueLabel?: string;
|
|
16
16
|
valueFormat?: (d: number | string) => string;
|
|
17
17
|
colorBy?: ChartAccessor<TDatum, string>;
|
|
18
|
-
colorScheme?: string | string[]
|
|
18
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
19
19
|
normalize?: boolean;
|
|
20
20
|
/** Category sort order. Default: `false` (data insertion order). `"asc"`/`"desc"` sorts by total stacked value. `"auto"` preserves insertion order while streaming and falls through to value-desc on static data. Custom comparators receive category keys. */
|
|
21
21
|
sort?: boolean | "asc" | "desc" | "auto" | ((a: string, b: string) => number);
|
|
@@ -15,7 +15,7 @@ export interface SwarmPlotProps<TDatum extends Datum = Datum> extends BaseChartP
|
|
|
15
15
|
valueLabel?: string;
|
|
16
16
|
valueFormat?: (d: number | string) => string;
|
|
17
17
|
colorBy?: ChartAccessor<TDatum, string>;
|
|
18
|
-
colorScheme?: string | string[]
|
|
18
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
19
19
|
sizeBy?: ChartAccessor<TDatum, number>;
|
|
20
20
|
sizeRange?: [number, number];
|
|
21
21
|
/** Field name or function → glyph **shape**: each point renders as a d3-shape
|
|
@@ -25,7 +25,7 @@ export interface SwimlaneChartProps<TDatum extends Datum = Datum> extends BaseCh
|
|
|
25
25
|
/** Color accessor — defaults to subcategoryAccessor */
|
|
26
26
|
colorBy?: ChartAccessor<TDatum, string>;
|
|
27
27
|
/** Color scheme for subcategories */
|
|
28
|
-
colorScheme?: string | string[]
|
|
28
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
29
29
|
/** Padding between lanes in pixels */
|
|
30
30
|
barPadding?: number;
|
|
31
31
|
/** Enable hover annotations */
|
|
@@ -17,7 +17,7 @@ export interface ViolinPlotProps<TDatum extends Datum = Datum> extends BaseChart
|
|
|
17
17
|
valueLabel?: string;
|
|
18
18
|
valueFormat?: (d: number | string) => string;
|
|
19
19
|
colorBy?: ChartAccessor<TDatum, string>;
|
|
20
|
-
colorScheme?: string | string[]
|
|
20
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
21
21
|
categoryPadding?: number;
|
|
22
22
|
enableHover?: boolean;
|
|
23
23
|
showGrid?: boolean;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Datum } from "../shared/datumTypes";
|
|
3
|
+
import type { ChainReactionChartHandle, ChainReactionChartProps } from "./chainReactionTypes";
|
|
4
|
+
export type * from "./chainReactionTypes";
|
|
5
|
+
export declare const ChainReactionChart: {
|
|
6
|
+
<TDatum extends Datum = Datum>(props: ChainReactionChartProps<TDatum> & React.RefAttributes<ChainReactionChartHandle>): React.ReactElement | null;
|
|
7
|
+
displayName?: string;
|
|
8
|
+
};
|
|
9
|
+
export default ChainReactionChart;
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Datum } from "../shared/datumTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type PhysicsFrameHandle } from "./physicsHocHandle";
|
|
5
|
+
import { type PhysicsHocFrameProps, type PhysicsSharedChartProps, type TooltipProp } from "./physicsHocUtils";
|
|
6
|
+
export interface CollisionSwarmChartProps<TDatum extends Datum = Datum> extends Omit<BaseChartProps, "margin">, PhysicsSharedChartProps {
|
|
7
|
+
data?: TDatum[];
|
|
8
|
+
size?: [number, number];
|
|
9
|
+
xAccessor?: ChartAccessor<TDatum, number>;
|
|
10
|
+
groupAccessor?: ChartAccessor<TDatum, string>;
|
|
11
|
+
radiusAccessor?: ChartAccessor<TDatum, number>;
|
|
12
|
+
pointRadius?: number;
|
|
13
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
14
|
+
seed?: number;
|
|
15
|
+
xExtent?: [number, number];
|
|
16
|
+
collisionIterations?: number;
|
|
17
|
+
settle?: boolean;
|
|
18
|
+
showProjection?: boolean;
|
|
19
|
+
tooltip?: TooltipProp;
|
|
20
|
+
paused?: boolean;
|
|
21
|
+
frameProps?: PhysicsHocFrameProps<"config">;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Physics-backed collision swarm chart that preserves a quantitative x position while separating overlapping bodies.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```tsx
|
|
28
|
+
* <CollisionSwarmChart
|
|
29
|
+
* data={[{ id: "a", x: 12, group: "East" }, { id: "b", x: 14, group: "East" }]}
|
|
30
|
+
* xAccessor="x"
|
|
31
|
+
* groupAccessor="group"
|
|
32
|
+
* />
|
|
33
|
+
* ```
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```tsx
|
|
37
|
+
* <CollisionSwarmChart
|
|
38
|
+
* data={samples}
|
|
39
|
+
* xAccessor={(d) => d.score}
|
|
40
|
+
* radiusAccessor="weight"
|
|
41
|
+
* collisionIterations={180}
|
|
42
|
+
* settle
|
|
43
|
+
* />
|
|
44
|
+
* ```
|
|
45
|
+
*/
|
|
46
|
+
export declare const CollisionSwarmChart: React.ForwardRefExoticComponent<CollisionSwarmChartProps<Datum> & React.RefAttributes<PhysicsFrameHandle>>;
|
|
47
|
+
export default CollisionSwarmChart;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Datum } from "../shared/datumTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type EventDropWindowOptions } from "./physicsChartUtils";
|
|
5
|
+
import { type PhysicsFrameHandle } from "./physicsHocHandle";
|
|
6
|
+
import { type PhysicsHocFrameProps, type PhysicsSharedChartProps, type TooltipProp } from "./physicsHocUtils";
|
|
7
|
+
export interface EventDropChartProps<TDatum extends Datum = Datum> extends Omit<BaseChartProps, "margin">, PhysicsSharedChartProps {
|
|
8
|
+
data?: TDatum[];
|
|
9
|
+
size?: [number, number];
|
|
10
|
+
timeAccessor?: ChartAccessor<TDatum, number>;
|
|
11
|
+
arrivalAccessor?: ChartAccessor<TDatum, number>;
|
|
12
|
+
windows?: EventDropWindowOptions;
|
|
13
|
+
watermark?: {
|
|
14
|
+
delay?: number;
|
|
15
|
+
value?: number;
|
|
16
|
+
} | ((latestEventTime: number) => number);
|
|
17
|
+
ballRadius?: number;
|
|
18
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
19
|
+
seed?: number;
|
|
20
|
+
timeExtent?: [number, number];
|
|
21
|
+
timeScale?: number;
|
|
22
|
+
showProjection?: boolean;
|
|
23
|
+
tooltip?: TooltipProp;
|
|
24
|
+
paused?: boolean;
|
|
25
|
+
frameProps?: PhysicsHocFrameProps<"config">;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Physics-backed event drop chart for replaying arrivals against event-time windows and watermarks.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```tsx
|
|
32
|
+
* <EventDropChart
|
|
33
|
+
* data={[{ id: "a", time: 4, arrivalTime: 8 }, { id: "b", time: 18, arrivalTime: 12 }]}
|
|
34
|
+
* timeAccessor="time"
|
|
35
|
+
* arrivalAccessor="arrivalTime"
|
|
36
|
+
* windows={{ size: 10 }}
|
|
37
|
+
* watermark={{ delay: 5 }}
|
|
38
|
+
* />
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```tsx
|
|
43
|
+
* <EventDropChart
|
|
44
|
+
* data={events}
|
|
45
|
+
* windows={{ size: 60_000 }}
|
|
46
|
+
* watermark={{ value: Date.now() - 120_000 }}
|
|
47
|
+
* timeScale={4}
|
|
48
|
+
* timeExtent={[start, end]}
|
|
49
|
+
* />
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export declare const EventDropChart: React.ForwardRefExoticComponent<EventDropChartProps<Datum> & React.RefAttributes<PhysicsFrameHandle>>;
|
|
53
|
+
export default EventDropChart;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Datum } from "../shared/datumTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type PhysicsFrameHandle } from "./physicsHocHandle";
|
|
5
|
+
import { type PhysicsHocFrameProps, type PhysicsSharedChartProps, type PhysicsSimulationMode, type TooltipProp } from "./physicsHocUtils";
|
|
6
|
+
import type { ChartMode } from "../shared/types";
|
|
7
|
+
export interface GaltonBoardReferenceLine {
|
|
8
|
+
value: number;
|
|
9
|
+
label?: React.ReactNode;
|
|
10
|
+
color?: string;
|
|
11
|
+
className?: string;
|
|
12
|
+
strokeDasharray?: string;
|
|
13
|
+
strokeWidth?: number;
|
|
14
|
+
labelPosition?: "top" | "bottom";
|
|
15
|
+
}
|
|
16
|
+
export interface GaltonBoardChartProps<TDatum extends Datum = Datum> extends Omit<BaseChartProps, "margin" | "mode">, PhysicsSharedChartProps {
|
|
17
|
+
data?: TDatum[];
|
|
18
|
+
size?: [number, number];
|
|
19
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
20
|
+
valueExtent?: [number, number];
|
|
21
|
+
bins?: number;
|
|
22
|
+
/**
|
|
23
|
+
* Chart display mode (`primary`/`context`/`sparkline`/`mobile`) **or**
|
|
24
|
+
* legacy simulation mode (`sample`/`mechanical`). Prefer `simulationMode`
|
|
25
|
+
* for sample vs mechanical; use `mode` for ChartContainer / ChartMode.
|
|
26
|
+
*/
|
|
27
|
+
mode?: ChartMode | PhysicsSimulationMode;
|
|
28
|
+
/** Sample data rows vs seeded mechanical demo (no data required). */
|
|
29
|
+
simulationMode?: PhysicsSimulationMode;
|
|
30
|
+
pegRows?: number;
|
|
31
|
+
mechanicalCount?: number;
|
|
32
|
+
branchProbability?: number;
|
|
33
|
+
ballRadius?: number;
|
|
34
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
35
|
+
referenceLines?: GaltonBoardReferenceLine | GaltonBoardReferenceLine[];
|
|
36
|
+
seed?: number;
|
|
37
|
+
showProjection?: boolean;
|
|
38
|
+
tooltip?: TooltipProp;
|
|
39
|
+
paused?: boolean;
|
|
40
|
+
frameProps?: PhysicsHocFrameProps<"config">;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Physics-backed Galton board chart that drops values through seeded pegs into a settled distribution.
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```tsx
|
|
47
|
+
* <GaltonBoardChart
|
|
48
|
+
* data={[{ id: "a", value: 2 }, { id: "b", value: 7 }]}
|
|
49
|
+
* valueAccessor="value"
|
|
50
|
+
* bins={12}
|
|
51
|
+
* size={[520, 320]}
|
|
52
|
+
* />
|
|
53
|
+
* ```
|
|
54
|
+
*
|
|
55
|
+
* @example
|
|
56
|
+
* ```tsx
|
|
57
|
+
* <GaltonBoardChart
|
|
58
|
+
* mode="mechanical"
|
|
59
|
+
* mechanicalCount={80}
|
|
60
|
+
* branchProbability={0.62}
|
|
61
|
+
* seed={11}
|
|
62
|
+
* />
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare const GaltonBoardChart: React.ForwardRefExoticComponent<GaltonBoardChartProps<Datum> & React.RefAttributes<PhysicsFrameHandle>>;
|
|
66
|
+
export default GaltonBoardChart;
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { PhysicsFrameHandle } from "./physicsHocHandle";
|
|
3
|
+
import type { Datum } from "../shared/datumTypes";
|
|
4
|
+
import type { GauntletChartProps } from "./gauntletChartProps";
|
|
5
|
+
export { GAUNTLET_WALL, clampGauntletPoint, buildGauntletPhysics } from "./gauntletPhysics";
|
|
6
|
+
export { applyGauntletEffect, planGauntletPropertyWork, replaceGauntletNegative } from "./gauntletEffects";
|
|
7
|
+
export type { GauntletAccessors, GauntletCoreBodyFn, GauntletEffect, GauntletEvent, GauntletEventContext, GauntletEventLogItem, GauntletGate, GauntletLayout, GauntletPopSpec, GauntletProjectPlacement, GauntletProjectPlacementFn, GauntletProjectState, GauntletPropertyDefinition, GauntletPropertyForceContext, GauntletPropertyWorkPlan, GauntletPropertyWorkPlanOptions, GauntletNegativeReplacementOptions, GauntletViabilityFn } from "./gauntletPhysics";
|
|
8
|
+
export type { GauntletChartProps };
|
|
9
|
+
/**
|
|
10
|
+
* Physics-backed gauntlet: project core + property satellites through timed or
|
|
11
|
+
* capacity-gated process events.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```tsx
|
|
15
|
+
* <GauntletChart
|
|
16
|
+
* data={[{ id: "plan-a", positives: ["homes"], negatives: ["cost"] }]}
|
|
17
|
+
* positiveProperties={[{ id: "homes", label: "Homes", radius: 10 }]}
|
|
18
|
+
* negativeProperties={[{ id: "cost", label: "Cost", load: 1.2, radius: 8 }]}
|
|
19
|
+
* size={[720, 380]}
|
|
20
|
+
* />
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* Multiple attached properties routed through timed gates, with the
|
|
25
|
+
* settled viability/outcome projection strip enabled:
|
|
26
|
+
* ```tsx
|
|
27
|
+
* <GauntletChart
|
|
28
|
+
* data={[{ id: "plan-a", positives: ["homes", "jobs"], negatives: ["cost"] }]}
|
|
29
|
+
* positiveProperties={[
|
|
30
|
+
* { id: "homes", label: "Homes", radius: 10 },
|
|
31
|
+
* { id: "jobs", label: "Jobs", radius: 10 },
|
|
32
|
+
* ]}
|
|
33
|
+
* negativeProperties={[{ id: "cost", label: "Cost", load: 1.2, radius: 8 }]}
|
|
34
|
+
* gates={[
|
|
35
|
+
* { id: "review", label: "Review" },
|
|
36
|
+
* { id: "budget", label: "Budget" },
|
|
37
|
+
* ]}
|
|
38
|
+
* showProjection
|
|
39
|
+
* size={[720, 380]}
|
|
40
|
+
* />
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* Stagger negative-only compound entities on project-local clocks and share a
|
|
45
|
+
* finite service across their root bodies:
|
|
46
|
+
* ```tsx
|
|
47
|
+
* <GauntletChart
|
|
48
|
+
* data={pullRequests}
|
|
49
|
+
* startTimeAccessor="arrival"
|
|
50
|
+
* negativeAccessor="risks"
|
|
51
|
+
* negativeProperties={riskProperties}
|
|
52
|
+
* gates={[{
|
|
53
|
+
* id: "review",
|
|
54
|
+
* capacity: { unitsPerSecond: 5, unitAccessor: "reviewWork" }
|
|
55
|
+
* }]}
|
|
56
|
+
* events={reviewEvents}
|
|
57
|
+
* onCapacityChange={setCapacity}
|
|
58
|
+
* />
|
|
59
|
+
* ```
|
|
60
|
+
*/
|
|
61
|
+
export declare const GauntletChart: {
|
|
62
|
+
<TDatum extends Datum = Datum>(props: GauntletChartProps<TDatum> & React.RefAttributes<PhysicsFrameHandle>): React.ReactElement | null;
|
|
63
|
+
displayName?: string;
|
|
64
|
+
};
|
|
65
|
+
/**
|
|
66
|
+
* @deprecated Typo alias of {@link GauntletChart}. Use `GauntletChart` instead.
|
|
67
|
+
* Removed in the next major version.
|
|
68
|
+
*/
|
|
69
|
+
export declare const GuantletChart: {
|
|
70
|
+
<TDatum extends Datum = Datum>(props: GauntletChartProps<TDatum> & React.RefAttributes<PhysicsFrameHandle>): React.ReactElement | null;
|
|
71
|
+
displayName?: string;
|
|
72
|
+
};
|
|
73
|
+
export default GauntletChart;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Datum } from "../shared/datumTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type PhysicalFlowCoordinateMode, type PhysicalFlowPathConstraint, type PhysicalFlowRawPath } from "./physicsChartUtils";
|
|
5
|
+
import { type PhysicsFrameHandle } from "./physicsHocHandle";
|
|
6
|
+
import { type PhysicsHocFrameProps, type PhysicsSharedChartProps, type TooltipProp } from "./physicsHocUtils";
|
|
7
|
+
export interface PhysicalFlowChartProps<TNode extends Datum = Datum, TLink extends Datum = Datum> extends Omit<BaseChartProps, "margin">, PhysicsSharedChartProps {
|
|
8
|
+
nodes?: TNode[];
|
|
9
|
+
links?: TLink[];
|
|
10
|
+
edges?: TLink[];
|
|
11
|
+
data?: TLink[];
|
|
12
|
+
size?: [number, number];
|
|
13
|
+
nodeIdAccessor?: ChartAccessor<TNode, string>;
|
|
14
|
+
nodeXAccessor?: ChartAccessor<TNode, number>;
|
|
15
|
+
nodeYAccessor?: ChartAccessor<TNode, number>;
|
|
16
|
+
sourceAccessor?: ChartAccessor<TLink, string>;
|
|
17
|
+
targetAccessor?: ChartAccessor<TLink, string>;
|
|
18
|
+
throughputAccessor?: ChartAccessor<TLink, number>;
|
|
19
|
+
pathAccessor?: ChartAccessor<TLink, PhysicalFlowRawPath | undefined>;
|
|
20
|
+
coordinateMode?: PhysicalFlowCoordinateMode;
|
|
21
|
+
particleRate?: number;
|
|
22
|
+
maxParticles?: number;
|
|
23
|
+
particleRadius?: number;
|
|
24
|
+
flowSpeed?: number;
|
|
25
|
+
pathConstraint?: PhysicalFlowPathConstraint;
|
|
26
|
+
reducedMotion?: boolean;
|
|
27
|
+
showStaticFlow?: boolean;
|
|
28
|
+
showNodeLabels?: boolean;
|
|
29
|
+
showSensors?: boolean;
|
|
30
|
+
colorBy?: ChartAccessor<TLink, string>;
|
|
31
|
+
seed?: number;
|
|
32
|
+
tooltip?: TooltipProp;
|
|
33
|
+
paused?: boolean;
|
|
34
|
+
frameProps?: PhysicsHocFrameProps<"config">;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Physics-backed flow chart that sends packet bodies along authored routes while retaining a static throughput layer.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```tsx
|
|
41
|
+
* <PhysicalFlowChart
|
|
42
|
+
* nodes={[{ id: "in", x: 0.1, y: 0.5 }, { id: "out", x: 0.9, y: 0.5 }]}
|
|
43
|
+
* links={[{ source: "in", target: "out", value: 40 }]}
|
|
44
|
+
* coordinateMode="normalized"
|
|
45
|
+
* />
|
|
46
|
+
* ```
|
|
47
|
+
*
|
|
48
|
+
* @example
|
|
49
|
+
* ```tsx
|
|
50
|
+
* <PhysicalFlowChart
|
|
51
|
+
* nodes={ports}
|
|
52
|
+
* edges={routes}
|
|
53
|
+
* pathAccessor="path"
|
|
54
|
+
* maxParticles={120}
|
|
55
|
+
* showSensors
|
|
56
|
+
* />
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
export declare const PhysicalFlowChart: {
|
|
60
|
+
<TNode extends Datum = Datum, TLink extends Datum = Datum>(props: PhysicalFlowChartProps<TNode, TLink> & React.RefAttributes<PhysicsFrameHandle>): React.ReactElement | null;
|
|
61
|
+
displayName?: string;
|
|
62
|
+
};
|
|
63
|
+
export default PhysicalFlowChart;
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { ReactNode } from "react";
|
|
3
|
+
import { type ScaleLinear } from "d3-scale";
|
|
4
|
+
import type { ThemeSemanticColors } from "../../stream/types";
|
|
5
|
+
import { type PhysicsSemanticItem, type StreamPhysicsBodyForce, type StreamPhysicsFrameProps, type StreamPhysicsRegionEffect } from "../../stream/physics/StreamPhysicsFrame";
|
|
6
|
+
import type { PhysicsController } from "../../stream/physics/PhysicsControllers";
|
|
7
|
+
import { PhysicsPipelineStore, type PhysicsPipelineConfig, type PhysicsQueuedSpawn, type PhysicsSpawnPacingOptions } from "../../stream/physics/PhysicsPipelineStore";
|
|
8
|
+
import type { PhysicsColliderSpec, PhysicsSpringSpec } from "../../stream/physics/PhysicsKernel";
|
|
9
|
+
import type { Datum } from "../shared/datumTypes";
|
|
10
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
11
|
+
import { type PhysicsChartArea } from "./physicsChartUtils";
|
|
12
|
+
import { type PhysicsDatumSpawnResult, type PhysicsFrameHandle } from "./physicsHocHandle";
|
|
13
|
+
import { type PhysicsHocFrameProps, type PhysicsSharedChartProps, type TooltipProp } from "./physicsHocUtils";
|
|
14
|
+
export interface PhysicsCustomLayoutContext<TDatum extends Datum = Datum, TConfig extends object = Record<string, unknown>> {
|
|
15
|
+
data: TDatum[];
|
|
16
|
+
scales: {
|
|
17
|
+
x: ScaleLinear<number, number>;
|
|
18
|
+
y: ScaleLinear<number, number>;
|
|
19
|
+
};
|
|
20
|
+
dimensions: PhysicsChartArea;
|
|
21
|
+
theme: {
|
|
22
|
+
semantic: ThemeSemanticColors;
|
|
23
|
+
categorical: string[];
|
|
24
|
+
};
|
|
25
|
+
resolveColor: (key: string, datum?: TDatum) => string;
|
|
26
|
+
config: TConfig;
|
|
27
|
+
/**
|
|
28
|
+
* Scratch pipeline store initialized from the base frame config. Use it for
|
|
29
|
+
* derived geometry, seeded randomness, or quick settle probes; return
|
|
30
|
+
* declarative `bodies`/`colliders` from the layout result for rendering.
|
|
31
|
+
*/
|
|
32
|
+
world: PhysicsPipelineStore;
|
|
33
|
+
}
|
|
34
|
+
export interface PhysicsCustomLayoutResult {
|
|
35
|
+
bodies?: PhysicsQueuedSpawn[];
|
|
36
|
+
initialSpawns?: PhysicsQueuedSpawn[];
|
|
37
|
+
/** Fresh collider geometry replaces the live world without resetting bodies. */
|
|
38
|
+
colliders?: PhysicsColliderSpec[];
|
|
39
|
+
/** Fresh sensor geometry replaces the live world without resetting bodies. */
|
|
40
|
+
sensors?: PhysicsColliderSpec[];
|
|
41
|
+
constraints?: PhysicsSpringSpec[];
|
|
42
|
+
config?: PhysicsPipelineConfig;
|
|
43
|
+
initialSpawnPacing?: PhysicsSpawnPacingOptions;
|
|
44
|
+
/**
|
|
45
|
+
* Region effects (membranes, capacity stages, portals). Prefer declaring
|
|
46
|
+
* these here and driving interaction via `controllers` / `layoutConfig`
|
|
47
|
+
* rather than re-spawning bodies.
|
|
48
|
+
*/
|
|
49
|
+
regionEffects?: StreamPhysicsRegionEffect[];
|
|
50
|
+
/**
|
|
51
|
+
* Process plugins (capacity queues, portals). Tick with the frame heartbeat
|
|
52
|
+
* without rebuilding world topology when only `layoutConfig` changes.
|
|
53
|
+
*/
|
|
54
|
+
controllers?: PhysicsController[];
|
|
55
|
+
bodyForces?: StreamPhysicsBodyForce;
|
|
56
|
+
overlays?: ReactNode;
|
|
57
|
+
backgroundOverlays?: ReactNode;
|
|
58
|
+
bodyStyle?: StreamPhysicsFrameProps["bodyStyle"];
|
|
59
|
+
selectedBodyStyle?: StreamPhysicsFrameProps["selectedBodyStyle"];
|
|
60
|
+
semanticItems?: PhysicsSemanticItem[];
|
|
61
|
+
}
|
|
62
|
+
export type PhysicsCustomLayout<TDatum extends Datum = Datum, TConfig extends object = Record<string, unknown>> = (ctx: PhysicsCustomLayoutContext<TDatum, TConfig>) => PhysicsCustomLayoutResult;
|
|
63
|
+
export type PhysicsCustomSpawnDatumResult = PhysicsDatumSpawnResult | PhysicsQueuedSpawn | PhysicsQueuedSpawn[];
|
|
64
|
+
export interface PhysicsCustomChartProps<TDatum extends Datum = Datum, TConfig extends object = Record<string, unknown>> extends Omit<BaseChartProps, "margin">, PhysicsSharedChartProps {
|
|
65
|
+
data?: TDatum[];
|
|
66
|
+
layout: PhysicsCustomLayout<TDatum, TConfig>;
|
|
67
|
+
/**
|
|
68
|
+
* Interaction / style config passed as `ctx.config`. Changing only
|
|
69
|
+
* `layoutConfig` re-runs the layout for colliders, sensors, regionEffects,
|
|
70
|
+
* controllers, overlays, and bodyStyle — it does **not** re-create the
|
|
71
|
+
* physics store or re-enqueue initial spawns (topology is keyed by data +
|
|
72
|
+
* size + layout identity). Keep collider/sensor ids stable across updates.
|
|
73
|
+
*/
|
|
74
|
+
layoutConfig?: TConfig;
|
|
75
|
+
config?: PhysicsPipelineConfig;
|
|
76
|
+
size?: [number, number];
|
|
77
|
+
xExtent?: [number, number];
|
|
78
|
+
yExtent?: [number, number];
|
|
79
|
+
colorBy?: ChartAccessor<TDatum, string | number>;
|
|
80
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
81
|
+
paused?: boolean;
|
|
82
|
+
tooltip?: TooltipProp;
|
|
83
|
+
/**
|
|
84
|
+
* Extra process controllers composed with any returned from `layout()`.
|
|
85
|
+
*/
|
|
86
|
+
controllers?: PhysicsController[];
|
|
87
|
+
spawnDatum?: (datum: TDatum, index: number, ctx: PhysicsCustomLayoutContext<TDatum, TConfig>) => PhysicsCustomSpawnDatumResult;
|
|
88
|
+
/**
|
|
89
|
+
* Frame passthrough. Prefer top-level `controllers` / layout-returned
|
|
90
|
+
* regionEffects; frameProps merges are still supported for escape hatches.
|
|
91
|
+
*/
|
|
92
|
+
frameProps?: PhysicsHocFrameProps<"config">;
|
|
93
|
+
}
|
|
94
|
+
interface ResolvedPhysicsCustomLayout<TDatum extends Datum = Datum, TConfig extends object = Record<string, unknown>> {
|
|
95
|
+
config: PhysicsPipelineConfig;
|
|
96
|
+
context: PhysicsCustomLayoutContext<TDatum, TConfig>;
|
|
97
|
+
initialSpawnPacing?: PhysicsSpawnPacingOptions;
|
|
98
|
+
initialSpawns: PhysicsQueuedSpawn[];
|
|
99
|
+
result: PhysicsCustomLayoutResult;
|
|
100
|
+
}
|
|
101
|
+
export declare function resolveCustomLayout<TDatum extends Datum, TConfig extends object>(options: {
|
|
102
|
+
chartId?: string;
|
|
103
|
+
colorScheme?: string | string[] | Record<string, string>;
|
|
104
|
+
config?: PhysicsPipelineConfig;
|
|
105
|
+
data: TDatum[];
|
|
106
|
+
layout: PhysicsCustomLayout<TDatum, TConfig>;
|
|
107
|
+
layoutConfig?: TConfig;
|
|
108
|
+
onObservation?: BaseChartProps["onObservation"];
|
|
109
|
+
semantic: ThemeSemanticColors;
|
|
110
|
+
skipLayout?: boolean;
|
|
111
|
+
size: [number, number];
|
|
112
|
+
themeCategorical: string[];
|
|
113
|
+
xExtent?: [number, number];
|
|
114
|
+
yExtent?: [number, number];
|
|
115
|
+
}): ResolvedPhysicsCustomLayout<TDatum, TConfig>;
|
|
116
|
+
export declare const PhysicsCustomChart: {
|
|
117
|
+
<TDatum extends Datum = Datum, TConfig extends object = Record<string, unknown>>(props: PhysicsCustomChartProps<TDatum, TConfig> & React.RefAttributes<PhysicsFrameHandle>): React.ReactElement | null;
|
|
118
|
+
displayName?: string;
|
|
119
|
+
};
|
|
120
|
+
export default PhysicsCustomChart;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { Datum } from "../shared/datumTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor, ChartMode } from "../shared/types";
|
|
4
|
+
import { type PhysicsFrameHandle } from "./physicsHocHandle";
|
|
5
|
+
import { type PhysicsHocFrameProps, type PhysicsSharedChartProps, type PhysicsSimulationMode, type TooltipProp } from "./physicsHocUtils";
|
|
6
|
+
export interface PhysicsPileChartProps<TDatum extends Datum = Datum> extends Omit<BaseChartProps, "margin" | "mode">, PhysicsSharedChartProps {
|
|
7
|
+
data?: TDatum[];
|
|
8
|
+
size?: [number, number];
|
|
9
|
+
categoryAccessor?: ChartAccessor<TDatum, string>;
|
|
10
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
11
|
+
/**
|
|
12
|
+
* Chart display mode **or** legacy simulation mode (`sample`/`mechanical`).
|
|
13
|
+
* Prefer `simulationMode` for mechanical demos; use `mode` for ChartMode.
|
|
14
|
+
*/
|
|
15
|
+
mode?: ChartMode | PhysicsSimulationMode;
|
|
16
|
+
simulationMode?: PhysicsSimulationMode;
|
|
17
|
+
mechanicalCount?: number;
|
|
18
|
+
mechanicalCategories?: readonly string[];
|
|
19
|
+
unitValue?: number;
|
|
20
|
+
ballRadius?: number;
|
|
21
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
22
|
+
seed?: number;
|
|
23
|
+
showProjection?: boolean;
|
|
24
|
+
sediment?: boolean;
|
|
25
|
+
tooltip?: TooltipProp;
|
|
26
|
+
paused?: boolean;
|
|
27
|
+
frameProps?: PhysicsHocFrameProps<"config">;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Physics-backed unit pile chart that converts category values into repeated bodies and a readable settled projection.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```tsx
|
|
34
|
+
* <PhysicsPileChart
|
|
35
|
+
* data={[{ category: "A", value: 12 }, { category: "B", value: 8 }]}
|
|
36
|
+
* categoryAccessor="category"
|
|
37
|
+
* valueAccessor="value"
|
|
38
|
+
* unitValue={1}
|
|
39
|
+
* />
|
|
40
|
+
* ```
|
|
41
|
+
*
|
|
42
|
+
* @example
|
|
43
|
+
* ```tsx
|
|
44
|
+
* <PhysicsPileChart
|
|
45
|
+
* mode="mechanical"
|
|
46
|
+
* mechanicalCategories={["North", "South", "West"]}
|
|
47
|
+
* mechanicalCount={90}
|
|
48
|
+
* seed={5}
|
|
49
|
+
* />
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export declare const PhysicsPileChart: React.ForwardRefExoticComponent<PhysicsPileChartProps<Datum> & React.RefAttributes<PhysicsFrameHandle>>;
|
|
53
|
+
export default PhysicsPileChart;
|