better-supabase 0.7.1 → 0.8.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 (499) hide show
  1. package/README.md +6 -2
  2. package/dist/{access-sql-B0dF-SoF.js → access-sql-CrSbK1q-.js} +1 -1
  3. package/dist/{adapter-iKgjHVPx.js → adapter-CN45ibbV.js} +658 -157
  4. package/dist/{agents-CVHGd7It.d.ts → agents-BY_LQXtQ.d.ts} +4 -4
  5. package/dist/{ai-cache-CBWs1W0k.js → ai-cache-Dfgk8nBT.js} +2 -1
  6. package/dist/{ai-cache-DaDu_G5L.d.ts → ai-cache-DrUMMgp6.d.ts} +4 -4
  7. package/dist/{ai-chat-B24UI962.js → ai-chat-CVLRWbtS.js} +4 -3
  8. package/dist/{ai-chat-7amvXjmQ.d.ts → ai-chat-DXkMy74O.d.ts} +5 -5
  9. package/dist/{ai-files-CSPNswUY.js → ai-files-CioLu5du.js} +5 -4
  10. package/dist/ai-message-DfaP8sis.js +14 -0
  11. package/dist/ai-sdk/agents/index.d.ts +4 -4
  12. package/dist/ai-sdk/batches/index.d.ts +4 -4
  13. package/dist/ai-sdk/batches/index.js +4 -4
  14. package/dist/ai-sdk/cache/index.d.ts +2 -2
  15. package/dist/ai-sdk/cache/index.js +2 -2
  16. package/dist/ai-sdk/chat/index.d.ts +1 -1
  17. package/dist/ai-sdk/chat/index.js +8 -20
  18. package/dist/ai-sdk/embeddings/index.d.ts +2 -2
  19. package/dist/ai-sdk/files/index.d.ts +3 -3
  20. package/dist/ai-sdk/files/index.js +4 -4
  21. package/dist/ai-sdk/index.d.ts +37 -9
  22. package/dist/ai-sdk/index.js +3 -2
  23. package/dist/ai-sdk/mcp/index.d.ts +43 -6
  24. package/dist/ai-sdk/mcp/index.js +36 -7
  25. package/dist/ai-sdk/memory/index.d.ts +2 -2
  26. package/dist/ai-sdk/memory/index.js +1 -1
  27. package/dist/ai-sdk/workflow/index.d.ts +6 -6
  28. package/dist/ai-sdk/workflow/index.js +13 -24
  29. package/dist/{ai-tasks-Cd1HMFvB.d.ts → ai-tasks-BRQ6iQLc.d.ts} +4 -4
  30. package/dist/{announcements-ZRGnScWI.d.ts → announcements-Bouy0Ski.d.ts} +3 -3
  31. package/dist/{announcements-CiyOs-xP.js → announcements-p_BFofiR.js} +1 -1
  32. package/dist/api-Dnf2q-Ht.d.ts +370 -0
  33. package/dist/api-DtHFC037.js +676 -0
  34. package/dist/{api-keys-CIjghYjV.d.ts → api-keys-C8BlF3L2.d.ts} +4 -4
  35. package/dist/arazzo/index.d.ts +255 -0
  36. package/dist/arazzo/index.js +622 -0
  37. package/dist/{assistant-DwdpDH1q.d.ts → assistant-DBlFDZsi.d.ts} +5 -5
  38. package/dist/astro/index.d.ts +7 -7
  39. package/dist/astro/index.js +7 -7
  40. package/dist/asyncapi/index.d.ts +103 -0
  41. package/dist/asyncapi/index.js +569 -0
  42. package/dist/authorizer-ayxUDXXP.js +126 -0
  43. package/dist/authorizer-eiOjo-3l.d.ts +73 -0
  44. package/dist/better-result/index.d.ts +118 -0
  45. package/dist/better-result/index.js +64 -0
  46. package/dist/{bind-l4kAvYSv.js → bind-ButSzrHe.js} +1 -1
  47. package/dist/{bind-Bu_ZNa3W.d.ts → bind-CQ5mPyX1.d.ts} +3 -3
  48. package/dist/{block-events-CrT8r7Fe.js → block-events-DTxU5tfr.js} +18 -3
  49. package/dist/{block-fields-GFkxl4dP.js → block-fields-CroxUuF2.js} +3 -3
  50. package/dist/{block-fields-SJ6fEf3o.d.ts → block-fields-D1pfrcIY.d.ts} +2 -2
  51. package/dist/{block-helpers-CKtbFcRv.d.ts → block-helpers-C0Xj8War.d.ts} +2 -2
  52. package/dist/{block-helpers-DWHxHsEQ.js → block-helpers-Cy3pB96I.js} +41 -9
  53. package/dist/{block-hooks-BmjMyXTa.js → block-hooks-BPNMIlLl.js} +3 -3
  54. package/dist/{block-hooks-plbZ0AbJ.d.ts → block-hooks-DaOVC7SC.d.ts} +3 -3
  55. package/dist/{block-transport-BLr-ZgLc.js → block-transport-bAKh-dGc.js} +28 -2
  56. package/dist/{block-transport-DvaoPuZ9.d.ts → block-transport-inD4fFq-.d.ts} +24 -2
  57. package/dist/blocks/agents/index.d.ts +3 -3
  58. package/dist/blocks/agents/index.js +5 -4
  59. package/dist/blocks/ai-cache/index.d.ts +3 -3
  60. package/dist/blocks/ai-cache/index.js +3 -3
  61. package/dist/blocks/ai-chat/index.d.ts +9 -4
  62. package/dist/blocks/ai-chat/index.js +5 -5
  63. package/dist/blocks/ai-chat/react/index.d.ts +3 -3
  64. package/dist/blocks/ai-chat/react/index.js +5 -5
  65. package/dist/blocks/ai-files/index.d.ts +3 -3
  66. package/dist/blocks/ai-files/index.js +3 -3
  67. package/dist/blocks/ai-providers/index.d.ts +3 -3
  68. package/dist/blocks/ai-providers/index.js +8 -7
  69. package/dist/blocks/ai-tasks/index.d.ts +3 -3
  70. package/dist/blocks/ai-tasks/index.js +7 -6
  71. package/dist/blocks/announcements/index.d.ts +3 -3
  72. package/dist/blocks/announcements/index.js +3 -3
  73. package/dist/blocks/announcements/react/index.d.ts +3 -3
  74. package/dist/blocks/announcements/react/index.js +3 -3
  75. package/dist/blocks/api-keys/index.d.ts +5 -5
  76. package/dist/blocks/api-keys/index.js +8 -8
  77. package/dist/blocks/attachments/index.d.ts +12 -8
  78. package/dist/blocks/attachments/index.js +22 -13
  79. package/dist/blocks/audit/index.d.ts +21 -10
  80. package/dist/blocks/audit/index.js +30 -11
  81. package/dist/blocks/billing/index.d.ts +11 -9
  82. package/dist/blocks/billing/index.js +15 -15
  83. package/dist/blocks/comments/index.d.ts +8 -8
  84. package/dist/blocks/comments/index.js +8 -7
  85. package/dist/blocks/connectors/index.d.ts +3 -3
  86. package/dist/blocks/connectors/index.js +7 -6
  87. package/dist/blocks/data-lifecycle/index.d.ts +12 -8
  88. package/dist/blocks/data-lifecycle/index.js +13 -8
  89. package/dist/blocks/entitlements/index.d.ts +3 -3
  90. package/dist/blocks/entitlements/index.js +1 -1
  91. package/dist/blocks/flags/index.d.ts +4 -4
  92. package/dist/blocks/flags/index.js +4 -3
  93. package/dist/blocks/inbox/index.d.ts +3 -3
  94. package/dist/blocks/inbox/index.js +4 -5
  95. package/dist/blocks/inbox/react/index.d.ts +1 -1
  96. package/dist/blocks/inbox/react/index.js +1 -1
  97. package/dist/blocks/inbox/react/server.d.ts +1 -1
  98. package/dist/blocks/index.d.ts +10 -10
  99. package/dist/blocks/index.js +6 -6
  100. package/dist/blocks/jobs/index.d.ts +48 -32
  101. package/dist/blocks/jobs/index.js +44 -287
  102. package/dist/blocks/knowledge/index.d.ts +3 -3
  103. package/dist/blocks/knowledge/index.js +3 -3
  104. package/dist/blocks/memory/index.d.ts +4 -4
  105. package/dist/blocks/memory/index.js +7 -6
  106. package/dist/blocks/notifications/index.d.ts +11 -9
  107. package/dist/blocks/notifications/index.js +20 -25
  108. package/dist/blocks/notifications/react/index.d.ts +1 -1
  109. package/dist/blocks/notifications/react/index.js +1 -1
  110. package/dist/blocks/onboarding/index.d.ts +3 -3
  111. package/dist/blocks/onboarding/index.js +3 -3
  112. package/dist/blocks/onboarding/react/index.d.ts +2 -2
  113. package/dist/blocks/onboarding/react/index.js +2 -2
  114. package/dist/blocks/onboarding/react/server.d.ts +1 -1
  115. package/dist/blocks/organizations/index.d.ts +9 -9
  116. package/dist/blocks/organizations/index.js +11 -18
  117. package/dist/blocks/outbox/index.d.ts +2 -2
  118. package/dist/blocks/outbox/index.js +16 -25
  119. package/dist/blocks/profiles/index.d.ts +7 -7
  120. package/dist/blocks/profiles/index.js +7 -6
  121. package/dist/blocks/push/index.d.ts +4 -4
  122. package/dist/blocks/push/index.js +3 -3
  123. package/dist/blocks/settings/index.d.ts +4 -4
  124. package/dist/blocks/settings/index.js +7 -6
  125. package/dist/blocks/sso/index.d.ts +5 -5
  126. package/dist/blocks/sso/index.js +6 -5
  127. package/dist/blocks/usage/index.d.ts +3 -3
  128. package/dist/blocks/usage/index.js +5 -4
  129. package/dist/blocks/waitlist/index.d.ts +5 -5
  130. package/dist/blocks/waitlist/index.js +5 -4
  131. package/dist/blocks/webhooks/index.d.ts +22 -13
  132. package/dist/blocks/webhooks/index.js +41 -70
  133. package/dist/blocks/workflow-builder/index.d.ts +4 -4
  134. package/dist/blocks/workflow-builder/index.js +3 -3
  135. package/dist/blocks/workflow-builder/react/index.d.ts +4 -4
  136. package/dist/blocks/workflow-builder/react/index.js +4 -4
  137. package/dist/blocks/workflows/index.d.ts +3 -3
  138. package/dist/blocks/workflows/index.js +3 -3
  139. package/dist/blocks/workflows/react/index.d.ts +3 -3
  140. package/dist/blocks/workflows/react/index.js +3 -3
  141. package/dist/build-hPwk3_X5.js +1296 -0
  142. package/dist/{build-BXIzE6Xv.js → build-meLuYGri.js} +3 -3
  143. package/dist/casing-DdFWEtqr.js +16 -0
  144. package/dist/chat-sdk/index.d.ts +6 -6
  145. package/dist/chat-sdk/index.js +5 -4
  146. package/dist/chat-sdk/react/index.d.ts +1 -1
  147. package/dist/chat-sdk/react/server.d.ts +1 -1
  148. package/dist/{claims-DDBQT6BK.js → claims-0KZVT804.js} +1 -1
  149. package/dist/cli/add-1dc5wM5k.js +69 -0
  150. package/dist/cli/arazzo-1.0-BalU61-_.js +532 -0
  151. package/dist/cli/arazzo-1.1-Bnfasbun.js +705 -0
  152. package/dist/cli/asyncapi-3.0.0-C78dBjR6.js +5593 -0
  153. package/dist/cli/asyncapi-3.1.0-g-7aIfV1.js +5833 -0
  154. package/dist/cli/bin.js +4 -4
  155. package/dist/cli/cache-CIfA-jBV.js +483 -0
  156. package/dist/cli/{codemod-Bl_tQpHn.js → codemod-JVlTQQG2.js} +4 -4
  157. package/dist/cli/{command-CK14fP91.js → command-DV-StG1x.js} +5 -0
  158. package/dist/cli/{config-DU7EJImt.js → config-C2Pz2_4A.js} +7 -4
  159. package/dist/cli/config-DpbF8ML3.js +2 -0
  160. package/dist/cli/{config-NiPxAmUF.js → config-M-WzL9O2.js} +116 -18
  161. package/dist/cli/{db-DOBPt660.js → db-BkcfOlyB.js} +2 -1
  162. package/dist/cli/{diff-SjkO5rNr.js → diff-D1jGdb3Y.js} +1 -1
  163. package/dist/cli/{doctor-DJk0aeBi.js → doctor-VcDtuusV.js} +316 -221
  164. package/dist/cli/emit-BHHfwUoT.js +1136 -0
  165. package/dist/cli/{env-qXgyMV6r.js → env-B--LMhEe.js} +13 -10
  166. package/dist/cli/env-vzBG90Um.js +2 -0
  167. package/dist/cli/{env-CJLbUVPB.js → env-zHJtMIBo.js} +11 -3
  168. package/dist/cli/{errors-4v4DTtda.js → errors-CqTLXe2M.js} +18 -2
  169. package/dist/cli/{fastest-levenshtein-CFN-lNDv.js → fastest-levenshtein-CF7BCi9l.js} +1 -1
  170. package/dist/cli/files-BVupXPIC.js +34 -0
  171. package/dist/cli/gen-DmVj3u4L.js +322 -0
  172. package/dist/cli/{init-BHuEQrQK.js → glue-C1UE8gQN.js} +16 -313
  173. package/dist/cli/index.d.ts +59 -31
  174. package/dist/cli/index.js +8 -6
  175. package/dist/cli/init-CVZ3s5kl.js +258 -0
  176. package/dist/cli/{introspect-DzR2nyQb.js → introspect-BToGNfm-.js} +14 -14
  177. package/dist/cli/{io-DI1mTdSA.js → io-CFzJVJ68.js} +5 -1
  178. package/dist/cli/{keys-BGCnnb-s.js → keys-CJhtIxJ3.js} +4 -4
  179. package/dist/cli/metadata-DSRKCaf-.js +133 -0
  180. package/dist/cli/names-D6LrQnOv.js +6 -0
  181. package/dist/cli/openapi-3.0-t7xwkuRH.js +928 -0
  182. package/dist/cli/openapi-3.1-CVze7tBS.js +870 -0
  183. package/dist/cli/openapi-3.2-CFoMYM01.js +1031 -0
  184. package/dist/cli/{openapi-BlRJ18s3.js → openapi-DWa4Ir1q.js} +8 -14
  185. package/dist/cli/prompts-BdeVmVpg.js +2 -0
  186. package/dist/cli/{prompts-BNcNfAve.js → prompts-DZJB1nTw.js} +6 -6
  187. package/dist/cli/{rolldown-runtime-BPOCksWG.js → rolldown-runtime-CMFfr-1z.js} +3 -1
  188. package/dist/cli/run-DA6_lg3w.js +389 -0
  189. package/dist/cli/run-DuN1MX-7.js +705 -0
  190. package/dist/cli/scaffold-5DenHSxF.js +292 -0
  191. package/dist/cli/scaffold-CwQUMFRb.js +2 -0
  192. package/dist/cli/{seed-DQzqT7LP.js → seed-CzBmrGON.js} +14 -18
  193. package/dist/cli/seed-DOmit9Hq.js +2 -0
  194. package/dist/cli/{skills-QQs4q68J.js → skills-CnO8QFS7.js} +7 -6
  195. package/dist/cli/snapshot-Bstk6ulj.js +287 -0
  196. package/dist/cli/source-args-BYfq6imV.js +31 -0
  197. package/dist/cli/spec-CzosTYm3.js +7438 -0
  198. package/dist/cli/spec-T_0Bcyw7.js +2 -0
  199. package/dist/cli/{sql-B8csQPyn.js → sql-BKOOQAX3.js} +240 -218
  200. package/dist/cli/sql-DJrNDxQm.js +3 -0
  201. package/dist/cli/{style-C0NFdJRL.js → style-CB3vxgh0.js} +3 -3
  202. package/dist/cli/typegen-Demi5-VQ.js +486 -0
  203. package/dist/cli/validate-Ca13ktgz.js +7522 -0
  204. package/dist/cli/{version-59gcepIG.js → version-B4k0aUxS.js} +1 -1
  205. package/dist/client/index.d.ts +4 -3
  206. package/dist/client/index.js +60 -3
  207. package/dist/client/native/index.d.ts +3 -3
  208. package/dist/client/native/index.js +3 -3
  209. package/dist/{client-CI0Z2zWX.js → client-wxeTQFtB.js} +36 -3
  210. package/dist/{clone-BfgmLU90.js → clone-dN9XOL1K.js} +9 -1
  211. package/dist/{cloud-event-BnmD5fb9.js → cloud-event-CTh9Sr5w.js} +16 -2
  212. package/dist/{cloud-event-C1JCc1bH.d.ts → cloud-event-Dune0KI7.d.ts} +16 -2
  213. package/dist/{compiler-DY_wkj4R.d.ts → compiler-V1qvcST1.d.ts} +2 -2
  214. package/dist/{compose-BIBNgAnq.js → compose-BHej1acw.js} +3 -3
  215. package/dist/{composite--yqry7uW.d.ts → composite-CWAJTRBF.d.ts} +6 -6
  216. package/dist/{composite-DXVUibdi.js → composite-zTe0TCqj.js} +4 -4
  217. package/dist/config/index.d.ts +3 -4
  218. package/dist/config/index.js +4 -4
  219. package/dist/config-DlKvtt95.js +540 -0
  220. package/dist/{connector-Dv8kK0MO.d.ts → connector-CySQEFcW.d.ts} +1 -1
  221. package/dist/{connectors-CrpknU0P.d.ts → connectors--PGhmiu0.d.ts} +4 -4
  222. package/dist/{context-BCrWe7ow.d.ts → context-DsV2SueA.d.ts} +11 -2
  223. package/dist/context-nPDvQ-Zl.js +41 -0
  224. package/dist/credentials/index.d.ts +5 -5
  225. package/dist/credentials/index.js +9 -17
  226. package/dist/{cron-DVPUg5k3.js → cron-D25Ukpxy.js} +1 -1
  227. package/dist/cron-route-D2AN9SA1.js +24 -0
  228. package/dist/{csv-DCK-PT1n.js → csv-BZnHA1Py.js} +1 -1
  229. package/dist/{define-B-TVjC25.js → define-CFQcvM20.js} +263 -229
  230. package/dist/{define-CJJkkr1-.d.ts → define-DmcfoNXB.d.ts} +136 -111
  231. package/dist/edge/index.d.ts +66 -13
  232. package/dist/edge/index.js +65 -39
  233. package/dist/elysia/index.d.ts +1 -1
  234. package/dist/elysia/index.js +1 -1
  235. package/dist/{embeddings-C9KGQnXt.d.ts → embeddings-B4vhS-dY.d.ts} +1 -1
  236. package/dist/{ended-XjeGQ5XW.d.ts → ended-CcvcRqEd.d.ts} +7 -1
  237. package/dist/{entitlements-DRl6ZJUm.js → entitlements-BYFf0Cdh.js} +2 -2
  238. package/dist/{entitlements-BKSVGtrG.d.ts → entitlements-Ds8qoYZ-.d.ts} +1 -1
  239. package/dist/env/index.d.ts +1 -1
  240. package/dist/env/index.js +9 -2
  241. package/dist/{errors-B11Duf73.js → errors-2M6CKMP4.js} +5 -0
  242. package/dist/{errors-DLjJHPLK.js → errors-rZ7VIqp6.js} +2 -2
  243. package/dist/{escape-like-ImTK0ps_.d.ts → escape-like-DDWoHzh_.d.ts} +1 -1
  244. package/dist/eve/index.d.ts +5 -5
  245. package/dist/eve/index.js +5 -11
  246. package/dist/{eve-gT2Fpjut.d.ts → eve-CoAIcCkq.d.ts} +2 -2
  247. package/dist/events/index.d.ts +4 -4
  248. package/dist/events/index.js +7 -2
  249. package/dist/{events-DWDhx77e.d.ts → events-D1BOCll8.d.ts} +6 -4
  250. package/dist/{executor-Bq28caBo.js → executor-B-fD7DLt.js} +52 -35
  251. package/dist/executor-B_Hfobee.js +162 -0
  252. package/dist/{executor-BVBFM86G.d.ts → executor-CpxLPCiz.d.ts} +1 -1
  253. package/dist/{executor-CaWigTyR.d.ts → executor-DfEtf0cq.d.ts} +43 -27
  254. package/dist/{executor-DvsBbNBS.d.ts → executor-Drzu3dBK.d.ts} +2 -2
  255. package/dist/{executor-DbvExCFC.d.ts → executor-ngjKL_Pe.d.ts} +2 -2
  256. package/dist/expo/index.d.ts +4 -4
  257. package/dist/expo/index.js +6 -6
  258. package/dist/expo-sqlite/index.d.ts +3 -3
  259. package/dist/expo-sqlite/index.js +2 -2
  260. package/dist/extra-CGQ2_q3S.js +10 -0
  261. package/dist/{field-errors-BFOa7WhB.d.ts → field-errors-DIe9XYWL.d.ts} +17 -7
  262. package/dist/{field-errors-VF1yb8yI.js → field-errors-DZVRWRkf.js} +1 -1
  263. package/dist/format-DTXdu8ya.d.ts +70 -0
  264. package/dist/{framework-BmzgK32X.d.ts → framework-148t1m3C.d.ts} +5 -5
  265. package/dist/{framework-a7aRCIqv.js → framework-3ey3QmrO.js} +2 -2
  266. package/dist/function-contract-BcZenXMO.d.ts +8 -0
  267. package/dist/{gateway-C1ssRHnf.d.ts → gateway-S9vicgeo.d.ts} +4 -4
  268. package/dist/{guards-BnzDvFrz.js → guards-6F2bCtQR.js} +3 -1
  269. package/dist/h3/index.d.ts +1 -1
  270. package/dist/h3/index.js +1 -1
  271. package/dist/h3/v1/index.d.ts +1 -1
  272. package/dist/h3/v1/index.js +1 -1
  273. package/dist/{message-CaKlqdsX.js → history-GH1HJWQV.js} +65 -13
  274. package/dist/hmac-DCud0myt.js +22 -0
  275. package/dist/hono/index.d.ts +19 -14
  276. package/dist/hono/index.js +21 -16
  277. package/dist/{hooks-1BTCJsiw.js → hooks-Bhza9Hnr.js} +68 -100
  278. package/dist/http-sbmBe5d2.js +25 -0
  279. package/dist/{inbox-i7E1ppo6.d.ts → inbox-Cd1KCEBL.d.ts} +3 -3
  280. package/dist/index-B72Rvv_j.d.ts +89 -0
  281. package/dist/{index-DunNRdnT.d.ts → index-BCHR4Ucl.d.ts} +4 -4
  282. package/dist/{index-CLg87OBW.d.ts → index-BUK7jUzR.d.ts} +6 -0
  283. package/dist/{config-D44Y7PAv.d.ts → index-Ba1SI-uO.d.ts} +625 -278
  284. package/dist/{index-D48jVS-N.d.ts → index-BfxOaOYs.d.ts} +4 -5
  285. package/dist/{index-ClmjK_o-.d.ts → index-CicIyqOe.d.ts} +4 -4
  286. package/dist/{index-ACiNPN4Z.d.ts → index-D69h4QqD.d.ts} +1 -1
  287. package/dist/index-DG2SUXDQ.d.ts +58 -0
  288. package/dist/{index-Bepi-Hgg.d.ts → index-DoNVLHOU.d.ts} +3 -3
  289. package/dist/{index-CdZKQF98.d.ts → index-R274XFlg.d.ts} +1 -1
  290. package/dist/{index-CewnYSpv.d.ts → index-_4R4b01v.d.ts} +8 -18
  291. package/dist/index.d.ts +89 -14
  292. package/dist/index.js +12 -11
  293. package/dist/{json-schema-CvER4kgT.js → json-schema-CT4tvrkA.js} +148 -102
  294. package/dist/{kit-Fm-Fv7q5.js → kit-BhHr9T9v.js} +36 -10
  295. package/dist/{kit-CkNzZUqv.d.ts → kit-W99LCPBS.d.ts} +13 -7
  296. package/dist/{knowledge-BXBbT0Tr.d.ts → knowledge-CAReFpRA.d.ts} +5 -5
  297. package/dist/{knowledge-CDmiMLew.js → knowledge-DnHtb64A.js} +4 -3
  298. package/dist/list/index.d.ts +1 -2
  299. package/dist/{list-query-BRt-zDF7.d.ts → list-query-D3JQeEL7.d.ts} +4 -4
  300. package/dist/mcp/index.d.ts +49 -19
  301. package/dist/mcp/index.js +158 -94
  302. package/dist/mcp/sdk/index.d.ts +38 -6
  303. package/dist/mcp/sdk/index.js +88 -6
  304. package/dist/{message-CfDoR0Y6.d.ts → message-B0fNJgq8.d.ts} +1 -2
  305. package/dist/{messages-B9-5887d.js → messages-CJoHHCWT.js} +4 -205
  306. package/dist/{mfa-Daak8ukG.d.ts → mfa-SZc9YYyb.d.ts} +1 -1
  307. package/dist/model-OgBxvk3N.d.ts +300 -0
  308. package/dist/model-messages-Cxw_Up4f.js +206 -0
  309. package/dist/model-messages-D4GZllOD.d.ts +34 -0
  310. package/dist/modules-DksjZyMW.js +77 -0
  311. package/dist/nestjs/index.d.ts +2 -2
  312. package/dist/nestjs/index.js +1 -1
  313. package/dist/next/index.d.ts +105 -55
  314. package/dist/next/index.js +204 -170
  315. package/dist/node/index.d.ts +2 -2
  316. package/dist/node/index.js +1 -1
  317. package/dist/{onboarding-BZGHYJks.d.ts → onboarding-LZvlK1P4.d.ts} +3 -3
  318. package/dist/openapi/index.d.ts +4 -2
  319. package/dist/openapi/index.js +21 -343
  320. package/dist/optional-peer-D1pi-skw.js +24 -0
  321. package/dist/orpc/index.d.ts +8 -8
  322. package/dist/orpc/index.js +21 -20
  323. package/dist/otel/index.d.ts +3 -3
  324. package/dist/otel/index.js +7 -7
  325. package/dist/{outbox-Cq7pPYvl.d.ts → outbox-DZfAvfzC.d.ts} +6 -6
  326. package/dist/overlay/index.d.ts +233 -0
  327. package/dist/overlay/index.js +554 -0
  328. package/dist/{plugin-FGY8UhYm.d.ts → plugin-CPK2HsbY.d.ts} +42 -3
  329. package/dist/plugins/actor/index.d.ts +1 -1
  330. package/dist/plugins/actor/index.js +1 -1
  331. package/dist/plugins/rules/index.d.ts +2 -2
  332. package/dist/plugins/rules/index.js +1 -1
  333. package/dist/plugins/soft-delete/index.d.ts +3 -3
  334. package/dist/plugins/soft-delete/index.js +9 -2
  335. package/dist/plugins/tenant/index.d.ts +7 -2
  336. package/dist/plugins/tenant/index.js +16 -2
  337. package/dist/plugins/timestamps/index.d.ts +1 -1
  338. package/dist/plugins/timestamps/index.js +8 -1
  339. package/dist/plugins/validation/index.d.ts +2 -2
  340. package/dist/plugins/validation/index.js +4 -4
  341. package/dist/{pool-CAu2nLrL.d.ts → pool-gkhbGp2E.d.ts} +2 -2
  342. package/dist/postgres/index.d.ts +4 -4
  343. package/dist/postgres/index.js +2 -1
  344. package/dist/{postgrest-BLVdEnfe.d.ts → postgrest-BUqLag2Q.d.ts} +1 -1
  345. package/dist/powersync/index.d.ts +5 -5
  346. package/dist/powersync/index.js +4 -4
  347. package/dist/powersync/react/index.d.ts +3 -3
  348. package/dist/powersync/react/index.js +1 -1
  349. package/dist/{problem-BreOl8b8.js → problem-CJvFeGu7.js} +13 -2
  350. package/dist/{problem-DD8LZFjc.d.ts → problem-TvGdxO1t.d.ts} +7 -1
  351. package/dist/{provider-Di3sRutW.js → provider-DxRTex4x.js} +1 -1
  352. package/dist/{provider-D-UEMvSD.d.ts → provider-ib9wzUDz.d.ts} +2 -2
  353. package/dist/query/index.d.ts +2 -2
  354. package/dist/query/index.js +1 -1
  355. package/dist/{query-BQ-NaZon.js → query-Ctz-qKRx.js} +1 -1
  356. package/dist/rate-limit-Bw7HgmFj.js +260 -0
  357. package/dist/react/index.d.ts +9 -9
  358. package/dist/react/index.js +4 -4
  359. package/dist/react/native/index.d.ts +1 -1
  360. package/dist/react/native/index.js +2 -2
  361. package/dist/react/server.d.ts +10 -10
  362. package/dist/react/server.js +3 -3
  363. package/dist/react/session.d.ts +2 -2
  364. package/dist/{react-F80mF4-t.js → react-Bmpo59D7.js} +4 -4
  365. package/dist/react-router/index.d.ts +6 -6
  366. package/dist/react-router/index.js +9 -11
  367. package/dist/{read-set-DuKWC9Mj.js → read-set-DAeWhqPf.js} +2 -2
  368. package/dist/realtime/index.d.ts +3 -3
  369. package/dist/realtime/index.js +30 -36
  370. package/dist/{refusal-DhSU2Vvr.d.ts → refusal-CFI8-5nf.d.ts} +4 -1
  371. package/dist/{refusal-CeJWxmkH.js → refusal-K78A1Vmq.js} +5 -5
  372. package/dist/{resolve-tJZY3FEa.js → resolve-Bvgf3ut_.js} +131 -42
  373. package/dist/{resolve-ChTYeTEl.d.ts → resolve-MxXVWyhd.d.ts} +12 -8
  374. package/dist/resource--vTrBe6I.d.ts +103 -0
  375. package/dist/resource-BqNqlYg9.js +91 -0
  376. package/dist/resource-DA811u_4.js +463 -0
  377. package/dist/resource-execute-rbKvuCsY.d.ts +12 -0
  378. package/dist/resource-schemas-BJ518zFH.js +79 -0
  379. package/dist/resource-types-CqB6GWGT.d.ts +141 -0
  380. package/dist/resources-BVYPnuLo.js +56 -0
  381. package/dist/resources-DZSk8tXJ.d.ts +7 -0
  382. package/dist/{respond-DprrgyXX.d.ts → respond-Cw-zanCm.d.ts} +3 -3
  383. package/dist/{respond-BUgsXNgk.js → respond-volM3ByS.js} +4 -4
  384. package/dist/{result-D7y2fT87.d.ts → result-BchM1XZn.d.ts} +7 -1
  385. package/dist/{result-DzUbqgdW.js → result-DEqHCMKP.js} +1 -1
  386. package/dist/server/index.d.ts +81 -19
  387. package/dist/server/index.js +16 -14
  388. package/dist/{server-Bh0EVSwU.d.ts → server-types-CrAmZ8jv.d.ts} +92 -36
  389. package/dist/{shared-CxWmcyqB.js → shared-DHjhfRdV.js} +2 -15
  390. package/dist/shared-DTneRoxi.js +14 -0
  391. package/dist/{sign-in-Cb1mwv6X.js → sign-in-D_yoP0PF.js} +1 -1
  392. package/dist/signatures-BRS_p3WD.d.ts +34 -0
  393. package/dist/signatures-DsWv_bYR.js +103 -0
  394. package/dist/{signers-4y62_VIi.d.ts → signers-cpdmZYrv.d.ts} +1 -1
  395. package/dist/solid/index.d.ts +9 -18
  396. package/dist/solid/index.js +2 -2
  397. package/dist/solid-start/index.d.ts +6 -6
  398. package/dist/solid-start/index.js +7 -7
  399. package/dist/spec/index.d.ts +134 -0
  400. package/dist/spec/index.js +353 -0
  401. package/dist/{spec-pins-C89s6DyW.d.ts → spec-pins-CwzDY25w.d.ts} +18 -1
  402. package/dist/{spec-pins--j6mTok4.js → spec-pins-DsLfUH7l.js} +14 -1
  403. package/dist/sql/index.d.ts +145 -119
  404. package/dist/sql/index.js +19921 -19798
  405. package/dist/{executor-De1Of3m3.js → sql-CwuqaQ4Y.js} +34 -169
  406. package/dist/ssr/index.d.ts +4 -4
  407. package/dist/ssr/index.js +3 -2
  408. package/dist/{standard-BK0cqJ7y.js → standard-DkzZUneg.js} +2 -2
  409. package/dist/{standard-CYsm7xpT.d.ts → standard-lmkbOtPB.d.ts} +1 -1
  410. package/dist/{stats-D_AD9GGu.js → stats-DhU78Ctf.js} +8 -4
  411. package/dist/storage/index.d.ts +4 -6
  412. package/dist/storage/index.js +16 -17
  413. package/dist/{bucket-Cl46E3jS.d.ts → storage-api-CB7Zl1Ci.d.ts} +243 -8
  414. package/dist/{store-CGjgWu5n.d.ts → store-DsIYEBnv.d.ts} +1 -1
  415. package/dist/streams/index.d.ts +4 -4
  416. package/dist/streams/index.js +5 -4
  417. package/dist/streams/redis/index.d.ts +1 -1
  418. package/dist/streams/redis/index.js +5 -11
  419. package/dist/{stripe-BMj5LtsT.js → stripe-v-Y2lmop.js} +2 -8
  420. package/dist/supabase-mcp-C6tMoEjn.d.ts +43 -0
  421. package/dist/supabase-mcp-Cpn5A4i-.js +28 -0
  422. package/dist/{support-ig_K4PvS.js → support-D1pFFouF.js} +71 -35
  423. package/dist/{support-view-CVOJJLpc.d.ts → support-view-scqMgtOo.d.ts} +1 -1
  424. package/dist/svelte/index.d.ts +8 -17
  425. package/dist/svelte/index.js +2 -2
  426. package/dist/sveltekit/index.d.ts +7 -7
  427. package/dist/sveltekit/index.js +10 -12
  428. package/dist/table-schema-htM_SbCW.js +286 -0
  429. package/dist/{tags-Cx-LnIQP.d.ts → tags-BO9LjtWG.d.ts} +1 -1
  430. package/dist/tanstack-db/index.d.ts +2 -2
  431. package/dist/tanstack-db/supabase/index.d.ts +52 -0
  432. package/dist/tanstack-db/supabase/index.js +97 -0
  433. package/dist/tanstack-start/index.d.ts +6 -6
  434. package/dist/tanstack-start/index.js +8 -12
  435. package/dist/{tee-CoEppCER.js → tee-Cb98Vn3b.js} +1 -1
  436. package/dist/{template--jDkl3UP.js → template-lPVh-EwW.js} +11 -2
  437. package/dist/{temporal-required-BVvW7SYJ.js → temporal-required-BtynQtM-.js} +1 -1
  438. package/dist/{tenant-BxNFk9bx.d.ts → tenant-CM368LXb.d.ts} +2 -2
  439. package/dist/testing/index.d.ts +249 -118
  440. package/dist/testing/index.js +1418 -870
  441. package/dist/ttl-cache-XzZ-Q2eX.js +29 -0
  442. package/dist/types-BRTSpOIh.js +5 -0
  443. package/dist/{types-C05bxW-W.d.ts → types-Bb_4-vdW.d.ts} +4 -4
  444. package/dist/{types-AYOvcyep.d.ts → types-CD6yCDx3.d.ts} +5 -5
  445. package/dist/{types-6rocye-y.d.ts → types-CbOUc5IH.d.ts} +4 -4
  446. package/dist/{types-6BdhkmZe.d.ts → types-CoE5Zwy4.d.ts} +8 -0
  447. package/dist/{types-DGs5L0VN.d.ts → types-DSJ3-m9X.d.ts} +4 -4
  448. package/dist/{queue-CLJurhdy.d.ts → types-D__3EN0q.d.ts} +17 -19
  449. package/dist/{usage-CrvrL2vw.d.ts → usage-D0NNUFfr.d.ts} +3 -3
  450. package/dist/{vault-wlbBhqm7.d.ts → vault-BpmApxxW.d.ts} +3 -3
  451. package/dist/vercel-connect/index.d.ts +1 -1
  452. package/dist/vercel-connect/index.js +5 -11
  453. package/dist/{verify-DPuWngD4.d.ts → verify-C91Wyp40.d.ts} +5 -35
  454. package/dist/verify-CJbYfADA.js +124 -0
  455. package/dist/{version-C6OfRAIn.js → version-Cq8gfDbd.js} +1 -1
  456. package/dist/{view-BeFcRV6G.js → view-D5ryq3gz.js} +1 -1
  457. package/dist/{view-CF7ihnkg.d.ts → view-TpXEUcVN.d.ts} +3 -3
  458. package/dist/vue/index.d.ts +9 -18
  459. package/dist/vue/index.js +2 -2
  460. package/dist/{watch-Xuxrvxq-.js → watch-BcvtAHOd.js} +2 -2
  461. package/dist/{watch-DI34G86j.d.ts → watch-COzRWvVN.d.ts} +23 -9
  462. package/dist/{wire-DtZQ4sdE.js → wire-Df3EWkG8.js} +2 -2
  463. package/dist/{workflow-builder-DJ1oHn8g.js → workflow-builder-CHqHpAVt.js} +6 -5
  464. package/dist/workflow-sdk/builder/index.d.ts +3 -3
  465. package/dist/workflow-sdk/index.d.ts +1 -1
  466. package/dist/workflow-sdk/world/index.d.ts +23 -17
  467. package/dist/workflow-sdk/world/index.js +59 -76
  468. package/dist/{workflow-sdk-B3yLD6Br.d.ts → workflow-sdk-DTZyrvNo.d.ts} +3 -3
  469. package/dist/{workflow-sdk-world-D-prir6O.js → workflow-sdk-world-CMV1ahFW.js} +528 -526
  470. package/dist/{workflows-B0j9WKPu.d.ts → workflows-CcpCBfIe.d.ts} +3 -3
  471. package/dist/{workflows-wu1WWBn7.js → workflows-IvxzG2cl.js} +5 -4
  472. package/package.json +54 -3
  473. package/schemas/config-v1.json +243 -0
  474. package/schemas/doctor-report-v1.json +4 -1
  475. package/schemas/spec-manifest-v1.json +95 -0
  476. package/skills/better-supabase/SKILL.md +8 -4
  477. package/skills/better-supabase/references/troubleshooting.md +20 -20
  478. package/skills/better-supabase-api/references/expo.md +6 -3
  479. package/skills/better-supabase-api/references/powersync.md +2 -1
  480. package/dist/cli/config-B9HkL8nF.js +0 -2
  481. package/dist/cli/gen-CCMc39Dx.js +0 -3100
  482. package/dist/cli/gen-DRmzPI75.js +0 -2
  483. package/dist/cli/prompts-BTYQGunc.js +0 -2
  484. package/dist/cli/run-BqDPh9UH.js +0 -361
  485. package/dist/config-Dn7F5k9A.js +0 -202
  486. package/dist/history-BZih6SFP.js +0 -64
  487. package/dist/index-BkWT_uBO.d.ts +0 -51
  488. package/dist/index-Bxih3l0u.d.ts +0 -81
  489. package/dist/index-CaxrMD1A.d.ts +0 -1
  490. package/dist/index-DQh4VCc9.d.ts +0 -98
  491. package/dist/keys-4MnkWTTh.js +0 -35
  492. package/dist/messages-DYP0sUTe.d.ts +0 -59
  493. package/dist/modules-dxrVK3ID.js +0 -228
  494. package/dist/path-Cv__-OTj.d.ts +0 -17
  495. package/dist/resource-BsvzCMlX.js +0 -212
  496. package/dist/resource-IPS5xi9q.d.ts +0 -74
  497. package/dist/template-CwO38Do8.d.ts +0 -6
  498. package/dist/verify-DL41hbvY.js +0 -232
  499. package/dist/cli/{read-sets-CETOSFx4.js → read-sets-DjJrm8Wj.js} +1 -1
