better-supabase 0.5.0 → 0.6.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 (536) hide show
  1. package/README.md +299 -41
  2. package/dist/access-sql-B0dF-SoF.js +181 -0
  3. package/dist/actor-CQTlc1Hh.d.ts +43 -0
  4. package/dist/adapter-Bc1o3zyy.js +1106 -0
  5. package/dist/agents-CVHGd7It.d.ts +94 -0
  6. package/dist/ai-cache-CBWs1W0k.js +80 -0
  7. package/dist/ai-cache-DaDu_G5L.d.ts +64 -0
  8. package/dist/ai-chat-7amvXjmQ.d.ts +590 -0
  9. package/dist/ai-chat-B24UI962.js +743 -0
  10. package/dist/ai-files-CSPNswUY.js +319 -0
  11. package/dist/ai-sdk/agents/index.d.ts +74 -0
  12. package/dist/ai-sdk/agents/index.js +159 -0
  13. package/dist/ai-sdk/batches/index.d.ts +74 -0
  14. package/dist/ai-sdk/batches/index.js +180 -0
  15. package/dist/ai-sdk/cache/index.d.ts +38 -0
  16. package/dist/ai-sdk/cache/index.js +127 -0
  17. package/dist/ai-sdk/chat/index.d.ts +2 -0
  18. package/dist/ai-sdk/chat/index.js +246 -0
  19. package/dist/ai-sdk/embeddings/index.d.ts +3 -0
  20. package/dist/ai-sdk/embeddings/index.js +2 -0
  21. package/dist/ai-sdk/files/index.d.ts +61 -0
  22. package/dist/ai-sdk/files/index.js +111 -0
  23. package/dist/ai-sdk/index.d.ts +145 -0
  24. package/dist/ai-sdk/index.js +174 -0
  25. package/dist/ai-sdk/mcp/index.d.ts +102 -0
  26. package/dist/ai-sdk/mcp/index.js +362 -0
  27. package/dist/ai-sdk/memory/index.d.ts +67 -0
  28. package/dist/ai-sdk/memory/index.js +175 -0
  29. package/dist/ai-sdk/react/index.d.ts +2 -0
  30. package/dist/ai-sdk/react/index.js +3 -0
  31. package/dist/ai-sdk/react/server.d.ts +6 -0
  32. package/dist/ai-sdk/react/server.js +7 -0
  33. package/dist/ai-sdk/workflow/index.d.ts +249 -0
  34. package/dist/ai-sdk/workflow/index.js +575 -0
  35. package/dist/ai-sdk/workflow/react/index.d.ts +20 -0
  36. package/dist/ai-sdk/workflow/react/index.js +66 -0
  37. package/dist/ai-sdk/workflow/react/server.d.ts +10 -0
  38. package/dist/ai-sdk/workflow/react/server.js +12 -0
  39. package/dist/ai-tasks-Cd1HMFvB.d.ts +131 -0
  40. package/dist/announcements-CiyOs-xP.js +107 -0
  41. package/dist/announcements-ZRGnScWI.d.ts +72 -0
  42. package/dist/api-keys-rCGtKaZA.d.ts +156 -0
  43. package/dist/assistant-DwdpDH1q.d.ts +147 -0
  44. package/dist/astro/index.d.ts +86 -0
  45. package/dist/astro/index.js +93 -0
  46. package/dist/attributes-5dYul0u0.js +13 -0
  47. package/dist/auth-link-BjFPqwLz.d.ts +97 -0
  48. package/dist/auth-link-DrDX9KOT.js +114 -0
  49. package/dist/authorization-BFCqamMs.d.ts +172 -0
  50. package/dist/before-route-CnR0C0Jr.js +30 -0
  51. package/dist/bind-Bu_ZNa3W.d.ts +62 -0
  52. package/dist/bind-l4kAvYSv.js +97 -0
  53. package/dist/block-events-CrT8r7Fe.js +76 -0
  54. package/dist/block-fields-GFkxl4dP.js +49 -0
  55. package/dist/block-fields-SJ6fEf3o.d.ts +31 -0
  56. package/dist/block-helpers-CKtbFcRv.d.ts +37 -0
  57. package/dist/block-helpers-DWHxHsEQ.js +190 -0
  58. package/dist/block-hooks-BmjMyXTa.js +114 -0
  59. package/dist/block-hooks-plbZ0AbJ.d.ts +107 -0
  60. package/dist/{kit-transport-DJlHQUBU.js → block-transport-BLr-ZgLc.js} +11 -7
  61. package/dist/block-transport-DvaoPuZ9.d.ts +48 -0
  62. package/dist/blocks/agents/index.d.ts +3 -0
  63. package/dist/blocks/agents/index.js +123 -0
  64. package/dist/blocks/ai-cache/index.d.ts +3 -0
  65. package/dist/blocks/ai-cache/index.js +3 -0
  66. package/dist/blocks/ai-chat/index.d.ts +31 -0
  67. package/dist/blocks/ai-chat/index.js +5 -0
  68. package/dist/blocks/ai-chat/react/index.d.ts +77 -0
  69. package/dist/blocks/ai-chat/react/index.js +387 -0
  70. package/dist/blocks/ai-chat/react/server.d.ts +16 -0
  71. package/dist/blocks/ai-chat/react/server.js +14 -0
  72. package/dist/blocks/ai-files/index.d.ts +14 -0
  73. package/dist/blocks/ai-files/index.js +3 -0
  74. package/dist/blocks/ai-providers/index.d.ts +7 -0
  75. package/dist/blocks/ai-providers/index.js +211 -0
  76. package/dist/blocks/ai-tasks/index.d.ts +3 -0
  77. package/dist/blocks/ai-tasks/index.js +203 -0
  78. package/dist/blocks/announcements/index.d.ts +3 -0
  79. package/dist/blocks/announcements/index.js +3 -0
  80. package/dist/blocks/announcements/react/index.d.ts +31 -0
  81. package/dist/blocks/announcements/react/index.js +86 -0
  82. package/dist/blocks/announcements/react/server.d.ts +6 -0
  83. package/dist/blocks/announcements/react/server.js +7 -0
  84. package/dist/blocks/api-keys/index.d.ts +35 -0
  85. package/dist/blocks/api-keys/index.js +334 -0
  86. package/dist/blocks/attachments/index.d.ts +210 -0
  87. package/dist/blocks/attachments/index.js +222 -0
  88. package/dist/blocks/audit/index.d.ts +366 -0
  89. package/dist/blocks/audit/index.js +714 -0
  90. package/dist/blocks/billing/index.d.ts +265 -0
  91. package/dist/blocks/billing/index.js +400 -0
  92. package/dist/blocks/comments/index.d.ts +200 -0
  93. package/dist/blocks/comments/index.js +207 -0
  94. package/dist/blocks/connectors/index.d.ts +3 -0
  95. package/dist/blocks/connectors/index.js +164 -0
  96. package/dist/blocks/data-lifecycle/index.d.ts +251 -0
  97. package/dist/blocks/data-lifecycle/index.js +353 -0
  98. package/dist/blocks/entitlements/index.d.ts +14 -0
  99. package/dist/blocks/entitlements/index.js +25 -0
  100. package/dist/blocks/flags/index.d.ts +226 -0
  101. package/dist/blocks/flags/index.js +282 -0
  102. package/dist/blocks/inbox/index.d.ts +6 -0
  103. package/dist/blocks/inbox/index.js +499 -0
  104. package/dist/blocks/inbox/react/index.d.ts +2 -0
  105. package/dist/blocks/inbox/react/index.js +225 -0
  106. package/dist/blocks/inbox/react/server.d.ts +10 -0
  107. package/dist/blocks/inbox/react/server.js +12 -0
  108. package/dist/blocks/index.d.ts +65 -0
  109. package/dist/blocks/index.js +77 -0
  110. package/dist/blocks/jobs/index.d.ts +297 -0
  111. package/dist/blocks/jobs/index.js +1051 -0
  112. package/dist/blocks/knowledge/index.d.ts +3 -0
  113. package/dist/blocks/knowledge/index.js +3 -0
  114. package/dist/blocks/memory/index.d.ts +8 -0
  115. package/dist/blocks/memory/index.js +289 -0
  116. package/dist/blocks/notifications/index.d.ts +297 -0
  117. package/dist/blocks/notifications/index.js +425 -0
  118. package/dist/blocks/notifications/react/index.d.ts +44 -0
  119. package/dist/blocks/notifications/react/index.js +67 -0
  120. package/dist/blocks/notifications/react/server.d.ts +6 -0
  121. package/dist/blocks/notifications/react/server.js +7 -0
  122. package/dist/blocks/onboarding/index.d.ts +3 -0
  123. package/dist/blocks/onboarding/index.js +64 -0
  124. package/dist/blocks/onboarding/react/index.d.ts +28 -0
  125. package/dist/blocks/onboarding/react/index.js +78 -0
  126. package/dist/blocks/onboarding/react/server.d.ts +7 -0
  127. package/dist/blocks/onboarding/react/server.js +7 -0
  128. package/dist/blocks/organizations/index.d.ts +241 -0
  129. package/dist/blocks/organizations/index.js +400 -0
  130. package/dist/blocks/outbox/index.d.ts +3 -0
  131. package/dist/blocks/outbox/index.js +266 -0
  132. package/dist/blocks/profiles/index.d.ts +40 -0
  133. package/dist/blocks/profiles/index.js +28 -0
  134. package/dist/blocks/push/index.d.ts +185 -0
  135. package/dist/blocks/push/index.js +258 -0
  136. package/dist/blocks/settings/index.d.ts +89 -0
  137. package/dist/blocks/settings/index.js +104 -0
  138. package/dist/blocks/sso/index.d.ts +198 -0
  139. package/dist/blocks/sso/index.js +1297 -0
  140. package/dist/blocks/usage/index.d.ts +4 -0
  141. package/dist/blocks/usage/index.js +233 -0
  142. package/dist/blocks/waitlist/index.d.ts +117 -0
  143. package/dist/blocks/waitlist/index.js +132 -0
  144. package/dist/blocks/webhooks/index.d.ts +304 -0
  145. package/dist/{webhooks → blocks/webhooks}/index.js +468 -148
  146. package/dist/blocks/workflow-builder/index.d.ts +21 -0
  147. package/dist/blocks/workflow-builder/index.js +5 -0
  148. package/dist/blocks/workflow-builder/react/index.d.ts +47 -0
  149. package/dist/blocks/workflow-builder/react/index.js +119 -0
  150. package/dist/blocks/workflow-builder/react/server.d.ts +8 -0
  151. package/dist/blocks/workflow-builder/react/server.js +11 -0
  152. package/dist/blocks/workflows/index.d.ts +3 -0
  153. package/dist/blocks/workflows/index.js +3 -0
  154. package/dist/blocks/workflows/react/index.d.ts +47 -0
  155. package/dist/blocks/workflows/react/index.js +137 -0
  156. package/dist/blocks/workflows/react/server.d.ts +8 -0
  157. package/dist/blocks/workflows/react/server.js +11 -0
  158. package/dist/{index-SaTsEfGP.d.ts → bucket-Cl46E3jS.d.ts} +134 -91
  159. package/dist/{simplify-_0oUKqCd.js → build-BXIzE6Xv.js} +222 -124
  160. package/dist/{channel-FQW-CnGR.d.ts → channel-_2Mx1Oyu.d.ts} +2 -2
  161. package/dist/channels-CkgQ_X60.js +114 -0
  162. package/dist/chat-sdk/index.d.ts +303 -0
  163. package/dist/chat-sdk/index.js +733 -0
  164. package/dist/chat-sdk/react/index.d.ts +2 -0
  165. package/dist/chat-sdk/react/index.js +3 -0
  166. package/dist/chat-sdk/react/server.d.ts +3 -0
  167. package/dist/chat-sdk/react/server.js +2 -0
  168. package/dist/claims-DDBQT6BK.js +61 -0
  169. package/dist/{claims-BAf6c7is.js → claims-PqzCxaTD.js} +39 -2
  170. package/dist/cli/bin.js +1 -1
  171. package/dist/cli/{codemod-DqV7612m.js → codemod-Bl_tQpHn.js} +105 -2
  172. package/dist/cli/config-B9HkL8nF.js +2 -0
  173. package/dist/cli/config-DU7EJImt.js +49 -0
  174. package/dist/cli/config-NiPxAmUF.js +1077 -0
  175. package/dist/cli/{dist-xn4wlboc.js → dist-DRAVaE6w.js} +111 -1
  176. package/dist/cli/{doctor-L7Z8mYTx.js → doctor-B4JOm_ox.js} +992 -316
  177. package/dist/cli/{env-DmKv_G4A.js → env-CJLbUVPB.js} +1 -1
  178. package/dist/cli/{env-jIFUADLY.js → env-qXgyMV6r.js} +2 -2
  179. package/dist/cli/fresh-import-BeYf9I3x.js +40 -0
  180. package/dist/cli/gen-BGLb_zou.js +3100 -0
  181. package/dist/cli/gen-DAH8FM2W.js +2 -0
  182. package/dist/cli/index.d.ts +44 -5
  183. package/dist/cli/index.js +7 -7
  184. package/dist/cli/{init-Saf5-R9T.js → init-BIIwclPg.js} +242 -27
  185. package/dist/cli/{introspect--H7oGmcd.js → introspect-DNUTuNvb.js} +5 -5
  186. package/dist/cli/{io-k41_z-jT.js → io-DI1mTdSA.js} +12 -3
  187. package/dist/cli/{keys-ByKHnvP9.js → keys-BGCnnb-s.js} +8 -6
  188. package/dist/cli/{ohash-D7bG_EOb.js → ohash-BjQY1cBb.js} +1 -1
  189. package/dist/cli/{openapi-Cp5Fyta-.js → openapi-BlRJ18s3.js} +2 -2
  190. package/dist/cli/{project-B_GeXyHh.js → project-DZRaBaY7.js} +11 -6
  191. package/dist/cli/read-sets-CETOSFx4.js +223 -0
  192. package/dist/cli/{run-BKR2W_79.js → run-DNWxHynX.js} +33 -23
  193. package/dist/cli/{seed-CUlqWh-8.js → seed-DQzqT7LP.js} +8 -6
  194. package/dist/cli/{skills-LJJIhLFR.js → skills-QQs4q68J.js} +3 -2
  195. package/dist/cli/sql-D0GUtUPp.js +536 -0
  196. package/dist/cli/{config-CPVpXP5I.js → supabase-toml-B-bIukQF.js} +72 -942
  197. package/dist/cli/typegen-version-DeFbtzYI.js +8 -0
  198. package/dist/cli/{version-BDJuO0UR.js → version-hr88OZG0.js} +1 -1
  199. package/dist/client/index.d.ts +3 -2
  200. package/dist/client/index.js +11 -71
  201. package/dist/client/native/index.d.ts +228 -0
  202. package/dist/client/native/index.js +361 -0
  203. package/dist/client-CI0Z2zWX.js +277 -0
  204. package/dist/cloud-event-BnmD5fb9.js +46 -0
  205. package/dist/cloud-event-C1JCc1bH.d.ts +50 -0
  206. package/dist/{compiler-BXH_aZ7N.d.ts → compiler-DY_wkj4R.d.ts} +2 -2
  207. package/dist/compose-BIBNgAnq.js +53 -0
  208. package/dist/composite-Bt1YK3Ke.d.ts +146 -0
  209. package/dist/composite-DhE66P5u.js +130 -0
  210. package/dist/config/index.d.ts +6 -4
  211. package/dist/config/index.js +5 -5
  212. package/dist/{config-T_ejwyd3.d.ts → config-D44Y7PAv.d.ts} +406 -205
  213. package/dist/{config-DreERlKo.js → config-Dn7F5k9A.js} +62 -14
  214. package/dist/connector-Dv8kK0MO.d.ts +107 -0
  215. package/dist/connectors-hkLCwyEz.d.ts +120 -0
  216. package/dist/context-BCrWe7ow.d.ts +237 -0
  217. package/dist/credentials/index.d.ts +31 -0
  218. package/dist/credentials/index.js +168 -0
  219. package/dist/cron-DVPUg5k3.js +145 -0
  220. package/dist/csv-CPAzEmB6.js +25 -0
  221. package/dist/db-exception-CnWcYPxL.js +15 -0
  222. package/dist/{define-cNKzqwL_.js → define-B-TVjC25.js} +784 -227
  223. package/dist/{define-Bp_BZa5h.d.ts → define-CJJkkr1-.d.ts} +353 -61
  224. package/dist/edge/index.d.ts +69 -11
  225. package/dist/edge/index.js +191 -75
  226. package/dist/elysia/index.d.ts +59 -0
  227. package/dist/elysia/index.js +62 -0
  228. package/dist/embeddings-4ZvFzjsU.js +127 -0
  229. package/dist/embeddings-C9KGQnXt.d.ts +68 -0
  230. package/dist/{refresh-BTrQ_ZTp.d.ts → ended-jLfvw8h-.d.ts} +20 -2
  231. package/dist/{entitlements-DUxU4oHe.d.ts → entitlements-DHrY2UDZ.d.ts} +16 -7
  232. package/dist/entitlements-DRl6ZJUm.js +24 -0
  233. package/dist/envelope-DqnYGRw7.js +47 -0
  234. package/dist/{errors-DtwXa6b8.js → errors-B11Duf73.js} +82 -13
  235. package/dist/errors-DLjJHPLK.js +44 -0
  236. package/dist/escape-like-DHfx6jRr.js +7 -0
  237. package/dist/escape-like-ImTK0ps_.d.ts +15 -0
  238. package/dist/eve/index.d.ts +220 -0
  239. package/dist/eve/index.js +504 -0
  240. package/dist/eve-gT2Fpjut.d.ts +151 -0
  241. package/dist/events/index.d.ts +4 -3
  242. package/dist/events/index.js +9 -50
  243. package/dist/events-DWDhx77e.d.ts +549 -0
  244. package/dist/executor-Bq28caBo.js +718 -0
  245. package/dist/executor-C-R4pucm.js +83 -0
  246. package/dist/executor-CaWigTyR.d.ts +148 -0
  247. package/dist/executor-D14tGopJ.d.ts +36 -0
  248. package/dist/{executor-Cghdstwu.d.ts → executor-DbvExCFC.d.ts} +7 -1
  249. package/dist/{sql-Coh6n4cC.js → executor-De1Of3m3.js} +210 -11
  250. package/dist/executor-DvsBbNBS.d.ts +261 -0
  251. package/dist/expo/index.d.ts +79 -0
  252. package/dist/expo/index.js +129 -0
  253. package/dist/expo-sqlite/index.d.ts +58 -0
  254. package/dist/expo-sqlite/index.js +104 -0
  255. package/dist/field-errors-BFOa7WhB.d.ts +99 -0
  256. package/dist/field-errors-VF1yb8yI.js +13 -0
  257. package/dist/framework-CONDyPYx.js +51 -0
  258. package/dist/framework-DuVb4Xa8.d.ts +25 -0
  259. package/dist/gateway-C1ssRHnf.d.ts +130 -0
  260. package/dist/graph-BGyLLFLX.js +265 -0
  261. package/dist/h3/index.d.ts +59 -0
  262. package/dist/h3/index.js +55 -0
  263. package/dist/h3/v1/index.d.ts +63 -0
  264. package/dist/h3/v1/index.js +49 -0
  265. package/dist/history-BZih6SFP.js +64 -0
  266. package/dist/hono/index.d.ts +56 -7
  267. package/dist/hono/index.js +97 -45
  268. package/dist/{react-C_s7kiNz.js → hooks-1BTCJsiw.js} +104 -133
  269. package/dist/http-Cv4T29xh.js +40 -0
  270. package/dist/http-DdYadv-o.js +126 -0
  271. package/dist/image-url-pIVlO6R1.js +41 -0
  272. package/dist/impersonation-DcqaTBHx.js +148 -0
  273. package/dist/inbox-i7E1ppo6.d.ts +384 -0
  274. package/dist/index-ACiNPN4Z.d.ts +74 -0
  275. package/dist/{index-DgILJRXj.d.ts → index-Bepi-Hgg.d.ts} +91 -28
  276. package/dist/index-BkWT_uBO.d.ts +51 -0
  277. package/dist/index-BpFYMsi0.d.ts +53 -0
  278. package/dist/{index-C7f8cOBM.d.ts → index-Bxih3l0u.d.ts} +2 -2
  279. package/dist/index-CaxrMD1A.d.ts +1 -0
  280. package/dist/index-ClmjK_o-.d.ts +55 -0
  281. package/dist/index-CtuakVRc.d.ts +267 -0
  282. package/dist/index-D48jVS-N.d.ts +246 -0
  283. package/dist/index-DDrYaUcq.d.ts +138 -0
  284. package/dist/index-DQh4VCc9.d.ts +98 -0
  285. package/dist/{live-D9W2M5aO.d.ts → index-DunNRdnT.d.ts} +136 -38
  286. package/dist/index.d.ts +65 -18
  287. package/dist/index.js +42 -14
  288. package/dist/invalidate-BBqhpxyB.d.ts +19 -0
  289. package/dist/json-CEnpTHlZ.js +16 -0
  290. package/dist/json-schema-CvER4kgT.js +502 -0
  291. package/dist/keys-4MnkWTTh.js +35 -0
  292. package/dist/kit-B5tid-q5.d.ts +60 -0
  293. package/dist/kit-Fm-Fv7q5.js +78 -0
  294. package/dist/knowledge-BXBbT0Tr.d.ts +176 -0
  295. package/dist/knowledge-CDmiMLew.js +255 -0
  296. package/dist/lint/index.d.ts +1 -1
  297. package/dist/lint/index.js +37 -0
  298. package/dist/list/index.d.ts +3 -2
  299. package/dist/list/index.js +1 -444
  300. package/dist/{index-fag8VJZ2.d.ts → list-query-BRt-zDF7.d.ts} +20 -12
  301. package/dist/list-query-gl808ac1.js +459 -0
  302. package/dist/{live-CdJBOc4f.js → live-CTAZQkwl.js} +99 -14
  303. package/dist/logger-DWVYUmwi.d.ts +18 -0
  304. package/dist/mcp/index.d.ts +38 -11
  305. package/dist/mcp/index.js +82 -46
  306. package/dist/mcp/sdk/index.d.ts +105 -0
  307. package/dist/mcp/sdk/index.js +126 -0
  308. package/dist/message-CaKlqdsX.js +219 -0
  309. package/dist/message-CfDoR0Y6.d.ts +94 -0
  310. package/dist/messages-B9-5887d.js +715 -0
  311. package/dist/messages-DYP0sUTe.d.ts +59 -0
  312. package/dist/{mfa-CusDgPaD.d.ts → mfa-Daak8ukG.d.ts} +8 -2
  313. package/dist/modules-DpPwzC7E.d.ts +192 -0
  314. package/dist/modules-dxrVK3ID.js +228 -0
  315. package/dist/nestjs/index.d.ts +68 -0
  316. package/dist/nestjs/index.js +164 -0
  317. package/dist/next/client/index.d.ts +35 -0
  318. package/dist/next/client/index.js +36 -0
  319. package/dist/next/image/index.js +3 -24
  320. package/dist/next/index.d.ts +150 -51
  321. package/dist/next/index.js +261 -107
  322. package/dist/node/index.d.ts +4 -0
  323. package/dist/node/index.js +210 -0
  324. package/dist/node-headers-AO06VhqH.d.ts +24 -0
  325. package/dist/node-headers-C71zNQHe.js +55 -0
  326. package/dist/nuxt/index.d.ts +60 -0
  327. package/dist/nuxt/index.js +64 -0
  328. package/dist/onboarding-BZGHYJks.d.ts +62 -0
  329. package/dist/openapi/index.d.ts +1 -1
  330. package/dist/openapi/index.js +3 -3
  331. package/dist/orpc/index.d.ts +70 -11
  332. package/dist/orpc/index.js +73 -24
  333. package/dist/otel/index.d.ts +7 -7
  334. package/dist/otel/index.js +87 -57
  335. package/dist/outbox-Cq7pPYvl.d.ts +161 -0
  336. package/dist/{plugin-o144f322.d.ts → plugin-FGY8UhYm.d.ts} +30 -10
  337. package/dist/plugin-tfXW1-qO.js +45 -0
  338. package/dist/plugins/actor/index.d.ts +2 -2
  339. package/dist/plugins/actor/index.js +3 -3
  340. package/dist/plugins/rules/index.d.ts +11 -4
  341. package/dist/plugins/rules/index.js +40 -13
  342. package/dist/plugins/soft-delete/index.d.ts +5 -4
  343. package/dist/plugins/soft-delete/index.js +10 -5
  344. package/dist/plugins/tenant/index.d.ts +2 -2
  345. package/dist/plugins/tenant/index.js +18 -11
  346. package/dist/plugins/timestamps/index.d.ts +5 -3
  347. package/dist/plugins/timestamps/index.js +6 -4
  348. package/dist/plugins/validation/index.d.ts +2 -2
  349. package/dist/plugins/validation/index.js +10 -6
  350. package/dist/{pool-C9voM4Kw.d.ts → pool-CAu2nLrL.d.ts} +2 -2
  351. package/dist/postgres/index.d.ts +4 -4
  352. package/dist/postgres/index.js +1 -2
  353. package/dist/{postgrest-CruYKAvV.d.ts → postgrest-BLVdEnfe.d.ts} +13 -3
  354. package/dist/powersync/index.d.ts +43 -0
  355. package/dist/powersync/index.js +199 -0
  356. package/dist/powersync/react/index.d.ts +87 -0
  357. package/dist/powersync/react/index.js +108 -0
  358. package/dist/{problem-BW1KhzSG.js → problem-BreOl8b8.js} +14 -3
  359. package/dist/{problem-Blxe8S31.d.ts → problem-DD8LZFjc.d.ts} +21 -3
  360. package/dist/provider-BH5UWZJ6.d.ts +113 -0
  361. package/dist/provider-Di3sRutW.js +57 -0
  362. package/dist/query/index.d.ts +4 -2
  363. package/dist/query/index.js +4 -3
  364. package/dist/{query-CCbo44lG.js → query-BQ-NaZon.js} +141 -24
  365. package/dist/{queue-BYUCjr59.d.ts → queue-CLJurhdy.d.ts} +258 -83
  366. package/dist/react/index.d.ts +11 -7
  367. package/dist/react/index.js +7 -3
  368. package/dist/react/native/index.d.ts +116 -0
  369. package/dist/react/native/index.js +130 -0
  370. package/dist/react/server.d.ts +28 -10
  371. package/dist/react/server.js +22 -5
  372. package/dist/react/session.d.ts +2 -2
  373. package/dist/react-4ZqkP8da.js +79 -0
  374. package/dist/react-F80mF4-t.js +409 -0
  375. package/dist/react-router/index.d.ts +83 -0
  376. package/dist/react-router/index.js +89 -0
  377. package/dist/react-topic-seAWjL3_.js +38 -0
  378. package/dist/{read-set-DQFt1N_Y.js → read-set-DuKWC9Mj.js} +67 -25
  379. package/dist/realtime/index.d.ts +4 -5
  380. package/dist/realtime/index.js +144 -82
  381. package/dist/refusal-CeJWxmkH.js +61 -0
  382. package/dist/refusal-D1rgbzNq.d.ts +15 -0
  383. package/dist/replicas-CwrYp5Zj.js +94 -0
  384. package/dist/{view-Bq64ki8-.js → resolve-D_IcnvFd.js} +239 -289
  385. package/dist/{resolve-C15TJq77.d.ts → resolve-KW8nCeL6.d.ts} +29 -45
  386. package/dist/{resource-CRxxwkQq.js → resource-BsvzCMlX.js} +4 -4
  387. package/dist/{resource-D8iqWMr-.d.ts → resource-D6Uc7Sk7.d.ts} +5 -5
  388. package/dist/respond-BUgsXNgk.js +91 -0
  389. package/dist/respond-DoBijysA.d.ts +93 -0
  390. package/dist/result-D7y2fT87.d.ts +282 -0
  391. package/dist/{result-BKiliPY7.js → result-DzUbqgdW.js} +27 -2
  392. package/dist/run-state-CPo-1X2B.d.ts +12 -0
  393. package/dist/run-state-CgBKzYMW.js +13 -0
  394. package/dist/search-CUWCRYKL.js +9 -0
  395. package/dist/server/index.d.ts +143 -21
  396. package/dist/server/index.js +46 -14
  397. package/dist/{respond-D2OQl62-.d.ts → server-CeVeeXwz.d.ts} +225 -80
  398. package/dist/session-ChiXDZdZ.d.ts +72 -0
  399. package/dist/shared-CBxosKK3.js +75 -0
  400. package/dist/{shared-D1dRUrAg.js → shared-CxWmcyqB.js} +2 -1
  401. package/dist/shared-DDSjEGDR.d.ts +11 -0
  402. package/dist/sign-in-BCV5S2WZ.d.ts +49 -0
  403. package/dist/sign-in-Cb1mwv6X.js +86 -0
  404. package/dist/{signers-Cc6r98SW.d.ts → signers-4y62_VIi.d.ts} +13 -9
  405. package/dist/simplify-DDO0j0LI.js +83 -0
  406. package/dist/solid/index.d.ts +131 -0
  407. package/dist/solid/index.js +344 -0
  408. package/dist/solid-start/index.d.ts +75 -0
  409. package/dist/solid-start/index.js +58 -0
  410. package/dist/{spec-pins-C3oc-Tdp.js → spec-pins--j6mTok4.js} +8 -1
  411. package/dist/{spec-pins-CqorWDnO.d.ts → spec-pins-C89s6DyW.d.ts} +7 -0
  412. package/dist/sql/index.d.ts +330 -194
  413. package/dist/sql/index.js +34901 -6489
  414. package/dist/ssr/index.d.ts +6 -5
  415. package/dist/ssr/index.js +3 -3
  416. package/dist/{standard-D7r6dMUu.js → standard-BK0cqJ7y.js} +4 -3
  417. package/dist/{standard-J4YgMOLm.d.ts → standard-CYsm7xpT.d.ts} +1 -1
  418. package/dist/stats-D_AD9GGu.js +1123 -0
  419. package/dist/storage/index.d.ts +5 -5
  420. package/dist/storage/index.js +1027 -368
  421. package/dist/store-BdH5ruDx.js +66 -0
  422. package/dist/store-CGjgWu5n.d.ts +68 -0
  423. package/dist/streams/index.d.ts +76 -0
  424. package/dist/streams/index.js +77 -0
  425. package/dist/streams/redis/index.d.ts +52 -0
  426. package/dist/streams/redis/index.js +185 -0
  427. package/dist/stripe-BMj5LtsT.js +38 -0
  428. package/dist/stripe-D04h-QBT.d.ts +136 -0
  429. package/dist/{support-Dk6vdmEw.js → support-BivNqSpK.js} +35 -12
  430. package/dist/{support-view-Da5peKFg.d.ts → support-view-33Oi07TT.d.ts} +1 -1
  431. package/dist/svelte/index.d.ts +114 -0
  432. package/dist/svelte/index.js +344 -0
  433. package/dist/sveltekit/index.d.ts +116 -0
  434. package/dist/sveltekit/index.js +106 -0
  435. package/dist/tags-B99_U9Pp.js +39 -0
  436. package/dist/tags-Cx-LnIQP.d.ts +30 -0
  437. package/dist/tanstack-db/index.d.ts +71 -0
  438. package/dist/tanstack-db/index.js +72 -0
  439. package/dist/tanstack-start/index.d.ts +75 -0
  440. package/dist/tanstack-start/index.js +95 -0
  441. package/dist/tee-CoEppCER.js +101 -0
  442. package/dist/{template-TxrGI5jR.js → template--jDkl3UP.js} +34 -13
  443. package/dist/template-CwO38Do8.d.ts +6 -0
  444. package/dist/temporal-BJGitm-h.js +79 -0
  445. package/dist/{temporal-required-CAt4Dc9Z.js → temporal-required-BVvW7SYJ.js} +3 -2
  446. package/dist/tenant-I1TEZ_BX.js +27 -0
  447. package/dist/tenant-icPeuUBN.d.ts +17 -0
  448. package/dist/testing/index.d.ts +343 -37
  449. package/dist/testing/index.js +1186 -79
  450. package/dist/timing-CyTQPubY.js +92 -0
  451. package/dist/ttl-Hr34gRu8.js +12 -0
  452. package/dist/{types-Dnf_wRDz.d.ts → types-6BdhkmZe.d.ts} +111 -45
  453. package/dist/types-BI-0Sl2v.d.ts +359 -0
  454. package/dist/types-C05bxW-W.d.ts +220 -0
  455. package/dist/types-DGs5L0VN.d.ts +192 -0
  456. package/dist/types-TaiEeBGA.d.ts +156 -0
  457. package/dist/usage-CrvrL2vw.d.ts +177 -0
  458. package/dist/user-change-XzvgafU4.js +130 -0
  459. package/dist/vault-CSO7ss5C.d.ts +50 -0
  460. package/dist/vercel-connect/index.d.ts +47 -0
  461. package/dist/vercel-connect/index.js +119 -0
  462. package/dist/{verify-Ce49ETPz.js → verify-DL41hbvY.js} +85 -13
  463. package/dist/verify-DPuWngD4.d.ts +172 -0
  464. package/dist/{version-DM_Roffb.js → version-Bvv6aLjZ.js} +1 -1
  465. package/dist/view-BeFcRV6G.js +99 -0
  466. package/dist/{view-BEf0diC5.d.ts → view-DbxLNu8L.d.ts} +35 -32
  467. package/dist/vue/index.d.ts +141 -0
  468. package/dist/vue/index.js +362 -0
  469. package/dist/watch-DI34G86j.d.ts +60 -0
  470. package/dist/watch-Xuxrvxq-.js +122 -0
  471. package/dist/{wire-D2dT86vi.js → wire-DtZQ4sdE.js} +15 -5
  472. package/dist/workflow-builder-DJ1oHn8g.js +398 -0
  473. package/dist/workflow-sdk/builder/index.d.ts +85 -0
  474. package/dist/workflow-sdk/builder/index.js +250 -0
  475. package/dist/workflow-sdk/index.d.ts +14 -0
  476. package/dist/workflow-sdk/index.js +3 -0
  477. package/dist/workflow-sdk/world/index.d.ts +107 -0
  478. package/dist/workflow-sdk/world/index.js +702 -0
  479. package/dist/workflow-sdk-B3yLD6Br.d.ts +98 -0
  480. package/dist/workflow-sdk-C2WJ_G2O.js +173 -0
  481. package/dist/workflow-sdk-world-D-prir6O.js +1397 -0
  482. package/dist/workflows-B0j9WKPu.d.ts +185 -0
  483. package/dist/workflows-wu1WWBn7.js +216 -0
  484. package/package.json +470 -29
  485. package/schemas/ai-message-v1.json +258 -0
  486. package/schemas/config-v1.json +1074 -140
  487. package/schemas/doctor-report-v1.json +21 -1
  488. package/schemas/snapshot-v2.json +8 -0
  489. package/skills/better-supabase/SKILL.md +41 -12
  490. package/skills/better-supabase/references/frontend.md +96 -0
  491. package/skills/better-supabase/references/plugins.md +10 -6
  492. package/skills/better-supabase/references/troubleshooting.md +2 -1
  493. package/skills/better-supabase-api/SKILL.md +76 -22
  494. package/skills/better-supabase-api/references/adapters.md +207 -0
  495. package/skills/better-supabase-api/references/ai.md +125 -0
  496. package/skills/better-supabase-api/references/expo.md +65 -0
  497. package/skills/better-supabase-api/references/powersync.md +35 -0
  498. package/skills/better-supabase-api/references/streams-credentials.md +105 -0
  499. package/skills/better-supabase-auth/SKILL.md +62 -18
  500. package/skills/better-supabase-auth/references/authorization-providers.md +51 -0
  501. package/skills/better-supabase-testing/SKILL.md +3 -1
  502. package/dist/cli/config-dtoekM0v.js +0 -2
  503. package/dist/cli/gen-BJc9vdyu.js +0 -2
  504. package/dist/cli/gen-C2osRcr5.js +0 -2204
  505. package/dist/cli/read-sets-BfMQcKy8.js +0 -289
  506. package/dist/cli/sql-DzPbfngx.js +0 -348
  507. package/dist/entitlements-CTEBm7IB.js +0 -20
  508. package/dist/events-aIO7vsIk.d.ts +0 -230
  509. package/dist/executor-BunPOO-k.d.ts +0 -402
  510. package/dist/executor-XycESQPH.js +0 -94
  511. package/dist/impersonation-VfaGc4Q_.js +0 -41
  512. package/dist/index-BGdgBPdf.d.ts +0 -161
  513. package/dist/index-DOESKG27.d.ts +0 -100
  514. package/dist/index-DmXSxbLi.d.ts +0 -62
  515. package/dist/index-Dxn2a5cw.d.ts +0 -50
  516. package/dist/jobs/index.d.ts +0 -226
  517. package/dist/jobs/index.js +0 -1007
  518. package/dist/json-schema-m1fiwKgN.js +0 -208
  519. package/dist/kit-events-CTFDfSwb.js +0 -60
  520. package/dist/kit-transport-B82k1djG.d.ts +0 -33
  521. package/dist/kits-CGLLrNPd.js +0 -157
  522. package/dist/notifications/index.d.ts +0 -162
  523. package/dist/notifications/index.js +0 -264
  524. package/dist/orgs/index.d.ts +0 -132
  525. package/dist/orgs/index.js +0 -245
  526. package/dist/permdock-sql-C2Inc6Xc.d.ts +0 -29
  527. package/dist/permdock-sql-DgOfeixi.js +0 -51
  528. package/dist/plugin-DwARMuQp.js +0 -59
  529. package/dist/server-Csx2sRjg.js +0 -655
  530. package/dist/stats-Bqob3WqT.js +0 -592
  531. package/dist/support-DT-OhSxD.d.ts +0 -88
  532. package/dist/template-mbvlysOo.d.ts +0 -6
  533. package/dist/temporal-CVlIV2DZ.js +0 -40
  534. package/dist/user-change-CHFEUro1.js +0 -49
  535. package/dist/webhooks/index.d.ts +0 -285
  536. package/skills/better-supabase-auth/references/permdock.md +0 -100
