semiotic 3.0.1 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/CLAUDE.md +227 -27
  2. package/README.md +43 -11
  3. package/ai/examples.md +358 -18
  4. package/ai/schema.json +64 -2
  5. package/ai/system-prompt.md +50 -12
  6. package/dist/components/Legend.d.ts +7 -1
  7. package/dist/components/charts/geo/ChoroplethMap.d.ts +53 -0
  8. package/dist/components/charts/geo/DistanceCartogram.d.ts +90 -0
  9. package/dist/components/charts/geo/FlowMap.d.ts +83 -0
  10. package/dist/components/charts/geo/ProportionalSymbolMap.d.ts +67 -0
  11. package/dist/components/charts/geo/index.d.ts +8 -0
  12. package/dist/components/charts/index.d.ts +2 -0
  13. package/dist/components/charts/network/ChordDiagram.d.ts +6 -5
  14. package/dist/components/charts/network/CirclePack.d.ts +2 -2
  15. package/dist/components/charts/network/ForceDirectedGraph.d.ts +9 -7
  16. package/dist/components/charts/network/OrbitDiagram.d.ts +21 -20
  17. package/dist/components/charts/network/SankeyDiagram.d.ts +6 -5
  18. package/dist/components/charts/network/TreeDiagram.d.ts +2 -2
  19. package/dist/components/charts/network/Treemap.d.ts +2 -2
  20. package/dist/components/charts/ordinal/BarChart.d.ts +7 -5
  21. package/dist/components/charts/ordinal/BoxPlot.d.ts +8 -6
  22. package/dist/components/charts/ordinal/DonutChart.d.ts +8 -6
  23. package/dist/components/charts/ordinal/DotPlot.d.ts +8 -6
  24. package/dist/components/charts/ordinal/GroupedBarChart.d.ts +7 -5
  25. package/dist/components/charts/ordinal/Histogram.d.ts +8 -5
  26. package/dist/components/charts/ordinal/PieChart.d.ts +8 -6
  27. package/dist/components/charts/ordinal/RidgelinePlot.d.ts +2 -0
  28. package/dist/components/charts/ordinal/StackedBarChart.d.ts +7 -5
  29. package/dist/components/charts/ordinal/SwarmPlot.d.ts +8 -6
  30. package/dist/components/charts/ordinal/ViolinPlot.d.ts +8 -5
  31. package/dist/components/charts/realtime/RealtimeHeatmap.d.ts +24 -6
  32. package/dist/components/charts/realtime/RealtimeHistogram.d.ts +28 -7
  33. package/dist/components/charts/realtime/RealtimeLineChart.d.ts +23 -5
  34. package/dist/components/charts/realtime/RealtimeSwarmChart.d.ts +24 -6
  35. package/dist/components/charts/realtime/RealtimeWaterfallChart.d.ts +23 -5
  36. package/dist/components/charts/shared/colorUtils.d.ts +5 -0
  37. package/dist/components/charts/shared/hooks.d.ts +13 -1
  38. package/dist/components/charts/shared/legendUtils.d.ts +2 -3
  39. package/dist/components/charts/shared/statisticalOverlays.d.ts +1 -2
  40. package/dist/components/charts/shared/statisticalOverlaysLazy.d.ts +10 -0
  41. package/dist/components/charts/shared/tooltipUtils.d.ts +1 -1
  42. package/dist/components/charts/shared/types.d.ts +10 -4
  43. package/dist/components/charts/shared/useChartSetup.d.ts +112 -0
  44. package/dist/components/charts/shared/useStreamingLegend.d.ts +65 -0
  45. package/dist/components/charts/xy/AreaChart.d.ts +11 -6
  46. package/dist/components/charts/xy/BubbleChart.d.ts +11 -6
  47. package/dist/components/charts/xy/ConnectedScatterplot.d.ts +7 -6
  48. package/dist/components/charts/xy/Heatmap.d.ts +16 -5
  49. package/dist/components/charts/xy/LineChart.d.ts +21 -5
  50. package/dist/components/charts/xy/MinimapChart.d.ts +3 -0
  51. package/dist/components/charts/xy/QuadrantChart.d.ts +120 -0
  52. package/dist/components/charts/xy/Scatterplot.d.ts +9 -6
  53. package/dist/components/charts/xy/StackedAreaChart.d.ts +11 -6
  54. package/dist/components/geo/mergeData.d.ts +18 -0
  55. package/dist/components/geo/referenceGeography.d.ts +10 -0
  56. package/dist/components/geo/useReferenceAreas.d.ts +13 -0
  57. package/dist/components/realtime/RingBuffer.d.ts +1 -0
  58. package/dist/components/realtime/types.d.ts +17 -0
  59. package/dist/components/semiotic-data.d.ts +1 -0
  60. package/dist/components/semiotic-geo.d.ts +16 -0
  61. package/dist/components/semiotic-server.d.ts +1 -1
  62. package/dist/components/semiotic-xy.d.ts +1 -0
  63. package/dist/components/semiotic.d.ts +4 -4
  64. package/dist/components/server/renderToStaticSVG.d.ts +4 -2
  65. package/dist/components/stream/AccessibleDataTable.d.ts +50 -0
  66. package/dist/components/stream/CanvasHitTester.d.ts +8 -2
  67. package/dist/components/stream/DataSourceAdapter.d.ts +33 -4
  68. package/dist/components/stream/GeoCanvasHitTester.d.ts +19 -0
  69. package/dist/components/stream/GeoParticlePool.d.ts +46 -0
  70. package/dist/components/stream/GeoPipelineStore.d.ts +81 -0
  71. package/dist/components/stream/GeoTileRenderer.d.ts +31 -0
  72. package/dist/components/stream/NetworkPipelineStore.d.ts +16 -4
  73. package/dist/components/stream/NetworkSVGOverlay.d.ts +4 -1
  74. package/dist/components/stream/OrdinalPipelineStore.d.ts +8 -4
  75. package/dist/components/stream/OrdinalSVGOverlay.d.ts +23 -1
  76. package/dist/components/stream/PipelineStore.d.ts +57 -5
  77. package/dist/components/stream/SVGOverlay.d.ts +28 -1
  78. package/dist/components/stream/SceneGraph.d.ts +7 -3
  79. package/dist/components/stream/SceneToSVG.d.ts +2 -0
  80. package/dist/components/stream/StreamGeoFrame.d.ts +4 -0
  81. package/dist/components/stream/accessorUtils.d.ts +1 -0
  82. package/dist/components/stream/canvasSetup.d.ts +26 -0
  83. package/dist/components/stream/geoTypes.d.ts +186 -0
  84. package/dist/components/stream/layouts/forceLayoutPlugin.d.ts +0 -7
  85. package/dist/components/stream/layouts/index.d.ts +2 -1
  86. package/dist/components/stream/layouts/orbitLayoutPlugin.d.ts +2 -0
  87. package/dist/components/stream/legendRenderer.d.ts +33 -0
  88. package/dist/components/stream/networkTypes.d.ts +49 -1
  89. package/dist/components/stream/ordinalTypes.d.ts +10 -0
  90. package/dist/components/stream/pipelineTransitionUtils.d.ts +42 -0
  91. package/dist/components/stream/renderers/geoCanvasRenderer.d.ts +9 -0
  92. package/dist/components/stream/renderers/heatmapCanvasRenderer.d.ts +2 -1
  93. package/dist/components/stream/renderers/lineCanvasRenderer.d.ts +1 -0
  94. package/dist/components/stream/renderers/renderPulse.d.ts +50 -0
  95. package/dist/components/stream/types.d.ts +77 -3
  96. package/dist/components/types/legendTypes.d.ts +27 -3
  97. package/dist/geo.min.js +1 -0
  98. package/dist/geo.module.min.js +1 -0
  99. package/dist/network.min.js +1 -1
  100. package/dist/network.module.min.js +1 -1
  101. package/dist/ordinal.min.js +1 -1
  102. package/dist/ordinal.module.min.js +1 -1
  103. package/dist/realtime.min.js +1 -1
  104. package/dist/realtime.module.min.js +1 -1
  105. package/dist/semiotic-ai.min.js +1 -1
  106. package/dist/semiotic-ai.module.min.js +1 -1
  107. package/dist/semiotic-data.d.ts +1 -0
  108. package/dist/semiotic-data.min.js +1 -1
  109. package/dist/semiotic-data.module.min.js +1 -1
  110. package/dist/semiotic-geo.d.ts +16 -0
  111. package/dist/semiotic-server.d.ts +1 -1
  112. package/dist/semiotic-xy.d.ts +1 -0
  113. package/dist/semiotic.d.ts +4 -4
  114. package/dist/semiotic.min.js +1 -1
  115. package/dist/semiotic.module.min.js +1 -1
  116. package/dist/server.min.js +1 -1
  117. package/dist/server.module.min.js +1 -1
  118. package/dist/test-utils/canvasMock.d.ts +3 -0
  119. package/dist/xy.min.js +1 -1
  120. package/dist/xy.module.min.js +1 -1
  121. package/package.json +29 -7
  122. package/dist/test/canvasMock.d.ts +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "semiotic",
