better-supabase 0.7.1 → 0.9.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 (1377) hide show
  1. package/README.md +146 -81
  2. package/bin/better-supabase.js +14 -2
  3. package/dist/access-sql-DUSSMaC3.js +201 -0
  4. package/dist/actor-BAhb-d1S.d.ts +104 -0
  5. package/dist/actor-KHDOKGb1.js +151 -0
  6. package/dist/adapter-CEjmtazZ.js +1984 -0
  7. package/dist/agents-BCNhIxVZ.d.ts +111 -0
  8. package/dist/ai-cache-Dps7aRu1.d.ts +70 -0
  9. package/dist/ai-cache-zeUL94pB.js +84 -0
  10. package/dist/ai-chat-3GBSlFR4.d.ts +608 -0
  11. package/dist/ai-files-D2_9YLjF.js +331 -0
  12. package/dist/ai-message-DfaP8sis.js +14 -0
  13. package/dist/ai-sdk/agents/index.d.ts +154 -10
  14. package/dist/ai-sdk/agents/index.js +172 -17
  15. package/dist/ai-sdk/batches/index.d.ts +4 -4
  16. package/dist/ai-sdk/batches/index.js +5 -5
  17. package/dist/ai-sdk/cache/index.d.ts +2 -2
  18. package/dist/ai-sdk/cache/index.js +2 -2
  19. package/dist/ai-sdk/chat/index.d.ts +1 -1
  20. package/dist/ai-sdk/chat/index.js +10 -21
  21. package/dist/ai-sdk/embeddings/index.d.ts +3 -3
  22. package/dist/ai-sdk/embeddings/index.js +1 -2
  23. package/dist/ai-sdk/files/index.d.ts +3 -3
  24. package/dist/ai-sdk/files/index.js +4 -4
  25. package/dist/ai-sdk/index.d.ts +38 -9
  26. package/dist/ai-sdk/index.js +5 -3
  27. package/dist/ai-sdk/mcp/index.d.ts +43 -6
  28. package/dist/ai-sdk/mcp/index.js +37 -8
  29. package/dist/ai-sdk/memory/index.d.ts +5 -2
  30. package/dist/ai-sdk/memory/index.js +2 -2
  31. package/dist/ai-sdk/react/index.js +1 -2
  32. package/dist/ai-sdk/workflow/index.d.ts +7 -6
  33. package/dist/ai-sdk/workflow/index.js +15 -26
  34. package/dist/ai-tasks-Ih5oHfyj.d.ts +157 -0
  35. package/dist/announcements-BHCzraR6.js +128 -0
  36. package/dist/api-CFjuYKFY.js +680 -0
  37. package/dist/api-TG3jE5aO.d.ts +411 -0
  38. package/dist/api-keys-BEQatEUW.js +318 -0
  39. package/dist/api-keys-BYoGCM9p.d.ts +205 -0
  40. package/dist/app-tables-BGl5_U2x.js +584 -0
  41. package/dist/approvals-a2KmioBh.d.ts +124 -0
  42. package/dist/arazzo/index.d.ts +255 -0
  43. package/dist/arazzo/index.js +622 -0
  44. package/dist/assistant-Bf2cA6RO.d.ts +148 -0
  45. package/dist/astro/index.d.ts +9 -8
  46. package/dist/astro/index.js +12 -9
  47. package/dist/asyncapi/index.d.ts +103 -0
  48. package/dist/asyncapi/index.js +569 -0
  49. package/dist/attachments-DAj2Yp95.js +264 -0
  50. package/dist/attributes-D4mA7WhI.js +38 -0
  51. package/dist/audit-log-BMMuGPdP.js +786 -0
  52. package/dist/auth-CdBKt0CS.js +20 -0
  53. package/dist/auth-reply-DUCwb8YO.js +31 -0
  54. package/dist/auth-reply-Dj124sbX.d.ts +11 -0
  55. package/dist/authorization-DpRfs6Wx.d.ts +1412 -0
  56. package/dist/authorization-hooks-DkmrnDX7.d.ts +214 -0
  57. package/dist/authorizer-DH7DjkL3.js +126 -0
  58. package/dist/authorizer-eiOjo-3l.d.ts +73 -0
  59. package/dist/base64-BmeCBgGo.js +42 -0
  60. package/dist/batch-limit-DKVQDz4o.js +5 -0
  61. package/dist/before-route-B98js9m_.js +30 -0
  62. package/dist/better-result/index.d.ts +118 -0
  63. package/dist/better-result/index.js +64 -0
  64. package/dist/bind-a7sUgvf4.d.ts +70 -0
  65. package/dist/block-env-CBd_SoL5.js +29 -0
  66. package/dist/block-env-Dxl7rsI0.d.ts +10 -0
  67. package/dist/block-events-DD9Q_NUz.js +96 -0
  68. package/dist/block-fields-5UA84ZUg.d.ts +55 -0
  69. package/dist/block-fields-ffD6Gxe4.js +139 -0
  70. package/dist/block-helpers-C86hPEjI.d.ts +37 -0
  71. package/dist/block-helpers-CfG_MvDR.js +264 -0
  72. package/dist/block-hooks-BLPWD3Jt.d.ts +107 -0
  73. package/dist/block-hooks-BsXncUlZ.js +114 -0
  74. package/dist/block-transport-DaGGXjIw.d.ts +70 -0
  75. package/dist/block-transport-G4t1umrR.js +85 -0
  76. package/dist/blocks/access-requests/index.d.ts +98 -0
  77. package/dist/blocks/access-requests/index.js +99 -0
  78. package/dist/blocks/agents/index.d.ts +21 -3
  79. package/dist/blocks/agents/index.js +65 -18
  80. package/dist/blocks/ai-cache/index.d.ts +8 -3
  81. package/dist/blocks/ai-cache/index.js +15 -3
  82. package/dist/blocks/ai-chat/index.d.ts +28 -4
  83. package/dist/blocks/ai-chat/index.js +31 -5
  84. package/dist/blocks/ai-chat/react/index.d.ts +12 -46
  85. package/dist/blocks/ai-chat/react/index.js +43 -335
  86. package/dist/blocks/ai-chat/solid/index.d.ts +34 -0
  87. package/dist/blocks/ai-chat/solid/index.js +41 -0
  88. package/dist/blocks/ai-chat/svelte/index.d.ts +34 -0
  89. package/dist/blocks/ai-chat/svelte/index.js +41 -0
  90. package/dist/blocks/ai-chat/vue/index.d.ts +34 -0
  91. package/dist/blocks/ai-chat/vue/index.js +41 -0
  92. package/dist/blocks/ai-files/index.d.ts +11 -4
  93. package/dist/blocks/ai-files/index.js +16 -3
  94. package/dist/blocks/ai-providers/index.d.ts +18 -3
  95. package/dist/blocks/ai-providers/index.js +41 -15
  96. package/dist/blocks/ai-tasks/index.d.ts +10 -3
  97. package/dist/blocks/ai-tasks/index.js +71 -21
  98. package/dist/blocks/announcements/index.d.ts +18 -3
  99. package/dist/blocks/announcements/index.js +27 -3
  100. package/dist/blocks/announcements/react/index.d.ts +4 -14
  101. package/dist/blocks/announcements/react/index.js +22 -70
  102. package/dist/blocks/announcements/solid/index.d.ts +13 -0
  103. package/dist/blocks/announcements/solid/index.js +14 -0
  104. package/dist/blocks/announcements/svelte/index.d.ts +13 -0
  105. package/dist/blocks/announcements/svelte/index.js +14 -0
  106. package/dist/blocks/announcements/vue/index.d.ts +13 -0
  107. package/dist/blocks/announcements/vue/index.js +14 -0
  108. package/dist/blocks/api-keys/index.d.ts +24 -7
  109. package/dist/blocks/api-keys/index.js +30 -295
  110. package/dist/blocks/api-keys/react/index.d.ts +29 -0
  111. package/dist/blocks/api-keys/react/index.js +43 -0
  112. package/dist/blocks/api-keys/react/server.d.ts +7 -0
  113. package/dist/blocks/api-keys/react/server.js +7 -0
  114. package/dist/blocks/api-keys/solid/index.d.ts +13 -0
  115. package/dist/blocks/api-keys/solid/index.js +14 -0
  116. package/dist/blocks/api-keys/svelte/index.d.ts +13 -0
  117. package/dist/blocks/api-keys/svelte/index.js +14 -0
  118. package/dist/blocks/api-keys/vue/index.d.ts +13 -0
  119. package/dist/blocks/api-keys/vue/index.js +14 -0
  120. package/dist/blocks/approvals/index.d.ts +22 -0
  121. package/dist/blocks/approvals/index.js +189 -0
  122. package/dist/blocks/attachments/index.d.ts +18 -223
  123. package/dist/blocks/attachments/index.js +26 -233
  124. package/dist/blocks/audit/index.d.ts +72 -354
  125. package/dist/blocks/audit/index.js +91 -695
  126. package/dist/blocks/audit/react/index.d.ts +26 -0
  127. package/dist/blocks/audit/react/index.js +44 -0
  128. package/dist/blocks/audit/react/server.d.ts +7 -0
  129. package/dist/blocks/audit/react/server.js +7 -0
  130. package/dist/blocks/audit/solid/index.d.ts +13 -0
  131. package/dist/blocks/audit/solid/index.js +14 -0
  132. package/dist/blocks/audit/svelte/index.d.ts +13 -0
  133. package/dist/blocks/audit/svelte/index.js +14 -0
  134. package/dist/blocks/audit/vue/index.d.ts +13 -0
  135. package/dist/blocks/audit/vue/index.js +14 -0
  136. package/dist/blocks/billing/index.d.ts +40 -13
  137. package/dist/blocks/billing/index.js +49 -18
  138. package/dist/blocks/billing/react/index.d.ts +34 -0
  139. package/dist/blocks/billing/react/index.js +36 -0
  140. package/dist/blocks/billing/react/server.d.ts +7 -0
  141. package/dist/blocks/billing/react/server.js +7 -0
  142. package/dist/blocks/billing/solid/index.d.ts +15 -0
  143. package/dist/blocks/billing/solid/index.js +14 -0
  144. package/dist/blocks/billing/svelte/index.d.ts +15 -0
  145. package/dist/blocks/billing/svelte/index.js +14 -0
  146. package/dist/blocks/billing/vue/index.d.ts +15 -0
  147. package/dist/blocks/billing/vue/index.js +14 -0
  148. package/dist/blocks/bookings/index.d.ts +36 -0
  149. package/dist/blocks/bookings/index.js +28 -0
  150. package/dist/blocks/bookings/react/index.d.ts +31 -0
  151. package/dist/blocks/bookings/react/index.js +59 -0
  152. package/dist/blocks/bookings/react/server.d.ts +6 -0
  153. package/dist/blocks/bookings/react/server.js +7 -0
  154. package/dist/blocks/bookings/solid/index.d.ts +13 -0
  155. package/dist/blocks/bookings/solid/index.js +14 -0
  156. package/dist/blocks/bookings/svelte/index.d.ts +13 -0
  157. package/dist/blocks/bookings/svelte/index.js +14 -0
  158. package/dist/blocks/bookings/vue/index.d.ts +13 -0
  159. package/dist/blocks/bookings/vue/index.js +14 -0
  160. package/dist/blocks/bulk/index.d.ts +142 -0
  161. package/dist/blocks/bulk/index.js +154 -0
  162. package/dist/blocks/calendar/index.d.ts +20 -0
  163. package/dist/blocks/calendar/index.js +33 -0
  164. package/dist/blocks/calendar/react/index.d.ts +26 -0
  165. package/dist/blocks/calendar/react/index.js +58 -0
  166. package/dist/blocks/calendar/react/server.d.ts +6 -0
  167. package/dist/blocks/calendar/react/server.js +7 -0
  168. package/dist/blocks/calendar/solid/index.d.ts +13 -0
  169. package/dist/blocks/calendar/solid/index.js +14 -0
  170. package/dist/blocks/calendar/svelte/index.d.ts +13 -0
  171. package/dist/blocks/calendar/svelte/index.js +14 -0
  172. package/dist/blocks/calendar/vue/index.d.ts +13 -0
  173. package/dist/blocks/calendar/vue/index.js +14 -0
  174. package/dist/blocks/catalog/index.d.ts +224 -0
  175. package/dist/blocks/catalog/index.js +292 -0
  176. package/dist/blocks/collections/index.d.ts +184 -0
  177. package/dist/blocks/collections/index.js +208 -0
  178. package/dist/blocks/comments/index.d.ts +19 -166
  179. package/dist/blocks/comments/index.js +26 -206
  180. package/dist/blocks/comments/react/index.d.ts +27 -0
  181. package/dist/blocks/comments/react/index.js +45 -0
  182. package/dist/blocks/comments/react/server.d.ts +7 -0
  183. package/dist/blocks/comments/react/server.js +7 -0
  184. package/dist/blocks/comments/solid/index.d.ts +13 -0
  185. package/dist/blocks/comments/solid/index.js +14 -0
  186. package/dist/blocks/comments/svelte/index.d.ts +13 -0
  187. package/dist/blocks/comments/svelte/index.js +14 -0
  188. package/dist/blocks/comments/vue/index.d.ts +13 -0
  189. package/dist/blocks/comments/vue/index.js +14 -0
  190. package/dist/blocks/connectors/index.d.ts +21 -3
  191. package/dist/blocks/connectors/index.js +54 -18
  192. package/dist/blocks/custom-fields/index.d.ts +62 -0
  193. package/dist/blocks/custom-fields/index.js +85 -0
  194. package/dist/blocks/data-lifecycle/index.d.ts +119 -10
  195. package/dist/blocks/data-lifecycle/index.js +103 -12
  196. package/dist/blocks/deals/index.d.ts +262 -0
  197. package/dist/blocks/deals/index.js +380 -0
  198. package/dist/blocks/documents/index.d.ts +17 -0
  199. package/dist/blocks/documents/index.js +118 -0
  200. package/dist/blocks/domains/index.d.ts +117 -0
  201. package/dist/blocks/domains/index.js +118 -0
  202. package/dist/blocks/drive/index.d.ts +296 -0
  203. package/dist/blocks/drive/index.js +483 -0
  204. package/dist/blocks/employees/index.d.ts +205 -0
  205. package/dist/blocks/employees/index.js +289 -0
  206. package/dist/blocks/engagements/index.d.ts +125 -0
  207. package/dist/blocks/engagements/index.js +143 -0
  208. package/dist/blocks/entitlements/index.d.ts +40 -4
  209. package/dist/blocks/entitlements/index.js +14 -24
  210. package/dist/blocks/entitlements/react/index.d.ts +24 -0
  211. package/dist/blocks/entitlements/react/index.js +35 -0
  212. package/dist/blocks/entitlements/react/server.d.ts +6 -0
  213. package/dist/blocks/entitlements/react/server.js +7 -0
  214. package/dist/blocks/entitlements/solid/index.d.ts +13 -0
  215. package/dist/blocks/entitlements/solid/index.js +14 -0
  216. package/dist/blocks/entitlements/svelte/index.d.ts +13 -0
  217. package/dist/blocks/entitlements/svelte/index.js +14 -0
  218. package/dist/blocks/entitlements/vue/index.d.ts +13 -0
  219. package/dist/blocks/entitlements/vue/index.js +14 -0
  220. package/dist/blocks/flags/index.d.ts +61 -187
  221. package/dist/blocks/flags/index.js +65 -252
  222. package/dist/blocks/forms/index.d.ts +302 -0
  223. package/dist/blocks/forms/index.js +341 -0
  224. package/dist/blocks/forms/react/index.d.ts +16 -0
  225. package/dist/blocks/forms/react/index.js +25 -0
  226. package/dist/blocks/forms/react/server.d.ts +6 -0
  227. package/dist/blocks/forms/react/server.js +7 -0
  228. package/dist/blocks/forms/solid/index.d.ts +13 -0
  229. package/dist/blocks/forms/solid/index.js +14 -0
  230. package/dist/blocks/forms/svelte/index.d.ts +13 -0
  231. package/dist/blocks/forms/svelte/index.js +14 -0
  232. package/dist/blocks/forms/vue/index.d.ts +13 -0
  233. package/dist/blocks/forms/vue/index.js +14 -0
  234. package/dist/blocks/hiring/index.d.ts +154 -0
  235. package/dist/blocks/hiring/index.js +180 -0
  236. package/dist/blocks/identities/index.d.ts +83 -0
  237. package/dist/blocks/identities/index.js +103 -0
  238. package/dist/blocks/imports/index.d.ts +91 -0
  239. package/dist/blocks/imports/index.js +123 -0
  240. package/dist/blocks/inbox/index.d.ts +22 -3
  241. package/dist/blocks/inbox/index.js +78 -6
  242. package/dist/blocks/inbox/react/index.d.ts +3 -2
  243. package/dist/blocks/inbox/react/index.js +55 -199
  244. package/dist/blocks/inbox/react/server.d.ts +2 -1
  245. package/dist/blocks/inbox/solid/index.d.ts +27 -0
  246. package/dist/blocks/inbox/solid/index.js +32 -0
  247. package/dist/blocks/inbox/svelte/index.d.ts +27 -0
  248. package/dist/blocks/inbox/svelte/index.js +32 -0
  249. package/dist/blocks/inbox/vue/index.d.ts +27 -0
  250. package/dist/blocks/inbox/vue/index.js +32 -0
  251. package/dist/blocks/index.d.ts +9 -64
  252. package/dist/blocks/index.js +193 -57
  253. package/dist/blocks/inventory/index.d.ts +181 -0
  254. package/dist/blocks/inventory/index.js +219 -0
  255. package/dist/blocks/invoices/index.d.ts +154 -0
  256. package/dist/blocks/invoices/index.js +216 -0
  257. package/dist/blocks/jobs/index.d.ts +188 -49
  258. package/dist/blocks/jobs/index.js +698 -527
  259. package/dist/blocks/knowledge/index.d.ts +10 -3
  260. package/dist/blocks/knowledge/index.js +17 -3
  261. package/dist/blocks/leave/index.d.ts +241 -0
  262. package/dist/blocks/leave/index.js +209 -0
  263. package/dist/blocks/memory/index.d.ts +9 -4
  264. package/dist/blocks/memory/index.js +49 -12
  265. package/dist/blocks/metrics/index.d.ts +174 -0
  266. package/dist/blocks/metrics/index.js +217 -0
  267. package/dist/blocks/mfa/index.d.ts +7 -0
  268. package/dist/blocks/mfa/index.js +12 -0
  269. package/dist/blocks/mfa/react/index.d.ts +30 -0
  270. package/dist/blocks/mfa/react/index.js +45 -0
  271. package/dist/blocks/mfa/react/server.d.ts +9 -0
  272. package/dist/blocks/mfa/react/server.js +12 -0
  273. package/dist/blocks/mfa/solid/index.d.ts +20 -0
  274. package/dist/blocks/mfa/solid/index.js +23 -0
  275. package/dist/blocks/mfa/svelte/index.d.ts +20 -0
  276. package/dist/blocks/mfa/svelte/index.js +23 -0
  277. package/dist/blocks/mfa/vue/index.d.ts +20 -0
  278. package/dist/blocks/mfa/vue/index.js +23 -0
  279. package/dist/blocks/notifications/index.d.ts +345 -26
  280. package/dist/blocks/notifications/index.js +744 -120
  281. package/dist/blocks/notifications/react/index.d.ts +7 -32
  282. package/dist/blocks/notifications/react/index.js +23 -49
  283. package/dist/blocks/notifications/react/server.d.ts +2 -1
  284. package/dist/blocks/notifications/solid/index.d.ts +13 -0
  285. package/dist/blocks/notifications/solid/index.js +14 -0
  286. package/dist/blocks/notifications/svelte/index.d.ts +13 -0
  287. package/dist/blocks/notifications/svelte/index.js +14 -0
  288. package/dist/blocks/notifications/vue/index.d.ts +13 -0
  289. package/dist/blocks/notifications/vue/index.js +14 -0
  290. package/dist/blocks/number-sequences/index.d.ts +39 -0
  291. package/dist/blocks/number-sequences/index.js +38 -0
  292. package/dist/blocks/oauth-server/index.d.ts +228 -0
  293. package/dist/blocks/oauth-server/index.js +309 -0
  294. package/dist/blocks/onboarding/index.d.ts +8 -3
  295. package/dist/blocks/onboarding/index.js +17 -63
  296. package/dist/blocks/onboarding/react/index.d.ts +3 -12
  297. package/dist/blocks/onboarding/react/index.js +18 -60
  298. package/dist/blocks/onboarding/react/server.d.ts +2 -2
  299. package/dist/blocks/onboarding/react/server.js +2 -2
  300. package/dist/blocks/onboarding/solid/index.d.ts +13 -0
  301. package/dist/blocks/onboarding/solid/index.js +14 -0
  302. package/dist/blocks/onboarding/svelte/index.d.ts +13 -0
  303. package/dist/blocks/onboarding/svelte/index.js +14 -0
  304. package/dist/blocks/onboarding/vue/index.d.ts +13 -0
  305. package/dist/blocks/onboarding/vue/index.js +14 -0
  306. package/dist/blocks/orders/index.d.ts +264 -0
  307. package/dist/blocks/orders/index.js +589 -0
  308. package/dist/blocks/organizations/index.d.ts +31 -238
  309. package/dist/blocks/organizations/index.js +49 -399
  310. package/dist/blocks/organizations/react/index.d.ts +108 -0
  311. package/dist/blocks/organizations/react/index.js +113 -0
  312. package/dist/blocks/organizations/react/server.d.ts +11 -0
  313. package/dist/blocks/organizations/react/server.js +15 -0
  314. package/dist/blocks/organizations/solid/index.d.ts +34 -0
  315. package/dist/blocks/organizations/solid/index.js +32 -0
  316. package/dist/blocks/organizations/svelte/index.d.ts +34 -0
  317. package/dist/blocks/organizations/svelte/index.js +32 -0
  318. package/dist/blocks/organizations/vue/index.d.ts +34 -0
  319. package/dist/blocks/organizations/vue/index.js +32 -0
  320. package/dist/blocks/outbox/index.d.ts +12 -3
  321. package/dist/blocks/outbox/index.js +97 -67
  322. package/dist/blocks/parties/index.d.ts +181 -0
  323. package/dist/blocks/parties/index.js +258 -0
  324. package/dist/blocks/pipelines/index.d.ts +189 -0
  325. package/dist/blocks/pipelines/index.js +204 -0
  326. package/dist/blocks/profiles/index.d.ts +14 -9
  327. package/dist/blocks/profiles/index.js +20 -6
  328. package/dist/blocks/promotions/index.d.ts +125 -0
  329. package/dist/blocks/promotions/index.js +123 -0
  330. package/dist/blocks/push/index.d.ts +48 -28
  331. package/dist/blocks/push/index.js +45 -16
  332. package/dist/blocks/quotes/index.d.ts +152 -0
  333. package/dist/blocks/quotes/index.js +209 -0
  334. package/dist/blocks/rank/index.d.ts +71 -0
  335. package/dist/blocks/rank/index.js +53 -0
  336. package/dist/blocks/reactions/index.d.ts +18 -0
  337. package/dist/blocks/reactions/index.js +26 -0
  338. package/dist/blocks/reactions/react/index.d.ts +23 -0
  339. package/dist/blocks/reactions/react/index.js +46 -0
  340. package/dist/blocks/reactions/react/server.d.ts +6 -0
  341. package/dist/blocks/reactions/react/server.js +7 -0
  342. package/dist/blocks/reactions/solid/index.d.ts +13 -0
  343. package/dist/blocks/reactions/solid/index.js +14 -0
  344. package/dist/blocks/reactions/svelte/index.d.ts +13 -0
  345. package/dist/blocks/reactions/svelte/index.js +14 -0
  346. package/dist/blocks/reactions/vue/index.d.ts +13 -0
  347. package/dist/blocks/reactions/vue/index.js +14 -0
  348. package/dist/blocks/relations/index.d.ts +180 -0
  349. package/dist/blocks/relations/index.js +254 -0
  350. package/dist/blocks/reminders/index.d.ts +177 -0
  351. package/dist/blocks/reminders/index.js +171 -0
  352. package/dist/blocks/reviews/index.d.ts +148 -0
  353. package/dist/blocks/reviews/index.js +139 -0
  354. package/dist/blocks/rules/index.d.ts +103 -0
  355. package/dist/blocks/rules/index.js +54 -0
  356. package/dist/blocks/rules/react/index.d.ts +34 -0
  357. package/dist/blocks/rules/react/index.js +55 -0
  358. package/dist/blocks/rules/react/server.d.ts +6 -0
  359. package/dist/blocks/rules/react/server.js +7 -0
  360. package/dist/blocks/rules/solid/index.d.ts +13 -0
  361. package/dist/blocks/rules/solid/index.js +14 -0
  362. package/dist/blocks/rules/svelte/index.d.ts +13 -0
  363. package/dist/blocks/rules/svelte/index.js +14 -0
  364. package/dist/blocks/rules/vue/index.d.ts +13 -0
  365. package/dist/blocks/rules/vue/index.js +14 -0
  366. package/dist/blocks/saved-views/index.d.ts +17 -0
  367. package/dist/blocks/saved-views/index.js +29 -0
  368. package/dist/blocks/saved-views/react/index.d.ts +34 -0
  369. package/dist/blocks/saved-views/react/index.js +57 -0
  370. package/dist/blocks/saved-views/react/server.d.ts +7 -0
  371. package/dist/blocks/saved-views/react/server.js +7 -0
  372. package/dist/blocks/saved-views/solid/index.d.ts +13 -0
  373. package/dist/blocks/saved-views/solid/index.js +14 -0
  374. package/dist/blocks/saved-views/svelte/index.d.ts +13 -0
  375. package/dist/blocks/saved-views/svelte/index.js +14 -0
  376. package/dist/blocks/saved-views/vue/index.d.ts +13 -0
  377. package/dist/blocks/saved-views/vue/index.js +14 -0
  378. package/dist/blocks/search/index.d.ts +31 -0
  379. package/dist/blocks/search/index.js +61 -0
  380. package/dist/blocks/search/react/index.d.ts +36 -0
  381. package/dist/blocks/search/react/index.js +49 -0
  382. package/dist/blocks/search/react/server.d.ts +7 -0
  383. package/dist/blocks/search/react/server.js +8 -0
  384. package/dist/blocks/search/solid/index.d.ts +13 -0
  385. package/dist/blocks/search/solid/index.js +14 -0
  386. package/dist/blocks/search/svelte/index.d.ts +13 -0
  387. package/dist/blocks/search/svelte/index.js +14 -0
  388. package/dist/blocks/search/vue/index.d.ts +13 -0
  389. package/dist/blocks/search/vue/index.js +14 -0
  390. package/dist/blocks/service-principals/index.d.ts +126 -0
  391. package/dist/blocks/service-principals/index.js +107 -0
  392. package/dist/blocks/sessions/index.d.ts +7 -0
  393. package/dist/blocks/sessions/index.js +14 -0
  394. package/dist/blocks/sessions/react/index.d.ts +31 -0
  395. package/dist/blocks/sessions/react/index.js +51 -0
  396. package/dist/blocks/sessions/react/server.d.ts +9 -0
  397. package/dist/blocks/sessions/react/server.js +11 -0
  398. package/dist/blocks/sessions/solid/index.d.ts +20 -0
  399. package/dist/blocks/sessions/solid/index.js +23 -0
  400. package/dist/blocks/sessions/svelte/index.d.ts +20 -0
  401. package/dist/blocks/sessions/svelte/index.js +23 -0
  402. package/dist/blocks/sessions/vue/index.d.ts +20 -0
  403. package/dist/blocks/sessions/vue/index.js +23 -0
  404. package/dist/blocks/settings/index.d.ts +20 -86
  405. package/dist/blocks/settings/index.js +28 -101
  406. package/dist/blocks/settings/react/index.d.ts +25 -0
  407. package/dist/blocks/settings/react/index.js +37 -0
  408. package/dist/blocks/settings/react/server.d.ts +7 -0
  409. package/dist/blocks/settings/react/server.js +7 -0
  410. package/dist/blocks/settings/solid/index.d.ts +13 -0
  411. package/dist/blocks/settings/solid/index.js +14 -0
  412. package/dist/blocks/settings/svelte/index.d.ts +13 -0
  413. package/dist/blocks/settings/svelte/index.js +14 -0
  414. package/dist/blocks/settings/vue/index.d.ts +13 -0
  415. package/dist/blocks/settings/vue/index.js +14 -0
  416. package/dist/blocks/share-links/index.d.ts +99 -0
  417. package/dist/blocks/share-links/index.js +99 -0
  418. package/dist/blocks/shared-signals/index.d.ts +395 -0
  419. package/dist/blocks/shared-signals/index.js +880 -0
  420. package/dist/blocks/signing-keys/index.d.ts +29 -0
  421. package/dist/blocks/signing-keys/index.js +161 -0
  422. package/dist/blocks/sla/index.d.ts +114 -0
  423. package/dist/blocks/sla/index.js +122 -0
  424. package/dist/blocks/sso/index.d.ts +169 -147
  425. package/dist/blocks/sso/index.js +259 -321
  426. package/dist/blocks/state-machine/index.d.ts +105 -0
  427. package/dist/blocks/state-machine/index.js +116 -0
  428. package/dist/blocks/tags/index.d.ts +20 -0
  429. package/dist/blocks/tags/index.js +28 -0
  430. package/dist/blocks/tags/react/index.d.ts +28 -0
  431. package/dist/blocks/tags/react/index.js +47 -0
  432. package/dist/blocks/tags/react/server.d.ts +7 -0
  433. package/dist/blocks/tags/react/server.js +7 -0
  434. package/dist/blocks/tags/solid/index.d.ts +13 -0
  435. package/dist/blocks/tags/solid/index.js +14 -0
  436. package/dist/blocks/tags/svelte/index.d.ts +13 -0
  437. package/dist/blocks/tags/svelte/index.js +14 -0
  438. package/dist/blocks/tags/vue/index.d.ts +13 -0
  439. package/dist/blocks/tags/vue/index.js +14 -0
  440. package/dist/blocks/targets/index.d.ts +82 -0
  441. package/dist/blocks/targets/index.js +73 -0
  442. package/dist/blocks/teams/index.d.ts +61 -0
  443. package/dist/blocks/teams/index.js +83 -0
  444. package/dist/blocks/templates/index.d.ts +362 -0
  445. package/dist/blocks/templates/index.js +483 -0
  446. package/dist/blocks/time-tracking/index.d.ts +250 -0
  447. package/dist/blocks/time-tracking/index.js +317 -0
  448. package/dist/blocks/trash/index.d.ts +78 -0
  449. package/dist/blocks/trash/index.js +79 -0
  450. package/dist/blocks/undo/index.d.ts +9 -0
  451. package/dist/blocks/undo/index.js +14 -0
  452. package/dist/blocks/undo/react/index.d.ts +17 -0
  453. package/dist/blocks/undo/react/index.js +24 -0
  454. package/dist/blocks/undo/react/server.d.ts +7 -0
  455. package/dist/blocks/undo/react/server.js +7 -0
  456. package/dist/blocks/undo/solid/index.d.ts +13 -0
  457. package/dist/blocks/undo/solid/index.js +14 -0
  458. package/dist/blocks/undo/svelte/index.d.ts +13 -0
  459. package/dist/blocks/undo/svelte/index.js +14 -0
  460. package/dist/blocks/undo/vue/index.d.ts +13 -0
  461. package/dist/blocks/undo/vue/index.js +14 -0
  462. package/dist/blocks/usage/index.d.ts +10 -4
  463. package/dist/blocks/usage/index.js +16 -232
  464. package/dist/blocks/usage/react/index.d.ts +23 -0
  465. package/dist/blocks/usage/react/index.js +38 -0
  466. package/dist/blocks/usage/react/server.d.ts +7 -0
  467. package/dist/blocks/usage/react/server.js +7 -0
  468. package/dist/blocks/usage/solid/index.d.ts +13 -0
  469. package/dist/blocks/usage/solid/index.js +14 -0
  470. package/dist/blocks/usage/svelte/index.d.ts +13 -0
  471. package/dist/blocks/usage/svelte/index.js +14 -0
  472. package/dist/blocks/usage/vue/index.d.ts +13 -0
  473. package/dist/blocks/usage/vue/index.js +14 -0
  474. package/dist/blocks/versions/index.d.ts +165 -0
  475. package/dist/blocks/versions/index.js +283 -0
  476. package/dist/blocks/waitlist/index.d.ts +57 -19
  477. package/dist/blocks/waitlist/index.js +47 -12
  478. package/dist/blocks/webhooks/index.d.ts +275 -134
  479. package/dist/blocks/webhooks/index.js +775 -231
  480. package/dist/blocks/work-items/index.d.ts +208 -0
  481. package/dist/blocks/work-items/index.js +305 -0
  482. package/dist/blocks/workflow-builder/index.d.ts +26 -6
  483. package/dist/blocks/workflow-builder/index.js +30 -5
  484. package/dist/blocks/workflow-builder/react/index.d.ts +4 -19
  485. package/dist/blocks/workflow-builder/react/index.js +45 -89
  486. package/dist/blocks/workflow-builder/solid/index.d.ts +20 -0
  487. package/dist/blocks/workflow-builder/solid/index.js +23 -0
  488. package/dist/blocks/workflow-builder/svelte/index.d.ts +20 -0
  489. package/dist/blocks/workflow-builder/svelte/index.js +23 -0
  490. package/dist/blocks/workflow-builder/vue/index.d.ts +20 -0
  491. package/dist/blocks/workflow-builder/vue/index.js +23 -0
  492. package/dist/blocks/workflows/index.d.ts +20 -3
  493. package/dist/blocks/workflows/index.js +27 -3
  494. package/dist/blocks/workflows/react/index.d.ts +5 -20
  495. package/dist/blocks/workflows/react/index.js +41 -113
  496. package/dist/blocks/workflows/solid/index.d.ts +20 -0
  497. package/dist/blocks/workflows/solid/index.js +23 -0
  498. package/dist/blocks/workflows/svelte/index.d.ts +20 -0
  499. package/dist/blocks/workflows/svelte/index.js +23 -0
  500. package/dist/blocks/workflows/vue/index.d.ts +20 -0
  501. package/dist/blocks/workflows/vue/index.js +23 -0
  502. package/dist/blocks-D2WQ63PI.js +84 -0
  503. package/dist/bookings-0XnhHNLM.js +181 -0
  504. package/dist/build-Cm0T5MVG.js +1815 -0
  505. package/dist/build-Cx08LOT7.js +689 -0
  506. package/dist/calendar-DcFrpSOy.js +801 -0
  507. package/dist/casing-DdFWEtqr.js +16 -0
  508. package/dist/channel-D-LHCY11.d.ts +78 -0
  509. package/dist/channels-C-GCoNLd.js +114 -0
  510. package/dist/chat-sdk/index.d.ts +131 -7
  511. package/dist/chat-sdk/index.js +155 -6
  512. package/dist/chat-sdk/react/index.d.ts +2 -1
  513. package/dist/chat-sdk/react/index.js +1 -2
  514. package/dist/chat-sdk/react/server.d.ts +2 -1
  515. package/dist/chat-sdk/react/server.js +1 -2
  516. package/dist/claims-0KZVT804.js +61 -0
  517. package/dist/cli/add-B0zoJUYX.js +651 -0
  518. package/dist/cli/add-Bd5M6uEZ.js +75 -0
  519. package/dist/cli/add-CT6p5psO.js +1 -0
  520. package/dist/cli/adopt-C9jl8z0h.js +1 -0
  521. package/dist/cli/adopt-CebmlHL-.js +393 -0
  522. package/dist/cli/agent-CCt_aXpJ.js +176 -0
  523. package/dist/cli/apply-Dxk8AUNU.js +302 -0
  524. package/dist/cli/arazzo-1.0-BalU61-_.js +532 -0
  525. package/dist/cli/arazzo-1.1-Bnfasbun.js +705 -0
  526. package/dist/cli/asyncapi-3.0.0-C78dBjR6.js +5593 -0
  527. package/dist/cli/asyncapi-3.1.0-g-7aIfV1.js +5833 -0
  528. package/dist/cli/bin.js +41 -21
  529. package/dist/cli/blocks-Bzz326nn.js +1 -0
  530. package/dist/cli/blocks-Dq25D80b.js +124 -0
  531. package/dist/cli/cache-Cx6qlRDR.js +502 -0
  532. package/dist/cli/catalog-Di15TkM2.js +187 -0
  533. package/dist/cli/codemod-woL4cVe0.js +985 -0
  534. package/dist/cli/command-CK9Cn8HV.js +836 -0
  535. package/dist/cli/completion-BO5UK6bG.js +1 -0
  536. package/dist/cli/completion-CWoDmFZr.js +205 -0
  537. package/dist/cli/completion-J3dqnNoW.js +30 -0
  538. package/dist/cli/config-C1d-mbUA.js +1 -0
  539. package/dist/cli/config-CLHpTk9Y.js +1421 -0
  540. package/dist/cli/config-MuKY9kUj.js +39 -0
  541. package/dist/cli/config-edit-Ct1lXe8a.js +603 -0
  542. package/dist/cli/db-DT1bGB02.js +78 -0
  543. package/dist/cli/design-edit-B-WsnhUF.js +175 -0
  544. package/dist/cli/detect-DYDUBLU4.js +84 -0
  545. package/dist/cli/dist-D_VbPAMR.js +129 -0
  546. package/dist/cli/dist-DuiMMRbJ.js +1112 -0
  547. package/dist/cli/doctor-SGw36h1D.js +3806 -0
  548. package/dist/cli/emit-ZAYeh4Yn.js +1042 -0
  549. package/dist/cli/env-CVXvJoLP.js +142 -0
  550. package/dist/cli/env-D3gZ-OHj.js +1 -0
  551. package/dist/cli/env-DJ4ZaJpe.js +1 -0
  552. package/dist/cli/env-DMw_MBe5.js +996 -0
  553. package/dist/cli/errors-Caiz_0so.js +98 -0
  554. package/dist/cli/fastest-levenshtein-dhRRvrM2.js +120 -0
  555. package/dist/cli/files-DDvAwTko.js +963 -0
  556. package/dist/cli/gen-B344S1Oy.js +304 -0
  557. package/dist/cli/guards-CUlDNYZs.js +8 -0
  558. package/dist/cli/index.d.ts +297 -140
  559. package/dist/cli/index.js +13 -8
  560. package/dist/cli/init-B1dL-RZL.js +393 -0
  561. package/dist/cli/introspect-BPcFi8ow.js +51 -0
  562. package/dist/cli/io-BiPX-_J1.js +37 -0
  563. package/dist/cli/jsonc-C8M0EhHB.js +1 -0
  564. package/dist/cli/keys-jsxCNJdz.js +106 -0
  565. package/dist/cli/metadata-CxBZo4KM.js +138 -0
  566. package/dist/cli/module-migration-YFFdWC5X.js +592 -0
  567. package/dist/cli/moved-D9OT_Uyy.js +152 -0
  568. package/dist/cli/names-D6LrQnOv.js +6 -0
  569. package/dist/cli/openapi-3.0-t7xwkuRH.js +928 -0
  570. package/dist/cli/openapi-3.1-CVze7tBS.js +870 -0
  571. package/dist/cli/openapi-3.2-CFoMYM01.js +1031 -0
  572. package/dist/cli/parse-DE59XyWt.js +170 -0
  573. package/dist/cli/preset-DmcC4nWE.js +129 -0
  574. package/dist/cli/prompts-Bvg_DBpe.js +1137 -0
  575. package/dist/cli/redact-PjNswZOs.js +35 -0
  576. package/dist/cli/rolldown-runtime-kJ_i4yPo.js +26 -0
  577. package/dist/cli/run-CM_2g6KQ.js +684 -0
  578. package/dist/cli/run-DaHfUUO9.js +1539 -0
  579. package/dist/cli/scaffold-CFdDq36-.js +898 -0
  580. package/dist/cli/scaffold-Dsjr7sOT.js +1 -0
  581. package/dist/cli/seed-DldDdXWO.js +113 -0
  582. package/dist/cli/seed-DtRFysBe.js +1 -0
  583. package/dist/cli/shell-Btv_4Yhe.js +10 -0
  584. package/dist/cli/skills-v34NDb2D.js +121 -0
  585. package/dist/cli/snapshot-DAxLi4hO.js +347 -0
  586. package/dist/cli/source-args-0I9zylYy.js +47 -0
  587. package/dist/cli/spec-CaaSOYZS.js +7501 -0
  588. package/dist/cli/spec-De0cfceR.js +1 -0
  589. package/dist/cli/sql-0I1EQ3JG.js +2 -0
  590. package/dist/cli/sql-DDLWwzh9.js +326 -0
  591. package/dist/cli/stack-status-CRanl-CN.js +456 -0
  592. package/dist/cli/style-2JfIPVMQ.js +29 -0
  593. package/dist/cli/supabase-toml-DjLgBYEo.js +1153 -0
  594. package/dist/cli/sync-DFx-6t5n.js +88 -0
  595. package/dist/cli/topics-GJuIDwlY.js +30 -0
  596. package/dist/cli/trace-VbdO6bcN.js +7 -0
  597. package/dist/cli/typegen--TfvOPLh.js +494 -0
  598. package/dist/cli/typegen-version-BNBPI4Eu.js +9 -0
  599. package/dist/cli/validate-BfWNKvxy.js +7522 -0
  600. package/dist/cli/version-DNRW4DAP.js +4 -0
  601. package/dist/cli/write-BS6F3Yvz.js +180 -0
  602. package/dist/client/index.d.ts +7 -3
  603. package/dist/client/index.js +207 -4
  604. package/dist/client/native/index.d.ts +71 -4
  605. package/dist/client/native/index.js +65 -6
  606. package/dist/client-01MAuqzW.js +137 -0
  607. package/dist/client-B7QVIrJS.d.ts +263 -0
  608. package/dist/client-B9CqzgPO.js +75 -0
  609. package/dist/client-BAcILZOf.d.ts +122 -0
  610. package/dist/client-BOT2KVIp.js +128 -0
  611. package/dist/client-BUGIS__1.js +1051 -0
  612. package/dist/client-BVZtq_rQ.d.ts +34 -0
  613. package/dist/client-BYaOGCOG.js +84 -0
  614. package/dist/client-BfgwocyT.js +155 -0
  615. package/dist/client-BpS8a6Fm.js +51 -0
  616. package/dist/client-BxnLb9bz.d.ts +58 -0
  617. package/dist/client-BzCv4kKE.js +65 -0
  618. package/dist/client-C-2ajnhM.js +89 -0
  619. package/dist/client-C5mUEb2n.js +55 -0
  620. package/dist/client-C9QrWrnt.js +209 -0
  621. package/dist/client-CFdMJ1h9.d.ts +277 -0
  622. package/dist/client-CHmjaI0j.d.ts +103 -0
  623. package/dist/client-CWs3X4g1.js +120 -0
  624. package/dist/client-Cdedx_lw.js +438 -0
  625. package/dist/client-CiGjS6us.js +169 -0
  626. package/dist/client-CilSKXNu.js +288 -0
  627. package/dist/client-ClZ0D-if.d.ts +162 -0
  628. package/dist/client-Cmensu7l.d.ts +419 -0
  629. package/dist/client-Co6BPmvr.d.ts +108 -0
  630. package/dist/client-CoVGPi0c.js +133 -0
  631. package/dist/client-CvITjt-9.js +310 -0
  632. package/dist/client-CzI4QpG3.d.ts +131 -0
  633. package/dist/client-D5CZ2a34.d.ts +455 -0
  634. package/dist/client-DAHsEOVV.d.ts +155 -0
  635. package/dist/client-DG7FwgZD.js +104 -0
  636. package/dist/client-DIrCmOXz.d.ts +157 -0
  637. package/dist/client-DNq8xYb-.js +52 -0
  638. package/dist/client-DdfSIZ3M.d.ts +107 -0
  639. package/dist/client-DjTRlN3a.d.ts +68 -0
  640. package/dist/client-Ezlbskjq.js +60 -0
  641. package/dist/client-LLmgiCwJ.d.ts +135 -0
  642. package/dist/client-Lx3mlvKO.d.ts +100 -0
  643. package/dist/client-PGRk3DGz.js +98 -0
  644. package/dist/client-Tc47rlSe.d.ts +350 -0
  645. package/dist/client-VvY0K3wr.d.ts +59 -0
  646. package/dist/client-WAdEBBrH.d.ts +65 -0
  647. package/dist/client-WHeWTNVL.d.ts +130 -0
  648. package/dist/client-WgrPIHH-.js +213 -0
  649. package/dist/client-ZTtSV3l8.js +40 -0
  650. package/dist/client-b2_GjzzD.js +438 -0
  651. package/dist/client-ckXfdy1k.js +38 -0
  652. package/dist/client-e-hFkLUf.d.ts +34 -0
  653. package/dist/client-hyP_nS5R.d.ts +218 -0
  654. package/dist/client-i8glKhxh.js +67 -0
  655. package/dist/client-iDLLvGR4.d.ts +52 -0
  656. package/dist/client-pxjbgOz6.js +376 -0
  657. package/dist/client-xkSCp9hN.d.ts +101 -0
  658. package/dist/client-ysNShuJZ.d.ts +39 -0
  659. package/dist/clone-dN9XOL1K.js +29 -0
  660. package/dist/cloud-event-5rCEzIgK.d.ts +64 -0
  661. package/dist/cloud-event-CTh9Sr5w.js +60 -0
  662. package/dist/codecs-Bm46sVxr.d.ts +215 -0
  663. package/dist/codecs-YAekuQ08.js +358 -0
  664. package/dist/codegen-DeoSt1mi.d.ts +1571 -0
  665. package/dist/comments-D7sbd0xG.js +230 -0
  666. package/dist/commerce/index.d.ts +211 -0
  667. package/dist/commerce/index.js +517 -0
  668. package/dist/compiler-BVxepAY0.d.ts +14 -0
  669. package/dist/compose-Djntdacs.js +53 -0
  670. package/dist/composite-M6zPs1Xm.js +130 -0
  671. package/dist/composite-djtGy6bz.d.ts +67 -0
  672. package/dist/config/index.d.ts +7 -6
  673. package/dist/config/index.js +7 -4
  674. package/dist/config-BA1K4OPk.js +557 -0
  675. package/dist/config-C4MozTD7.js +3892 -0
  676. package/dist/connector-Cp8CqssJ.d.ts +107 -0
  677. package/dist/connectors-CjD-R2ks.d.ts +141 -0
  678. package/dist/context-1sSWcd7_.d.ts +365 -0
  679. package/dist/context-B8_p3MXo.js +11 -0
  680. package/dist/context-BDDgjoxz.js +41 -0
  681. package/dist/context-C-bHOtoD.js +5 -0
  682. package/dist/context-D6ZMKc2L.js +19 -0
  683. package/dist/context-wDKxSl9x.js +9 -0
  684. package/dist/controller-D6NyNrlZ.js +79 -0
  685. package/dist/controller-D845qKh2.d.ts +46 -0
  686. package/dist/credentials/index.d.ts +15 -5
  687. package/dist/credentials/index.js +17 -17
  688. package/dist/cron-CUaKTjWC.js +145 -0
  689. package/dist/cron-route-CoL-By8Z.js +24 -0
  690. package/dist/csv-CVfXqaAu.js +89 -0
  691. package/dist/csv-D3eKxV1T.d.ts +28 -0
  692. package/dist/define-B2ln373W.js +1896 -0
  693. package/dist/define-DxHHbNEb.d.ts +1005 -0
  694. package/dist/define-block-B6Gjs57G.js +52 -0
  695. package/dist/define-block-CLZMEFeK.d.ts +256 -0
  696. package/dist/delegation-Dt8hMJWu.js +140 -0
  697. package/dist/delivery-B1mKaOen.js +30 -0
  698. package/dist/delivery-BeHgwS3k.d.ts +69 -0
  699. package/dist/documents-CWn2mtYf.d.ts +96 -0
  700. package/dist/edge/index.d.ts +68 -13
  701. package/dist/edge/index.js +75 -43
  702. package/dist/elysia/index.d.ts +1 -1
  703. package/dist/elysia/index.js +2 -2
  704. package/dist/email-BcmbIWOX.d.ts +42 -0
  705. package/dist/embeddings-C2S14foD.d.ts +78 -0
  706. package/dist/embeddings-CVeOoufZ.js +128 -0
  707. package/dist/ended-nIdGCHxk.d.ts +70 -0
  708. package/dist/entitlements-BvU5dLpW.js +45 -0
  709. package/dist/entitlements-CbzCKalR.d.ts +53 -0
  710. package/dist/env/index.d.ts +1 -1
  711. package/dist/env/index.js +12 -5
  712. package/dist/envelope-CHYk5MXU.js +90 -0
  713. package/dist/errors-8i6tSICm.js +301 -0
  714. package/dist/errors-PIpcoe4z.js +44 -0
  715. package/dist/escape-like-AUEPn-C5.d.ts +15 -0
  716. package/dist/eve/index.d.ts +5 -5
  717. package/dist/eve/index.js +11 -17
  718. package/dist/eve-DUF70Vgi.d.ts +151 -0
  719. package/dist/event-calendar-DJXXMJ3x.d.ts +217 -0
  720. package/dist/event-map-Dy2vKHai.js +19 -0
  721. package/dist/events/index.d.ts +4 -4
  722. package/dist/events/index.js +16 -8
  723. package/dist/events-CTreRrgP.d.ts +800 -0
  724. package/dist/events-xbpHkcK9.js +82 -0
  725. package/dist/executor-BBHgjUJu.d.ts +39 -0
  726. package/dist/executor-BINiCFNp.d.ts +95 -0
  727. package/dist/executor-BXSHYyW2.js +735 -0
  728. package/dist/executor-D1kYY5BA.js +206 -0
  729. package/dist/executor-D3K3tycZ.js +147 -0
  730. package/dist/executor-DKrZr3AC.d.ts +174 -0
  731. package/dist/executor-DoE-5iM8.d.ts +272 -0
  732. package/dist/expo/index.d.ts +4 -4
  733. package/dist/expo/index.js +7 -7
  734. package/dist/expo-sqlite/index.d.ts +3 -3
  735. package/dist/expo-sqlite/index.js +2 -2
  736. package/dist/extra-CGQ2_q3S.js +10 -0
  737. package/dist/field-errors-CWXN_h_E.d.ts +113 -0
  738. package/dist/field-errors-DZVRWRkf.js +13 -0
  739. package/dist/field-formats-Cif5gr7c.js +102 -0
  740. package/dist/field-formats-DCvOQlOy.d.ts +39 -0
  741. package/dist/filter-evaluate-C0ULNfS7.js +214 -0
  742. package/dist/filter-evaluate-CjcFq0RT.d.ts +34 -0
  743. package/dist/filter-query-B3lhckKX.js +518 -0
  744. package/dist/filter-query-BKmRYrTE.d.ts +121 -0
  745. package/dist/flags-D_D1jAHB.d.ts +230 -0
  746. package/dist/flags-XAOsdNAc.js +279 -0
  747. package/dist/flags-sdk/index.d.ts +143 -0
  748. package/dist/flags-sdk/index.js +175 -0
  749. package/dist/form-definition-sagoefQr.d.ts +95 -0
  750. package/dist/format-CNwSjXUU.d.ts +70 -0
  751. package/dist/framework-DG5Bv39u.d.ts +26 -0
  752. package/dist/framework-INbjMZX1.js +51 -0
  753. package/dist/function-contract-B4c0XuTU.d.ts +21 -0
  754. package/dist/function-contract-DmkBg19r.js +5 -0
  755. package/dist/gateway-Cup00l0w.d.ts +109 -0
  756. package/dist/gateway-options-ClvvfuuU.d.ts +29 -0
  757. package/dist/gateway-options-DcLcWL5_.js +27 -0
  758. package/dist/graph-Cs28bOlK.js +360 -0
  759. package/dist/groups-CxonH3u5.js +16 -0
  760. package/dist/guards-6F2bCtQR.js +12 -0
  761. package/dist/h3/index.d.ts +7 -3
  762. package/dist/h3/index.js +3 -3
  763. package/dist/h3/v1/index.d.ts +1 -1
  764. package/dist/h3/v1/index.js +2 -2
  765. package/dist/history-GH1HJWQV.js +271 -0
  766. package/dist/hmac-DCud0myt.js +22 -0
  767. package/dist/hono/index.d.ts +33 -14
  768. package/dist/hono/index.js +58 -25
  769. package/dist/http-BF-V0CUF.js +25 -0
  770. package/dist/impersonation-CDeCzZP6.js +62 -0
  771. package/dist/impersonation-D5chOkrO.d.ts +25 -0
  772. package/dist/inbox-3ql4phyr.d.ts +400 -0
  773. package/dist/index-BIi8i6BO.d.ts +97 -0
  774. package/dist/index-BkzNUPId.d.ts +131 -0
  775. package/dist/index-BlqrGvb3.d.ts +227 -0
  776. package/dist/index-Brhm22eL.d.ts +138 -0
  777. package/dist/index-Bvw9r94Q.d.ts +245 -0
  778. package/dist/index-CETRk4YO.d.ts +82 -0
  779. package/dist/index-CrZitvSC.d.ts +258 -0
  780. package/dist/index-DfVXx4Ia.d.ts +202 -0
  781. package/dist/index-DygICr8c.d.ts +206 -0
  782. package/dist/index-Ej8XQ9w9.d.ts +58 -0
  783. package/dist/index-jhqhynmh.d.ts +58 -0
  784. package/dist/index.d.ts +90 -15
  785. package/dist/index.js +16 -14
  786. package/dist/iso4217-A8ev-CNW.js +176 -0
  787. package/dist/json-schema-CpYINXG8.js +548 -0
  788. package/dist/jws-35a8VhFV.d.ts +60 -0
  789. package/dist/jws-milwSg7E.js +191 -0
  790. package/dist/kit-D5S7KNFe.d.ts +66 -0
  791. package/dist/kit-MUK34-ZG.js +104 -0
  792. package/dist/knowledge-BXQ2-V0a.d.ts +187 -0
  793. package/dist/knowledge-CJ_Mm3ic.js +272 -0
  794. package/dist/lint/index.js +9 -9
  795. package/dist/list/index.d.ts +4 -3
  796. package/dist/list/index.js +4 -2
  797. package/dist/list-query-CBXNfJt4.js +549 -0
  798. package/dist/list-query-PvP3pPGQ.d.ts +194 -0
  799. package/dist/live-DwDreq1n.js +239 -0
  800. package/dist/mcp/index.d.ts +67 -20
  801. package/dist/mcp/index.js +220 -135
  802. package/dist/mcp/sdk/index.d.ts +38 -6
  803. package/dist/mcp/sdk/index.js +89 -7
  804. package/dist/message-B0fNJgq8.d.ts +93 -0
  805. package/dist/messages-Cx4ttLJJ.js +493 -0
  806. package/dist/metric-definition-95HFoW1V.d.ts +70 -0
  807. package/dist/metric-definition-BjxVn4R5.js +117 -0
  808. package/dist/mfa-DtflCXEt.d.ts +30 -0
  809. package/dist/model-lUafmeBQ.d.ts +311 -0
  810. package/dist/model-messages-CTu-6kBu.js +206 -0
  811. package/dist/model-messages-D4GZllOD.d.ts +34 -0
  812. package/dist/money-95Rff2vT.js +185 -0
  813. package/dist/money-DFpWzQvk.d.ts +76 -0
  814. package/dist/money-codec-C_-K5ZUU.js +41 -0
  815. package/dist/nestjs/index.d.ts +2 -2
  816. package/dist/nestjs/index.js +2 -2
  817. package/dist/next/index.d.ts +115 -55
  818. package/dist/next/index.js +208 -173
  819. package/dist/node/index.d.ts +2 -2
  820. package/dist/node/index.js +3 -3
  821. package/dist/nuxt/index.d.ts +2 -2
  822. package/dist/nuxt/index.js +3 -2
  823. package/dist/onboarding-BZvLLPaY.js +68 -0
  824. package/dist/openapi/index.d.ts +4 -2
  825. package/dist/openapi/index.js +21 -343
  826. package/dist/operations-C9-UcReN.d.ts +6 -0
  827. package/dist/operations-CsIfMED7.js +29 -0
  828. package/dist/optional-peer-Dx8TaYXw.js +29 -0
  829. package/dist/options-B0FcEKtH.js +5 -0
  830. package/dist/options-B5BU2Yg7.js +11 -0
  831. package/dist/options-B5woz53h.js +5 -0
  832. package/dist/options-B7EJaOX-.js +5 -0
  833. package/dist/options-B9q8CROT.js +9 -0
  834. package/dist/options-BA6jV6py.js +10 -0
  835. package/dist/options-BAW2ZlZ8.js +8 -0
  836. package/dist/options-BMjcVuaI.js +82 -0
  837. package/dist/options-BOOEzor9.js +5 -0
  838. package/dist/options-BQ07tTYr.js +11 -0
  839. package/dist/options-BZsoPJGX.js +5 -0
  840. package/dist/options-BesyRBnM.js +16 -0
  841. package/dist/options-Bf96aVk5.js +10 -0
  842. package/dist/options-BlOPivzq.js +8 -0
  843. package/dist/options-Blg8lAkz.js +9 -0
  844. package/dist/options-Bn4cu0gt.js +5 -0
  845. package/dist/options-BnoJOwXK.js +8 -0
  846. package/dist/options-Bp7sgKvl.js +30 -0
  847. package/dist/options-BqO9GYig.js +311 -0
  848. package/dist/options-BxcFLL1G.js +8 -0
  849. package/dist/options-C1HR4UZd.js +13 -0
  850. package/dist/options-C239TLRF.js +14 -0
  851. package/dist/options-C2HesT4A.js +9 -0
  852. package/dist/options-C3EzJATk.js +10 -0
  853. package/dist/options-C3hZ1fbC.js +10 -0
  854. package/dist/options-C6rEL6U5.js +8 -0
  855. package/dist/options-CAzVf-1T.js +8 -0
  856. package/dist/options-CGKSUFUq.js +5 -0
  857. package/dist/options-CGjGE8xS.js +12 -0
  858. package/dist/options-CK5WiFwG.js +11 -0
  859. package/dist/options-CN7PHkhU.js +8 -0
  860. package/dist/options-CTZNpb2n.js +5 -0
  861. package/dist/options-CUqQ9pm7.js +9 -0
  862. package/dist/options-CVSWgZpY.js +8 -0
  863. package/dist/options-CXFz0xxS.js +8 -0
  864. package/dist/options-CZk_fbbg.js +9 -0
  865. package/dist/options-C_pb1Nd3.js +5 -0
  866. package/dist/options-CbSOj53r.d.ts +52 -0
  867. package/dist/options-ChD15QxJ.js +9 -0
  868. package/dist/options-CkScQRJR.js +12 -0
  869. package/dist/options-CljDnQt2.js +25 -0
  870. package/dist/options-CmraJhd9.js +5 -0
  871. package/dist/options-CoX6VKGb.js +8 -0
  872. package/dist/options-CrC78Tee.js +5 -0
  873. package/dist/options-Ctac2R0Q.js +11 -0
  874. package/dist/options-CyD7OObW.js +17 -0
  875. package/dist/options-D1blDihM.js +9 -0
  876. package/dist/options-D2Gd6VfS.js +8 -0
  877. package/dist/options-D2d1fFuw.js +11 -0
  878. package/dist/options-D40CQzji.js +8 -0
  879. package/dist/options-D7f2VKzj.js +25 -0
  880. package/dist/options-DARkpk2P.js +8 -0
  881. package/dist/options-DCduTMST.js +17 -0
  882. package/dist/options-DDzggjN7.js +8 -0
  883. package/dist/options-DMR68VAC.js +5 -0
  884. package/dist/options-DNKyN5uq.js +20 -0
  885. package/dist/options-DTDxFT6J.js +13 -0
  886. package/dist/options-DWpz3V3F.js +8 -0
  887. package/dist/options-DXqcJyOP.js +10 -0
  888. package/dist/options-DYBQ973I.js +8 -0
  889. package/dist/options-Dh4wu9Ks.js +15 -0
  890. package/dist/options-Dmg1Da9P.js +25 -0
  891. package/dist/options-DsUgamiy.js +5 -0
  892. package/dist/options-EsUh744F.js +13 -0
  893. package/dist/options-Fz6xqu-b.js +5 -0
  894. package/dist/options-HSv8R6h5.js +13 -0
  895. package/dist/options-I8zVkB_y.js +8 -0
  896. package/dist/options-MHhjOoWz.js +5 -0
  897. package/dist/options-MLxMkd5B.js +11 -0
  898. package/dist/options-OJ5zmgr8.js +10 -0
  899. package/dist/options-QKP9FFcK.js +8 -0
  900. package/dist/options-SViK_2x2.js +12 -0
  901. package/dist/options-XgfTctbI.js +5 -0
  902. package/dist/options-_9arpsX9.js +11 -0
  903. package/dist/options-eBPsk4WI.js +11 -0
  904. package/dist/options-kLKILdIu.js +10 -0
  905. package/dist/options-n22NK3PL.js +8 -0
  906. package/dist/options-oeAq4Ho5.js +12 -0
  907. package/dist/options-qU8vgxhO.js +18 -0
  908. package/dist/options-vXMBEWSH.js +5 -0
  909. package/dist/options-wFnK3qWl.js +9 -0
  910. package/dist/options-xVAy3UsV.js +9 -0
  911. package/dist/organizations-Cw7om8uk.js +398 -0
  912. package/dist/orpc/index.d.ts +26 -10
  913. package/dist/orpc/index.js +66 -44
  914. package/dist/otel/index.d.ts +3 -3
  915. package/dist/otel/index.js +42 -7
  916. package/dist/outbox-BTeqjbum.d.ts +181 -0
  917. package/dist/overlay/index.d.ts +233 -0
  918. package/dist/overlay/index.js +554 -0
  919. package/dist/payments-h45bswA-.js +16 -0
  920. package/dist/pg-error-BV_X8Isq.js +26 -0
  921. package/dist/plugin-CDLJRFFg.d.ts +190 -0
  922. package/dist/plugins/actor/index.d.ts +1 -1
  923. package/dist/plugins/actor/index.js +1 -1
  924. package/dist/plugins/rules/index.d.ts +2 -2
  925. package/dist/plugins/rules/index.js +2 -2
  926. package/dist/plugins/soft-delete/index.d.ts +3 -3
  927. package/dist/plugins/soft-delete/index.js +11 -4
  928. package/dist/plugins/tenant/index.d.ts +9 -3
  929. package/dist/plugins/tenant/index.js +17 -3
  930. package/dist/plugins/timestamps/index.d.ts +1 -1
  931. package/dist/plugins/timestamps/index.js +8 -1
  932. package/dist/plugins/validation/index.d.ts +2 -2
  933. package/dist/plugins/validation/index.js +4 -4
  934. package/dist/pool-CwOCsX9e.d.ts +114 -0
  935. package/dist/pool-errors-GMjlCN0d.js +27 -0
  936. package/dist/ports-Ca63W4cW.d.ts +285 -0
  937. package/dist/ports-DAdQyjZz.d.ts +86 -0
  938. package/dist/ports-DGK3KTDH.js +133 -0
  939. package/dist/postgres/index.d.ts +28 -6
  940. package/dist/postgres/index.js +54 -22
  941. package/dist/postgrest-Cw9Bs5gm.d.ts +53 -0
  942. package/dist/powersync/index.d.ts +5 -5
  943. package/dist/powersync/index.js +4 -4
  944. package/dist/powersync/react/index.d.ts +8 -3
  945. package/dist/powersync/react/index.js +11 -3
  946. package/dist/preset/index.d.ts +352 -0
  947. package/dist/preset/index.js +564 -0
  948. package/dist/problem-CEjyhV5T.d.ts +76 -0
  949. package/dist/problem-pIiL3WbE.js +159 -0
  950. package/dist/provider-9gBq9W6k.d.ts +113 -0
  951. package/dist/provider-DKh2xFZb.js +57 -0
  952. package/dist/push-token-D6REHMMw.js +16 -0
  953. package/dist/push-token-asrmi7-6.d.ts +24 -0
  954. package/dist/query/index.d.ts +2 -2
  955. package/dist/query/index.js +1 -1
  956. package/dist/query-Ctz-qKRx.js +303 -0
  957. package/dist/range-DwpWe8e7.js +7 -0
  958. package/dist/range-p5V4rBhZ.d.ts +8 -0
  959. package/dist/rank-keys-DcPMt_Jk.js +60 -0
  960. package/dist/rank-result-DS8IoLup.js +18 -0
  961. package/dist/rank-result-Dngpt2n5.d.ts +14 -0
  962. package/dist/rate-limit--QSiFA6D.js +325 -0
  963. package/dist/rate-limit-BtbddDnE.js +49 -0
  964. package/dist/rate-limit-C88MEAOm.d.ts +41 -0
  965. package/dist/ratelimit-headers-Bsxx0Tj2.js +62 -0
  966. package/dist/react/index.d.ts +9 -9
  967. package/dist/react/index.js +4 -5
  968. package/dist/react/native/index.d.ts +1 -1
  969. package/dist/react/native/index.js +2 -2
  970. package/dist/react/server.d.ts +10 -10
  971. package/dist/react/server.js +4 -4
  972. package/dist/react/session.d.ts +2 -2
  973. package/dist/react-CKXUkwPx.js +410 -0
  974. package/dist/react-controller-Xn-IU44p.js +40 -0
  975. package/dist/react-env-Cc7Vf6eb.js +13 -0
  976. package/dist/react-router/index.d.ts +6 -6
  977. package/dist/react-router/index.js +10 -12
  978. package/dist/read-set-GEb-i0On.js +314 -0
  979. package/dist/realtime/index.d.ts +8 -4
  980. package/dist/realtime/index.js +5 -333
  981. package/dist/realtime-status-D2dw1hOE.js +12 -0
  982. package/dist/realtime-status-DcsO00Gw.d.ts +8 -0
  983. package/dist/refusal-br4Ma9Cf.js +61 -0
  984. package/dist/refusal-oD3ISM9h.d.ts +18 -0
  985. package/dist/replicas-BvIL4_jL.js +94 -0
  986. package/dist/resolve-CAR9oaKW.js +869 -0
  987. package/dist/resolve-w9EpHzuM.d.ts +266 -0
  988. package/dist/resource-B4ka8dDH.d.ts +106 -0
  989. package/dist/resource-C8r5xGqY.js +463 -0
  990. package/dist/resource-DO4gbVi5.js +91 -0
  991. package/dist/resource-execute-D0yQ-8WR.d.ts +12 -0
  992. package/dist/resource-schemas-BJ518zFH.js +79 -0
  993. package/dist/resource-types-D2vEQVXI.d.ts +141 -0
  994. package/dist/resources-BklF-rjz.d.ts +7 -0
  995. package/dist/resources-BlZdLsWQ.js +64 -0
  996. package/dist/respond-C7I8kLK_.d.ts +93 -0
  997. package/dist/respond-DdhZ9Wbn.js +95 -0
  998. package/dist/result-BlgnMB0H.js +128 -0
  999. package/dist/result-Cj3yWhjH.d.ts +298 -0
  1000. package/dist/rrule-zBh3CA1r.js +290 -0
  1001. package/dist/rules-B0-3Iosu.js +261 -0
  1002. package/dist/run-watch-CQRdpy-f.js +53 -0
  1003. package/dist/sales-lines-BAk8In-Z.js +41 -0
  1004. package/dist/sales-lines-C6gafAwg.d.ts +28 -0
  1005. package/dist/sales-shared-DAAGwQwN.d.ts +8 -0
  1006. package/dist/sales-shared-SblIgCgI.js +22 -0
  1007. package/dist/scope-DgWjuXUw.js +90 -0
  1008. package/dist/search-B6h03cAx.js +106 -0
  1009. package/dist/search-BtoWY6n_.js +9 -0
  1010. package/dist/server/index.d.ts +211 -43
  1011. package/dist/server/index.js +296 -19
  1012. package/dist/server-types-OohhIQb2.d.ts +737 -0
  1013. package/dist/session-DiWHtYrO.d.ts +95 -0
  1014. package/dist/settings-BXFn9zpS.js +90 -0
  1015. package/dist/shared-BmMcMoW9.js +89 -0
  1016. package/dist/shared-DbO3Dfms.js +14 -0
  1017. package/dist/shared-as0EG51f.js +60 -0
  1018. package/dist/sign-in-D0xN6E_l.js +360 -0
  1019. package/dist/signatures-B41ApWXA.js +145 -0
  1020. package/dist/signatures-BMdJ7neI.d.ts +43 -0
  1021. package/dist/signers-CXt_wA9S.d.ts +385 -0
  1022. package/dist/signing-keys-Bq9mMCTh.d.ts +90 -0
  1023. package/dist/solid/index.d.ts +9 -18
  1024. package/dist/solid/index.js +4 -9
  1025. package/dist/solid-controller-DLsmrczT.js +33 -0
  1026. package/dist/solid-controller-DqlvYFZa.d.ts +11 -0
  1027. package/dist/solid-start/index.d.ts +8 -12
  1028. package/dist/solid-start/index.js +10 -9
  1029. package/dist/spec/index.d.ts +154 -0
  1030. package/dist/spec/index.js +386 -0
  1031. package/dist/spec-pins-Dqpml2dZ.d.ts +84 -0
  1032. package/dist/spec-pins-S4PymRxp.js +60 -0
  1033. package/dist/sql/index.d.ts +327 -140
  1034. package/dist/sql/index.js +71245 -23282
  1035. package/dist/sql-DJrXG-3Z.js +422 -0
  1036. package/dist/sso-BDva_-4y.js +217 -0
  1037. package/dist/sso-BN0LnMqE.d.ts +131 -0
  1038. package/dist/ssr/index.d.ts +5 -6
  1039. package/dist/ssr/index.js +4 -3
  1040. package/dist/standard-B5fe2gnW.js +25 -0
  1041. package/dist/standard-C3_AAF3g.d.ts +7 -0
  1042. package/dist/stats-D6vkb89f.js +1128 -0
  1043. package/dist/storage/index.d.ts +4 -6
  1044. package/dist/storage/index.js +23 -20
  1045. package/dist/storage-api-Cx-1iWBd.d.ts +582 -0
  1046. package/dist/store-B5qYKsTh.d.ts +68 -0
  1047. package/dist/streams/index.d.ts +5 -5
  1048. package/dist/streams/index.js +6 -5
  1049. package/dist/streams/redis/index.d.ts +1 -1
  1050. package/dist/streams/redis/index.js +6 -12
  1051. package/dist/stripe/index.d.ts +16 -0
  1052. package/dist/stripe/index.js +14 -0
  1053. package/dist/stripe-NVcNOhHy.d.ts +140 -0
  1054. package/dist/stripe-XZrSmDTf.js +32 -0
  1055. package/dist/subject-readers-DiePmaYP.js +46 -0
  1056. package/dist/subject-readers-fxP5wu0s.d.ts +21 -0
  1057. package/dist/subjects-z8VWA_lF.d.ts +69 -0
  1058. package/dist/subscribers-Cq--DL1E.js +34 -0
  1059. package/dist/supabase-mcp-C6tMoEjn.d.ts +43 -0
  1060. package/dist/supabase-mcp-DomZ-amK.js +28 -0
  1061. package/dist/support-BsKkvA92.js +522 -0
  1062. package/dist/support-view-BbcZR7Io.d.ts +17 -0
  1063. package/dist/svelte/index.d.ts +8 -17
  1064. package/dist/svelte/index.js +3 -3
  1065. package/dist/svelte-controller-CDAujo-_.js +50 -0
  1066. package/dist/svelte-controller-DxxHEHxD.d.ts +10 -0
  1067. package/dist/sveltekit/index.d.ts +11 -13
  1068. package/dist/sveltekit/index.js +12 -14
  1069. package/dist/table-schema-pQlER3jj.js +283 -0
  1070. package/dist/tags-Dw8vKkcI.d.ts +30 -0
  1071. package/dist/tags-PaG0Ns_9.js +84 -0
  1072. package/dist/tanstack-db/index.d.ts +2 -2
  1073. package/dist/tanstack-db/index.js +1 -1
  1074. package/dist/tanstack-db/supabase/index.d.ts +51 -0
  1075. package/dist/tanstack-db/supabase/index.js +268 -0
  1076. package/dist/tanstack-start/index.d.ts +7 -7
  1077. package/dist/tanstack-start/index.js +9 -13
  1078. package/dist/tax-DDZUB_oc.d.ts +273 -0
  1079. package/dist/tax-D_kSCdWU.js +140 -0
  1080. package/dist/tee-Bsisfd7t.js +101 -0
  1081. package/dist/template-DdgYjIZ5.js +123 -0
  1082. package/dist/temporal-CB5Fpo5d.js +79 -0
  1083. package/dist/temporal-required-DqRzr7i0.js +20 -0
  1084. package/dist/tenant-B-fiItlJ.js +27 -0
  1085. package/dist/tenant-DdmVhsff.d.ts +17 -0
  1086. package/dist/tenant-naming-Bsj3Uvap.js +27 -0
  1087. package/dist/testing/index.d.ts +459 -125
  1088. package/dist/testing/index.js +2368 -720
  1089. package/dist/timing-BMCWgpdZ.js +92 -0
  1090. package/dist/topic-ByDz9edV.js +542 -0
  1091. package/dist/topic-cMS7UtM1.d.ts +359 -0
  1092. package/dist/ttl-cache-XzZ-Q2eX.js +29 -0
  1093. package/dist/types-6oiy6rIa.d.ts +205 -0
  1094. package/dist/types-BRTSpOIh.js +5 -0
  1095. package/dist/types-CdP0z5tS.d.ts +564 -0
  1096. package/dist/types-D0W4fnsc.d.ts +162 -0
  1097. package/dist/types-R6syp1el.js +29 -0
  1098. package/dist/types-YfwpIE-d.d.ts +357 -0
  1099. package/dist/types-pNY_UpDs.d.ts +240 -0
  1100. package/dist/types-vaoP9S9_.d.ts +635 -0
  1101. package/dist/undo-CEGIRkPA.js +44 -0
  1102. package/dist/undo-DGo0skyO.d.ts +43 -0
  1103. package/dist/usage-CdlfuS3i.js +250 -0
  1104. package/dist/usage-DM2rzczj.d.ts +202 -0
  1105. package/dist/vault-tOkPLnMB.d.ts +50 -0
  1106. package/dist/vercel-connect/index.d.ts +1 -1
  1107. package/dist/vercel-connect/index.js +6 -12
  1108. package/dist/verify-D63A2ALE.d.ts +142 -0
  1109. package/dist/verify-EQcC3Khp.js +126 -0
  1110. package/dist/version-D87ZteKy.js +4 -0
  1111. package/dist/view-DZ63nqwt.js +105 -0
  1112. package/dist/view-Dv0A949a.d.ts +90 -0
  1113. package/dist/vue/index.d.ts +9 -18
  1114. package/dist/vue/index.js +4 -17
  1115. package/dist/vue-controller-C9tFzqAc.js +32 -0
  1116. package/dist/vue-controller-HPfMTDa2.d.ts +11 -0
  1117. package/dist/watch-DDuWYv0Y.d.ts +84 -0
  1118. package/dist/watch-DT_B3CnJ.js +139 -0
  1119. package/dist/watch-topic-EFpOIIDE.d.ts +28 -0
  1120. package/dist/watch-topic-miuymrli.js +57 -0
  1121. package/dist/wire-DEY0ajW9.js +45 -0
  1122. package/dist/workflow-builder-OrglbXUh.js +681 -0
  1123. package/dist/workflow-sdk/builder/index.d.ts +46 -15
  1124. package/dist/workflow-sdk/builder/index.js +69 -21
  1125. package/dist/workflow-sdk/index.d.ts +75 -2
  1126. package/dist/workflow-sdk/index.js +83 -3
  1127. package/dist/workflow-sdk/world/index.d.ts +51 -20
  1128. package/dist/workflow-sdk/world/index.js +189 -128
  1129. package/dist/workflow-sdk-BZ6qsRlY.js +243 -0
  1130. package/dist/workflow-sdk-q8cLwW1K.d.ts +161 -0
  1131. package/dist/workflow-sdk-world-DPMdBfzn.js +2103 -0
  1132. package/dist/workflows-C-OvZpeg.js +282 -0
  1133. package/dist/workflows-DFQeXDAI.d.ts +243 -0
  1134. package/dist/yjs/index.d.ts +67 -0
  1135. package/dist/yjs/index.js +212 -0
  1136. package/package.json +837 -44
  1137. package/schemas/cli-commands-v1.json +220 -0
  1138. package/schemas/cli-result-v1.json +138 -0
  1139. package/schemas/config-v1.json +4317 -653
  1140. package/schemas/doctor-report-v1.json +27 -1
  1141. package/schemas/snapshot-v2.json +271 -0
  1142. package/schemas/spec-manifest-v1.json +95 -0
  1143. package/skills/better-supabase/SKILL.md +19 -8
  1144. package/skills/better-supabase/references/plugins.md +2 -2
  1145. package/skills/better-supabase/references/troubleshooting.md +20 -20
  1146. package/skills/better-supabase/references/ui-recipes.md +18652 -0
  1147. package/skills/better-supabase-api/SKILL.md +14 -14
  1148. package/skills/better-supabase-api/references/adapters.md +12 -2
  1149. package/skills/better-supabase-api/references/ai.md +4 -4
  1150. package/skills/better-supabase-api/references/expo.md +7 -4
  1151. package/skills/better-supabase-api/references/powersync.md +2 -1
  1152. package/skills/better-supabase-api/references/streams-credentials.md +8 -5
  1153. package/skills/better-supabase-auth/SKILL.md +18 -11
  1154. package/skills/better-supabase-auth/references/authorization-providers.md +5 -5
  1155. package/skills/better-supabase-testing/SKILL.md +2 -2
  1156. package/testing/act-cases.json +370 -0
  1157. package/dist/access-sql-B0dF-SoF.js +0 -181
  1158. package/dist/actor-CQTlc1Hh.d.ts +0 -43
  1159. package/dist/adapter-iKgjHVPx.js +0 -1190
  1160. package/dist/agents-CVHGd7It.d.ts +0 -94
  1161. package/dist/ai-cache-CBWs1W0k.js +0 -80
  1162. package/dist/ai-cache-DaDu_G5L.d.ts +0 -64
  1163. package/dist/ai-chat-7amvXjmQ.d.ts +0 -590
  1164. package/dist/ai-chat-B24UI962.js +0 -743
  1165. package/dist/ai-files-CSPNswUY.js +0 -319
  1166. package/dist/ai-tasks-Cd1HMFvB.d.ts +0 -131
  1167. package/dist/announcements-CiyOs-xP.js +0 -107
  1168. package/dist/announcements-ZRGnScWI.d.ts +0 -72
  1169. package/dist/api-keys-CIjghYjV.d.ts +0 -156
  1170. package/dist/assistant-DwdpDH1q.d.ts +0 -147
  1171. package/dist/attributes-5dYul0u0.js +0 -13
  1172. package/dist/authorization-BFCqamMs.d.ts +0 -172
  1173. package/dist/base64-D2gsioCY.js +0 -42
  1174. package/dist/before-route-CnR0C0Jr.js +0 -30
  1175. package/dist/bind-Bu_ZNa3W.d.ts +0 -62
  1176. package/dist/bind-l4kAvYSv.js +0 -97
  1177. package/dist/block-events-CrT8r7Fe.js +0 -76
  1178. package/dist/block-fields-GFkxl4dP.js +0 -49
  1179. package/dist/block-fields-SJ6fEf3o.d.ts +0 -31
  1180. package/dist/block-helpers-CKtbFcRv.d.ts +0 -37
  1181. package/dist/block-helpers-DWHxHsEQ.js +0 -190
  1182. package/dist/block-hooks-BmjMyXTa.js +0 -114
  1183. package/dist/block-hooks-plbZ0AbJ.d.ts +0 -107
  1184. package/dist/block-transport-BLr-ZgLc.js +0 -59
  1185. package/dist/block-transport-DvaoPuZ9.d.ts +0 -48
  1186. package/dist/bucket-Cl46E3jS.d.ts +0 -347
  1187. package/dist/build-BXIzE6Xv.js +0 -689
  1188. package/dist/channel-_2Mx1Oyu.d.ts +0 -70
  1189. package/dist/channels-CkgQ_X60.js +0 -114
  1190. package/dist/claims-DDBQT6BK.js +0 -61
  1191. package/dist/cli/bin.d.ts +0 -1
  1192. package/dist/cli/codemod-Bl_tQpHn.js +0 -491
  1193. package/dist/cli/command-CK14fP91.js +0 -502
  1194. package/dist/cli/config-B9HkL8nF.js +0 -2
  1195. package/dist/cli/config-DU7EJImt.js +0 -49
  1196. package/dist/cli/config-NiPxAmUF.js +0 -1077
  1197. package/dist/cli/db-DOBPt660.js +0 -52
  1198. package/dist/cli/diff-SjkO5rNr.js +0 -752
  1199. package/dist/cli/dist-DBPdlPYK.js +0 -1112
  1200. package/dist/cli/dist-DRAVaE6w.js +0 -842
  1201. package/dist/cli/dist-DreZ24Sz.js +0 -129
  1202. package/dist/cli/doctor-DJk0aeBi.js +0 -3591
  1203. package/dist/cli/env-CJLbUVPB.js +0 -108
  1204. package/dist/cli/env-qXgyMV6r.js +0 -511
  1205. package/dist/cli/errors-4v4DTtda.js +0 -56
  1206. package/dist/cli/fastest-levenshtein-CFN-lNDv.js +0 -120
  1207. package/dist/cli/gen-CCMc39Dx.js +0 -3100
  1208. package/dist/cli/gen-DRmzPI75.js +0 -2
  1209. package/dist/cli/init-BHuEQrQK.js +0 -765
  1210. package/dist/cli/introspect-DzR2nyQb.js +0 -81
  1211. package/dist/cli/io-DI1mTdSA.js +0 -33
  1212. package/dist/cli/jsonc-BUniUpOk.js +0 -2
  1213. package/dist/cli/keys-BGCnnb-s.js +0 -85
  1214. package/dist/cli/openapi-BlRJ18s3.js +0 -66
  1215. package/dist/cli/project-DZRaBaY7.js +0 -75
  1216. package/dist/cli/prompts-BNcNfAve.js +0 -1142
  1217. package/dist/cli/prompts-BTYQGunc.js +0 -2
  1218. package/dist/cli/read-sets-CETOSFx4.js +0 -223
  1219. package/dist/cli/rolldown-runtime-BPOCksWG.js +0 -24
  1220. package/dist/cli/run-BqDPh9UH.js +0 -361
  1221. package/dist/cli/seed-DQzqT7LP.js +0 -100
  1222. package/dist/cli/skills-QQs4q68J.js +0 -138
  1223. package/dist/cli/sql-B8csQPyn.js +0 -495
  1224. package/dist/cli/sql-layout-D6cphHT3.js +0 -69
  1225. package/dist/cli/style-C0NFdJRL.js +0 -29
  1226. package/dist/cli/supabase-toml-B-bIukQF.js +0 -1095
  1227. package/dist/cli/typegen-version-DeFbtzYI.js +0 -8
  1228. package/dist/cli/version-59gcepIG.js +0 -4
  1229. package/dist/client-CI0Z2zWX.js +0 -277
  1230. package/dist/clone-BfgmLU90.js +0 -21
  1231. package/dist/cloud-event-BnmD5fb9.js +0 -46
  1232. package/dist/cloud-event-C1JCc1bH.d.ts +0 -50
  1233. package/dist/compiler-DY_wkj4R.d.ts +0 -14
  1234. package/dist/compose-BIBNgAnq.js +0 -53
  1235. package/dist/composite--yqry7uW.d.ts +0 -146
  1236. package/dist/composite-DXVUibdi.js +0 -130
  1237. package/dist/config-D44Y7PAv.d.ts +0 -984
  1238. package/dist/config-Dn7F5k9A.js +0 -202
  1239. package/dist/connector-Dv8kK0MO.d.ts +0 -107
  1240. package/dist/connectors-CrpknU0P.d.ts +0 -120
  1241. package/dist/context-BCrWe7ow.d.ts +0 -237
  1242. package/dist/cron-DVPUg5k3.js +0 -145
  1243. package/dist/csv-DCK-PT1n.js +0 -25
  1244. package/dist/define-B-TVjC25.js +0 -1915
  1245. package/dist/define-CJJkkr1-.d.ts +0 -980
  1246. package/dist/embeddings-4ZvFzjsU.js +0 -127
  1247. package/dist/embeddings-C9KGQnXt.d.ts +0 -68
  1248. package/dist/ended-XjeGQ5XW.d.ts +0 -63
  1249. package/dist/entitlements-BKSVGtrG.d.ts +0 -51
  1250. package/dist/entitlements-DRl6ZJUm.js +0 -24
  1251. package/dist/envelope-DqnYGRw7.js +0 -47
  1252. package/dist/errors-B11Duf73.js +0 -266
  1253. package/dist/errors-DLjJHPLK.js +0 -44
  1254. package/dist/escape-like-ImTK0ps_.d.ts +0 -15
  1255. package/dist/eve-gT2Fpjut.d.ts +0 -151
  1256. package/dist/events-DWDhx77e.d.ts +0 -549
  1257. package/dist/executor-BVBFM86G.d.ts +0 -36
  1258. package/dist/executor-Bq28caBo.js +0 -718
  1259. package/dist/executor-C-R4pucm.js +0 -83
  1260. package/dist/executor-CaWigTyR.d.ts +0 -148
  1261. package/dist/executor-DbvExCFC.d.ts +0 -30
  1262. package/dist/executor-De1Of3m3.js +0 -523
  1263. package/dist/executor-DvsBbNBS.d.ts +0 -261
  1264. package/dist/field-errors-BFOa7WhB.d.ts +0 -99
  1265. package/dist/field-errors-VF1yb8yI.js +0 -13
  1266. package/dist/framework-BmzgK32X.d.ts +0 -25
  1267. package/dist/framework-a7aRCIqv.js +0 -51
  1268. package/dist/gateway-C1ssRHnf.d.ts +0 -130
  1269. package/dist/graph-BGyLLFLX.js +0 -265
  1270. package/dist/guards-BnzDvFrz.js +0 -10
  1271. package/dist/history-BZih6SFP.js +0 -64
  1272. package/dist/hooks-1BTCJsiw.js +0 -309
  1273. package/dist/impersonation-DcqaTBHx.js +0 -148
  1274. package/dist/inbox-i7E1ppo6.d.ts +0 -384
  1275. package/dist/index-ACiNPN4Z.d.ts +0 -74
  1276. package/dist/index-Bepi-Hgg.d.ts +0 -206
  1277. package/dist/index-BkWT_uBO.d.ts +0 -51
  1278. package/dist/index-Bxih3l0u.d.ts +0 -81
  1279. package/dist/index-CLg87OBW.d.ts +0 -76
  1280. package/dist/index-CaxrMD1A.d.ts +0 -1
  1281. package/dist/index-CdZKQF98.d.ts +0 -138
  1282. package/dist/index-CewnYSpv.d.ts +0 -267
  1283. package/dist/index-ClmjK_o-.d.ts +0 -55
  1284. package/dist/index-D48jVS-N.d.ts +0 -246
  1285. package/dist/index-DQh4VCc9.d.ts +0 -98
  1286. package/dist/index-DunNRdnT.d.ts +0 -300
  1287. package/dist/json-schema-CvER4kgT.js +0 -502
  1288. package/dist/keys-4MnkWTTh.js +0 -35
  1289. package/dist/kit-CkNzZUqv.d.ts +0 -60
  1290. package/dist/kit-Fm-Fv7q5.js +0 -78
  1291. package/dist/knowledge-BXBbT0Tr.d.ts +0 -176
  1292. package/dist/knowledge-CDmiMLew.js +0 -255
  1293. package/dist/list-query-BRt-zDF7.d.ts +0 -164
  1294. package/dist/list-query-gl808ac1.js +0 -459
  1295. package/dist/live-CTAZQkwl.js +0 -257
  1296. package/dist/message-CaKlqdsX.js +0 -219
  1297. package/dist/message-CfDoR0Y6.d.ts +0 -94
  1298. package/dist/messages-B9-5887d.js +0 -715
  1299. package/dist/messages-DYP0sUTe.d.ts +0 -59
  1300. package/dist/mfa-Daak8ukG.d.ts +0 -54
  1301. package/dist/modules-DpPwzC7E.d.ts +0 -192
  1302. package/dist/modules-dxrVK3ID.js +0 -228
  1303. package/dist/onboarding-BZGHYJks.d.ts +0 -62
  1304. package/dist/outbox-Cq7pPYvl.d.ts +0 -161
  1305. package/dist/path-Cv__-OTj.d.ts +0 -17
  1306. package/dist/plugin-FGY8UhYm.d.ts +0 -151
  1307. package/dist/pool-CAu2nLrL.d.ts +0 -89
  1308. package/dist/postgrest-BLVdEnfe.d.ts +0 -53
  1309. package/dist/problem-BreOl8b8.js +0 -115
  1310. package/dist/problem-DD8LZFjc.d.ts +0 -67
  1311. package/dist/provider-D-UEMvSD.d.ts +0 -113
  1312. package/dist/provider-Di3sRutW.js +0 -57
  1313. package/dist/query-BQ-NaZon.js +0 -303
  1314. package/dist/queue-CLJurhdy.d.ts +0 -427
  1315. package/dist/react-F80mF4-t.js +0 -409
  1316. package/dist/react-topic-seAWjL3_.js +0 -38
  1317. package/dist/read-set-DuKWC9Mj.js +0 -314
  1318. package/dist/refusal-CeJWxmkH.js +0 -61
  1319. package/dist/refusal-DhSU2Vvr.d.ts +0 -15
  1320. package/dist/replicas-CwrYp5Zj.js +0 -94
  1321. package/dist/resolve-ChTYeTEl.d.ts +0 -169
  1322. package/dist/resolve-tJZY3FEa.js +0 -697
  1323. package/dist/resource-BsvzCMlX.js +0 -212
  1324. package/dist/resource-IPS5xi9q.d.ts +0 -74
  1325. package/dist/respond-BUgsXNgk.js +0 -91
  1326. package/dist/respond-DprrgyXX.d.ts +0 -93
  1327. package/dist/result-D7y2fT87.d.ts +0 -282
  1328. package/dist/result-DzUbqgdW.js +0 -128
  1329. package/dist/scope-CDHcS7dE.js +0 -90
  1330. package/dist/search-CUWCRYKL.js +0 -9
  1331. package/dist/server-Bh0EVSwU.d.ts +0 -558
  1332. package/dist/session-ChiXDZdZ.d.ts +0 -72
  1333. package/dist/shared-CBxosKK3.js +0 -75
  1334. package/dist/shared-CxWmcyqB.js +0 -73
  1335. package/dist/sign-in-Cb1mwv6X.js +0 -86
  1336. package/dist/signers-4y62_VIi.d.ts +0 -166
  1337. package/dist/spec-pins--j6mTok4.js +0 -27
  1338. package/dist/spec-pins-C89s6DyW.d.ts +0 -27
  1339. package/dist/standard-BK0cqJ7y.js +0 -25
  1340. package/dist/standard-CYsm7xpT.d.ts +0 -7
  1341. package/dist/stats-D_AD9GGu.js +0 -1123
  1342. package/dist/store-CGjgWu5n.d.ts +0 -68
  1343. package/dist/stripe-BMj5LtsT.js +0 -38
  1344. package/dist/stripe-D04h-QBT.d.ts +0 -136
  1345. package/dist/support-ig_K4PvS.js +0 -314
  1346. package/dist/support-view-CVOJJLpc.d.ts +0 -17
  1347. package/dist/tags-Cx-LnIQP.d.ts +0 -30
  1348. package/dist/tee-CoEppCER.js +0 -101
  1349. package/dist/template--jDkl3UP.js +0 -114
  1350. package/dist/template-CwO38Do8.d.ts +0 -6
  1351. package/dist/temporal-BJGitm-h.js +0 -79
  1352. package/dist/temporal-required-BVvW7SYJ.js +0 -20
  1353. package/dist/tenant-BxNFk9bx.d.ts +0 -17
  1354. package/dist/tenant-I1TEZ_BX.js +0 -27
  1355. package/dist/timing-CyTQPubY.js +0 -92
  1356. package/dist/types-6BdhkmZe.d.ts +0 -340
  1357. package/dist/types-6cYK9pbJ.js +0 -29
  1358. package/dist/types-6rocye-y.d.ts +0 -156
  1359. package/dist/types-AYOvcyep.d.ts +0 -359
  1360. package/dist/types-C05bxW-W.d.ts +0 -220
  1361. package/dist/types-DGs5L0VN.d.ts +0 -192
  1362. package/dist/usage-CrvrL2vw.d.ts +0 -177
  1363. package/dist/vault-wlbBhqm7.d.ts +0 -50
  1364. package/dist/verify-DL41hbvY.js +0 -232
  1365. package/dist/verify-DPuWngD4.d.ts +0 -172
  1366. package/dist/version-C6OfRAIn.js +0 -4
  1367. package/dist/view-BeFcRV6G.js +0 -99
  1368. package/dist/view-CF7ihnkg.d.ts +0 -87
  1369. package/dist/watch-DI34G86j.d.ts +0 -60
  1370. package/dist/watch-Xuxrvxq-.js +0 -122
  1371. package/dist/wire-DtZQ4sdE.js +0 -45
  1372. package/dist/workflow-builder-DJ1oHn8g.js +0 -398
  1373. package/dist/workflow-sdk-B3yLD6Br.d.ts +0 -98
  1374. package/dist/workflow-sdk-C2WJ_G2O.js +0 -173
  1375. package/dist/workflow-sdk-world-D-prir6O.js +0 -1397
  1376. package/dist/workflows-B0j9WKPu.d.ts +0 -185
  1377. package/dist/workflows-wu1WWBn7.js +0 -216
