@sixb/core 0.1.21 → 0.1.22

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 (1263) hide show
  1. package/dist/actions/commit-edits.d.ts +3 -1
  2. package/dist/actions/commit-edits.d.ts.map +1 -1
  3. package/dist/actions/execution.d.ts.map +1 -1
  4. package/dist/actions/index.js +63 -59
  5. package/dist/actions/index.js.map +1 -1
  6. package/dist/actions/read-facade.d.ts +9 -1
  7. package/dist/actions/read-facade.d.ts.map +1 -1
  8. package/dist/actions/request.d.ts +15 -1
  9. package/dist/actions/request.d.ts.map +1 -1
  10. package/dist/actions/run/context.d.ts +1 -0
  11. package/dist/actions/run/context.d.ts.map +1 -1
  12. package/dist/actions/run/execute.d.ts +2 -3
  13. package/dist/actions/run/execute.d.ts.map +1 -1
  14. package/dist/actions/run/executor.d.ts +3 -0
  15. package/dist/actions/run/executor.d.ts.map +1 -1
  16. package/dist/actions/run/normalize.d.ts +2 -1
  17. package/dist/actions/run/normalize.d.ts.map +1 -1
  18. package/dist/actions/run/signals.d.ts +1 -3
  19. package/dist/actions/run/signals.d.ts.map +1 -1
  20. package/dist/actions/run/types.d.ts +16 -1
  21. package/dist/actions/run/types.d.ts.map +1 -1
  22. package/dist/actions/run-authorization.d.ts +14 -0
  23. package/dist/actions/run-authorization.d.ts.map +1 -1
  24. package/dist/actions/types/context.d.ts +17 -1
  25. package/dist/actions/types/context.d.ts.map +1 -1
  26. package/dist/actions/validators.d.ts.map +1 -1
  27. package/dist/activity/timeline.d.ts +8 -1
  28. package/dist/activity/timeline.d.ts.map +1 -1
  29. package/dist/agents/accounting.d.ts +15 -0
  30. package/dist/agents/accounting.d.ts.map +1 -0
  31. package/dist/agents/adapters.d.ts.map +1 -1
  32. package/dist/agents/agent-mail.d.ts +9 -0
  33. package/dist/agents/agent-mail.d.ts.map +1 -0
  34. package/dist/agents/api-gateway.d.ts +5 -0
  35. package/dist/agents/api-gateway.d.ts.map +1 -1
  36. package/dist/agents/approval-continuation.d.ts +23 -0
  37. package/dist/agents/approval-continuation.d.ts.map +1 -0
  38. package/dist/agents/approval-executor.d.ts +56 -0
  39. package/dist/agents/approval-executor.d.ts.map +1 -0
  40. package/dist/agents/approval-outcome.d.ts +8 -0
  41. package/dist/agents/approval-outcome.d.ts.map +1 -0
  42. package/dist/agents/approvals.d.ts +210 -0
  43. package/dist/agents/approvals.d.ts.map +1 -0
  44. package/dist/agents/authority.d.ts +10 -0
  45. package/dist/agents/authority.d.ts.map +1 -1
  46. package/dist/agents/builders.d.ts.map +1 -1
  47. package/dist/agents/cancel.d.ts +23 -0
  48. package/dist/agents/cancel.d.ts.map +1 -0
  49. package/dist/agents/child-question.d.ts +18 -0
  50. package/dist/agents/child-question.d.ts.map +1 -0
  51. package/dist/agents/children.d.ts +99 -0
  52. package/dist/agents/children.d.ts.map +1 -0
  53. package/dist/agents/context/index.js +1 -1
  54. package/dist/agents/context-compaction.d.ts.map +1 -1
  55. package/dist/agents/errors.d.ts +13 -1
  56. package/dist/agents/errors.d.ts.map +1 -1
  57. package/dist/agents/execution.d.ts +180 -14
  58. package/dist/agents/execution.d.ts.map +1 -1
  59. package/dist/agents/fork.d.ts +16 -0
  60. package/dist/agents/fork.d.ts.map +1 -0
  61. package/dist/agents/ids.d.ts +7 -0
  62. package/dist/agents/ids.d.ts.map +1 -1
  63. package/dist/agents/index.d.ts +19 -8
  64. package/dist/agents/index.d.ts.map +1 -1
  65. package/dist/agents/index.js +159 -86
  66. package/dist/agents/index.js.map +1 -1
  67. package/dist/agents/memory-execution.d.ts +57 -0
  68. package/dist/agents/memory-execution.d.ts.map +1 -0
  69. package/dist/agents/memory.d.ts +49 -0
  70. package/dist/agents/memory.d.ts.map +1 -0
  71. package/dist/agents/message.d.ts +50 -1
  72. package/dist/agents/message.d.ts.map +1 -1
  73. package/dist/agents/model-loop.d.ts +19 -0
  74. package/dist/agents/model-loop.d.ts.map +1 -1
  75. package/dist/agents/model-routing.d.ts +19 -0
  76. package/dist/agents/model-routing.d.ts.map +1 -0
  77. package/dist/agents/participants.d.ts +18 -0
  78. package/dist/agents/participants.d.ts.map +1 -0
  79. package/dist/agents/reference.d.ts.map +1 -1
  80. package/dist/agents/request.d.ts +36 -2
  81. package/dist/agents/request.d.ts.map +1 -1
  82. package/dist/agents/run-scope.d.ts +51 -0
  83. package/dist/agents/run-scope.d.ts.map +1 -0
  84. package/dist/agents/streams/index.d.ts +3 -2
  85. package/dist/agents/streams/index.d.ts.map +1 -1
  86. package/dist/agents/streams/index.js +7 -3
  87. package/dist/agents/streams/index.js.map +1 -1
  88. package/dist/agents/streams/internal.d.ts +1 -1
  89. package/dist/agents/streams/internal.d.ts.map +1 -1
  90. package/dist/agents/streams/internal.js +5 -3
  91. package/dist/agents/streams/internal.js.map +1 -1
  92. package/dist/agents/streams/protocol.d.ts +122 -3
  93. package/dist/agents/streams/protocol.d.ts.map +1 -1
  94. package/dist/agents/subagent-runs.d.ts +12 -0
  95. package/dist/agents/subagent-runs.d.ts.map +1 -0
  96. package/dist/agents/thread-access.d.ts +53 -0
  97. package/dist/agents/thread-access.d.ts.map +1 -0
  98. package/dist/agents/tool-definition.d.ts +5 -4
  99. package/dist/agents/tool-definition.d.ts.map +1 -1
  100. package/dist/agents/types.d.ts +23 -4
  101. package/dist/agents/types.d.ts.map +1 -1
  102. package/dist/agents/validation.d.ts +1 -1
  103. package/dist/agents/validation.d.ts.map +1 -1
  104. package/dist/artifacts/access.d.ts +52 -0
  105. package/dist/artifacts/access.d.ts.map +1 -0
  106. package/dist/artifacts/canvas.d.ts +92 -0
  107. package/dist/artifacts/canvas.d.ts.map +1 -0
  108. package/dist/artifacts/csv.d.ts +5 -0
  109. package/dist/artifacts/csv.d.ts.map +1 -1
  110. package/dist/artifacts/errors.d.ts +7 -2
  111. package/dist/artifacts/errors.d.ts.map +1 -1
  112. package/dist/artifacts/execution.d.ts +102 -7
  113. package/dist/artifacts/execution.d.ts.map +1 -1
  114. package/dist/artifacts/formula/check.d.ts +24 -0
  115. package/dist/artifacts/formula/check.d.ts.map +1 -0
  116. package/dist/artifacts/formula/evaluate.d.ts +32 -0
  117. package/dist/artifacts/formula/evaluate.d.ts.map +1 -0
  118. package/dist/artifacts/formula/index.d.ts +38 -0
  119. package/dist/artifacts/formula/index.d.ts.map +1 -0
  120. package/dist/artifacts/formula/parser.d.ts +67 -0
  121. package/dist/artifacts/formula/parser.d.ts.map +1 -0
  122. package/dist/artifacts/frames/assets.d.ts +11 -9
  123. package/dist/artifacts/frames/assets.d.ts.map +1 -1
  124. package/dist/artifacts/frames/entries.d.ts +19 -0
  125. package/dist/artifacts/frames/entries.d.ts.map +1 -0
  126. package/dist/artifacts/frames/grants.d.ts +6 -6
  127. package/dist/artifacts/frames/grants.d.ts.map +1 -1
  128. package/dist/artifacts/frames/index.d.ts +4 -2
  129. package/dist/artifacts/frames/index.d.ts.map +1 -1
  130. package/dist/artifacts/frames/index.js +444 -51
  131. package/dist/artifacts/frames/index.js.map +10 -8
  132. package/dist/artifacts/frames/kit.d.ts +10 -5
  133. package/dist/artifacts/frames/kit.d.ts.map +1 -1
  134. package/dist/artifacts/frames/probe.d.ts +16 -12
  135. package/dist/artifacts/frames/probe.d.ts.map +1 -1
  136. package/dist/artifacts/frames/protocol.d.ts +79 -10
  137. package/dist/artifacts/frames/protocol.d.ts.map +1 -1
  138. package/dist/artifacts/frames/runtime.d.ts +27 -9
  139. package/dist/artifacts/frames/runtime.d.ts.map +1 -1
  140. package/dist/artifacts/index.d.ts +11 -5
  141. package/dist/artifacts/index.d.ts.map +1 -1
  142. package/dist/artifacts/index.js +128 -6
  143. package/dist/artifacts/index.js.map +3 -3
  144. package/dist/artifacts/kinds.d.ts +1 -1
  145. package/dist/artifacts/kinds.d.ts.map +1 -1
  146. package/dist/artifacts/limits.d.ts +30 -0
  147. package/dist/artifacts/limits.d.ts.map +1 -1
  148. package/dist/artifacts/live-sheet.d.ts +65 -0
  149. package/dist/artifacts/live-sheet.d.ts.map +1 -0
  150. package/dist/artifacts/outline.d.ts +27 -1
  151. package/dist/artifacts/outline.d.ts.map +1 -1
  152. package/dist/artifacts/publish/index.d.ts +2 -0
  153. package/dist/artifacts/publish/index.d.ts.map +1 -1
  154. package/dist/artifacts/publish/index.js +59 -19
  155. package/dist/artifacts/publish/index.js.map +1 -1
  156. package/dist/artifacts/publish/publish.d.ts +43 -11
  157. package/dist/artifacts/publish/publish.d.ts.map +1 -1
  158. package/dist/artifacts/publish/queries.d.ts +33 -0
  159. package/dist/artifacts/publish/queries.d.ts.map +1 -0
  160. package/dist/artifacts/publish/references.d.ts +6 -3
  161. package/dist/artifacts/publish/references.d.ts.map +1 -1
  162. package/dist/artifacts/publish/validate/canvas.d.ts +18 -0
  163. package/dist/artifacts/publish/validate/canvas.d.ts.map +1 -0
  164. package/dist/artifacts/publish/validate/html.d.ts +20 -0
  165. package/dist/artifacts/publish/validate/html.d.ts.map +1 -0
  166. package/dist/artifacts/publish/validate/page.d.ts +15 -0
  167. package/dist/artifacts/publish/validate/page.d.ts.map +1 -0
  168. package/dist/artifacts/publish/validate/sheet.d.ts +11 -3
  169. package/dist/artifacts/publish/validate/sheet.d.ts.map +1 -1
  170. package/dist/artifacts/publish/validate/slides.d.ts +1 -7
  171. package/dist/artifacts/publish/validate/slides.d.ts.map +1 -1
  172. package/dist/artifacts/queries.d.ts +95 -0
  173. package/dist/artifacts/queries.d.ts.map +1 -0
  174. package/dist/artifacts/resolve.d.ts +6 -0
  175. package/dist/artifacts/resolve.d.ts.map +1 -1
  176. package/dist/artifacts/run-query.d.ts +26 -0
  177. package/dist/artifacts/run-query.d.ts.map +1 -0
  178. package/dist/artifacts/serialize-query.d.ts +12 -0
  179. package/dist/artifacts/serialize-query.d.ts.map +1 -0
  180. package/dist/artifacts/sheet-rules.d.ts +26 -0
  181. package/dist/artifacts/sheet-rules.d.ts.map +1 -0
  182. package/dist/artifacts/tones.d.ts +8 -0
  183. package/dist/artifacts/tones.d.ts.map +1 -0
  184. package/dist/artifacts/workbook.d.ts +76 -5
  185. package/dist/artifacts/workbook.d.ts.map +1 -1
  186. package/dist/auth/index.d.ts +1 -1
  187. package/dist/auth/index.d.ts.map +1 -1
  188. package/dist/auth/index.js +14 -11
  189. package/dist/auth/index.js.map +1 -1
  190. package/dist/auth/member-events.d.ts +13 -0
  191. package/dist/auth/member-events.d.ts.map +1 -0
  192. package/dist/auth/profile.d.ts +11 -0
  193. package/dist/auth/profile.d.ts.map +1 -0
  194. package/dist/auth/runtime.d.ts +31 -3
  195. package/dist/auth/runtime.d.ts.map +1 -1
  196. package/dist/auth/strategy.d.ts +3 -1
  197. package/dist/auth/strategy.d.ts.map +1 -1
  198. package/dist/auth/strategy.js +7 -3
  199. package/dist/auth/strategy.js.map +1 -1
  200. package/dist/auth/types.d.ts +30 -1
  201. package/dist/auth/types.d.ts.map +1 -1
  202. package/dist/authorization/decision.d.ts +15 -0
  203. package/dist/authorization/decision.d.ts.map +1 -1
  204. package/dist/authorization/event-visibility.d.ts +5 -1
  205. package/dist/authorization/event-visibility.d.ts.map +1 -1
  206. package/dist/authorization/grant-kinds.d.ts +2 -2
  207. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  208. package/dist/authorization/index.d.ts +2 -2
  209. package/dist/authorization/index.d.ts.map +1 -1
  210. package/dist/authorization/index.js +12 -7
  211. package/dist/authorization/index.js.map +1 -1
  212. package/dist/authorization/resolve.d.ts +19 -1
  213. package/dist/authorization/resolve.d.ts.map +1 -1
  214. package/dist/authorization/run-visibility.d.ts +8 -1
  215. package/dist/authorization/run-visibility.d.ts.map +1 -1
  216. package/dist/authorization/types.d.ts +14 -0
  217. package/dist/authorization/types.d.ts.map +1 -1
  218. package/dist/bootstrap/index.js +69 -65
  219. package/dist/bootstrap/index.js.map +2 -2
  220. package/dist/{chunk-ky3j490c.js → chunk-02bzjgnt.js} +6 -6
  221. package/dist/{chunk-ky3j490c.js.map → chunk-02bzjgnt.js.map} +1 -1
  222. package/dist/{chunk-mfs23znk.js → chunk-07kkp2e1.js} +1 -1
  223. package/dist/{chunk-c1rxbz5y.js → chunk-098anw4f.js} +21 -19
  224. package/dist/chunk-098anw4f.js.map +12 -0
  225. package/dist/{chunk-z58tm0hm.js → chunk-0phpbbvm.js} +3 -3
  226. package/dist/{chunk-ere85b8y.js → chunk-0xmt5p5y.js} +116 -27
  227. package/dist/chunk-0xmt5p5y.js.map +14 -0
  228. package/dist/{chunk-t6f3tdnr.js → chunk-16a9dmfy.js} +33 -2
  229. package/dist/{chunk-t6f3tdnr.js.map → chunk-16a9dmfy.js.map} +5 -4
  230. package/dist/chunk-18sk89cg.js +47 -0
  231. package/dist/chunk-18sk89cg.js.map +10 -0
  232. package/dist/{chunk-e17zdm62.js → chunk-1t6k1avb.js} +1 -1
  233. package/dist/chunk-2626mh4m.js +693 -0
  234. package/dist/chunk-2626mh4m.js.map +19 -0
  235. package/dist/{chunk-qczk96d9.js → chunk-2adz0h75.js} +13 -4
  236. package/dist/chunk-2adz0h75.js.map +11 -0
  237. package/dist/{chunk-kge7k6ey.js → chunk-2fn60nvs.js} +2 -2
  238. package/dist/{chunk-99nd4rc1.js → chunk-2gjj5dx3.js} +5 -4
  239. package/dist/{chunk-99nd4rc1.js.map → chunk-2gjj5dx3.js.map} +3 -3
  240. package/dist/{chunk-mjddfa7k.js → chunk-3fqxbn31.js} +2 -24
  241. package/dist/{chunk-mjddfa7k.js.map → chunk-3fqxbn31.js.map} +3 -4
  242. package/dist/{chunk-y0c4e6ex.js → chunk-3gbefjg5.js} +1 -1
  243. package/dist/{chunk-5hx48dnn.js → chunk-45ngkxkp.js} +52 -31
  244. package/dist/chunk-45ngkxkp.js.map +13 -0
  245. package/dist/{chunk-cy4mbddw.js → chunk-48jezz3j.js} +1 -1
  246. package/dist/{chunk-561r0yc9.js → chunk-4b26qwbg.js} +13 -13
  247. package/dist/{chunk-561r0yc9.js.map → chunk-4b26qwbg.js.map} +1 -1
  248. package/dist/{chunk-9k93ah50.js → chunk-4f3ydv7t.js} +33 -69
  249. package/dist/chunk-4f3ydv7t.js.map +10 -0
  250. package/dist/chunk-4y26vs3v.js +97 -0
  251. package/dist/chunk-4y26vs3v.js.map +10 -0
  252. package/dist/{chunk-4as3wt1c.js → chunk-4ymrcdbm.js} +7 -3
  253. package/dist/chunk-4ymrcdbm.js.map +12 -0
  254. package/dist/{chunk-hcbyfxbe.js → chunk-5grk14e5.js} +76 -2
  255. package/dist/{chunk-hcbyfxbe.js.map → chunk-5grk14e5.js.map} +4 -3
  256. package/dist/{chunk-8frc8a4j.js → chunk-65pyhyas.js} +90 -83
  257. package/dist/chunk-65pyhyas.js.map +20 -0
  258. package/dist/{chunk-hwksyjks.js → chunk-661ezhks.js} +182 -6
  259. package/dist/chunk-661ezhks.js.map +11 -0
  260. package/dist/{chunk-447a5c0p.js → chunk-6n69k945.js} +2 -2
  261. package/dist/{chunk-0bphap9y.js → chunk-6p0pastb.js} +5 -5
  262. package/dist/{chunk-9j4jw7as.js → chunk-6rrtzea3.js} +18 -5
  263. package/dist/chunk-6rrtzea3.js.map +14 -0
  264. package/dist/{chunk-431pyp2c.js → chunk-6y0mkhex.js} +2 -2
  265. package/dist/{chunk-f4pamkt9.js → chunk-73v685wb.js} +10 -10
  266. package/dist/{chunk-f4pamkt9.js.map → chunk-73v685wb.js.map} +3 -3
  267. package/dist/{chunk-akzryx9h.js → chunk-7gr4j2eq.js} +7836 -5047
  268. package/dist/chunk-7gr4j2eq.js.map +120 -0
  269. package/dist/{chunk-bk9svbcq.js → chunk-7mc2wkre.js} +386 -86
  270. package/dist/chunk-7mc2wkre.js.map +50 -0
  271. package/dist/{chunk-6rqgmkde.js → chunk-7z5p905k.js} +335 -703
  272. package/dist/chunk-7z5p905k.js.map +22 -0
  273. package/dist/{chunk-yxd3nnqt.js → chunk-9mab3dvg.js} +26 -2
  274. package/dist/chunk-9mab3dvg.js.map +11 -0
  275. package/dist/chunk-9wr3yajk.js +42 -0
  276. package/dist/chunk-9wr3yajk.js.map +10 -0
  277. package/dist/chunk-az47zep4.js +41 -0
  278. package/dist/chunk-az47zep4.js.map +10 -0
  279. package/dist/{chunk-s7jg7pmn.js → chunk-bab05bhg.js} +1 -1
  280. package/dist/{chunk-858emn8m.js → chunk-bktev1ds.js} +14 -11
  281. package/dist/{chunk-858emn8m.js.map → chunk-bktev1ds.js.map} +3 -3
  282. package/dist/{chunk-dhcv7yxc.js → chunk-c0vk1djt.js} +5 -3
  283. package/dist/chunk-c0vk1djt.js.map +11 -0
  284. package/dist/chunk-c69nj7se.js +3 -0
  285. package/dist/{chunk-7n30ybym.js.map → chunk-c69nj7se.js.map} +1 -1
  286. package/dist/{chunk-q5e5tv4b.js → chunk-c844dkwd.js} +1 -1
  287. package/dist/{chunk-g257jwnc.js → chunk-cdk3egjj.js} +17 -4
  288. package/dist/chunk-cdk3egjj.js.map +12 -0
  289. package/dist/chunk-cswhawa2.js +113 -0
  290. package/dist/chunk-cswhawa2.js.map +10 -0
  291. package/dist/{chunk-cfj9dfbb.js → chunk-d2m879s4.js} +2 -2
  292. package/dist/{chunk-arns890k.js → chunk-d7vyc7k6.js} +2 -2
  293. package/dist/chunk-d7vyc7k6.js.map +10 -0
  294. package/dist/{chunk-q7gn29y3.js → chunk-dp0cdtj2.js} +2 -2
  295. package/dist/{chunk-6x0pqh32.js → chunk-e5wf5vz0.js} +3 -1
  296. package/dist/chunk-e5wf5vz0.js.map +10 -0
  297. package/dist/{chunk-cn0fwwhy.js → chunk-efmm01gj.js} +108 -1045
  298. package/dist/chunk-efmm01gj.js.map +18 -0
  299. package/dist/{chunk-918wwnaa.js → chunk-ezne9wc9.js} +1224 -430
  300. package/dist/chunk-ezne9wc9.js.map +71 -0
  301. package/dist/{chunk-tbc1ngpd.js → chunk-fe8zwt8b.js} +58 -12
  302. package/dist/{chunk-tbc1ngpd.js.map → chunk-fe8zwt8b.js.map} +5 -4
  303. package/dist/{chunk-br3k6qbf.js → chunk-fm62y49k.js} +1 -1
  304. package/dist/{chunk-nq6gpjt7.js → chunk-fntqb7qy.js} +30 -4
  305. package/dist/{chunk-nq6gpjt7.js.map → chunk-fntqb7qy.js.map} +5 -5
  306. package/dist/{chunk-1cc1xaf3.js → chunk-fp2kq35z.js} +26 -10
  307. package/dist/{chunk-1cc1xaf3.js.map → chunk-fp2kq35z.js.map} +5 -5
  308. package/dist/{chunk-vvxtn22d.js → chunk-g663fahq.js} +2 -2
  309. package/dist/{chunk-k43ct2ke.js → chunk-gvj5cd3b.js} +16 -9
  310. package/dist/chunk-gvj5cd3b.js.map +12 -0
  311. package/dist/{chunk-rmakanzx.js → chunk-h33shhq6.js} +5 -5
  312. package/dist/{chunk-nn5xnx3s.js → chunk-h3pbv7n8.js} +1738 -38
  313. package/dist/chunk-h3pbv7n8.js.map +48 -0
  314. package/dist/chunk-hn2r7z41.js.map +1 -1
  315. package/dist/{chunk-pbcbn83d.js → chunk-hqsp2sx4.js} +54 -8
  316. package/dist/chunk-hqsp2sx4.js.map +14 -0
  317. package/dist/{chunk-d09e3rax.js → chunk-hwarjrgf.js} +1 -1
  318. package/dist/{chunk-vf57cr4t.js → chunk-hyesv9dv.js} +1 -1
  319. package/dist/chunk-hz5d43gn.js +45 -0
  320. package/dist/chunk-hz5d43gn.js.map +10 -0
  321. package/dist/{chunk-91mg3nj9.js → chunk-j936th07.js} +86 -41
  322. package/dist/chunk-j936th07.js.map +12 -0
  323. package/dist/chunk-kcqpk9w1.js +75 -0
  324. package/dist/chunk-kcqpk9w1.js.map +10 -0
  325. package/dist/{chunk-5vems3nx.js → chunk-m2nevja0.js} +2 -2
  326. package/dist/{chunk-x9v4cx1d.js → chunk-m36fw8ft.js} +1 -1
  327. package/dist/{chunk-a40ad1ft.js → chunk-mbsbxarb.js} +1 -1
  328. package/dist/chunk-mzx71snp.js +129 -0
  329. package/dist/chunk-mzx71snp.js.map +10 -0
  330. package/dist/{chunk-6aawea28.js → chunk-n8q5j6y5.js} +1 -1
  331. package/dist/{chunk-d7dnxdep.js → chunk-n9zpx9c6.js} +4 -4
  332. package/dist/{chunk-xvsc5m8n.js → chunk-npcr0228.js} +1 -1
  333. package/dist/chunk-nydf3dbe.js +663 -0
  334. package/dist/chunk-nydf3dbe.js.map +13 -0
  335. package/dist/chunk-pdt5cw8z.js +233 -0
  336. package/dist/chunk-pdt5cw8z.js.map +11 -0
  337. package/dist/{chunk-rj69qcrd.js → chunk-pgrf64hp.js} +55 -7
  338. package/dist/chunk-pgrf64hp.js.map +12 -0
  339. package/dist/{chunk-y5tah2kf.js → chunk-q4pmvkg0.js} +1 -1
  340. package/dist/chunk-qhqgp4jf.js +1418 -0
  341. package/dist/chunk-qhqgp4jf.js.map +22 -0
  342. package/dist/{chunk-48qjhh6v.js → chunk-qx00vjrj.js} +19 -60
  343. package/dist/chunk-qx00vjrj.js.map +13 -0
  344. package/dist/{chunk-5948n82c.js → chunk-r6szek0x.js} +184 -7
  345. package/dist/chunk-r6szek0x.js.map +10 -0
  346. package/dist/{chunk-v4jbb3rs.js → chunk-rap5w0x0.js} +156 -2
  347. package/dist/chunk-rap5w0x0.js.map +10 -0
  348. package/dist/{chunk-pfp1txq2.js → chunk-sgx82nnt.js} +5 -31
  349. package/dist/{chunk-pfp1txq2.js.map → chunk-sgx82nnt.js.map} +3 -4
  350. package/dist/{chunk-bkpke1sg.js → chunk-t5608tkq.js} +3 -1
  351. package/dist/{chunk-bkpke1sg.js.map → chunk-t5608tkq.js.map} +3 -3
  352. package/dist/{chunk-29yx306f.js → chunk-tdxfsg1c.js} +507 -265
  353. package/dist/chunk-tdxfsg1c.js.map +23 -0
  354. package/dist/{chunk-d5rjr8c0.js → chunk-vabga7fk.js} +1 -1
  355. package/dist/{chunk-dhdha526.js → chunk-vhbw5sqm.js} +26 -2
  356. package/dist/chunk-vhbw5sqm.js.map +10 -0
  357. package/dist/{chunk-e6k4thh5.js → chunk-vpgwq5nf.js} +98 -12
  358. package/dist/chunk-vpgwq5nf.js.map +21 -0
  359. package/dist/{chunk-61y5xs4p.js → chunk-vyt322b6.js} +69 -50
  360. package/dist/{chunk-61y5xs4p.js.map → chunk-vyt322b6.js.map} +4 -4
  361. package/dist/chunk-waqk73p1.js +2380 -0
  362. package/dist/chunk-waqk73p1.js.map +23 -0
  363. package/dist/chunk-wsc1brye.js +27 -0
  364. package/dist/chunk-wsc1brye.js.map +10 -0
  365. package/dist/{chunk-96yw3pwd.js → chunk-y7dbmaqh.js} +28 -2
  366. package/dist/chunk-y7dbmaqh.js.map +10 -0
  367. package/dist/{chunk-6vb4st8k.js → chunk-yc9ners4.js} +120 -19
  368. package/dist/{chunk-6vb4st8k.js.map → chunk-yc9ners4.js.map} +8 -8
  369. package/dist/{chunk-dvd2fp9q.js → chunk-zbc929zg.js} +28 -4
  370. package/dist/chunk-zbc929zg.js.map +13 -0
  371. package/dist/chunk-zrvhsq7f.js +37 -0
  372. package/dist/chunk-zrvhsq7f.js.map +10 -0
  373. package/dist/datasets/write.js +5 -5
  374. package/dist/error-reporting/internal.js +3 -3
  375. package/dist/errors/catalog.d.ts +26 -0
  376. package/dist/errors/catalog.d.ts.map +1 -1
  377. package/dist/errors/internal.d.ts.map +1 -1
  378. package/dist/errors/internal.js +1 -1
  379. package/dist/events/definitions.d.ts +7 -0
  380. package/dist/events/definitions.d.ts.map +1 -1
  381. package/dist/events/execution.d.ts.map +1 -1
  382. package/dist/events/index.d.ts +2 -3
  383. package/dist/events/index.d.ts.map +1 -1
  384. package/dist/events/index.js +8 -10
  385. package/dist/events/index.js.map +1 -1
  386. package/dist/events/scope.d.ts.map +1 -1
  387. package/dist/events/scope.js +1 -1
  388. package/dist/events/selectors/builder.d.ts +12 -1
  389. package/dist/events/selectors/builder.d.ts.map +1 -1
  390. package/dist/events/selectors/index.d.ts +2 -2
  391. package/dist/events/selectors/index.d.ts.map +1 -1
  392. package/dist/events/selectors/index.js +2 -2
  393. package/dist/events/selectors/types.d.ts +19 -3
  394. package/dist/events/selectors/types.d.ts.map +1 -1
  395. package/dist/events/service.d.ts +17 -2
  396. package/dist/events/service.d.ts.map +1 -1
  397. package/dist/events/types/index.d.ts +3 -1
  398. package/dist/events/types/index.d.ts.map +1 -1
  399. package/dist/events/types/users.d.ts +63 -0
  400. package/dist/events/types/users.d.ts.map +1 -0
  401. package/dist/events/view-conditions.d.ts +34 -0
  402. package/dist/events/view-conditions.d.ts.map +1 -0
  403. package/dist/execution/agent.d.ts +15 -0
  404. package/dist/execution/agent.d.ts.map +1 -1
  405. package/dist/execution/agent.js +63 -57
  406. package/dist/execution/agent.js.map +1 -1
  407. package/dist/execution/authorization.d.ts.map +1 -1
  408. package/dist/execution/authorized-object-reader.d.ts +51 -2
  409. package/dist/execution/authorized-object-reader.d.ts.map +1 -1
  410. package/dist/execution/lineage.d.ts +7 -0
  411. package/dist/execution/lineage.d.ts.map +1 -0
  412. package/dist/execution/object-reader-ontology.d.ts +2 -2
  413. package/dist/execution/object-reader-ontology.d.ts.map +1 -1
  414. package/dist/execution/object-reader-security.d.ts +24 -3
  415. package/dist/execution/object-reader-security.d.ts.map +1 -1
  416. package/dist/execution/object-reader-users.d.ts +20 -0
  417. package/dist/execution/object-reader-users.d.ts.map +1 -0
  418. package/dist/execution/preparation.d.ts +23 -0
  419. package/dist/execution/preparation.d.ts.map +1 -0
  420. package/dist/execution/primitive.js +61 -57
  421. package/dist/execution/primitive.js.map +1 -1
  422. package/dist/execution/request.d.ts +2 -1
  423. package/dist/execution/request.d.ts.map +1 -1
  424. package/dist/execution/request.js +64 -56
  425. package/dist/execution/request.js.map +3 -3
  426. package/dist/execution/unique-lookup.d.ts +14 -0
  427. package/dist/execution/unique-lookup.d.ts.map +1 -0
  428. package/dist/execution/visible-objects.d.ts +12 -0
  429. package/dist/execution/visible-objects.d.ts.map +1 -0
  430. package/dist/http/api-routes.d.ts +17 -0
  431. package/dist/http/api-routes.d.ts.map +1 -1
  432. package/dist/http/index.js +1 -1
  433. package/dist/index.d.ts +32 -15
  434. package/dist/index.d.ts.map +1 -1
  435. package/dist/index.js +137 -126
  436. package/dist/index.js.map +1 -1
  437. package/dist/lake-storage/index.js +5 -5
  438. package/dist/materialization/errors.d.ts +25 -0
  439. package/dist/materialization/errors.d.ts.map +1 -1
  440. package/dist/materialization/event-envelopes.d.ts +5 -0
  441. package/dist/materialization/event-envelopes.d.ts.map +1 -1
  442. package/dist/materialization/index.d.ts +1 -1
  443. package/dist/materialization/index.d.ts.map +1 -1
  444. package/dist/materialization/index.js +14 -8
  445. package/dist/materialization/index.js.map +1 -1
  446. package/dist/materialization/model.d.ts +20 -2
  447. package/dist/materialization/model.d.ts.map +1 -1
  448. package/dist/materializer/edits/commit.d.ts.map +1 -1
  449. package/dist/materializer/edits/load-state.d.ts +5 -1
  450. package/dist/materializer/edits/load-state.d.ts.map +1 -1
  451. package/dist/materializer/edits/plan.d.ts.map +1 -1
  452. package/dist/materializer/edits/unique-values.d.ts +47 -0
  453. package/dist/materializer/edits/unique-values.d.ts.map +1 -0
  454. package/dist/materializer/edits/working-state.d.ts +6 -1
  455. package/dist/materializer/edits/working-state.d.ts.map +1 -1
  456. package/dist/materializer/execution/work-records.d.ts +7 -1
  457. package/dist/materializer/execution/work-records.d.ts.map +1 -1
  458. package/dist/materializer/index.js +45 -41
  459. package/dist/materializer/index.js.map +1 -1
  460. package/dist/materializer/projections/replacement-plan.d.ts.map +1 -1
  461. package/dist/materializer/projections/source-materialization.d.ts +1 -0
  462. package/dist/materializer/projections/source-materialization.d.ts.map +1 -1
  463. package/dist/materializer/shared/normalize.d.ts.map +1 -1
  464. package/dist/materializer/shared/projection-run.d.ts +0 -1
  465. package/dist/materializer/shared/projection-run.d.ts.map +1 -1
  466. package/dist/materializer/telemetry/plan.d.ts.map +1 -1
  467. package/dist/models/audio/catalog.d.ts +13 -1
  468. package/dist/models/audio/catalog.d.ts.map +1 -1
  469. package/dist/models/audio/errors.d.ts +6 -1
  470. package/dist/models/audio/errors.d.ts.map +1 -1
  471. package/dist/models/audio/runtime.d.ts.map +1 -1
  472. package/dist/models/audio/speech.d.ts +8 -0
  473. package/dist/models/audio/speech.d.ts.map +1 -0
  474. package/dist/models/audio/types.d.ts +93 -0
  475. package/dist/models/audio/types.d.ts.map +1 -1
  476. package/dist/models/calls.d.ts +27 -0
  477. package/dist/models/calls.d.ts.map +1 -0
  478. package/dist/models/catalog-index.d.ts +7 -4
  479. package/dist/models/catalog-index.d.ts.map +1 -1
  480. package/dist/models/catalog.d.ts +55 -3
  481. package/dist/models/catalog.d.ts.map +1 -1
  482. package/dist/models/decision/runtime.d.ts +6 -1
  483. package/dist/models/decision/runtime.d.ts.map +1 -1
  484. package/dist/models/decision/validation.d.ts +4 -1
  485. package/dist/models/decision/validation.d.ts.map +1 -1
  486. package/dist/models/definitions.d.ts +23 -1
  487. package/dist/models/definitions.d.ts.map +1 -1
  488. package/dist/models/events.d.ts +12 -1
  489. package/dist/models/events.d.ts.map +1 -1
  490. package/dist/models/execution/binding.d.ts +3 -1
  491. package/dist/models/execution/binding.d.ts.map +1 -1
  492. package/dist/models/execution/index.d.ts +1 -0
  493. package/dist/models/execution/index.d.ts.map +1 -1
  494. package/dist/models/execution/index.js +44 -34
  495. package/dist/models/execution/index.js.map +1 -1
  496. package/dist/models/execution/model-call-accounting.d.ts.map +1 -1
  497. package/dist/models/execution/model-call-recorder.d.ts +3 -0
  498. package/dist/models/execution/model-call-recorder.d.ts.map +1 -1
  499. package/dist/models/execution/usage.d.ts.map +1 -1
  500. package/dist/models/execution.d.ts +4 -2
  501. package/dist/models/execution.d.ts.map +1 -1
  502. package/dist/models/generation-types.d.ts +8 -1
  503. package/dist/models/generation-types.d.ts.map +1 -1
  504. package/dist/models/image/catalog.d.ts +13 -0
  505. package/dist/models/image/catalog.d.ts.map +1 -0
  506. package/dist/models/image/errors.d.ts +8 -0
  507. package/dist/models/image/errors.d.ts.map +1 -0
  508. package/dist/models/image/runtime.d.ts +8 -0
  509. package/dist/models/image/runtime.d.ts.map +1 -0
  510. package/dist/models/image/types.d.ts +103 -0
  511. package/dist/models/image/types.d.ts.map +1 -0
  512. package/dist/models/index.d.ts +12 -8
  513. package/dist/models/index.d.ts.map +1 -1
  514. package/dist/models/index.js +17 -7
  515. package/dist/models/index.js.map +1 -1
  516. package/dist/models/input-file.d.ts +9 -0
  517. package/dist/models/input-file.d.ts.map +1 -0
  518. package/dist/models/language-model.d.ts +13 -0
  519. package/dist/models/language-model.d.ts.map +1 -1
  520. package/dist/models/pricing.d.ts +25 -10
  521. package/dist/models/pricing.d.ts.map +1 -1
  522. package/dist/models/rate-card.d.ts +44 -6
  523. package/dist/models/rate-card.d.ts.map +1 -1
  524. package/dist/objects/conditional-writes.d.ts +37 -0
  525. package/dist/objects/conditional-writes.d.ts.map +1 -0
  526. package/dist/objects/execution.d.ts +2 -0
  527. package/dist/objects/execution.d.ts.map +1 -1
  528. package/dist/objects/index.d.ts +1 -0
  529. package/dist/objects/index.d.ts.map +1 -1
  530. package/dist/objects/index.js +68 -58
  531. package/dist/objects/index.js.map +1 -1
  532. package/dist/objects/link/authorization.d.ts +3 -0
  533. package/dist/objects/link/authorization.d.ts.map +1 -1
  534. package/dist/objects/link/endpoints.d.ts +21 -2
  535. package/dist/objects/link/endpoints.d.ts.map +1 -1
  536. package/dist/objects/link/remove.d.ts.map +1 -1
  537. package/dist/objects/link/upsert-batch.d.ts.map +1 -1
  538. package/dist/objects/link/upsert.d.ts.map +1 -1
  539. package/dist/objects/materializer-adapter.d.ts +13 -4
  540. package/dist/objects/materializer-adapter.d.ts.map +1 -1
  541. package/dist/objects/object/delete.d.ts +3 -0
  542. package/dist/objects/object/delete.d.ts.map +1 -1
  543. package/dist/objects/object/upsert-batch.d.ts.map +1 -1
  544. package/dist/objects/object/upsert.d.ts.map +1 -1
  545. package/dist/objects/query/current-user.d.ts +17 -0
  546. package/dist/objects/query/current-user.d.ts.map +1 -0
  547. package/dist/objects/query/executor.d.ts +14 -0
  548. package/dist/objects/query/executor.d.ts.map +1 -1
  549. package/dist/objects/query/index.d.ts +2 -2
  550. package/dist/objects/query/index.d.ts.map +1 -1
  551. package/dist/objects/query/index.js +49 -44
  552. package/dist/objects/query/index.js.map +1 -1
  553. package/dist/objects/query/ir.d.ts +19 -1
  554. package/dist/objects/query/ir.d.ts.map +1 -1
  555. package/dist/objects/query/matches-predicate.d.ts +9 -0
  556. package/dist/objects/query/matches-predicate.d.ts.map +1 -0
  557. package/dist/objects/query/normalize.d.ts.map +1 -1
  558. package/dist/objects/query/user-expansions.d.ts +27 -0
  559. package/dist/objects/query/user-expansions.d.ts.map +1 -0
  560. package/dist/objects/query/validate.d.ts.map +1 -1
  561. package/dist/objects/runtime-batch.d.ts +3 -1
  562. package/dist/objects/runtime-batch.d.ts.map +1 -1
  563. package/dist/objects/sdk/object-set.d.ts.map +1 -1
  564. package/dist/objects/sdk/query-executor.d.ts +6 -0
  565. package/dist/objects/sdk/query-executor.d.ts.map +1 -1
  566. package/dist/objects/serialize.d.ts +39 -0
  567. package/dist/objects/serialize.d.ts.map +1 -0
  568. package/dist/objects/unique-violation.d.ts +22 -0
  569. package/dist/objects/unique-violation.d.ts.map +1 -0
  570. package/dist/ontology/builders.d.ts +3 -1
  571. package/dist/ontology/builders.d.ts.map +1 -1
  572. package/dist/ontology/index.d.ts +2 -2
  573. package/dist/ontology/index.d.ts.map +1 -1
  574. package/dist/ontology/index.js +11 -7
  575. package/dist/ontology/index.js.map +1 -1
  576. package/dist/ontology/internal.js +7 -5
  577. package/dist/ontology/internal.js.map +3 -3
  578. package/dist/ontology/json-schema.d.ts.map +1 -1
  579. package/dist/ontology/primitives.d.ts +3 -0
  580. package/dist/ontology/primitives.d.ts.map +1 -1
  581. package/dist/ontology/registry.d.ts +6 -0
  582. package/dist/ontology/registry.d.ts.map +1 -1
  583. package/dist/ontology/types.d.ts +9 -0
  584. package/dist/ontology/types.d.ts.map +1 -1
  585. package/dist/ontology/unique-values.d.ts +26 -0
  586. package/dist/ontology/unique-values.d.ts.map +1 -0
  587. package/dist/ontology/user-ref.d.ts +23 -0
  588. package/dist/ontology/user-ref.d.ts.map +1 -1
  589. package/dist/ontology/validation/properties.d.ts.map +1 -1
  590. package/dist/ontology/validation/schema.d.ts.map +1 -1
  591. package/dist/pipelines/index.js +43 -40
  592. package/dist/pipelines/index.js.map +1 -1
  593. package/dist/projections/internal.js +36 -33
  594. package/dist/projections/internal.js.map +1 -1
  595. package/dist/projections/registry.d.ts +4 -0
  596. package/dist/projections/registry.d.ts.map +1 -1
  597. package/dist/projections/revision.d.ts +15 -0
  598. package/dist/projections/revision.d.ts.map +1 -1
  599. package/dist/projections/run-dispatch.d.ts.map +1 -1
  600. package/dist/projections/types.d.ts +2 -0
  601. package/dist/projections/types.d.ts.map +1 -1
  602. package/dist/query.d.ts +4 -2
  603. package/dist/query.d.ts.map +1 -1
  604. package/dist/query.js +2 -2
  605. package/dist/rules/execution.d.ts.map +1 -1
  606. package/dist/runtime/ai-cost.d.ts +2 -0
  607. package/dist/runtime/ai-cost.d.ts.map +1 -1
  608. package/dist/runtime/ai-usage.d.ts +7 -0
  609. package/dist/runtime/ai-usage.d.ts.map +1 -1
  610. package/dist/runtime/host.d.ts.map +1 -1
  611. package/dist/runtime/index.d.ts +1 -1
  612. package/dist/runtime/index.d.ts.map +1 -1
  613. package/dist/runtime/internal.js +42 -38
  614. package/dist/runtime/internal.js.map +1 -1
  615. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  616. package/dist/runtime/sixb.d.ts +2 -0
  617. package/dist/runtime/sixb.d.ts.map +1 -1
  618. package/dist/runtime/types.d.ts +66 -8
  619. package/dist/runtime/types.d.ts.map +1 -1
  620. package/dist/sandboxes/index.js +7 -6
  621. package/dist/sandboxes/index.js.map +1 -1
  622. package/dist/schedules/builders.d.ts.map +1 -1
  623. package/dist/schedules/index.js +3 -3
  624. package/dist/schedules/runtime.d.ts.map +1 -1
  625. package/dist/schedules/validation.d.ts.map +1 -1
  626. package/dist/security/grants.d.ts +12 -4
  627. package/dist/security/grants.d.ts.map +1 -1
  628. package/dist/security/index.d.ts +1 -1
  629. package/dist/security/index.d.ts.map +1 -1
  630. package/dist/security/internal.js +1 -1
  631. package/dist/security/project.d.ts +4 -1
  632. package/dist/security/project.d.ts.map +1 -1
  633. package/dist/security/public.js +2 -2
  634. package/dist/security/registry.d.ts +6 -0
  635. package/dist/security/registry.d.ts.map +1 -1
  636. package/dist/security/types.d.ts +47 -9
  637. package/dist/security/types.d.ts.map +1 -1
  638. package/dist/security/validation.d.ts.map +1 -1
  639. package/dist/security/view-conditions.d.ts +37 -0
  640. package/dist/security/view-conditions.d.ts.map +1 -0
  641. package/dist/shares/execution.d.ts.map +1 -1
  642. package/dist/shares/internal.js +34 -31
  643. package/dist/shares/internal.js.map +2 -2
  644. package/dist/storage/action-runs/failure.js +2 -2
  645. package/dist/storage/action-runs/provider.js +1 -1
  646. package/dist/storage/action-runs/types.d.ts +1 -1
  647. package/dist/storage/action-runs/types.d.ts.map +1 -1
  648. package/dist/storage/agents/errors.d.ts +3 -1
  649. package/dist/storage/agents/errors.d.ts.map +1 -1
  650. package/dist/storage/agents/in-memory.d.ts +120 -3
  651. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  652. package/dist/storage/agents/index.d.ts +2 -2
  653. package/dist/storage/agents/index.d.ts.map +1 -1
  654. package/dist/storage/agents/provider.d.ts +154 -4
  655. package/dist/storage/agents/provider.d.ts.map +1 -1
  656. package/dist/storage/agents/provider.js +60 -5
  657. package/dist/storage/agents/provider.js.map +1 -1
  658. package/dist/storage/agents/types.d.ts +565 -13
  659. package/dist/storage/agents/types.d.ts.map +1 -1
  660. package/dist/storage/ai-cost/analytics.d.ts +10 -1
  661. package/dist/storage/ai-cost/analytics.d.ts.map +1 -1
  662. package/dist/storage/ai-cost/groups.d.ts +9 -0
  663. package/dist/storage/ai-cost/groups.d.ts.map +1 -1
  664. package/dist/storage/ai-cost/index.d.ts +1 -1
  665. package/dist/storage/ai-cost/index.d.ts.map +1 -1
  666. package/dist/storage/ai-cost/provider.d.ts +2 -1
  667. package/dist/storage/ai-cost/provider.d.ts.map +1 -1
  668. package/dist/storage/ai-cost/provider.js +11 -5
  669. package/dist/storage/ai-cost/provider.js.map +1 -1
  670. package/dist/storage/ai-cost/types.d.ts +14 -2
  671. package/dist/storage/ai-cost/types.d.ts.map +1 -1
  672. package/dist/storage/ai-cost/validation.d.ts.map +1 -1
  673. package/dist/storage/ai-limits/enforcement.js +5 -4
  674. package/dist/storage/ai-limits/enforcement.js.map +1 -1
  675. package/dist/storage/ai-limits/provider.d.ts +1 -1
  676. package/dist/storage/ai-limits/provider.d.ts.map +1 -1
  677. package/dist/storage/ai-limits/provider.js +3 -2
  678. package/dist/storage/ai-limits/provider.js.map +1 -1
  679. package/dist/storage/ai-usage/in-memory.d.ts +5 -1
  680. package/dist/storage/ai-usage/in-memory.d.ts.map +1 -1
  681. package/dist/storage/ai-usage/index.d.ts +2 -2
  682. package/dist/storage/ai-usage/index.d.ts.map +1 -1
  683. package/dist/storage/ai-usage/record.d.ts +5 -1
  684. package/dist/storage/ai-usage/record.d.ts.map +1 -1
  685. package/dist/storage/ai-usage/types.d.ts +33 -0
  686. package/dist/storage/ai-usage/types.d.ts.map +1 -1
  687. package/dist/storage/ai-usage/usage.d.ts +2 -0
  688. package/dist/storage/ai-usage/usage.d.ts.map +1 -1
  689. package/dist/storage/artifacts/errors.d.ts +12 -2
  690. package/dist/storage/artifacts/errors.d.ts.map +1 -1
  691. package/dist/storage/artifacts/in-memory.d.ts +23 -2
  692. package/dist/storage/artifacts/in-memory.d.ts.map +1 -1
  693. package/dist/storage/artifacts/index.d.ts +2 -2
  694. package/dist/storage/artifacts/index.d.ts.map +1 -1
  695. package/dist/storage/artifacts/record.d.ts +19 -2
  696. package/dist/storage/artifacts/record.d.ts.map +1 -1
  697. package/dist/storage/artifacts/types.d.ts +87 -8
  698. package/dist/storage/artifacts/types.d.ts.map +1 -1
  699. package/dist/storage/auth/in-memory/auth-storage.d.ts +3 -2
  700. package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
  701. package/dist/storage/auth/in-memory/users.d.ts +7 -3
  702. package/dist/storage/auth/in-memory/users.d.ts.map +1 -1
  703. package/dist/storage/auth/index.d.ts +1 -1
  704. package/dist/storage/auth/index.d.ts.map +1 -1
  705. package/dist/storage/auth/types.d.ts +40 -9
  706. package/dist/storage/auth/types.d.ts.map +1 -1
  707. package/dist/storage/connector-connections/provider.js +1 -1
  708. package/dist/storage/executions/in-memory.d.ts +2 -1
  709. package/dist/storage/executions/in-memory.d.ts.map +1 -1
  710. package/dist/storage/executions/index.d.ts +1 -1
  711. package/dist/storage/executions/index.d.ts.map +1 -1
  712. package/dist/storage/executions/types.d.ts +15 -0
  713. package/dist/storage/executions/types.d.ts.map +1 -1
  714. package/dist/storage/file-upload-sessions/provider.js +15 -12
  715. package/dist/storage/file-upload-sessions/provider.js.map +1 -1
  716. package/dist/storage/index.d.ts +13 -11
  717. package/dist/storage/index.d.ts.map +1 -1
  718. package/dist/storage/index.js +50 -39
  719. package/dist/storage/index.js.map +1 -1
  720. package/dist/storage/internal.d.ts +2 -2
  721. package/dist/storage/internal.d.ts.map +1 -1
  722. package/dist/storage/internal.js +19 -8
  723. package/dist/storage/internal.js.map +1 -1
  724. package/dist/storage/migrations/migrate-storage.d.ts +4 -1
  725. package/dist/storage/migrations/migrate-storage.d.ts.map +1 -1
  726. package/dist/storage/migrations/prepare-unique-properties.d.ts +18 -0
  727. package/dist/storage/migrations/prepare-unique-properties.d.ts.map +1 -0
  728. package/dist/storage/objects/guard.d.ts +1 -1
  729. package/dist/storage/objects/guard.d.ts.map +1 -1
  730. package/dist/storage/objects/in-memory/conditional-reader.d.ts +5 -0
  731. package/dist/storage/objects/in-memory/conditional-reader.d.ts.map +1 -0
  732. package/dist/storage/objects/in-memory/query.d.ts.map +1 -1
  733. package/dist/storage/objects/in-memory/read-scope.d.ts +3 -9
  734. package/dist/storage/objects/in-memory/read-scope.d.ts.map +1 -1
  735. package/dist/storage/objects/in-memory/read-source.d.ts +10 -1
  736. package/dist/storage/objects/in-memory/read-source.d.ts.map +1 -1
  737. package/dist/storage/objects/in-memory/scoped-reader.d.ts +14 -0
  738. package/dist/storage/objects/in-memory/scoped-reader.d.ts.map +1 -0
  739. package/dist/storage/objects/in-memory/selected-reader.d.ts.map +1 -1
  740. package/dist/storage/objects/in-memory/storage.d.ts +36 -1
  741. package/dist/storage/objects/in-memory/storage.d.ts.map +1 -1
  742. package/dist/storage/objects/index.d.ts +2 -2
  743. package/dist/storage/objects/index.d.ts.map +1 -1
  744. package/dist/storage/objects/read-scope.d.ts +9 -1
  745. package/dist/storage/objects/read-scope.d.ts.map +1 -1
  746. package/dist/storage/objects/types.d.ts +64 -1
  747. package/dist/storage/objects/types.d.ts.map +1 -1
  748. package/dist/storage/ontology/in-memory/index.d.ts +2 -0
  749. package/dist/storage/ontology/in-memory/index.d.ts.map +1 -1
  750. package/dist/storage/ontology/in-memory/materializations.d.ts +1 -0
  751. package/dist/storage/ontology/in-memory/materializations.d.ts.map +1 -1
  752. package/dist/storage/ontology/in-memory/replacement-plans.d.ts.map +1 -1
  753. package/dist/storage/ontology/in-memory/unique-values.d.ts +32 -0
  754. package/dist/storage/ontology/in-memory/unique-values.d.ts.map +1 -0
  755. package/dist/storage/ontology/index.d.ts +4 -1
  756. package/dist/storage/ontology/index.d.ts.map +1 -1
  757. package/dist/storage/ontology/materializations.d.ts +34 -1
  758. package/dist/storage/ontology/materializations.d.ts.map +1 -1
  759. package/dist/storage/ontology/provider-work.d.ts +15 -2
  760. package/dist/storage/ontology/provider-work.d.ts.map +1 -1
  761. package/dist/storage/ontology/provider.d.ts +1 -1
  762. package/dist/storage/ontology/provider.d.ts.map +1 -1
  763. package/dist/storage/ontology/provider.js +9 -4
  764. package/dist/storage/ontology/provider.js.map +1 -1
  765. package/dist/storage/ontology/unique-values.d.ts +54 -0
  766. package/dist/storage/ontology/unique-values.d.ts.map +1 -0
  767. package/dist/storage/operation-scope.d.ts +1 -1
  768. package/dist/storage/operation-scope.d.ts.map +1 -1
  769. package/dist/storage/operation-scope.js +1 -1
  770. package/dist/storage/projection-runs/in-memory.d.ts +0 -6
  771. package/dist/storage/projection-runs/in-memory.d.ts.map +1 -1
  772. package/dist/storage/projection-runs/provider.js +2 -2
  773. package/dist/storage/share-grants/provider.js +4 -3
  774. package/dist/storage/share-grants/provider.js.map +1 -1
  775. package/dist/storage/types.d.ts +2 -2
  776. package/dist/storage/types.d.ts.map +1 -1
  777. package/dist/storage/workflow-runs/provider.js +15 -12
  778. package/dist/storage/workflow-runs/provider.js.map +1 -1
  779. package/dist/syncs/index.js +42 -39
  780. package/dist/syncs/index.js.map +1 -1
  781. package/dist/testing/agent-approval-storage-contract.d.ts +17 -0
  782. package/dist/testing/agent-approval-storage-contract.d.ts.map +1 -0
  783. package/dist/testing/agent-memory-storage-contract.d.ts +12 -0
  784. package/dist/testing/agent-memory-storage-contract.d.ts.map +1 -0
  785. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  786. package/dist/testing/ai-cost-storage-contract.d.ts.map +1 -1
  787. package/dist/testing/ai-limit-storage-contract.d.ts +0 -1
  788. package/dist/testing/ai-limit-storage-contract.d.ts.map +1 -1
  789. package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -1
  790. package/dist/testing/ai-usage-storage-contract.d.ts.map +1 -1
  791. package/dist/testing/artifact-storage-contract.d.ts.map +1 -1
  792. package/dist/testing/auth-storage-contract.d.ts +13 -0
  793. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  794. package/dist/testing/broker-contract.d.ts +5 -0
  795. package/dist/testing/broker-contract.d.ts.map +1 -1
  796. package/dist/testing/effective-storage-contract.d.ts.map +1 -1
  797. package/dist/testing/execution-storage-contract.d.ts.map +1 -1
  798. package/dist/testing/file-upload-session-storage-contract.d.ts.map +1 -1
  799. package/dist/testing/index.d.ts +9 -5
  800. package/dist/testing/index.d.ts.map +1 -1
  801. package/dist/testing/index.js +7938 -3743
  802. package/dist/testing/index.js.map +29 -25
  803. package/dist/testing/lake-storage-contract.d.ts.map +1 -1
  804. package/dist/testing/materializer-storage-contract.d.ts.map +1 -1
  805. package/dist/testing/object-conditional-read-scope-contract.d.ts +11 -0
  806. package/dist/testing/object-conditional-read-scope-contract.d.ts.map +1 -0
  807. package/dist/testing/object-query-contract.d.ts +0 -2
  808. package/dist/testing/object-query-contract.d.ts.map +1 -1
  809. package/dist/testing/ontology-storage-contract.d.ts.map +1 -1
  810. package/dist/testing/projection-run-storage-contract.d.ts.map +1 -1
  811. package/dist/testing/queues-contract.d.ts +5 -0
  812. package/dist/testing/queues-contract.d.ts.map +1 -1
  813. package/dist/testing/sandboxes-contract.d.ts.map +1 -1
  814. package/dist/testing/share-grant-storage-contract.d.ts.map +1 -1
  815. package/dist/testing/share-session-storage-contract.d.ts.map +1 -1
  816. package/dist/testing/unique-values-contract.d.ts +21 -0
  817. package/dist/testing/unique-values-contract.d.ts.map +1 -0
  818. package/dist/testing/webhook-execution.d.ts +0 -8
  819. package/dist/testing/webhook-execution.d.ts.map +1 -1
  820. package/dist/testing/webhook-run-storage-contract.d.ts.map +1 -1
  821. package/dist/users/execution.d.ts +40 -0
  822. package/dist/users/execution.d.ts.map +1 -0
  823. package/dist/users/index.d.ts +3 -0
  824. package/dist/users/index.d.ts.map +1 -0
  825. package/dist/webhooks/internal.js +34 -31
  826. package/dist/webhooks/internal.js.map +2 -2
  827. package/dist/workers/index.js +4 -6
  828. package/dist/workers/index.js.map +4 -4
  829. package/dist/workers/queue-worker.d.ts +0 -2
  830. package/dist/workers/queue-worker.d.ts.map +1 -1
  831. package/dist/workers/worker.d.ts +0 -2
  832. package/dist/workers/worker.d.ts.map +1 -1
  833. package/dist/workflows/builders.d.ts.map +1 -1
  834. package/dist/workflows/index.js +67 -63
  835. package/dist/workflows/index.js.map +1 -1
  836. package/dist/workflows/request.d.ts +12 -1
  837. package/dist/workflows/request.d.ts.map +1 -1
  838. package/dist/workflows/types.d.ts +6 -2
  839. package/dist/workflows/types.d.ts.map +1 -1
  840. package/dist/workflows/validation.d.ts.map +1 -1
  841. package/package.json +1 -1
  842. package/src/actions/commit-edits.ts +6 -1
  843. package/src/actions/execution.ts +42 -15
  844. package/src/actions/read-facade.ts +33 -0
  845. package/src/actions/request.ts +224 -71
  846. package/src/actions/run/context.ts +47 -1
  847. package/src/actions/run/execute.ts +13 -6
  848. package/src/actions/run/executor.ts +11 -2
  849. package/src/actions/run/normalize.ts +12 -2
  850. package/src/actions/run/phases.ts +2 -0
  851. package/src/actions/run/run-action.ts +12 -3
  852. package/src/actions/run/signals.ts +3 -9
  853. package/src/actions/run/types.ts +17 -1
  854. package/src/actions/run-authorization.ts +72 -0
  855. package/src/actions/types/context.ts +20 -3
  856. package/src/actions/validators.ts +19 -8
  857. package/src/activity/README.md +5 -2
  858. package/src/activity/timeline.ts +39 -78
  859. package/src/agents/accounting.ts +59 -0
  860. package/src/agents/adapters.ts +10 -0
  861. package/src/agents/agent-mail.ts +29 -0
  862. package/src/agents/api-gateway.ts +14 -3
  863. package/src/agents/approval-continuation.ts +48 -0
  864. package/src/agents/approval-executor.ts +318 -0
  865. package/src/agents/approval-outcome.ts +59 -0
  866. package/src/agents/approvals.ts +566 -0
  867. package/src/agents/authority.ts +24 -1
  868. package/src/agents/builders.ts +5 -3
  869. package/src/agents/cancel.ts +103 -0
  870. package/src/agents/child-question.ts +46 -0
  871. package/src/agents/children.ts +404 -0
  872. package/src/agents/context-compaction.ts +12 -0
  873. package/src/agents/errors.ts +31 -0
  874. package/src/agents/execution.ts +788 -90
  875. package/src/agents/fork.ts +158 -0
  876. package/src/agents/ids.ts +18 -6
  877. package/src/agents/index.ts +55 -0
  878. package/src/agents/memory-execution.ts +186 -0
  879. package/src/agents/memory.ts +178 -0
  880. package/src/agents/message.ts +57 -0
  881. package/src/agents/model-loop.ts +93 -6
  882. package/src/agents/model-routing.ts +193 -0
  883. package/src/agents/participants.ts +213 -0
  884. package/src/agents/reference.ts +2 -0
  885. package/src/agents/request.ts +398 -69
  886. package/src/agents/run-scope.ts +134 -0
  887. package/src/agents/streams/index.ts +5 -0
  888. package/src/agents/streams/internal.ts +1 -0
  889. package/src/agents/streams/protocol.ts +385 -7
  890. package/src/agents/subagent-runs.ts +41 -0
  891. package/src/agents/thread-access.ts +137 -0
  892. package/src/agents/tool-definition.ts +5 -3
  893. package/src/agents/types.ts +35 -10
  894. package/src/agents/validation.ts +2 -0
  895. package/src/artifacts/access.ts +125 -0
  896. package/src/artifacts/canvas.ts +369 -0
  897. package/src/artifacts/csv.ts +10 -0
  898. package/src/artifacts/errors.ts +12 -1
  899. package/src/artifacts/execution.ts +436 -36
  900. package/src/artifacts/formula/check.ts +171 -0
  901. package/src/artifacts/formula/evaluate.ts +288 -0
  902. package/src/artifacts/formula/index.ts +199 -0
  903. package/src/artifacts/formula/parser.ts +357 -0
  904. package/src/artifacts/frames/assets.ts +35 -19
  905. package/src/artifacts/frames/entries.ts +35 -0
  906. package/src/artifacts/frames/grants.ts +10 -9
  907. package/src/artifacts/frames/index.ts +8 -2
  908. package/src/artifacts/frames/kit.ts +191 -14
  909. package/src/artifacts/frames/probe.ts +66 -18
  910. package/src/artifacts/frames/protocol.ts +164 -10
  911. package/src/artifacts/frames/runtime.ts +273 -28
  912. package/src/artifacts/index.ts +66 -2
  913. package/src/artifacts/kinds.ts +1 -1
  914. package/src/artifacts/limits.ts +31 -0
  915. package/src/artifacts/live-sheet.ts +345 -0
  916. package/src/artifacts/outline.ts +34 -1
  917. package/src/artifacts/publish/index.ts +2 -0
  918. package/src/artifacts/publish/publish.ts +120 -34
  919. package/src/artifacts/publish/queries.ts +336 -0
  920. package/src/artifacts/publish/references.ts +18 -13
  921. package/src/artifacts/publish/validate/canvas.ts +118 -0
  922. package/src/artifacts/publish/validate/html.ts +78 -0
  923. package/src/artifacts/publish/validate/page.ts +65 -0
  924. package/src/artifacts/publish/validate/sheet.ts +115 -69
  925. package/src/artifacts/publish/validate/slides.ts +11 -63
  926. package/src/artifacts/queries.ts +512 -0
  927. package/src/artifacts/resolve.ts +20 -5
  928. package/src/artifacts/run-query.ts +212 -0
  929. package/src/artifacts/serialize-query.ts +25 -0
  930. package/src/artifacts/sheet-rules.ts +180 -0
  931. package/src/artifacts/tones.ts +20 -0
  932. package/src/artifacts/workbook.ts +374 -15
  933. package/src/auth/index.ts +4 -0
  934. package/src/auth/member-events.ts +114 -0
  935. package/src/auth/profile.ts +118 -0
  936. package/src/auth/runtime.ts +190 -9
  937. package/src/auth/strategy.ts +3 -0
  938. package/src/auth/types.ts +32 -0
  939. package/src/authorization/decision.ts +47 -0
  940. package/src/authorization/event-visibility.ts +17 -16
  941. package/src/authorization/grant-kinds.ts +32 -0
  942. package/src/authorization/index.ts +6 -1
  943. package/src/authorization/resolve.ts +58 -1
  944. package/src/authorization/run-visibility.ts +8 -1
  945. package/src/authorization/types.ts +14 -0
  946. package/src/errors/catalog.ts +26 -1
  947. package/src/errors/internal.ts +17 -8
  948. package/src/events/definitions.ts +26 -0
  949. package/src/events/execution.ts +43 -6
  950. package/src/events/index.ts +10 -1
  951. package/src/events/scope.ts +2 -0
  952. package/src/events/selectors/builder.ts +50 -0
  953. package/src/events/selectors/index.ts +4 -0
  954. package/src/events/selectors/types.ts +32 -1
  955. package/src/events/service.ts +55 -2
  956. package/src/events/types/index.ts +10 -0
  957. package/src/events/types/users.ts +73 -0
  958. package/src/events/view-conditions.ts +241 -0
  959. package/src/execution/agent.ts +25 -0
  960. package/src/execution/authorization.ts +70 -0
  961. package/src/execution/authorized-object-reader.ts +238 -32
  962. package/src/execution/lineage.ts +14 -0
  963. package/src/execution/object-reader-ontology.ts +11 -14
  964. package/src/execution/object-reader-security.ts +134 -10
  965. package/src/execution/object-reader-users.ts +122 -0
  966. package/src/execution/preparation.ts +78 -0
  967. package/src/execution/request.ts +2 -0
  968. package/src/execution/unique-lookup.ts +55 -0
  969. package/src/execution/visible-objects.ts +26 -0
  970. package/src/http/api-routes.ts +206 -7
  971. package/src/index.ts +99 -2
  972. package/src/materialization/errors.ts +37 -0
  973. package/src/materialization/event-envelopes.ts +11 -3
  974. package/src/materialization/index.ts +1 -0
  975. package/src/materialization/model.ts +24 -4
  976. package/src/materializer/README.md +7 -1
  977. package/src/materializer/edits/commit.ts +56 -12
  978. package/src/materializer/edits/load-state.ts +15 -7
  979. package/src/materializer/edits/operations.ts +12 -0
  980. package/src/materializer/edits/plan.ts +2 -0
  981. package/src/materializer/edits/unique-values.ts +255 -0
  982. package/src/materializer/edits/working-state.ts +8 -1
  983. package/src/materializer/execution/work-records.ts +47 -0
  984. package/src/materializer/projections/finish-run.ts +0 -1
  985. package/src/materializer/projections/replace.ts +1 -1
  986. package/src/materializer/projections/replacement-plan.ts +4 -1
  987. package/src/materializer/projections/source-materialization.ts +2 -1
  988. package/src/materializer/shared/normalize.ts +37 -6
  989. package/src/materializer/shared/projection-run.ts +1 -2
  990. package/src/materializer/telemetry/append.ts +14 -17
  991. package/src/materializer/telemetry/plan.ts +2 -0
  992. package/src/models/audio/catalog.ts +89 -10
  993. package/src/models/audio/errors.ts +18 -1
  994. package/src/models/audio/runtime.ts +10 -13
  995. package/src/models/audio/speech.ts +261 -0
  996. package/src/models/audio/types.ts +97 -0
  997. package/src/models/calls.ts +100 -0
  998. package/src/models/catalog-index.ts +21 -2
  999. package/src/models/catalog.ts +211 -35
  1000. package/src/models/decision/runtime.ts +21 -22
  1001. package/src/models/decision/validation.ts +4 -1
  1002. package/src/models/definitions.ts +57 -8
  1003. package/src/models/events.ts +72 -1
  1004. package/src/models/execution/README.md +34 -5
  1005. package/src/models/execution/binding.ts +3 -1
  1006. package/src/models/execution/embedding.ts +1 -0
  1007. package/src/models/execution/index.ts +5 -0
  1008. package/src/models/execution/model-call-accounting.ts +3 -1
  1009. package/src/models/execution/model-call-recorder.ts +29 -1
  1010. package/src/models/execution/usage.ts +8 -0
  1011. package/src/models/execution.ts +20 -22
  1012. package/src/models/generation-types.ts +8 -1
  1013. package/src/models/image/catalog.ts +89 -0
  1014. package/src/models/image/errors.ts +19 -0
  1015. package/src/models/image/runtime.ts +335 -0
  1016. package/src/models/image/types.ts +111 -0
  1017. package/src/models/index.ts +38 -4
  1018. package/src/models/{audio/file.ts → input-file.ts} +22 -13
  1019. package/src/models/language-model.ts +13 -0
  1020. package/src/models/pricing.ts +263 -42
  1021. package/src/models/rate-card.ts +161 -12
  1022. package/src/objects/authorized-ontology-view.ts +1 -0
  1023. package/src/objects/conditional-writes.ts +109 -0
  1024. package/src/objects/execution.ts +4 -0
  1025. package/src/objects/index.ts +8 -0
  1026. package/src/objects/link/authorization.ts +12 -3
  1027. package/src/objects/link/endpoints.ts +42 -11
  1028. package/src/objects/link/remove.ts +25 -10
  1029. package/src/objects/link/upsert-batch.ts +2 -0
  1030. package/src/objects/link/upsert.ts +18 -12
  1031. package/src/objects/materializer-adapter.ts +55 -18
  1032. package/src/objects/object/delete.ts +24 -7
  1033. package/src/objects/object/upsert-batch.ts +44 -14
  1034. package/src/objects/object/upsert.ts +23 -5
  1035. package/src/objects/query/current-user.ts +76 -0
  1036. package/src/objects/query/executor.ts +39 -103
  1037. package/src/objects/query/explain.ts +20 -7
  1038. package/src/objects/query/index.ts +2 -0
  1039. package/src/objects/query/ir.ts +20 -0
  1040. package/src/objects/query/links.ts +8 -0
  1041. package/src/objects/query/matches-predicate.ts +108 -0
  1042. package/src/objects/query/normalize.ts +50 -19
  1043. package/src/objects/query/scalar-values.ts +19 -3
  1044. package/src/objects/query/user-expansions.ts +65 -0
  1045. package/src/objects/query/validate.ts +248 -10
  1046. package/src/objects/runtime-batch.ts +8 -2
  1047. package/src/objects/sdk/object-set.ts +12 -1
  1048. package/src/objects/sdk/query-builder.ts +39 -8
  1049. package/src/objects/sdk/query-executor.ts +6 -0
  1050. package/src/objects/serialize.ts +79 -0
  1051. package/src/objects/unique-violation.ts +59 -0
  1052. package/src/objects/vectors/handle.ts +3 -3
  1053. package/src/ontology/builders.ts +3 -0
  1054. package/src/ontology/docs-markdown.ts +1 -0
  1055. package/src/ontology/index.ts +2 -2
  1056. package/src/ontology/json-schema.ts +4 -0
  1057. package/src/ontology/primitives.ts +21 -8
  1058. package/src/ontology/registry.ts +16 -0
  1059. package/src/ontology/types.ts +9 -0
  1060. package/src/ontology/unique-values.ts +84 -0
  1061. package/src/ontology/user-ref.ts +39 -0
  1062. package/src/ontology/validation/properties.ts +43 -0
  1063. package/src/ontology/validation/schema.ts +9 -1
  1064. package/src/projections/registry.ts +16 -10
  1065. package/src/projections/revision.ts +112 -45
  1066. package/src/projections/run-dispatch.ts +38 -25
  1067. package/src/projections/types.ts +2 -0
  1068. package/src/query.ts +5 -0
  1069. package/src/rules/execution.ts +43 -11
  1070. package/src/runtime/ai-cost.ts +30 -0
  1071. package/src/runtime/ai-usage.ts +32 -1
  1072. package/src/runtime/host.ts +18 -1
  1073. package/src/runtime/index.ts +2 -0
  1074. package/src/runtime/resolve-definitions.ts +3 -0
  1075. package/src/runtime/sixb.ts +35 -8
  1076. package/src/runtime/types.ts +99 -9
  1077. package/src/schedules/builders.ts +3 -1
  1078. package/src/schedules/runtime.ts +6 -0
  1079. package/src/schedules/validation.ts +23 -1
  1080. package/src/security/README.md +62 -0
  1081. package/src/security/grants.ts +155 -10
  1082. package/src/security/index.ts +3 -1
  1083. package/src/security/project.ts +6 -1
  1084. package/src/security/registry.ts +32 -7
  1085. package/src/security/types.ts +54 -9
  1086. package/src/security/validation.ts +27 -11
  1087. package/src/security/view-conditions.ts +215 -0
  1088. package/src/shares/execution.ts +43 -10
  1089. package/src/storage/action-runs/types.ts +2 -0
  1090. package/src/storage/agents/errors.ts +3 -0
  1091. package/src/storage/agents/in-memory.ts +779 -32
  1092. package/src/storage/agents/index.ts +42 -0
  1093. package/src/storage/agents/provider.ts +733 -8
  1094. package/src/storage/agents/types.ts +620 -12
  1095. package/src/storage/ai-cost/analytics.ts +60 -7
  1096. package/src/storage/ai-cost/codec.ts +6 -1
  1097. package/src/storage/ai-cost/groups.ts +44 -1
  1098. package/src/storage/ai-cost/index.ts +1 -0
  1099. package/src/storage/ai-cost/provider.ts +2 -0
  1100. package/src/storage/ai-cost/types.ts +18 -1
  1101. package/src/storage/ai-cost/validation.ts +39 -12
  1102. package/src/storage/ai-limits/provider.ts +4 -7
  1103. package/src/storage/ai-usage/in-memory.ts +28 -1
  1104. package/src/storage/ai-usage/index.ts +9 -1
  1105. package/src/storage/ai-usage/record.ts +44 -7
  1106. package/src/storage/ai-usage/types.ts +38 -0
  1107. package/src/storage/ai-usage/usage.ts +15 -1
  1108. package/src/storage/artifacts/errors.ts +13 -1
  1109. package/src/storage/artifacts/in-memory.ts +156 -8
  1110. package/src/storage/artifacts/index.ts +6 -1
  1111. package/src/storage/artifacts/record.ts +61 -1
  1112. package/src/storage/artifacts/types.ts +92 -8
  1113. package/src/storage/auth/in-memory/auth-storage.ts +27 -2
  1114. package/src/storage/auth/in-memory/users.ts +40 -6
  1115. package/src/storage/auth/index.ts +1 -0
  1116. package/src/storage/auth/types.ts +43 -7
  1117. package/src/storage/executions/in-memory.ts +32 -0
  1118. package/src/storage/executions/index.ts +2 -0
  1119. package/src/storage/executions/types.ts +17 -0
  1120. package/src/storage/index.ts +69 -1
  1121. package/src/storage/internal.ts +9 -1
  1122. package/src/storage/migrations/migrate-storage.ts +8 -1
  1123. package/src/storage/migrations/prepare-unique-properties.ts +161 -0
  1124. package/src/storage/objects/guard.ts +7 -3
  1125. package/src/storage/objects/in-memory/conditional-reader.ts +72 -0
  1126. package/src/storage/objects/in-memory/query.ts +4 -105
  1127. package/src/storage/objects/in-memory/read-scope.ts +15 -14
  1128. package/src/storage/objects/in-memory/read-source.ts +11 -1
  1129. package/src/storage/objects/in-memory/scoped-reader.ts +243 -0
  1130. package/src/storage/objects/in-memory/selected-reader.ts +6 -231
  1131. package/src/storage/objects/in-memory/storage.ts +183 -1
  1132. package/src/storage/objects/index.ts +9 -1
  1133. package/src/storage/objects/read-scope.ts +191 -0
  1134. package/src/storage/objects/types.ts +68 -1
  1135. package/src/storage/ontology/in-memory/index.ts +3 -0
  1136. package/src/storage/ontology/in-memory/materializations.ts +35 -0
  1137. package/src/storage/ontology/in-memory/replacement-plans.ts +4 -0
  1138. package/src/storage/ontology/in-memory/unique-values.ts +62 -0
  1139. package/src/storage/ontology/index.ts +10 -0
  1140. package/src/storage/ontology/materializations.ts +35 -1
  1141. package/src/storage/ontology/provider-work.ts +76 -0
  1142. package/src/storage/ontology/provider.ts +3 -0
  1143. package/src/storage/ontology/unique-values.ts +56 -0
  1144. package/src/storage/operation-scope.ts +9 -1
  1145. package/src/storage/projection-runs/in-memory.ts +3 -35
  1146. package/src/storage/types.ts +2 -0
  1147. package/src/testing/agent-approval-storage-contract.ts +1117 -0
  1148. package/src/testing/agent-memory-storage-contract.ts +400 -0
  1149. package/src/testing/agent-storage-contract.ts +1188 -33
  1150. package/src/testing/ai-cost-storage-contract.ts +31 -1
  1151. package/src/testing/ai-limit-storage-contract.ts +9 -7
  1152. package/src/testing/ai-model-call-groups-contract.ts +76 -0
  1153. package/src/testing/ai-usage-storage-contract.ts +120 -13
  1154. package/src/testing/artifact-storage-contract.ts +338 -4
  1155. package/src/testing/auth-storage-contract.ts +550 -73
  1156. package/src/testing/broker-contract.ts +28 -23
  1157. package/src/testing/effective-storage-contract.ts +3 -8
  1158. package/src/testing/execution-storage-contract.ts +53 -0
  1159. package/src/testing/file-upload-session-storage-contract.ts +12 -24
  1160. package/src/testing/index.ts +17 -4
  1161. package/src/testing/lake-storage-contract.ts +22 -28
  1162. package/src/testing/materializer-storage-contract.ts +36 -9
  1163. package/src/testing/object-conditional-read-scope-contract.ts +634 -0
  1164. package/src/testing/object-query-contract.ts +386 -186
  1165. package/src/testing/ontology-storage-contract.ts +230 -21
  1166. package/src/testing/projection-run-storage-contract.ts +8 -18
  1167. package/src/testing/queues-contract.ts +39 -70
  1168. package/src/testing/sandboxes-contract.ts +3 -14
  1169. package/src/testing/share-grant-storage-contract.ts +13 -16
  1170. package/src/testing/share-session-storage-contract.ts +4 -14
  1171. package/src/testing/unique-values-contract.ts +907 -0
  1172. package/src/testing/webhook-execution.ts +1 -1
  1173. package/src/testing/webhook-run-storage-contract.ts +6 -9
  1174. package/src/users/execution.ts +131 -0
  1175. package/src/users/index.ts +2 -0
  1176. package/src/workers/queue-worker.ts +1 -3
  1177. package/src/workers/worker.ts +1 -3
  1178. package/src/workflows/builders.ts +6 -0
  1179. package/src/workflows/request.ts +46 -8
  1180. package/src/workflows/types.ts +6 -2
  1181. package/src/workflows/validation.ts +23 -9
  1182. package/dist/chunk-29yx306f.js.map +0 -22
  1183. package/dist/chunk-3jms7je7.js +0 -14
  1184. package/dist/chunk-3jms7je7.js.map +0 -10
  1185. package/dist/chunk-3qct2mdc.js +0 -297
  1186. package/dist/chunk-3qct2mdc.js.map +0 -12
  1187. package/dist/chunk-48qjhh6v.js.map +0 -13
  1188. package/dist/chunk-4as3wt1c.js.map +0 -12
  1189. package/dist/chunk-5948n82c.js.map +0 -10
  1190. package/dist/chunk-5hx48dnn.js.map +0 -14
  1191. package/dist/chunk-6rqgmkde.js.map +0 -29
  1192. package/dist/chunk-6x0pqh32.js.map +0 -10
  1193. package/dist/chunk-7n30ybym.js +0 -3
  1194. package/dist/chunk-7n440zgt.js +0 -261
  1195. package/dist/chunk-7n440zgt.js.map +0 -12
  1196. package/dist/chunk-7q8t23v4.js +0 -467
  1197. package/dist/chunk-7q8t23v4.js.map +0 -14
  1198. package/dist/chunk-8frc8a4j.js.map +0 -20
  1199. package/dist/chunk-918wwnaa.js.map +0 -68
  1200. package/dist/chunk-91mg3nj9.js.map +0 -12
  1201. package/dist/chunk-96yw3pwd.js.map +0 -10
  1202. package/dist/chunk-9j4jw7as.js.map +0 -14
  1203. package/dist/chunk-9k93ah50.js.map +0 -11
  1204. package/dist/chunk-9kgkfg6v.js +0 -502
  1205. package/dist/chunk-9kgkfg6v.js.map +0 -14
  1206. package/dist/chunk-akzryx9h.js.map +0 -100
  1207. package/dist/chunk-arns890k.js.map +0 -10
  1208. package/dist/chunk-bk9svbcq.js.map +0 -49
  1209. package/dist/chunk-c06hmxyy.js +0 -31
  1210. package/dist/chunk-c06hmxyy.js.map +0 -10
  1211. package/dist/chunk-c1rxbz5y.js.map +0 -12
  1212. package/dist/chunk-cn0fwwhy.js.map +0 -19
  1213. package/dist/chunk-dhcv7yxc.js.map +0 -11
  1214. package/dist/chunk-dhdha526.js.map +0 -10
  1215. package/dist/chunk-dvd2fp9q.js.map +0 -13
  1216. package/dist/chunk-e6k4thh5.js.map +0 -19
  1217. package/dist/chunk-ere85b8y.js.map +0 -15
  1218. package/dist/chunk-g257jwnc.js.map +0 -12
  1219. package/dist/chunk-hwksyjks.js.map +0 -11
  1220. package/dist/chunk-k43ct2ke.js.map +0 -12
  1221. package/dist/chunk-nn5xnx3s.js.map +0 -40
  1222. package/dist/chunk-pbcbn83d.js.map +0 -14
  1223. package/dist/chunk-pqajwytd.js +0 -68
  1224. package/dist/chunk-pqajwytd.js.map +0 -11
  1225. package/dist/chunk-qczk96d9.js.map +0 -11
  1226. package/dist/chunk-rdghfsss.js +0 -39
  1227. package/dist/chunk-rdghfsss.js.map +0 -10
  1228. package/dist/chunk-rj69qcrd.js.map +0 -11
  1229. package/dist/chunk-v4jbb3rs.js.map +0 -10
  1230. package/dist/chunk-yxd3nnqt.js.map +0 -11
  1231. package/dist/events/toStoredEvent.d.ts +0 -9
  1232. package/dist/events/toStoredEvent.d.ts.map +0 -1
  1233. package/dist/models/audio/file.d.ts +0 -9
  1234. package/dist/models/audio/file.d.ts.map +0 -1
  1235. package/src/events/toStoredEvent.ts +0 -33
  1236. /package/dist/{chunk-mfs23znk.js.map → chunk-07kkp2e1.js.map} +0 -0
  1237. /package/dist/{chunk-z58tm0hm.js.map → chunk-0phpbbvm.js.map} +0 -0
  1238. /package/dist/{chunk-e17zdm62.js.map → chunk-1t6k1avb.js.map} +0 -0
  1239. /package/dist/{chunk-kge7k6ey.js.map → chunk-2fn60nvs.js.map} +0 -0
  1240. /package/dist/{chunk-y0c4e6ex.js.map → chunk-3gbefjg5.js.map} +0 -0
  1241. /package/dist/{chunk-cy4mbddw.js.map → chunk-48jezz3j.js.map} +0 -0
  1242. /package/dist/{chunk-twe4dx8p.js → chunk-5tfev0fv.js} +0 -0
  1243. /package/dist/{chunk-twe4dx8p.js.map → chunk-5tfev0fv.js.map} +0 -0
  1244. /package/dist/{chunk-447a5c0p.js.map → chunk-6n69k945.js.map} +0 -0
  1245. /package/dist/{chunk-0bphap9y.js.map → chunk-6p0pastb.js.map} +0 -0
  1246. /package/dist/{chunk-431pyp2c.js.map → chunk-6y0mkhex.js.map} +0 -0
  1247. /package/dist/{chunk-s7jg7pmn.js.map → chunk-bab05bhg.js.map} +0 -0
  1248. /package/dist/{chunk-q5e5tv4b.js.map → chunk-c844dkwd.js.map} +0 -0
  1249. /package/dist/{chunk-cfj9dfbb.js.map → chunk-d2m879s4.js.map} +0 -0
  1250. /package/dist/{chunk-q7gn29y3.js.map → chunk-dp0cdtj2.js.map} +0 -0
  1251. /package/dist/{chunk-br3k6qbf.js.map → chunk-fm62y49k.js.map} +0 -0
  1252. /package/dist/{chunk-vvxtn22d.js.map → chunk-g663fahq.js.map} +0 -0
  1253. /package/dist/{chunk-rmakanzx.js.map → chunk-h33shhq6.js.map} +0 -0
  1254. /package/dist/{chunk-d09e3rax.js.map → chunk-hwarjrgf.js.map} +0 -0
  1255. /package/dist/{chunk-vf57cr4t.js.map → chunk-hyesv9dv.js.map} +0 -0
  1256. /package/dist/{chunk-5vems3nx.js.map → chunk-m2nevja0.js.map} +0 -0
  1257. /package/dist/{chunk-x9v4cx1d.js.map → chunk-m36fw8ft.js.map} +0 -0
  1258. /package/dist/{chunk-a40ad1ft.js.map → chunk-mbsbxarb.js.map} +0 -0
  1259. /package/dist/{chunk-6aawea28.js.map → chunk-n8q5j6y5.js.map} +0 -0
  1260. /package/dist/{chunk-d7dnxdep.js.map → chunk-n9zpx9c6.js.map} +0 -0
  1261. /package/dist/{chunk-xvsc5m8n.js.map → chunk-npcr0228.js.map} +0 -0
  1262. /package/dist/{chunk-y5tah2kf.js.map → chunk-q4pmvkg0.js.map} +0 -0
  1263. /package/dist/{chunk-d5rjr8c0.js.map → chunk-vabga7fk.js.map} +0 -0
