@rippling/rippling-sdk 0.2.0-alpha.108 → 0.2.0-alpha.110

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 (366) hide show
  1. package/client.d.mts +14 -0
  2. package/client.d.mts.map +1 -1
  3. package/client.d.ts +14 -0
  4. package/client.d.ts.map +1 -1
  5. package/client.js +18 -0
  6. package/client.js.map +1 -1
  7. package/client.mjs +18 -0
  8. package/client.mjs.map +1 -1
  9. package/index.d.mts +5 -0
  10. package/index.d.mts.map +1 -1
  11. package/index.d.ts +5 -0
  12. package/index.d.ts.map +1 -1
  13. package/index.js +11 -1
  14. package/index.js.map +1 -1
  15. package/index.mjs +5 -0
  16. package/index.mjs.map +1 -1
  17. package/lib/charts/builders.d.mts +18 -19
  18. package/lib/charts/builders.d.mts.map +1 -1
  19. package/lib/charts/builders.d.ts +18 -19
  20. package/lib/charts/builders.d.ts.map +1 -1
  21. package/lib/charts/builders.js +35 -28
  22. package/lib/charts/builders.js.map +1 -1
  23. package/lib/charts/builders.mjs +35 -28
  24. package/lib/charts/builders.mjs.map +1 -1
  25. package/lib/charts/describe.d.mts +6 -7
  26. package/lib/charts/describe.d.mts.map +1 -1
  27. package/lib/charts/describe.d.ts +6 -7
  28. package/lib/charts/describe.d.ts.map +1 -1
  29. package/lib/charts/describe.js +26 -27
  30. package/lib/charts/describe.js.map +1 -1
  31. package/lib/charts/describe.mjs +27 -28
  32. package/lib/charts/describe.mjs.map +1 -1
  33. package/lib/charts/errors.d.mts +2 -6
  34. package/lib/charts/errors.d.mts.map +1 -1
  35. package/lib/charts/errors.d.ts +2 -6
  36. package/lib/charts/errors.d.ts.map +1 -1
  37. package/lib/charts/errors.js +2 -6
  38. package/lib/charts/errors.js.map +1 -1
  39. package/lib/charts/errors.mjs +2 -6
  40. package/lib/charts/errors.mjs.map +1 -1
  41. package/lib/charts/evaluate.d.mts +5 -7
  42. package/lib/charts/evaluate.d.mts.map +1 -1
  43. package/lib/charts/evaluate.d.ts +5 -7
  44. package/lib/charts/evaluate.d.ts.map +1 -1
  45. package/lib/charts/evaluate.js +21 -35
  46. package/lib/charts/evaluate.js.map +1 -1
  47. package/lib/charts/evaluate.mjs +22 -36
  48. package/lib/charts/evaluate.mjs.map +1 -1
  49. package/lib/charts/schema.d.mts +8 -97
  50. package/lib/charts/schema.d.mts.map +1 -1
  51. package/lib/charts/schema.d.ts +8 -97
  52. package/lib/charts/schema.d.ts.map +1 -1
  53. package/lib/charts/schema.js +186 -65
  54. package/lib/charts/schema.js.map +1 -1
  55. package/lib/charts/schema.mjs +185 -65
  56. package/lib/charts/schema.mjs.map +1 -1
  57. package/lib/charts/types.d.mts +40 -25
  58. package/lib/charts/types.d.mts.map +1 -1
  59. package/lib/charts/types.d.ts +40 -25
  60. package/lib/charts/types.d.ts.map +1 -1
  61. package/lib/charts/types.js +8 -10
  62. package/lib/charts/types.js.map +1 -1
  63. package/lib/charts/types.mjs +8 -10
  64. package/lib/charts/types.mjs.map +1 -1
  65. package/lib/charts/visualization-grammar.d.mts +66 -0
  66. package/lib/charts/visualization-grammar.d.mts.map +1 -0
  67. package/lib/charts/visualization-grammar.d.ts +66 -0
  68. package/lib/charts/visualization-grammar.d.ts.map +1 -0
  69. package/lib/charts/visualization-grammar.js +70 -0
  70. package/lib/charts/visualization-grammar.js.map +1 -0
  71. package/lib/charts/visualization-grammar.mjs +67 -0
  72. package/lib/charts/visualization-grammar.mjs.map +1 -0
  73. package/lib/charts/vocabulary.d.mts +7 -0
  74. package/lib/charts/vocabulary.d.mts.map +1 -0
  75. package/lib/charts/vocabulary.d.ts +7 -0
  76. package/lib/charts/vocabulary.d.ts.map +1 -0
  77. package/lib/charts/vocabulary.js +10 -0
  78. package/lib/charts/vocabulary.js.map +1 -0
  79. package/lib/charts/vocabulary.mjs +7 -0
  80. package/lib/charts/vocabulary.mjs.map +1 -0
  81. package/lib/charts.d.mts +3 -3
  82. package/lib/charts.d.mts.map +1 -1
  83. package/lib/charts.d.ts +3 -3
  84. package/lib/charts.d.ts.map +1 -1
  85. package/lib/charts.js +2 -1
  86. package/lib/charts.js.map +1 -1
  87. package/lib/charts.mjs +1 -1
  88. package/lib/charts.mjs.map +1 -1
  89. package/lib/manifest/composition.d.mts +21 -0
  90. package/lib/manifest/composition.d.mts.map +1 -0
  91. package/lib/manifest/composition.d.ts +21 -0
  92. package/lib/manifest/composition.d.ts.map +1 -0
  93. package/lib/manifest/composition.js +103 -0
  94. package/lib/manifest/composition.js.map +1 -0
  95. package/lib/manifest/composition.mjs +99 -0
  96. package/lib/manifest/composition.mjs.map +1 -0
  97. package/lib/manifest/definitions/_object-records.d.mts +23 -0
  98. package/lib/manifest/definitions/_object-records.d.mts.map +1 -0
  99. package/lib/manifest/definitions/_object-records.d.ts +23 -0
  100. package/lib/manifest/definitions/_object-records.d.ts.map +1 -0
  101. package/lib/manifest/definitions/_object-records.js +151 -0
  102. package/lib/manifest/definitions/_object-records.js.map +1 -0
  103. package/lib/manifest/definitions/_object-records.mjs +147 -0
  104. package/lib/manifest/definitions/_object-records.mjs.map +1 -0
  105. package/lib/manifest/definitions/action.d.mts +7 -0
  106. package/lib/manifest/definitions/action.d.mts.map +1 -0
  107. package/lib/manifest/definitions/action.d.ts +7 -0
  108. package/lib/manifest/definitions/action.d.ts.map +1 -0
  109. package/lib/manifest/definitions/action.js +25 -0
  110. package/lib/manifest/definitions/action.js.map +1 -0
  111. package/lib/manifest/definitions/action.mjs +22 -0
  112. package/lib/manifest/definitions/action.mjs.map +1 -0
  113. package/lib/manifest/definitions/agent.d.mts +51 -0
  114. package/lib/manifest/definitions/agent.d.mts.map +1 -0
  115. package/lib/manifest/definitions/agent.d.ts +51 -0
  116. package/lib/manifest/definitions/agent.d.ts.map +1 -0
  117. package/lib/manifest/definitions/agent.js +65 -0
  118. package/lib/manifest/definitions/agent.js.map +1 -0
  119. package/lib/manifest/definitions/agent.mjs +59 -0
  120. package/lib/manifest/definitions/agent.mjs.map +1 -0
  121. package/lib/manifest/definitions/app.d.mts +3 -0
  122. package/lib/manifest/definitions/app.d.mts.map +1 -0
  123. package/lib/manifest/definitions/app.d.ts +3 -0
  124. package/lib/manifest/definitions/app.d.ts.map +1 -0
  125. package/lib/manifest/definitions/app.js +14 -0
  126. package/lib/manifest/definitions/app.js.map +1 -0
  127. package/lib/manifest/definitions/app.mjs +11 -0
  128. package/lib/manifest/definitions/app.mjs.map +1 -0
  129. package/lib/manifest/definitions/category.d.mts +9 -0
  130. package/lib/manifest/definitions/category.d.mts.map +1 -0
  131. package/lib/manifest/definitions/category.d.ts +9 -0
  132. package/lib/manifest/definitions/category.d.ts.map +1 -0
  133. package/lib/manifest/definitions/category.js +27 -0
  134. package/lib/manifest/definitions/category.js.map +1 -0
  135. package/lib/manifest/definitions/category.mjs +23 -0
  136. package/lib/manifest/definitions/category.mjs.map +1 -0
  137. package/lib/manifest/definitions/component.d.mts +101 -0
  138. package/lib/manifest/definitions/component.d.mts.map +1 -0
  139. package/lib/manifest/definitions/component.d.ts +101 -0
  140. package/lib/manifest/definitions/component.d.ts.map +1 -0
  141. package/lib/manifest/definitions/component.js +106 -0
  142. package/lib/manifest/definitions/component.js.map +1 -0
  143. package/lib/manifest/definitions/component.mjs +97 -0
  144. package/lib/manifest/definitions/component.mjs.map +1 -0
  145. package/lib/manifest/definitions/custom-field-section.d.mts +13 -0
  146. package/lib/manifest/definitions/custom-field-section.d.mts.map +1 -0
  147. package/lib/manifest/definitions/custom-field-section.d.ts +13 -0
  148. package/lib/manifest/definitions/custom-field-section.d.ts.map +1 -0
  149. package/lib/manifest/definitions/custom-field-section.js +15 -0
  150. package/lib/manifest/definitions/custom-field-section.js.map +1 -0
  151. package/lib/manifest/definitions/custom-field-section.mjs +12 -0
  152. package/lib/manifest/definitions/custom-field-section.mjs.map +1 -0
  153. package/lib/manifest/definitions/custom-field.d.mts +10 -0
  154. package/lib/manifest/definitions/custom-field.d.mts.map +1 -0
  155. package/lib/manifest/definitions/custom-field.d.ts +10 -0
  156. package/lib/manifest/definitions/custom-field.d.ts.map +1 -0
  157. package/lib/manifest/definitions/custom-field.js +18 -0
  158. package/lib/manifest/definitions/custom-field.js.map +1 -0
  159. package/lib/manifest/definitions/custom-field.mjs +15 -0
  160. package/lib/manifest/definitions/custom-field.mjs.map +1 -0
  161. package/lib/manifest/definitions/custom-object.d.mts +162 -0
  162. package/lib/manifest/definitions/custom-object.d.mts.map +1 -0
  163. package/lib/manifest/definitions/custom-object.d.ts +162 -0
  164. package/lib/manifest/definitions/custom-object.d.ts.map +1 -0
  165. package/lib/manifest/definitions/custom-object.js +412 -0
  166. package/lib/manifest/definitions/custom-object.js.map +1 -0
  167. package/lib/manifest/definitions/custom-object.mjs +386 -0
  168. package/lib/manifest/definitions/custom-object.mjs.map +1 -0
  169. package/lib/manifest/definitions/custom-skill.d.mts +8 -0
  170. package/lib/manifest/definitions/custom-skill.d.mts.map +1 -0
  171. package/lib/manifest/definitions/custom-skill.d.ts +8 -0
  172. package/lib/manifest/definitions/custom-skill.d.ts.map +1 -0
  173. package/lib/manifest/definitions/custom-skill.js +15 -0
  174. package/lib/manifest/definitions/custom-skill.js.map +1 -0
  175. package/lib/manifest/definitions/custom-skill.mjs +12 -0
  176. package/lib/manifest/definitions/custom-skill.mjs.map +1 -0
  177. package/lib/manifest/definitions/field-section.d.mts +7 -0
  178. package/lib/manifest/definitions/field-section.d.mts.map +1 -0
  179. package/lib/manifest/definitions/field-section.d.ts +7 -0
  180. package/lib/manifest/definitions/field-section.d.ts.map +1 -0
  181. package/lib/manifest/definitions/field-section.js +16 -0
  182. package/lib/manifest/definitions/field-section.js.map +1 -0
  183. package/lib/manifest/definitions/field-section.mjs +13 -0
  184. package/lib/manifest/definitions/field-section.mjs.map +1 -0
  185. package/lib/manifest/definitions/field.d.mts +38 -0
  186. package/lib/manifest/definitions/field.d.mts.map +1 -0
  187. package/lib/manifest/definitions/field.d.ts +38 -0
  188. package/lib/manifest/definitions/field.d.ts.map +1 -0
  189. package/lib/manifest/definitions/field.js +50 -0
  190. package/lib/manifest/definitions/field.js.map +1 -0
  191. package/lib/manifest/definitions/field.mjs +45 -0
  192. package/lib/manifest/definitions/field.mjs.map +1 -0
  193. package/lib/manifest/definitions/function.d.mts +61 -0
  194. package/lib/manifest/definitions/function.d.mts.map +1 -0
  195. package/lib/manifest/definitions/function.d.ts +61 -0
  196. package/lib/manifest/definitions/function.d.ts.map +1 -0
  197. package/lib/manifest/definitions/function.js +79 -0
  198. package/lib/manifest/definitions/function.js.map +1 -0
  199. package/lib/manifest/definitions/function.mjs +73 -0
  200. package/lib/manifest/definitions/function.mjs.map +1 -0
  201. package/lib/manifest/definitions/index.d.mts +22 -0
  202. package/lib/manifest/definitions/index.d.mts.map +1 -0
  203. package/lib/manifest/definitions/index.d.ts +22 -0
  204. package/lib/manifest/definitions/index.d.ts.map +1 -0
  205. package/lib/manifest/definitions/index.js +64 -0
  206. package/lib/manifest/definitions/index.js.map +1 -0
  207. package/lib/manifest/definitions/index.mjs +22 -0
  208. package/lib/manifest/definitions/index.mjs.map +1 -0
  209. package/lib/manifest/definitions/list-view.d.mts +9 -0
  210. package/lib/manifest/definitions/list-view.d.mts.map +1 -0
  211. package/lib/manifest/definitions/list-view.d.ts +9 -0
  212. package/lib/manifest/definitions/list-view.d.ts.map +1 -0
  213. package/lib/manifest/definitions/list-view.js +25 -0
  214. package/lib/manifest/definitions/list-view.js.map +1 -0
  215. package/lib/manifest/definitions/list-view.mjs +22 -0
  216. package/lib/manifest/definitions/list-view.mjs.map +1 -0
  217. package/lib/manifest/definitions/object-search-config.d.mts +13 -0
  218. package/lib/manifest/definitions/object-search-config.d.mts.map +1 -0
  219. package/lib/manifest/definitions/object-search-config.d.ts +13 -0
  220. package/lib/manifest/definitions/object-search-config.d.ts.map +1 -0
  221. package/lib/manifest/definitions/object-search-config.js +25 -0
  222. package/lib/manifest/definitions/object-search-config.js.map +1 -0
  223. package/lib/manifest/definitions/object-search-config.mjs +22 -0
  224. package/lib/manifest/definitions/object-search-config.mjs.map +1 -0
  225. package/lib/manifest/definitions/object-settings.d.mts +24 -0
  226. package/lib/manifest/definitions/object-settings.d.mts.map +1 -0
  227. package/lib/manifest/definitions/object-settings.d.ts +24 -0
  228. package/lib/manifest/definitions/object-settings.d.ts.map +1 -0
  229. package/lib/manifest/definitions/object-settings.js +32 -0
  230. package/lib/manifest/definitions/object-settings.js.map +1 -0
  231. package/lib/manifest/definitions/object-settings.mjs +29 -0
  232. package/lib/manifest/definitions/object-settings.mjs.map +1 -0
  233. package/lib/manifest/definitions/page-layout.d.mts +21 -0
  234. package/lib/manifest/definitions/page-layout.d.mts.map +1 -0
  235. package/lib/manifest/definitions/page-layout.d.ts +21 -0
  236. package/lib/manifest/definitions/page-layout.d.ts.map +1 -0
  237. package/lib/manifest/definitions/page-layout.js +155 -0
  238. package/lib/manifest/definitions/page-layout.js.map +1 -0
  239. package/lib/manifest/definitions/page-layout.mjs +152 -0
  240. package/lib/manifest/definitions/page-layout.mjs.map +1 -0
  241. package/lib/manifest/definitions/page.d.mts +8 -0
  242. package/lib/manifest/definitions/page.d.mts.map +1 -0
  243. package/lib/manifest/definitions/page.d.ts +8 -0
  244. package/lib/manifest/definitions/page.d.ts.map +1 -0
  245. package/lib/manifest/definitions/page.js +15 -0
  246. package/lib/manifest/definitions/page.js.map +1 -0
  247. package/lib/manifest/definitions/page.mjs +12 -0
  248. package/lib/manifest/definitions/page.mjs.map +1 -0
  249. package/lib/manifest/definitions/record-triggered-flow.d.mts +24 -0
  250. package/lib/manifest/definitions/record-triggered-flow.d.mts.map +1 -0
  251. package/lib/manifest/definitions/record-triggered-flow.d.ts +24 -0
  252. package/lib/manifest/definitions/record-triggered-flow.d.ts.map +1 -0
  253. package/lib/manifest/definitions/record-triggered-flow.js +28 -0
  254. package/lib/manifest/definitions/record-triggered-flow.js.map +1 -0
  255. package/lib/manifest/definitions/record-triggered-flow.mjs +25 -0
  256. package/lib/manifest/definitions/record-triggered-flow.mjs.map +1 -0
  257. package/lib/manifest/definitions/validation.d.mts +8 -0
  258. package/lib/manifest/definitions/validation.d.mts.map +1 -0
  259. package/lib/manifest/definitions/validation.d.ts +8 -0
  260. package/lib/manifest/definitions/validation.d.ts.map +1 -0
  261. package/lib/manifest/definitions/validation.js +24 -0
  262. package/lib/manifest/definitions/validation.js.map +1 -0
  263. package/lib/manifest/definitions/validation.mjs +21 -0
  264. package/lib/manifest/definitions/validation.mjs.map +1 -0
  265. package/lib/manifest/definitions/workflow.d.mts +10 -0
  266. package/lib/manifest/definitions/workflow.d.mts.map +1 -0
  267. package/lib/manifest/definitions/workflow.d.ts +10 -0
  268. package/lib/manifest/definitions/workflow.d.ts.map +1 -0
  269. package/lib/manifest/definitions/workflow.js +33 -0
  270. package/lib/manifest/definitions/workflow.js.map +1 -0
  271. package/lib/manifest/definitions/workflow.mjs +29 -0
  272. package/lib/manifest/definitions/workflow.mjs.map +1 -0
  273. package/lib/manifest/index.d.mts +3 -0
  274. package/lib/manifest/index.d.mts.map +1 -1
  275. package/lib/manifest/index.d.ts +3 -0
  276. package/lib/manifest/index.d.ts.map +1 -1
  277. package/lib/manifest/index.js +4 -0
  278. package/lib/manifest/index.js.map +1 -1
  279. package/lib/manifest/index.mjs +3 -0
  280. package/lib/manifest/index.mjs.map +1 -1
  281. package/lib/manifest/package-manifest.d.mts +17 -0
  282. package/lib/manifest/package-manifest.d.mts.map +1 -0
  283. package/lib/manifest/package-manifest.d.ts +17 -0
  284. package/lib/manifest/package-manifest.d.ts.map +1 -0
  285. package/lib/manifest/package-manifest.js +26 -0
  286. package/lib/manifest/package-manifest.js.map +1 -0
  287. package/lib/manifest/package-manifest.mjs +23 -0
  288. package/lib/manifest/package-manifest.mjs.map +1 -0
  289. package/package.json +4 -2
  290. package/resources/index.d.mts +1 -0
  291. package/resources/index.d.mts.map +1 -1
  292. package/resources/index.d.ts +1 -0
  293. package/resources/index.d.ts.map +1 -1
  294. package/resources/index.js +4 -2
  295. package/resources/index.js.map +1 -1
  296. package/resources/index.mjs +1 -0
  297. package/resources/index.mjs.map +1 -1
  298. package/resources/reimbursements.d.mts +1 -1
  299. package/resources/reimbursements.d.ts +1 -1
  300. package/resources/reimbursements.js +1 -1
  301. package/resources/reimbursements.mjs +1 -1
  302. package/resources/spend-categories.d.mts +140 -0
  303. package/resources/spend-categories.d.mts.map +1 -0
  304. package/resources/spend-categories.d.ts +140 -0
  305. package/resources/spend-categories.d.ts.map +1 -0
  306. package/resources/spend-categories.js +83 -0
  307. package/resources/spend-categories.js.map +1 -0
  308. package/resources/spend-categories.mjs +79 -0
  309. package/resources/spend-categories.mjs.map +1 -0
  310. package/src/client.ts +41 -0
  311. package/src/index.ts +17 -0
  312. package/src/lib/charts/README.md +35 -28
  313. package/src/lib/charts/agent-reference.md +73 -0
  314. package/src/lib/charts/builders.ts +51 -35
  315. package/src/lib/charts/capabilities.json +96 -0
  316. package/src/lib/charts/describe.ts +31 -29
  317. package/src/lib/charts/errors.ts +2 -6
  318. package/src/lib/charts/evaluate.ts +25 -38
  319. package/src/lib/charts/schema.ts +232 -66
  320. package/src/lib/charts/types.ts +42 -31
  321. package/src/lib/charts/visualization-grammar.ts +67 -0
  322. package/src/lib/charts/vocabulary.ts +7 -0
  323. package/src/lib/charts.ts +8 -1
  324. package/src/lib/manifest/composition.ts +133 -0
  325. package/src/lib/manifest/definitions/README.md +89 -0
  326. package/src/lib/manifest/definitions/_object-records.ts +218 -0
  327. package/src/lib/manifest/definitions/action.ts +31 -0
  328. package/src/lib/manifest/definitions/agent.ts +149 -0
  329. package/src/lib/manifest/definitions/app.ts +12 -0
  330. package/src/lib/manifest/definitions/category.ts +35 -0
  331. package/src/lib/manifest/definitions/component.ts +241 -0
  332. package/src/lib/manifest/definitions/custom-field-section.ts +39 -0
  333. package/src/lib/manifest/definitions/custom-field.ts +32 -0
  334. package/src/lib/manifest/definitions/custom-object.ts +786 -0
  335. package/src/lib/manifest/definitions/custom-skill.ts +28 -0
  336. package/src/lib/manifest/definitions/field-section.ts +31 -0
  337. package/src/lib/manifest/definitions/field.ts +119 -0
  338. package/src/lib/manifest/definitions/function.ts +198 -0
  339. package/src/lib/manifest/definitions/index.ts +91 -0
  340. package/src/lib/manifest/definitions/list-view.ts +48 -0
  341. package/src/lib/manifest/definitions/object-search-config.ts +44 -0
  342. package/src/lib/manifest/definitions/object-settings.ts +61 -0
  343. package/src/lib/manifest/definitions/page-layout.ts +218 -0
  344. package/src/lib/manifest/definitions/page.ts +28 -0
  345. package/src/lib/manifest/definitions/record-triggered-flow.ts +71 -0
  346. package/src/lib/manifest/definitions/validation.ts +46 -0
  347. package/src/lib/manifest/definitions/workflow.ts +62 -0
  348. package/src/lib/manifest/index.ts +4 -0
  349. package/src/lib/manifest/package-manifest.ts +40 -0
  350. package/src/resources/index.ts +7 -0
  351. package/src/resources/reimbursements.ts +1 -1
  352. package/src/resources/spend-categories.ts +175 -0
  353. package/src/version.ts +1 -1
  354. package/version.d.mts +1 -1
  355. package/version.d.ts +1 -1
  356. package/version.js +1 -1
  357. package/version.mjs +1 -1
  358. package/lib/charts/guards.d.mts +0 -15
  359. package/lib/charts/guards.d.mts.map +0 -1
  360. package/lib/charts/guards.d.ts +0 -15
  361. package/lib/charts/guards.d.ts.map +0 -1
  362. package/lib/charts/guards.js +0 -38
  363. package/lib/charts/guards.js.map +0 -1
  364. package/lib/charts/guards.mjs +0 -34
  365. package/lib/charts/guards.mjs.map +0 -1
  366. package/src/lib/charts/guards.ts +0 -42