@@ -0,0 +1,141 @@
1
+ import { E as ValidationIssue, f as Result } from "./result-BchM1XZn.js";
2
+ import { H as Update, L as TableKey, M as Row, R as TableMeta, a as AnyModels, x as Insert } from "./types-CoE5Zwy4.js";
3
+ import { m as RequestContext } from "./plugin-CPK2HsbY.js";
4
+ import { E as ResourceOperation } from "./model-OgBxvk3N.js";
5
+ import { a as ResourcePlan, i as ResourcePagination, n as ResourceActionSpec, r as ResourceDescription } from "./resource--vTrBe6I.js";
6
+ import { Lt as SelectArg } from "./define-DmcfoNXB.js";
7
+ import { a as RespondOptions } from "./respond-Cw-zanCm.js";
8
+ import { StandardSchemaV1 } from "@standard-schema/spec";
9
+ //#region src/server/resource-types.d.ts
10
+ /** What a resource needs from `defineListQuery`. */
11
+ interface ResourceList {
12
+ readonly table: string;
13
+ readonly pagination?: ResourcePagination;
14
+ readonly openapi: readonly unknown[];
15
+ readonly jsonSchema: Readonly<Record<string, unknown>>;
16
+ parse(input: never): {
17
+ readonly ok: true;
18
+ readonly value: unknown;
19
+ } | {
20
+ readonly ok: false;
21
+ readonly issues: readonly ValidationIssue[];
22
+ };
23
+ run(db: never, query: never, extra?: never): PromiseLike<unknown>;
24
+ }
25
+ /** What hooks and action handlers receive. */
26
+ interface ResourceContext<DbT = unknown> {
27
+ /** The repositories, bound to the caller (RLS applies). */
28
+ readonly db: DbT;
29
+ readonly table: string;
30
+ /** The HTTP request, when the call came from one. */
31
+ readonly request: Request | undefined;
32
+ /** The verified request context: actor, tenant and claims. */
33
+ readonly context: RequestContext;
34
+ }
35
+ type HookResult<T> = Result<T> | PromiseLike<Result<T>>;
36
+ /** The target of an item operation or action. `row` is set when a permission check fetched it. */
37
+ interface ResourceTarget<R> {
38
+ readonly id?: unknown;
39
+ readonly data?: unknown;
40
+ readonly query?: unknown;
41
+ readonly row?: R;
42
+ }
43
+ /** A list response: the page's rows plus its paging fields. */
44
+ interface ResourcePage<R> {
45
+ readonly items: readonly R[];
46
+ readonly [field: string]: unknown;
47
+ }
48
+ /**
49
+ * Business logic around the repository. Every hook returns a `Result`; an
50
+ * error `Result` ends the request with that error, and a throw becomes an
51
+ * `unexpected` error. Hooks run after the authorizer.
52
+ */
53
+ interface ResourceHooks<M extends AnyModels, T extends TableKey<M>, DbT = unknown> {
54
+ /** Runs before every operation and action; an error denies it. */
55
+ authorize?(ctx: ResourceContext<DbT>, operation: ResourceOperation | (string & {}), target: ResourceTarget<Row<M, T>>): HookResult<unknown>;
56
+ /** Returns the values to insert. */
57
+ beforeCreate?(ctx: ResourceContext<DbT>, data: Insert<M, T>): HookResult<Insert<M, T>>;
58
+ /** Returns the values to update. */
59
+ beforeUpdate?(ctx: ResourceContext<DbT>, data: Update<M, T>, target: ResourceTarget<Row<M, T>>): HookResult<Update<M, T>>;
60
+ beforeDelete?(ctx: ResourceContext<DbT>, target: ResourceTarget<Row<M, T>>): HookResult<unknown>;
61
+ /** Returns the response; describe a changed shape in `output.list`. */
62
+ afterList?(ctx: ResourceContext<DbT>, page: ResourcePage<Row<M, T>>): HookResult<unknown>;
63
+ afterGet?(ctx: ResourceContext<DbT>, row: Row<M, T>): HookResult<unknown>;
64
+ afterCreate?(ctx: ResourceContext<DbT>, row: Row<M, T>): HookResult<unknown>;
65
+ afterUpdate?(ctx: ResourceContext<DbT>, row: Row<M, T>): HookResult<unknown>;
66
+ }
67
+ /** What an action handler receives besides the context: values already validated. */
68
+ interface ActionArgs<I = unknown, Q = unknown> {
69
+ /** The parsed key, for item actions (`/{id}/send`). */
70
+ readonly id: unknown;
71
+ readonly data: I;
72
+ readonly query: Q;
73
+ }
74
+ /**
75
+ * A custom operation (`POST /<table>/{id}/send`). The handler returns a
76
+ * `Result`, a plain value or a `Response`; a throw becomes an `unexpected`
77
+ * error.
78
+ */
79
+ interface ResourceAction<Ref = string, DbT = unknown> extends ResourceActionSpec<Ref> {
80
+ handler(ctx: ResourceContext<DbT>, args: ActionArgs): unknown;
81
+ }
82
+ type Parsed<S> = S extends StandardSchemaV1 ? StandardSchemaV1.InferOutput<S> : undefined;
83
+ interface ResourceRouteOptions<M extends AnyModels, T extends TableKey<M>, Ref = string, DbT = unknown> extends Omit<ResourceDescription<Ref>, "list" | "input" | "actions" | "operations" | "pagination" | "maxPageSize"> {
84
+ /** Defaults to every operation for tables, `list` and `get` for views. */
85
+ readonly operations?: readonly ResourceOperation[];
86
+ /** Filters, search and sorts for `list`, from `defineListQuery`. */
87
+ readonly list?: ResourceList;
88
+ /** Columns returned by every operation. */
89
+ readonly select?: SelectArg<M, T>;
90
+ /** Validates request bodies before they reach the repository. */
91
+ readonly input?: {
92
+ readonly create?: StandardSchemaV1<unknown, Insert<M, T>>;
93
+ readonly update?: StandardSchemaV1<unknown, Update<M, T>>;
94
+ };
95
+ /**
96
+ * Paging of the default list: `offset` (`page` and `size`) or `cursor`
97
+ * (`after` and `size`, keyset). A `list` query brings its own. Defaults
98
+ * to `offset`.
99
+ */
100
+ readonly pagination?: ResourcePagination;
101
+ /** Largest page for the default list. Defaults to 200. */
102
+ readonly maxPageSize?: number;
103
+ readonly hooks?: ResourceHooks<M, T, DbT>;
104
+ readonly actions?: Readonly<Record<string, ResourceAction<Ref, DbT>>>;
105
+ }
106
+ interface ResourceInput {
107
+ /** Primary key value; strings are converted for integer keys. */
108
+ readonly id?: unknown;
109
+ /** Body of `create`, `update` and actions. */
110
+ readonly data?: unknown;
111
+ /** `list` and action parameters: URL params or typed values. */
112
+ readonly query?: URLSearchParams | Readonly<Record<string, unknown>>;
113
+ /** The HTTP request, passed on to hooks and actions. */
114
+ readonly request?: Request;
115
+ }
116
+ interface ResourceHandler<Ref = string> {
117
+ readonly table: string;
118
+ readonly meta: TableMeta;
119
+ readonly operations: readonly ResourceOperation[];
120
+ /** Name of the key parameter, or `undefined` for tables without a single-column key. */
121
+ readonly keyParam: string | undefined;
122
+ readonly list: ResourceList | undefined;
123
+ readonly pagination: ResourcePagination;
124
+ readonly maxPageSize: number;
125
+ /** What the resource serves; `defineApi` documents the same plan. */
126
+ readonly plan: ResourcePlan<Ref>;
127
+ /** Runs one operation as whoever `db` is bound to. Resolves to a `Result`. */
128
+ execute(db: object, operation: ResourceOperation, input?: ResourceInput): Promise<Result<unknown>>;
129
+ /** Runs one action by name. Resolves to a `Result`. */
130
+ action(db: object, name: string, input?: ResourceInput): Promise<Result<unknown>>;
131
+ /** Serves a collection request (`id` undefined) or an item request. Actions are not routed. */
132
+ handle(request: Request, db: object, id: string | undefined, options?: RespondOptions): Promise<Response>;
133
+ /**
134
+ * Serves the collection (`[]`), an item (`[id]`) or an action path
135
+ * (`[id, "send"]`), below the resource's own path. A string is split on `/`
136
+ * and decoded.
137
+ */
138
+ serve(request: Request, db: object, subpath: string | readonly string[], options?: RespondOptions): Promise<Response>;
139
+ }
140
+ //#endregion
141
+ export { ResourceHandler as a, ResourceList as c, ResourceContext as i, ResourceRouteOptions as l, Parsed as n, ResourceHooks as o, ResourceAction as r, ResourceInput as s, ActionArgs as t };
@@ -0,0 +1,56 @@
1
+ import { n as dbError } from "./errors-2M6CKMP4.js";
2
+ import { o as problemResponse } from "./problem-CJvFeGu7.js";
3
+ import { n as actionFits, t as defineResource } from "./resource-DA811u_4.js";
4
+ //#region src/server/resources.ts
5
+ function split(path) {
6
+ return path.split("/").filter((segment) => segment !== "");
7
+ }
8
+ /** Whether a resource serves this path below it, with some method. */
9
+ function serves(handler, segments) {
10
+ if (segments.length === 0) return true;
11
+ if (handler.plan.actions.some((action) => actionFits(action, segments))) return true;
12
+ return segments.length === 1 && handler.keyParam !== void 0;
13
+ }
14
+ /**
15
+ * Routes `basePath` plus each resource's path (`/<table>` unless `path` is
16
+ * set) to its handler. Shared by the edge and Next.js resource routers.
17
+ */
18
+ function resourceRouter(betterSupabase, map, options = {}) {
19
+ const base = split(options.basePath ?? "");
20
+ const routes = [];
21
+ for (const [table, resource] of Object.entries(map)) {
22
+ if (!resource) continue;
23
+ const handler = defineResource(betterSupabase, table, resource === true ? {} : resource, options.authorizer);
24
+ routes.push({
25
+ prefix: split(handler.plan.description.path ?? `/${table}`),
26
+ handler
27
+ });
28
+ }
29
+ routes.sort((a, b) => b.prefix.length - a.prefix.length);
30
+ return {
31
+ handlers: routes.map((route) => route.handler),
32
+ match(request) {
33
+ const { pathname } = new URL(request.url);
34
+ const notFound = () => problemResponse(dbError("not_found", `No route for ${pathname}`), { instance: pathname });
35
+ const raw = split(pathname);
36
+ if (!base.every((segment, index) => raw[index] === segment)) return notFound();
37
+ const rest = raw.slice(base.length);
38
+ const route = routes.find(({ prefix }) => prefix.length <= rest.length && prefix.every((segment, index) => rest[index] === segment));
39
+ if (!route) return notFound();
40
+ let segments;
41
+ try {
42
+ segments = rest.slice(route.prefix.length).map((segment) => decodeURIComponent(segment));
43
+ } catch {
44
+ return problemResponse(dbError("invalid_input", `Malformed id in ${pathname}`), { instance: pathname });
45
+ }
46
+ if (!serves(route.handler, segments)) return notFound();
47
+ return {
48
+ handler: route.handler,
49
+ segments,
50
+ instance: pathname
51
+ };
52
+ }
53
+ };
54
+ }
55
+ //#endregion
56
+ export { resourceRouter as t };
@@ -0,0 +1,7 @@
1
+ import { L as TableKey, a as AnyModels } from "./types-CoE5Zwy4.js";
2
+ import { l as ResourceRouteOptions } from "./resource-types-CqB6GWGT.js";
3
+ //#region src/server/resources.d.ts
4
+ /** Resources by table name; `true` serves a table with the defaults. */
5
+ type ResourceMap<M extends AnyModels, Ref = string, DbT = unknown> = { readonly [T in TableKey<M>]?: ResourceRouteOptions<M, T, Ref, DbT> | true; };
6
+ //#endregion
7
+ export { ResourceMap as t };
@@ -1,6 +1,6 @@
1
- import { b as DbError } from "./result-D7y2fT87.js";
2
- import { r as AuthState } from "./resolve-ChTYeTEl.js";
3
- import { t as Aal } from "./mfa-Daak8ukG.js";
1
+ import { b as DbError } from "./result-BchM1XZn.js";
2
+ import { r as AuthState } from "./resolve-MxXVWyhd.js";
3
+ import { t as Aal } from "./mfa-SZc9YYyb.js";
4
4
  //#region src/server/refresh.d.ts