3
- "version": "3.0.1",
3
+ "version": "3.1.0",
4
4
  "description": "The semiotic JavaScript data visualization framework",
5
5
  "main": "dist/semiotic.min.js",
6
6
  "module": "dist/semiotic.module.min.js",
@@ -42,7 +42,7 @@
42
42
  "default": "./dist/realtime.module.min.js"
43
43
  },
44
44
  "./server": {
45
- "types": "./dist/server.d.ts",
45
+ "types": "./dist/semiotic-server.d.ts",
46
46
  "import": "./dist/server.module.min.js",
47
47
  "require": "./dist/server.min.js",
48
48
  "default": "./dist/server.module.min.js"
@@ -59,6 +59,12 @@
59
59
  "require": "./dist/semiotic-data.min.js",
60
60
  "default": "./dist/semiotic-data.module.min.js"
61
61
  },
62
+ "./geo": {
63
+ "types": "./dist/semiotic-geo.d.ts",
64
+ "import": "./dist/geo.module.min.js",
65
+ "require": "./dist/geo.min.js",
66
+ "default": "./dist/geo.module.min.js"
67
+ },
62
68
  "./package.json": "./package.json"
63
69
  },
64
70
  "files": [
@@ -85,7 +91,7 @@
85
91
  "bench:ui": "vitest bench --ui",
86
92
  "bench:baseline": "vitest bench --run && node scripts/save-baseline.js",
87
93
  "bench:compare": "vitest bench --run && node scripts/compare-baseline.js",
88
- "serve-examples": "npm run dist && parcel serve integration-tests/index.html integration-tests/xy-examples/index.html integration-tests/ordinal-examples/index.html integration-tests/network-examples/index.html integration-tests/viz-examples/index.html integration-tests/hoc-legend-examples/index.html --dist-dir .parcel-cache/integration-tests",
94
+ "serve-examples": "npm run dist && parcel serve integration-tests/index.html integration-tests/xy-examples/index.html integration-tests/ordinal-examples/index.html integration-tests/network-examples/index.html integration-tests/viz-examples/index.html integration-tests/hoc-legend-examples/index.html integration-tests/coordinated-examples/index.html integration-tests/accessibility-examples/index.html integration-tests/geo-examples/index.html integration-tests/realtime-examples/index.html integration-tests/streaming-regression-examples/index.html --dist-dir .parcel-cache/integration-tests",
89
95
  "dist": "node scripts/build.mjs",
90
96
  "dist:prod": "node scripts/build.mjs --production",
91
97
  "lint": "eslint src",
@@ -100,9 +106,12 @@
100
106
  "generate:ssr-gallery": "npx tsx scripts/ssr-gallery.tsx > docs/public/ssr-gallery.html 2>/dev/null",
101
107
  "website:build": "npm run dist:prod && npm run generate:ssr-gallery && parcel build --target website && node scripts/prerender.mjs",
102
108
  "build:mcp": "tsc -p tsconfig.mcp.json",
109
+ "docs:api": "typedoc",
110
+ "docs:api:json": "typedoc --json docs/build/api/api.json",
103
111
  "typescript": "tsc --noEmit",
104
112
  "check:schema": "node scripts/check-schema-freshness.js",
105
- "prepublishOnly": "node scripts/build.mjs --production"
113
+ "release:check": "npm run lint && npm run typescript && npm run test && npm run check:schema && node scripts/build.mjs --production && npm pack --dry-run",
114
+ "prepublishOnly": "npm run lint && npm run typescript && npm run test && npm run check:schema && node scripts/build.mjs --production"
106
115
  },