@@ -0,0 +1,3892 @@
1
+ //#region src/config/names.ts
2
+ /** The steps `better-supabase gen` runs, in the order it runs them. */
3
+ const GEN_TASKS = [
4
+ "types",
5
+ "sql",
6
+ "spec",
7
+ "seed",
8
+ "scaffold",
9
+ "env"
10
+ ];
11
+ /** Glue `better-supabase init` and `add` write for a framework or runtime. */
12
+ const INTEGRATION_NAMES = [
13
+ "next",
14
+ "hono",
15
+ "orpc",
16
+ "edge",
17
+ "expo",
18
+ "mcp",
19
+ "client",
20
+ "react"
21
+ ];
22
+ const INTEGRATION_INFO = {
23
+ client: {
24
+ title: "Browser client",
25
+ description: "A browser client with cookie sessions shared with the server.",
26
+ requires: []
27
+ },
28
+ next: {
29
+ title: "Next.js",
30
+ description: "The proxy, and helpers for Server Components, route handlers and actions.",
31
+ requires: ["client"]
32
+ },
33
+ react: {
34
+ title: "React",
35
+ description: "A React provider and typed TanStack Query hooks.",
36
+ requires: ["client"]
37
+ },
38
+ hono: {
39
+ title: "Hono",
40
+ description: "Hono middleware, handlers and REST resources.",
41
+ requires: []
42
+ },
43
+ orpc: {
44
+ title: "oRPC",
45
+ description: "oRPC middleware with a typed context and ORPCError mapping.",
46
+ requires: []
47
+ },
48
+ edge: {
49
+ title: "Edge Function",
50
+ description: "A Supabase Edge Function with CORS and Problem Details.",
51
+ requires: []
52
+ },
53
+ expo: {
54
+ title: "Expo",
55
+ description: "Expo Router server loaders, API routes and middleware, and a native client.",
56
+ requires: ["client"]
57
+ },
58
+ mcp: {
59
+ title: "MCP server",
60
+ description: "An MCP server over Streamable HTTP, as an Edge Function.",
61
+ requires: []
62
+ }
63
+ };
64
+ /** The agent folders `better-supabase skills install` writes to. */
65
+ const SKILLS_AGENTS = [
66
+ "cursor",
67
+ "claude",
68
+ "agents"
69
+ ];
70
+ //#endregion
71
+ //#region src/preset/blocks.ts
72
+ /**
73
+ * Every block a preset code can select, by bit position. Append-only: a new
74
+ * block goes at the end, and a removed block becomes `null` (a tombstone) so
75
+ * the blocks after it keep their bits. A test checks that it lists every SQL
76
+ * module.
77
+ */
78
+ const PRESET_BLOCKS = [
79
+ "updated-at",
80
+ "actor",
81
+ "audit",
82
+ "tenant",
83
+ "invitations",
84
+ "reserved-slugs",
85
+ "jobs",
86
+ "idempotency",
87
+ "webhook-inbox",
88
+ "realtime-tables",
89
+ "jsonb-schemas",
90
+ "pgtap",
91
+ "grants",
92
+ "read-sets",
93
+ "mfa",
94
+ "entitlements",
95
+ "rate-limit",
96
+ "vector-search",
97
+ "access",
98
+ "support-sessions",
99
+ "organizations",
100
+ "profiles",
101
+ "outbox",
102
+ "notifications",
103
+ "webhooks-out",
104
+ "sessions",
105
+ "webhooks-in",
106
+ "api-keys",
107
+ "settings",
108
+ "usage",
109
+ "billing",
110
+ "flags",
111
+ "comments",
112
+ "attachments",
113
+ "data-lifecycle",
114
+ "sso",
115
+ "onboarding",
116
+ "waitlist",
117
+ "announcements",
118
+ "streams",
119
+ "credentials",
120
+ "workflows",
121
+ "workflow-sdk-world",
122
+ "workflow-builder",
123
+ "chat-sdk-state",
124
+ "inbox",
125
+ "ai-chat",
126
+ "ai-files",
127
+ "knowledge",
128
+ "memory",
129
+ "agents",
130
+ "connectors",
131
+ "ai-tasks",
132
+ "push",
133
+ "ai-cache",
134
+ "ai-providers",
135
+ "number-sequences",
136
+ "teams",
137
+ "tags",
138
+ "state-machine",
139
+ "custom-fields",
140
+ "share-links",
141
+ "reminders",
142
+ "imports",
143
+ "subjects",
144
+ "rank",
145
+ "saved-views",
146
+ "relations",
147
+ "bulk",
148
+ "search",
149
+ "metrics",
150
+ "calendar",
151
+ "bookings",
152
+ "versions",
153
+ "trash",
154
+ "reactions",
155
+ "approvals",
156
+ "access-requests",
157
+ "documents",
158
+ "catalog",
159
+ "inventory",
160
+ "drive",
161
+ "drive-files",
162
+ "orders",
163
+ "promotions",
164
+ "forms",
165
+ "signatures",
166
+ "time-tracking",
167
+ "identities",
168
+ "service-principals",
169
+ "templates",
170
+ "pipelines",
171
+ "parties",
172
+ "engagements",
173
+ "deals",
174
+ "work-items",
175
+ "quotes",
176
+ "invoices",
177
+ "sla",
178
+ "targets",
179
+ "hiring",
180
+ "employees",
181
+ "collections",
182
+ "ensure-rls",
183
+ "signing-keys",
184
+ "shared-signals",
185
+ "oauth-server",
186
+ "domains",
187
+ "reviews",
188
+ "leave",
189
+ "rules"
190
+ ];
191
+ //#endregion
192
+ //#region src/preset/fields.ts
193
+ /** Types a field's values against `PresetConventions`. */
194
+ function field(definition) {
195
+ return definition;
196
+ }
197
+ function integrationLabel(name) {
198
+ const { title, description } = INTEGRATION_INFO[name];
199
+ return {
200
+ label: title,
201
+ hint: description
202
+ };
203
+ }
204
+ /** The tenant names a preset can set (`sql.naming.tenant`), in code order. */
205
+ const PRESET_TENANT_NAMES = [
206
+ "organization",
207
+ "workspace",
208
+ "team"
209
+ ];
210
+ /** The frameworks `/create` and `init --preset` set up glue for. */
211
+ const PRESET_FRAMEWORKS = [
212
+ "next",
213
+ "vite",
214
+ "tanstack-start",
215
+ "expo",
216
+ "sveltekit",
217
+ "nuxt",
218
+ "hono",
219
+ "astro",
220
+ "react-router"
221
+ ];
222
+ /**
223
+ * The convention fields, in code order. Append new fields at the end with
224
+ * the next `since`, and never remove or reorder one.
225
+ */
226
+ const PRESET_FIELDS = [
227
+ field({
228
+ key: "framework",
229
+ label: "Framework",
230
+ values: PRESET_FRAMEWORKS,
231
+ labels: {
232
+ next: { label: "Next.js" },
233
+ vite: { label: "Vite" },
234
+ "tanstack-start": { label: "TanStack Start" },
235
+ expo: { label: "Expo" },
236
+ sveltekit: { label: "SvelteKit" },
237
+ nuxt: { label: "Nuxt" },
238
+ hono: { label: "Hono" },
239
+ astro: { label: "Astro" },
240
+ "react-router": { label: "React Router" }
241
+ },
242
+ default: "next",
243
+ bits: 5,
244
+ since: 1
245
+ }),
246
+ field({
247
+ key: "platforms",
248
+ label: "Platforms",
249
+ values: [
250
+ "web",
251
+ "native",
252
+ "both"
253
+ ],
254
+ labels: {
255
+ web: { label: "Web" },
256
+ native: { label: "Native" },
257
+ both: { label: "Web and native" }
258
+ },
259
+ default: "web",
260
+ bits: 2,
261
+ since: 1
262
+ }),
263
+ field({
264
+ key: "casing",
265
+ label: "Casing",
266
+ values: ["snake", "camel"],
267
+ labels: {
268
+ snake: {
269
+ label: "snake_case",
270
+ hint: "Rows keep the database names."
271
+ },
272
+ camel: {
273
+ label: "camelCase",
274
+ hint: "Rows are renamed inside the PostgREST query."
275
+ }
276
+ },
277
+ default: "snake",
278
+ bits: 2,
279
+ since: 1
280
+ }),
281
+ field({
282
+ key: "idType",
283
+ label: "ID type",
284
+ values: [
285
+ "uuid",
286
+ "text",
287
+ "bigint",
288
+ "integer"
289
+ ],
290
+ labels: {
291
+ uuid: { label: "UUID" },
292
+ text: { label: "Text" },
293
+ bigint: { label: "Bigint" },
294
+ integer: { label: "Integer" }
295
+ },
296
+ default: "uuid",
297
+ bits: 3,
298
+ since: 1
299
+ }),
300
+ field({
301
+ key: "scope",
302
+ label: "Row ownership",
303
+ values: [
304
+ "tenant",
305
+ "user",
306
+ "none"
307
+ ],
308
+ labels: {
309
+ tenant: {
310
+ label: "Per tenant",
311
+ hint: "Rows belong to a tenant, checked through access."
312
+ },
313
+ user: {
314
+ label: "Per user",
315
+ hint: "Rows belong to the signed-in user."
316
+ },
317
+ none: {
318
+ label: "Shared",
319
+ hint: "One shared space for every signed-in user."
320
+ }
321
+ },
322
+ default: "tenant",
323
+ bits: 2,
324
+ since: 1
325
+ }),
326
+ field({
327
+ key: "tenantName",
328
+ label: "Tenant name",
329
+ values: PRESET_TENANT_NAMES,
330
+ labels: {
331
+ organization: { label: "Organization" },
332
+ workspace: { label: "Workspace" },
333
+ team: { label: "Team" }
334
+ },
335
+ default: "organization",
336
+ bits: 3,
337
+ since: 1
338
+ }),
339
+ field({
340
+ key: "access",
341
+ label: "Auth and permissions",
342
+ values: [
343
+ "roles",
344
+ "catalog",
345
+ "provider",
346
+ "custom"
347
+ ],
348
+ labels: {
349
+ roles: {
350
+ label: "Built-in roles",
351
+ hint: "Owner, admin, member and viewer, mapped to permission keys in the config."
352
+ },
353
+ catalog: {
354
+ label: "Permissions tables",
355
+ hint: "Role, permission and override tables in the database."
356
+ },
357
+ provider: {
358
+ label: "Your own provider",
359
+ hint: "Any library that implements AuthorizationProvider."
360
+ },
361
+ custom: {
362
+ label: "Custom SQL",
363
+ hint: "Your own SQL expressions."
364
+ }
365
+ },
366
+ default: "roles",
367
+ bits: 3,
368
+ since: 1
369
+ }),
370
+ field({
371
+ key: "api",
372
+ label: "API schema",
373
+ values: ["none", "api"],
374
+ labels: {
375
+ none: {
376
+ label: "Module schema only",
377
+ hint: "The Data API reaches no module tables."
378
+ },
379
+ api: {
380
+ label: "Data API schema (api)",
381
+ hint: "Security invoker wrappers in an api schema, so the Data API reaches them without exposing the module schema."
382
+ }
383
+ },
384
+ default: "none",
385
+ bits: 2,
386
+ since: 1
387
+ }),
388
+ field({
389
+ key: "integrations",
390
+ label: "Integrations",
391
+ values: [
392
+ "next",
393
+ "hono",
394
+ "orpc",
395
+ "edge",
396
+ "expo",
397
+ "mcp",
398
+ "client",
399
+ "react"
400
+ ],
401
+ labels: {
402
+ next: integrationLabel("next"),
403
+ hono: integrationLabel("hono"),
404
+ orpc: integrationLabel("orpc"),
405
+ edge: integrationLabel("edge"),
406
+ expo: integrationLabel("expo"),
407
+ mcp: integrationLabel("mcp"),
408
+ client: integrationLabel("client"),
409
+ react: integrationLabel("react")
410
+ },
411
+ default: [],
412
+ bits: 16,
413
+ multi: true,
414
+ since: 1
415
+ })
416
+ ];
417
+ /** A convention field by key, with its values and labels typed. */
418
+ function presetField(key) {
419
+ const found = PRESET_FIELDS.find((each) => each.key === key);
420
+ if (found === void 0) throw new Error(`Unknown preset field ${key}`);
421
+ return found;
422
+ }
423
+ /** A field value's label, or the value itself when it has none. */
424
+ function presetValueLabel(key, value) {
425
+ const labels = presetField(key).labels;
426
+ return (Object.hasOwn(labels, value) ? labels[value] : void 0) ?? { label: value };
427
+ }
428
+ /**
429
+ * The integrations `init --preset` adds for a framework whatever the
430
+ * selection says: the framework's own one, when it has one, then what that
431
+ * one requires.
432
+ */
433
+ function integrationsForFramework(framework) {
434
+ const own = INTEGRATION_NAMES.find((name) => name === framework);
435
+ return own === void 0 ? [] : [own, ...INTEGRATION_INFO[own].requires];
436
+ }
437
+ /** The newest code version; `encodePreset` writes it. */
438
+ const PRESET_VERSION = 1;
439
+ /** Every convention at its default. */
440
+ const DEFAULT_CONVENTIONS = {
441
+ framework: "next",
442
+ platforms: "web",
443
+ casing: "snake",
444
+ idType: "uuid",
445
+ scope: "tenant",
446
+ tenantName: "organization",
447
+ access: "roles",
448
+ api: "none",
449
+ integrations: []
450
+ };
451
+ //#endregion
452
+ //#region src/preset/code.ts
453
+ const BASE62 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
454
+ const LAYOUT = {
455
+ fields: PRESET_FIELDS,
456
+ blocks: PRESET_BLOCKS,
457
+ version: 1
458
+ };
459
+ function toBase62(value) {
460
+ if (value === 0n) return "0";
461
+ let out = "";
462
+ let rest = value;
463
+ while (rest > 0n) {
464
+ out = BASE62.charAt(Number(rest % 62n)) + out;
465
+ rest /= 62n;
466
+ }
467
+ return out;
468
+ }
469
+ /** `text` holds only base62 digits (`isPresetCode`). */
470
+ function fromBase62(text) {
471
+ let value = 0n;
472
+ for (const char of text) value = value * 62n + BigInt(BASE62.indexOf(char));
473
+ return value;
474
+ }
475
+ const mask = (bits) => (1n << BigInt(bits)) - 1n;
476
+ /** The conventions as a record, for reading a field by its key. */
477
+ function valueOf(preset, key) {
478
+ const entry = Object.entries(preset).find(([name]) => name === key)?.[1];
479
+ if (typeof entry === "string") return entry;
480
+ return Array.isArray(entry) && entry.every((each) => typeof each === "string") ? entry : void 0;
481
+ }
482
+ function indexIn(field, value) {
483
+ const index = field.values.indexOf(value);
484
+ if (index === -1) throw new TypeError(`Preset ${field.key} "${value}" is not one of ${field.values.join(", ")}.`);
485
+ return index;
486
+ }
487
+ /**
488
+ * The preset as a code: a version character, then base62 of one BigInt that
489
+ * holds each field's value index and a bit per selected block.
490
+ */
491
+ function encodePreset(preset, layout = LAYOUT) {
492
+ return encodeWith((key) => valueOf(preset, key), preset.blocks ?? [], layout);
493
+ }
494
+ function encodeWith(read, blocks, layout) {
495
+ let value = 0n;
496
+ let offset = 0n;
497
+ for (const field of layout.fields) {
498
+ const given = read(field.key) ?? field.default;
499
+ let bits;
500
+ if (field.multi === true) {
501
+ const list = typeof given === "string" ? [given] : given;
502
+ bits = 0n;
503
+ for (const each of list) bits |= 1n << BigInt(indexIn(field, each));
504
+ } else bits = BigInt(indexIn(field, typeof given === "string" ? given : ""));
505
+ value |= bits << offset;
506
+ offset += BigInt(field.bits);
507
+ }
508
+ for (const name of new Set(blocks)) {
509
+ const index = layout.blocks.indexOf(name);
510
+ if (index === -1) throw new TypeError(`Preset block "${name}" is not a block. Blocks: ${layout.blocks.filter((each) => each !== null).join(", ")}`);
511
+ value |= 1n << offset + BigInt(index);
512
+ }
513
+ return BASE62.charAt(layout.version) + toBase62(value);
514
+ }
515
+ /**
516
+ * The preset with one convention set to `value`, checked against the field:
517
+ * a value the field doesn't list throws. For a field that takes several
518
+ * values (`integrations`), `value` switches that one on or off.
519
+ */
520
+ function withPresetField(preset, key, value) {
521
+ const field = LAYOUT.fields.find((each) => each.key === key);
522
+ const current = valueOf(preset, key);
523
+ let next = value;
524
+ if (field?.multi === true) {
525
+ const list = typeof current === "string" ? [current] : current ?? [];
526
+ next = list.includes(value) ? list.filter((each) => each !== value) : [...list, value];
527
+ }
528
+ return {
529
+ ...decodePreset(encodeWith((name) => name === key ? next : valueOf(preset, name), preset.blocks, LAYOUT)).preset,
530
+ blocks: preset.blocks
531
+ };
532
+ }
533
+ /**
534
+ * Reads a code from `encodePreset`. A code from an older version decodes
535
+ * with the fields it predates at their defaults, listed in `derived`. A
536
+ * code from a newer release throws, naming the upgrade.
537
+ */
538
+ function decodePreset(code, layout = LAYOUT) {
539
+ const version = BASE62.indexOf(code.charAt(0));
540
+ if (!isPresetCode(code)) throw new TypeError(`"${code}" is not a preset code: a code starts with its version, such as "${BASE62.charAt(layout.version)}".`);
541
+ if (version > layout.version) throw new TypeError(`Preset code "${code}" is version ${String(version)}; this better-supabase reads up to ${String(layout.version)}. Upgrade better-supabase.`);
542
+ let value = fromBase62(code.slice(1));
543
+ const conventions = {};
544
+ const derived = [];
545
+ for (const field of layout.fields) {
546
+ if (field.since > version) {
547
+ conventions[field.key] = field.default;
548
+ derived.push(field.key);
549
+ continue;
550
+ }
551
+ const bits = value & mask(field.bits);
552
+ value >>= BigInt(field.bits);
553
+ if (field.multi === true) {
554
+ const list = [];
555
+ field.values.forEach((each, index) => {
556
+ if (bits >> BigInt(index) & 1n) list.push(each);
557
+ });
558
+ if (bits >> BigInt(field.values.length) !== 0n) newer(code, field.key);
559
+ conventions[field.key] = list;
560
+ } else {
561
+ const each = field.values[Number(bits)];
562
+ if (each === void 0) newer(code, field.key);
563
+ conventions[field.key] = each;
564
+ }
565
+ }
566
+ const blocks = [];
567
+ for (let index = 0; value > 0n; index += 1, value >>= 1n) {
568
+ if ((value & 1n) === 0n) continue;
569
+ if (index >= layout.blocks.length) newer(code, "blocks");
570
+ const name = layout.blocks[index];
571
+ if (name !== null && name !== void 0) blocks.push(name);
572
+ }
573
+ return {
574
+ preset: {
575
+ ...DEFAULT_CONVENTIONS,
576
+ ...conventions,
577
+ blocks
578
+ },
579
+ version,
580
+ derived
581
+ };
582
+ }
583
+ function newer(code, key) {
584
+ throw new TypeError(`Preset code "${code}" sets a ${key} value this better-supabase doesn't know. Upgrade better-supabase.`);
585
+ }
586
+ /**
587
+ * Whether `value` reads as a preset code rather than a preset name: a
588
+ * version character (`1` to `9`, then `A` to `Z`) and base62 digits.
589
+ */
590
+ function isPresetCode(value) {
591
+ return /^[1-9A-Z][0-9A-Za-z]+$/.test(value);
592
+ }
593
+ //#endregion
594
+ //#region src/preset/presets.ts
595
+ /** The preset groups in display order, with their headings. */
596
+ const PRESET_GROUPS = {
597
+ starters: "Starters",
598
+ products: "Products",
599
+ ai: "AI",
600
+ platforms: "Platforms",
601
+ everything: "Everything"
602
+ };
603
+ const SAAS = [
604
+ "organizations",
605
+ "invitations",
606
+ "teams",
607
+ "profiles",
608
+ "billing",
609
+ "entitlements",
610
+ "notifications",
611
+ "audit",
612
+ "api-keys",
613
+ "settings",
614
+ "onboarding",
615
+ "outbox"
616
+ ];
617
+ /** The named presets, for `defineConfig({ preset })` and `/create`. */
618
+ const PRESETS = {
619
+ minimal: {
620
+ name: "minimal",
621
+ title: "Minimal",
622
+ description: "User profiles, for an app without tenants yet.",
623
+ group: "starters",
624
+ blocks: ["profiles"]
625
+ },
626
+ saas: {
627
+ name: "saas",
628
+ title: "SaaS",
629
+ description: "Organizations with invitations and teams, billing and entitlements, notifications, the audit log, API keys, settings and onboarding.",
630
+ group: "starters",
631
+ blocks: SAAS
632
+ },
633
+ consumer: {
634
+ name: "consumer",
635
+ title: "Consumer app",
636
+ description: "Data owned by each user, with profiles, linked identities, MFA, sessions, notifications and push.",
637
+ group: "starters",
638
+ blocks: [
639
+ "profiles",
640
+ "identities",
641
+ "mfa",
642
+ "sessions",
643
+ "notifications",
644
+ "push"
645
+ ],
646
+ conventions: { scope: "user" }
647
+ },
648
+ crm: {
649
+ name: "crm",
650
+ title: "CRM",
651
+ description: "SaaS plus parties, pipelines and engagements, with tags, comments, custom fields, saved views and search.",
652
+ group: "products",
653
+ blocks: [
654
+ ...SAAS,
655
+ "parties",
656
+ "pipelines",
657
+ "engagements",
658
+ "tags",
659
+ "comments",
660
+ "custom-fields",
661
+ "saved-views",
662
+ "search"
663
+ ]
664
+ },
665
+ projects: {
666
+ name: "projects",
667
+ title: "Projects",
668
+ description: "SaaS plus tags, comments, attachments, a state machine, ranked ordering, reminders and time tracking.",
669
+ group: "products",
670
+ blocks: [
671
+ ...SAAS,
672
+ "tags",
673
+ "comments",
674
+ "attachments",
675
+ "state-machine",
676
+ "rank",
677
+ "reminders",
678
+ "time-tracking"
679
+ ]
680
+ },
681
+ helpdesk: {
682
+ name: "helpdesk",
683
+ title: "Help desk",
684
+ description: "SaaS plus a shared inbox, work items with SLAs, comments, attachments, tags, saved views, a knowledge base and search.",
685
+ group: "products",
686
+ blocks: [
687
+ ...SAAS,
688
+ "inbox",
689
+ "work-items",
690
+ "sla",
691
+ "comments",
692
+ "attachments",
693
+ "tags",
694
+ "saved-views",
695
+ "knowledge",
696
+ "search"
697
+ ]
698
+ },
699
+ commerce: {
700
+ name: "commerce",
701
+ title: "Commerce",
702
+ description: "SaaS plus a product catalog, inventory, orders and promotions.",
703
+ group: "products",
704
+ blocks: [
705
+ ...SAAS,
706
+ "catalog",
707
+ "inventory",
708
+ "orders",
709
+ "promotions"
710
+ ]
711
+ },
712
+ marketplace: {
713
+ name: "marketplace",
714
+ title: "Marketplace",
715
+ description: "SaaS plus parties, a product catalog, orders, invoices, reactions and share links.",
716
+ group: "products",
717
+ blocks: [
718
+ ...SAAS,
719
+ "parties",
720
+ "catalog",
721
+ "orders",
722
+ "invoices",
723
+ "reactions",
724
+ "share-links"
725
+ ]
726
+ },
727
+ scheduling: {
728
+ name: "scheduling",
729
+ title: "Scheduling",
730
+ description: "SaaS plus calendars, bookings and reminders, for a clinic, a studio or a salon.",
731
+ group: "products",
732
+ blocks: [
733
+ ...SAAS,
734
+ "calendar",
735
+ "bookings",
736
+ "reminders"
737
+ ]
738
+ },
739
+ people: {
740
+ name: "people",
741
+ title: "HR and people",
742
+ description: "SaaS plus employees, hiring, time tracking, approvals, calendars and documents.",
743
+ group: "products",
744
+ blocks: [
745
+ ...SAAS,
746
+ "employees",
747
+ "hiring",
748
+ "time-tracking",
749
+ "approvals",
750
+ "calendar",
751
+ "documents"
752
+ ]
753
+ },
754
+ drive: {
755
+ name: "drive",
756
+ title: "Cloud drive",
757
+ description: "SaaS plus a drive with attachments, share links, versions, trash and search.",
758
+ group: "products",
759
+ blocks: [
760
+ ...SAAS,
761
+ "drive",
762
+ "attachments",
763
+ "share-links",
764
+ "versions",
765
+ "trash",
766
+ "search"
767
+ ]
768
+ },
769
+ docs: {
770
+ name: "docs",
771
+ title: "Docs and wiki",
772
+ description: "SaaS plus documents with versions, comments, reactions, templates, search and share links.",
773
+ group: "products",
774
+ blocks: [
775
+ ...SAAS,
776
+ "documents",
777
+ "versions",
778
+ "comments",
779
+ "reactions",
780
+ "templates",
781
+ "search",
782
+ "share-links"
783
+ ]
784
+ },
785
+ invoicing: {
786
+ name: "invoicing",
787
+ title: "Invoicing",
788
+ description: "SaaS plus parties, quotes, invoices and number sequences for their numbers.",
789
+ group: "products",
790
+ blocks: [
791
+ ...SAAS,
792
+ "parties",
793
+ "quotes",
794
+ "invoices",
795
+ "number-sequences"
796
+ ]
797
+ },
798
+ forms: {
799
+ name: "forms",
800
+ title: "Forms and surveys",
801
+ description: "SaaS plus forms, templates and imports.",
802
+ group: "products",
803
+ blocks: [
804
+ ...SAAS,
805
+ "forms",
806
+ "templates",
807
+ "imports"
808
+ ]
809
+ },
810
+ ai: {
811
+ name: "ai",
812
+ title: "AI workspace",
813
+ description: "SaaS plus AI chat, files, a knowledge base, memory, agents and background AI tasks.",
814
+ group: "ai",
815
+ blocks: [
816
+ ...SAAS,
817
+ "ai-chat",
818
+ "ai-files",
819
+ "knowledge",
820
+ "memory",
821
+ "agents",
822
+ "ai-tasks"
823
+ ]
824
+ },
825
+ "ai-chat": {
826
+ name: "ai-chat",
827
+ title: "AI chat",
828
+ description: "SaaS plus AI chat with files, a knowledge base, memory, model providers and usage metering.",
829
+ group: "ai",
830
+ blocks: [
831
+ ...SAAS,
832
+ "ai-chat",
833
+ "ai-files",
834
+ "knowledge",
835
+ "memory",
836
+ "ai-providers",
837
+ "usage"
838
+ ]
839
+ },
840
+ "ai-agents": {
841
+ name: "ai-agents",
842
+ title: "AI agents",
843
+ description: "SaaS plus agents with background tasks, approvals, connectors, credentials, workflows and metrics.",
844
+ group: "ai",
845
+ blocks: [
846
+ ...SAAS,
847
+ "agents",
848
+ "ai-tasks",
849
+ "approvals",
850
+ "connectors",
851
+ "credentials",
852
+ "workflows",
853
+ "metrics"
854
+ ]
855
+ },
856
+ "developer-api": {
857
+ name: "developer-api",
858
+ title: "Developer API",
859
+ description: "SaaS plus outgoing webhooks, usage metering, service principals and signing keys.",
860
+ group: "platforms",
861
+ blocks: [
862
+ ...SAAS,
863
+ "webhooks-out",
864
+ "usage",
865
+ "service-principals",
866
+ "signing-keys"
867
+ ]
868
+ },
869
+ automation: {
870
+ name: "automation",
871
+ title: "Workflow automation",
872
+ description: "SaaS plus a workflow builder, workflows, jobs, outgoing webhooks, connectors and credentials.",
873
+ group: "platforms",
874
+ blocks: [
875
+ ...SAAS,
876
+ "workflow-builder",
877
+ "workflows",
878
+ "jobs",
879
+ "webhooks-out",
880
+ "connectors",
881
+ "credentials"
882
+ ]
883
+ },
884
+ enterprise: {
885
+ name: "enterprise",
886
+ title: "Enterprise-ready",
887
+ description: "SaaS plus SSO, MFA, sessions, access requests, support sessions, data export and deletion, and grants.",
888
+ group: "platforms",
889
+ blocks: [
890
+ ...SAAS,
891
+ "sso",
892
+ "mfa",
893
+ "sessions",
894
+ "access-requests",
895
+ "support-sessions",
896
+ "data-lifecycle",
897
+ "grants"
898
+ ]
899
+ },
900
+ admin: {
901
+ name: "admin",
902
+ title: "Internal admin",
903
+ description: "SaaS plus feature flags, metrics, approvals, saved views and bulk actions.",
904
+ group: "platforms",
905
+ blocks: [
906
+ ...SAAS,
907
+ "flags",
908
+ "metrics",
909
+ "approvals",
910
+ "saved-views",
911
+ "bulk"
912
+ ]
913
+ },
914
+ everything: {
915
+ name: "everything",
916
+ title: "Everything",
917
+ description: "Every block, for demos and tests.",
918
+ group: "everything",
919
+ blocks: PRESET_BLOCKS.filter((name) => name !== null)
920
+ }
921
+ };
922
+ /** The named presets in display order, grouped by `group`. */
923
+ const PRESET_NAMES = [
924
+ "minimal",
925
+ "saas",
926
+ "consumer",
927
+ "crm",
928
+ "projects",
929
+ "helpdesk",
930
+ "commerce",
931
+ "marketplace",
932
+ "scheduling",
933
+ "people",
934
+ "drive",
935
+ "docs",
936
+ "invoicing",
937
+ "forms",
938
+ "ai",
939
+ "ai-chat",
940
+ "ai-agents",
941
+ "developer-api",
942
+ "automation",
943
+ "enterprise",
944
+ "admin",
945
+ "everything"
946
+ ];
947
+ function isPresetName(value) {
948
+ return PRESET_NAMES.some((name) => name === value);
949
+ }
950
+ /** The named preset as a `Preset`: the default conventions, then its own. */
951
+ function namedPreset(name) {
952
+ const { blocks, conventions } = PRESETS[name];
953
+ return {
954
+ ...DEFAULT_CONVENTIONS,
955
+ ...conventions,
956
+ blocks
957
+ };
958
+ }
959
+ //#endregion
960
+ //#region src/preset/catalog.generated.ts
961
+ const PRESET_CATALOG = {
962
+ "blocks": [
963
+ {
964
+ "name": "updated-at",
965
+ "title": "Update timestamps",
966
+ "category": "database",
967
+ "requires": [],
968
+ "integrates": [],
969
+ "manifest": "updated-at"
970
+ },
971
+ {
972
+ "name": "actor",
973
+ "title": "Actor stamping",
974
+ "category": "identity",
975
+ "requires": [],
976
+ "integrates": [],
977
+ "manifest": "actor"
978
+ },
979
+ {
980
+ "name": "audit",
981
+ "title": "Audit log",
982
+ "category": "admin",
983
+ "requires": [],
984
+ "integrates": [
985
+ "access",
986
+ "organizations",
987
+ "data-lifecycle"
988
+ ],
989
+ "manifest": "audit"
990
+ },
991
+ {
992
+ "name": "tenant",
993
+ "title": "Tenant memberships and permission helper",
994
+ "category": "tenancy",
995
+ "requires": ["updated-at"],
996
+ "integrates": [
997
+ "access",
998
+ "invitations",
999
+ "organizations"
1000
+ ],
1001
+ "manifest": "tenant"
1002
+ },
1003
+ {
1004
+ "name": "invitations",
1005
+ "title": "Invitations",
1006
+ "category": "tenancy",
1007
+ "requires": [
1008
+ "tenant",
1009
+ "access",
1010
+ "updated-at"
1011
+ ],
1012
+ "integrates": ["organizations", "profiles"],
1013
+ "manifest": "organizations",
1014
+ "scopes": ["tenant"],
1015
+ "extraColumns": "invitations"
1016
+ },
1017
+ {
1018
+ "name": "reserved-slugs",
1019
+ "title": "Reserved slugs",
1020
+ "category": "tenancy",
1021
+ "requires": [],
1022
+ "integrates": [],
1023
+ "manifest": "reserved-slugs"
1024
+ },
1025
+ {
1026
+ "name": "jobs",
1027
+ "title": "Job queue",
1028
+ "category": "automation",
1029
+ "requires": [],
1030
+ "integrates": ["data-lifecycle"],
1031
+ "manifest": "jobs"
1032
+ },
1033
+ {
1034
+ "name": "idempotency",
1035
+ "title": "Idempotency keys",
1036
+ "category": "developer",
1037
+ "requires": [],
1038
+ "integrates": [],
1039
+ "manifest": "idempotency"
1040
+ },
1041
+ {
1042
+ "name": "webhook-inbox",
1043
+ "title": "Webhook inbox",
1044
+ "category": "developer",
1045
+ "requires": [],
1046
+ "integrates": ["data-lifecycle"],
1047
+ "manifest": "webhook-inbox",
1048
+ "extraColumns": "messages"
1049
+ },
1050
+ {
1051
+ "name": "realtime-tables",
1052
+ "title": "Realtime table changes",
1053
+ "category": "database",
1054
+ "requires": [],
1055
+ "integrates": [],
1056
+ "manifest": "realtime-tables"
1057
+ },
1058
+ {
1059
+ "name": "jsonb-schemas",
1060
+ "title": "JSON Schema checks for jsonb",
1061
+ "category": "database",
1062
+ "requires": [],
1063
+ "integrates": [],
1064
+ "manifest": "jsonb-schemas"
1065
+ },
1066
+ {
1067
+ "name": "pgtap",
1068
+ "title": "pgTAP helpers",
1069
+ "category": "database",
1070
+ "requires": [],
1071
+ "integrates": [],
1072
+ "manifest": "pgtap"
1073
+ },
1074
+ {
1075
+ "name": "grants",
1076
+ "title": "Data API grants",
1077
+ "category": "identity",
1078
+ "requires": [],
1079
+ "integrates": [],
1080
+ "manifest": "grants"
1081
+ },
1082
+ {
1083
+ "name": "read-sets",
1084
+ "title": "Read sets",
1085
+ "category": "database",
1086
+ "requires": [],
1087
+ "integrates": [],
1088
+ "manifest": "read-sets"
1089
+ },
1090
+ {
1091
+ "name": "mfa",
1092
+ "title": "MFA enforcement",
1093
+ "category": "identity",
1094
+ "requires": [],
1095
+ "integrates": [],
1096
+ "manifest": "mfa"
1097
+ },
1098
+ {
1099
+ "name": "entitlements",
1100
+ "title": "Stripe entitlements",
1101
+ "category": "commerce",
1102
+ "requires": ["tenant"],
1103
+ "integrates": ["billing", "organizations"],
1104
+ "manifest": "entitlements",
1105
+ "scopes": ["tenant"]
1106
+ },
1107
+ {
1108
+ "name": "rate-limit",
1109
+ "title": "Write rate limits",
1110
+ "category": "developer",
1111
+ "requires": [],
1112
+ "integrates": [],
1113
+ "manifest": "rate-limit"
1114
+ },
1115
+ {
1116
+ "name": "vector-search",
1117
+ "title": "Vector search",
1118
+ "category": "ai",
1119
+ "requires": [],
1120
+ "integrates": [],
1121
+ "manifest": "vector-search"
1122
+ },
1123
+ {
1124
+ "name": "access",
1125
+ "title": "Access contract",
1126
+ "category": "identity",
1127
+ "requires": ["tenant"],
1128
+ "integrates": [
1129
+ "invitations",
1130
+ "organizations",
1131
+ "tenant"
1132
+ ],
1133
+ "manifest": "access",
1134
+ "requiresByAccess": {
1135
+ "provider": [],
1136
+ "custom": []
1137
+ }
1138
+ },
1139
+ {
1140
+ "name": "support-sessions",
1141
+ "title": "Support sessions",
1142
+ "category": "admin",
1143
+ "requires": ["access", "audit"],
1144
+ "integrates": ["invitations", "approvals"],
1145
+ "manifest": "support-sessions",
1146
+ "scopes": ["tenant"]
1147
+ },
1148
+ {
1149
+ "name": "organizations",
1150
+ "title": "Organizations",
1151
+ "category": "tenancy",
1152
+ "requires": [
1153
+ "tenant",
1154
+ "access",
1155
+ "updated-at"
1156
+ ],
1157
+ "integrates": [
1158
+ "audit",
1159
+ "data-lifecycle",
1160
+ "entitlements",
1161
+ "invitations",
1162
+ "reserved-slugs"
1163
+ ],
1164
+ "manifest": "organizations",
1165
+ "scopes": ["tenant"],
1166
+ "extraColumns": "organizations"
1167
+ },
1168
+ {
1169
+ "name": "profiles",
1170
+ "title": "Profiles",
1171
+ "category": "tenancy",
1172
+ "requires": [],
1173
+ "integrates": ["tenant"],
1174
+ "manifest": "profiles",
1175
+ "tenantNameClashes": ["team"],
1176
+ "extraColumns": "profiles"
1177
+ },
1178
+ {
1179
+ "name": "outbox",
1180
+ "title": "Outbox",
1181
+ "category": "automation",
1182
+ "requires": [],
1183
+ "integrates": ["data-lifecycle"],
1184
+ "manifest": "outbox"
1185
+ },
1186
+ {
1187
+ "name": "notifications",
1188
+ "title": "Notifications",
1189
+ "category": "messaging",
1190
+ "requires": ["updated-at"],
1191
+ "integrates": [
1192
+ "access",
1193
+ "profiles",
1194
+ "tenant",
1195
+ "data-lifecycle"
1196
+ ],
1197
+ "manifest": "notifications",
1198
+ "extraColumns": "events"
1199
+ },
1200
+ {
1201
+ "name": "webhooks-out",
1202
+ "title": "Outgoing webhooks",
1203
+ "category": "developer",
1204
+ "requires": ["updated-at"],
1205
+ "integrates": [
1206
+ "access",
1207
+ "service-principals",
1208
+ "data-lifecycle"
1209
+ ],
1210
+ "manifest": "webhooks"
1211
+ },
1212
+ {
1213
+ "name": "sessions",
1214
+ "title": "Session revocation",
1215
+ "category": "identity",
1216
+ "requires": [],
1217
+ "integrates": [],
1218
+ "manifest": "sessions"
1219
+ },
1220
+ {
1221
+ "name": "webhooks-in",
1222
+ "title": "Incoming webhook endpoints",
1223
+ "category": "developer",
1224
+ "requires": [
1225
+ "access",
1226
+ "updated-at",
1227
+ "webhook-inbox"
1228
+ ],
1229
+ "integrates": [],
1230
+ "manifest": "incoming-webhooks",
1231
+ "scopes": ["tenant"]
1232
+ },
1233
+ {
1234
+ "name": "api-keys",
1235
+ "title": "API keys",
1236
+ "category": "developer",
1237
+ "requires": ["tenant", "access"],
1238
+ "integrates": [],
1239
+ "manifest": "api-keys",
1240
+ "scopes": ["tenant"],
1241
+ "extraColumns": "keys"
1242
+ },
1243
+ {
1244
+ "name": "settings",
1245
+ "title": "Settings",
1246
+ "category": "tenancy",
1247
+ "requires": ["tenant", "access"],
1248
+ "integrates": ["jsonb-schemas"],
1249
+ "manifest": "settings",
1250
+ "scopes": ["tenant"]
1251
+ },
1252
+ {
1253
+ "name": "usage",
1254
+ "title": "Usage metering and quotas",
1255
+ "category": "commerce",
1256
+ "requires": ["tenant", "access"],
1257
+ "integrates": ["entitlements", "data-lifecycle"],
1258
+ "manifest": "usage",
1259
+ "scopes": ["tenant"]
1260
+ },
1261
+ {
1262
+ "name": "billing",
1263
+ "title": "Stripe billing",
1264
+ "category": "commerce",
1265
+ "requires": ["tenant", "access"],
1266
+ "integrates": ["organizations"],
1267
+ "manifest": "billing",
1268
+ "scopes": ["tenant"]
1269
+ },
1270
+ {
1271
+ "name": "flags",
1272
+ "title": "Feature flags",
1273
+ "category": "growth",
1274
+ "requires": ["tenant"],
1275
+ "integrates": ["access", "entitlements"],
1276
+ "manifest": "flags",
1277
+ "scopes": ["tenant"],
1278
+ "extraColumns": "flags"
1279
+ },
1280
+ {
1281
+ "name": "comments",
1282
+ "title": "Comments and activity",
1283
+ "category": "collaboration",
1284
+ "requires": ["tenant", "access"],
1285
+ "integrates": [
1286
+ "jsonb-schemas",
1287
+ "notifications",
1288
+ "subjects",
1289
+ "audit",
1290
+ "workflows"
1291
+ ],
1292
+ "manifest": "comments",
1293
+ "scopes": [
1294
+ "tenant",
1295
+ "user",
1296
+ "none"
1297
+ ],
1298
+ "extraColumns": "comments"
1299
+ },
1300
+ {
1301
+ "name": "attachments",
1302
+ "title": "Attachments",
1303
+ "category": "collaboration",
1304
+ "requires": ["tenant", "access"],
1305
+ "integrates": [],
1306
+ "manifest": "attachments",
1307
+ "scopes": ["tenant"],
1308
+ "extraColumns": "attachments"
1309
+ },
1310
+ {
1311
+ "name": "data-lifecycle",
1312
+ "title": "Data lifecycle",
1313
+ "category": "admin",
1314
+ "requires": ["tenant", "access"],
1315
+ "integrates": ["*"],
1316
+ "manifest": "data-lifecycle",
1317
+ "scopes": ["tenant"]
1318
+ },
1319
+ {
1320
+ "name": "sso",
1321
+ "title": "SSO and SCIM",
1322
+ "category": "identity",
1323
+ "requires": ["tenant", "access"],
1324
+ "integrates": ["organizations", "data-lifecycle"],
1325
+ "manifest": "sso",
1326
+ "scopes": ["tenant"]
1327
+ },
1328
+ {
1329
+ "name": "onboarding",
1330
+ "title": "Onboarding",
1331
+ "category": "growth",
1332
+ "requires": ["tenant", "access"],
1333
+ "integrates": ["outbox"],
1334
+ "manifest": "onboarding",
1335
+ "scopes": ["tenant"]
1336
+ },
1337
+ {
1338
+ "name": "waitlist",
1339
+ "title": "Waitlist and invite codes",
1340
+ "category": "growth",
1341
+ "requires": ["tenant", "access"],
1342
+ "integrates": ["invitations", "organizations"],
1343
+ "manifest": "waitlist",
1344
+ "scopes": ["tenant"],
1345
+ "extraColumns": "entries"
1346
+ },
1347
+ {
1348
+ "name": "announcements",
1349
+ "title": "Announcements",
1350
+ "category": "growth",
1351
+ "requires": ["tenant", "access"],
1352
+ "integrates": ["entitlements"],
1353
+ "manifest": "announcements",
1354
+ "scopes": ["tenant"],
1355
+ "extraColumns": "announcements"
1356
+ },
1357
+ {
1358
+ "name": "streams",
1359
+ "title": "Durable streams",
1360
+ "category": "automation",
1361
+ "requires": [],
1362
+ "integrates": [],
1363
+ "manifest": "streams"
1364
+ },
1365
+ {
1366
+ "name": "credentials",
1367
+ "title": "Credentials in Vault",
1368
+ "category": "developer",
1369
+ "requires": [],
1370
+ "integrates": [],
1371
+ "manifest": "credentials"
1372
+ },
1373
+ {
1374
+ "name": "workflows",
1375
+ "title": "Workflows",
1376
+ "category": "automation",
1377
+ "requires": ["tenant", "access"],
1378
+ "integrates": ["data-lifecycle"],
1379
+ "manifest": "workflows",
1380
+ "scopes": ["tenant"]
1381
+ },
1382
+ {
1383
+ "name": "workflow-sdk-world",
1384
+ "title": "Workflow SDK World",
1385
+ "category": "automation",
1386
+ "requires": [
1387
+ "workflows",
1388
+ "jobs",
1389
+ "access"
1390
+ ],
1391
+ "integrates": [],
1392
+ "manifest": "workflow-sdk-world",
1393
+ "scopes": ["tenant"]
1394
+ },
1395
+ {
1396
+ "name": "workflow-builder",
1397
+ "title": "Workflow builder",
1398
+ "category": "automation",
1399
+ "requires": [
1400
+ "workflows",
1401
+ "tenant",
1402
+ "access"
1403
+ ],
1404
+ "integrates": [
1405
+ "service-principals",
1406
+ "subjects",
1407
+ "teams"
1408
+ ],
1409
+ "manifest": "workflow-builder",
1410
+ "scopes": ["tenant"],
1411
+ "extraColumns": "definitions"
1412
+ },
1413
+ {
1414
+ "name": "chat-sdk-state",
1415
+ "title": "Chat SDK state",
1416
+ "category": "messaging",
1417
+ "requires": [],
1418
+ "integrates": [],
1419
+ "manifest": "inbox"
1420
+ },
1421
+ {
1422
+ "name": "inbox",
1423
+ "title": "Shared inbox",
1424
+ "category": "messaging",
1425
+ "requires": [
1426
+ "tenant",
1427
+ "access",
1428
+ "updated-at",
1429
+ "teams"
1430
+ ],
1431
+ "integrates": [
1432
+ "jobs",
1433
+ "notifications",
1434
+ "reactions",
1435
+ "data-lifecycle"
1436
+ ],
1437
+ "manifest": "inbox",
1438
+ "scopes": ["tenant"],
1439
+ "tenantNameClashes": ["team"]
1440
+ },
1441
+ {
1442
+ "name": "ai-chat",
1443
+ "title": "AI chat",
1444
+ "category": "ai",
1445
+ "requires": [
1446
+ "tenant",
1447
+ "access",
1448
+ "streams"
1449
+ ],
1450
+ "integrates": [
1451
+ "entitlements",
1452
+ "ai-providers",
1453
+ "approvals",
1454
+ "data-lifecycle"
1455
+ ],
1456
+ "manifest": "ai-chat",
1457
+ "scopes": ["tenant"],
1458
+ "extraColumns": "chats"
1459
+ },
1460
+ {
1461
+ "name": "ai-files",
1462
+ "title": "AI files",
1463
+ "category": "ai",
1464
+ "requires": ["tenant", "access"],
1465
+ "integrates": ["ai-chat"],
1466
+ "manifest": "ai-files",
1467
+ "scopes": ["tenant"],
1468
+ "extraColumns": "files"
1469
+ },
1470
+ {
1471
+ "name": "knowledge",
1472
+ "title": "Knowledge",
1473
+ "category": "ai",
1474
+ "requires": [
1475
+ "tenant",
1476
+ "access",
1477
+ "vector-search"
1478
+ ],
1479
+ "integrates": [
1480
+ "ai-chat",
1481
+ "ai-files",
1482
+ "jobs"
1483
+ ],
1484
+ "manifest": "knowledge",
1485
+ "scopes": ["tenant"]
1486
+ },
1487
+ {
1488
+ "name": "memory",
1489
+ "title": "Memory",
1490
+ "category": "ai",
1491
+ "requires": [
1492
+ "tenant",
1493
+ "access",
1494
+ "vector-search"
1495
+ ],
1496
+ "integrates": ["ai-chat"],
1497
+ "manifest": "memory",
1498
+ "scopes": ["tenant"]
1499
+ },
1500
+ {
1501
+ "name": "agents",
1502
+ "title": "Agents",
1503
+ "category": "ai",
1504
+ "requires": ["tenant", "access"],
1505
+ "integrates": [],
1506
+ "manifest": "agents",
1507
+ "scopes": ["tenant"],
1508
+ "extraColumns": "agents"
1509
+ },
1510
+ {
1511
+ "name": "connectors",
1512
+ "title": "Connectors",
1513
+ "category": "automation",
1514
+ "requires": ["tenant", "access"],
1515
+ "integrates": [],
1516
+ "manifest": "connectors",
1517
+ "scopes": ["tenant"],
1518
+ "extraColumns": "servers"
1519
+ },
1520
+ {
1521
+ "name": "ai-tasks",
1522
+ "title": "AI scheduled tasks",
1523
+ "category": "ai",
1524
+ "requires": ["tenant", "access"],
1525
+ "integrates": [
1526
+ "agents",
1527
+ "ai-chat",
1528
+ "jobs"
1529
+ ],
1530
+ "manifest": "ai-tasks",
1531
+ "scopes": ["tenant"],
1532
+ "extraColumns": "tasks"
1533
+ },
1534
+ {
1535
+ "name": "push",
1536
+ "title": "Push devices",
1537
+ "category": "messaging",
1538
+ "requires": [],
1539
+ "integrates": [],
1540
+ "manifest": "push",
1541
+ "extraColumns": "devices"
1542
+ },
1543
+ {
1544
+ "name": "ai-cache",
1545
+ "title": "AI response cache",
1546
+ "category": "ai",
1547
+ "requires": [],
1548
+ "integrates": [],
1549
+ "manifest": "ai-cache"
1550
+ },
1551
+ {
1552
+ "name": "ai-providers",
1553
+ "title": "AI providers",
1554
+ "category": "ai",
1555
+ "requires": ["tenant", "access"],
1556
+ "integrates": ["ai-chat"],
1557
+ "manifest": "ai-providers",
1558
+ "scopes": ["tenant"]
1559
+ },
1560
+ {
1561
+ "name": "number-sequences",
1562
+ "title": "Number sequences",
1563
+ "category": "database",
1564
+ "requires": ["tenant", "access"],
1565
+ "integrates": ["outbox", "audit"],
1566
+ "manifest": "number-sequences",
1567
+ "scopes": ["tenant"]
1568
+ },
1569
+ {
1570
+ "name": "teams",
1571
+ "title": "Teams",
1572
+ "category": "tenancy",
1573
+ "requires": ["tenant", "access"],
1574
+ "integrates": [
1575
+ "inbox",
1576
+ "outbox",
1577
+ "audit"
1578
+ ],
1579
+ "manifest": "teams",
1580
+ "scopes": ["tenant"],
1581
+ "tenantNameClashes": ["team"],
1582
+ "extraColumns": "teams"
1583
+ },
1584
+ {
1585
+ "name": "tags",
1586
+ "title": "Tags",
1587
+ "category": "work",
1588
+ "requires": ["tenant", "access"],
1589
+ "integrates": ["outbox"],
1590
+ "manifest": "tags",
1591
+ "scopes": [
1592
+ "tenant",
1593
+ "user",
1594
+ "none"
1595
+ ],
1596
+ "extraColumns": "tags"
1597
+ },
1598
+ {
1599
+ "name": "state-machine",
1600
+ "title": "State machine",
1601
+ "category": "work",
1602
+ "requires": ["tenant", "access"],
1603
+ "integrates": [
1604
+ "outbox",
1605
+ "audit",
1606
+ "approvals"
1607
+ ],
1608
+ "manifest": "state-machine",
1609
+ "scopes": ["tenant"]
1610
+ },
1611
+ {
1612
+ "name": "custom-fields",
1613
+ "title": "Custom fields",
1614
+ "category": "work",
1615
+ "requires": ["tenant", "access"],
1616
+ "integrates": ["outbox"],
1617
+ "manifest": "custom-fields",
1618
+ "scopes": ["tenant"]
1619
+ },
1620
+ {
1621
+ "name": "share-links",
1622
+ "title": "Share links",
1623
+ "category": "collaboration",
1624
+ "requires": ["tenant", "access"],
1625
+ "integrates": [
1626
+ "ai-chat",
1627
+ "outbox",
1628
+ "versions"
1629
+ ],
1630
+ "manifest": "share-links",
1631
+ "scopes": ["tenant"],
1632
+ "extraColumns": "links"
1633
+ },
1634
+ {
1635
+ "name": "reminders",
1636
+ "title": "Reminders",
1637
+ "category": "scheduling",
1638
+ "requires": [
1639
+ "tenant",
1640
+ "access",
1641
+ "jobs"
1642
+ ],
1643
+ "integrates": ["notifications", "outbox"],
1644
+ "manifest": "reminders",
1645
+ "scopes": ["tenant"],
1646
+ "extraColumns": "reminders"
1647
+ },
1648
+ {
1649
+ "name": "imports",
1650
+ "title": "Imports",
1651
+ "category": "content",
1652
+ "requires": [
1653
+ "tenant",
1654
+ "access",
1655
+ "jobs"
1656
+ ],
1657
+ "integrates": ["attachments", "outbox"],
1658
+ "manifest": "imports",
1659
+ "scopes": ["tenant"]
1660
+ },
1661
+ {
1662
+ "name": "subjects",
1663
+ "title": "Subjects",
1664
+ "category": "identity",
1665
+ "requires": ["access"],
1666
+ "integrates": [],
1667
+ "manifest": "subjects",
1668
+ "scopes": ["tenant"]
1669
+ },
1670
+ {
1671
+ "name": "rank",
1672
+ "title": "Rank",
1673
+ "category": "database",
1674
+ "requires": ["access", "subjects"],
1675
+ "integrates": ["jobs"],
1676
+ "manifest": "rank",
1677
+ "scopes": ["tenant"]
1678
+ },
1679
+ {
1680
+ "name": "saved-views",
1681
+ "title": "Saved views",
1682
+ "category": "work",
1683
+ "requires": ["tenant", "access"],
1684
+ "integrates": [
1685
+ "outbox",
1686
+ "teams",
1687
+ "collections"
1688
+ ],
1689
+ "manifest": "saved-views",
1690
+ "scopes": ["tenant"],
1691
+ "tenantNameClashes": ["team"],
1692
+ "extraColumns": "views"
1693
+ },
1694
+ {
1695
+ "name": "relations",
1696
+ "title": "Relations",
1697
+ "category": "work",
1698
+ "requires": ["tenant", "access"],
1699
+ "integrates": ["outbox"],
1700
+ "manifest": "relations",
1701
+ "scopes": ["tenant"],
1702
+ "extraColumns": "relations"
1703
+ },
1704
+ {
1705
+ "name": "bulk",
1706
+ "title": "Bulk actions",
1707
+ "category": "work",
1708
+ "requires": ["tenant", "access"],
1709
+ "integrates": [
1710
+ "jobs",
1711
+ "outbox",
1712
+ "tags",
1713
+ "state-machine",
1714
+ "relations",
1715
+ "trash",
1716
+ "collections"
1717
+ ],
1718
+ "manifest": "bulk",
1719
+ "scopes": ["tenant"]
1720
+ },
1721
+ {
1722
+ "name": "search",
1723
+ "title": "Search",
1724
+ "category": "work",
1725
+ "requires": [
1726
+ "tenant",
1727
+ "access",
1728
+ "subjects"
1729
+ ],
1730
+ "integrates": ["share-links", "vector-search"],
1731
+ "manifest": "search",
1732
+ "scopes": ["tenant"]
1733
+ },
1734
+ {
1735
+ "name": "metrics",
1736
+ "title": "Metrics",
1737
+ "category": "admin",
1738
+ "requires": ["tenant", "access"],
1739
+ "integrates": ["usage", "jobs"],
1740
+ "manifest": "metrics",
1741
+ "scopes": ["tenant"]
1742
+ },
1743
+ {
1744
+ "name": "calendar",
1745
+ "title": "Calendar",
1746
+ "category": "scheduling",
1747
+ "requires": ["tenant", "access"],
1748
+ "integrates": [
1749
+ "share-links",
1750
+ "reminders",
1751
+ "outbox"
1752
+ ],
1753
+ "manifest": "calendar",
1754
+ "scopes": ["tenant"],
1755
+ "extraColumns": "events"
1756
+ },
1757
+ {
1758
+ "name": "bookings",
1759
+ "title": "Bookings",
1760
+ "category": "scheduling",
1761
+ "requires": ["tenant", "access"],
1762
+ "integrates": [
1763
+ "jobs",
1764
+ "share-links",
1765
+ "rate-limit",
1766
+ "calendar",
1767
+ "reminders",
1768
+ "outbox"
1769
+ ],
1770
+ "manifest": "bookings",
1771
+ "scopes": ["tenant"],
1772
+ "extraColumns": "bookings"
1773
+ },
1774
+ {
1775
+ "name": "versions",
1776
+ "title": "Versions",
1777
+ "category": "content",
1778
+ "requires": ["tenant", "access"],
1779
+ "integrates": [
1780
+ "outbox",
1781
+ "audit",
1782
+ "share-links"
1783
+ ],
1784
+ "manifest": "versions",
1785
+ "scopes": ["tenant"],
1786
+ "extraColumns": "versions"
1787
+ },
1788
+ {
1789
+ "name": "trash",
1790
+ "title": "Trash",
1791
+ "category": "content",
1792
+ "requires": ["tenant", "access"],
1793
+ "integrates": [
1794
+ "outbox",
1795
+ "audit",
1796
+ "data-lifecycle"
1797
+ ],
1798
+ "manifest": "trash",
1799
+ "scopes": ["tenant"],
1800
+ "extraColumns": "items"
1801
+ },
1802
+ {
1803
+ "name": "reactions",
1804
+ "title": "Reactions",
1805
+ "category": "collaboration",
1806
+ "requires": ["tenant", "access"],
1807
+ "integrates": [
1808
+ "outbox",
1809
+ "comments",
1810
+ "inbox"
1811
+ ],
1812
+ "manifest": "reactions",
1813
+ "scopes": ["tenant"]
1814
+ },
1815
+ {
1816
+ "name": "approvals",
1817
+ "title": "Approvals",
1818
+ "category": "work",
1819
+ "requires": ["tenant", "access"],
1820
+ "integrates": [
1821
+ "outbox",
1822
+ "audit",
1823
+ "notifications",
1824
+ "jobs",
1825
+ "teams",
1826
+ "state-machine",
1827
+ "access-requests",
1828
+ "time-tracking",
1829
+ "leave",
1830
+ "ai-chat",
1831
+ "support-sessions"
1832
+ ],
1833
+ "manifest": "approvals",
1834
+ "scopes": ["tenant"],
1835
+ "extraColumns": "requests"
1836
+ },
1837
+ {
1838
+ "name": "access-requests",
1839
+ "title": "Access requests",
1840
+ "category": "identity",
1841
+ "requires": [
1842
+ "tenant",
1843
+ "access",
1844
+ "approvals"
1845
+ ],
1846
+ "integrates": ["outbox", "audit"],
1847
+ "manifest": "access-requests",
1848
+ "scopes": ["tenant"],
1849
+ "extraColumns": "requests"
1850
+ },
1851
+ {
1852
+ "name": "documents",
1853
+ "title": "Collaborative documents",
1854
+ "category": "content",
1855
+ "requires": ["tenant", "access"],
1856
+ "integrates": [
1857
+ "outbox",
1858
+ "audit",
1859
+ "jobs",
1860
+ "versions"
1861
+ ],
1862
+ "manifest": "documents",
1863
+ "scopes": ["tenant"]
1864
+ },
1865
+ {
1866
+ "name": "catalog",
1867
+ "title": "Catalog",
1868
+ "category": "commerce",
1869
+ "requires": ["tenant", "access"],
1870
+ "integrates": [
1871
+ "outbox",
1872
+ "state-machine",
1873
+ "inventory"
1874
+ ],
1875
+ "manifest": "catalog",
1876
+ "scopes": ["tenant"],
1877
+ "extraColumns": "products"
1878
+ },
1879
+ {
1880
+ "name": "inventory",
1881
+ "title": "Inventory",
1882
+ "category": "commerce",
1883
+ "requires": [
1884
+ "tenant",
1885
+ "access",
1886
+ "catalog"
1887
+ ],
1888
+ "integrates": ["outbox"],
1889
+ "manifest": "inventory",
1890
+ "scopes": ["tenant"],
1891
+ "extraColumns": "locations"
1892
+ },
1893
+ {
1894
+ "name": "drive",
1895
+ "title": "Drive",
1896
+ "category": "content",
1897
+ "requires": [
1898
+ "tenant",
1899
+ "access",
1900
+ "drive-files"
1901
+ ],
1902
+ "integrates": [
1903
+ "outbox",
1904
+ "audit",
1905
+ "attachments",
1906
+ "versions",
1907
+ "trash",
1908
+ "teams",
1909
+ "share-links"
1910
+ ],
1911
+ "manifest": "drive",
1912
+ "scopes": ["tenant"],
1913
+ "tenantNameClashes": ["team"],
1914
+ "extraColumns": "nodes"
1915
+ },
1916
+ {
1917
+ "name": "drive-files",
1918
+ "title": "Drive files",
1919
+ "category": "content",
1920
+ "requires": ["attachments"],
1921
+ "integrates": [
1922
+ "drive",
1923
+ "outbox",
1924
+ "audit",
1925
+ "attachments",
1926
+ "versions",
1927
+ "trash",
1928
+ "teams",
1929
+ "share-links"
1930
+ ],
1931
+ "manifest": "drive",
1932
+ "scopes": ["tenant"]
1933
+ },
1934
+ {
1935
+ "name": "orders",
1936
+ "title": "Orders",
1937
+ "category": "commerce",
1938
+ "requires": [
1939
+ "tenant",
1940
+ "access",
1941
+ "catalog"
1942
+ ],
1943
+ "integrates": [
1944
+ "outbox",
1945
+ "inventory",
1946
+ "promotions",
1947
+ "number-sequences",
1948
+ "state-machine"
1949
+ ],
1950
+ "manifest": "orders",
1951
+ "scopes": ["tenant"],
1952
+ "extraColumns": "orders"
1953
+ },
1954
+ {
1955
+ "name": "promotions",
1956
+ "title": "Promotions",
1957
+ "category": "commerce",
1958
+ "requires": [
1959
+ "tenant",
1960
+ "access",
1961
+ "catalog",
1962
+ "orders"
1963
+ ],
1964
+ "integrates": ["outbox"],
1965
+ "manifest": "promotions",
1966
+ "scopes": ["tenant"],
1967
+ "extraColumns": "promotions"
1968
+ },
1969
+ {
1970
+ "name": "forms",
1971
+ "title": "Forms",
1972
+ "category": "content",
1973
+ "requires": [
1974
+ "tenant",
1975
+ "access",
1976
+ "jsonb-schemas"
1977
+ ],
1978
+ "integrates": [
1979
+ "custom-fields",
1980
+ "share-links",
1981
+ "rate-limit",
1982
+ "outbox",
1983
+ "audit"
1984
+ ],
1985
+ "manifest": "forms",
1986
+ "scopes": ["tenant"],
1987
+ "extraColumns": "forms"
1988
+ },
1989
+ {
1990
+ "name": "signatures",
1991
+ "title": "Signatures",
1992
+ "category": "content",
1993
+ "requires": [
1994
+ "tenant",
1995
+ "access",
1996
+ "versions"
1997
+ ],
1998
+ "integrates": [
1999
+ "approvals",
2000
+ "attachments",
2001
+ "outbox",
2002
+ "audit"
2003
+ ],
2004
+ "manifest": "signatures",
2005
+ "scopes": ["tenant"],
2006
+ "extraColumns": "requests"
2007
+ },
2008
+ {
2009
+ "name": "time-tracking",
2010
+ "title": "Time tracking",
2011
+ "category": "people",
2012
+ "requires": [
2013
+ "tenant",
2014
+ "access",
2015
+ "approvals"
2016
+ ],
2017
+ "integrates": ["outbox", "audit"],
2018
+ "manifest": "time-tracking",
2019
+ "scopes": ["tenant"],
2020
+ "extraColumns": "entries"
2021
+ },
2022
+ {
2023
+ "name": "identities",
2024
+ "title": "Identities",
2025
+ "category": "identity",
2026
+ "requires": [],
2027
+ "integrates": ["inbox"],
2028
+ "manifest": "identities"
2029
+ },
2030
+ {
2031
+ "name": "service-principals",
2032
+ "title": "Service principals",
2033
+ "category": "developer",
2034
+ "requires": ["tenant", "access"],
2035
+ "integrates": ["audit"],
2036
+ "manifest": "service-principals",
2037
+ "scopes": ["tenant"],
2038
+ "extraColumns": "principals"
2039
+ },
2040
+ {
2041
+ "name": "templates",
2042
+ "title": "Templates",
2043
+ "category": "content",
2044
+ "requires": ["tenant", "access"],
2045
+ "integrates": [
2046
+ "outbox",
2047
+ "audit",
2048
+ "workflow-builder",
2049
+ "jsonb-schemas"
2050
+ ],
2051
+ "manifest": "templates",
2052
+ "scopes": ["tenant"],
2053
+ "extraColumns": "templates"
2054
+ },
2055
+ {
2056
+ "name": "pipelines",
2057
+ "title": "Pipelines",
2058
+ "category": "work",
2059
+ "requires": [
2060
+ "tenant",
2061
+ "access",
2062
+ "subjects"
2063
+ ],
2064
+ "integrates": [
2065
+ "outbox",
2066
+ "audit",
2067
+ "state-machine",
2068
+ "notifications",
2069
+ "deals",
2070
+ "work-items",
2071
+ "hiring"
2072
+ ],
2073
+ "manifest": "pipelines",
2074
+ "scopes": ["tenant"],
2075
+ "extraColumns": "pipelines"
2076
+ },
2077
+ {
2078
+ "name": "parties",
2079
+ "title": "Parties",
2080
+ "category": "crm",
2081
+ "requires": ["tenant", "access"],
2082
+ "integrates": [
2083
+ "outbox",
2084
+ "audit",
2085
+ "notifications",
2086
+ "inbox"
2087
+ ],
2088
+ "manifest": "parties",
2089
+ "scopes": ["tenant"],
2090
+ "extraColumns": "companies"
2091
+ },
2092
+ {
2093
+ "name": "engagements",
2094
+ "title": "Engagements",
2095
+ "category": "crm",
2096
+ "requires": [
2097
+ "tenant",
2098
+ "access",
2099
+ "subjects"
2100
+ ],
2101
+ "integrates": ["outbox", "notifications"],
2102
+ "manifest": "engagements",
2103
+ "scopes": ["tenant"],
2104
+ "extraColumns": "engagements"
2105
+ },
2106
+ {
2107
+ "name": "deals",
2108
+ "title": "Deals",
2109
+ "category": "crm",
2110
+ "requires": [
2111
+ "tenant",
2112
+ "access",
2113
+ "subjects",
2114
+ "pipelines"
2115
+ ],
2116
+ "integrates": [
2117
+ "outbox",
2118
+ "notifications",
2119
+ "number-sequences",
2120
+ "engagements"
2121
+ ],
2122
+ "manifest": "deals",
2123
+ "scopes": ["tenant"],
2124
+ "extraColumns": "deals"
2125
+ },
2126
+ {
2127
+ "name": "work-items",
2128
+ "title": "Work items",
2129
+ "category": "work",
2130
+ "requires": [
2131
+ "tenant",
2132
+ "access",
2133
+ "subjects",
2134
+ "pipelines"
2135
+ ],
2136
+ "integrates": [
2137
+ "outbox",
2138
+ "notifications",
2139
+ "number-sequences"
2140
+ ],
2141
+ "manifest": "work-items",
2142
+ "scopes": ["tenant"],
2143
+ "tenantNameClashes": ["team"],
2144
+ "extraColumns": "items"
2145
+ },
2146
+ {
2147
+ "name": "quotes",
2148
+ "title": "Quotes",
2149
+ "category": "crm",
2150
+ "requires": [
2151
+ "tenant",
2152
+ "access",
2153
+ "subjects"
2154
+ ],
2155
+ "integrates": [
2156
+ "outbox",
2157
+ "notifications",
2158
+ "number-sequences",
2159
+ "deals",
2160
+ "relations"
2161
+ ],
2162
+ "manifest": "quotes",
2163
+ "scopes": ["tenant"],
2164
+ "extraColumns": "quotes"
2165
+ },
2166
+ {
2167
+ "name": "invoices",
2168
+ "title": "Invoices",
2169
+ "category": "commerce",
2170
+ "requires": [
2171
+ "tenant",
2172
+ "access",
2173
+ "subjects"
2174
+ ],
2175
+ "integrates": [
2176
+ "outbox",
2177
+ "audit",
2178
+ "notifications",
2179
+ "number-sequences",
2180
+ "quotes",
2181
+ "relations"
2182
+ ],
2183
+ "manifest": "invoices",
2184
+ "scopes": ["tenant"],
2185
+ "extraColumns": "invoices"
2186
+ },
2187
+ {
2188
+ "name": "sla",
2189
+ "title": "Service levels",
2190
+ "category": "work",
2191
+ "requires": [
2192
+ "tenant",
2193
+ "access",
2194
+ "subjects"
2195
+ ],
2196
+ "integrates": ["outbox", "notifications"],
2197
+ "manifest": "sla",
2198
+ "scopes": ["tenant"],
2199
+ "extraColumns": "policies"
2200
+ },
2201
+ {
2202
+ "name": "targets",
2203
+ "title": "Targets",
2204
+ "category": "crm",
2205
+ "requires": ["tenant", "access"],
2206
+ "integrates": [
2207
+ "deals",
2208
+ "work-items",
2209
+ "invoices"
2210
+ ],
2211
+ "manifest": "targets",
2212
+ "scopes": ["tenant"],
2213
+ "tenantNameClashes": ["team"],
2214
+ "extraColumns": "targets"
2215
+ },
2216
+ {
2217
+ "name": "hiring",
2218
+ "title": "Hiring",
2219
+ "category": "people",
2220
+ "requires": [
2221
+ "tenant",
2222
+ "access",
2223
+ "subjects",
2224
+ "pipelines"
2225
+ ],
2226
+ "integrates": ["outbox"],
2227
+ "manifest": "hiring",
2228
+ "scopes": ["tenant"],
2229
+ "tenantNameClashes": ["team"],
2230
+ "extraColumns": "jobs"
2231
+ },
2232
+ {
2233
+ "name": "employees",
2234
+ "title": "Employees",
2235
+ "category": "people",
2236
+ "requires": ["tenant", "access"],
2237
+ "integrates": [
2238
+ "outbox",
2239
+ "relations",
2240
+ "hiring"
2241
+ ],
2242
+ "manifest": "employees",
2243
+ "scopes": ["tenant"],
2244
+ "tenantNameClashes": ["team"],
2245
+ "extraColumns": "employees"
2246
+ },
2247
+ {
2248
+ "name": "collections",
2249
+ "title": "Collections",
2250
+ "category": "work",
2251
+ "requires": [
2252
+ "tenant",
2253
+ "access",
2254
+ "subjects"
2255
+ ],
2256
+ "integrates": ["outbox", "teams"],
2257
+ "manifest": "collections",
2258
+ "scopes": ["tenant"],
2259
+ "tenantNameClashes": ["team"],
2260
+ "extraColumns": "collections"
2261
+ },
2262
+ {
2263
+ "name": "signing-keys",
2264
+ "title": "Signing keys",
2265
+ "category": "developer",
2266
+ "requires": [],
2267
+ "integrates": ["outbox", "audit"],
2268
+ "manifest": "signing-keys"
2269
+ },
2270
+ {
2271
+ "name": "shared-signals",
2272
+ "title": "Shared signals",
2273
+ "category": "developer",
2274
+ "requires": [],
2275
+ "integrates": [
2276
+ "webhooks-out",
2277
+ "outbox",
2278
+ "audit"
2279
+ ],
2280
+ "manifest": "shared-signals"
2281
+ },
2282
+ {
2283
+ "name": "oauth-server",
2284
+ "title": "OAuth server",
2285
+ "category": "developer",
2286
+ "requires": [],
2287
+ "integrates": ["outbox", "audit"],
2288
+ "manifest": "oauth-server"
2289
+ },
2290
+ {
2291
+ "name": "domains",
2292
+ "title": "Custom domains",
2293
+ "category": "tenancy",
2294
+ "requires": ["tenant", "access"],
2295
+ "integrates": ["reserved-slugs"],
2296
+ "manifest": "domains",
2297
+ "scopes": ["tenant"]
2298
+ },
2299
+ {
2300
+ "name": "reviews",
2301
+ "title": "Reviews",
2302
+ "category": "commerce",
2303
+ "requires": ["tenant", "access"],
2304
+ "integrates": [
2305
+ "catalog",
2306
+ "orders",
2307
+ "subjects",
2308
+ "notifications",
2309
+ "outbox",
2310
+ "audit"
2311
+ ],
2312
+ "manifest": "reviews",
2313
+ "scopes": ["tenant"],
2314
+ "extraColumns": "reviews"
2315
+ },
2316
+ {
2317
+ "name": "leave",
2318
+ "title": "Leave",
2319
+ "category": "people",
2320
+ "requires": [
2321
+ "tenant",
2322
+ "access",
2323
+ "approvals"
2324
+ ],
2325
+ "integrates": ["outbox", "audit"],
2326
+ "manifest": "leave",
2327
+ "scopes": ["tenant"],
2328
+ "extraColumns": "requests"
2329
+ },
2330
+ {
2331
+ "name": "rules",
2332
+ "title": "Rules",
2333
+ "category": "automation",
2334
+ "requires": ["tenant", "access"],
2335
+ "integrates": [],
2336
+ "manifest": "rules",
2337
+ "scopes": ["tenant"]
2338
+ },
2339
+ {
2340
+ "name": "ensure-rls",
2341
+ "title": "RLS on every new table",
2342
+ "category": "database",
2343
+ "requires": [],
2344
+ "integrates": [],
2345
+ "manifest": "ensure-rls"
2346
+ }
2347
+ ],
2348
+ "manifests": [
2349
+ {
2350
+ "name": "access",
2351
+ "sql": ["access"],
2352
+ "category": "identity",
2353
+ "client": null,
2354
+ "consumes": {},
2355
+ "provides": []
2356
+ },
2357
+ {
2358
+ "name": "access-requests",
2359
+ "sql": ["access-requests"],
2360
+ "category": "identity",
2361
+ "client": {
2362
+ "export": "accessRequestsBlock",
2363
+ "subpath": "better-supabase/blocks/access-requests"
2364
+ },
2365
+ "consumes": {},
2366
+ "provides": []
2367
+ },
2368
+ {
2369
+ "name": "actor",
2370
+ "sql": ["actor"],
2371
+ "category": "identity",
2372
+ "client": null,
2373
+ "consumes": {},
2374
+ "provides": []
2375
+ },
2376
+ {
2377
+ "name": "agents",
2378
+ "sql": ["agents"],
2379
+ "category": "ai",
2380
+ "client": {
2381
+ "export": "agentsBlock",
2382
+ "subpath": "better-supabase/blocks/agents"
2383
+ },
2384
+ "consumes": {},
2385
+ "provides": []
2386
+ },
2387
+ {
2388
+ "name": "ai-cache",
2389
+ "sql": ["ai-cache"],
2390
+ "category": "ai",
2391
+ "client": {
2392
+ "export": "aiCacheBlock",
2393
+ "subpath": "better-supabase/blocks/ai-cache"
2394
+ },
2395
+ "consumes": {},
2396
+ "provides": []
2397
+ },
2398
+ {
2399
+ "name": "ai-chat",
2400
+ "sql": ["ai-chat"],
2401
+ "category": "ai",
2402
+ "client": {
2403
+ "export": "aiChatBlock",
2404
+ "subpath": "better-supabase/blocks/ai-chat"
2405
+ },
2406
+ "consumes": {},
2407
+ "provides": []
2408
+ },
2409
+ {
2410
+ "name": "ai-files",
2411
+ "sql": ["ai-files"],
2412
+ "category": "ai",
2413
+ "client": {
2414
+ "export": "aiFilesBlock",
2415
+ "subpath": "better-supabase/blocks/ai-files"
2416
+ },
2417
+ "consumes": {},
2418
+ "provides": ["files"]
2419
+ },
2420
+ {
2421
+ "name": "ai-providers",
2422
+ "sql": ["ai-providers"],
2423
+ "category": "ai",
2424
+ "client": {
2425
+ "export": "aiProvidersBlock",
2426
+ "subpath": "better-supabase/blocks/ai-providers"
2427
+ },
2428
+ "consumes": {},
2429
+ "provides": []
2430
+ },
2431
+ {
2432
+ "name": "ai-tasks",
2433
+ "sql": ["ai-tasks"],
2434
+ "category": "ai",
2435
+ "client": {
2436
+ "export": "aiTasksBlock",
2437
+ "subpath": "better-supabase/blocks/ai-tasks"
2438
+ },
2439
+ "consumes": { "notifier": "optional" },
2440
+ "provides": []
2441
+ },
2442
+ {
2443
+ "name": "announcements",
2444
+ "sql": ["announcements"],
2445
+ "category": "growth",
2446
+ "client": {
2447
+ "export": "announcementsBlock",
2448
+ "subpath": "better-supabase/blocks/announcements"
2449
+ },
2450
+ "consumes": {},
2451
+ "provides": []
2452
+ },
2453
+ {
2454
+ "name": "api-keys",
2455
+ "sql": ["api-keys"],
2456
+ "category": "developer",
2457
+ "client": {
2458
+ "export": "apiKeysBlock",
2459
+ "subpath": "better-supabase/blocks/api-keys"
2460
+ },
2461
+ "consumes": {},
2462
+ "provides": []
2463
+ },
2464
+ {
2465
+ "name": "approvals",
2466
+ "sql": ["approvals"],
2467
+ "category": "work",
2468
+ "client": {
2469
+ "export": "approvalsBlock",
2470
+ "subpath": "better-supabase/blocks/approvals"
2471
+ },
2472
+ "consumes": {},
2473
+ "provides": []
2474
+ },
2475
+ {
2476
+ "name": "attachments",
2477
+ "sql": ["attachments"],
2478
+ "category": "collaboration",
2479
+ "client": {
2480
+ "export": "attachmentsBlock",
2481
+ "subpath": "better-supabase/blocks/attachments"
2482
+ },
2483
+ "consumes": {},
2484
+ "provides": ["attachments"]
2485
+ },
2486
+ {
2487
+ "name": "audit",
2488
+ "sql": ["audit"],
2489
+ "category": "admin",
2490
+ "client": {
2491
+ "export": "auditBlock",
2492
+ "subpath": "better-supabase/blocks/audit"
2493
+ },
2494
+ "consumes": {},
2495
+ "provides": []
2496
+ },
2497
+ {
2498
+ "name": "billing",
2499
+ "sql": ["billing"],
2500
+ "category": "commerce",
2501
+ "client": {
2502
+ "export": "billingBlock",
2503
+ "subpath": "better-supabase/blocks/billing"
2504
+ },
2505
+ "consumes": {},
2506
+ "provides": []
2507
+ },
2508
+ {
2509
+ "name": "bookings",
2510
+ "sql": ["bookings"],
2511
+ "category": "scheduling",
2512
+ "client": {
2513
+ "export": "bookingsBlock",
2514
+ "subpath": "better-supabase/blocks/bookings"
2515
+ },
2516
+ "consumes": {},
2517
+ "provides": []
2518
+ },
2519
+ {
2520
+ "name": "bulk",
2521
+ "sql": ["bulk"],
2522
+ "category": "work",
2523
+ "client": {
2524
+ "export": "bulkBlock",
2525
+ "subpath": "better-supabase/blocks/bulk"
2526
+ },
2527
+ "consumes": {},
2528
+ "provides": []
2529
+ },
2530
+ {
2531
+ "name": "calendar",
2532
+ "sql": ["calendar"],
2533
+ "category": "scheduling",
2534
+ "client": {
2535
+ "export": "calendarBlock",
2536
+ "subpath": "better-supabase/blocks/calendar"
2537
+ },
2538
+ "consumes": {},
2539
+ "provides": []
2540
+ },
2541
+ {
2542
+ "name": "catalog",
2543
+ "sql": ["catalog"],
2544
+ "category": "commerce",
2545
+ "client": {
2546
+ "export": "catalogBlock",
2547
+ "subpath": "better-supabase/blocks/catalog"
2548
+ },
2549
+ "consumes": {},
2550
+ "provides": []
2551
+ },
2552
+ {
2553
+ "name": "collections",
2554
+ "sql": ["collections"],
2555
+ "category": "work",
2556
+ "client": {
2557
+ "export": "collectionsBlock",
2558
+ "subpath": "better-supabase/blocks/collections"
2559
+ },
2560
+ "consumes": {},
2561
+ "provides": []
2562
+ },
2563
+ {
2564
+ "name": "comments",
2565
+ "sql": ["comments"],
2566
+ "category": "collaboration",
2567
+ "client": {
2568
+ "export": "commentsBlock",
2569
+ "subpath": "better-supabase/blocks/comments"
2570
+ },
2571
+ "consumes": {},
2572
+ "provides": []
2573
+ },
2574
+ {
2575
+ "name": "connectors",
2576
+ "sql": ["connectors"],
2577
+ "category": "automation",
2578
+ "client": {
2579
+ "export": "connectorsBlock",
2580
+ "subpath": "better-supabase/blocks/connectors"
2581
+ },
2582
+ "consumes": {},
2583
+ "provides": []
2584
+ },
2585
+ {
2586
+ "name": "credentials",
2587
+ "sql": ["credentials"],
2588
+ "category": "developer",
2589
+ "client": null,
2590
+ "consumes": {},
2591
+ "provides": []
2592
+ },
2593
+ {
2594
+ "name": "custom-fields",
2595
+ "sql": ["custom-fields"],
2596
+ "category": "work",
2597
+ "client": {
2598
+ "export": "customFieldsBlock",
2599
+ "subpath": "better-supabase/blocks/custom-fields"
2600
+ },
2601
+ "consumes": {},
2602
+ "provides": []
2603
+ },
2604
+ {
2605
+ "name": "data-lifecycle",
2606
+ "sql": ["data-lifecycle"],
2607
+ "category": "admin",
2608
+ "client": {
2609
+ "export": "dataLifecycleBlock",
2610
+ "subpath": "better-supabase/blocks/data-lifecycle"
2611
+ },
2612
+ "consumes": {},
2613
+ "provides": []
2614
+ },
2615
+ {
2616
+ "name": "deals",
2617
+ "sql": ["deals"],
2618
+ "category": "crm",
2619
+ "client": {
2620
+ "export": "dealsBlock",
2621
+ "subpath": "better-supabase/blocks/deals"
2622
+ },
2623
+ "consumes": {},
2624
+ "provides": []
2625
+ },
2626
+ {
2627
+ "name": "documents",
2628
+ "sql": ["documents"],
2629
+ "category": "content",
2630
+ "client": {
2631
+ "export": "documentsBlock",
2632
+ "subpath": "better-supabase/blocks/documents"
2633
+ },
2634
+ "consumes": {},
2635
+ "provides": []
2636
+ },
2637
+ {
2638
+ "name": "domains",
2639
+ "sql": ["domains"],
2640
+ "category": "tenancy",
2641
+ "client": {
2642
+ "export": "domainsBlock",
2643
+ "subpath": "better-supabase/blocks/domains"
2644
+ },
2645
+ "consumes": {},
2646
+ "provides": []
2647
+ },
2648
+ {
2649
+ "name": "reviews",
2650
+ "sql": ["reviews"],
2651
+ "category": "commerce",
2652
+ "client": {
2653
+ "export": "reviewsBlock",
2654
+ "subpath": "better-supabase/blocks/reviews"
2655
+ },
2656
+ "consumes": {},
2657
+ "provides": []
2658
+ },
2659
+ {
2660
+ "name": "leave",
2661
+ "sql": ["leave"],
2662
+ "category": "people",
2663
+ "client": {
2664
+ "export": "leaveBlock",
2665
+ "subpath": "better-supabase/blocks/leave"
2666
+ },
2667
+ "consumes": {},
2668
+ "provides": []
2669
+ },
2670
+ {
2671
+ "name": "drive",
2672
+ "sql": ["drive", "drive-files"],
2673
+ "category": "content",
2674
+ "client": {
2675
+ "export": "driveBlock",
2676
+ "subpath": "better-supabase/blocks/drive"
2677
+ },
2678
+ "consumes": { "attachments": "optional" },
2679
+ "provides": []
2680
+ },
2681
+ {
2682
+ "name": "employees",
2683
+ "sql": ["employees"],
2684
+ "category": "people",
2685
+ "client": {
2686
+ "export": "employeesBlock",
2687
+ "subpath": "better-supabase/blocks/employees"
2688
+ },
2689
+ "consumes": {},
2690
+ "provides": []
2691
+ },
2692
+ {
2693
+ "name": "engagements",
2694
+ "sql": ["engagements"],
2695
+ "category": "crm",
2696
+ "client": {
2697
+ "export": "engagementsBlock",
2698
+ "subpath": "better-supabase/blocks/engagements"
2699
+ },
2700
+ "consumes": {},
2701
+ "provides": []
2702
+ },
2703
+ {
2704
+ "name": "ensure-rls",
2705
+ "sql": ["ensure-rls"],
2706
+ "category": "database",
2707
+ "client": null,
2708
+ "consumes": {},
2709
+ "provides": []
2710
+ },
2711
+ {
2712
+ "name": "entitlements",
2713
+ "sql": ["entitlements"],
2714
+ "category": "commerce",
2715
+ "client": {
2716
+ "export": "entitlementsBlock",
2717
+ "subpath": "better-supabase/blocks/entitlements"
2718
+ },
2719
+ "consumes": {},
2720
+ "provides": []
2721
+ },
2722
+ {
2723
+ "name": "flags",
2724
+ "sql": ["flags"],
2725
+ "category": "growth",
2726
+ "client": {
2727
+ "export": "flagsBlock",
2728
+ "subpath": "better-supabase/blocks/flags"
2729
+ },
2730
+ "consumes": {},
2731
+ "provides": []
2732
+ },
2733
+ {
2734
+ "name": "forms",
2735
+ "sql": ["forms"],
2736
+ "category": "content",
2737
+ "client": {
2738
+ "export": "formsBlock",
2739
+ "subpath": "better-supabase/blocks/forms"
2740
+ },
2741
+ "consumes": {},
2742
+ "provides": []
2743
+ },
2744
+ {
2745
+ "name": "signatures",
2746
+ "sql": ["signatures"],
2747
+ "category": "content",
2748
+ "client": {
2749
+ "export": "signaturesBlock",
2750
+ "subpath": "better-supabase/blocks/forms"
2751
+ },
2752
+ "consumes": {},
2753
+ "provides": []
2754
+ },
2755
+ {
2756
+ "name": "grants",
2757
+ "sql": ["grants"],
2758
+ "category": "identity",
2759
+ "client": null,
2760
+ "consumes": {},
2761
+ "provides": []
2762
+ },
2763
+ {
2764
+ "name": "hiring",
2765
+ "sql": ["hiring"],
2766
+ "category": "people",
2767
+ "client": {
2768
+ "export": "hiringBlock",
2769
+ "subpath": "better-supabase/blocks/hiring"
2770
+ },
2771
+ "consumes": {},
2772
+ "provides": []
2773
+ },
2774
+ {
2775
+ "name": "identities",
2776
+ "sql": ["identities"],
2777
+ "category": "identity",
2778
+ "client": {
2779
+ "export": "identitiesBlock",
2780
+ "subpath": "better-supabase/blocks/identities"
2781
+ },
2782
+ "consumes": {},
2783
+ "provides": []
2784
+ },
2785
+ {
2786
+ "name": "imports",
2787
+ "sql": ["imports"],
2788
+ "category": "content",
2789
+ "client": {
2790
+ "export": "importsBlock",
2791
+ "subpath": "better-supabase/blocks/imports"
2792
+ },
2793
+ "consumes": {},
2794
+ "provides": []
2795
+ },
2796
+ {
2797
+ "name": "inbox",
2798
+ "sql": ["inbox", "chat-sdk-state"],
2799
+ "category": "messaging",
2800
+ "client": {
2801
+ "export": "inboxBlock",
2802
+ "subpath": "better-supabase/blocks/inbox"
2803
+ },
2804
+ "consumes": {},
2805
+ "provides": []
2806
+ },
2807
+ {
2808
+ "name": "inventory",
2809
+ "sql": ["inventory"],
2810
+ "category": "commerce",
2811
+ "client": {
2812
+ "export": "inventoryBlock",
2813
+ "subpath": "better-supabase/blocks/inventory"
2814
+ },
2815
+ "consumes": {},
2816
+ "provides": []
2817
+ },
2818
+ {
2819
+ "name": "invoices",
2820
+ "sql": ["invoices"],
2821
+ "category": "commerce",
2822
+ "client": {
2823
+ "export": "invoicesBlock",
2824
+ "subpath": "better-supabase/blocks/invoices"
2825
+ },
2826
+ "consumes": {},
2827
+ "provides": []
2828
+ },
2829
+ {
2830
+ "name": "idempotency",
2831
+ "sql": ["idempotency"],
2832
+ "category": "developer",
2833
+ "client": {
2834
+ "export": "idempotencyBlock",
2835
+ "subpath": "better-supabase/blocks/jobs"
2836
+ },
2837
+ "consumes": {},
2838
+ "provides": []
2839
+ },
2840
+ {
2841
+ "name": "jobs",
2842
+ "sql": ["jobs"],
2843
+ "category": "automation",
2844
+ "client": {
2845
+ "export": "jobsBlock",
2846
+ "subpath": "better-supabase/blocks/jobs"
2847
+ },
2848
+ "consumes": {},
2849
+ "provides": []
2850
+ },
2851
+ {
2852
+ "name": "rate-limit",
2853
+ "sql": ["rate-limit"],
2854
+ "category": "developer",
2855
+ "client": {
2856
+ "export": "rateLimitBlock",
2857
+ "subpath": "better-supabase/blocks/jobs"
2858
+ },
2859
+ "consumes": {},
2860
+ "provides": []
2861
+ },
2862
+ {
2863
+ "name": "webhook-inbox",
2864
+ "sql": ["webhook-inbox"],
2865
+ "category": "developer",
2866
+ "client": {
2867
+ "export": "webhookInboxBlock",
2868
+ "subpath": "better-supabase/blocks/jobs"
2869
+ },
2870
+ "consumes": {},
2871
+ "provides": []
2872
+ },
2873
+ {
2874
+ "name": "jsonb-schemas",
2875
+ "sql": ["jsonb-schemas"],
2876
+ "category": "database",
2877
+ "client": null,
2878
+ "consumes": {},
2879
+ "provides": []
2880
+ },
2881
+ {
2882
+ "name": "knowledge",
2883
+ "sql": ["knowledge"],
2884
+ "category": "ai",
2885
+ "client": {
2886
+ "export": "knowledgeBlock",
2887
+ "subpath": "better-supabase/blocks/knowledge"
2888
+ },
2889
+ "consumes": { "files": "optional" },
2890
+ "provides": []
2891
+ },
2892
+ {
2893
+ "name": "memory",
2894
+ "sql": ["memory"],
2895
+ "category": "ai",
2896
+ "client": {
2897
+ "export": "memoryBlock",
2898
+ "subpath": "better-supabase/blocks/memory"
2899
+ },
2900
+ "consumes": {},
2901
+ "provides": []
2902
+ },
2903
+ {
2904
+ "name": "metrics",
2905
+ "sql": ["metrics"],
2906
+ "category": "admin",
2907
+ "client": {
2908
+ "export": "metricsBlock",
2909
+ "subpath": "better-supabase/blocks/metrics"
2910
+ },
2911
+ "consumes": {},
2912
+ "provides": ["sink"]
2913
+ },
2914
+ {
2915
+ "name": "mfa",
2916
+ "sql": ["mfa"],
2917
+ "category": "identity",
2918
+ "client": null,
2919
+ "consumes": {},
2920
+ "provides": []
2921
+ },
2922
+ {
2923
+ "name": "notifications",
2924
+ "sql": ["notifications"],
2925
+ "category": "messaging",
2926
+ "client": {
2927
+ "export": "notificationsBlock",
2928
+ "subpath": "better-supabase/blocks/notifications"
2929
+ },
2930
+ "consumes": {},
2931
+ "provides": ["notifier"]
2932
+ },
2933
+ {
2934
+ "name": "number-sequences",
2935
+ "sql": ["number-sequences"],
2936
+ "category": "database",
2937
+ "client": {
2938
+ "export": "numberSequencesBlock",
2939
+ "subpath": "better-supabase/blocks/number-sequences"
2940
+ },
2941
+ "consumes": {},
2942
+ "provides": []
2943
+ },
2944
+ {
2945
+ "name": "oauth-server",
2946
+ "sql": ["oauth-server"],
2947
+ "category": "developer",
2948
+ "client": {
2949
+ "export": "oauthServerBlock",
2950
+ "subpath": "better-supabase/blocks/oauth-server"
2951
+ },
2952
+ "consumes": {},
2953
+ "provides": []
2954
+ },
2955
+ {
2956
+ "name": "onboarding",
2957
+ "sql": ["onboarding"],
2958
+ "category": "growth",
2959
+ "client": {
2960
+ "export": "onboardingBlock",
2961
+ "subpath": "better-supabase/blocks/onboarding"
2962
+ },
2963
+ "consumes": {},
2964
+ "provides": []
2965
+ },
2966
+ {
2967
+ "name": "orders",
2968
+ "sql": ["orders"],
2969
+ "category": "commerce",
2970
+ "client": {
2971
+ "export": "ordersBlock",
2972
+ "subpath": "better-supabase/blocks/orders"
2973
+ },
2974
+ "consumes": {},
2975
+ "provides": []
2976
+ },
2977
+ {
2978
+ "name": "organizations",
2979
+ "sql": ["organizations", "invitations"],
2980
+ "category": "tenancy",
2981
+ "client": {
2982
+ "export": "organizationsBlock",
2983
+ "subpath": "better-supabase/blocks/organizations"
2984
+ },
2985
+ "consumes": {},
2986
+ "provides": []
2987
+ },
2988
+ {
2989
+ "name": "outbox",
2990
+ "sql": ["outbox"],
2991
+ "category": "automation",
2992
+ "client": {
2993
+ "export": "outboxBlock",
2994
+ "subpath": "better-supabase/blocks/outbox"
2995
+ },
2996
+ "consumes": {},
2997
+ "provides": []
2998
+ },
2999
+ {
3000
+ "name": "parties",
3001
+ "sql": ["parties"],
3002
+ "category": "crm",
3003
+ "client": {
3004
+ "export": "partiesBlock",
3005
+ "subpath": "better-supabase/blocks/parties"
3006
+ },
3007
+ "consumes": {},
3008
+ "provides": []
3009
+ },
3010
+ {
3011
+ "name": "pgtap",
3012
+ "sql": ["pgtap"],
3013
+ "category": "database",
3014
+ "client": null,
3015
+ "consumes": {},
3016
+ "provides": []
3017
+ },
3018
+ {
3019
+ "name": "pipelines",
3020
+ "sql": ["pipelines"],
3021
+ "category": "work",
3022
+ "client": {
3023
+ "export": "pipelinesBlock",
3024
+ "subpath": "better-supabase/blocks/pipelines"
3025
+ },
3026
+ "consumes": {},
3027
+ "provides": []
3028
+ },
3029
+ {
3030
+ "name": "profiles",
3031
+ "sql": ["profiles"],
3032
+ "category": "tenancy",
3033
+ "client": {
3034
+ "export": "profilesBlock",
3035
+ "subpath": "better-supabase/blocks/profiles"
3036
+ },
3037
+ "consumes": {},
3038
+ "provides": []
3039
+ },
3040
+ {
3041
+ "name": "promotions",
3042
+ "sql": ["promotions"],
3043
+ "category": "commerce",
3044
+ "client": {
3045
+ "export": "promotionsBlock",
3046
+ "subpath": "better-supabase/blocks/promotions"
3047
+ },
3048
+ "consumes": {},
3049
+ "provides": []
3050
+ },
3051
+ {
3052
+ "name": "push",
3053
+ "sql": ["push"],
3054
+ "category": "messaging",
3055
+ "client": {
3056
+ "export": "pushBlock",
3057
+ "subpath": "better-supabase/blocks/push"
3058
+ },
3059
+ "consumes": {},
3060
+ "provides": []
3061
+ },
3062
+ {
3063
+ "name": "quotes",
3064
+ "sql": ["quotes"],
3065
+ "category": "crm",
3066
+ "client": {
3067
+ "export": "quotesBlock",
3068
+ "subpath": "better-supabase/blocks/quotes"
3069
+ },
3070
+ "consumes": {},
3071
+ "provides": []
3072
+ },
3073
+ {
3074
+ "name": "rank",
3075
+ "sql": ["rank"],
3076
+ "category": "database",
3077
+ "client": {
3078
+ "export": "rankBlock",
3079
+ "subpath": "better-supabase/blocks/rank"
3080
+ },
3081
+ "consumes": {},
3082
+ "provides": []
3083
+ },
3084
+ {
3085
+ "name": "reactions",
3086
+ "sql": ["reactions"],
3087
+ "category": "collaboration",
3088
+ "client": {
3089
+ "export": "reactionsBlock",
3090
+ "subpath": "better-supabase/blocks/reactions"
3091
+ },
3092
+ "consumes": {},
3093
+ "provides": []
3094
+ },
3095
+ {
3096
+ "name": "read-sets",
3097
+ "sql": ["read-sets"],
3098
+ "category": "database",
3099
+ "client": null,
3100
+ "consumes": {},
3101
+ "provides": []
3102
+ },
3103
+ {
3104
+ "name": "realtime-tables",
3105
+ "sql": ["realtime-tables"],
3106
+ "category": "database",
3107
+ "client": null,
3108
+ "consumes": {},
3109
+ "provides": []
3110
+ },
3111
+ {
3112
+ "name": "relations",
3113
+ "sql": ["relations"],
3114
+ "category": "work",
3115
+ "client": {
3116
+ "export": "relationsBlock",
3117
+ "subpath": "better-supabase/blocks/relations"
3118
+ },
3119
+ "consumes": {},
3120
+ "provides": []
3121
+ },
3122
+ {
3123
+ "name": "reminders",
3124
+ "sql": ["reminders"],
3125
+ "category": "scheduling",
3126
+ "client": {
3127
+ "export": "remindersBlock",
3128
+ "subpath": "better-supabase/blocks/reminders"
3129
+ },
3130
+ "consumes": { "notifier": "optional" },
3131
+ "provides": []
3132
+ },
3133
+ {
3134
+ "name": "reserved-slugs",
3135
+ "sql": ["reserved-slugs"],
3136
+ "category": "tenancy",
3137
+ "client": null,
3138
+ "consumes": {},
3139
+ "provides": []
3140
+ },
3141
+ {
3142
+ "name": "rules",
3143
+ "sql": ["rules"],
3144
+ "category": "automation",
3145
+ "client": {
3146
+ "export": "rulesBlock",
3147
+ "subpath": "better-supabase/blocks/rules"
3148
+ },
3149
+ "consumes": {},
3150
+ "provides": []
3151
+ },
3152
+ {
3153
+ "name": "saved-views",
3154
+ "sql": ["saved-views"],
3155
+ "category": "work",
3156
+ "client": {
3157
+ "export": "savedViewsBlock",
3158
+ "subpath": "better-supabase/blocks/saved-views"
3159
+ },
3160
+ "consumes": {},
3161
+ "provides": []
3162
+ },
3163
+ {
3164
+ "name": "search",
3165
+ "sql": ["search"],
3166
+ "category": "work",
3167
+ "client": {
3168
+ "export": "searchBlock",
3169
+ "subpath": "better-supabase/blocks/search"
3170
+ },
3171
+ "consumes": {},
3172
+ "provides": ["sink"]
3173
+ },
3174
+ {
3175
+ "name": "service-principals",
3176
+ "sql": ["service-principals"],
3177
+ "category": "developer",
3178
+ "client": {
3179
+ "export": "servicePrincipalsBlock",
3180
+ "subpath": "better-supabase/blocks/service-principals"
3181
+ },
3182
+ "consumes": {},
3183
+ "provides": []
3184
+ },
3185
+ {
3186
+ "name": "sessions",
3187
+ "sql": ["sessions"],
3188
+ "category": "identity",
3189
+ "client": null,
3190
+ "consumes": {},
3191
+ "provides": []
3192
+ },
3193
+ {
3194
+ "name": "settings",
3195
+ "sql": ["settings"],
3196
+ "category": "tenancy",
3197
+ "client": {
3198
+ "export": "settingsBlock",
3199
+ "subpath": "better-supabase/blocks/settings"
3200
+ },
3201
+ "consumes": {},
3202
+ "provides": []
3203
+ },
3204
+ {
3205
+ "name": "share-links",
3206
+ "sql": ["share-links"],
3207
+ "category": "collaboration",
3208
+ "client": {
3209
+ "export": "shareLinksBlock",
3210
+ "subpath": "better-supabase/blocks/share-links"
3211
+ },
3212
+ "consumes": {},
3213
+ "provides": []
3214
+ },
3215
+ {
3216
+ "name": "shared-signals",
3217
+ "sql": ["shared-signals"],
3218
+ "category": "developer",
3219
+ "client": {
3220
+ "export": "sharedSignalsBlock",
3221
+ "subpath": "better-supabase/blocks/shared-signals"
3222
+ },
3223
+ "consumes": {},
3224
+ "provides": []
3225
+ },
3226
+ {
3227
+ "name": "signing-keys",
3228
+ "sql": ["signing-keys"],
3229
+ "category": "developer",
3230
+ "client": {
3231
+ "export": "signingKeysBlock",
3232
+ "subpath": "better-supabase/blocks/signing-keys"
3233
+ },
3234
+ "consumes": {},
3235
+ "provides": []
3236
+ },
3237
+ {
3238
+ "name": "sla",
3239
+ "sql": ["sla"],
3240
+ "category": "work",
3241
+ "client": {
3242
+ "export": "slaBlock",
3243
+ "subpath": "better-supabase/blocks/sla"
3244
+ },
3245
+ "consumes": {},
3246
+ "provides": []
3247
+ },
3248
+ {
3249
+ "name": "sso",
3250
+ "sql": ["sso"],
3251
+ "category": "identity",
3252
+ "client": {
3253
+ "export": "ssoBlock",
3254
+ "subpath": "better-supabase/blocks/sso"
3255
+ },
3256
+ "consumes": {},
3257
+ "provides": []
3258
+ },
3259
+ {
3260
+ "name": "state-machine",
3261
+ "sql": ["state-machine"],
3262
+ "category": "work",
3263
+ "client": {
3264
+ "export": "stateMachineBlock",
3265
+ "subpath": "better-supabase/blocks/state-machine"
3266
+ },
3267
+ "consumes": {},
3268
+ "provides": []
3269
+ },
3270
+ {
3271
+ "name": "streams",
3272
+ "sql": ["streams"],
3273
+ "category": "automation",
3274
+ "client": null,
3275
+ "consumes": {},
3276
+ "provides": []
3277
+ },
3278
+ {
3279
+ "name": "subjects",
3280
+ "sql": ["subjects"],
3281
+ "category": "identity",
3282
+ "client": null,
3283
+ "consumes": {},
3284
+ "provides": []
3285
+ },
3286
+ {
3287
+ "name": "support-sessions",
3288
+ "sql": ["support-sessions"],
3289
+ "category": "admin",
3290
+ "client": null,
3291
+ "consumes": {},
3292
+ "provides": []
3293
+ },
3294
+ {
3295
+ "name": "tags",
3296
+ "sql": ["tags"],
3297
+ "category": "work",
3298
+ "client": {
3299
+ "export": "tagsBlock",
3300
+ "subpath": "better-supabase/blocks/tags"
3301
+ },
3302
+ "consumes": {},
3303
+ "provides": []
3304
+ },
3305
+ {
3306
+ "name": "targets",
3307
+ "sql": ["targets"],
3308
+ "category": "crm",
3309
+ "client": {
3310
+ "export": "targetsBlock",
3311
+ "subpath": "better-supabase/blocks/targets"
3312
+ },
3313
+ "consumes": {},
3314
+ "provides": []
3315
+ },
3316
+ {
3317
+ "name": "teams",
3318
+ "sql": ["teams"],
3319
+ "category": "tenancy",
3320
+ "client": {
3321
+ "export": "teamsBlock",
3322
+ "subpath": "better-supabase/blocks/teams"
3323
+ },
3324
+ "consumes": {},
3325
+ "provides": []
3326
+ },
3327
+ {
3328
+ "name": "templates",
3329
+ "sql": ["templates"],
3330
+ "category": "content",
3331
+ "client": {
3332
+ "export": "templatesBlock",
3333
+ "subpath": "better-supabase/blocks/templates"
3334
+ },
3335
+ "consumes": {},
3336
+ "provides": []
3337
+ },
3338
+ {
3339
+ "name": "tenant",
3340
+ "sql": ["tenant"],
3341
+ "category": "tenancy",
3342
+ "client": null,
3343
+ "consumes": {},
3344
+ "provides": []
3345
+ },
3346
+ {
3347
+ "name": "time-tracking",
3348
+ "sql": ["time-tracking"],
3349
+ "category": "people",
3350
+ "client": {
3351
+ "export": "timeTrackingBlock",
3352
+ "subpath": "better-supabase/blocks/time-tracking"
3353
+ },
3354
+ "consumes": {},
3355
+ "provides": []
3356
+ },
3357
+ {
3358
+ "name": "trash",
3359
+ "sql": ["trash"],
3360
+ "category": "content",
3361
+ "client": {
3362
+ "export": "trashBlock",
3363
+ "subpath": "better-supabase/blocks/trash"
3364
+ },
3365
+ "consumes": {},
3366
+ "provides": []
3367
+ },
3368
+ {
3369
+ "name": "undo",
3370
+ "sql": [],
3371
+ "category": "work",
3372
+ "client": {
3373
+ "export": "undoBlock",
3374
+ "subpath": "better-supabase/blocks/undo"
3375
+ },
3376
+ "consumes": {},
3377
+ "provides": []
3378
+ },
3379
+ {
3380
+ "name": "updated-at",
3381
+ "sql": ["updated-at"],
3382
+ "category": "database",
3383
+ "client": null,
3384
+ "consumes": {},
3385
+ "provides": []
3386
+ },
3387
+ {
3388
+ "name": "usage",
3389
+ "sql": ["usage"],
3390
+ "category": "commerce",
3391
+ "client": {
3392
+ "export": "usageBlock",
3393
+ "subpath": "better-supabase/blocks/usage"
3394
+ },
3395
+ "consumes": {},
3396
+ "provides": []
3397
+ },
3398
+ {
3399
+ "name": "vector-search",
3400
+ "sql": ["vector-search"],
3401
+ "category": "ai",
3402
+ "client": null,
3403
+ "consumes": {},
3404
+ "provides": []
3405
+ },
3406
+ {
3407
+ "name": "versions",
3408
+ "sql": ["versions"],
3409
+ "category": "content",
3410
+ "client": {
3411
+ "export": "versionsBlock",
3412
+ "subpath": "better-supabase/blocks/versions"
3413
+ },
3414
+ "consumes": {},
3415
+ "provides": []
3416
+ },
3417
+ {
3418
+ "name": "waitlist",
3419
+ "sql": ["waitlist"],
3420
+ "category": "growth",
3421
+ "client": {
3422
+ "export": "waitlistBlock",
3423
+ "subpath": "better-supabase/blocks/waitlist"
3424
+ },
3425
+ "consumes": {},
3426
+ "provides": []
3427
+ },
3428
+ {
3429
+ "name": "incoming-webhooks",
3430
+ "sql": ["webhooks-in"],
3431
+ "category": "developer",
3432
+ "client": {
3433
+ "export": "incomingWebhooksBlock",
3434
+ "subpath": "better-supabase/blocks/webhooks"
3435
+ },
3436
+ "consumes": {},
3437
+ "provides": []
3438
+ },
3439
+ {
3440
+ "name": "webhooks",
3441
+ "sql": ["webhooks-out"],
3442
+ "category": "developer",
3443
+ "client": {
3444
+ "export": "webhooksBlock",
3445
+ "subpath": "better-supabase/blocks/webhooks"
3446
+ },
3447
+ "consumes": {},
3448
+ "provides": []
3449
+ },
3450
+ {
3451
+ "name": "work-items",
3452
+ "sql": ["work-items"],
3453
+ "category": "work",
3454
+ "client": {
3455
+ "export": "workItemsBlock",
3456
+ "subpath": "better-supabase/blocks/work-items"
3457
+ },
3458
+ "consumes": {},
3459
+ "provides": []
3460
+ },
3461
+ {
3462
+ "name": "workflow-builder",
3463
+ "sql": ["workflow-builder"],
3464
+ "category": "automation",
3465
+ "client": {
3466
+ "export": "workflowBuilderBlock",
3467
+ "subpath": "better-supabase/blocks/workflow-builder"
3468
+ },
3469
+ "consumes": { "workflows": "optional" },
3470
+ "provides": []
3471
+ },
3472
+ {
3473
+ "name": "workflow-sdk-world",
3474
+ "sql": ["workflow-sdk-world"],
3475
+ "category": "automation",
3476
+ "client": null,
3477
+ "consumes": {},
3478
+ "provides": []
3479
+ },
3480
+ {
3481
+ "name": "workflows",
3482
+ "sql": ["workflows"],
3483
+ "category": "automation",
3484
+ "client": {
3485
+ "export": "workflowsBlock",
3486
+ "subpath": "better-supabase/blocks/workflows"
3487
+ },
3488
+ "consumes": {},
3489
+ "provides": ["workflows"]
3490
+ }
3491
+ ],
3492
+ "glue": [
3493
+ {
3494
+ "name": "blocks",
3495
+ "title": "Block clients",
3496
+ "blocks": [
3497
+ "organizations",
3498
+ "notifications",
3499
+ "search",
3500
+ "audit"
3501
+ ],
3502
+ "frameworks": [
3503
+ "next",
3504
+ "vite",
3505
+ "tanstack-start",
3506
+ "react-router",
3507
+ "expo"
3508
+ ],
3509
+ "platforms": ["web", "native"],
3510
+ "targets": ["@lib/blocks.ts", "@lib/notification-types.ts"]
3511
+ },
3512
+ {
3513
+ "name": "postgres",
3514
+ "title": "Server Postgres pool",
3515
+ "blocks": [
3516
+ "jobs",
3517
+ "outbox",
3518
+ "billing"
3519
+ ],
3520
+ "frameworks": [
3521
+ "next",
3522
+ "hono",
3523
+ "tanstack-start",
3524
+ "react-router"
3525
+ ],
3526
+ "platforms": ["web"],
3527
+ "targets": ["@lib/postgres.ts"]
3528
+ },
3529
+ {
3530
+ "name": "notifications-actions-next",
3531
+ "title": "Notification server actions (Next.js)",
3532
+ "blocks": ["notifications"],
3533
+ "frameworks": ["next"],
3534
+ "platforms": ["web"],
3535
+ "targets": ["@lib/notifications-actions.ts"]
3536
+ },
3537
+ {
3538
+ "name": "onboarding-checklist",
3539
+ "title": "Onboarding checklist",
3540
+ "blocks": ["onboarding"],
3541
+ "frameworks": [
3542
+ "next",
3543
+ "vite",
3544
+ "tanstack-start",
3545
+ "react-router",
3546
+ "expo"
3547
+ ],
3548
+ "platforms": ["web", "native"],
3549
+ "targets": ["@lib/onboarding.ts"]
3550
+ },
3551
+ {
3552
+ "name": "outbox",
3553
+ "title": "Outbox client",
3554
+ "blocks": ["outbox"],
3555
+ "frameworks": [
3556
+ "next",
3557
+ "hono",
3558
+ "tanstack-start",
3559
+ "react-router"
3560
+ ],
3561
+ "platforms": ["web"],
3562
+ "targets": ["@lib/outbox.ts"]
3563
+ },
3564
+ {
3565
+ "name": "outbox-relay-next",
3566
+ "title": "Outbox relay route (Next.js)",
3567
+ "blocks": ["outbox"],
3568
+ "frameworks": ["next"],
3569
+ "platforms": ["web"],
3570
+ "targets": ["~/app/api/outbox/route.ts"]
3571
+ },
3572
+ {
3573
+ "name": "outbox-relay-hono",
3574
+ "title": "Outbox relay route (Hono)",
3575
+ "blocks": ["outbox"],
3576
+ "frameworks": ["hono"],
3577
+ "platforms": ["web"],
3578
+ "targets": ["~/src/routes/outbox.ts"]
3579
+ },
3580
+ {
3581
+ "name": "stripe-webhook-next",
3582
+ "title": "Stripe webhook routes (Next.js)",
3583
+ "blocks": ["billing", "webhook-inbox"],
3584
+ "frameworks": ["next"],
3585
+ "platforms": ["web"],
3586
+ "targets": [
3587
+ "@lib/stripe.ts",
3588
+ "~/app/api/stripe/route.ts",
3589
+ "~/app/api/stripe/process/route.ts"
3590
+ ]
3591
+ },
3592
+ {
3593
+ "name": "jobs-drain-next",
3594
+ "title": "Jobs drain cron route (Next.js)",
3595
+ "blocks": ["jobs"],
3596
+ "frameworks": ["next"],
3597
+ "platforms": ["web"],
3598
+ "targets": ["@lib/jobs.ts", "~/app/api/jobs/drain/route.ts"]
3599
+ },
3600
+ {
3601
+ "name": "use-current-organization",
3602
+ "title": "useCurrentOrganization",
3603
+ "blocks": ["organizations"],
3604
+ "frameworks": [
3605
+ "next",
3606
+ "vite",
3607
+ "tanstack-start",
3608
+ "react-router",
3609
+ "expo"
3610
+ ],
3611
+ "platforms": ["web", "native"],
3612
+ "targets": ["@hooks/use-current-organization.ts"]
3613
+ },
3614
+ {
3615
+ "name": "use-rule-editor",
3616
+ "title": "useRuleEditor",
3617
+ "blocks": ["rules"],
3618
+ "frameworks": [
3619
+ "next",
3620
+ "vite",
3621
+ "tanstack-start",
3622
+ "react-router",
3623
+ "expo"
3624
+ ],
3625
+ "platforms": ["web", "native"],
3626
+ "targets": ["@hooks/use-rule-editor.ts"]
3627
+ },
3628
+ {
3629
+ "name": "push-native",
3630
+ "title": "usePushRegistration (Expo)",
3631
+ "blocks": ["push"],
3632
+ "frameworks": ["expo"],
3633
+ "platforms": ["native"],
3634
+ "targets": ["@hooks/use-push-registration.ts"]
3635
+ },
3636
+ {
3637
+ "name": "expo-config-native",
3638
+ "title": "Expo config",
3639
+ "blocks": ["push"],
3640
+ "frameworks": ["expo"],
3641
+ "platforms": ["native"],
3642
+ "targets": ["~/app.config.ts"]
3643
+ },
3644
+ {
3645
+ "name": "saas-next",
3646
+ "title": "SaaS glue (Next.js)",
3647
+ "blocks": [
3648
+ "organizations",
3649
+ "notifications",
3650
+ "search",
3651
+ "audit",
3652
+ "onboarding",
3653
+ "outbox",
3654
+ "jobs",
3655
+ "billing",
3656
+ "webhook-inbox"
3657
+ ],
3658
+ "frameworks": ["next"],
3659
+ "platforms": ["web"],
3660
+ "targets": [],
3661
+ "preset": "saas"
3662
+ },
3663
+ {
3664
+ "name": "saas-expo",
3665
+ "title": "SaaS glue (Expo)",
3666
+ "blocks": [
3667
+ "organizations",
3668
+ "notifications",
3669
+ "search",
3670
+ "audit",
3671
+ "onboarding",
3672
+ "push"
3673
+ ],
3674
+ "frameworks": ["expo"],
3675
+ "platforms": ["native"],
3676
+ "targets": [],
3677
+ "preset": "saas"
3678
+ }
3679
+ ]
3680
+ };
3681
+ //#endregion
3682
+ //#region src/preset/resolve.ts
3683
+ /** "a", "a and b", "a, b and c". */
3684
+ function listNames(names) {
3685
+ if (names.length <= 1) return names.join("");
3686
+ return `${names.slice(0, -1).join(", ")} and ${names.at(-1) ?? ""}`;
3687
+ }
3688
+ const TENANT_PROVIDERS = /* @__PURE__ */ new Set(["tenant", "access"]);
3689
+ function requiresOf(block, preset) {
3690
+ const requires = block.requiresByAccess?.[preset.access] ?? block.requires;
3691
+ return preset.scope === "tenant" || TENANT_PROVIDERS.has(block.name) ? requires : requires.filter((name) => !TENANT_PROVIDERS.has(name));
3692
+ }
3693
+ /** `name` and everything it requires, dependencies first. */
3694
+ function closureOf(name, preset, byName) {
3695
+ const out = [];
3696
+ const visit = (each) => {
3697
+ const block = byName.get(each);
3698
+ if (block === void 0 || out.includes(each)) return;
3699
+ out.push(each);
3700
+ for (const dependency of requiresOf(block, preset)) visit(dependency);
3701
+ };
3702
+ visit(name);
3703
+ return out;
3704
+ }
3705
+ /**
3706
+ * Why `name` can't install with the preset's conventions, or undefined.
3707
+ * `/create` disables a block with this reason before it is selected.
3708
+ */
3709
+ function presetBlockConflict(preset, name, catalog = PRESET_CATALOG) {
3710
+ const byName = new Map(catalog.blocks.map((block) => [block.name, block]));
3711
+ if (!byName.has(name)) return `"${name}" is not a block`;
3712
+ if (preset.scope === "tenant") return;
3713
+ if (TENANT_PROVIDERS.has(name)) return `scope "${preset.scope}" has no tenants`;
3714
+ const tenantOnly = closureOf(name, preset, byName).filter((each) => !(byName.get(each)?.scopes ?? [preset.scope]).includes(preset.scope));
3715
+ if (tenantOnly.length === 0) return;
3716
+ return tenantOnly[0] === name ? `it needs tenants, and scope "${preset.scope}" has none` : `it needs ${listNames(tenantOnly)}, which need tenants, and scope "${preset.scope}" has none`;
3717
+ }
3718
+ function fieldConflicts(preset) {
3719
+ const conflicts = [];
3720
+ if (preset.framework === "expo" && preset.platforms === "web") conflicts.push({
3721
+ field: "platforms",
3722
+ reason: "Expo builds a native app: choose native or both"
3723
+ });
3724
+ if (preset.platforms === "native" && preset.framework !== "expo") conflicts.push({
3725
+ field: "framework",
3726
+ reason: `a native-only app runs on Expo, not ${preset.framework}`
3727
+ });
3728
+ return conflicts;
3729
+ }
3730
+ /**
3731
+ * The full block set for a preset: the selected blocks and what they
3732
+ * require, a reason per block, the soft integrations active between them,
3733
+ * and what can't install. It reads the generated catalog, never the SQL
3734
+ * renderers, so it runs in the browser.
3735
+ */
3736
+ function resolvePreset(preset, catalog = PRESET_CATALOG) {
3737
+ const byName = new Map(catalog.blocks.map((block) => [block.name, block]));
3738
+ const conflicts = fieldConflicts(preset);
3739
+ const selected = [...new Set(preset.blocks)];
3740
+ const installed = /* @__PURE__ */ new Set();
3741
+ const requiredBy = /* @__PURE__ */ new Map();
3742
+ for (const name of selected) {
3743
+ const problem = presetBlockConflict(preset, name, catalog);
3744
+ if (problem !== void 0) {
3745
+ conflicts.push({
3746
+ block: name,
3747
+ reason: problem
3748
+ });
3749
+ continue;
3750
+ }
3751
+ for (const each of closureOf(name, preset, byName)) installed.add(each);
3752
+ }
3753
+ for (const block of catalog.blocks) {
3754
+ if (!installed.has(block.name)) continue;
3755
+ if (!block.tenantNameClashes?.includes(preset.tenantName)) continue;
3756
+ conflicts.push({
3757
+ block: block.name,
3758
+ field: "tenantName",
3759
+ reason: `tenant name "${preset.tenantName}" renames the tenant tables and columns to names the ${block.name} block already uses`
3760
+ });
3761
+ }
3762
+ const members = catalog.blocks.filter((block) => installed.has(block.name));
3763
+ for (const block of members) for (const dependency of requiresOf(block, preset)) requiredBy.set(dependency, [...requiredBy.get(dependency) ?? [], block.name]);
3764
+ const blocks = members.map((block) => {
3765
+ const by = requiredBy.get(block.name) ?? [];
3766
+ const isSelected = selected.includes(block.name);
3767
+ return {
3768
+ name: block.name,
3769
+ title: block.title,
3770
+ category: block.category,
3771
+ selected: isSelected,
3772
+ requiredBy: by,
3773
+ reason: isSelected ? "selected" : `required by ${listNames(by)}`
3774
+ };
3775
+ });
3776
+ const integrations = members.flatMap((block) => block.integrates.filter((to) => to !== block.name && installed.has(to)).map((to) => ({
3777
+ from: block.name,
3778
+ to
3779
+ })));
3780
+ const manifestNames = new Set(members.map((block) => block.manifest));
3781
+ const manifests = catalog.manifests.filter((manifest) => manifestNames.has(manifest.name));
3782
+ for (const manifest of manifests) for (const [port, need] of Object.entries(manifest.consumes)) {
3783
+ if (need !== "required") continue;
3784
+ if (manifests.some((each) => each.provides.some((p) => p === port))) continue;
3785
+ conflicts.push({
3786
+ block: manifest.name,
3787
+ reason: `it needs a ${port} port, and no selected block provides one`
3788
+ });
3789
+ }
3790
+ return {
3791
+ preset,
3792
+ blocks,
3793
+ integrations,
3794
+ conflicts,
3795
+ manifests
3796
+ };
3797
+ }
3798
+ //#endregion
3799
+ //#region src/preset/config.ts
3800
+ /** Reads a named preset, a code or a `/create?preset=` URL into a `Preset`. */
3801
+ function presetOf(input) {
3802
+ if (typeof input !== "string") return {
3803
+ ...DEFAULT_CONVENTIONS,
3804
+ ...input,
3805
+ blocks: input.blocks ?? []
3806
+ };
3807
+ const value = /[?&]preset=([^&#]+)/.exec(input)?.[1] ?? input;
3808
+ if (isPresetName(value)) return namedPreset(value);
3809
+ if (isPresetCode(value)) return decodePreset(value).preset;
3810
+ throw new TypeError(`preset: "${input}" is not a preset. Use a name (${PRESET_NAMES.join(", ")}), a code from /create, or its URL.`);
3811
+ }
3812
+ /** `blocks.access` for the conventions: the model and id type that differ from the defaults. */
3813
+ function accessEntry(conventions) {
3814
+ return {
3815
+ ...conventions.access === "roles" ? {} : { model: conventions.access },
3816
+ ...conventions.idType === "uuid" ? {} : { idType: conventions.idType }
3817
+ };
3818
+ }
3819
+ /** The `blocks` entry each block gets from the preset's conventions. */
3820
+ function conventionEntry(name, preset) {
3821
+ return name === "access" ? accessEntry(preset) : {};
3822
+ }
3823
+ /** `sql` for the conventions, or undefined when they are the defaults. */
3824
+ function sqlOf(conventions) {
3825
+ const sql = {
3826
+ ...conventions.api === "none" ? {} : { api: conventions.api },
3827
+ ...conventions.scope === "tenant" ? {} : { scope: conventions.scope },
3828
+ ...conventions.tenantName === "organization" ? {} : { naming: { tenant: conventions.tenantName } }
3829
+ };
3830
+ return Object.keys(sql).length === 0 ? void 0 : sql;
3831
+ }
3832
+ /**
3833
+ * The config keys conventions set without a preset: `casing`, `sql`, and
3834
+ * `blocks.access` when the access model or id type differ from the defaults.
3835
+ */
3836
+ function conventionConfig(conventions) {
3837
+ const sql = sqlOf(conventions);
3838
+ const access = accessEntry(conventions);
3839
+ return {
3840
+ casing: conventions.casing,
3841
+ ...sql === void 0 ? {} : { sql },
3842
+ ...Object.keys(access).length === 0 ? {} : { blocks: { access } }
3843
+ };
3844
+ }
3845
+ /** The config keys a resolved preset sets: its blocks and the conventions that differ from the defaults. */
3846
+ function presetConfig(resolved) {
3847
+ const { preset } = resolved;
3848
+ const sql = sqlOf(preset);
3849
+ return {
3850
+ ...preset.casing === "snake" ? {} : { casing: preset.casing },
3851
+ ...sql === void 0 ? {} : { sql },
3852
+ ...preset.integrations.length === 0 ? {} : { integrations: preset.integrations },
3853
+ blocks: Object.fromEntries(resolved.blocks.map((block) => [block.name, conventionEntry(block.name, preset)]))
3854
+ };
3855
+ }
3856
+ function isBlockList(blocks) {
3857
+ return Array.isArray(blocks);
3858
+ }
3859
+ function blocksOf(blocks) {
3860
+ if (blocks === void 0) return {};
3861
+ if (!isBlockList(blocks)) return blocks;
3862
+ return Object.fromEntries(blocks.map((name) => [name, {}]));
3863
+ }
3864
+ /**
3865
+ * `config` with its `preset` expanded: the preset's blocks (and what they
3866
+ * require) and conventions first, then the config's own keys over them, so
3867
+ * explicit config wins. A block in both keeps the preset's settings that the
3868
+ * config's entry leaves unset. Expanding twice gives the same config.
3869
+ */
3870
+ function expandPreset(config) {
3871
+ if (config.preset === void 0) return config;
3872
+ const resolved = resolvePreset(presetOf(config.preset));
3873
+ if (resolved.conflicts.length > 0) throw new TypeError(`preset: ${listNames(resolved.conflicts.map((conflict) => `${conflict.block ?? conflict.field ?? ""} (${conflict.reason})`))} can't install.`);
3874
+ const base = presetConfig(resolved);
3875
+ const own = blocksOf(config.blocks);
3876
+ const blocks = Object.fromEntries(Object.entries(base.blocks));
3877
+ for (const [name, entry] of Object.entries(own)) blocks[name] = {
3878
+ ...blocks[name],
3879
+ ...entry
3880
+ };
3881
+ return {
3882
+ ...base,
3883
+ ...config,
3884
+ ...config.sql === void 0 && base.sql === void 0 ? {} : { sql: {
3885
+ ...base.sql,
3886
+ ...config.sql
3887
+ } },
3888
+ blocks
3889
+ };
3890
+ }
3891
+ //#endregion
3892
+ export { SKILLS_AGENTS as A, integrationsForFramework as C, GEN_TASKS as D, PRESET_BLOCKS as E, INTEGRATION_INFO as O, PRESET_VERSION as S, presetValueLabel as T, withPresetField as _, listNames as a, PRESET_FRAMEWORKS as b, PRESET_CATALOG as c, PRESET_NAMES as d, isPresetName as f, isPresetCode as g, encodePreset as h, presetOf as i, INTEGRATION_NAMES as k, PRESETS as l, decodePreset as m, expandPreset as n, presetBlockConflict as o, namedPreset as p, presetConfig as r, resolvePreset as s, conventionConfig as t, PRESET_GROUPS as u, DEFAULT_CONVENTIONS as v, presetField as w, PRESET_TENANT_NAMES as x, PRESET_FIELDS as y };