better-supabase 0.8.0 → 0.10.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 (1392) hide show
  1. package/README.md +147 -83
  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-rmWaLNe3.js +1984 -0
  7. package/dist/agents-ByYUSZxT.d.ts +111 -0
  8. package/dist/ai-cache-CkxtAt4P.d.ts +70 -0
  9. package/dist/ai-cache-DPiuJ-zJ.js +84 -0
  10. package/dist/ai-chat-al8b3spK.d.ts +608 -0
  11. package/dist/ai-files-BXtV3ygd.js +331 -0
  12. package/dist/ai-sdk/agents/index.d.ts +154 -10
  13. package/dist/ai-sdk/agents/index.js +172 -17
  14. package/dist/ai-sdk/batches/index.d.ts +4 -4
  15. package/dist/ai-sdk/batches/index.js +5 -5
  16. package/dist/ai-sdk/cache/index.d.ts +2 -2
  17. package/dist/ai-sdk/cache/index.js +1 -1
  18. package/dist/ai-sdk/chat/index.d.ts +1 -1
  19. package/dist/ai-sdk/chat/index.js +7 -6
  20. package/dist/ai-sdk/embeddings/index.d.ts +3 -3
  21. package/dist/ai-sdk/embeddings/index.js +1 -2
  22. package/dist/ai-sdk/files/index.d.ts +2 -2
  23. package/dist/ai-sdk/files/index.js +4 -4
  24. package/dist/ai-sdk/index.d.ts +7 -6
  25. package/dist/ai-sdk/index.js +4 -3
  26. package/dist/ai-sdk/mcp/index.d.ts +4 -4
  27. package/dist/ai-sdk/mcp/index.js +6 -6
  28. package/dist/ai-sdk/memory/index.d.ts +5 -2
  29. package/dist/ai-sdk/memory/index.js +2 -2
  30. package/dist/ai-sdk/react/index.js +1 -2
  31. package/dist/ai-sdk/workflow/index.d.ts +5 -4
  32. package/dist/ai-sdk/workflow/index.js +8 -8
  33. package/dist/ai-tasks-Di0gmJOX.d.ts +157 -0
  34. package/dist/announcements-HF7LuFw5.js +128 -0
  35. package/dist/api-CFjuYKFY.js +680 -0
  36. package/dist/api-XJcQON_7.d.ts +411 -0
  37. package/dist/api-keys-C1IZF7p8.js +318 -0
  38. package/dist/api-keys-EdSNjGIZ.d.ts +205 -0
  39. package/dist/app-tables-BRjMcWhW.js +819 -0
  40. package/dist/app-tables-DVidEHOI.d.ts +35 -0
  41. package/dist/approvals-DqlPHBHI.d.ts +124 -0
  42. package/dist/arazzo/index.d.ts +5 -5
  43. package/dist/arazzo/index.js +6 -6
  44. package/dist/assistant-BZyhQ8bd.d.ts +148 -0
  45. package/dist/astro/index.d.ts +9 -8
  46. package/dist/astro/index.js +10 -7
  47. package/dist/asyncapi/index.d.ts +4 -4
  48. package/dist/asyncapi/index.js +6 -6
  49. package/dist/attachments-C8FEBBKE.js +264 -0
  50. package/dist/attributes-D4mA7WhI.js +38 -0
  51. package/dist/audit-log-CRgiHlRh.js +786 -0
  52. package/dist/auth-CdBKt0CS.js +20 -0
  53. package/dist/auth-reply-B_dW4jHJ.js +31 -0
  54. package/dist/auth-reply-Dj124sbX.d.ts +11 -0
  55. package/dist/authorization-CdJRoZgV.d.ts +1435 -0
  56. package/dist/authorization-hooks-Do5djkpz.d.ts +214 -0
  57. package/dist/authorizer-dVVN05Un.js +126 -0
  58. package/dist/base64-BmeCBgGo.js +42 -0
  59. package/dist/batch-limit-DKVQDz4o.js +5 -0
  60. package/dist/before-route-B98js9m_.js +30 -0
  61. package/dist/better-result/index.d.ts +5 -5
  62. package/dist/better-result/index.js +1 -1
  63. package/dist/bind-DkaP_0iS.d.ts +70 -0
  64. package/dist/block-env-CBd_SoL5.js +29 -0
  65. package/dist/block-env-Dxl7rsI0.d.ts +10 -0
  66. package/dist/block-events-DD9Q_NUz.js +96 -0
  67. package/dist/block-fields-5UA84ZUg.d.ts +55 -0
  68. package/dist/block-fields-BANwJ9Y_.js +139 -0
  69. package/dist/block-helpers-7pMBVsE6.d.ts +37 -0
  70. package/dist/block-helpers-BfVCR5Fc.js +264 -0
  71. package/dist/block-hooks-ByKlh8Qy.js +114 -0
  72. package/dist/block-hooks-C_WaodoA.d.ts +107 -0
  73. package/dist/block-transport-G4t1umrR.js +85 -0
  74. package/dist/block-transport-NbUJygA7.d.ts +70 -0
  75. package/dist/blocks/access-requests/index.d.ts +98 -0
  76. package/dist/blocks/access-requests/index.js +99 -0
  77. package/dist/blocks/agents/index.d.ts +21 -3
  78. package/dist/blocks/agents/index.js +64 -18
  79. package/dist/blocks/ai-cache/index.d.ts +7 -2
  80. package/dist/blocks/ai-cache/index.js +15 -3
  81. package/dist/blocks/ai-chat/index.d.ts +22 -3
  82. package/dist/blocks/ai-chat/index.js +29 -3
  83. package/dist/blocks/ai-chat/react/index.d.ts +12 -46
  84. package/dist/blocks/ai-chat/react/index.js +43 -335
  85. package/dist/blocks/ai-chat/solid/index.d.ts +34 -0
  86. package/dist/blocks/ai-chat/solid/index.js +41 -0
  87. package/dist/blocks/ai-chat/svelte/index.d.ts +34 -0
  88. package/dist/blocks/ai-chat/svelte/index.js +41 -0
  89. package/dist/blocks/ai-chat/vue/index.d.ts +34 -0
  90. package/dist/blocks/ai-chat/vue/index.js +41 -0
  91. package/dist/blocks/ai-files/index.d.ts +10 -3
  92. package/dist/blocks/ai-files/index.js +16 -3
  93. package/dist/blocks/ai-providers/index.d.ts +18 -3
  94. package/dist/blocks/ai-providers/index.js +40 -15
  95. package/dist/blocks/ai-tasks/index.d.ts +9 -2
  96. package/dist/blocks/ai-tasks/index.js +70 -21
  97. package/dist/blocks/announcements/index.d.ts +18 -3
  98. package/dist/blocks/announcements/index.js +27 -3
  99. package/dist/blocks/announcements/react/index.d.ts +4 -14
  100. package/dist/blocks/announcements/react/index.js +22 -70
  101. package/dist/blocks/announcements/solid/index.d.ts +13 -0
  102. package/dist/blocks/announcements/solid/index.js +14 -0
  103. package/dist/blocks/announcements/svelte/index.d.ts +13 -0
  104. package/dist/blocks/announcements/svelte/index.js +14 -0
  105. package/dist/blocks/announcements/vue/index.d.ts +13 -0
  106. package/dist/blocks/announcements/vue/index.js +14 -0
  107. package/dist/blocks/api-keys/index.d.ts +24 -7
  108. package/dist/blocks/api-keys/index.js +29 -294
  109. package/dist/blocks/api-keys/react/index.d.ts +29 -0
  110. package/dist/blocks/api-keys/react/index.js +43 -0
  111. package/dist/blocks/api-keys/react/server.d.ts +7 -0
  112. package/dist/blocks/api-keys/react/server.js +7 -0
  113. package/dist/blocks/api-keys/solid/index.d.ts +13 -0
  114. package/dist/blocks/api-keys/solid/index.js +14 -0
  115. package/dist/blocks/api-keys/svelte/index.d.ts +13 -0
  116. package/dist/blocks/api-keys/svelte/index.js +14 -0
  117. package/dist/blocks/api-keys/vue/index.d.ts +13 -0
  118. package/dist/blocks/api-keys/vue/index.js +14 -0
  119. package/dist/blocks/approvals/index.d.ts +22 -0
  120. package/dist/blocks/approvals/index.js +189 -0
  121. package/dist/blocks/attachments/index.d.ts +18 -227
  122. package/dist/blocks/attachments/index.js +26 -242
  123. package/dist/blocks/audit/index.d.ts +72 -365
  124. package/dist/blocks/audit/index.js +91 -714
  125. package/dist/blocks/audit/react/index.d.ts +26 -0
  126. package/dist/blocks/audit/react/index.js +44 -0
  127. package/dist/blocks/audit/react/server.d.ts +7 -0
  128. package/dist/blocks/audit/react/server.js +7 -0
  129. package/dist/blocks/audit/solid/index.d.ts +13 -0
  130. package/dist/blocks/audit/solid/index.js +14 -0
  131. package/dist/blocks/audit/svelte/index.d.ts +13 -0
  132. package/dist/blocks/audit/svelte/index.js +14 -0
  133. package/dist/blocks/audit/vue/index.d.ts +13 -0
  134. package/dist/blocks/audit/vue/index.js +14 -0
  135. package/dist/blocks/billing/index.d.ts +37 -12
  136. package/dist/blocks/billing/index.js +43 -12
  137. package/dist/blocks/billing/react/index.d.ts +34 -0
  138. package/dist/blocks/billing/react/index.js +36 -0
  139. package/dist/blocks/billing/react/server.d.ts +7 -0
  140. package/dist/blocks/billing/react/server.js +7 -0
  141. package/dist/blocks/billing/solid/index.d.ts +15 -0
  142. package/dist/blocks/billing/solid/index.js +14 -0
  143. package/dist/blocks/billing/svelte/index.d.ts +15 -0
  144. package/dist/blocks/billing/svelte/index.js +14 -0
  145. package/dist/blocks/billing/vue/index.d.ts +15 -0
  146. package/dist/blocks/billing/vue/index.js +14 -0
  147. package/dist/blocks/bookings/index.d.ts +36 -0
  148. package/dist/blocks/bookings/index.js +28 -0
  149. package/dist/blocks/bookings/react/index.d.ts +31 -0
  150. package/dist/blocks/bookings/react/index.js +59 -0
  151. package/dist/blocks/bookings/react/server.d.ts +6 -0
  152. package/dist/blocks/bookings/react/server.js +7 -0
  153. package/dist/blocks/bookings/solid/index.d.ts +13 -0
  154. package/dist/blocks/bookings/solid/index.js +14 -0
  155. package/dist/blocks/bookings/svelte/index.d.ts +13 -0
  156. package/dist/blocks/bookings/svelte/index.js +14 -0
  157. package/dist/blocks/bookings/vue/index.d.ts +13 -0
  158. package/dist/blocks/bookings/vue/index.js +14 -0
  159. package/dist/blocks/bulk/index.d.ts +146 -0
  160. package/dist/blocks/bulk/index.js +154 -0
  161. package/dist/blocks/calendar/index.d.ts +20 -0
  162. package/dist/blocks/calendar/index.js +33 -0
  163. package/dist/blocks/calendar/react/index.d.ts +26 -0
  164. package/dist/blocks/calendar/react/index.js +58 -0
  165. package/dist/blocks/calendar/react/server.d.ts +6 -0
  166. package/dist/blocks/calendar/react/server.js +7 -0
  167. package/dist/blocks/calendar/solid/index.d.ts +13 -0
  168. package/dist/blocks/calendar/solid/index.js +14 -0
  169. package/dist/blocks/calendar/svelte/index.d.ts +13 -0
  170. package/dist/blocks/calendar/svelte/index.js +14 -0
  171. package/dist/blocks/calendar/vue/index.d.ts +13 -0
  172. package/dist/blocks/calendar/vue/index.js +14 -0
  173. package/dist/blocks/catalog/index.d.ts +224 -0
  174. package/dist/blocks/catalog/index.js +292 -0
  175. package/dist/blocks/collections/index.d.ts +184 -0
  176. package/dist/blocks/collections/index.js +208 -0
  177. package/dist/blocks/comments/index.d.ts +19 -166
  178. package/dist/blocks/comments/index.js +26 -207
  179. package/dist/blocks/comments/react/index.d.ts +27 -0
  180. package/dist/blocks/comments/react/index.js +45 -0
  181. package/dist/blocks/comments/react/server.d.ts +7 -0
  182. package/dist/blocks/comments/react/server.js +7 -0
  183. package/dist/blocks/comments/solid/index.d.ts +13 -0
  184. package/dist/blocks/comments/solid/index.js +14 -0
  185. package/dist/blocks/comments/svelte/index.d.ts +13 -0
  186. package/dist/blocks/comments/svelte/index.js +14 -0
  187. package/dist/blocks/comments/vue/index.d.ts +13 -0
  188. package/dist/blocks/comments/vue/index.js +14 -0
  189. package/dist/blocks/connectors/index.d.ts +21 -3
  190. package/dist/blocks/connectors/index.js +53 -18
  191. package/dist/blocks/custom-fields/index.d.ts +62 -0
  192. package/dist/blocks/custom-fields/index.js +85 -0
  193. package/dist/blocks/data-lifecycle/index.d.ts +114 -9
  194. package/dist/blocks/data-lifecycle/index.js +98 -12
  195. package/dist/blocks/deals/index.d.ts +262 -0
  196. package/dist/blocks/deals/index.js +380 -0
  197. package/dist/blocks/documents/index.d.ts +17 -0
  198. package/dist/blocks/documents/index.js +118 -0
  199. package/dist/blocks/domains/index.d.ts +117 -0
  200. package/dist/blocks/domains/index.js +118 -0
  201. package/dist/blocks/drive/index.d.ts +296 -0
  202. package/dist/blocks/drive/index.js +483 -0
  203. package/dist/blocks/employees/index.d.ts +205 -0
  204. package/dist/blocks/employees/index.js +289 -0
  205. package/dist/blocks/engagements/index.d.ts +125 -0
  206. package/dist/blocks/engagements/index.js +143 -0
  207. package/dist/blocks/entitlements/index.d.ts +40 -4
  208. package/dist/blocks/entitlements/index.js +14 -24
  209. package/dist/blocks/entitlements/react/index.d.ts +24 -0
  210. package/dist/blocks/entitlements/react/index.js +35 -0
  211. package/dist/blocks/entitlements/react/server.d.ts +6 -0
  212. package/dist/blocks/entitlements/react/server.js +7 -0
  213. package/dist/blocks/entitlements/solid/index.d.ts +13 -0
  214. package/dist/blocks/entitlements/solid/index.js +14 -0
  215. package/dist/blocks/entitlements/svelte/index.d.ts +13 -0
  216. package/dist/blocks/entitlements/svelte/index.js +14 -0
  217. package/dist/blocks/entitlements/vue/index.d.ts +13 -0
  218. package/dist/blocks/entitlements/vue/index.js +14 -0
  219. package/dist/blocks/flags/index.d.ts +61 -187
  220. package/dist/blocks/flags/index.js +65 -253
  221. package/dist/blocks/forms/index.d.ts +302 -0
  222. package/dist/blocks/forms/index.js +341 -0
  223. package/dist/blocks/forms/react/index.d.ts +16 -0
  224. package/dist/blocks/forms/react/index.js +25 -0
  225. package/dist/blocks/forms/react/server.d.ts +6 -0
  226. package/dist/blocks/forms/react/server.js +7 -0
  227. package/dist/blocks/forms/solid/index.d.ts +13 -0
  228. package/dist/blocks/forms/solid/index.js +14 -0
  229. package/dist/blocks/forms/svelte/index.d.ts +13 -0
  230. package/dist/blocks/forms/svelte/index.js +14 -0
  231. package/dist/blocks/forms/vue/index.d.ts +13 -0
  232. package/dist/blocks/forms/vue/index.js +14 -0
  233. package/dist/blocks/hiring/index.d.ts +154 -0
  234. package/dist/blocks/hiring/index.js +180 -0
  235. package/dist/blocks/identities/index.d.ts +83 -0
  236. package/dist/blocks/identities/index.js +103 -0
  237. package/dist/blocks/imports/index.d.ts +159 -0
  238. package/dist/blocks/imports/index.js +227 -0
  239. package/dist/blocks/inbox/index.d.ts +22 -3
  240. package/dist/blocks/inbox/index.js +77 -4
  241. package/dist/blocks/inbox/react/index.d.ts +3 -2
  242. package/dist/blocks/inbox/react/index.js +55 -199
  243. package/dist/blocks/inbox/react/server.d.ts +2 -1
  244. package/dist/blocks/inbox/solid/index.d.ts +27 -0
  245. package/dist/blocks/inbox/solid/index.js +32 -0
  246. package/dist/blocks/inbox/svelte/index.d.ts +27 -0
  247. package/dist/blocks/inbox/svelte/index.js +32 -0
  248. package/dist/blocks/inbox/vue/index.d.ts +27 -0
  249. package/dist/blocks/inbox/vue/index.js +32 -0
  250. package/dist/blocks/index.d.ts +25 -61
  251. package/dist/blocks/index.js +192 -56
  252. package/dist/blocks/inventory/index.d.ts +181 -0
  253. package/dist/blocks/inventory/index.js +219 -0
  254. package/dist/blocks/invoices/index.d.ts +154 -0
  255. package/dist/blocks/invoices/index.js +216 -0
  256. package/dist/blocks/jobs/index.d.ts +156 -33
  257. package/dist/blocks/jobs/index.js +675 -261
  258. package/dist/blocks/knowledge/index.d.ts +10 -3
  259. package/dist/blocks/knowledge/index.js +17 -3
  260. package/dist/blocks/leave/index.d.ts +241 -0
  261. package/dist/blocks/leave/index.js +209 -0
  262. package/dist/blocks/memory/index.d.ts +9 -4
  263. package/dist/blocks/memory/index.js +48 -12
  264. package/dist/blocks/metrics/index.d.ts +174 -0
  265. package/dist/blocks/metrics/index.js +217 -0
  266. package/dist/blocks/mfa/index.d.ts +7 -0
  267. package/dist/blocks/mfa/index.js +12 -0
  268. package/dist/blocks/mfa/react/index.d.ts +30 -0
  269. package/dist/blocks/mfa/react/index.js +45 -0
  270. package/dist/blocks/mfa/react/server.d.ts +9 -0
  271. package/dist/blocks/mfa/react/server.js +12 -0
  272. package/dist/blocks/mfa/solid/index.d.ts +20 -0
  273. package/dist/blocks/mfa/solid/index.js +23 -0
  274. package/dist/blocks/mfa/svelte/index.d.ts +20 -0
  275. package/dist/blocks/mfa/svelte/index.js +23 -0
  276. package/dist/blocks/mfa/vue/index.d.ts +20 -0
  277. package/dist/blocks/mfa/vue/index.js +23 -0
  278. package/dist/blocks/notifications/index.d.ts +342 -25
  279. package/dist/blocks/notifications/index.js +733 -104
  280. package/dist/blocks/notifications/react/index.d.ts +7 -32
  281. package/dist/blocks/notifications/react/index.js +23 -49
  282. package/dist/blocks/notifications/react/server.d.ts +2 -1
  283. package/dist/blocks/notifications/solid/index.d.ts +13 -0
  284. package/dist/blocks/notifications/solid/index.js +14 -0
  285. package/dist/blocks/notifications/svelte/index.d.ts +13 -0
  286. package/dist/blocks/notifications/svelte/index.js +14 -0
  287. package/dist/blocks/notifications/vue/index.d.ts +13 -0
  288. package/dist/blocks/notifications/vue/index.js +14 -0
  289. package/dist/blocks/number-sequences/index.d.ts +45 -0
  290. package/dist/blocks/number-sequences/index.js +49 -0
  291. package/dist/blocks/oauth-server/index.d.ts +228 -0
  292. package/dist/blocks/oauth-server/index.js +309 -0
  293. package/dist/blocks/onboarding/index.d.ts +8 -3
  294. package/dist/blocks/onboarding/index.js +17 -63
  295. package/dist/blocks/onboarding/react/index.d.ts +3 -12
  296. package/dist/blocks/onboarding/react/index.js +18 -60
  297. package/dist/blocks/onboarding/react/server.d.ts +2 -2
  298. package/dist/blocks/onboarding/react/server.js +2 -2
  299. package/dist/blocks/onboarding/solid/index.d.ts +13 -0
  300. package/dist/blocks/onboarding/solid/index.js +14 -0
  301. package/dist/blocks/onboarding/svelte/index.d.ts +13 -0
  302. package/dist/blocks/onboarding/svelte/index.js +14 -0
  303. package/dist/blocks/onboarding/vue/index.d.ts +13 -0
  304. package/dist/blocks/onboarding/vue/index.js +14 -0
  305. package/dist/blocks/orders/index.d.ts +264 -0
  306. package/dist/blocks/orders/index.js +589 -0
  307. package/dist/blocks/organizations/index.d.ts +31 -238
  308. package/dist/blocks/organizations/index.js +49 -392
  309. package/dist/blocks/organizations/react/index.d.ts +108 -0
  310. package/dist/blocks/organizations/react/index.js +113 -0
  311. package/dist/blocks/organizations/react/server.d.ts +11 -0
  312. package/dist/blocks/organizations/react/server.js +15 -0
  313. package/dist/blocks/organizations/solid/index.d.ts +34 -0
  314. package/dist/blocks/organizations/solid/index.js +32 -0
  315. package/dist/blocks/organizations/svelte/index.d.ts +34 -0
  316. package/dist/blocks/organizations/svelte/index.js +32 -0
  317. package/dist/blocks/organizations/vue/index.d.ts +34 -0
  318. package/dist/blocks/organizations/vue/index.js +32 -0
  319. package/dist/blocks/outbox/index.d.ts +12 -3
  320. package/dist/blocks/outbox/index.js +85 -46
  321. package/dist/blocks/parties/index.d.ts +181 -0
  322. package/dist/blocks/parties/index.js +258 -0
  323. package/dist/blocks/pipelines/index.d.ts +189 -0
  324. package/dist/blocks/pipelines/index.js +204 -0
  325. package/dist/blocks/profiles/index.d.ts +13 -8
  326. package/dist/blocks/profiles/index.js +19 -6
  327. package/dist/blocks/promotions/index.d.ts +125 -0
  328. package/dist/blocks/promotions/index.js +123 -0
  329. package/dist/blocks/push/index.d.ts +48 -28
  330. package/dist/blocks/push/index.js +45 -16
  331. package/dist/blocks/quotes/index.d.ts +152 -0
  332. package/dist/blocks/quotes/index.js +209 -0
  333. package/dist/blocks/rank/index.d.ts +71 -0
  334. package/dist/blocks/rank/index.js +53 -0
  335. package/dist/blocks/reactions/index.d.ts +18 -0
  336. package/dist/blocks/reactions/index.js +26 -0
  337. package/dist/blocks/reactions/react/index.d.ts +23 -0
  338. package/dist/blocks/reactions/react/index.js +46 -0
  339. package/dist/blocks/reactions/react/server.d.ts +6 -0
  340. package/dist/blocks/reactions/react/server.js +7 -0
  341. package/dist/blocks/reactions/solid/index.d.ts +13 -0
  342. package/dist/blocks/reactions/solid/index.js +14 -0
  343. package/dist/blocks/reactions/svelte/index.d.ts +13 -0
  344. package/dist/blocks/reactions/svelte/index.js +14 -0
  345. package/dist/blocks/reactions/vue/index.d.ts +13 -0
  346. package/dist/blocks/reactions/vue/index.js +14 -0
  347. package/dist/blocks/relations/index.d.ts +180 -0
  348. package/dist/blocks/relations/index.js +254 -0
  349. package/dist/blocks/reminders/index.d.ts +177 -0
  350. package/dist/blocks/reminders/index.js +171 -0
  351. package/dist/blocks/reviews/index.d.ts +148 -0
  352. package/dist/blocks/reviews/index.js +139 -0
  353. package/dist/blocks/rules/index.d.ts +169 -0
  354. package/dist/blocks/rules/index.js +163 -0
  355. package/dist/blocks/rules/react/index.d.ts +34 -0
  356. package/dist/blocks/rules/react/index.js +55 -0
  357. package/dist/blocks/rules/react/server.d.ts +6 -0
  358. package/dist/blocks/rules/react/server.js +7 -0
  359. package/dist/blocks/rules/solid/index.d.ts +13 -0
  360. package/dist/blocks/rules/solid/index.js +14 -0
  361. package/dist/blocks/rules/svelte/index.d.ts +13 -0
  362. package/dist/blocks/rules/svelte/index.js +14 -0
  363. package/dist/blocks/rules/vue/index.d.ts +13 -0
  364. package/dist/blocks/rules/vue/index.js +14 -0
  365. package/dist/blocks/saved-views/index.d.ts +17 -0
  366. package/dist/blocks/saved-views/index.js +29 -0
  367. package/dist/blocks/saved-views/react/index.d.ts +34 -0
  368. package/dist/blocks/saved-views/react/index.js +57 -0
  369. package/dist/blocks/saved-views/react/server.d.ts +7 -0
  370. package/dist/blocks/saved-views/react/server.js +7 -0
  371. package/dist/blocks/saved-views/solid/index.d.ts +13 -0
  372. package/dist/blocks/saved-views/solid/index.js +14 -0
  373. package/dist/blocks/saved-views/svelte/index.d.ts +13 -0
  374. package/dist/blocks/saved-views/svelte/index.js +14 -0
  375. package/dist/blocks/saved-views/vue/index.d.ts +13 -0
  376. package/dist/blocks/saved-views/vue/index.js +14 -0
  377. package/dist/blocks/search/index.d.ts +31 -0
  378. package/dist/blocks/search/index.js +61 -0
  379. package/dist/blocks/search/react/index.d.ts +36 -0
  380. package/dist/blocks/search/react/index.js +49 -0
  381. package/dist/blocks/search/react/server.d.ts +7 -0
  382. package/dist/blocks/search/react/server.js +8 -0
  383. package/dist/blocks/search/solid/index.d.ts +13 -0
  384. package/dist/blocks/search/solid/index.js +14 -0
  385. package/dist/blocks/search/svelte/index.d.ts +13 -0
  386. package/dist/blocks/search/svelte/index.js +14 -0
  387. package/dist/blocks/search/vue/index.d.ts +13 -0
  388. package/dist/blocks/search/vue/index.js +14 -0
  389. package/dist/blocks/service-principals/index.d.ts +126 -0
  390. package/dist/blocks/service-principals/index.js +107 -0
  391. package/dist/blocks/sessions/index.d.ts +7 -0
  392. package/dist/blocks/sessions/index.js +14 -0
  393. package/dist/blocks/sessions/react/index.d.ts +31 -0
  394. package/dist/blocks/sessions/react/index.js +51 -0
  395. package/dist/blocks/sessions/react/server.d.ts +9 -0
  396. package/dist/blocks/sessions/react/server.js +11 -0
  397. package/dist/blocks/sessions/solid/index.d.ts +20 -0
  398. package/dist/blocks/sessions/solid/index.js +23 -0
  399. package/dist/blocks/sessions/svelte/index.d.ts +20 -0
  400. package/dist/blocks/sessions/svelte/index.js +23 -0
  401. package/dist/blocks/sessions/vue/index.d.ts +20 -0
  402. package/dist/blocks/sessions/vue/index.js +23 -0
  403. package/dist/blocks/settings/index.d.ts +20 -86
  404. package/dist/blocks/settings/index.js +28 -102
  405. package/dist/blocks/settings/react/index.d.ts +25 -0
  406. package/dist/blocks/settings/react/index.js +37 -0
  407. package/dist/blocks/settings/react/server.d.ts +7 -0
  408. package/dist/blocks/settings/react/server.js +7 -0
  409. package/dist/blocks/settings/solid/index.d.ts +13 -0
  410. package/dist/blocks/settings/solid/index.js +14 -0
  411. package/dist/blocks/settings/svelte/index.d.ts +13 -0
  412. package/dist/blocks/settings/svelte/index.js +14 -0
  413. package/dist/blocks/settings/vue/index.d.ts +13 -0
  414. package/dist/blocks/settings/vue/index.js +14 -0
  415. package/dist/blocks/share-links/index.d.ts +106 -0
  416. package/dist/blocks/share-links/index.js +102 -0
  417. package/dist/blocks/shared-signals/index.d.ts +395 -0
  418. package/dist/blocks/shared-signals/index.js +880 -0
  419. package/dist/blocks/signing-keys/index.d.ts +29 -0
  420. package/dist/blocks/signing-keys/index.js +161 -0
  421. package/dist/blocks/sla/index.d.ts +114 -0
  422. package/dist/blocks/sla/index.js +122 -0
  423. package/dist/blocks/sso/index.d.ts +169 -147
  424. package/dist/blocks/sso/index.js +258 -321
  425. package/dist/blocks/state-machine/index.d.ts +105 -0
  426. package/dist/blocks/state-machine/index.js +116 -0
  427. package/dist/blocks/tags/index.d.ts +20 -0
  428. package/dist/blocks/tags/index.js +28 -0
  429. package/dist/blocks/tags/react/index.d.ts +28 -0
  430. package/dist/blocks/tags/react/index.js +47 -0
  431. package/dist/blocks/tags/react/server.d.ts +7 -0
  432. package/dist/blocks/tags/react/server.js +7 -0
  433. package/dist/blocks/tags/solid/index.d.ts +13 -0
  434. package/dist/blocks/tags/solid/index.js +14 -0
  435. package/dist/blocks/tags/svelte/index.d.ts +13 -0
  436. package/dist/blocks/tags/svelte/index.js +14 -0
  437. package/dist/blocks/tags/vue/index.d.ts +13 -0
  438. package/dist/blocks/tags/vue/index.js +14 -0
  439. package/dist/blocks/targets/index.d.ts +82 -0
  440. package/dist/blocks/targets/index.js +73 -0
  441. package/dist/blocks/teams/index.d.ts +61 -0
  442. package/dist/blocks/teams/index.js +83 -0
  443. package/dist/blocks/templates/index.d.ts +362 -0
  444. package/dist/blocks/templates/index.js +483 -0
  445. package/dist/blocks/time-tracking/index.d.ts +250 -0
  446. package/dist/blocks/time-tracking/index.js +317 -0
  447. package/dist/blocks/trash/index.d.ts +78 -0
  448. package/dist/blocks/trash/index.js +79 -0
  449. package/dist/blocks/undo/index.d.ts +9 -0
  450. package/dist/blocks/undo/index.js +14 -0
  451. package/dist/blocks/undo/react/index.d.ts +17 -0
  452. package/dist/blocks/undo/react/index.js +24 -0
  453. package/dist/blocks/undo/react/server.d.ts +7 -0
  454. package/dist/blocks/undo/react/server.js +7 -0
  455. package/dist/blocks/undo/solid/index.d.ts +13 -0
  456. package/dist/blocks/undo/solid/index.js +14 -0
  457. package/dist/blocks/undo/svelte/index.d.ts +13 -0
  458. package/dist/blocks/undo/svelte/index.js +14 -0
  459. package/dist/blocks/undo/vue/index.d.ts +13 -0
  460. package/dist/blocks/undo/vue/index.js +14 -0
  461. package/dist/blocks/usage/index.d.ts +10 -4
  462. package/dist/blocks/usage/index.js +16 -233
  463. package/dist/blocks/usage/react/index.d.ts +23 -0
  464. package/dist/blocks/usage/react/index.js +38 -0
  465. package/dist/blocks/usage/react/server.d.ts +7 -0
  466. package/dist/blocks/usage/react/server.js +7 -0
  467. package/dist/blocks/usage/solid/index.d.ts +13 -0
  468. package/dist/blocks/usage/solid/index.js +14 -0
  469. package/dist/blocks/usage/svelte/index.d.ts +13 -0
  470. package/dist/blocks/usage/svelte/index.js +14 -0
  471. package/dist/blocks/usage/vue/index.d.ts +13 -0
  472. package/dist/blocks/usage/vue/index.js +14 -0
  473. package/dist/blocks/versions/index.d.ts +169 -0
  474. package/dist/blocks/versions/index.js +288 -0
  475. package/dist/blocks/waitlist/index.d.ts +57 -19
  476. package/dist/blocks/waitlist/index.js +46 -12
  477. package/dist/blocks/webhooks/index.d.ts +269 -137
  478. package/dist/blocks/webhooks/index.js +752 -179
  479. package/dist/blocks/work-items/index.d.ts +208 -0
  480. package/dist/blocks/work-items/index.js +305 -0
  481. package/dist/blocks/workflow-builder/index.d.ts +26 -6
  482. package/dist/blocks/workflow-builder/index.js +30 -5
  483. package/dist/blocks/workflow-builder/react/index.d.ts +4 -19
  484. package/dist/blocks/workflow-builder/react/index.js +45 -89
  485. package/dist/blocks/workflow-builder/solid/index.d.ts +20 -0
  486. package/dist/blocks/workflow-builder/solid/index.js +23 -0
  487. package/dist/blocks/workflow-builder/svelte/index.d.ts +20 -0
  488. package/dist/blocks/workflow-builder/svelte/index.js +23 -0
  489. package/dist/blocks/workflow-builder/vue/index.d.ts +20 -0
  490. package/dist/blocks/workflow-builder/vue/index.js +23 -0
  491. package/dist/blocks/workflows/index.d.ts +20 -3
  492. package/dist/blocks/workflows/index.js +27 -3
  493. package/dist/blocks/workflows/react/index.d.ts +5 -20
  494. package/dist/blocks/workflows/react/index.js +41 -113
  495. package/dist/blocks/workflows/solid/index.d.ts +20 -0
  496. package/dist/blocks/workflows/solid/index.js +23 -0
  497. package/dist/blocks/workflows/svelte/index.d.ts +20 -0
  498. package/dist/blocks/workflows/svelte/index.js +23 -0
  499. package/dist/blocks/workflows/vue/index.d.ts +20 -0
  500. package/dist/blocks/workflows/vue/index.js +23 -0
  501. package/dist/blocks-D2WQ63PI.js +84 -0
  502. package/dist/bookings-EJAVAuVz.js +181 -0
  503. package/dist/build-6jmaPAgx.js +689 -0
  504. package/dist/build-Cm0T5MVG.js +1815 -0
  505. package/dist/calendar-1J1E5dLq.js +801 -0
  506. package/dist/channel-D-LHCY11.d.ts +78 -0
  507. package/dist/channels-C-GCoNLd.js +114 -0
  508. package/dist/chat-sdk/index.d.ts +131 -7
  509. package/dist/chat-sdk/index.js +154 -6
  510. package/dist/chat-sdk/react/index.d.ts +2 -1
  511. package/dist/chat-sdk/react/index.js +1 -2
  512. package/dist/chat-sdk/react/server.d.ts +2 -1
  513. package/dist/chat-sdk/react/server.js +1 -2
  514. package/dist/cli/add-BhI_nXAo.js +75 -0
  515. package/dist/cli/add-CUS0AiBh.js +651 -0
  516. package/dist/cli/add-ojbcMxyp.js +1 -0
  517. package/dist/cli/adopt-D0ASVx2G.js +1 -0
  518. package/dist/cli/adopt-DwcU6CJd.js +412 -0
  519. package/dist/cli/agent-CCrTYK3W.js +176 -0
  520. package/dist/cli/apply-DBXC0Z5I.js +332 -0
  521. package/dist/cli/bin.js +40 -20
  522. package/dist/cli/blocks-B15ltTFn.js +124 -0
  523. package/dist/cli/blocks-BXeqIzWN.js +1 -0
  524. package/dist/cli/cache-CPBYJAkb.js +502 -0
  525. package/dist/cli/catalog-Di15TkM2.js +187 -0
  526. package/dist/cli/codemod-CrI33UR2.js +985 -0
  527. package/dist/cli/command-D_HI1mp1.js +853 -0
  528. package/dist/cli/completion-DzYo025z.js +205 -0
  529. package/dist/cli/completion-En43UcyJ.js +30 -0
  530. package/dist/cli/completion-Vry-Wjw8.js +1 -0
  531. package/dist/cli/config-Bi_UBxXl.js +1451 -0
  532. package/dist/cli/config-DsqQr5z3.js +1 -0
  533. package/dist/cli/config-DyJgo2d9.js +39 -0
  534. package/dist/cli/config-edit-Ct1lXe8a.js +603 -0
  535. package/dist/cli/db-DT1bGB02.js +78 -0
  536. package/dist/cli/design-edit-B-WsnhUF.js +175 -0
  537. package/dist/cli/detect-BeLVeNpA.js +84 -0
  538. package/dist/cli/dist-D_VbPAMR.js +129 -0
  539. package/dist/cli/dist-DuiMMRbJ.js +1112 -0
  540. package/dist/cli/doctor-wACp5w6N.js +3508 -0
  541. package/dist/cli/emit-j0zZ6NE_.js +1061 -0
  542. package/dist/cli/env-2v9JrxSr.js +142 -0
  543. package/dist/cli/env-Cf5OTqbK.js +1087 -0
  544. package/dist/cli/env-Ch99nTQw.js +1 -0
  545. package/dist/cli/env-DkBe35Rv.js +1 -0
  546. package/dist/cli/errors-Caiz_0so.js +98 -0
  547. package/dist/cli/fastest-levenshtein-dhRRvrM2.js +120 -0
  548. package/dist/cli/files-DDvAwTko.js +963 -0
  549. package/dist/cli/gen-BhquLu7l.js +304 -0
  550. package/dist/cli/guards-CUlDNYZs.js +8 -0
  551. package/dist/cli/index.d.ts +260 -129
  552. package/dist/cli/index.js +13 -10
  553. package/dist/cli/init-BwLTO6XG.js +400 -0
  554. package/dist/cli/introspect-B-gXAIqs.js +51 -0
  555. package/dist/cli/io-BiPX-_J1.js +37 -0
  556. package/dist/cli/jsonc-C8M0EhHB.js +1 -0
  557. package/dist/cli/keys-hwtdwdkT.js +106 -0
  558. package/dist/cli/live-BFfYoE0_.js +329 -0
  559. package/dist/cli/mcp-Bdm2oGmL.js +237 -0
  560. package/dist/cli/metadata-DikbSOE0.js +138 -0
  561. package/dist/cli/migration-safety-LaGVPPuD.js +206 -0
  562. package/dist/cli/module-migration-CLkZ8jpw.js +592 -0
  563. package/dist/cli/moved-B7UFO_OM.js +152 -0
  564. package/dist/cli/parse-CwV5a6dA.js +170 -0
  565. package/dist/cli/preset-DQ1DxMtI.js +129 -0
  566. package/dist/cli/prompts-Bvg_DBpe.js +1137 -0
  567. package/dist/cli/redact-PjNswZOs.js +35 -0
  568. package/dist/cli/rolldown-runtime-kJ_i4yPo.js +26 -0
  569. package/dist/cli/run-BLJj7SuM.js +685 -0
  570. package/dist/cli/run-DliGNdjI.js +1507 -0
  571. package/dist/cli/scaffold-6bv24GSP.js +898 -0
  572. package/dist/cli/scaffold-DUz5fa-k.js +1 -0
  573. package/dist/cli/seed-CIJaL1Ao.js +113 -0
  574. package/dist/cli/seed-ClGWseBT.js +1 -0
  575. package/dist/cli/shared-CNcvDOLt.js +145 -0
  576. package/dist/cli/shell-Btv_4Yhe.js +10 -0
  577. package/dist/cli/skills-CaxIQhzW.js +121 -0
  578. package/dist/cli/snapshot-Dvcx0BSl.js +347 -0
  579. package/dist/cli/source-args-BNhagtpw.js +47 -0
  580. package/dist/cli/spec-BewE6r6J.js +7501 -0
  581. package/dist/cli/spec-DRDaIq8f.js +1 -0
  582. package/dist/cli/sql-BBkchli4.js +326 -0
  583. package/dist/cli/sql-BCQt5TDs.js +2 -0
  584. package/dist/cli/stack-status-LeEoCtV1.js +456 -0
  585. package/dist/cli/style-2JfIPVMQ.js +29 -0
  586. package/dist/cli/supabase-toml-DjLgBYEo.js +1153 -0
  587. package/dist/cli/sync-CJ-ft-tl.js +88 -0
  588. package/dist/cli/topics-BBE1-Vrg.js +30 -0
  589. package/dist/cli/trace-VbdO6bcN.js +7 -0
  590. package/dist/cli/typegen--TfvOPLh.js +494 -0
  591. package/dist/cli/typegen-version-BNBPI4Eu.js +9 -0
  592. package/dist/cli/validate-BfWNKvxy.js +7522 -0
  593. package/dist/cli/version-D1wM9DNb.js +4 -0
  594. package/dist/cli/write-Dp1XlAVM.js +198 -0
  595. package/dist/client/index.d.ts +7 -4
  596. package/dist/client/index.js +152 -6
  597. package/dist/client/native/index.d.ts +71 -4
  598. package/dist/client/native/index.js +65 -6
  599. package/dist/client-13Ii0c0P.js +84 -0
  600. package/dist/client-9zIKhf5D.d.ts +58 -0
  601. package/dist/client-AxwF58Eo.js +98 -0
  602. package/dist/client-B0rvMvA8.d.ts +52 -0
  603. package/dist/client-B5nnqDmz.d.ts +39 -0
  604. package/dist/client-B7LCXnnY.d.ts +59 -0
  605. package/dist/client-B9CqzgPO.js +75 -0
  606. package/dist/client-B9H4BZJh.d.ts +455 -0
  607. package/dist/client-BGnJ5WJi.js +438 -0
  608. package/dist/client-BLKpcAs0.d.ts +34 -0
  609. package/dist/client-BO9fQgBB.d.ts +155 -0
  610. package/dist/client-B_r4denm.d.ts +135 -0
  611. package/dist/client-BaynD5V-.d.ts +388 -0
  612. package/dist/client-BfgwocyT.js +155 -0
  613. package/dist/client-BpS8a6Fm.js +51 -0
  614. package/dist/client-BtBkVSk2.d.ts +108 -0
  615. package/dist/client-ByGlM0YF.d.ts +101 -0
  616. package/dist/client-BzCv4kKE.js +65 -0
  617. package/dist/client-C-2ajnhM.js +89 -0
  618. package/dist/client-C3dLIsJv.d.ts +122 -0
  619. package/dist/client-C597NIlL.d.ts +277 -0
  620. package/dist/client-C5mUEb2n.js +55 -0
  621. package/dist/client-CFeWXNXy.js +133 -0
  622. package/dist/client-CWs3X4g1.js +120 -0
  623. package/dist/client-Cgxj38RS.d.ts +419 -0
  624. package/dist/client-CjyTNdt1.d.ts +65 -0
  625. package/dist/client-CmHsfDHU.js +438 -0
  626. package/dist/client-CpMv4-v5.d.ts +100 -0
  627. package/dist/client-CsRpAyIv.d.ts +68 -0
  628. package/dist/client-CvITjt-9.js +310 -0
  629. package/dist/client-D0502FgY.js +1051 -0
  630. package/dist/client-D727oIVC.js +169 -0
  631. package/dist/client-D9zBl9PT.d.ts +103 -0
  632. package/dist/client-DG7FwgZD.js +104 -0
  633. package/dist/client-DNq8xYb-.js +52 -0
  634. package/dist/client-DR_YEGnc.d.ts +130 -0
  635. package/dist/client-DZXFDaQE.d.ts +157 -0
  636. package/dist/client-Diu2lPbg.d.ts +218 -0
  637. package/dist/client-Dk8gY9hi.d.ts +34 -0
  638. package/dist/client-Ezlbskjq.js +60 -0
  639. package/dist/client-Fi8CoJcs.d.ts +263 -0
  640. package/dist/client-LVa6yC9u.d.ts +107 -0
  641. package/dist/client-WXJwUhr1.d.ts +162 -0
  642. package/dist/client-WgrPIHH-.js +213 -0
  643. package/dist/client-ZTtSV3l8.js +40 -0
  644. package/dist/client-ckXfdy1k.js +38 -0
  645. package/dist/client-fpvgtQKE.js +128 -0
  646. package/dist/client-iB5axfa0.js +209 -0
  647. package/dist/client-jvtwGFy4.js +137 -0
  648. package/dist/client-kI6vCKVI.js +288 -0
  649. package/dist/client-kKdkLGPB.d.ts +131 -0
  650. package/dist/client-pxjbgOz6.js +376 -0
  651. package/dist/client-rp7YfOg1.js +67 -0
  652. package/dist/cloud-event-bwsBwVNG.d.ts +64 -0
  653. package/dist/codecs-Bm46sVxr.d.ts +215 -0
  654. package/dist/codecs-C7E_OoiC.js +358 -0
  655. package/dist/codegen-2m4SKVdi.d.ts +1654 -0
  656. package/dist/comments-N7Bi-oTW.js +230 -0
  657. package/dist/commerce/index.d.ts +211 -0
  658. package/dist/commerce/index.js +517 -0
  659. package/dist/compiler-C6E3WwIi.d.ts +14 -0
  660. package/dist/compose-CO_cljl3.js +53 -0
  661. package/dist/composite-CPV0thLs.js +130 -0
  662. package/dist/composite-DMMA_Whg.d.ts +67 -0
  663. package/dist/config/index.d.ts +7 -5
  664. package/dist/config/index.js +7 -4
  665. package/dist/config-C4RQDF6t.js +3896 -0
  666. package/dist/config-CkyahUjo.js +558 -0
  667. package/dist/connector-Cp8CqssJ.d.ts +107 -0
  668. package/dist/connectors-CZdfZcIg.d.ts +141 -0
  669. package/dist/context-B8_p3MXo.js +11 -0
  670. package/dist/context-BDDgjoxz.js +41 -0
  671. package/dist/context-C-bHOtoD.js +5 -0
  672. package/dist/context-CCfX2szU.d.ts +377 -0
  673. package/dist/context-D6ZMKc2L.js +19 -0
  674. package/dist/context-wDKxSl9x.js +9 -0
  675. package/dist/controller-CCb9tHw_.d.ts +46 -0
  676. package/dist/controller-D6NyNrlZ.js +79 -0
  677. package/dist/create/index.d.ts +597 -0
  678. package/dist/create/index.js +2049 -0
  679. package/dist/create/lite/index.d.ts +85 -0
  680. package/dist/create/lite/index.js +126 -0
  681. package/dist/create/supabase/index.d.ts +68 -0
  682. package/dist/create/supabase/index.js +312 -0
  683. package/dist/credentials/index.d.ts +15 -5
  684. package/dist/credentials/index.js +16 -8
  685. package/dist/cron-CUaKTjWC.js +145 -0
  686. package/dist/cron-route-BsgbJ-g4.js +24 -0
  687. package/dist/csv-CVfXqaAu.js +89 -0
  688. package/dist/csv-D3eKxV1T.d.ts +28 -0
  689. package/dist/define-CMcokcZz.js +1896 -0
  690. package/dist/define-DXTC706J.d.ts +1005 -0
  691. package/dist/define-block-B6Gjs57G.js +52 -0
  692. package/dist/define-block-BlHQxDIQ.d.ts +256 -0
  693. package/dist/delegation-Dt8hMJWu.js +140 -0
  694. package/dist/delivery-B1mKaOen.js +30 -0
  695. package/dist/delivery-BeHgwS3k.d.ts +69 -0
  696. package/dist/documents-BYM2viS0.d.ts +96 -0
  697. package/dist/edge/index.d.ts +16 -14
  698. package/dist/edge/index.js +24 -18
  699. package/dist/elysia/index.d.ts +1 -1
  700. package/dist/elysia/index.js +2 -2
  701. package/dist/email-BcmbIWOX.d.ts +42 -0
  702. package/dist/embeddings-CVeOoufZ.js +128 -0
  703. package/dist/embeddings-Da0w4A_0.d.ts +78 -0
  704. package/dist/ended-EcTtzzQJ.d.ts +70 -0
  705. package/dist/entitlements-AmYp2KHX.js +45 -0
  706. package/dist/entitlements-Bn7BTnbg.d.ts +53 -0
  707. package/dist/env/index.d.ts +1 -1
  708. package/dist/env/index.js +9 -4
  709. package/dist/envelope--7d0Q3Se.js +90 -0
  710. package/dist/errors-7MqM7bbV.js +44 -0
  711. package/dist/errors-8i6tSICm.js +301 -0
  712. package/dist/escape-like-AUEPn-C5.d.ts +15 -0
  713. package/dist/eve/index.d.ts +5 -5
  714. package/dist/eve/index.js +9 -9
  715. package/dist/eve-BcEr_hPo.d.ts +151 -0
  716. package/dist/event-calendar-DJXXMJ3x.d.ts +217 -0
  717. package/dist/event-map-Dy2vKHai.js +19 -0
  718. package/dist/events/index.d.ts +4 -4
  719. package/dist/events/index.js +10 -7
  720. package/dist/events-CtAHxPal.d.ts +800 -0
  721. package/dist/events-xbpHkcK9.js +82 -0
  722. package/dist/executor-BicyP8Nl.d.ts +272 -0
  723. package/dist/executor-CHRwEYqt.d.ts +95 -0
  724. package/dist/executor-CIxyatuB.d.ts +174 -0
  725. package/dist/executor-Cex-1PFp.js +735 -0
  726. package/dist/executor-D3K3tycZ.js +147 -0
  727. package/dist/executor-DzJQVTE2.d.ts +39 -0
  728. package/dist/executor-aKUo_Xyb.js +206 -0
  729. package/dist/expo/index.d.ts +4 -4
  730. package/dist/expo/index.js +6 -6
  731. package/dist/expo-sqlite/index.d.ts +3 -3
  732. package/dist/expo-sqlite/index.js +2 -2
  733. package/dist/field-errors-nFnYWvB0.d.ts +113 -0
  734. package/dist/field-formats-Cif5gr7c.js +102 -0
  735. package/dist/field-formats-DCvOQlOy.d.ts +39 -0
  736. package/dist/filter-evaluate-C0ULNfS7.js +214 -0
  737. package/dist/filter-evaluate-CEm52E5s.d.ts +34 -0
  738. package/dist/filter-query-B3lhckKX.js +518 -0
  739. package/dist/filter-query-D3wOD1P_.d.ts +121 -0
  740. package/dist/flags-CtSrkVuW.js +279 -0
  741. package/dist/flags-Dz5PIzFU.d.ts +230 -0
  742. package/dist/flags-sdk/index.d.ts +143 -0
  743. package/dist/flags-sdk/index.js +175 -0
  744. package/dist/form-definition-GVZTILhS.js +311 -0
  745. package/dist/form-definition-sagoefQr.d.ts +95 -0
  746. package/dist/format-CNwSjXUU.d.ts +70 -0
  747. package/dist/framework-C2oL4OaO.d.ts +26 -0
  748. package/dist/framework-Cfm0IspZ.js +51 -0
  749. package/dist/function-contract-B4c0XuTU.d.ts +21 -0
  750. package/dist/function-contract-DmkBg19r.js +5 -0
  751. package/dist/gateway-CJL6ZG17.d.ts +109 -0
  752. package/dist/gateway-options-ClvvfuuU.d.ts +29 -0
  753. package/dist/gateway-options-DcLcWL5_.js +27 -0
  754. package/dist/graph-Cs28bOlK.js +360 -0
  755. package/dist/groups-CxonH3u5.js +16 -0
  756. package/dist/h3/index.d.ts +7 -3
  757. package/dist/h3/index.js +3 -3
  758. package/dist/h3/v1/index.d.ts +1 -1
  759. package/dist/h3/v1/index.js +2 -2
  760. package/dist/hono/index.d.ts +24 -10
  761. package/dist/hono/index.js +50 -22
  762. package/dist/http-BF-V0CUF.js +25 -0
  763. package/dist/impersonation-CDeCzZP6.js +62 -0
  764. package/dist/impersonation-D5chOkrO.d.ts +25 -0
  765. package/dist/inbox-BaUJgHOF.d.ts +400 -0
  766. package/dist/index-8xwnaWHY.d.ts +344 -0
  767. package/dist/index-BurdFUXr.d.ts +131 -0
  768. package/dist/index-Cckxs8IE.d.ts +206 -0
  769. package/dist/index-Ck4oK5vV.d.ts +258 -0
  770. package/dist/index-Co0YsJTk.d.ts +58 -0
  771. package/dist/index-CxmVzT-3.d.ts +86 -0
  772. package/dist/index-D1kMyNc7.d.ts +245 -0
  773. package/dist/index-DL8z_oDo.d.ts +227 -0
  774. package/dist/index-DMONTkSf.d.ts +202 -0
  775. package/dist/index-DTQbC3CW.d.ts +58 -0
  776. package/dist/index-DcijDfh1.d.ts +97 -0
  777. package/dist/index-MCXVzkXs.d.ts +722 -0
  778. package/dist/index-gXy3R1Uq.d.ts +138 -0
  779. package/dist/index.d.ts +15 -15
  780. package/dist/index.js +15 -14
  781. package/dist/iso4217-A8ev-CNW.js +176 -0
  782. package/dist/json-schema-CpYINXG8.js +548 -0
  783. package/dist/jws-35a8VhFV.d.ts +60 -0
  784. package/dist/jws-milwSg7E.js +191 -0
  785. package/dist/kit-BlcEFQql.d.ts +66 -0
  786. package/dist/kit-gqwkVhGU.js +104 -0
  787. package/dist/knowledge-BYtgA52P.d.ts +187 -0
  788. package/dist/knowledge-CSNKLX-s.js +272 -0
  789. package/dist/lint/index.js +9 -9
  790. package/dist/list/index.d.ts +4 -2
  791. package/dist/list/index.js +4 -2
  792. package/dist/list-query-CBXNfJt4.js +549 -0
  793. package/dist/list-query-DWJIiVz_.d.ts +194 -0
  794. package/dist/live-DwDreq1n.js +239 -0
  795. package/dist/management-D1gG89z2.d.ts +53 -0
  796. package/dist/mcp/index.d.ts +59 -17
  797. package/dist/mcp/index.js +202 -98
  798. package/dist/mcp/sdk/index.d.ts +6 -6
  799. package/dist/mcp/sdk/index.js +7 -7
  800. package/dist/messages-Cx4ttLJJ.js +493 -0
  801. package/dist/methods-7u6vSgz_.js +11 -0
  802. package/dist/metric-definition-95HFoW1V.d.ts +70 -0
  803. package/dist/metric-definition-BjxVn4R5.js +117 -0
  804. package/dist/mfa-DtflCXEt.d.ts +30 -0
  805. package/dist/model-lUafmeBQ.d.ts +311 -0
  806. package/dist/model-messages-CTu-6kBu.js +206 -0
  807. package/dist/money-95Rff2vT.js +185 -0
  808. package/dist/money-DFpWzQvk.d.ts +76 -0
  809. package/dist/money-codec-DCGgzO26.js +41 -0
  810. package/dist/nestjs/index.d.ts +2 -2
  811. package/dist/nestjs/index.js +2 -2
  812. package/dist/next/index.d.ts +26 -16
  813. package/dist/next/index.js +17 -16
  814. package/dist/node/index.d.ts +2 -2
  815. package/dist/node/index.js +3 -3
  816. package/dist/nuxt/index.d.ts +2 -2
  817. package/dist/nuxt/index.js +3 -2
  818. package/dist/onboarding-viTTNWUp.js +68 -0
  819. package/dist/openapi/index.d.ts +3 -3
  820. package/dist/openapi/index.js +2 -2
  821. package/dist/operations-BtuQRwTJ.d.ts +6 -0
  822. package/dist/operations-CsIfMED7.js +29 -0
  823. package/dist/optional-peer-Dx8TaYXw.js +29 -0
  824. package/dist/options-B0FcEKtH.js +5 -0
  825. package/dist/options-B5BU2Yg7.js +11 -0
  826. package/dist/options-B5woz53h.js +5 -0
  827. package/dist/options-B7EJaOX-.js +5 -0
  828. package/dist/options-B9q8CROT.js +9 -0
  829. package/dist/options-BA6jV6py.js +10 -0
  830. package/dist/options-BAW2ZlZ8.js +8 -0
  831. package/dist/options-BMjcVuaI.js +82 -0
  832. package/dist/options-BOOEzor9.js +5 -0
  833. package/dist/options-BZsoPJGX.js +5 -0
  834. package/dist/options-BesyRBnM.js +16 -0
  835. package/dist/options-Bf96aVk5.js +10 -0
  836. package/dist/options-BlOPivzq.js +8 -0
  837. package/dist/options-Blg8lAkz.js +9 -0
  838. package/dist/options-Bn4cu0gt.js +5 -0
  839. package/dist/options-BnoJOwXK.js +8 -0
  840. package/dist/options-Bp7sgKvl.js +30 -0
  841. package/dist/options-BxcFLL1G.js +8 -0
  842. package/dist/options-C1HR4UZd.js +13 -0
  843. package/dist/options-C239TLRF.js +14 -0
  844. package/dist/options-C2HesT4A.js +9 -0
  845. package/dist/options-C3EzJATk.js +10 -0
  846. package/dist/options-C3hZ1fbC.js +10 -0
  847. package/dist/options-C6rEL6U5.js +8 -0
  848. package/dist/options-CAzVf-1T.js +8 -0
  849. package/dist/options-CGKSUFUq.js +5 -0
  850. package/dist/options-CGjGE8xS.js +12 -0
  851. package/dist/options-CK5WiFwG.js +11 -0
  852. package/dist/options-CN7PHkhU.js +8 -0
  853. package/dist/options-CTZNpb2n.js +5 -0
  854. package/dist/options-CUqQ9pm7.js +9 -0
  855. package/dist/options-CVSWgZpY.js +8 -0
  856. package/dist/options-CXFz0xxS.js +8 -0
  857. package/dist/options-CZk_fbbg.js +9 -0
  858. package/dist/options-C_pb1Nd3.js +5 -0
  859. package/dist/options-CbSOj53r.d.ts +52 -0
  860. package/dist/options-ChD15QxJ.js +9 -0
  861. package/dist/options-CkScQRJR.js +12 -0
  862. package/dist/options-CljDnQt2.js +25 -0
  863. package/dist/options-CmraJhd9.js +5 -0
  864. package/dist/options-CoX6VKGb.js +8 -0
  865. package/dist/options-CrC78Tee.js +5 -0
  866. package/dist/options-Ctac2R0Q.js +11 -0
  867. package/dist/options-CyD7OObW.js +17 -0
  868. package/dist/options-D1blDihM.js +9 -0
  869. package/dist/options-D2Gd6VfS.js +8 -0
  870. package/dist/options-D2d1fFuw.js +11 -0
  871. package/dist/options-D40CQzji.js +8 -0
  872. package/dist/options-D7f2VKzj.js +25 -0
  873. package/dist/options-DARkpk2P.js +8 -0
  874. package/dist/options-DCduTMST.js +17 -0
  875. package/dist/options-DDzggjN7.js +8 -0
  876. package/dist/options-DMR68VAC.js +5 -0
  877. package/dist/options-DNKyN5uq.js +20 -0
  878. package/dist/options-DTDxFT6J.js +13 -0
  879. package/dist/options-DWpz3V3F.js +8 -0
  880. package/dist/options-DXqcJyOP.js +10 -0
  881. package/dist/options-DYBQ973I.js +8 -0
  882. package/dist/options-Dh4wu9Ks.js +15 -0
  883. package/dist/options-Dmg1Da9P.js +25 -0
  884. package/dist/options-DsUgamiy.js +5 -0
  885. package/dist/options-EsUh744F.js +13 -0
  886. package/dist/options-Fz6xqu-b.js +5 -0
  887. package/dist/options-HSv8R6h5.js +13 -0
  888. package/dist/options-I8zVkB_y.js +8 -0
  889. package/dist/options-MHhjOoWz.js +5 -0
  890. package/dist/options-MLxMkd5B.js +11 -0
  891. package/dist/options-OJ5zmgr8.js +10 -0
  892. package/dist/options-QKP9FFcK.js +8 -0
  893. package/dist/options-SViK_2x2.js +12 -0
  894. package/dist/options-XgfTctbI.js +5 -0
  895. package/dist/options-_9arpsX9.js +11 -0
  896. package/dist/options-eBPsk4WI.js +11 -0
  897. package/dist/options-kLKILdIu.js +10 -0
  898. package/dist/options-n22NK3PL.js +8 -0
  899. package/dist/options-oeAq4Ho5.js +12 -0
  900. package/dist/options-qU8vgxhO.js +18 -0
  901. package/dist/options-vXMBEWSH.js +5 -0
  902. package/dist/options-wFnK3qWl.js +9 -0
  903. package/dist/options-xVAy3UsV.js +9 -0
  904. package/dist/organizations-Bxrm32IG.js +398 -0
  905. package/dist/orpc/index.d.ts +26 -10
  906. package/dist/orpc/index.js +54 -33
  907. package/dist/otel/index.d.ts +3 -3
  908. package/dist/otel/index.js +42 -7
  909. package/dist/outbox-BCGHl9X6.d.ts +181 -0
  910. package/dist/overlay/index.d.ts +1 -1
  911. package/dist/overlay/index.js +3 -3
  912. package/dist/payments-h45bswA-.js +16 -0
  913. package/dist/pg-error-BV_X8Isq.js +26 -0
  914. package/dist/plugin-D5OIaP93.d.ts +190 -0
  915. package/dist/plugins/actor/index.d.ts +1 -1
  916. package/dist/plugins/actor/index.js +1 -1
  917. package/dist/plugins/rules/index.d.ts +2 -2
  918. package/dist/plugins/rules/index.js +2 -2
  919. package/dist/plugins/soft-delete/index.d.ts +3 -3
  920. package/dist/plugins/soft-delete/index.js +4 -4
  921. package/dist/plugins/tenant/index.d.ts +4 -3
  922. package/dist/plugins/tenant/index.js +3 -3
  923. package/dist/plugins/timestamps/index.d.ts +1 -1
  924. package/dist/plugins/timestamps/index.js +1 -1
  925. package/dist/plugins/validation/index.d.ts +2 -2
  926. package/dist/plugins/validation/index.js +3 -3
  927. package/dist/pool-BBi4mot3.d.ts +117 -0
  928. package/dist/pool-errors-C94tPR_G.js +27 -0
  929. package/dist/ports-B53rB7zg.d.ts +285 -0
  930. package/dist/ports-Bcdppx0G.js +133 -0
  931. package/dist/ports-Dcnuo3HT.d.ts +86 -0
  932. package/dist/postgres/index.d.ts +28 -6
  933. package/dist/postgres/index.js +62 -25
  934. package/dist/postgrest-D6fEMsp4.d.ts +53 -0
  935. package/dist/powersync/index.d.ts +4 -4
  936. package/dist/powersync/index.js +4 -4
  937. package/dist/powersync/react/index.d.ts +8 -3
  938. package/dist/powersync/react/index.js +11 -3
  939. package/dist/preset/index.d.ts +4 -0
  940. package/dist/preset/index.js +4 -0
  941. package/dist/preset-BBrL6_Ln.js +648 -0
  942. package/dist/problem-CEjyhV5T.d.ts +76 -0
  943. package/dist/problem-pIiL3WbE.js +159 -0
  944. package/dist/provider-CQ1SrhLa.d.ts +113 -0
  945. package/dist/provider-DKh2xFZb.js +57 -0
  946. package/dist/push-token-CDMgWT13.d.ts +24 -0
  947. package/dist/push-token-D6REHMMw.js +16 -0
  948. package/dist/query/index.d.ts +2 -2
  949. package/dist/range-DwpWe8e7.js +7 -0
  950. package/dist/range-p5V4rBhZ.d.ts +8 -0
  951. package/dist/rank-keys-DcPMt_Jk.js +60 -0
  952. package/dist/rank-result-Dngpt2n5.d.ts +14 -0
  953. package/dist/rank-result-oUF1DYBm.js +18 -0
  954. package/dist/rate-limit-BtbddDnE.js +49 -0
  955. package/dist/rate-limit-ByfWNX9N.js +325 -0
  956. package/dist/rate-limit-C88MEAOm.d.ts +41 -0
  957. package/dist/ratelimit-headers-Bsxx0Tj2.js +62 -0
  958. package/dist/react/index.d.ts +9 -9
  959. package/dist/react/index.js +3 -4
  960. package/dist/react/native/index.d.ts +1 -1
  961. package/dist/react/native/index.js +2 -2
  962. package/dist/react/server.d.ts +10 -10
  963. package/dist/react/server.js +3 -3
  964. package/dist/react/session.d.ts +2 -2
  965. package/dist/react-BcKACxsj.js +410 -0
  966. package/dist/react-controller-Xn-IU44p.js +40 -0
  967. package/dist/react-env-Cc7Vf6eb.js +13 -0
  968. package/dist/react-router/index.d.ts +6 -6
  969. package/dist/react-router/index.js +7 -7
  970. package/dist/read-set-PWiJfv6S.js +314 -0
  971. package/dist/realtime/index.d.ts +8 -4
  972. package/dist/realtime/index.js +5 -327
  973. package/dist/realtime-status-D2dw1hOE.js +12 -0
  974. package/dist/realtime-status-DcsO00Gw.d.ts +8 -0
  975. package/dist/refusal-Bdr1k47u.d.ts +18 -0
  976. package/dist/refusal-Ch-u9dVd.js +61 -0
  977. package/dist/replicas-BvIL4_jL.js +94 -0
  978. package/dist/resolve-7atr-wWr.d.ts +266 -0
  979. package/dist/resolve-CAR9oaKW.js +869 -0
  980. package/dist/resource-CHGOmg1O.js +463 -0
  981. package/dist/resource-DO4gbVi5.js +91 -0
  982. package/dist/resource-DxcgtHq6.d.ts +106 -0
  983. package/dist/resource-execute-C45ICrN9.d.ts +12 -0
  984. package/dist/resource-types-CC59gMHE.d.ts +141 -0
  985. package/dist/resources-B71O7EVQ.d.ts +7 -0
  986. package/dist/resources-B7htXQeg.js +64 -0
  987. package/dist/respond-Cdg5ibH5.d.ts +93 -0
  988. package/dist/respond-Dpx48ATq.js +95 -0
  989. package/dist/result-COkvI9t5.js +134 -0
  990. package/dist/result-Cj3yWhjH.d.ts +298 -0
  991. package/dist/rrule-zBh3CA1r.js +290 -0
  992. package/dist/rules-4of_Fq-6.js +287 -0
  993. package/dist/run-watch-CQRdpy-f.js +53 -0
  994. package/dist/runtime-BOXURhEW.js +45 -0
  995. package/dist/sales-lines-C6gafAwg.d.ts +28 -0
  996. package/dist/sales-lines-CymdiwYd.js +41 -0
  997. package/dist/sales-shared-DAAGwQwN.d.ts +8 -0
  998. package/dist/sales-shared-DjCuN8xG.js +22 -0
  999. package/dist/scope-DgWjuXUw.js +90 -0
  1000. package/dist/search-BtoWY6n_.js +9 -0
  1001. package/dist/search-LbjCylX5.js +106 -0
  1002. package/dist/server/index.d.ts +157 -51
  1003. package/dist/server/index.js +295 -20
  1004. package/dist/server-types-fXwJoFjt.d.ts +737 -0
  1005. package/dist/session-Djo5t4KQ.d.ts +95 -0
  1006. package/dist/settings-DxXfDUmh.js +90 -0
  1007. package/dist/shared-9B02lczf.js +14 -0
  1008. package/dist/shared-BmMcMoW9.js +89 -0
  1009. package/dist/shared-as0EG51f.js +60 -0
  1010. package/dist/sign-in-D0xN6E_l.js +360 -0
  1011. package/dist/signatures-BMdJ7neI.d.ts +43 -0
  1012. package/dist/signatures-C9CGYZS1.js +145 -0
  1013. package/dist/signers-BjSgNAXP.d.ts +385 -0
  1014. package/dist/signing-keys-Ccr86Y2C.d.ts +90 -0
  1015. package/dist/solid/index.d.ts +8 -8
  1016. package/dist/solid/index.js +3 -8
  1017. package/dist/solid-controller-CZrt1Tg6.d.ts +11 -0
  1018. package/dist/solid-controller-DLsmrczT.js +33 -0
  1019. package/dist/solid-start/index.d.ts +8 -12
  1020. package/dist/solid-start/index.js +8 -7
  1021. package/dist/spec/index.d.ts +25 -5
  1022. package/dist/spec/index.js +37 -4
  1023. package/dist/spec-pins-Dqpml2dZ.d.ts +84 -0
  1024. package/dist/spec-pins-S4PymRxp.js +60 -0
  1025. package/dist/sql/index.d.ts +5 -548
  1026. package/dist/sql/index.js +5 -38398
  1027. package/dist/sql-BQshMgmB.js +422 -0
  1028. package/dist/sql-CgTZOQZ7.js +87439 -0
  1029. package/dist/sso-B5ZoEsXE.d.ts +131 -0
  1030. package/dist/sso-CwAnve68.js +217 -0
  1031. package/dist/ssr/index.d.ts +5 -6
  1032. package/dist/ssr/index.js +4 -4
  1033. package/dist/standard-C3_AAF3g.d.ts +7 -0
  1034. package/dist/standard-DZmwmIhV.js +25 -0
  1035. package/dist/stats-CUhqw6Ev.js +1128 -0
  1036. package/dist/storage/index.d.ts +3 -3
  1037. package/dist/storage/index.js +14 -10
  1038. package/dist/storage-api-B4Ib2Zpo.d.ts +582 -0
  1039. package/dist/store-B5qYKsTh.d.ts +68 -0
  1040. package/dist/streams/index.d.ts +4 -4
  1041. package/dist/streams/index.js +4 -4
  1042. package/dist/streams/redis/index.d.ts +1 -1
  1043. package/dist/streams/redis/index.js +4 -4
  1044. package/dist/stripe/index.d.ts +16 -0
  1045. package/dist/stripe/index.js +14 -0
  1046. package/dist/stripe-NVcNOhHy.d.ts +140 -0
  1047. package/dist/stripe-XZrSmDTf.js +32 -0
  1048. package/dist/subject-readers-81xiWh4M.d.ts +21 -0
  1049. package/dist/subject-readers-DDyPTIOr.js +46 -0
  1050. package/dist/subjects-DP-fvFkk.d.ts +77 -0
  1051. package/dist/subscribers-Cq--DL1E.js +34 -0
  1052. package/dist/supabase-mcp-DomZ-amK.js +28 -0
  1053. package/dist/support-BsqhV6jP.js +522 -0
  1054. package/dist/support-view-CznLe4jq.d.ts +17 -0
  1055. package/dist/svelte/index.d.ts +7 -7
  1056. package/dist/svelte/index.js +2 -2
  1057. package/dist/svelte-controller-CDAujo-_.js +50 -0
  1058. package/dist/svelte-controller-DDbju9CW.d.ts +10 -0
  1059. package/dist/sveltekit/index.d.ts +11 -13
  1060. package/dist/sveltekit/index.js +9 -9
  1061. package/dist/table-schema-pQlER3jj.js +283 -0
  1062. package/dist/tags-7NHyD1P8.d.ts +30 -0
  1063. package/dist/tags-DGldvcA4.js +84 -0
  1064. package/dist/tanstack-db/index.d.ts +2 -2
  1065. package/dist/tanstack-db/index.js +1 -1
  1066. package/dist/tanstack-db/supabase/index.d.ts +5 -6
  1067. package/dist/tanstack-db/supabase/index.js +180 -9
  1068. package/dist/tanstack-start/index.d.ts +7 -7
  1069. package/dist/tanstack-start/index.js +6 -6
  1070. package/dist/tax-DDZUB_oc.d.ts +273 -0
  1071. package/dist/tax-DZDpMMRw.js +140 -0
  1072. package/dist/tee-CdRV1tcj.js +101 -0
  1073. package/dist/template-DdgYjIZ5.js +123 -0
  1074. package/dist/temporal-CB5Fpo5d.js +79 -0
  1075. package/dist/temporal-required-DqRzr7i0.js +20 -0
  1076. package/dist/tenant-B-fiItlJ.js +27 -0
  1077. package/dist/tenant-DW_GmsW4.d.ts +17 -0
  1078. package/dist/tenant-naming-Bsj3Uvap.js +27 -0
  1079. package/dist/testing/index.d.ts +235 -32
  1080. package/dist/testing/index.js +1133 -76
  1081. package/dist/timing-BMCWgpdZ.js +92 -0
  1082. package/dist/topic-DB-1YTMj.js +561 -0
  1083. package/dist/topic-Dgs-eSYQ.d.ts +373 -0
  1084. package/dist/types-BO8lVTun.d.ts +363 -0
  1085. package/dist/types-C_GN-4ed.d.ts +162 -0
  1086. package/dist/types-DGHfTW8_.d.ts +9 -0
  1087. package/dist/types-DM8q3IOr.d.ts +240 -0
  1088. package/dist/types-DOaUIJxW.d.ts +205 -0
  1089. package/dist/types-DZj8CZMH.d.ts +649 -0
  1090. package/dist/types-P1S1cj6N.d.ts +564 -0
  1091. package/dist/types-R6syp1el.js +29 -0
  1092. package/dist/undo-0qM13zul.js +44 -0
  1093. package/dist/undo-D42sPjCf.d.ts +43 -0
  1094. package/dist/usage-BrJGPvCq.js +250 -0
  1095. package/dist/usage-CnQHSM_r.d.ts +202 -0
  1096. package/dist/vault-EnOQJWjn.d.ts +50 -0
  1097. package/dist/vercel-connect/index.d.ts +1 -1
  1098. package/dist/vercel-connect/index.js +4 -4
  1099. package/dist/verify-3NLjUIER.d.ts +142 -0
  1100. package/dist/verify-C9D_jjsQ.js +126 -0
  1101. package/dist/version-Bxj_xcUY.js +4 -0
  1102. package/dist/view-DZ63nqwt.js +105 -0
  1103. package/dist/view-SuASaomx.d.ts +90 -0
  1104. package/dist/vue/index.d.ts +8 -8
  1105. package/dist/vue/index.js +3 -16
  1106. package/dist/vue-controller-C9tFzqAc.js +32 -0
  1107. package/dist/vue-controller-D_ohttBZ.d.ts +11 -0
  1108. package/dist/watch-Blj1mQ9n.js +139 -0
  1109. package/dist/watch-D1wwzZ04.d.ts +84 -0
  1110. package/dist/watch-topic-D-rpUg5n.d.ts +28 -0
  1111. package/dist/watch-topic-miuymrli.js +57 -0
  1112. package/dist/wire-DEY0ajW9.js +45 -0
  1113. package/dist/workflow-builder-C5DBN7yq.js +697 -0
  1114. package/dist/workflow-sdk/builder/index.d.ts +46 -15
  1115. package/dist/workflow-sdk/builder/index.js +69 -21
  1116. package/dist/workflow-sdk/index.d.ts +75 -2
  1117. package/dist/workflow-sdk/index.js +83 -3
  1118. package/dist/workflow-sdk/world/index.d.ts +29 -4
  1119. package/dist/workflow-sdk/world/index.js +137 -59
  1120. package/dist/workflow-sdk-Di5pmCAu.d.ts +161 -0
  1121. package/dist/workflow-sdk-vjDWlnfX.js +243 -0
  1122. package/dist/workflow-sdk-world-DPMdBfzn.js +2103 -0
  1123. package/dist/workflows-DJXoxDZH.d.ts +243 -0
  1124. package/dist/workflows-DzdX28KN.js +282 -0
  1125. package/dist/yjs/index.d.ts +67 -0
  1126. package/dist/yjs/index.js +212 -0
  1127. package/package.json +800 -46
  1128. package/schemas/cli-commands-v1.json +220 -0
  1129. package/schemas/cli-result-v1.json +138 -0
  1130. package/schemas/config-v1.json +4503 -909
  1131. package/schemas/doctor-report-v1.json +30 -0
  1132. package/schemas/snapshot-v2.json +271 -0
  1133. package/skills/better-supabase/SKILL.md +12 -4
  1134. package/skills/better-supabase/references/plugins.md +2 -2
  1135. package/skills/better-supabase/references/ui-recipes.md +19324 -0
  1136. package/skills/better-supabase-api/SKILL.md +14 -14
  1137. package/skills/better-supabase-api/references/adapters.md +12 -2
  1138. package/skills/better-supabase-api/references/ai.md +4 -4
  1139. package/skills/better-supabase-api/references/expo.md +1 -1
  1140. package/skills/better-supabase-api/references/powersync.md +1 -1
  1141. package/skills/better-supabase-api/references/streams-credentials.md +8 -5
  1142. package/skills/better-supabase-auth/SKILL.md +18 -11
  1143. package/skills/better-supabase-auth/references/authorization-providers.md +5 -5
  1144. package/skills/better-supabase-testing/SKILL.md +2 -2
  1145. package/testing/act-cases.json +370 -0
  1146. package/dist/access-sql-CrSbK1q-.js +0 -181
  1147. package/dist/actor-CQTlc1Hh.d.ts +0 -43
  1148. package/dist/adapter-CN45ibbV.js +0 -1691
  1149. package/dist/agents-BY_LQXtQ.d.ts +0 -94
  1150. package/dist/ai-cache-Dfgk8nBT.js +0 -81
  1151. package/dist/ai-cache-DrUMMgp6.d.ts +0 -64
  1152. package/dist/ai-chat-CVLRWbtS.js +0 -744
  1153. package/dist/ai-chat-DXkMy74O.d.ts +0 -590
  1154. package/dist/ai-files-CioLu5du.js +0 -320
  1155. package/dist/ai-tasks-BRQ6iQLc.d.ts +0 -131
  1156. package/dist/announcements-Bouy0Ski.d.ts +0 -72
  1157. package/dist/announcements-p_BFofiR.js +0 -107
  1158. package/dist/api-Dnf2q-Ht.d.ts +0 -370
  1159. package/dist/api-DtHFC037.js +0 -676
  1160. package/dist/api-keys-C8BlF3L2.d.ts +0 -156
  1161. package/dist/assistant-DBlFDZsi.d.ts +0 -147
  1162. package/dist/attributes-5dYul0u0.js +0 -13
  1163. package/dist/authorization-BFCqamMs.d.ts +0 -172
  1164. package/dist/authorizer-ayxUDXXP.js +0 -126
  1165. package/dist/base64-D2gsioCY.js +0 -42
  1166. package/dist/before-route-CnR0C0Jr.js +0 -30
  1167. package/dist/bind-ButSzrHe.js +0 -97
  1168. package/dist/bind-CQ5mPyX1.d.ts +0 -62
  1169. package/dist/block-events-DTxU5tfr.js +0 -91
  1170. package/dist/block-fields-CroxUuF2.js +0 -49
  1171. package/dist/block-fields-D1pfrcIY.d.ts +0 -31
  1172. package/dist/block-helpers-C0Xj8War.d.ts +0 -37
  1173. package/dist/block-helpers-Cy3pB96I.js +0 -222
  1174. package/dist/block-hooks-BPNMIlLl.js +0 -114
  1175. package/dist/block-hooks-DaOVC7SC.d.ts +0 -107
  1176. package/dist/block-transport-bAKh-dGc.js +0 -85
  1177. package/dist/block-transport-inD4fFq-.d.ts +0 -70
  1178. package/dist/build-hPwk3_X5.js +0 -1296
  1179. package/dist/build-meLuYGri.js +0 -689
  1180. package/dist/channel-_2Mx1Oyu.d.ts +0 -70
  1181. package/dist/channels-CkgQ_X60.js +0 -114
  1182. package/dist/cli/add-1dc5wM5k.js +0 -69
  1183. package/dist/cli/bin.d.ts +0 -1
  1184. package/dist/cli/cache-CIfA-jBV.js +0 -483
  1185. package/dist/cli/codemod-JVlTQQG2.js +0 -491
  1186. package/dist/cli/command-DV-StG1x.js +0 -507
  1187. package/dist/cli/config-C2Pz2_4A.js +0 -52
  1188. package/dist/cli/config-DpbF8ML3.js +0 -2
  1189. package/dist/cli/config-M-WzL9O2.js +0 -1175
  1190. package/dist/cli/db-BkcfOlyB.js +0 -53
  1191. package/dist/cli/diff-D1jGdb3Y.js +0 -752
  1192. package/dist/cli/dist-DBPdlPYK.js +0 -1112
  1193. package/dist/cli/dist-DRAVaE6w.js +0 -842
  1194. package/dist/cli/dist-DreZ24Sz.js +0 -129
  1195. package/dist/cli/doctor-VcDtuusV.js +0 -3686
  1196. package/dist/cli/emit-BHHfwUoT.js +0 -1136
  1197. package/dist/cli/env-B--LMhEe.js +0 -514
  1198. package/dist/cli/env-vzBG90Um.js +0 -2
  1199. package/dist/cli/env-zHJtMIBo.js +0 -116
  1200. package/dist/cli/errors-CqTLXe2M.js +0 -72
  1201. package/dist/cli/fastest-levenshtein-CF7BCi9l.js +0 -120
  1202. package/dist/cli/files-BVupXPIC.js +0 -34
  1203. package/dist/cli/gen-DmVj3u4L.js +0 -322
  1204. package/dist/cli/glue-C1UE8gQN.js +0 -468
  1205. package/dist/cli/init-CVZ3s5kl.js +0 -258
  1206. package/dist/cli/introspect-BToGNfm-.js +0 -81
  1207. package/dist/cli/io-CFzJVJ68.js +0 -37
  1208. package/dist/cli/jsonc-BUniUpOk.js +0 -2
  1209. package/dist/cli/keys-CJhtIxJ3.js +0 -85
  1210. package/dist/cli/metadata-DSRKCaf-.js +0 -133
  1211. package/dist/cli/openapi-DWa4Ir1q.js +0 -60
  1212. package/dist/cli/project-DZRaBaY7.js +0 -75
  1213. package/dist/cli/prompts-BdeVmVpg.js +0 -2
  1214. package/dist/cli/prompts-DZJB1nTw.js +0 -1142
  1215. package/dist/cli/read-sets-DjJrm8Wj.js +0 -223
  1216. package/dist/cli/rolldown-runtime-CMFfr-1z.js +0 -26
  1217. package/dist/cli/run-DA6_lg3w.js +0 -389
  1218. package/dist/cli/run-DuN1MX-7.js +0 -705
  1219. package/dist/cli/scaffold-5DenHSxF.js +0 -292
  1220. package/dist/cli/scaffold-CwQUMFRb.js +0 -2
  1221. package/dist/cli/seed-CzBmrGON.js +0 -96
  1222. package/dist/cli/seed-DOmit9Hq.js +0 -2
  1223. package/dist/cli/skills-CnO8QFS7.js +0 -139
  1224. package/dist/cli/snapshot-Bstk6ulj.js +0 -287
  1225. package/dist/cli/source-args-BYfq6imV.js +0 -31
  1226. package/dist/cli/spec-CzosTYm3.js +0 -7438
  1227. package/dist/cli/spec-T_0Bcyw7.js +0 -2
  1228. package/dist/cli/sql-BKOOQAX3.js +0 -517
  1229. package/dist/cli/sql-DJrNDxQm.js +0 -3
  1230. package/dist/cli/sql-layout-D6cphHT3.js +0 -69
  1231. package/dist/cli/style-CB3vxgh0.js +0 -29
  1232. package/dist/cli/supabase-toml-B-bIukQF.js +0 -1095
  1233. package/dist/cli/typegen-Demi5-VQ.js +0 -486
  1234. package/dist/cli/typegen-version-DeFbtzYI.js +0 -8
  1235. package/dist/cli/validate-Ca13ktgz.js +0 -7522
  1236. package/dist/cli/version-B4k0aUxS.js +0 -4
  1237. package/dist/client-wxeTQFtB.js +0 -310
  1238. package/dist/cloud-event-Dune0KI7.d.ts +0 -64
  1239. package/dist/compiler-V1qvcST1.d.ts +0 -14
  1240. package/dist/compose-BHej1acw.js +0 -53
  1241. package/dist/composite-CWAJTRBF.d.ts +0 -146
  1242. package/dist/composite-zTe0TCqj.js +0 -130
  1243. package/dist/config-DlKvtt95.js +0 -540
  1244. package/dist/connector-CySQEFcW.d.ts +0 -107
  1245. package/dist/connectors--PGhmiu0.d.ts +0 -120
  1246. package/dist/context-DsV2SueA.d.ts +0 -246
  1247. package/dist/context-nPDvQ-Zl.js +0 -41
  1248. package/dist/cron-D25Ukpxy.js +0 -145
  1249. package/dist/cron-route-D2AN9SA1.js +0 -24
  1250. package/dist/csv-BZnHA1Py.js +0 -25
  1251. package/dist/define-CFQcvM20.js +0 -1949
  1252. package/dist/define-DmcfoNXB.d.ts +0 -1005
  1253. package/dist/embeddings-4ZvFzjsU.js +0 -127
  1254. package/dist/embeddings-B4vhS-dY.d.ts +0 -68
  1255. package/dist/ended-CcvcRqEd.d.ts +0 -69
  1256. package/dist/entitlements-BYFf0Cdh.js +0 -24
  1257. package/dist/entitlements-Ds8qoYZ-.d.ts +0 -51
  1258. package/dist/envelope-DqnYGRw7.js +0 -47
  1259. package/dist/errors-2M6CKMP4.js +0 -271
  1260. package/dist/errors-rZ7VIqp6.js +0 -44
  1261. package/dist/escape-like-DDWoHzh_.d.ts +0 -15
  1262. package/dist/eve-CoAIcCkq.d.ts +0 -151
  1263. package/dist/events-D1BOCll8.d.ts +0 -551
  1264. package/dist/executor-B-fD7DLt.js +0 -735
  1265. package/dist/executor-B_Hfobee.js +0 -162
  1266. package/dist/executor-C-R4pucm.js +0 -83
  1267. package/dist/executor-CpxLPCiz.d.ts +0 -36
  1268. package/dist/executor-DfEtf0cq.d.ts +0 -164
  1269. package/dist/executor-Drzu3dBK.d.ts +0 -261
  1270. package/dist/executor-ngjKL_Pe.d.ts +0 -30
  1271. package/dist/field-errors-DIe9XYWL.d.ts +0 -109
  1272. package/dist/format-DTXdu8ya.d.ts +0 -70
  1273. package/dist/framework-148t1m3C.d.ts +0 -25
  1274. package/dist/framework-3ey3QmrO.js +0 -51
  1275. package/dist/function-contract-BcZenXMO.d.ts +0 -8
  1276. package/dist/gateway-S9vicgeo.d.ts +0 -130
  1277. package/dist/graph-BGyLLFLX.js +0 -265
  1278. package/dist/hooks-Bhza9Hnr.js +0 -277
  1279. package/dist/http-sbmBe5d2.js +0 -25
  1280. package/dist/impersonation-DcqaTBHx.js +0 -148
  1281. package/dist/inbox-Cd1KCEBL.d.ts +0 -384
  1282. package/dist/index-B72Rvv_j.d.ts +0 -89
  1283. package/dist/index-BCHR4Ucl.d.ts +0 -300
  1284. package/dist/index-BUK7jUzR.d.ts +0 -82
  1285. package/dist/index-Ba1SI-uO.d.ts +0 -1331
  1286. package/dist/index-BfxOaOYs.d.ts +0 -245
  1287. package/dist/index-CicIyqOe.d.ts +0 -55
  1288. package/dist/index-D69h4QqD.d.ts +0 -74
  1289. package/dist/index-DG2SUXDQ.d.ts +0 -58
  1290. package/dist/index-DoNVLHOU.d.ts +0 -206
  1291. package/dist/index-R274XFlg.d.ts +0 -138
  1292. package/dist/index-_4R4b01v.d.ts +0 -257
  1293. package/dist/json-schema-CT4tvrkA.js +0 -548
  1294. package/dist/kit-BhHr9T9v.js +0 -104
  1295. package/dist/kit-W99LCPBS.d.ts +0 -66
  1296. package/dist/knowledge-CAReFpRA.d.ts +0 -176
  1297. package/dist/knowledge-DnHtb64A.js +0 -256
  1298. package/dist/list-query-D3JQeEL7.d.ts +0 -164
  1299. package/dist/list-query-gl808ac1.js +0 -459
  1300. package/dist/live-CTAZQkwl.js +0 -257
  1301. package/dist/messages-CJoHHCWT.js +0 -514
  1302. package/dist/mfa-SZc9YYyb.d.ts +0 -54
  1303. package/dist/model-OgBxvk3N.d.ts +0 -300
  1304. package/dist/model-messages-Cxw_Up4f.js +0 -206
  1305. package/dist/modules-DksjZyMW.js +0 -77
  1306. package/dist/modules-DpPwzC7E.d.ts +0 -192
  1307. package/dist/onboarding-LZvlK1P4.d.ts +0 -62
  1308. package/dist/optional-peer-D1pi-skw.js +0 -24
  1309. package/dist/outbox-DZfAvfzC.d.ts +0 -161
  1310. package/dist/plugin-CPK2HsbY.d.ts +0 -190
  1311. package/dist/pool-gkhbGp2E.d.ts +0 -89
  1312. package/dist/postgrest-BUqLag2Q.d.ts +0 -53
  1313. package/dist/problem-CJvFeGu7.js +0 -126
  1314. package/dist/problem-TvGdxO1t.d.ts +0 -73
  1315. package/dist/provider-DxRTex4x.js +0 -57
  1316. package/dist/provider-ib9wzUDz.d.ts +0 -113
  1317. package/dist/rate-limit-Bw7HgmFj.js +0 -260
  1318. package/dist/react-Bmpo59D7.js +0 -409
  1319. package/dist/react-topic-seAWjL3_.js +0 -38
  1320. package/dist/read-set-DAeWhqPf.js +0 -314
  1321. package/dist/refusal-CFI8-5nf.d.ts +0 -18
  1322. package/dist/refusal-K78A1Vmq.js +0 -61
  1323. package/dist/replicas-CwrYp5Zj.js +0 -94
  1324. package/dist/resolve-Bvgf3ut_.js +0 -786
  1325. package/dist/resolve-MxXVWyhd.d.ts +0 -173
  1326. package/dist/resource--vTrBe6I.d.ts +0 -103
  1327. package/dist/resource-BqNqlYg9.js +0 -91
  1328. package/dist/resource-DA811u_4.js +0 -463
  1329. package/dist/resource-execute-rbKvuCsY.d.ts +0 -12
  1330. package/dist/resource-types-CqB6GWGT.d.ts +0 -141
  1331. package/dist/resources-BVYPnuLo.js +0 -56
  1332. package/dist/resources-DZSk8tXJ.d.ts +0 -7
  1333. package/dist/respond-Cw-zanCm.d.ts +0 -93
  1334. package/dist/respond-volM3ByS.js +0 -91
  1335. package/dist/result-BchM1XZn.d.ts +0 -288
  1336. package/dist/result-DEqHCMKP.js +0 -128
  1337. package/dist/scope-CDHcS7dE.js +0 -90
  1338. package/dist/search-CUWCRYKL.js +0 -9
  1339. package/dist/server-types-CrAmZ8jv.d.ts +0 -614
  1340. package/dist/session-ChiXDZdZ.d.ts +0 -72
  1341. package/dist/shared-CBxosKK3.js +0 -75
  1342. package/dist/shared-DHjhfRdV.js +0 -60
  1343. package/dist/shared-DTneRoxi.js +0 -14
  1344. package/dist/sign-in-D_yoP0PF.js +0 -86
  1345. package/dist/signatures-BRS_p3WD.d.ts +0 -34
  1346. package/dist/signatures-DsWv_bYR.js +0 -103
  1347. package/dist/signers-cpdmZYrv.d.ts +0 -166
  1348. package/dist/spec-pins-CwzDY25w.d.ts +0 -44
  1349. package/dist/spec-pins-DsLfUH7l.js +0 -40
  1350. package/dist/sql-CwuqaQ4Y.js +0 -388
  1351. package/dist/standard-DkzZUneg.js +0 -25
  1352. package/dist/standard-lmkbOtPB.d.ts +0 -7
  1353. package/dist/stats-DhU78Ctf.js +0 -1127
  1354. package/dist/storage-api-CB7Zl1Ci.d.ts +0 -582
  1355. package/dist/store-DsIYEBnv.d.ts +0 -68
  1356. package/dist/stripe-D04h-QBT.d.ts +0 -136
  1357. package/dist/stripe-v-Y2lmop.js +0 -32
  1358. package/dist/supabase-mcp-Cpn5A4i-.js +0 -28
  1359. package/dist/support-D1pFFouF.js +0 -350
  1360. package/dist/support-view-scqMgtOo.d.ts +0 -17
  1361. package/dist/table-schema-htM_SbCW.js +0 -286
  1362. package/dist/tags-BO9LjtWG.d.ts +0 -30
  1363. package/dist/tee-Cb98Vn3b.js +0 -101
  1364. package/dist/template-lPVh-EwW.js +0 -123
  1365. package/dist/temporal-BJGitm-h.js +0 -79
  1366. package/dist/temporal-required-BtynQtM-.js +0 -20
  1367. package/dist/tenant-CM368LXb.d.ts +0 -17
  1368. package/dist/tenant-I1TEZ_BX.js +0 -27
  1369. package/dist/timing-CyTQPubY.js +0 -92
  1370. package/dist/types-6cYK9pbJ.js +0 -29
  1371. package/dist/types-Bb_4-vdW.d.ts +0 -220
  1372. package/dist/types-CD6yCDx3.d.ts +0 -359
  1373. package/dist/types-CbOUc5IH.d.ts +0 -156
  1374. package/dist/types-CoE5Zwy4.d.ts +0 -348
  1375. package/dist/types-DSJ3-m9X.d.ts +0 -192
  1376. package/dist/types-D__3EN0q.d.ts +0 -425
  1377. package/dist/usage-D0NNUFfr.d.ts +0 -177
  1378. package/dist/vault-BpmApxxW.d.ts +0 -50
  1379. package/dist/verify-C91Wyp40.d.ts +0 -142
  1380. package/dist/verify-CJbYfADA.js +0 -124
  1381. package/dist/version-Cq8gfDbd.js +0 -4
  1382. package/dist/view-D5ryq3gz.js +0 -99
  1383. package/dist/view-TpXEUcVN.d.ts +0 -87
  1384. package/dist/watch-BcvtAHOd.js +0 -122
  1385. package/dist/watch-COzRWvVN.d.ts +0 -74
  1386. package/dist/wire-Df3EWkG8.js +0 -45
  1387. package/dist/workflow-builder-CHqHpAVt.js +0 -399
  1388. package/dist/workflow-sdk-C2WJ_G2O.js +0 -173
  1389. package/dist/workflow-sdk-DTZyrvNo.d.ts +0 -98
  1390. package/dist/workflow-sdk-world-CMV1ahFW.js +0 -1399
  1391. package/dist/workflows-CcpCBfIe.d.ts +0 -185
  1392. package/dist/workflows-IvxzG2cl.js +0 -217
