better-supabase 0.15.0 → 0.16.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 (328) hide show
  1. package/dist/{adapter-B0b6MXYS.js → adapter-Dyks1lX1.js} +1 -1
  2. package/dist/{agents-5n8DWRfP.d.ts → agents-CMIB3802.d.ts} +1 -1
  3. package/dist/{ai-cache-DyHohbFP.d.ts → ai-cache-2LGgaT7F.d.ts} +1 -1
  4. package/dist/{ai-chat-D1GuRnke.d.ts → ai-chat-BCaKsvLW.d.ts} +1 -1
  5. package/dist/{ai-schedules-CAquecT_.d.ts → ai-schedules-BmkARmQ9.d.ts} +2 -2
  6. package/dist/ai-sdk/agents/index.d.ts +4 -4
  7. package/dist/ai-sdk/batches/index.d.ts +1 -1
  8. package/dist/ai-sdk/cache/index.d.ts +1 -1
  9. package/dist/ai-sdk/chat/index.d.ts +1 -1
  10. package/dist/ai-sdk/embeddings/index.d.ts +2 -2
  11. package/dist/ai-sdk/index.d.ts +4 -4
  12. package/dist/ai-sdk/memory/index.d.ts +3 -3
  13. package/dist/ai-sdk/workflow/index.d.ts +3 -3
  14. package/dist/{api-DxAPqMrE.d.ts → api-hHwieEfz.d.ts} +1 -1
  15. package/dist/{app-tables-CF2DD-Mu.d.ts → app-tables-yMQ4ubyY.d.ts} +1 -1
  16. package/dist/{approvals-Crutd4-o.d.ts → approvals-Dh9dUXrN.d.ts} +1 -1
  17. package/dist/{assistant-CD_h8Vxx.d.ts → assistant-ndGdOBax.d.ts} +2 -2
  18. package/dist/astro/index.d.ts +4 -4
  19. package/dist/astro/index.js +2 -2
  20. package/dist/{auth-module-BEFESDC4.js → auth-module-BbmX-N4L.js} +12 -4
  21. package/dist/{authorization-hooks-Cs1vP_ej.d.ts → authorization-hooks-D_pwXlBs.d.ts} +4 -0
  22. package/dist/better-result/index.d.ts +2 -2
  23. package/dist/{bind-CrMBwrPN.d.ts → bind-JGCPGUJh.d.ts} +4 -4
  24. package/dist/{block-env-B_uEM2xz.d.ts → block-env-y65GF_px.d.ts} +4 -4
  25. package/dist/blocks/access-requests/index.d.ts +1 -1
  26. package/dist/blocks/activities/index.d.ts +2 -2
  27. package/dist/blocks/agents/index.d.ts +2 -2
  28. package/dist/blocks/ai-cache/index.d.ts +2 -2
  29. package/dist/blocks/ai-chat/index.d.ts +5 -5
  30. package/dist/blocks/ai-files/index.d.ts +1 -1
  31. package/dist/blocks/ai-keys/index.d.ts +1 -1
  32. package/dist/blocks/ai-schedules/index.d.ts +2 -2
  33. package/dist/blocks/announcements/index.d.ts +4 -4
  34. package/dist/blocks/api-keys/index.d.ts +2 -2
  35. package/dist/blocks/approvals/index.d.ts +2 -2
  36. package/dist/blocks/assets/index.d.ts +1 -1
  37. package/dist/blocks/assignment/index.d.ts +1 -1
  38. package/dist/blocks/attachments/index.d.ts +2 -2
  39. package/dist/blocks/audit/index.d.ts +5 -5
  40. package/dist/blocks/automations/index.d.ts +4 -4
  41. package/dist/blocks/billable-time/index.d.ts +1 -1
  42. package/dist/blocks/billing/index.d.ts +3 -3
  43. package/dist/blocks/bookings/index.d.ts +3 -3
  44. package/dist/blocks/bulk/index.d.ts +1 -1
  45. package/dist/blocks/calendar/index.d.ts +2 -2
  46. package/dist/blocks/catalog/index.d.ts +1 -1
  47. package/dist/blocks/channels/index.d.ts +1 -1
  48. package/dist/blocks/collections/index.d.ts +1 -1
  49. package/dist/blocks/comments/index.d.ts +4 -4
  50. package/dist/blocks/compliance/index.d.ts +1 -1
  51. package/dist/blocks/connectors/index.d.ts +1 -1
  52. package/dist/blocks/contacts/index.d.ts +1 -1
  53. package/dist/blocks/content/index.d.ts +1 -1
  54. package/dist/blocks/contracts/index.d.ts +1 -1
  55. package/dist/blocks/courses/index.d.ts +1 -1
  56. package/dist/blocks/created-by/index.d.ts +1 -1
  57. package/dist/blocks/custom-fields/index.d.ts +1 -1
  58. package/dist/blocks/data-lifecycle/index.d.ts +2 -2
  59. package/dist/blocks/deals/index.d.ts +1 -1
  60. package/dist/blocks/dispatch/index.d.ts +1 -1
  61. package/dist/blocks/documents/index.d.ts +1 -1
  62. package/dist/blocks/domains/index.d.ts +1 -1
  63. package/dist/blocks/donations/index.d.ts +1 -1
  64. package/dist/blocks/drive/index.d.ts +2 -2
  65. package/dist/blocks/employees/index.d.ts +2 -2
  66. package/dist/blocks/enrichment/index.d.ts +1 -1
  67. package/dist/blocks/enrollments/index.d.ts +1 -1
  68. package/dist/blocks/entitlements/index.d.ts +3 -3
  69. package/dist/blocks/expenses/index.d.ts +1 -1
  70. package/dist/blocks/field-history/index.d.ts +1 -1
  71. package/dist/blocks/flags/index.d.ts +1 -1
  72. package/dist/blocks/forecasts/index.d.ts +1 -1
  73. package/dist/blocks/forms/index.d.ts +2 -2
  74. package/dist/blocks/goals/index.d.ts +1 -1
  75. package/dist/blocks/guests/index.d.ts +1 -1
  76. package/dist/blocks/hiring/index.d.ts +1 -1
  77. package/dist/blocks/identities/index.d.ts +2 -2
  78. package/dist/blocks/imports/index.d.ts +1 -1
  79. package/dist/blocks/inbox/index.d.ts +5 -5
  80. package/dist/blocks/incidents/index.d.ts +1 -1
  81. package/dist/blocks/index.d.ts +2 -2
  82. package/dist/blocks/inventory/index.d.ts +2 -2
  83. package/dist/blocks/invoices/index.d.ts +1 -1
  84. package/dist/blocks/knowledge/index.d.ts +2 -2
  85. package/dist/blocks/lead-scoring/index.d.ts +1 -1
  86. package/dist/blocks/leases/index.d.ts +1 -1
  87. package/dist/blocks/leave/index.d.ts +1 -1
  88. package/dist/blocks/ledger/index.d.ts +1 -1
  89. package/dist/blocks/mail-sync/index.d.ts +1 -1
  90. package/dist/blocks/memberships/index.d.ts +1 -1
  91. package/dist/blocks/memory/index.d.ts +3 -3
  92. package/dist/blocks/messaging/index.d.ts +4 -4
  93. package/dist/blocks/metrics/index.d.ts +2 -2
  94. package/dist/blocks/mfa/index.d.ts +2 -2
  95. package/dist/blocks/moderation/index.d.ts +1 -1
  96. package/dist/blocks/notifications/index.d.ts +5 -5
  97. package/dist/blocks/numbering/index.d.ts +1 -1
  98. package/dist/blocks/oauth-server/index.d.ts +1 -1
  99. package/dist/blocks/onboarding/index.d.ts +2 -2
  100. package/dist/blocks/orders/index.d.ts +3 -3
  101. package/dist/blocks/organizations/index.d.ts +2 -2
  102. package/dist/blocks/outbox/index.d.ts +2 -2
  103. package/dist/blocks/passes/index.d.ts +2 -2
  104. package/dist/blocks/permissions/index.d.ts +3 -3
  105. package/dist/blocks/pipelines/index.d.ts +1 -1
  106. package/dist/blocks/posts/index.d.ts +1 -1
  107. package/dist/blocks/profiles/index.d.ts +1 -1
  108. package/dist/blocks/promotions/index.d.ts +1 -1
  109. package/dist/blocks/push/index.d.ts +2 -2
  110. package/dist/blocks/queue/index.d.ts +30 -3
  111. package/dist/blocks/queue/index.js +2 -2
  112. package/dist/blocks/quotes/index.d.ts +1 -1
  113. package/dist/blocks/rank/index.d.ts +2 -2
  114. package/dist/blocks/reactions/index.d.ts +4 -4
  115. package/dist/blocks/relations/index.d.ts +1 -1
  116. package/dist/blocks/reminders/index.d.ts +3 -3
  117. package/dist/blocks/reviews/index.d.ts +1 -1
  118. package/dist/blocks/saved-views/index.d.ts +3 -3
  119. package/dist/blocks/scores/index.d.ts +1 -1
  120. package/dist/blocks/search/index.d.ts +3 -3
  121. package/dist/blocks/security-events/index.d.ts +1 -1
  122. package/dist/blocks/segments/index.d.ts +1 -1
  123. package/dist/blocks/sequences/index.d.ts +1 -1
  124. package/dist/blocks/service-accounts/index.d.ts +1 -1
  125. package/dist/blocks/sessions/index.d.ts +2 -2
  126. package/dist/blocks/settings/index.d.ts +2 -2
  127. package/dist/blocks/share-links/index.d.ts +1 -1
  128. package/dist/blocks/shipments/index.d.ts +1 -1
  129. package/dist/blocks/signatures/index.d.ts +1 -1
  130. package/dist/blocks/signing-keys/index.d.ts +1 -1
  131. package/dist/blocks/sla/index.d.ts +1 -1
  132. package/dist/blocks/sso/index.d.ts +1 -1
  133. package/dist/blocks/state-machine/index.d.ts +1 -1
  134. package/dist/blocks/subjects/index.d.ts +2 -2
  135. package/dist/blocks/tags/index.d.ts +2 -2
  136. package/dist/blocks/tasks/index.d.ts +2 -2
  137. package/dist/blocks/teams/index.d.ts +1 -1
  138. package/dist/blocks/templates/index.d.ts +3 -3
  139. package/dist/blocks/time-tracking/index.d.ts +1 -1
  140. package/dist/blocks/timeline/index.d.ts +3 -3
  141. package/dist/blocks/trash/index.d.ts +1 -1
  142. package/dist/blocks/undo/index.d.ts +2 -2
  143. package/dist/blocks/updated-at/index.d.ts +1 -1
  144. package/dist/blocks/usage/index.d.ts +3 -3
  145. package/dist/blocks/vercel-marketplace/index.d.ts +1 -1
  146. package/dist/blocks/versions/index.d.ts +1 -1
  147. package/dist/blocks/waitlist/index.d.ts +1 -1
  148. package/dist/blocks/webhooks/index.d.ts +4 -4
  149. package/dist/blocks/webhooks/index.js +1 -1
  150. package/dist/blocks/workflow-editor/index.d.ts +6 -6
  151. package/dist/blocks/workflow-editor/index.js +12 -1
  152. package/dist/blocks/workflows/index.d.ts +4 -4
  153. package/dist/{bookings-D4dvGXiR.d.ts → bookings-Dox2rced.d.ts} +1 -1
  154. package/dist/{bucket-CiNi8sIw.d.ts → bucket-vc-QRrva.d.ts} +40 -1
  155. package/dist/chat-sdk/index.d.ts +1 -1
  156. package/dist/cli/add-Bfb_ISrO.js +1 -0
  157. package/dist/cli/{add-BgsUjCan.js → add-D7TkPdco.js} +17 -12
  158. package/dist/cli/{add-DCI5JKjA.js → add-I8OW-qJH.js} +2 -2
  159. package/dist/cli/{backfill-nxPbcsns.js → backfill-DIz5DnlQ.js} +1 -1
  160. package/dist/cli/bin.js +1 -1
  161. package/dist/cli/{blocks-Cr4HGePW.js → blocks-Bp5RPoft.js} +1 -1
  162. package/dist/cli/{blocks-BZHI8mRC.js → blocks-xk-SE8gS.js} +1 -1
  163. package/dist/cli/{cache-CXgR_Ahi.js → cache-AznIssjI.js} +1 -1
  164. package/dist/cli/{codemod-DSN7iAdg.js → codemod-Aewxza6i.js} +95 -3
  165. package/dist/cli/{content-mapper-DNs7lTu7.js → content-mapper-DCrz6OIv.js} +2 -2
  166. package/dist/cli/{doctor-DDrEM6S1.js → doctor-DkOSLPEQ.js} +29 -14
  167. package/dist/cli/{gen-MtijJQ9r.js → gen-CFkYUnWq.js} +10 -10
  168. package/dist/cli/index.d.ts +1 -1
  169. package/dist/cli/index.js +6 -6
  170. package/dist/cli/{init-D-aDv9r5.js → init-CHj9ad4S.js} +5 -5
  171. package/dist/cli/legacy-prefix-DkTA3Rhx.js +141 -0
  172. package/dist/cli/{live-iEeH15ck.js → live-DGdLR41j.js} +2 -2
  173. package/dist/cli/{mcp-BAPyaQ62.js → mcp-BZno503V.js} +2 -2
  174. package/dist/cli/{metadata-DVx9Zgbj.js → metadata-BfgHMe4q.js} +3 -3
  175. package/dist/cli/{migration-safety-D7PhzFxm.js → migration-safety-BnnXPAro.js} +1 -1
  176. package/dist/cli/{module-migration-aPCckev6.js → module-migration-O_IxewFs.js} +5 -216
  177. package/dist/cli/{print-BeWO7OJY.js → print-DosQIFSy.js} +1 -1
  178. package/dist/cli/{remove-B46Dmd2M.js → remove-DK2G_KHm.js} +5 -4
  179. package/dist/cli/{render-ucJmUyuM.js → render-5y5a1QZr.js} +3 -3
  180. package/dist/cli/{run-CvYVAztY.js → run-Bs4OKdDI.js} +20 -7
  181. package/dist/cli/{run-DYhLBcFW.js → run-MRET30vh.js} +20 -20
  182. package/dist/cli/{shared-LZroULBe.js → shared-BLqbvY2x.js} +1 -1
  183. package/dist/cli/{snapshot-C8MVPyO8.js → snapshot-uTUlEzY2.js} +2 -2
  184. package/dist/cli/{source-DANaJJVc.js → source-D2gJHKwC.js} +1 -1
  185. package/dist/cli/{spec-DGVNMSSB.js → spec-Cm2einTO.js} +2 -2
  186. package/dist/cli/{spec-g8_G5K7o.js → spec-DUjOtciN.js} +1 -1
  187. package/dist/cli/sql-layout-lUWenjJw.js +247 -0
  188. package/dist/cli/{sync-btj01bcM.js → sync-CZMRB3aU.js} +2 -1
  189. package/dist/cli/{upgrade-B596d4t8.js → upgrade-BFEIMC7U.js} +4 -137
  190. package/dist/cli/{upgrade-Dw3TMQzn.js → upgrade-fVsJniXm.js} +2 -2
  191. package/dist/cli/{version-Du4CgONY.js → version-B2Dr6VmJ.js} +1 -1
  192. package/dist/client/index.d.ts +5 -5
  193. package/dist/client/index.js +1 -1
  194. package/dist/client/native/index.d.ts +5 -5
  195. package/dist/client/native/index.js +1 -1
  196. package/dist/{client-BAEbEA7t.js → client-C_mlji5R.js} +6 -5
  197. package/dist/{composite-BARuBEDE.js → composite-B3TIjId4.js} +1 -1
  198. package/dist/{composite-Dsxj7T5K.d.ts → composite-CfYyU3vs.d.ts} +4 -3
  199. package/dist/config/index.d.ts +1 -1
  200. package/dist/{context-CEuTKrkz.d.ts → context-8kb8m5uO.d.ts} +24 -2
  201. package/dist/{controller-BrP0gn47.d.ts → controller-BW-5Opig.d.ts} +1 -1
  202. package/dist/{conversion-BAbucuXq.d.ts → conversion-3iv2r7YC.d.ts} +1 -1
  203. package/dist/create/index.d.ts +2 -2
  204. package/dist/create/index.js +1 -1
  205. package/dist/{define-DFBnQyYg.d.ts → define-C5AcEkEJ.d.ts} +1 -1
  206. package/dist/{define-block-BVcLQ3DF.d.ts → define-block-C1RHXz7L.d.ts} +3 -3
  207. package/dist/delegation-C7eWP2r8.d.ts +14 -0
  208. package/dist/{delegation--93jRsVO.js → delegation-DGOIiT8k.js} +12 -5
  209. package/dist/edge/index.d.ts +5 -5
  210. package/dist/edge/index.js +3 -3
  211. package/dist/{embeddings-kFbRvuic.d.ts → embeddings-D_RsS6ow.d.ts} +1 -1
  212. package/dist/{entitlements-CJpYQXeE.d.ts → entitlements-sO977DO-.d.ts} +1 -1
  213. package/dist/{envelope-Bzu0JnY2.js → envelope-DEI2iX-d.js} +1 -1
  214. package/dist/eve/index.d.ts +2 -2
  215. package/dist/{eve-BFSwTu1z.d.ts → eve-B7jxYPCw.d.ts} +2 -2
  216. package/dist/{executor-CVIn6JHa.d.ts → executor-BcNWcD-4.d.ts} +2 -2
  217. package/dist/{executor-_2ekNofh.d.ts → executor-Bi056Cnj.d.ts} +1 -1
  218. package/dist/expo/index.d.ts +2 -2
  219. package/dist/expo/index.js +2 -2
  220. package/dist/{field-errors-fsbFktYF.d.ts → field-errors-Dt86dCKk.d.ts} +12 -12
  221. package/dist/{framework-BKyTeS-j.d.ts → framework-BGdZVyPL.d.ts} +3 -3
  222. package/dist/{framework-DDdkR7FX.js → framework-BozTXRzt.js} +1 -1
  223. package/dist/{gateway-TD1pRfTP.d.ts → gateway-DzI687yd.d.ts} +3 -3
  224. package/dist/hono/index.d.ts +4 -4
  225. package/dist/hono/index.js +2 -2
  226. package/dist/{index-C-qpk8EQ.d.ts → index-CENWq3zb.d.ts} +1 -1
  227. package/dist/{index-Do2ChN_y.d.ts → index-CQhPHHDF.d.ts} +20 -2
  228. package/dist/{index-B938YqY-.d.ts → index-CTu-3fJB.d.ts} +51 -3
  229. package/dist/{index-CguFm716.d.ts → index-Cc4mIQS8.d.ts} +32 -4
  230. package/dist/{index-DLq69k3F.d.ts → index-CcAmFNVi.d.ts} +2 -2
  231. package/dist/{index-BnH4Gomw.d.ts → index-Craf712U.d.ts} +44 -12
  232. package/dist/{index-BUuVq1co.d.ts → index-DZKCc2WM.d.ts} +3 -3
  233. package/dist/index.d.ts +2 -2
  234. package/dist/{knowledge-CtL-Vfgy.d.ts → knowledge-F1IhRI4Q.d.ts} +1 -1
  235. package/dist/list/index.d.ts +1 -1
  236. package/dist/{list-query-BDVutLFr.d.ts → list-query-DYhgRTd5.d.ts} +1 -1
  237. package/dist/mapper/bin.js +5 -5
  238. package/dist/mcp/index.d.ts +3 -3
  239. package/dist/mcp/index.js +1 -1
  240. package/dist/mcp/sdk/index.d.ts +2 -2
  241. package/dist/mcp/sdk/index.js +1 -1
  242. package/dist/next/client/index.d.ts +81 -1
  243. package/dist/next/client/index.js +178 -2
  244. package/dist/next/index.d.ts +15 -14
  245. package/dist/next/index.js +2 -2
  246. package/dist/orpc/index.d.ts +4 -4
  247. package/dist/orpc/index.js +1 -1
  248. package/dist/otel/index.js +4 -4
  249. package/dist/{outbox-HvGAJuBe.d.ts → outbox-HxjZTfF6.d.ts} +1 -1
  250. package/dist/{ports-DOhtuw3c.js → ports-CaVRXjxq.js} +1 -1
  251. package/dist/{ports-sx226JUL.d.ts → ports-mObLgH1z.d.ts} +1 -1
  252. package/dist/powersync/index.d.ts +2 -2
  253. package/dist/preset/index.d.ts +3 -3
  254. package/dist/{push-token-D3Vcf0Pf.d.ts → push-token-BSSvsWXZ.d.ts} +1 -1
  255. package/dist/query/index.d.ts +1 -1
  256. package/dist/{rate-limit-o44SYkVY.js → rate-limit-Dt9vAY4E.js} +53 -0
  257. package/dist/react/index.d.ts +6 -6
  258. package/dist/react/index.js +3 -3
  259. package/dist/react/native/index.d.ts +1 -1
  260. package/dist/react/native/index.js +1 -1
  261. package/dist/react/server.d.ts +12 -7
  262. package/dist/react/server.js +8 -3
  263. package/dist/react/session.d.ts +5 -0
  264. package/dist/react/session.js +9 -1
  265. package/dist/{react-BuDYI62C.js → react-CZUZYn9E.js} +41 -4
  266. package/dist/react-router/index.d.ts +3 -3
  267. package/dist/react-router/index.js +2 -2
  268. package/dist/realtime/index.d.ts +6 -6
  269. package/dist/realtime/index.js +2 -1
  270. package/dist/{record-form-BYs9xv_N.d.ts → record-form-D9ILuVtA.d.ts} +1 -1
  271. package/dist/records/index.d.ts +7 -7
  272. package/dist/relay-gKvKJ3xf.js +208 -0
  273. package/dist/{resource-execute-CzHuDsil.d.ts → resource-execute-Cpnob1Vj.d.ts} +1 -1
  274. package/dist/{resource-types-DnKiH4G2.d.ts → resource-types-pMeLs68X.d.ts} +1 -1
  275. package/dist/{resources-B9cQxhjw.d.ts → resources-7iq2-5_A.d.ts} +1 -1
  276. package/dist/server/index.d.ts +150 -11
  277. package/dist/server/index.js +400 -4
  278. package/dist/{server-types-CFtehAsr.d.ts → server-types-CK8mUIUT.d.ts} +5 -354
  279. package/dist/{session-CH0SKgIz.d.ts → session-DWmFv3vB.d.ts} +2 -1
  280. package/dist/session-status-qQLm7jzh.d.ts +82 -0
  281. package/dist/{sign-in-DNCdrk05.js → sign-in-B64114O4.js} +1 -1
  282. package/dist/{sign-in-BsIaNx2C.js → sign-in-CmPK1AgM.js} +20 -10
  283. package/dist/solid/index.d.ts +7 -7
  284. package/dist/solid/index.js +1 -1
  285. package/dist/solid-start/index.d.ts +3 -3
  286. package/dist/solid-start/index.js +2 -2
  287. package/dist/spec/index.d.ts +1 -1
  288. package/dist/sql/index.d.ts +4 -4
  289. package/dist/sql/index.js +2 -2
  290. package/dist/{sql-ClHIdgKS.js → sql-Dl3Alk43.js} +402 -13
  291. package/dist/sqlite/index.d.ts +1 -1
  292. package/dist/ssr/index.d.ts +1 -1
  293. package/dist/storage/index.d.ts +3 -3
  294. package/dist/storage/index.js +54 -1
  295. package/dist/{subject-readers-BNSzkqw_.d.ts → subject-readers-8GySC9Z8.d.ts} +1 -1
  296. package/dist/support-B4ZBVxt3.d.ts +357 -0
  297. package/dist/svelte/index.d.ts +7 -7
  298. package/dist/svelte/index.js +1 -1
  299. package/dist/sveltekit/index.d.ts +4 -4
  300. package/dist/sveltekit/index.js +2 -2
  301. package/dist/{tags-BjHflcHF.d.ts → tags-qvVk79pp.d.ts} +1 -1
  302. package/dist/tanstack-db/index.d.ts +1 -1
  303. package/dist/tanstack-start/index.d.ts +3 -3
  304. package/dist/tanstack-start/index.js +2 -2
  305. package/dist/{tenant-yYg0E2-n.d.ts → tenant-DOKIJI62.d.ts} +1 -1
  306. package/dist/testing/index.d.ts +13 -12
  307. package/dist/{timeline-CtG0sehj.d.ts → timeline-CvTuXYvn.d.ts} +3 -3
  308. package/dist/{topic-CJrQZQaa.d.ts → topic-CZXHhZye.d.ts} +3 -3
  309. package/dist/{types-CAQBmpDx.d.ts → types-A4yyKEsg.d.ts} +1 -1
  310. package/dist/{types-SFRomQF7.d.ts → types-Czq9Xtpa.d.ts} +1 -7
  311. package/dist/{types-BBQLbui9.d.ts → types-DsRfiQ0v.d.ts} +1 -1
  312. package/dist/{usage-D7QkrwzV.d.ts → usage-Dp45V42p.d.ts} +1 -1
  313. package/dist/{verify-CMou8dWZ.d.ts → verify-CjvNLY7N.d.ts} +1 -1
  314. package/dist/vue/index.d.ts +7 -7
  315. package/dist/vue/index.js +1 -1
  316. package/dist/{watch-topic-BcGfvZOE.d.ts → watch-topic-BAxoPKZx.d.ts} +1 -1
  317. package/dist/workflow-sdk/builder/index.d.ts +3 -3
  318. package/dist/workflow-sdk/builder/index.js +1 -1
  319. package/dist/workflow-sdk/index.d.ts +1 -1
  320. package/dist/workflow-sdk/index.js +1 -1
  321. package/dist/{workflow-sdk-BFHu4sci.d.ts → workflow-sdk-B3Ss55Fy.d.ts} +1 -1
  322. package/dist/{workflow-sdk-BVlFEB5Q.js → workflow-sdk-Cf0LAOFF.js} +2 -2
  323. package/dist/yjs/index.d.ts +1 -1
  324. package/package.json +1 -1
  325. package/schemas/doctor-report-v1.json +1 -0
  326. package/skills/better-supabase-api/SKILL.md +3 -1
  327. package/skills/better-supabase-auth/SKILL.md +7 -0
  328. package/dist/cli/add-DWjlVwvP.js +0 -1
