better-supabase 0.15.1 → 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 (272) hide show
  1. package/dist/{ai-schedules-D_Hz-ik5.d.ts → ai-schedules-BmkARmQ9.d.ts} +1 -1
  2. package/dist/{api-DxAPqMrE.d.ts → api-hHwieEfz.d.ts} +1 -1
  3. package/dist/{app-tables-CbCFSXLG.d.ts → app-tables-yMQ4ubyY.d.ts} +1 -1
  4. package/dist/astro/index.d.ts +4 -4
  5. package/dist/{auth-module-BEFESDC4.js → auth-module-BbmX-N4L.js} +12 -4
  6. package/dist/better-result/index.d.ts +2 -2
  7. package/dist/{bind-h5jre2K0.d.ts → bind-JGCPGUJh.d.ts} +4 -4
  8. package/dist/{block-env-BrfRvPrj.d.ts → block-env-y65GF_px.d.ts} +4 -4
  9. package/dist/blocks/access-requests/index.d.ts +1 -1
  10. package/dist/blocks/activities/index.d.ts +1 -1
  11. package/dist/blocks/agents/index.d.ts +1 -1
  12. package/dist/blocks/ai-cache/index.d.ts +1 -1
  13. package/dist/blocks/ai-chat/index.d.ts +4 -4
  14. package/dist/blocks/ai-files/index.d.ts +1 -1
  15. package/dist/blocks/ai-keys/index.d.ts +1 -1
  16. package/dist/blocks/ai-schedules/index.d.ts +2 -2
  17. package/dist/blocks/announcements/index.d.ts +4 -4
  18. package/dist/blocks/api-keys/index.d.ts +2 -2
  19. package/dist/blocks/approvals/index.d.ts +1 -1
  20. package/dist/blocks/assets/index.d.ts +1 -1
  21. package/dist/blocks/assignment/index.d.ts +1 -1
  22. package/dist/blocks/attachments/index.d.ts +2 -2
  23. package/dist/blocks/audit/index.d.ts +5 -5
  24. package/dist/blocks/automations/index.d.ts +3 -3
  25. package/dist/blocks/billable-time/index.d.ts +1 -1
  26. package/dist/blocks/billing/index.d.ts +3 -3
  27. package/dist/blocks/bookings/index.d.ts +2 -2
  28. package/dist/blocks/bulk/index.d.ts +1 -1
  29. package/dist/blocks/calendar/index.d.ts +2 -2
  30. package/dist/blocks/catalog/index.d.ts +1 -1
  31. package/dist/blocks/channels/index.d.ts +1 -1
  32. package/dist/blocks/collections/index.d.ts +1 -1
  33. package/dist/blocks/comments/index.d.ts +4 -4
  34. package/dist/blocks/compliance/index.d.ts +1 -1
  35. package/dist/blocks/connectors/index.d.ts +1 -1
  36. package/dist/blocks/contacts/index.d.ts +1 -1
  37. package/dist/blocks/content/index.d.ts +1 -1
  38. package/dist/blocks/contracts/index.d.ts +1 -1
  39. package/dist/blocks/courses/index.d.ts +1 -1
  40. package/dist/blocks/created-by/index.d.ts +1 -1
  41. package/dist/blocks/custom-fields/index.d.ts +1 -1
  42. package/dist/blocks/data-lifecycle/index.d.ts +1 -1
  43. package/dist/blocks/deals/index.d.ts +1 -1
  44. package/dist/blocks/dispatch/index.d.ts +1 -1
  45. package/dist/blocks/documents/index.d.ts +1 -1
  46. package/dist/blocks/domains/index.d.ts +1 -1
  47. package/dist/blocks/donations/index.d.ts +1 -1
  48. package/dist/blocks/drive/index.d.ts +1 -1
  49. package/dist/blocks/employees/index.d.ts +2 -2
  50. package/dist/blocks/enrichment/index.d.ts +1 -1
  51. package/dist/blocks/enrollments/index.d.ts +1 -1
  52. package/dist/blocks/entitlements/index.d.ts +3 -3
  53. package/dist/blocks/expenses/index.d.ts +1 -1
  54. package/dist/blocks/field-history/index.d.ts +1 -1
  55. package/dist/blocks/flags/index.d.ts +1 -1
  56. package/dist/blocks/forecasts/index.d.ts +1 -1
  57. package/dist/blocks/forms/index.d.ts +2 -2
  58. package/dist/blocks/goals/index.d.ts +1 -1
  59. package/dist/blocks/guests/index.d.ts +1 -1
  60. package/dist/blocks/hiring/index.d.ts +1 -1
  61. package/dist/blocks/identities/index.d.ts +1 -1
  62. package/dist/blocks/imports/index.d.ts +1 -1
  63. package/dist/blocks/inbox/index.d.ts +5 -5
  64. package/dist/blocks/incidents/index.d.ts +1 -1
  65. package/dist/blocks/index.d.ts +2 -2
  66. package/dist/blocks/inventory/index.d.ts +1 -1
  67. package/dist/blocks/invoices/index.d.ts +1 -1
  68. package/dist/blocks/knowledge/index.d.ts +1 -1
  69. package/dist/blocks/lead-scoring/index.d.ts +1 -1
  70. package/dist/blocks/leases/index.d.ts +1 -1
  71. package/dist/blocks/leave/index.d.ts +1 -1
  72. package/dist/blocks/ledger/index.d.ts +1 -1
  73. package/dist/blocks/mail-sync/index.d.ts +1 -1
  74. package/dist/blocks/memberships/index.d.ts +1 -1
  75. package/dist/blocks/memory/index.d.ts +1 -1
  76. package/dist/blocks/messaging/index.d.ts +4 -4
  77. package/dist/blocks/metrics/index.d.ts +1 -1
  78. package/dist/blocks/mfa/index.d.ts +2 -2
  79. package/dist/blocks/moderation/index.d.ts +1 -1
  80. package/dist/blocks/notifications/index.d.ts +4 -4
  81. package/dist/blocks/numbering/index.d.ts +1 -1
  82. package/dist/blocks/oauth-server/index.d.ts +1 -1
  83. package/dist/blocks/onboarding/index.d.ts +2 -2
  84. package/dist/blocks/orders/index.d.ts +2 -2
  85. package/dist/blocks/organizations/index.d.ts +2 -2
  86. package/dist/blocks/outbox/index.d.ts +1 -1
  87. package/dist/blocks/passes/index.d.ts +1 -1
  88. package/dist/blocks/permissions/index.d.ts +3 -3
  89. package/dist/blocks/pipelines/index.d.ts +1 -1
  90. package/dist/blocks/posts/index.d.ts +1 -1
  91. package/dist/blocks/profiles/index.d.ts +1 -1
  92. package/dist/blocks/promotions/index.d.ts +1 -1
  93. package/dist/blocks/push/index.d.ts +2 -2
  94. package/dist/blocks/queue/index.d.ts +29 -2
  95. package/dist/blocks/queue/index.js +1 -1
  96. package/dist/blocks/quotes/index.d.ts +1 -1
  97. package/dist/blocks/rank/index.d.ts +1 -1
  98. package/dist/blocks/reactions/index.d.ts +4 -4
  99. package/dist/blocks/relations/index.d.ts +1 -1
  100. package/dist/blocks/reminders/index.d.ts +1 -1
  101. package/dist/blocks/reviews/index.d.ts +1 -1
  102. package/dist/blocks/saved-views/index.d.ts +3 -3
  103. package/dist/blocks/scores/index.d.ts +1 -1
  104. package/dist/blocks/search/index.d.ts +3 -3
  105. package/dist/blocks/security-events/index.d.ts +1 -1
  106. package/dist/blocks/segments/index.d.ts +1 -1
  107. package/dist/blocks/sequences/index.d.ts +1 -1
  108. package/dist/blocks/service-accounts/index.d.ts +1 -1
  109. package/dist/blocks/sessions/index.d.ts +2 -2
  110. package/dist/blocks/settings/index.d.ts +2 -2
  111. package/dist/blocks/share-links/index.d.ts +1 -1
  112. package/dist/blocks/shipments/index.d.ts +1 -1
  113. package/dist/blocks/signatures/index.d.ts +1 -1
  114. package/dist/blocks/signing-keys/index.d.ts +1 -1
  115. package/dist/blocks/sla/index.d.ts +1 -1
  116. package/dist/blocks/sso/index.d.ts +1 -1
  117. package/dist/blocks/state-machine/index.d.ts +1 -1
  118. package/dist/blocks/subjects/index.d.ts +2 -2
  119. package/dist/blocks/tags/index.d.ts +2 -2
  120. package/dist/blocks/tasks/index.d.ts +2 -2
  121. package/dist/blocks/teams/index.d.ts +1 -1
  122. package/dist/blocks/templates/index.d.ts +1 -1
  123. package/dist/blocks/time-tracking/index.d.ts +1 -1
  124. package/dist/blocks/timeline/index.d.ts +3 -3
  125. package/dist/blocks/trash/index.d.ts +1 -1
  126. package/dist/blocks/undo/index.d.ts +2 -2
  127. package/dist/blocks/updated-at/index.d.ts +1 -1
  128. package/dist/blocks/usage/index.d.ts +2 -2
  129. package/dist/blocks/vercel-marketplace/index.d.ts +1 -1
  130. package/dist/blocks/versions/index.d.ts +1 -1
  131. package/dist/blocks/waitlist/index.d.ts +1 -1
  132. package/dist/blocks/webhooks/index.d.ts +2 -2
  133. package/dist/blocks/webhooks/index.js +1 -1
  134. package/dist/blocks/workflow-editor/index.d.ts +4 -4
  135. package/dist/blocks/workflows/index.d.ts +4 -4
  136. package/dist/{bucket-CiNi8sIw.d.ts → bucket-vc-QRrva.d.ts} +40 -1
  137. package/dist/cli/add-Bfb_ISrO.js +1 -0
  138. package/dist/cli/{add-DNOL9PDu.js → add-D7TkPdco.js} +9 -9
  139. package/dist/cli/{add-C04vkBk9.js → add-I8OW-qJH.js} +2 -2
  140. package/dist/cli/{backfill-VFzf-TJP.js → backfill-DIz5DnlQ.js} +1 -1
  141. package/dist/cli/bin.js +1 -1
  142. package/dist/cli/{blocks-Bn7WUca5.js → blocks-Bp5RPoft.js} +1 -1
  143. package/dist/cli/{blocks-Cb7mILFU.js → blocks-xk-SE8gS.js} +1 -1
  144. package/dist/cli/{cache-DkplpIGe.js → cache-AznIssjI.js} +1 -1
  145. package/dist/cli/{codemod-BbaE5dL_.js → codemod-Aewxza6i.js} +1 -1
  146. package/dist/cli/{content-mapper-Cdx6arxu.js → content-mapper-DCrz6OIv.js} +2 -2
  147. package/dist/cli/{doctor-C-VO-QQ2.js → doctor-DkOSLPEQ.js} +13 -13
  148. package/dist/cli/{gen-yRHOHW1b.js → gen-CFkYUnWq.js} +10 -10
  149. package/dist/cli/index.d.ts +1 -1
  150. package/dist/cli/index.js +6 -6
  151. package/dist/cli/{init-BOw0SX65.js → init-CHj9ad4S.js} +5 -5
  152. package/dist/cli/{live-Lmg-hYyO.js → live-DGdLR41j.js} +2 -2
  153. package/dist/cli/{mcp-DQ1zR2eA.js → mcp-BZno503V.js} +2 -2
  154. package/dist/cli/{metadata-CZaxkv21.js → metadata-BfgHMe4q.js} +3 -3
  155. package/dist/cli/{migration-safety-BbhLu2fo.js → migration-safety-BnnXPAro.js} +1 -1
  156. package/dist/cli/{module-migration-DOn6EmNz.js → module-migration-O_IxewFs.js} +1 -1
  157. package/dist/cli/{print-D_xf8PPj.js → print-DosQIFSy.js} +1 -1
  158. package/dist/cli/{remove-BY_TOTRj.js → remove-DK2G_KHm.js} +5 -5
  159. package/dist/cli/{render-lJmHr0y9.js → render-5y5a1QZr.js} +3 -3
  160. package/dist/cli/{run-BJ6IMs_H.js → run-Bs4OKdDI.js} +7 -7
  161. package/dist/cli/{run-DkB0fhc9.js → run-MRET30vh.js} +20 -20
  162. package/dist/cli/{shared-Bh-6IqJS.js → shared-BLqbvY2x.js} +1 -1
  163. package/dist/cli/{snapshot-Bzcigm7T.js → snapshot-uTUlEzY2.js} +2 -2
  164. package/dist/cli/{source-WoLdcQzN.js → source-D2gJHKwC.js} +1 -1
  165. package/dist/cli/{spec-CZMiLhv_.js → spec-Cm2einTO.js} +2 -2
  166. package/dist/cli/{spec-BF_dpwzW.js → spec-DUjOtciN.js} +1 -1
  167. package/dist/cli/{sql-layout-rFP0oq1N.js → sql-layout-lUWenjJw.js} +2 -2
  168. package/dist/cli/{sync-mANmYYoL.js → sync-CZMRB3aU.js} +2 -2
  169. package/dist/cli/{upgrade-B0Q9wMs-.js → upgrade-BFEIMC7U.js} +3 -3
  170. package/dist/cli/{upgrade-BrNLt92u.js → upgrade-fVsJniXm.js} +2 -2
  171. package/dist/cli/{version-CyavsyGA.js → version-B2Dr6VmJ.js} +1 -1
  172. package/dist/client/index.d.ts +5 -5
  173. package/dist/client/index.js +1 -1
  174. package/dist/client/native/index.d.ts +5 -5
  175. package/dist/client/native/index.js +1 -1
  176. package/dist/{client-BAEbEA7t.js → client-C_mlji5R.js} +6 -5
  177. package/dist/{composite-BZYXlVBN.d.ts → composite-CfYyU3vs.d.ts} +4 -3
  178. package/dist/config/index.d.ts +1 -1
  179. package/dist/{context-TGX2eDS5.d.ts → context-8kb8m5uO.d.ts} +1 -1
  180. package/dist/{controller-DyPPMFSw.d.ts → controller-BW-5Opig.d.ts} +1 -1
  181. package/dist/{conversion-O-kyhXcC.d.ts → conversion-3iv2r7YC.d.ts} +1 -1
  182. package/dist/create/index.d.ts +2 -2
  183. package/dist/create/index.js +1 -1
  184. package/dist/{define-DFBnQyYg.d.ts → define-C5AcEkEJ.d.ts} +1 -1
  185. package/dist/{define-block-DvvcM54N.d.ts → define-block-C1RHXz7L.d.ts} +2 -2
  186. package/dist/edge/index.d.ts +5 -5
  187. package/dist/{entitlements-BnhDBxLW.d.ts → entitlements-sO977DO-.d.ts} +1 -1
  188. package/dist/{executor-CVIn6JHa.d.ts → executor-BcNWcD-4.d.ts} +2 -2
  189. package/dist/expo/index.d.ts +2 -2
  190. package/dist/{field-errors-DYtg1mwv.d.ts → field-errors-Dt86dCKk.d.ts} +12 -12
  191. package/dist/{framework-h5lP_5yj.d.ts → framework-BGdZVyPL.d.ts} +3 -3
  192. package/dist/hono/index.d.ts +4 -4
  193. package/dist/{index-BAHGLvGD.d.ts → index-CENWq3zb.d.ts} +1 -1
  194. package/dist/{index-Do2ChN_y.d.ts → index-CQhPHHDF.d.ts} +20 -2
  195. package/dist/{index-DN9mfmhA.d.ts → index-CTu-3fJB.d.ts} +51 -3
  196. package/dist/{index-BfK6olKm.d.ts → index-Cc4mIQS8.d.ts} +2 -2
  197. package/dist/{index-BfkltrGJ.d.ts → index-CcAmFNVi.d.ts} +2 -2
  198. package/dist/{index-Ab4UeEn_.d.ts → index-Craf712U.d.ts} +44 -12
  199. package/dist/{index-B4gcStOz.d.ts → index-DZKCc2WM.d.ts} +3 -3
  200. package/dist/index.d.ts +2 -2
  201. package/dist/list/index.d.ts +1 -1
  202. package/dist/{list-query-BDVutLFr.d.ts → list-query-DYhgRTd5.d.ts} +1 -1
  203. package/dist/mapper/bin.js +5 -5
  204. package/dist/mcp/index.d.ts +3 -3
  205. package/dist/mcp/sdk/index.d.ts +2 -2
  206. package/dist/next/client/index.d.ts +81 -1
  207. package/dist/next/client/index.js +178 -2
  208. package/dist/next/index.d.ts +15 -14
  209. package/dist/orpc/index.d.ts +4 -4
  210. package/dist/otel/index.js +4 -4
  211. package/dist/{ports-DOhtuw3c.js → ports-CaVRXjxq.js} +1 -1
  212. package/dist/{ports-CpdiQv1D.d.ts → ports-mObLgH1z.d.ts} +1 -1
  213. package/dist/powersync/index.d.ts +2 -2
  214. package/dist/preset/index.d.ts +3 -3
  215. package/dist/{push-token-B3m3pWAv.d.ts → push-token-BSSvsWXZ.d.ts} +1 -1
  216. package/dist/query/index.d.ts +1 -1
  217. package/dist/{rate-limit-o44SYkVY.js → rate-limit-Dt9vAY4E.js} +53 -0
  218. package/dist/react/index.d.ts +6 -6
  219. package/dist/react/index.js +3 -3
  220. package/dist/react/native/index.d.ts +1 -1
  221. package/dist/react/native/index.js +1 -1
  222. package/dist/react/server.d.ts +12 -7
  223. package/dist/react/server.js +8 -3
  224. package/dist/react/session.d.ts +5 -0
  225. package/dist/react/session.js +9 -1
  226. package/dist/{react-BuDYI62C.js → react-CZUZYn9E.js} +41 -4
  227. package/dist/react-router/index.d.ts +3 -3
  228. package/dist/realtime/index.d.ts +5 -5
  229. package/dist/realtime/index.js +2 -1
  230. package/dist/{record-form-DB_5Ue_B.d.ts → record-form-D9ILuVtA.d.ts} +1 -1
  231. package/dist/records/index.d.ts +7 -7
  232. package/dist/relay-gKvKJ3xf.js +208 -0
  233. package/dist/{resource-execute-CzHuDsil.d.ts → resource-execute-Cpnob1Vj.d.ts} +1 -1
  234. package/dist/{resource-types-DnKiH4G2.d.ts → resource-types-pMeLs68X.d.ts} +1 -1
  235. package/dist/{resources-B9cQxhjw.d.ts → resources-7iq2-5_A.d.ts} +1 -1
  236. package/dist/server/index.d.ts +147 -9
  237. package/dist/server/index.js +396 -1
  238. package/dist/{server-types-7QPzW2bF.d.ts → server-types-CK8mUIUT.d.ts} +5 -354
  239. package/dist/{session-CfBCJGgc.d.ts → session-DWmFv3vB.d.ts} +2 -1
  240. package/dist/session-status-qQLm7jzh.d.ts +82 -0
  241. package/dist/{sign-in-BsIaNx2C.js → sign-in-CmPK1AgM.js} +20 -10
  242. package/dist/solid/index.d.ts +7 -7
  243. package/dist/solid/index.js +1 -1
  244. package/dist/solid-start/index.d.ts +3 -3
  245. package/dist/spec/index.d.ts +1 -1
  246. package/dist/sql/index.d.ts +3 -3
  247. package/dist/sql/index.js +1 -1
  248. package/dist/{sql-OLVW4t08.js → sql-Dl3Alk43.js} +127 -0
  249. package/dist/sqlite/index.d.ts +1 -1
  250. package/dist/ssr/index.d.ts +1 -1
  251. package/dist/storage/index.d.ts +3 -3
  252. package/dist/storage/index.js +54 -1
  253. package/dist/support-B4ZBVxt3.d.ts +357 -0
  254. package/dist/svelte/index.d.ts +7 -7
  255. package/dist/svelte/index.js +1 -1
  256. package/dist/sveltekit/index.d.ts +4 -4
  257. package/dist/{tags-BjHflcHF.d.ts → tags-qvVk79pp.d.ts} +1 -1
  258. package/dist/tanstack-db/index.d.ts +1 -1
  259. package/dist/tanstack-start/index.d.ts +3 -3
  260. package/dist/{tenant-DzFsg0Pc.d.ts → tenant-DOKIJI62.d.ts} +1 -1
  261. package/dist/testing/index.d.ts +8 -7
  262. package/dist/{timeline-WrFMgd3U.d.ts → timeline-CvTuXYvn.d.ts} +3 -3
  263. package/dist/{topic-DNFEFGKI.d.ts → topic-CZXHhZye.d.ts} +2 -2
  264. package/dist/{verify-CMou8dWZ.d.ts → verify-CjvNLY7N.d.ts} +1 -1
  265. package/dist/vue/index.d.ts +7 -7
  266. package/dist/vue/index.js +1 -1
  267. package/dist/{watch-topic-Bo9S2R4P.d.ts → watch-topic-BAxoPKZx.d.ts} +1 -1
  268. package/dist/yjs/index.d.ts +1 -1
  269. package/package.json +1 -1
  270. package/skills/better-supabase-api/SKILL.md +3 -1
  271. package/skills/better-supabase-auth/SKILL.md +7 -0
  272. package/dist/cli/add-CUH0rORo.js +0 -1
