@ggts-sh/spec 0.43.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 (679) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +75 -0
  3. package/dist/artifact.d.ts +11 -0
  4. package/dist/artifact.d.ts.map +1 -0
  5. package/dist/artifact.js +71 -0
  6. package/dist/artifact.js.map +1 -0
  7. package/dist/builder-core.d.ts +100 -0
  8. package/dist/builder-core.d.ts.map +1 -0
  9. package/dist/builder-core.js +176 -0
  10. package/dist/builder-core.js.map +1 -0
  11. package/dist/builder-data.d.ts +36 -0
  12. package/dist/builder-data.d.ts.map +1 -0
  13. package/dist/builder-data.js +123 -0
  14. package/dist/builder-data.js.map +1 -0
  15. package/dist/builder-geoms.d.ts +128 -0
  16. package/dist/builder-geoms.d.ts.map +1 -0
  17. package/dist/builder-geoms.js +221 -0
  18. package/dist/builder-geoms.js.map +1 -0
  19. package/dist/builder-options.d.ts +323 -0
  20. package/dist/builder-options.d.ts.map +1 -0
  21. package/dist/builder-options.js +2 -0
  22. package/dist/builder-options.js.map +1 -0
  23. package/dist/builder-scales.d.ts +160 -0
  24. package/dist/builder-scales.d.ts.map +1 -0
  25. package/dist/builder-scales.js +322 -0
  26. package/dist/builder-scales.js.map +1 -0
  27. package/dist/builder.d.ts +242 -0
  28. package/dist/builder.d.ts.map +1 -0
  29. package/dist/builder.js +42 -0
  30. package/dist/builder.js.map +1 -0
  31. package/dist/capabilities-data.d.ts +72 -0
  32. package/dist/capabilities-data.d.ts.map +1 -0
  33. package/dist/capabilities-data.js +337 -0
  34. package/dist/capabilities-data.js.map +1 -0
  35. package/dist/capabilities-helpers.d.ts +31 -0
  36. package/dist/capabilities-helpers.d.ts.map +1 -0
  37. package/dist/capabilities-helpers.js +41 -0
  38. package/dist/capabilities-helpers.js.map +1 -0
  39. package/dist/capabilities.d.ts +22 -0
  40. package/dist/capabilities.d.ts.map +1 -0
  41. package/dist/capabilities.js +154 -0
  42. package/dist/capabilities.js.map +1 -0
  43. package/dist/coord-helpers.d.ts +102 -0
  44. package/dist/coord-helpers.d.ts.map +1 -0
  45. package/dist/coord-helpers.js +90 -0
  46. package/dist/coord-helpers.js.map +1 -0
  47. package/dist/coord-reference-build.d.ts +50 -0
  48. package/dist/coord-reference-build.d.ts.map +1 -0
  49. package/dist/coord-reference-build.js +211 -0
  50. package/dist/coord-reference-build.js.map +1 -0
  51. package/dist/coord-reference.d.ts +52 -0
  52. package/dist/coord-reference.d.ts.map +1 -0
  53. package/dist/coord-reference.js +27 -0
  54. package/dist/coord-reference.js.map +1 -0
  55. package/dist/error-catalog.d.ts +258 -0
  56. package/dist/error-catalog.d.ts.map +1 -0
  57. package/dist/error-catalog.js +235 -0
  58. package/dist/error-catalog.js.map +1 -0
  59. package/dist/error-prose-shared.d.ts +100 -0
  60. package/dist/error-prose-shared.d.ts.map +1 -0
  61. package/dist/error-prose-shared.js +95 -0
  62. package/dist/error-prose-shared.js.map +1 -0
  63. package/dist/errors.d.ts +39 -0
  64. package/dist/errors.d.ts.map +1 -0
  65. package/dist/errors.js +52 -0
  66. package/dist/errors.js.map +1 -0
  67. package/dist/generated/coord-reference-data.d.ts +189 -0
  68. package/dist/generated/coord-reference-data.d.ts.map +1 -0
  69. package/dist/generated/coord-reference-data.js +212 -0
  70. package/dist/generated/coord-reference-data.js.map +1 -0
  71. package/dist/generated/geom-param-keys.d.ts +58 -0
  72. package/dist/generated/geom-param-keys.d.ts.map +1 -0
  73. package/dist/generated/geom-param-keys.js +223 -0
  74. package/dist/generated/geom-param-keys.js.map +1 -0
  75. package/dist/generated/geom-reference-data.d.ts +2377 -0
  76. package/dist/generated/geom-reference-data.d.ts.map +1 -0
  77. package/dist/generated/geom-reference-data.js +2790 -0
  78. package/dist/generated/geom-reference-data.js.map +1 -0
  79. package/dist/generated/guide-reference-data.d.ts +219 -0
  80. package/dist/generated/guide-reference-data.d.ts.map +1 -0
  81. package/dist/generated/guide-reference-data.js +253 -0
  82. package/dist/generated/guide-reference-data.js.map +1 -0
  83. package/dist/generated/plot-spec-validator.d.ts +2 -0
  84. package/dist/generated/plot-spec-validator.d.ts.map +1 -0
  85. package/dist/generated/plot-spec-validator.js +6274 -0
  86. package/dist/generated/plot-spec-validator.js.map +1 -0
  87. package/dist/generated/position-reference-data.d.ts +82 -0
  88. package/dist/generated/position-reference-data.d.ts.map +1 -0
  89. package/dist/generated/position-reference-data.js +181 -0
  90. package/dist/generated/position-reference-data.js.map +1 -0
  91. package/dist/generated/scale-reference-data.d.ts +8366 -0
  92. package/dist/generated/scale-reference-data.d.ts.map +1 -0
  93. package/dist/generated/scale-reference-data.js +9821 -0
  94. package/dist/generated/scale-reference-data.js.map +1 -0
  95. package/dist/generated/stat-reference-data.d.ts +241 -0
  96. package/dist/generated/stat-reference-data.d.ts.map +1 -0
  97. package/dist/generated/stat-reference-data.js +311 -0
  98. package/dist/generated/stat-reference-data.js.map +1 -0
  99. package/dist/geom-params-build.d.ts +3 -0
  100. package/dist/geom-params-build.d.ts.map +1 -0
  101. package/dist/geom-params-build.js +80 -0
  102. package/dist/geom-params-build.js.map +1 -0
  103. package/dist/geom-params.d.ts +13 -0
  104. package/dist/geom-params.d.ts.map +1 -0
  105. package/dist/geom-params.js +7 -0
  106. package/dist/geom-params.js.map +1 -0
  107. package/dist/geom-reference-build.d.ts +29 -0
  108. package/dist/geom-reference-build.d.ts.map +1 -0
  109. package/dist/geom-reference-build.js +221 -0
  110. package/dist/geom-reference-build.js.map +1 -0
  111. package/dist/geom-reference.d.ts +52 -0
  112. package/dist/geom-reference.d.ts.map +1 -0
  113. package/dist/geom-reference.js +72 -0
  114. package/dist/geom-reference.js.map +1 -0
  115. package/dist/guide-helpers.d.ts +20 -0
  116. package/dist/guide-helpers.d.ts.map +1 -0
  117. package/dist/guide-helpers.js +25 -0
  118. package/dist/guide-helpers.js.map +1 -0
  119. package/dist/guide-reference-build.d.ts +42 -0
  120. package/dist/guide-reference-build.d.ts.map +1 -0
  121. package/dist/guide-reference-build.js +180 -0
  122. package/dist/guide-reference-build.js.map +1 -0
  123. package/dist/guide-reference.d.ts +48 -0
  124. package/dist/guide-reference.d.ts.map +1 -0
  125. package/dist/guide-reference.js +32 -0
  126. package/dist/guide-reference.js.map +1 -0
  127. package/dist/hue-grey-palettes.d.ts +15 -0
  128. package/dist/hue-grey-palettes.d.ts.map +1 -0
  129. package/dist/hue-grey-palettes.js +77 -0
  130. package/dist/hue-grey-palettes.js.map +1 -0
  131. package/dist/index.d.ts +364 -0
  132. package/dist/index.d.ts.map +1 -0
  133. package/dist/index.js +225 -0
  134. package/dist/index.js.map +1 -0
  135. package/dist/lint-catalog.d.ts +47 -0
  136. package/dist/lint-catalog.d.ts.map +1 -0
  137. package/dist/lint-catalog.js +39 -0
  138. package/dist/lint-catalog.js.map +1 -0
  139. package/dist/lint-layer-rules.d.ts +18 -0
  140. package/dist/lint-layer-rules.d.ts.map +1 -0
  141. package/dist/lint-layer-rules.js +145 -0
  142. package/dist/lint-layer-rules.js.map +1 -0
  143. package/dist/lint-scale-rules.d.ts +8 -0
  144. package/dist/lint-scale-rules.d.ts.map +1 -0
  145. package/dist/lint-scale-rules.js +254 -0
  146. package/dist/lint-scale-rules.js.map +1 -0
  147. package/dist/lint.d.ts +62 -0
  148. package/dist/lint.d.ts.map +1 -0
  149. package/dist/lint.js +57 -0
  150. package/dist/lint.js.map +1 -0
  151. package/dist/normalize-coord.d.ts +8 -0
  152. package/dist/normalize-coord.d.ts.map +1 -0
  153. package/dist/normalize-coord.js +123 -0
  154. package/dist/normalize-coord.js.map +1 -0
  155. package/dist/normalize-input-layers-marks.d.ts +208 -0
  156. package/dist/normalize-input-layers-marks.d.ts.map +1 -0
  157. package/dist/normalize-input-layers-marks.js +2 -0
  158. package/dist/normalize-input-layers-marks.js.map +1 -0
  159. package/dist/normalize-input-layers-special.d.ts +131 -0
  160. package/dist/normalize-input-layers-special.d.ts.map +1 -0
  161. package/dist/normalize-input-layers-special.js +2 -0
  162. package/dist/normalize-input-layers-special.js.map +1 -0
  163. package/dist/normalize-input.d.ts +81 -0
  164. package/dist/normalize-input.d.ts.map +1 -0
  165. package/dist/normalize-input.js +2 -0
  166. package/dist/normalize-input.js.map +1 -0
  167. package/dist/normalize-paint.d.ts +8 -0
  168. package/dist/normalize-paint.d.ts.map +1 -0
  169. package/dist/normalize-paint.js +83 -0
  170. package/dist/normalize-paint.js.map +1 -0
  171. package/dist/normalize-scales.d.ts +7 -0
  172. package/dist/normalize-scales.d.ts.map +1 -0
  173. package/dist/normalize-scales.js +90 -0
  174. package/dist/normalize-scales.js.map +1 -0
  175. package/dist/normalize.d.ts +46 -0
  176. package/dist/normalize.d.ts.map +1 -0
  177. package/dist/normalize.js +279 -0
  178. package/dist/normalize.js.map +1 -0
  179. package/dist/paint-helpers.d.ts +45 -0
  180. package/dist/paint-helpers.d.ts.map +1 -0
  181. package/dist/paint-helpers.js +48 -0
  182. package/dist/paint-helpers.js.map +1 -0
  183. package/dist/pipeline-error-catalog.d.ts +319 -0
  184. package/dist/pipeline-error-catalog.d.ts.map +1 -0
  185. package/dist/pipeline-error-catalog.js +260 -0
  186. package/dist/pipeline-error-catalog.js.map +1 -0
  187. package/dist/portability-check.d.ts +35 -0
  188. package/dist/portability-check.d.ts.map +1 -0
  189. package/dist/portability-check.js +121 -0
  190. package/dist/portability-check.js.map +1 -0
  191. package/dist/portability-lossy.d.ts +19 -0
  192. package/dist/portability-lossy.d.ts.map +1 -0
  193. package/dist/portability-lossy.js +65 -0
  194. package/dist/portability-lossy.js.map +1 -0
  195. package/dist/portability.d.ts +23 -0
  196. package/dist/portability.d.ts.map +1 -0
  197. package/dist/portability.js +23 -0
  198. package/dist/portability.js.map +1 -0
  199. package/dist/portable-builder.d.ts +215 -0
  200. package/dist/portable-builder.d.ts.map +1 -0
  201. package/dist/portable-builder.js +27 -0
  202. package/dist/portable-builder.js.map +1 -0
  203. package/dist/portable-entry.d.ts +16 -0
  204. package/dist/portable-entry.d.ts.map +1 -0
  205. package/dist/portable-entry.js +14 -0
  206. package/dist/portable-entry.js.map +1 -0
  207. package/dist/position-reference-build.d.ts +29 -0
  208. package/dist/position-reference-build.d.ts.map +1 -0
  209. package/dist/position-reference-build.js +115 -0
  210. package/dist/position-reference-build.js.map +1 -0
  211. package/dist/position-reference.d.ts +34 -0
  212. package/dist/position-reference.d.ts.map +1 -0
  213. package/dist/position-reference.js +19 -0
  214. package/dist/position-reference.js.map +1 -0
  215. package/dist/runtime.d.ts +139 -0
  216. package/dist/runtime.d.ts.map +1 -0
  217. package/dist/runtime.js +2 -0
  218. package/dist/runtime.js.map +1 -0
  219. package/dist/scale-color-helpers.d.ts +121 -0
  220. package/dist/scale-color-helpers.d.ts.map +1 -0
  221. package/dist/scale-color-helpers.js +188 -0
  222. package/dist/scale-color-helpers.js.map +1 -0
  223. package/dist/scale-color-hue-grey.d.ts +52 -0
  224. package/dist/scale-color-hue-grey.d.ts.map +1 -0
  225. package/dist/scale-color-hue-grey.js +60 -0
  226. package/dist/scale-color-hue-grey.js.map +1 -0
  227. package/dist/scale-color-stops.d.ts +85 -0
  228. package/dist/scale-color-stops.d.ts.map +1 -0
  229. package/dist/scale-color-stops.js +87 -0
  230. package/dist/scale-color-stops.js.map +1 -0
  231. package/dist/scale-color-viridis.d.ts +52 -0
  232. package/dist/scale-color-viridis.d.ts.map +1 -0
  233. package/dist/scale-color-viridis.js +68 -0
  234. package/dist/scale-color-viridis.js.map +1 -0
  235. package/dist/scale-helpers.d.ts +20 -0
  236. package/dist/scale-helpers.d.ts.map +1 -0
  237. package/dist/scale-helpers.js +20 -0
  238. package/dist/scale-helpers.js.map +1 -0
  239. package/dist/scale-multi-helpers.d.ts +61 -0
  240. package/dist/scale-multi-helpers.d.ts.map +1 -0
  241. package/dist/scale-multi-helpers.js +147 -0
  242. package/dist/scale-multi-helpers.js.map +1 -0
  243. package/dist/scale-position-helpers.d.ts +81 -0
  244. package/dist/scale-position-helpers.d.ts.map +1 -0
  245. package/dist/scale-position-helpers.js +133 -0
  246. package/dist/scale-position-helpers.js.map +1 -0
  247. package/dist/scale-reference-build.d.ts +50 -0
  248. package/dist/scale-reference-build.d.ts.map +1 -0
  249. package/dist/scale-reference-build.js +147 -0
  250. package/dist/scale-reference-build.js.map +1 -0
  251. package/dist/scale-reference-classify-color.d.ts +11 -0
  252. package/dist/scale-reference-classify-color.d.ts.map +1 -0
  253. package/dist/scale-reference-classify-color.js +292 -0
  254. package/dist/scale-reference-classify-color.js.map +1 -0
  255. package/dist/scale-reference-classify-position.d.ts +10 -0
  256. package/dist/scale-reference-classify-position.d.ts.map +1 -0
  257. package/dist/scale-reference-classify-position.js +137 -0
  258. package/dist/scale-reference-classify-position.js.map +1 -0
  259. package/dist/scale-reference-classify-style.d.ts +10 -0
  260. package/dist/scale-reference-classify-style.d.ts.map +1 -0
  261. package/dist/scale-reference-classify-style.js +194 -0
  262. package/dist/scale-reference-classify-style.js.map +1 -0
  263. package/dist/scale-reference-classify-support.d.ts +37 -0
  264. package/dist/scale-reference-classify-support.d.ts.map +1 -0
  265. package/dist/scale-reference-classify-support.js +206 -0
  266. package/dist/scale-reference-classify-support.js.map +1 -0
  267. package/dist/scale-reference.d.ts +80 -0
  268. package/dist/scale-reference.d.ts.map +1 -0
  269. package/dist/scale-reference.js +85 -0
  270. package/dist/scale-reference.js.map +1 -0
  271. package/dist/scale-style-helpers.d.ts +158 -0
  272. package/dist/scale-style-helpers.d.ts.map +1 -0
  273. package/dist/scale-style-helpers.js +197 -0
  274. package/dist/scale-style-helpers.js.map +1 -0
  275. package/dist/schema-catalog.d.ts +62 -0
  276. package/dist/schema-catalog.d.ts.map +1 -0
  277. package/dist/schema-catalog.js +208 -0
  278. package/dist/schema-catalog.js.map +1 -0
  279. package/dist/schema-declarations.d.ts +1585 -0
  280. package/dist/schema-declarations.d.ts.map +1 -0
  281. package/dist/schema-declarations.js +51 -0
  282. package/dist/schema-declarations.js.map +1 -0
  283. package/dist/schema-decls-data.d.ts +58 -0
  284. package/dist/schema-decls-data.d.ts.map +1 -0
  285. package/dist/schema-decls-data.js +151 -0
  286. package/dist/schema-decls-data.js.map +1 -0
  287. package/dist/schema-decls-guides-theme.d.ts +166 -0
  288. package/dist/schema-decls-guides-theme.d.ts.map +1 -0
  289. package/dist/schema-decls-guides-theme.js +251 -0
  290. package/dist/schema-decls-guides-theme.js.map +1 -0
  291. package/dist/schema-decls-layers-col-boxplot.d.ts +118 -0
  292. package/dist/schema-decls-layers-col-boxplot.d.ts.map +1 -0
  293. package/dist/schema-decls-layers-col-boxplot.js +239 -0
  294. package/dist/schema-decls-layers-col-boxplot.js.map +1 -0
  295. package/dist/schema-decls-layers-count-pointrange.d.ts +89 -0
  296. package/dist/schema-decls-layers-count-pointrange.d.ts.map +1 -0
  297. package/dist/schema-decls-layers-count-pointrange.js +190 -0
  298. package/dist/schema-decls-layers-count-pointrange.js.map +1 -0
  299. package/dist/schema-decls-layers-crossbar-jitter.d.ts +129 -0
  300. package/dist/schema-decls-layers-crossbar-jitter.d.ts.map +1 -0
  301. package/dist/schema-decls-layers-crossbar-jitter.js +255 -0
  302. package/dist/schema-decls-layers-crossbar-jitter.js.map +1 -0
  303. package/dist/schema-decls-layers-point-path.d.ts +49 -0
  304. package/dist/schema-decls-layers-point-path.d.ts.map +1 -0
  305. package/dist/schema-decls-layers-point-path.js +156 -0
  306. package/dist/schema-decls-layers-point-path.js.map +1 -0
  307. package/dist/schema-decls-layers-sf-blank.d.ts +89 -0
  308. package/dist/schema-decls-layers-sf-blank.d.ts.map +1 -0
  309. package/dist/schema-decls-layers-sf-blank.js +254 -0
  310. package/dist/schema-decls-layers-sf-blank.js.map +1 -0
  311. package/dist/schema-decls-layers-text-map.d.ts +80 -0
  312. package/dist/schema-decls-layers-text-map.d.ts.map +1 -0
  313. package/dist/schema-decls-layers-text-map.js +151 -0
  314. package/dist/schema-decls-layers-text-map.js.map +1 -0
  315. package/dist/schema-decls-paint.d.ts +39 -0
  316. package/dist/schema-decls-paint.d.ts.map +1 -0
  317. package/dist/schema-decls-paint.js +95 -0
  318. package/dist/schema-decls-paint.js.map +1 -0
  319. package/dist/schema-decls-params-area-abline.d.ts +85 -0
  320. package/dist/schema-decls-params-area-abline.d.ts.map +1 -0
  321. package/dist/schema-decls-params-area-abline.js +259 -0
  322. package/dist/schema-decls-params-area-abline.js.map +1 -0
  323. package/dist/schema-decls-params-col-contour.d.ts +61 -0
  324. package/dist/schema-decls-params-col-contour.d.ts.map +1 -0
  325. package/dist/schema-decls-params-col-contour.js +202 -0
  326. package/dist/schema-decls-params-col-contour.js.map +1 -0
  327. package/dist/schema-decls-params-curve-label.d.ts +64 -0
  328. package/dist/schema-decls-params-curve-label.d.ts.map +1 -0
  329. package/dist/schema-decls-params-curve-label.js +204 -0
  330. package/dist/schema-decls-params-curve-label.js.map +1 -0
  331. package/dist/schema-decls-params-errorbar-position.d.ts +83 -0
  332. package/dist/schema-decls-params-errorbar-position.d.ts.map +1 -0
  333. package/dist/schema-decls-params-errorbar-position.js +264 -0
  334. package/dist/schema-decls-params-errorbar-position.js.map +1 -0
  335. package/dist/schema-decls-params-point-path.d.ts +61 -0
  336. package/dist/schema-decls-params-point-path.d.ts.map +1 -0
  337. package/dist/schema-decls-params-point-path.js +240 -0
  338. package/dist/schema-decls-params-point-path.js.map +1 -0
  339. package/dist/schema-decls-params-violin-summary.d.ts +78 -0
  340. package/dist/schema-decls-params-violin-summary.d.ts.map +1 -0
  341. package/dist/schema-decls-params-violin-summary.js +272 -0
  342. package/dist/schema-decls-params-violin-summary.js.map +1 -0
  343. package/dist/schema-decls-plot.d.ts +80 -0
  344. package/dist/schema-decls-plot.d.ts.map +1 -0
  345. package/dist/schema-decls-plot.js +222 -0
  346. package/dist/schema-decls-plot.js.map +1 -0
  347. package/dist/schema-decls-scales-guides.d.ts +291 -0
  348. package/dist/schema-decls-scales-guides.d.ts.map +1 -0
  349. package/dist/schema-decls-scales-guides.js +189 -0
  350. package/dist/schema-decls-scales-guides.js.map +1 -0
  351. package/dist/schema-decls-scales.d.ts +124 -0
  352. package/dist/schema-decls-scales.d.ts.map +1 -0
  353. package/dist/schema-decls-scales.js +279 -0
  354. package/dist/schema-decls-scales.js.map +1 -0
  355. package/dist/schema-imports.d.ts +1679 -0
  356. package/dist/schema-imports.d.ts.map +1 -0
  357. package/dist/schema-imports.js +104 -0
  358. package/dist/schema-imports.js.map +1 -0
  359. package/dist/schema-name-schemas.d.ts +18 -0
  360. package/dist/schema-name-schemas.d.ts.map +1 -0
  361. package/dist/schema-name-schemas.js +13 -0
  362. package/dist/schema-name-schemas.js.map +1 -0
  363. package/dist/schema-names.d.ts +53 -0
  364. package/dist/schema-names.d.ts.map +1 -0
  365. package/dist/schema-names.js +229 -0
  366. package/dist/schema-names.js.map +1 -0
  367. package/dist/schema-types.d.ts +336 -0
  368. package/dist/schema-types.d.ts.map +1 -0
  369. package/dist/schema-types.js +10 -0
  370. package/dist/schema-types.js.map +1 -0
  371. package/dist/schema.d.ts +38 -0
  372. package/dist/schema.d.ts.map +1 -0
  373. package/dist/schema.js +34 -0
  374. package/dist/schema.js.map +1 -0
  375. package/dist/stat-reference-build.d.ts +24 -0
  376. package/dist/stat-reference-build.d.ts.map +1 -0
  377. package/dist/stat-reference-build.js +86 -0
  378. package/dist/stat-reference-build.js.map +1 -0
  379. package/dist/stat-reference.d.ts +33 -0
  380. package/dist/stat-reference.d.ts.map +1 -0
  381. package/dist/stat-reference.js +19 -0
  382. package/dist/stat-reference.js.map +1 -0
  383. package/dist/structural-gate.d.ts +15 -0
  384. package/dist/structural-gate.d.ts.map +1 -0
  385. package/dist/structural-gate.js +34 -0
  386. package/dist/structural-gate.js.map +1 -0
  387. package/dist/temporal-column.d.ts +33 -0
  388. package/dist/temporal-column.d.ts.map +1 -0
  389. package/dist/temporal-column.js +247 -0
  390. package/dist/temporal-column.js.map +1 -0
  391. package/dist/temporal-guides.d.ts +11 -0
  392. package/dist/temporal-guides.d.ts.map +1 -0
  393. package/dist/temporal-guides.js +11 -0
  394. package/dist/temporal-guides.js.map +1 -0
  395. package/dist/temporal-interval-schema.d.ts +9 -0
  396. package/dist/temporal-interval-schema.d.ts.map +1 -0
  397. package/dist/temporal-interval-schema.js +25 -0
  398. package/dist/temporal-interval-schema.js.map +1 -0
  399. package/dist/temporal-interval.d.ts +29 -0
  400. package/dist/temporal-interval.d.ts.map +1 -0
  401. package/dist/temporal-interval.js +122 -0
  402. package/dist/temporal-interval.js.map +1 -0
  403. package/dist/temporal-parse-core.d.ts +96 -0
  404. package/dist/temporal-parse-core.d.ts.map +1 -0
  405. package/dist/temporal-parse-core.js +235 -0
  406. package/dist/temporal-parse-core.js.map +1 -0
  407. package/dist/temporal-parse-format.d.ts +13 -0
  408. package/dist/temporal-parse-format.d.ts.map +1 -0
  409. package/dist/temporal-parse-format.js +180 -0
  410. package/dist/temporal-parse-format.js.map +1 -0
  411. package/dist/temporal-parse-schema.d.ts +11 -0
  412. package/dist/temporal-parse-schema.d.ts.map +1 -0
  413. package/dist/temporal-parse-schema.js +23 -0
  414. package/dist/temporal-parse-schema.js.map +1 -0
  415. package/dist/temporal-parse.d.ts +18 -0
  416. package/dist/temporal-parse.d.ts.map +1 -0
  417. package/dist/temporal-parse.js +183 -0
  418. package/dist/temporal-parse.js.map +1 -0
  419. package/dist/temporal-polyfill.d.ts +3 -0
  420. package/dist/temporal-polyfill.d.ts.map +1 -0
  421. package/dist/temporal-polyfill.js +25 -0
  422. package/dist/temporal-polyfill.js.map +1 -0
  423. package/dist/temporal-ticks.d.ts +20 -0
  424. package/dist/temporal-ticks.d.ts.map +1 -0
  425. package/dist/temporal-ticks.js +246 -0
  426. package/dist/temporal-ticks.js.map +1 -0
  427. package/dist/temporal.d.ts +109 -0
  428. package/dist/temporal.d.ts.map +1 -0
  429. package/dist/temporal.js +73 -0
  430. package/dist/temporal.js.map +1 -0
  431. package/dist/validate-data-checks-color-temporal.d.ts +58 -0
  432. package/dist/validate-data-checks-color-temporal.d.ts.map +1 -0
  433. package/dist/validate-data-checks-color-temporal.js +168 -0
  434. package/dist/validate-data-checks-color-temporal.js.map +1 -0
  435. package/dist/validate-data-checks-color.d.ts +28 -0
  436. package/dist/validate-data-checks-color.d.ts.map +1 -0
  437. package/dist/validate-data-checks-color.js +296 -0
  438. package/dist/validate-data-checks-color.js.map +1 -0
  439. package/dist/validate-data-checks-layer.d.ts +37 -0
  440. package/dist/validate-data-checks-layer.d.ts.map +1 -0
  441. package/dist/validate-data-checks-layer.js +343 -0
  442. package/dist/validate-data-checks-layer.js.map +1 -0
  443. package/dist/validate-data-checks-position.d.ts +45 -0
  444. package/dist/validate-data-checks-position.d.ts.map +1 -0
  445. package/dist/validate-data-checks-position.js +204 -0
  446. package/dist/validate-data-checks-position.js.map +1 -0
  447. package/dist/validate-data-checks-style-finite.d.ts +24 -0
  448. package/dist/validate-data-checks-style-finite.d.ts.map +1 -0
  449. package/dist/validate-data-checks-style-finite.js +40 -0
  450. package/dist/validate-data-checks-style-finite.js.map +1 -0
  451. package/dist/validate-data-checks-style-numeric.d.ts +26 -0
  452. package/dist/validate-data-checks-style-numeric.d.ts.map +1 -0
  453. package/dist/validate-data-checks-style-numeric.js +327 -0
  454. package/dist/validate-data-checks-style-numeric.js.map +1 -0
  455. package/dist/validate-data-checks-style.d.ts +14 -0
  456. package/dist/validate-data-checks-style.d.ts.map +1 -0
  457. package/dist/validate-data-checks-style.js +14 -0
  458. package/dist/validate-data-checks-style.js.map +1 -0
  459. package/dist/validate-data-checks-temporal.d.ts +57 -0
  460. package/dist/validate-data-checks-temporal.d.ts.map +1 -0
  461. package/dist/validate-data-checks-temporal.js +83 -0
  462. package/dist/validate-data-checks-temporal.js.map +1 -0
  463. package/dist/validate-data-checks.d.ts +31 -0
  464. package/dist/validate-data-checks.d.ts.map +1 -0
  465. package/dist/validate-data-checks.js +110 -0
  466. package/dist/validate-data-checks.js.map +1 -0
  467. package/dist/validate-data-evidence.d.ts +69 -0
  468. package/dist/validate-data-evidence.d.ts.map +1 -0
  469. package/dist/validate-data-evidence.js +329 -0
  470. package/dist/validate-data-evidence.js.map +1 -0
  471. package/dist/validate-data.d.ts +73 -0
  472. package/dist/validate-data.d.ts.map +1 -0
  473. package/dist/validate-data.js +30 -0
  474. package/dist/validate-data.js.map +1 -0
  475. package/dist/validate-map-errors.d.ts +32 -0
  476. package/dist/validate-map-errors.d.ts.map +1 -0
  477. package/dist/validate-map-errors.js +76 -0
  478. package/dist/validate-map-errors.js.map +1 -0
  479. package/dist/validate-map-forms.d.ts +43 -0
  480. package/dist/validate-map-forms.d.ts.map +1 -0
  481. package/dist/validate-map-forms.js +125 -0
  482. package/dist/validate-map-forms.js.map +1 -0
  483. package/dist/validate-map-path-keywords.d.ts +11 -0
  484. package/dist/validate-map-path-keywords.d.ts.map +1 -0
  485. package/dist/validate-map-path-keywords.js +95 -0
  486. package/dist/validate-map-path-keywords.js.map +1 -0
  487. package/dist/validate-map-path-unions.d.ts +27 -0
  488. package/dist/validate-map-path-unions.d.ts.map +1 -0
  489. package/dist/validate-map-path-unions.js +200 -0
  490. package/dist/validate-map-path-unions.js.map +1 -0
  491. package/dist/validate-schema-shape.d.ts +69 -0
  492. package/dist/validate-schema-shape.d.ts.map +1 -0
  493. package/dist/validate-schema-shape.js +156 -0
  494. package/dist/validate-schema-shape.js.map +1 -0
  495. package/dist/validate-schema-walk.d.ts +34 -0
  496. package/dist/validate-schema-walk.d.ts.map +1 -0
  497. package/dist/validate-schema-walk.js +216 -0
  498. package/dist/validate-schema-walk.js.map +1 -0
  499. package/dist/validate-structure-facet.d.ts +8 -0
  500. package/dist/validate-structure-facet.d.ts.map +1 -0
  501. package/dist/validate-structure-facet.js +67 -0
  502. package/dist/validate-structure-facet.js.map +1 -0
  503. package/dist/validate-structure-layer-computed-y.d.ts +14 -0
  504. package/dist/validate-structure-layer-computed-y.d.ts.map +1 -0
  505. package/dist/validate-structure-layer-computed-y.js +70 -0
  506. package/dist/validate-structure-layer-computed-y.js.map +1 -0
  507. package/dist/validate-structure-layer-ribbon.d.ts +8 -0
  508. package/dist/validate-structure-layer-ribbon.d.ts.map +1 -0
  509. package/dist/validate-structure-layer-ribbon.js +36 -0
  510. package/dist/validate-structure-layer-ribbon.js.map +1 -0
  511. package/dist/validate-structure-layer-rule.d.ts +14 -0
  512. package/dist/validate-structure-layer-rule.d.ts.map +1 -0
  513. package/dist/validate-structure-layer-rule.js +90 -0
  514. package/dist/validate-structure-layer-rule.js.map +1 -0
  515. package/dist/validate-structure-layer-shared.d.ts +12 -0
  516. package/dist/validate-structure-layer-shared.d.ts.map +1 -0
  517. package/dist/validate-structure-layer-shared.js +17 -0
  518. package/dist/validate-structure-layer-shared.js.map +1 -0
  519. package/dist/validate-structure-layers.d.ts +12 -0
  520. package/dist/validate-structure-layers.d.ts.map +1 -0
  521. package/dist/validate-structure-layers.js +292 -0
  522. package/dist/validate-structure-layers.js.map +1 -0
  523. package/dist/validate-structure-paint.d.ts +12 -0
  524. package/dist/validate-structure-paint.d.ts.map +1 -0
  525. package/dist/validate-structure-paint.js +87 -0
  526. package/dist/validate-structure-paint.js.map +1 -0
  527. package/dist/validate-structure-scales.d.ts +10 -0
  528. package/dist/validate-structure-scales.d.ts.map +1 -0
  529. package/dist/validate-structure-scales.js +242 -0
  530. package/dist/validate-structure-scales.js.map +1 -0
  531. package/dist/validate-structure-style-bins.d.ts +17 -0
  532. package/dist/validate-structure-style-bins.d.ts.map +1 -0
  533. package/dist/validate-structure-style-bins.js +150 -0
  534. package/dist/validate-structure-style-bins.js.map +1 -0
  535. package/dist/validate-structure.d.ts +16 -0
  536. package/dist/validate-structure.d.ts.map +1 -0
  537. package/dist/validate-structure.js +16 -0
  538. package/dist/validate-structure.js.map +1 -0
  539. package/dist/validate.d.ts +24 -0
  540. package/dist/validate.d.ts.map +1 -0
  541. package/dist/validate.js +178 -0
  542. package/dist/validate.js.map +1 -0
  543. package/package.json +59 -0
  544. package/schema/v0.json +9618 -0
  545. package/src/artifact.ts +81 -0
  546. package/src/builder-core.ts +276 -0
  547. package/src/builder-data.ts +156 -0
  548. package/src/builder-geoms.ts +290 -0
  549. package/src/builder-options.ts +428 -0
  550. package/src/builder-scales.ts +443 -0
  551. package/src/builder.ts +125 -0
  552. package/src/capabilities-data.ts +336 -0
  553. package/src/capabilities-helpers.ts +54 -0
  554. package/src/capabilities.ts +159 -0
  555. package/src/coord-helpers.ts +177 -0
  556. package/src/coord-reference-build.ts +283 -0
  557. package/src/coord-reference.ts +75 -0
  558. package/src/error-catalog.ts +253 -0
  559. package/src/error-prose-shared.ts +106 -0
  560. package/src/errors.ts +87 -0
  561. package/src/generated/coord-reference-data.ts +235 -0
  562. package/src/generated/geom-param-keys.ts +222 -0
  563. package/src/generated/geom-reference-data.ts +3024 -0
  564. package/src/generated/guide-reference-data.ts +284 -0
  565. package/src/generated/plot-spec-validator.ts +7335 -0
  566. package/src/generated/position-reference-data.ts +191 -0
  567. package/src/generated/scale-reference-data.ts +10665 -0
  568. package/src/generated/stat-reference-data.ts +339 -0
  569. package/src/geom-params-build.ts +92 -0
  570. package/src/geom-params.ts +14 -0
  571. package/src/geom-reference-build.ts +292 -0
  572. package/src/geom-reference.ts +127 -0
  573. package/src/guide-helpers.ts +44 -0
  574. package/src/guide-reference-build.ts +249 -0
  575. package/src/guide-reference.ts +76 -0
  576. package/src/hue-grey-palettes.ts +82 -0
  577. package/src/index.ts +400 -0
  578. package/src/lint-catalog.ts +57 -0
  579. package/src/lint-layer-rules.ts +175 -0
  580. package/src/lint-scale-rules.ts +285 -0
  581. package/src/lint.ts +126 -0
  582. package/src/normalize-coord.ts +126 -0
  583. package/src/normalize-input-layers-marks.ts +276 -0
  584. package/src/normalize-input-layers-special.ts +252 -0
  585. package/src/normalize-input.ts +154 -0
  586. package/src/normalize-paint.ts +98 -0
  587. package/src/normalize-scales.ts +108 -0
  588. package/src/normalize.ts +403 -0
  589. package/src/paint-helpers.ts +98 -0
  590. package/src/pipeline-error-catalog.ts +278 -0
  591. package/src/portability-check.ts +155 -0
  592. package/src/portability-lossy.ts +81 -0
  593. package/src/portability.ts +31 -0
  594. package/src/portable-builder.ts +35 -0
  595. package/src/portable-entry.ts +37 -0
  596. package/src/position-reference-build.ts +164 -0
  597. package/src/position-reference.ts +41 -0
  598. package/src/runtime.ts +198 -0
  599. package/src/scale-color-helpers.ts +263 -0
  600. package/src/scale-color-hue-grey.ts +95 -0
  601. package/src/scale-color-stops.ts +177 -0
  602. package/src/scale-color-viridis.ts +99 -0
  603. package/src/scale-helpers.ts +264 -0
  604. package/src/scale-multi-helpers.ts +220 -0
  605. package/src/scale-position-helpers.ts +231 -0
  606. package/src/scale-reference-build.ts +222 -0
  607. package/src/scale-reference-classify-color.ts +334 -0
  608. package/src/scale-reference-classify-position.ts +164 -0
  609. package/src/scale-reference-classify-style.ts +229 -0
  610. package/src/scale-reference-classify-support.ts +298 -0
  611. package/src/scale-reference.ts +165 -0
  612. package/src/scale-style-helpers.ts +316 -0
  613. package/src/schema-catalog.ts +222 -0
  614. package/src/schema-declarations.ts +51 -0
  615. package/src/schema-decls-data.ts +272 -0
  616. package/src/schema-decls-guides-theme.ts +395 -0
  617. package/src/schema-decls-layers-col-boxplot.ts +410 -0
  618. package/src/schema-decls-layers-count-pointrange.ts +321 -0
  619. package/src/schema-decls-layers-crossbar-jitter.ts +443 -0
  620. package/src/schema-decls-layers-point-path.ts +246 -0
  621. package/src/schema-decls-layers-sf-blank.ts +408 -0
  622. package/src/schema-decls-layers-text-map.ts +259 -0
  623. package/src/schema-decls-paint.ts +124 -0
  624. package/src/schema-decls-params-area-abline.ts +440 -0
  625. package/src/schema-decls-params-col-contour.ts +333 -0
  626. package/src/schema-decls-params-curve-label.ts +343 -0
  627. package/src/schema-decls-params-errorbar-position.ts +446 -0
  628. package/src/schema-decls-params-point-path.ts +394 -0
  629. package/src/schema-decls-params-violin-summary.ts +447 -0
  630. package/src/schema-decls-plot.ts +385 -0
  631. package/src/schema-decls-scales-guides.ts +233 -0
  632. package/src/schema-decls-scales.ts +432 -0
  633. package/src/schema-imports.ts +116 -0
  634. package/src/schema-name-schemas.ts +37 -0
  635. package/src/schema-names.ts +243 -0
  636. package/src/schema-types.ts +400 -0
  637. package/src/schema.ts +287 -0
  638. package/src/stat-reference-build.ts +145 -0
  639. package/src/stat-reference.ts +38 -0
  640. package/src/structural-gate.ts +42 -0
  641. package/src/temporal-column.ts +323 -0
  642. package/src/temporal-guides.ts +32 -0
  643. package/src/temporal-interval-schema.ts +40 -0
  644. package/src/temporal-interval.ts +151 -0
  645. package/src/temporal-parse-core.ts +331 -0
  646. package/src/temporal-parse-format.ts +222 -0
  647. package/src/temporal-parse-schema.ts +38 -0
  648. package/src/temporal-parse.ts +259 -0
  649. package/src/temporal-polyfill.ts +27 -0
  650. package/src/temporal-ticks.ts +312 -0
  651. package/src/temporal.ts +112 -0
  652. package/src/validate-data-checks-color-temporal.ts +261 -0
  653. package/src/validate-data-checks-color.ts +395 -0
  654. package/src/validate-data-checks-layer.ts +492 -0
  655. package/src/validate-data-checks-position.ts +275 -0
  656. package/src/validate-data-checks-style-finite.ts +55 -0
  657. package/src/validate-data-checks-style-numeric.ts +455 -0
  658. package/src/validate-data-checks-style.ts +13 -0
  659. package/src/validate-data-checks-temporal.ts +129 -0
  660. package/src/validate-data-checks.ts +157 -0
  661. package/src/validate-data-evidence.ts +419 -0
  662. package/src/validate-data.ts +114 -0
  663. package/src/validate-map-errors.ts +126 -0
  664. package/src/validate-map-forms.ts +148 -0
  665. package/src/validate-map-path-keywords.ts +129 -0
  666. package/src/validate-map-path-unions.ts +281 -0
  667. package/src/validate-schema-shape.ts +232 -0
  668. package/src/validate-schema-walk.ts +219 -0
  669. package/src/validate-structure-facet.ts +76 -0
  670. package/src/validate-structure-layer-computed-y.ts +94 -0
  671. package/src/validate-structure-layer-ribbon.ts +61 -0
  672. package/src/validate-structure-layer-rule.ts +98 -0
  673. package/src/validate-structure-layer-shared.ts +29 -0
  674. package/src/validate-structure-layers.ts +395 -0
  675. package/src/validate-structure-paint.ts +101 -0
  676. package/src/validate-structure-scales.ts +278 -0
  677. package/src/validate-structure-style-bins.ts +167 -0
  678. package/src/validate-structure.ts +16 -0
  679. package/src/validate.ts +212 -0