@@ -0,0 +1,50 @@
1
+ /// <reference lib="esnext.temporal" />
2
+ import { S as BlockEvent, T as BlockEventPattern, a as EventHub } from "./events-DWDhx77e.js";
3
+ //#region src/events/cloud-event.d.ts
4
+ /** A CloudEvents 1.0 event. Extension attributes are lowercase alphanumerics. */
5
+ interface CloudEvent<T = unknown> {
6
+ readonly specversion: "1.0";
7
+ readonly id: string;
8
+ readonly source: string;
9
+ readonly type: string;
10
+ readonly subject?: string;
11
+ readonly time?: string;
12
+ readonly datacontenttype?: string;
13
+ readonly dataschema?: string;
14
+ readonly data?: T;
15
+ readonly [extension: string]: unknown;
16
+ }
17
+ interface CloudEventOptions {
18
+ /** URI-reference of the producer, e.g. `https://crm.example.com` or `/crm`. */
19
+ readonly source: string;
20
+ /** Replaces the `dev.better-supabase` type prefix. */
21
+ readonly typePrefix?: string;
22
+ readonly id?: () => string;
23
+ readonly now?: () => Temporal.Instant;
24
+ }
25
+ /** Sends events somewhere: a queue, a bus, an outbox table, an HTTP endpoint. */
26
+ interface EventSink {
27
+ send(events: readonly CloudEvent[]): void | Promise<void>;
28
+ }
29
+ /**
30
+ * A block event as a CloudEvent: `dev.better-supabase.support.started` with
31
+ * the event data and the actor (`actorId`) as `data` and the tenant as
32
+ * `partitionkey`.
33
+ */
34
+ declare function blockCloudEvent(event: BlockEvent, options: CloudEventOptions): CloudEvent;
35
+ interface ForwardBlockOptions extends CloudEventOptions {
36
+ /** Only forward events that match, e.g. `support.*`. Defaults to all. */
37
+ readonly types?: readonly BlockEventPattern[];
38
+ /** Sink failures never fail the block call. Defaults to the `Logger`. */
39
+ readonly onError?: (error: unknown, events: readonly CloudEvent[]) => void;
40
+ }
41
+ /**
42
+ * Sends a CloudEvent for every block event (`support.*`, `organization.*`, ...) to
43
+ * `sink`. Returns a function that stops forwarding. Like
44
+ * `forwardMutations`, sends are tracked on `betterSupabase.events`.
45
+ */
46
+ declare function forwardBlockEvents(betterSupabase: {
47
+ readonly events: EventHub;
48
+ }, sink: EventSink, options: ForwardBlockOptions): () => void;
49
+ //#endregion
50
+ export { blockCloudEvent as a, ForwardBlockOptions as i, CloudEventOptions as n, forwardBlockEvents as o, EventSink as r, CloudEvent as t };
@@ -1,5 +1,5 @@
1
- import { U as Operation } from "./executor-BunPOO-k.js";
2
- import { i as PostgrestPlan } from "./postgrest-CruYKAvV.js";
1
+ import { v as Operation } from "./executor-DvsBbNBS.js";
2
+ import { a as PostgrestPlan } from "./postgrest-BLVdEnfe.js";
3
3
  //#region src/core/compiler.d.ts
