better-supabase 0.13.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1581) hide show
  1. package/README.md +67 -345
  2. package/dist/access-sql-B-MkVARa.js +207 -0
  3. package/dist/actor-go7p9-CJ.js +150 -0
  4. package/dist/adapter-B0b6MXYS.js +2299 -0
  5. package/dist/agents-5n8DWRfP.d.ts +117 -0
  6. package/dist/ai-cache-Cu8j6aQQ.js +87 -0
  7. package/dist/ai-cache-DyHohbFP.d.ts +82 -0
  8. package/dist/ai-chat-D1GuRnke.d.ts +619 -0
  9. package/dist/ai-files-CgFCRsnU.js +339 -0
  10. package/dist/ai-schedules-CAquecT_.d.ts +166 -0
  11. package/dist/ai-sdk/agents/index.d.ts +6 -6
  12. package/dist/ai-sdk/agents/index.js +4 -4
  13. package/dist/ai-sdk/batches/index.d.ts +5 -5
  14. package/dist/ai-sdk/batches/index.js +4 -4
  15. package/dist/ai-sdk/cache/index.d.ts +3 -3
  16. package/dist/ai-sdk/cache/index.js +2 -2
  17. package/dist/ai-sdk/chat/index.d.ts +1 -1
  18. package/dist/ai-sdk/chat/index.js +5 -5
  19. package/dist/ai-sdk/embeddings/index.d.ts +2 -2
  20. package/dist/ai-sdk/embeddings/index.js +1 -1
  21. package/dist/ai-sdk/files/index.d.ts +2 -2
  22. package/dist/ai-sdk/files/index.js +5 -5
  23. package/dist/ai-sdk/index.d.ts +30 -9
  24. package/dist/ai-sdk/index.js +42 -4
  25. package/dist/ai-sdk/mcp/index.d.ts +4 -4
  26. package/dist/ai-sdk/mcp/index.js +7 -7
  27. package/dist/ai-sdk/memory/index.d.ts +3 -3
  28. package/dist/ai-sdk/memory/index.js +2 -2
  29. package/dist/ai-sdk/workflow/index.d.ts +4 -4
  30. package/dist/ai-sdk/workflow/index.js +7 -7
  31. package/dist/anchors-7F34QyHa.d.ts +40 -0
  32. package/dist/api-DxAPqMrE.d.ts +495 -0
  33. package/dist/api-keys-D5k63K6y.d.ts +213 -0
  34. package/dist/app-tables-CF2DD-Mu.d.ts +28 -0
  35. package/dist/app-tables-D29Rahtg.js +16350 -0
  36. package/dist/approvals-Crutd4-o.d.ts +129 -0
  37. package/dist/assistant-CD_h8Vxx.d.ts +157 -0
  38. package/dist/astro/index.d.ts +19 -16
  39. package/dist/astro/index.js +8 -8
  40. package/dist/attachments-aJYgdYtB.js +369 -0
  41. package/dist/attributes-Bzf51_nc.js +47 -0
  42. package/dist/auth-module-BEFESDC4.js +44 -0
  43. package/dist/auth-reply-tlXB2FQ9.js +31 -0
  44. package/dist/authorization-HZdJCaVm.d.ts +3595 -0
  45. package/dist/authorization-hooks-Cs1vP_ej.d.ts +217 -0
  46. package/dist/authorizer-B6X09otb.d.ts +118 -0
  47. package/dist/authorizer-BGhXaDmo.js +172 -0
  48. package/dist/automation-D41DXyvT.js +75 -0
  49. package/dist/automations-BYsz43AG.js +314 -0
  50. package/dist/automations-Bc2ue55V.js +26 -0
  51. package/dist/automations-CD1XlL2W.js +33 -0
  52. package/dist/automations-CIwRq7zm.js +30 -0
  53. package/dist/availability-vguUvEK2.d.ts +226 -0
  54. package/dist/better-result/index.d.ts +20 -30
  55. package/dist/better-result/index.js +2 -2
  56. package/dist/bind-CrMBwrPN.d.ts +104 -0
  57. package/dist/block-authors-BDV3y1SP.js +14 -0
  58. package/dist/block-authors-DzXLUiIq.d.ts +12 -0
  59. package/dist/block-env-B_uEM2xz.d.ts +32 -0
  60. package/dist/block-event-listener-Bu6G0TFH.js +16 -0
  61. package/dist/block-events-pBXPzwnW.js +83 -0
  62. package/dist/block-fields-BE7pInWZ.d.ts +58 -0
  63. package/dist/block-fields-DE_FgpOU.js +139 -0
  64. package/dist/block-helpers-CRpAHrp_.d.ts +62 -0
  65. package/dist/block-helpers-CtBdjgO4.js +353 -0
  66. package/dist/block-hooks-BfxX3682.js +130 -0
  67. package/dist/block-hooks-DZN2w69m.d.ts +117 -0
  68. package/dist/block-method-C9hWdHom.js +21 -0
  69. package/dist/block-method-CiVa2G-J.d.ts +14 -0
  70. package/dist/block-subjects-BhDKK_j7.js +55 -0
  71. package/dist/block-subjects-CphkQPxp.d.ts +6 -0
  72. package/dist/block-tenant-DHp7subc.js +14 -0
  73. package/dist/block-transport-DWZSJrwN.d.ts +69 -0
  74. package/dist/blocks/access-requests/index.d.ts +8 -8
  75. package/dist/blocks/access-requests/index.js +6 -7
  76. package/dist/blocks/activities/index.d.ts +215 -0
  77. package/dist/blocks/activities/index.js +414 -0
  78. package/dist/blocks/agents/index.d.ts +4 -4
  79. package/dist/blocks/agents/index.js +5 -6
  80. package/dist/blocks/ai-cache/index.d.ts +3 -3
  81. package/dist/blocks/ai-cache/index.js +3 -3
  82. package/dist/blocks/ai-chat/index.d.ts +119 -6
  83. package/dist/blocks/ai-chat/index.js +1067 -5
  84. package/dist/blocks/ai-files/index.d.ts +5 -5
  85. package/dist/blocks/ai-files/index.js +3 -3
  86. package/dist/blocks/ai-keys/index.d.ts +22 -0
  87. package/dist/blocks/ai-keys/index.js +236 -0
  88. package/dist/blocks/ai-schedules/index.d.ts +10 -0
  89. package/dist/blocks/ai-schedules/index.js +258 -0
  90. package/dist/blocks/announcements/index.d.ts +134 -5
  91. package/dist/blocks/announcements/index.js +179 -4
  92. package/dist/blocks/api-keys/index.d.ts +69 -8
  93. package/dist/blocks/api-keys/index.js +417 -7
  94. package/dist/blocks/approvals/index.d.ts +4 -4
  95. package/dist/blocks/approvals/index.js +25 -24
  96. package/dist/blocks/assets/index.d.ts +281 -0
  97. package/dist/blocks/assets/index.js +288 -0
  98. package/dist/blocks/assignment/index.d.ts +124 -0
  99. package/dist/blocks/assignment/index.js +141 -0
  100. package/dist/blocks/attachments/index.d.ts +130 -6
  101. package/dist/blocks/attachments/index.js +328 -7
  102. package/dist/blocks/audit/index.d.ts +476 -7
  103. package/dist/blocks/audit/index.js +863 -7
  104. package/dist/blocks/automations/index.d.ts +524 -0
  105. package/dist/blocks/automations/index.js +553 -0
  106. package/dist/blocks/billable-time/index.d.ts +201 -0
  107. package/dist/blocks/billable-time/index.js +260 -0
  108. package/dist/blocks/billing/index.d.ts +146 -16
  109. package/dist/blocks/billing/index.js +231 -41
  110. package/dist/blocks/bookings/index.d.ts +54 -5
  111. package/dist/blocks/bookings/index.js +423 -6
  112. package/dist/blocks/bulk/index.d.ts +6 -6
  113. package/dist/blocks/bulk/index.js +4 -4
  114. package/dist/blocks/calendar/index.d.ts +186 -5
  115. package/dist/blocks/calendar/index.js +1180 -4
  116. package/dist/blocks/catalog/index.d.ts +134 -28
  117. package/dist/blocks/catalog/index.js +183 -54
  118. package/dist/blocks/channels/index.d.ts +113 -0
  119. package/dist/blocks/channels/index.js +189 -0
  120. package/dist/blocks/collections/index.d.ts +90 -17
  121. package/dist/blocks/collections/index.js +85 -10
  122. package/dist/blocks/comments/index.d.ts +263 -45
  123. package/dist/blocks/comments/index.js +360 -16
  124. package/dist/blocks/compliance/index.d.ts +325 -0
  125. package/dist/blocks/compliance/index.js +410 -0
  126. package/dist/blocks/connectors/index.d.ts +4 -4
  127. package/dist/blocks/connectors/index.js +8 -9
  128. package/dist/blocks/contacts/index.d.ts +182 -0
  129. package/dist/blocks/contacts/index.js +358 -0
  130. package/dist/blocks/content/index.d.ts +188 -0
  131. package/dist/blocks/content/index.js +219 -0
  132. package/dist/blocks/contracts/index.d.ts +239 -0
  133. package/dist/blocks/contracts/index.js +361 -0
  134. package/dist/blocks/courses/index.d.ts +341 -0
  135. package/dist/blocks/courses/index.js +445 -0
  136. package/dist/blocks/created-by/index.d.ts +27 -0
  137. package/dist/blocks/created-by/index.js +14 -0
  138. package/dist/blocks/custom-fields/index.d.ts +44 -13
  139. package/dist/blocks/custom-fields/index.js +25 -20
  140. package/dist/blocks/data-lifecycle/index.d.ts +9 -9
  141. package/dist/blocks/data-lifecycle/index.js +7 -8
  142. package/dist/blocks/deals/index.d.ts +20 -40
  143. package/dist/blocks/deals/index.js +156 -66
  144. package/dist/blocks/dispatch/index.d.ts +325 -0
  145. package/dist/blocks/dispatch/index.js +406 -0
  146. package/dist/blocks/documents/index.d.ts +8 -5
  147. package/dist/blocks/documents/index.js +66 -7
  148. package/dist/blocks/domains/index.d.ts +7 -7
  149. package/dist/blocks/domains/index.js +6 -7
  150. package/dist/blocks/donations/index.d.ts +350 -0
  151. package/dist/blocks/donations/index.js +610 -0
  152. package/dist/blocks/drive/index.d.ts +56 -11
  153. package/dist/blocks/drive/index.js +62 -11
  154. package/dist/blocks/employees/index.d.ts +41 -23
  155. package/dist/blocks/employees/index.js +125 -33
  156. package/dist/blocks/enrichment/index.d.ts +176 -0
  157. package/dist/blocks/enrichment/index.js +251 -0
  158. package/dist/blocks/enrollments/index.d.ts +182 -0
  159. package/dist/blocks/enrollments/index.js +173 -0
  160. package/dist/blocks/entitlements/index.d.ts +48 -8
  161. package/dist/blocks/entitlements/index.js +62 -4
  162. package/dist/blocks/expenses/index.d.ts +214 -0
  163. package/dist/blocks/expenses/index.js +279 -0
  164. package/dist/blocks/field-history/index.d.ts +63 -0
  165. package/dist/blocks/field-history/index.js +46 -0
  166. package/dist/blocks/flags/index.d.ts +17 -13
  167. package/dist/blocks/flags/index.js +7 -8
  168. package/dist/blocks/forecasts/index.d.ts +119 -0
  169. package/dist/blocks/forecasts/index.js +129 -0
  170. package/dist/blocks/forms/index.d.ts +208 -140
  171. package/dist/blocks/forms/index.js +488 -149
  172. package/dist/blocks/goals/index.d.ts +82 -0
  173. package/dist/blocks/goals/index.js +72 -0
  174. package/dist/blocks/guests/index.d.ts +198 -0
  175. package/dist/blocks/guests/index.js +224 -0
  176. package/dist/blocks/hiring/index.d.ts +20 -10
  177. package/dist/blocks/hiring/index.js +10 -10
  178. package/dist/blocks/identities/index.d.ts +7 -7
  179. package/dist/blocks/identities/index.js +4 -5
  180. package/dist/blocks/imports/index.d.ts +8 -8
  181. package/dist/blocks/imports/index.js +6 -6
  182. package/dist/blocks/inbox/index.d.ts +138 -6
  183. package/dist/blocks/inbox/index.js +383 -85
  184. package/dist/blocks/incidents/index.d.ts +337 -0
  185. package/dist/blocks/incidents/index.js +477 -0
  186. package/dist/blocks/index.d.ts +145 -11
  187. package/dist/blocks/index.js +184 -187
  188. package/dist/blocks/inventory/index.d.ts +10 -10
  189. package/dist/blocks/inventory/index.js +6 -7
  190. package/dist/blocks/invoices/index.d.ts +11 -11
  191. package/dist/blocks/invoices/index.js +8 -9
  192. package/dist/blocks/knowledge/index.d.ts +3 -3
  193. package/dist/blocks/knowledge/index.js +4 -4
  194. package/dist/blocks/lead-scoring/index.d.ts +50 -0
  195. package/dist/blocks/lead-scoring/index.js +87 -0
  196. package/dist/blocks/leases/index.d.ts +221 -0
  197. package/dist/blocks/leases/index.js +244 -0
  198. package/dist/blocks/leave/index.d.ts +8 -8
  199. package/dist/blocks/leave/index.js +5 -6
  200. package/dist/blocks/ledger/index.d.ts +279 -0
  201. package/dist/blocks/ledger/index.js +229 -0
  202. package/dist/blocks/mail-sync/index.d.ts +37 -0
  203. package/dist/blocks/mail-sync/index.js +906 -0
  204. package/dist/blocks/memberships/index.d.ts +67 -0
  205. package/dist/blocks/memberships/index.js +14 -0
  206. package/dist/blocks/memory/index.d.ts +4 -4
  207. package/dist/blocks/memory/index.js +8 -9
  208. package/dist/blocks/messaging/index.d.ts +186 -0
  209. package/dist/blocks/messaging/index.js +619 -0
  210. package/dist/blocks/metrics/index.d.ts +7 -7
  211. package/dist/blocks/metrics/index.js +6 -7
  212. package/dist/blocks/mfa/index.d.ts +145 -3
  213. package/dist/blocks/mfa/index.js +211 -2
  214. package/dist/blocks/moderation/index.d.ts +203 -0
  215. package/dist/blocks/moderation/index.js +199 -0
  216. package/dist/blocks/notifications/index.d.ts +67 -15
  217. package/dist/blocks/notifications/index.js +64 -16
  218. package/dist/blocks/numbering/index.d.ts +45 -0
  219. package/dist/blocks/numbering/index.js +49 -0
  220. package/dist/blocks/oauth-server/index.d.ts +6 -6
  221. package/dist/blocks/oauth-server/index.js +6 -7
  222. package/dist/blocks/onboarding/index.d.ts +112 -4
  223. package/dist/blocks/onboarding/index.js +107 -4
  224. package/dist/blocks/orders/index.d.ts +152 -13
  225. package/dist/blocks/orders/index.js +188 -18
  226. package/dist/blocks/organizations/index.d.ts +452 -6
  227. package/dist/blocks/organizations/index.js +689 -5
  228. package/dist/blocks/outbox/index.d.ts +4 -4
  229. package/dist/blocks/outbox/index.js +20 -8
  230. package/dist/blocks/passes/index.d.ts +306 -0
  231. package/dist/blocks/passes/index.js +411 -0
  232. package/dist/blocks/permissions/index.d.ts +92 -0
  233. package/dist/blocks/permissions/index.js +127 -0
  234. package/dist/blocks/pipelines/index.d.ts +15 -15
  235. package/dist/blocks/pipelines/index.js +12 -13
  236. package/dist/blocks/posts/index.d.ts +190 -0
  237. package/dist/blocks/posts/index.js +230 -0
  238. package/dist/blocks/profiles/index.d.ts +7 -7
  239. package/dist/blocks/profiles/index.js +5 -6
  240. package/dist/blocks/promotions/index.d.ts +9 -9
  241. package/dist/blocks/promotions/index.js +7 -8
  242. package/dist/blocks/push/index.d.ts +9 -9
  243. package/dist/blocks/push/index.js +4 -5
  244. package/dist/blocks/queue/index.d.ts +562 -0
  245. package/dist/blocks/queue/index.js +1407 -0
  246. package/dist/blocks/quotes/index.d.ts +29 -14
  247. package/dist/blocks/quotes/index.js +14 -14
  248. package/dist/blocks/rank/index.d.ts +7 -7
  249. package/dist/blocks/rank/index.js +4 -4
  250. package/dist/blocks/reactions/index.d.ts +154 -5
  251. package/dist/blocks/reactions/index.js +168 -4
  252. package/dist/blocks/relations/index.d.ts +59 -42
  253. package/dist/blocks/relations/index.js +117 -59
  254. package/dist/blocks/reminders/index.d.ts +21 -17
  255. package/dist/blocks/reminders/index.js +26 -27
  256. package/dist/blocks/reviews/index.d.ts +8 -8
  257. package/dist/blocks/reviews/index.js +6 -7
  258. package/dist/blocks/saved-views/index.d.ts +311 -4
  259. package/dist/blocks/saved-views/index.js +437 -2
  260. package/dist/blocks/scores/index.d.ts +48 -0
  261. package/dist/blocks/scores/index.js +40 -0
  262. package/dist/blocks/search/index.d.ts +168 -5
  263. package/dist/blocks/search/index.js +277 -6
  264. package/dist/blocks/security-events/index.d.ts +440 -0
  265. package/dist/blocks/security-events/index.js +885 -0
  266. package/dist/blocks/segments/index.d.ts +130 -0
  267. package/dist/blocks/segments/index.js +135 -0
  268. package/dist/blocks/sequences/index.d.ts +259 -0
  269. package/dist/blocks/sequences/index.js +376 -0
  270. package/dist/blocks/service-accounts/index.d.ts +132 -0
  271. package/dist/blocks/service-accounts/index.js +109 -0
  272. package/dist/blocks/sessions/index.d.ts +138 -3
  273. package/dist/blocks/sessions/index.js +173 -2
  274. package/dist/blocks/settings/index.d.ts +181 -5
  275. package/dist/blocks/settings/index.js +226 -4
  276. package/dist/blocks/share-links/index.d.ts +46 -19
  277. package/dist/blocks/share-links/index.js +74 -23
  278. package/dist/blocks/shipments/index.d.ts +236 -0
  279. package/dist/blocks/shipments/index.js +548 -0
  280. package/dist/blocks/signatures/index.d.ts +151 -0
  281. package/dist/blocks/signatures/index.js +149 -0
  282. package/dist/blocks/signing-keys/index.d.ts +4 -4
  283. package/dist/blocks/signing-keys/index.js +4 -165
  284. package/dist/blocks/sla/index.d.ts +37 -27
  285. package/dist/blocks/sla/index.js +48 -13
  286. package/dist/blocks/sso/index.d.ts +7 -7
  287. package/dist/blocks/sso/index.js +4 -5
  288. package/dist/blocks/state-machine/index.d.ts +14 -14
  289. package/dist/blocks/state-machine/index.js +26 -26
  290. package/dist/blocks/subjects/index.d.ts +45 -0
  291. package/dist/blocks/subjects/index.js +203 -0
  292. package/dist/blocks/tags/index.d.ts +170 -5
  293. package/dist/blocks/tags/index.js +265 -5
  294. package/dist/blocks/tasks/index.d.ts +346 -0
  295. package/dist/blocks/tasks/index.js +626 -0
  296. package/dist/blocks/teams/index.d.ts +7 -7
  297. package/dist/blocks/teams/index.js +4 -4
  298. package/dist/blocks/templates/index.d.ts +18 -18
  299. package/dist/blocks/templates/index.js +11 -12
  300. package/dist/blocks/time-tracking/index.d.ts +40 -32
  301. package/dist/blocks/time-tracking/index.js +40 -40
  302. package/dist/blocks/timeline/index.d.ts +116 -0
  303. package/dist/blocks/timeline/index.js +164 -0
  304. package/dist/blocks/trash/index.d.ts +47 -9
  305. package/dist/blocks/trash/index.js +9 -8
  306. package/dist/blocks/undo/index.d.ts +48 -5
  307. package/dist/blocks/undo/index.js +60 -4
  308. package/dist/blocks/updated-at/index.d.ts +20 -0
  309. package/dist/blocks/updated-at/index.js +14 -0
  310. package/dist/blocks/usage/index.d.ts +40 -6
  311. package/dist/blocks/usage/index.js +301 -4
  312. package/dist/blocks/vercel-marketplace/index.d.ts +7 -7
  313. package/dist/blocks/vercel-marketplace/index.js +8 -9
  314. package/dist/blocks/versions/index.d.ts +38 -19
  315. package/dist/blocks/versions/index.js +66 -19
  316. package/dist/blocks/waitlist/index.d.ts +9 -9
  317. package/dist/blocks/waitlist/index.js +5 -6
  318. package/dist/blocks/webhooks/index.d.ts +21 -21
  319. package/dist/blocks/webhooks/index.js +18 -19
  320. package/dist/blocks/workflow-editor/index.d.ts +99 -0
  321. package/dist/blocks/workflow-editor/index.js +733 -0
  322. package/dist/blocks/workflows/index.d.ts +72 -6
  323. package/dist/blocks/workflows/index.js +379 -4
  324. package/dist/bookings-D4dvGXiR.d.ts +290 -0
  325. package/dist/bucket-CiNi8sIw.d.ts +666 -0
  326. package/dist/build-BFC8nFiL.js +797 -0
  327. package/dist/build-QitPVzzO.js +2073 -0
  328. package/dist/carrier-KzeYXVrW.d.ts +169 -0
  329. package/dist/chat-sdk/index.d.ts +43 -11
  330. package/dist/chat-sdk/index.js +51 -24
  331. package/dist/claims-DTy6R6my.js +63 -0
  332. package/dist/cli/add-BgsUjCan.js +1252 -0
  333. package/dist/cli/add-DCI5JKjA.js +99 -0
  334. package/dist/cli/add-DWjlVwvP.js +1 -0
  335. package/dist/cli/args-UEwg0l-N.js +27 -0
  336. package/dist/cli/backfill-nxPbcsns.js +293 -0
  337. package/dist/cli/bin.js +1 -1
  338. package/dist/cli/blocks-BZHI8mRC.js +156 -0
  339. package/dist/cli/blocks-Cr4HGePW.js +1 -0
  340. package/dist/cli/cache-CXgR_Ahi.js +607 -0
  341. package/dist/cli/codemod-DSN7iAdg.js +2343 -0
  342. package/dist/cli/codemod-block-renames-BuSaTE_G.js +239 -0
  343. package/dist/cli/command-CQ61x6gN.js +941 -0
  344. package/dist/cli/completion-2Y3D_eNu.js +211 -0
  345. package/dist/cli/completion-BwI0_Ap5.js +30 -0
  346. package/dist/cli/completion-Dlu5AdUW.js +1 -0
  347. package/dist/cli/config-9t5ec_N7.js +1642 -0
  348. package/dist/cli/config-CBqkQjjN.js +1 -0
  349. package/dist/cli/config-CPux9Wa7.js +47 -0
  350. package/dist/cli/config-edit-CrWfk8s3.js +621 -0
  351. package/dist/cli/config-group-C8tjut39.js +391 -0
  352. package/dist/cli/content-mapper-DNs7lTu7.js +182 -0
  353. package/dist/cli/db-DrBI_HNv.js +223 -0
  354. package/dist/cli/doctor-DDrEM6S1.js +4561 -0
  355. package/dist/cli/env-BBl5L8Bf.js +143 -0
  356. package/dist/cli/env-CAU1nknN.js +1 -0
  357. package/dist/cli/files-CX71yBm8.js +1010 -0
  358. package/dist/cli/gen-MtijJQ9r.js +387 -0
  359. package/dist/cli/in-stack-diff-DQTW53Vf.js +257 -0
  360. package/dist/cli/index.d.ts +51 -5
  361. package/dist/cli/index.js +8 -8
  362. package/dist/cli/init-D-aDv9r5.js +440 -0
  363. package/dist/cli/keys-DGEpMbeB.js +106 -0
  364. package/dist/cli/live-iEeH15ck.js +341 -0
  365. package/dist/cli/mcp-BAPyaQ62.js +249 -0
  366. package/dist/cli/metadata-DVx9Zgbj.js +150 -0
  367. package/dist/cli/migration-safety-D7PhzFxm.js +928 -0
  368. package/dist/cli/module-migration-aPCckev6.js +734 -0
  369. package/dist/cli/moved-CsfDQcyk.js +254 -0
  370. package/dist/cli/orphans-BAboqyVM.js +28 -0
  371. package/dist/cli/parse-B9Iv_-Pf.js +182 -0
  372. package/dist/cli/preset-BwmIfFnh.js +101 -0
  373. package/dist/cli/print-BeWO7OJY.js +67 -0
  374. package/dist/cli/remove-B46Dmd2M.js +238 -0
  375. package/dist/cli/render-ucJmUyuM.js +2170 -0
  376. package/dist/cli/run-BXx6D1aR.js +63 -0
  377. package/dist/cli/run-CvYVAztY.js +1427 -0
  378. package/dist/cli/run-DYhLBcFW.js +702 -0
  379. package/dist/cli/seed-Cz8PcXeT.js +188 -0
  380. package/dist/cli/seed-D6XijwbR.js +1 -0
  381. package/dist/cli/shared-LZroULBe.js +151 -0
  382. package/dist/cli/skills-toUan_OV.js +121 -0
  383. package/dist/cli/snapshot-C8MVPyO8.js +729 -0
  384. package/dist/cli/source-DANaJJVc.js +320 -0
  385. package/dist/cli/source-args-IpJRJO5t.js +59 -0
  386. package/dist/cli/spec-DGVNMSSB.js +7530 -0
  387. package/dist/cli/spec-g8_G5K7o.js +1 -0
  388. package/dist/cli/stack-CWEHdO0b.js +135 -0
  389. package/dist/cli/sync-btj01bcM.js +319 -0
  390. package/dist/cli/upgrade-B596d4t8.js +403 -0
  391. package/dist/cli/upgrade-Dw3TMQzn.js +41 -0
  392. package/dist/cli/version-Du4CgONY.js +4 -0
  393. package/dist/client/index.d.ts +8 -7
  394. package/dist/client/index.js +11 -7
  395. package/dist/client/native/index.d.ts +6 -6
  396. package/dist/client/native/index.js +3 -3
  397. package/dist/client-BAEbEA7t.js +287 -0
  398. package/dist/cloud-event-CzZTJkXv.d.ts +64 -0
  399. package/dist/codecs-CMWlhHZ0.d.ts +222 -0
  400. package/dist/codecs-TylXqU_I.js +358 -0
  401. package/dist/commerce/index.d.ts +4 -3
  402. package/dist/commerce/index.js +6 -6
  403. package/dist/compiler-D3UmE7ao.d.ts +14 -0
  404. package/dist/compose-DKW0Tr3e.js +53 -0
  405. package/dist/composite-BARuBEDE.js +130 -0
  406. package/dist/composite-Dsxj7T5K.d.ts +82 -0
  407. package/dist/config/index.d.ts +6 -7
  408. package/dist/config/index.js +6 -6
  409. package/dist/config-CcehOvbz.js +1698 -0
  410. package/dist/config-DWGgUQCh.js +1108 -0
  411. package/dist/connectors-Fud4amxp.d.ts +147 -0
  412. package/dist/context-CEuTKrkz.d.ts +4129 -0
  413. package/dist/context-DBicfUNz.js +41 -0
  414. package/dist/controller-BNZKd6bJ.js +73 -0
  415. package/dist/controller-BrP0gn47.d.ts +52 -0
  416. package/dist/conversion-BAbucuXq.d.ts +86 -0
  417. package/dist/conversion-Dq1S7xzE.js +77 -0
  418. package/dist/create/index.d.ts +34 -23
  419. package/dist/create/index.js +35 -27
  420. package/dist/create/lite/index.d.ts +2 -2
  421. package/dist/create/supabase/index.d.ts +2 -2
  422. package/dist/create/supabase/index.js +2 -2
  423. package/dist/create-blocks-Bu4H5TXw.js +352 -0
  424. package/dist/credentials/index.d.ts +5 -5
  425. package/dist/credentials/index.js +6 -7
  426. package/dist/cron-CgHTKwYG.js +148 -0
  427. package/dist/cron-route-UU9i5i9J.js +24 -0
  428. package/dist/data-engine-BWoz9lED.d.ts +273 -0
  429. package/dist/data-engine-D1BkmBoR.js +173 -0
  430. package/dist/data-hooks-tgF1Ct0F.js +280 -0
  431. package/dist/db-blocks-DJGbjIPz.js +62 -0
  432. package/dist/db-exception-Lngc1W49.js +31 -0
  433. package/dist/deal-forecast-Bv52QMyX.js +39 -0
  434. package/dist/deal-forecast-LwO-Z4_C.d.ts +23 -0
  435. package/dist/define-DFBnQyYg.d.ts +1255 -0
  436. package/dist/define-DlUeKHce.js +2011 -0
  437. package/dist/define-block-BGqOO8B3.js +64 -0
  438. package/dist/define-block-BVcLQ3DF.d.ts +1657 -0
  439. package/dist/delegation--93jRsVO.js +146 -0
  440. package/dist/documents-Cup1rpjF.d.ts +152 -0
  441. package/dist/edge/index.d.ts +23 -23
  442. package/dist/edge/index.js +14 -14
  443. package/dist/elysia/index.d.ts +1 -1
  444. package/dist/elysia/index.js +1 -1
  445. package/dist/embeddings-kFbRvuic.d.ts +78 -0
  446. package/dist/embeddings-vVzseUw0.js +128 -0
  447. package/dist/ended-gUsMZVNg.d.ts +26 -0
  448. package/dist/entitlements-CJpYQXeE.d.ts +54 -0
  449. package/dist/entitlements-NZAE_vLj.js +45 -0
  450. package/dist/entity-naming-Dtyq5sKE.js +131 -0
  451. package/dist/entity-schema-BDv6w-OQ.js +39 -0
  452. package/dist/envelope-Bzu0JnY2.js +90 -0
  453. package/dist/errors-BVFgt8BZ.js +328 -0
  454. package/dist/errors-CyxMxzlu.js +44 -0
  455. package/dist/escape-like-PReMbEEU.d.ts +30 -0
  456. package/dist/eve/index.d.ts +5 -5
  457. package/dist/eve/index.js +4 -4
  458. package/dist/eve-BFSwTu1z.d.ts +157 -0
  459. package/dist/event-calendar-DCufbihU.d.ts +65 -0
  460. package/dist/events/index.d.ts +4 -4
  461. package/dist/events/index.js +2 -1
  462. package/dist/events-vcqenSYU.d.ts +852 -0
  463. package/dist/executor-3qcMhg6R.js +207 -0
  464. package/dist/executor-BQ7dYw4E.js +843 -0
  465. package/dist/executor-CVIn6JHa.d.ts +174 -0
  466. package/dist/executor-D3gB-9si.js +486 -0
  467. package/dist/executor-_2ekNofh.d.ts +104 -0
  468. package/dist/executor-hGjrop3A.d.ts +37 -0
  469. package/dist/expo/index.d.ts +12 -11
  470. package/dist/expo/index.js +12 -11
  471. package/dist/extension-B-lajjex.js +58 -0
  472. package/dist/extension-B0EjCYhO.js +61 -0
  473. package/dist/extension-DeAd_MqI.js +121 -0
  474. package/dist/extension-DzCc0IOd.js +103 -0
  475. package/dist/extension-shared-Djm8mGHD.js +60 -0
  476. package/dist/field-errors-fsbFktYF.d.ts +216 -0
  477. package/dist/field-formats-CAFNkKSN.d.ts +38 -0
  478. package/dist/fields-B0zaJAO3.js +107 -0
  479. package/dist/fields-C3q2ypnO.d.ts +78 -0
  480. package/dist/filter-evaluate-CPxeae5X.d.ts +37 -0
  481. package/dist/filter-evaluate-w1XOIUOL.js +217 -0
  482. package/dist/filter-query-BXLs72G9.d.ts +133 -0
  483. package/dist/filter-query-DMoKo82_.js +566 -0
  484. package/dist/flags-BOdA_ETQ.js +279 -0
  485. package/dist/flags-C01PLMJ-.d.ts +246 -0
  486. package/dist/flags-sdk/index.d.ts +1 -1
  487. package/dist/flags-sdk/index.js +2 -2
  488. package/dist/form-definition-BTpM_tz1.js +363 -0
  489. package/dist/form-definition-BjEtH8BT.d.ts +119 -0
  490. package/dist/format-u-65igKI.d.ts +79 -0
  491. package/dist/framework-BKyTeS-j.d.ts +47 -0
  492. package/dist/framework-DDdkR7FX.js +58 -0
  493. package/dist/function-contract-DxFNOmsm.d.ts +27 -0
  494. package/dist/gateway-TD1pRfTP.d.ts +115 -0
  495. package/dist/guest-actions-1T1DeS5Y.d.ts +5 -0
  496. package/dist/guest-actions-B7zdhfnh.js +9 -0
  497. package/dist/h3/index.d.ts +2 -4
  498. package/dist/h3/index.js +2 -4
  499. package/dist/h3/v1/index.d.ts +2 -3
  500. package/dist/h3/v1/index.js +2 -3
  501. package/dist/hono/index.d.ts +27 -21
  502. package/dist/hono/index.js +22 -20
  503. package/dist/http-7-UvHjQe.js +28 -0
  504. package/dist/impersonation-DM3oWNoD.js +62 -0
  505. package/dist/inbox-NDKwSk_H.d.ts +321 -0
  506. package/dist/index-B938YqY-.d.ts +188 -0
  507. package/dist/index-BUuVq1co.d.ts +158 -0
  508. package/dist/index-BnH4Gomw.d.ts +633 -0
  509. package/dist/index-BxYOB1Oc.d.ts +149 -0
  510. package/dist/index-C-qpk8EQ.d.ts +262 -0
  511. package/dist/index-CG9rA8H8.d.ts +407 -0
  512. package/dist/index-CguFm716.d.ts +518 -0
  513. package/dist/index-DLq69k3F.d.ts +588 -0
  514. package/dist/index-Do2ChN_y.d.ts +287 -0
  515. package/dist/index.d.ts +39 -92
  516. package/dist/index.js +95 -16
  517. package/dist/instances-BHjCZoF8.js +277 -0
  518. package/dist/invalidate-DMp4eqfF.d.ts +21 -0
  519. package/dist/json-schema-Ca6gYbEP.js +888 -0
  520. package/dist/jwks-cache-DEsKI0hJ.js +49 -0
  521. package/dist/kit-5l-o8RxL.js +133 -0
  522. package/dist/kit-DOwKpSkA.d.ts +94 -0
  523. package/dist/knowledge-BGbtxMP9.js +300 -0
  524. package/dist/knowledge-CtL-Vfgy.d.ts +217 -0
  525. package/dist/lint/index.d.ts +94 -11
  526. package/dist/lint/index.js +268 -26
  527. package/dist/list/index.d.ts +4 -4
  528. package/dist/list/index.js +3 -3
  529. package/dist/list-query-BDVutLFr.d.ts +222 -0
  530. package/dist/list-query-BKy2zBaT.js +559 -0
  531. package/dist/live-C21DgbsD.js +275 -0
  532. package/dist/mapper/bin.js +380 -0
  533. package/dist/mcp/index.d.ts +8 -8
  534. package/dist/mcp/index.js +11 -11
  535. package/dist/mcp/sdk/index.d.ts +10 -10
  536. package/dist/mcp/sdk/index.js +11 -11
  537. package/dist/messages-D4XWuRTj.js +492 -0
  538. package/dist/messaging-C_Pr9tGx.d.ts +297 -0
  539. package/dist/methods-B3o7BFOW.js +11 -0
  540. package/dist/mfa-oIOYTpvc.d.ts +36 -0
  541. package/dist/model-hwpvole9.d.ts +340 -0
  542. package/dist/model-messages-CKG0zwdF.js +206 -0
  543. package/dist/money-codec-BzddguAQ.js +41 -0
  544. package/dist/my-work-kinds-BU3SlA-6.js +11 -0
  545. package/dist/nestjs/index.d.ts +3 -3
  546. package/dist/nestjs/index.js +2 -2
  547. package/dist/next/index.d.ts +296 -57
  548. package/dist/next/index.js +310 -54
  549. package/dist/node/index.d.ts +2 -2
  550. package/dist/node/index.js +6 -8
  551. package/dist/operations-CSc_IsHO.d.ts +6 -0
  552. package/dist/options-0qvUckqt.js +9 -0
  553. package/dist/options-1GgseJq5.js +10 -0
  554. package/dist/options-21s0dpnX.js +9 -0
  555. package/dist/options-2EMA_x6_.js +16 -0
  556. package/dist/options-63AKQNv0.js +5 -0
  557. package/dist/options-9gvPo1BC.js +8 -0
  558. package/dist/options-B-cxGmRA.js +5 -0
  559. package/dist/options-B0EJULm5.js +5 -0
  560. package/dist/options-B2swWnJW.js +9 -0
  561. package/dist/options-B5VUf4IT.js +8 -0
  562. package/dist/options-BMGClqoa.js +11 -0
  563. package/dist/options-BPDiwSa-.js +5 -0
  564. package/dist/options-BQIYfx9F.js +9 -0
  565. package/dist/options-BVg58avP.js +5 -0
  566. package/dist/options-BYOtaF7w.js +5 -0
  567. package/dist/options-BZOliZvb.js +9 -0
  568. package/dist/options-BbnPv6p7.js +12 -0
  569. package/dist/options-BfLmA375.js +5 -0
  570. package/dist/options-BjtrC7o6.js +8 -0
  571. package/dist/options-BlncUmIc.js +9 -0
  572. package/dist/options-BlzSfWxC.d.ts +10 -0
  573. package/dist/options-BnZS7IK-.js +9 -0
  574. package/dist/options-Bpl-WFPk.js +15 -0
  575. package/dist/options-Br1Xi2Hw.js +9 -0
  576. package/dist/options-Bt0bYMLl.js +24 -0
  577. package/dist/options-BvtnxHfK.js +24 -0
  578. package/dist/options-C-dQHH5-.js +8 -0
  579. package/dist/options-C3RgtOLo.js +5 -0
  580. package/dist/options-CE93HOYi.d.ts +7 -0
  581. package/dist/options-CF7nRWXS.js +5 -0
  582. package/dist/options-CM6-18FQ.d.ts +13 -0
  583. package/dist/options-CPK2nQER.js +5 -0
  584. package/dist/options-CRz8Ht_4.js +9 -0
  585. package/dist/options-CSCXNYJO.d.ts +8 -0
  586. package/dist/options-CW9wTqOk.js +11 -0
  587. package/dist/options-CYV4iZiQ.js +5 -0
  588. package/dist/options-Cl9Ag2Pt.js +8 -0
  589. package/dist/options-Cp0HyUEk.js +9 -0
  590. package/dist/options-Cqq2jUww.js +10 -0
  591. package/dist/options-CsGl5BLH.d.ts +52 -0
  592. package/dist/options-CtUUU71w.js +20 -0
  593. package/dist/options-CvD9vNvx.js +9 -0
  594. package/dist/options-CyAhRKKm.d.ts +14 -0
  595. package/dist/options-Cyu0hgmN.js +9 -0
  596. package/dist/options-D0G06Zm9.js +8 -0
  597. package/dist/options-D0bzZx9a.d.ts +10 -0
  598. package/dist/options-D1hSuf50.d.ts +12 -0
  599. package/dist/options-D6as77gU.d.ts +16 -0
  600. package/dist/options-DChZoVfs.d.ts +11 -0
  601. package/dist/options-DINdgVih.d.ts +9 -0
  602. package/dist/options-DJ-aYPVN.js +5 -0
  603. package/dist/options-DPgdAXO5.js +11 -0
  604. package/dist/options-DWML05Cp.js +5 -0
  605. package/dist/options-DWVYM8P0.d.ts +17 -0
  606. package/dist/options-DWbA9buW.js +9 -0
  607. package/dist/options-DXnBN2E7.js +8 -0
  608. package/dist/options-D_bBVCXg.js +5 -0
  609. package/dist/options-DcOx8_3X.d.ts +19 -0
  610. package/dist/options-DeNejBtq.js +8 -0
  611. package/dist/options-DgQo80Xh.js +5 -0
  612. package/dist/options-DlohRAYd.d.ts +13 -0
  613. package/dist/options-DplE18Ko.d.ts +12 -0
  614. package/dist/options-DrSkIBCD.js +9 -0
  615. package/dist/options-E7KcmHQv.js +8 -0
  616. package/dist/options-HLwOuF2H.js +10 -0
  617. package/dist/options-IHPg8ZoA.js +5 -0
  618. package/dist/options-KV84gAxl.js +10 -0
  619. package/dist/options-Li1Dyu88.d.ts +10 -0
  620. package/dist/options-Q1Bzgqpr.js +5 -0
  621. package/dist/options-_F-enoBs.d.ts +26 -0
  622. package/dist/options-c5WCsky5.js +21 -0
  623. package/dist/options-nFzfgtA6.js +5 -0
  624. package/dist/options-o2kfYU2x.js +8 -0
  625. package/dist/options-pOVWwbAK.d.ts +10 -0
  626. package/dist/options-t_O5ldT6.js +5 -0
  627. package/dist/options-xD4_FRUq.js +10 -0
  628. package/dist/options-y_-AkVCs.d.ts +15 -0
  629. package/dist/options-zkyhM3qi.js +8 -0
  630. package/dist/orpc/index.d.ts +76 -20
  631. package/dist/orpc/index.js +174 -9
  632. package/dist/otel/index.d.ts +3 -3
  633. package/dist/otel/index.js +7 -7
  634. package/dist/outbox-HvGAJuBe.d.ts +199 -0
  635. package/dist/payments-BXvabJOw.js +16 -0
  636. package/dist/payments-BYcN34Fp.d.ts +114 -0
  637. package/dist/permissions-controller-BMsqIE5T.js +34 -0
  638. package/dist/plugin-AKwwe2gF.js +48 -0
  639. package/dist/pool-CrtT4dg-.d.ts +123 -0
  640. package/dist/pool-errors-JUBcGrre.js +27 -0
  641. package/dist/ports-DOhtuw3c.js +152 -0
  642. package/dist/ports-sx226JUL.d.ts +89 -0
  643. package/dist/postgres/index.d.ts +5 -5
  644. package/dist/postgres/index.js +3 -3
  645. package/dist/postgrest-executor-BFW4oWte.js +1064 -0
  646. package/dist/postgrest-z-T0l23T.d.ts +53 -0
  647. package/dist/powersync/index.d.ts +106 -7
  648. package/dist/powersync/index.js +169 -23
  649. package/dist/preset/index.d.ts +4 -4
  650. package/dist/preset/index.js +4 -4
  651. package/dist/preset-CsHnIBJF.js +875 -0
  652. package/dist/problem-Bf0cJ7tk.js +162 -0
  653. package/dist/problem-DNwN8iGz.d.ts +79 -0
  654. package/dist/provider-B6g7rBZX.js +57 -0
  655. package/dist/provider-CqwEOLCA.d.ts +112 -0
  656. package/dist/push-token-D3Vcf0Pf.d.ts +24 -0
  657. package/dist/queries-BWYYS9um.js +239 -0
  658. package/dist/query/index.d.ts +4 -4
  659. package/dist/query/index.js +357 -3
  660. package/dist/rank-result-BBJIK-k_.js +18 -0
  661. package/dist/rank-result-Bwe7igy-.d.ts +14 -0
  662. package/dist/rate-limit-BWKGlhTM.js +49 -0
  663. package/dist/rate-limit-Bztf32cl.d.ts +50 -0
  664. package/dist/rate-limit-o44SYkVY.js +327 -0
  665. package/dist/react/index.d.ts +10 -9
  666. package/dist/react/index.js +5 -5
  667. package/dist/react/native/index.d.ts +1 -1
  668. package/dist/react/native/index.js +2 -3
  669. package/dist/react/server.d.ts +72 -13
  670. package/dist/react/server.js +71 -9
  671. package/dist/react/session.d.ts +3 -3
  672. package/dist/react-BuDYI62C.js +979 -0
  673. package/dist/react-router/index.d.ts +19 -13
  674. package/dist/react-router/index.js +10 -10
  675. package/dist/read-set-BnKnofIj.js +199 -0
  676. package/dist/realtime/index.d.ts +7 -7
  677. package/dist/realtime/index.js +36 -4
  678. package/dist/record-bindings-DkBJpC5A.js +26 -0
  679. package/dist/record-form-BYs9xv_N.d.ts +82 -0
  680. package/dist/record-type-DRbnlj5q.js +221 -0
  681. package/dist/recordings-BBSJt_YV.d.ts +119 -0
  682. package/dist/records/index.d.ts +83 -0
  683. package/dist/records/index.js +314 -0
  684. package/dist/refresh-DT_ICaK-.d.ts +54 -0
  685. package/dist/refusal-ByBZcm0V.js +64 -0
  686. package/dist/refusal-CSntB_x8.d.ts +32 -0
  687. package/dist/replicas-Dyoh3CEg.js +94 -0
  688. package/dist/resolve-B0mW2m7f.js +932 -0
  689. package/dist/resolve-CXX6DHv3.d.ts +288 -0
  690. package/dist/resource-D8pzB5Qf.d.ts +123 -0
  691. package/dist/resource-DV2GC2dB.js +520 -0
  692. package/dist/resource-DvgXqZB_.js +105 -0
  693. package/dist/resource-execute-CzHuDsil.d.ts +15 -0
  694. package/dist/resource-types-DnKiH4G2.d.ts +157 -0
  695. package/dist/resources-B9cQxhjw.d.ts +7 -0
  696. package/dist/resources-C02l_YBJ.js +64 -0
  697. package/dist/respond-C3CcOZlA.js +100 -0
  698. package/dist/respond-Dn1_YhC1.d.ts +106 -0
  699. package/dist/result-DZeA5KS6.d.ts +351 -0
  700. package/dist/result-ntFBW2p2.js +146 -0
  701. package/dist/rows-BDLZStp4.js +80 -0
  702. package/dist/rows-Bm6sskji.js +39 -0
  703. package/dist/rrule-79K2c3Nr.js +290 -0
  704. package/dist/run-state-BMCD_1Lt.d.ts +13 -0
  705. package/dist/sales-lines-Bk4mbLH1.d.ts +37 -0
  706. package/dist/sales-lines-D-sf9PIB.js +43 -0
  707. package/dist/sales-shared-DXGFJP4g.js +22 -0
  708. package/dist/schemas-l2aF78zQ.js +216 -0
  709. package/dist/scores-B2BiNuVJ.d.ts +174 -0
  710. package/dist/scores-CRp3vvQU.js +177 -0
  711. package/dist/server/index.d.ts +103 -42
  712. package/dist/server/index.js +98 -30
  713. package/dist/server-types-CFtehAsr.d.ts +946 -0
  714. package/dist/session-CH0SKgIz.d.ts +99 -0
  715. package/dist/shared-C47zAh2A.js +17 -0
  716. package/dist/sign-in-BAjR49fq.d.ts +24 -0
  717. package/dist/sign-in-BsIaNx2C.js +392 -0
  718. package/dist/sign-in-DNCdrk05.js +608 -0
  719. package/dist/signatures-CNcoq392.js +145 -0
  720. package/dist/signatures-Dkx9OE8j.d.ts +43 -0
  721. package/dist/signers-BAEzvTJ0.d.ts +390 -0
  722. package/dist/signing-keys-BNDUxpQL.d.ts +119 -0
  723. package/dist/signing-keys-wGKh4vtt.js +164 -0
  724. package/dist/solid/index.d.ts +67 -15
  725. package/dist/solid/index.js +93 -11
  726. package/dist/solid-start/index.d.ts +17 -14
  727. package/dist/solid-start/index.js +8 -8
  728. package/dist/spec/index.d.ts +691 -9
  729. package/dist/spec/index.js +2487 -5
  730. package/dist/spec-DTWkHzYZ.js +124 -0
  731. package/dist/spec-pins-C1Vm8OBl.js +61 -0
  732. package/dist/spec-pins-DIx95afw.d.ts +125 -0
  733. package/dist/sql/index.d.ts +5 -5
  734. package/dist/sql/index.js +5 -5
  735. package/dist/sql-BPbbPzRJ.js +421 -0
  736. package/dist/sql-ClHIdgKS.js +126996 -0
  737. package/dist/sqlite/index.d.ts +126 -0
  738. package/dist/sqlite/index.js +197 -0
  739. package/dist/sso-B0Txid2-.d.ts +161 -0
  740. package/dist/sso-d2S4x_f9.js +217 -0
  741. package/dist/ssr/index.d.ts +5 -4
  742. package/dist/ssr/index.js +3 -3
  743. package/dist/standard-BA3mLh6w.js +25 -0
  744. package/dist/standard-DBV730sF.d.ts +7 -0
  745. package/dist/stats-BHl1-zj9.js +83 -0
  746. package/dist/statuses-DMMDwXpZ.js +29 -0
  747. package/dist/statuses-zRcc2TeZ.js +28 -0
  748. package/dist/storage/index.d.ts +3 -3
  749. package/dist/storage/index.js +11 -11
  750. package/dist/store-CpheI-lN.d.ts +83 -0
  751. package/dist/streams/index.d.ts +3 -3
  752. package/dist/streams/index.js +2 -3
  753. package/dist/streams/redis/index.d.ts +2 -2
  754. package/dist/streams/redis/index.js +3 -3
  755. package/dist/stripe/index.d.ts +1 -1
  756. package/dist/stripe-X22LjuH-.d.ts +156 -0
  757. package/dist/subject-readers-B-pQ9Mmo.js +49 -0
  758. package/dist/subject-readers-BNSzkqw_.d.ts +21 -0
  759. package/dist/subjects-BpIEN1MS.d.ts +90 -0
  760. package/dist/subjects-DvmQeF_F.d.ts +79 -0
  761. package/dist/summaries-8jQTELIX.d.ts +69 -0
  762. package/dist/support-view-BYOgwXsJ.d.ts +17 -0
  763. package/dist/svelte/index.d.ts +67 -12
  764. package/dist/svelte/index.js +108 -11
  765. package/dist/sveltekit/index.d.ts +19 -16
  766. package/dist/sveltekit/index.js +14 -14
  767. package/dist/table-schema-BlF6k62Q.d.ts +81 -0
  768. package/dist/table-schema-CD8cJz_M.js +293 -0
  769. package/dist/tags-BjHflcHF.d.ts +30 -0
  770. package/dist/tags-CIZTqtlY.js +39 -0
  771. package/dist/tanstack-db/index.d.ts +50 -6
  772. package/dist/tanstack-db/index.js +44 -3
  773. package/dist/tanstack-start/index.d.ts +15 -12
  774. package/dist/tanstack-start/index.js +9 -9
  775. package/dist/tax-BkCNWWMc.js +140 -0
  776. package/dist/tax-DPShHual.d.ts +170 -0
  777. package/dist/tee-V97_v1ZS.js +101 -0
  778. package/dist/template-Drgg3v2J.js +126 -0
  779. package/dist/temporal-required-Dy0GGD8E.js +20 -0
  780. package/dist/tenant-BgIiMQpo.js +27 -0
  781. package/dist/tenant-source-bqWpSr86.js +8 -0
  782. package/dist/tenant-yYg0E2-n.d.ts +17 -0
  783. package/dist/testing/index.d.ts +183 -58
  784. package/dist/testing/index.js +405 -97
  785. package/dist/timeline--VU3A1e4.js +50 -0
  786. package/dist/timeline-CtG0sehj.d.ts +151 -0
  787. package/dist/timing-dypS0nxW.js +95 -0
  788. package/dist/topic-CJrQZQaa.d.ts +415 -0
  789. package/dist/topic-ikV_pLTX.js +643 -0
  790. package/dist/types-BBQLbui9.d.ts +659 -0
  791. package/dist/types-CAQBmpDx.d.ts +217 -0
  792. package/dist/types-DFdg_4yN.d.ts +912 -0
  793. package/dist/types-Dp3UCr1e.d.ts +194 -0
  794. package/dist/types-Dr9wZgNy.d.ts +251 -0
  795. package/dist/types-EO2crSX_.d.ts +177 -0
  796. package/dist/types-SFRomQF7.d.ts +624 -0
  797. package/dist/undo-B1jwnVyN.d.ts +46 -0
  798. package/dist/undo-BjCChCmH.js +44 -0
  799. package/dist/upload-claim-B1ZU8ydB.js +33 -0
  800. package/dist/usage-D7QkrwzV.d.ts +232 -0
  801. package/dist/user-change-DgWC6RRC.js +135 -0
  802. package/dist/variants-Cy--Ub-a.js +53 -0
  803. package/dist/vault-O-YlAyHb.d.ts +62 -0
  804. package/dist/vercel-connect/index.d.ts +1 -1
  805. package/dist/vercel-connect/index.js +3 -3
  806. package/dist/verify-CMou8dWZ.d.ts +146 -0
  807. package/dist/verify-ZLFUdlqE.js +130 -0
  808. package/dist/view-C8Ve14ja.js +247 -0
  809. package/dist/view-DyFdMCqg.d.ts +97 -0
  810. package/dist/vue/index.d.ts +67 -20
  811. package/dist/vue/index.js +102 -14
  812. package/dist/watch-topic-BcGfvZOE.d.ts +31 -0
  813. package/dist/wiring-CDNuQoJJ.js +13 -0
  814. package/dist/workflow-sdk/builder/index.d.ts +12 -12
  815. package/dist/workflow-sdk/builder/index.js +16 -17
  816. package/dist/workflow-sdk/index.d.ts +18 -15
  817. package/dist/workflow-sdk/index.js +2 -2
  818. package/dist/workflow-sdk/world/index.d.ts +6 -6
  819. package/dist/workflow-sdk/world/index.js +12 -12
  820. package/dist/workflow-sdk-BFHu4sci.d.ts +163 -0
  821. package/dist/workflow-sdk-BVlFEB5Q.js +242 -0
  822. package/dist/workflow-sdk-Bw6_u0ar.js +2446 -0
  823. package/dist/workflows-B0ZPAQu0.d.ts +255 -0
  824. package/dist/yjs/index.d.ts +28 -4
  825. package/dist/yjs/index.js +52 -10
  826. package/package.json +201 -540
  827. package/schemas/config-v1.json +2720 -1693
  828. package/schemas/design-v1.json +147 -5
  829. package/schemas/doctor-report-v1.json +14 -0
  830. package/schemas/snapshot-v2.json +25 -0
  831. package/skills/better-supabase/SKILL.md +71 -28
  832. package/skills/better-supabase/references/block-extensions.md +64 -0
  833. package/skills/better-supabase/references/frontend.md +29 -26
  834. package/skills/better-supabase/references/troubleshooting.md +19 -19
  835. package/skills/better-supabase/references/ui-recipes.md +12837 -8039
  836. package/skills/better-supabase-api/SKILL.md +49 -38
  837. package/skills/better-supabase-api/references/adapters.md +42 -39
  838. package/skills/better-supabase-api/references/ai.md +4 -4
  839. package/skills/better-supabase-api/references/expo.md +8 -8
  840. package/skills/better-supabase-api/references/powersync.md +25 -11
  841. package/skills/better-supabase-api/references/streams-credentials.md +3 -3
  842. package/skills/better-supabase-auth/SKILL.md +17 -17
  843. package/skills/better-supabase-auth/references/authorization-providers.md +8 -6
  844. package/skills/better-supabase-testing/SKILL.md +8 -8
  845. package/dist/access-sql-BpOdJvfj.js +0 -205
  846. package/dist/actor-C9pwyCVz.js +0 -150
  847. package/dist/adapter-D8dW6p2A.js +0 -2190
  848. package/dist/agents-CuxuXVWv.d.ts +0 -117
  849. package/dist/ai-cache-BXMXRhkx.d.ts +0 -82
  850. package/dist/ai-cache-Byy5q6EZ.js +0 -87
  851. package/dist/ai-chat-B00sIOjY.d.ts +0 -619
  852. package/dist/ai-files-DTbIJcxQ.js +0 -339
  853. package/dist/ai-tasks-DN-AV7qB.d.ts +0 -166
  854. package/dist/announcements-DqiLxtKK.js +0 -128
  855. package/dist/api-CmcTYuFT.js +0 -685
  856. package/dist/api-DwLhJS1j.d.ts +0 -444
  857. package/dist/api-keys-Bade6Qtl.d.ts +0 -213
  858. package/dist/api-keys-CO24Ffil.js +0 -318
  859. package/dist/app-tables-0YZ9IskE.js +0 -831
  860. package/dist/app-tables-CbWUI7h_.d.ts +0 -35
  861. package/dist/approvals-C-4MOWdV.d.ts +0 -127
  862. package/dist/arazzo/index.d.ts +0 -277
  863. package/dist/arazzo/index.js +0 -630
  864. package/dist/assistant-CcP_kpu7.d.ts +0 -157
  865. package/dist/asyncapi/index.d.ts +0 -109
  866. package/dist/asyncapi/index.js +0 -572
  867. package/dist/attachments-CPkGJVfk.js +0 -270
  868. package/dist/attributes-BOFl922R.js +0 -44
  869. package/dist/audit-log-5aTnl7W2.js +0 -788
  870. package/dist/auth-module-CwCIY97x.js +0 -10
  871. package/dist/auth-reply-D02x5NSv.js +0 -31
  872. package/dist/authorization-CB69cvnA.d.ts +0 -1504
  873. package/dist/authorization-hooks-HXVZXxUk.d.ts +0 -217
  874. package/dist/authorizer-BVR2vPGA.js +0 -125
  875. package/dist/authorizer-DFP3gHv8.d.ts +0 -82
  876. package/dist/bind-DcXLU1ul.d.ts +0 -76
  877. package/dist/block-env-YfPmSNa1.js +0 -32
  878. package/dist/block-env-kFcaaJLM.d.ts +0 -10
  879. package/dist/block-events-BURaqwyp.js +0 -96
  880. package/dist/block-fields-Cwd4c8m-.js +0 -139
  881. package/dist/block-fields-DnXkMney.d.ts +0 -58
  882. package/dist/block-helpers-DwE32_gT.js +0 -272
  883. package/dist/block-helpers-DyA5BAW4.d.ts +0 -43
  884. package/dist/block-hooks-BadAniNI.d.ts +0 -117
  885. package/dist/block-hooks-C1r-R2r0.js +0 -130
  886. package/dist/block-transport-DBPhgF3W.d.ts +0 -69
  887. package/dist/block-transport-Ds0C2mUf.js +0 -84
  888. package/dist/blocks/ai-chat/react/index.d.ts +0 -52
  889. package/dist/blocks/ai-chat/react/index.js +0 -95
  890. package/dist/blocks/ai-chat/react/server.d.ts +0 -25
  891. package/dist/blocks/ai-chat/react/server.js +0 -23
  892. package/dist/blocks/ai-chat/solid/index.d.ts +0 -34
  893. package/dist/blocks/ai-chat/solid/index.js +0 -41
  894. package/dist/blocks/ai-chat/svelte/index.d.ts +0 -34
  895. package/dist/blocks/ai-chat/svelte/index.js +0 -41
  896. package/dist/blocks/ai-chat/vue/index.d.ts +0 -34
  897. package/dist/blocks/ai-chat/vue/index.js +0 -41
  898. package/dist/blocks/ai-providers/index.d.ts +0 -22
  899. package/dist/blocks/ai-providers/index.js +0 -237
  900. package/dist/blocks/ai-tasks/index.d.ts +0 -10
  901. package/dist/blocks/ai-tasks/index.js +0 -253
  902. package/dist/blocks/announcements/react/index.d.ts +0 -28
  903. package/dist/blocks/announcements/react/index.js +0 -38
  904. package/dist/blocks/announcements/react/server.d.ts +0 -9
  905. package/dist/blocks/announcements/react/server.js +0 -10
  906. package/dist/blocks/announcements/solid/index.d.ts +0 -13
  907. package/dist/blocks/announcements/solid/index.js +0 -14
  908. package/dist/blocks/announcements/svelte/index.d.ts +0 -13
  909. package/dist/blocks/announcements/svelte/index.js +0 -14
  910. package/dist/blocks/announcements/vue/index.d.ts +0 -13
  911. package/dist/blocks/announcements/vue/index.js +0 -14
  912. package/dist/blocks/api-keys/react/index.d.ts +0 -32
  913. package/dist/blocks/api-keys/react/index.js +0 -43
  914. package/dist/blocks/api-keys/react/server.d.ts +0 -7
  915. package/dist/blocks/api-keys/react/server.js +0 -7
  916. package/dist/blocks/api-keys/solid/index.d.ts +0 -13
  917. package/dist/blocks/api-keys/solid/index.js +0 -14
  918. package/dist/blocks/api-keys/svelte/index.d.ts +0 -13
  919. package/dist/blocks/api-keys/svelte/index.js +0 -14
  920. package/dist/blocks/api-keys/vue/index.d.ts +0 -13
  921. package/dist/blocks/api-keys/vue/index.js +0 -14
  922. package/dist/blocks/audit/react/index.d.ts +0 -31
  923. package/dist/blocks/audit/react/index.js +0 -46
  924. package/dist/blocks/audit/react/server.d.ts +0 -7
  925. package/dist/blocks/audit/react/server.js +0 -7
  926. package/dist/blocks/audit/solid/index.d.ts +0 -13
  927. package/dist/blocks/audit/solid/index.js +0 -14
  928. package/dist/blocks/audit/svelte/index.d.ts +0 -13
  929. package/dist/blocks/audit/svelte/index.js +0 -14
  930. package/dist/blocks/audit/vue/index.d.ts +0 -13
  931. package/dist/blocks/audit/vue/index.js +0 -14
  932. package/dist/blocks/billing/react/index.d.ts +0 -44
  933. package/dist/blocks/billing/react/index.js +0 -40
  934. package/dist/blocks/billing/react/server.d.ts +0 -10
  935. package/dist/blocks/billing/react/server.js +0 -10
  936. package/dist/blocks/billing/solid/index.d.ts +0 -15
  937. package/dist/blocks/billing/solid/index.js +0 -14
  938. package/dist/blocks/billing/svelte/index.d.ts +0 -15
  939. package/dist/blocks/billing/svelte/index.js +0 -14
  940. package/dist/blocks/billing/vue/index.d.ts +0 -15
  941. package/dist/blocks/billing/vue/index.js +0 -14
  942. package/dist/blocks/bookings/react/index.d.ts +0 -35
  943. package/dist/blocks/bookings/react/index.js +0 -63
  944. package/dist/blocks/bookings/react/server.d.ts +0 -9
  945. package/dist/blocks/bookings/react/server.js +0 -10
  946. package/dist/blocks/bookings/solid/index.d.ts +0 -13
  947. package/dist/blocks/bookings/solid/index.js +0 -14
  948. package/dist/blocks/bookings/svelte/index.d.ts +0 -13
  949. package/dist/blocks/bookings/svelte/index.js +0 -14
  950. package/dist/blocks/bookings/vue/index.d.ts +0 -13
  951. package/dist/blocks/bookings/vue/index.js +0 -14
  952. package/dist/blocks/calendar/react/index.d.ts +0 -26
  953. package/dist/blocks/calendar/react/index.js +0 -58
  954. package/dist/blocks/calendar/react/server.d.ts +0 -9
  955. package/dist/blocks/calendar/react/server.js +0 -10
  956. package/dist/blocks/calendar/solid/index.d.ts +0 -13
  957. package/dist/blocks/calendar/solid/index.js +0 -14
  958. package/dist/blocks/calendar/svelte/index.d.ts +0 -13
  959. package/dist/blocks/calendar/svelte/index.js +0 -14
  960. package/dist/blocks/calendar/vue/index.d.ts +0 -13
  961. package/dist/blocks/calendar/vue/index.js +0 -14
  962. package/dist/blocks/comments/react/index.d.ts +0 -34
  963. package/dist/blocks/comments/react/index.js +0 -49
  964. package/dist/blocks/comments/react/server.d.ts +0 -7
  965. package/dist/blocks/comments/react/server.js +0 -7
  966. package/dist/blocks/comments/solid/index.d.ts +0 -13
  967. package/dist/blocks/comments/solid/index.js +0 -14
  968. package/dist/blocks/comments/svelte/index.d.ts +0 -13
  969. package/dist/blocks/comments/svelte/index.js +0 -14
  970. package/dist/blocks/comments/vue/index.d.ts +0 -13
  971. package/dist/blocks/comments/vue/index.js +0 -14
  972. package/dist/blocks/engagements/index.d.ts +0 -134
  973. package/dist/blocks/engagements/index.js +0 -143
  974. package/dist/blocks/entitlements/react/index.d.ts +0 -27
  975. package/dist/blocks/entitlements/react/index.js +0 -35
  976. package/dist/blocks/entitlements/react/server.d.ts +0 -9
  977. package/dist/blocks/entitlements/react/server.js +0 -10
  978. package/dist/blocks/entitlements/solid/index.d.ts +0 -13
  979. package/dist/blocks/entitlements/solid/index.js +0 -14
  980. package/dist/blocks/entitlements/svelte/index.d.ts +0 -13
  981. package/dist/blocks/entitlements/svelte/index.js +0 -14
  982. package/dist/blocks/entitlements/vue/index.d.ts +0 -13
  983. package/dist/blocks/entitlements/vue/index.js +0 -14
  984. package/dist/blocks/forms/react/index.d.ts +0 -19
  985. package/dist/blocks/forms/react/index.js +0 -28
  986. package/dist/blocks/forms/react/server.d.ts +0 -9
  987. package/dist/blocks/forms/react/server.js +0 -10
  988. package/dist/blocks/forms/solid/index.d.ts +0 -13
  989. package/dist/blocks/forms/solid/index.js +0 -14
  990. package/dist/blocks/forms/svelte/index.d.ts +0 -13
  991. package/dist/blocks/forms/svelte/index.js +0 -14
  992. package/dist/blocks/forms/vue/index.d.ts +0 -13
  993. package/dist/blocks/forms/vue/index.js +0 -14
  994. package/dist/blocks/inbox/react/index.d.ts +0 -3
  995. package/dist/blocks/inbox/react/index.js +0 -81
  996. package/dist/blocks/inbox/react/server.d.ts +0 -17
  997. package/dist/blocks/inbox/react/server.js +0 -18
  998. package/dist/blocks/inbox/solid/index.d.ts +0 -27
  999. package/dist/blocks/inbox/solid/index.js +0 -32
  1000. package/dist/blocks/inbox/svelte/index.d.ts +0 -27
  1001. package/dist/blocks/inbox/svelte/index.js +0 -32
  1002. package/dist/blocks/inbox/vue/index.d.ts +0 -27
  1003. package/dist/blocks/inbox/vue/index.js +0 -32
  1004. package/dist/blocks/jobs/index.d.ts +0 -523
  1005. package/dist/blocks/jobs/index.js +0 -1346
  1006. package/dist/blocks/mfa/react/index.d.ts +0 -30
  1007. package/dist/blocks/mfa/react/index.js +0 -45
  1008. package/dist/blocks/mfa/react/server.d.ts +0 -9
  1009. package/dist/blocks/mfa/react/server.js +0 -12
  1010. package/dist/blocks/mfa/solid/index.d.ts +0 -20
  1011. package/dist/blocks/mfa/solid/index.js +0 -23
  1012. package/dist/blocks/mfa/svelte/index.d.ts +0 -20
  1013. package/dist/blocks/mfa/svelte/index.js +0 -23
  1014. package/dist/blocks/mfa/vue/index.d.ts +0 -20
  1015. package/dist/blocks/mfa/vue/index.js +0 -23
  1016. package/dist/blocks/notifications/react/index.d.ts +0 -19
  1017. package/dist/blocks/notifications/react/index.js +0 -41
  1018. package/dist/blocks/notifications/react/server.d.ts +0 -10
  1019. package/dist/blocks/notifications/react/server.js +0 -10
  1020. package/dist/blocks/notifications/solid/index.d.ts +0 -13
  1021. package/dist/blocks/notifications/solid/index.js +0 -14
  1022. package/dist/blocks/notifications/svelte/index.d.ts +0 -13
  1023. package/dist/blocks/notifications/svelte/index.js +0 -14
  1024. package/dist/blocks/notifications/vue/index.d.ts +0 -13
  1025. package/dist/blocks/notifications/vue/index.js +0 -14
  1026. package/dist/blocks/number-sequences/index.d.ts +0 -48
  1027. package/dist/blocks/number-sequences/index.js +0 -52
  1028. package/dist/blocks/onboarding/react/index.d.ts +0 -24
  1029. package/dist/blocks/onboarding/react/index.js +0 -38
  1030. package/dist/blocks/onboarding/react/server.d.ts +0 -10
  1031. package/dist/blocks/onboarding/react/server.js +0 -10
  1032. package/dist/blocks/onboarding/solid/index.d.ts +0 -13
  1033. package/dist/blocks/onboarding/solid/index.js +0 -14
  1034. package/dist/blocks/onboarding/svelte/index.d.ts +0 -13
  1035. package/dist/blocks/onboarding/svelte/index.js +0 -14
  1036. package/dist/blocks/onboarding/vue/index.d.ts +0 -13
  1037. package/dist/blocks/onboarding/vue/index.js +0 -14
  1038. package/dist/blocks/organizations/react/index.d.ts +0 -127
  1039. package/dist/blocks/organizations/react/index.js +0 -113
  1040. package/dist/blocks/organizations/react/server.d.ts +0 -20
  1041. package/dist/blocks/organizations/react/server.js +0 -24
  1042. package/dist/blocks/organizations/solid/index.d.ts +0 -34
  1043. package/dist/blocks/organizations/solid/index.js +0 -32
  1044. package/dist/blocks/organizations/svelte/index.d.ts +0 -34
  1045. package/dist/blocks/organizations/svelte/index.js +0 -32
  1046. package/dist/blocks/organizations/vue/index.d.ts +0 -34
  1047. package/dist/blocks/organizations/vue/index.js +0 -32
  1048. package/dist/blocks/parties/index.d.ts +0 -190
  1049. package/dist/blocks/parties/index.js +0 -261
  1050. package/dist/blocks/reactions/react/index.d.ts +0 -33
  1051. package/dist/blocks/reactions/react/index.js +0 -50
  1052. package/dist/blocks/reactions/react/server.d.ts +0 -9
  1053. package/dist/blocks/reactions/react/server.js +0 -10
  1054. package/dist/blocks/reactions/solid/index.d.ts +0 -13
  1055. package/dist/blocks/reactions/solid/index.js +0 -14
  1056. package/dist/blocks/reactions/svelte/index.d.ts +0 -13
  1057. package/dist/blocks/reactions/svelte/index.js +0 -14
  1058. package/dist/blocks/reactions/vue/index.d.ts +0 -13
  1059. package/dist/blocks/reactions/vue/index.js +0 -14
  1060. package/dist/blocks/rules/index.d.ts +0 -171
  1061. package/dist/blocks/rules/index.js +0 -162
  1062. package/dist/blocks/rules/react/index.d.ts +0 -38
  1063. package/dist/blocks/rules/react/index.js +0 -59
  1064. package/dist/blocks/rules/react/server.d.ts +0 -6
  1065. package/dist/blocks/rules/react/server.js +0 -7
  1066. package/dist/blocks/rules/solid/index.d.ts +0 -13
  1067. package/dist/blocks/rules/solid/index.js +0 -14
  1068. package/dist/blocks/rules/svelte/index.d.ts +0 -13
  1069. package/dist/blocks/rules/svelte/index.js +0 -14
  1070. package/dist/blocks/rules/vue/index.d.ts +0 -13
  1071. package/dist/blocks/rules/vue/index.js +0 -14
  1072. package/dist/blocks/saved-views/react/index.d.ts +0 -40
  1073. package/dist/blocks/saved-views/react/index.js +0 -60
  1074. package/dist/blocks/saved-views/react/server.d.ts +0 -10
  1075. package/dist/blocks/saved-views/react/server.js +0 -10
  1076. package/dist/blocks/saved-views/solid/index.d.ts +0 -13
  1077. package/dist/blocks/saved-views/solid/index.js +0 -14
  1078. package/dist/blocks/saved-views/svelte/index.d.ts +0 -13
  1079. package/dist/blocks/saved-views/svelte/index.js +0 -14
  1080. package/dist/blocks/saved-views/vue/index.d.ts +0 -13
  1081. package/dist/blocks/saved-views/vue/index.js +0 -14
  1082. package/dist/blocks/search/react/index.d.ts +0 -39
  1083. package/dist/blocks/search/react/index.js +0 -49
  1084. package/dist/blocks/search/react/server.d.ts +0 -10
  1085. package/dist/blocks/search/react/server.js +0 -11
  1086. package/dist/blocks/search/solid/index.d.ts +0 -13
  1087. package/dist/blocks/search/solid/index.js +0 -14
  1088. package/dist/blocks/search/svelte/index.d.ts +0 -13
  1089. package/dist/blocks/search/svelte/index.js +0 -14
  1090. package/dist/blocks/search/vue/index.d.ts +0 -13
  1091. package/dist/blocks/search/vue/index.js +0 -14
  1092. package/dist/blocks/service-principals/index.d.ts +0 -132
  1093. package/dist/blocks/service-principals/index.js +0 -110
  1094. package/dist/blocks/sessions/react/index.d.ts +0 -36
  1095. package/dist/blocks/sessions/react/index.js +0 -53
  1096. package/dist/blocks/sessions/react/server.d.ts +0 -15
  1097. package/dist/blocks/sessions/react/server.js +0 -17
  1098. package/dist/blocks/sessions/solid/index.d.ts +0 -20
  1099. package/dist/blocks/sessions/solid/index.js +0 -23
  1100. package/dist/blocks/sessions/svelte/index.d.ts +0 -20
  1101. package/dist/blocks/sessions/svelte/index.js +0 -23
  1102. package/dist/blocks/sessions/vue/index.d.ts +0 -20
  1103. package/dist/blocks/sessions/vue/index.js +0 -23
  1104. package/dist/blocks/settings/react/index.d.ts +0 -31
  1105. package/dist/blocks/settings/react/index.js +0 -37
  1106. package/dist/blocks/settings/react/server.d.ts +0 -10
  1107. package/dist/blocks/settings/react/server.js +0 -10
  1108. package/dist/blocks/settings/solid/index.d.ts +0 -13
  1109. package/dist/blocks/settings/solid/index.js +0 -14
  1110. package/dist/blocks/settings/svelte/index.d.ts +0 -13
  1111. package/dist/blocks/settings/svelte/index.js +0 -14
  1112. package/dist/blocks/settings/vue/index.d.ts +0 -13
  1113. package/dist/blocks/settings/vue/index.js +0 -14
  1114. package/dist/blocks/shared-signals/index.d.ts +0 -440
  1115. package/dist/blocks/shared-signals/index.js +0 -886
  1116. package/dist/blocks/tags/react/index.d.ts +0 -36
  1117. package/dist/blocks/tags/react/index.js +0 -52
  1118. package/dist/blocks/tags/react/server.d.ts +0 -7
  1119. package/dist/blocks/tags/react/server.js +0 -7
  1120. package/dist/blocks/tags/solid/index.d.ts +0 -13
  1121. package/dist/blocks/tags/solid/index.js +0 -14
  1122. package/dist/blocks/tags/svelte/index.d.ts +0 -13
  1123. package/dist/blocks/tags/svelte/index.js +0 -14
  1124. package/dist/blocks/tags/vue/index.d.ts +0 -13
  1125. package/dist/blocks/tags/vue/index.js +0 -14
  1126. package/dist/blocks/targets/index.d.ts +0 -82
  1127. package/dist/blocks/targets/index.js +0 -73
  1128. package/dist/blocks/undo/react/index.d.ts +0 -17
  1129. package/dist/blocks/undo/react/index.js +0 -24
  1130. package/dist/blocks/undo/react/server.d.ts +0 -10
  1131. package/dist/blocks/undo/react/server.js +0 -10
  1132. package/dist/blocks/undo/solid/index.d.ts +0 -13
  1133. package/dist/blocks/undo/solid/index.js +0 -14
  1134. package/dist/blocks/undo/svelte/index.d.ts +0 -13
  1135. package/dist/blocks/undo/svelte/index.js +0 -14
  1136. package/dist/blocks/undo/vue/index.d.ts +0 -13
  1137. package/dist/blocks/undo/vue/index.js +0 -14
  1138. package/dist/blocks/usage/react/index.d.ts +0 -29
  1139. package/dist/blocks/usage/react/index.js +0 -38
  1140. package/dist/blocks/usage/react/server.d.ts +0 -7
  1141. package/dist/blocks/usage/react/server.js +0 -7
  1142. package/dist/blocks/usage/solid/index.d.ts +0 -13
  1143. package/dist/blocks/usage/solid/index.js +0 -14
  1144. package/dist/blocks/usage/svelte/index.d.ts +0 -13
  1145. package/dist/blocks/usage/svelte/index.js +0 -14
  1146. package/dist/blocks/usage/vue/index.d.ts +0 -13
  1147. package/dist/blocks/usage/vue/index.js +0 -14
  1148. package/dist/blocks/work-items/index.d.ts +0 -210
  1149. package/dist/blocks/work-items/index.js +0 -304
  1150. package/dist/blocks/workflow-builder/index.d.ts +0 -43
  1151. package/dist/blocks/workflow-builder/index.js +0 -33
  1152. package/dist/blocks/workflow-builder/react/index.d.ts +0 -32
  1153. package/dist/blocks/workflow-builder/react/index.js +0 -75
  1154. package/dist/blocks/workflow-builder/react/server.d.ts +0 -14
  1155. package/dist/blocks/workflow-builder/react/server.js +0 -17
  1156. package/dist/blocks/workflow-builder/solid/index.d.ts +0 -20
  1157. package/dist/blocks/workflow-builder/solid/index.js +0 -23
  1158. package/dist/blocks/workflow-builder/svelte/index.d.ts +0 -20
  1159. package/dist/blocks/workflow-builder/svelte/index.js +0 -23
  1160. package/dist/blocks/workflow-builder/vue/index.d.ts +0 -20
  1161. package/dist/blocks/workflow-builder/vue/index.js +0 -23
  1162. package/dist/blocks/workflows/react/index.d.ts +0 -39
  1163. package/dist/blocks/workflows/react/index.js +0 -65
  1164. package/dist/blocks/workflows/react/server.d.ts +0 -14
  1165. package/dist/blocks/workflows/react/server.js +0 -17
  1166. package/dist/blocks/workflows/solid/index.d.ts +0 -20
  1167. package/dist/blocks/workflows/solid/index.js +0 -23
  1168. package/dist/blocks/workflows/svelte/index.d.ts +0 -20
  1169. package/dist/blocks/workflows/svelte/index.js +0 -23
  1170. package/dist/blocks/workflows/vue/index.d.ts +0 -20
  1171. package/dist/blocks/workflows/vue/index.js +0 -23
  1172. package/dist/blocks-CR3vCYhj.js +0 -88
  1173. package/dist/bookings-DJflcGqs.js +0 -184
  1174. package/dist/bucket-DBay-ICp.d.ts +0 -667
  1175. package/dist/build-DxzJf79X.js +0 -1839
  1176. package/dist/build-UqJeGtsH.js +0 -703
  1177. package/dist/calendar-DvbYFkrh.js +0 -801
  1178. package/dist/chat-sdk/react/index.d.ts +0 -3
  1179. package/dist/chat-sdk/react/index.js +0 -2
  1180. package/dist/chat-sdk/react/server.d.ts +0 -4
  1181. package/dist/chat-sdk/react/server.js +0 -1
  1182. package/dist/claims-T8TWZ53E.js +0 -63
  1183. package/dist/cli/add-BRjL7LuG.js +0 -1
  1184. package/dist/cli/add-Cf0uxfZ2.js +0 -672
  1185. package/dist/cli/add-DPfdDRq7.js +0 -75
  1186. package/dist/cli/adopt-B28iUeGg.js +0 -1
  1187. package/dist/cli/adopt-C0VugVMu.js +0 -421
  1188. package/dist/cli/apply-BlxtZPxe.js +0 -329
  1189. package/dist/cli/blocks-CHQ7K8Yz.js +0 -1
  1190. package/dist/cli/blocks-D3tsq-mR.js +0 -124
  1191. package/dist/cli/cache-DdgzhoaL.js +0 -516
  1192. package/dist/cli/catalog-DwTUdJaQ.js +0 -188
  1193. package/dist/cli/codemod-Dz4R-tVY.js +0 -1127
  1194. package/dist/cli/command-33pu13LT.js +0 -963
  1195. package/dist/cli/completion-6M6Hr8TL.js +0 -211
  1196. package/dist/cli/completion-Bqu8yq0q.js +0 -1
  1197. package/dist/cli/completion-Ddr3yqd3.js +0 -30
  1198. package/dist/cli/config-2qlSTi2o.js +0 -1503
  1199. package/dist/cli/config-B31tIvAl.js +0 -42
  1200. package/dist/cli/config-DVksOjSr.js +0 -1
  1201. package/dist/cli/config-edit-D46H0UHp.js +0 -613
  1202. package/dist/cli/db-D8iId4R8.js +0 -473
  1203. package/dist/cli/design-edit-B2aBiarJ.js +0 -205
  1204. package/dist/cli/doctor-pIek4vIO.js +0 -3897
  1205. package/dist/cli/emit-CJKf47Bi.js +0 -1078
  1206. package/dist/cli/env-BrLZfqsL.js +0 -143
  1207. package/dist/cli/env-cbCEa79W.js +0 -1
  1208. package/dist/cli/files-C5JfVnj5.js +0 -972
  1209. package/dist/cli/gen-DquZzY5a.js +0 -307
  1210. package/dist/cli/init-Dd-UdrE0.js +0 -397
  1211. package/dist/cli/introspect-IMQCji2l.js +0 -51
  1212. package/dist/cli/keys-iJs_1WT8.js +0 -106
  1213. package/dist/cli/live-BfAO5YRX.js +0 -344
  1214. package/dist/cli/mcp-D8Az0FNn.js +0 -240
  1215. package/dist/cli/metadata-CTStQPfV.js +0 -144
  1216. package/dist/cli/migration-safety-Dg1lxomi.js +0 -305
  1217. package/dist/cli/module-migration-CbX-jRhV.js +0 -606
  1218. package/dist/cli/moved-CdNtCf4t.js +0 -161
  1219. package/dist/cli/names-D6LrQnOv.js +0 -6
  1220. package/dist/cli/parse-CRZLku1b.js +0 -182
  1221. package/dist/cli/preset-DEvwDc7U.js +0 -129
  1222. package/dist/cli/run-BXhJoghZ.js +0 -1602
  1223. package/dist/cli/run-DdxNRTr0.js +0 -63
  1224. package/dist/cli/run-dTu_PD4I.js +0 -711
  1225. package/dist/cli/scaffold-Bx3bcy2R.js +0 -901
  1226. package/dist/cli/scaffold-mbNAQE19.js +0 -1
  1227. package/dist/cli/seed-CLseQdXQ.js +0 -188
  1228. package/dist/cli/seed-DSHSUsYy.js +0 -1
  1229. package/dist/cli/shared-CAdIkTR7.js +0 -151
  1230. package/dist/cli/skills-Bz4INB8f.js +0 -121
  1231. package/dist/cli/snapshot-GfdB9Cjl.js +0 -350
  1232. package/dist/cli/source-args-Dy3j1-H-.js +0 -59
  1233. package/dist/cli/spec-BfEK0_04.js +0 -1
  1234. package/dist/cli/spec-DXTdodlO.js +0 -7534
  1235. package/dist/cli/sql-BUhpAvrW.js +0 -2
  1236. package/dist/cli/sql-CLbWk3Yb.js +0 -332
  1237. package/dist/cli/stack-_F_JhllX.js +0 -135
  1238. package/dist/cli/sync-BBzNO-v9.js +0 -91
  1239. package/dist/cli/typegen-F9GEjpvD.js +0 -502
  1240. package/dist/cli/typegen-version-BNBPI4Eu.js +0 -9
  1241. package/dist/cli/version-DiwcIKOL.js +0 -4
  1242. package/dist/cli/write-DZKk5rSF.js +0 -201
  1243. package/dist/client--tyFmxDT.js +0 -52
  1244. package/dist/client-0qFNkNhT.js +0 -1060
  1245. package/dist/client-2z1aHG57.d.ts +0 -475
  1246. package/dist/client-5IVhjmtl.d.ts +0 -74
  1247. package/dist/client-B3WBilR2.d.ts +0 -69
  1248. package/dist/client-B4JPQgf-.d.ts +0 -165
  1249. package/dist/client-BAYh7P2h.js +0 -211
  1250. package/dist/client-BKGVUgo7.js +0 -380
  1251. package/dist/client-BNaOcfeH.js +0 -58
  1252. package/dist/client-BOuaQA0h.js +0 -173
  1253. package/dist/client-BP-8vn9G.d.ts +0 -37
  1254. package/dist/client-BU5Yd0yO.d.ts +0 -103
  1255. package/dist/client-Bb_Pj9wL.js +0 -137
  1256. package/dist/client-BkH-Vh3s.d.ts +0 -112
  1257. package/dist/client-BsfsRHae.d.ts +0 -136
  1258. package/dist/client-Bta7yl1C.d.ts +0 -451
  1259. package/dist/client-BwKXlohx.js +0 -121
  1260. package/dist/client-C1zOmnS8.js +0 -89
  1261. package/dist/client-CMqO1gCn.d.ts +0 -64
  1262. package/dist/client-CPirbPPi.js +0 -85
  1263. package/dist/client-CQPB-VJx.d.ts +0 -110
  1264. package/dist/client-CXbP_p02.d.ts +0 -156
  1265. package/dist/client-C_S9avzV.d.ts +0 -420
  1266. package/dist/client-Cb1g45Hc.js +0 -99
  1267. package/dist/client-CebKlRU7.js +0 -157
  1268. package/dist/client-Ch-dDfTB.js +0 -437
  1269. package/dist/client-CuFD4o56.d.ts +0 -111
  1270. package/dist/client-D2y_CfhU.d.ts +0 -137
  1271. package/dist/client-DAcVF-YJ.js +0 -134
  1272. package/dist/client-DCuE1rFm.js +0 -441
  1273. package/dist/client-DD02cst6.d.ts +0 -245
  1274. package/dist/client-DD3EcytK.js +0 -65
  1275. package/dist/client-DEE57s9m.d.ts +0 -132
  1276. package/dist/client-DScMvaty.js +0 -38
  1277. package/dist/client-DVRFa59w.d.ts +0 -309
  1278. package/dist/client-DXb1Nmr3.js +0 -111
  1279. package/dist/client-DkI0oyR7.js +0 -76
  1280. package/dist/client-DkQcRKhm.js +0 -67
  1281. package/dist/client-DoXBX3vS.d.ts +0 -116
  1282. package/dist/client-Dsuy9wfA.d.ts +0 -59
  1283. package/dist/client-EQvEzUQg.d.ts +0 -276
  1284. package/dist/client-G7NGXZKe.d.ts +0 -43
  1285. package/dist/client-OhTiAol1.js +0 -213
  1286. package/dist/client-Wt19DaEb.js +0 -291
  1287. package/dist/client-Y-kaHabc.d.ts +0 -46
  1288. package/dist/client-YASsOslj.js +0 -321
  1289. package/dist/client-Y_HnZGF4.js +0 -51
  1290. package/dist/client-_mL998Gl.js +0 -129
  1291. package/dist/client-i_u1e0Kf.d.ts +0 -144
  1292. package/dist/client-kRvHKAKS.js +0 -60
  1293. package/dist/client-nieeGXdg.d.ts +0 -178
  1294. package/dist/client-pxXoQOdC.js +0 -40
  1295. package/dist/client-ysVOUgxM.d.ts +0 -54
  1296. package/dist/cloud-event-CidL9jiw.d.ts +0 -64
  1297. package/dist/codecs-Du_zE1xu.js +0 -358
  1298. package/dist/codecs-WHpM3Byy.d.ts +0 -221
  1299. package/dist/codegen-DGtOsqz9.d.ts +0 -1809
  1300. package/dist/comments-Ceqo9bwE.js +0 -230
  1301. package/dist/compiler-DCotQWcs.d.ts +0 -14
  1302. package/dist/compose-VBQL7zIO.js +0 -53
  1303. package/dist/composite-BgBzdYP-.d.ts +0 -82
  1304. package/dist/composite-BgSdL5tk.js +0 -130
  1305. package/dist/config-V6HMvce5.js +0 -3930
  1306. package/dist/config-xUf0dj0t.js +0 -562
  1307. package/dist/connector-CKcTPJRV.d.ts +0 -107
  1308. package/dist/connectors-CgWuPQks.d.ts +0 -147
  1309. package/dist/context-B8_p3MXo.js +0 -11
  1310. package/dist/context-C-bHOtoD.js +0 -5
  1311. package/dist/context-CCz6ZgyI.js +0 -19
  1312. package/dist/context-CMxVnPMY.js +0 -9
  1313. package/dist/context-CrojkPNC.js +0 -41
  1314. package/dist/context-DvBEhsXX.d.ts +0 -403
  1315. package/dist/controller-lWRcKqCl.d.ts +0 -52
  1316. package/dist/cron-CI1kP-t5.js +0 -148
  1317. package/dist/cron-route-BbVtwXZz.js +0 -24
  1318. package/dist/db-exception-CnWcYPxL.js +0 -15
  1319. package/dist/define-D0LSXmUP.d.ts +0 -1117
  1320. package/dist/define-DwZ_LQVO.js +0 -2011
  1321. package/dist/define-block-B6Gjs57G.js +0 -52
  1322. package/dist/define-block-MyM4lH42.d.ts +0 -281
  1323. package/dist/delegation-DeAJehLk.js +0 -146
  1324. package/dist/documents-BijGGIjr.d.ts +0 -99
  1325. package/dist/embeddings-DRGIc8ti.js +0 -128
  1326. package/dist/embeddings-Deusi99x.d.ts +0 -78
  1327. package/dist/ended-D_Twxl8v.d.ts +0 -76
  1328. package/dist/entitlements-CMGsO4gL.d.ts +0 -54
  1329. package/dist/entitlements-_tw0V3BY.js +0 -45
  1330. package/dist/envelope-BDShQQ7-.js +0 -90
  1331. package/dist/errors-Cq72lONT.js +0 -44
  1332. package/dist/errors-D7u24ZJH.js +0 -321
  1333. package/dist/escape-like-DuKupGUV.d.ts +0 -15
  1334. package/dist/eve-dWNqpd9Z.d.ts +0 -157
  1335. package/dist/event-calendar-E6AI-dgg.d.ts +0 -217
  1336. package/dist/events-DhGgwqQA.d.ts +0 -842
  1337. package/dist/executor-C29668fO.d.ts +0 -281
  1338. package/dist/executor-C5uyGttm.js +0 -207
  1339. package/dist/executor-Cy1nk4MZ.d.ts +0 -104
  1340. package/dist/executor-DK2F9Zis.js +0 -746
  1341. package/dist/executor-DXfgDsKd.d.ts +0 -37
  1342. package/dist/executor-D_viYkhf.d.ts +0 -179
  1343. package/dist/executor-QtVn0axs.js +0 -147
  1344. package/dist/expo-sqlite/index.d.ts +0 -61
  1345. package/dist/expo-sqlite/index.js +0 -110
  1346. package/dist/field-errors-CKEqR38q.d.ts +0 -119
  1347. package/dist/field-errors-DZVRWRkf.js +0 -13
  1348. package/dist/field-formats-BX2FqLle.d.ts +0 -39
  1349. package/dist/filter-evaluate-CRDXv0Dl.js +0 -217
  1350. package/dist/filter-evaluate-CSWhzYWN.d.ts +0 -37
  1351. package/dist/filter-query-C7qgRYYv.d.ts +0 -133
  1352. package/dist/filter-query-D4ZSwbcJ.js +0 -524
  1353. package/dist/flags-C--SBMT9.js +0 -279
  1354. package/dist/flags-CJFDNAvL.d.ts +0 -246
  1355. package/dist/form-definition-BjeElHsB.js +0 -311
  1356. package/dist/form-definition-DcVnFzl4.d.ts +0 -95
  1357. package/dist/format-AYHceC2m.d.ts +0 -79
  1358. package/dist/framework-BpEnOfAo.js +0 -57
  1359. package/dist/framework-CMeAuJts.d.ts +0 -41
  1360. package/dist/function-contract-4vfi93Y5.d.ts +0 -27
  1361. package/dist/gateway-Dar9C0uP.d.ts +0 -115
  1362. package/dist/graph-B4eubUQG.js +0 -365
  1363. package/dist/groups-CxonH3u5.js +0 -16
  1364. package/dist/http-AkLjqOuB.js +0 -28
  1365. package/dist/impersonation-DFfDVJHk.js +0 -62
  1366. package/dist/inbox-CLsIrPXs.d.ts +0 -417
  1367. package/dist/index-B5XcM3VY.d.ts +0 -230
  1368. package/dist/index-B5dVVZtW.d.ts +0 -142
  1369. package/dist/index-Brm8I8iZ.d.ts +0 -232
  1370. package/dist/index-C7-2ZS9f.d.ts +0 -127
  1371. package/dist/index-CE0p3st5.d.ts +0 -227
  1372. package/dist/index-CcpGT2GI.d.ts +0 -151
  1373. package/dist/index-CrAKHNJF.d.ts +0 -287
  1374. package/dist/index-DLjs7j_z.d.ts +0 -61
  1375. package/dist/index-DdZcWH6q.d.ts +0 -820
  1376. package/dist/index-Dh5ZFCtu.d.ts +0 -61
  1377. package/dist/index-PADpaDku.d.ts +0 -447
  1378. package/dist/index-eoAU_QaY.d.ts +0 -357
  1379. package/dist/invalidate-BLiBFbLy.d.ts +0 -19
  1380. package/dist/json-schema-Bu4YCRbZ.js +0 -551
  1381. package/dist/jwks-cache-DbgNmSgV.js +0 -49
  1382. package/dist/kit-BeXTrlZn.js +0 -127
  1383. package/dist/kit-LeQGMzLH.d.ts +0 -94
  1384. package/dist/knowledge-Bx_qehoZ.js +0 -272
  1385. package/dist/knowledge-CYdNJasZ.d.ts +0 -202
  1386. package/dist/list-query-CuS1w2Af.js +0 -559
  1387. package/dist/list-query-Dx5cAqG6.d.ts +0 -223
  1388. package/dist/live-CZtRMh62.js +0 -246
  1389. package/dist/messages-Bd5-5ZjP.js +0 -492
  1390. package/dist/methods-7u6vSgz_.js +0 -11
  1391. package/dist/mfa-Dt8AdWht.d.ts +0 -36
  1392. package/dist/model-Btl8X9cs.d.ts +0 -326
  1393. package/dist/model-messages-BWyXXA4s.js +0 -206
  1394. package/dist/money-codec-BdnIiFFX.js +0 -41
  1395. package/dist/onboarding-DjXV4rgO.js +0 -68
  1396. package/dist/openapi/index.d.ts +0 -4
  1397. package/dist/openapi/index.js +0 -36
  1398. package/dist/operations-Cc27HkTG.d.ts +0 -6
  1399. package/dist/options-B7EJaOX-.js +0 -5
  1400. package/dist/options-BAW2ZlZ8.js +0 -8
  1401. package/dist/options-Blg8lAkz.js +0 -9
  1402. package/dist/options-Bn4cu0gt.js +0 -5
  1403. package/dist/options-BnoJOwXK.js +0 -8
  1404. package/dist/options-C1HR4UZd.js +0 -13
  1405. package/dist/options-C2HesT4A.js +0 -9
  1406. package/dist/options-C3EzJATk.js +0 -10
  1407. package/dist/options-C3hZ1fbC.js +0 -10
  1408. package/dist/options-CAzVf-1T.js +0 -8
  1409. package/dist/options-CGKSUFUq.js +0 -5
  1410. package/dist/options-CGjGE8xS.js +0 -12
  1411. package/dist/options-CIf3xni7.d.ts +0 -52
  1412. package/dist/options-CUqQ9pm7.js +0 -9
  1413. package/dist/options-ChD15QxJ.js +0 -9
  1414. package/dist/options-CyD7OObW.js +0 -17
  1415. package/dist/options-D1blDihM.js +0 -9
  1416. package/dist/options-D2Gd6VfS.js +0 -8
  1417. package/dist/options-D7f2VKzj.js +0 -25
  1418. package/dist/options-DXqcJyOP.js +0 -10
  1419. package/dist/options-Dh4wu9Ks.js +0 -15
  1420. package/dist/options-Dmg1Da9P.js +0 -25
  1421. package/dist/options-DsUgamiy.js +0 -5
  1422. package/dist/options-HSv8R6h5.js +0 -13
  1423. package/dist/options-I8zVkB_y.js +0 -8
  1424. package/dist/options-MHhjOoWz.js +0 -5
  1425. package/dist/options-MLxMkd5B.js +0 -11
  1426. package/dist/options-OJ5zmgr8.js +0 -10
  1427. package/dist/options-QKP9FFcK.js +0 -8
  1428. package/dist/options-XgfTctbI.js +0 -5
  1429. package/dist/options-_9arpsX9.js +0 -11
  1430. package/dist/options-kLKILdIu.js +0 -10
  1431. package/dist/options-n22NK3PL.js +0 -8
  1432. package/dist/options-qU8vgxhO.js +0 -18
  1433. package/dist/options-vXMBEWSH.js +0 -5
  1434. package/dist/options-wFnK3qWl.js +0 -9
  1435. package/dist/options-xVAy3UsV.js +0 -9
  1436. package/dist/organizations-R98kfFwF.js +0 -401
  1437. package/dist/outbox-Bsk-HJnq.d.ts +0 -199
  1438. package/dist/overlay/index.d.ts +0 -249
  1439. package/dist/overlay/index.js +0 -561
  1440. package/dist/payments-6uuergov.js +0 -16
  1441. package/dist/plugin-D9bYbYli.js +0 -45
  1442. package/dist/plugin-DouW0Kvg.d.ts +0 -203
  1443. package/dist/plugins/actor/index.d.ts +0 -19
  1444. package/dist/plugins/actor/index.js +0 -57
  1445. package/dist/plugins/rules/index.d.ts +0 -96
  1446. package/dist/plugins/rules/index.js +0 -235
  1447. package/dist/plugins/soft-delete/index.d.ts +0 -39
  1448. package/dist/plugins/soft-delete/index.js +0 -90
  1449. package/dist/plugins/tenant/index.d.ts +0 -60
  1450. package/dist/plugins/tenant/index.js +0 -119
  1451. package/dist/plugins/timestamps/index.d.ts +0 -11
  1452. package/dist/plugins/timestamps/index.js +0 -47
  1453. package/dist/plugins/validation/index.d.ts +0 -24
  1454. package/dist/plugins/validation/index.js +0 -83
  1455. package/dist/pool-Bu8zXGzI.d.ts +0 -123
  1456. package/dist/pool-errors-DOZ3oDeS.js +0 -27
  1457. package/dist/ports-BltcWsHf.d.ts +0 -312
  1458. package/dist/ports-CM3aG3zn.js +0 -137
  1459. package/dist/ports-n3ZWSS_I.d.ts +0 -89
  1460. package/dist/postgrest-DGjrW4sK.d.ts +0 -53
  1461. package/dist/powersync/react/index.d.ts +0 -93
  1462. package/dist/powersync/react/index.js +0 -120
  1463. package/dist/preset-HNFqCWaD.js +0 -838
  1464. package/dist/problem-D0KDiYPk.js +0 -162
  1465. package/dist/problem-D_DEBfMn.d.ts +0 -79
  1466. package/dist/provider-BhIkKBOh.js +0 -57
  1467. package/dist/provider-Dmsbl8ug.d.ts +0 -112
  1468. package/dist/push-token-8lvtOEv4.d.ts +0 -24
  1469. package/dist/query-DgPYlU82.js +0 -311
  1470. package/dist/rank-result-C6vsw27N.js +0 -18
  1471. package/dist/rank-result-DHflCNwo.d.ts +0 -14
  1472. package/dist/rate-limit-B7N1ZGl6.d.ts +0 -50
  1473. package/dist/rate-limit-CXpPm4_l.js +0 -49
  1474. package/dist/rate-limit-CpTD_WHm.js +0 -328
  1475. package/dist/react-controller-CKSdtJ10.js +0 -43
  1476. package/dist/react-env-CodKZgPk.js +0 -16
  1477. package/dist/react-uvu_KcVY.js +0 -599
  1478. package/dist/read-set-DP6fm21F.js +0 -316
  1479. package/dist/refusal-BEyNVFy7.d.ts +0 -32
  1480. package/dist/refusal-Ce2p81VW.js +0 -64
  1481. package/dist/replicas-BvIL4_jL.js +0 -94
  1482. package/dist/resolve-D57oDWNr.d.ts +0 -289
  1483. package/dist/resolve-sy3_Gz0i.js +0 -892
  1484. package/dist/resource-BRRU-A7j.js +0 -91
  1485. package/dist/resource-BVvIiuX_.js +0 -469
  1486. package/dist/resource-DxQOPkZ5.d.ts +0 -115
  1487. package/dist/resource-execute-BbjuiXwD.d.ts +0 -15
  1488. package/dist/resource-types-NXau9LJE.d.ts +0 -153
  1489. package/dist/resources-CIi7sw1T.js +0 -64
  1490. package/dist/resources-CZ60Vqwq.d.ts +0 -7
  1491. package/dist/respond-DjEmE_DN.js +0 -100
  1492. package/dist/respond-QW-f1yio.d.ts +0 -101
  1493. package/dist/result-DIT_qp4G.js +0 -146
  1494. package/dist/result-mijqfoJN.d.ts +0 -346
  1495. package/dist/rrule-CesB9Rxd.js +0 -290
  1496. package/dist/rules-D75V7dAE.js +0 -286
  1497. package/dist/run-state-CPo-1X2B.d.ts +0 -12
  1498. package/dist/sales-lines-9HsX89aO.d.ts +0 -28
  1499. package/dist/sales-lines-DgXeOEar.js +0 -41
  1500. package/dist/sales-shared-CjXsy0NJ.js +0 -22
  1501. package/dist/sales-shared-DAAGwQwN.d.ts +0 -8
  1502. package/dist/search-9hoZ8rN1.js +0 -106
  1503. package/dist/server-types-D_cQ6OxZ.d.ts +0 -809
  1504. package/dist/session-DNRYXIOU.d.ts +0 -97
  1505. package/dist/settings-DzQtMwfl.js +0 -93
  1506. package/dist/shared-C80IHf4B.js +0 -60
  1507. package/dist/shared-D11SWNLx.js +0 -17
  1508. package/dist/sign-in-B_QJ2u62.js +0 -386
  1509. package/dist/signatures-CzqfLlfV.d.ts +0 -43
  1510. package/dist/signatures-D8IoN3Rw.js +0 -145
  1511. package/dist/signers-BuVQKDfK.d.ts +0 -390
  1512. package/dist/signing-keys-i2Rsll6L.d.ts +0 -119
  1513. package/dist/solid-controller-7TxGaJNy.js +0 -33
  1514. package/dist/solid-controller-BnF3ovwV.d.ts +0 -11
  1515. package/dist/spec-pins-CZ2CL8YZ.d.ts +0 -120
  1516. package/dist/spec-pins-D3Tm6HJi.js +0 -60
  1517. package/dist/sql-CQIikLnQ.js +0 -421
  1518. package/dist/sql-frpIs51D.js +0 -89308
  1519. package/dist/sso-C86TPpZr.js +0 -217
  1520. package/dist/sso-D_am-gBz.d.ts +0 -161
  1521. package/dist/standard-16AIDny5.d.ts +0 -7
  1522. package/dist/standard-l10kE0yS.js +0 -25
  1523. package/dist/stats-Bt1RyT-F.js +0 -1147
  1524. package/dist/store-DKqbuNvw.d.ts +0 -83
  1525. package/dist/stripe-BSEwKCni.d.ts +0 -140
  1526. package/dist/subject-readers-BJzh7WF7.js +0 -49
  1527. package/dist/subject-readers-Bbq1i0Ol.d.ts +0 -21
  1528. package/dist/subjects-DQ2SU4cA.d.ts +0 -77
  1529. package/dist/support-CWVTM2AB.js +0 -534
  1530. package/dist/support-view-BOJJSZKv.d.ts +0 -17
  1531. package/dist/svelte-controller-BmRhHvFz.js +0 -50
  1532. package/dist/svelte-controller-DXO7gsmS.d.ts +0 -13
  1533. package/dist/table-schema-xqSXrjCN.js +0 -284
  1534. package/dist/tags-C_ym1yDM.js +0 -39
  1535. package/dist/tags-Co-QIHeK.js +0 -84
  1536. package/dist/tags-tbiuHHMV.d.ts +0 -30
  1537. package/dist/tanstack-db/supabase/index.d.ts +0 -66
  1538. package/dist/tanstack-db/supabase/index.js +0 -271
  1539. package/dist/tax-BHSCb5Rw.d.ts +0 -280
  1540. package/dist/tax-keSd-q_1.js +0 -140
  1541. package/dist/tee-1fsH3bEz.js +0 -101
  1542. package/dist/template-DXsGm_R0.js +0 -126
  1543. package/dist/temporal-required-Dt4mcPsi.js +0 -20
  1544. package/dist/tenant-DnMqeNIM.js +0 -27
  1545. package/dist/tenant-l3H2ouv7.d.ts +0 -17
  1546. package/dist/tenant-naming-Bsj3Uvap.js +0 -27
  1547. package/dist/timing-C5NzaEgy.js +0 -95
  1548. package/dist/topic-CZvLXFND.d.ts +0 -415
  1549. package/dist/topic-Cr01EHZy.js +0 -643
  1550. package/dist/types-BTK75521.js +0 -8
  1551. package/dist/types-Bzm0OgJk.d.ts +0 -177
  1552. package/dist/types-CB5MvzuE.d.ts +0 -624
  1553. package/dist/types-DYXhFhmQ.d.ts +0 -251
  1554. package/dist/types-DmshMaXz.d.ts +0 -421
  1555. package/dist/types-EUrisY2U.d.ts +0 -217
  1556. package/dist/types-vVsLvOUJ.d.ts +0 -700
  1557. package/dist/undo-CClrTbm9.d.ts +0 -46
  1558. package/dist/undo-HHonvNeg.js +0 -44
  1559. package/dist/upload-claim-DCuklVyh.js +0 -33
  1560. package/dist/usage-BFwuH7GK.d.ts +0 -232
  1561. package/dist/usage-CJmmCGzd.js +0 -264
  1562. package/dist/user-change-CSR_prhd.js +0 -133
  1563. package/dist/variants-Bat9zU8l.js +0 -53
  1564. package/dist/vault-BQThkbws.d.ts +0 -62
  1565. package/dist/verify-BCmBaHlN.js +0 -130
  1566. package/dist/verify-BTAEsJbF.d.ts +0 -146
  1567. package/dist/view-CKzCp8FW.d.ts +0 -90
  1568. package/dist/view-CfUd5vI9.js +0 -108
  1569. package/dist/vue-controller-DCOtUOA_.d.ts +0 -11
  1570. package/dist/vue-controller-EzyTjqca.js +0 -32
  1571. package/dist/watch-CYeMXFtj.d.ts +0 -92
  1572. package/dist/watch-Cnd6XDnU.js +0 -139
  1573. package/dist/watch-topic-CloXeDTO.d.ts +0 -31
  1574. package/dist/wire-BJhepFbv.js +0 -66
  1575. package/dist/workflow-builder-DzZNlI45.js +0 -699
  1576. package/dist/workflow-sdk-BXwl1THQ.d.ts +0 -163
  1577. package/dist/workflow-sdk-CPGiFE1B.js +0 -242
  1578. package/dist/workflow-sdk-world-BOEsvWmx.js +0 -2123
  1579. package/dist/workflows-BHyYAR6c.d.ts +0 -258
  1580. package/dist/workflows-otOMN33L.js +0 -285
  1581. package/skills/better-supabase/references/plugins.md +0 -71