@@ -1,13 +1,13 @@
1
1
  import { b as DbError } from "../result-DZeA5KS6.js";
2
2
  import { Ct as Events, D as BlockEventPattern, T as BlockEvent, bt as EventMap, k as BlockEventsMatching } from "../events-vcqenSYU.js";
3
- import { pt as QuerySpec } from "../define-DFBnQyYg.js";
4
- import { $ as TemplateValues } from "../bucket-CiNi8sIw.js";
5
- import { g as TopicHandlers, m as Topic, p as SubscriptionStatus, r as PresenceMember, t as EventSchemas } from "../topic-DNFEFGKI.js";
6
- import { t as AuthSnapshot } from "../bind-h5jre2K0.js";
3
+ import { pt as QuerySpec } from "../define-C5AcEkEJ.js";
4
+ import { tt as TemplateValues } from "../bucket-vc-QRrva.js";
5
+ import { g as TopicHandlers, m as Topic, p as SubscriptionStatus, r as PresenceMember, t as EventSchemas } from "../topic-CZXHhZye.js";
6
+ import { t as AuthSnapshot } from "../bind-JGCPGUJh.js";
7
7
  import { t as AuthSession } from "../view-DyFdMCqg.js";
8
- import { n as Controller } from "../controller-DyPPMFSw.js";
9
- import { C as LiveCountSource, D as ProfileOf, E as PresenceTopic, O as UseActionOptions, S as LiveCountHookOptions, T as PresenceHookOptions, _ as ActionResultOf, a as DataRows, b as ClaimsOf, c as DataWrites, d as BlockMutationState, f as BlockQueryActions, g as ActionInputOf, h as BlockRefetchOn, i as DataRow, l as BlockEventSource, m as BlockQueryState, n as DataId, o as DataSource, p as BlockQueryOptions, r as DataListArgs, s as DataState, t as fieldErrorsOf, u as BlockMutationActions, v as ActionState, w as LiveQueryHookOptions, x as ClientLike, y as BroadcastOptions } from "../field-errors-DYtg1mwv.js";
10
- import { n as BlockOptions } from "../block-env-BrfRvPrj.js";
8
+ import { n as Controller } from "../controller-BW-5Opig.js";
9
+ import { C as LiveCountSource, D as ProfileOf, E as PresenceTopic, O as UseActionOptions, S as LiveCountHookOptions, T as PresenceHookOptions, _ as ActionResultOf, a as DataRows, b as ClaimsOf, c as DataWrites, d as BlockMutationState, f as BlockQueryActions, g as ActionInputOf, h as BlockRefetchOn, i as DataRow, l as BlockEventSource, m as BlockQueryState, n as DataId, o as DataSource, p as BlockQueryOptions, r as DataListArgs, s as DataState, t as fieldErrorsOf, u as BlockMutationActions, v as ActionState, w as LiveQueryHookOptions, x as ClientLike, y as BroadcastOptions } from "../field-errors-Dt86dCKk.js";
10
+ import { n as BlockOptions } from "../block-env-y65GF_px.js";
11
11
  import { n as BlockDataOf, r as BlockMethodName, t as BlockArgsOf } from "../block-method-CiVa2G-J.js";