@@ -0,0 +1,3896 @@
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
+ "bookings",
1628
+ "calendar",
1629
+ "drive",
1630
+ "forms",
1631
+ "outbox",
1632
+ "versions"
1633
+ ],
1634
+ "manifest": "share-links",
1635
+ "scopes": ["tenant"],
1636
+ "extraColumns": "links"
1637
+ },
1638
+ {
1639
+ "name": "reminders",
1640
+ "title": "Reminders",
1641
+ "category": "scheduling",
1642
+ "requires": [
1643
+ "tenant",
1644
+ "access",
1645
+ "jobs"
1646
+ ],
1647
+ "integrates": ["notifications", "outbox"],
1648
+ "manifest": "reminders",
1649
+ "scopes": ["tenant"],
1650
+ "extraColumns": "reminders"
1651
+ },
1652
+ {
1653
+ "name": "imports",
1654
+ "title": "Imports",
1655
+ "category": "content",
1656
+ "requires": [
1657
+ "tenant",
1658
+ "access",
1659
+ "jobs"
1660
+ ],
1661
+ "integrates": ["attachments", "outbox"],
1662
+ "manifest": "imports",
1663
+ "scopes": ["tenant"]
1664
+ },
1665
+ {
1666
+ "name": "subjects",
1667
+ "title": "Subjects",
1668
+ "category": "identity",
1669
+ "requires": ["access"],
1670
+ "integrates": [],
1671
+ "manifest": "subjects",
1672
+ "scopes": ["tenant"]
1673
+ },
1674
+ {
1675
+ "name": "rank",
1676
+ "title": "Rank",
1677
+ "category": "database",
1678
+ "requires": ["access", "subjects"],
1679
+ "integrates": ["jobs"],
1680
+ "manifest": "rank",
1681
+ "scopes": ["tenant"]
1682
+ },
1683
+ {
1684
+ "name": "saved-views",
1685
+ "title": "Saved views",
1686
+ "category": "work",
1687
+ "requires": ["tenant", "access"],
1688
+ "integrates": [
1689
+ "outbox",
1690
+ "teams",
1691
+ "collections"
1692
+ ],
1693
+ "manifest": "saved-views",
1694
+ "scopes": ["tenant"],
1695
+ "tenantNameClashes": ["team"],
1696
+ "extraColumns": "views"
1697
+ },
1698
+ {
1699
+ "name": "relations",
1700
+ "title": "Relations",
1701
+ "category": "work",
1702
+ "requires": ["tenant", "access"],
1703
+ "integrates": ["outbox"],
1704
+ "manifest": "relations",
1705
+ "scopes": ["tenant"],
1706
+ "extraColumns": "relations"
1707
+ },
1708
+ {
1709
+ "name": "bulk",
1710
+ "title": "Bulk actions",
1711
+ "category": "work",
1712
+ "requires": ["tenant", "access"],
1713
+ "integrates": [
1714
+ "jobs",
1715
+ "outbox",
1716
+ "tags",
1717
+ "state-machine",
1718
+ "relations",
1719
+ "trash",
1720
+ "collections"
1721
+ ],
1722
+ "manifest": "bulk",
1723
+ "scopes": ["tenant"]
1724
+ },
1725
+ {
1726
+ "name": "search",
1727
+ "title": "Search",
1728
+ "category": "work",
1729
+ "requires": [
1730
+ "tenant",
1731
+ "access",
1732
+ "subjects"
1733
+ ],
1734
+ "integrates": ["share-links", "vector-search"],
1735
+ "manifest": "search",
1736
+ "scopes": ["tenant"]
1737
+ },
1738
+ {
1739
+ "name": "metrics",
1740
+ "title": "Metrics",
1741
+ "category": "admin",
1742
+ "requires": ["tenant", "access"],
1743
+ "integrates": ["usage", "jobs"],
1744
+ "manifest": "metrics",
1745
+ "scopes": ["tenant"]
1746
+ },
1747
+ {
1748
+ "name": "calendar",
1749
+ "title": "Calendar",
1750
+ "category": "scheduling",
1751
+ "requires": ["tenant", "access"],
1752
+ "integrates": [
1753
+ "share-links",
1754
+ "reminders",
1755
+ "outbox"
1756
+ ],
1757
+ "manifest": "calendar",
1758
+ "scopes": ["tenant"],
1759
+ "extraColumns": "events"
1760
+ },
1761
+ {
1762
+ "name": "bookings",
1763
+ "title": "Bookings",
1764
+ "category": "scheduling",
1765
+ "requires": ["tenant", "access"],
1766
+ "integrates": [
1767
+ "jobs",
1768
+ "share-links",
1769
+ "rate-limit",
1770
+ "calendar",
1771
+ "reminders",
1772
+ "outbox"
1773
+ ],
1774
+ "manifest": "bookings",
1775
+ "scopes": ["tenant"],
1776
+ "extraColumns": "bookings"
1777
+ },
1778
+ {
1779
+ "name": "versions",
1780
+ "title": "Versions",
1781
+ "category": "content",
1782
+ "requires": ["tenant", "access"],
1783
+ "integrates": [
1784
+ "outbox",
1785
+ "audit",
1786
+ "share-links"
1787
+ ],
1788
+ "manifest": "versions",
1789
+ "scopes": ["tenant"],
1790
+ "extraColumns": "versions"
1791
+ },
1792
+ {
1793
+ "name": "trash",
1794
+ "title": "Trash",
1795
+ "category": "content",
1796
+ "requires": ["tenant", "access"],
1797
+ "integrates": [
1798
+ "outbox",
1799
+ "audit",
1800
+ "data-lifecycle"
1801
+ ],
1802
+ "manifest": "trash",
1803
+ "scopes": ["tenant"],
1804
+ "extraColumns": "items"
1805
+ },
1806
+ {
1807
+ "name": "reactions",
1808
+ "title": "Reactions",
1809
+ "category": "collaboration",
1810
+ "requires": ["tenant", "access"],
1811
+ "integrates": [
1812
+ "outbox",
1813
+ "comments",
1814
+ "inbox"
1815
+ ],
1816
+ "manifest": "reactions",
1817
+ "scopes": ["tenant"]
1818
+ },
1819
+ {
1820
+ "name": "approvals",
1821
+ "title": "Approvals",
1822
+ "category": "work",
1823
+ "requires": ["tenant", "access"],
1824
+ "integrates": [
1825
+ "outbox",
1826
+ "audit",
1827
+ "notifications",
1828
+ "jobs",
1829
+ "teams",
1830
+ "state-machine",
1831
+ "access-requests",
1832
+ "time-tracking",
1833
+ "leave",
1834
+ "ai-chat",
1835
+ "support-sessions"
1836
+ ],
1837
+ "manifest": "approvals",
1838
+ "scopes": ["tenant"],
1839
+ "extraColumns": "requests"
1840
+ },
1841
+ {
1842
+ "name": "access-requests",
1843
+ "title": "Access requests",
1844
+ "category": "identity",
1845
+ "requires": [
1846
+ "tenant",
1847
+ "access",
1848
+ "approvals"
1849
+ ],
1850
+ "integrates": ["outbox", "audit"],
1851
+ "manifest": "access-requests",
1852
+ "scopes": ["tenant"],
1853
+ "extraColumns": "requests"
1854
+ },
1855
+ {
1856
+ "name": "documents",
1857
+ "title": "Collaborative documents",
1858
+ "category": "content",
1859
+ "requires": ["tenant", "access"],
1860
+ "integrates": [
1861
+ "outbox",
1862
+ "audit",
1863
+ "jobs",
1864
+ "versions"
1865
+ ],
1866
+ "manifest": "documents",
1867
+ "scopes": ["tenant"]
1868
+ },
1869
+ {
1870
+ "name": "catalog",
1871
+ "title": "Catalog",
1872
+ "category": "commerce",
1873
+ "requires": ["tenant", "access"],
1874
+ "integrates": [
1875
+ "outbox",
1876
+ "state-machine",
1877
+ "inventory"
1878
+ ],
1879
+ "manifest": "catalog",
1880
+ "scopes": ["tenant"],
1881
+ "extraColumns": "products"
1882
+ },
1883
+ {
1884
+ "name": "inventory",
1885
+ "title": "Inventory",
1886
+ "category": "commerce",
1887
+ "requires": [
1888
+ "tenant",
1889
+ "access",
1890
+ "catalog"
1891
+ ],
1892
+ "integrates": ["outbox"],
1893
+ "manifest": "inventory",
1894
+ "scopes": ["tenant"],
1895
+ "extraColumns": "locations"
1896
+ },
1897
+ {
1898
+ "name": "drive",
1899
+ "title": "Drive",
1900
+ "category": "content",
1901
+ "requires": [
1902
+ "tenant",
1903
+ "access",
1904
+ "drive-files"
1905
+ ],
1906
+ "integrates": [
1907
+ "outbox",
1908
+ "audit",
1909
+ "attachments",
1910
+ "versions",
1911
+ "trash",
1912
+ "teams",
1913
+ "share-links"
1914
+ ],
1915
+ "manifest": "drive",
1916
+ "scopes": ["tenant"],
1917
+ "tenantNameClashes": ["team"],
1918
+ "extraColumns": "nodes"
1919
+ },
1920
+ {
1921
+ "name": "drive-files",
1922
+ "title": "Drive files",
1923
+ "category": "content",
1924
+ "requires": ["attachments"],
1925
+ "integrates": [
1926
+ "drive",
1927
+ "outbox",
1928
+ "audit",
1929
+ "attachments",
1930
+ "versions",
1931
+ "trash",
1932
+ "teams",
1933
+ "share-links"
1934
+ ],
1935
+ "manifest": "drive",
1936
+ "scopes": ["tenant"]
1937
+ },
1938
+ {
1939
+ "name": "orders",
1940
+ "title": "Orders",
1941
+ "category": "commerce",
1942
+ "requires": [
1943
+ "tenant",
1944
+ "access",
1945
+ "catalog"
1946
+ ],
1947
+ "integrates": [
1948
+ "outbox",
1949
+ "inventory",
1950
+ "promotions",
1951
+ "number-sequences",
1952
+ "state-machine"
1953
+ ],
1954
+ "manifest": "orders",
1955
+ "scopes": ["tenant"],
1956
+ "extraColumns": "orders"
1957
+ },
1958
+ {
1959
+ "name": "promotions",
1960
+ "title": "Promotions",
1961
+ "category": "commerce",
1962
+ "requires": [
1963
+ "tenant",
1964
+ "access",
1965
+ "catalog",
1966
+ "orders"
1967
+ ],
1968
+ "integrates": ["outbox"],
1969
+ "manifest": "promotions",
1970
+ "scopes": ["tenant"],
1971
+ "extraColumns": "promotions"
1972
+ },
1973
+ {
1974
+ "name": "forms",
1975
+ "title": "Forms",
1976
+ "category": "content",
1977
+ "requires": [
1978
+ "tenant",
1979
+ "access",
1980
+ "jsonb-schemas"
1981
+ ],
1982
+ "integrates": [
1983
+ "custom-fields",
1984
+ "share-links",
1985
+ "rate-limit",
1986
+ "outbox",
1987
+ "audit"
1988
+ ],
1989
+ "manifest": "forms",
1990
+ "scopes": ["tenant"],
1991
+ "extraColumns": "forms"
1992
+ },
1993
+ {
1994
+ "name": "signatures",
1995
+ "title": "Signatures",
1996
+ "category": "content",
1997
+ "requires": [
1998
+ "tenant",
1999
+ "access",
2000
+ "versions"
2001
+ ],
2002
+ "integrates": [
2003
+ "approvals",
2004
+ "attachments",
2005
+ "outbox",
2006
+ "audit"
2007
+ ],
2008
+ "manifest": "signatures",
2009
+ "scopes": ["tenant"],
2010
+ "extraColumns": "requests"
2011
+ },
2012
+ {
2013
+ "name": "time-tracking",
2014
+ "title": "Time tracking",
2015
+ "category": "people",
2016
+ "requires": [
2017
+ "tenant",
2018
+ "access",
2019
+ "approvals"
2020
+ ],
2021
+ "integrates": ["outbox", "audit"],
2022
+ "manifest": "time-tracking",
2023
+ "scopes": ["tenant"],
2024
+ "extraColumns": "entries"
2025
+ },
2026
+ {
2027
+ "name": "identities",
2028
+ "title": "Identities",
2029
+ "category": "identity",
2030
+ "requires": [],
2031
+ "integrates": ["inbox"],
2032
+ "manifest": "identities"
2033
+ },
2034
+ {
2035
+ "name": "service-principals",
2036
+ "title": "Service principals",
2037
+ "category": "developer",
2038
+ "requires": ["tenant", "access"],
2039
+ "integrates": ["audit"],
2040
+ "manifest": "service-principals",
2041
+ "scopes": ["tenant"],
2042
+ "extraColumns": "principals"
2043
+ },
2044
+ {
2045
+ "name": "templates",
2046
+ "title": "Templates",
2047
+ "category": "content",
2048
+ "requires": ["tenant", "access"],
2049
+ "integrates": [
2050
+ "outbox",
2051
+ "audit",
2052
+ "workflow-builder",
2053
+ "jsonb-schemas"
2054
+ ],
2055
+ "manifest": "templates",
2056
+ "scopes": ["tenant"],
2057
+ "extraColumns": "templates"
2058
+ },
2059
+ {
2060
+ "name": "pipelines",
2061
+ "title": "Pipelines",
2062
+ "category": "work",
2063
+ "requires": [
2064
+ "tenant",
2065
+ "access",
2066
+ "subjects"
2067
+ ],
2068
+ "integrates": [
2069
+ "outbox",
2070
+ "audit",
2071
+ "state-machine",
2072
+ "notifications",
2073
+ "deals",
2074
+ "work-items",
2075
+ "hiring"
2076
+ ],
2077
+ "manifest": "pipelines",
2078
+ "scopes": ["tenant"],
2079
+ "extraColumns": "pipelines"
2080
+ },
2081
+ {
2082
+ "name": "parties",
2083
+ "title": "Parties",
2084
+ "category": "crm",
2085
+ "requires": ["tenant", "access"],
2086
+ "integrates": [
2087
+ "outbox",
2088
+ "audit",
2089
+ "notifications",
2090
+ "inbox"
2091
+ ],
2092
+ "manifest": "parties",
2093
+ "scopes": ["tenant"],
2094
+ "extraColumns": "companies"
2095
+ },
2096
+ {
2097
+ "name": "engagements",
2098
+ "title": "Engagements",
2099
+ "category": "crm",
2100
+ "requires": [
2101
+ "tenant",
2102
+ "access",
2103
+ "subjects"
2104
+ ],
2105
+ "integrates": ["outbox", "notifications"],
2106
+ "manifest": "engagements",
2107
+ "scopes": ["tenant"],
2108
+ "extraColumns": "engagements"
2109
+ },
2110
+ {
2111
+ "name": "deals",
2112
+ "title": "Deals",
2113
+ "category": "crm",
2114
+ "requires": [
2115
+ "tenant",
2116
+ "access",
2117
+ "subjects",
2118
+ "pipelines"
2119
+ ],
2120
+ "integrates": [
2121
+ "outbox",
2122
+ "notifications",
2123
+ "number-sequences",
2124
+ "engagements"
2125
+ ],
2126
+ "manifest": "deals",
2127
+ "scopes": ["tenant"],
2128
+ "extraColumns": "deals"
2129
+ },
2130
+ {
2131
+ "name": "work-items",
2132
+ "title": "Work items",
2133
+ "category": "work",
2134
+ "requires": [
2135
+ "tenant",
2136
+ "access",
2137
+ "subjects",
2138
+ "pipelines"
2139
+ ],
2140
+ "integrates": [
2141
+ "outbox",
2142
+ "notifications",
2143
+ "number-sequences"
2144
+ ],
2145
+ "manifest": "work-items",
2146
+ "scopes": ["tenant"],
2147
+ "tenantNameClashes": ["team"],
2148
+ "extraColumns": "items"
2149
+ },
2150
+ {
2151
+ "name": "quotes",
2152
+ "title": "Quotes",
2153
+ "category": "crm",
2154
+ "requires": [
2155
+ "tenant",
2156
+ "access",
2157
+ "subjects"
2158
+ ],
2159
+ "integrates": [
2160
+ "outbox",
2161
+ "notifications",
2162
+ "number-sequences",
2163
+ "deals",
2164
+ "relations"
2165
+ ],
2166
+ "manifest": "quotes",
2167
+ "scopes": ["tenant"],
2168
+ "extraColumns": "quotes"
2169
+ },
2170
+ {
2171
+ "name": "invoices",
2172
+ "title": "Invoices",
2173
+ "category": "commerce",
2174
+ "requires": [
2175
+ "tenant",
2176
+ "access",
2177
+ "subjects"
2178
+ ],
2179
+ "integrates": [
2180
+ "outbox",
2181
+ "audit",
2182
+ "notifications",
2183
+ "number-sequences",
2184
+ "quotes",
2185
+ "relations"
2186
+ ],
2187
+ "manifest": "invoices",
2188
+ "scopes": ["tenant"],
2189
+ "extraColumns": "invoices"
2190
+ },
2191
+ {
2192
+ "name": "sla",
2193
+ "title": "Service levels",
2194
+ "category": "work",
2195
+ "requires": [
2196
+ "tenant",
2197
+ "access",
2198
+ "subjects"
2199
+ ],
2200
+ "integrates": ["outbox", "notifications"],
2201
+ "manifest": "sla",
2202
+ "scopes": ["tenant"],
2203
+ "extraColumns": "policies"
2204
+ },
2205
+ {
2206
+ "name": "targets",
2207
+ "title": "Targets",
2208
+ "category": "crm",
2209
+ "requires": ["tenant", "access"],
2210
+ "integrates": [
2211
+ "deals",
2212
+ "work-items",
2213
+ "invoices"
2214
+ ],
2215
+ "manifest": "targets",
2216
+ "scopes": ["tenant"],
2217
+ "tenantNameClashes": ["team"],
2218
+ "extraColumns": "targets"
2219
+ },
2220
+ {
2221
+ "name": "hiring",
2222
+ "title": "Hiring",
2223
+ "category": "people",
2224
+ "requires": [
2225
+ "tenant",
2226
+ "access",
2227
+ "subjects",
2228
+ "pipelines"
2229
+ ],
2230
+ "integrates": ["outbox"],
2231
+ "manifest": "hiring",
2232
+ "scopes": ["tenant"],
2233
+ "tenantNameClashes": ["team"],
2234
+ "extraColumns": "jobs"
2235
+ },
2236
+ {
2237
+ "name": "employees",
2238
+ "title": "Employees",
2239
+ "category": "people",
2240
+ "requires": ["tenant", "access"],
2241
+ "integrates": [
2242
+ "outbox",
2243
+ "relations",
2244
+ "hiring"
2245
+ ],
2246
+ "manifest": "employees",
2247
+ "scopes": ["tenant"],
2248
+ "tenantNameClashes": ["team"],
2249
+ "extraColumns": "employees"
2250
+ },
2251
+ {
2252
+ "name": "collections",
2253
+ "title": "Collections",
2254
+ "category": "work",
2255
+ "requires": [
2256
+ "tenant",
2257
+ "access",
2258
+ "subjects"
2259
+ ],
2260
+ "integrates": ["outbox", "teams"],
2261
+ "manifest": "collections",
2262
+ "scopes": ["tenant"],
2263
+ "tenantNameClashes": ["team"],
2264
+ "extraColumns": "collections"
2265
+ },
2266
+ {
2267
+ "name": "signing-keys",
2268
+ "title": "Signing keys",
2269
+ "category": "developer",
2270
+ "requires": [],
2271
+ "integrates": ["outbox", "audit"],
2272
+ "manifest": "signing-keys"
2273
+ },
2274
+ {
2275
+ "name": "shared-signals",
2276
+ "title": "Shared signals",
2277
+ "category": "developer",
2278
+ "requires": [],
2279
+ "integrates": [
2280
+ "webhooks-out",
2281
+ "outbox",
2282
+ "audit"
2283
+ ],
2284
+ "manifest": "shared-signals"
2285
+ },
2286
+ {
2287
+ "name": "oauth-server",
2288
+ "title": "OAuth server",
2289
+ "category": "developer",
2290
+ "requires": [],
2291
+ "integrates": ["outbox", "audit"],
2292
+ "manifest": "oauth-server"
2293
+ },
2294
+ {
2295
+ "name": "domains",
2296
+ "title": "Custom domains",
2297
+ "category": "tenancy",
2298
+ "requires": ["tenant", "access"],
2299
+ "integrates": ["reserved-slugs"],
2300
+ "manifest": "domains",
2301
+ "scopes": ["tenant"]
2302
+ },
2303
+ {
2304
+ "name": "reviews",
2305
+ "title": "Reviews",
2306
+ "category": "commerce",
2307
+ "requires": ["tenant", "access"],
2308
+ "integrates": [
2309
+ "catalog",
2310
+ "orders",
2311
+ "subjects",
2312
+ "notifications",
2313
+ "outbox",
2314
+ "audit"
2315
+ ],
2316
+ "manifest": "reviews",
2317
+ "scopes": ["tenant"],
2318
+ "extraColumns": "reviews"
2319
+ },
2320
+ {
2321
+ "name": "leave",
2322
+ "title": "Leave",
2323
+ "category": "people",
2324
+ "requires": [
2325
+ "tenant",
2326
+ "access",
2327
+ "approvals"
2328
+ ],
2329
+ "integrates": ["outbox", "audit"],
2330
+ "manifest": "leave",
2331
+ "scopes": ["tenant"],
2332
+ "extraColumns": "requests"
2333
+ },
2334
+ {
2335
+ "name": "rules",
2336
+ "title": "Rules",
2337
+ "category": "automation",
2338
+ "requires": ["tenant", "access"],
2339
+ "integrates": [],
2340
+ "manifest": "rules",
2341
+ "scopes": ["tenant"]
2342
+ },
2343
+ {
2344
+ "name": "ensure-rls",
2345
+ "title": "RLS on every new table",
2346
+ "category": "database",
2347
+ "requires": [],
2348
+ "integrates": [],
2349
+ "manifest": "ensure-rls"
2350
+ }
2351
+ ],
2352
+ "manifests": [
2353
+ {
2354
+ "name": "access",
2355
+ "sql": ["access"],
2356
+ "category": "identity",
2357
+ "client": null,
2358
+ "consumes": {},
2359
+ "provides": []
2360
+ },
2361
+ {
2362
+ "name": "access-requests",
2363
+ "sql": ["access-requests"],
2364
+ "category": "identity",
2365
+ "client": {
2366
+ "export": "accessRequestsBlock",
2367
+ "subpath": "better-supabase/blocks/access-requests"
2368
+ },
2369
+ "consumes": {},
2370
+ "provides": []
2371
+ },
2372
+ {
2373
+ "name": "actor",
2374
+ "sql": ["actor"],
2375
+ "category": "identity",
2376
+ "client": null,
2377
+ "consumes": {},
2378
+ "provides": []
2379
+ },
2380
+ {
2381
+ "name": "agents",
2382
+ "sql": ["agents"],
2383
+ "category": "ai",
2384
+ "client": {
2385
+ "export": "agentsBlock",
2386
+ "subpath": "better-supabase/blocks/agents"
2387
+ },
2388
+ "consumes": {},
2389
+ "provides": []
2390
+ },
2391
+ {
2392
+ "name": "ai-cache",
2393
+ "sql": ["ai-cache"],
2394
+ "category": "ai",
2395
+ "client": {
2396
+ "export": "aiCacheBlock",
2397
+ "subpath": "better-supabase/blocks/ai-cache"
2398
+ },
2399
+ "consumes": {},
2400
+ "provides": []
2401
+ },
2402
+ {
2403
+ "name": "ai-chat",
2404
+ "sql": ["ai-chat"],
2405
+ "category": "ai",
2406
+ "client": {
2407
+ "export": "aiChatBlock",
2408
+ "subpath": "better-supabase/blocks/ai-chat"
2409
+ },
2410
+ "consumes": {},
2411
+ "provides": []
2412
+ },
2413
+ {
2414
+ "name": "ai-files",
2415
+ "sql": ["ai-files"],
2416
+ "category": "ai",
2417
+ "client": {
2418
+ "export": "aiFilesBlock",
2419
+ "subpath": "better-supabase/blocks/ai-files"
2420
+ },
2421
+ "consumes": {},
2422
+ "provides": ["files"]
2423
+ },
2424
+ {
2425
+ "name": "ai-providers",
2426
+ "sql": ["ai-providers"],
2427
+ "category": "ai",
2428
+ "client": {
2429
+ "export": "aiProvidersBlock",
2430
+ "subpath": "better-supabase/blocks/ai-providers"
2431
+ },
2432
+ "consumes": {},
2433
+ "provides": []
2434
+ },
2435
+ {
2436
+ "name": "ai-tasks",
2437
+ "sql": ["ai-tasks"],
2438
+ "category": "ai",
2439
+ "client": {
2440
+ "export": "aiTasksBlock",
2441
+ "subpath": "better-supabase/blocks/ai-tasks"
2442
+ },
2443
+ "consumes": { "notifier": "optional" },
2444
+ "provides": []
2445
+ },
2446
+ {
2447
+ "name": "announcements",
2448
+ "sql": ["announcements"],
2449
+ "category": "growth",
2450
+ "client": {
2451
+ "export": "announcementsBlock",
2452
+ "subpath": "better-supabase/blocks/announcements"
2453
+ },
2454
+ "consumes": {},
2455
+ "provides": []
2456
+ },
2457
+ {
2458
+ "name": "api-keys",
2459
+ "sql": ["api-keys"],
2460
+ "category": "developer",
2461
+ "client": {
2462
+ "export": "apiKeysBlock",
2463
+ "subpath": "better-supabase/blocks/api-keys"
2464
+ },
2465
+ "consumes": {},
2466
+ "provides": []
2467
+ },
2468
+ {
2469
+ "name": "approvals",
2470
+ "sql": ["approvals"],
2471
+ "category": "work",
2472
+ "client": {
2473
+ "export": "approvalsBlock",
2474
+ "subpath": "better-supabase/blocks/approvals"
2475
+ },
2476
+ "consumes": {},
2477
+ "provides": []
2478
+ },
2479
+ {
2480
+ "name": "attachments",
2481
+ "sql": ["attachments"],
2482
+ "category": "collaboration",
2483
+ "client": {
2484
+ "export": "attachmentsBlock",
2485
+ "subpath": "better-supabase/blocks/attachments"
2486
+ },
2487
+ "consumes": {},
2488
+ "provides": ["attachments"]
2489
+ },
2490
+ {
2491
+ "name": "audit",
2492
+ "sql": ["audit"],
2493
+ "category": "admin",
2494
+ "client": {
2495
+ "export": "auditBlock",
2496
+ "subpath": "better-supabase/blocks/audit"
2497
+ },
2498
+ "consumes": {},
2499
+ "provides": []
2500
+ },
2501
+ {
2502
+ "name": "billing",
2503
+ "sql": ["billing"],
2504
+ "category": "commerce",
2505
+ "client": {
2506
+ "export": "billingBlock",
2507
+ "subpath": "better-supabase/blocks/billing"
2508
+ },
2509
+ "consumes": {},
2510
+ "provides": []
2511
+ },
2512
+ {
2513
+ "name": "bookings",
2514
+ "sql": ["bookings"],
2515
+ "category": "scheduling",
2516
+ "client": {
2517
+ "export": "bookingsBlock",
2518
+ "subpath": "better-supabase/blocks/bookings"
2519
+ },
2520
+ "consumes": {},
2521
+ "provides": []
2522
+ },
2523
+ {
2524
+ "name": "bulk",
2525
+ "sql": ["bulk"],
2526
+ "category": "work",
2527
+ "client": {
2528
+ "export": "bulkBlock",
2529
+ "subpath": "better-supabase/blocks/bulk"
2530
+ },
2531
+ "consumes": {},
2532
+ "provides": []
2533
+ },
2534
+ {
2535
+ "name": "calendar",
2536
+ "sql": ["calendar"],
2537
+ "category": "scheduling",
2538
+ "client": {
2539
+ "export": "calendarBlock",
2540
+ "subpath": "better-supabase/blocks/calendar"
2541
+ },
2542
+ "consumes": {},
2543
+ "provides": []
2544
+ },
2545
+ {
2546
+ "name": "catalog",
2547
+ "sql": ["catalog"],
2548
+ "category": "commerce",
2549
+ "client": {
2550
+ "export": "catalogBlock",
2551
+ "subpath": "better-supabase/blocks/catalog"
2552
+ },
2553
+ "consumes": {},
2554
+ "provides": []
2555
+ },
2556
+ {
2557
+ "name": "collections",
2558
+ "sql": ["collections"],
2559
+ "category": "work",
2560
+ "client": {
2561
+ "export": "collectionsBlock",
2562
+ "subpath": "better-supabase/blocks/collections"
2563
+ },
2564
+ "consumes": {},
2565
+ "provides": []
2566
+ },
2567
+ {
2568
+ "name": "comments",
2569
+ "sql": ["comments"],
2570
+ "category": "collaboration",
2571
+ "client": {
2572
+ "export": "commentsBlock",
2573
+ "subpath": "better-supabase/blocks/comments"
2574
+ },
2575
+ "consumes": {},
2576
+ "provides": []
2577
+ },
2578
+ {
2579
+ "name": "connectors",
2580
+ "sql": ["connectors"],
2581
+ "category": "automation",
2582
+ "client": {
2583
+ "export": "connectorsBlock",
2584
+ "subpath": "better-supabase/blocks/connectors"
2585
+ },
2586
+ "consumes": {},
2587
+ "provides": []
2588
+ },
2589
+ {
2590
+ "name": "credentials",
2591
+ "sql": ["credentials"],
2592
+ "category": "developer",
2593
+ "client": null,
2594
+ "consumes": {},
2595
+ "provides": []
2596
+ },
2597
+ {
2598
+ "name": "custom-fields",
2599
+ "sql": ["custom-fields"],
2600
+ "category": "work",
2601
+ "client": {
2602
+ "export": "customFieldsBlock",
2603
+ "subpath": "better-supabase/blocks/custom-fields"
2604
+ },
2605
+ "consumes": {},
2606
+ "provides": []
2607
+ },
2608
+ {
2609
+ "name": "data-lifecycle",
2610
+ "sql": ["data-lifecycle"],
2611
+ "category": "admin",
2612
+ "client": {
2613
+ "export": "dataLifecycleBlock",
2614
+ "subpath": "better-supabase/blocks/data-lifecycle"
2615
+ },
2616
+ "consumes": {},
2617
+ "provides": []
2618
+ },
2619
+ {
2620
+ "name": "deals",
2621
+ "sql": ["deals"],
2622
+ "category": "crm",
2623
+ "client": {
2624
+ "export": "dealsBlock",
2625
+ "subpath": "better-supabase/blocks/deals"
2626
+ },
2627
+ "consumes": {},
2628
+ "provides": []
2629
+ },
2630
+ {
2631
+ "name": "documents",
2632
+ "sql": ["documents"],
2633
+ "category": "content",
2634
+ "client": {
2635
+ "export": "documentsBlock",
2636
+ "subpath": "better-supabase/blocks/documents"
2637
+ },
2638
+ "consumes": {},
2639
+ "provides": []
2640
+ },
2641
+ {
2642
+ "name": "domains",
2643
+ "sql": ["domains"],
2644
+ "category": "tenancy",
2645
+ "client": {
2646
+ "export": "domainsBlock",
2647
+ "subpath": "better-supabase/blocks/domains"
2648
+ },
2649
+ "consumes": {},
2650
+ "provides": []
2651
+ },
2652
+ {
2653
+ "name": "reviews",
2654
+ "sql": ["reviews"],
2655
+ "category": "commerce",
2656
+ "client": {
2657
+ "export": "reviewsBlock",
2658
+ "subpath": "better-supabase/blocks/reviews"
2659
+ },
2660
+ "consumes": {},
2661
+ "provides": []
2662
+ },
2663
+ {
2664
+ "name": "leave",
2665
+ "sql": ["leave"],
2666
+ "category": "people",
2667
+ "client": {
2668
+ "export": "leaveBlock",
2669
+ "subpath": "better-supabase/blocks/leave"
2670
+ },
2671
+ "consumes": {},
2672
+ "provides": []
2673
+ },
2674
+ {
2675
+ "name": "drive",
2676
+ "sql": ["drive", "drive-files"],
2677
+ "category": "content",
2678
+ "client": {
2679
+ "export": "driveBlock",
2680
+ "subpath": "better-supabase/blocks/drive"
2681
+ },
2682
+ "consumes": { "attachments": "optional" },
2683
+ "provides": []
2684
+ },
2685
+ {
2686
+ "name": "employees",
2687
+ "sql": ["employees"],
2688
+ "category": "people",
2689
+ "client": {
2690
+ "export": "employeesBlock",
2691
+ "subpath": "better-supabase/blocks/employees"
2692
+ },
2693
+ "consumes": {},
2694
+ "provides": []
2695
+ },
2696
+ {
2697
+ "name": "engagements",
2698
+ "sql": ["engagements"],
2699
+ "category": "crm",
2700
+ "client": {
2701
+ "export": "engagementsBlock",
2702
+ "subpath": "better-supabase/blocks/engagements"
2703
+ },
2704
+ "consumes": {},
2705
+ "provides": []
2706
+ },
2707
+ {
2708
+ "name": "ensure-rls",
2709
+ "sql": ["ensure-rls"],
2710
+ "category": "database",
2711
+ "client": null,
2712
+ "consumes": {},
2713
+ "provides": []
2714
+ },
2715
+ {
2716
+ "name": "entitlements",
2717
+ "sql": ["entitlements"],
2718
+ "category": "commerce",
2719
+ "client": {
2720
+ "export": "entitlementsBlock",
2721
+ "subpath": "better-supabase/blocks/entitlements"
2722
+ },
2723
+ "consumes": {},
2724
+ "provides": []
2725
+ },
2726
+ {
2727
+ "name": "flags",
2728
+ "sql": ["flags"],
2729
+ "category": "growth",
2730
+ "client": {
2731
+ "export": "flagsBlock",
2732
+ "subpath": "better-supabase/blocks/flags"
2733
+ },
2734
+ "consumes": {},
2735
+ "provides": []
2736
+ },
2737
+ {
2738
+ "name": "forms",
2739
+ "sql": ["forms"],
2740
+ "category": "content",
2741
+ "client": {
2742
+ "export": "formsBlock",
2743
+ "subpath": "better-supabase/blocks/forms"
2744
+ },
2745
+ "consumes": {},
2746
+ "provides": []
2747
+ },
2748
+ {
2749
+ "name": "signatures",
2750
+ "sql": ["signatures"],
2751
+ "category": "content",
2752
+ "client": {
2753
+ "export": "signaturesBlock",
2754
+ "subpath": "better-supabase/blocks/forms"
2755
+ },
2756
+ "consumes": {},
2757
+ "provides": []
2758
+ },
2759
+ {
2760
+ "name": "grants",
2761
+ "sql": ["grants"],
2762
+ "category": "identity",
2763
+ "client": null,
2764
+ "consumes": {},
2765
+ "provides": []
2766
+ },
2767
+ {
2768
+ "name": "hiring",
2769
+ "sql": ["hiring"],
2770
+ "category": "people",
2771
+ "client": {
2772
+ "export": "hiringBlock",
2773
+ "subpath": "better-supabase/blocks/hiring"
2774
+ },
2775
+ "consumes": {},
2776
+ "provides": []
2777
+ },
2778
+ {
2779
+ "name": "identities",
2780
+ "sql": ["identities"],
2781
+ "category": "identity",
2782
+ "client": {
2783
+ "export": "identitiesBlock",
2784
+ "subpath": "better-supabase/blocks/identities"
2785
+ },
2786
+ "consumes": {},
2787
+ "provides": []
2788
+ },
2789
+ {
2790
+ "name": "imports",
2791
+ "sql": ["imports"],
2792
+ "category": "content",
2793
+ "client": {
2794
+ "export": "importsBlock",
2795
+ "subpath": "better-supabase/blocks/imports"
2796
+ },
2797
+ "consumes": {},
2798
+ "provides": []
2799
+ },
2800
+ {
2801
+ "name": "inbox",
2802
+ "sql": ["inbox", "chat-sdk-state"],
2803
+ "category": "messaging",
2804
+ "client": {
2805
+ "export": "inboxBlock",
2806
+ "subpath": "better-supabase/blocks/inbox"
2807
+ },
2808
+ "consumes": {},
2809
+ "provides": []
2810
+ },
2811
+ {
2812
+ "name": "inventory",
2813
+ "sql": ["inventory"],
2814
+ "category": "commerce",
2815
+ "client": {
2816
+ "export": "inventoryBlock",
2817
+ "subpath": "better-supabase/blocks/inventory"
2818
+ },
2819
+ "consumes": {},
2820
+ "provides": []
2821
+ },
2822
+ {
2823
+ "name": "invoices",
2824
+ "sql": ["invoices"],
2825
+ "category": "commerce",
2826
+ "client": {
2827
+ "export": "invoicesBlock",
2828
+ "subpath": "better-supabase/blocks/invoices"
2829
+ },
2830
+ "consumes": {},
2831
+ "provides": []
2832
+ },
2833
+ {
2834
+ "name": "idempotency",
2835
+ "sql": ["idempotency"],
2836
+ "category": "developer",
2837
+ "client": {
2838
+ "export": "idempotencyBlock",
2839
+ "subpath": "better-supabase/blocks/jobs"
2840
+ },
2841
+ "consumes": {},
2842
+ "provides": []
2843
+ },
2844
+ {
2845
+ "name": "jobs",
2846
+ "sql": ["jobs"],
2847
+ "category": "automation",
2848
+ "client": {
2849
+ "export": "jobsBlock",
2850
+ "subpath": "better-supabase/blocks/jobs"
2851
+ },
2852
+ "consumes": {},
2853
+ "provides": []
2854
+ },
2855
+ {
2856
+ "name": "rate-limit",
2857
+ "sql": ["rate-limit"],
2858
+ "category": "developer",
2859
+ "client": {
2860
+ "export": "rateLimitBlock",
2861
+ "subpath": "better-supabase/blocks/jobs"
2862
+ },
2863
+ "consumes": {},
2864
+ "provides": []
2865
+ },
2866
+ {
2867
+ "name": "webhook-inbox",
2868
+ "sql": ["webhook-inbox"],
2869
+ "category": "developer",
2870
+ "client": {
2871
+ "export": "webhookInboxBlock",
2872
+ "subpath": "better-supabase/blocks/jobs"
2873
+ },
2874
+ "consumes": {},
2875
+ "provides": []
2876
+ },
2877
+ {
2878
+ "name": "jsonb-schemas",
2879
+ "sql": ["jsonb-schemas"],
2880
+ "category": "database",
2881
+ "client": null,
2882
+ "consumes": {},
2883
+ "provides": []
2884
+ },
2885
+ {
2886
+ "name": "knowledge",
2887
+ "sql": ["knowledge"],
2888
+ "category": "ai",
2889
+ "client": {
2890
+ "export": "knowledgeBlock",
2891
+ "subpath": "better-supabase/blocks/knowledge"
2892
+ },
2893
+ "consumes": { "files": "optional" },
2894
+ "provides": []
2895
+ },
2896
+ {
2897
+ "name": "memory",
2898
+ "sql": ["memory"],
2899
+ "category": "ai",
2900
+ "client": {
2901
+ "export": "memoryBlock",
2902
+ "subpath": "better-supabase/blocks/memory"
2903
+ },
2904
+ "consumes": {},
2905
+ "provides": []
2906
+ },
2907
+ {
2908
+ "name": "metrics",
2909
+ "sql": ["metrics"],
2910
+ "category": "admin",
2911
+ "client": {
2912
+ "export": "metricsBlock",
2913
+ "subpath": "better-supabase/blocks/metrics"
2914
+ },
2915
+ "consumes": {},
2916
+ "provides": ["sink"]
2917
+ },
2918
+ {
2919
+ "name": "mfa",
2920
+ "sql": ["mfa"],
2921
+ "category": "identity",
2922
+ "client": null,
2923
+ "consumes": {},
2924
+ "provides": []
2925
+ },
2926
+ {
2927
+ "name": "notifications",
2928
+ "sql": ["notifications"],
2929
+ "category": "messaging",
2930
+ "client": {
2931
+ "export": "notificationsBlock",
2932
+ "subpath": "better-supabase/blocks/notifications"
2933
+ },
2934
+ "consumes": {},
2935
+ "provides": ["notifier"]
2936
+ },
2937
+ {
2938
+ "name": "number-sequences",
2939
+ "sql": ["number-sequences"],
2940
+ "category": "database",
2941
+ "client": {
2942
+ "export": "numberSequencesBlock",
2943
+ "subpath": "better-supabase/blocks/number-sequences"
2944
+ },
2945
+ "consumes": {},
2946
+ "provides": []
2947
+ },
2948
+ {
2949
+ "name": "oauth-server",
2950
+ "sql": ["oauth-server"],
2951
+ "category": "developer",
2952
+ "client": {
2953
+ "export": "oauthServerBlock",
2954
+ "subpath": "better-supabase/blocks/oauth-server"
2955
+ },
2956
+ "consumes": {},
2957
+ "provides": []
2958
+ },
2959
+ {
2960
+ "name": "onboarding",
2961
+ "sql": ["onboarding"],
2962
+ "category": "growth",
2963
+ "client": {
2964
+ "export": "onboardingBlock",
2965
+ "subpath": "better-supabase/blocks/onboarding"
2966
+ },
2967
+ "consumes": {},
2968
+ "provides": []
2969
+ },
2970
+ {
2971
+ "name": "orders",
2972
+ "sql": ["orders"],
2973
+ "category": "commerce",
2974
+ "client": {
2975
+ "export": "ordersBlock",
2976
+ "subpath": "better-supabase/blocks/orders"
2977
+ },
2978
+ "consumes": {},
2979
+ "provides": []
2980
+ },
2981
+ {
2982
+ "name": "organizations",
2983
+ "sql": ["organizations", "invitations"],
2984
+ "category": "tenancy",
2985
+ "client": {
2986
+ "export": "organizationsBlock",
2987
+ "subpath": "better-supabase/blocks/organizations"
2988
+ },
2989
+ "consumes": {},
2990
+ "provides": []
2991
+ },
2992
+ {
2993
+ "name": "outbox",
2994
+ "sql": ["outbox"],
2995
+ "category": "automation",
2996
+ "client": {
2997
+ "export": "outboxBlock",
2998
+ "subpath": "better-supabase/blocks/outbox"
2999
+ },
3000
+ "consumes": {},
3001
+ "provides": []
3002
+ },
3003
+ {
3004
+ "name": "parties",
3005
+ "sql": ["parties"],
3006
+ "category": "crm",
3007
+ "client": {
3008
+ "export": "partiesBlock",
3009
+ "subpath": "better-supabase/blocks/parties"
3010
+ },
3011
+ "consumes": {},
3012
+ "provides": []
3013
+ },
3014
+ {
3015
+ "name": "pgtap",
3016
+ "sql": ["pgtap"],
3017
+ "category": "database",
3018
+ "client": null,
3019
+ "consumes": {},
3020
+ "provides": []
3021
+ },
3022
+ {
3023
+ "name": "pipelines",
3024
+ "sql": ["pipelines"],
3025
+ "category": "work",
3026
+ "client": {
3027
+ "export": "pipelinesBlock",
3028
+ "subpath": "better-supabase/blocks/pipelines"
3029
+ },
3030
+ "consumes": {},
3031
+ "provides": []
3032
+ },
3033
+ {
3034
+ "name": "profiles",
3035
+ "sql": ["profiles"],
3036
+ "category": "tenancy",
3037
+ "client": {
3038
+ "export": "profilesBlock",
3039
+ "subpath": "better-supabase/blocks/profiles"
3040
+ },
3041
+ "consumes": {},
3042
+ "provides": []
3043
+ },
3044
+ {
3045
+ "name": "promotions",
3046
+ "sql": ["promotions"],
3047
+ "category": "commerce",
3048
+ "client": {
3049
+ "export": "promotionsBlock",
3050
+ "subpath": "better-supabase/blocks/promotions"
3051
+ },
3052
+ "consumes": {},
3053
+ "provides": []
3054
+ },
3055
+ {
3056
+ "name": "push",
3057
+ "sql": ["push"],
3058
+ "category": "messaging",
3059
+ "client": {
3060
+ "export": "pushBlock",
3061
+ "subpath": "better-supabase/blocks/push"
3062
+ },
3063
+ "consumes": {},
3064
+ "provides": []
3065
+ },
3066
+ {
3067
+ "name": "quotes",
3068
+ "sql": ["quotes"],
3069
+ "category": "crm",
3070
+ "client": {
3071
+ "export": "quotesBlock",
3072
+ "subpath": "better-supabase/blocks/quotes"
3073
+ },
3074
+ "consumes": {},
3075
+ "provides": []
3076
+ },
3077
+ {
3078
+ "name": "rank",
3079
+ "sql": ["rank"],
3080
+ "category": "database",
3081
+ "client": {
3082
+ "export": "rankBlock",
3083
+ "subpath": "better-supabase/blocks/rank"
3084
+ },
3085
+ "consumes": {},
3086
+ "provides": []
3087
+ },
3088
+ {
3089
+ "name": "reactions",
3090
+ "sql": ["reactions"],
3091
+ "category": "collaboration",
3092
+ "client": {
3093
+ "export": "reactionsBlock",
3094
+ "subpath": "better-supabase/blocks/reactions"
3095
+ },
3096
+ "consumes": {},
3097
+ "provides": []
3098
+ },
3099
+ {
3100
+ "name": "read-sets",
3101
+ "sql": ["read-sets"],
3102
+ "category": "database",
3103
+ "client": null,
3104
+ "consumes": {},
3105
+ "provides": []
3106
+ },
3107
+ {
3108
+ "name": "realtime-tables",
3109
+ "sql": ["realtime-tables"],
3110
+ "category": "database",
3111
+ "client": null,
3112
+ "consumes": {},
3113
+ "provides": []
3114
+ },
3115
+ {
3116
+ "name": "relations",
3117
+ "sql": ["relations"],
3118
+ "category": "work",
3119
+ "client": {
3120
+ "export": "relationsBlock",
3121
+ "subpath": "better-supabase/blocks/relations"
3122
+ },
3123
+ "consumes": {},
3124
+ "provides": []
3125
+ },
3126
+ {
3127
+ "name": "reminders",
3128
+ "sql": ["reminders"],
3129
+ "category": "scheduling",
3130
+ "client": {
3131
+ "export": "remindersBlock",
3132
+ "subpath": "better-supabase/blocks/reminders"
3133
+ },
3134
+ "consumes": { "notifier": "optional" },
3135
+ "provides": []
3136
+ },
3137
+ {
3138
+ "name": "reserved-slugs",
3139
+ "sql": ["reserved-slugs"],
3140
+ "category": "tenancy",
3141
+ "client": null,
3142
+ "consumes": {},
3143
+ "provides": []
3144
+ },
3145
+ {
3146
+ "name": "rules",
3147
+ "sql": ["rules"],
3148
+ "category": "automation",
3149
+ "client": {
3150
+ "export": "rulesBlock",
3151
+ "subpath": "better-supabase/blocks/rules"
3152
+ },
3153
+ "consumes": {},
3154
+ "provides": []
3155
+ },
3156
+ {
3157
+ "name": "saved-views",
3158
+ "sql": ["saved-views"],
3159
+ "category": "work",
3160
+ "client": {
3161
+ "export": "savedViewsBlock",
3162
+ "subpath": "better-supabase/blocks/saved-views"
3163
+ },
3164
+ "consumes": {},
3165
+ "provides": []
3166
+ },
3167
+ {
3168
+ "name": "search",
3169
+ "sql": ["search"],
3170
+ "category": "work",
3171
+ "client": {
3172
+ "export": "searchBlock",
3173
+ "subpath": "better-supabase/blocks/search"
3174
+ },
3175
+ "consumes": {},
3176
+ "provides": ["sink"]
3177
+ },
3178
+ {
3179
+ "name": "service-principals",
3180
+ "sql": ["service-principals"],
3181
+ "category": "developer",
3182
+ "client": {
3183
+ "export": "servicePrincipalsBlock",
3184
+ "subpath": "better-supabase/blocks/service-principals"
3185
+ },
3186
+ "consumes": {},
3187
+ "provides": []
3188
+ },
3189
+ {
3190
+ "name": "sessions",
3191
+ "sql": ["sessions"],
3192
+ "category": "identity",
3193
+ "client": null,
3194
+ "consumes": {},
3195
+ "provides": []
3196
+ },
3197
+ {
3198
+ "name": "settings",
3199
+ "sql": ["settings"],
3200
+ "category": "tenancy",
3201
+ "client": {
3202
+ "export": "settingsBlock",
3203
+ "subpath": "better-supabase/blocks/settings"
3204
+ },
3205
+ "consumes": {},
3206
+ "provides": []
3207
+ },
3208
+ {
3209
+ "name": "share-links",
3210
+ "sql": ["share-links"],
3211
+ "category": "collaboration",
3212
+ "client": {
3213
+ "export": "shareLinksBlock",
3214
+ "subpath": "better-supabase/blocks/share-links"
3215
+ },
3216
+ "consumes": {},
3217
+ "provides": []
3218
+ },
3219
+ {
3220
+ "name": "shared-signals",
3221
+ "sql": ["shared-signals"],
3222
+ "category": "developer",
3223
+ "client": {
3224
+ "export": "sharedSignalsBlock",
3225
+ "subpath": "better-supabase/blocks/shared-signals"
3226
+ },
3227
+ "consumes": {},
3228
+ "provides": []
3229
+ },
3230
+ {
3231
+ "name": "signing-keys",
3232
+ "sql": ["signing-keys"],
3233
+ "category": "developer",
3234
+ "client": {
3235
+ "export": "signingKeysBlock",
3236
+ "subpath": "better-supabase/blocks/signing-keys"
3237
+ },
3238
+ "consumes": {},
3239
+ "provides": []
3240
+ },
3241
+ {
3242
+ "name": "sla",
3243
+ "sql": ["sla"],
3244
+ "category": "work",
3245
+ "client": {
3246
+ "export": "slaBlock",
3247
+ "subpath": "better-supabase/blocks/sla"
3248
+ },
3249
+ "consumes": {},
3250
+ "provides": []
3251
+ },
3252
+ {
3253
+ "name": "sso",
3254
+ "sql": ["sso"],
3255
+ "category": "identity",
3256
+ "client": {
3257
+ "export": "ssoBlock",
3258
+ "subpath": "better-supabase/blocks/sso"
3259
+ },
3260
+ "consumes": {},
3261
+ "provides": []
3262
+ },
3263
+ {
3264
+ "name": "state-machine",
3265
+ "sql": ["state-machine"],
3266
+ "category": "work",
3267
+ "client": {
3268
+ "export": "stateMachineBlock",
3269
+ "subpath": "better-supabase/blocks/state-machine"
3270
+ },
3271
+ "consumes": {},
3272
+ "provides": []
3273
+ },
3274
+ {
3275
+ "name": "streams",
3276
+ "sql": ["streams"],
3277
+ "category": "automation",
3278
+ "client": null,
3279
+ "consumes": {},
3280
+ "provides": []
3281
+ },
3282
+ {
3283
+ "name": "subjects",
3284
+ "sql": ["subjects"],
3285
+ "category": "identity",
3286
+ "client": null,
3287
+ "consumes": {},
3288
+ "provides": []
3289
+ },
3290
+ {
3291
+ "name": "support-sessions",
3292
+ "sql": ["support-sessions"],
3293
+ "category": "admin",
3294
+ "client": null,
3295
+ "consumes": {},
3296
+ "provides": []
3297
+ },
3298
+ {
3299
+ "name": "tags",
3300
+ "sql": ["tags"],
3301
+ "category": "work",
3302
+ "client": {
3303
+ "export": "tagsBlock",
3304
+ "subpath": "better-supabase/blocks/tags"
3305
+ },
3306
+ "consumes": {},
3307
+ "provides": []
3308
+ },
3309
+ {
3310
+ "name": "targets",
3311
+ "sql": ["targets"],
3312
+ "category": "crm",
3313
+ "client": {
3314
+ "export": "targetsBlock",
3315
+ "subpath": "better-supabase/blocks/targets"
3316
+ },
3317
+ "consumes": {},
3318
+ "provides": []
3319
+ },
3320
+ {
3321
+ "name": "teams",
3322
+ "sql": ["teams"],
3323
+ "category": "tenancy",
3324
+ "client": {
3325
+ "export": "teamsBlock",
3326
+ "subpath": "better-supabase/blocks/teams"
3327
+ },
3328
+ "consumes": {},
3329
+ "provides": []
3330
+ },
3331
+ {
3332
+ "name": "templates",
3333
+ "sql": ["templates"],
3334
+ "category": "content",
3335
+ "client": {
3336
+ "export": "templatesBlock",
3337
+ "subpath": "better-supabase/blocks/templates"
3338
+ },
3339
+ "consumes": {},
3340
+ "provides": []
3341
+ },
3342
+ {
3343
+ "name": "tenant",
3344
+ "sql": ["tenant"],
3345
+ "category": "tenancy",
3346
+ "client": null,
3347
+ "consumes": {},
3348
+ "provides": []
3349
+ },
3350
+ {
3351
+ "name": "time-tracking",
3352
+ "sql": ["time-tracking"],
3353
+ "category": "people",
3354
+ "client": {
3355
+ "export": "timeTrackingBlock",
3356
+ "subpath": "better-supabase/blocks/time-tracking"
3357
+ },
3358
+ "consumes": {},
3359
+ "provides": []
3360
+ },
3361
+ {
3362
+ "name": "trash",
3363
+ "sql": ["trash"],
3364
+ "category": "content",
3365
+ "client": {
3366
+ "export": "trashBlock",
3367
+ "subpath": "better-supabase/blocks/trash"
3368
+ },
3369
+ "consumes": {},
3370
+ "provides": []
3371
+ },
3372
+ {
3373
+ "name": "undo",
3374
+ "sql": [],
3375
+ "category": "work",
3376
+ "client": {
3377
+ "export": "undoBlock",
3378
+ "subpath": "better-supabase/blocks/undo"
3379
+ },
3380
+ "consumes": {},
3381
+ "provides": []
3382
+ },
3383
+ {
3384
+ "name": "updated-at",
3385
+ "sql": ["updated-at"],
3386
+ "category": "database",
3387
+ "client": null,
3388
+ "consumes": {},
3389
+ "provides": []
3390
+ },
3391
+ {
3392
+ "name": "usage",
3393
+ "sql": ["usage"],
3394
+ "category": "commerce",
3395
+ "client": {
3396
+ "export": "usageBlock",
3397
+ "subpath": "better-supabase/blocks/usage"
3398
+ },
3399
+ "consumes": {},
3400
+ "provides": []
3401
+ },
3402
+ {
3403
+ "name": "vector-search",
3404
+ "sql": ["vector-search"],
3405
+ "category": "ai",
3406
+ "client": null,
3407
+ "consumes": {},
3408
+ "provides": []
3409
+ },
3410
+ {
3411
+ "name": "versions",
3412
+ "sql": ["versions"],
3413
+ "category": "content",
3414
+ "client": {
3415
+ "export": "versionsBlock",
3416
+ "subpath": "better-supabase/blocks/versions"
3417
+ },
3418
+ "consumes": {},
3419
+ "provides": []
3420
+ },
3421
+ {
3422
+ "name": "waitlist",
3423
+ "sql": ["waitlist"],
3424
+ "category": "growth",
3425
+ "client": {
3426
+ "export": "waitlistBlock",
3427
+ "subpath": "better-supabase/blocks/waitlist"
3428
+ },
3429
+ "consumes": {},
3430
+ "provides": []
3431
+ },
3432
+ {
3433
+ "name": "incoming-webhooks",
3434
+ "sql": ["webhooks-in"],
3435
+ "category": "developer",
3436
+ "client": {
3437
+ "export": "incomingWebhooksBlock",
3438
+ "subpath": "better-supabase/blocks/webhooks"
3439
+ },
3440
+ "consumes": {},
3441
+ "provides": []
3442
+ },
3443
+ {
3444
+ "name": "webhooks",
3445
+ "sql": ["webhooks-out"],
3446
+ "category": "developer",
3447
+ "client": {
3448
+ "export": "webhooksBlock",
3449
+ "subpath": "better-supabase/blocks/webhooks"
3450
+ },
3451
+ "consumes": {},
3452
+ "provides": []
3453
+ },
3454
+ {
3455
+ "name": "work-items",
3456
+ "sql": ["work-items"],
3457
+ "category": "work",
3458
+ "client": {
3459
+ "export": "workItemsBlock",
3460
+ "subpath": "better-supabase/blocks/work-items"
3461
+ },
3462
+ "consumes": {},
3463
+ "provides": []
3464
+ },
3465
+ {
3466
+ "name": "workflow-builder",
3467
+ "sql": ["workflow-builder"],
3468
+ "category": "automation",
3469
+ "client": {
3470
+ "export": "workflowBuilderBlock",
3471
+ "subpath": "better-supabase/blocks/workflow-builder"
3472
+ },
3473
+ "consumes": { "workflows": "optional" },
3474
+ "provides": []
3475
+ },
3476
+ {
3477
+ "name": "workflow-sdk-world",
3478
+ "sql": ["workflow-sdk-world"],
3479
+ "category": "automation",
3480
+ "client": null,
3481
+ "consumes": {},
3482
+ "provides": []
3483
+ },
3484
+ {
3485
+ "name": "workflows",
3486
+ "sql": ["workflows"],
3487
+ "category": "automation",
3488
+ "client": {
3489
+ "export": "workflowsBlock",
3490
+ "subpath": "better-supabase/blocks/workflows"
3491
+ },
3492
+ "consumes": {},
3493
+ "provides": ["workflows"]
3494
+ }
3495
+ ],
3496
+ "glue": [
3497
+ {
3498
+ "name": "blocks",
3499
+ "title": "Block clients",
3500
+ "blocks": [
3501
+ "organizations",
3502
+ "notifications",
3503
+ "search",
3504
+ "audit"
3505
+ ],
3506
+ "frameworks": [
3507
+ "next",
3508
+ "vite",
3509
+ "tanstack-start",
3510
+ "react-router",
3511
+ "expo"
3512
+ ],
3513
+ "platforms": ["web", "native"],
3514
+ "targets": ["@lib/blocks.ts", "@lib/notification-types.ts"]
3515
+ },
3516
+ {
3517
+ "name": "postgres",
3518
+ "title": "Server Postgres pool",
3519
+ "blocks": [
3520
+ "jobs",
3521
+ "outbox",
3522
+ "billing"
3523
+ ],
3524
+ "frameworks": [
3525
+ "next",
3526
+ "hono",
3527
+ "tanstack-start",
3528
+ "react-router"
3529
+ ],
3530
+ "platforms": ["web"],
3531
+ "targets": ["@lib/postgres.ts"]
3532
+ },
3533
+ {
3534
+ "name": "notifications-actions-next",
3535
+ "title": "Notification server actions (Next.js)",
3536
+ "blocks": ["notifications"],
3537
+ "frameworks": ["next"],
3538
+ "platforms": ["web"],
3539
+ "targets": ["@lib/notifications-actions.ts"]
3540
+ },
3541
+ {
3542
+ "name": "onboarding-checklist",
3543
+ "title": "Onboarding checklist",
3544
+ "blocks": ["onboarding"],
3545
+ "frameworks": [
3546
+ "next",
3547
+ "vite",
3548
+ "tanstack-start",
3549
+ "react-router",
3550
+ "expo"
3551
+ ],
3552
+ "platforms": ["web", "native"],
3553
+ "targets": ["@lib/onboarding.ts"]
3554
+ },
3555
+ {
3556
+ "name": "outbox",
3557
+ "title": "Outbox client",
3558
+ "blocks": ["outbox"],
3559
+ "frameworks": [
3560
+ "next",
3561
+ "hono",
3562
+ "tanstack-start",
3563
+ "react-router"
3564
+ ],
3565
+ "platforms": ["web"],
3566
+ "targets": ["@lib/outbox.ts"]
3567
+ },
3568
+ {
3569
+ "name": "outbox-relay-next",
3570
+ "title": "Outbox relay route (Next.js)",
3571
+ "blocks": ["outbox"],
3572
+ "frameworks": ["next"],
3573
+ "platforms": ["web"],
3574
+ "targets": ["~/app/api/outbox/route.ts"]
3575
+ },
3576
+ {
3577
+ "name": "outbox-relay-hono",
3578
+ "title": "Outbox relay route (Hono)",
3579
+ "blocks": ["outbox"],
3580
+ "frameworks": ["hono"],
3581
+ "platforms": ["web"],
3582
+ "targets": ["~/src/routes/outbox.ts"]
3583
+ },
3584
+ {
3585
+ "name": "stripe-webhook-next",
3586
+ "title": "Stripe webhook routes (Next.js)",
3587
+ "blocks": ["billing", "webhook-inbox"],
3588
+ "frameworks": ["next"],
3589
+ "platforms": ["web"],
3590
+ "targets": [
3591
+ "@lib/stripe.ts",
3592
+ "~/app/api/stripe/route.ts",
3593
+ "~/app/api/stripe/process/route.ts"
3594
+ ]
3595
+ },
3596
+ {
3597
+ "name": "jobs-drain-next",
3598
+ "title": "Jobs drain cron route (Next.js)",
3599
+ "blocks": ["jobs"],
3600
+ "frameworks": ["next"],
3601
+ "platforms": ["web"],
3602
+ "targets": ["@lib/jobs.ts", "~/app/api/jobs/drain/route.ts"]
3603
+ },
3604
+ {
3605
+ "name": "use-current-organization",
3606
+ "title": "useCurrentOrganization",
3607
+ "blocks": ["organizations"],
3608
+ "frameworks": [
3609
+ "next",
3610
+ "vite",
3611
+ "tanstack-start",
3612
+ "react-router",
3613
+ "expo"
3614
+ ],
3615
+ "platforms": ["web", "native"],
3616
+ "targets": ["@hooks/use-current-organization.ts"]
3617
+ },
3618
+ {
3619
+ "name": "use-rule-editor",
3620
+ "title": "useRuleEditor",
3621
+ "blocks": ["rules"],
3622
+ "frameworks": [
3623
+ "next",
3624
+ "vite",
3625
+ "tanstack-start",
3626
+ "react-router",
3627
+ "expo"
3628
+ ],
3629
+ "platforms": ["web", "native"],
3630
+ "targets": ["@hooks/use-rule-editor.ts"]
3631
+ },
3632
+ {
3633
+ "name": "push-native",
3634
+ "title": "usePushRegistration (Expo)",
3635
+ "blocks": ["push"],
3636
+ "frameworks": ["expo"],
3637
+ "platforms": ["native"],
3638
+ "targets": ["@hooks/use-push-registration.ts"]
3639
+ },
3640
+ {
3641
+ "name": "expo-config-native",
3642
+ "title": "Expo config",
3643
+ "blocks": ["push"],
3644
+ "frameworks": ["expo"],
3645
+ "platforms": ["native"],
3646
+ "targets": ["~/app.config.ts"]
3647
+ },
3648
+ {
3649
+ "name": "saas-next",
3650
+ "title": "SaaS glue (Next.js)",
3651
+ "blocks": [
3652
+ "organizations",
3653
+ "notifications",
3654
+ "search",
3655
+ "audit",
3656
+ "onboarding",
3657
+ "outbox",
3658
+ "jobs",
3659
+ "billing",
3660
+ "webhook-inbox"
3661
+ ],
3662
+ "frameworks": ["next"],
3663
+ "platforms": ["web"],
3664
+ "targets": [],
3665
+ "preset": "saas"
3666
+ },
3667
+ {
3668
+ "name": "saas-expo",
3669
+ "title": "SaaS glue (Expo)",
3670
+ "blocks": [
3671
+ "organizations",
3672
+ "notifications",
3673
+ "search",
3674
+ "audit",
3675
+ "onboarding",
3676
+ "push"
3677
+ ],
3678
+ "frameworks": ["expo"],
3679
+ "platforms": ["native"],
3680
+ "targets": [],
3681
+ "preset": "saas"
3682
+ }
3683
+ ]
3684
+ };
3685
+ //#endregion
3686
+ //#region src/preset/resolve.ts
3687
+ /** "a", "a and b", "a, b and c". */
3688
+ function listNames(names) {
3689
+ if (names.length <= 1) return names.join("");
3690
+ return `${names.slice(0, -1).join(", ")} and ${names.at(-1) ?? ""}`;
3691
+ }
3692
+ const TENANT_PROVIDERS = /* @__PURE__ */ new Set(["tenant", "access"]);
3693
+ function requiresOf(block, preset) {
3694
+ const requires = block.requiresByAccess?.[preset.access] ?? block.requires;
3695
+ return preset.scope === "tenant" || TENANT_PROVIDERS.has(block.name) ? requires : requires.filter((name) => !TENANT_PROVIDERS.has(name));
3696
+ }
3697
+ /** `name` and everything it requires, dependencies first. */
3698
+ function closureOf(name, preset, byName) {
3699
+ const out = [];
3700
+ const visit = (each) => {
3701
+ const block = byName.get(each);
3702
+ if (block === void 0 || out.includes(each)) return;
3703
+ out.push(each);
3704
+ for (const dependency of requiresOf(block, preset)) visit(dependency);
3705
+ };
3706
+ visit(name);
3707
+ return out;
3708
+ }
3709
+ /**
3710
+ * Why `name` can't install with the preset's conventions, or undefined.
3711
+ * `/create` disables a block with this reason before it is selected.
3712
+ */
3713
+ function presetBlockConflict(preset, name, catalog = PRESET_CATALOG) {
3714
+ const byName = new Map(catalog.blocks.map((block) => [block.name, block]));
3715
+ if (!byName.has(name)) return `"${name}" is not a block`;
3716
+ if (preset.scope === "tenant") return;
3717
+ if (TENANT_PROVIDERS.has(name)) return `scope "${preset.scope}" has no tenants`;
3718
+ const tenantOnly = closureOf(name, preset, byName).filter((each) => !(byName.get(each)?.scopes ?? [preset.scope]).includes(preset.scope));
3719
+ if (tenantOnly.length === 0) return;
3720
+ 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`;
3721
+ }
3722
+ function fieldConflicts(preset) {
3723
+ const conflicts = [];
3724
+ if (preset.framework === "expo" && preset.platforms === "web") conflicts.push({
3725
+ field: "platforms",
3726
+ reason: "Expo builds a native app: choose native or both"
3727
+ });
3728
+ if (preset.platforms === "native" && preset.framework !== "expo") conflicts.push({
3729
+ field: "framework",
3730
+ reason: `a native-only app runs on Expo, not ${preset.framework}`
3731
+ });
3732
+ return conflicts;
3733
+ }
3734
+ /**
3735
+ * The full block set for a preset: the selected blocks and what they
3736
+ * require, a reason per block, the soft integrations active between them,
3737
+ * and what can't install. It reads the generated catalog, never the SQL
3738
+ * renderers, so it runs in the browser.
3739
+ */
3740
+ function resolvePreset(preset, catalog = PRESET_CATALOG) {
3741
+ const byName = new Map(catalog.blocks.map((block) => [block.name, block]));
3742
+ const conflicts = fieldConflicts(preset);
3743
+ const selected = [...new Set(preset.blocks)];
3744
+ const installed = /* @__PURE__ */ new Set();
3745
+ const requiredBy = /* @__PURE__ */ new Map();
3746
+ for (const name of selected) {
3747
+ const problem = presetBlockConflict(preset, name, catalog);
3748
+ if (problem !== void 0) {
3749
+ conflicts.push({
3750
+ block: name,
3751
+ reason: problem
3752
+ });
3753
+ continue;
3754
+ }
3755
+ for (const each of closureOf(name, preset, byName)) installed.add(each);
3756
+ }
3757
+ for (const block of catalog.blocks) {
3758
+ if (!installed.has(block.name)) continue;
3759
+ if (!block.tenantNameClashes?.includes(preset.tenantName)) continue;
3760
+ conflicts.push({
3761
+ block: block.name,
3762
+ field: "tenantName",
3763
+ reason: `tenant name "${preset.tenantName}" renames the tenant tables and columns to names the ${block.name} block already uses`
3764
+ });
3765
+ }
3766
+ const members = catalog.blocks.filter((block) => installed.has(block.name));
3767
+ for (const block of members) for (const dependency of requiresOf(block, preset)) requiredBy.set(dependency, [...requiredBy.get(dependency) ?? [], block.name]);
3768
+ const blocks = members.map((block) => {
3769
+ const by = requiredBy.get(block.name) ?? [];
3770
+ const isSelected = selected.includes(block.name);
3771
+ return {
3772
+ name: block.name,
3773
+ title: block.title,
3774
+ category: block.category,
3775
+ selected: isSelected,
3776
+ requiredBy: by,
3777
+ reason: isSelected ? "selected" : `required by ${listNames(by)}`
3778
+ };
3779
+ });
3780
+ const integrations = members.flatMap((block) => block.integrates.filter((to) => to !== block.name && installed.has(to)).map((to) => ({
3781
+ from: block.name,
3782
+ to
3783
+ })));
3784
+ const manifestNames = new Set(members.map((block) => block.manifest));
3785
+ const manifests = catalog.manifests.filter((manifest) => manifestNames.has(manifest.name));
3786
+ for (const manifest of manifests) for (const [port, need] of Object.entries(manifest.consumes)) {
3787
+ if (need !== "required") continue;
3788
+ if (manifests.some((each) => each.provides.some((p) => p === port))) continue;
3789
+ conflicts.push({
3790
+ block: manifest.name,
3791
+ reason: `it needs a ${port} port, and no selected block provides one`
3792
+ });
3793
+ }
3794
+ return {
3795
+ preset,
3796
+ blocks,
3797
+ integrations,
3798
+ conflicts,
3799
+ manifests
3800
+ };
3801
+ }
3802
+ //#endregion
3803
+ //#region src/preset/config.ts
3804
+ /** Reads a named preset, a code or a `/create?preset=` URL into a `Preset`. */
3805
+ function presetOf(input) {
3806
+ if (typeof input !== "string") return {
3807
+ ...DEFAULT_CONVENTIONS,
3808
+ ...input,
3809
+ blocks: input.blocks ?? []
3810
+ };
3811
+ const value = /[?&]preset=([^&#]+)/.exec(input)?.[1] ?? input;
3812
+ if (isPresetName(value)) return namedPreset(value);
3813
+ if (isPresetCode(value)) return decodePreset(value).preset;
3814
+ throw new TypeError(`preset: "${input}" is not a preset. Use a name (${PRESET_NAMES.join(", ")}), a code from /create, or its URL.`);
3815
+ }
3816
+ /** `blocks.access` for the conventions: the model and id type that differ from the defaults. */
3817
+ function accessEntry(conventions) {
3818
+ return {
3819
+ ...conventions.access === "roles" ? {} : { model: conventions.access },
3820
+ ...conventions.idType === "uuid" ? {} : { idType: conventions.idType }
3821
+ };
3822
+ }
3823
+ /** The `blocks` entry each block gets from the preset's conventions. */
3824
+ function conventionEntry(name, preset) {
3825
+ return name === "access" ? accessEntry(preset) : {};
3826
+ }
3827
+ /** `sql` for the conventions, or undefined when they are the defaults. */
3828
+ function sqlOf(conventions) {
3829
+ const sql = {
3830
+ ...conventions.api === "none" ? {} : { api: conventions.api },
3831
+ ...conventions.scope === "tenant" ? {} : { scope: conventions.scope },
3832
+ ...conventions.tenantName === "organization" ? {} : { naming: { tenant: conventions.tenantName } }
3833
+ };
3834
+ return Object.keys(sql).length === 0 ? void 0 : sql;
3835
+ }
3836
+ /**
3837
+ * The config keys conventions set without a preset: `casing`, `sql`, and
3838
+ * `blocks.access` when the access model or id type differ from the defaults.
3839
+ */
3840
+ function conventionConfig(conventions) {
3841
+ const sql = sqlOf(conventions);
3842
+ const access = accessEntry(conventions);
3843
+ return {
3844
+ casing: conventions.casing,
3845
+ ...sql === void 0 ? {} : { sql },
3846
+ ...Object.keys(access).length === 0 ? {} : { blocks: { access } }
3847
+ };
3848
+ }
3849
+ /** The config keys a resolved preset sets: its blocks and the conventions that differ from the defaults. */
3850
+ function presetConfig(resolved) {
3851
+ const { preset } = resolved;
3852
+ const sql = sqlOf(preset);
3853
+ return {
3854
+ ...preset.casing === "snake" ? {} : { casing: preset.casing },
3855
+ ...sql === void 0 ? {} : { sql },
3856
+ ...preset.integrations.length === 0 ? {} : { integrations: preset.integrations },
3857
+ blocks: Object.fromEntries(resolved.blocks.map((block) => [block.name, conventionEntry(block.name, preset)]))
3858
+ };
3859
+ }
3860
+ function isBlockList(blocks) {
3861
+ return Array.isArray(blocks);
3862
+ }
3863
+ function blocksOf(blocks) {
3864
+ if (blocks === void 0) return {};
3865
+ if (!isBlockList(blocks)) return blocks;
3866
+ return Object.fromEntries(blocks.map((name) => [name, {}]));
3867
+ }
3868
+ /**
3869
+ * `config` with its `preset` expanded: the preset's blocks (and what they
3870
+ * require) and conventions first, then the config's own keys over them, so
3871
+ * explicit config wins. A block in both keeps the preset's settings that the
3872
+ * config's entry leaves unset. Expanding twice gives the same config.
3873
+ */
3874
+ function expandPreset(config) {
3875
+ if (config.preset === void 0) return config;
3876
+ const resolved = resolvePreset(presetOf(config.preset));
3877
+ if (resolved.conflicts.length > 0) throw new TypeError(`preset: ${listNames(resolved.conflicts.map((conflict) => `${conflict.block ?? conflict.field ?? ""} (${conflict.reason})`))} can't install.`);
3878
+ const base = presetConfig(resolved);
3879
+ const own = blocksOf(config.blocks);
3880
+ const blocks = Object.fromEntries(Object.entries(base.blocks));
3881
+ for (const [name, entry] of Object.entries(own)) blocks[name] = {
3882
+ ...blocks[name],
3883
+ ...entry
3884
+ };
3885
+ return {
3886
+ ...base,
3887
+ ...config,
3888
+ ...config.sql === void 0 && base.sql === void 0 ? {} : { sql: {
3889
+ ...base.sql,
3890
+ ...config.sql
3891
+ } },
3892
+ blocks
3893
+ };
3894
+ }
3895
+ //#endregion
3896
+ 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 };