@@ -1,1839 +0,0 @@
1
- import { r as isPlainObject } from "./clone-CkG0-hlI.js";
2
- import { n as isRecord } from "./guards-6F2bCtQR.js";
3
- import { s as problemType, t as PROBLEM_CONTENT_TYPE } from "./problem-D0KDiYPk.js";
4
- import { t as buildJsonSchema } from "./json-schema-Bu4YCRbZ.js";
5
- import { r as dataschemaOf } from "./cloud-event-XsM53POL.js";
6
- import { n as planResource } from "./resource-BRRU-A7j.js";
7
- import { n as pageQuery, r as pageSchema } from "./resource-schemas-up6bKOUi.js";
8
- import { ROW_EVENT_TYPES } from "./events/index.js";
9
- import { t as topicStatus } from "./realtime-status-asHvhiOh.js";
10
- //#region src/spec/merge.ts
11
- /** Escapes a key for a JSON Pointer (RFC 6901). */
12
- function pointerToken(key) {
13
- return key.replaceAll("~", "~0").replaceAll("/", "~1");
14
- }
15
- /**
16
- * Deep merge: objects merge key by key, anything else (arrays included) is
17
- * replaced by the patch. `onConflict` hears each replaced leaf whose value
18
- * differs, with its JSON Pointer. Neither input is changed.
19
- */
20
- function mergeJson(base, patch, onConflict, pointer = "") {
21
- if (!isPlainObject(base) || !isPlainObject(patch)) {
22
- if (onConflict && base !== void 0 && JSON.stringify(base) !== JSON.stringify(patch)) onConflict(pointer);
23
- return patch;
24
- }
25
- const out = { ...base };
26
- for (const [key, value] of Object.entries(patch)) out[key] = Object.hasOwn(base, key) ? mergeJson(base[key], value, onConflict, `${pointer}/${pointerToken(key)}`) : value;
27
- return out;
28
- }
29
- //#endregion
30
- //#region src/spec/schemas.ts
31
- /** `customer_tags` to `CustomerTags`. */
32
- function pascal(value) {
33
- return value.replaceAll(/(^|[_\-.\s])(\w)/g, (_, _sep, char) => char.toUpperCase());
34
- }
35
- const schemaRef = (name) => ({ $ref: `#/components/schemas/${name}` });
36
- const tableDefs = /* @__PURE__ */ new WeakMap();
37
- /**
38
- * The 2020-12 `$defs` for every table (`customersRow`, `customersInsert`),
39
- * built once per metadata object and JSON column config.
40
- */
41
- function tableSchemas(meta, json = {}) {
42
- let byJson = tableDefs.get(meta);
43
- if (!byJson) {
44
- byJson = /* @__PURE__ */ new Map();
45
- tableDefs.set(meta, byJson);
46
- }
47
- const key = JSON.stringify(json);
48
- let defs = byJson.get(key);
49
- if (!defs) {
50
- defs = buildJsonSchema({
51
- meta,
52
- config: { json }
53
- })["$defs"];
54
- byJson.set(key, defs);
55
- }
56
- return defs;
57
- }
58
- const converted = /* @__PURE__ */ new WeakMap();
59
- function nameOf(schema) {
60
- const id = schema["$id"] ?? schema["id"];
61
- if (typeof id !== "string" || id === "") return;
62
- return (id.split(/[/#]/u).findLast((part) => part !== "") ?? id).replace(/\.(?:schema\.)?json$/u, "");
63
- }
64
- /**
65
- * Converts a Standard Schema through Standard JSON Schema (2020-12), or
66
- * `undefined` when the library does not implement it. The schema's `$id`, `id`
67
- * and `$schema` are lifted out: the id becomes the component name.
68
- */
69
- function convertStandard(schema, direction) {
70
- let cache = converted.get(schema);
71
- if (!cache) {
72
- cache = /* @__PURE__ */ new Map();
73
- converted.set(schema, cache);
74
- }
75
- const hit = cache.get(direction);
76
- if (hit !== void 0) return hit ?? void 0;
77
- const convert = schema["~standard"].jsonSchema?.[direction];
78
- if (typeof convert !== "function") {
79
- cache.set(direction, null);
80
- return;
81
- }
82
- const raw = convert({ target: "draft-2020-12" });
83
- const name = nameOf(raw);
84
- const { $schema: _schema, $id: _id, id: _plainId, ...rest } = raw;
85
- const result = {
86
- schema: rest,
87
- ...name ? { name } : {}
88
- };
89
- cache.set(direction, result);
90
- return result;
91
- }
92
- //#endregion
93
- //#region src/spec/presets.ts
94
- /** JSON Schema for RFC 9457 Problem Details as better-supabase sends them. */
95
- const PROBLEM_SCHEMA = {
96
- type: "object",
97
- required: [
98
- "type",
99
- "title",
100
- "status"
101
- ],
102
- properties: {
103
- type: {
104
- type: "string",
105
- format: "uri-reference",
106
- examples: [problemType("not_found").type]
107
- },
108
- title: { type: "string" },
109
- status: {
110
- type: "integer",
111
- minimum: 100,
112
- maximum: 599
113
- },
114
- detail: { type: "string" },
115
- instance: { type: "string" },
116
- kind: { type: "string" },
117
- code: { type: "string" },
118
- hint: { type: "string" },
119
- constraint: { type: "string" },
120
- column: { type: "string" },
121
- columns: {
122
- type: "array",
123
- items: { type: "string" }
124
- },
125
- required: {
126
- type: "string",
127
- enum: ["aal1", "aal2"]
128
- },
129
- scopes: {
130
- type: "array",
131
- items: { type: "string" }
132
- },
133
- permission: { type: "string" },
134
- approval: {
135
- type: "object",
136
- required: ["id"],
137
- properties: { id: { type: "string" } }
138
- },
139
- issues: {
140
- type: "array",
141
- items: {
142
- type: "object",
143
- required: ["message"],
144
- properties: {
145
- message: { type: "string" },
146
- path: {
147
- type: "array",
148
- items: { type: ["string", "integer"] }
149
- }
150
- }
151
- }
152
- }
153
- }
154
- };
155
- /** The default error responses: today's Problem Details answers, 400 to 422. */
156
- const DEFAULT_ERRORS = [
157
- {
158
- name: "BadRequest",
159
- status: 400,
160
- description: "The request is invalid."
161
- },
162
- {
163
- name: "Unauthorized",
164
- status: 401,
165
- description: "Missing or invalid credentials."
166
- },
167
- {
168
- name: "Forbidden",
169
- status: 403,
170
- description: "Row-level security or a plugin denied the request."
171
- },
172
- {
173
- name: "NotFound",
174
- status: 404,
175
- description: "No row matches."
176
- },
177
- {
178
- name: "Conflict",
179
- status: 409,
180
- description: "A unique or foreign key constraint failed."
181
- },
182
- {
183
- name: "Unprocessable",
184
- status: 422,
185
- description: "Validation or a check constraint failed."
186
- }
187
- ];
188
- /** Name of the shared 403 response of operations that declare a permission. */
189
- const PERMISSION_DENIED = "PermissionDenied";
190
- const problem = (code, detail, extra = {}) => ({ value: {
191
- ...problemType("forbidden"),
192
- status: 403,
193
- kind: "forbidden",
194
- code,
195
- detail,
196
- ...extra
197
- } });
198
- /** The 403 of an operation with a permission, with one example per problem code. */
199
- function permissionDeniedResponse() {
200
- return {
201
- description: "The authorizer denied the permission (`PERMISSION_DENIED`), the token lacks an OAuth scope (`INSUFFICIENT_SCOPE`), the action needs an approval (`APPROVAL_REQUIRED`), or row-level security denied the request.",
202
- content: { [PROBLEM_CONTENT_TYPE]: {
203
- schema: schemaRef("Problem"),
204
- examples: {
205
- permissionDenied: {
206
- summary: "PERMISSION_DENIED",
207
- ...problem("PERMISSION_DENIED", "Permission invoices.update is required", { permission: "invoices.update" })
208
- },
209
- insufficientScope: {
210
- summary: "INSUFFICIENT_SCOPE",
211
- ...problem("INSUFFICIENT_SCOPE", "The token lacks a required scope", { scopes: ["invoices.update"] })
212
- },
213
- approvalRequired: {
214
- summary: "APPROVAL_REQUIRED",
215
- ...problem("APPROVAL_REQUIRED", "invoices.update needs an approval", {
216
- permission: "invoices.update",
217
- approval: { id: "apr_123" }
218
- })
219
- }
220
- }
221
- } }
222
- };
223
- }
224
- function errorResponse(error) {
225
- return {
226
- description: error.description,
227
- content: { [PROBLEM_CONTENT_TYPE]: { schema: schemaRef("Problem") } }
228
- };
229
- }
230
- /** The scheme name of the `oauth2` preset. */
231
- const OAUTH_SCHEME = "supabaseOAuth";
232
- /** Security schemes and top-level requirements for the presets. */
233
- function resolveSecurity(presets, supabaseUrl, oauthScopes = {}) {
234
- const schemes = {};
235
- const requirements = [];
236
- for (const preset of presets) {
237
- if (typeof preset === "object") {
238
- schemes[preset.name] = preset.scheme;
239
- requirements.push({ [preset.name]: preset.scopes ?? [] });
240
- continue;
241
- }
242
- switch (preset) {
243
- case "bearer":
244
- schemes["supabaseJwt"] = {
245
- type: "http",
246
- scheme: "bearer",
247
- bearerFormat: "JWT",
248
- description: "A Supabase access token. Requests run as that user under row-level security."
249
- };
250
- requirements.push({ supabaseJwt: [] });
251
- break;
252
- case "oauth2": {
253
- if (!supabaseUrl) throw new TypeError("better-supabase/spec: oauth2 security needs supabaseUrl");
254
- const origin = supabaseUrl.replace(/\/$/, "");
255
- const auth = `${origin}/auth/v1`;
256
- schemes[OAUTH_SCHEME] = {
257
- type: "oauth2",
258
- description: "The Supabase OAuth 2.1 server.",
259
- flows: { authorizationCode: {
260
- authorizationUrl: `${auth}/oauth/authorize`,
261
- tokenUrl: `${auth}/oauth/token`,
262
- scopes: oauthScopes
263
- } },
264
- metadataUrl: `${origin}/.well-known/oauth-authorization-server/auth/v1`
265
- };
266
- requirements.push({ [OAUTH_SCHEME]: [] });
267
- break;
268
- }
269
- case "apiKey":
270
- schemes["supabaseApiKey"] = {
271
- type: "apiKey",
272
- name: "apikey",
273
- in: "header",
274
- description: "The project's publishable key."
275
- };
276
- requirements.push({ supabaseApiKey: [] });
277
- break;
278
- default: throw new TypeError(`Unknown security preset "${String(preset)}"`);
279
- }
280
- }
281
- return {
282
- schemes,
283
- requirements
284
- };
285
- }
286
- //#endregion
287
- //#region src/spec/build-resource.ts
288
- const METHODS = /* @__PURE__ */ new Set([
289
- "get",
290
- "put",
291
- "post",
292
- "patch",
293
- "delete",
294
- "head",
295
- "options",
296
- "trace",
297
- "query"
298
- ]);
299
- function isMethod(value) {
300
- return METHODS.has(value);
301
- }
302
- /** The error statuses each operation can answer with. */
303
- const OPERATION_STATUSES = {
304
- list: [
305
- 400,
306
- 401,
307
- 403
308
- ],
309
- create: [
310
- 400,
311
- 401,
312
- 403,
313
- 409,
314
- 422
315
- ],
316
- get: [
317
- 401,
318
- 403,
319
- 404
320
- ],
321
- update: [
322
- 400,
323
- 401,
324
- 403,
325
- 404,
326
- 409,
327
- 422
328
- ],
329
- delete: [
330
- 401,
331
- 403,
332
- 404,
333
- 409
334
- ]
335
- };
336
- /**
337
- * Statuses an operation only documents when it can answer with them; other
338
- * errors apply everywhere.
339
- */
340
- const SCOPED_STATUSES = /* @__PURE__ */ new Set([
341
- 400,
342
- 401,
343
- 403,
344
- 404,
345
- 409,
346
- 422
347
- ]);
348
- const JSON_TYPE = "application/json";
349
- function pageParameters(cursor, maxPageSize) {
350
- return pageQuery(cursor, maxPageSize).map((p) => ({
351
- name: p.name,
352
- in: "query",
353
- required: false,
354
- description: p.description,
355
- schema: p.schema
356
- }));
357
- }
358
- function isParameter(value) {
359
- return isPlainObject(value) && typeof value["name"] === "string" && typeof value["in"] === "string" && isPlainObject(value["schema"]);
360
- }
361
- function isPlanCarrier(input) {
362
- return typeof input === "object" && "plan" in input;
363
- }
364
- /**
365
- * `description` and `deprecated` from comments, read structurally so older
366
- * metadata still works.
367
- */
368
- function docsOf(value) {
369
- if (!value) return {};
370
- const description = "description" in value ? value.description : void 0;
371
- const deprecated = "deprecated" in value ? value.deprecated : void 0;
372
- return {
373
- ...typeof description === "string" && description !== "" ? { description } : {},
374
- ...deprecated === true ? { deprecated: true } : {}
375
- };
376
- }
377
- function jsonContent(schema) {
378
- return { [JSON_TYPE]: { schema } };
379
- }
380
- function jsonResponse(schema, description) {
381
- return {
382
- description,
383
- content: jsonContent(schema)
384
- };
385
- }
386
- function mutableProperties(schema) {
387
- const properties = schema["properties"];
388
- if (!isPlainObject(properties)) return;
389
- const copy = {};
390
- for (const [key, value] of Object.entries(properties)) if (isPlainObject(value)) copy[key] = { ...value };
391
- schema["properties"] = copy;
392
- return copy;
393
- }
394
- function createBuildContext(meta, options) {
395
- const prefix = options.extensionPrefix ?? "x-better-supabase-";
396
- const diagnostics = [];
397
- const report = (diagnostic) => {
398
- diagnostics.push(diagnostic);
399
- };
400
- const base = (options.basePath ?? "").replace(/\/$/, "");
401
- const globalErrors = options.errors ?? DEFAULT_ERRORS;
402
- const schemas = { Problem: structuredClone(PROBLEM_SCHEMA) };
403
- const responses = {};
404
- for (const error of globalErrors) responses[error.name] = errorResponse(error);
405
- const operations = [];
406
- const tags = [...options.tags ?? []];
407
- const served = /* @__PURE__ */ new Map();
408
- const { authorizer } = options;
409
- const addTag = (name, description) => {
410
- if (tags.some((tag) => tag.name === name)) return;
411
- tags.push({
412
- name,
413
- ...description ? { description } : {}
414
- });
415
- };
416
- const addComponent = (name, schema) => {
417
- const existing = schemas[name];
418
- if (existing && JSON.stringify(existing) !== JSON.stringify(schema)) {
419
- report({
420
- code: "component-conflict",
421
- severity: "error",
422
- message: `Two different schemas are named "${name}"; the first one is kept`,
423
- pointer: `/components/schemas/${pointerToken(name)}`
424
- });
425
- return;
426
- }
427
- schemas[name] = schema;
428
- };
429
- const keyOf = (ref, where) => {
430
- if (authorizer) try {
431
- return authorizer.key(ref);
432
- } catch {
433
- report({
434
- code: "permission-unresolved",
435
- severity: "error",
436
- message: `${where}: the authorizer has no key for this permission`
437
- });
438
- return;
439
- }
440
- if (typeof ref === "string") return ref;
441
- report({
442
- code: "permission-unresolved",
443
- severity: "error",
444
- message: `${where}: a permission that is not a string needs an authorizer`
445
- });
446
- };
447
- const converted = (standard, direction, where) => {
448
- const result = convertStandard(standard, direction);
449
- if (!result) report({
450
- code: "schema-unconvertible",
451
- severity: "warning",
452
- message: `${where}: the schema does not implement Standard JSON Schema, so the spec allows any value`
453
- });
454
- return result;
455
- };
456
- const schemaOf = (standard, direction, role, operationId) => {
457
- const result = converted(standard, direction, `${operationId} ${role}`);
458
- if (!result) return {};
459
- const name = options.componentName ? options.componentName({
460
- kind: "schema",
461
- id: result.name,
462
- schema: result.schema,
463
- role,
464
- operationId
465
- }) : result.name;
466
- if (!name) return structuredClone(result.schema);
467
- addComponent(name, structuredClone(result.schema));
468
- return schemaRef(name);
469
- };
470
- const objectParameters = (standard, location, where) => {
471
- const result = converted(standard, "input", where);
472
- const properties = result?.schema["properties"];
473
- if (!result || !isPlainObject(properties)) return [];
474
- const required = result.schema["required"];
475
- const requiredNames = Array.isArray(required) ? required : [];
476
- return Object.entries(properties).flatMap(([name, schema]) => {
477
- if (!isPlainObject(schema)) return [];
478
- const description = schema["description"];
479
- return [{
480
- name,
481
- in: location,
482
- required: location === "path" || requiredNames.includes(name),
483
- ...typeof description === "string" ? { description } : {},
484
- schema: structuredClone(schema)
485
- }];
486
- });
487
- };
488
- const usedErrors = (errors, statuses, permission) => {
489
- const out = {};
490
- for (const error of errors) {
491
- if (SCOPED_STATUSES.has(error.status) && !statuses.includes(error.status)) continue;
492
- const status = String(error.status);
493
- if (Object.hasOwn(out, status)) continue;
494
- if (error.status === 403 && permission) continue;
495
- responses[error.name] ??= errorResponse(error);
496
- out[status] = { ref: error.name };
497
- }
498
- if (permission) {
499
- responses[PERMISSION_DENIED] ??= permissionDeniedResponse();
500
- out["403"] = { ref: PERMISSION_DENIED };
501
- }
502
- return out;
503
- };
504
- const extendFor = (extend, name) => {
505
- if (!extend) return;
506
- const all = extend["*"];
507
- const own = extend[name];
508
- if (!all && !own) return;
509
- return mergeJson(all ?? {}, own ?? {});
510
- };
511
- return {
512
- meta,
513
- options,
514
- prefix,
515
- base,
516
- globalErrors,
517
- diagnostics,
518
- schemas,
519
- responses,
520
- operations,
521
- tags,
522
- served,
523
- report,
524
- addTag,
525
- addComponent,
526
- keyOf,
527
- schemaOf,
528
- objectParameters,
529
- usedErrors,
530
- extendFor
531
- };
532
- }
533
- function resourceScope(ctx, key, input) {
534
- const { meta, options, prefix, base, globalErrors, operations, served, report, addTag, addComponent, keyOf, schemaOf, usedErrors, extendFor } = ctx;
535
- const { authorizer } = options;
536
- let plan;
537
- if (isPlanCarrier(input)) plan = input.plan;
538
- else {
539
- if (!meta.tables[key]) throw new TypeError(`better-supabase/spec: unknown table "${key}"`);
540
- plan = planResource(meta, key, input === true ? {} : input, authorizer);
541
- }
542
- const tableKey = plan.table;
543
- const table = plan.meta;
544
- const description = plan.description;
545
- const name = pascal(tableKey);
546
- const tableDocs = docsOf(table);
547
- const defs = tableSchemas(meta, options.json ?? {});
548
- const componentFor = (variant) => {
549
- const defaultName = `${name}${variant}`;
550
- return options.componentName?.({
551
- kind: "table",
552
- table: tableKey,
553
- variant,
554
- defaultName
555
- }) ?? defaultName;
556
- };
557
- const components = {};
558
- for (const variant of [
559
- "Row",
560
- "Insert",
561
- "Update"
562
- ]) {
563
- const def = defs[`${tableKey}${variant}`];
564
- if (!def) continue;
565
- const schema = structuredClone(def);
566
- if (tableDocs.description && schema["description"] === void 0) schema["description"] = tableDocs.description;
567
- if (tableDocs.deprecated) schema["deprecated"] = true;
568
- const properties = mutableProperties(schema);
569
- for (const [column, property] of Object.entries(properties ?? {})) {
570
- const docs = docsOf(table.columns[column]);
571
- if (docs.description && property["description"] === void 0) property["description"] = docs.description;
572
- if (docs.deprecated) property["deprecated"] = true;
573
- }
574
- const examples = options.examples?.[tableKey];
575
- if (variant === "Row" && examples && examples.length > 0) schema["examples"] = structuredClone(examples);
576
- const componentName = componentFor(variant);
577
- components[variant] = componentName;
578
- addComponent(componentName, schema);
579
- }
580
- const rowName = components.Row ?? componentFor("Row");
581
- const cursor = plan.pagination === "cursor";
582
- const pageName = componentFor("Page");
583
- addComponent(pageName, pageSchema(schemaRef(rowName), cursor));
584
- const tag = description.tag ?? tableKey;
585
- addTag(tag, description.description ?? tableDocs.description);
586
- const collection = `${base}${description.path ?? `/${tableKey}`}`;
587
- const keyParam = plan.keyParam;
588
- const rowProperties = defs[`${tableKey}Row`]?.["properties"];
589
- const keySchema = keyParam && isPlainObject(rowProperties) ? rowProperties[keyParam] : void 0;
590
- const idParameter = keyParam ? {
591
- name: keyParam,
592
- in: "path",
593
- required: true,
594
- schema: isPlainObject(keySchema) ? structuredClone(keySchema) : { type: "string" }
595
- } : void 0;
596
- const item = keyParam ? `${collection}/{${keyParam}}` : void 0;
597
- const errors = description.errors ?? globalErrors;
598
- const servedTable = {
599
- table,
600
- components,
601
- operations: []
602
- };
603
- served.set(tableKey, servedTable);
604
- const names = /* @__PURE__ */ new Set([...plan.operations, ...plan.actions.map((action) => action.name)]);
605
- for (const extendKey of Object.keys(description.extend ?? {})) if (extendKey !== "*" && !names.has(extendKey)) report({
606
- code: "extend-unknown",
607
- severity: "warning",
608
- message: `${tableKey}.extend.${extendKey} names no operation or action of the resource`
609
- });
610
- const add = (opName, source, method, path, fields) => {
611
- const defaultId = `${opName}${name}`;
612
- const id = options.operationId?.({
613
- source,
614
- method,
615
- path,
616
- defaultId
617
- }) ?? defaultId;
618
- const ref = plan.permissions[opName];
619
- const permission = ref === void 0 ? void 0 : keyOf(ref, `${tableKey}.${opName}`);
620
- const extend = extendFor(description.extend, opName);
621
- const { extensions, ...rest } = fields;
622
- const operation = {
623
- id,
624
- method,
625
- path,
626
- tags: [tag],
627
- source,
628
- ...rest,
629
- extensions: {
630
- [`${prefix}table`]: `${table.schema}.${table.name}`,
631
- ...extensions,
632
- ...permission === void 0 ? {} : { [`${prefix}permission`]: permission }
633
- },
634
- ...permission === void 0 ? {} : { permission },
635
- ...description.security ? { security: description.security } : {},
636
- ...extend ? { extend } : {},
637
- ...tableDocs.deprecated ? { deprecated: true } : {}
638
- };
639
- operations.push(operation);
640
- servedTable.operations.push(operation);
641
- };
642
- const outputOf = (operation, fallback) => {
643
- const output = description.output?.[operation];
644
- return output ? schemaOf(output, "output", "output", `${operation}${name}`) : fallback;
645
- };
646
- const resourceOp = (operation) => ({
647
- kind: "resource",
648
- table: tableKey,
649
- operation
650
- });
651
- const errorsFor = (operation) => usedErrors(errors, OPERATION_STATUSES[operation], plan.permissions[operation] !== void 0);
652
- const opExtension = (operation) => ({ [`${prefix}operation`]: operation });
653
- return {
654
- ctx,
655
- plan,
656
- tableKey,
657
- name,
658
- description,
659
- components,
660
- componentFor,
661
- rowName,
662
- pageName,
663
- cursor,
664
- collection,
665
- item,
666
- idParameter,
667
- errors,
668
- add,
669
- outputOf,
670
- resourceOp,
671
- errorsFor,
672
- opExtension
673
- };
674
- }
675
- function addTableOperation(scope, operation) {
676
- const { plan, tableKey, name, description, components, componentFor, rowName, pageName, cursor, collection, item, idParameter, add, outputOf, resourceOp, errorsFor, opExtension } = scope;
677
- const { schemaOf } = scope.ctx;
678
- switch (operation) {
679
- case "list": {
680
- const listOutput = description.output?.list;
681
- const pageRef = listOutput ? pageSchema(schemaOf(listOutput, "output", "item", `list${name}`), cursor) : schemaRef(pageName);
682
- add("list", resourceOp("list"), "get", collection, {
683
- summary: `List ${tableKey}`,
684
- extensions: opExtension("list"),
685
- parameters: description.list ? description.list.openapi.filter(isParameter) : pageParameters(cursor, plan.maxPageSize),
686
- responses: {
687
- "200": jsonResponse(pageRef, `A page of ${tableKey}.`),
688
- ...errorsFor("list")
689
- }
690
- });
691
- break;
692
- }
693
- case "create": {
694
- const body = description.input?.create ? schemaOf(description.input.create, "input", "input", `create${name}`) : schemaRef(components.Insert ?? componentFor("Insert"));
695
- add("create", resourceOp("create"), "post", collection, {
696
- summary: `Create a ${tableKey} row`,
697
- extensions: opExtension("create"),
698
- parameters: [],
699
- requestBody: {
700
- required: true,
701
- content: jsonContent(body)
702
- },
703
- responses: {
704
- "201": jsonResponse(outputOf("create", schemaRef(rowName)), "Created."),
705
- ...errorsFor("create")
706
- }
707
- });
708
- break;
709
- }
710
- case "get":
711
- if (!item || !idParameter) break;
712
- add("get", resourceOp("get"), "get", item, {
713
- summary: `Get a ${tableKey} row`,
714
- extensions: opExtension("get"),
715
- parameters: [idParameter],
716
- responses: {
717
- "200": jsonResponse(outputOf("get", schemaRef(rowName)), "The row."),
718
- ...errorsFor("get")
719
- }
720
- });
721
- break;
722
- case "update": {
723
- if (!item || !idParameter) break;
724
- const body = description.input?.update ? schemaOf(description.input.update, "input", "input", `update${name}`) : schemaRef(components.Update ?? componentFor("Update"));
725
- add("update", resourceOp("update"), "patch", item, {
726
- summary: `Update a ${tableKey} row`,
727
- extensions: opExtension("update"),
728
- parameters: [idParameter],
729
- requestBody: {
730
- required: true,
731
- content: jsonContent(body)
732
- },
733
- responses: {
734
- "200": jsonResponse(outputOf("update", schemaRef(rowName)), "Updated."),
735
- ...errorsFor("update")
736
- }
737
- });
738
- break;
739
- }
740
- case "delete":
741
- if (!item || !idParameter) break;
742
- add("delete", resourceOp("delete"), "delete", item, {
743
- summary: `Delete a ${tableKey} row`,
744
- extensions: opExtension("delete"),
745
- parameters: [idParameter],
746
- responses: {
747
- "204": { description: "Deleted." },
748
- ...errorsFor("delete")
749
- }
750
- });
751
- break;
752
- default: throw new TypeError(`better-supabase/spec: unknown operation "${String(operation)}"`);
753
- }
754
- }
755
- function addAction(scope, action) {
756
- const { tableKey, name, idParameter, collection, errors, add } = scope;
757
- const { prefix, schemaOf, objectParameters, usedErrors } = scope.ctx;
758
- const method = action.method.toLowerCase();
759
- if (!isMethod(method)) throw new TypeError(`${tableKey}.actions.${action.name}: unknown method`);
760
- const operationId = `${action.name}${name}`;
761
- const parameters = [...action.params.length > 0 && idParameter ? [idParameter] : [], ...action.query ? objectParameters(action.query, "query", `${operationId} query`) : []];
762
- const status = String(action.status ?? (action.output ? 200 : 204));
763
- const statuses = [
764
- ...action.input || action.query ? [400] : [],
765
- 401,
766
- 403,
767
- ...action.params.length > 0 ? [404] : [],
768
- ...action.input ? [422] : []
769
- ];
770
- add(action.name, {
771
- kind: "action",
772
- table: tableKey,
773
- action: action.name
774
- }, method, `${collection}${action.path}`, {
775
- ...action.summary ? { summary: action.summary } : {},
776
- ...action.description ? { description: action.description } : {},
777
- ...action.deprecated ? { deprecated: true } : {},
778
- extensions: {
779
- [`${prefix}action`]: action.name,
780
- ...action.emits ? { [`${prefix}emits`]: [...action.emits] } : {}
781
- },
782
- parameters,
783
- ...action.input ? { requestBody: {
784
- required: true,
785
- content: jsonContent(schemaOf(action.input, "input", "input", operationId))
786
- } } : {},
787
- responses: {
788
- [status]: action.output ? jsonResponse(schemaOf(action.output, "output", "output", operationId), action.summary ?? "Done.") : { description: action.summary ?? "Done." },
789
- ...usedErrors(errors, statuses, action.permission !== void 0)
790
- }
791
- });
792
- }
793
- /** Adds one resource's components, tag and operations to the build. */
794
- function buildResource(ctx, key, input) {
795
- const scope = resourceScope(ctx, key, input);
796
- for (const operation of scope.plan.operations) addTableOperation(scope, operation);
797
- for (const action of scope.plan.actions) addAction(scope, action);
798
- }
799
- //#endregion
800
- //#region src/spec/data-api.ts
801
- const REST = "/rest/v1";
802
- const DEFAULT_TAG = "Data API";
803
- const ERROR = "DataApiError";
804
- /** The error body PostgREST answers with. */
805
- const ERROR_SCHEMA = {
806
- type: "object",
807
- required: ["message"],
808
- properties: {
809
- code: { type: "string" },
810
- message: { type: "string" },
811
- details: { type: ["string", "null"] },
812
- hint: { type: ["string", "null"] }
813
- }
814
- };
815
- /**
816
- * Query parameters PostgREST reserves, so a column with the name gets no
817
- * filter.
818
- */
819
- const RESERVED = /* @__PURE__ */ new Set([
820
- "select",
821
- "order",
822
- "limit",
823
- "offset",
824
- "columns",
825
- "on_conflict",
826
- "or",
827
- "and",
828
- "not"
829
- ]);
830
- const INTEGER = /* @__PURE__ */ new Set([
831
- "int2",
832
- "int4",
833
- "int8"
834
- ]);
835
- const NUMBER = /* @__PURE__ */ new Set([
836
- "float4",
837
- "float8",
838
- "numeric",
839
- "oid",
840
- "money"
841
- ]);
842
- /** The scheme names the `apiKey` and `bearer` presets register. */
843
- const DATA_API_SECURITY = [{
844
- supabaseApiKey: [],
845
- supabaseJwt: []
846
- }, { supabaseApiKey: [] }];
847
- /** JSON Schema for a Postgres type as PostgREST writes it. */
848
- function typeSchema(meta, type) {
849
- if (type.startsWith("_")) return {
850
- type: "array",
851
- items: typeSchema(meta, type.slice(1))
852
- };
853
- const values = meta.enums[type];
854
- if (values) return {
855
- type: "string",
856
- enum: [...values]
857
- };
858
- if (INTEGER.has(type)) return { type: "integer" };
859
- if (NUMBER.has(type)) return { type: "number" };
860
- switch (type) {
861
- case "bool": return { type: "boolean" };
862
- case "uuid": return {
863
- type: "string",
864
- format: "uuid"
865
- };
866
- case "timestamptz": return {
867
- type: "string",
868
- format: "date-time"
869
- };
870
- case "date": return {
871
- type: "string",
872
- format: "date"
873
- };
874
- case "json":
875
- case "jsonb":
876
- case "record":
877
- case "void": return {};
878
- default: return { type: "string" };
879
- }
880
- }
881
- /**
882
- * A table schema with database column names, as the Data API reads and writes
883
- * them.
884
- */
885
- function databaseCased(schema, table) {
886
- const dbName = (name) => table.columns[name]?.db ?? name;
887
- const properties = schema["properties"];
888
- const required = schema["required"];
889
- return {
890
- ...schema,
891
- ...isPlainObject(properties) ? { properties: Object.fromEntries(Object.entries(properties).map(([name, value]) => [dbName(name), value])) } : {},
892
- ...Array.isArray(required) ? { required: required.map((name) => typeof name === "string" ? dbName(name) : name) } : {}
893
- };
894
- }
895
- const qualified = (schema, name) => schema === "public" ? name : `${schema}.${name}`;
896
- const STRING = { type: "string" };
897
- const header = (name, description, schema, required = false) => ({
898
- name,
899
- in: "header",
900
- required,
901
- description,
902
- schema: schema ?? STRING
903
- });
904
- const query = (name, description, schema) => ({
905
- name,
906
- in: "query",
907
- required: false,
908
- description,
909
- schema: schema ?? STRING
910
- });
911
- /**
912
- * The `Accept-Profile` or `Content-Profile` header a table outside `public`
913
- * needs.
914
- */
915
- function profile(schema, write) {
916
- return schema === "public" ? [] : [header(write ? "Content-Profile" : "Accept-Profile", `The schema of the table, \`${schema}\`.`, {
917
- type: "string",
918
- enum: [schema]
919
- }, true)];
920
- }
921
- const PREFER_WRITE = header("Prefer", "`return=representation` answers with the written rows; `return=minimal` (the default) answers without a body.");
922
- /**
923
- * Documents the Data API: table operations under `/rest/v1/<table>` and RPCs
924
- * under `/rest/v1/rpc/<name>`.
925
- */
926
- function buildDataApi(ctx, dataApi) {
927
- const { meta, options, operations, report, addTag, addComponent, responses } = ctx;
928
- const tag = dataApi.tag ?? DEFAULT_TAG;
929
- const origin = options.supabaseUrl?.replace(/\/$/, "");
930
- if (!origin) report({
931
- code: "data-api-server-missing",
932
- severity: "warning",
933
- message: "dataApi needs supabaseUrl: without it the /rest/v1 paths resolve against the document's servers"
934
- });
935
- const servers = origin ? [{
936
- url: origin,
937
- description: "The Supabase project."
938
- }] : void 0;
939
- const defs = tableSchemas(meta, options.json ?? {});
940
- const tableKeys = /* @__PURE__ */ new Set();
941
- const unknownTable = (key, where) => {
942
- report({
943
- code: "data-api-table-unknown",
944
- severity: "error",
945
- message: `${where}: no table or view "${key}"`
946
- });
947
- };
948
- if (dataApi.tables === true) for (const key of Object.keys(meta.tables).toSorted()) tableKeys.add(key);
949
- else for (const key of dataApi.tables ?? []) if (meta.tables[key]) tableKeys.add(key);
950
- else unknownTable(key, "dataApi.tables");
951
- for (const key of Object.keys(dataApi.operations ?? {})) if (!meta.tables[key]) unknownTable(key, "dataApi.operations");
952
- else if (!tableKeys.has(key)) tableKeys.add(key);
953
- const functionKeys = [];
954
- if (dataApi.functions === true) functionKeys.push(...Object.keys(meta.functions).toSorted());
955
- else for (const key of dataApi.functions ?? []) if (meta.functions[key]) functionKeys.push(key);
956
- else report({
957
- code: "data-api-function-unknown",
958
- severity: "error",
959
- message: `dataApi.functions: no function "${key}"`
960
- });
961
- if (tableKeys.size === 0 && functionKeys.length === 0) return;
962
- addTag(tag, "The Supabase Data API (PostgREST). Every request runs under row-level security.");
963
- addComponent(ERROR, structuredClone(ERROR_SCHEMA));
964
- responses[ERROR] ??= {
965
- description: "PostgREST rejected the request.",
966
- content: jsonContent(schemaRef(ERROR))
967
- };
968
- const errors = { "4XX": { ref: ERROR } };
969
- /**
970
- * The database-cased component of a table variant, or `undefined` when the
971
- * table has none.
972
- */
973
- const component = (key, variant) => {
974
- const table = meta.tables[key];
975
- const schema = defs[`${key}${variant}`];
976
- if (!table || !schema) return;
977
- const name = `DataApi${pascal(table.schema === "public" ? "" : `${table.schema}_`)}${pascal(table.name)}${variant}`;
978
- addComponent(name, databaseCased(structuredClone(schema), table));
979
- return schemaRef(name);
980
- };
981
- const push = (draft) => {
982
- const { defaultId, ...rest } = draft;
983
- operations.push({
984
- ...rest,
985
- id: options.operationId?.({
986
- source: draft.source,
987
- method: draft.method,
988
- path: draft.path,
989
- defaultId
990
- }) ?? defaultId,
991
- tags: [tag],
992
- ...servers ? { servers } : {},
993
- security: DATA_API_SECURITY,
994
- extensions: {}
995
- });
996
- };
997
- for (const key of tableKeys) {
998
- const table = meta.tables[key];
999
- if (table) buildTable(key, table);
1000
- }
1001
- for (const key of functionKeys) {
1002
- const fn = meta.functions[key];
1003
- if (fn) buildFunction(key, fn);
1004
- }
1005
- function buildTable(key, table) {
1006
- const row = component(key, "Row") ?? {};
1007
- const insert = component(key, "Insert");
1008
- const update = component(key, "Update");
1009
- const rows = {
1010
- type: "array",
1011
- items: row
1012
- };
1013
- const path = `${REST}/${table.name}`;
1014
- const name = pascal(table.schema === "public" ? table.name : `${table.schema}_${table.name}`);
1015
- const label = qualified(table.schema, table.name);
1016
- const filters = Object.values(table.columns).filter((column) => !RESERVED.has(column.db)).map((column) => query(column.db, `Filters on \`${column.db}\` with an operator and a value: \`eq.<value>\`, \`in.(a,b)\`, \`is.null\`.`));
1017
- const viewOperations = ["select"];
1018
- if (insert) viewOperations.push("insert");
1019
- if (update) viewOperations.push("update", "delete");
1020
- const allowed = dataApi.operations?.[key] ?? (table.kind === "view" ? viewOperations : [
1021
- "select",
1022
- "insert",
1023
- "update",
1024
- "delete"
1025
- ]);
1026
- const source = (operation) => ({
1027
- kind: "data-api",
1028
- table: key,
1029
- operation
1030
- });
1031
- const written = (status, description) => ({ [status]: jsonResponse(rows, `${description} The body holds the rows with \`Prefer: return=representation\`.`) });
1032
- for (const operation of allowed) switch (operation) {
1033
- case "select":
1034
- push({
1035
- defaultId: `dataApiSelect${name}`,
1036
- method: "get",
1037
- path,
1038
- summary: `Read rows of ${label}`,
1039
- parameters: [
1040
- query("select", "The columns to return, comma separated, and embedded relations as `relation(columns)`. Defaults to `*`."),
1041
- query("order", "Sort order, such as `created_at.desc,id`."),
1042
- query("limit", "The most rows to return.", {
1043
- type: "integer",
1044
- minimum: 0
1045
- }),
1046
- query("offset", "The rows to skip.", {
1047
- type: "integer",
1048
- minimum: 0
1049
- }),
1050
- ...filters,
1051
- header("Range", "A row range, such as `0-24`."),
1052
- header("Prefer", "`count=exact`, `count=planned` or `count=estimated` adds the total to `Content-Range`."),
1053
- ...profile(table.schema, false)
1054
- ],
1055
- responses: {
1056
- "200": {
1057
- ...jsonResponse(rows, "The rows."),
1058
- headers: { "Content-Range": {
1059
- description: "The returned range and the total, such as `0-24/100`.",
1060
- schema: { type: "string" }
1061
- } }
1062
- },
1063
- "206": jsonResponse(rows, "Part of the rows, for a `Range` request."),
1064
- ...errors
1065
- },
1066
- source: source("select")
1067
- });
1068
- break;
1069
- case "insert":
1070
- push({
1071
- defaultId: `dataApiInsert${name}`,
1072
- method: "post",
1073
- path,
1074
- summary: `Insert rows into ${label}`,
1075
- parameters: [
1076
- query("columns", "The columns to read from the body, comma separated."),
1077
- query("on_conflict", "The unique columns an upsert matches on, comma separated."),
1078
- PREFER_WRITE,
1079
- ...profile(table.schema, true)
1080
- ],
1081
- requestBody: {
1082
- required: true,
1083
- content: jsonContent(insert ? { oneOf: [insert, {
1084
- type: "array",
1085
- items: insert
1086
- }] } : {})
1087
- },
1088
- responses: {
1089
- ...written("201", "Created."),
1090
- ...errors
1091
- },
1092
- source: source("insert")
1093
- });
1094
- break;
1095
- case "update":
1096
- push({
1097
- defaultId: `dataApiUpdate${name}`,
1098
- method: "patch",
1099
- path,
1100
- summary: `Update rows of ${label}`,
1101
- description: "Updates every row the filters match.",
1102
- parameters: [
1103
- ...filters,
1104
- PREFER_WRITE,
1105
- ...profile(table.schema, true)
1106
- ],
1107
- requestBody: {
1108
- required: true,
1109
- content: jsonContent(update ?? {})
1110
- },
1111
- responses: {
1112
- ...written("200", "Updated."),
1113
- "204": { description: "Updated, without a body." },
1114
- ...errors
1115
- },
1116
- source: source("update")
1117
- });
1118
- break;
1119
- case "delete":
1120
- push({
1121
- defaultId: `dataApiDelete${name}`,
1122
- method: "delete",
1123
- path,
1124
- summary: `Delete rows of ${label}`,
1125
- description: "Deletes every row the filters match.",
1126
- parameters: [
1127
- ...filters,
1128
- PREFER_WRITE,
1129
- ...profile(table.schema, true)
1130
- ],
1131
- responses: {
1132
- ...written("200", "Deleted."),
1133
- "204": { description: "Deleted, without a body." },
1134
- ...errors
1135
- },
1136
- source: source("delete")
1137
- });
1138
- break;
1139
- default: throw new TypeError(`Unknown Data API operation "${String(operation)}"`);
1140
- }
1141
- }
1142
- function argumentsSchema(signature) {
1143
- const required = signature.args.filter((arg) => arg.optional !== true).map((arg) => arg.name);
1144
- return {
1145
- type: "object",
1146
- properties: Object.fromEntries(signature.args.map((arg) => [arg.name, typeSchema(meta, arg.type)])),
1147
- ...required.length > 0 ? { required } : {},
1148
- additionalProperties: false
1149
- };
1150
- }
1151
- function resultSchema(fn) {
1152
- const { result } = fn;
1153
- let one;
1154
- if (result && "table" in result) one = component(result.table, "Row") ?? {};
1155
- else if (result) one = {
1156
- type: "object",
1157
- properties: Object.fromEntries(result.columns.map((column) => [column.db, {}])),
1158
- required: result.columns.map((column) => column.db)
1159
- };
1160
- else {
1161
- const rowTable = Object.entries(meta.tables).find(([, table]) => table.name === fn.returns && table.schema === fn.schema);
1162
- one = rowTable ? component(rowTable[0], "Row") ?? {} : typeSchema(meta, fn.returns);
1163
- }
1164
- return fn.returnsSet ? {
1165
- type: "array",
1166
- items: one
1167
- } : one;
1168
- }
1169
- function buildFunction(key, fn) {
1170
- const signatures = fn.overloads ?? [fn];
1171
- const bodies = signatures.map(argumentsSchema);
1172
- const [only] = bodies;
1173
- const body = bodies.length === 1 && only ? only : { oneOf: bodies };
1174
- const takesArgs = signatures.some((signature) => signature.args.length > 0);
1175
- push({
1176
- defaultId: `dataApiRpc${pascal(fn.schema === "public" ? fn.name : `${fn.schema}_${fn.name}`)}`,
1177
- method: "post",
1178
- path: `${REST}/rpc/${fn.name}`,
1179
- summary: `Call ${qualified(fn.schema, fn.name)}`,
1180
- description: `A ${fn.volatility} function.${fn.volatility === "volatile" ? "" : " A GET with the arguments as query parameters calls it too."}`,
1181
- parameters: profile(fn.schema, true),
1182
- requestBody: {
1183
- required: takesArgs,
1184
- content: jsonContent(body)
1185
- },
1186
- responses: {
1187
- ...fn.returns === "void" && !fn.returnsSet ? { "204": { description: "Done." } } : { "200": jsonResponse(resultSchema(fn), "The result.") },
1188
- ...errors
1189
- },
1190
- source: {
1191
- kind: "data-api",
1192
- function: key,
1193
- operation: "rpc"
1194
- }
1195
- });
1196
- }
1197
- }
1198
- /** Adds the `apiKey` and `bearer` schemes the Data API operations require. */
1199
- function withDataApiSchemes(security, operations, supabaseUrl) {
1200
- if (!operations.some((operation) => operation.source.kind === "data-api")) return security;
1201
- const { schemes } = resolveSecurity(["apiKey", "bearer"], supabaseUrl);
1202
- return {
1203
- schemes: {
1204
- ...schemes,
1205
- ...security.schemes
1206
- },
1207
- requirements: security.requirements
1208
- };
1209
- }
1210
- //#endregion
1211
- //#region src/spec/events.ts
1212
- /**
1213
- * Whether a value is a `defineTopic()` result: a template string and the `sql`,
1214
- * `trigger` and `subscribe` methods. `better-supabase sql sync` and `spec` use
1215
- * the same check.
1216
- */
1217
- function isTopicLike(value) {
1218
- return isRecord(value) && typeof value["template"] === "string" && typeof value["sql"] === "function" && typeof value["trigger"] === "function" && typeof value["subscribe"] === "function";
1219
- }
1220
- /**
1221
- * The `defineTopic()` results in modules or arrays, for `events.topics`. A
1222
- * module's topics are keyed by export name; a topic in an array by its `name`.
1223
- * Other values are skipped, and a topic reached twice is kept once.
1224
- *
1225
- * ```ts
1226
- * import * as topics from "../realtime/topics";
1227
- * defineApi(betterSupabase, {
1228
- * info,
1229
- * events: { topics: topicsFrom(topics) },
1230
- * });
1231
- * ```
1232
- */
1233
- function topicsFrom(...sources) {
1234
- const topics = {};
1235
- const seen = /* @__PURE__ */ new Set();
1236
- for (const source of sources) {
1237
- const entries = Array.isArray(source) ? source.map((value) => [void 0, value]) : Object.entries(source);
1238
- for (const [key, value] of entries) {
1239
- if (!isTopicLike(value) || seen.has(value)) continue;
1240
- seen.add(value);
1241
- topics[key ?? value.name ?? value.template] = value;
1242
- }
1243
- }
1244
- return topics;
1245
- }
1246
- const OPEN = { type: "object" };
1247
- const DEFAULT_INTENTS = [
1248
- "insert",
1249
- "update",
1250
- "delete"
1251
- ];
1252
- /** An id safe for AsyncAPI channel, operation and component keys. */
1253
- function safeKey(value) {
1254
- return value.replaceAll(/[^A-Za-z0-9_-]/g, "_");
1255
- }
1256
- const keyPart = (value) => safeKey(pascal(value));
1257
- /** The CloudEvents attributes in HTTP binary mode (`ce-*` headers). */
1258
- const CLOUD_EVENT_TRAIT = {
1259
- description: "CloudEvents 1.0 attributes in HTTP binary mode.",
1260
- contentType: "application/json",
1261
- headers: {
1262
- type: "object",
1263
- properties: {
1264
- "ce-specversion": {
1265
- type: "string",
1266
- const: "1.0"
1267
- },
1268
- "ce-id": { type: "string" },
1269
- "ce-source": {
1270
- type: "string",
1271
- format: "uri-reference"
1272
- },
1273
- "ce-type": { type: "string" },
1274
- "ce-subject": { type: "string" },
1275
- "ce-time": {
1276
- type: "string",
1277
- format: "date-time"
1278
- },
1279
- "ce-dataschema": {
1280
- type: "string",
1281
- format: "uri"
1282
- },
1283
- "ce-partitionkey": { type: "string" }
1284
- }
1285
- }
1286
- };
1287
- function cloudEventHeaders(type, dataschema) {
1288
- return {
1289
- type: "object",
1290
- required: [
1291
- "ce-specversion",
1292
- "ce-id",
1293
- "ce-source",
1294
- "ce-type"
1295
- ],
1296
- properties: {
1297
- "ce-type": {
1298
- type: "string",
1299
- const: type
1300
- },
1301
- ...dataschema ? { "ce-dataschema": {
1302
- type: "string",
1303
- const: dataschema
1304
- } } : {}
1305
- }
1306
- };
1307
- }
1308
- function convert(schema, where, ctx) {
1309
- if (schema === true) return OPEN;
1310
- const converted = convertStandard(schema, "output");
1311
- if (converted) return converted.schema;
1312
- ctx.report({
1313
- code: "asyncapi-schema-opaque",
1314
- severity: "warning",
1315
- message: `${where}: the schema does not implement Standard JSON Schema; the payload is left open`
1316
- });
1317
- return OPEN;
1318
- }
1319
- function tableChannels(ctx, selection, channels, messages) {
1320
- if (selection === false) return;
1321
- const realtime = ctx.meta.realtime ?? {};
1322
- const keys = selection === true ? Object.keys(realtime) : selection;
1323
- for (const key of keys) {
1324
- const table = ctx.meta.tables[key];
1325
- const config = realtime[key];
1326
- if (!table || !config) {
1327
- ctx.report({
1328
- code: "asyncapi-table-unknown",
1329
- severity: "error",
1330
- message: `events.tables names "${key}", which is not in realtime.tables`
1331
- });
1332
- continue;
1333
- }
1334
- const id = `table${keyPart(key)}`;
1335
- const base = `bs:t:${table.schema}.${table.name}`;
1336
- const address = config.user ? `${base}:u:{userId}` : config.tenant ? `${base}:{tenant}` : base;
1337
- const messageId = `${id}Change`;
1338
- messages[messageId] = {
1339
- id: messageId,
1340
- name: "change",
1341
- title: `${key} changed`,
1342
- summary: `A row of ${table.schema}.${table.name} was inserted, updated or deleted. Clients refetch through row-level security.`,
1343
- contentType: "application/json",
1344
- payload: {
1345
- type: "object",
1346
- required: [
1347
- "schema",
1348
- "table",
1349
- "operation"
1350
- ],
1351
- properties: {
1352
- schema: {
1353
- type: "string",
1354
- const: table.schema
1355
- },
1356
- table: {
1357
- type: "string",
1358
- const: table.name
1359
- },
1360
- operation: {
1361
- type: "string",
1362
- enum: [
1363
- "INSERT",
1364
- "UPDATE",
1365
- "DELETE"
1366
- ]
1367
- }
1368
- }
1369
- },
1370
- extensions: { [`${ctx.prefix}event`]: "change" }
1371
- };
1372
- channels.push({
1373
- id,
1374
- address,
1375
- title: `${key} changes`,
1376
- protocol: "ws",
1377
- ...config.user ? { parameters: { userId: { description: "The signed-in user's id." } } } : config.tenant ? { parameters: { tenant: { description: `The row's \`${config.tenant}\` value.` } } } : {},
1378
- messages: [messageId],
1379
- operations: [{
1380
- id: `receive${keyPart(key)}Changes`,
1381
- action: "receive",
1382
- summary: `Change signals for ${key}`
1383
- }],
1384
- extensions: {
1385
- [`${ctx.prefix}table`]: `${table.schema}.${table.name}`,
1386
- [`${ctx.prefix}realtime-status`]: topicStatus({ private: true })
1387
- }
1388
- });
1389
- }
1390
- }
1391
- function topicChannels(ctx, topics, channels, messages) {
1392
- for (const [key, topic] of Object.entries(topics)) {
1393
- const id = `topic${keyPart(key)}`;
1394
- const ids = [];
1395
- const events = Object.entries(topic.events ?? {});
1396
- if (events.length === 0) {
1397
- ctx.report({
1398
- code: "asyncapi-topic-open",
1399
- severity: "info",
1400
- message: `Topic "${key}" lists no events; it is documented with one open message`
1401
- });
1402
- events.push(["*", true]);
1403
- }
1404
- for (const [event, schema] of events) {
1405
- const messageId = `${id}${event === "*" ? "Any" : keyPart(event)}`;
1406
- ids.push(messageId);
1407
- messages[messageId] = {
1408
- id: messageId,
1409
- ...event === "*" ? {} : { name: event },
1410
- title: event === "*" ? `${key} broadcast` : `${key} ${event}`,
1411
- contentType: "application/json",
1412
- payload: convert(schema, `topics.${key}.events.${event}`, ctx),
1413
- extensions: { [`${ctx.prefix}event`]: event }
1414
- };
1415
- }
1416
- if (topic.presence) {
1417
- const messageId = `${id}Presence`;
1418
- ids.push(messageId);
1419
- messages[messageId] = {
1420
- id: messageId,
1421
- name: "presence",
1422
- title: `${key} presence`,
1423
- contentType: "application/json",
1424
- payload: topic.presenceSchema ? convert(topic.presenceSchema, `topics.${key}.presence`, ctx) : OPEN,
1425
- extensions: { [`${ctx.prefix}event`]: "presence" }
1426
- };
1427
- }
1428
- const permission = topic.permission === void 0 ? void 0 : ctx.keyOf(topic.permission, `topics.${key}`);
1429
- const extra = permission === void 0 ? {} : { permission };
1430
- const operations = [{
1431
- id: `receive${keyPart(key)}`,
1432
- action: "receive",
1433
- ...topic.summary ? { summary: topic.summary } : {},
1434
- ...extra
1435
- }];
1436
- if (topic.send === true || topic.clientSend === true || topic.presence) operations.push({
1437
- id: `send${keyPart(key)}`,
1438
- action: "send",
1439
- ...extra
1440
- });
1441
- const params = [...topic.template.matchAll(/\{([^}]+)\}/g)].map((match) => match[1] ?? "");
1442
- channels.push({
1443
- id,
1444
- address: topic.template,
1445
- ...topic.summary ? { summary: topic.summary } : {},
1446
- ...topic.description ? { description: topic.description } : {},
1447
- title: topic.name ?? key,
1448
- ...params.length > 0 ? { parameters: Object.fromEntries(params.map((name) => [name, {}])) } : {},
1449
- protocol: "ws",
1450
- messages: ids,
1451
- operations,
1452
- extensions: {
1453
- [`${ctx.prefix}private`]: topic.private ?? true,
1454
- [`${ctx.prefix}realtime-status`]: topic.status ?? topicStatus(topic)
1455
- }
1456
- });
1457
- }
1458
- }
1459
- function withActor(schema) {
1460
- const properties = schema["properties"];
1461
- if (!isPlainObject(properties) || "actorId" in properties) return schema;
1462
- return {
1463
- ...schema,
1464
- properties: {
1465
- ...properties,
1466
- actorId: {
1467
- type: "string",
1468
- description: "Who caused the event."
1469
- }
1470
- }
1471
- };
1472
- }
1473
- function cloudEventChannel(ctx, input, channels, messages) {
1474
- const ids = [];
1475
- const add = (messageId, type, title, payload, table) => {
1476
- const { dataschema } = dataschemaOf(input, {
1477
- type,
1478
- ...table ? { table } : {}
1479
- });
1480
- ids.push(messageId);
1481
- messages[messageId] = {
1482
- id: messageId,
1483
- name: type,
1484
- title,
1485
- contentType: "application/json",
1486
- headers: cloudEventHeaders(type, dataschema),
1487
- payload,
1488
- traits: ["cloudEvent"],
1489
- extensions: {
1490
- [`${ctx.prefix}cloudevent-type`]: type,
1491
- ...dataschema ? { [`${ctx.prefix}dataschema`]: dataschema } : {}
1492
- }
1493
- };
1494
- };
1495
- const rows = input.rows ?? false;
1496
- const rowTables = rows === true ? Object.keys(ctx.meta.tables) : rows === false ? [] : rows;
1497
- const defs = rowTables.length > 0 ? tableSchemas(ctx.meta, ctx.json) : {};
1498
- for (const table of rowTables) {
1499
- if (!ctx.meta.tables[table]) {
1500
- ctx.report({
1501
- code: "asyncapi-table-unknown",
1502
- severity: "error",
1503
- message: `events.cloudEvents.rows names an unknown table "${table}"`
1504
- });
1505
- continue;
1506
- }
1507
- const component = ctx.served.get(table)?.components.Row;
1508
- const row = component ? schemaRef(component) : defs[`${table}Row`] ?? OPEN;
1509
- for (const intent of input.intents ?? DEFAULT_INTENTS) {
1510
- const last = ROW_EVENT_TYPES[intent].split(".").at(-1) ?? intent;
1511
- const type = input.typePrefix ? `${input.typePrefix}.row.${last}` : ROW_EVENT_TYPES[intent];
1512
- add(`row${keyPart(table)}${keyPart(last)}`, type, `${table} ${last}`, {
1513
- type: "object",
1514
- required: ["table", "row"],
1515
- properties: {
1516
- table: {
1517
- type: "string",
1518
- const: table
1519
- },
1520
- row,
1521
- actorId: { type: "string" }
1522
- }
1523
- }, table);
1524
- }
1525
- }
1526
- for (const [event, schema] of Object.entries(input.blocks ?? {})) {
1527
- if (schema === void 0) continue;
1528
- const type = `${input.typePrefix ?? "dev.better-supabase"}.${event}`;
1529
- add(`block${keyPart(event)}`, type, event, withActor(convert(schema, `events.cloudEvents.blocks.${event}`, ctx)));
1530
- }
1531
- if (ids.length === 0) return false;
1532
- channels.push({
1533
- id: "cloudEvents",
1534
- address: input.address ?? "events",
1535
- title: "CloudEvents",
1536
- description: `CloudEvents from \`${input.source}\`, sent to the event sink.`,
1537
- protocol: "http",
1538
- messages: ids,
1539
- operations: [{
1540
- id: "sendCloudEvents",
1541
- action: "send"
1542
- }]
1543
- });
1544
- return true;
1545
- }
1546
- /**
1547
- * The built channels and messages first, then the app's own (which win on an
1548
- * id), and the workflows with every `WorkflowSource` run on `operations`.
1549
- */
1550
- function eventParts(options, ctx, operations) {
1551
- const built = buildEvents(options.events, ctx);
1552
- return {
1553
- channels: [...built.channels, ...options.channels ?? []],
1554
- messages: {
1555
- ...built.messages,
1556
- ...options.messages
1557
- },
1558
- ...Object.keys(built.messageTraits).length > 0 ? { messageTraits: built.messageTraits } : {},
1559
- workflows: (options.workflows ?? []).flatMap((workflow) => typeof workflow === "function" ? workflow(operations) : [workflow])
1560
- };
1561
- }
1562
- /** Channels and messages from the realtime tables, topics and CloudEvents. */
1563
- function buildEvents(events, ctx) {
1564
- const channels = [];
1565
- const messages = {};
1566
- const messageTraits = {};
1567
- if (!events) return {
1568
- channels,
1569
- messages,
1570
- messageTraits
1571
- };
1572
- tableChannels(ctx, events.tables ?? true, channels, messages);
1573
- topicChannels(ctx, events.topics ?? {}, channels, messages);
1574
- if (events.cloudEvents && cloudEventChannel(ctx, events.cloudEvents, channels, messages)) messageTraits["cloudEvent"] = CLOUD_EVENT_TRAIT;
1575
- return {
1576
- channels,
1577
- messages,
1578
- messageTraits
1579
- };
1580
- }
1581
- //#endregion
1582
- //#region src/spec/build.ts
1583
- const READ_METHODS = /* @__PURE__ */ new Set([
1584
- "get",
1585
- "head",
1586
- "options",
1587
- "query"
1588
- ]);
1589
- const modelCache = /* @__PURE__ */ new WeakMap();
1590
- const NO_PLUGINS = [];
1591
- /**
1592
- * Builds the version-neutral API model once per metadata, plugin list and
1593
- * options object. Formats lower it to each version; `defineApi` wraps it.
1594
- */
1595
- function buildApiModel(source, options) {
1596
- const plugins = source.plugins ?? NO_PLUGINS;
1597
- let byPlugins = modelCache.get(source.meta);
1598
- if (!byPlugins) {
1599
- byPlugins = /* @__PURE__ */ new WeakMap();
1600
- modelCache.set(source.meta, byPlugins);
1601
- }
1602
- let byOptions = byPlugins.get(plugins);
1603
- if (!byOptions) {
1604
- byOptions = /* @__PURE__ */ new WeakMap();
1605
- byPlugins.set(plugins, byOptions);
1606
- }
1607
- let built = byOptions.get(options);
1608
- if (!built) {
1609
- built = build(source.meta, plugins, options);
1610
- byOptions.set(options, built);
1611
- }
1612
- return built;
1613
- }
1614
- function build(meta, plugins, options) {
1615
- const ctx = createBuildContext(meta, options);
1616
- for (const [key, input] of Object.entries(options.resources ?? {})) buildResource(ctx, key, input);
1617
- for (const [index, route] of (options.routes ?? []).entries()) buildRoute(ctx, route, index);
1618
- if (options.dataApi) buildDataApi(ctx, options.dataApi);
1619
- const security = withDataApiSchemes(buildSecurity(ctx), ctx.operations, options.supabaseUrl);
1620
- applyPlugins(ctx, plugins);
1621
- validateOperations(ctx);
1622
- return finalizeModel(ctx, security);
1623
- }
1624
- function buildRoute(ctx, route, index) {
1625
- const { options, base, globalErrors, operations, prefix, addTag, keyOf, schemaOf, objectParameters, usedErrors } = ctx;
1626
- const method = route.method.toLowerCase();
1627
- if (!isMethod(method)) throw new TypeError(`better-supabase/spec: routes[${index}] has an unknown method "${route.method}"`);
1628
- const path = `${base}${route.path}`;
1629
- const defaultId = `${method}${route.path.split("/").filter(Boolean).map((segment) => segment.replaceAll(/[{}]/g, "")).map(pascal).join("")}`;
1630
- const source = { kind: "route" };
1631
- const id = route.operationId ?? options.operationId?.({
1632
- source,
1633
- method,
1634
- path,
1635
- defaultId
1636
- }) ?? defaultId;
1637
- const declared = route.params ? objectParameters(route.params, "path", `${id} params`) : [];
1638
- const parameters = [];
1639
- for (const [, param] of path.matchAll(/\{(\w+)\}/g)) parameters.push(declared.find((entry) => entry.name === param) ?? {
1640
- name: param,
1641
- in: "path",
1642
- required: true,
1643
- schema: { type: "string" }
1644
- });
1645
- if (route.query) parameters.push(...objectParameters(route.query, "query", `${id} query`));
1646
- const permission = route.permission === void 0 ? void 0 : keyOf(route.permission, `routes[${index}]`);
1647
- const secured = route.security === void 0 || route.security.length > 0;
1648
- const status = String(route.status ?? (route.output || route.stream ? 200 : 204));
1649
- const success = route.stream ? {
1650
- description: route.summary ?? "A stream of events.",
1651
- content: { [route.stream.contentType ?? "text/event-stream"]: { itemSchema: schemaOf(route.stream.item, "output", "item", id) } }
1652
- } : route.output ? jsonResponse(schemaOf(route.output, "output", "output", id), route.summary ?? "OK.") : { description: route.summary ?? "Done." };
1653
- const routeTags = [...route.tags ?? []];
1654
- for (const tag of routeTags) addTag(tag);
1655
- operations.push({
1656
- id,
1657
- method,
1658
- path,
1659
- tags: routeTags,
1660
- source,
1661
- ...route.summary ? { summary: route.summary } : {},
1662
- ...route.description ? { description: route.description } : {},
1663
- ...route.deprecated ? { deprecated: true } : {},
1664
- parameters,
1665
- ...route.input ? { requestBody: {
1666
- required: true,
1667
- content: jsonContent(schemaOf(route.input, "input", "input", id))
1668
- } } : {},
1669
- responses: {
1670
- [status]: success,
1671
- ...usedErrors(route.errors ?? globalErrors, [...route.input || route.query ? [400, 422] : [], ...secured ? [401, 403] : []], permission !== void 0)
1672
- },
1673
- ...route.security ? { security: route.security } : {},
1674
- ...permission === void 0 ? {} : { permission },
1675
- extensions: permission === void 0 ? {} : { [`${prefix}permission`]: permission },
1676
- ...route.extend ? { extend: route.extend } : {}
1677
- });
1678
- }
1679
- function buildSecurity(ctx) {
1680
- const { options, operations } = ctx;
1681
- const oauthScopes = {};
1682
- if (options.permissionScopes === "keys") {
1683
- for (const operation of operations) if (operation.permission) oauthScopes[operation.permission] = `Permission ${operation.permission}.`;
1684
- }
1685
- const security = resolveSecurity(options.security ?? ["bearer"], options.supabaseUrl, oauthScopes);
1686
- if (options.permissionScopes === "keys") for (const operation of operations) {
1687
- const key = operation.permission;
1688
- if (!key || operation.security?.length === 0) continue;
1689
- operation.security = (operation.security ?? security.requirements).map((requirement) => {
1690
- const scopes = requirement[OAUTH_SCHEME];
1691
- return scopes ? {
1692
- ...requirement,
1693
- [OAUTH_SCHEME]: [...scopes, key]
1694
- } : requirement;
1695
- });
1696
- }
1697
- return security;
1698
- }
1699
- function applyPlugins(ctx, plugins) {
1700
- const { meta, prefix, served, schemas, report } = ctx;
1701
- const describe = describeApi(meta, prefix, served, schemas);
1702
- for (const plugin of plugins) {
1703
- if (!plugin.describe) continue;
1704
- try {
1705
- plugin.describe(describe);
1706
- } catch (error) {
1707
- report({
1708
- code: "plugin-describe-failed",
1709
- severity: "warning",
1710
- message: `The ${plugin.name} plugin's describe() threw: ${error instanceof Error ? error.message : String(error)}`
1711
- });
1712
- }
1713
- }
1714
- }
1715
- /** Reports writes without a permission and duplicate operation ids. */
1716
- function validateOperations(ctx) {
1717
- const { options, operations, report } = ctx;
1718
- if (options.requirePermissions) for (const operation of operations) {
1719
- if (operation.source.kind === "data-api") continue;
1720
- if ((operation.source.kind === "resource" ? operation.source.operation !== "list" && operation.source.operation !== "get" : !READ_METHODS.has(operation.method)) && operation.permission === void 0) report({
1721
- code: "permission-missing",
1722
- severity: "error",
1723
- message: `${operation.id} writes but declares no permission`,
1724
- pointer: `/operations/${pointerToken(operation.id)}`
1725
- });
1726
- }
1727
- const seen = /* @__PURE__ */ new Set();
1728
- for (const operation of operations) {
1729
- if (seen.has(operation.id)) report({
1730
- code: "operation-id-duplicate",
1731
- severity: "error",
1732
- message: `Two operations have the id "${operation.id}"`,
1733
- pointer: `/operations/${pointerToken(operation.id)}`
1734
- });
1735
- seen.add(operation.id);
1736
- }
1737
- }
1738
- function finalizeModel(ctx, security) {
1739
- const { meta, options, prefix, served, keyOf, report, schemas, operations, tags, responses, diagnostics } = ctx;
1740
- const { enrich } = options;
1741
- const finalSchemas = {};
1742
- for (const [name, schema] of Object.entries(schemas)) finalSchemas[name] = enrich?.schema?.(schema, { name }) ?? schema;
1743
- const finalOperations = operations.map((operation) => enrich?.operation?.(operation) ?? operation);
1744
- const { messageTraits, ...parts } = eventParts(options, {
1745
- meta,
1746
- json: options.json ?? {},
1747
- prefix,
1748
- served,
1749
- keyOf,
1750
- report
1751
- }, finalOperations);
1752
- const messages = {};
1753
- for (const [id, message] of Object.entries(parts.messages)) messages[id] = enrich?.message?.(message, { id }) ?? message;
1754
- return {
1755
- model: {
1756
- info: options.info,
1757
- ...options.self ? { self: options.self } : {},
1758
- servers: options.servers ?? [],
1759
- tags,
1760
- operations: finalOperations,
1761
- schemas: finalSchemas,
1762
- responses,
1763
- securitySchemes: security.schemes,
1764
- security: security.requirements,
1765
- ...options.securityProfileRequirements ? { securityProfileRequirements: options.securityProfileRequirements } : {},
1766
- channels: parts.channels.map((channel) => enrich?.channel?.(channel) ?? channel),
1767
- messages,
1768
- ...messageTraits ? { messageTraits } : {},
1769
- webhooks: options.webhooks ?? [],
1770
- workflows: parts.workflows.map((workflow) => enrich?.workflow?.(workflow) ?? workflow),
1771
- fragments: options.fragments ?? [],
1772
- ...options.realtimeUrl ? { realtimeUrl: options.realtimeUrl } : {},
1773
- extensionPrefix: prefix
1774
- },
1775
- diagnostics
1776
- };
1777
- }
1778
- function describeApi(meta, prefix, served, schemas) {
1779
- const columnSchemas = (table, column) => {
1780
- const entry = served.get(table);
1781
- if (!entry) return [];
1782
- return [
1783
- "Row",
1784
- "Insert",
1785
- "Update"
1786
- ].flatMap((variant) => {
1787
- const name = entry.components[variant];
1788
- const schema = name ? schemas[name] : void 0;
1789
- const properties = schema?.["properties"];
1790
- if (!schema || !isPlainObject(properties)) return [];
1791
- const property = properties[column];
1792
- if (!isPlainObject(property)) return [];
1793
- return [{
1794
- variant,
1795
- schema,
1796
- properties,
1797
- property
1798
- }];
1799
- });
1800
- };
1801
- const replace = (schema, properties, column, property) => {
1802
- schema["properties"] = {
1803
- ...properties,
1804
- [column]: property
1805
- };
1806
- };
1807
- return {
1808
- schema: meta,
1809
- extensionPrefix: prefix,
1810
- resources: [...served.values()].map((entry) => ({
1811
- table: entry.table,
1812
- operations: entry.operations.map((operation) => operation.source.kind === "action" ? operation.source.action : operation.source.kind === "resource" ? operation.source.operation : operation.id)
1813
- })),
1814
- addParameter(table, parameter, names) {
1815
- for (const operation of served.get(table)?.operations ?? []) {
1816
- const name = operation.source.kind === "action" ? operation.source.action : operation.source.kind === "resource" ? operation.source.operation : operation.id;
1817
- if (names && !names.includes(name)) continue;
1818
- if (operation.parameters.some((entry) => entry.name === parameter.name && entry.in === parameter.in)) continue;
1819
- operation.parameters.push({ ...parameter });
1820
- }
1821
- },
1822
- markReadOnly(table, column, description) {
1823
- for (const { variant, schema, properties, property } of columnSchemas(table, column)) {
1824
- replace(schema, properties, column, {
1825
- ...property,
1826
- readOnly: true,
1827
- ...description && property["description"] === void 0 ? { description } : {}
1828
- });
1829
- const required = schema["required"];
1830
- if (variant !== "Row" && Array.isArray(required)) schema["required"] = required.filter((name) => name !== column);
1831
- }
1832
- },
1833
- describeColumn(table, column, patch) {
1834
- for (const { schema, properties, property } of columnSchemas(table, column)) replace(schema, properties, column, mergeJson(property, patch));
1835
- }
1836
- };
1837
- }
1838
- //#endregion
1839
- export { DEFAULT_ERRORS as a, pascal as c, topicsFrom as i, mergeJson as l, CLOUD_EVENT_TRAIT as n, PROBLEM_SCHEMA as o, safeKey as r, convertStandard as s, buildApiModel as t, pointerToken as u };