12
12
  import { SupabaseClient } from "@supabase/supabase-js";
13
13
  import { QueryClient } from "@tanstack/query-core";
@@ -1,5 +1,5 @@
1
1
  import { t as clearOnUserChange } from "../user-change-DgWC6RRC.js";
2
- import { a as createActionRunner, c as liveKey, d as shownCount, f as startBroadcast, i as countSource, l as notJoined, m as startLiveQuery, n as assertInvalidateClient, o as joinPresence, p as startLiveCount, r as callerOf, s as keyed, t as NO_COUNT, u as plainCaller } from "../client-BAEbEA7t.js";
2
+ import { a as createActionRunner, c as liveKey, d as shownCount, f as startBroadcast, i as countSource, l as notJoined, m as startLiveQuery, n as assertInvalidateClient, o as joinPresence, p as startLiveCount, r as callerOf, s as keyed, t as NO_COUNT, u as plainCaller } from "../client-C_mlji5R.js";
3
3
  import { c as listenToBlockEvents, d as fieldErrorsOf, i as dataTarget, l as blockEnv, n as createDataOne, o as createBlockMutation, s as createBlockQuery, t as createDataList, u as withEnv } from "../data-hooks-tgF1Ct0F.js";
4
4
  import { getContext, onDestroy, onMount, setContext } from "svelte";