4
4
  /**
5
5
  * Turns an IR operation into something a backend runs. An `Executor` for a
@@ -0,0 +1,53 @@
1
+ import { n as dbError } from "./errors-B11Duf73.js";
2
+ import { t as AsyncResult } from "./result-DzUbqgdW.js";
3
+ import { n as credentialRefInTenant, t as credentialProviderOf } from "./provider-Di3sRutW.js";
4
+ //#region src/credentials/compose.ts
5
+ const NO_CAPABILITIES = {
6
+ userSubjects: false,
7
+ authorization: false,
8
+ revoke: false,
9
+ inbound: false
10
+ };
11
+ const unsupported = (provider, what) => dbError("unsupported", `The credential provider "${provider}" ${what}`, { hint: "CREDENTIAL_UNSUPPORTED" });
12
+ /**
13
+ * One provider over several: each call goes to the provider whose `name`
14
+ * is the ref's `provider`. A ref no provider handles fails with
15
+ * `invalid_input` (`CREDENTIAL_PROVIDER_UNKNOWN`), and an optional method
16
+ * the chosen provider lacks with `unsupported`.
17
+ */
18
+ function credentialRouter(providers, options = {}) {
19
+ const byName = /* @__PURE__ */ new Map();
20
+ for (const provider of providers) {
21
+ if (byName.has(provider.name)) throw new TypeError(`credentialRouter got two providers named "${provider.name}"`);
22
+ byName.set(provider.name, credentialProviderOf(provider));
23
+ }
24
+ const unknown = (ref) => dbError("invalid_input", `No credential provider named "${ref.provider}" is configured`, { hint: "CREDENTIAL_PROVIDER_UNKNOWN" });
25
+ const route = (ref, then) => {
26
+ const provider = byName.get(ref.provider);
27
+ return provider === void 0 ? AsyncResult.err(unknown(ref)) : then(provider);
28
+ };
29
+ return {
30
+ apiVersion: 1,
31
+ name: options.name ?? "router",
32
+ getToken: (ref, tokenOptions) => route(ref, (provider) => provider.getToken(ref, tokenOptions)),
33
+ capabilities: (ref) => byName.get(ref.provider)?.capabilities(ref) ?? NO_CAPABILITIES,
34
+ startAuthorization: (ref, startOptions) => route(ref, (provider) => provider.startAuthorization === void 0 ? AsyncResult.err(unsupported(provider.name, "doesn't authorize accounts")) : provider.startAuthorization(ref, startOptions)),
35
+ completeAuthorization: (ref, completeOptions) => route(ref, (provider) => provider.completeAuthorization === void 0 ? AsyncResult.err(unsupported(provider.name, "doesn't authorize accounts")) : provider.completeAuthorization(ref, completeOptions)),
36
+ revoke: (ref, revokeOptions) => route(ref, (provider) => provider.revoke(ref, revokeOptions)),
37
+ verifyInbound: (request, ref) => route(ref, (provider) => provider.verifyInbound === void 0 ? AsyncResult.err(unsupported(provider.name, "doesn't verify inbound requests")) : provider.verifyInbound(request, ref)),
38
+ set: (ref, value, setOptions) => route(ref, (provider) => provider.set === void 0 ? AsyncResult.err(unsupported(provider.name, "can't store secrets")) : provider.set(ref, value, setOptions))
39
+ };
40
+ }
41
+ /**
42
+ * Revokes the credential a ref names when a provider is configured and can
43
+ * revoke it. Resolves `false` without a provider, for a provider without
44
+ * revocation, or for a ref outside `options.tenant`.
45
+ */
46
+ function revokeIfConfigured(provider, ref, options) {
47
+ if (provider === void 0) return AsyncResult.ok(false);
48
+ if ("tenant" in options && !credentialRefInTenant(ref, options.tenant)) return AsyncResult.ok(false);
49
+ if (!provider.capabilities(ref).revoke) return AsyncResult.ok(false);
50
+ return provider.revoke(ref, { subject: options.subject });
51
+ }
52
+ //#endregion
53
+ export { revokeIfConfigured as n, credentialRouter as t };
@@ -0,0 +1,146 @@
1
+ import { a as AnyModels, i as AnyFunctions } from "./types-6BdhkmZe.js";
2
+ import { a as EventHub } from "./events-DWDhx77e.js";
3
+ import { i as CookieScope, s as SessionEncoding } from "./session-ChiXDZdZ.js";
4
+ import { r as AuthState, t as AuthResolution } from "./resolve-KW8nCeL6.js";
5
+ import { b as Db, t as BetterSupabase } from "./define-CJJkkr1-.js";
6
+ import { b as ActiveSupport, g as ReplicaState, i as ServerContext, n as ContextOptions, o as ServerOptions, t as BetterServer } from "./server-CeVeeXwz.js";
7
+ import { d as RefreshPolicy, r as GuardOptions } from "./respond-DoBijysA.js";
8
+ import { SupabaseClient } from "@supabase/supabase-js";
9
+ import { Entry, SingleKeyEntry } from "@supabase/middleware";
10
+ import { AuthMode, JWTClaims, UserClaims } from "@supabase/server";
11
+ //#region src/server/entries/core.d.ts
12
+ /**
13
+ * What the entries need from a `createServer` server: its resolver, its
14
+ * request-scoped context builder and the settings behind them. The server
15
+ * registers it once; entries read it with `serverCore(server)`.
16
+ */
17
+ interface ServerCore<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown> {
18
+ readonly events: EventHub;
19
+ /** How long reads stay on the primary after a write. */
20
+ readonly pinMs: number;
21
+ resolve(request: Request, options: {
22
+ readonly refresh?: boolean;
23
+ readonly cookies?: boolean;
24
+ readonly encode?: SessionEncoding;
25
+ readonly checkSession?: boolean;
26
+ }): Promise<AuthResolution<C, P>>;
27
+ /** The session cookie's name (`auth.cookie.name`, else `sb-<ref>-auth-token`). */
28
+ sessionCookie(): string;
29
+ /** `ServerOptions.tenant`, or `undefined` without one. */
30
+ tenant(request: Request, auth: AuthState<C, P>): string | undefined | PromiseLike<string | undefined>;
31
+ support(request: Request, auth: AuthState<C, P>): Promise<ActiveSupport | undefined>;
32
+ context(resolution: AuthResolution<C, P>, request: Request, options: ContextOptions, tenant: string | undefined): ServerContext<M, F, E, C, P>;
33
+ }
34
+ /** The core of a server built by `createServer` or one of the adapter factories. */
35
+ declare function serverCore<M extends AnyModels, F extends AnyFunctions, E, C, P>(server: {
36
+ readonly events: EventHub;
37
+ context(request: Request): Promise<ServerContext<M, F, E, C, P>>;
38
+ }): ServerCore<M, F, E, C, P>;
39
+ //#endregion
40
+ //#region src/server/entries/guard.d.ts
41
+ interface GuardEntryConfig extends GuardOptions {
42
+ /** Include error messages in problem responses. Defaults to `NODE_ENV === 'development'`. */
43
+ readonly expose?: boolean;
44
+ }
45
+ /**
46
+ * Entry that answers callers `allow`, `aal` or `scopes` refuse with a 401 or
47
+ * 403 Problem Details response, before the handler runs. It contributes
48
+ * `ctx.guard`, the options the caller passed.
49
+ */
50
+ declare function withGuard<C, P>(config?: GuardEntryConfig): SingleKeyEntry<"guard", {
51
+ readonly auth: AuthState<C, P>;
52
+ }, GuardOptions>;
53
+ //#endregion
54
+ //#region src/server/entries/session.d.ts
55
+ interface SessionEntryConfig {
56
+ /**
57
+ * Refresh an expired cookie session and send the new cookies on the
58
+ * response. Only where cookies can be written once per request (a proxy, a
59
+ * framework middleware); never in Server Components. `'navigation'`
60
+ * refreshes page loads, navigations and form posts (`shouldRefresh`), so
61
+ * parallel `fetch` calls never race on the refresh token. Defaults to false.
62
+ */
63
+ readonly refresh?: RefreshPolicy;
64
+ /**
65
+ * Ask the Auth server whether the session still exists, so a session
66
+ * ended elsewhere (sign-out on another device, an admin revoke) is anon
67
+ * here too. One Auth call per matching request: `true` checks every
68
+ * request, `'navigation'` full page loads (`shouldCheckSession`). Off by
69
+ * default, because a valid token otherwise never calls the Auth server.
70
+ */
71
+ readonly checkSession?: boolean | "navigation" | ((request: Request) => boolean);
72
+ /** Read the session cookie. Defaults to true; `false` resolves bearer tokens only. */
73
+ readonly cookies?: boolean;
74
+ /**
75
+ * Keeps the invocation alive for event sink sends the handler started:
76
+ * `EdgeRuntime.waitUntil`, the Workers `ctx.waitUntil` or Next's `after`.
77
+ */
78
+ readonly waitUntil?: (promise: Promise<unknown>) => void;
79
+ /**
80
+ * The shape refreshed sessions are written in, `cookies.encode` in
81
+ * `@supabase/ssr`. Use the browser client's value. Defaults to the
82
+ * server's `auth.cookie.encode`, then `user-and-tokens`.
83
+ */
84
+ readonly encode?: SessionEncoding;
85
+ /**
86
+ * Cookie scopes (`domain`, `path`) earlier deploys wrote the session at.
87
+ * Each response to a request that carries the session cookie expires it
88
+ * at these scopes, like `clearAuthCookiesAtScopes` in `@supabase/ssr`, so
89
+ * moving the cookie to a new domain or path is one config change. Never
90
+ * list the current scope: that clears the live session.
91
+ */
92
+ readonly cookieScopes?: readonly CookieScope[];
93
+ }
94
+ /**
95
+ * Entry contributing `ctx.session`, the request's `AuthResolution`: a bearer
96
+ * token first, the session cookie second. It is the only entry with a
97
+ * response seam for cookies: on the way out it adds the refreshed session
98
+ * cookies and the no-store headers, and hands pending event sends to
99
+ * `waitUntil`.
100
+ */
101
+ declare function withSession<M extends AnyModels, F extends AnyFunctions, E, C, P>(core: ServerCore<M, F, E, C, P>, config?: SessionEntryConfig): SingleKeyEntry<"session", Record<never, never>, AuthResolution<C, P>>;
102
+ //#endregion
103
+ //#region src/server/composite.d.ts
104
+ /** What `withBetterSupabase` takes besides the definition or server. */
105
+ interface BetterSupabaseConfig extends SessionEntryConfig, GuardEntryConfig {}
106
+ /** The keys `withBetterSupabase` puts on `ctx`. */
107
+ interface BetterSupabaseContributions<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown> {
108
+ /** The full request context: `auth`, `supabase`, `stats()`, `apply()` and the rest. */
109
+ bs: ServerContext<M, F, E, C, P>;
110
+ /** The verified token's payload, or `null`; the key `withSupabase` uses. */
111
+ jwtClaims: (JWTClaims & C) | null;
112
+ userClaims: UserClaims | null;
113
+ authMode: AuthMode;
114
+ /** Repositories over PostgREST as the caller. */
115
+ db: Db<M, F, E, SupabaseClient>;
116
+ /** Repositories over direct Postgres as the caller, when Postgres is configured or upstream. */
117
+ sql: Db<M, F, E, undefined> | undefined;
118
+ tenant: string | undefined;
119
+ support: ActiveSupport | undefined;
120
+ replica: ReplicaState | undefined;
121
+ }
122
+ /** The entry `withBetterSupabase` returns, for `pipeline` and the framework bridges. */
123
+ type BetterSupabaseEntry<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown> = Entry<BetterSupabaseContributions<M, F, E, C, P>>;
124
+ /**
125
+ * The whole better-supabase server as one `@supabase/middleware` entry: it
126
+ * verifies the caller (bearer token or session cookie), refuses callers the
127
+ * guard rejects with Problem Details, and contributes `ctx.db`, `ctx.sql`,
128
+ * `ctx.bs` and the `withSupabase` keys (`jwtClaims`, `userClaims`,
129
+ * `authMode`), so `withPostgresClient` and `withOpenFeature` compose after
130
+ * it. Refreshed cookies and `bs-primary-until` go out on the response.
131
+ *
132
+ * ```ts
133
+ * export default {
134
+ * fetch: pipeline([withBetterSupabase(betterSupabase)], async (req, ctx) =>
135
+ * Response.json(await ctx.db.notes.findMany().orThrow())),
136
+ * }
137
+ * ```
138
+ *
139
+ * Pass a server from `createServer` to share its clients and JWKS cache
140
+ * with the rest of the app; pass the definition to build one with
141
+ * `config`'s server options.
142
+ */
143
+ declare function withBetterSupabase<M extends AnyModels, D, F extends AnyFunctions, E, C = unknown, P = unknown>(betterSupabase: BetterSupabase<M, D, F, E, C, P>, config?: BetterSupabaseConfig & ServerOptions): BetterSupabaseEntry<M, F, E, C, P>;
144
+ declare function withBetterSupabase<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown>(server: BetterServer<M, F, E, C, P>, config?: BetterSupabaseConfig): BetterSupabaseEntry<M, F, E, C, P>;
145
+ //#endregion
146
+ export { SessionEntryConfig as a, withGuard as c, withBetterSupabase as i, ServerCore as l, BetterSupabaseContributions as n, withSession as o, BetterSupabaseEntry as r, GuardEntryConfig as s, BetterSupabaseConfig as t, serverCore as u };
@@ -0,0 +1,130 @@
1
+ import { a as problemResponse } from "./problem-BreOl8b8.js";
2
+ import { C as serverCore, S as withServerContext, _ as withSession, g as withSupport, h as withTenant, s as createServer } from "./adapter-Bc1o3zyy.js";
3
+ import { s as withPrimaryPin } from "./replicas-CwrYp5Zj.js";
4
+ import { r as guard, t as defaultExpose } from "./respond-BUgsXNgk.js";
5
+ import { a as withAuthMode, i as withAuth, o as withJwtClaims, s as withUserClaims } from "./claims-DDBQT6BK.js";
6
+ import { defineComposite, defineMiddleware } from "@supabase/middleware";
7
+ //#region src/server/entries/db.ts
8
+ /**
9
+ * Entry contributing `ctx.db`: repositories over PostgREST as the caller
10
+ * (RLS applies), from `ctx.bs`. Reads go to the read replica when one is
11
+ * configured.
12
+ */
13
+ function withDb() {
14
+ return defineMiddleware({
15
+ key: "db",
16
+ run: () => (_request, ctx) => Promise.resolve({ db: ctx.bs.db })
17
+ })();
18
+ }
19
+ //#endregion
20
+ //#region src/server/entries/guard.ts
21
+ /**
22
+ * Entry that answers callers `allow`, `aal` or `scopes` refuse with a 401 or
23
+ * 403 Problem Details response, before the handler runs. It contributes
24
+ * `ctx.guard`, the options the caller passed.
25
+ */
26
+ function withGuard(config = {}) {
27
+ const { expose = defaultExpose(), ...options } = config;
28
+ return defineMiddleware({
29
+ key: "guard",
30
+ run: () => (request, ctx) => {
31
+ const denied = guard(ctx.auth, options.allow, options.aal, options.scopes);
32
+ return Promise.resolve(denied ? problemResponse(denied, {
33
+ instance: new URL(request.url).pathname,
34
+ expose
35
+ }) : { guard: options });
36
+ }
37
+ })();
38
+ }
39
+ //#endregion
40
+ //#region src/server/entries/replica.ts
41
+ /**
42
+ * Entry contributing `ctx.replica`, where `ctx.db` reads go when a read URL
43
+ * is configured (`undefined` without one). On the way out it sets the
44
+ * `bs-primary-until` cookie after a write, so the caller's next reads see it.
45
+ */
46
+ function withReplica(core) {
47
+ return defineMiddleware({
48
+ key: "replica",
49
+ run: () => async function* (_request, ctx) {
50
+ const { replica } = ctx.bs;
51
+ const response = yield { replica };
52
+ return withPrimaryPin(response, ctx.bs.replica, core.pinMs);
53
+ }
54
+ })();
55
+ }
56
+ //#endregion
57
+ //#region src/server/entries/sql.ts
58
+ /**
59
+ * Entry contributing `ctx.sql`: repositories over direct Postgres as the
60
+ * caller, with RLS, from `createServer`'s `postgres`, else `undefined`.
61
+ * `withPostgresClient` reads `jwtClaims`, so it runs after this entry and
62
+ * can't back `ctx.sql`; importing the SQL compiler here would also ship it
63
+ * to every app without Postgres.
64
+ */
65
+ function withSql() {
66
+ return defineMiddleware({
67
+ key: "sql",
68
+ run: () => (_request, ctx) => Promise.resolve({ sql: ctx.bs.sql })
69
+ })();
70
+ }
71
+ //#endregion
72
+ //#region src/server/composite.ts
73
+ /**
74
+ * The single-key entries `withBetterSupabase` bundles, outermost first. The
75
+ * framework factories run these directly, so their terminal sees `auth`.
76
+ */
77
+ function betterSupabaseParts(core, config = {}) {
78
+ const { refresh, cookies, waitUntil, encode, cookieScopes, checkSession, ...guardConfig } = config;
79
+ return [
80
+ withSession(core, {
81
+ ...refresh === void 0 ? {} : { refresh },
82
+ ...cookies === void 0 ? {} : { cookies },
83
+ ...waitUntil === void 0 ? {} : { waitUntil },
84
+ ...encode === void 0 ? {} : { encode },
85
+ ...cookieScopes === void 0 ? {} : { cookieScopes },
86
+ ...checkSession === void 0 ? {} : { checkSession }
87
+ }),
88
+ withTenant(core),
89
+ withSupport(core),
90
+ withServerContext(core),
91
+ withAuth(),
92
+ withGuard(guardConfig),
93
+ withJwtClaims(),
94
+ withUserClaims(),
95
+ withAuthMode(),
96
+ withDb(),
97
+ withSql(),
98
+ withReplica(core)
99
+ ];
100
+ }
101
+ function isDefinition(source) {
102
+ return "connect" in source && typeof source.connect === "function";
103
+ }
104
+ function withBetterSupabase(source, config = {}) {
105
+ const server = isDefinition(source) ? createServer(source, config) : source;
106
+ const core = serverCore(server);
107
+ const { refresh, cookies, waitUntil, encode, cookieScopes, checkSession, allow, aal, scopes, expose } = config;
108
+ const parts = betterSupabaseParts(core, {
109
+ ...refresh === void 0 ? {} : { refresh },
110
+ ...cookies === void 0 ? {} : { cookies },
111
+ ...waitUntil === void 0 ? {} : { waitUntil },
112
+ ...encode === void 0 ? {} : { encode },
113
+ ...cookieScopes === void 0 ? {} : { cookieScopes },
114
+ ...checkSession === void 0 ? {} : { checkSession },
115
+ ...allow === void 0 ? {} : { allow },
116
+ ...aal === void 0 ? {} : { aal },
117
+ ...scopes === void 0 ? {} : { scopes },
118
+ ...expose === void 0 ? {} : { expose }
119
+ });
120
+ return defineComposite({
121
+ build: () => parts,
122
+ internal: [
123
+ "session",
124
+ "auth",
125
+ "guard"
126
+ ]
127
+ })();
128
+ }
129
+ //#endregion
130
+ export { withGuard as n, withBetterSupabase as t };
@@ -1,4 +1,6 @@
1
- import { o as Casing } from "../types-Dnf_wRDz.js";
2
- import { $ as GeneratorMetadata, A as VectorSearchConfig, B as CatalogFunction, C as SoftDeleteConfig, D as TenantConfig, E as TableConfig, F as CatalogCheck, G as CatalogTable, H as CatalogGrant, I as CatalogColumn, J as ExtrasFunction, K as CatalogTrigger, L as CatalogColumnGrant, M as resolveConfig, N as resolveJsonSchema, O as TimestampsConfig, P as Catalog, Q as ForeignKeyAction, R as CatalogEnum, S as SeedConfig, T as SqlConfig, U as CatalogIndex, V as CatalogFunctionArg, W as CatalogPolicy, X as ExtrasHookFunction, Y as ExtrasHook, Z as ExtrasTable, _ as PluginFlagsConfig, a as ClaimsConfig, at as DEFAULT_ACTIVE_TENANT, b as ResolvedConfig, c as EntitlementsConfig, ct as KitsConfig, d as Generator, et as Snapshot, f as GeneratorInput, g as PermdockPathsConfig, h as OpenApiConfig, i as CONFIG_SCHEMA_URL, it as ActiveTenantSource, j as defineConfig, k as VectorDistance, l as ExposeConfig, m as JsonTypeConfig, n as BetterSupabaseConfig, nt as SnapshotExtras, o as CodecsConfig, ot as KitMode, p as JsonSchemaSource, q as CatalogUnique, r as BucketConfig, rt as AccessKitConfig, s as DoctorConfig, st as KitModuleConfig, t as ActorConfig, tt as SnapshotBucket, u as GeneratedFile, v as Privilege, w as SourceConfig, x as ResolvedExpose, y as RealtimeConfig, z as CatalogForeignKey } from "../config-T_ejwyd3.js";
3
- import { a as JsonSchemaGeneratorOptions, c as DEFAULT_CLAIMS, i as valibot, l as tenantClaimPaths, n as zod, o as buildJsonSchema, r as ValibotGeneratorOptions, s as jsonSchema, t as ZodGeneratorOptions } from "../index-Dxn2a5cw.js";
4
- export { type AccessKitConfig, type ActiveTenantSource, type ActorConfig, type BetterSupabaseConfig, type BucketConfig, CONFIG_SCHEMA_URL, type Casing, type Catalog, type CatalogCheck, type CatalogColumn, type CatalogColumnGrant, type CatalogEnum, type CatalogForeignKey, type CatalogFunction, type CatalogFunctionArg, type CatalogGrant, type CatalogIndex, type CatalogPolicy, type CatalogTable, type CatalogTrigger, type CatalogUnique, type ClaimsConfig, type CodecsConfig, DEFAULT_ACTIVE_TENANT, DEFAULT_CLAIMS, type DoctorConfig, type EntitlementsConfig, type ExposeConfig, type ExtrasFunction, type ExtrasHook, type ExtrasHookFunction, type ExtrasTable, type ForeignKeyAction, type GeneratedFile, type Generator, type GeneratorInput, type GeneratorMetadata, type JsonSchemaGeneratorOptions, type JsonSchemaSource, type JsonTypeConfig, type KitMode, type KitModuleConfig, type KitsConfig, type OpenApiConfig, type PermdockPathsConfig, type PluginFlagsConfig, type Privilege, type RealtimeConfig, type ResolvedConfig, type ResolvedExpose, type SeedConfig, type Snapshot, type SnapshotBucket, type SnapshotExtras, type SoftDeleteConfig, type SourceConfig, type SqlConfig, type TableConfig, type TenantConfig, type TimestampsConfig, type ValibotGeneratorOptions, type VectorDistance, type VectorSearchConfig, type ZodGeneratorOptions, buildJsonSchema, defineConfig, jsonSchema, resolveConfig, resolveJsonSchema, tenantClaimPaths, valibot, zod };
1
+ import { c as Casing } from "../types-6BdhkmZe.js";
2
+ import { a as ModuleConfig, i as DisabledRow, n as ActiveTenantSource, o as ModuleMode, r as DEFAULT_ACTIVE_TENANT, s as ModulesConfig, t as AccessModuleConfig } from "../modules-DpPwzC7E.js";
3
+ import { a as AuthorizationRequirement, c as AuthorizationTokenHook, i as AuthorizationProvider, l as providerApiProblem, n as AuthorizationMembership, o as AuthorizationRoleSource, r as AuthorizationPermission, s as AuthorizationScope, t as AuthorizationFunctions } from "../authorization-BFCqamMs.js";
4
+ import { $ as CatalogTable, A as SeedConfig, B as resolveConfig, C as PluginFlagsConfig, D as ResolvedConfig, E as RelationsConfig, F as TenantConfig, G as CatalogColumnGrant, H as Catalog, I as TimestampsConfig, J as CatalogFunction, K as CatalogEnum, L as VectorDistance, M as SourceConfig, N as SqlConfig, O as ResolvedExpose, P as TableConfig, Q as CatalogPolicy, R as VectorSearchConfig, S as OpenApiConfig, T as RealtimeConfig, U as CatalogCheck, V as resolveJsonSchema, W as CatalogColumn, X as CatalogGrant, Y as CatalogFunctionArg, Z as CatalogIndex, _ as GeneratorInput, a as ClaimsConfig, at as ExtrasTable, b as JsonSchemaSource, c as DoctorConfig, ct as SnapshotBucket, d as ExposeConfig, dt as PostgresColumn, et as CatalogTrigger, f as ExposePrivilege, ft as PostgresFunction, g as GeneratorColumn, h as Generator, i as CONFIG_SCHEMA_URL, it as ExtrasHookFunction, j as SoftDeleteConfig, k as ResolvedSqlConfig, l as EntitlementPlansSource, lt as SnapshotExtras, m as GeneratedFile, n as BetterSupabaseConfig, nt as ExtrasFunction, o as CodecsConfig, ot as ForeignKeyAction, p as ExposeRole, pt as PostgresFunctionArg, q as CatalogForeignKey, r as BucketConfig, rt as ExtrasHook, s as ColumnPrivilege, st as Snapshot, t as ActorConfig, tt as CatalogUnique, u as EntitlementsConfig, ut as GeneratorMetadata, v as GeneratorModel, w as Privilege, x as JsonTypeConfig, y as GeneratorTable, z as defineConfig } from "../config-D44Y7PAv.js";
5
+ import { a as JsonSchemaGeneratorOptions, c as ClaimPaths, d as tenantClaimPaths, i as valibot, l as DEFAULT_CLAIMS, n as zod, o as buildJsonSchema, r as ValibotGeneratorOptions, s as jsonSchema, t as ZodGeneratorOptions, u as claimPaths } from "../index-DQh4VCc9.js";
6
+ export { type AccessModuleConfig, type ActiveTenantSource, type ActorConfig, type AuthorizationFunctions, type AuthorizationMembership, type AuthorizationPermission, type AuthorizationProvider, type AuthorizationRequirement, type AuthorizationRoleSource, type AuthorizationScope, type AuthorizationTokenHook, type BetterSupabaseConfig, type BucketConfig, CONFIG_SCHEMA_URL, type Casing, type Catalog, type CatalogCheck, type CatalogColumn, type CatalogColumnGrant, type CatalogEnum, type CatalogForeignKey, type CatalogFunction, type CatalogFunctionArg, type CatalogGrant, type CatalogIndex, type CatalogPolicy, type CatalogTable, type CatalogTrigger, type CatalogUnique, type ClaimPaths, type ClaimsConfig, type CodecsConfig, type ColumnPrivilege, DEFAULT_ACTIVE_TENANT, DEFAULT_CLAIMS, type DisabledRow, type DoctorConfig, type EntitlementPlansSource, type EntitlementsConfig, type ExposeConfig, type ExposePrivilege, type ExposeRole, type ExtrasFunction, type ExtrasHook, type ExtrasHookFunction, type ExtrasTable, type ForeignKeyAction, type GeneratedFile, type Generator, type GeneratorColumn, type GeneratorInput, type GeneratorMetadata, type GeneratorModel, type GeneratorTable, type JsonSchemaGeneratorOptions, type JsonSchemaSource, type JsonTypeConfig, type ModuleConfig, type ModuleMode, type ModulesConfig, type OpenApiConfig, type PluginFlagsConfig, type PostgresColumn, type PostgresFunction, type PostgresFunctionArg, type Privilege, type RealtimeConfig, type RelationsConfig, type ResolvedConfig, type ResolvedExpose, type ResolvedSqlConfig, type SeedConfig, type Snapshot, type SnapshotBucket, type SnapshotExtras, type SoftDeleteConfig, type SourceConfig, type SqlConfig, type TableConfig, type TenantConfig, type TimestampsConfig, type ValibotGeneratorOptions, type VectorDistance, type VectorSearchConfig, type ZodGeneratorOptions, buildJsonSchema, claimPaths, defineConfig, jsonSchema, providerApiProblem, resolveConfig, resolveJsonSchema, tenantClaimPaths, valibot, zod };
@@ -1,5 +1,5 @@
1
- import { i as tenantClaimPaths, t as DEFAULT_CLAIMS } from "../claims-BAf6c7is.js";
2
- import { a as resolveConfig, i as defineConfig, o as resolveJsonSchema, r as CONFIG_SCHEMA_URL, t as DEFAULT_ACTIVE_TENANT } from "../kits-CGLLrNPd.js";
3
- import { n as jsonSchema, t as buildJsonSchema } from "../json-schema-m1fiwKgN.js";
4
- import { n as valibot, t as zod } from "../config-DreERlKo.js";
5
- export { CONFIG_SCHEMA_URL, DEFAULT_ACTIVE_TENANT, DEFAULT_CLAIMS, buildJsonSchema, defineConfig, jsonSchema, resolveConfig, resolveJsonSchema, tenantClaimPaths, valibot, zod };
1
+ import { a as tenantClaimPaths, r as claimPaths, t as DEFAULT_CLAIMS } from "../claims-PqzCxaTD.js";
2
+ import { a as resolveConfig, i as defineConfig, o as resolveJsonSchema, r as CONFIG_SCHEMA_URL, s as providerApiProblem, t as DEFAULT_ACTIVE_TENANT } from "../modules-dxrVK3ID.js";
3
+ import { n as jsonSchema, t as buildJsonSchema } from "../json-schema-CvER4kgT.js";
4
+ import { n as valibot, t as zod } from "../config-Dn7F5k9A.js";
5
+ export { CONFIG_SCHEMA_URL, DEFAULT_ACTIVE_TENANT, DEFAULT_CLAIMS, buildJsonSchema, claimPaths, defineConfig, jsonSchema, providerApiProblem, resolveConfig, resolveJsonSchema, tenantClaimPaths, valibot, zod };