semiotic 3.7.5 → 3.8.1

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.
Files changed (575) hide show
  1. package/CLAUDE.md +63 -18
  2. package/README.md +121 -27
  3. package/agent-skill/semiotic-charts/SKILL.md +146 -0
  4. package/ai/cli.js +133 -45
  5. package/ai/componentMetadata.cjs +6 -1
  6. package/ai/dist/mcp-server.js +1741 -163
  7. package/ai/examples.md +174 -0
  8. package/ai/schema.json +2733 -536
  9. package/ai/surface-manifest.json +201 -0
  10. package/ai/system-prompt.md +20 -4
  11. package/dist/__tests__/scenarios/mcpProtocolTypes.d.ts +20 -0
  12. package/dist/components/AccessibleNavTree.d.ts +7 -1
  13. package/dist/components/CategoryColors.d.ts +1 -1
  14. package/dist/components/ChartContainer.d.ts +91 -0
  15. package/dist/components/ChartGrid.d.ts +11 -1
  16. package/dist/components/CircularBrush.d.ts +61 -0
  17. package/dist/components/ContextLayout.d.ts +5 -1
  18. package/dist/components/DirectManipulationControl.d.ts +63 -0
  19. package/dist/components/LinkedCharts.d.ts +3 -1
  20. package/dist/components/MobileAnnotationCalloutList.d.ts +13 -0
  21. package/dist/components/MobileChartContainer.d.ts +51 -0
  22. package/dist/components/MobileStandardControls.d.ts +68 -0
  23. package/dist/components/SmallMultipleChart.d.ts +84 -0
  24. package/dist/components/Tooltip/FlippingTooltip.d.ts +21 -0
  25. package/dist/components/ai/ChartRecipe.d.ts +16 -0
  26. package/dist/components/ai/IntentMark.d.ts +15 -0
  27. package/dist/components/ai/chartCapabilities.d.ts +8 -1
  28. package/dist/components/ai/chartCapabilityTypes.d.ts +26 -1
  29. package/dist/components/ai/chartClinic.d.ts +91 -0
  30. package/dist/components/ai/chartClinicMetadata.generated.d.ts +15 -0
  31. package/dist/components/ai/chartRecipeRegistry.d.ts +14 -0
  32. package/dist/components/ai/chartRecipes.d.ts +278 -0
  33. package/dist/components/ai/dataPitfallsBridge.d.ts +102 -0
  34. package/dist/components/ai/describeChart.d.ts +7 -0
  35. package/dist/components/ai/describeRecipeChart.d.ts +16 -0
  36. package/dist/components/ai/generativeChart.d.ts +28 -3
  37. package/dist/components/ai/intentManifest.d.ts +62 -0
  38. package/dist/components/ai/navigationTree.d.ts +3 -0
  39. package/dist/components/ai/observedSceneAudit.d.ts +72 -0
  40. package/dist/components/ai/readerGrounding.d.ts +83 -0
  41. package/dist/components/ai/recipeCapability.d.ts +8 -0
  42. package/dist/components/ai/recipeNavigation.d.ts +13 -0
  43. package/dist/components/ai/recipeSemantics.d.ts +11 -0
  44. package/dist/components/ai/repairChartConfig.d.ts +9 -0
  45. package/dist/components/ai/suggestCharts.d.ts +11 -1
  46. package/dist/components/ai/useNavigationSync.d.ts +17 -2
  47. package/dist/components/chartContainerMobile.d.ts +9 -0
  48. package/dist/components/charts/custom/GeoCustomChart.d.ts +48 -0
  49. package/dist/components/charts/custom/NetworkCustomChart.d.ts +8 -2
  50. package/dist/components/charts/custom/OrdinalCustomChart.d.ts +8 -2
  51. package/dist/components/charts/custom/XYCustomChart.d.ts +11 -2
  52. package/dist/components/charts/geo/ChoroplethMap.d.ts +19 -2
  53. package/dist/components/charts/geo/DistanceCartogram.d.ts +15 -3
  54. package/dist/components/charts/geo/FlowMap.d.ts +11 -7
  55. package/dist/components/charts/geo/ProportionalSymbolMap.d.ts +15 -3
  56. package/dist/components/charts/geo/index.d.ts +2 -0
  57. package/dist/components/charts/index.d.ts +35 -1
  58. package/dist/components/charts/network/ChordDiagram.d.ts +10 -2
  59. package/dist/components/charts/network/CirclePack.d.ts +1 -1
  60. package/dist/components/charts/network/ForceDirectedGraph.d.ts +26 -5
  61. package/dist/components/charts/network/OrbitDiagram.d.ts +1 -1
  62. package/dist/components/charts/network/ProcessSankey.d.ts +1 -1
  63. package/dist/components/charts/network/SankeyDiagram.d.ts +10 -2
  64. package/dist/components/charts/network/TreeDiagram.d.ts +1 -1
  65. package/dist/components/charts/network/Treemap.d.ts +1 -1
  66. package/dist/components/charts/network/useForceLayout.d.ts +17 -0
  67. package/dist/components/charts/ordinal/BarChart.d.ts +22 -1
  68. package/dist/components/charts/ordinal/BoxPlot.d.ts +1 -1
  69. package/dist/components/charts/ordinal/DonutChart.d.ts +1 -1
  70. package/dist/components/charts/ordinal/DotPlot.d.ts +1 -1
  71. package/dist/components/charts/ordinal/FunnelChart.d.ts +1 -1
  72. package/dist/components/charts/ordinal/GroupedBarChart.d.ts +12 -1
  73. package/dist/components/charts/ordinal/Histogram.d.ts +1 -1
  74. package/dist/components/charts/ordinal/PieChart.d.ts +1 -1
  75. package/dist/components/charts/ordinal/RidgelinePlot.d.ts +1 -1
  76. package/dist/components/charts/ordinal/StackedBarChart.d.ts +12 -1
  77. package/dist/components/charts/ordinal/SwarmPlot.d.ts +1 -1
  78. package/dist/components/charts/ordinal/SwimlaneChart.d.ts +1 -1
  79. package/dist/components/charts/ordinal/ViolinPlot.d.ts +1 -1
  80. package/dist/components/charts/physics/ChainReactionChart.d.ts +9 -0
  81. package/dist/components/charts/physics/CollisionSwarmChart.capability.d.ts +2 -0
  82. package/dist/components/charts/physics/CollisionSwarmChart.d.ts +54 -0
  83. package/dist/components/charts/physics/EventDropChart.capability.d.ts +2 -0
  84. package/dist/components/charts/physics/EventDropChart.d.ts +60 -0
  85. package/dist/components/charts/physics/GaltonBoardChart.capability.d.ts +2 -0
  86. package/dist/components/charts/physics/GaltonBoardChart.d.ts +74 -0
  87. package/dist/components/charts/physics/GauntletChart.capability.d.ts +2 -0
  88. package/dist/components/charts/physics/GauntletChart.d.ts +73 -0
  89. package/dist/components/charts/physics/PhysicalFlowChart.capability.d.ts +2 -0
  90. package/dist/components/charts/physics/PhysicalFlowChart.d.ts +63 -0
  91. package/dist/components/charts/physics/PhysicsCustomChart.d.ts +99 -0
  92. package/dist/components/charts/physics/PhysicsPileChart.capability.d.ts +2 -0
  93. package/dist/components/charts/physics/PhysicsPileChart.d.ts +60 -0
  94. package/dist/components/charts/physics/ProcessFlowChart.capability.d.ts +2 -0
  95. package/dist/components/charts/physics/ProcessFlowChart.d.ts +96 -0
  96. package/dist/components/charts/physics/chainReactionOverlay.d.ts +22 -0
  97. package/dist/components/charts/physics/chainReactionRuntime.d.ts +37 -0
  98. package/dist/components/charts/physics/chainReactionTypes.d.ts +97 -0
  99. package/dist/components/charts/physics/collisionSwarmPhysics.d.ts +27 -0
  100. package/dist/components/charts/physics/dependencyMachine.d.ts +188 -0
  101. package/dist/components/charts/physics/eventDropPhysics.d.ts +64 -0
  102. package/dist/components/charts/physics/galtonBoardPhysics.d.ts +28 -0
  103. package/dist/components/charts/physics/gauntletChartProps.d.ts +67 -0
  104. package/dist/components/charts/physics/gauntletChrome.d.ts +33 -0
  105. package/dist/components/charts/physics/gauntletController.d.ts +73 -0
  106. package/dist/components/charts/physics/gauntletEffects.d.ts +36 -0
  107. package/dist/components/charts/physics/gauntletPhysics.d.ts +71 -0
  108. package/dist/components/charts/physics/gauntletRuntime.d.ts +42 -0
  109. package/dist/components/charts/physics/gauntletTypes.d.ts +213 -0
  110. package/dist/components/charts/physics/physicalFlowPhysics.d.ts +57 -0
  111. package/dist/components/charts/physics/physicsChartShared.d.ts +57 -0
  112. package/dist/components/charts/physics/physicsChartUtils.d.ts +18 -0
  113. package/dist/components/charts/physics/physicsCustomLayout.d.ts +32 -0
  114. package/dist/components/charts/physics/physicsEncoding.d.ts +142 -0
  115. package/dist/components/charts/physics/physicsHocHandle.d.ts +53 -0
  116. package/dist/components/charts/physics/physicsHocUtils.d.ts +128 -0
  117. package/dist/components/charts/physics/physicsPilePhysics.d.ts +41 -0
  118. package/dist/components/charts/physics/physicsProcessPrimitives.d.ts +38 -0
  119. package/dist/components/charts/physics/processFlowPhysics.d.ts +97 -0
  120. package/dist/components/charts/realtime/RealtimeHeatmap.d.ts +9 -1
  121. package/dist/components/charts/realtime/RealtimeHistogram.d.ts +9 -1
  122. package/dist/components/charts/realtime/RealtimeLineChart.d.ts +9 -1
  123. package/dist/components/charts/realtime/RealtimeSwarmChart.d.ts +16 -2
  124. package/dist/components/charts/realtime/RealtimeWaterfallChart.d.ts +9 -1
  125. package/dist/components/charts/shared/AnnotationLabel.d.ts +88 -0
  126. package/dist/components/charts/shared/annotationActivation.d.ts +35 -0
  127. package/dist/components/charts/shared/annotationLabelLayout.d.ts +5 -0
  128. package/dist/components/charts/shared/annotationRules.d.ts +2 -1
  129. package/dist/components/charts/shared/auditMobileVisualization.d.ts +91 -0
  130. package/dist/components/charts/shared/chartDefinitionPilot.d.ts +145 -0
  131. package/dist/components/charts/shared/chartFamilySets.d.ts +20 -0
  132. package/dist/components/charts/shared/chartSelectionUtils.d.ts +4 -0
  133. package/dist/components/charts/shared/chartSpecCore.d.ts +165 -0
  134. package/dist/components/charts/shared/chartSpecs.d.ts +8 -127
  135. package/dist/components/charts/shared/chartSpecsGeo.d.ts +2 -0
  136. package/dist/components/charts/shared/chartSpecsNetwork.d.ts +2 -0
  137. package/dist/components/charts/shared/chartSpecsOrdinal.d.ts +2 -0
  138. package/dist/components/charts/shared/chartSpecsPhysics.d.ts +2 -0
  139. package/dist/components/charts/shared/chartSpecsRealtime.d.ts +2 -0
  140. package/dist/components/charts/shared/chartSpecsValue.d.ts +2 -0
  141. package/dist/components/charts/shared/chartSpecsXY.d.ts +2 -0
  142. package/dist/components/charts/shared/colorContrast.d.ts +3 -0
  143. package/dist/components/charts/shared/colorUtils.d.ts +16 -1
  144. package/dist/components/charts/shared/datumTypes.d.ts +2 -0
  145. package/dist/components/charts/shared/diagnoseAnnotationChecks.d.ts +6 -0
  146. package/dist/components/charts/shared/diagnoseConfig.d.ts +9 -14
  147. package/dist/components/charts/shared/diagnoseMisleadingChecks.d.ts +9 -0
  148. package/dist/components/charts/shared/diagnosePhysicsChecks.d.ts +3 -0
  149. package/dist/components/charts/shared/diagnoseTypes.d.ts +10 -0
  150. package/dist/components/charts/shared/formatUtils.d.ts +3 -3
  151. package/dist/components/charts/shared/hatchFill.d.ts +87 -0
  152. package/dist/components/charts/shared/hooks.d.ts +34 -10
  153. package/dist/components/charts/shared/knownChartComponents.d.ts +9 -0
  154. package/dist/components/charts/shared/leastSquaresRegression.d.ts +16 -0
  155. package/dist/components/charts/shared/mergeShapeStyle.d.ts +3 -2
  156. package/dist/components/charts/shared/motionEncoding.d.ts +145 -0
  157. package/dist/components/charts/shared/responsiveRules.d.ts +56 -0
  158. package/dist/components/charts/shared/semanticInteractions.d.ts +42 -0
  159. package/dist/components/charts/shared/sparseArray.d.ts +1 -1
  160. package/dist/components/charts/shared/streamPropsHelpers.d.ts +17 -5
  161. package/dist/components/charts/shared/styleRules.d.ts +205 -0
  162. package/dist/components/charts/shared/temporalStrings.d.ts +7 -0
  163. package/dist/components/charts/shared/tooltipUtils.d.ts +22 -9
  164. package/dist/components/charts/shared/types.d.ts +58 -7
  165. package/dist/components/charts/shared/useAreaSeriesSetup.d.ts +16 -2
  166. package/dist/components/charts/shared/useChartSetup.d.ts +11 -4
  167. package/dist/components/charts/shared/useCustomChartSetup.d.ts +17 -5
  168. package/dist/components/charts/shared/useFrameImperativeHandle.d.ts +1 -2
  169. package/dist/components/charts/shared/useLikertAggregation.d.ts +4 -4
  170. package/dist/components/charts/shared/useNetworkChartSetup.d.ts +6 -2
  171. package/dist/components/charts/shared/useOrdinalBrush.d.ts +2 -1
  172. package/dist/components/charts/shared/useOrdinalPieceStyle.d.ts +25 -2
  173. package/dist/components/charts/shared/useStreamingLegend.d.ts +2 -2
  174. package/dist/components/charts/shared/useSyncedPushData.d.ts +49 -0
  175. package/dist/components/charts/shared/useXYLineStyle.d.ts +10 -0
  176. package/dist/components/charts/shared/useXYPointStyle.d.ts +19 -1
  177. package/dist/components/charts/shared/validateChartData.d.ts +7 -5
  178. package/dist/components/charts/shared/validationMap.d.ts +7 -9
  179. package/dist/components/charts/shared/validationMap.generated.d.ts +6 -0
  180. package/dist/components/charts/shared/withChartWrapper.d.ts +4 -3
  181. package/dist/components/charts/value/targetPresentation.d.ts +22 -0
  182. package/dist/components/charts/value/types.d.ts +5 -6
  183. package/dist/components/charts/xy/AreaChart.d.ts +9 -1
  184. package/dist/components/charts/xy/BubbleChart.d.ts +10 -1
  185. package/dist/components/charts/xy/ConnectedScatterplot.d.ts +7 -0
  186. package/dist/components/charts/xy/DifferenceChart.d.ts +1 -52
  187. package/dist/components/charts/xy/Heatmap.d.ts +2 -2
  188. package/dist/components/charts/xy/LineChart.d.ts +12 -1
  189. package/dist/components/charts/xy/MinimapChart.d.ts +1 -1
  190. package/dist/components/charts/xy/MultiAxisLineChart.d.ts +2 -2
  191. package/dist/components/charts/xy/QuadrantChart.d.ts +8 -1
  192. package/dist/components/charts/xy/Scatterplot.d.ts +11 -1
  193. package/dist/components/charts/xy/ScatterplotMatrix.d.ts +11 -1
  194. package/dist/components/charts/xy/StackedAreaChart.d.ts +16 -4
  195. package/dist/components/charts/xy/differenceSegments.d.ts +49 -0
  196. package/dist/components/charts/xy/scatterplotMatrixInteractionTypes.d.ts +12 -0
  197. package/dist/components/controls/SentenceFilter.d.ts +97 -0
  198. package/dist/components/controls/controlAudit.d.ts +24 -0
  199. package/dist/components/controls/controlContract.d.ts +57 -0
  200. package/dist/components/data/fromFlintChart.d.ts +74 -0
  201. package/dist/components/data/fromVegaLite.d.ts +46 -9
  202. package/dist/components/data/portability/index.d.ts +6 -3
  203. package/dist/components/data/portability/result.d.ts +52 -0
  204. package/dist/components/data/portability/spec.d.ts +31 -0
  205. package/dist/components/data/portability/vegaLite.d.ts +24 -6
  206. package/dist/components/export/chartConfig.d.ts +11 -0
  207. package/dist/components/realtime/types.d.ts +11 -0
  208. package/dist/components/recipes/annotationLayout.d.ts +29 -0
  209. package/dist/components/recipes/axisFixedForce.d.ts +119 -0
  210. package/dist/components/recipes/{gofishBoba.d.ts → boba.d.ts} +2 -2
  211. package/dist/components/recipes/cyclical.d.ts +39 -0
  212. package/dist/components/recipes/edgeRouter.d.ts +103 -0
  213. package/dist/components/recipes/forceLayout.d.ts +48 -0
  214. package/dist/components/recipes/forceLayoutAsync.d.ts +17 -0
  215. package/dist/components/recipes/gofishBobaHandwritten.d.ts +3 -0
  216. package/dist/components/recipes/gofishDisplayListFixtures.generated.d.ts +37 -0
  217. package/dist/components/recipes/gofishIR.d.ts +178 -132
  218. package/dist/components/recipes/gofishIRExamples.d.ts +30 -81
  219. package/dist/components/recipes/intervalLanes.d.ts +87 -0
  220. package/dist/components/recipes/intervals.d.ts +80 -0
  221. package/dist/components/recipes/isometricLandmarks.d.ts +88 -0
  222. package/dist/components/recipes/isotypeGlyphs.d.ts +17 -0
  223. package/dist/components/recipes/mobileAnnotationStrategy.d.ts +48 -0
  224. package/dist/components/recipes/mobileChartFamilyRecipes.d.ts +59 -0
  225. package/dist/components/recipes/networkAnalysis.d.ts +102 -0
  226. package/dist/components/recipes/networkLayouts.d.ts +83 -0
  227. package/dist/components/recipes/physics.d.ts +122 -0
  228. package/dist/components/recipes/physicsReference.d.ts +102 -0
  229. package/dist/components/recipes/processAggregates.d.ts +32 -0
  230. package/dist/components/recipes/processChrome.d.ts +67 -0
  231. package/dist/components/recipes/processJourney.d.ts +54 -0
  232. package/dist/components/recipes/processPhysics.d.ts +300 -0
  233. package/dist/components/recipes/processVolumeGeometry.d.ts +28 -0
  234. package/dist/components/recipes/radialCoords.d.ts +69 -0
  235. package/dist/components/recipes/random.d.ts +2 -0
  236. package/dist/components/recipes/recipeChrome.d.ts +91 -0
  237. package/dist/components/recipes/recipeGlyph.d.ts +42 -0
  238. package/dist/components/recipes/recipeLegend.d.ts +53 -1
  239. package/dist/components/recipes/recipeUtils.d.ts +52 -0
  240. package/dist/components/recipes/runs.d.ts +59 -0
  241. package/dist/components/recipes/tokenEncoding.d.ts +157 -0
  242. package/dist/components/recipes/tokenLayer.d.ts +79 -0
  243. package/dist/components/recipes/unitize.d.ts +108 -0
  244. package/dist/components/recipes/vector.d.ts +28 -0
  245. package/dist/components/recipes/waffle.d.ts +43 -0
  246. package/dist/components/rough/createRoughRenderMode.d.ts +46 -0
  247. package/dist/components/semiotic-ai-core.d.ts +47 -0
  248. package/dist/components/semiotic-ai.d.ts +53 -9
  249. package/dist/components/semiotic-controls.d.ts +20 -0
  250. package/dist/components/semiotic-experimental.d.ts +38 -9
  251. package/dist/components/semiotic-geo.d.ts +15 -0
  252. package/dist/components/semiotic-network.d.ts +15 -0
  253. package/dist/components/semiotic-ordinal.d.ts +14 -0
  254. package/dist/components/semiotic-physics-matter.d.ts +10 -0
  255. package/dist/components/semiotic-physics-rapier.d.ts +9 -0
  256. package/dist/components/semiotic-physics.d.ts +60 -0
  257. package/dist/components/semiotic-realtime-core.d.ts +34 -0
  258. package/dist/components/semiotic-realtime-react.d.ts +10 -0
  259. package/dist/components/semiotic-realtime.d.ts +4 -30
  260. package/dist/components/semiotic-recipes-core.d.ts +92 -0
  261. package/dist/components/semiotic-recipes-react.d.ts +7 -0
  262. package/dist/components/semiotic-recipes.d.ts +4 -43
  263. package/dist/components/semiotic-rough.d.ts +4 -0
  264. package/dist/components/semiotic-server-edge.d.ts +8 -0
  265. package/dist/components/semiotic-server-node.d.ts +5 -0
  266. package/dist/components/semiotic-server.d.ts +2 -2
  267. package/dist/components/semiotic-themes-core.d.ts +53 -0
  268. package/dist/components/semiotic-themes-react.d.ts +4 -0
  269. package/dist/components/semiotic-themes.d.ts +6 -76
  270. package/dist/components/semiotic-utils-core.d.ts +50 -0
  271. package/dist/components/semiotic-utils-react.d.ts +5 -0
  272. package/dist/components/semiotic-utils.d.ts +3 -39
  273. package/dist/components/semiotic-xy.d.ts +12 -0
  274. package/dist/components/semiotic.d.ts +44 -8
  275. package/dist/components/server/animatedGif.d.ts +36 -0
  276. package/dist/components/server/optionalImageTypes.d.ts +37 -0
  277. package/dist/components/server/renderEvidence.d.ts +1 -1
  278. package/dist/components/server/renderToStaticSVG.d.ts +3 -35
  279. package/dist/components/server/serverChartConfigShared.d.ts +21 -0
  280. package/dist/components/server/serverChartConfigs.d.ts +22 -12
  281. package/dist/components/server/serverChartConfigsCustom.d.ts +5 -0
  282. package/dist/components/server/serverChartConfigsGeo.d.ts +9 -0
  283. package/dist/components/server/serverChartConfigsNetwork.d.ts +8 -0
  284. package/dist/components/server/serverChartConfigsOrdinal.d.ts +16 -0
  285. package/dist/components/server/serverChartConfigsPhysics.d.ts +9 -0
  286. package/dist/components/server/serverChartConfigsXY.d.ts +11 -0
  287. package/dist/components/server/staticAnnotations.d.ts +6 -3
  288. package/dist/components/server/staticGeo.d.ts +4 -0
  289. package/dist/components/server/staticLegend.d.ts +2 -2
  290. package/dist/components/server/staticNetwork.d.ts +8 -0
  291. package/dist/components/server/staticOrdinal.d.ts +11 -0
  292. package/dist/components/server/staticPhysics.d.ts +3 -0
  293. package/dist/components/server/staticSVGChrome.d.ts +110 -0
  294. package/dist/components/server/staticXY.d.ts +4 -0
  295. package/dist/components/store/ObservationStore.d.ts +23 -2
  296. package/dist/components/store/themeSerialization.d.ts +32 -0
  297. package/dist/components/store/useChartInterrogation.d.ts +9 -0
  298. package/dist/components/stream/AccessibleDataTable.d.ts +7 -23
  299. package/dist/components/stream/AriaLiveTooltip.d.ts +9 -0
  300. package/dist/components/stream/CanvasHitTester.d.ts +4 -4
  301. package/dist/components/stream/DataSourceAdapter.d.ts +1 -1
  302. package/dist/components/stream/FocusRing.d.ts +4 -2
  303. package/dist/components/stream/FrameRuntime.d.ts +57 -0
  304. package/dist/components/stream/GeoCanvasHitTester.d.ts +1 -1
  305. package/dist/components/stream/GeoParticlePool.d.ts +1 -1
  306. package/dist/components/stream/GeoPipelineStore.d.ts +62 -3
  307. package/dist/components/stream/GeoSVGOverlay.d.ts +64 -0
  308. package/dist/components/stream/NetworkCanvasHitTester.d.ts +2 -1
  309. package/dist/components/stream/NetworkPipelineStore.d.ts +44 -36
  310. package/dist/components/stream/NetworkSSRFrame.d.ts +17 -0
  311. package/dist/components/stream/NetworkSVGOverlay.d.ts +10 -1
  312. package/dist/components/stream/OrdinalCanvasHitTester.d.ts +2 -2
  313. package/dist/components/stream/OrdinalPipelineStore.d.ts +55 -11
  314. package/dist/components/stream/OrdinalSVGOverlay.d.ts +9 -1
  315. package/dist/components/stream/OrdinalStyleResolver.d.ts +12 -0
  316. package/dist/components/stream/ParticlePool.d.ts +1 -1
  317. package/dist/components/stream/PipelineStore.d.ts +81 -174
  318. package/dist/components/stream/SVGOverlay.d.ts +6 -0
  319. package/dist/components/stream/SceneGraph.d.ts +12 -4
  320. package/dist/components/stream/StreamGeoFrame.d.ts +1 -1
  321. package/dist/components/stream/StreamNetworkFrame.d.ts +1 -1
  322. package/dist/components/stream/StreamOrdinalFrame.d.ts +1 -1
  323. package/dist/components/stream/StreamXYFrame.d.ts +2 -18
  324. package/dist/components/stream/accessibleDataRows.d.ts +33 -0
  325. package/dist/components/stream/accessorUtils.d.ts +25 -12
  326. package/dist/components/stream/annotationAccessorResolver.d.ts +2 -2
  327. package/dist/components/stream/brushAccessibility.d.ts +25 -0
  328. package/dist/components/stream/canvasBackground.d.ts +24 -0
  329. package/dist/components/stream/canvasSetup.d.ts +4 -1
  330. package/dist/components/stream/customLayoutFailure.d.ts +33 -0
  331. package/dist/components/stream/customLayoutPalette.d.ts +19 -9
  332. package/dist/components/stream/frameGraphics.d.ts +4 -0
  333. package/dist/components/stream/frameKeyboardNavigation.d.ts +45 -0
  334. package/dist/components/stream/frameThemeColors.d.ts +24 -0
  335. package/dist/components/stream/geoAnnotationAnchors.d.ts +14 -0
  336. package/dist/components/stream/geoCartogram.d.ts +17 -0
  337. package/dist/components/stream/geoCustomLayout.d.ts +59 -0
  338. package/dist/components/stream/geoDefaultTooltip.d.ts +11 -0
  339. package/dist/components/stream/geoFrameHelpers.d.ts +34 -0
  340. package/dist/components/stream/geoPipelineHelpers.d.ts +46 -0
  341. package/dist/components/stream/geoPipelineUpdateResults.d.ts +34 -0
  342. package/dist/components/stream/geoSceneBuilder.d.ts +16 -0
  343. package/dist/components/stream/geoTypes.d.ts +97 -15
  344. package/dist/components/stream/glyphDef.d.ts +98 -0
  345. package/dist/components/stream/hitTarget.d.ts +170 -0
  346. package/dist/components/stream/hitTestUtils.d.ts +2 -2
  347. package/dist/components/stream/hoverUtils.d.ts +7 -2
  348. package/dist/components/stream/keyboardNav.d.ts +4 -1
  349. package/dist/components/stream/layouts/forceLayoutPlugin.d.ts +9 -1
  350. package/dist/components/stream/layouts/forceLayoutWorkerClient.d.ts +58 -0
  351. package/dist/components/stream/layouts/hierarchyUtils.d.ts +2 -2
  352. package/dist/components/stream/networkBezier.d.ts +10 -0
  353. package/dist/components/stream/networkColorAccessors.d.ts +49 -0
  354. package/dist/components/stream/networkCustomLayoutRunner.d.ts +23 -0
  355. package/dist/components/stream/networkCustomRestyle.d.ts +15 -0
  356. package/dist/components/stream/networkDefaultTooltip.d.ts +10 -0
  357. package/dist/components/stream/networkFrameAnimation.d.ts +7 -0
  358. package/dist/components/stream/networkFrameHandleTypes.d.ts +39 -0
  359. package/dist/components/stream/networkFrameInteraction.d.ts +37 -0
  360. package/dist/components/stream/networkFrameObservations.d.ts +15 -0
  361. package/dist/components/stream/networkFramePaint.d.ts +52 -0
  362. package/dist/components/stream/networkInteractionTypes.d.ts +26 -0
  363. package/dist/components/stream/networkPipelineConfig.d.ts +22 -0
  364. package/dist/components/stream/networkPipelineHelpers.d.ts +12 -0
  365. package/dist/components/stream/networkPipelineUpdateResults.d.ts +38 -0
  366. package/dist/components/stream/networkRealtimeEncoding.d.ts +41 -0
  367. package/dist/components/stream/networkTypes.d.ts +103 -51
  368. package/dist/components/stream/ordinalCanvasRenderers.d.ts +7 -0
  369. package/dist/components/stream/ordinalDataIndex.d.ts +5 -0
  370. package/dist/components/stream/ordinalDefaultTooltip.d.ts +10 -0
  371. package/dist/components/stream/ordinalDomain.d.ts +38 -0
  372. package/dist/components/stream/ordinalPipelineUpdateResults.d.ts +31 -0
  373. package/dist/components/stream/ordinalPulse.d.ts +10 -0
  374. package/dist/components/stream/ordinalPulseResources.d.ts +3 -0
  375. package/dist/components/stream/ordinalSceneBuilders/sceneBuilderMap.d.ts +5 -0
  376. package/dist/components/stream/ordinalSceneBuilders/types.d.ts +2 -2
  377. package/dist/components/stream/ordinalSpatialIndex.d.ts +9 -0
  378. package/dist/components/stream/ordinalTypes.d.ts +68 -9
  379. package/dist/components/stream/paintNeeds.d.ts +31 -0
  380. package/dist/components/stream/physics/CapacityQueueController.d.ts +5 -0
  381. package/dist/components/stream/physics/CapacityQueueTypes.d.ts +134 -0
  382. package/dist/components/stream/physics/MatterPhysicsEngineAdapter.d.ts +42 -0
  383. package/dist/components/stream/physics/PhysicsAccessibility.d.ts +48 -0
  384. package/dist/components/stream/physics/PhysicsAnnotations.d.ts +58 -0
  385. package/dist/components/stream/physics/PhysicsBodyBudget.d.ts +26 -0
  386. package/dist/components/stream/physics/PhysicsBodySpatialIndex.d.ts +10 -0
  387. package/dist/components/stream/physics/PhysicsCanvasTheme.d.ts +26 -0
  388. package/dist/components/stream/physics/PhysicsControllers.d.ts +75 -0
  389. package/dist/components/stream/physics/PhysicsEngineAdapter.d.ts +59 -0
  390. package/dist/components/stream/physics/PhysicsEngineConformance.d.ts +23 -0
  391. package/dist/components/stream/physics/PhysicsEvidence.d.ts +25 -0
  392. package/dist/components/stream/physics/PhysicsKernel.d.ts +207 -0
  393. package/dist/components/stream/physics/PhysicsOptionalEngineAdapters.d.ts +12 -0
  394. package/dist/components/stream/physics/PhysicsPipelineStore.d.ts +86 -0
  395. package/dist/components/stream/physics/PhysicsPipelineTypes.d.ts +181 -0
  396. package/dist/components/stream/physics/PhysicsSVGOverlay.d.ts +78 -0
  397. package/dist/components/stream/physics/PhysicsSediment.d.ts +69 -0
  398. package/dist/components/stream/physics/PhysicsSettledSVG.d.ts +18 -0
  399. package/dist/components/stream/physics/PhysicsSettledScene.d.ts +21 -0
  400. package/dist/components/stream/physics/PhysicsWorkerClient.d.ts +24 -0
  401. package/dist/components/stream/physics/PhysicsWorkerProtocol.d.ts +101 -0
  402. package/dist/components/stream/physics/PhysicsWorkerRuntime.d.ts +5 -0
  403. package/dist/components/stream/physics/RapierPhysicsEngineAdapter.d.ts +18 -0
  404. package/dist/components/stream/physics/ServiceOperationsControllers.d.ts +27 -0
  405. package/dist/components/stream/physics/ServiceOperationsTypes.d.ts +89 -0
  406. package/dist/components/stream/physics/StreamPhysicsFrame.d.ts +6 -0
  407. package/dist/components/stream/physics/StreamPhysicsTypes.d.ts +317 -0
  408. package/dist/components/stream/physics/physicsBodyCanvas.d.ts +27 -0
  409. package/dist/components/stream/physics/physicsFrameObservations.d.ts +19 -0
  410. package/dist/components/stream/physics/physicsFrameSetup.d.ts +4 -0
  411. package/dist/components/stream/physics/physicsPipelineControls.d.ts +4 -0
  412. package/dist/components/stream/physics/physicsPipelineHelpers.d.ts +41 -0
  413. package/dist/components/stream/physics/physicsPipelineObservations.d.ts +14 -0
  414. package/dist/components/stream/physics/physicsPipelineUpdateResults.d.ts +27 -0
  415. package/dist/components/stream/physics/physicsRegionRuntime.d.ts +54 -0
  416. package/dist/components/stream/physics/physicsSemanticUI.d.ts +20 -0
  417. package/dist/components/stream/physics/usePhysicsFrameLifecyclePolicy.d.ts +18 -0
  418. package/dist/components/stream/pipelineBufferUtils.d.ts +26 -0
  419. package/dist/components/stream/pipelineConfig.d.ts +179 -0
  420. package/dist/components/stream/pipelineDecay.d.ts +21 -3
  421. package/dist/components/stream/pipelineDomainResolution.d.ts +62 -0
  422. package/dist/components/stream/pipelineIdentityOps.d.ts +26 -0
  423. package/dist/components/stream/pipelinePulse.d.ts +17 -3
  424. package/dist/components/stream/pipelineRibbons.d.ts +41 -0
  425. package/dist/components/stream/pipelineSpatialIndex.d.ts +12 -0
  426. package/dist/components/stream/pipelineStoreUpdateResults.d.ts +33 -0
  427. package/dist/components/stream/pipelineStyleResolvers.d.ts +46 -0
  428. package/dist/components/stream/pipelineTransitions.d.ts +3 -1
  429. package/dist/components/stream/pipelineUpdateContract.d.ts +69 -0
  430. package/dist/components/stream/pipelineUpdateStore.d.ts +21 -0
  431. package/dist/components/stream/pulseFrameRefresh.d.ts +22 -0
  432. package/dist/components/stream/renderBackend.d.ts +27 -0
  433. package/dist/components/stream/renderers/canvasRenderHelpers.d.ts +15 -1
  434. package/dist/components/stream/renderers/geoCanvasRenderer.d.ts +3 -2
  435. package/dist/components/stream/renderers/glyphCanvasRenderer.d.ts +6 -0
  436. package/dist/components/stream/renderers/networkParticleRenderer.d.ts +1 -1
  437. package/dist/components/stream/renderers/resolveCSSColor.d.ts +6 -0
  438. package/dist/components/stream/sceneRenderBackendTypes.d.ts +28 -0
  439. package/dist/components/stream/sceneRevisionDiagnostics.d.ts +45 -0
  440. package/dist/components/stream/streamSemanticTypes.d.ts +16 -0
  441. package/dist/components/stream/streamStoreSync.d.ts +37 -0
  442. package/dist/components/stream/streamThemeTypes.d.ts +14 -0
  443. package/dist/components/stream/svgOverlayUtils.d.ts +10 -0
  444. package/dist/components/stream/test-utils/frameScheduler.d.ts +12 -0
  445. package/dist/components/stream/test-utils/revisionConsumption.d.ts +13 -0
  446. package/dist/components/stream/titleLayout.d.ts +31 -0
  447. package/dist/components/stream/types.d.ts +165 -72
  448. package/dist/components/stream/useCanvasFrameHost.d.ts +71 -0
  449. package/dist/components/stream/useFrame.d.ts +44 -2
  450. package/dist/components/stream/useHydration.d.ts +6 -0
  451. package/dist/components/stream/useLegendCategoryEmission.d.ts +5 -0
  452. package/dist/components/stream/useSemanticFrameInteractions.d.ts +22 -0
  453. package/dist/components/stream/useUpdateResultSnapshot.d.ts +7 -0
  454. package/dist/components/stream/workerModuleUrl.d.ts +10 -0
  455. package/dist/components/stream/xyAnnotationAnchors.d.ts +13 -0
  456. package/dist/components/stream/xyCanvasRenderers.d.ts +7 -0
  457. package/dist/components/stream/xyCrosshair.d.ts +11 -0
  458. package/dist/components/stream/xyDateTicks.d.ts +9 -0
  459. package/dist/components/stream/xyDefaultTooltip.d.ts +10 -0
  460. package/dist/components/stream/xyFrameAxisTypes.d.ts +50 -0
  461. package/dist/components/stream/xySceneBuilders/types.d.ts +10 -9
  462. package/dist/controls.min.js +2 -0
  463. package/dist/controls.module.min.js +2 -0
  464. package/dist/forceLayoutWorker.js +1 -0
  465. package/dist/geo.min.js +1 -1
  466. package/dist/geo.module.min.js +1 -1
  467. package/dist/network.min.js +1 -1
  468. package/dist/network.module.min.js +1 -1
  469. package/dist/ordinal.min.js +1 -1
  470. package/dist/ordinal.module.min.js +1 -1
  471. package/dist/physics-matter.min.js +1 -0
  472. package/dist/physics-matter.module.min.js +1 -0
  473. package/dist/physics-rapier.min.js +1 -0
  474. package/dist/physics-rapier.module.min.js +1 -0
  475. package/dist/physics.min.js +2 -0
  476. package/dist/physics.module.min.js +2 -0
  477. package/dist/physicsWorker.js +1 -0
  478. package/dist/realtime.min.js +1 -1
  479. package/dist/realtime.module.min.js +1 -1
  480. package/dist/rough.min.js +1 -0
  481. package/dist/rough.module.min.js +1 -0
  482. package/dist/semiotic-ai-chunk-OG7BQUUW.module.min.js +2 -0
  483. package/dist/semiotic-ai-core.d.ts +47 -0
  484. package/dist/semiotic-ai-core.min.js +1 -0
  485. package/dist/semiotic-ai-core.module.min.js +1 -0
  486. package/dist/semiotic-ai-statisticalOverlays-CY4WKR4A.module.min.js +2 -0
  487. package/dist/semiotic-ai.d.ts +53 -9
  488. package/dist/semiotic-ai.min.js +1 -1
  489. package/dist/semiotic-ai.module.min.js +1 -1
  490. package/dist/semiotic-chunk-3FSVZ46U.module.min.js +2 -0
  491. package/dist/semiotic-controls.d.ts +20 -0
  492. package/dist/semiotic-data.min.js +1 -1
  493. package/dist/semiotic-data.module.min.js +1 -1
  494. package/dist/semiotic-experimental.d.ts +38 -9
  495. package/dist/semiotic-experimental.min.js +1 -1
  496. package/dist/semiotic-experimental.module.min.js +1 -1
  497. package/dist/semiotic-geo.d.ts +15 -0
  498. package/dist/semiotic-network.d.ts +15 -0
  499. package/dist/semiotic-ordinal.d.ts +14 -0
  500. package/dist/semiotic-physics-matter.d.ts +10 -0
  501. package/dist/semiotic-physics-rapier.d.ts +9 -0
  502. package/dist/semiotic-physics.d.ts +60 -0
  503. package/dist/semiotic-realtime-core.d.ts +34 -0
  504. package/dist/semiotic-realtime-core.min.js +1 -0
  505. package/dist/semiotic-realtime-core.module.min.js +1 -0
  506. package/dist/semiotic-realtime-react.d.ts +10 -0
  507. package/dist/semiotic-realtime-react.min.js +2 -0
  508. package/dist/semiotic-realtime-react.module.min.js +2 -0
  509. package/dist/semiotic-realtime.d.ts +4 -30
  510. package/dist/semiotic-recipes-core.d.ts +92 -0
  511. package/dist/semiotic-recipes-core.min.js +1 -0
  512. package/dist/semiotic-recipes-core.module.min.js +1 -0
  513. package/dist/semiotic-recipes-react.d.ts +7 -0
  514. package/dist/semiotic-recipes-react.min.js +2 -0
  515. package/dist/semiotic-recipes-react.module.min.js +2 -0
  516. package/dist/semiotic-recipes.d.ts +4 -43
  517. package/dist/semiotic-recipes.min.js +1 -1
  518. package/dist/semiotic-recipes.module.min.js +1 -1
  519. package/dist/semiotic-rough.d.ts +4 -0
  520. package/dist/semiotic-server-edge.d.ts +8 -0
  521. package/dist/semiotic-server-edge.min.js +1 -0
  522. package/dist/semiotic-server-edge.module.min.js +1 -0
  523. package/dist/semiotic-server-node.d.ts +5 -0
  524. package/dist/semiotic-server-node.min.js +1 -0
  525. package/dist/semiotic-server-node.module.min.js +1 -0
  526. package/dist/semiotic-server.d.ts +2 -2
  527. package/dist/semiotic-statisticalOverlays-UOMSFKVJ.module.min.js +2 -0
  528. package/dist/semiotic-themes-core.d.ts +53 -0
  529. package/dist/semiotic-themes-core.min.js +1 -0
  530. package/dist/semiotic-themes-core.module.min.js +1 -0
  531. package/dist/semiotic-themes-react.d.ts +4 -0
  532. package/dist/semiotic-themes-react.min.js +2 -0
  533. package/dist/semiotic-themes-react.module.min.js +2 -0
  534. package/dist/semiotic-themes.d.ts +6 -76
  535. package/dist/semiotic-themes.min.js +1 -2
  536. package/dist/semiotic-themes.module.min.js +1 -2
  537. package/dist/semiotic-utils-core.d.ts +50 -0
  538. package/dist/semiotic-utils-core.min.js +1 -0
  539. package/dist/semiotic-utils-core.module.min.js +1 -0
  540. package/dist/semiotic-utils-react.d.ts +5 -0
  541. package/dist/semiotic-utils-react.min.js +2 -0
  542. package/dist/semiotic-utils-react.module.min.js +2 -0
  543. package/dist/semiotic-utils.d.ts +3 -39
  544. package/dist/semiotic-utils.min.js +1 -2
  545. package/dist/semiotic-utils.module.min.js +1 -2
  546. package/dist/semiotic-value.min.js +1 -1
  547. package/dist/semiotic-value.module.min.js +1 -1
  548. package/dist/semiotic-xy.d.ts +12 -0
  549. package/dist/semiotic.d.ts +44 -8
  550. package/dist/semiotic.min.js +1 -1
  551. package/dist/semiotic.module.min.js +1 -1
  552. package/dist/server.min.js +1 -1
  553. package/dist/server.module.min.js +1 -1
  554. package/dist/test-utils/capturedFrameProps.d.ts +67 -0
  555. package/dist/test-utils/frameMock.d.ts +12 -9
  556. package/dist/xy-chunk-IWD6IB6V.module.min.js +2 -0
  557. package/dist/xy-statisticalOverlays-7RWG6LJT.module.min.js +2 -0
  558. package/dist/xy.min.js +1 -1
  559. package/dist/xy.module.min.js +1 -1
  560. package/package.json +259 -88
  561. package/spec/README.md +152 -0
  562. package/spec/bindings/README.md +35 -0
  563. package/spec/bindings/vega-lite.mjs +112 -0
  564. package/spec/v0.1/annotation-provenance.schema.json +127 -0
  565. package/spec/v0.1/audience-profile.schema.json +67 -0
  566. package/spec/v0.1/chart-capability.schema.json +186 -0
  567. package/dist/components/recipes/gofish.d.ts +0 -207
  568. package/dist/components/recipes/gofishInterpreter.d.ts +0 -52
  569. package/dist/components/recipes/gofishLambdas.d.ts +0 -145
  570. package/dist/semiotic-ai-semiotic-ai-u954ylUn.js +0 -2
  571. package/dist/semiotic-ai-statisticalOverlays-CU7jW05Q.js +0 -1
  572. package/dist/semiotic-semiotic-BmrYbi99.js +0 -2
  573. package/dist/semiotic-statisticalOverlays-IjZw8Lsu.js +0 -1
  574. package/dist/xy-semiotic-xy-Dufu3D0-.js +0 -2
  575. package/dist/xy-statisticalOverlays-3Ni9bRph.js +0 -1