5
5
  import { createSubscriber } from "svelte/reactivity";
@@ -1,12 +1,12 @@
1
1
  import { O as AnyFunctions, k as AnyModels } from "../types-DFdg_4yN.js";
2
2
  import { l as PermissionRef, t as AnyAuthorizer } from "../authorizer-B6X09otb.js";
3
- import { t as BetterSupabase } from "../define-DFBnQyYg.js";
4
- import { n as BetterServer } from "../server-types-7QPzW2bF.js";
3
+ import { t as BetterSupabase } from "../define-C5AcEkEJ.js";
4
+ import { n as BetterServer } from "../server-types-CK8mUIUT.js";
5
5
  import { a as AuthorizedContext, c as ResourceLoaderContext, i as AuthorizeOptions, l as Unwrapped, n as ActionParsed, o as BlockActionOptions, r as ActionResult, s as BlockRequireOptions } from "../kit-DOwKpSkA.js";
6
6
  import { t as RefusalRedirects } from "../refusal-CSntB_x8.js";
7
- import { n as FrameworkOptions, r as LocalsResource, t as FrameworkLocals } from "../framework-h5lP_5yj.js";
7
+ import { n as FrameworkOptions, r as LocalsResource, t as FrameworkLocals } from "../framework-BGdZVyPL.js";
8
8
  import { t as Validated } from "../shared-CRRfQAKG.js";