@@ -1,9 +1,9 @@
1
1
  import { r as dbErrorOf } from "../errors-BVFgt8BZ.js";
2
2
  import { o as problemResponse } from "../problem-Bf0cJ7tk.js";
3
- import { a as unexpectedResponse, c as extendServer, n as flushEvents, s as createServer } from "../adapter-B0b6MXYS.js";
3
+ import { a as unexpectedResponse, c as extendServer, n as flushEvents, s as createServer } from "../adapter-Dyks1lX1.js";
4
4
  import { l as snapshotOf, n as toSession } from "../view-C8Ve14ja.js";
5
5
  import { a as respond, t as defaultExpose } from "../respond-C3CcOZlA.js";
6
- import { t as withBetterSupabase } from "../composite-BARuBEDE.js";
6
+ import { t as withBetterSupabase } from "../composite-B3TIjId4.js";
7
7
  import { i as defineAction, t as defineResource } from "../resource-DV2GC2dB.js";
8
8
  import { i as requireCaller } from "../kit-5l-o8RxL.js";
9
9
  import { t as matchResource } from "../resources-C02l_YBJ.js";
@@ -1,4 +1,4 @@
1
- import { $r as PresetCatalog, Nn as PresetSpec, Un as PresetName, _t as presetConfig, ar as AppColumnConfig, mr as AppTableConfig, ni as PresetGlueItem, si as Preset, sr as AppColumnType, xt as ResolvedPreset, yr as AppTablesConfig } from "./context-CEuTKrkz.js";
1
+ import { Pn as PresetSpec, St as ResolvedPreset, Wn as PresetName, br as AppTablesConfig, ci as Preset, cr as AppColumnType, ei as PresetCatalog, hr as AppTableConfig, or as AppColumnConfig, ri as PresetGlueItem, vt as presetConfig } from "./context-8kb8m5uO.js";
2
2
  import { StandardSchemaV1 } from "@standard-schema/spec";