@@ -0,0 +1,91 @@
1
+ import type { Datum } from "./datumTypes";
2
+ /**
3
+ * auditMobileVisualization - static mobile-readiness triage for Semiotic chart
4
+ * configurations.
5
+ *
6
+ * This is deliberately conservative: it does not inspect the DOM, resolved CSS,
7
+ * measured labels, rendered annotation boxes, or real input behavior. It flags
8
+ * risks that can be inferred from config/data and routes the rest to manual
9
+ * mobile review. Treat it like auditAccessibility: useful before render, useful
10
+ * for agents, not a certification.
11
+ */
12
+ export type MobileAuditStatus = "pass" | "warn" | "manual" | "not-applicable";
13
+ export type MobileAuditCategory = "layout" | "density" | "interaction" | "annotation" | "semantics";
14
+ export type MobileAuditImpact = "high" | "medium" | "low";
15
+ export interface MobileVisualizationFinding {
16
+ /** Stable id, e.g. "layout.fixed-desktop-size". */
17
+ id: string;
18
+ category: MobileAuditCategory;
19
+ status: MobileAuditStatus;
20
+ impact: MobileAuditImpact;
21
+ message: string;
22
+ fix?: string;
23
+ }
24
+ export interface MobileVisualizationAuditResult {
25
+ component: string;
26
+ viewportWidth: number;
27
+ /** True when no high-impact warning is present. */
28
+ ok: boolean;
29
+ summary: {
30
+ highRisk: number;
31
+ warnings: number;
32
+ manual: number;
33
+ passes: number;
34
+ };
35
+ findings: MobileVisualizationFinding[];
36
+ reference: string;
37
+ }
38
+ export interface AuditMobileVisualizationOptions {
39
+ /**
40
+ * Width to audit against. Defaults to 390px, a common modern phone CSS
41
+ * viewport width. Run multiple widths in CI for stronger coverage.
42
+ */
43
+ viewportWidth?: number;
44
+ /**
45
+ * Minimum acceptable pointer target. WCAG 2.2 Target Size (Minimum) is 24px;
46
+ * 44px is the comfortable phone target used here by default.
47
+ */
48
+ targetSize?: number;
49
+ /**
50
+ * Whether the chart is wrapped in a container that can provide summary text,
51
+ * controls, caption, download/copy affordances, or a details panel.
52
+ */
53
+ inChartContainer?: boolean;
54
+ }
55
+ export interface MobileVisualizationInteractionContract {
56
+ primary?: string;
57
+ alternatives?: string[];
58
+ hoverFallback?: string;
59
+ targetSize?: number;
60
+ }
61
+ export interface MobileVisualizationLabelContract {
62
+ strategy?: string;
63
+ minFontSize?: number;
64
+ }
65
+ export interface MobileVisualizationCustomContract {
66
+ dataBearingSceneNodes?: boolean;
67
+ stableIds?: boolean;
68
+ navigationGranularity?: string;
69
+ }
70
+ export interface MobileVisualizationContract {
71
+ strategy?: string;
72
+ responsive?: boolean;
73
+ supportsResponsiveLayout?: boolean;
74
+ breakpoints?: number[];
75
+ minViewportWidth?: number;
76
+ maxMarks?: number;
77
+ maxAnnotations?: number;
78
+ minimumHitTarget?: number;
79
+ summary?: boolean | string;
80
+ interaction?: MobileVisualizationInteractionContract;
81
+ labels?: MobileVisualizationLabelContract;
82
+ custom?: MobileVisualizationCustomContract;
83
+ }
84
+ /**
85
+ * Audit a Semiotic chart config for likely mobile visualization problems.
86
+ * Pure, SSR-safe, no DOM.
87
+ */
88
+ export declare function auditMobileVisualization(component: string, props?: Datum, options?: AuditMobileVisualizationOptions): MobileVisualizationAuditResult;
89
+ /** Render a mobile visualization audit result as a plain-text report. */
90
+ export declare function formatMobileVisualizationAudit(result: MobileVisualizationAuditResult): string;
91
+ export declare function mobileVisualizationCaveats(): string[];
@@ -0,0 +1,145 @@
1
+ /**
2
+ * Additive ChartDefinition pilot registry.
3
+ *
4
+ * This is deliberately a descriptive, pure layer: it imports chart-spec
5
+ * metadata but never React components, frame stores, server renderers, or
6
+ * docs modules. The implementation, server, capability, and example links
7
+ * are strings so hosts can decide what to load. Existing registries remain
8
+ * authoritative while this seven-chart slice proves the boundary.
9
+ */
10
+ import { type ChartCapabilities, type ChartCategory, type ChartPropSpec, type ChartSpec, type PropType } from "./chartSpecs";
11
+ /** Version of the definition shape, independently from the package version. */
12
+ export declare const CHART_DEFINITION_SCHEMA_VERSION: 1;
13
+ /** Version of this intentionally small, additive pilot manifest. */
14
+ export declare const CHART_DEFINITION_PILOT_VERSION: "1.0.0";
15
+ export declare const CHART_DEFINITION_PILOT_IDS: readonly ["LineChart", "BarChart", "ForceDirectedGraph", "FlowMap", "GaltonBoardChart", "RealtimeLineChart", "BigNumber"];
16
+ export type ChartDefinitionPilotId = (typeof CHART_DEFINITION_PILOT_IDS)[number];
17
+ export type WireJsonType = Exclude<PropType, "function">;
18
+ /**
19
+ * Strictly serializable portion of a runtime prop. Function-only and
20
+ * `omitFromSchema` props live in `runtimeOnlyProps`; mixed string/function
21
+ * accessors retain their serializable string form and name their broader
22
+ * runtime contract in the extension field.
23
+ */
24
+ export interface ChartDefinitionWireProperty {
25
+ readonly type: WireJsonType | readonly WireJsonType[];
26
+ readonly enum?: readonly string[];
27
+ readonly default?: unknown;
28
+ readonly description?: string;
29
+ readonly "x-semiotic-runtime-types"?: readonly PropType[];
30
+ }
31
+ export interface ChartDefinitionWireSchema {
32
+ readonly $schema: "https://json-schema.org/draft/2020-12/schema";
33
+ readonly type: "object";
34
+ readonly properties: Readonly<Record<string, ChartDefinitionWireProperty>>;
35
+ readonly required: readonly string[];
36
+ /** Runtime props deliberately absent from the serializable wire surface. */
37
+ readonly "x-semiotic-runtime-only-props": readonly string[];
38
+ }
39
+ /** A string reference prevents the definition registry from loading React. */
40
+ export interface LazyImplementationReference {
41
+ readonly module: string;
42
+ readonly exportName: string;
43
+ }
44
+ export type ChartDefinitionServerSupport = {
45
+ readonly mode: "render-chart";
46
+ readonly chartConfig: string;
47
+ } | {
48
+ readonly mode: "react-ssr-only";
49
+ readonly reason: string;
50
+ } | {
51
+ readonly mode: "unavailable";
52
+ readonly reason: string;
53
+ };
54
+ /**
55
+ * References into the current docs surface. They remain links for now: the
56
+ * future ExampleDefinition registry will become the source of truth for them.
57
+ */
58
+ export interface ChartDefinitionExampleReference {
59
+ /** `chart-doc` is an interactive documentation demo pending ExampleDefinition migration. */
60
+ readonly kind?: "example" | "chart-doc";
61
+ readonly route: string;
62
+ readonly source: string;
63
+ }
64
+ /** Explicitly additive lifecycle truth; no pilot chart is deprecated. */
65
+ export interface ChartDefinitionLifecycle {
66
+ readonly status: "stable" | "experimental" | "deprecated" | "internal";
67
+ readonly since?: string;
68
+ readonly deprecation?: {
69
+ readonly since: string;
70
+ readonly replacement?: string;
71
+ };
72
+ }
73
+ /** Public docs page and the component identifier consumed by PropTable. */
74
+ export interface ChartDefinitionPropDocs {
75
+ readonly componentName: string;
76
+ readonly route: string;
77
+ readonly source: string;
78
+ }
79
+ export interface ChartDefinitionMetadata {
80
+ readonly description: string;
81
+ /** Reused directly from ChartSpec while the existing capability registry leads. */
82
+ readonly capabilities: ChartCapabilities;
83
+ readonly capabilityModule: string;
84
+ readonly chartSpec: string;
85
+ readonly aiSchemaName: string;
86
+ readonly lifecycle: ChartDefinitionLifecycle;
87
+ readonly propDocs: ChartDefinitionPropDocs;
88
+ readonly support: {
89
+ readonly browser: "react";
90
+ readonly server: ChartDefinitionServerSupport;
91
+ };
92
+ readonly examples: readonly ChartDefinitionExampleReference[];
93
+ }
94
+ /**
95
+ * Minimal RFC-aligned manifest shape for the pilot. `wire` is intentionally
96
+ * serializable; richer prop metadata and lazy implementation references stay
97
+ * under `runtime`.
98
+ */
99
+ export interface ChartDefinition<TChart extends string = string> {
100
+ readonly schemaVersion: typeof CHART_DEFINITION_SCHEMA_VERSION;
101
+ readonly chartFamily: ChartCategory;
102
+ readonly chartKind: TChart;
103
+ readonly wire: {
104
+ readonly chart: TChart;
105
+ readonly version: typeof CHART_DEFINITION_PILOT_VERSION;
106
+ readonly schema: ChartDefinitionWireSchema;
107
+ };
108
+ readonly runtime: {
109
+ readonly propMetadata: Readonly<Record<string, ChartPropSpec>>;
110
+ readonly implementation: LazyImplementationReference;
111
+ };
112
+ readonly metadata: ChartDefinitionMetadata;
113
+ }
114
+ /**
115
+ * Build a strict wire schema from the current ChartSpec without duplicating
116
+ * the public prop declaration. This deliberately differs from the legacy AI
117
+ * schema generator: a function-only prop is omitted here rather than emitted
118
+ * as an unconstrained JSON-schema property, because a function cannot cross a
119
+ * persisted/MCP wire boundary.
120
+ */
121
+ export declare function createChartDefinitionWireSchema(spec: ChartSpec): ChartDefinitionWireSchema;
122
+ /**
123
+ * One representative per chart family. No existing consumer reads this yet;
124
+ * its purpose is to make parity and generation work executable before any
125
+ * registry is migrated.
126
+ */
127
+ export declare const CHART_DEFINITION_PILOT: Readonly<{
128
+ [TChart in ChartDefinitionPilotId]: ChartDefinition<TChart>;
129
+ }>;
130
+ export interface ChartDefinitionArtifact {
131
+ readonly chart: string;
132
+ readonly schemaVersion: typeof CHART_DEFINITION_SCHEMA_VERSION;
133
+ readonly wire: ChartDefinition["wire"];
134
+ readonly runtime: {
135
+ readonly implementation: LazyImplementationReference;
136
+ readonly propNames: readonly string[];
137
+ };
138
+ readonly metadata: ChartDefinitionMetadata;
139
+ }
140
+ /**
141
+ * Pure generation hook for future schema/docs/registry emitters. Its output is
142
+ * JSON-serializable and intentionally has no component or server imports.
143
+ */
144
+ export declare function generateChartDefinitionArtifacts(registry?: Readonly<Record<string, ChartDefinition>>): readonly ChartDefinitionArtifact[];
145
+ export declare function getChartDefinition(chart: string): ChartDefinition<ChartDefinitionPilotId> | undefined;
@@ -0,0 +1,20 @@
1
+ export declare const HIERARCHY_CHARTS: Set<string>;
2
+ export declare const NETWORK_CHARTS: Set<string>;
3
+ export declare const BAR_AREA_CHARTS: Set<string>;
4
+ export declare const TREND_SERIES_CHARTS: Set<string>;
5
+ export declare const ORDINAL_BAR_CHARTS: Set<string>;
6
+ export declare const CURVE_CHARTS: Set<string>;
7
+ export declare const PIE_CHARTS: Set<string>;
8
+ export declare const PART_TO_WHOLE_ACCESSORS: Record<string, string>;
9
+ export declare const PART_TO_WHOLE_CHARTS: Set<string>;
10
+ export declare const NORMALIZED_STACK_ACCESSORS: Record<string, string>;
11
+ export declare const VALUE_CHARTS: Set<string>;
12
+ export declare const XY_WITH_AXES_CHARTS: Set<string>;
13
+ export declare const PHYSICS_MOTION_CHARTS: Set<string>;
14
+ export declare const CONTINUOUS_MOTION_CHARTS: Set<string>;
15
+ export declare const PHYSICS_SETTLED_CHARTS: Set<string>;
16
+ export declare const PHYSICS_DIAGNOSTIC_CHARTS: Set<string>;
17
+ export declare const REALTIME_CHARTS: Set<string>;
18
+ export declare const DUAL_AXIS_CHARTS: Set<string>;
19
+ export declare const GEO_CHARTS: Set<string>;
20
+ export declare const POINT_TARGET_RADIUS_PROP: Record<string, string>;
@@ -0,0 +1,4 @@
1
+ import type { Datum } from "./datumTypes";
2
+ export declare function resolveHoverXPosition(interactionDatum: Datum, datum: Datum | null | undefined, xField: string): number | null;
3
+ export declare function observationDatum(interactionDatum: Datum): Datum;
4
+ export declare function hasOwnEnumerableKey(value: object | undefined | null): boolean;
@@ -0,0 +1,165 @@
1
+ /**
2
+ * Single source of truth for per-chart prop specifications.
3
+ *
4
+ * Three downstream consumers used to maintain their own per-chart entries:
5
+ * - `ai/schema.json` (LLM tool definitions)
6
+ * - `src/components/charts/shared/validationMap.ts` (runtime prop validation)
7
+ * - `ai/componentMetadata.cjs` (category buckets)
8
+ *
9
+ * Today, `validationMap.generated.ts` and `ai/schema.json` are generated from
10
+ * this registry — run `npm run docs:chart-specs:schema` to refresh both after
11
+ * editing a spec. `componentMetadata.cjs` is still
12
+ * hand-edited but gated for parity by the registry: `check:chart-specs` (run
13
+ * via `npm run check:chart-specs`) regenerates each chart's schema/
14
+ * validation/metadata entries with the pure functions in
15
+ * `scripts/lib/chart-specs-generators.mjs` and fails the build on any
16
+ * drift, including unexpected adds or removes that bypass the registry.
17
+ *
18
+ * Design notes:
19
+ * - Shared prop bags (common, xyAxis, ordinalAxis) live in `PROP_BAGS` and
20
+ * are referenced by name in each spec so common surface stays in one place.
21
+ * - The runtime PropType set ("string" | "number" | "boolean" | "array" |
22
+ * "object" | "function") is broader than JSON Schema's, but the schema
23
+ * generator emits whatever types this registry declares — including
24
+ * "function" inside type unions (canonical entries like
25
+ * `RidgelinePlot.tooltip: ["function", "object"]` and
26
+ * `SwimlaneChart.onBrush: "function"` already use this convention; LLMs
27
+ * read the union and pick a non-function alternative when they can't
28
+ * supply a function value). For props that are purely callbacks or
29
+ * escape hatches an LLM cannot meaningfully populate, tag the spec
30
+ * with `omitFromSchema: true` to keep it in validationMap but out of
31
+ * schema.json. `description` and `default` annotations surface in
32
+ * schema.json (and MCP responses) but are dropped from validationMap
33
+ * (which only reads `type` and `enum`).
34
+ */
35
+ export type PropType = "string" | "number" | "boolean" | "array" | "object" | "function";
36
+ export type DataShape = "array" | "object" | "network" | "realtime" | "none";
37
+ export type ChartCategory = "xy" | "ordinal" | "network" | "geo" | "realtime" | "physics" | "value";
38
+ /**
39
+ * Capability tags for runtime behavior. Each chart declares which
40
+ * features it actually supports so docs, AI/MCP tools, and CI gates
41
+ * can read structured truth instead of inferring it from the source.
42
+ *
43
+ * All fields are required so a new chart entry can't omit them
44
+ * silently — the audit's anti-goal "Do not make registry metadata
45
+ * aspirational. It should describe real runtime behavior and be
46
+ * checked." applies here.
47
+ */
48
+ export interface ChartCapabilities {
49
+ /**
50
+ * Render pipeline. `canvas` for Stream-Frame-driven charts that
51
+ * paint to canvas with SVG overlays for chrome (the common case).
52
+ * `svg` for charts that are pure SVG (none today, but reserved).
53
+ * `hybrid` for charts that use both — currently every Stream-Frame
54
+ * HOC qualifies as hybrid; reserve `canvas` for any future
55
+ * canvas-only fallback.
56
+ */
57
+ renderModes: Array<"canvas" | "svg" | "hybrid">;
58
+ /** Renders a legend swatch column when `colorBy` (or equivalent)
59
+ * resolves to non-empty categories. */
60
+ supportsLegend: boolean;
61
+ /** Reads from a `selection` prop and dims/highlights matching
62
+ * marks via `wrapStyleWithSelection` or equivalent. */
63
+ supportsSelection: boolean;
64
+ /** Produces a hover-driven selection (used by linked crosshair /
65
+ * cross-filter patterns) via `linkedHover`. */
66
+ supportsLinkedHover: boolean;
67
+ /** Exposes a ref handle (`push`, `pushMany`, etc.) so consumers
68
+ * can mutate the data list without re-rendering. Hierarchy
69
+ * charts (Treemap/CirclePack/TreeDiagram/OrbitDiagram) and
70
+ * pure-synthetic charts (GaugeChart) declare false. */
71
+ supportsPush: boolean;
72
+ /** Renders to a static SVG via `renderChart()` from `semiotic/server`
73
+ * through a registered entry in `serverChartConfigs.ts`. SSR-only
74
+ * charts (none yet) and HOC-SSR exclusions also declare false. */
75
+ supportsSSR: boolean;
76
+ /**
77
+ * How color is consumed by the chart's data marks.
78
+ * - `categorical`: discrete buckets, paired with a `colorBy` accessor.
79
+ * - `sequential`: continuous scale (heatmap intensity, choropleth value).
80
+ * - `threshold`: stepped scale with explicit breakpoints (gauge zones).
81
+ * - `continuous`: smooth interpolation along a 1-D path (gradient fill).
82
+ * - `none`: chart doesn't use color encoding (sparkline, pure layout).
83
+ */
84
+ colorModel: "categorical" | "sequential" | "threshold" | "continuous" | "none";
85
+ /**
86
+ * Where the geometry comes from.
87
+ * - `plugin`: a built-in plugin in the frame (sankey/force/chord/tree
88
+ * for network; bar/pie/swarm/etc. for ordinal; line/area/etc. for XY).
89
+ * - `custom`: emitted via the frame's customLayout escape hatch
90
+ * (ProcessSankey via `customNetworkLayout`, NetworkCustomChart,
91
+ * XYCustomChart, OrdinalCustomChart).
92
+ * - `synthetic`: no layout — the chart constructs its scene from
93
+ * the input value(s) directly (GaugeChart computes arc geometry).
94
+ */
95
+ layoutMode: "plugin" | "custom" | "synthetic";
96
+ /**
97
+ * Free-form tag list for opt-in features that don't fit the
98
+ * boolean shape — e.g. "particles", "forecast", "anomaly", "brush",
99
+ * "streamgraph", "minimap". Used by docs feature tables and
100
+ * potential capability-driven AI suggestions.
101
+ */
102
+ specialFeatures: string[];
103
+ }
104
+ export interface ChartPropSpec {
105
+ /** Allowed runtime types. May be a single value or a union. */
106
+ type: PropType | PropType[];
107
+ /** Allowed enum values for string-typed props. */
108
+ enum?: readonly string[];
109
+ /** Default value surfaced in schema.json (and shown in MCP getSchema). */
110
+ default?: unknown;
111
+ /** Schema-side description; surfaces in LLM tool definitions. */
112
+ description?: string;
113
+ /**
114
+ * When true, the prop is included in validationMap but omitted from
115
+ * schema.json. Use for handler/callback props (`onClick`, `tooltip`)
116
+ * and pass-through escape hatches (`frameProps`) that LLMs shouldn't
117
+ * be asked to populate.
118
+ */
119
+ omitFromSchema?: boolean;
120
+ }
121
+ export interface ChartSpec {
122
+ /** Component name, must match the React export. */
123
+ name: string;
124
+ category: ChartCategory;
125
+ /** Human-readable description for schema.tools[].function.description. */
126
+ description: string;
127
+ /** Statically-required props. Push-mode optionality lives in behaviorContracts. */
128
+ required: string[];
129
+ /** Drives validation dispatch (validateArrayData / validateNetworkData / …). */
130
+ dataShape: DataShape;
131
+ /** Accessor props validated against the data shape at runtime. */
132
+ dataAccessors: string[];
133
+ /**
134
+ * Shared prop bags this chart composes. Bag props are merged in left-to-right
135
+ * order; chart-specific `ownProps` win on key collision.
136
+ */
137
+ propBags: ReadonlyArray<keyof typeof PROP_BAGS>;
138
+ /** Chart-specific prop spec, overlaid on top of the composed bags. */
139
+ ownProps: Record<string, ChartPropSpec>;
140
+ /**
141
+ * Capability matrix — declarative facts about runtime behavior.
142
+ * Drives docs feature tables, capability-aware AI/MCP tools, and
143
+ * the `check:capabilities` drift gate (which verifies, e.g., that
144
+ * a chart claiming `supportsSSR: true` has a matching entry in
145
+ * `serverChartConfigs.ts`).
146
+ */
147
+ capabilities: ChartCapabilities;
148
+ }
149
+ export declare const PROP_BAGS: {
150
+ readonly common: Record<string, ChartPropSpec>;
151
+ readonly xyAxis: Record<string, ChartPropSpec>;
152
+ readonly ordinalAxis: Record<string, ChartPropSpec>;
153
+ readonly realtime: Record<string, ChartPropSpec>;
154
+ readonly physics: Record<string, ChartPropSpec>;
155
+ };
156
+ export declare const ORIENTATION_ENUM: readonly ["vertical", "horizontal"];
157
+ export declare const HORIZONTAL_VERTICAL_ENUM: readonly ["horizontal", "vertical"];
158
+ export declare const LEGEND_POSITION_ENUM: readonly ["right", "left", "top", "bottom"];
159
+ export declare const CURVE_ENUM: readonly ["linear", "monotoneX", "monotoneY", "step", "stepAfter", "stepBefore", "basis", "cardinal", "catmullRom"];
160
+ export declare const CHART_MODE_ENUM: readonly ["primary", "context", "sparkline"];
161
+ /**
162
+ * Compose a chart's full prop set (bags + ownProps) in deterministic order.
163
+ * ownProps wins on key collision so a chart can override a shared default.
164
+ */
165
+ export declare function composeProps(spec: ChartSpec): Record<string, ChartPropSpec>;
@@ -1,131 +1,12 @@
1
- export type PropType = "string" | "number" | "boolean" | "array" | "object" | "function";
2
- export type DataShape = "array" | "object" | "network" | "realtime" | "none";
3
- export type ChartCategory = "xy" | "ordinal" | "network" | "geo" | "realtime" | "value";
4
1
  /**
5
- * Capability tags for runtime behavior. Each chart declares which
6
- * features it actually supports so docs, AI/MCP tools, and CI gates
7
- * can read structured truth instead of inferring it from the source.
2
+ * Single source of truth for per-chart prop specifications.
8
3
  *
9
- * All fields are required so a new chart entry can't omit them
10
- * silently — the audit's anti-goal "Do not make registry metadata
11
- * aspirational. It should describe real runtime behavior and be
12
- * checked." applies here.
4
+ * Spec entries are split by family (`chartSpecsXY.ts`, etc.); this module
5
+ * re-exports types/helpers and composes `CHART_SPECS`.
6
+ *
7
+ * See `chartSpecCore.ts` for types, prop bags, and `composeProps`.
13
8
  */