9
- import { i as tagFor } from "../tags-BjHflcHF.js";
9
+ import { i as tagFor } from "../tags-qvVk79pp.js";
10
10
  import { AnyEntry, Contributions } from "@supabase/middleware";
11
11
  import { StandardSchemaV1 } from "@standard-schema/spec";
12
12
  //#region src/bridges/sveltekit.d.ts
@@ -1,4 +1,4 @@
1
- import { Qt as CacheTarget, Zt as CacheAdapter } from "./define-DFBnQyYg.js";
1
+ import { Qt as CacheTarget, Zt as CacheAdapter } from "./define-C5AcEkEJ.js";
2
2
  //#region src/core/tags.d.ts
3
3
  interface TagOptions {
4
4
  /** The tenant the read is scoped to; `"*"` is every tenant's reads. */
@@ -1,5 +1,5 @@
1
1
  import { O as AnyFunctions, k as AnyModels, ut as TableKey } from "../types-DFdg_4yN.js";
2
- import { t as BetterSupabase, v as Db } from "../define-DFBnQyYg.js";
2
+ import { t as BetterSupabase, v as Db } from "../define-C5AcEkEJ.js";
3
3
  import { n as DataEngine } from "../data-engine-BWoz9lED.js";
4
4
  import { t as BetterQueryMeta } from "../invalidate-DMp4eqfF.js";
5
5
  import { QueryClient, SkipToken } from "@tanstack/query-core";
@@ -1,10 +1,10 @@
1
1
  import { O as AnyFunctions, k as AnyModels } from "../types-DFdg_4yN.js";
2
2
  import { l as PermissionRef, t as AnyAuthorizer } from "../authorizer-B6X09otb.js";
3
- import { t as BetterSupabase } from "../define-DFBnQyYg.js";
4
- import { n as BetterServer } from "../server-types-7QPzW2bF.js";
3
+ import { t as BetterSupabase } from "../define-C5AcEkEJ.js";
4
+ import { n as BetterServer } from "../server-types-CK8mUIUT.js";
5
5
  import { a as AuthorizedContext, c as ResourceLoaderContext, i as AuthorizeOptions, l as Unwrapped, n as ActionParsed, o as BlockActionOptions, r as ActionResult, s as BlockRequireOptions } from "../kit-DOwKpSkA.js";
6
6
  import { t as RefusalRedirects } from "../refusal-CSntB_x8.js";
7
- import { n as FrameworkOptions, r as LocalsResource, t as FrameworkLocals } from "../framework-h5lP_5yj.js";
7
+ import { n as FrameworkOptions, r as LocalsResource, t as FrameworkLocals } from "../framework-BGdZVyPL.js";
8
8
  import { t as Validated } from "../shared-CRRfQAKG.js";
9
9
  import { AnyEntry, Contributions } from "@supabase/middleware";
10
10
  import { StandardSchemaV1 } from "@standard-schema/spec";
@@ -1,4 +1,4 @@
1
- import { t as AuthSnapshot } from "./bind-h5jre2K0.js";
1
+ import { t as AuthSnapshot } from "./bind-JGCPGUJh.js";
2
2
  import { t as AuthSession } from "./view-DyFdMCqg.js";
3
3
  //#region src/auth/tenant.d.ts
4
4
  /**
@@ -12,20 +12,21 @@ import { n as Embedder } from "../knowledge-F1IhRI4Q.js";
12
12
  import { a as AuthorizationProvider } from "../authorization-HZdJCaVm.js";
13
13
  import { o as StreamStore } from "../store-CpheI-lN.js";
14
14
  import { o as Authorizer } from "../authorizer-B6X09otb.js";
15
- import { J as DbStats, Zt as CacheAdapter, t as BetterSupabase, v as Db } from "../define-DFBnQyYg.js";
16
- import { X as StoragePath } from "../bucket-CiNi8sIw.js";
17
- import { B as SupportSessionStore, a as ServerContext, c as ServerOptions } from "../server-types-7QPzW2bF.js";
15
+ import { J as DbStats, Zt as CacheAdapter, t as BetterSupabase, v as Db } from "../define-C5AcEkEJ.js";
16
+ import { Q as StoragePath } from "../bucket-vc-QRrva.js";
17
+ import { a as ServerContext, c as ServerOptions } from "../server-types-CK8mUIUT.js";
18
18
  import { n as Impersonator } from "../impersonation-YTa9dZUv.js";
19
- import { tn as AnyRecordBinding } from "../define-block-DvvcM54N.js";
19
+ import { tn as AnyRecordBinding } from "../define-block-C1RHXz7L.js";
20
20
  import { n as Money } from "../money-BNRdJQzA.js";
21
21
  import { i as EventSink, t as CloudEvent } from "../cloud-event-CzZTJkXv.js";
22
22
  import { i as AuthorizationHooks } from "../authorization-hooks-D_pwXlBs.js";
23
23
  import { s as SqlClaims, t as BetterPostgres } from "../pool-CrtT4dg-.js";
24
+ import { C as SupportSessionStore } from "../support-B4ZBVxt3.js";
24
25
  import { r as GuardOptions } from "../respond-Dn1_YhC1.js";
25
26
  import { l as Transcriber, s as NoteTaker, u as TranscriberInput } from "../recordings-BBSJt_YV.js";
26
- import { n as Controller } from "../controller-DyPPMFSw.js";
27
- import { c as AiTaskRunner, o as AiTaskRun, r as AiTask } from "../ai-schedules-D_Hz-ik5.js";
28
- import { Ht as GeneratorModel, Qt as ResolvedConfig, jt as Generator, zt as GeneratorInput } from "../context-TGX2eDS5.js";
27
+ import { n as Controller } from "../controller-BW-5Opig.js";
28
+ import { c as AiTaskRunner, o as AiTaskRun, r as AiTask } from "../ai-schedules-BmkARmQ9.js";
29
+ import { Ht as GeneratorModel, Qt as ResolvedConfig, jt as Generator, zt as GeneratorInput } from "../context-8kb8m5uO.js";
29
30
  import { r as WebhookInput } from "../signatures-Dkx9OE8j.js";
30
31
  import { n as Payment, o as PaymentProvider } from "../payments-BYcN34Fp.js";
31
32
  import { t as NotificationChannel } from "../channel-BjvGO39m.js";
@@ -1,9 +1,9 @@
1
1
  import { D as ValidationIssue, t as AsyncResult } from "./result-DZeA5KS6.js";
2
2
  import { $ as RecordRef } from "./types-DFdg_4yN.js";
3
3
  import { o as FilterField } from "./filter-query-BXLs72G9.js";
4
- import { cn as RecordBindingResult, hn as TimelineItem, in as RecordBindingData } from "./define-block-DvvcM54N.js";
5
- import { A as BindingBlocks, F as LoadBindingsOptions, M as BindingName, N as BindingOf, P as BindingSource, V as PermissionSet, _ as RecordTypeBlocks, g as RecordType, h as RecordCan } from "./index-BfkltrGJ.js";
6
- import { c as ListParseOptions, m as ListSearchParams } from "./list-query-BDVutLFr.js";
4
+ import { cn as RecordBindingResult, hn as TimelineItem, in as RecordBindingData } from "./define-block-C1RHXz7L.js";
5
+ import { A as BindingBlocks, F as LoadBindingsOptions, M as BindingName, N as BindingOf, P as BindingSource, V as PermissionSet, _ as RecordTypeBlocks, g as RecordType, h as RecordCan } from "./index-CcAmFNVi.js";
6
+ import { c as ListParseOptions, m as ListSearchParams } from "./list-query-DYhgRTd5.js";
7
7
  //#region src/records/list.d.ts
8
8
  /**
9
9
  * How a binding fills a list column: `count` is how many rows it has (the
@@ -1,8 +1,8 @@
1
1
  import { D as ValidationIssue, b as DbError, t as AsyncResult } from "./result-DZeA5KS6.js";
2
2
  import { D as AccessTopicPolicy, O as AnyFunctions, it as Row, k as AnyModels, ut as TableKey } from "./types-DFdg_4yN.js";
3
3
  import { t as AuthorizationFunctions } from "./authorization-HZdJCaVm.js";
4
- import { t as BetterSupabase } from "./define-DFBnQyYg.js";
5
- import { $ as TemplateValues, Q as TemplateParams } from "./bucket-CiNi8sIw.js";
4
+ import { t as BetterSupabase } from "./define-C5AcEkEJ.js";
5
+ import { et as TemplateParams, tt as TemplateValues } from "./bucket-vc-QRrva.js";
6
6
  import { g as SubscriberPolicy, h as SubscriberEvent, i as AuthorizationHooks, m as Subscriber } from "./authorization-hooks-D_pwXlBs.js";
7
7
  import { t as RealtimeStatus } from "./realtime-status-BhNkb-Ow.js";
8
8
  import { RealtimeChannel, SupabaseClient } from "@supabase/supabase-js";
@@ -1,7 +1,7 @@
1
1
  /// <reference lib="esnext.temporal" />
2
2
  import { f as Result } from "./result-DZeA5KS6.js";
3
3
  import { O as AnyFunctions, it as Row, k as AnyModels, ut as TableKey } from "./types-DFdg_4yN.js";
4
- import { t as BetterSupabase } from "./define-DFBnQyYg.js";
4
+ import { t as BetterSupabase } from "./define-C5AcEkEJ.js";
5
5
  import { n as VerifyOptions, r as WebhookInput, t as VerifiedWebhook } from "./signatures-Dkx9OE8j.js";
6
6
  //#region src/blocks/webhooks/verify.d.ts
7
7
  /** The `Stripe-Signature` header for `body`, for tests and local replays. */
@@ -1,13 +1,13 @@
1
1
  import { b as DbError } from "../result-DZeA5KS6.js";
2
2
  import { Ct as Events, D as BlockEventPattern, T as BlockEvent, bt as EventMap, k as BlockEventsMatching } from "../events-vcqenSYU.js";
3
- import { pt as QuerySpec } from "../define-DFBnQyYg.js";
4
- import { $ as TemplateValues } from "../bucket-CiNi8sIw.js";
5
- import { g as TopicHandlers, m as Topic, p as SubscriptionStatus, r as PresenceMember, t as EventSchemas } from "../topic-DNFEFGKI.js";
6
- import { t as AuthSnapshot } from "../bind-h5jre2K0.js";
3
+ import { pt as QuerySpec } from "../define-C5AcEkEJ.js";
4
+ import { tt as TemplateValues } from "../bucket-vc-QRrva.js";
5
+ import { g as TopicHandlers, m as Topic, p as SubscriptionStatus, r as PresenceMember, t as EventSchemas } from "../topic-CZXHhZye.js";
6
+ import { t as AuthSnapshot } from "../bind-JGCPGUJh.js";
7
7
  import { t as AuthSession } from "../view-DyFdMCqg.js";
8
- import { n as Controller } from "../controller-DyPPMFSw.js";
9
- import { C as LiveCountSource, D as ProfileOf, E as PresenceTopic, O as UseActionOptions, S as LiveCountHookOptions, T as PresenceHookOptions, _ as ActionResultOf, a as DataRows, b as ClaimsOf, c as DataWrites, d as BlockMutationState, f as BlockQueryActions, g as ActionInputOf, h as BlockRefetchOn, i as DataRow, l as BlockEventSource, m as BlockQueryState, n as DataId, o as DataSource, p as BlockQueryOptions, r as DataListArgs, s as DataState, t as fieldErrorsOf, u as BlockMutationActions, v as ActionState, w as LiveQueryHookOptions, x as ClientLike, y as BroadcastOptions } from "../field-errors-DYtg1mwv.js";
10
- import { n as BlockOptions } from "../block-env-BrfRvPrj.js";
8
+ import { n as Controller } from "../controller-BW-5Opig.js";
9
+ import { C as LiveCountSource, D as ProfileOf, E as PresenceTopic, O as UseActionOptions, S as LiveCountHookOptions, T as PresenceHookOptions, _ as ActionResultOf, a as DataRows, b as ClaimsOf, c as DataWrites, d as BlockMutationState, f as BlockQueryActions, g as ActionInputOf, h as BlockRefetchOn, i as DataRow, l as BlockEventSource, m as BlockQueryState, n as DataId, o as DataSource, p as BlockQueryOptions, r as DataListArgs, s as DataState, t as fieldErrorsOf, u as BlockMutationActions, v as ActionState, w as LiveQueryHookOptions, x as ClientLike, y as BroadcastOptions } from "../field-errors-Dt86dCKk.js";
10
+ import { n as BlockOptions } from "../block-env-y65GF_px.js";
11
11
  import { n as BlockDataOf, r as BlockMethodName, t as BlockArgsOf } from "../block-method-CiVa2G-J.js";
12
12
  import { t as SupportView } from "../support-view-BYOgwXsJ.js";
13
13
  import { SupabaseClient } from "@supabase/supabase-js";
package/dist/vue/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as clearOnUserChange } from "../user-change-DgWC6RRC.js";
2
- import { a as createActionRunner, c as liveKey, d as shownCount, f as startBroadcast, i as countSource, l as notJoined, m as startLiveQuery, n as assertInvalidateClient, o as joinPresence, p as startLiveCount, r as callerOf, s as keyed, t as NO_COUNT, u as plainCaller } from "../client-BAEbEA7t.js";
2
+ import { a as createActionRunner, c as liveKey, d as shownCount, f as startBroadcast, i as countSource, l as notJoined, m as startLiveQuery, n as assertInvalidateClient, o as joinPresence, p as startLiveCount, r as callerOf, s as keyed, t as NO_COUNT, u as plainCaller } from "../client-C_mlji5R.js";
3
3
  import { t as supportOf } from "../support-view-g4YLBeqX.js";