3
3
  //#region src/preset/catalog.generated.d.ts
4
4
  declare const PRESET_CATALOG: PresetCatalog;
@@ -1,5 +1,5 @@
1
1
  import { b as DbError, f as Result, t as AsyncResult } from "./result-DZeA5KS6.js";
2
- import { X as StoragePath, a as BucketConnectOptions, g as StorageAdminClient, i as BucketConfig, j as StorageClient, n as Bucket, r as BucketClient, s as BucketPolicy, x as TransformOptions } from "./bucket-CiNi8sIw.js";
2
+ import { C as TransformOptions, N as StorageClient, Q as StoragePath, a as BucketConnectOptions, i as BucketConfig, n as Bucket, r as BucketClient, s as BucketPolicy, v as StorageAdminClient } from "./bucket-vc-QRrva.js";
3
3
  import { SupabaseClient } from "@supabase/supabase-js";
4
4
  //#region src/storage/errors.d.ts
5
5
  /** Maps a Storage error (`StorageApiError`, fetch failures) to a `DbError`. */
@@ -284,4 +284,22 @@ interface VectorBucket<Id extends string, I extends Readonly<Record<string, Vect
284
284
  */
285
285
  declare function defineVectorBucket<const Id extends string, const I extends Readonly<Record<string, VectorIndexConfig>>>(config: VectorBucketConfig<Id, I>): VectorBucket<Id, I>;
286
286
  //#endregion
287
- export { StoredRef as A, AnyBucket as C, Buckets as D, BucketWithId as E, storageImageUrl as F, fromStorageError as I, StorageImageOptions as M, StorageImageSize as N, ConnectedRef as O, storageImageSrcSet as P, organizationLogoBucket as S, BucketMap as T, IMAGE_TYPES as _, VectorHit as a, OrganizationLogoBucketOptions as b, VectorMetadata as c, defineVectorBucket as d, AnalyticsBucket as f, AvatarBucketOptions as g, defineAnalyticsBucket as h, VectorDistance as i, defineBuckets as j, ResolvedRef as k, VectorQueryOptions as l, AnalyticsCatalog as m, VectorBucketClient as n, VectorIndexClient as o, AnalyticsBucketClient as p, VectorBucketConfig as r, VectorIndexConfig as s, VectorBucket as t, VectorRecord as u, ImageBucketOptions as v, BucketIdOf as w, avatarBucket as x, ImageVariant as y };
287
+ //#region src/storage/resumable.d.ts
288
+ interface ResumableEndpointOptions {
289
+ /**
290
+ * On a hosted project, send the upload to the direct Storage host
291
+ * (`<project-ref>.storage.supabase.co`), which Supabase recommends for large
292
+ * files. Defaults to true; other hosts, such as a local stack or a custom
293
+ * domain, are kept.
294
+ */
295
+ readonly direct?: boolean;
296
+ }
297
+ /**
298
+ * The TUS endpoint for a signed resumable upload,
299
+ * `<storage>/upload/resumable/sign`. `url` is the project URL (`SUPABASE_URL`),
300
+ * the Storage URL (`.../storage/v1`) or a signed upload URL from
301
+ * `createSignedUploadUrl`.
302
+ */
303
+ declare function resumableEndpoint(url: string, options?: ResumableEndpointOptions): string;
304
+ //#endregion
305
+ export { ConnectedRef as A, avatarBucket as C, BucketMap as D, BucketIdOf as E, StorageImageSize as F, storageImageSrcSet as I, storageImageUrl as L, StoredRef as M, defineBuckets as N, BucketWithId as O, StorageImageOptions as P, fromStorageError as R, OrganizationLogoBucketOptions as S, AnyBucket as T, defineAnalyticsBucket as _, VectorBucketConfig as a, ImageBucketOptions as b, VectorIndexClient as c, VectorQueryOptions as d, VectorRecord as f, AnalyticsCatalog as g, AnalyticsBucketClient as h, VectorBucketClient as i, ResolvedRef as j, Buckets as k, VectorIndexConfig as l, AnalyticsBucket as m, resumableEndpoint as n, VectorDistance as o, defineVectorBucket as p, VectorBucket as r, VectorHit as s, ResumableEndpointOptions as t, VectorMetadata as u, AvatarBucketOptions as v, organizationLogoBucket as w, ImageVariant as x, IMAGE_TYPES as y };
@@ -1,9 +1,57 @@
1
1
  import { b as DbError, f as Result } from "./result-DZeA5KS6.js";