14
- export interface ChartCapabilities {
15
- /**
16
- * Render pipeline. `canvas` for Stream-Frame-driven charts that
17
- * paint to canvas with SVG overlays for chrome (the common case).
18
- * `svg` for charts that are pure SVG (none today, but reserved).
19
- * `hybrid` for charts that use both — currently every Stream-Frame
20
- * HOC qualifies as hybrid; reserve `canvas` for any future
21
- * canvas-only fallback.
22
- */
23
- renderModes: Array<"canvas" | "svg" | "hybrid">;
24
- /** Renders a legend swatch column when `colorBy` (or equivalent)
25
- * resolves to non-empty categories. */
26
- supportsLegend: boolean;
27
- /** Reads from a `selection` prop and dims/highlights matching
28
- * marks via `wrapStyleWithSelection` or equivalent. */
29
- supportsSelection: boolean;
30
- /** Produces a hover-driven selection (used by linked crosshair /
31
- * cross-filter patterns) via `linkedHover`. */
32
- supportsLinkedHover: boolean;
33
- /** Exposes a ref handle (`push`, `pushMany`, etc.) so consumers
34
- * can mutate the data list without re-rendering. Hierarchy
35
- * charts (Treemap/CirclePack/TreeDiagram/OrbitDiagram) and
36
- * pure-synthetic charts (GaugeChart) declare false. */
37
- supportsPush: boolean;
38
- /** Renders to a static SVG via `renderChart()` from `semiotic/server`
39
- * through a registered entry in `serverChartConfigs.ts`. SSR-only
40
- * charts (none yet) and HOC-SSR exclusions also declare false. */
41
- supportsSSR: boolean;
42
- /**
43
- * How color is consumed by the chart's data marks.
44
- * - `categorical`: discrete buckets, paired with a `colorBy` accessor.
45
- * - `sequential`: continuous scale (heatmap intensity, choropleth value).
46
- * - `threshold`: stepped scale with explicit breakpoints (gauge zones).
47
- * - `continuous`: smooth interpolation along a 1-D path (gradient fill).
48
- * - `none`: chart doesn't use color encoding (sparkline, pure layout).
49
- */
50
- colorModel: "categorical" | "sequential" | "threshold" | "continuous" | "none";
51
- /**
52
- * Where the geometry comes from.
53
- * - `plugin`: a built-in plugin in the frame (sankey/force/chord/tree
54
- * for network; bar/pie/swarm/etc. for ordinal; line/area/etc. for XY).
55
- * - `custom`: emitted via the frame's customLayout escape hatch
56
- * (ProcessSankey via `customNetworkLayout`, NetworkCustomChart,
57
- * XYCustomChart, OrdinalCustomChart).
58
- * - `synthetic`: no layout — the chart constructs its scene from
59
- * the input value(s) directly (GaugeChart computes arc geometry).
60
- */
61
- layoutMode: "plugin" | "custom" | "synthetic";
62
- /**
63
- * Free-form tag list for opt-in features that don't fit the
64
- * boolean shape — e.g. "particles", "forecast", "anomaly", "brush",
65
- * "streamgraph", "minimap". Used by docs feature tables and
66
- * potential capability-driven AI suggestions.
67
- */
68
- specialFeatures: string[];
69
- }
70
- export interface ChartPropSpec {
71
- /** Allowed runtime types. May be a single value or a union. */
72
- type: PropType | PropType[];
73
- /** Allowed enum values for string-typed props. */
74
- enum?: readonly string[];
75
- /** Default value surfaced in schema.json (and shown in MCP getSchema). */
76
- default?: unknown;
77
- /** Schema-side description; surfaces in LLM tool definitions. */
78
- description?: string;
79
- /**
80
- * When true, the prop is included in validationMap but omitted from
81
- * schema.json. Use for handler/callback props (`onClick`, `tooltip`)
82
- * and pass-through escape hatches (`frameProps`) that LLMs shouldn't
83
- * be asked to populate.
84
- */
85
- omitFromSchema?: boolean;
86
- }
87
- export interface ChartSpec {
88
- /** Component name, must match the React export. */
89
- name: string;
90
- category: ChartCategory;
91
- /** Human-readable description for schema.tools[].function.description. */
92
- description: string;
93
- /** Statically-required props. Push-mode optionality lives in behaviorContracts. */
94
- required: string[];
95
- /** Drives validation dispatch (validateArrayData / validateNetworkData / …). */
96
- dataShape: DataShape;
97
- /** Accessor props validated against the data shape at runtime. */
98
- dataAccessors: string[];
99
- /**
100
- * Shared prop bags this chart composes. Bag props are merged in left-to-right
101
- * order; chart-specific `ownProps` win on key collision.
102
- */
103
- propBags: ReadonlyArray<keyof typeof PROP_BAGS>;
104
- /** Chart-specific prop spec, overlaid on top of the composed bags. */
105
- ownProps: Record<string, ChartPropSpec>;
106
- /**
107
- * Capability matrix — declarative facts about runtime behavior.
108
- * Drives docs feature tables, capability-aware AI/MCP tools, and
109
- * the `check:capabilities` drift gate (which verifies, e.g., that
110
- * a chart claiming `supportsSSR: true` has a matching entry in
111
- * `serverChartConfigs.ts`).
112
- */
113
- capabilities: ChartCapabilities;
114
- }
115
- export declare const PROP_BAGS: {
116
- readonly common: Record<string, ChartPropSpec>;
117
- readonly xyAxis: Record<string, ChartPropSpec>;
118
- readonly ordinalAxis: Record<string, ChartPropSpec>;
119
- readonly realtime: Record<string, ChartPropSpec>;
120
- };
121
- export declare const ORIENTATION_ENUM: readonly ["vertical", "horizontal"];
122
- export declare const HORIZONTAL_VERTICAL_ENUM: readonly ["horizontal", "vertical"];
123
- export declare const LEGEND_POSITION_ENUM: readonly ["right", "left", "top", "bottom"];
124
- export declare const CURVE_ENUM: readonly ["linear", "monotoneX", "monotoneY", "step", "stepAfter", "stepBefore", "basis", "cardinal", "catmullRom"];
125
- export declare const CHART_MODE_ENUM: readonly ["primary", "context", "sparkline"];
9
+ export type { PropType, DataShape, ChartCategory, ChartCapabilities, ChartPropSpec, ChartSpec, } from "./chartSpecCore";
10
+ export { PROP_BAGS, ORIENTATION_ENUM, HORIZONTAL_VERTICAL_ENUM, LEGEND_POSITION_ENUM, CURVE_ENUM, CHART_MODE_ENUM, composeProps, } from "./chartSpecCore";
11
+ import type { ChartSpec } from "./chartSpecCore";
126
12
  export declare const CHART_SPECS: Record<string, ChartSpec>;