4
4
  import { c as listenToBlockEvents, d as fieldErrorsOf, i as dataTarget, l as blockEnv, n as createDataOne, o as createBlockMutation, s as createBlockQuery, t as createDataList, u as withEnv } from "../data-hooks-tgF1Ct0F.js";
5
5
  import { computed, getCurrentInstance, getCurrentScope, inject, onMounted, onScopeDispose, provide, readonly, shallowRef, toValue, watch } from "vue";
@@ -1,4 +1,4 @@
1
- import { c as RealtimeClient, p as SubscriptionStatus } from "./topic-DNFEFGKI.js";
1
+ import { c as RealtimeClient, p as SubscriptionStatus } from "./topic-CZXHhZye.js";
2
2
  //#region src/realtime/watch-topic.d.ts
3
3
  interface TopicWatch {
4
4
  readonly onMessage: (event: string, payload: unknown) => void;
@@ -1,5 +1,5 @@
1
1
  import { t as AsyncResult } from "../result-DZeA5KS6.js";
2
- import { c as RealtimeClient, r as PresenceMember } from "../topic-DNFEFGKI.js";
2
+ import { c as RealtimeClient, r as PresenceMember } from "../topic-CZXHhZye.js";
3
3
  import { a as DocumentSuggestion, d as OpenedDocument, l as Documents, r as DocumentRef, t as DecidedSuggestion } from "../documents-Cup1rpjF.js";
4
4
  //#region src/yjs/yjs.d.ts
5
5
  type PresenceState = Readonly<Record<string, unknown>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "better-supabase",
3
- "version": "0.15.1",
3
+ "version": "0.16.0",
4
4
  "description": "Strongly typed Supabase: generated schema, typed repositories, plugins, auth glue, framework integrations and the better-supabase CLI.",
5
5
  "keywords": [
6
6
  "cli",
@@ -144,11 +144,13 @@ and upload through `bsb.db`, as in [references/powersync.md](references/powersyn
144
144
 
145
145
  - `createQueue({ sql: postgres.admin, queues: { queue_name: zodSchema } })` runs on Supabase Queues (pgmq): `enqueue(queue, payload, { context: db.$context })` in the request, then `work` or `drain` in a worker, where `const db = await bsb.forContext(job.context).orThrow()` runs the work as the enqueuing user with RLS (it fails with `forbidden` for a job without a user; use `bsb.admin(job.context)` only for work no user owns). The handler throws to retry. `schedule(name, cron, queue, payload, { timeZone })` uses pg_cron, or with `blocks.queue.options.scheduler: "drain"` a `jobs.drainRoute({ secret: process.env.CRON_SECRET, handlers })` route that Vercel Cron calls; `blocks.queue.options.backend: "table"` runs without pgmq. Queue names are lowercase letters, digits and underscores. With a service-role Supabase client instead of SQL, it uses the `pgmq_public` RPCs (no dedupe or schedules).
146
146
  - `createIdempotency({ sql: postgres.admin }).handle(request, handler)` for POST endpoints that clients retry.
147
+ - `createRateLimit({ sql: postgres.admin })` limits keys that aren't claims: `check(scope, key, rule?)` for one limit, `checkAll([{ scope, key, rule? }, ...])` for several in one round trip that counts only when all allow (each limit its own scope; `blocked` names the refusing one). Answer a refusal with `rateLimited(decision)`.
148
+ - Large browser uploads: `bucket.connect(client).reserveResumable(target)` (`better-supabase/storage`) signs a TUS upload and returns `{ tusEndpoint, headers, metadata, expiresAt, bucket, path, token }`; hand `endpoint: tusEndpoint`, `headers` (`x-signature`, `x-upsert`) and `metadata` (plus `contentType`) to `tus-js-client`, so the browser needs no access token. Call `claimReserved(reservation)` afterwards, which a support session needs.
147
149
  - `createWebhookInbox({ transport: sqlTransport(postgres.admin), source, secrets }).receive(request)` for webhooks; `process(handler)` later. `createInbox` is the conversation inbox (`blocks/inbox`), not this.
148
150
  - Times are `Temporal.Instant`: `EnqueueOptions.runAt`, `Job.enqueuedAt`, `Job.visibleUntil`, `WebhookInboxMessage.receivedAt` and webhook timestamps.
149
151
  - Schedule cleanup with pg_cron at a quiet hour: `better_supabase.purge_job_archive('<queue>')`, `purge_webhooks()`, `purge_audit_log()`, `purge_idempotency_keys()`, `purge_rate_limits()`, `purge_outbox()`, `purge_notifications()` and `purge_webhook_deliveries()`, for the modules you installed. Only `service_role` can execute them.
150
152
  - Audit a table with `better_supabase.audit('public.t', redact => '{secret}', event_prefix => 't')`. Each call replaces all of the table's settings, so a second call without `ignore` and `redact` clears them; read `audit_settings('public.t')` first when another package also registers the table; record non-row events with `better_supabase.audit_event(event_type, ...)` and an `idempotency_key`. For per-tenant retention, write an `audit_retention(tenant)` SQL function or call `purgeAuditLog(sql, { retention })` from `better-supabase/blocks/audit`, which also has `auditListQuery` and `exportAuditLog` (NDJSON or OCSF). `upgrade` writes a pgTAP file per audited table, and doctor BS315 lists tables without the trigger; exempt the rest with `blocks.audit.options.exempt` globs.
151
- - For a "view as user" support mode, add the `impersonation` SQL module, pass `support: supportSessions({ store: sqlSupportStore(postgres) })` to `createServer`, call `bsb.startSupport({ targetUserId, reason })` and `bsb.stopSupport()` from server actions, and show a banner with `useSupportSession()`. Sessions are read-only by default; grant admins the `support.start` platform permission.
153
+ - For a "view as user" support mode, add the `impersonation` SQL module, pass `support: supportSessions({ store: sqlSupportStore(postgres) })` to `createServer`, call `bsb.startSupport({ targetUserId, reason })` and `bsb.stopSupport()` from server actions, and show a banner with `useSupportSession()`. Sessions are read-only by default; grant admins the `support.start` platform permission. Realtime in a support session (or with httpOnly cookies) goes through `export const { GET, POST } = realtimeRelay(bsb, { topics: [myTopic, liveRelayTopic], postgres })` from `better-supabase/server`, which checks each topic's `realtime.messages` policies as the viewed user; pass `realtime={useRealtimeRelay("/api/realtime")}` to `<BetterSupabaseProvider>` (or `relayRealtimeClient(url)` / `relayTopicPort(url)` from `better-supabase/realtime`) so `subscribe`, `useBroadcast`, `usePresence` and `useLiveQuery` work unchanged. Never subscribe in the browser with the admin's own client during a support session.
152
154
  - For teams, add the `organizations` and `invitations` SQL modules and call them through `createOrganizations({ transport: sqlTransport(postgres.asUser(claims)), events: betterSupabase.events, onInvite })` from `better-supabase/blocks/organizations`. Send the invitation email in `onInvite`, show `previewInvitation(token)` on the accept page, and switch with `organizations.switch(id)`, refreshing the session when it returns `refresh: true`. Errors carry codes such as `ORGANIZATION_SLUG_TAKEN` in `hint`. Tables your schema already has are detected and kept; map other names with `tables` and `columns`.
153
155
  - For user profiles, add the `profiles` SQL module: sign-up creates the row from auth metadata with a unique username and mirrors the email; users update only the `updatable` columns. An existing `profiles` table is detected and kept: the block adds only the columns it lacks, `tables` and `columns` map other names, and `syncTrigger: false` leaves profile creation to your own trigger. Use `avatarBucket()` and `organizationLogoBucket()` from `better-supabase/storage` for uploads; `policy: { access: { read, write } }` checks any bucket through the access contract.
154
156
  - For events other systems must see, add the `outbox` SQL module and write events with `emit_event(type, payload, subject, tenant, key)` inside the same transaction as the change (the SQL modules emit theirs automatically). Relay them with `createOutbox({ transport: sqlTransport(postgres.admin), source }).relayRoute({ secret, consumers: { name: httpSink(url) } })` from `better-supabase/blocks/outbox` after `outbox.register(name, { types })`. Delivery is at least once; receivers deduplicate on the CloudEvent `id`.
@@ -118,6 +118,13 @@ A proxy or middleware with its own Supabase client calls
118
118
  `sessionStatus(request, { url, publishableKey })` from `better-supabase/ssr`
119
119
  (`"ended"` on a 401 or 403 from Auth; treat `"unknown"` as active) and
120
120
  `clearSessionCookies(request, response, { url })` before redirecting.
121
+ An app with httpOnly session cookies and no browser Supabase client watches
122
+ an open page with `export const GET = sessionStatusRoute(bsb)` (from
123
+ `better-supabase/server`) and `useSessionWatch({ redirect: "/login" })` (from
124
+ `better-supabase/next/client`): it checks on focus, visibility and an
125
+ interval, reloads on `ended`, `banned` or `signed_out`, refreshes the router
126
+ on `claims_changed` (the claims fingerprint, support target included, moved)
127
+ and tells the other tabs over a `BroadcastChannel`.
121
128
 
122
129
  Done when the irreversible action returns `SESSION_REVOKED` for a signed-out
123
130
  session in a test.
@@ -1 +0,0 @@
1
- export { t as addCommand } from "./add-DNOL9PDu.js";