107
116
  "targets": {
108
117
  "website": {
@@ -116,7 +125,8 @@
116
125
  }
117
126
  },
118
127
  "alias": {
119
- "semiotic": "./src/components/semiotic.ts"
128
+ "semiotic": "./src/components/semiotic.ts",
129
+ "semiotic/geo": "./src/components/semiotic-geo.ts"
120
130
  },
121
131
  "repository": {
122
132
  "type": "git",
@@ -142,6 +152,7 @@
142
152
  "@types/d3-chord": "^3.0.0",
143
153
  "@types/d3-force": "^3.0.0",
144
154
  "@types/d3-format": "^3.0.0",
155
+ "@types/d3-geo": "^3.1.0",
145
156
  "@types/d3-hierarchy": "^3.1.0",
146
157
  "@types/d3-interpolate": "^3.0.0",
147
158
  "@types/d3-scale": "^4.0.9",
@@ -149,18 +160,21 @@
149
160
  "@types/d3-selection": "^3.0.0",
150
161
  "@types/d3-shape": "^3.1.0",
151
162
  "@types/d3-time-format": "^4.0.0",
163
+ "@types/d3-zoom": "^3.0.8",
152
164
  "@types/node": "^20.19.35",
153
165
  "@types/react": "^18.3.28",
154
166
  "@types/react-dom": "^18.3.7",
155
167
  "@types/seedrandom": "^3.0.5",
168
+ "@types/topojson-client": "^3.1.5",
156
169
  "@typescript-eslint/eslint-plugin": "^5.4.6",
170
+ "@typescript-eslint/parser": "^5.4.6",
157
171
  "@vitest/coverage-v8": "^4.1.0",
158
172
  "@vitest/ui": "^4.0.18",
159
- "jsdom": "^26.1.0",
160
173
  "d3-dsv": "1.0.5",
161
174
  "d3-flextree-v4": "^1.0.1",
162
175
  "eslint": "^8.0.0",
163
176
  "eslint-plugin-react": "^7.27.1",
177
+ "jsdom": "^26.1.0",
164
178
  "marked": "4.0.10",
165
179
  "parcel": "^2.16.4",
166
180
  "playwright-chromium": "^1.17.1",
@@ -173,6 +187,7 @@
173
187
  "rollup-plugin-typescript2": "^0.34.1",
174
188
  "rollup-plugin-visualizer": "^7.0.0",
175
189
  "seedrandom": "^3.0.5",
190
+ "typedoc": "^0.28.17",
176
191
  "typescript": "~5.9.3",
177
192
  "vitest": "^4.0.18"
178
193
  },