@@ -1,7 +1,7 @@
1
1
  /**
2
- * Messages between the app and a deck in its sandboxed frame. The app asks; the frame answers
3
- * each request by its id, and tells the app what happened inside it as events. Later abilities
4
- * are new methods and events, not a new protocol.
2
+ * Messages between the app and an artifact in its sandboxed frame: a deck, or a page. The app
3
+ * asks; the frame answers each request by its id, and tells the app what happened inside it as
4
+ * events. Later abilities are new methods and events, not a new protocol.
5
5
  */
6
6
  export declare const FRAME_PROTOCOL = "sixb-frame/1";
7
7
  /**
@@ -27,6 +27,20 @@ export type FrameRequest = FrameRequestOf<"theme", {
27
27
  readonly slide: number;
28
28
  }> | FrameRequestOf<"mode", {
29
29
  readonly mode: DeckMode;
30
+ }>
31
+ /** Scrolls a page by a wheel turned over what the app draws on it. */
32
+ | FrameRequestOf<"scroll", {
33
+ readonly x: number;
34
+ readonly y: number;
35
+ }>
36
+ /** Loads the entry again, as a page whose data was reset starts over. */
37
+ | FrameRequestOf<"reload", Record<string, never>>
38
+ /**
39
+ * A query the page read has new rows: the objects it reads changed. The page reads them with
40
+ * `sixb.query(name)` again; the app sends it only for the queries that frame has read.
41
+ */
42
+ | FrameRequestOf<"query.changed", {
43
+ readonly name: string;
30
44
  }>;