2
2
  import { $ as RecordRef, ot as SchemaMeta } from "./types-DFdg_4yN.js";
3
- import { pt as QuerySpec } from "./define-DFBnQyYg.js";
3
+ import { pt as QuerySpec } from "./define-C5AcEkEJ.js";
4
4
  import { t as DataChanges } from "./data-engine-BWoz9lED.js";
5
- import { c as RealtimeClient, m as Topic, p as SubscriptionStatus } from "./topic-CJrQZQaa.js";
5
+ import { c as RealtimeClient, m as Topic, p as SubscriptionStatus } from "./topic-CZXHhZye.js";
6
+ import { n as TopicPort } from "./watch-topic-BAxoPKZx.js";
6
7
  import { StandardSchemaV1 } from "@standard-schema/spec";
8
+ //#region src/realtime/relay.d.ts
9
+ /** The `EventSource` the relay client reads with; the browser's fits. */
10
+ interface RelayEventSource {
11
+ readonly readyState: number;
12
+ addEventListener(type: string, listener: (event: {
13
+ readonly data?: unknown;
14
+ }) => void): void;
15
+ close(): void;
16
+ }
17
+ type RelayEventSourceConstructor = new (url: string, init?: {
18
+ withCredentials?: boolean;
19
+ }) => RelayEventSource;
20
+ interface RelayClientOptions {
21
+ /** Defaults to the global `EventSource`. */
22
+ readonly EventSource?: RelayEventSourceConstructor;
23
+ /** `fetch` for broadcasts; defaults to the global one. */
24
+ readonly fetch?: typeof fetch;
25
+ /**
26
+ * Milliseconds to wait for the first join before reporting `TIMED_OUT`.
27
+ * Defaults to 15000.
28
+ */
29
+ readonly timeoutMs?: number;
30
+ /** The longest wait between reconnects after the relay refused. Defaults to 30000. */
31
+ readonly maxBackoffMs?: number;
32
+ }
33
+ /**
34
+ * A Realtime client that joins topics through `realtimeRelay` on the server
35
+ * instead of a browser connection with the user's token: for support sessions
36
+ * ("view as user") and apps that keep sessions in httpOnly cookies. It has the
37
+ * `RealtimeClient` surface, so `defineTopic(...).subscribe`, `send`,
38
+ * `liveQuery`, `watchTopic` and the React hooks take it unchanged. Each topic
39
+ * is one server-sent event stream that reconnects on its own and reports a
40
+ * rejoin after a gap, so live queries refetch. Presence states arrive, but
41
+ * `track` answers `error`: presence is not relayed upstream.
42
+ *
43
+ * ```ts
44
+ * const realtime = relayRealtimeClient("/api/realtime");
45
+ * using sub = notifications.subscribe(realtime, { userId }, handlers);
46
+ * ```
47
+ */
48
+ declare function relayRealtimeClient(url: string, options?: RelayClientOptions): RealtimeClient;
49
+ /**
50
+ * The block controllers' realtime port over `realtimeRelay`:
51
+ * `topicPort(relayRealtimeClient(url, options))`.
52
+ */
53
+ declare function relayTopicPort(url: string, options?: RelayClientOptions): TopicPort;
54
+ //#endregion
7
55
  //#region src/realtime/subject-presence.d.ts
8
56
  /** The presence topic template; the subjects module's policies authorize it. */
9
57
  declare const SUBJECT_PRESENCE_TEMPLATE = "presence:{subjectType}:{subjectId}";