127
- /**
128
- * Compose a chart's full prop set (bags + ownProps) in deterministic order.
129
- * ownProps wins on key collision so a chart can override a shared default.
130
- */
131
- export declare function composeProps(spec: ChartSpec): Record<string, ChartPropSpec>;
@@ -0,0 +1,2 @@
1
+ import type { ChartSpec } from "./chartSpecCore";
2
+ export declare const GEO_CHART_SPECS: Record<string, ChartSpec>;
@@ -0,0 +1,2 @@
1
+ import type { ChartSpec } from "./chartSpecCore";
2
+ export declare const NETWORK_CHART_SPECS: Record<string, ChartSpec>;
@@ -0,0 +1,2 @@
1
+ import type { ChartSpec } from "./chartSpecCore";
2
+ export declare const ORDINAL_CHART_SPECS: Record<string, ChartSpec>;
@@ -0,0 +1,2 @@
1
+ import type { ChartSpec } from "./chartSpecCore";
2
+ export declare const PHYSICS_CHART_SPECS: Record<string, ChartSpec>;
@@ -0,0 +1,2 @@
1
+ import type { ChartSpec } from "./chartSpecCore";
2
+ export declare const REALTIME_CHART_SPECS: Record<string, ChartSpec>;
@@ -0,0 +1,2 @@
1
+ import type { ChartSpec } from "./chartSpecCore";
2
+ export declare const VALUE_CHART_SPECS: Record<string, ChartSpec>;
@@ -0,0 +1,2 @@
1
+ import type { ChartSpec } from "./chartSpecCore";
2
+ export declare const XY_CHART_SPECS: Record<string, ChartSpec>;
@@ -0,0 +1,3 @@
1
+ /** WCAG contrast ratio between two hex colors.
2
+ * Returns null if either color isn't a parseable hex. */
3
+ export declare function contrastRatio(hex1: string, hex2: string): number | null;
@@ -35,6 +35,21 @@ export declare const DEPTH_PALETTE_COLORS: string[];
35
35
  * ```
36
36
  */
37
37
  export declare function getColor(dataPoint: Datum, colorBy: string | ((d: Datum) => string), colorScale?: (v: string) => string): string;
38
+ /**
39
+ * Look up a color for `key` in an explicit `{ category: color }` map.
40
+ *
41
+ * Guards against two hazards of a naive `key in map` lookup on a
42
+ * user-supplied object: inherited prototype keys (e.g. `"toString"`,
43
+ * `"constructor"`) must NOT register as mapped categories, and a mapped
44
+ * value that isn't a usable color string (a function, number, `""`) must
45
+ * not leak into a fill/stroke. Returns `undefined` when the key is unmapped
46
+ * or its value isn't a non-empty string, so callers apply their own default.
47
+ *
48
+ * Single source of truth for object-map `colorScheme` resolution across
49
+ * `createColorScale`, `resolveDefaultFill`, `buildResolveColor`,
50
+ * `buildColorScale`, and `CategoryColorProvider`.
51
+ */
52
+ export declare function resolveExplicitColor(map: Record<string, unknown>, key: string | undefined | null): string | undefined;
38
53
  /**
39
54
  * Creates a color scale function from data
40
55
  *
@@ -49,7 +64,7 @@ export declare function getColor(dataPoint: Datum, colorBy: string | ((d: Datum)
49
64
  * const color = colorScale('A') // Returns color for category 'A'
50
65
  * ```