31
45
  interface FrameRequestOf<Method extends string, Params> {
32
46
  readonly protocol: typeof FRAME_PROTOCOL;
@@ -41,8 +55,10 @@ export interface FrameResponse {
41
55
  readonly error?: string;
42
56
  }
43
57
  /** What happened inside the frame. */
44
- export type FrameEvent = FrameEventOf<"ready", {
45
- readonly slides: number;
58
+ export type FrameEvent =
59
+ /** The frame has laid out its entry: a deck says how many slides it has. */
60
+ FrameEventOf<"ready", {
61
+ readonly slides?: number;
46
62
  }>
47
63
  /** The reader picked a slide in the overview. */
48
64
  | FrameEventOf<"select", {
@@ -57,15 +73,29 @@ export type FrameEvent = FrameEventOf<"ready", {
57
73
  readonly address: string;
58
74
  }>
59
75
  /**
60
- * Where the shown slide's `<sixb-embed>` boxes are, for the app to draw each over the frame: in
61
- * the frame's pixels, with the scale the slide is drawn at. Empty in the overview, where an
62
- * embed stays a placeholder, as it does in a filled frame, which never reports.
76
+ * A link to a web page, which the app opens in a new tab: the frame cannot open windows itself.
77
+ * Only `http:` and `https:` addresses.
78
+ */
79
+ | FrameEventOf<"link", {
80
+ readonly url: string;
81
+ }>
82
+ /**
83
+ * Where the `<sixb-embed>` boxes in view are, for the app to draw each over the frame: in the
84
+ * frame's pixels, with the scale they are drawn at. A deck reports the shown slide's, and none in
85
+ * the overview, where an embed stays a placeholder, as it does in a filled frame, which never
86
+ * reports; a page reports those near its view as it scrolls, at its own scale.
63
87
  */
64
88
  | FrameEventOf<"embeds", {
65
89
  readonly embeds: readonly FrameEmbed[];
90
+ }>
91
+ /** A page's height as laid out at the frame's width, so a document can size the frame to it. */
92
+ | FrameEventOf<"size", {
93
+ readonly height: number;
66
94
  }>;
67
- /** One `<sixb-embed>` on the shown slide. */
95
+ /** One `<sixb-embed>` the frame shows. */
68
96
  export interface FrameEmbed {
97
+ /** The element's own id while the page is loaded: the same as it scrolls out and back. */
98
+ readonly id: number;
69
99
  readonly address: string;
70
100
  readonly rect: {
71
101
  readonly x: number;
@@ -73,7 +103,10 @@ export interface FrameEmbed {
73
103
  readonly width: number;
74
104
  readonly height: number;
75
105
  };
76
- /** The slide's scale: the embed is drawn at `rect / scale`, then scaled with the slide. */
106
+ /**
107
+ * The scale it is drawn at: a slide's, where the embed is laid out at `rect / scale` and scaled
108
+ * with the slide; 1 on a page.
109
+ */
77
110
  readonly scale: number;
78
111
  }
79
112
  interface FrameEventOf<Event extends string, Params> {
@@ -81,6 +114,42 @@ interface FrameEventOf<Event extends string, Params> {
81
114
  readonly event: Event;
82
115
  readonly params: Params;
83
116
  }
117
+ /**
118
+ * What the frame asks of the app, numbered so the app's `result` answers it: a page keeping data
119
+ * with `sixb.state`, or reading one of its version's queries with `sixb.query`. The app answers
120
+ * only its own frame, for the artifact and the version it shows.
121
+ */
122
+ export type FrameCall = FrameCallOf<"state.get", {
123
+ readonly key: string;
124
+ }> | FrameCallOf<"state.set", {
125
+ readonly key: string;
126
+ readonly value: unknown;
127
+ }> | FrameCallOf<"state.delete", {
128
+ readonly key: string;
129
+ }> | FrameCallOf<"state.keys", Record<string, never>>
130
+ /** Runs `queries/<name>.json` as the reader; the value is the query route's JSON. */
131
+ | FrameCallOf<"query.run", {
132
+ readonly name: string;
133
+ }>;
134
+ interface FrameCallOf<Method extends string, Params> {
135
+ readonly protocol: typeof FRAME_PROTOCOL;
136
+ readonly call: number;
137
+ readonly method: Method;
138
+ readonly params: Params;
139
+ }
140
+ /** The app's answer to one call: its value, or why it failed. */
141
+ export interface FrameCallResult {
142
+ readonly protocol: typeof FRAME_PROTOCOL;
143
+ readonly result: number;
144
+ readonly value?: unknown;
145
+ readonly error?: string;
146
+ }
147
+ /**
148
+ * A message from a frame as a call, or null when it is not one. A page's scripts write what it
149
+ * posts, so the shapes are checked here, and a value is checked for size as JSON, as storage will
150
+ * count it, before the app sends it anywhere.
151
+ */
152
+ export declare function parseFrameCall(data: unknown): FrameCall | null;
84
153
  /** Keys the frame passes to the app, so a deck navigates the same with focus in it or not. */
85
154
  export declare const DECK_KEYS: readonly ["ArrowLeft", "ArrowRight", "ArrowUp", "ArrowDown", "PageUp", "PageDown", "Home", "End", " ", "Escape"];
86
155
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/artifacts/frames/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/artifacts/frames/protocol.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,31 @@
1
1
  /**
2
- * The runtime the frame injects into a deck before anything else in its `<head>`. It is served as
3
- * this function's own source, `(${frameRuntime})()`, so it imports nothing and names nothing
4
- * outside itself: the protocol string and the keys repeat what `protocol.ts` declares, and a test
5
- * holds the two together.
6
- *
7
- * It lays the deck out: every `section.slide` is a 1280×720 slide, shown one at a time scaled to
8
- * fit, or all at once in a grid. The URL's fragment can open it at a slide, and with `sixb-fill`
9
- * show that slide alone filling the frame, as a thumbnail or an embed does. It applies the theme the app sends, answers the app's requests,
10
- * and tells the app about keys, picks in the overview, and links to other artifacts.
2
+ * The runtime the frame injects before anything else in an entry's `<head>`. It is served as this
3
+ * function's own source, `(${frameRuntime})()`, so it imports nothing and names nothing outside
4
+ * itself: the protocol string and the keys repeat what `protocol.ts` declares, and a test holds
5
+ * the two together. Its tag names the layout, `data-sixb-layout`.
6
+ *
7
+ * In every layout it applies the theme the app sends, then fires `sixb:theme` on the window for
8
+ * what draws its own colors; answers the app's requests; and tells the app about the links the
9
+ * reader follows, to other artifacts or to web pages, for the app to open them, and where its
10
+ * `<sixb-embed>` boxes are, for the app to draw them over the frame. A deck it also lays out:
11
+ * every `section.slide` is a 1280×720 slide, shown one at a time scaled to fit, or all at once in
12
+ * a grid. The URL's fragment can open it at a slide, and with `sixb-fill` show that slide alone
13
+ * filling the frame, as a thumbnail or an embed does; it tells the app about keys and picks in the
14
+ * overview. A page scrolls as it is: it reports the embeds near its view as it scrolls, and its
15
+ * height as it changes.
16
+ *
17
+ * It gives every layout `window.sixb.state`, where a page keeps JSON values for its reader: each
18
+ * call is a message the app answers, and the app keeps the values. Opened on its own, with no app
19
+ * around it, as the layout check opens a page, the values live in memory until it closes.
20
+ *
21
+ * And `window.sixb.query(name)`, which reads one of the version's queries as the reader: the app
22
+ * runs it and answers with the query route's JSON. Opened on its own, it reads
23
+ * `__sixb/queries/<name>.json` beside the runtime instead, where the layout check serves what the
24
+ * query returned for the Agent's requester.
25
+ *
26
+ * When the objects a query reads change, the app reads it again and tells the frame, which fires
27
+ * `sixb:query` on the window with `detail.name`, for the page to call `sixb.query(name)` again.
28
+ * Opened on its own, nothing tells it: the rows the check served are all there is.
11
29
  */
12
30
  export declare function frameRuntime(): void;
13
31
  //# sourceMappingURL=runtime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/artifacts/frames/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAyMnC"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../src/artifacts/frames/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,YAAY,IAAI,IAAI,CA4anC"}
@@ -5,12 +5,18 @@
5
5
  * deck's frame exchange, versioned as `sixb-frame/1`. Browser-safe: no storage, no Bun APIs.
6
6
  */
7
7
  export { type ArtifactAddress, type CellRange, formatArtifactAddress, isArtifactAddress, parseArtifactAddress, parseSheetPart, type SheetPart, } from "./address";
8
- export { CsvParseError, type CsvTable, parseCsv } from "./csv";
9
- export { type DeckMode, FRAME_PROTOCOL, FRAME_THEME_TOKENS, type FrameEmbed, type FrameEvent, type FrameRequest, type FrameResponse, type FrameStart, frameStartHash, parseFrameEvent, } from "./frames/protocol";
8
+ export { CANVAS_FILE, type Canvas, type CanvasArrow, type CanvasBoard, type CanvasEmbed, type CanvasEnd, type CanvasItem, type CanvasNote, type CanvasSection, type CanvasShape, type CanvasShapeItem, type CanvasText, type CanvasTextSize, parseCanvas, } from "./canvas";
9
+ export { CsvParseError, type CsvTable, formatCsv, parseCsv } from "./csv";
10
+ export { checkFormula, columnFormulaType, evaluateComputedColumns, FORMULA_ERRORS, FormulaCycleError, type FormulaErrorCode, type FormulaNode, type FormulaOperator, type FormulaType, formulaDependencies, formulaFitsColumn, formulaReferences, parseFormula, renameColumnReferences, } from "./formula";
11
+ export { type DeckMode, FRAME_PROTOCOL, FRAME_THEME_TOKENS, type FrameCall, type FrameCallResult, type FrameEmbed, type FrameEvent, type FrameRequest, type FrameResponse, type FrameStart, frameStartHash, parseFrameCall, parseFrameEvent, } from "./frames/protocol";
10
12
  export { ARTIFACT_KINDS, type ArtifactKind } from "./kinds";
11
- export { ARTIFACT_LIMITS } from "./limits";
12
- export { type ArtifactOutline, createHeadingSlugger, type DocumentHeading, type DocumentOutline, type FileOutline, type SheetOutline, type SheetSummary, type SlidesOutline, } from "./outline";
13
+ export { ARTIFACT_LIMITS, ARTIFACT_STATE_LIMITS } from "./limits";
14
+ export { type LiveSheetColumn, type LiveSheetLayout, type LiveSheetRow, type LiveSheetTable, liveSheetColumns, liveSheetTable, } from "./live-sheet";
15
+ export { type ArtifactOutline, type CanvasOutline, type CanvasOutlineItem, createHeadingSlugger, type DocumentHeading, type DocumentOutline, type FileOutline, type SheetOutline, type SheetSummary, type SlidesOutline, } from "./outline";
16
+ export { type ArtifactFacetsQueryResult, type ArtifactObjectsQueryResult, type ArtifactQueryProperty, type ArtifactQueryPropertyType, type ArtifactQueryResult, type ArtifactQuerySchema, artifactQueryName, } from "./queries";
13
17
  export { type ArtifactAddressTarget, type ResolvedArtifactPart, resolveArtifactAddress, } from "./resolve";
18
+ export { checkSheet } from "./sheet-rules";
14
19
  export { ARTIFACT_THEME_FILE, type ArtifactTheme, parseArtifactTheme } from "./theme";
15
- export { NUMERIC_COLUMN_TYPES, parseSheetDate, parseSheetNumber, parseWorkbook, type SheetChartType, type SheetColumnFormat, type SheetColumnType, sheetFilePath, WORKBOOK_FILE, type Workbook, type WorkbookChart, type WorkbookSheet, } from "./workbook";
20
+ export { ARTIFACT_TONES, type ArtifactTone } from "./tones";
21
+ export { type LiveSheetColumnSource, type LiveSheetSource, NUMERIC_COLUMN_TYPES, parseSheetDate, parseSheetNumber, parseWorkbook, SHEET_COLUMN_TYPES, SHEET_HIGHLIGHTS, SHEET_TOTALS, type SheetChartAggregate, type SheetChartType, type SheetColumnFormat, type SheetColumnType, type SheetHighlight, type SheetTotal, sheetFilePath, WORKBOOK_FILE, type Workbook, type WorkbookChart, type WorkbookSheet, } from "./workbook";
16
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/artifacts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,KAAK,SAAS,GACf,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,aAAa,EAAE,KAAK,QAAQ,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC9D,OAAO,EACL,KAAK,QAAQ,EACb,cAAc,EACd,kBAAkB,EAClB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,cAAc,EACd,eAAe,GAChB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EACL,KAAK,eAAe,EACpB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,GACnB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,sBAAsB,GACvB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACrF,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,aAAa,EACb,aAAa,EACb,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,aAAa,GACnB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/artifacts/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,qBAAqB,EACrB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,KAAK,SAAS,GACf,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,WAAW,EACX,KAAK,MAAM,EACX,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,WAAW,GACZ,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,aAAa,EAAE,KAAK,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,EACd,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,sBAAsB,GACvB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,KAAK,QAAQ,EACb,cAAc,EACd,kBAAkB,EAClB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,UAAU,EACf,cAAc,EACd,cAAc,EACd,eAAe,GAChB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3D,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAA;AACjE,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,gBAAgB,EAChB,cAAc,GACf,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,aAAa,GACnB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,iBAAiB,GAClB,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,sBAAsB,GACvB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AACrF,OAAO,EAAE,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAA;AAC3D,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,eAAe,EACpB,oBAAoB,EACpB,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,aAAa,EACb,aAAa,EACb,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,aAAa,GACnB,MAAM,YAAY,CAAA"}
@@ -1,29 +1,54 @@
1
1
  // @bun
2
2
  import {
3
- ARTIFACT_LIMITS2,
4
3
  isArtifactAddress2,
5
4
  parseArtifactAddress2,
6
5
  formatArtifactAddress2,
7
6
  parseSheetPart2
8
- } from "../chunk-mjddfa7k.js";
7
+ } from "../chunk-3fqxbn31.js";
8
+ import {
9
+ ARTIFACT_LIMITS2,
10
+ ARTIFACT_STATE_LIMITS2
11
+ } from "../chunk-hz5d43gn.js";
9
12
  import {
10
13
  ARTIFACT_THEME_FILE2,
11
14
  ARTIFACT_THEME_TOKENS,
12
15
  parseArtifactTheme2,
16
+ isArtifactQueryName,
17
+ artifactQueryName2,
13
18
  resolveArtifactAddress2,
19
+ ARTIFACT_TONES2,
20
+ CANVAS_FILE2,
21
+ parseCanvas2,
14
22
  createHeadingSlugger2,
15
23
  CsvParseError2,
16
24
  parseCsv2,
25
+ formatCsv2,
26
+ parseFormula2,
27
+ formulaDependencies2,
28
+ formulaReferences2,
29
+ renameColumnReferences2,
17
30
  WORKBOOK_FILE2,
31
+ SHEET_COLUMN_TYPES2,
18
32
  NUMERIC_COLUMN_TYPES2,
33
+ SHEET_HIGHLIGHTS2,
34
+ SHEET_TOTALS2,
19
35
  sheetFilePath2,
20
36
  parseWorkbook2,
21
37
  parseSheetNumber2,
22
- parseSheetDate2
23
- } from "../chunk-7q8t23v4.js";
38
+ parseSheetDate2,
39
+ checkFormula2,
40
+ FORMULA_ERRORS2,
41
+ columnFormulaType2,
42
+ formulaFitsColumn2,
43
+ FormulaCycleError2,
44
+ evaluateComputedColumns2,
45
+ liveSheetColumns2,
46
+ liveSheetTable2,
47
+ checkSheet2
48
+ } from "../chunk-waqk73p1.js";
24
49
  import {
25
50
  ARTIFACT_KINDS2
26
- } from "../chunk-arns890k.js";
51
+ } from "../chunk-d7vyc7k6.js";
27
52
  // src/artifacts/frames/protocol.ts
28
53
  var FRAME_PROTOCOL = "sixb-frame/1";
29
54
  function frameStartHash(start) {
@@ -34,6 +59,57 @@ function frameStartHash(start) {
34
59
  params.push("sixb-fill");
35
60
  return params.length > 0 ? `#${params.join("&")}` : "";
36
61
  }
62
+ function parseFrameCall(data) {
63
+ if (!isRecord(data) || data.protocol !== FRAME_PROTOCOL || !isRecord(data.params))
64
+ return null;
65
+ if (!Number.isSafeInteger(data.call) || Number(data.call) < 0)
66
+ return null;
67
+ const call = Number(data.call);
68
+ const { params } = data;
69
+ const key = params.key;
70
+ const keyed = isStateKey(key);
71
+ switch (data.method) {
72
+ case "state.get":
73
+ case "state.delete":
74
+ return keyed ? { protocol: FRAME_PROTOCOL, call, method: data.method, params: { key } } : null;
75
+ case "state.set": {
76
+ if (!keyed || !("value" in params))
77
+ return null;
78
+ const json = jsonText(params.value);
79
+ if (json === undefined || utf8Bytes(json) > ARTIFACT_STATE_LIMITS2.maxValueBytes)
80
+ return null;
81
+ return {
82
+ protocol: FRAME_PROTOCOL,
83
+ call,
84
+ method: "state.set",
85
+ params: { key, value: params.value }
86
+ };
87
+ }
88
+ case "state.keys":
89
+ return { protocol: FRAME_PROTOCOL, call, method: "state.keys", params: {} };
90
+ case "query.run": {
91
+ const { name } = params;
92
+ if (typeof name !== "string" || !isArtifactQueryName(name))
93
+ return null;
94
+ return { protocol: FRAME_PROTOCOL, call, method: "query.run", params: { name } };
95
+ }
96
+ default:
97
+ return null;
98
+ }
99
+ }
100
+ function isStateKey(value) {
101
+ return typeof value === "string" && value.length > 0 && value.length <= ARTIFACT_STATE_LIMITS2.maxKeyLength && !/\p{Cc}/u.test(value) && value !== "." && value !== "..";
102
+ }
103
+ function jsonText(value) {
104
+ try {
105
+ return JSON.stringify(value);
106
+ } catch {
107
+ return;
108
+ }
109
+ }
110
+ function utf8Bytes(text) {
111
+ return new TextEncoder().encode(text).byteLength;
112
+ }
37
113
  var DECK_KEYS = [
38
114
  "ArrowLeft",
39
115
  "ArrowRight",
@@ -53,6 +129,8 @@ function parseFrameEvent(data) {
53
129
  const { params } = data;
54
130
  switch (data.event) {
55
131
  case "ready":
132
+ if (params.slides === undefined)
133
+ return event("ready", {});
56
134
  return isCount(params.slides) ? event("ready", { slides: params.slides }) : null;
57
135
  case "select":
58
136
  return isCount(params.slide) && params.slide > 0 ? event("select", { slide: params.slide }) : null;
@@ -60,20 +138,27 @@ function parseFrameEvent(data) {
60
138
  return typeof params.key === "string" && DECK_KEYS.includes(params.key) ? event("key", { key: params.key }) : null;
61
139
  case "open":
62
140
  return isAddress(params.address) ? event("open", { address: params.address }) : null;
141
+ case "link":
142
+ return isWebAddress(params.url) ? event("link", { url: params.url }) : null;
63
143
  case "embeds": {
64
144
  const { embeds } = params;
65
145
  if (!Array.isArray(embeds) || embeds.length > ARTIFACT_LIMITS2.maxReferences)
66
146
  return null;
67
147
  const parsed = [];
148
+ const ids = new Set;
68
149
  for (const embed of embeds) {
69
150
  if (!isRecord(embed) || !isAddress(embed.address) || !isRecord(embed.rect))
70
151
  return null;
152
+ if (!isCount(embed.id) || ids.has(embed.id))
153
+ return null;
154
+ ids.add(embed.id);
71
155
  const { x, y, width, height } = embed.rect;
72
156
  if (![x, y, width, height, embed.scale].every(Number.isFinite))
73
157
  return null;
74
158
  if (Number(width) < 0 || Number(height) < 0 || Number(embed.scale) <= 0)
75
159
  return null;
76
160
  parsed.push({
161
+ id: embed.id,
77
162
  address: embed.address,
78
163
  rect: { x: Number(x), y: Number(y), width: Number(width), height: Number(height) },
79
164
  scale: Number(embed.scale)
@@ -81,10 +166,13 @@ function parseFrameEvent(data) {
81
166
  }
82
167
  return event("embeds", { embeds: parsed });
83
168
  }
169
+ case "size":
170
+ return Number.isFinite(params.height) && Number(params.height) >= 0 ? event("size", { height: Math.min(Number(params.height), MAX_HEIGHT) }) : null;
84
171
  default:
85
172
  return null;
86
173
  }
87
174
  }
175
+ var MAX_HEIGHT = 1e5;
88
176
  function event(name, params) {
89
177
  return { protocol: FRAME_PROTOCOL, event: name, params };
90
178
  }
@@ -97,29 +185,63 @@ function isCount(value) {
97
185
  function isAddress(value) {
98
186
  return typeof value === "string" && value.length <= 2048;
99
187
  }
188
+ var MAX_URL_LENGTH = 8192;
189
+ function isWebAddress(value) {
190
+ if (typeof value !== "string" || value.length > MAX_URL_LENGTH)
191
+ return false;
192
+ try {
193
+ const { protocol } = new URL(value);
194
+ return protocol === "http:" || protocol === "https:";
195
+ } catch {
196
+ return false;
197
+ }
198
+ }
100
199
  export {
101
200
  ARTIFACT_KINDS2 as ARTIFACT_KINDS,
102
201
  ARTIFACT_LIMITS2 as ARTIFACT_LIMITS,
202
+ ARTIFACT_STATE_LIMITS2 as ARTIFACT_STATE_LIMITS,
103
203
  ARTIFACT_THEME_FILE2 as ARTIFACT_THEME_FILE,
204
+ ARTIFACT_TONES2 as ARTIFACT_TONES,
205
+ CANVAS_FILE2 as CANVAS_FILE,
104
206
  CsvParseError2 as CsvParseError,
207
+ FORMULA_ERRORS2 as FORMULA_ERRORS,
105
208
  FRAME_PROTOCOL,
106
209
  FRAME_THEME_TOKENS,
210
+ FormulaCycleError2 as FormulaCycleError,
107
211
  NUMERIC_COLUMN_TYPES2 as NUMERIC_COLUMN_TYPES,
212
+ SHEET_COLUMN_TYPES2 as SHEET_COLUMN_TYPES,
213
+ SHEET_HIGHLIGHTS2 as SHEET_HIGHLIGHTS,
214
+ SHEET_TOTALS2 as SHEET_TOTALS,
108
215
  WORKBOOK_FILE2 as WORKBOOK_FILE,
216
+ artifactQueryName2 as artifactQueryName,
217
+ checkFormula2 as checkFormula,
218
+ checkSheet2 as checkSheet,
219
+ columnFormulaType2 as columnFormulaType,
109
220
  createHeadingSlugger2 as createHeadingSlugger,
221
+ evaluateComputedColumns2 as evaluateComputedColumns,
110
222
  formatArtifactAddress2 as formatArtifactAddress,
223
+ formatCsv2 as formatCsv,
224
+ formulaDependencies2 as formulaDependencies,
225
+ formulaFitsColumn2 as formulaFitsColumn,
226
+ formulaReferences2 as formulaReferences,
111
227
  frameStartHash,
112
228
  isArtifactAddress2 as isArtifactAddress,
229
+ liveSheetColumns2 as liveSheetColumns,
230
+ liveSheetTable2 as liveSheetTable,
113
231
  parseArtifactAddress2 as parseArtifactAddress,
114
232
  parseArtifactTheme2 as parseArtifactTheme,
233
+ parseCanvas2 as parseCanvas,
115
234
  parseCsv2 as parseCsv,
235
+ parseFormula2 as parseFormula,
236
+ parseFrameCall,
116
237
  parseFrameEvent,
117
238
  parseSheetDate2 as parseSheetDate,
118
239
  parseSheetNumber2 as parseSheetNumber,
119
240
  parseSheetPart2 as parseSheetPart,
120
241
  parseWorkbook2 as parseWorkbook,
242
+ renameColumnReferences2 as renameColumnReferences,
121
243
  resolveArtifactAddress2 as resolveArtifactAddress,
122
244
  sheetFilePath2 as sheetFilePath
123
245
  };
124
246
 
125
- //# debugId=1770743F29E57C2A64756E2164756E21
247
+ //# debugId=AA3028BCE82011C864756E2164756E21
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../src/artifacts/frames/protocol.ts"],
4
4
  "sourcesContent": [
5
- "import { ARTIFACT_LIMITS } from \"../limits\"\nimport { ARTIFACT_THEME_TOKENS } from \"../theme\"\n\n/**\n * Messages between the app and a deck in its sandboxed frame. The app asks; the frame answers\n * each request by its id, and tells the app what happened inside it as events. Later abilities\n * are new methods and events, not a new protocol.\n */\nexport const FRAME_PROTOCOL = \"sixb-frame/1\"\n\n/**\n * A deck shows one slide scaled to fit on its stage, every slide in a grid, or one slide filling\n * the page to present it.\n */\nexport type DeckMode = \"slide\" | \"overview\" | \"present\"\n\n/**\n * How a frame opens, set in its URL so the first paint is right: at a slide, and with `fill`, that\n * slide alone filling the frame with no stage around it, as a thumbnail or an embed shows it.\n */\nexport interface FrameStart {\n readonly slide?: number\n readonly fill?: boolean\n}\n\n/** The fragment that carries a frame's start: `#sixb-slide=3&sixb-fill`. */\nexport function frameStartHash(start: FrameStart): string {\n const params: string[] = []\n if (start.slide !== undefined && start.slide > 1)\n params.push(`sixb-slide=${Math.round(start.slide)}`)\n if (start.fill) params.push(\"sixb-fill\")\n return params.length > 0 ? `#${params.join(\"&\")}` : \"\"\n}\n\n/** What the app asks of the frame. */\nexport type FrameRequest =\n | FrameRequestOf<\n \"theme\",\n { readonly tokens: Readonly<Record<string, string>>; readonly dark: boolean }\n >\n | FrameRequestOf<\"goto\", { readonly slide: number }>\n | FrameRequestOf<\"mode\", { readonly mode: DeckMode }>\n\ninterface FrameRequestOf<Method extends string, Params> {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly id: number\n readonly method: Method\n readonly params: Params\n}\n\n/** The frame's answer to one request. */\nexport interface FrameResponse {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly id: number\n readonly error?: string\n}\n\n/** What happened inside the frame. */\nexport type FrameEvent =\n | FrameEventOf<\"ready\", { readonly slides: number }>\n /** The reader picked a slide in the overview. */\n | FrameEventOf<\"select\", { readonly slide: number }>\n /** A key the app handles, pressed while the frame had focus. */\n | FrameEventOf<\"key\", { readonly key: string }>\n /** A link to another artifact, which opens where the reader is. */\n | FrameEventOf<\"open\", { readonly address: string }>\n /**\n * Where the shown slide's `<sixb-embed>` boxes are, for the app to draw each over the frame: in\n * the frame's pixels, with the scale the slide is drawn at. Empty in the overview, where an\n * embed stays a placeholder, as it does in a filled frame, which never reports.\n */\n | FrameEventOf<\"embeds\", { readonly embeds: readonly FrameEmbed[] }>\n\n/** One `<sixb-embed>` on the shown slide. */\nexport interface FrameEmbed {\n readonly address: string\n readonly rect: {\n readonly x: number\n readonly y: number\n readonly width: number\n readonly height: number\n }\n /** The slide's scale: the embed is drawn at `rect / scale`, then scaled with the slide. */\n readonly scale: number\n}\n\ninterface FrameEventOf<Event extends string, Params> {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly event: Event\n readonly params: Params\n}\n\n/** Keys the frame passes to the app, so a deck navigates the same with focus in it or not. */\nexport const DECK_KEYS = [\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"PageUp\",\n \"PageDown\",\n \"Home\",\n \"End\",\n \" \",\n \"Escape\",\n] as const\n\n/**\n * The theme tokens the app sends into a frame, read from the viewer as it is themed: the ones an\n * artifact's theme may set.\n */\nexport const FRAME_THEME_TOKENS = ARTIFACT_THEME_TOKENS\n\n/**\n * A message from a frame as an event, or null when it is not one this protocol sends. A deck runs\n * its own scripts, so anything it posts is checked for the shape the app relies on: whole slide\n * numbers, a key the app handles, finite boxes, and no more embeds than a version may record.\n */\nexport function parseFrameEvent(data: unknown): FrameEvent | null {\n if (!isRecord(data) || data.protocol !== FRAME_PROTOCOL || !isRecord(data.params)) return null\n const { params } = data\n switch (data.event) {\n case \"ready\":\n return isCount(params.slides) ? event(\"ready\", { slides: params.slides }) : null\n case \"select\":\n return isCount(params.slide) && params.slide > 0\n ? event(\"select\", { slide: params.slide })\n : null\n case \"key\":\n return typeof params.key === \"string\" && (DECK_KEYS as readonly string[]).includes(params.key)\n ? event(\"key\", { key: params.key })\n : null\n case \"open\":\n return isAddress(params.address) ? event(\"open\", { address: params.address }) : null\n case \"embeds\": {\n const { embeds } = params\n if (!Array.isArray(embeds) || embeds.length > ARTIFACT_LIMITS.maxReferences) return null\n const parsed: FrameEmbed[] = []\n for (const embed of embeds) {\n if (!isRecord(embed) || !isAddress(embed.address) || !isRecord(embed.rect)) return null\n const { x, y, width, height } = embed.rect\n if (![x, y, width, height, embed.scale].every(Number.isFinite)) return null\n if (Number(width) < 0 || Number(height) < 0 || Number(embed.scale) <= 0) return null\n parsed.push({\n address: embed.address,\n rect: { x: Number(x), y: Number(y), width: Number(width), height: Number(height) },\n scale: Number(embed.scale),\n })\n }\n return event(\"embeds\", { embeds: parsed })\n }\n default:\n return null\n }\n}\n\nfunction event<Name extends FrameEvent[\"event\"]>(\n name: Name,\n params: Extract<FrameEvent, { event: Name }>[\"params\"]\n): FrameEvent {\n return { protocol: FRAME_PROTOCOL, event: name, params } as FrameEvent\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null\n}\n\nfunction isCount(value: unknown): value is number {\n return Number.isSafeInteger(value) && Number(value) >= 0\n}\n\n/** Long enough for any address a version can record; the app resolves it before using it. */\nfunction isAddress(value: unknown): value is string {\n return typeof value === \"string\" && value.length <= 2048\n}\n"
5
+ "import { ARTIFACT_LIMITS, ARTIFACT_STATE_LIMITS } from \"../limits\"\nimport { isArtifactQueryName } from \"../queries\"\nimport { ARTIFACT_THEME_TOKENS } from \"../theme\"\n\n/**\n * Messages between the app and an artifact in its sandboxed frame: a deck, or a page. The app\n * asks; the frame answers each request by its id, and tells the app what happened inside it as\n * events. Later abilities are new methods and events, not a new protocol.\n */\nexport const FRAME_PROTOCOL = \"sixb-frame/1\"\n\n/**\n * A deck shows one slide scaled to fit on its stage, every slide in a grid, or one slide filling\n * the page to present it.\n */\nexport type DeckMode = \"slide\" | \"overview\" | \"present\"\n\n/**\n * How a frame opens, set in its URL so the first paint is right: at a slide, and with `fill`, that\n * slide alone filling the frame with no stage around it, as a thumbnail or an embed shows it.\n */\nexport interface FrameStart {\n readonly slide?: number\n readonly fill?: boolean\n}\n\n/** The fragment that carries a frame's start: `#sixb-slide=3&sixb-fill`. */\nexport function frameStartHash(start: FrameStart): string {\n const params: string[] = []\n if (start.slide !== undefined && start.slide > 1)\n params.push(`sixb-slide=${Math.round(start.slide)}`)\n if (start.fill) params.push(\"sixb-fill\")\n return params.length > 0 ? `#${params.join(\"&\")}` : \"\"\n}\n\n/** What the app asks of the frame. */\nexport type FrameRequest =\n | FrameRequestOf<\n \"theme\",\n { readonly tokens: Readonly<Record<string, string>>; readonly dark: boolean }\n >\n | FrameRequestOf<\"goto\", { readonly slide: number }>\n | FrameRequestOf<\"mode\", { readonly mode: DeckMode }>\n /** Scrolls a page by a wheel turned over what the app draws on it. */\n | FrameRequestOf<\"scroll\", { readonly x: number; readonly y: number }>\n /** Loads the entry again, as a page whose data was reset starts over. */\n | FrameRequestOf<\"reload\", Record<string, never>>\n /**\n * A query the page read has new rows: the objects it reads changed. The page reads them with\n * `sixb.query(name)` again; the app sends it only for the queries that frame has read.\n */\n | FrameRequestOf<\"query.changed\", { readonly name: string }>\n\ninterface FrameRequestOf<Method extends string, Params> {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly id: number\n readonly method: Method\n readonly params: Params\n}\n\n/** The frame's answer to one request. */\nexport interface FrameResponse {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly id: number\n readonly error?: string\n}\n\n/** What happened inside the frame. */\nexport type FrameEvent =\n /** The frame has laid out its entry: a deck says how many slides it has. */\n | FrameEventOf<\"ready\", { readonly slides?: number }>\n /** The reader picked a slide in the overview. */\n | FrameEventOf<\"select\", { readonly slide: number }>\n /** A key the app handles, pressed while the frame had focus. */\n | FrameEventOf<\"key\", { readonly key: string }>\n /** A link to another artifact, which opens where the reader is. */\n | FrameEventOf<\"open\", { readonly address: string }>\n /**\n * A link to a web page, which the app opens in a new tab: the frame cannot open windows itself.\n * Only `http:` and `https:` addresses.\n */\n | FrameEventOf<\"link\", { readonly url: string }>\n /**\n * Where the `<sixb-embed>` boxes in view are, for the app to draw each over the frame: in the\n * frame's pixels, with the scale they are drawn at. A deck reports the shown slide's, and none in\n * the overview, where an embed stays a placeholder, as it does in a filled frame, which never\n * reports; a page reports those near its view as it scrolls, at its own scale.\n */\n | FrameEventOf<\"embeds\", { readonly embeds: readonly FrameEmbed[] }>\n /** A page's height as laid out at the frame's width, so a document can size the frame to it. */\n | FrameEventOf<\"size\", { readonly height: number }>\n\n/** One `<sixb-embed>` the frame shows. */\nexport interface FrameEmbed {\n /** The element's own id while the page is loaded: the same as it scrolls out and back. */\n readonly id: number\n readonly address: string\n readonly rect: {\n readonly x: number\n readonly y: number\n readonly width: number\n readonly height: number\n }\n /**\n * The scale it is drawn at: a slide's, where the embed is laid out at `rect / scale` and scaled\n * with the slide; 1 on a page.\n */\n readonly scale: number\n}\n\ninterface FrameEventOf<Event extends string, Params> {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly event: Event\n readonly params: Params\n}\n\n/**\n * What the frame asks of the app, numbered so the app's `result` answers it: a page keeping data\n * with `sixb.state`, or reading one of its version's queries with `sixb.query`. The app answers\n * only its own frame, for the artifact and the version it shows.\n */\nexport type FrameCall =\n | FrameCallOf<\"state.get\", { readonly key: string }>\n | FrameCallOf<\"state.set\", { readonly key: string; readonly value: unknown }>\n | FrameCallOf<\"state.delete\", { readonly key: string }>\n | FrameCallOf<\"state.keys\", Record<string, never>>\n /** Runs `queries/<name>.json` as the reader; the value is the query route's JSON. */\n | FrameCallOf<\"query.run\", { readonly name: string }>\n\ninterface FrameCallOf<Method extends string, Params> {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly call: number\n readonly method: Method\n readonly params: Params\n}\n\n/** The app's answer to one call: its value, or why it failed. */\nexport interface FrameCallResult {\n readonly protocol: typeof FRAME_PROTOCOL\n readonly result: number\n readonly value?: unknown\n readonly error?: string\n}\n\n/**\n * A message from a frame as a call, or null when it is not one. A page's scripts write what it\n * posts, so the shapes are checked here, and a value is checked for size as JSON, as storage will\n * count it, before the app sends it anywhere.\n */\nexport function parseFrameCall(data: unknown): FrameCall | null {\n if (!isRecord(data) || data.protocol !== FRAME_PROTOCOL || !isRecord(data.params)) return null\n if (!Number.isSafeInteger(data.call) || Number(data.call) < 0) return null\n const call = Number(data.call)\n const { params } = data\n const key = params.key\n const keyed = isStateKey(key)\n switch (data.method) {\n case \"state.get\":\n case \"state.delete\":\n return keyed\n ? ({ protocol: FRAME_PROTOCOL, call, method: data.method, params: { key } } as FrameCall)\n : null\n case \"state.set\": {\n if (!keyed || !(\"value\" in params)) return null\n const json = jsonText(params.value)\n if (json === undefined || utf8Bytes(json) > ARTIFACT_STATE_LIMITS.maxValueBytes) return null\n return {\n protocol: FRAME_PROTOCOL,\n call,\n method: \"state.set\",\n params: { key, value: params.value },\n }\n }\n case \"state.keys\":\n return { protocol: FRAME_PROTOCOL, call, method: \"state.keys\", params: {} }\n case \"query.run\": {\n // The client puts the name in the URL's path, as it does a key.\n const { name } = params\n if (typeof name !== \"string\" || !isArtifactQueryName(name)) return null\n\n return { protocol: FRAME_PROTOCOL, call, method: \"query.run\", params: { name } }\n }\n default:\n return null\n }\n}\n\n/**\n * A key the app can send: the client puts it in the URL's path, where `.` and `..` would name\n * another route, `..` the artifact itself.\n */\nfunction isStateKey(value: unknown): value is string {\n return (\n typeof value === \"string\" &&\n value.length > 0 &&\n value.length <= ARTIFACT_STATE_LIMITS.maxKeyLength &&\n !/\\p{Cc}/u.test(value) &&\n value !== \".\" &&\n value !== \"..\"\n )\n}\n\nfunction jsonText(value: unknown): string | undefined {\n try {\n return JSON.stringify(value)\n } catch {\n return undefined\n }\n}\n\nfunction utf8Bytes(text: string): number {\n return new TextEncoder().encode(text).byteLength\n}\n\n/** Keys the frame passes to the app, so a deck navigates the same with focus in it or not. */\nexport const DECK_KEYS = [\n \"ArrowLeft\",\n \"ArrowRight\",\n \"ArrowUp\",\n \"ArrowDown\",\n \"PageUp\",\n \"PageDown\",\n \"Home\",\n \"End\",\n \" \",\n \"Escape\",\n] as const\n\n/**\n * The theme tokens the app sends into a frame, read from the viewer as it is themed: the ones an\n * artifact's theme may set.\n */\nexport const FRAME_THEME_TOKENS = ARTIFACT_THEME_TOKENS\n\n/**\n * A message from a frame as an event, or null when it is not one this protocol sends. A deck runs\n * its own scripts, so anything it posts is checked for the shape the app relies on: whole slide\n * numbers, a key the app handles, finite boxes, and no more embeds than a version may record.\n */\nexport function parseFrameEvent(data: unknown): FrameEvent | null {\n if (!isRecord(data) || data.protocol !== FRAME_PROTOCOL || !isRecord(data.params)) return null\n const { params } = data\n switch (data.event) {\n case \"ready\":\n if (params.slides === undefined) return event(\"ready\", {})\n return isCount(params.slides) ? event(\"ready\", { slides: params.slides }) : null\n case \"select\":\n return isCount(params.slide) && params.slide > 0\n ? event(\"select\", { slide: params.slide })\n : null\n case \"key\":\n return typeof params.key === \"string\" && (DECK_KEYS as readonly string[]).includes(params.key)\n ? event(\"key\", { key: params.key })\n : null\n case \"open\":\n return isAddress(params.address) ? event(\"open\", { address: params.address }) : null\n case \"link\":\n return isWebAddress(params.url) ? event(\"link\", { url: params.url }) : null\n case \"embeds\": {\n const { embeds } = params\n if (!Array.isArray(embeds) || embeds.length > ARTIFACT_LIMITS.maxReferences) return null\n const parsed: FrameEmbed[] = []\n const ids = new Set<number>()\n for (const embed of embeds) {\n if (!isRecord(embed) || !isAddress(embed.address) || !isRecord(embed.rect)) return null\n\n // Two embeds with one id would be one element drawn twice.\n if (!isCount(embed.id) || ids.has(embed.id)) return null\n ids.add(embed.id)\n\n const { x, y, width, height } = embed.rect\n if (![x, y, width, height, embed.scale].every(Number.isFinite)) return null\n if (Number(width) < 0 || Number(height) < 0 || Number(embed.scale) <= 0) return null\n parsed.push({\n id: embed.id,\n address: embed.address,\n rect: { x: Number(x), y: Number(y), width: Number(width), height: Number(height) },\n scale: Number(embed.scale),\n })\n }\n return event(\"embeds\", { embeds: parsed })\n }\n case \"size\":\n return Number.isFinite(params.height) && Number(params.height) >= 0\n ? event(\"size\", { height: Math.min(Number(params.height), MAX_HEIGHT) })\n : null\n default:\n return null\n }\n}\n\n/** The most a page reports as its height: more is a page that grows with its frame. */\nconst MAX_HEIGHT = 100_000\n\nfunction event<Name extends FrameEvent[\"event\"]>(\n name: Name,\n params: Extract<FrameEvent, { event: Name }>[\"params\"]\n): FrameEvent {\n return { protocol: FRAME_PROTOCOL, event: name, params } as FrameEvent\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null\n}\n\nfunction isCount(value: unknown): value is number {\n return Number.isSafeInteger(value) && Number(value) >= 0\n}\n\n/** Long enough for any address a version can record; the app resolves it before using it. */\nfunction isAddress(value: unknown): value is string {\n return typeof value === \"string\" && value.length <= 2048\n}\n\n/** The longest web address the app opens: longer than any link a page needs. */\nconst MAX_URL_LENGTH = 8192\n\n/** An absolute `http:` or `https:` address, as the frame resolves a link's. */\nfunction isWebAddress(value: unknown): value is string {\n if (typeof value !== \"string\" || value.length > MAX_URL_LENGTH) return false\n\n try {\n const { protocol } = new URL(value)\n return protocol === \"http:\" || protocol === \"https:\"\n } catch {\n return false\n }\n}\n"
6
6
  ],
7
- "mappings": "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",
8
- "debugId": "1770743F29E57C2A64756E2164756E21",
7
+ "mappings": "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",
8
+ "debugId": "AA3028BCE82011C864756E2164756E21",
9
9
  "names": []
10
10
  }
@@ -1,5 +1,5 @@
1
1
  /** The kinds of artifact Sixb renders. An artifact's kind is fixed when it is created. */
2
- export declare const ARTIFACT_KINDS: readonly ["document", "sheet", "slides", "file"];
2
+ export declare const ARTIFACT_KINDS: readonly ["document", "sheet", "slides", "page", "canvas", "file"];
3
3
  export type ArtifactKind = (typeof ARTIFACT_KINDS)[number];
4
4
  export declare function isArtifactKind(value: unknown): value is ArtifactKind;
5
5
  //# sourceMappingURL=kinds.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kinds.d.ts","sourceRoot":"","sources":["../../src/artifacts/kinds.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,eAAO,MAAM,cAAc,kDAAmD,CAAA;AAE9E,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAA;AAE1D,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAEpE"}
1
+ {"version":3,"file":"kinds.d.ts","sourceRoot":"","sources":["../../src/artifacts/kinds.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAC1F,eAAO,MAAM,cAAc,oEAAqE,CAAA;AAEhG,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAA;AAE1D,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAEpE"}
@@ -21,8 +21,38 @@ export declare const ARTIFACT_LIMITS: {
21
21
  readonly maxPieSlices: 5;
22
22
  /** A deck's `index.html` is parsed whole when it is published. */
23
23
  readonly maxDeckBytes: number;
24
+ /** A page's `index.html` is parsed whole when it is published; its scripts and data are not. */
25
+ readonly maxPageBytes: number;
24
26
  readonly maxSlides: 100;
27
+ /** A canvas's items, its live boards, and where they may sit, in pixels. */
28
+ readonly maxCanvasBytes: number;
29
+ readonly maxCanvasItems: 500;
30
+ readonly maxCanvasBoards: 40;
31
+ readonly minCanvasItemSize: 40;
32
+ readonly maxCanvasItemSize: 8000;
33
+ readonly maxCanvasPosition: 100000;
34
+ /** A note's or a text's words, in characters. */
35
+ readonly maxCanvasTextLength: 2000;
36
+ /** An item's title, a shape's words, or an arrow's label, in characters. */
37
+ readonly maxCanvasLabelLength: 120;
38
+ /** A board's HTML is parsed whole when it is published, as a page's is. */
39
+ readonly maxBoardBytes: number;
25
40
  /** `artifact:` addresses one version may use. */
26
41
  readonly maxReferences: 200;
42
+ /** `queries/<name>.json` files, each run for every reader who opens the version. */
43
+ readonly maxQueries: 20;
44
+ readonly maxQueryBytes: number;
45
+ /** What one query returns at most; past it, its result says it is truncated. */
46
+ readonly maxQueryRows: 10000;
47
+ };
48
+ /**
49
+ * What a page may keep for each reader with `sixb.state`, across its versions: values are JSON,
50
+ * counted by their UTF-8 bytes as written.
51
+ */
52
+ export declare const ARTIFACT_STATE_LIMITS: {
53
+ readonly maxKeyLength: 128;
54
+ readonly maxValueBytes: number;
55
+ readonly maxKeys: 100;
56
+ readonly maxBytes: number;
27
57
  };
28
58
  //# sourceMappingURL=limits.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../../src/artifacts/limits.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,eAAO,MAAM,eAAe;;;;;;IAM1B,kEAAkE;;;;IAIlE,oEAAoE;;;IAGpE,mEAAmE;;;;;IAKnE,mEAAmE;;IAEnE,kEAAkE;;;IAGlE,iDAAiD;;CAEzC,CAAA"}
1
+ {"version":3,"file":"limits.d.ts","sourceRoot":"","sources":["../../src/artifacts/limits.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,eAAO,MAAM,eAAe;;;;;;IAM1B,kEAAkE;;;;IAIlE,oEAAoE;;;IAGpE,mEAAmE;;;;;IAKnE,mEAAmE;;IAEnE,kEAAkE;;IAElE,gGAAgG;;;IAGhG,4EAA4E;;;;;;;IAO5E,iDAAiD;;IAEjD,4EAA4E;;IAE5E,2EAA2E;;IAE3E,iDAAiD;;IAEjD,oFAAoF;;;IAGpF,gFAAgF;;CAExE,CAAA;AAEV;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;CAKxB,CAAA"}