@@ -182,19 +197,26 @@
182
197
  },
183
198
  "dependencies": {
184
199
  "@modelcontextprotocol/sdk": "^1.12.1",
200
+ "@types/d3-quadtree": "^3.0.6",
185
201
  "d3-array": "^3.2.4",
186
202
  "d3-brush": "^3.0.0",
187
203
  "d3-chord": "^3.0.1",
188
204
  "d3-force": "^3.0.0",
189
205
  "d3-format": "^3.1.0",
206
+ "d3-geo": "^3.1.1",
190
207
  "d3-hierarchy": "^3.1.2",
191
208
  "d3-interpolate": "^3.0.1",
209
+ "d3-quadtree": "^3.0.1",
192
210
  "d3-scale": "^4.0.2",
193
211
  "d3-scale-chromatic": "^3.1.0",
194
212
  "d3-selection": "^3.0.0",
195
213
  "d3-shape": "^3.2.0",
214
+ "d3-tile": "^1.0.0",
196
215
  "d3-time-format": "^4.1.0",
197
- "regression": "^2.0.1"
216
+ "d3-zoom": "^3.0.0",
217
+ "regression": "^2.0.1",
218
+ "topojson-client": "^3.1.0",
219
+ "world-atlas": "^2.0.2"
198
220
  },
199
221
  "browserslist": {
200
222
  "development": [
@@ -1,2 +0,0 @@
1
- export declare function setupCanvasMock(): void;
2
- export declare function teardownCanvasMock(): void;