@@ -1,17 +1,20 @@
1
1
  /**
2
2
  * Chart rule vocabulary — shared types.
3
3
  *
4
- * A rule is a small, serializable tree of nodes discriminated by `kind`. The
4
+ * A rule is a small, serializable value discriminated by `kind`. The
5
5
  * agent builds it with the helpers in `builders.ts`, which emit it wrapped in a
6
6
  * `{$rule}` placeholder — the same idea as the `{$fn}` placeholders a chart
7
7
  * already emits. The renderer resolves it with `evaluate`; the settings panel
8
8
  * reads it with `describe`. All three agree because a node can only ever be one
9
- * of the kinds defined here — the closed set the `chartRuleSchema` describes.
9
+ * of the kinds defined here — the closed set the executable `chartRuleSchema`
10
+ * validates at runtime.
10
11
  *
11
- * v1 is scoped to conditional formatting: compare this datum's `value` against a
12
- * constant, and (optionally) pick between two values. Richer pieces — aggregates,
13
- * logic, more refs — are the documented roadmap in the README.
12
+ * v1 is deliberately non-recursive: compare this datum's `value` or a literal
13
+ * against another literal, then choose between two colour literals. Rules may
14
+ * not appear inside operands or branches. Richer expressions require a future
15
+ * contract version.
14
16
  */