51
66
  */
52
- export declare function createColorScale(data: Array<Datum>, colorBy: string, scheme?: string | string[]): (v: string) => string;
67
+ export declare function createColorScale(data: Array<Datum>, colorBy: string, scheme?: string | string[] | Record<string, string>): (v: string) => string;
53
68
  /**
54
69
  * Generates a size function based on sizeBy configuration.
55
70
  *
@@ -18,3 +18,5 @@
18
18
  * reason" referenced by the lint policy for `@typescript-eslint/no-explicit-any`.
19
19
  */
20
20
  export type Datum = Record<string, any>;
21
+ /** Values that can be returned by a chart accessor or stored in a datum field. */
22
+ export type DatumValue = string | number | boolean | Date | Datum | Datum[] | null | undefined;
@@ -0,0 +1,6 @@
1
+ import type { Datum } from "./datumTypes";
2
+ import type { Diagnosis } from "./diagnoseTypes";
3
+ /** Interactive widgets need durable identity for replay and normalized events. */
4
+ export declare function checkInteractiveAnnotationIds(_component: string, props: Datum, out: Diagnosis[]): void;
5
+ export declare function checkAnnotationConnectors(_component: string, props: Datum, out: Diagnosis[]): void;
6
+ export declare function checkAnnotationDensity(_component: string, props: Datum, out: Diagnosis[]): void;