@@ -185,4 +233,4 @@ interface RealtimeChangesOptions {
185
233
  */
186
234
  declare function realtimeChanges(betterSupabase: LiveSource, client: RealtimeClient, options?: RealtimeChangesOptions): DataChanges;
187
235
  //#endregion
188
- export { subjectPresenceValues as _, LiveSource as a, liveCount as c, realtimeChanges as d, SUBJECT_PRESENCE_TEMPLATE as f, subjectPresenceTopic as g, subjectPresence as h, LiveQueryOptions as i, liveQuery as l, SubjectPresenceValues as m, LiveCountOptions as n, LiveSubscription as o, SubjectPresenceTopic as p, LiveCountSeed as r, RealtimeChangesOptions as s, CountRunner as t, liveTopic as u };
236
+ export { relayTopicPort as S, subjectPresenceValues as _, LiveSource as a, RelayEventSourceConstructor as b, liveCount as c, realtimeChanges as d, SUBJECT_PRESENCE_TEMPLATE as f, subjectPresenceTopic as g, subjectPresence as h, LiveQueryOptions as i, liveQuery as l, SubjectPresenceValues as m, LiveCountOptions as n, LiveSubscription as o, SubjectPresenceTopic as p, LiveCountSeed as r, RealtimeChangesOptions as s, CountRunner as t, liveTopic as u, RelayClientOptions as v, relayRealtimeClient as x, RelayEventSource as y };
@@ -1,7 +1,7 @@
1
1
  import { E as AccessPolicySql } from "./types-DFdg_4yN.js";
2
2
  import { p as AnyBlocksConfig, t as AuthorizationFunctions } from "./authorization-HZdJCaVm.js";
3
- import { tt as ReadSet } from "./define-DFBnQyYg.js";
4
- import { Ar as CatalogPolicy, T as TableGrant, Zt as ResolvedConfig, _ as BlockSqlDeprecation, b as BlockSqlLayout, c as BlockSqlIdType, g as BlockSqlAccessProvider, h as BlockSql, mr as AppTableConfig, o as BlockSqlContractFunction, v as BlockSqlEntitlementsProvider, y as BlockSqlFile } from "./context-CEuTKrkz.js";
3
+ import { tt as ReadSet } from "./define-C5AcEkEJ.js";
4
+ import { E as TableGrant, Qt as ResolvedConfig, _ as BlockSqlDeprecation, b as BlockSqlLayout, c as BlockSqlIdType, g as BlockSqlAccessProvider, h as BlockSql, hr as AppTableConfig, jr as CatalogPolicy, o as BlockSqlContractFunction, v as BlockSqlEntitlementsProvider, y as BlockSqlFile } from "./context-8kb8m5uO.js";
5
5
  import { t as SubjectConfig } from "./subjects-DvmQeF_F.js";
6
6
  //#region src/sql/render.d.ts
7
7
  /** A module's SQL for `layout`, without header; `undefined` in custom mode. */
@@ -249,7 +249,7 @@ interface AdoptedTable {
249
249
  * `ownTables` lists it or `blocks.<name>.on` names it, with the columns their
250
250
  * SQL names: mapped to `null` and unused optional columns are left out.
251
251
  */
252
- declare function adoptedTables(modules: AnyBlocksConfig, ownTables?: Readonly<Record<string, string>>): readonly AdoptedTable[];
252
+ declare function adoptedTables(modules: AnyBlocksConfig, ownTables?: Readonly<Record<string, string>>, views?: Pick<BlockSqlLayout, "ownViews" | "ownColumns">): readonly AdoptedTable[];
253
253
  /**
254
254
  * The columns the modules write on the app's other tables (`appSubjectTables`,
255
255
  * such as a tag link table) that those tables lack, and the enum columns they
@@ -259,6 +259,19 @@ declare function adoptedTables(modules: AnyBlocksConfig, ownTables?: Readonly<Re
259
259
  declare function adoptedColumnProblems(modules: AnyBlocksConfig, files: readonly {
260
260
  readonly text: string;
261
261
  }[], schemas: readonly string[], ownTables?: Readonly<Record<string, string>>): readonly string[];
262
+ /** A block table mapped to a view of the app's. */
263
+ interface AdoptedView {
264
+ readonly module: string;
265
+ readonly logical: string;
266
+ /** `schema.view`. */
267
+ readonly view: string;
268
+ /** Whether Postgres writes through the view to its table. */
269
+ readonly updatable: boolean;
270
+ /** Whether the block's TypeScript API writes rows of the table. */
271
+ readonly writes: boolean;
272
+ }
273
+ /** The block tables in `modules` that run over the app's views. */
274
+ declare function adoptedViews(modules: AnyBlocksConfig, ownTables: Readonly<Record<string, string>>, views: Required<Pick<BlockSqlLayout, "ownViews">> & Pick<BlockSqlLayout, "ownColumns">): readonly AdoptedView[];
262
275
  //#endregion
263
276
  //#region src/sql/expose-columns.d.ts
264
277
  /**
@@ -355,6 +368,21 @@ interface PolicyGrant {
355
368
  declare function declaredTables(files: readonly {
356
369
  readonly text: string;
357
370
  }[], schemas: readonly string[]): string[];
371
+ /** A view the app's files create. */
372
+ interface DeclaredView {
373
+ /** Its columns, or `undefined` when they can't be read (`select *`). */
374
+ readonly columns: readonly string[] | undefined;
375
+ /** Whether `insert`, `update` and `delete` reach the table under it. */
376
+ readonly updatable: boolean;
377
+ }
378
+ /**
379
+ * The views and materialized views `files` create, as `schema.view`, with their
380
+ * columns and whether they are auto-updatable. A later `drop view` removes one.
381
+ * Only views in `schemas` are kept.
382
+ */
383
+ declare function declaredViews(files: readonly {
384
+ readonly text: string;
385
+ }[], schemas: readonly string[]): ReadonlyMap<string, DeclaredView>;
358
386
  /**
359
387
  * The tables in `schemas` that `files` leave with row level security on: `alter
360
388
  * table ... enable row level security`, until a later `disable` or `drop
@@ -515,4 +543,4 @@ declare function declaredPolicies(sources: readonly {
515
543
  readonly text: string;
516
544
  }[], schemas: readonly string[]): Record<string, CatalogPolicy[]>;
517
545
  //#endregion
518
- export { moduleFileVersion as $, DataExportPlan as A, appTablesFiles as B, rlsTables as C, expiredFlagsQuery as D, tenantsQuery as E, AdoptedTable as F, BlockSqlExtension as G, instanceFunctions as H, adoptedColumnProblems as I, moduleHidingColumns as J, BlockSqlPermissionKey as K, adoptedTables as L, dataExportPlan as M, excludedColumns as N, sameTenantColumn as O, resolveExposeColumns as P, isModuleDataFile as Q, APP_TABLES_MARKER as R, policyGrants as S, TenantQuery as T, SQL_MODULES as U, DEFAULT_ROLES as V, resolveBlocks as W, moduleSchemaExtensions as X, modulePermissionKeys as Y, blockFileState as Z, PolicyGrant as _, moduleTopics as _t, hasColumnAccess as a, entityRenamePlan as at, declaredUpdatedAtTriggers as b, compileReadSets as c, formerBlockName as ct, migrationOptionUses as d, InstalledBlock as dt, sameBlockFile as et, moduleLayout as f, moduleDeprecations as ft, templateFunctions as g, moduleBody as gt, scopeProblems as h, customContracts as ht, scopePolicyName as i, EntityRenameStep as it, SECRET_COLUMNS as j, sameTenantTrigger as k, sharedRolesProblems as l, renamedBlock as lt, resolveProviderSql as m, BlockSqlTopic as mt, widenedCommands as n, moduleFilePaths as nt, CompiledReadSet as o, BLOCK_RENAMES as ot, SCOPE_ID_TYPES as p, upgradePlan as pt, moduleEventTriggers as q, TENANT_SCOPE_POLICY as r, EntityRenamePlan as rt, compileReadSet as s, currentBlockName as st, declaredPolicies as t, moduleDataDir as tt, MigrationOptionUse as u, BlockSqlUpgradePlan as ut, declaredTableColumns as v, renderBlocks as vt, subjectColumns as w, extensionSchema as x, declaredTables as y, APP_TABLES_MODULE as z };
546
+ export { modulePermissionKeys as $, sameTenantColumn as A, adoptedTables as B, extensionSchema as C, TenantQuery as D, subjectColumns as E, excludedColumns as F, DEFAULT_ROLES as G, APP_TABLES_MARKER as H, resolveExposeColumns as I, resolveBlocks as J, instanceFunctions as K, AdoptedTable as L, DataExportPlan as M, SECRET_COLUMNS as N, tenantsQuery as O, dataExportPlan as P, moduleHidingColumns as Q, AdoptedView as R, declaredViews as S, renderBlocks as St, rlsTables as T, APP_TABLES_MODULE as U, adoptedViews as V, appTablesFiles as W, BlockSqlPermissionKey as X, BlockSqlExtension as Y, moduleEventTriggers as Z, DeclaredView as _, upgradePlan as _t, hasColumnAccess as a, moduleDataDir as at, declaredTables as b, moduleBody as bt, compileReadSets as c, EntityRenameStep as ct, migrationOptionUses as d, currentBlockName as dt, moduleSchemaExtensions as et, moduleLayout as f, formerBlockName as ft, templateFunctions as g, moduleDeprecations as gt, scopeProblems as h, InstalledBlock as ht, scopePolicyName as i, sameBlockFile as it, sameTenantTrigger as j, expiredFlagsQuery as k, sharedRolesProblems as l, entityRenamePlan as lt, resolveProviderSql as m, BlockSqlUpgradePlan as mt, widenedCommands as n, isModuleDataFile as nt, CompiledReadSet as o, moduleFilePaths as ot, SCOPE_ID_TYPES as p, renamedBlock as pt, SQL_MODULES as q, TENANT_SCOPE_POLICY as r, moduleFileVersion as rt, compileReadSet as s, EntityRenamePlan as st, declaredPolicies as t, blockFileState as tt, MigrationOptionUse as u, BLOCK_RENAMES as ut, PolicyGrant as v, BlockSqlTopic as vt, policyGrants as w, declaredUpdatedAtTriggers as x, moduleTopics as xt, declaredTableColumns as y, customContracts as yt, adoptedColumnProblems as z };
@@ -3,9 +3,9 @@ import { n as DbException } from "./escape-like-PReMbEEU.js";
3
3
  import { f as Result, t as AsyncResult } from "./result-DZeA5KS6.js";
4
4
  import { $ as RecordRef, K as Insert, O as AnyFunctions, Z as PrimaryKeyValue, ht as Update, k as AnyModels, ut as TableKey } from "./types-DFdg_4yN.js";
5
5
  import { o as EventHub } from "./events-vcqenSYU.js";
6
- import { A as OffsetRangeArgs, Bt as Payload, C as GetKey, Dt as CountArgs, K as WriteArgs, Nt as ListArgs, O as OffsetPage, S as FindExt, St as AggregateResult, U as UpdateArgs, W as UpsertArgs, Zt as CacheAdapter, _ as CursorPageArgs, b as DeleteArgs, ft as InferResult, g as CursorPage, k as OffsetPageArgs, kt as GetArgs, pt as QuerySpec, t as BetterSupabase, v as Db, x as DeleteExt, yt as AggregateArgs, z as Returned } from "./define-DFBnQyYg.js";
6
+ import { A as OffsetRangeArgs, Bt as Payload, C as GetKey, Dt as CountArgs, K as WriteArgs, Nt as ListArgs, O as OffsetPage, S as FindExt, St as AggregateResult, U as UpdateArgs, W as UpsertArgs, Zt as CacheAdapter, _ as CursorPageArgs, b as DeleteArgs, ft as InferResult, g as CursorPage, k as OffsetPageArgs, kt as GetArgs, pt as QuerySpec, t as BetterSupabase, v as Db, x as DeleteExt, yt as AggregateArgs, z as Returned } from "./define-C5AcEkEJ.js";
7
7
  import { n as DataEngine, r as DataEngineOptions } from "./data-engine-BWoz9lED.js";
8
- import { Dn as GeneratedBlocks, cn as RecordBindingResult, dn as RecordBindingWriteName, fn as RecordBindingWriteOutput, in as RecordBindingData, nn as AnyRecordBindingWrite, on as RecordBindingOptions, t as AnyBlock, tn as AnyRecordBinding, un as RecordBindingWriteInput } from "./define-block-BVcLQ3DF.js";
8
+ import { Dn as GeneratedBlocks, cn as RecordBindingResult, dn as RecordBindingWriteName, fn as RecordBindingWriteOutput, in as RecordBindingData, nn as AnyRecordBindingWrite, on as RecordBindingOptions, t as AnyBlock, tn as AnyRecordBinding, un as RecordBindingWriteInput } from "./define-block-C1RHXz7L.js";
9
9
  import { t as BetterQueryMeta } from "./invalidate-DMp4eqfF.js";
10
10
  import { DataTag, InfiniteData, QueryClient, SkipToken } from "@tanstack/query-core";
11
11
  import { StandardSchemaV1 } from "@standard-schema/spec";
@@ -1,19 +1,19 @@
1
1
  import { b as DbError, f as Result, t as AsyncResult } from "./result-DZeA5KS6.js";
2
2
  import { $ as RecordRef } from "./types-DFdg_4yN.js";
3
3
  import { Ct as Events, D as BlockEventPattern, T as BlockEvent, bt as EventMap, k as BlockEventsMatching } from "./events-vcqenSYU.js";
4
- import { pt as QuerySpec } from "./define-DFBnQyYg.js";
5
- import { $ as TemplateValues, C as UploadOptions, O as TtlPreset, S as UploadBody, l as ImageTransform, w as UrlOptions, x as TransformOptions } from "./bucket-CiNi8sIw.js";
4
+ import { pt as QuerySpec } from "./define-C5AcEkEJ.js";
5
+ import { A as TtlPreset, C as TransformOptions, E as UrlOptions, T as UploadOptions, l as ImageTransform, tt as TemplateValues, w as UploadBody } from "./bucket-vc-QRrva.js";
6
6
  import { m as RejectedChange, o as DataSyncState } from "./data-engine-BWoz9lED.js";
7
- import { M as BindingName, S as RecordWriteInput, _ as RecordTypeBlocks, b as RecordTypeWriteInput, d as BindingWritesOf, f as Plain, g as RecordType, h as RecordCan, m as PlainBindings, x as RecordTypeWriteOutput } from "./index-DLq69k3F.js";
8
- import { c as RealtimeClient, d as SubscribeOptions, g as TopicHandlers, i as PresenceOptions, m as Topic, p as SubscriptionStatus, r as PresenceMember, s as PresenceSubscription, t as EventSchemas } from "./topic-CJrQZQaa.js";
9
- import { t as AuthSnapshot } from "./bind-CrMBwrPN.js";
7
+ import { M as BindingName, S as RecordWriteInput, _ as RecordTypeBlocks, b as RecordTypeWriteInput, d as BindingWritesOf, f as Plain, g as RecordType, h as RecordCan, m as PlainBindings, x as RecordTypeWriteOutput } from "./index-CcAmFNVi.js";
8
+ import { c as RealtimeClient, d as SubscribeOptions, g as TopicHandlers, i as PresenceOptions, m as Topic, p as SubscriptionStatus, r as PresenceMember, s as PresenceSubscription, t as EventSchemas } from "./topic-CZXHhZye.js";
9
+ import { t as AuthSnapshot } from "./bind-JGCPGUJh.js";
10
10
  import { t as AuthSession } from "./view-DyFdMCqg.js";
11
- import { r as LiveCountSeed } from "./index-B938YqY-.js";
12
- import { n as Controller } from "./controller-BrP0gn47.js";
13
- import { D as ProfileOf, O as UseActionOptions, S as LiveCountHookOptions, _ as ActionResultOf, a as DataRows, b as ClaimsOf, c as DataWrites, d as BlockMutationState, f as BlockQueryActions, g as ActionInputOf, i as DataRow, l as BlockEventSource, m as BlockQueryState, n as DataId, o as DataSource, p as BlockQueryOptions, r as DataListArgs, s as DataState, u as BlockMutationActions, w as LiveQueryHookOptions, x as ClientLike, y as BroadcastOptions } from "./field-errors-fsbFktYF.js";
14
- import { t as BlockEnv } from "./block-env-B_uEM2xz.js";
11
+ import { r as LiveCountSeed, v as RelayClientOptions } from "./index-CTu-3fJB.js";
12
+ import { n as Controller } from "./controller-BW-5Opig.js";
13
+ import { D as ProfileOf, O as UseActionOptions, S as LiveCountHookOptions, _ as ActionResultOf, a as DataRows, b as ClaimsOf, c as DataWrites, d as BlockMutationState, f as BlockQueryActions, g as ActionInputOf, i as DataRow, l as BlockEventSource, m as BlockQueryState, n as DataId, o as DataSource, p as BlockQueryOptions, r as DataListArgs, s as DataState, u as BlockMutationActions, w as LiveQueryHookOptions, x as ClientLike, y as BroadcastOptions } from "./field-errors-Dt86dCKk.js";
14
+ import { t as BlockEnv } from "./block-env-y65GF_px.js";
15
15
  import { n as BlockDataOf, r as BlockMethodName, t as BlockArgsOf } from "./block-method-CiVa2G-J.js";
16
- import { s as RecordFormValues, t as RecordForm } from "./record-form-BYs9xv_N.js";
16
+ import { s as RecordFormValues, t as RecordForm } from "./record-form-D9ILuVtA.js";
17
17
  import { SupabaseClient } from "@supabase/supabase-js";
18
18
  import { DependencyList, ReactNode, SubmitEvent } from "react";
19
19
  import { QueryClient } from "@tanstack/query-core";
@@ -22,6 +22,11 @@ interface BetterSupabaseProviderProps {
22
22
  readonly client: ClientLike;
23
23
  /** Better-supabase queries are removed when the user signs out or changes. */
24
24
  readonly queryClient?: QueryClient;
25
+ /**
26
+ * The Realtime client the hooks join with instead of the client's `supabase`,
27
+ * such as `useRealtimeRelay(url)` in a support session.
28
+ */
29
+ readonly realtime?: RealtimeClient;
25
30
  readonly children?: ReactNode;
26
31
  }
27
32
  /** Provides the better-supabase client to the hooks. */
@@ -450,7 +455,7 @@ interface PresenceHookOptions<I> {
450
455
  */
451
456
  readonly state?: I | null;
452
457
  /** A supabase-js client for apps without `<BetterSupabaseProvider>`. */
453
- readonly client?: SupabaseClient;
458
+ readonly client?: RealtimeClient;
454
459
  }
455
460
  interface Presence<I, O> {
456
461
  /** Everyone on the topic, this client included, from the last sync. */
@@ -480,6 +485,33 @@ interface PresenceTopic<P extends string, I, O> {
480
485
  */
481
486
  declare function usePresence<P extends string, I, O>(topic: PresenceTopic<P, I, O>, values: TemplateValues<P> | null | undefined, options?: PresenceHookOptions<I>): Presence<I, O>;
482
487
  //#endregion
488
+ //#region src/react/relay.d.ts
489
+ interface UseRealtimeRelayOptions extends RelayClientOptions {
490
+ /**
491
+ * `support` (the default): the relay only while a support session runs, as
492
+ * `useSupportSession()` reports it from the nearest `<SessionProvider>`.
493
+ * `always`: for apps that keep sessions in httpOnly cookies.
494
+ */
495
+ readonly when?: "support" | "always";
496
+ }
497
+ /**
498
+ * A `relayRealtimeClient(url)` while it is needed, else `undefined`. Pass it to
499
+ * `<BetterSupabaseProvider realtime={...}>`, and `useBroadcast`, `usePresence`,
500
+ * `useLiveQuery` and `useLiveCount` join through the server's `realtimeRelay`
501
+ * route, as the viewed user in a support session. The client is created once
502
+ * per `url` and options, so pass a stable `fetch` and `EventSource`.
503
+ *
504
+ * ```tsx
505
+ * const realtime = useRealtimeRelay("/api/realtime");
506
+ * return (
507
+ * <BetterSupabaseProvider client={bsb} realtime={realtime}>
508
+ * {children}
509
+ * </BetterSupabaseProvider>
510
+ * );
511
+ * ```
512
+ */
513
+ declare function useRealtimeRelay(url: string, options?: UseRealtimeRelayOptions): RealtimeClient | undefined;
514
+ //#endregion
483
515
  //#region src/react/search.d.ts
484
516
  interface DebouncedSearchOptions {
485
517
  /** Defaults to 250 ms. */
@@ -630,4 +662,4 @@ interface UseUploadOptions<R> {
630
662
  */
631
663
  declare function useUpload<T, R>(bucket: UploadTarget<T, R>, options?: UseUploadOptions<R>): Upload<T, R>;
632
664
  //#endregion
633
- export { useActionForm as $, useBlockEvent as A, useRecordListState as B, DataHooks as C, useBlockTenant as D, useBlockEnv as E, useRecordForm as F, RecordProviderProps as G, RecordContextValue as H, RecordListQueryStates as I, createRecordProvider as J, RecordState as K, RecordListState as L, useBlockQuery as M, RecordFormState as N, useController as O, UseRecordFormOptions as P, useAction as Q, RecordListUrl as R, useSyncStatus as S, defineDataHooks as T, RecordInitial as U, RecordActionsOf as V, RecordProviderKit as W, ActionHandle as X, ActionForm as Y, UseActionFormOptions as Z, PresenceHookOptions as _, Upload as a, useAuth as at, Conflicts as b, UseImageOptions as c, useLiveQuery as ct, useSignedUrl as d, BetterHooks as et, useUpload as f, Presence as g, useDebouncedSearch as h, StorageImage as i, createHooks as it, useBlockMutation as j, useLatest as k, UseUploadOptions as l, useSupabase as lt, DebouncedSearchOptions as m, SignedUrl as n, BetterSupabaseProviderProps as nt, UploadStatus as o, useBroadcast as ot, DebouncedSearch as p, RecordWriteHandlers as q, SignedUrlSource as r, LiveCount as rt, UploadTarget as s, useLiveCount as st, ImageSource as t, BetterSupabaseProvider as tt, useImage as u, PresenceTopic as v, DataView as w, useConflicts as x, usePresence as y, RecordListUrlState as z };
665
+ export { UseActionFormOptions as $, useController as A, RecordListUrl as B, useConflicts as C, defineDataHooks as D, DataView as E, RecordFormState as F, RecordInitial as G, useRecordListState as H, UseRecordFormOptions as I, RecordState as J, RecordProviderKit as K, useRecordForm as L, useBlockEvent as M, useBlockMutation as N, useBlockEnv as O, useBlockQuery as P, ActionHandle as Q, RecordListQueryStates as R, Conflicts as S, DataHooks as T, RecordActionsOf as U, RecordListUrlState as V, RecordContextValue as W, createRecordProvider as X, RecordWriteHandlers as Y, ActionForm as Z, useRealtimeRelay as _, Upload as a, LiveCount as at, PresenceTopic as b, UseImageOptions as c, useBroadcast as ct, useSignedUrl as d, useSupabase as dt, useAction as et, useUpload as f, UseRealtimeRelayOptions as g, useDebouncedSearch as h, StorageImage as i, BetterSupabaseProviderProps as it, useLatest as j, useBlockTenant as k, UseUploadOptions as l, useLiveCount as lt, DebouncedSearchOptions as m, SignedUrl as n, BetterHooks as nt, UploadStatus as o, createHooks as ot, DebouncedSearch as p, RecordProviderProps as q, SignedUrlSource as r, BetterSupabaseProvider as rt, UploadTarget as s, useAuth as st, ImageSource as t, useActionForm as tt, useImage as u, useLiveQuery as ut, Presence as v, useSyncStatus as w, usePresence as x, PresenceHookOptions as y, RecordListState as z };
@@ -2,9 +2,9 @@ import { t as AsyncResult } from "./result-DZeA5KS6.js";
2
2
  import { O as AnyFunctions, k as AnyModels } from "./types-DFdg_4yN.js";
3
3
  import { l as PublicEnv } from "./index-NRMMhhEi.js";
4
4
  import { g as SessionEncoding } from "./resolve-CXX6DHv3.js";
5
- import { t as BetterSupabase } from "./define-DFBnQyYg.js";
6
- import { i as KeyboardPort, l as StoragePort, n as DeepLinkPort, r as FilePickerPort, s as PushTokenPort, t as ClientPorts } from "./ports-sx226JUL.js";
7
- import { i as BindClientOptions, r as BetterClient } from "./bind-CrMBwrPN.js";
5
+ import { t as BetterSupabase } from "./define-C5AcEkEJ.js";
6
+ import { i as KeyboardPort, l as StoragePort, n as DeepLinkPort, r as FilePickerPort, s as PushTokenPort, t as ClientPorts } from "./ports-mObLgH1z.js";
7
+ import { i as BindClientOptions, r as BetterClient } from "./bind-JGCPGUJh.js";
8
8
  import { n as FunctionContract } from "./function-contract-DxFNOmsm.js";
9
9
  import { FunctionInvokeOptions, SupabaseClient, SupabaseClientOptions } from "@supabase/supabase-js";
10
10
  //#region src/client/functions.d.ts
package/dist/index.d.ts CHANGED
@@ -6,8 +6,8 @@ import { $ as RecordRef, A as BucketMeta, At as NoExtension, B as FunctionMeta,
6
6
  import { Ct as Events, O as BlockEventType, T as BlockEvent, a as EventHandler, bt as EventMap, c as MutationNotice, d as RpcNotice, i as ErrorEvent, l as QueryEvent, n as AuthOutageEvent, o as EventHub, r as BetterSupabaseEvents, s as EventName, t as AuthEvent, u as RefreshEvent } from "./events-vcqenSYU.js";
7
7
  import { i as silentLogger, n as Logger, r as consoleLogger, t as LogFields } from "./logger-DWVYUmwi.js";
8
8
  import { a as ProblemFormat, 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, t as BlockProblemOptions, u as problemResponse } from "./problem-DNwN8iGz.js";
9
- import { $t as MemoryCache, A as OffsetRangeArgs, At as IncludeArg, B as RowFilter, Bt as Payload, C as GetKey, Ct as AggregateRow, Dt as CountArgs, E as ManyWriteArgs, Et as CountArg, Ft as MeasureKey, G as UpsertManyArgs, Gt as SortDirection, H as RpcOptions, Ht as RelationMeasureArg, It as MutableWhere, J as DbStats, Jt as WhereInput, K as WriteArgs, Kt as SortSpec, L as Repository, Lt as NumericMeasureArg, Mt as JsonPathOps, Nt as ListArgs, O as OffsetPage, Ot as FieldFilter, P as PageOf, Pt as MeasureArg, Q as SearchArgs, Qt as CacheTarget, R as RepositoryOf, Rt as OrderByArg, S as FindExt, St as AggregateResult, T as ManyResult, Tt as ColumnOrderByArg, U as UpdateArgs, Ut as RequestArgs, Vt as ReadArgs, W as UpsertArgs, Wt as SelectArg, X as StatsRecorder, Xt as BucketsHelper, Y as EMPTY_STATS, Yt as BucketRegistry, Z as recordStats, Zt as CacheAdapter, _ as CursorPageArgs, _t as isQuerySpec, a as explainPostgrest, at as ReadSetParamTypes, b as DeleteArgs, bt as AggregateOrderBy, c as RpcDefinition, ct as ReadSetResult, d as BlocksHelper, dt as readSetTables, en as cacheTargetOf, et as InferReadSetParams, f as DbBlockSource, ft as InferResult, g as CursorPage, gt as TableSpecs, h as ConflictTarget, ht as Specs, i as PostgrestExecutorOptions, it as ReadSetParamType, jt as IncludeArgs, k as OffsetPageArgs, kt as GetArgs, l as SupabaseOptions, lt as defineReadSet, m as DbOf, mt as ReadMethod, n as defineSupabase, nn as rowKey, nt as ReadSetAuth, o as postgrestExecutor, ot as ReadSetParamValue, p as DbExtras, pt as QuerySpec, q as WriteManyArgs, qt as WhereArg, r as PostgrestClientLike, rn as rpcCacheTargets, rt as ReadSetOptions, s as ConnectOptions, st as ReadSetParams, t as BetterSupabase, tn as memoryCache, tt as ReadSet, ut as isReadSet, v as Db, vt as specTables, wt as ColumnOrderBy, x as DeleteExt, xt as AggregateOrderByArg, y as DbHelpers, yt as AggregateArgs, z as Returned, zt as OrderByInput } from "./define-DFBnQyYg.js";
10
- import { X as StoragePath } from "./bucket-CiNi8sIw.js";
9
+ import { $t as MemoryCache, A as OffsetRangeArgs, At as IncludeArg, B as RowFilter, Bt as Payload, C as GetKey, Ct as AggregateRow, Dt as CountArgs, E as ManyWriteArgs, Et as CountArg, Ft as MeasureKey, G as UpsertManyArgs, Gt as SortDirection, H as RpcOptions, Ht as RelationMeasureArg, It as MutableWhere, J as DbStats, Jt as WhereInput, K as WriteArgs, Kt as SortSpec, L as Repository, Lt as NumericMeasureArg, Mt as JsonPathOps, Nt as ListArgs, O as OffsetPage, Ot as FieldFilter, P as PageOf, Pt as MeasureArg, Q as SearchArgs, Qt as CacheTarget, R as RepositoryOf, Rt as OrderByArg, S as FindExt, St as AggregateResult, T as ManyResult, Tt as ColumnOrderByArg, U as UpdateArgs, Ut as RequestArgs, Vt as ReadArgs, W as UpsertArgs, Wt as SelectArg, X as StatsRecorder, Xt as BucketsHelper, Y as EMPTY_STATS, Yt as BucketRegistry, Z as recordStats, Zt as CacheAdapter, _ as CursorPageArgs, _t as isQuerySpec, a as explainPostgrest, at as ReadSetParamTypes, b as DeleteArgs, bt as AggregateOrderBy, c as RpcDefinition, ct as ReadSetResult, d as BlocksHelper, dt as readSetTables, en as cacheTargetOf, et as InferReadSetParams, f as DbBlockSource, ft as InferResult, g as CursorPage, gt as TableSpecs, h as ConflictTarget, ht as Specs, i as PostgrestExecutorOptions, it as ReadSetParamType, jt as IncludeArgs, k as OffsetPageArgs, kt as GetArgs, l as SupabaseOptions, lt as defineReadSet, m as DbOf, mt as ReadMethod, n as defineSupabase, nn as rowKey, nt as ReadSetAuth, o as postgrestExecutor, ot as ReadSetParamValue, p as DbExtras, pt as QuerySpec, q as WriteManyArgs, qt as WhereArg, r as PostgrestClientLike, rn as rpcCacheTargets, rt as ReadSetOptions, s as ConnectOptions, st as ReadSetParams, t as BetterSupabase, tn as memoryCache, tt as ReadSet, ut as isReadSet, v as Db, vt as specTables, wt as ColumnOrderBy, x as DeleteExt, xt as AggregateOrderByArg, y as DbHelpers, yt as AggregateArgs, z as Returned, zt as OrderByInput } from "./define-C5AcEkEJ.js";
10
+ import { Q as StoragePath } from "./bucket-vc-QRrva.js";
11
11
  import { a as PostgrestPlan, n as PlanLimit, o as compilePostgrest, r as PlanOrder, t as PlanFilter } from "./postgrest-z-T0l23T.js";
12
12
  import { i as FieldSpec, n as TableSchema, o as TableSchemaSpec, r as tableSchema, t as StandardJSONSchemaV1 } from "./table-schema-BlF6k62Q.js";
13
13
  import { n as postgrestCompiler, t as Compiler } from "./compiler-D3UmE7ao.js";
@@ -5,7 +5,7 @@ import { r as BlockTemporalOptions } from "./block-helpers-CRpAHrp_.js";
5
5
  import { t as BlockTransport } from "./block-transport-DWZSJrwN.js";
6
6
  import { n as BlockHooks } from "./block-hooks-DZN2w69m.js";
7
7
  import { f as AiFiles, o as AiFile } from "./types-Dr9wZgNy.js";
8
- import { g as JobHandler } from "./types-SFRomQF7.js";
8
+ import { g as JobHandler } from "./types-Czq9Xtpa.js";
9
9
  //#region src/blocks/knowledge/knowledge.d.ts
10
10
  /**
11
11
  * Turns texts into vectors. `model` is stored with each document, so a document
@@ -1,4 +1,4 @@
1
1
  import { _ as FilterRule, a as FilterDateValue, b as encodeFilterQuery, c as FilterFieldLabels, d as FilterLimits, f as FilterNode, g as FilterRelativeDate, h as FilterQuery, i as FilterCombinator, l as FilterFieldType, m as FilterOperatorSpec, n as FILTER_OPERATOR_LABELS, o as FilterField, p as FilterOperatorArity, r as FilterClock, s as FilterFieldInfo, t as FILTER_OPERATORS, u as FilterGroupNode, v as ListFilterConfig, y as decodeFilterQuery } from "../filter-query-BXLs72G9.js";
2
- import { _ as UNSET, a as ListExtra, c as ListParseOptions, d as ListQuery, f as ListQueryConfig, g as ParserSpec, h as OpenApiParameter, i as ListDefinition, l as ListParseResult, m as ListSearchParams, n as FacetCounts, o as ListPage, p as ListQueryInput, r as FacetInfo, s as ListPagination, t as FacetCountFields, u as ListParsers, v as defineListQuery } from "../list-query-BDVutLFr.js";
2
+ import { _ as UNSET, a as ListExtra, c as ListParseOptions, d as ListQuery, f as ListQueryConfig, g as ParserSpec, h as OpenApiParameter, i as ListDefinition, l as ListParseResult, m as ListSearchParams, n as FacetCounts, o as ListPage, p as ListQueryInput, r as FacetInfo, s as ListPagination, t as FacetCountFields, u as ListParsers, v as defineListQuery } from "../list-query-DYhgRTd5.js";
3
3
  import { n as FilterRecordField, r as evaluateFilterQuery, t as FilterEvaluation } from "../filter-evaluate-CPxeae5X.js";
4
4
  export { FILTER_OPERATORS, FILTER_OPERATOR_LABELS, type FacetCountFields, type FacetCounts, type FacetInfo, type FilterClock, type FilterCombinator, type FilterDateValue, type FilterEvaluation, type FilterField, type FilterFieldInfo, type FilterFieldLabels, type FilterFieldType, type FilterGroupNode, type FilterLimits, type FilterNode, type FilterOperatorArity, type FilterOperatorSpec, type FilterQuery, type FilterRecordField, type FilterRelativeDate, type FilterRule, type ListDefinition, type ListExtra, type ListFilterConfig, type ListPage, type ListPagination, type ListParseOptions, type ListParseResult, type ListParsers, type ListQuery, type ListQueryConfig, type ListQueryInput, type ListSearchParams, type OpenApiParameter, type ParserSpec, UNSET, decodeFilterQuery, defineListQuery, encodeFilterQuery, evaluateFilterQuery };
@@ -1,6 +1,6 @@
1
1
  import { D as ValidationIssue, t as AsyncResult } from "./result-DZeA5KS6.js";
2
2
  import { O as AnyFunctions, a as CountMode, it as Row, k as AnyModels, ut as TableKey } from "./types-DFdg_4yN.js";
3
- import { At as IncludeArg, Bt as Payload, Jt as WhereInput, O as OffsetPage, R as RepositoryOf, Rt as OrderByArg, S as FindExt, Wt as SelectArg, _ as CursorPageArgs, g as CursorPage, k as OffsetPageArgs, t as BetterSupabase } from "./define-DFBnQyYg.js";
3
+ import { At as IncludeArg, Bt as Payload, Jt as WhereInput, O as OffsetPage, R as RepositoryOf, Rt as OrderByArg, S as FindExt, Wt as SelectArg, _ as CursorPageArgs, g as CursorPage, k as OffsetPageArgs, t as BetterSupabase } from "./define-C5AcEkEJ.js";
4
4
  import { c as FilterFieldLabels, h as FilterQuery, o as FilterField, r as FilterClock, s as FilterFieldInfo, v as ListFilterConfig } from "./filter-query-BXLs72G9.js";
5
5
  import { StandardSchemaV1 } from "@standard-schema/spec";
6
6
  //#region src/list/list-query.d.ts
@@ -1,10 +1,10 @@
1
- import { t as VERSION } from "../cli/version-Du4CgONY.js";
2
- import { a as lastTypesModule, c as writeAtomic, s as typesModuleKey } from "../cli/cache-CXgR_Ahi.js";
3
- import { t as loadSnapshot } from "../cli/snapshot-C8MVPyO8.js";
4
- import { i as renderTypesModule, t as mapperFilePath } from "../cli/render-ucJmUyuM.js";
1
+ import { t as VERSION } from "../cli/version-B2Dr6VmJ.js";
2
+ import { a as lastTypesModule, c as writeAtomic, s as typesModuleKey } from "../cli/cache-AznIssjI.js";
3
+ import { t as loadSnapshot } from "../cli/snapshot-uTUlEzY2.js";
4
+ import { i as renderTypesModule, t as mapperFilePath } from "../cli/render-5y5a1QZr.js";
5
5
  import { i as discoverConfig, s as loadConfig } from "../cli/config-9t5ec_N7.js";
6
6
  import { i as parseEnv, n as configEnvironment } from "../cli/env-DMgjB_4y.js";
7
- import { s as schemaStampPath } from "../cli/content-mapper-DNs7lTu7.js";
7
+ import { s as schemaStampPath } from "../cli/content-mapper-DCrz6OIv.js";
8
8
  import { existsSync, realpathSync } from "node:fs";
9
9
  import { basename, dirname, join, resolve } from "node:path";
10
10
  import { createHash } from "node:crypto";
@@ -1,11 +1,11 @@
1
1
  import { O as AnyFunctions, k as AnyModels, ut as TableKey } from "../types-DFdg_4yN.js";
2
2
  import { t as OperationTable } from "../operations-CSc_IsHO.js";
3
3
  import { l as PermissionRef, t as AnyAuthorizer } from "../authorizer-B6X09otb.js";
4
- import { t as BetterSupabase } from "../define-DFBnQyYg.js";
5
- import { a as ServerContext, c as ServerOptions, n as BetterServer } from "../server-types-CFtehAsr.js";
4
+ import { t as BetterSupabase } from "../define-C5AcEkEJ.js";
5
+ import { a as ServerContext, c as ServerOptions, n as BetterServer } from "../server-types-CK8mUIUT.js";
6
6
  import { r as GuardOptions } from "../respond-Dn1_YhC1.js";
7
7
  import { D as ResourceOperation } from "../model-hwpvole9.js";
8
- import { l as ResourceRouteOptions } from "../resource-types-DnKiH4G2.js";
8
+ import { l as ResourceRouteOptions } from "../resource-types-pMeLs68X.js";
9
9
  import { StandardSchemaV1 } from "@standard-schema/spec";
10
10
  //#region src/mcp/dialect.d.ts
11
11
  /**
package/dist/mcp/index.js CHANGED
@@ -6,7 +6,7 @@ import { a as methodNotAllowed, c as toProblem, o as problemResponse } from "../
6
6
  import { t as SPEC_PINS } from "../spec-pins-C1Vm8OBl.js";
7
7
  import { r as toDraft07, t as buildJsonSchema } from "../json-schema-Ca6gYbEP.js";
8
8
  import { r as operationPermission, t as OPERATION_PREFIXES } from "../operations-DVHRHvv6.js";
9
- import { c as extendServer, n as flushEvents, s as createServer } from "../adapter-B0b6MXYS.js";
9
+ import { c as extendServer, n as flushEvents, s as createServer } from "../adapter-Dyks1lX1.js";
10
10
  import { n as checkEach, r as checkPermission } from "../authorizer-BGhXaDmo.js";
11
11
  import { n as jsonResponse, t as jsonReplacer } from "../json-DaByVJpw.js";
12
12
  import { o as settle, r as guard, t as defaultExpose } from "../respond-C3CcOZlA.js";
@@ -2,8 +2,8 @@ import { O as AnyFunctions, k as AnyModels } from "../../types-DFdg_4yN.js";
2
2
  import { r as AuthState } from "../../resolve-CXX6DHv3.js";
3
3
  import { i as CredentialRef, r as CredentialProvider } from "../../provider-CqwEOLCA.js";
4
4
  import { i as SupabaseMcpScope, n as SupabaseMcpModule, r as SupabaseMcpPlatformModule, t as SupabaseMcpFeature } from "../../supabase-mcp-Z4vtsuoO.js";
5
- import { t as BetterSupabase } from "../../define-DFBnQyYg.js";
6
- import { a as ServerContext$1, c as ServerOptions, n as BetterServer } from "../../server-types-CFtehAsr.js";
5
+ import { t as BetterSupabase } from "../../define-C5AcEkEJ.js";
6
+ import { a as ServerContext$1, c as ServerOptions, n as BetterServer } from "../../server-types-CK8mUIUT.js";
7
7
  import { r as GuardOptions, t as AllowedCaller } from "../../respond-Dn1_YhC1.js";
8
8
  import { AuthInfo, CallToolResult, Icon, InputRequiredResult, OAuthTokenVerifier, RegisteredTool, ScopeChallengeHandler, ServerContext, StandardSchemaWithJSON, ToolAnnotations } from "@modelcontextprotocol/server";
9
9
  //#region src/mcp/sdk/sdk.d.ts
@@ -1,7 +1,7 @@
1
1
  import { n as dbError } from "../../errors-BVFgt8BZ.js";
2
2
  import { o as problemResponse } from "../../problem-Bf0cJ7tk.js";
3
3
  import { i as delegationOf } from "../../actor-go7p9-CJ.js";
4
- import { c as extendServer, i as resolveToken, n as flushEvents, s as createServer } from "../../adapter-B0b6MXYS.js";
4
+ import { c as extendServer, i as resolveToken, n as flushEvents, s as createServer } from "../../adapter-Dyks1lX1.js";
5
5
  import { r as guard } from "../../respond-C3CcOZlA.js";
6
6
  import { t as withExtra } from "../../extra-CGQ2_q3S.js";
7
7
  import { a as withCors, i as metadataPreflight, n as endpointPreflight, r as isMetadataRequest, t as discovery } from "../../http-DzbloBR-.js";
@@ -1,3 +1,54 @@
1
+ import { i as SessionWatchStatus, t as SessionStatusBody } from "../../session-status-qQLm7jzh.js";
2
+ //#region src/next/client/session-watch.d.ts
3
+ /**
4
+ * Why the session changed: Auth ended it or banned the user, the user signed
5
+ * out, or the claims or support target behind the session changed.
6
+ */
7
+ type SessionChangeReason = "ended" | "banned" | "signed_out" | "claims_changed";
8
+ interface SessionWatchEvent {
9
+ readonly reason: SessionChangeReason;
10
+ /** The route's answer; `null` when another tab reported the change. */
11
+ readonly status: SessionStatusBody | null;
12
+ /** `check`: this tab saw it. `tab`: another tab of the app did. */
13
+ readonly source: "check" | "tab";
14
+ }
15
+ interface SessionWatchOptions {
16
+ /** Where `sessionStatusRoute` is mounted. Defaults to `/api/session-status`. */
17
+ readonly url?: string;
18
+ /**
19
+ * Milliseconds between checks while the page is visible. Defaults to 60000; 0
20
+ * checks on focus and visibility only.
21
+ */
22
+ readonly intervalMs?: number;
23
+ /**
24
+ * The fingerprint the page rendered with, such as from the session status of
25
+ * the server render. Without it the first check sets it.
26
+ */
27
+ readonly fingerprint?: string | null;
28
+ /**
29
+ * The `BroadcastChannel` that tells the app's other tabs, or `false` for
30
+ * none. Defaults to `better-supabase:session`.
31
+ */
32
+ readonly channel?: string | false;
33
+ readonly fetch?: typeof fetch;
34
+ /** Called with every answer of the route, changed or not. */
35
+ readonly onStatus?: (status: SessionStatusBody) => void;
36
+ }
37
+ interface SessionWatcher {
38
+ /** Checks now; a check already running is reused. */
39
+ check(): Promise<SessionStatusBody | undefined>;
40
+ stop(): void;
41
+ }
42
+ /**
43
+ * Watches the session through `sessionStatusRoute`: checks when the window gets
44
+ * focus or becomes visible and on an interval while visible, and calls
45
+ * `onChange` when the session ended, the user was banned or signed out, or the
46
+ * claims fingerprint changed. Each change is posted to the app's other tabs,
47
+ * which call their own `onChange` with `source: "tab"`. Failed checks are
48
+ * ignored and retried on the next trigger.
49
+ */
50
+ export declare function watchSession(onChange: (event: SessionWatchEvent) => void, options?: SessionWatchOptions): SessionWatcher;
51
+ //#endregion
1
52
  //#region src/next/client/index.d.ts
2
53
  /** The `push` and `refresh` `useSessionChange` needs; next-intl's router fits. */
3
54
  export interface SessionChangeRouter {
@@ -33,4 +84,33 @@ export interface SessionChangeOptions {
33
84
  * ```
34
85
  */
35
86
  export declare function useSessionChange(changed: () => Promise<void>, router?: SessionChangeRouter, options?: SessionChangeOptions): (to?: string) => Promise<void>;
36
- //#endregion
87
+ export interface UseSessionWatchOptions extends SessionWatchOptions {
88
+ /**
89
+ * Replaces the default reaction. By default an ended, banned or signed-out
90
+ * session loads `redirect` (or the current page, which the proxy then sends
91
+ * to sign-in) as a full document load, and a claims change refreshes the
92
+ * router so Server Components render with the new claims.
93
+ */
94
+ readonly onChange?: (event: SessionWatchEvent) => void;
95
+ /** Where an ended session goes. Defaults to reloading the current page. */
96
+ readonly redirect?: string;
97
+ /** The router a claims change refreshes. Defaults to Next.js's. */
98
+ readonly router?: Pick<SessionChangeRouter, "refresh">;
99
+ /** Pauses the watch, e.g. on pages without a session. */
100
+ readonly enabled?: boolean;
101
+ }
102
+ /**
103
+ * Watches the session of an app that keeps it in httpOnly cookies, without a
104
+ * browser Supabase client: it asks `sessionStatusRoute` on focus, when the tab
105
+ * becomes visible and on an interval, and reacts when Auth ended the session,
106
+ * banned the user, the user signed out, or the claims or support target
107
+ * changed. Other tabs of the app hear each change through a `BroadcastChannel`.
108
+ * Returns the last answer.
109
+ *
110
+ * ```tsx
111
+ * useSessionWatch({ url: "/api/session-status", redirect: "/sign-in" });
112
+ * ```
113
+ */
114
+ export declare function useSessionWatch(options?: UseSessionWatchOptions): SessionStatusBody | undefined;
115
+ //#endregion
116
+ export type { SessionChangeReason, SessionStatusBody, SessionWatchEvent, SessionWatchOptions, SessionWatchStatus, SessionWatcher };