17
+ import { COMPARISON_KINDS, RULE_CHANNELS } from "./vocabulary.mjs";
15
18
  export declare const CHART_RULE_CONTRACT_VERSION: "chart_rule.v1";
16
19
  export type ChartRuleContractVersion = typeof CHART_RULE_CONTRACT_VERSION;
17
20
  /** A leaf value a rule can carry or resolve to. */
@@ -20,53 +23,64 @@ export type Scalar = number | string | boolean | null;
20
23
  export type RefNode = {
21
24
  kind: 'value';
22
25
  };
23
- export interface LiteralNode {
26
+ export interface LiteralNode<TValue extends Scalar = Scalar> {
24
27
  kind: 'literal';
25
- value: Scalar;
28
+ value: TValue;
26
29
  }
27
- export type ComparisonKind = 'equals' | 'isNot' | 'lessThan' | 'greaterThan' | 'lessOrEqual' | 'greaterOrEqual';
28
- export interface ComparisonNode {
29
- kind: ComparisonKind;
30
- left: RuleNode;
31
- right: RuleNode;
30
+ export type ComparisonOperandNode = RefNode | LiteralNode;
31
+ export type NumericOperandNode = RefNode | LiteralNode<number>;
32
+ export type ComparisonKind = (typeof COMPARISON_KINDS)[number];
33
+ export interface EqualityComparisonNode {
34
+ kind: 'equals' | 'isNot';
35
+ left: ComparisonOperandNode;
36
+ right: ComparisonOperandNode;
32
37
  }
38
+ export interface NumericComparisonNode {
39
+ kind: Exclude<ComparisonKind, EqualityComparisonNode['kind']>;
40
+ left: NumericOperandNode;
41
+ right: NumericOperandNode;
42
+ }
43
+ export type ComparisonNode = EqualityComparisonNode | NumericComparisonNode;
44
+ /** A node whose evaluated result is valid as a `when(...)` condition in v1. */
45
+ export type ConditionNode = ComparisonNode;
33
46
  /** The conditional-value form produced by `when(cond, then, else)`. */
34
47
  export interface IfElseNode {
35
48
  kind: 'ifElse';
36
- cond: RuleNode;
37
- then: RuleNode;
38
- else: RuleNode;
49
+ cond: ConditionNode;
50
+ then: LiteralNode<string>;
51
+ else: LiteralNode<string | null>;
39
52
  }
40
- /** Any node of a rule tree. */
53
+ /** Any top-level node accepted by the v1 runtime boundary. */
41
54
  export type RuleNode = RefNode | LiteralNode | ComparisonNode | IfElseNode;
42
55
  /**
43
56
  * The chart channel a rule drives. v1 supports colour only — a rule decides the
44
57
  * colour of a series/datum. Other channels (opacity, label visibility, …) are
45
58
  * the documented roadmap and would be added here.
46
59
  */
47
- export type RuleChannel = 'color';
60
+ export type RuleChannel = (typeof RULE_CHANNELS)[number];
48
61
  /**
49
- * What a builder returns: a rule tree, marked so the renderer can find it, and
62
+ * What a builder returns: a flat rule value, marked so the renderer can find it, and
50
63
  * tagged with the channel it targets. `channel: 'color'` says this resolves to a
51
64
  * colour — so a reader sees the target without inferring it from where it sits.
52
65
  */
53
66
  export interface RulePlaceholder {
54
- $rule: RuleNode;
67
+ $rule: IfElseNode;
55
68
  channel: RuleChannel;
56
69
  }
57
- /** A placeholder, or the bare tree — what `evaluate` and `describe` accept. */
70
+ /** A placeholder, or a bare node — what `evaluate` and `describe` accept. */
58
71
  export type Rule = RulePlaceholder | RuleNode;
72
+ type DeepReadonly<T> = T extends object ? {
73
+ readonly [Key in keyof T]: DeepReadonly<T[Key]>;
74
+ } : T;
75
+ /** The deeply frozen value returned by `parseChartRule`. */
76
+ export type ParsedRule = DeepReadonly<Rule>;
59
77
  /** What a rule is evaluated against: the current datum's value. */
60
78
  export interface RuleContext {
61
79
  value: number;
62
80
  }
63
81
  /** The result of evaluating a node. */
64
82
  export type RuleValue = Scalar;
65
- /**
66
- * The deepest a rule may nest before `evaluate`/`describe` refuse it. Real rules
67
- * are a handful of levels; this only stops a pathological deserialized tree from
68
- * overflowing the stack. Far below the JS call-stack limit.
69
- */
83
+ /** @deprecated v1 is non-recursive. Retained for source compatibility. */
70
84
  export declare const MAX_RULE_DEPTH = 256;
71
85
  export type ControlRole = 'rule' | 'comparison' | 'ref' | 'literal';
72
86
  /** A node as the panel should show it: a label, its editable value, its parts. */
@@ -76,4 +90,5 @@ export interface Control {
76
90
  value?: Scalar;
77
91
  parts?: Control[];
78
92
  }
93
+ export {};
79
94
  //# sourceMappingURL=types.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,2BAA2B,EAAG,eAAwB,CAAC;AACpE,MAAM,MAAM,wBAAwB,GAAG,OAAO,2BAA2B,CAAC;AAE1E,mDAAmD;AACnD,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAMtD,gFAAgF;AAChF,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAExC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,OAAO,GACP,UAAU,GACV,aAAa,GACb,aAAa,GACb,gBAAgB,CAAC;AACrB,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,uEAAuE;AACvE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,+BAA+B;AAC/B,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,WAAW,GAAG,cAAc,GAAG,UAAU,CAAC;AAM3E;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,+EAA+E;AAC/E,MAAM,MAAM,IAAI,GAAG,eAAe,GAAG,QAAQ,CAAC;AAM9C,mEAAmE;AACnE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uCAAuC;AACvC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;;GAIG;AACH,eAAO,MAAM,cAAc,MAAM,CAAC;AAMlC,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,YAAY,GAAG,KAAK,GAAG,SAAS,CAAC;AAEpE,kFAAkF;AAClF,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,20 @@
1
1
  /**
2
2
  * Chart rule vocabulary — shared types.
3
3
  *
4
- * A rule is a small, serializable tree of nodes discriminated by `kind`. The
4
+ * A rule is a small, serializable value discriminated by `kind`. The
5
5
  * agent builds it with the helpers in `builders.ts`, which emit it wrapped in a
6
6
  * `{$rule}` placeholder — the same idea as the `{$fn}` placeholders a chart
7
7
  * already emits. The renderer resolves it with `evaluate`; the settings panel
8
8
  * reads it with `describe`. All three agree because a node can only ever be one
9
- * of the kinds defined here — the closed set the `chartRuleSchema` describes.
9
+ * of the kinds defined here — the closed set the executable `chartRuleSchema`
10
+ * validates at runtime.
10
11
  *
11
- * v1 is scoped to conditional formatting: compare this datum's `value` against a
12
- * constant, and (optionally) pick between two values. Richer pieces — aggregates,
13
- * logic, more refs — are the documented roadmap in the README.
12
+ * v1 is deliberately non-recursive: compare this datum's `value` or a literal
13
+ * against another literal, then choose between two colour literals. Rules may
14
+ * not appear inside operands or branches. Richer expressions require a future
15
+ * contract version.
14
16
  */
17
+ import { COMPARISON_KINDS, RULE_CHANNELS } from "./vocabulary.js";
15
18
  export declare const CHART_RULE_CONTRACT_VERSION: "chart_rule.v1";
16
19
  export type ChartRuleContractVersion = typeof CHART_RULE_CONTRACT_VERSION;
17
20
  /** A leaf value a rule can carry or resolve to. */
@@ -20,53 +23,64 @@ export type Scalar = number | string | boolean | null;
20
23
  export type RefNode = {
21
24
  kind: 'value';
22
25
  };
23
- export interface LiteralNode {
26
+ export interface LiteralNode<TValue extends Scalar = Scalar> {
24
27
  kind: 'literal';
25
- value: Scalar;
28
+ value: TValue;
26
29
  }
27
- export type ComparisonKind = 'equals' | 'isNot' | 'lessThan' | 'greaterThan' | 'lessOrEqual' | 'greaterOrEqual';
28
- export interface ComparisonNode {
29
- kind: ComparisonKind;
30
- left: RuleNode;
31
- right: RuleNode;
30
+ export type ComparisonOperandNode = RefNode | LiteralNode;
31
+ export type NumericOperandNode = RefNode | LiteralNode<number>;
32
+ export type ComparisonKind = (typeof COMPARISON_KINDS)[number];
33
+ export interface EqualityComparisonNode {
34
+ kind: 'equals' | 'isNot';
35
+ left: ComparisonOperandNode;
36
+ right: ComparisonOperandNode;
32
37
  }
38
+ export interface NumericComparisonNode {
39
+ kind: Exclude<ComparisonKind, EqualityComparisonNode['kind']>;
40
+ left: NumericOperandNode;
41
+ right: NumericOperandNode;
42
+ }
43
+ export type ComparisonNode = EqualityComparisonNode | NumericComparisonNode;
44
+ /** A node whose evaluated result is valid as a `when(...)` condition in v1. */
45
+ export type ConditionNode = ComparisonNode;
33
46
  /** The conditional-value form produced by `when(cond, then, else)`. */
34
47
  export interface IfElseNode {
35
48
  kind: 'ifElse';
36
- cond: RuleNode;
37
- then: RuleNode;
38
- else: RuleNode;
49
+ cond: ConditionNode;
50
+ then: LiteralNode<string>;
51
+ else: LiteralNode<string | null>;
39
52
  }
40
- /** Any node of a rule tree. */
53
+ /** Any top-level node accepted by the v1 runtime boundary. */
41
54
  export type RuleNode = RefNode | LiteralNode | ComparisonNode | IfElseNode;
42
55
  /**
43
56
  * The chart channel a rule drives. v1 supports colour only — a rule decides the
44
57
  * colour of a series/datum. Other channels (opacity, label visibility, …) are
45
58
  * the documented roadmap and would be added here.
46
59
  */
47
- export type RuleChannel = 'color';
60
+ export type RuleChannel = (typeof RULE_CHANNELS)[number];
48
61
  /**
49
- * What a builder returns: a rule tree, marked so the renderer can find it, and
62
+ * What a builder returns: a flat rule value, marked so the renderer can find it, and
50
63
  * tagged with the channel it targets. `channel: 'color'` says this resolves to a
51
64
  * colour — so a reader sees the target without inferring it from where it sits.
52
65
  */
53
66
  export interface RulePlaceholder {
54
- $rule: RuleNode;
67
+ $rule: IfElseNode;
55
68
  channel: RuleChannel;
56
69
  }
57
- /** A placeholder, or the bare tree — what `evaluate` and `describe` accept. */
70
+ /** A placeholder, or a bare node — what `evaluate` and `describe` accept. */
58
71
  export type Rule = RulePlaceholder | RuleNode;
72
+ type DeepReadonly<T> = T extends object ? {
73
+ readonly [Key in keyof T]: DeepReadonly<T[Key]>;
74
+ } : T;
75
+ /** The deeply frozen value returned by `parseChartRule`. */
76
+ export type ParsedRule = DeepReadonly<Rule>;
59
77
  /** What a rule is evaluated against: the current datum's value. */
60
78
  export interface RuleContext {
61
79
  value: number;
62
80
  }
63
81
  /** The result of evaluating a node. */
64
82
  export type RuleValue = Scalar;
65
- /**
66
- * The deepest a rule may nest before `evaluate`/`describe` refuse it. Real rules
67
- * are a handful of levels; this only stops a pathological deserialized tree from
68
- * overflowing the stack. Far below the JS call-stack limit.
69
- */
83
+ /** @deprecated v1 is non-recursive. Retained for source compatibility. */
70
84
  export declare const MAX_RULE_DEPTH = 256;
71
85
  export type ControlRole = 'rule' | 'comparison' | 'ref' | 'literal';
72
86
  /** A node as the panel should show it: a label, its editable value, its parts. */
@@ -76,4 +90,5 @@ export interface Control {
76
90
  value?: Scalar;
77
91
  parts?: Control[];
78
92
  }
93
+ export {};
79
94
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,2BAA2B,EAAG,eAAwB,CAAC;AACpE,MAAM,MAAM,wBAAwB,GAAG,OAAO,2BAA2B,CAAC;AAE1E,mDAAmD;AACnD,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAMtD,gFAAgF;AAChF,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAExC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,cAAc,GACtB,QAAQ,GACR,OAAO,GACP,UAAU,GACV,aAAa,GACb,aAAa,GACb,gBAAgB,CAAC;AACrB,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,QAAQ,CAAC;CACjB;AAED,uEAAuE;AACvE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,+BAA+B;AAC/B,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,WAAW,GAAG,cAAc,GAAG,UAAU,CAAC;AAM3E;;;;GAIG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,WAAW,CAAC;CACtB;AAED,+EAA+E;AAC/E,MAAM,MAAM,IAAI,GAAG,eAAe,GAAG,QAAQ,CAAC;AAM9C,mEAAmE;AACnE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uCAAuC;AACvC,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;;;GAIG;AACH,eAAO,MAAM,cAAc,MAAM,CAAC;AAMlC,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,YAAY,GAAG,KAAK,GAAG,SAAS,CAAC;AAEpE,kFAAkF;AAClF,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":"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"}
@@ -2,24 +2,22 @@
2
2
  /**
3
3
  * Chart rule vocabulary — shared types.
4
4
  *
5
- * A rule is a small, serializable tree of nodes discriminated by `kind`. The
5
+ * A rule is a small, serializable value discriminated by `kind`. The
6
6
  * agent builds it with the helpers in `builders.ts`, which emit it wrapped in a
7
7
  * `{$rule}` placeholder — the same idea as the `{$fn}` placeholders a chart
8
8
  * already emits. The renderer resolves it with `evaluate`; the settings panel
9
9
  * reads it with `describe`. All three agree because a node can only ever be one
10
- * of the kinds defined here — the closed set the `chartRuleSchema` describes.
10
+ * of the kinds defined here — the closed set the executable `chartRuleSchema`
11
+ * validates at runtime.
11
12
  *
12
- * v1 is scoped to conditional formatting: compare this datum's `value` against a
13
- * constant, and (optionally) pick between two values. Richer pieces — aggregates,
14
- * logic, more refs — are the documented roadmap in the README.
13
+ * v1 is deliberately non-recursive: compare this datum's `value` or a literal
14
+ * against another literal, then choose between two colour literals. Rules may
15
+ * not appear inside operands or branches. Richer expressions require a future
16
+ * contract version.
15
17
  */
16
18
  Object.defineProperty(exports, "__esModule", { value: true });
17
19
  exports.MAX_RULE_DEPTH = exports.CHART_RULE_CONTRACT_VERSION = void 0;
18
20
  exports.CHART_RULE_CONTRACT_VERSION = 'chart_rule.v1';
19
- /**
20
- * The deepest a rule may nest before `evaluate`/`describe` refuse it. Real rules
21
- * are a handful of levels; this only stops a pathological deserialized tree from
22
- * overflowing the stack. Far below the JS call-stack limit.
23
- */
21
+ /** @deprecated v1 is non-recursive. Retained for source compatibility. */
24
22
  exports.MAX_RULE_DEPTH = 256;
25
23
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEU,QAAA,2BAA2B,GAAG,eAAwB,CAAC;AA8EpE;;;;GAIG;AACU,QAAA,cAAc,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAIU,QAAA,2BAA2B,GAAG,eAAwB,CAAC;AAyFpE,0EAA0E;AAC7D,QAAA,cAAc,GAAG,GAAG,CAAC"}
@@ -1,22 +1,20 @@
1
1
  /**
2
2
  * Chart rule vocabulary — shared types.
3
3
  *
4
- * A rule is a small, serializable tree of nodes discriminated by `kind`. The
4
+ * A rule is a small, serializable value discriminated by `kind`. The
5
5
  * agent builds it with the helpers in `builders.ts`, which emit it wrapped in a
6
6
  * `{$rule}` placeholder — the same idea as the `{$fn}` placeholders a chart
7
7
  * already emits. The renderer resolves it with `evaluate`; the settings panel
8
8
  * reads it with `describe`. All three agree because a node can only ever be one
9
- * of the kinds defined here — the closed set the `chartRuleSchema` describes.
9
+ * of the kinds defined here — the closed set the executable `chartRuleSchema`
10
+ * validates at runtime.
10
11
  *
11
- * v1 is scoped to conditional formatting: compare this datum's `value` against a
12
- * constant, and (optionally) pick between two values. Richer pieces — aggregates,
13
- * logic, more refs — are the documented roadmap in the README.
12
+ * v1 is deliberately non-recursive: compare this datum's `value` or a literal
13
+ * against another literal, then choose between two colour literals. Rules may
14
+ * not appear inside operands or branches. Richer expressions require a future
15
+ * contract version.
14
16
  */
15
17
  export const CHART_RULE_CONTRACT_VERSION = 'chart_rule.v1';
16
- /**
17
- * The deepest a rule may nest before `evaluate`/`describe` refuse it. Real rules
18
- * are a handful of levels; this only stops a pathological deserialized tree from
19
- * overflowing the stack. Far below the JS call-stack limit.
20
- */
18
+ /** @deprecated v1 is non-recursive. Retained for source compatibility. */
21
19
  export const MAX_RULE_DEPTH = 256;
22
20
  //# sourceMappingURL=types.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAG,eAAwB,CAAC;AA8EpE;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC"}
1
+ {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../../src/lib/charts/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,MAAM,CAAC,MAAM,2BAA2B,GAAG,eAAwB,CAAC;AAyFpE,0EAA0E;AAC1E,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Machine-readable authoring surface for chart visualization primitives.
3
+ *
4
+ * The SDK build serializes this registry to `capabilities.json`. Keep the
5
+ * registry aligned with the public builders and the serialized-node schema;
6
+ * contract tests enforce both relationships.
7
+ */
8
+ export declare const visualizationGrammarCapabilities: {
9
+ readonly contractVersion: 1;
10
+ readonly moduleSpecifier: "npm:@rippling/rippling-sdk/lib/charts";
11
+ readonly builders: {
12
+ readonly value: {
13
+ readonly kind: "input";
14
+ readonly returns: "number";
15
+ };
16
+ readonly literal: {
17
+ readonly kind: "literal";
18
+ readonly parameters: readonly ["scalar"];
19
+ readonly returns: "value";
20
+ };
21
+ readonly equals: {
22
+ readonly kind: "comparison";
23
+ readonly parameters: readonly ["value", "value"];
24
+ readonly returns: "condition";
25
+ };
26
+ readonly isNot: {
27
+ readonly kind: "comparison";
28
+ readonly parameters: readonly ["value", "value"];
29
+ readonly returns: "condition";
30
+ };
31
+ readonly lessThan: {
32
+ readonly kind: "comparison";
33
+ readonly parameters: readonly ["value", "value"];
34
+ readonly returns: "condition";
35
+ };
36
+ readonly greaterThan: {
37
+ readonly kind: "comparison";
38
+ readonly parameters: readonly ["value", "value"];
39
+ readonly returns: "condition";
40
+ };
41
+ readonly lessOrEqual: {
42
+ readonly kind: "comparison";
43
+ readonly parameters: readonly ["value", "value"];
44
+ readonly returns: "condition";
45
+ };
46
+ readonly greaterOrEqual: {
47
+ readonly kind: "comparison";
48
+ readonly parameters: readonly ["value", "value"];
49
+ readonly returns: "condition";
50
+ };
51
+ readonly when: {
52
+ readonly kind: "conditional";
53
+ readonly parameters: readonly ["condition", "color", "color?"];
54
+ readonly returns: "conditional-color";
55
+ };
56
+ readonly color: {
57
+ readonly kind: "channel";
58
+ readonly parameters: readonly ["conditional-color"];
59
+ readonly returns: "color-rule";
60
+ readonly placeholderChannel: "color";
61
+ };
62
+ };
63
+ readonly supportedChannels: readonly ["color"];
64
+ readonly supportedNodeKinds: readonly ["literal", "value", "equals", "isNot", "lessThan", "greaterThan", "lessOrEqual", "greaterOrEqual", "ifElse"];
65
+ };
66
+ //# sourceMappingURL=visualization-grammar.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visualization-grammar.d.mts","sourceRoot":"","sources":["../../src/lib/charts/visualization-grammar.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDnC,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Machine-readable authoring surface for chart visualization primitives.
3
+ *
4
+ * The SDK build serializes this registry to `capabilities.json`. Keep the
5
+ * registry aligned with the public builders and the serialized-node schema;
6
+ * contract tests enforce both relationships.
7
+ */
8
+ export declare const visualizationGrammarCapabilities: {
9
+ readonly contractVersion: 1;
10
+ readonly moduleSpecifier: "npm:@rippling/rippling-sdk/lib/charts";
11
+ readonly builders: {
12
+ readonly value: {
13
+ readonly kind: "input";
14
+ readonly returns: "number";
15
+ };
16
+ readonly literal: {
17
+ readonly kind: "literal";
18
+ readonly parameters: readonly ["scalar"];
19
+ readonly returns: "value";
20
+ };
21
+ readonly equals: {
22
+ readonly kind: "comparison";
23
+ readonly parameters: readonly ["value", "value"];
24
+ readonly returns: "condition";
25
+ };
26
+ readonly isNot: {
27
+ readonly kind: "comparison";
28
+ readonly parameters: readonly ["value", "value"];
29
+ readonly returns: "condition";
30
+ };
31
+ readonly lessThan: {
32
+ readonly kind: "comparison";
33
+ readonly parameters: readonly ["value", "value"];
34
+ readonly returns: "condition";
35
+ };
36
+ readonly greaterThan: {
37
+ readonly kind: "comparison";
38
+ readonly parameters: readonly ["value", "value"];
39
+ readonly returns: "condition";
40
+ };
41
+ readonly lessOrEqual: {
42
+ readonly kind: "comparison";
43
+ readonly parameters: readonly ["value", "value"];
44
+ readonly returns: "condition";
45
+ };
46
+ readonly greaterOrEqual: {
47
+ readonly kind: "comparison";
48
+ readonly parameters: readonly ["value", "value"];
49
+ readonly returns: "condition";
50
+ };
51
+ readonly when: {
52
+ readonly kind: "conditional";
53
+ readonly parameters: readonly ["condition", "color", "color?"];
54
+ readonly returns: "conditional-color";
55
+ };
56
+ readonly color: {
57
+ readonly kind: "channel";
58
+ readonly parameters: readonly ["conditional-color"];
59
+ readonly returns: "color-rule";
60
+ readonly placeholderChannel: "color";
61
+ };
62
+ };
63
+ readonly supportedChannels: readonly ["color"];
64
+ readonly supportedNodeKinds: readonly ["literal", "value", "equals", "isNot", "lessThan", "greaterThan", "lessOrEqual", "greaterOrEqual", "ifElse"];
65
+ };
66
+ //# sourceMappingURL=visualization-grammar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visualization-grammar.d.ts","sourceRoot":"","sources":["../../src/lib/charts/visualization-grammar.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDnC,CAAC"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.visualizationGrammarCapabilities = void 0;
4
+ const vocabulary_1 = require("./vocabulary.js");
5
+ /**
6
+ * Machine-readable authoring surface for chart visualization primitives.
7
+ *
8
+ * The SDK build serializes this registry to `capabilities.json`. Keep the
9
+ * registry aligned with the public builders and the serialized-node schema;
10
+ * contract tests enforce both relationships.
11
+ */
12
+ exports.visualizationGrammarCapabilities = {
13
+ contractVersion: 1,
14
+ moduleSpecifier: 'npm:@rippling/rippling-sdk/lib/charts',
15
+ builders: {
16
+ value: {
17
+ kind: 'input',
18
+ returns: 'number',
19
+ },
20
+ literal: {
21
+ kind: 'literal',
22
+ parameters: ['scalar'],
23
+ returns: 'value',
24
+ },
25
+ equals: {
26
+ kind: 'comparison',
27
+ parameters: ['value', 'value'],
28
+ returns: 'condition',
29
+ },
30
+ isNot: {
31
+ kind: 'comparison',
32
+ parameters: ['value', 'value'],
33
+ returns: 'condition',
34
+ },
35
+ lessThan: {
36
+ kind: 'comparison',
37
+ parameters: ['value', 'value'],
38
+ returns: 'condition',
39
+ },
40
+ greaterThan: {
41
+ kind: 'comparison',
42
+ parameters: ['value', 'value'],
43
+ returns: 'condition',
44
+ },
45
+ lessOrEqual: {
46
+ kind: 'comparison',
47
+ parameters: ['value', 'value'],
48
+ returns: 'condition',
49
+ },
50
+ greaterOrEqual: {
51
+ kind: 'comparison',
52
+ parameters: ['value', 'value'],
53
+ returns: 'condition',
54
+ },
55
+ when: {
56
+ kind: 'conditional',
57
+ parameters: ['condition', 'color', 'color?'],
58
+ returns: 'conditional-color',
59
+ },
60
+ color: {
61
+ kind: 'channel',
62
+ parameters: ['conditional-color'],
63
+ returns: 'color-rule',
64
+ placeholderChannel: 'color',
65
+ },
66
+ },
67
+ supportedChannels: vocabulary_1.RULE_CHANNELS,
68
+ supportedNodeKinds: vocabulary_1.RULE_NODE_KINDS,
69
+ };
70
+ //# sourceMappingURL=visualization-grammar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visualization-grammar.js","sourceRoot":"","sources":["../../src/lib/charts/visualization-grammar.ts"],"names":[],"mappings":";;;AAAA,gDAA8D;AAE9D;;;;;;GAMG;AACU,QAAA,gCAAgC,GAAG;IAC9C,eAAe,EAAE,CAAC;IAClB,eAAe,EAAE,uCAAuC;IACxD,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,QAAQ;SAClB;QACD,OAAO,EAAE;YACP,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,CAAC,QAAQ,CAAC;YACtB,OAAO,EAAE,OAAO;SACjB;QACD,MAAM,EAAE;YACN,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,cAAc,EAAE;YACd,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,aAAa;YACnB,UAAU,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC;YAC5C,OAAO,EAAE,mBAAmB;SAC7B;QACD,KAAK,EAAE;YACL,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,CAAC,mBAAmB,CAAC;YACjC,OAAO,EAAE,YAAY;YACrB,kBAAkB,EAAE,OAAO;SAC5B;KACF;IACD,iBAAiB,EAAE,0BAAa;IAChC,kBAAkB,EAAE,4BAAe;CAC3B,CAAC"}
@@ -0,0 +1,67 @@
1
+ import { RULE_CHANNELS, RULE_NODE_KINDS } from "./vocabulary.mjs";
2
+ /**
3
+ * Machine-readable authoring surface for chart visualization primitives.
4
+ *
5
+ * The SDK build serializes this registry to `capabilities.json`. Keep the
6
+ * registry aligned with the public builders and the serialized-node schema;
7
+ * contract tests enforce both relationships.
8
+ */
9
+ export const visualizationGrammarCapabilities = {
10
+ contractVersion: 1,
11
+ moduleSpecifier: 'npm:@rippling/rippling-sdk/lib/charts',
12
+ builders: {
13
+ value: {
14
+ kind: 'input',
15
+ returns: 'number',
16
+ },
17
+ literal: {
18
+ kind: 'literal',
19
+ parameters: ['scalar'],
20
+ returns: 'value',
21
+ },
22
+ equals: {
23
+ kind: 'comparison',
24
+ parameters: ['value', 'value'],
25
+ returns: 'condition',
26
+ },
27
+ isNot: {
28
+ kind: 'comparison',
29
+ parameters: ['value', 'value'],
30
+ returns: 'condition',
31
+ },
32
+ lessThan: {
33
+ kind: 'comparison',
34
+ parameters: ['value', 'value'],
35
+ returns: 'condition',
36
+ },
37
+ greaterThan: {
38
+ kind: 'comparison',
39
+ parameters: ['value', 'value'],
40
+ returns: 'condition',
41
+ },
42
+ lessOrEqual: {
43
+ kind: 'comparison',
44
+ parameters: ['value', 'value'],
45
+ returns: 'condition',
46
+ },
47
+ greaterOrEqual: {
48
+ kind: 'comparison',
49
+ parameters: ['value', 'value'],
50
+ returns: 'condition',
51
+ },
52
+ when: {
53
+ kind: 'conditional',
54
+ parameters: ['condition', 'color', 'color?'],
55
+ returns: 'conditional-color',
56
+ },
57
+ color: {
58
+ kind: 'channel',
59
+ parameters: ['conditional-color'],
60
+ returns: 'color-rule',
61
+ placeholderChannel: 'color',
62
+ },
63
+ },
64
+ supportedChannels: RULE_CHANNELS,
65
+ supportedNodeKinds: RULE_NODE_KINDS,
66
+ };
67
+ //# sourceMappingURL=visualization-grammar.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visualization-grammar.mjs","sourceRoot":"","sources":["../../src/lib/charts/visualization-grammar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,yBAAqB;AAE9D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,eAAe,EAAE,CAAC;IAClB,eAAe,EAAE,uCAAuC;IACxD,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,QAAQ;SAClB;QACD,OAAO,EAAE;YACP,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,CAAC,QAAQ,CAAC;YACtB,OAAO,EAAE,OAAO;SACjB;QACD,MAAM,EAAE;YACN,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,KAAK,EAAE;YACL,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,WAAW,EAAE;YACX,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,cAAc,EAAE;YACd,IAAI,EAAE,YAAY;YAClB,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;YAC9B,OAAO,EAAE,WAAW;SACrB;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,aAAa;YACnB,UAAU,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC;YAC5C,OAAO,EAAE,mBAAmB;SAC7B;QACD,KAAK,EAAE;YACL,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,CAAC,mBAAmB,CAAC;YACjC,OAAO,EAAE,YAAY;YACrB,kBAAkB,EAAE,OAAO;SAC5B;KACF;IACD,iBAAiB,EAAE,aAAa;IAChC,kBAAkB,EAAE,eAAe;CAC3B,CAAC"}
@@ -0,0 +1,7 @@
1
+ /** Runtime constants shared by the schema, capability manifest, and types. */
2
+ export declare const EQUALITY_COMPARISON_KINDS: readonly ["equals", "isNot"];
3
+ export declare const NUMERIC_COMPARISON_KINDS: readonly ["lessThan", "greaterThan", "lessOrEqual", "greaterOrEqual"];
4
+ export declare const COMPARISON_KINDS: readonly ["equals", "isNot", "lessThan", "greaterThan", "lessOrEqual", "greaterOrEqual"];
5
+ export declare const RULE_NODE_KINDS: readonly ["literal", "value", "equals", "isNot", "lessThan", "greaterThan", "lessOrEqual", "greaterOrEqual", "ifElse"];
6
+ export declare const RULE_CHANNELS: readonly ["color"];
7
+ //# sourceMappingURL=vocabulary.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary.d.mts","sourceRoot":"","sources":["../../src/lib/charts/vocabulary.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,eAAO,MAAM,yBAAyB,8BAA+B,CAAC;AACtE,eAAO,MAAM,wBAAwB,uEAAwE,CAAC;AAC9G,eAAO,MAAM,gBAAgB,0FAAuE,CAAC;AAErG,eAAO,MAAM,eAAe,wHAA+D,CAAC;AAC5F,eAAO,MAAM,aAAa,oBAAqB,CAAC"}