5
5
  /** A router or browser prefetch, by its request headers. */
6
6
  declare function isPrefetch(request: Request): boolean;
@@ -1,8 +1,8 @@
1
- import { n as dbError, o as isDbError, r as dbErrorOf } from "./errors-B11Duf73.js";
2
- import { s as toDbError } from "./result-DzUbqgdW.js";
3
- import { a as problemResponse } from "./problem-BreOl8b8.js";
1
+ import { n as dbError, o as isDbError, r as dbErrorOf } from "./errors-2M6CKMP4.js";
2
+ import { s as toDbError } from "./result-DEqHCMKP.js";
3
+ import { o as problemResponse } from "./problem-CJvFeGu7.js";
4
4
  import { a as actorOf, o as delegationOf } from "./impersonation-DcqaTBHx.js";
5
- import { a as checkAal, t as isAnonymousUser } from "./view-BeFcRV6G.js";
5
+ import { a as checkAal, t as isAnonymousUser } from "./view-D5ryq3gz.js";
6
6
  import { n as jsonResponse } from "./json-CEnpTHlZ.js";
7
7
  //#region src/server/respond.ts
8
8
  /**
@@ -10,11 +10,17 @@ interface DbErrorKinds {
10
10
  /**
11
11
  * `required`: the assurance level the route needs, when a second factor is
12
12
  * missing. `scopes`: the OAuth scopes the route needs, when a delegated
13
- * token lacks one (`INSUFFICIENT_SCOPE`).
13
+ * token lacks one (`INSUFFICIENT_SCOPE`). `permission`: the key an
14
+ * `Authorizer` denied. `approval`: the pending approval when the answer is
15
+ * `APPROVAL_REQUIRED`.
14
16
  */