@@ -0,0 +1,336 @@
1
+ /**
2
+ * Spec type bag for Static<> extraction (not for JSON emission).
3
+ *
4
+ * Prefer `ReturnType<typeof Type.Module<...>>` over a `const SpecStatic =
5
+ * Type.Module(...)` value: once LayerSpec includes density_2d_filled + map the
6
+ * Module instance exceeds TS7056 declaration-serialize limits under composite
7
+ * emit. The type-level Module is enough for SpecType / Static<>.
8
+ */
9
+ import Type, { type Static } from "typebox";
10
+ import type { NormalizedGeomName } from "./schema-catalog.js";
11
+ import type { SpecDeclarations } from "./schema-declarations.js";
12
+ type SpecModuleStatic = ReturnType<typeof Type.Module<typeof SpecDeclarations>>;
13
+ type SpecType<K extends keyof SpecModuleStatic> = Static<SpecModuleStatic[K]>;
14
+ /** A single data cell (JSON scalar). */
15
+ export type CellValue = SpecType<"CellValue">;
16
+ /** Inline row-oriented data. */
17
+ export interface DataValues {
18
+ values: Record<string, CellValue>[];
19
+ }
20
+ /** Inline column-oriented data (equal-length arrays). */
21
+ export interface DataColumns {
22
+ columns: Record<string, CellValue[]>;
23
+ }
24
+ /** A reference to a named dataset. */
25
+ export interface DataName {
26
+ name: string;
27
+ }
28
+ /** Where a plot's data comes from. */
29
+ export type DataRef = DataValues | DataColumns | DataName;
30
+ /** Inline data only ({values} or {columns}). */
31
+ export type InlineData = DataValues | DataColumns;
32
+ /** Canonical channel value: {field} | {value, scale?} | {stat} | null. */
33
+ export type ChannelValue = SpecType<"ChannelValue">;
34
+ /** Aesthetic mapping (canonical channel forms only). */
35
+ export type Aes = SpecType<"Aes">;
36
+ /** One ordered gradient color stop. */
37
+ export type ColorStop = SpecType<"ColorStop">;
38
+ /** Gradient coordinate space. */
39
+ export type PaintSpace = SpecType<"PaintSpace">;
40
+ /** Deterministic linear gradient paint. */
41
+ export type LinearGradientPaint = SpecType<"LinearGradientPaint">;
42
+ /** Deterministic radial gradient paint. */
43
+ export type RadialGradientPaint = SpecType<"RadialGradientPaint">;
44
+ /** Closed portable gradient paint (linear | radial). */
45
+ export type GradientPaint = SpecType<"GradientPaint">;
46
+ /** Bounded glow treatment. */
47
+ export type GlowSpec = SpecType<"GlowSpec">;
48
+ /** Point layer params. */
49
+ export type PointParams = SpecType<"PointParams">;
50
+ /** Line layer params. */
51
+ export type LineParams = SpecType<"LineParams">;
52
+ /** Path layer params (no bin knobs). */
53
+ export type PathParams = SpecType<"PathParams">;
54
+ /** Step layer params (ggplot2 geom_step direction). */
55
+ export type StepParams = SpecType<"StepParams">;
56
+ /** Col layer params. */
57
+ export type ColParams = SpecType<"ColParams">;
58
+ /** Bar/histogram layer params (styling + stat-bin controls). */
59
+ export type BarParams = SpecType<"BarParams">;
60
+ /** Area layer params. */
61
+ export type AreaParams = SpecType<"AreaParams">;
62
+ /** Rule layer params (annotation intercepts + styling). */
63
+ export type RuleParams = SpecType<"RuleParams">;
64
+ /** Hline alias params (yintercept + styling). */
65
+ export type HlineParams = SpecType<"HlineParams">;
66
+ /** Vline alias params (xintercept + styling). */
67
+ export type VlineParams = SpecType<"VlineParams">;
68
+ /** Segment layer params (styling + lineend). */
69
+ export type SegmentParams = SpecType<"SegmentParams">;
70
+ export type ViolinParams = SpecType<"ViolinParams">;
71
+ /** Function layer params (named fun + grid). */
72
+ export type FunctionParams = SpecType<"FunctionParams">;
73
+ /** Named portable function registry entry. */
74
+ export type FunctionRegistryName = SpecType<"FunctionRegistryName">;
75
+ /** Args bag for registry functions. */
76
+ export type FunctionArgs = SpecType<"FunctionArgs">;
77
+ /** Polygon layer params (fill/stroke styling). */
78
+ export type PolygonParams = SpecType<"PolygonParams">;
79
+ export type AblineParams = SpecType<"AblineParams">;
80
+ /** Curve layer params (curvature/angle/ncp + stroke). */
81
+ export type CurveParams = SpecType<"CurveParams">;
82
+ /** Simple-features layer params (geometry column + styling; #809 phase 1). */
83
+ export type SfParams = SpecType<"SfParams">;
84
+ /** Map layer params (fortified map DataRef + styling; #808). */
85
+ export type MapParams = SpecType<"MapParams">;
86
+ /** SF text layer params (geometry column + text styling; #809 phase 2). */
87
+ export type SfTextParams = SpecType<"SfTextParams">;
88
+ /** SF label layer params (geometry + text + box chrome; #809 phase 3). */
89
+ export type SfLabelParams = SpecType<"SfLabelParams">;
90
+ /** Rug layer params (sides, length, stroke styling). */
91
+ export type RugParams = SpecType<"RugParams">;
92
+ export type QqParams = SpecType<"QqParams">;
93
+ export type QqLineParams = SpecType<"QqLineParams">;
94
+ /** Text layer params. */
95
+ export type TextParams = SpecType<"TextParams">;
96
+ /** Label layer params (text + background box). */
97
+ export type LabelParams = SpecType<"LabelParams">;
98
+ /** Smooth layer params (method/se/level/span/degree/n + styling). */
99
+ export type SmoothParams = SpecType<"SmoothParams">;
100
+ /** Quantile layer params (quantiles/n + styling). */
101
+ export type QuantileParams = SpecType<"QuantileParams">;
102
+ /** Contour isoline params (bins/breaks/binwidth + stroke; #801). */
103
+ export type ContourParams = SpecType<"ContourParams">;
104
+ /** Boxplot layer params. */
105
+ export type BoxplotParams = SpecType<"BoxplotParams">;
106
+ /** Density layer params (bw/adjust/n/cut + styling). */
107
+ export type DensityParams = SpecType<"DensityParams">;
108
+ /** 2D density isoline params (#802). */
109
+ export type Density2dParams = SpecType<"Density2dParams">;
110
+ /** Dotplot layer params (histodot binning + stack + point style; #803). */
111
+ export type DotplotParams = SpecType<"DotplotParams">;
112
+ /** A summary function name (stat summary). */
113
+ export type SummaryFun = SpecType<"SummaryFun">;
114
+ /** Errorbar layer params (styling + summary-stat functions). */
115
+ export type ErrorbarParams = SpecType<"ErrorbarParams">;
116
+ /** Linerange params (alias of ErrorbarParams). */
117
+ export type LinerangeParams = SpecType<"LinerangeParams">;
118
+ /** Pointrange params (stem + mid point size/shape). */
119
+ export type PointrangeParams = SpecType<"PointrangeParams">;
120
+ /** Crossbar params (width, fatten, stroke). */
121
+ export type CrossbarParams = SpecType<"CrossbarParams">;
122
+ /** Rect layer params. */
123
+ export type RectParams = SpecType<"RectParams">;
124
+ /** Tile layer params. */
125
+ export type TileParams = SpecType<"TileParams">;
126
+ /** bin_2d layer params. */
127
+ export type Bin2dParams = SpecType<"Bin2dParams">;
128
+ /** Raster layer params. */
129
+ export type RasterParams = SpecType<"RasterParams">;
130
+ /** Hex bin heatmap params. */
131
+ export type HexParams = SpecType<"HexParams">;
132
+ /** Ribbon layer params (outline, orientation, stroke ends). */
133
+ export type RibbonParams = SpecType<"RibbonParams">;
134
+ /** Jitter/nudge position parameters. */
135
+ export type PositionParams = SpecType<"PositionParams">;
136
+ type LayerWithDataRef<T> = Omit<T, "data"> & {
137
+ data?: DataRef;
138
+ };
139
+ /** A point layer. */
140
+ export type PointLayer = LayerWithDataRef<SpecType<"PointLayer">>;
141
+ /** A line layer. */
142
+ export type LineLayer = LayerWithDataRef<SpecType<"LineLayer">>;
143
+ /** A path layer (data-order polylines; ggplot2 geom_path). */
144
+ export type PathLayer = LayerWithDataRef<SpecType<"PathLayer">>;
145
+ /** A col layer (pre-computed bars). */
146
+ export type ColLayer = LayerWithDataRef<SpecType<"ColLayer">>;
147
+ /** A bar layer (count or bin stat). */
148
+ export type BarLayer = LayerWithDataRef<SpecType<"BarLayer">>;
149
+ /** A histogram layer (alias; normalize() canonicalizes to bar + stat bin). */
150
+ export type HistogramLayer = LayerWithDataRef<SpecType<"HistogramLayer">>;
151
+ /** A freqpoly layer (alias; normalize() → line + stat bin). */
152
+ export type FreqpolyLayer = LayerWithDataRef<SpecType<"FreqpolyLayer">>;
153
+ /** An area layer. */
154
+ export type AreaLayer = LayerWithDataRef<SpecType<"AreaLayer">>;
155
+ /** A rule (reference line) layer. */
156
+ export type RuleLayer = LayerWithDataRef<SpecType<"RuleLayer">>;
157
+ /** An hline layer (alias; normalize() → rule). */
158
+ export type HlineLayer = LayerWithDataRef<SpecType<"HlineLayer">>;
159
+ /** A vline layer (alias; normalize() → rule). */
160
+ export type VlineLayer = LayerWithDataRef<SpecType<"VlineLayer">>;
161
+ /** A jitter layer (alias; normalize() → point + position jitter). */
162
+ export type JitterLayer = LayerWithDataRef<SpecType<"JitterLayer">>;
163
+ /** A text-label layer. */
164
+ export type TextLayer = LayerWithDataRef<SpecType<"TextLayer">>;
165
+ /** A label layer (text with background box). */
166
+ export type LabelLayer = LayerWithDataRef<SpecType<"LabelLayer">>;
167
+ /** A smooth (fitted trend) layer. */
168
+ export type SmoothLayer = LayerWithDataRef<SpecType<"SmoothLayer">>;
169
+ /** A quantile regression layer. */
170
+ export type QuantileLayer = LayerWithDataRef<SpecType<"QuantileLayer">>;
171
+ /** A contour isoline layer (#801). */
172
+ export type ContourLayer = LayerWithDataRef<SpecType<"ContourLayer">>;
173
+ /** A boxplot layer. */
174
+ export type BoxplotLayer = LayerWithDataRef<SpecType<"BoxplotLayer">>;
175
+ /** A density (KDE) layer. */
176
+ export type DensityLayer = LayerWithDataRef<SpecType<"DensityLayer">>;
177
+ /** A 2D density isoline layer (#802). */
178
+ export type Density2dLayer = LayerWithDataRef<SpecType<"Density2dLayer">>;
179
+ /** A filled 2D density layer. */
180
+ export type Density2dFilledLayer = LayerWithDataRef<SpecType<"Density2dFilledLayer">>;
181
+ /** A stacked-dot (geom_dotplot) layer. */
182
+ export type DotplotLayer = LayerWithDataRef<SpecType<"DotplotLayer">>;
183
+ /** An errorbar layer. */
184
+ export type ErrorbarLayer = LayerWithDataRef<SpecType<"ErrorbarLayer">>;
185
+ /** A linerange layer (stem without caps). */
186
+ export type LinerangeLayer = LayerWithDataRef<SpecType<"LinerangeLayer">>;
187
+ /** A pointrange layer (stem + mid point). */
188
+ export type PointrangeLayer = LayerWithDataRef<SpecType<"PointrangeLayer">>;
189
+ /** A crossbar layer (interval box + mid line). */
190
+ export type CrossbarLayer = LayerWithDataRef<SpecType<"CrossbarLayer">>;
191
+ /** A rect layer (arbitrary xmin/xmax/ymin/ymax regions). */
192
+ export type RectLayer = LayerWithDataRef<SpecType<"RectLayer">>;
193
+ /** A tile layer (center-sized cells). */
194
+ export type TileLayer = LayerWithDataRef<SpecType<"TileLayer">>;
195
+ /** A 2D bin heatmap layer. */
196
+ export type Bin2dLayer = LayerWithDataRef<SpecType<"Bin2dLayer">>;
197
+ /** A raster layer (equal-cell dense grid). */
198
+ export type RasterLayer = LayerWithDataRef<SpecType<"RasterLayer">>;
199
+ /** A hexagonal bin heatmap layer. */
200
+ export type HexLayer = LayerWithDataRef<SpecType<"HexLayer">>;
201
+ /** A ribbon (interval band) layer. */
202
+ export type RibbonLayer = LayerWithDataRef<SpecType<"RibbonLayer">>;
203
+ /** A finite segment layer ((x,y)→(xend,yend)). */
204
+ export type SegmentLayer = LayerWithDataRef<SpecType<"SegmentLayer">>;
205
+ /** Count (geom_count / stat_sum) layer. */
206
+ export type CountLayer = LayerWithDataRef<SpecType<"CountLayer">>; /** A slope/intercept reference line layer (geom_abline). */
207
+ /** A violin (mirrored y-density) layer. */
208
+ export type ViolinLayer = LayerWithDataRef<SpecType<"ViolinLayer">>;
209
+ /** An analytic function path layer (y = f(x) grid). */
210
+ export type FunctionLayer = LayerWithDataRef<SpecType<"FunctionLayer">>;
211
+ /** A closed polygon layer ((x,y) vertices in data order). */
212
+ export type PolygonLayer = LayerWithDataRef<SpecType<"PolygonLayer">>;
213
+ /** A slope/intercept reference line layer (geom_abline). */
214
+ export type AblineLayer = LayerWithDataRef<SpecType<"AblineLayer">>;
215
+ /** A curve layer (curved connectors). */
216
+ export type CurveLayer = LayerWithDataRef<SpecType<"CurveLayer">>;
217
+ /** A choropleth/map layer (#808). */
218
+ export type MapLayer = LayerWithDataRef<SpecType<"MapLayer">>;
219
+ export type SfLayer = LayerWithDataRef<SpecType<"SfLayer">>;
220
+ /** An sf_text layer (labels at representative points; #809 phase 2). */
221
+ export type SfTextLayer = LayerWithDataRef<SpecType<"SfTextLayer">>;
222
+ /** An sf_label layer (boxed labels at representative points; #809 phase 3). */
223
+ export type SfLabelLayer = LayerWithDataRef<SpecType<"SfLabelLayer">>;
224
+ /**
225
+ * Empty params bag for blank layers.
226
+ *
227
+ * TypeBox `Type.Object({})` Static-infers as `{}`, which is *not* assignable
228
+ * to `Record<string, unknown>` and also poisons `LayerSpec["params"]` unions
229
+ * (oxlint no-unnecessary-type-assertion on every `(layer.params ?? {}) as X`).
230
+ * Override so blank matches every other geom params bag.
231
+ */
232
+ export type BlankParams = Record<string, never>;
233
+ /** A blank layer (no marks; trains scales from mapped aesthetics). */
234
+ export type BlankLayer = LayerWithDataRef<Omit<SpecType<"BlankLayer">, "params"> & {
235
+ readonly params?: BlankParams;
236
+ }>;
237
+ export type SpokeParams = SpecType<"SpokeParams">;
238
+ export type SpokeLayer = LayerWithDataRef<SpecType<"SpokeLayer">>;
239
+ /** A marginal rug layer (edge ticks). */
240
+ export type RugLayer = LayerWithDataRef<SpecType<"RugLayer">>;
241
+ /** A step-line layer (ggplot2 geom_step). */
242
+ export type StepLayer = LayerWithDataRef<SpecType<"StepLayer">>;
243
+ export type QqLayer = LayerWithDataRef<SpecType<"QqLayer">>;
244
+ export type QqLineLayer = LayerWithDataRef<SpecType<"QqLineLayer">>;
245
+ /** One plot layer, discriminated by `geom`. */
246
+ export type LayerSpec = PointLayer | LineLayer | PathLayer | ColLayer | BarLayer | HistogramLayer | FreqpolyLayer | AreaLayer | RibbonLayer | SegmentLayer | CountLayer | ViolinLayer | FunctionLayer | PolygonLayer | AblineLayer | CurveLayer | MapLayer | SfLayer | SfTextLayer | SfLabelLayer | BlankLayer | SpokeLayer | RugLayer | StepLayer | RuleLayer | HlineLayer | VlineLayer | JitterLayer | TextLayer | LabelLayer | SmoothLayer | QuantileLayer | ContourLayer | BoxplotLayer | DensityLayer | Density2dLayer | Density2dFilledLayer | DotplotLayer | ErrorbarLayer | LinerangeLayer | PointrangeLayer | CrossbarLayer | RectLayer | TileLayer | Bin2dLayer | RasterLayer | HexLayer | QqLayer | QqLineLayer;
247
+ /**
248
+ * A layer that survived normalize(): the alias geoms (histogram, freqpoly,
249
+ * jitter, hline, vline) are rewritten by then, so this union is 44 wide, not
250
+ * 49. Keying pipeline tables off it lets `tsc` name a geom nobody handled
251
+ * instead of leaving a silent `default:` arm (#1042).
252
+ */
253
+ export type NormalizedLayerSpec = Extract<LayerSpec, {
254
+ geom: NormalizedGeomName;
255
+ }>;
256
+ /** Stackable position adjustment names. */
257
+ export type StackablePosition = SpecType<"StackablePosition">;
258
+ /** Position adjustments accepted by point layers. */
259
+ export type PointPosition = "identity" | "jitter" | "nudge";
260
+ /** Positional (x/y) scale configuration. */
261
+ export type TemporalParserSpec = SpecType<"TemporalParserSpec">;
262
+ export type PositionScaleSpec = SpecType<"PositionScaleSpec">;
263
+ /** Display-domain expansion ({ mult?, add? }) for continuous/binned scales. */
264
+ export type ScaleExpansion = SpecType<"ScaleExpansion">;
265
+ /** Color/fill scale configuration. */
266
+ export type ColorScaleSpec = SpecType<"ColorScaleSpec">;
267
+ /** Positive numeric size/linewidth scale configuration. */
268
+ export type PositiveStyleScaleSpec = SpecType<"PositiveStyleScaleSpec">;
269
+ /** Opacity scale configuration. */
270
+ export type AlphaScaleSpec = SpecType<"AlphaScaleSpec">;
271
+ /** Finite point-shape scale configuration. */
272
+ export type ShapeScaleSpec = SpecType<"ShapeScaleSpec">;
273
+ /** Finite stroke-pattern scale configuration. */
274
+ export type LinetypeScaleSpec = SpecType<"LinetypeScaleSpec">;
275
+ /** Per-scale configuration for all position and style aesthetics. */
276
+ export type Scales = SpecType<"Scales">;
277
+ /** Facet-panel scale behavior. */
278
+ export type FacetScales = SpecType<"FacetScales">;
279
+ /** Facet configuration (wrap OR rows/cols grid). */
280
+ export type FacetFieldRef = SpecType<"FacetFieldRef">;
281
+ export type FacetStripSpec = SpecType<"FacetStripSpec">;
282
+ export type FacetSpec = SpecType<"FacetSpec">;
283
+ /** One post-stat coordinate axis transform. */
284
+ export type CoordTransformAxisSpec = SpecType<"CoordTransformAxisSpec">;
285
+ /** Post-stat coordinate transform configuration. */
286
+ export type CoordTransformSpec = SpecType<"CoordTransformSpec">;
287
+ /** Fixed-aspect Cartesian coordinate configuration. */
288
+ export type CoordFixedSpec = SpecType<"CoordFixedSpec">;
289
+ /** Simple-features fixed-aspect coordinates (already-projected maps; #809). */
290
+ export type CoordSfSpec = SpecType<"CoordSfSpec">;
291
+ /** Polar/radial coordinates (ggplot2 coord_radial / coord_polar). */
292
+ export type CoordRadialSpec = SpecType<"CoordRadialSpec">;
293
+ /** Cartesian, flipped, post-stat transformed, fixed-aspect, SF, or radial. */
294
+ export type CoordSpec = SpecType<"CoordSpec">;
295
+ /** Per-layer rendering backend hint. */
296
+ export type RenderBackend = SpecType<"RenderBackend">;
297
+ /** Plot-level accessibility mode. */
298
+ export type A11yMode = "auto" | "force-svg";
299
+ /** Bounded per-guide presentation theme overrides. */
300
+ export type GuideThemeSpec = SpecType<"GuideThemeSpec">;
301
+ export type BandAxisGuideSpec = SpecType<"BandAxisGuideSpec">;
302
+ export type AxisGuideSpec = SpecType<"AxisGuideSpec">;
303
+ export type LegendGuideSpec = SpecType<"LegendGuideSpec">;
304
+ export type ColorbarGuideSpec = SpecType<"ColorbarGuideSpec">;
305
+ export type ColorstepsGuideSpec = SpecType<"ColorstepsGuideSpec">;
306
+ export type NoneGuideSpec = SpecType<"NoneGuideSpec">;
307
+ /** One portable appearance-only guide configuration. */
308
+ export type GuideSpec = SpecType<"GuideSpec">;
309
+ /** Guide configuration keyed by aesthetic. */
310
+ export type GuidesSpec = SpecType<"GuidesSpec">;
311
+ /** Legacy legend ordering options. */
312
+ export type LegendSpec = SpecType<"LegendSpec">;
313
+ /** Built-in theme names. */
314
+ export type ThemeName = SpecType<"ThemeName">;
315
+ /** Theme object: named base + role overrides. */
316
+ export type ThemeSpec = SpecType<"ThemeSpec">;
317
+ /** Plot labels. */
318
+ export type Labs = SpecType<"Labs">;
319
+ /** The canonical, strictly-JSON plot spec (what agents emit and schemas describe). */
320
+ export type PortableSpec = Omit<SpecType<"PlotSpec">, "data" | "datasets" | "layers"> & {
321
+ data?: DataRef;
322
+ datasets?: Record<string, InlineData>;
323
+ layers: LayerSpec[];
324
+ };
325
+ /**
326
+ * What normalize() returns: a PortableSpec whose layers carry no alias geom.
327
+ *
328
+ * Assignable to PortableSpec, so passing the result on is unchanged. The JSON
329
+ * Schema keeps describing PortableSpec — histogram and friends stay legal
330
+ * *input*; they just cannot survive normalize().
331
+ */
332
+ export type NormalizedSpec = Omit<PortableSpec, "layers"> & {
333
+ layers: NormalizedLayerSpec[];
334
+ };
335
+ export {};
336
+ //# sourceMappingURL=schema-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-types.d.ts","sourceRoot":"","sources":["../src/schema-types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Spec type bag for Static<> extraction (not for JSON emission).
3
+ *
4
+ * Prefer `ReturnType<typeof Type.Module<...>>` over a `const SpecStatic =
5
+ * Type.Module(...)` value: once LayerSpec includes density_2d_filled + map the
6
+ * Module instance exceeds TS7056 declaration-serialize limits under composite
7
+ * emit. The type-level Module is enough for SpecType / Static<>.
8
+ */
9
+ import Type, {} from "typebox";
10
+ //# sourceMappingURL=schema-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-types.js","sourceRoot":"","sources":["../src/schema-types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,IAAI,EAAE,EAAe,MAAM,SAAS,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * The ggts spec schema — TypeBox is the source of truth (decision 0004).
3
+ *
4
+ * These definitions ARE the published JSON Schema (via `Type.Cyclic` for named
5
+ * `$defs`, emitted to `schema/v0.json` by `scripts/emit-schema.ts`) AND the TS
6
+ * types (via `Static<>`) AND the runtime validator input (`Value.Check`).
7
+ * One artifact, no drift.
8
+ *
9
+ * Authoring rules (from decision 0004):
10
+ * - Strict objects everywhere (`additionalProperties: false`).
11
+ * - Every field carries a description written for LLMs; numeric constraints
12
+ * are ALSO stated in descriptions because constrained-decoding grammars may
13
+ * drop or reject numeric keywords.
14
+ * - No bare-string channel shorthand in the schema: agents emit canonical
15
+ * channel forms only. The shorthand exists only in the TS builder/adapter.
16
+ * - Unions are `anyOf` by construction (TypeBox default) — the form OpenAI
17
+ * structured outputs accept.
18
+ * - `Type.Record` is used for `data.columns`/`datasets` only; the artifact
19
+ * emitter rewrites its `patternProperties` to `additionalProperties`
20
+ * (semantically identical for the `^(.*)$` pattern) so the published
21
+ * schema stays inside portable JSON Schema.
22
+ *
23
+ * Layout: name registries (`schema-names.ts`), ordered `$defs` bag
24
+ * (`schema-declarations.ts`), pipeline catalogs (`schema-catalog.ts`), the
25
+ * Cyclic/Module assembly + imported schemas (`schema-imports.ts`), and the
26
+ * public Static type bag (`schema-types.ts`). This module is a pure
27
+ * re-export facade.
28
+ * `$defs` key **insertion order** in the declarations bag is load-bearing for
29
+ * the byte-stable `schema/v0.json` artifact.
30
+ */
31
+ export { CATEGORICAL_SCHEME_NAMES, COLOR_SCHEME_NAMES, CYCLIC_SCHEME_NAMES, LINETYPE_NAMES, MAX_BINNED_BREAKS, MAX_GLOW_RADIUS, MAX_PAINT_STOPS, POINT_SHAPE_NAMES, SEQUENTIAL_SCHEME_NAMES, THEME_NAMES, THEME_NAME_ALIASES, } from "./schema-names.js";
32
+ export type { LinetypeName, PointShapeName } from "./schema-names.js";
33
+ export { ALIAS_GEOMS, CHANNELS, CURRENT_EDITION, GEOM_ALIASES, GEOM_DEFAULTS, KNOWN_GEOMS, KNOWN_POSITIONS, KNOWN_STATS, } from "./schema-catalog.js";
34
+ export type { AliasGeomName, ChannelName, GeomName, NormalizedGeomName, PositionName, StatName, } from "./schema-catalog.js";
35
+ export { AesSchema, AblineLayerSchema, AreaLayerSchema, BarLayerSchema, Bin2dLayerSchema, BlankLayerSchema, BoxplotLayerSchema, ChannelValueSchema, ColLayerSchema, ContourLayerSchema, CoordFixedSpecSchema, CoordRadialSpecSchema, CoordSfSpecSchema, CoordSpecSchema, CoordTransformAxisSpecSchema, CoordTransformSpecSchema, CountLayerSchema, CrossbarLayerSchema, CurveLayerSchema, DataRefSchema, Density2dFilledLayerSchema, Density2dLayerSchema, DensityLayerSchema, DotplotLayerSchema, ErrorbarLayerSchema, FacetFieldRefSchema, FacetSpecSchema, FacetStripSpecSchema, FreqpolyLayerSchema, FunctionLayerSchema, HexLayerSchema, HistogramLayerSchema, HlineLayerSchema, JitterLayerSchema, LabelLayerSchema, LayerSpecSchema, LinerangeLayerSchema, LineLayerSchema, MapLayerSchema, PathLayerSchema, PlotSpecSchema, PointLayerSchema, PointrangeLayerSchema, PolygonLayerSchema, QuantileLayerSchema, QqLayerSchema, QqLineLayerSchema, RasterLayerSchema, RectLayerSchema, RibbonLayerSchema, RuleLayerSchema, RugLayerSchema, ScalesSchema, SegmentLayerSchema, SfLabelLayerSchema, SfLayerSchema, SfTextLayerSchema, SmoothLayerSchema, SpokeLayerSchema, StepLayerSchema, TemporalParserSpecSchemaRef, TextLayerSchema, TileLayerSchema, VlineLayerSchema, ViolinLayerSchema, SpecModule, } from "./schema-imports.js";
36
+ export type { SpecImportSchema } from "./schema-imports.js";
37
+ export type { A11yMode, AblineLayer, AblineParams, Aes, AlphaScaleSpec, AreaLayer, AreaParams, AxisGuideSpec, BandAxisGuideSpec, BarLayer, BarParams, Bin2dLayer, Bin2dParams, BlankLayer, BlankParams, BoxplotLayer, BoxplotParams, CellValue, ChannelValue, ColorScaleSpec, ColorStop, ColorbarGuideSpec, ColorstepsGuideSpec, ContourLayer, ContourParams, CoordFixedSpec, CoordRadialSpec, CoordSfSpec, CoordSpec, CoordTransformAxisSpec, CoordTransformSpec, CountLayer, CrossbarLayer, CrossbarParams, CurveLayer, CurveParams, DataColumns, DataName, DataRef, DataValues, Density2dFilledLayer, Density2dLayer, Density2dParams, DensityLayer, DensityParams, DotplotLayer, DotplotParams, ErrorbarLayer, ErrorbarParams, FacetFieldRef, FacetScales, FacetSpec, FacetStripSpec, FreqpolyLayer, FunctionArgs, FunctionLayer, FunctionParams, FunctionRegistryName, GlowSpec, GuideSpec, GuideThemeSpec, GuidesSpec, HexLayer, HexParams, HlineLayer, HlineParams, InlineData, JitterLayer, LabelLayer, LabelParams, Labs, LayerSpec, LegendGuideSpec, LegendSpec, LinerangeLayer, LinerangeParams, LineLayer, LineParams, LinetypeScaleSpec, LinearGradientPaint, MapLayer, MapParams, NoneGuideSpec, NormalizedLayerSpec, NormalizedSpec, PaintSpace, PointLayer, PathLayer, ColLayer, HistogramLayer, PathParams, ColParams, PointParams, PointPosition, PointrangeLayer, PointrangeParams, PolygonLayer, PolygonParams, PortableSpec, PositionParams, PositionScaleSpec, PositiveStyleScaleSpec, QuantileLayer, QuantileParams, QqLayer, QqLineLayer, QqLineParams, QqParams, RadialGradientPaint, GradientPaint, RasterLayer, RasterParams, RectLayer, RectParams, RenderBackend, RibbonLayer, RibbonParams, RuleLayer, RuleParams, RugLayer, RugParams, ScaleExpansion, Scales, SegmentLayer, SegmentParams, SfLabelLayer, SfLabelParams, SfLayer, SfParams, SfTextLayer, SfTextParams, ShapeScaleSpec, SmoothLayer, SmoothParams, SpokeLayer, SpokeParams, StackablePosition, StepLayer, StepParams, SummaryFun, TemporalParserSpec, TextLayer, TextParams, ThemeName, ThemeSpec, TileLayer, TileParams, VlineLayer, VlineParams, ViolinLayer, ViolinParams, } from "./schema-types.js";
38
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/dist/schema.js ADDED
@@ -0,0 +1,34 @@
1
+ /**
2
+ * The ggts spec schema — TypeBox is the source of truth (decision 0004).
3
+ *
4
+ * These definitions ARE the published JSON Schema (via `Type.Cyclic` for named
5
+ * `$defs`, emitted to `schema/v0.json` by `scripts/emit-schema.ts`) AND the TS
6
+ * types (via `Static<>`) AND the runtime validator input (`Value.Check`).
7
+ * One artifact, no drift.
8
+ *
9
+ * Authoring rules (from decision 0004):
10
+ * - Strict objects everywhere (`additionalProperties: false`).
11
+ * - Every field carries a description written for LLMs; numeric constraints
12
+ * are ALSO stated in descriptions because constrained-decoding grammars may
13
+ * drop or reject numeric keywords.
14
+ * - No bare-string channel shorthand in the schema: agents emit canonical
15
+ * channel forms only. The shorthand exists only in the TS builder/adapter.
16
+ * - Unions are `anyOf` by construction (TypeBox default) — the form OpenAI
17
+ * structured outputs accept.
18
+ * - `Type.Record` is used for `data.columns`/`datasets` only; the artifact
19
+ * emitter rewrites its `patternProperties` to `additionalProperties`
20
+ * (semantically identical for the `^(.*)$` pattern) so the published
21
+ * schema stays inside portable JSON Schema.
22
+ *
23
+ * Layout: name registries (`schema-names.ts`), ordered `$defs` bag
24
+ * (`schema-declarations.ts`), pipeline catalogs (`schema-catalog.ts`), the
25
+ * Cyclic/Module assembly + imported schemas (`schema-imports.ts`), and the
26
+ * public Static type bag (`schema-types.ts`). This module is a pure
27
+ * re-export facade.
28
+ * `$defs` key **insertion order** in the declarations bag is load-bearing for
29
+ * the byte-stable `schema/v0.json` artifact.
30
+ */
31
+ export { CATEGORICAL_SCHEME_NAMES, COLOR_SCHEME_NAMES, CYCLIC_SCHEME_NAMES, LINETYPE_NAMES, MAX_BINNED_BREAKS, MAX_GLOW_RADIUS, MAX_PAINT_STOPS, POINT_SHAPE_NAMES, SEQUENTIAL_SCHEME_NAMES, THEME_NAMES, THEME_NAME_ALIASES, } from "./schema-names.js";
32
+ export { ALIAS_GEOMS, CHANNELS, CURRENT_EDITION, GEOM_ALIASES, GEOM_DEFAULTS, KNOWN_GEOMS, KNOWN_POSITIONS, KNOWN_STATS, } from "./schema-catalog.js";
33
+ export { AesSchema, AblineLayerSchema, AreaLayerSchema, BarLayerSchema, Bin2dLayerSchema, BlankLayerSchema, BoxplotLayerSchema, ChannelValueSchema, ColLayerSchema, ContourLayerSchema, CoordFixedSpecSchema, CoordRadialSpecSchema, CoordSfSpecSchema, CoordSpecSchema, CoordTransformAxisSpecSchema, CoordTransformSpecSchema, CountLayerSchema, CrossbarLayerSchema, CurveLayerSchema, DataRefSchema, Density2dFilledLayerSchema, Density2dLayerSchema, DensityLayerSchema, DotplotLayerSchema, ErrorbarLayerSchema, FacetFieldRefSchema, FacetSpecSchema, FacetStripSpecSchema, FreqpolyLayerSchema, FunctionLayerSchema, HexLayerSchema, HistogramLayerSchema, HlineLayerSchema, JitterLayerSchema, LabelLayerSchema, LayerSpecSchema, LinerangeLayerSchema, LineLayerSchema, MapLayerSchema, PathLayerSchema, PlotSpecSchema, PointLayerSchema, PointrangeLayerSchema, PolygonLayerSchema, QuantileLayerSchema, QqLayerSchema, QqLineLayerSchema, RasterLayerSchema, RectLayerSchema, RibbonLayerSchema, RuleLayerSchema, RugLayerSchema, ScalesSchema, SegmentLayerSchema, SfLabelLayerSchema, SfLayerSchema, SfTextLayerSchema, SmoothLayerSchema, SpokeLayerSchema, StepLayerSchema, TemporalParserSpecSchemaRef, TextLayerSchema, TileLayerSchema, VlineLayerSchema, ViolinLayerSchema, SpecModule, } from "./schema-imports.js";
34
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,uBAAuB,EACvB,WAAW,EACX,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,WAAW,EACX,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,aAAa,EACb,WAAW,EACX,eAAe,EACf,WAAW,GACZ,MAAM,qBAAqB,CAAC;AAU7B,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,4BAA4B,EAC5B,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,0BAA0B,EAC1B,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,2BAA2B,EAC3B,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,GACX,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * STAT_REFERENCE builder. Gen-only: `scripts/gen-reference-catalogs.ts`.
3
+ * Runtime uses generated/stat-reference-data.ts.
4
+ */
5
+ import { type GeomName, type StatName } from "./schema-catalog.js";
6
+ export interface StatReferenceEntry {
7
+ readonly name: StatName;
8
+ /** Route slug — same as stat name (snake_case). */
9
+ readonly slug: string;
10
+ /** Short purpose text for the stat transform. */
11
+ readonly summary: string;
12
+ /**
13
+ * Columns this stat publishes for `{ stat: "…" }` channel resolution
14
+ * (after_stat). Empty when the stat passes rows through or only rewrites
15
+ * positions without new after_stat names in STAT_COLUMNS.
16
+ */
17
+ readonly generatedColumns: readonly string[];
18
+ /** Geoms whose layer schema allows this stat. */
19
+ readonly compatibleGeoms: readonly GeomName[];
20
+ /** Geoms whose GEOM_DEFAULTS.stat is this stat. */
21
+ readonly defaultForGeoms: readonly GeomName[];
22
+ }
23
+ export declare function buildStatReference(): Readonly<Record<StatName, StatReferenceEntry>>;
24
+ //# sourceMappingURL=stat-reference-build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stat-reference-build.d.ts","sourceRoot":"","sources":["../src/stat-reference-build.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAIL,KAAK,QAAQ,EACb,KAAK,QAAQ,EACd,MAAM,qBAAqB,CAAC;AAU7B,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,mDAAmD;IACnD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,iDAAiD;IACjD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,QAAQ,CAAC,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7C,iDAAiD;IACjD,QAAQ,CAAC,eAAe,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC9C,mDAAmD;IACnD,QAAQ,CAAC,eAAe,EAAE,SAAS,QAAQ,EAAE,CAAC;CAC/C;AAsGD,wBAAgB,kBAAkB,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAMnF"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * STAT_REFERENCE builder. Gen-only: `scripts/gen-reference-catalogs.ts`.
3
+ * Runtime uses generated/stat-reference-data.ts.
4
+ */
5
+ import { GEOM_DEFAULTS, KNOWN_GEOMS, KNOWN_STATS, } from "./schema-catalog.js";
6
+ import { buildGeomReference } from "./geom-reference-build.js";
7
+ const GEOM_REFERENCE = buildGeomReference();
8
+ import { STAT_COLUMNS } from "./validate-data-checks-layer.js";
9
+ // ---------------------------------------------------------------------------
10
+ // Hand-authored summaries (module contracts; not inventable from TypeBox alone)
11
+ // ---------------------------------------------------------------------------
12
+ /**
13
+ * One-paragraph purpose for each KNOWN_STATS entry. Source notes live in
14
+ * packages/core/src/stats/* module headers; keep these short for the index.
15
+ */
16
+ const STAT_SUMMARIES = Object.freeze({
17
+ identity: "Pass rows through unchanged. Default for most geoms: each mapped row becomes one mark with no aggregation.",
18
+ unique: "Keep one row per distinct mapped (x, y) pair (and group). Use when duplicate coordinates would overplot; default for none.",
19
+ manual: "Author-supplied after_stat values via params — skip automatic transforms when you already computed summaries.",
20
+ connect: "Expand successive points into connection vertices (linear, hv, vh, mid) for stepped or path-style joins between observations.",
21
+ count: "Count rows (or sum weights) per distinct x within each group. Default for geom_bar; publishes after_stat count.",
22
+ bin: "Bin continuous x into histogram breaks. Publishes count, density, ncount, and ndensity; default for histogram and freqpoly.",
23
+ bin_hex: "Hexagonal 2D binning over continuous x and y. Publishes count/density columns for geom_hex heatmaps.",
24
+ bin_2d: "Rectangular 2D binning over continuous x and y. Publishes count/density and bin edges for geom_bin_2d tiles.",
25
+ smooth: "Fit a smoother (lm or loess) and evaluate along x. Publishes y, ymin, ymax, and se; default for geom_smooth.",
26
+ quantile: "Estimate conditional quantiles of y given x. Publishes y at each requested probability; default for geom_quantile.",
27
+ boxplot: "Five-number summary per group (hinges and whiskers). Publishes ymin, lower, middle, upper, ymax; default for geom_boxplot.",
28
+ density: "1D Gaussian kernel density estimate along x. Publishes density, count, scaled, and ndensity; default for geom_density.",
29
+ summary: "Collapse each discrete-x group to one summary (default mean ± se). Publishes y, ymin, ymax for error-style geoms.",
30
+ sum: "Count overlapping points at each (x, y) cell for geom_count. Publishes n and prop (not y).",
31
+ ydensity: "Kernel density along y for violin shapes. Publishes density, count, scaled, violinwidth, and y; default for geom_violin.",
32
+ function: "Evaluate a pure function on an x grid. Publishes y; default for geom_function when no data rows drive the mark.",
33
+ ecdf: "Empirical cumulative distribution F̂(x). Publishes ecdf; pair with step or path geoms for CDF plots.",
34
+ summary_bin: "Bin continuous x, then summarize y in each bin (mean ± se by default). Publishes y, ymin, ymax for binned summaries.",
35
+ summary_rolling: "Centered rolling window over continuous x (params.window, in x units): summarize y per (group, unique x). Partial windows at the ends are kept. Publishes y.",
36
+ contour: "Marching-squares isolines over a regular x×y×z grid. Publishes level; default for geom_contour.",
37
+ align: "Interpolate series onto a shared x grid so continuous-x stacks and overlays line up (stack-friendly zeros outside range).",
38
+ density_2d: "Bivariate KDE with isolines. Publishes level and density; default for geom_density_2d.",
39
+ density_2d_filled: "Bivariate KDE with closed density rings for filled contours. Publishes level and density; default for geom_density_2d_filled.",
40
+ bindot: "Histodot binning for geom_dotplot: one stack position per observation. Publishes stackpos (and bin occupancy).",
41
+ ellipse: "Confidence ellipse over bivariate points (level and type from params). Passes geometry suited to path/polygon-style marks.",
42
+ sf: "Simple-features geometry expansion for geom_sf: multiparts and holes become drawable rings without after_stat columns.",
43
+ sf_coordinates: "Label anchors from SF geometries for geom_sf_text and geom_sf_label (one point per feature or part).",
44
+ qq: "Sample vs theoretical quantiles for Q–Q plots. Publishes sample and theoretical; default for geom_qq.",
45
+ qq_line: "Reference line through Q–Q sample/theoretical quantiles. Publishes sample and theoretical; default for geom_qq_line.",
46
+ });
47
+ // ---------------------------------------------------------------------------
48
+ // Build
49
+ // ---------------------------------------------------------------------------
50
+ function buildCompatibleGeoms(stat) {
51
+ const geoms = [];
52
+ for (const geom of KNOWN_GEOMS) {
53
+ if (GEOM_REFERENCE[geom].allowedStats.includes(stat)) {
54
+ geoms.push(geom);
55
+ }
56
+ }
57
+ return Object.freeze(geoms);
58
+ }
59
+ function buildDefaultForGeoms(stat) {
60
+ const geoms = [];
61
+ for (const geom of KNOWN_GEOMS) {
62
+ if (GEOM_DEFAULTS[geom].stat === stat) {
63
+ geoms.push(geom);
64
+ }
65
+ }
66
+ return Object.freeze(geoms);
67
+ }
68
+ function buildEntry(stat) {
69
+ const columns = STAT_COLUMNS[stat] ?? [];
70
+ return Object.freeze({
71
+ name: stat,
72
+ slug: stat,
73
+ summary: STAT_SUMMARIES[stat],
74
+ generatedColumns: Object.freeze([...columns]),
75
+ compatibleGeoms: buildCompatibleGeoms(stat),
76
+ defaultForGeoms: buildDefaultForGeoms(stat),
77
+ });
78
+ }
79
+ export function buildStatReference() {
80
+ const out = {};
81
+ for (const stat of KNOWN_STATS) {
82
+ out[stat] = buildEntry(stat);
83
+ }
84
+ return Object.freeze(out);
85
+ }
86
+ //# sourceMappingURL=stat-reference-build.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stat-reference-build.js","sourceRoot":"","sources":["../src/stat-reference-build.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * STAT_REFERENCE — per-stat API docs for the docs site.
3
+ *
4
+ * Catalog data is precomputed (`scripts/gen-reference-catalogs.ts`) so
5
+ * reference pages never load TypeBox or the validate data-checks path.
6
+ * Stats are not Svelte components: set `stat` on a `<Geom*>` shell or JSON layer.
7
+ */
8
+ import { type GeomName, type StatName } from "./schema-catalog.js";
9
+ export interface StatReferenceEntry {
10
+ readonly name: StatName;
11
+ /** Route slug — same as stat name (snake_case). */
12
+ readonly slug: string;
13
+ /** Short purpose text for the stat transform. */
14
+ readonly summary: string;
15
+ /**
16
+ * Columns this stat publishes for `{ stat: "…" }` channel resolution
17
+ * (after_stat). Empty when the stat passes rows through or only rewrites
18
+ * positions without new after_stat names in STAT_COLUMNS.
19
+ */
20
+ readonly generatedColumns: readonly string[];
21
+ /** Geoms whose layer schema allows this stat. */
22
+ readonly compatibleGeoms: readonly GeomName[];
23
+ /** Geoms whose GEOM_DEFAULTS.stat is this stat. */
24
+ readonly defaultForGeoms: readonly GeomName[];
25
+ }
26
+ /**
27
+ * Complete per-stat API reference. Keys are exactly KNOWN_STATS.
28
+ * Precomputed at gen time from GEOM_REFERENCE + STAT_COLUMNS.
29
+ */
30
+ export declare const STAT_REFERENCE: Readonly<Record<StatName, StatReferenceEntry>>;
31
+ /** Stable list order matching KNOWN_STATS (docs index, search, inventory). */
32
+ export declare function statReferenceList(): readonly StatReferenceEntry[];
33
+ //# sourceMappingURL=stat-reference.d.ts.map