semiotic 3.8.5 → 3.8.7
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 +37 -10
- package/README.md +83 -56
- package/ai/behaviorContracts.cjs +88 -3
- package/ai/componentMetadata.cjs +5 -10
- package/ai/dist/mcp-server.js +99 -10
- package/ai/examples.md +198 -9
- package/ai/schema.json +2002 -165
- package/ai/surface-manifest.json +14 -10
- package/ai/system-prompt.md +9 -3
- package/dist/{chunk-chartContainerDataAudit-74TLKIP6.module.min.js → chunk-chartContainerDataAudit-JDSVSKGM.module.min.js} +1 -1
- package/dist/chunk-chunk-2JGJ5GUG.module.min.js +1 -0
- package/dist/chunk-chunk-2YAZHXL4.module.min.js +2 -0
- package/dist/chunk-chunk-3NGIKFD6.module.min.js +1 -0
- package/dist/{chunk-chunk-G7WFWHAD.module.min.js → chunk-chunk-4ITOQRXM.module.min.js} +1 -1
- package/dist/chunk-chunk-5SD6BHVW.module.min.js +2 -0
- package/dist/chunk-chunk-6V5VQVCT.module.min.js +2 -0
- package/dist/chunk-chunk-7TTBHSAG.module.min.js +2 -0
- package/dist/chunk-chunk-7ZDJSYKI.module.min.js +2 -0
- package/dist/chunk-chunk-BGHPD3RA.module.min.js +1 -0
- package/dist/chunk-chunk-BMRZ2SPU.module.min.js +2 -0
- package/dist/chunk-chunk-BNGBEY7N.module.min.js +2 -0
- package/dist/chunk-chunk-C7APLVQD.module.min.js +2 -0
- package/dist/chunk-chunk-DGWFBOGB.module.min.js +1 -0
- package/dist/chunk-chunk-DIVE2DRA.module.min.js +2 -0
- package/dist/chunk-chunk-FBUNUIPV.module.min.js +2 -0
- package/dist/chunk-chunk-FQPKOAIH.module.min.js +2 -0
- package/dist/chunk-chunk-FRO4TRXK.module.min.js +2 -0
- package/dist/chunk-chunk-G7QVPZUD.module.min.js +2 -0
- package/dist/chunk-chunk-GBPYV4FP.module.min.js +2 -0
- package/dist/chunk-chunk-GU2EJIDJ.module.min.js +2 -0
- package/dist/chunk-chunk-J5QD4RAM.module.min.js +2 -0
- package/dist/{chunk-chunk-LJLS6DY7.module.min.js → chunk-chunk-JWXLNZSM.module.min.js} +1 -1
- package/dist/chunk-chunk-KXAFCCDB.module.min.js +2 -0
- package/dist/chunk-chunk-LG7YKJAK.module.min.js +2 -0
- package/dist/{chunk-chunk-I36PJ4OC.module.min.js → chunk-chunk-LVHDZAT3.module.min.js} +1 -1
- package/dist/chunk-chunk-LWITSR2O.module.min.js +2 -0
- package/dist/chunk-chunk-MX35T6RX.module.min.js +2 -0
- package/dist/chunk-chunk-NH4MEAKP.module.min.js +2 -0
- package/dist/chunk-chunk-NJETWX42.module.min.js +2 -0
- package/dist/chunk-chunk-NW25WGLS.module.min.js +2 -0
- package/dist/{chunk-chunk-TMWIZL3K.module.min.js → chunk-chunk-OI7R7EJB.module.min.js} +1 -1
- package/dist/chunk-chunk-ONMLEXHR.module.min.js +2 -0
- package/dist/chunk-chunk-OY66GCE6.module.min.js +1 -0
- package/dist/chunk-chunk-PZFT457G.module.min.js +1 -0
- package/dist/chunk-chunk-Q3WW6JGR.module.min.js +1 -0
- package/dist/chunk-chunk-Q6XKQTOQ.module.min.js +1 -0
- package/dist/chunk-chunk-RJRM2E6P.module.min.js +1 -0
- package/dist/chunk-chunk-RPL7WYXI.module.min.js +1 -0
- package/dist/chunk-chunk-SV4XAZ3Q.module.min.js +1 -0
- package/dist/chunk-chunk-TSCFL235.module.min.js +1 -0
- package/dist/chunk-chunk-UOQRPGPK.module.min.js +2 -0
- package/dist/chunk-chunk-V3OAKG32.module.min.js +1 -0
- package/dist/chunk-chunk-WLOIUMWG.module.min.js +2 -0
- package/dist/chunk-chunk-XEGXX4F7.module.min.js +1 -0
- package/dist/chunk-chunk-XFRBLXYM.module.min.js +1 -0
- package/dist/chunk-chunk-Z2AJERX5.module.min.js +2 -0
- package/dist/chunk-chunk-ZXYDYAB7.module.min.js +2 -0
- package/dist/components/ai/SemioticVACPBridge.d.ts +22 -0
- package/dist/components/ai/chartCapabilities.d.ts +5 -3
- package/dist/components/ai/conversationArc.d.ts +2 -176
- package/dist/components/ai/conversationArcTypes.d.ts +202 -0
- package/dist/components/ai/readerGrounding.d.ts +12 -0
- package/dist/components/ai/vacpAdapter.d.ts +13 -0
- package/dist/components/ai/vacpAdapterActions.d.ts +2 -0
- package/dist/components/ai/vacpAdapterModel.d.ts +7 -0
- package/dist/components/ai/vacpAdapterRuntime.d.ts +26 -0
- package/dist/components/ai/vacpAdapterState.d.ts +3 -0
- package/dist/components/ai/vacpAdapterTypes.d.ts +169 -0
- package/dist/components/ai/vacpTypes.d.ts +160 -0
- package/dist/components/charts/custom/XYCustomChart.d.ts +3 -0
- package/dist/components/charts/geo/DistanceCartogram.d.ts +1 -1
- package/dist/components/charts/index.d.ts +7 -4
- package/dist/components/charts/ordinal/BarChart.d.ts +7 -14
- package/dist/components/charts/ordinal/GaugeChart.d.ts +3 -0
- package/dist/components/charts/ordinal/GroupedBarChart.d.ts +3 -0
- package/dist/components/charts/ordinal/StackedBarChart.d.ts +3 -0
- package/dist/components/charts/ordinal/SwimlaneChart.d.ts +4 -14
- package/dist/components/charts/physics/ChainReactionChart.capability.d.ts +9 -0
- package/dist/components/charts/physics/ChainReactionChart.d.ts +29 -0
- package/dist/components/charts/physics/CollisionSwarmChart.d.ts +1 -1
- package/dist/components/charts/physics/EventDropChart.d.ts +7 -2
- package/dist/components/charts/physics/GaltonBoardChart.d.ts +1 -1
- package/dist/components/charts/physics/{PhysicsPileChart.capability.d.ts → PacketFlowChart.capability.d.ts} +1 -1
- package/dist/components/charts/physics/{PhysicalFlowChart.d.ts → PacketFlowChart.d.ts} +22 -6
- package/dist/components/charts/physics/PhysicsCustomChart.d.ts +1 -1
- package/dist/components/charts/physics/ProcessFlowChart.d.ts +7 -4
- package/dist/components/charts/physics/{PhysicalFlowChart.capability.d.ts → UnitPileChart.capability.d.ts} +1 -1
- package/dist/components/charts/physics/{PhysicsPileChart.d.ts → UnitPileChart.d.ts} +19 -6
- package/dist/components/charts/physics/crucibleChartProps.d.ts +1 -1
- package/dist/components/charts/physics/crucibleChartUtils.d.ts +9 -0
- package/dist/components/charts/physics/gauntletChartProps.d.ts +6 -1
- package/dist/components/charts/physics/gauntletTerminal.d.ts +61 -0
- package/dist/components/charts/physics/packetFlowSemantics.d.ts +6 -0
- package/dist/components/charts/physics/physicsHocUtils.d.ts +45 -2
- package/dist/components/charts/shared/auditAccessibilityStyles.d.ts +9 -0
- package/dist/components/charts/shared/chartSpecCore.d.ts +2 -4
- package/dist/components/charts/shared/gaugeGradient.d.ts +4 -8
- package/dist/components/charts/shared/gradient.d.ts +35 -0
- package/dist/components/charts/shared/hatchFill.d.ts +3 -10
- package/dist/components/charts/shared/hooks.d.ts +2 -50
- package/dist/components/charts/shared/knownChartComponents.d.ts +1 -1
- package/dist/components/charts/shared/streamPropsHelpers.d.ts +1 -2
- package/dist/components/charts/shared/useChartLegend.d.ts +65 -0
- package/dist/components/charts/shared/useChartSetup.d.ts +12 -0
- package/dist/components/charts/shared/useCustomChartSetup.d.ts +6 -1
- package/dist/components/charts/shared/useNetworkChartSetup.d.ts +1 -0
- package/dist/components/charts/shared/useStreamingLegend.d.ts +1 -1
- package/dist/components/charts/xy/AreaChart.d.ts +25 -42
- package/dist/components/charts/xy/BumpChart.capability.d.ts +11 -0
- package/dist/components/charts/xy/BumpChart.d.ts +161 -0
- package/dist/components/charts/xy/DifferenceChart.d.ts +3 -10
- package/dist/components/charts/xy/Heatmap.d.ts +3 -0
- package/dist/components/charts/xy/LineChart.d.ts +6 -8
- package/dist/components/data/portability/capabilityBinding.d.ts +41 -0
- package/dist/components/data/portability/index.d.ts +2 -0
- package/dist/components/geometry/bumpRibbonGeometry.d.ts +36 -0
- package/dist/components/legendLayout.d.ts +75 -1
- package/dist/components/recipes/geographicDotGrid.d.ts +82 -0
- package/dist/components/recipes/geographicGrid.d.ts +100 -0
- package/dist/components/recipes/physics.d.ts +2 -0
- package/dist/components/recipes/physicsStageGeography.d.ts +137 -0
- package/dist/components/semiotic-ai.d.ts +6 -4
- package/dist/components/semiotic-experimental-vacp.d.ts +11 -0
- package/dist/components/semiotic-experimental.d.ts +6 -3
- package/dist/components/semiotic-geo.d.ts +5 -0
- package/dist/components/semiotic-network.d.ts +1 -0
- package/dist/components/semiotic-ordinal.d.ts +2 -0
- package/dist/components/semiotic-physics.d.ts +10 -6
- package/dist/components/semiotic-realtime-core.d.ts +1 -0
- package/dist/components/semiotic-recipes-core.d.ts +6 -1
- package/dist/components/semiotic-server-edge.d.ts +1 -1
- package/dist/components/semiotic-server.d.ts +1 -1
- package/dist/components/semiotic-xy.d.ts +4 -0
- package/dist/components/semiotic.d.ts +4 -4
- package/dist/components/server/renderEvidence.d.ts +1 -1
- package/dist/components/server/renderToStaticSVG.d.ts +2 -1
- package/dist/components/server/serverChartConfigHeatmap.d.ts +6 -0
- package/dist/components/server/serverChartConfigNetworkStyles.d.ts +12 -0
- package/dist/components/server/serverChartConfigShared.d.ts +16 -0
- package/dist/components/server/serverChartConfigs.d.ts +3 -2
- package/dist/components/server/serverChartConfigsPhysics.d.ts +2 -2
- package/dist/components/server/serverChartConfigsXY.d.ts +1 -1
- package/dist/components/server/staticLegend.d.ts +10 -2
- package/dist/components/server/staticSVGChrome.d.ts +14 -6
- package/dist/components/server/staticValue.d.ts +8 -0
- package/dist/components/stream/GeoSVGOverlay.d.ts +4 -10
- package/dist/components/stream/NetworkSVGOverlay.d.ts +2 -6
- package/dist/components/stream/OrdinalSVGOverlay.d.ts +2 -6
- package/dist/components/stream/SVGOverlay.d.ts +2 -6
- package/dist/components/stream/StalenessBadge.d.ts +2 -6
- package/dist/components/stream/geoPipelineConfig.d.ts +10 -0
- package/dist/components/stream/geoTypes.d.ts +3 -6
- package/dist/components/stream/legendRenderer.d.ts +10 -6
- package/dist/components/stream/ordinalTypes.d.ts +7 -31
- package/dist/components/stream/physics/PhysicsEvidence.d.ts +37 -0
- package/dist/components/stream/physics/PhysicsKernel.d.ts +1 -0
- package/dist/components/stream/physics/PhysicsPipelineStore.d.ts +9 -0
- package/dist/components/stream/physics/PhysicsSVGOverlay.d.ts +2 -6
- package/dist/components/stream/physics/PhysicsSettledScene.d.ts +5 -0
- package/dist/components/stream/physics/StreamPhysicsTypes.d.ts +2 -6
- package/dist/components/stream/physics/physicsFramePipelineConfig.d.ts +19 -0
- package/dist/components/stream/physics/physicsPipelineSettle.d.ts +52 -0
- package/dist/components/stream/physics/physicsRegionRuntime.d.ts +23 -0
- package/dist/components/stream/pipelineConfig.d.ts +7 -15
- package/dist/components/stream/renderers/canvasRenderHelpers.d.ts +9 -69
- package/dist/components/stream/renderers/cornerRadii.d.ts +2 -9
- package/dist/components/stream/renderers/thresholdLineSegments.d.ts +12 -0
- package/dist/components/stream/sceneToSVGShared.d.ts +3 -5
- package/dist/components/stream/types.d.ts +34 -56
- package/dist/components/stream/xySceneBuilders/areaGradient.d.ts +4 -20
- package/dist/components/stream/xySceneBuilders/types.d.ts +6 -6
- package/dist/components/types/legendTypes.d.ts +31 -6
- package/dist/controls.min.js +1 -1
- package/dist/controls.module.min.js +1 -1
- 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.min.js +1 -1
- package/dist/physics.module.min.js +1 -1
- package/dist/physicsWorker.js +1 -1
- package/dist/realtime.min.js +1 -1
- package/dist/realtime.module.min.js +1 -1
- package/dist/semiotic-ai-core.min.js +1 -1
- package/dist/semiotic-ai-core.module.min.js +1 -1
- package/dist/semiotic-ai.d.ts +6 -4
- package/dist/semiotic-ai.min.js +1 -1
- package/dist/semiotic-ai.module.min.js +1 -1
- package/dist/semiotic-data.module.min.js +1 -1
- package/dist/semiotic-experimental-vacp.d.ts +11 -0
- package/dist/semiotic-experimental-vacp.min.js +1 -0
- package/dist/semiotic-experimental-vacp.module.min.js +1 -0
- package/dist/semiotic-experimental.d.ts +6 -3
- package/dist/semiotic-experimental.min.js +2 -1
- package/dist/semiotic-experimental.module.min.js +2 -1
- package/dist/semiotic-geo.d.ts +5 -0
- package/dist/semiotic-network.d.ts +1 -0
- package/dist/semiotic-ordinal.d.ts +2 -0
- package/dist/semiotic-physics.d.ts +10 -6
- package/dist/semiotic-realtime-core.d.ts +1 -0
- package/dist/semiotic-realtime-core.min.js +1 -1
- package/dist/semiotic-realtime-core.module.min.js +1 -1
- package/dist/semiotic-recipes-core.d.ts +6 -1
- package/dist/semiotic-recipes-core.min.js +1 -1
- package/dist/semiotic-recipes-core.module.min.js +1 -1
- package/dist/semiotic-recipes.min.js +1 -1
- package/dist/semiotic-recipes.module.min.js +1 -1
- package/dist/semiotic-server-edge.d.ts +1 -1
- package/dist/semiotic-server-edge.min.js +1 -1
- package/dist/semiotic-server-edge.module.min.js +1 -1
- package/dist/semiotic-server-node.min.js +1 -1
- package/dist/semiotic-server-node.module.min.js +1 -1
- package/dist/semiotic-server.d.ts +1 -1
- package/dist/semiotic-utils-core.min.js +1 -1
- package/dist/semiotic-utils-core.module.min.js +1 -1
- package/dist/semiotic-utils.min.js +1 -1
- package/dist/semiotic-utils.module.min.js +1 -1
- package/dist/semiotic-xy.d.ts +4 -0
- package/dist/semiotic.d.ts +4 -4
- 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.min.js +1 -1
- package/dist/xy.module.min.js +1 -1
- package/package.json +18 -2
- package/spec/README.md +94 -2
- package/spec/bindings/README.md +14 -3
- package/spec/v0.1/examples/annotation-provenance-reviewed-revision.json +27 -0
- package/spec/v0.1/examples/annotation-provenance-watcher-threshold.json +21 -0
- package/spec/v0.1/examples/audience-profile-executive-review.json +24 -0
- package/spec/v0.1/examples/audience-profile-incident-operators.json +42 -0
- package/spec/v0.1/examples/chart-capability-bar-comparison.json +48 -0
- package/spec/v0.1/examples/chart-capability-service-flow.json +54 -0
- package/dist/chunk-chunk-4AANPFOX.module.min.js +0 -2
- package/dist/chunk-chunk-5I3UZV4Q.module.min.js +0 -2
- package/dist/chunk-chunk-5RKXZQ2P.module.min.js +0 -1
- package/dist/chunk-chunk-74CCPVXB.module.min.js +0 -1
- package/dist/chunk-chunk-7ALTGHK6.module.min.js +0 -1
- package/dist/chunk-chunk-ANYDWOZF.module.min.js +0 -1
- package/dist/chunk-chunk-AVBI6GDT.module.min.js +0 -1
- package/dist/chunk-chunk-BANTPINB.module.min.js +0 -2
- package/dist/chunk-chunk-C4YA6TDR.module.min.js +0 -1
- package/dist/chunk-chunk-C57LR3YG.module.min.js +0 -1
- package/dist/chunk-chunk-CKMD5NV3.module.min.js +0 -2
- package/dist/chunk-chunk-CO5KQMGH.module.min.js +0 -1
- package/dist/chunk-chunk-CWQ5YIHX.module.min.js +0 -2
- package/dist/chunk-chunk-E6TXX6MI.module.min.js +0 -1
- package/dist/chunk-chunk-GMQ5AYTD.module.min.js +0 -1
- package/dist/chunk-chunk-JCG72SGW.module.min.js +0 -2
- package/dist/chunk-chunk-K3DMEW22.module.min.js +0 -1
- package/dist/chunk-chunk-KT2VAZMZ.module.min.js +0 -1
- package/dist/chunk-chunk-L6EA5V3G.module.min.js +0 -2
- package/dist/chunk-chunk-LJPCLYSC.module.min.js +0 -2
- package/dist/chunk-chunk-LRIFN2HK.module.min.js +0 -1
- package/dist/chunk-chunk-N5DDKCCF.module.min.js +0 -1
- package/dist/chunk-chunk-NEVE562N.module.min.js +0 -1
- package/dist/chunk-chunk-NLO44TOS.module.min.js +0 -2
- package/dist/chunk-chunk-PZJ2SBLL.module.min.js +0 -2
- package/dist/chunk-chunk-QSQVBIJA.module.min.js +0 -1
- package/dist/chunk-chunk-QUJ6TTLY.module.min.js +0 -1
- package/dist/chunk-chunk-RBIDBUT4.module.min.js +0 -2
- package/dist/chunk-chunk-RCF52Z42.module.min.js +0 -2
- package/dist/chunk-chunk-RFLAG356.module.min.js +0 -1
- package/dist/chunk-chunk-RPU4IZAV.module.min.js +0 -2
- package/dist/chunk-chunk-SKMBCFIL.module.min.js +0 -2
- package/dist/chunk-chunk-TAE7W424.module.min.js +0 -2
- package/dist/chunk-chunk-TUBMTZMU.module.min.js +0 -2
- package/dist/chunk-chunk-UFFEXJQY.module.min.js +0 -1
- package/dist/chunk-chunk-XSCHTS4D.module.min.js +0 -2
- package/dist/chunk-chunk-XXWSHGPL.module.min.js +0 -2
- package/dist/chunk-chunk-ZOAQDIJO.module.min.js +0 -1
- package/dist/chunk-chunk-ZXIXAPRE.module.min.js +0 -2
- package/dist/chunk-statisticalOverlays-QGDLRUHX.module.min.js +0 -1
- package/dist/chunk-statisticalOverlays-T77OKLDY.module.min.js +0 -1
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import StreamXYFrame from "./stream/StreamXYFrame";
|
|
6
6
|
export { StreamXYFrame };
|
|
7
7
|
export { LineChart } from "./charts/xy/LineChart";
|
|
8
|
+
export { BumpChart, rankBumpData } from "./charts/xy/BumpChart";
|
|
8
9
|
export { AreaChart } from "./charts/xy/AreaChart";
|
|
9
10
|
export { DifferenceChart } from "./charts/xy/DifferenceChart";
|
|
10
11
|
export { StackedAreaChart } from "./charts/xy/StackedAreaChart";
|
|
@@ -28,10 +29,13 @@ export type { HitTargetPointProps, HitTargetRectProps } from "./stream/hitTarget
|
|
|
28
29
|
export { glyphPlacement, glyphExtent } from "./stream/glyphDef";
|
|
29
30
|
export type { GlyphDef, GlyphPart } from "./stream/glyphDef";
|
|
30
31
|
export type { GlyphSceneNode, SceneAccessibilityMetadata } from "./stream/types";
|
|
32
|
+
export type { CategoricalLegendConfig, GradientLegendConfig, GradientLegendValue, LegendGroup, LegendItem, LegendLayout, LegendValue, } from "./types/legendTypes";
|
|
31
33
|
export type { StreamXYFrameProps, StreamXYFrameHandle } from "./stream/types";
|
|
32
34
|
export type { CustomLayout, LayoutContext, LayoutResult } from "./stream/customLayout";
|
|
33
35
|
export type { LineChartProps } from "./charts/xy/LineChart";
|
|
36
|
+
export type { BumpChartProps, RankedBumpData, RankedBumpDatum, RankBumpDataOptions, } from "./charts/xy/BumpChart";
|
|
34
37
|
export type { AreaChartProps, SemanticGradientStop } from "./charts/xy/AreaChart";
|
|
38
|
+
export type { GradientConfig, GradientStop, SemanticGradientInput, } from "./charts/shared/gradient";
|
|
35
39
|
export type { DifferenceChartProps } from "./charts/xy/DifferenceChart";
|
|
36
40
|
export type { StackedAreaChartProps } from "./charts/xy/StackedAreaChart";
|
|
37
41
|
export type { ScatterplotProps } from "./charts/xy/Scatterplot";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import StreamXYFrame from "./stream/StreamXYFrame";
|
|
2
2
|
import StreamOrdinalFrame from "./stream/StreamOrdinalFrame";
|
|
3
3
|
import StreamNetworkFrame from "./stream/StreamNetworkFrame";
|
|
4
|
-
import { Scatterplot, ConnectedScatterplot, LineChart, AreaChart, DifferenceChart, StackedAreaChart, Heatmap, BubbleChart, BarChart, StackedBarChart, LikertChart, SwarmPlot, BoxPlot, Histogram, ViolinPlot, RidgelinePlot, DotPlot, PieChart, DonutChart, GaugeChart, GroupedBarChart, FunnelChart, SwimlaneChart, ForceDirectedGraph, ChordDiagram, SankeyDiagram, ProcessSankey, TreeDiagram, Treemap, CirclePack, OrbitDiagram, ScatterplotMatrix, MinimapChart, QuadrantChart, MultiAxisLineChart, CandlestickChart, XYCustomChart, NetworkCustomChart, OrdinalCustomChart, responsiveRuleMatches, resolveResponsiveRules } from "./charts";
|
|
4
|
+
import { Scatterplot, ConnectedScatterplot, LineChart, BumpChart, rankBumpData, AreaChart, DifferenceChart, StackedAreaChart, Heatmap, BubbleChart, BarChart, StackedBarChart, LikertChart, SwarmPlot, BoxPlot, Histogram, ViolinPlot, RidgelinePlot, DotPlot, PieChart, DonutChart, GaugeChart, GroupedBarChart, FunnelChart, SwimlaneChart, ForceDirectedGraph, ChordDiagram, SankeyDiagram, ProcessSankey, TreeDiagram, Treemap, CirclePack, OrbitDiagram, ScatterplotMatrix, MinimapChart, QuadrantChart, MultiAxisLineChart, CandlestickChart, XYCustomChart, NetworkCustomChart, OrdinalCustomChart, responsiveRuleMatches, resolveResponsiveRules } from "./charts";
|
|
5
5
|
import { LinkedCharts } from "./LinkedCharts";
|
|
6
6
|
import { ThemeProvider, useTheme } from "./ThemeProvider";
|
|
7
7
|
import { exportChart } from "./export/exportChart";
|
|
@@ -28,14 +28,14 @@ import { RealtimeTemporalHistogram, RealtimeHistogram, TemporalHistogram } from
|
|
|
28
28
|
import { RealtimeSwarmChart } from "./charts/realtime/RealtimeSwarmChart";
|
|
29
29
|
import { RealtimeWaterfallChart } from "./charts/realtime/RealtimeWaterfallChart";
|
|
30
30
|
import { RealtimeHeatmap } from "./charts/realtime/RealtimeHeatmap";
|
|
31
|
-
export { StreamXYFrame, StreamOrdinalFrame, StreamNetworkFrame, Scatterplot, ConnectedScatterplot, LineChart, AreaChart, DifferenceChart, StackedAreaChart, Heatmap, BubbleChart, BarChart, StackedBarChart, LikertChart, SwarmPlot, BoxPlot, Histogram, ViolinPlot, RidgelinePlot, DotPlot, ForceDirectedGraph, ChordDiagram, SankeyDiagram, ProcessSankey, TreeDiagram, PieChart, DonutChart, GaugeChart, FunnelChart, GroupedBarChart, SwimlaneChart, Treemap, CirclePack, OrbitDiagram, ScatterplotMatrix, MinimapChart, QuadrantChart, MultiAxisLineChart, CandlestickChart, XYCustomChart, NetworkCustomChart, OrdinalCustomChart, LinkedCharts, ThemeProvider, useTheme, exportChart, toConfig, fromConfig, toURL, fromURL, copyConfig, configToJSX, serializeSelections, deserializeSelections, fromVegaLite, ChartErrorBoundary, ChartContainer, MobileChartContainer, SmallMultipleChart, MobileStandardControls, clampMobileRange, useMobileRangeControls, zoomMobileRange, ChartGrid, CategoryColorProvider, useCategoryColors, ContextLayout, CircularBrush, DirectManipulationControl, VISUALIZATION_CONTROL_TYPES, DetailsPanel, Tooltip, MultiLineTooltip, normalizeTooltip, RingBuffer, IncrementalExtent, RealtimeLineChart, RealtimeTemporalHistogram, RealtimeHistogram, TemporalHistogram, RealtimeSwarmChart, RealtimeWaterfallChart, RealtimeHeatmap, createHatchPattern, responsiveRuleMatches, resolveResponsiveRules };
|
|
32
|
-
export type { LegendLayout } from "./types/legendTypes";
|
|
31
|
+
export { StreamXYFrame, StreamOrdinalFrame, StreamNetworkFrame, Scatterplot, ConnectedScatterplot, LineChart, BumpChart, rankBumpData, AreaChart, DifferenceChart, StackedAreaChart, Heatmap, BubbleChart, BarChart, StackedBarChart, LikertChart, SwarmPlot, BoxPlot, Histogram, ViolinPlot, RidgelinePlot, DotPlot, ForceDirectedGraph, ChordDiagram, SankeyDiagram, ProcessSankey, TreeDiagram, PieChart, DonutChart, GaugeChart, FunnelChart, GroupedBarChart, SwimlaneChart, Treemap, CirclePack, OrbitDiagram, ScatterplotMatrix, MinimapChart, QuadrantChart, MultiAxisLineChart, CandlestickChart, XYCustomChart, NetworkCustomChart, OrdinalCustomChart, LinkedCharts, ThemeProvider, useTheme, exportChart, toConfig, fromConfig, toURL, fromURL, copyConfig, configToJSX, serializeSelections, deserializeSelections, fromVegaLite, ChartErrorBoundary, ChartContainer, MobileChartContainer, SmallMultipleChart, MobileStandardControls, clampMobileRange, useMobileRangeControls, zoomMobileRange, ChartGrid, CategoryColorProvider, useCategoryColors, ContextLayout, CircularBrush, DirectManipulationControl, VISUALIZATION_CONTROL_TYPES, DetailsPanel, Tooltip, MultiLineTooltip, normalizeTooltip, RingBuffer, IncrementalExtent, RealtimeLineChart, RealtimeTemporalHistogram, RealtimeHistogram, TemporalHistogram, RealtimeSwarmChart, RealtimeWaterfallChart, RealtimeHeatmap, createHatchPattern, responsiveRuleMatches, resolveResponsiveRules };
|
|
32
|
+
export type { CategoricalLegendConfig, GradientLegendConfig, GradientLegendValue, LegendGroup, LegendItem, LegendLayout, LegendValue, } from "./types/legendTypes";
|
|
33
33
|
export type { DirectManipulationControlProps, VisualizationControlType } from "./DirectManipulationControl";
|
|
34
34
|
export { createControlObservationAdapter, } from "./controls/controlContract";
|
|
35
35
|
export { auditVisualizationControls } from "./controls/controlAudit";
|
|
36
36
|
export type { ControlInputSource, ControlObservation, ControlObservationAdapterOptions, ControlObservationCallback, ControlObservationPhase, VisualizationControlDefinition, VisualizationControlValue, } from "./controls/controlContract";
|
|
37
37
|
export type { AuditVisualizationControlsOptions, ControlAuditFinding, ControlAuditResult, ControlAuditStatus, } from "./controls/controlAudit";
|
|
38
|
-
export type { ScatterplotProps, ConnectedScatterplotProps, LineChartProps, AreaChartProps, SemanticGradientStop, DifferenceChartProps, StackedAreaChartProps, HeatmapProps, BubbleChartProps, BarChartProps, StackedBarChartProps, LikertChartProps, SwarmPlotProps, BoxPlotProps, HistogramProps, ViolinPlotProps, DotPlotProps, PieChartProps, DonutChartProps, GaugeChartProps, GaugeThreshold, FunnelChartProps, GroupedBarChartProps, SwimlaneChartProps, RidgelinePlotProps, OrbitDiagramProps, OrbitNode, ForceDirectedGraphProps, ChordDiagramProps, SankeyDiagramProps, ProcessSankeyProps, ProcessSankeyTick, TreeDiagramProps, TreemapProps, CirclePackProps, ScatterplotMatrixProps, MinimapChartProps, MinimapConfig, QuadrantChartProps, MultiAxisLineChartProps, MultiAxisSeriesConfig, CandlestickChartProps, QuadrantsConfig, QuadrantsConfigOverride, QuadrantConfig, CenterlineStyle, BaseChartProps, AxisConfig, Accessor, ChartAccessor, ChartMode, MobileClearSelectionBehavior, MobileSnapBehavior, MobileInteractionConfig, MobileInteractionProp, ResolvedMobileInteractionConfig, ResponsiveOrientation, ResponsiveRuleCondition, ResponsiveRuleContext, ResponsiveRule, ResponsiveRuleMatch, ResponsiveRuleResult } from "./charts";
|
|
38
|
+
export type { ScatterplotProps, ConnectedScatterplotProps, LineChartProps, BumpChartProps, RankedBumpData, RankedBumpDatum, RankBumpDataOptions, AreaChartProps, SemanticGradientStop, GradientConfig, GradientStop, SemanticGradientInput, DifferenceChartProps, StackedAreaChartProps, HeatmapProps, BubbleChartProps, BarChartProps, StackedBarChartProps, LikertChartProps, SwarmPlotProps, BoxPlotProps, HistogramProps, ViolinPlotProps, DotPlotProps, PieChartProps, DonutChartProps, GaugeChartProps, GaugeThreshold, FunnelChartProps, GroupedBarChartProps, SwimlaneChartProps, RidgelinePlotProps, OrbitDiagramProps, OrbitNode, ForceDirectedGraphProps, ChordDiagramProps, SankeyDiagramProps, ProcessSankeyProps, ProcessSankeyTick, TreeDiagramProps, TreemapProps, CirclePackProps, ScatterplotMatrixProps, MinimapChartProps, MinimapConfig, QuadrantChartProps, MultiAxisLineChartProps, MultiAxisSeriesConfig, CandlestickChartProps, QuadrantsConfig, QuadrantsConfigOverride, QuadrantConfig, CenterlineStyle, BaseChartProps, AxisConfig, Accessor, ChartAccessor, ChartMode, MobileClearSelectionBehavior, MobileSnapBehavior, MobileInteractionConfig, MobileInteractionProp, ResolvedMobileInteractionConfig, ResponsiveOrientation, ResponsiveRuleCondition, ResponsiveRuleContext, ResponsiveRule, ResponsiveRuleMatch, ResponsiveRuleResult } from "./charts";
|
|
39
39
|
export type { StreamXYFrameProps, StreamXYFrameHandle, StreamChartType, RuntimeMode, SceneNode, SceneAccessibilityMetadata, Changeset, StreamScales, StreamLayout, CurveType, CanvasRendererFn, XYFrameAxisConfig, BandConfig } from "./stream/types";
|
|
40
40
|
export type { StreamRendererFn } from "./stream/renderers/types";
|
|
41
41
|
export type { StreamOrdinalFrameProps, StreamOrdinalFrameHandle, OrdinalChartType, OrdinalScales, OrdinalSceneNode } from "./stream/ordinalTypes";
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
export interface RenderEvidence {
|
|
19
19
|
/** HOC component name as passed to renderChart. */
|
|
20
20
|
component: string;
|
|
21
|
-
frameType: "xy" | "ordinal" | "network" | "geo" | "physics";
|
|
21
|
+
frameType: "xy" | "ordinal" | "network" | "geo" | "physics" | "value";
|
|
22
22
|
/** "ok" when the scene produced data marks; "empty" when it did not. */
|
|
23
23
|
status: "ok" | "empty";
|
|
24
24
|
/** True when zero data marks rendered. */
|
|
@@ -7,6 +7,7 @@ import { CHART_CONFIGS } from "./serverChartConfigs";
|
|
|
7
7
|
import { type ThemeInput } from "./themeResolver";
|
|
8
8
|
import { type RenderEvidence } from "./renderEvidence";
|
|
9
9
|
import { type ThemeAwareProps, type StaticFrameProps, type FrameType } from "./staticSVGChrome";
|
|
10
|
+
import { type ValueChartName } from "./staticValue";
|
|
10
11
|
export declare function renderToStaticSVG(frameType: FrameType, props: StaticFrameProps): string;
|
|
11
12
|
export declare function renderXYToStaticSVG(props: StreamXYFrameProps & ThemeAwareProps): string;
|
|
12
13
|
export declare function renderOrdinalToStaticSVG(props: StreamOrdinalFrameProps & ThemeAwareProps): string;
|
|
@@ -18,7 +19,7 @@ export declare function renderGeoToStaticSVG(props: StreamGeoFrameProps & ThemeA
|
|
|
18
19
|
* union — no second edit required, no silent drift like the CandlestickChart
|
|
19
20
|
* gap that motivated this refactor.
|
|
20
21
|
*/
|
|
21
|
-
type ChartName = keyof typeof CHART_CONFIGS;
|
|
22
|
+
type ChartName = keyof typeof CHART_CONFIGS | ValueChartName;
|
|
22
23
|
interface RenderChartOptions {
|
|
23
24
|
/** Output format — currently only "svg" is synchronous */
|
|
24
25
|
format?: "svg";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { Datum } from "../charts/shared/datumTypes";
|
|
2
|
+
import { type PrimitiveStyleOverrides } from "../charts/shared/mergeShapeStyle";
|
|
3
|
+
/**
|
|
4
|
+
* Compose user/frame node styling over a hierarchy HOC's built-in encoding,
|
|
5
|
+
* then apply chart-level primitives with their documented final precedence.
|
|
6
|
+
*/
|
|
7
|
+
export declare function composeHierarchyNodeStyle(baseNodeStyle: (d: Datum) => Record<string, unknown>, userNodeStyle: ((d: Datum) => Record<string, unknown> | undefined | null) | Record<string, unknown> | undefined | null, primitives?: PrimitiveStyleOverrides): (d: Datum) => Record<string, unknown>;
|
|
8
|
+
/**
|
|
9
|
+
* Mirror ForceDirectedGraph's edge primitive resolution on the static path.
|
|
10
|
+
* An explicit edgeStyle remains the final escape hatch.
|
|
11
|
+
*/
|
|
12
|
+
export declare function resolveForceEdgeStyle(rest: Datum): any;
|
|
@@ -3,6 +3,7 @@ import type { ChartMode } from "../charts/shared/types";
|
|
|
3
3
|
import type { ChartModeInput, ChartModeResult } from "../charts/shared/chartMode";
|
|
4
4
|
import type { SemioticTheme } from "../store/ThemeStore";
|
|
5
5
|
import type { ReactNode } from "react";
|
|
6
|
+
import type { PrimitiveStyleOverrides } from "../charts/shared/mergeShapeStyle";
|
|
6
7
|
export type FrameType = "xy" | "ordinal" | "network" | "geo" | "physics";
|
|
7
8
|
export type ServerAccessorValue = string | number | boolean | Date | null | undefined;
|
|
8
9
|
export type ServerAccessor = string | ((datum: Datum) => ServerAccessorValue);
|
|
@@ -41,6 +42,21 @@ export interface ChartConfig {
|
|
|
41
42
|
export declare function accessorValue(accessor: ServerAccessor | undefined, fallback: string, d: Datum): ServerAccessorValue;
|
|
42
43
|
export declare function numericValue(value: ServerAccessorValue): number;
|
|
43
44
|
export declare function viridisColor(i: number, n: number): string;
|
|
45
|
+
/**
|
|
46
|
+
* Pull the top-level primitive styling props out of a chart's raw props so a
|
|
47
|
+
* server config can overlay them with `mergeShapeStyle`, exactly as the HOC
|
|
48
|
+
* does before handing style functions to its frame.
|
|
49
|
+
*
|
|
50
|
+
* Every shape-drawing HOC applies `stroke`/`strokeWidth`/`opacity` last, so
|
|
51
|
+
* they win over `frameProps.*Style` returns and the HOC's own base style. A
|
|
52
|
+
* server config that builds its style function without this overlay silently
|
|
53
|
+
* drops the whole channel — the static SVG comes back byte-identical to an
|
|
54
|
+
* unstyled render while the canvas honors it.
|
|
55
|
+
*
|
|
56
|
+
* Keys are omitted when unset so `mergeShapeStyle` can return its input
|
|
57
|
+
* unchanged and callers keep the no-override fast path.
|
|
58
|
+
*/
|
|
59
|
+
export declare function primitiveStyleOverrides(rest: Datum): PrimitiveStyleOverrides;
|
|
44
60
|
export declare function prepareConnectedScatterplotData(data: ServerChartData, rest: Datum): {
|
|
45
61
|
data: ServerChartData;
|
|
46
62
|
orderMap: WeakMap<Datum, {
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import type { ChartConfig } from "./serverChartConfigShared";
|
|
7
7
|
export declare const CHART_CONFIGS: {
|
|
8
8
|
Sparkline: ChartConfig;
|
|
9
|
+
BumpChart: ChartConfig;
|
|
9
10
|
LineChart: ChartConfig;
|
|
10
11
|
AreaChart: ChartConfig;
|
|
11
12
|
DifferenceChart: ChartConfig;
|
|
@@ -48,11 +49,11 @@ export declare const CHART_CONFIGS: {
|
|
|
48
49
|
GeoCustomChart: ChartConfig;
|
|
49
50
|
GaltonBoardChart: ChartConfig;
|
|
50
51
|
EventDropChart: ChartConfig;
|
|
51
|
-
|
|
52
|
+
UnitPileChart: ChartConfig;
|
|
52
53
|
CollisionSwarmChart: ChartConfig;
|
|
53
54
|
ProcessFlowChart: ChartConfig;
|
|
54
55
|
GauntletChart: ChartConfig;
|
|
55
56
|
CrucibleChart: ChartConfig;
|
|
56
|
-
|
|
57
|
+
PacketFlowChart: ChartConfig;
|
|
57
58
|
PhysicsCustomChart: ChartConfig;
|
|
58
59
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type ChartConfig } from "./serverChartConfigShared";
|
|
2
2
|
export declare const galtonBoardChart: ChartConfig;
|
|
3
3
|
export declare const eventDropChart: ChartConfig;
|
|
4
|
-
export declare const
|
|
4
|
+
export declare const unitPileChart: ChartConfig;
|
|
5
5
|
export declare const collisionSwarmChart: ChartConfig;
|
|
6
6
|
export declare const processFlowChart: ChartConfig;
|
|
7
7
|
export declare const gauntletChart: ChartConfig;
|
|
@@ -14,5 +14,5 @@ export declare const gauntletChart: ChartConfig;
|
|
|
14
14
|
* therefore cannot alter this static semantic state.
|
|
15
15
|
*/
|
|
16
16
|
export declare const crucibleChart: ChartConfig;
|
|
17
|
-
export declare const
|
|
17
|
+
export declare const packetFlowChart: ChartConfig;
|
|
18
18
|
export declare const physicsCustomChart: ChartConfig;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { type ChartConfig } from "./serverChartConfigShared";
|
|
2
2
|
export declare const bubbleChart: ChartConfig;
|
|
3
3
|
export declare const sparkline: ChartConfig;
|
|
4
|
+
export declare const bumpChart: ChartConfig;
|
|
4
5
|
export declare const lineChart: ChartConfig;
|
|
5
6
|
/** Static-data TemporalHistogram mapped onto the shared time-binned XY pipeline. */
|
|
6
7
|
export declare const temporalHistogram: ChartConfig;
|
|
@@ -11,4 +12,3 @@ export declare const candlestickChart: ChartConfig;
|
|
|
11
12
|
export declare const scatterplot: ChartConfig;
|
|
12
13
|
export declare const quadrantChart: ChartConfig;
|
|
13
14
|
export declare const connectedScatterplot: ChartConfig;
|
|
14
|
-
export declare const heatmap: ChartConfig;
|
|
@@ -8,6 +8,7 @@ import * as React from "react";
|
|
|
8
8
|
import type { SemioticTheme } from "../store/ThemeStore";
|
|
9
9
|
import type { Datum } from "../charts/shared/datumTypes";
|
|
10
10
|
import type { CategoricalLegendConfig, GradientLegendConfig, LegendGroup, LegendLayout } from "../types/legendTypes";
|
|
11
|
+
import { type AxisChromeInput } from "../legendLayout";
|
|
11
12
|
interface LegendItemLayout {
|
|
12
13
|
category: string;
|
|
13
14
|
width: number;
|
|
@@ -45,14 +46,21 @@ export interface StaticLegendConfig {
|
|
|
45
46
|
hasTitle?: boolean;
|
|
46
47
|
/** SSR legend layout controls */
|
|
47
48
|
legendLayout?: LegendLayout;
|
|
48
|
-
/**
|
|
49
|
+
/** Gap in pixels between the legend and the plot/side gutter. Default: 10. */
|
|
50
|
+
legendDistance?: number;
|
|
51
|
+
/** Optional vertical placement-box override. Defaults to measured content. */
|
|
49
52
|
reservedWidth?: number;
|
|
50
53
|
/** Optional id namespace used for generated SVG ids */
|
|
51
54
|
idPrefix?: string;
|
|
55
|
+
/**
|
|
56
|
+
* Axis chrome on the legend's side, so a top/bottom legend clears the tick
|
|
57
|
+
* labels instead of drawing on them. Mirrors `renderLegendFromConfig`.
|
|
58
|
+
*/
|
|
59
|
+
axisChrome?: AxisChromeInput;
|
|
52
60
|
}
|
|
53
61
|
export interface StaticLegendGroupsConfig extends Omit<StaticLegendConfig, "categories" | "colorScheme"> {
|
|
54
62
|
legendGroups: LegendGroup[];
|
|
55
|
-
/**
|
|
63
|
+
/** Optional vertical placement-box override. Defaults to measured content. */
|
|
56
64
|
reservedWidth?: number;
|
|
57
65
|
}
|
|
58
66
|
export interface StaticGradientLegendConfig extends Omit<StaticLegendConfig, "categories" | "colorScheme"> {
|
|
@@ -7,12 +7,12 @@ import type { StreamGeoFrameProps } from "../stream/geoTypes";
|
|
|
7
7
|
import type { PhysicsSettledSVGOptions } from "../stream/physics/PhysicsSettledSVG";
|
|
8
8
|
import type { PhysicsPipelineStore, PhysicsQueuedSpawn } from "../stream/physics/PhysicsPipelineStore";
|
|
9
9
|
import type { OrdinalPipelineStore } from "../stream/OrdinalPipelineStore";
|
|
10
|
-
import type { RenderEvidence } from "./renderEvidence";
|
|
11
10
|
import { resolveTheme, type ThemeInput } from "./themeResolver";
|
|
12
11
|
import type { SemioticTheme } from "../store/ThemeStore";
|
|
13
12
|
import * as React from "react";
|
|
14
13
|
import { type AxisExtentMode } from "../charts/shared/axisExtent";
|
|
15
|
-
|
|
14
|
+
import { type AxisChromeInput } from "../legendLayout";
|
|
15
|
+
export type FrameType = "xy" | "ordinal" | "network" | "geo" | "physics";
|
|
16
16
|
export type StaticPhysicsFrameProps = PhysicsSettledSVGOptions & {
|
|
17
17
|
config?: ConstructorParameters<typeof PhysicsPipelineStore>[0];
|
|
18
18
|
initialSpawns?: PhysicsQueuedSpawn[];
|
|
@@ -55,12 +55,17 @@ type LegendPosition = "right" | "left" | "top" | "bottom";
|
|
|
55
55
|
type StaticLegendHostProps = ThemeAwareProps & {
|
|
56
56
|
legend?: unknown;
|
|
57
57
|
colorScheme?: string | string[] | Record<string, string>;
|
|
58
|
+
/**
|
|
59
|
+
* Bottom-axis chrome, so a bottom legend is placed and reserved outside the
|
|
60
|
+
* tick labels. Frames without a horizontal axis omit it and keep a 0 gutter.
|
|
61
|
+
*/
|
|
62
|
+
axisChrome?: AxisChromeInput;
|
|
58
63
|
};
|
|
59
64
|
/**
|
|
60
|
-
* The client HOCs reserve a
|
|
61
|
-
* frame API
|
|
62
|
-
*
|
|
63
|
-
* side remains fully caller-controlled.
|
|
65
|
+
* The client HOCs reserve a minimum legend gutter before layout. The static
|
|
66
|
+
* frame API uses the same content measurement, while renderChart() marks HOC
|
|
67
|
+
* requests so both paths retain their compatibility floor. An explicitly set
|
|
68
|
+
* numeric side remains fully caller-controlled.
|
|
64
69
|
*/
|
|
65
70
|
export declare function hocLegendMarginMinimum(props: ThemeAwareProps, position: LegendPosition): number | undefined;
|
|
66
71
|
/** Whether the caller, rather than the HOC default, owns a legend side. */
|
|
@@ -80,6 +85,7 @@ export declare function reserveStaticLegendMargin(margin: {
|
|
|
80
85
|
legendLayout?: LegendLayout;
|
|
81
86
|
minimumMargin?: number;
|
|
82
87
|
preserveExplicitMargin?: boolean;
|
|
88
|
+
axisChrome?: AxisChromeInput;
|
|
83
89
|
}): void;
|
|
84
90
|
export declare function reserveLegendConfigMargin(margin: {
|
|
85
91
|
top: number;
|
|
@@ -95,6 +101,7 @@ export declare function reserveLegendConfigMargin(margin: {
|
|
|
95
101
|
legendLayout?: LegendLayout;
|
|
96
102
|
minimumMargin?: number;
|
|
97
103
|
preserveExplicitMargin?: boolean;
|
|
104
|
+
axisChrome?: AxisChromeInput;
|
|
98
105
|
}): void;
|
|
99
106
|
export declare function renderLegendConfig(legend: unknown, options: {
|
|
100
107
|
theme: ReturnType<typeof resolveTheme>;
|
|
@@ -110,6 +117,7 @@ export declare function renderLegendConfig(legend: unknown, options: {
|
|
|
110
117
|
legendLayout?: LegendLayout;
|
|
111
118
|
idPrefix?: string;
|
|
112
119
|
reservedWidth?: number;
|
|
120
|
+
axisChrome?: AxisChromeInput;
|
|
113
121
|
}): React.ReactNode;
|
|
114
122
|
/** Reserve the plot gutter for either a supplied legend config or categories. */
|
|
115
123
|
export declare function reserveFrameLegendMargin(margin: {
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Datum } from "../charts/shared/datumTypes";
|
|
2
|
+
import { type EvidenceSink } from "./renderEvidence";
|
|
3
|
+
export declare function renderBigNumberToStaticSVG(props: Datum, sink?: EvidenceSink): string;
|
|
4
|
+
export declare const VALUE_RENDERERS: {
|
|
5
|
+
readonly BigNumber: typeof renderBigNumberToStaticSVG;
|
|
6
|
+
};
|
|
7
|
+
export type ValueChartName = keyof typeof VALUE_RENDERERS;
|
|
8
|
+
export declare function renderValueChart(component: ValueChartName, props: Datum, sink?: EvidenceSink): string;
|
|
@@ -4,7 +4,7 @@ import { type OnAnnotationActivateCallback } from "../charts/shared/annotationAc
|
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import type { ReactNode } from "react";
|
|
6
6
|
import type { AnnotationContext } from "../realtime/types";
|
|
7
|
-
import type {
|
|
7
|
+
import type { LegendLayout, LegendValue } from "../types/legendTypes";
|
|
8
8
|
import { type AutoPlaceAnnotations } from "../recipes/annotationLayout";
|
|
9
9
|
interface GeoSVGOverlayProps {
|
|
10
10
|
width: number;
|
|
@@ -24,11 +24,7 @@ interface GeoSVGOverlayProps {
|
|
|
24
24
|
*/
|
|
25
25
|
showAxes?: boolean;
|
|
26
26
|
title?: string | ReactNode;
|
|
27
|
-
legend?:
|
|
28
|
-
legendGroups: LegendGroup[];
|
|
29
|
-
} | {
|
|
30
|
-
gradient: GradientLegendConfig;
|
|
31
|
-
};
|
|
27
|
+
legend?: LegendValue;
|
|
32
28
|
legendHoverBehavior?: (item: {
|
|
33
29
|
label: string;
|
|
34
30
|
} | null) => void;
|
|
@@ -64,10 +60,8 @@ interface GeoSVGOverlayProps {
|
|
|
64
60
|
/**
|
|
65
61
|
* The SVG chrome used by StreamGeoFrame.
|
|
66
62
|
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
* the subset Geo actually exercises here so those XY-only dependencies do not
|
|
70
|
-
* enter the Geo bundle.
|
|
63
|
+
* Contains the subset Geo exercises so XY-only scale, marginal-graphics, grid,
|
|
64
|
+
* and linked-crosshair dependencies do not enter the Geo bundle.
|
|
71
65
|
*/
|
|
72
66
|
export declare function GeoSVGOverlay(props: GeoSVGOverlayProps): React.JSX.Element | null;
|
|
73
67
|
export {};
|
|
@@ -2,7 +2,7 @@ import type { Datum } from "../charts/shared/datumTypes";
|
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
import type { ReactNode } from "react";
|
|
4
4
|
import type { NetworkLabel } from "./networkTypes";
|
|
5
|
-
import type {
|
|
5
|
+
import type { LegendLayout, LegendValue } from "../types/legendTypes";
|
|
6
6
|
import { type AutoPlaceAnnotations } from "../recipes/annotationLayout";
|
|
7
7
|
import type { AnnotationContext } from "../realtime/types";
|
|
8
8
|
import { type GlyphDef } from "./glyphDef";
|
|
@@ -56,11 +56,7 @@ export interface NetworkSVGOverlayProps {
|
|
|
56
56
|
/** Chart title */
|
|
57
57
|
title?: string | ReactNode;
|
|
58
58
|
/** Legend configuration */
|
|
59
|
-
legend?:
|
|
60
|
-
legendGroups: LegendGroup[];
|
|
61
|
-
} | {
|
|
62
|
-
gradient: GradientLegendConfig;
|
|
63
|
-
};
|
|
59
|
+
legend?: LegendValue;
|
|
64
60
|
legendHoverBehavior?: (item: {
|
|
65
61
|
label: string;
|
|
66
62
|
} | null) => void;
|
|
@@ -3,7 +3,7 @@ import * as React from "react";
|
|
|
3
3
|
import type { OrdinalScales } from "./ordinalTypes";
|
|
4
4
|
import type { AnnotationContext } from "../realtime/types";
|
|
5
5
|
import type { ReactNode } from "react";
|
|
6
|
-
import type {
|
|
6
|
+
import type { LegendLayout, LegendValue } from "../types/legendTypes";
|
|
7
7
|
import type { OnObservationCallback } from "../store/ObservationStore";
|
|
8
8
|
import { type OnAnnotationActivateCallback } from "../charts/shared/annotationActivation";
|
|
9
9
|
import { type AutoPlaceAnnotations } from "../recipes/annotationLayout";
|
|
@@ -38,11 +38,7 @@ interface OrdinalSVGOverlayProps {
|
|
|
38
38
|
axisExtent?: AxisExtentMode;
|
|
39
39
|
showGrid?: boolean;
|
|
40
40
|
title?: string | ReactNode;
|
|
41
|
-
legend?:
|
|
42
|
-
legendGroups: LegendGroup[];
|
|
43
|
-
} | {
|
|
44
|
-
gradient: GradientLegendConfig;
|
|
45
|
-
};
|
|
41
|
+
legend?: LegendValue;
|
|
46
42
|
legendHoverBehavior?: (item: {
|
|
47
43
|
label: string;
|
|
48
44
|
} | null) => void;
|
|
@@ -3,7 +3,7 @@ import * as React from "react";
|
|
|
3
3
|
import type { StreamScales, MarginalGraphicsConfig, XYFrameAxisConfig } from "./types";
|
|
4
4
|
import type { AnnotationContext } from "../realtime/types";
|
|
5
5
|
import type { ReactNode } from "react";
|
|
6
|
-
import type {
|
|
6
|
+
import type { LegendLayout, LegendValue } from "../types/legendTypes";
|
|
7
7
|
import { type AutoPlaceAnnotations } from "../recipes/annotationLayout";
|
|
8
8
|
import type { OnObservationCallback } from "../store/ObservationStore";
|
|
9
9
|
import { type OnAnnotationActivateCallback } from "../charts/shared/annotationActivation";
|
|
@@ -36,11 +36,7 @@ interface SVGOverlayProps {
|
|
|
36
36
|
axisExtent?: import("../charts/shared/axisExtent").AxisExtentMode;
|
|
37
37
|
showGrid?: boolean;
|
|
38
38
|
title?: string | ReactNode;
|
|
39
|
-
legend?:
|
|
40
|
-
legendGroups: LegendGroup[];
|
|
41
|
-
} | {
|
|
42
|
-
gradient: GradientLegendConfig;
|
|
43
|
-
};
|
|
39
|
+
legend?: LegendValue;
|
|
44
40
|
/** Callback when hovering a legend item */
|
|
45
41
|
legendHoverBehavior?: (item: {
|
|
46
42
|
label: string;
|
|
@@ -8,12 +8,8 @@ interface StalenessBadgeProps {
|
|
|
8
8
|
* `staleness.showBadge` is set.
|
|
9
9
|
*
|
|
10
10
|
* Shared by all four Stream Frames (XY / ordinal / network / geo) so the badge
|
|
11
|
-
* is pixel-identical across families.
|
|
12
|
-
*
|
|
13
|
-
* (10px/700, tighter padding, letterSpacing). This is the canonical style: the
|
|
14
|
-
* more legible 11px/600 the other three shared, plus `zIndex`/`pointerEvents`
|
|
15
|
-
* hardening so the badge always sits above the canvas and never intercepts
|
|
16
|
-
* pointer events.
|
|
11
|
+
* is pixel-identical across families. The badge sits above the canvas and does
|
|
12
|
+
* not intercept pointer events.
|
|
17
13
|
*/
|
|
18
14
|
export declare function StalenessBadge({ isStale, position }: StalenessBadgeProps): import("react").JSX.Element;
|
|
19
15
|
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { GeoPipelineConfig } from "./geoTypes";
|
|
2
|
+
/**
|
|
3
|
+
* `fitPadding` is applied to both sides of the plot, so 0.5 would leave a
|
|
4
|
+
* zero-sized extent (and a clipped globe with radius zero). Normalize nullish
|
|
5
|
+
* values at the public config boundary, and reject invalid values before they
|
|
6
|
+
* can reach d3 with a negative or non-finite projection extent.
|
|
7
|
+
*/
|
|
8
|
+
export declare function normalizeFitPadding(value: unknown): number;
|
|
9
|
+
export declare function normalizeInitialGeoPipelineConfig(config: GeoPipelineConfig): GeoPipelineConfig;
|
|
10
|
+
export declare function normalizeGeoPipelineConfigUpdate(config: Partial<GeoPipelineConfig>): Partial<GeoPipelineConfig>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
2
|
import type { GeoProjection, GeoPath, GeoPermissibleObjects } from "d3-geo";
|
|
3
|
-
import type {
|
|
3
|
+
import type { LegendLayout, LegendValue } from "../types/legendTypes";
|
|
4
4
|
import type { Style, DecayConfig, PulseConfig, TransitionConfig, StalenessConfig, SceneDatum, PointSceneNode, GlyphSceneNode, ThemeSemanticColors, SceneAccessibilityMetadata, SceneRenderMode } from "./types";
|
|
5
5
|
import type { AnimateProp } from "./pipelineTransitionUtils";
|
|
6
6
|
import type { AnnotationContext, HoverAnnotationConfig, HoverData } from "../realtime/types";
|
|
@@ -33,6 +33,7 @@ export interface DistanceCartogramConfig {
|
|
|
33
33
|
center: string;
|
|
34
34
|
centerAccessor?: string | ((d: Datum) => string);
|
|
35
35
|
costAccessor: string | ((d: Datum) => number);
|
|
36
|
+
/** Interpolation from fitted geography (0) to the cost layout (1). Values are clamped to [0, 1]. */
|
|
36
37
|
strength?: number;
|
|
37
38
|
lineMode?: "straight" | "fractional";
|
|
38
39
|
/**
|
|
@@ -276,11 +277,7 @@ export interface StreamGeoFrameProps<T = Datum> {
|
|
|
276
277
|
backgroundGraphics?: ReactNode;
|
|
277
278
|
foregroundGraphics?: ReactNode;
|
|
278
279
|
title?: string | ReactNode;
|
|
279
|
-
legend?:
|
|
280
|
-
legendGroups: LegendGroup[];
|
|
281
|
-
} | {
|
|
282
|
-
gradient: GradientLegendConfig;
|
|
283
|
-
};
|
|
280
|
+
legend?: LegendValue;
|
|
284
281
|
legendPosition?: "right" | "left" | "top" | "bottom";
|
|
285
282
|
legendLayout?: LegendLayout;
|
|
286
283
|
legendHoverBehavior?: (item: {
|
|
@@ -1,11 +1,8 @@
|
|
|
1
1
|
import type { ReactNode } from "react";
|
|
2
|
-
import type {
|
|
2
|
+
import type { LegendLayout, LegendValue } from "../types/legendTypes";
|
|
3
|
+
import { type AxisChromeInput } from "../legendLayout";
|
|
3
4
|
export interface LegendRenderConfig {
|
|
4
|
-
legend:
|
|
5
|
-
legendGroups: LegendGroup[];
|
|
6
|
-
} | {
|
|
7
|
-
gradient: GradientLegendConfig;
|
|
8
|
-
};
|
|
5
|
+
legend: LegendValue;
|
|
9
6
|
totalWidth: number;
|
|
10
7
|
totalHeight: number;
|
|
11
8
|
margin: {
|
|
@@ -26,6 +23,13 @@ export interface LegendRenderConfig {
|
|
|
26
23
|
legendHighlightedCategory?: string | null;
|
|
27
24
|
legendIsolatedCategories?: Set<string>;
|
|
28
25
|
legendInteraction?: string;
|
|
26
|
+
/**
|
|
27
|
+
* Chrome drawn by the **bottom** axis, so a bottom legend can be placed
|
|
28
|
+
* outside it instead of on top of the tick labels. Omit for frames with no
|
|
29
|
+
* horizontal axis (network, geo) — the gutter resolves to 0. Top legends do
|
|
30
|
+
* not auto-measure; see `LegendLayout.axisGutter`.
|
|
31
|
+
*/
|
|
32
|
+
axisChrome?: AxisChromeInput;
|
|
29
33
|
}
|
|
30
34
|
/**
|
|
31
35
|
* Renders a legend (categorical, gradient, or custom ReactNode) inside an SVG overlay.
|
|
@@ -5,11 +5,12 @@ import type { AutoPlaceAnnotations } from "../recipes/annotationLayout";
|
|
|
5
5
|
import type { SymbolName } from "./symbolPath";
|
|
6
6
|
import type { Style, SceneDatum, DecayConfig, PulseConfig, TransitionConfig, StalenessConfig, ThemeSemanticColors, FrameGraphicsProp, SceneAccessibilityMetadata, SceneRenderMode } from "./types";
|
|
7
7
|
import type { AnimateProp } from "./pipelineTransitionUtils";
|
|
8
|
-
import type {
|
|
8
|
+
import type { LegendLayout, LegendValue } from "../types/legendTypes";
|
|
9
9
|
import type { Datum } from "../charts/shared/datumTypes";
|
|
10
10
|
import type { OnObservationCallback } from "../store/ObservationStore";
|
|
11
11
|
import type { SemanticClickBehavior, SemanticHoverBehavior } from "../charts/shared/semanticInteractions";
|
|
12
12
|
import type { OnAnnotationActivateCallback } from "../charts/shared/annotationActivation";
|
|
13
|
+
import type { GradientConfig, GradientInput } from "../charts/shared/gradient";
|
|
13
14
|
export type OrdinalChartType = "bar" | "clusterbar" | "point" | "swarm" | "pie" | "donut" | "boxplot" | "violin" | "histogram" | "ridgeline" | "timeline" | "funnel" | "bar-funnel" | "swimlane" | "custom";
|
|
14
15
|
export interface OrdinalScales {
|
|
15
16
|
o: ScaleBand<string>;
|
|
@@ -223,20 +224,8 @@ export interface OrdinalPipelineConfig {
|
|
|
223
224
|
barPadding?: number;
|
|
224
225
|
/** Rounded top corner radius for bar charts. Only the end away from the baseline is rounded. For stacked bars, only the topmost segment gets rounded. */
|
|
225
226
|
roundedTop?: number;
|
|
226
|
-
/** Gradient fill for bar rects.
|
|
227
|
-
|
|
228
|
-
* renders a multi-color gradient along the same axis. Direction follows the
|
|
229
|
-
* bar's orientation (tip → base). Same shape as AreaChart.gradientFill
|
|
230
|
-
* sans the `boolean` case — the HOC resolves `true` to default opacities. */
|
|
231
|
-
gradientFill?: {
|
|
232
|
-
topOpacity: number;
|
|
233
|
-
bottomOpacity: number;
|
|
234
|
-
} | {
|
|
235
|
-
colorStops: Array<{
|
|
236
|
-
offset: number;
|
|
237
|
-
color: string;
|
|
238
|
-
}>;
|
|
239
|
-
};
|
|
227
|
+
/** Gradient fill for bar rects. Offset 0 is the tip; offset 1 is the base. */
|
|
228
|
+
gradientFill?: GradientConfig;
|
|
240
229
|
/** Swimlane "track" fill — a rect drawn behind each lane spanning the
|
|
241
230
|
* full value-axis range, sized to the lane's bandwidth. Used to make
|
|
242
231
|
* budget/progress lanes read as filled vs. empty. Pass a color (CSS
|
|
@@ -339,17 +328,8 @@ export interface StreamOrdinalFrameProps<T = Datum> {
|
|
|
339
328
|
};
|
|
340
329
|
barPadding?: number;
|
|
341
330
|
roundedTop?: number;
|
|
342
|
-
/** Gradient fill for bar rects.
|
|
343
|
-
|
|
344
|
-
gradientFill?: {
|
|
345
|
-
topOpacity: number;
|
|
346
|
-
bottomOpacity: number;
|
|
347
|
-
} | {
|
|
348
|
-
colorStops: Array<{
|
|
349
|
-
offset: number;
|
|
350
|
-
color: string;
|
|
351
|
-
}>;
|
|
352
|
-
};
|
|
331
|
+
/** Gradient fill for bar rects. Offset 0 is the tip; offset 1 is the base. */
|
|
332
|
+
gradientFill?: GradientInput;
|
|
353
333
|
/** Swimlane "track" fill — see OrdinalPipelineConfig.trackFill */
|
|
354
334
|
trackFill?: string | {
|
|
355
335
|
color: string;
|
|
@@ -430,11 +410,7 @@ export interface StreamOrdinalFrameProps<T = Datum> {
|
|
|
430
410
|
autoPlaceAnnotations?: AutoPlaceAnnotations;
|
|
431
411
|
svgAnnotationRules?: (annotation: Datum, index: number, context: AnnotationContext) => ReactNode;
|
|
432
412
|
showGrid?: boolean;
|
|
433
|
-
legend?:
|
|
434
|
-
legendGroups: LegendGroup[];
|
|
435
|
-
} | {
|
|
436
|
-
gradient: GradientLegendConfig;
|
|
437
|
-
};
|
|
413
|
+
legend?: LegendValue;
|
|
438
414
|
legendHoverBehavior?: (item: {
|
|
439
415
|
label: string;
|
|
440
416
|
} | null) => void;
|
|
@@ -9,6 +9,31 @@ export interface PhysicsEvidenceBinCount {
|
|
|
9
9
|
secondaryLabel?: string;
|
|
10
10
|
observed?: number;
|
|
11
11
|
}
|
|
12
|
+
/**
|
|
13
|
+
* Where every charged body ended up.
|
|
14
|
+
*
|
|
15
|
+
* Physics charts all share one deep structure — a charge enters, an apparatus
|
|
16
|
+
* routes it, and it comes to rest in destinations — so they all owe the same
|
|
17
|
+
* invariant: every body that entered is accounted for in exactly one place.
|
|
18
|
+
* That invariant is this family's "bars start at zero": it is what makes a
|
|
19
|
+
* settled projection an auditable reading rather than a claim about a movie.
|
|
20
|
+
*
|
|
21
|
+
* Supply `charge` (the total the chart says entered) and the evidence reports
|
|
22
|
+
* whether the world can still account for it.
|
|
23
|
+
*/
|
|
24
|
+
export interface PhysicsSettledLedger {
|
|
25
|
+
/** Total the chart claims entered the apparatus. */
|
|
26
|
+
charge: number;
|
|
27
|
+
/** Bodies live in the world when it came to rest. */
|
|
28
|
+
live: number;
|
|
29
|
+
/** Bodies the queue still owes and never admitted. */
|
|
30
|
+
queued: number;
|
|
31
|
+
/** Bodies retired into sediment by the body budget. */
|
|
32
|
+
sedimented: number;
|
|
33
|
+
/** `charge - (live + queued + sedimented)`. Non-zero means bodies vanished. */
|
|
34
|
+
unaccounted: number;
|
|
35
|
+
balanced: boolean;
|
|
36
|
+
}
|
|
12
37
|
export interface PhysicsSettledEvidence {
|
|
13
38
|
bodyCount: number;
|
|
14
39
|
sleepingCount: number;
|
|
@@ -16,10 +41,22 @@ export interface PhysicsSettledEvidence {
|
|
|
16
41
|
stepsRun: number;
|
|
17
42
|
seed: number;
|
|
18
43
|
binCounts: PhysicsEvidenceBinCount[];
|
|
44
|
+
/** Spawns still owed by the queue. Non-zero in a settled scene is a defect. */
|
|
45
|
+
queuedCount: number;
|
|
46
|
+
/** Bodies the body budget retired into sediment. */
|
|
47
|
+
sedimentedCount: number;
|
|
48
|
+
ledger?: PhysicsSettledLedger;
|
|
49
|
+
warnings: string[];
|
|
19
50
|
}
|
|
20
51
|
export interface PhysicsSettledEvidenceOptions {
|
|
21
52
|
bodies?: PhysicsBodyState[];
|
|
22
53
|
projectionRows?: PhysicsSettledProjectionRow[];
|
|
23
54
|
stepsRun?: number;
|
|
55
|
+
/**
|
|
56
|
+
* Total bodies the chart claims entered the apparatus. Pass it when the chart
|
|
57
|
+
* knows its own charge (a unitized total, a row count) to enable the ledger
|
|
58
|
+
* check. Omit it and the ledger is simply absent — never guessed.
|
|
59
|
+
*/
|
|
60
|
+
charge?: number;
|
|
24
61
|
}
|
|
25
62
|
export declare function buildPhysicsSettledEvidence(snapshot: PhysicsPipelineSnapshot, options?: PhysicsSettledEvidenceOptions): PhysicsSettledEvidence;
|
|
@@ -201,6 +201,7 @@ export declare class PhysicsKernelWorld {
|
|
|
201
201
|
private resolveStaticCollision;
|
|
202
202
|
private updateSensors;
|
|
203
203
|
private updateSleeping;
|
|
204
|
+
private contactOpposesGravity;
|
|
204
205
|
private wake;
|
|
205
206
|
/** Uses the deterministic PRNG for future jittered spawn helpers. */
|
|
206
207
|
nextRandom(): number;
|