15
17
  forbidden: {
16
18
  required?: "aal1" | "aal2";
17
19
  scopes?: readonly string[];
20
+ permission?: string;
21
+ approval?: {
22
+ readonly id: string;
23
+ };
18
24
  };
19
25
  conflict: {
20
26
  constraint?: string;
@@ -1,5 +1,5 @@
1
1
  import { t as DbException } from "./db-exception-CnWcYPxL.js";
2
- import { n as dbError, r as dbErrorOf } from "./errors-B11Duf73.js";
2
+ import { n as dbError, r as dbErrorOf } from "./errors-2M6CKMP4.js";
3
3
  //#region src/core/result.ts
4
4
  const throwMappers = /* @__PURE__ */ new WeakMap();
5
5
  function inherit(from, next) {
@@ -1,26 +1,30 @@
1
- import { b as DbError } from "../result-D7y2fT87.js";
2
- import { a as AnyModels, i as AnyFunctions } from "../types-6BdhkmZe.js";
3
- import { m as RequestContext } from "../plugin-FGY8UhYm.js";
1
+ import { b as DbError } from "../result-BchM1XZn.js";
2
+ import { L as TableKey, a as AnyModels, i as AnyFunctions } from "../types-CoE5Zwy4.js";
3
+ import { t as SqlClient } from "../executor-ngjKL_Pe.js";
4
+ import { m as RequestContext } from "../plugin-CPK2HsbY.js";
4
5
  import { _ as writeSession, a as CookieWrite, c as StoredSession, h as sessionCookieName, n as CookieOptions, p as readSession, r as CookieRecord, t as AUTH_CACHE_HEADERS } from "../session-ChiXDZdZ.js";
5
- import { a as ResolveAuthOptions, c as clientIp, i as InvalidReason, l as resolveAuth, n as AuthResolver, o as ResolvedState, r as AuthState, s as authContext, t as AuthResolution } from "../resolve-ChTYeTEl.js";
6
- import { c as fromProblem, d as toProblem, i as ProblemDetails, l as isProblem, n as PROBLEM_CONTENT_TYPE, o as ProblemOptions, r as PROBLEM_TYPE_BASE, s as ProblemResponseOptions, u as problemResponse } from "../problem-DD8LZFjc.js";
7
- import { B as DbStats, b as Db, t as BetterSupabase } from "../define-CJJkkr1-.js";
8
- import { A as supportSessions, B as SupportSession, C as ActiveSupport, D as SupportPolicy, E as SupportOptions, F as supportCookieValue, H as SupportStartInput, I as SqlSupportStoreOptions, L as SupportCallerClaims, M as SupportCookieOptions, N as clearSupportCookie, O as SupportSessions, P as supportCookie, R as SupportEndedBy, S as deleteAccount, T as SupportAuthorizeInput, U as sqlSupportStore, V as SupportSessionStore, W as supportClaims, _ as RequestIdOptions, a as ServerDbOptions, b as DeleteAccountOptions, c as createServer, d as LastSignIn, f as SuspendAccountOptions, g as suspendAccount, h as lastSignIns, i as ServerContext, j as SUPPORT_COOKIE, k as SupportStartRequest, l as extendServer, m as endSessions, n as ContextOptions, o as ServerOptions, p as SuspendAccountResult, r as ForContextOptions, s as TENANT_HEADER, t as BetterServer, u as EndSessionsResult, v as PRIMARY_COOKIE, w as SupportApi, x as DeleteAccountResult, y as ReplicaState, z as SupportListFilter } from "../server-Bh0EVSwU.js";
9
- import { a as checkAal, c as impersonatorOf, i as amrOf, n as AmrEntry, o as ImpersonationOptions, r as aalOf, s as Impersonator, t as Aal } from "../mfa-Daak8ukG.js";
6
+ import { a as ResolveAuthOptions, c as resolveAuth, i as InvalidReason, n as AuthResolver, o as ResolvedState, r as AuthState, s as clientIp, t as AuthResolution } from "../resolve-MxXVWyhd.js";
7
+ import { c as fromProblem, d as toProblem, i as ProblemDetails, l as isProblem, n as PROBLEM_CONTENT_TYPE, o as ProblemOptions, r as PROBLEM_TYPE_BASE, s as ProblemResponseOptions, u as problemResponse } from "../problem-TvGdxO1t.js";
8
+ import { a as AuthorizationSubject, c as defineAuthorizer, i as AuthorizationResource, n as AuthorizationOutcome, o as Authorizer, r as AuthorizationRequest, s as PermissionRef, t as AnyAuthorizer } from "../authorizer-eiOjo-3l.js";
9
+ import { i as ResourcePagination } from "../resource--vTrBe6I.js";
10
+ import { t as StorageApi } from "../storage-api-CB7Zl1Ci.js";
11
+ import { Wt as DbStats, _ as Db, t as BetterSupabase } from "../define-DmcfoNXB.js";
12
+ import { a as checkAal, c as impersonatorOf, i as amrOf, n as AmrEntry, o as ImpersonationOptions, r as aalOf, s as Impersonator, t as Aal } from "../mfa-SZc9YYyb.js";
13
+ import { A as SUPPORT_COOKIE, B as SupportSessionStore, C as SupportAuthorizeInput, D as SupportSessions, E as SupportPolicy, F as SqlSupportStoreOptions, G as LiteDriver, H as sqlSupportStore, I as SupportCallerClaims, L as SupportEndedBy, M as clearSupportCookie, N as supportCookie, O as SupportStartRequest, P as supportCookieValue, R as SupportListFilter, S as SupportApi, T as SupportOptions, U as supportClaims, V as SupportStartInput, W as RequestIdOptions, _ as ReplicaState, a as ServerDbOptions, b as deleteAccount, c as TENANT_HEADER, d as SuspendAccountOptions, f as SuspendAccountResult, g as PRIMARY_COOKIE, h as suspendAccount, i as ServerContext, j as SupportCookieOptions, k as supportSessions, l as EndSessionsResult, m as lastSignIns, n as ContextOptions, o as ServerKeys, p as endSessions, r as ForContextOptions, s as ServerOptions, t as BetterServer, u as LastSignIn, v as DeleteAccountOptions, w as SupportExpireRouteOptions, x as ActiveSupport, y as DeleteAccountResult, z as SupportSession } from "../server-types-CrAmZ8jv.js";
10
14
  import { n as SessionActor, r as SessionDelegation, t as ActClaim } from "../actor-CQTlc1Hh.js";
11
- import { n as toSession, t as AuthSession } from "../view-CF7ihnkg.js";
12
- import { a as SessionEntryConfig, c as withGuard, i as withBetterSupabase, l as ServerCore, n as BetterSupabaseContributions, o as withSession, r as BetterSupabaseEntry, s as GuardEntryConfig, t as BetterSupabaseConfig, u as serverCore } from "../composite--yqry7uW.js";
13
- import { a as RespondOptions, c as isResult, d as RefreshPolicy, f as isPrefetch, h as shouldRefresh, i as MiddlewareOptions, l as respond, m as shouldCheckSession, n as AuthKind, o as Settled, p as refreshFor, r as GuardOptions, s as guard, u as settle } from "../respond-DprrgyXX.js";
14
- import { a as AuthorizedContext, i as AuthorizeOptions, l as hasRole, o as BlockActionOptions, r as ActionResult, s as BlockRequireOptions, u as rolesAt } from "../kit-CkNzZUqv.js";
15
- import { a as ResourceRouteOptions, i as ResourcePagination, n as ResourceInput, o as defineResource, r as ResourceList, t as ResourceHandler } from "../resource-IPS5xi9q.js";
16
- import { i as tagFor, n as cacheTagsOf, r as tagCache, t as TagOptions } from "../tags-Cx-LnIQP.js";
17
- import { n as supportOf, t as SupportView } from "../support-view-CVOJJLpc.js";
18
- import { a as sessionStatus, c as refreshSession, i as clearSessionCookies, n as SessionStatus, r as SessionStatusOptions, s as RefreshOutcome, t as ClearSessionCookiesOptions } from "../ended-XjeGQ5XW.js";
15
+ import { n as toSession, t as AuthSession } from "../view-TpXEUcVN.js";
16
+ import { a as SessionEntryConfig, c as withGuard, i as withBetterSupabase, l as ServerCore, n as BetterSupabaseContributions, o as withSession, r as BetterSupabaseEntry, s as GuardEntryConfig, t as BetterSupabaseConfig, u as serverCore } from "../composite-CWAJTRBF.js";
17
+ import { a as RespondOptions, c as isResult, d as RefreshPolicy, f as isPrefetch, h as shouldRefresh, i as MiddlewareOptions, l as respond, m as shouldCheckSession, n as AuthKind, o as Settled, p as refreshFor, r as GuardOptions, s as guard, u as settle } from "../respond-Cw-zanCm.js";
18
+ import { a as AuthorizedContext, i as AuthorizeOptions, l as hasRole, o as BlockActionOptions, r as ActionResult, s as BlockRequireOptions, u as rolesAt } from "../kit-W99LCPBS.js";
19
+ import { a as ResourceHandler, c as ResourceList, l as ResourceRouteOptions, s as ResourceInput } from "../resource-types-CqB6GWGT.js";
20
+ import { i as tagFor, n as cacheTagsOf, r as tagCache, t as TagOptions } from "../tags-BO9LjtWG.js";
21
+ import { n as supportOf, t as SupportView } from "../support-view-scqMgtOo.js";
22
+ import { a as sessionStatus, c as RefreshOutcome, i as clearSessionCookies, l as refreshSession, n as SessionStatus, o as authContext, r as SessionStatusOptions, t as ClearSessionCookiesOptions } from "../ended-CcvcRqEd.js";
19
23
  import { SupabaseClient } from "@supabase/supabase-js";
20
24
  import { Middleware, SingleKeyEntry } from "@supabase/middleware";
21
25
  import { AuthMode, JWTClaims, UserClaims } from "@supabase/server";
22
26
  import { PostgresApi } from "@supabase/server/middleware/postgres";
23
- //#region src/blocks/csv.d.ts
27
+ //#region src/core/csv.d.ts
24
28
  interface CsvOptions {
25
29
  /**
26
30
  * The columns in order. Defaults to every key of the rows, in the order
@@ -62,6 +66,19 @@ export declare function csvResponse(rows: readonly Readonly<Record<string, unkno
62
66
  export declare const SERVER_EVENT_SOURCE = "/better-supabase/server";
63
67
  type AccountEventType = "account.suspended" | "account.unsuspended" | "account.deleted" | "account.sessions_ended";
64
68
  //#endregion
69
+ //#region src/server/server.d.ts
70
+ /**
71
+ * A framework adapter's server: `server` plus the adapter's own methods,
72
+ * without reading the lazy `env` getter. `extra` can't replace a
73
+ * `BetterServer` method.
74
+ */
75
+ export declare function extendServer<R extends object>(server: object, extra: Omit<R, ServerKeys>): R;
76
+ /**
77
+ * Server-side entry point for APIs, jobs, MCP servers and framework
78
+ * adapters. Holds the secrets; `betterSupabase` stays isomorphic.
79
+ */
80
+ export declare function createServer<M extends AnyModels, D, F extends AnyFunctions, E, C = unknown, P = unknown>(betterSupabase: BetterSupabase<M, D, F, E, C, P>, options?: ServerOptions): BetterServer<M, F, E, C, P>;
81
+ //#endregion
65
82
  //#region src/server/adapter.d.ts
66
83
  interface HandleOptions extends MiddlewareOptions {
67
84
  /** Include error messages in problem responses. Defaults to `NODE_ENV === 'development'`. */
@@ -85,6 +102,8 @@ interface HandleOptions extends MiddlewareOptions {
85
102
  }
86
103
  /** Hands event sink sends still running to `waitUntil`; a no-op without either. */
87
104
  export declare function flushEvents(server: Pick<BetterServer<AnyModels, AnyFunctions, unknown>, "events">, waitUntil: ((promise: Promise<unknown>) => void) | undefined): void;
105
+ /** Runs `run`, then hands pending event sink sends to `waitUntil` even when it throws. */
106
+ export declare function withFlush<T>(server: Pick<BetterServer<AnyModels, AnyFunctions, unknown>, "events">, waitUntil: ((promise: Promise<unknown>) => void) | undefined, run: () => Promise<T> | T): Promise<T>;
88
107
  /** The 500 for an error a handler threw; the message only when `expose` is set. */
89
108
  export declare function unexpectedResponse(cause: unknown, options: {
90
109
  readonly instance?: string;
@@ -109,6 +128,37 @@ export declare function handle<M extends AnyModels, F extends AnyFunctions, E, C
109
128
  */
110
129
  export declare function resolveToken<C, P>(server: Pick<BetterServer<AnyModels, AnyFunctions, unknown, C, P>, "resolve">, token: string | null | undefined): Promise<AuthState<C, P>>;
111
130
  //#endregion
131
+ //#region src/server/support-storage.d.ts
132
+ interface SupportStorageOptions {
133
+ /** The service-role `supabase.storage` that serves what the target may read. */
134
+ readonly admin: StorageApi;
135
+ /** Runs as the target, such as `postgres.asUser(support.claims)`, so RLS on `storage.objects` decides. */
136
+ readonly sql: SqlClient;
137
+ /** Whether the session is read-only. Defaults to true. */
138
+ readonly readOnly?: boolean;
139
+ }
140
+ /**
141
+ * Storage for a support session, with the same `from(bucket)` file API as
142
+ * `supabase.storage`, so `bucket.connect()` and the blocks take it.
143
+ *
144
+ * Storage policies read `auth.uid()` from the request's token, and there is
145
+ * no token for the target, so reads go through Postgres as the target.
146
+ * `exists`, `info`, `list` and `listV2` run entirely there: the listings
147
+ * call the invoker-rights `storage.search` functions storage-api calls, so
148
+ * RLS filters each page as it would for the target's own request.
149
+ * `download` and the signed URLs first check there that the target may see
150
+ * the object, then the service client serves it. A hidden object answers
151
+ * like a missing one. `getPublicUrl` is built without a check, as it is
152
+ * built without a request.
153
+ *
154
+ * Writes resolve to a `403` error: `SUPPORT_READ_ONLY` in a read-only
155
+ * session and `SUPPORT_STORAGE_WRITES` in a writable one. The service client
156
+ * would store the object with no owner, and Storage never sees the session's
157
+ * `act` claim, so the write could be neither attributed to the target nor
158
+ * audited as the admin's.
159
+ */
160
+ export declare function supportStorage(options: SupportStorageOptions): StorageApi;
161
+ //#endregion
112
162
  //#region src/server/entries/upstream.d.ts
113
163
  /** The `withSupabase` context keys `withBetterDb` and `withBetterPostgres` read. */
114
164
  interface SupabaseAuthContext {
@@ -156,7 +206,7 @@ export declare function withBetterPostgres<M extends AnyModels, D, F extends Any
156
206
  */
157
207
  export declare function withBlock<const Key extends string, In extends object, Service>(key: Key, create: (ctx: In) => Service): SingleKeyEntry<Key, In, Service>;
158
208
  //#endregion
159
- //#region src/server/entries/claims.d.ts
209
+ //#region src/auth/claims.d.ts
160
210
  /** `jwtClaims` as `withSupabase` contributes it: the verified token's payload, or `null`. */
161
211
  export declare function jwtClaimsOf<C>(auth: AuthState<C>): (JWTClaims & C) | null;
162
212
  /** `userClaims` as `withSupabase` contributes it, or `null` without a user. */
@@ -192,6 +242,18 @@ export declare function checkSession(sql: SessionLookup, auth: {
192
242
  readonly kind: string;
193
243
  }): Promise<DbError | undefined>;
194
244
  //#endregion
245
+ //#region src/server/resource.d.ts
246
+ /**
247
+ * Operations over one table, matching the paths and responses of the API
248
+ * model: `GET/POST /<table>`, `GET/PATCH/DELETE /<table>/{id}` and each
249
+ * action's path. Shared by the HTTP adapters and the MCP table tools.
250
+ *
251
+ * With permissions, the authorizer decides before the repository runs:
252
+ * `get`, `update` and `delete` fetch the row first (under RLS) and pass it
253
+ * as the resource's properties, and `list` keeps only the rows it grants.
254
+ */
255
+ export declare function defineResource<M extends AnyModels, D, F extends AnyFunctions, E, T extends TableKey<M>, Ref = string, DbT = unknown>(betterSupabase: BetterSupabase<M, D, F, E>, table: T, options?: ResourceRouteOptions<M, T, NoInfer<Ref>, DbT>, authorizer?: Authorizer<Ref>): ResourceHandler<Ref>;
256
+ //#endregion
195
257
  //#region src/server/entries/timing.d.ts
196
258
  /** The header `withDbStats` sets: `calls;waves;ms`, what `expectDbBudget` reads. */
197
259
  export declare const DB_CALLS_HEADER = "x-bs-db-calls";
@@ -225,4 +287,4 @@ export declare function withDbStats(options?: {
225
287
  };
226
288
  }, () => DbStats>;
227
289
  //#endregion
228
- export { AUTH_CACHE_HEADERS, type Aal, type AccountEventType, type ActClaim, type ActionResult, type ActiveSupport, type AmrEntry, type AuthKind, type AuthResolution, type AuthResolver, type AuthSession, type AuthState, type AuthorizeOptions, type AuthorizedContext, type BetterServer, type BetterSupabaseConfig, type BetterSupabaseContributions, type BetterSupabaseEntry, type BlockActionOptions, type BlockRequireOptions, type ClearSessionCookiesOptions, type ContextOptions, type CookieOptions, type CookieRecord, type CookieWrite, type CsvOptions, type CsvResponseOptions, type DeleteAccountOptions, type DeleteAccountResult, type EndSessionsResult, type ForContextOptions, type GuardEntryConfig, type GuardOptions, type HandleOptions, type ImpersonationOptions, type Impersonator, type InvalidReason, type LastSignIn, type MiddlewareOptions, PRIMARY_COOKIE, PROBLEM_CONTENT_TYPE, PROBLEM_TYPE_BASE, type ProblemDetails, type ProblemOptions, type ProblemResponseOptions, type RefreshOutcome, type RefreshPolicy, type ReplicaState, type RequestIdOptions, type ResolveAuthOptions, type ResolvedState, type ResourceHandler, type ResourceInput, type ResourceList, type ResourcePagination, type ResourceRouteOptions, type RespondOptions, SUPPORT_COOKIE, type ServerContext, type ServerCore, type ServerDbOptions, type ServerOptions, type ServerTiming, type SessionActor, type SessionDelegation, type SessionEntryConfig, type SessionLookup, type SessionStatus, type SessionStatusOptions, type Settled, type SqlSupportStoreOptions, type StoredSession, type SupabaseAuthContext, type SupportApi, type SupportAuthorizeInput, type SupportCallerClaims, type SupportCookieOptions, type SupportEndedBy, type SupportListFilter, type SupportOptions, type SupportPolicy, type SupportSession, type SupportSessionStore, type SupportSessions, type SupportStartInput, type SupportStartRequest, type SupportView, type SuspendAccountOptions, type SuspendAccountResult, TENANT_HEADER, type TagOptions, aalOf, amrOf, authContext, cacheTagsOf, checkAal, clearSessionCookies, clearSupportCookie, clientIp, createServer, defineResource, deleteAccount, endSessions, extendServer, fromProblem, guard, hasRole, impersonatorOf, isPrefetch, isProblem, isResult, lastSignIns, problemResponse, readSession, refreshFor, refreshSession, resolveAuth, respond, rolesAt, serverCore, sessionCookieName, sessionStatus, settle, shouldCheckSession, shouldRefresh, sqlSupportStore, supportClaims, supportCookie, supportCookieValue, supportOf, supportSessions, suspendAccount, tagCache, tagFor, toProblem, toSession, withBetterSupabase, withGuard, withSession, writeSession };
290
+ export { AUTH_CACHE_HEADERS, type Aal, type AccountEventType, type ActClaim, type ActionResult, type ActiveSupport, type AmrEntry, type AnyAuthorizer, type AuthKind, type AuthResolution, type AuthResolver, type AuthSession, type AuthState, type AuthorizationOutcome, type AuthorizationRequest, type AuthorizationResource, type AuthorizationSubject, type AuthorizeOptions, type AuthorizedContext, type Authorizer, type BetterServer, type BetterSupabaseConfig, type BetterSupabaseContributions, type BetterSupabaseEntry, type BlockActionOptions, type BlockRequireOptions, type ClearSessionCookiesOptions, type ContextOptions, type CookieOptions, type CookieRecord, type CookieWrite, type CsvOptions, type CsvResponseOptions, type DeleteAccountOptions, type DeleteAccountResult, type EndSessionsResult, type ForContextOptions, type GuardEntryConfig, type GuardOptions, type HandleOptions, type ImpersonationOptions, type Impersonator, type InvalidReason, type LastSignIn, type LiteDriver, type MiddlewareOptions, PRIMARY_COOKIE, PROBLEM_CONTENT_TYPE, PROBLEM_TYPE_BASE, type PermissionRef, type ProblemDetails, type ProblemOptions, type ProblemResponseOptions, type RefreshOutcome, type RefreshPolicy, type ReplicaState, type RequestIdOptions, type ResolveAuthOptions, type ResolvedState, type ResourceHandler, type ResourceInput, type ResourceList, type ResourcePagination, type ResourceRouteOptions, type RespondOptions, SUPPORT_COOKIE, type ServerContext, type ServerCore, type ServerDbOptions, type ServerOptions, type ServerTiming, type SessionActor, type SessionDelegation, type SessionEntryConfig, type SessionLookup, type SessionStatus, type SessionStatusOptions, type Settled, type SqlSupportStoreOptions, type StoredSession, type SupabaseAuthContext, type SupportApi, type SupportAuthorizeInput, type SupportCallerClaims, type SupportCookieOptions, type SupportEndedBy, type SupportExpireRouteOptions, type SupportListFilter, type SupportOptions, type SupportPolicy, type SupportSession, type SupportSessionStore, type SupportSessions, type SupportStartInput, type SupportStartRequest, type SupportStorageOptions, type SupportView, type SuspendAccountOptions, type SuspendAccountResult, TENANT_HEADER, type TagOptions, aalOf, amrOf, authContext, cacheTagsOf, checkAal, clearSessionCookies, clearSupportCookie, clientIp, defineAuthorizer, deleteAccount, endSessions, fromProblem, guard, hasRole, impersonatorOf, isPrefetch, isProblem, isResult, lastSignIns, problemResponse, readSession, refreshFor, refreshSession, resolveAuth, respond, rolesAt, serverCore, sessionCookieName, sessionStatus, settle, shouldCheckSession, shouldRefresh, sqlSupportStore, supportClaims, supportCookie, supportCookieValue, supportOf, supportSessions, suspendAccount, tagCache, tagFor, toProblem, toSession, withBetterSupabase, withGuard, withSession, writeSession };
@@ -1,21 +1,23 @@
1
- import { n as dbError } from "../errors-B11Duf73.js";
2
- import { a as problemResponse, i as isProblem, n as PROBLEM_TYPE_BASE, o as toProblem, r as fromProblem, t as PROBLEM_CONTENT_TYPE } from "../problem-BreOl8b8.js";
1
+ import { n as dbError } from "../errors-2M6CKMP4.js";
2
+ import { i as isProblem, n as PROBLEM_TYPE_BASE, o as problemResponse, r as fromProblem, s as toProblem, t as PROBLEM_CONTENT_TYPE } from "../problem-CJvFeGu7.js";
3
3
  import { i as userContext, r as impersonatorOf } from "../impersonation-DcqaTBHx.js";
4
4
  import { t as supportOf } from "../support-view-g4YLBeqX.js";
5
- import { n as toCsv, t as csvColumns } from "../csv-DCK-PT1n.js";
6
- import { n as postgresExecutor } from "../executor-De1Of3m3.js";
7
- import { C as serverCore, D as suspendAccount, E as lastSignIns, O as deleteAccount, T as endSessions, _ as withSession, a as unexpectedResponse, b as shouldCheckSession, c as extendServer, d as clearSupportCookie, f as supportCookie, i as resolveToken, m as supportCookieValue, n as flushEvents, o as TENANT_HEADER, r as handle, s as createServer, u as SUPPORT_COOKIE, v as isPrefetch, w as SERVER_EVENT_SOURCE, x as shouldRefresh, y as refreshFor } from "../adapter-iKgjHVPx.js";
5
+ import { n as toCsv, t as csvColumns } from "../csv-BZnHA1Py.js";
6
+ import { n as postgresExecutor } from "../executor-B_Hfobee.js";
7
+ import { D as lastSignIns, E as endSessions, O as suspendAccount, S as shouldRefresh, T as SERVER_EVENT_SOURCE, a as unexpectedResponse, b as refreshFor, c as extendServer, d as clearSupportCookie, f as supportCookie, h as TENANT_HEADER, i as resolveToken, k as deleteAccount, l as supportStorage, m as supportCookieValue, n as flushEvents, o as withFlush, r as handle, s as createServer, u as SUPPORT_COOKIE, v as withSession, w as serverCore, x as shouldCheckSession, y as isPrefetch } from "../adapter-CN45ibbV.js";
8
8
  import { n as PRIMARY_COOKIE } from "../replicas-CwrYp5Zj.js";
9
- import { _ as writeSession, a as refreshSession, c as AUTH_CACHE_HEADERS, h as sessionCookieName, i as resolveAuth, n as clientIp, o as clearSessionCookies, p as readSession, s as sessionStatus, t as authContext } from "../resolve-tJZY3FEa.js";
10
- import { a as checkAal, i as amrOf, n as toSession, r as aalOf } from "../view-BeFcRV6G.js";
11
- import { a as respond, i as isResult, o as settle, r as guard } from "../respond-BUgsXNgk.js";
12
- import { n as sqlSupportStore, r as supportClaims, t as supportSessions } from "../support-ig_K4PvS.js";
13
- import { n as jwtClaimsOf, r as userClaimsOf, t as authModeOf } from "../claims-DDBQT6BK.js";
14
- import { n as withGuard, t as withBetterSupabase } from "../composite-DXVUibdi.js";
15
- import { t as defineResource } from "../resource-BsvzCMlX.js";
9
+ import { t as authContext } from "../context-nPDvQ-Zl.js";
10
+ import { a as clearSessionCookies, f as readSession, g as writeSession, i as refreshSession, m as sessionCookieName, o as sessionStatus, r as resolveAuth, s as AUTH_CACHE_HEADERS, t as clientIp } from "../resolve-Bvgf3ut_.js";
11
+ import { a as checkAal, i as amrOf, n as toSession, r as aalOf } from "../view-D5ryq3gz.js";
12
+ import { a as respond, i as isResult, o as settle, r as guard } from "../respond-volM3ByS.js";
13
+ import { n as sqlSupportStore, r as supportClaims, t as supportSessions } from "../support-D1pFFouF.js";
14
+ import { n as jwtClaimsOf, r as userClaimsOf, t as authModeOf } from "../claims-0KZVT804.js";
15
+ import { n as withGuard, t as withBetterSupabase } from "../composite-zTe0TCqj.js";
16
+ import { r as defineAuthorizer } from "../authorizer-ayxUDXXP.js";
17
+ import { t as defineResource } from "../resource-DA811u_4.js";
16
18
  import { i as withServerTiming, n as parseDbStats, r as withDbStats, t as DB_CALLS_HEADER } from "../timing-CyTQPubY.js";
17
19
  import { n as tagCache, r as tagFor, t as cacheTagsOf } from "../tags-B99_U9Pp.js";
18
- import { a as rolesAt, r as hasRole } from "../kit-Fm-Fv7q5.js";
20
+ import { a as rolesAt, r as hasRole } from "../kit-BhHr9T9v.js";
19
21
  import { defineMiddleware } from "@supabase/middleware";
20
22
  //#region src/server/csv.ts
21
23
  function disposition(filename) {
@@ -142,4 +144,4 @@ async function checkSession(sql, auth) {
142
144
  return row?.active === true ? void 0 : revoked;
143
145
  }
144
146
  //#endregion
145
- export { AUTH_CACHE_HEADERS, DB_CALLS_HEADER, PRIMARY_COOKIE, PROBLEM_CONTENT_TYPE, PROBLEM_TYPE_BASE, SERVER_EVENT_SOURCE, SUPPORT_COOKIE, TENANT_HEADER, aalOf, amrOf, authContext, authModeOf, cacheTagsOf, checkAal, checkSession, clearSessionCookies, clearSupportCookie, clientIp, contextFromSupabase, createServer, csvColumns, csvResponse, defineResource, deleteAccount, endSessions, extendServer, flushEvents, fromProblem, guard, handle, hasRole, impersonatorOf, isPrefetch, isProblem, isResult, jwtClaimsOf, lastSignIns, parseDbStats, problemResponse, readSession, refreshFor, refreshSession, resolveAuth, resolveToken, respond, rolesAt, serverCore, sessionCookieName, sessionStatus, settle, shouldCheckSession, shouldRefresh, sqlSupportStore, supportClaims, supportCookie, supportCookieValue, supportOf, supportSessions, suspendAccount, tagCache, tagFor, toCsv, toProblem, toSession, unexpectedResponse, userClaimsOf, withBetterDb, withBetterPostgres, withBetterSupabase, withBlock, withDbStats, withGuard, withServerTiming, withSession, writeSession };
147
+ export { AUTH_CACHE_HEADERS, DB_CALLS_HEADER, PRIMARY_COOKIE, PROBLEM_CONTENT_TYPE, PROBLEM_TYPE_BASE, SERVER_EVENT_SOURCE, SUPPORT_COOKIE, TENANT_HEADER, aalOf, amrOf, authContext, authModeOf, cacheTagsOf, checkAal, checkSession, clearSessionCookies, clearSupportCookie, clientIp, contextFromSupabase, createServer, csvColumns, csvResponse, defineAuthorizer, defineResource, deleteAccount, endSessions, extendServer, flushEvents, fromProblem, guard, handle, hasRole, impersonatorOf, isPrefetch, isProblem, isResult, jwtClaimsOf, lastSignIns, parseDbStats, problemResponse, readSession, refreshFor, refreshSession, resolveAuth, resolveToken, respond, rolesAt, serverCore, sessionCookieName, sessionStatus, settle, shouldCheckSession, shouldRefresh, sqlSupportStore, supportClaims, supportCookie, supportCookieValue, supportOf, supportSessions, supportStorage, suspendAccount, tagCache, tagFor, toCsv, toProblem, toSession, unexpectedResponse, userClaimsOf, withBetterDb, withBetterPostgres, withBetterSupabase, withBlock, withDbStats, withFlush, withGuard, withServerTiming, withSession, writeSession };