better-supabase 0.7.1 → 0.9.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.
- package/README.md +146 -81
- package/bin/better-supabase.js +14 -2
- package/dist/access-sql-DUSSMaC3.js +201 -0
- package/dist/actor-BAhb-d1S.d.ts +104 -0
- package/dist/actor-KHDOKGb1.js +151 -0
- package/dist/adapter-CEjmtazZ.js +1984 -0
- package/dist/agents-BCNhIxVZ.d.ts +111 -0
- package/dist/ai-cache-Dps7aRu1.d.ts +70 -0
- package/dist/ai-cache-zeUL94pB.js +84 -0
- package/dist/ai-chat-3GBSlFR4.d.ts +608 -0
- package/dist/ai-files-D2_9YLjF.js +331 -0
- package/dist/ai-message-DfaP8sis.js +14 -0
- package/dist/ai-sdk/agents/index.d.ts +154 -10
- package/dist/ai-sdk/agents/index.js +172 -17
- package/dist/ai-sdk/batches/index.d.ts +4 -4
- package/dist/ai-sdk/batches/index.js +5 -5
- package/dist/ai-sdk/cache/index.d.ts +2 -2
- package/dist/ai-sdk/cache/index.js +2 -2
- package/dist/ai-sdk/chat/index.d.ts +1 -1
- package/dist/ai-sdk/chat/index.js +10 -21
- package/dist/ai-sdk/embeddings/index.d.ts +3 -3
- package/dist/ai-sdk/embeddings/index.js +1 -2
- package/dist/ai-sdk/files/index.d.ts +3 -3
- package/dist/ai-sdk/files/index.js +4 -4
- package/dist/ai-sdk/index.d.ts +38 -9
- package/dist/ai-sdk/index.js +5 -3
- package/dist/ai-sdk/mcp/index.d.ts +43 -6
- package/dist/ai-sdk/mcp/index.js +37 -8
- package/dist/ai-sdk/memory/index.d.ts +5 -2
- package/dist/ai-sdk/memory/index.js +2 -2
- package/dist/ai-sdk/react/index.js +1 -2
- package/dist/ai-sdk/workflow/index.d.ts +7 -6
- package/dist/ai-sdk/workflow/index.js +15 -26
- package/dist/ai-tasks-Ih5oHfyj.d.ts +157 -0
- package/dist/announcements-BHCzraR6.js +128 -0
- package/dist/api-CFjuYKFY.js +680 -0
- package/dist/api-TG3jE5aO.d.ts +411 -0
- package/dist/api-keys-BEQatEUW.js +318 -0
- package/dist/api-keys-BYoGCM9p.d.ts +205 -0
- package/dist/app-tables-BGl5_U2x.js +584 -0
- package/dist/approvals-a2KmioBh.d.ts +124 -0
- package/dist/arazzo/index.d.ts +255 -0
- package/dist/arazzo/index.js +622 -0
- package/dist/assistant-Bf2cA6RO.d.ts +148 -0
- package/dist/astro/index.d.ts +9 -8
- package/dist/astro/index.js +12 -9
- package/dist/asyncapi/index.d.ts +103 -0
- package/dist/asyncapi/index.js +569 -0
- package/dist/attachments-DAj2Yp95.js +264 -0
- package/dist/attributes-D4mA7WhI.js +38 -0
- package/dist/audit-log-BMMuGPdP.js +786 -0
- package/dist/auth-CdBKt0CS.js +20 -0
- package/dist/auth-reply-DUCwb8YO.js +31 -0
- package/dist/auth-reply-Dj124sbX.d.ts +11 -0
- package/dist/authorization-DpRfs6Wx.d.ts +1412 -0
- package/dist/authorization-hooks-DkmrnDX7.d.ts +214 -0
- package/dist/authorizer-DH7DjkL3.js +126 -0
- package/dist/authorizer-eiOjo-3l.d.ts +73 -0
- package/dist/base64-BmeCBgGo.js +42 -0
- package/dist/batch-limit-DKVQDz4o.js +5 -0
- package/dist/before-route-B98js9m_.js +30 -0
- package/dist/better-result/index.d.ts +118 -0
- package/dist/better-result/index.js +64 -0
- package/dist/bind-a7sUgvf4.d.ts +70 -0
- package/dist/block-env-CBd_SoL5.js +29 -0
- package/dist/block-env-Dxl7rsI0.d.ts +10 -0
- package/dist/block-events-DD9Q_NUz.js +96 -0
- package/dist/block-fields-5UA84ZUg.d.ts +55 -0
- package/dist/block-fields-ffD6Gxe4.js +139 -0
- package/dist/block-helpers-C86hPEjI.d.ts +37 -0
- package/dist/block-helpers-CfG_MvDR.js +264 -0
- package/dist/block-hooks-BLPWD3Jt.d.ts +107 -0
- package/dist/block-hooks-BsXncUlZ.js +114 -0
- package/dist/block-transport-DaGGXjIw.d.ts +70 -0
- package/dist/block-transport-G4t1umrR.js +85 -0
- package/dist/blocks/access-requests/index.d.ts +98 -0
- package/dist/blocks/access-requests/index.js +99 -0
- package/dist/blocks/agents/index.d.ts +21 -3
- package/dist/blocks/agents/index.js +65 -18
- package/dist/blocks/ai-cache/index.d.ts +8 -3
- package/dist/blocks/ai-cache/index.js +15 -3
- package/dist/blocks/ai-chat/index.d.ts +28 -4
- package/dist/blocks/ai-chat/index.js +31 -5
- package/dist/blocks/ai-chat/react/index.d.ts +12 -46
- package/dist/blocks/ai-chat/react/index.js +43 -335
- package/dist/blocks/ai-chat/solid/index.d.ts +34 -0
- package/dist/blocks/ai-chat/solid/index.js +41 -0
- package/dist/blocks/ai-chat/svelte/index.d.ts +34 -0
- package/dist/blocks/ai-chat/svelte/index.js +41 -0
- package/dist/blocks/ai-chat/vue/index.d.ts +34 -0
- package/dist/blocks/ai-chat/vue/index.js +41 -0
- package/dist/blocks/ai-files/index.d.ts +11 -4
- package/dist/blocks/ai-files/index.js +16 -3
- package/dist/blocks/ai-providers/index.d.ts +18 -3
- package/dist/blocks/ai-providers/index.js +41 -15
- package/dist/blocks/ai-tasks/index.d.ts +10 -3
- package/dist/blocks/ai-tasks/index.js +71 -21
- package/dist/blocks/announcements/index.d.ts +18 -3
- package/dist/blocks/announcements/index.js +27 -3
- package/dist/blocks/announcements/react/index.d.ts +4 -14
- package/dist/blocks/announcements/react/index.js +22 -70
- package/dist/blocks/announcements/solid/index.d.ts +13 -0
- package/dist/blocks/announcements/solid/index.js +14 -0
- package/dist/blocks/announcements/svelte/index.d.ts +13 -0
- package/dist/blocks/announcements/svelte/index.js +14 -0
- package/dist/blocks/announcements/vue/index.d.ts +13 -0
- package/dist/blocks/announcements/vue/index.js +14 -0
- package/dist/blocks/api-keys/index.d.ts +24 -7
- package/dist/blocks/api-keys/index.js +30 -295
- package/dist/blocks/api-keys/react/index.d.ts +29 -0
- package/dist/blocks/api-keys/react/index.js +43 -0
- package/dist/blocks/api-keys/react/server.d.ts +7 -0
- package/dist/blocks/api-keys/react/server.js +7 -0
- package/dist/blocks/api-keys/solid/index.d.ts +13 -0
- package/dist/blocks/api-keys/solid/index.js +14 -0
- package/dist/blocks/api-keys/svelte/index.d.ts +13 -0
- package/dist/blocks/api-keys/svelte/index.js +14 -0
- package/dist/blocks/api-keys/vue/index.d.ts +13 -0
- package/dist/blocks/api-keys/vue/index.js +14 -0
- package/dist/blocks/approvals/index.d.ts +22 -0
- package/dist/blocks/approvals/index.js +189 -0
- package/dist/blocks/attachments/index.d.ts +18 -223
- package/dist/blocks/attachments/index.js +26 -233
- package/dist/blocks/audit/index.d.ts +72 -354
- package/dist/blocks/audit/index.js +91 -695
- package/dist/blocks/audit/react/index.d.ts +26 -0
- package/dist/blocks/audit/react/index.js +44 -0
- package/dist/blocks/audit/react/server.d.ts +7 -0
- package/dist/blocks/audit/react/server.js +7 -0
- package/dist/blocks/audit/solid/index.d.ts +13 -0
- package/dist/blocks/audit/solid/index.js +14 -0
- package/dist/blocks/audit/svelte/index.d.ts +13 -0
- package/dist/blocks/audit/svelte/index.js +14 -0
- package/dist/blocks/audit/vue/index.d.ts +13 -0
- package/dist/blocks/audit/vue/index.js +14 -0
- package/dist/blocks/billing/index.d.ts +40 -13
- package/dist/blocks/billing/index.js +49 -18
- package/dist/blocks/billing/react/index.d.ts +34 -0
- package/dist/blocks/billing/react/index.js +36 -0
- package/dist/blocks/billing/react/server.d.ts +7 -0
- package/dist/blocks/billing/react/server.js +7 -0
- package/dist/blocks/billing/solid/index.d.ts +15 -0
- package/dist/blocks/billing/solid/index.js +14 -0
- package/dist/blocks/billing/svelte/index.d.ts +15 -0
- package/dist/blocks/billing/svelte/index.js +14 -0
- package/dist/blocks/billing/vue/index.d.ts +15 -0
- package/dist/blocks/billing/vue/index.js +14 -0
- package/dist/blocks/bookings/index.d.ts +36 -0
- package/dist/blocks/bookings/index.js +28 -0
- package/dist/blocks/bookings/react/index.d.ts +31 -0
- package/dist/blocks/bookings/react/index.js +59 -0
- package/dist/blocks/bookings/react/server.d.ts +6 -0
- package/dist/blocks/bookings/react/server.js +7 -0
- package/dist/blocks/bookings/solid/index.d.ts +13 -0
- package/dist/blocks/bookings/solid/index.js +14 -0
- package/dist/blocks/bookings/svelte/index.d.ts +13 -0
- package/dist/blocks/bookings/svelte/index.js +14 -0
- package/dist/blocks/bookings/vue/index.d.ts +13 -0
- package/dist/blocks/bookings/vue/index.js +14 -0
- package/dist/blocks/bulk/index.d.ts +142 -0
- package/dist/blocks/bulk/index.js +154 -0
- package/dist/blocks/calendar/index.d.ts +20 -0
- package/dist/blocks/calendar/index.js +33 -0
- package/dist/blocks/calendar/react/index.d.ts +26 -0
- package/dist/blocks/calendar/react/index.js +58 -0
- package/dist/blocks/calendar/react/server.d.ts +6 -0
- package/dist/blocks/calendar/react/server.js +7 -0
- package/dist/blocks/calendar/solid/index.d.ts +13 -0
- package/dist/blocks/calendar/solid/index.js +14 -0
- package/dist/blocks/calendar/svelte/index.d.ts +13 -0
- package/dist/blocks/calendar/svelte/index.js +14 -0
- package/dist/blocks/calendar/vue/index.d.ts +13 -0
- package/dist/blocks/calendar/vue/index.js +14 -0
- package/dist/blocks/catalog/index.d.ts +224 -0
- package/dist/blocks/catalog/index.js +292 -0
- package/dist/blocks/collections/index.d.ts +184 -0
- package/dist/blocks/collections/index.js +208 -0
- package/dist/blocks/comments/index.d.ts +19 -166
- package/dist/blocks/comments/index.js +26 -206
- package/dist/blocks/comments/react/index.d.ts +27 -0
- package/dist/blocks/comments/react/index.js +45 -0
- package/dist/blocks/comments/react/server.d.ts +7 -0
- package/dist/blocks/comments/react/server.js +7 -0
- package/dist/blocks/comments/solid/index.d.ts +13 -0
- package/dist/blocks/comments/solid/index.js +14 -0
- package/dist/blocks/comments/svelte/index.d.ts +13 -0
- package/dist/blocks/comments/svelte/index.js +14 -0
- package/dist/blocks/comments/vue/index.d.ts +13 -0
- package/dist/blocks/comments/vue/index.js +14 -0
- package/dist/blocks/connectors/index.d.ts +21 -3
- package/dist/blocks/connectors/index.js +54 -18
- package/dist/blocks/custom-fields/index.d.ts +62 -0
- package/dist/blocks/custom-fields/index.js +85 -0
- package/dist/blocks/data-lifecycle/index.d.ts +119 -10
- package/dist/blocks/data-lifecycle/index.js +103 -12
- package/dist/blocks/deals/index.d.ts +262 -0
- package/dist/blocks/deals/index.js +380 -0
- package/dist/blocks/documents/index.d.ts +17 -0
- package/dist/blocks/documents/index.js +118 -0
- package/dist/blocks/domains/index.d.ts +117 -0
- package/dist/blocks/domains/index.js +118 -0
- package/dist/blocks/drive/index.d.ts +296 -0
- package/dist/blocks/drive/index.js +483 -0
- package/dist/blocks/employees/index.d.ts +205 -0
- package/dist/blocks/employees/index.js +289 -0
- package/dist/blocks/engagements/index.d.ts +125 -0
- package/dist/blocks/engagements/index.js +143 -0
- package/dist/blocks/entitlements/index.d.ts +40 -4
- package/dist/blocks/entitlements/index.js +14 -24
- package/dist/blocks/entitlements/react/index.d.ts +24 -0
- package/dist/blocks/entitlements/react/index.js +35 -0
- package/dist/blocks/entitlements/react/server.d.ts +6 -0
- package/dist/blocks/entitlements/react/server.js +7 -0
- package/dist/blocks/entitlements/solid/index.d.ts +13 -0
- package/dist/blocks/entitlements/solid/index.js +14 -0
- package/dist/blocks/entitlements/svelte/index.d.ts +13 -0
- package/dist/blocks/entitlements/svelte/index.js +14 -0
- package/dist/blocks/entitlements/vue/index.d.ts +13 -0
- package/dist/blocks/entitlements/vue/index.js +14 -0
- package/dist/blocks/flags/index.d.ts +61 -187
- package/dist/blocks/flags/index.js +65 -252
- package/dist/blocks/forms/index.d.ts +302 -0
- package/dist/blocks/forms/index.js +341 -0
- package/dist/blocks/forms/react/index.d.ts +16 -0
- package/dist/blocks/forms/react/index.js +25 -0
- package/dist/blocks/forms/react/server.d.ts +6 -0
- package/dist/blocks/forms/react/server.js +7 -0
- package/dist/blocks/forms/solid/index.d.ts +13 -0
- package/dist/blocks/forms/solid/index.js +14 -0
- package/dist/blocks/forms/svelte/index.d.ts +13 -0
- package/dist/blocks/forms/svelte/index.js +14 -0
- package/dist/blocks/forms/vue/index.d.ts +13 -0
- package/dist/blocks/forms/vue/index.js +14 -0
- package/dist/blocks/hiring/index.d.ts +154 -0
- package/dist/blocks/hiring/index.js +180 -0
- package/dist/blocks/identities/index.d.ts +83 -0
- package/dist/blocks/identities/index.js +103 -0
- package/dist/blocks/imports/index.d.ts +91 -0
- package/dist/blocks/imports/index.js +123 -0
- package/dist/blocks/inbox/index.d.ts +22 -3
- package/dist/blocks/inbox/index.js +78 -6
- package/dist/blocks/inbox/react/index.d.ts +3 -2
- package/dist/blocks/inbox/react/index.js +55 -199
- package/dist/blocks/inbox/react/server.d.ts +2 -1
- package/dist/blocks/inbox/solid/index.d.ts +27 -0
- package/dist/blocks/inbox/solid/index.js +32 -0
- package/dist/blocks/inbox/svelte/index.d.ts +27 -0
- package/dist/blocks/inbox/svelte/index.js +32 -0
- package/dist/blocks/inbox/vue/index.d.ts +27 -0
- package/dist/blocks/inbox/vue/index.js +32 -0
- package/dist/blocks/index.d.ts +9 -64
- package/dist/blocks/index.js +193 -57
- package/dist/blocks/inventory/index.d.ts +181 -0
- package/dist/blocks/inventory/index.js +219 -0
- package/dist/blocks/invoices/index.d.ts +154 -0
- package/dist/blocks/invoices/index.js +216 -0
- package/dist/blocks/jobs/index.d.ts +188 -49
- package/dist/blocks/jobs/index.js +698 -527
- package/dist/blocks/knowledge/index.d.ts +10 -3
- package/dist/blocks/knowledge/index.js +17 -3
- package/dist/blocks/leave/index.d.ts +241 -0
- package/dist/blocks/leave/index.js +209 -0
- package/dist/blocks/memory/index.d.ts +9 -4
- package/dist/blocks/memory/index.js +49 -12
- package/dist/blocks/metrics/index.d.ts +174 -0
- package/dist/blocks/metrics/index.js +217 -0
- package/dist/blocks/mfa/index.d.ts +7 -0
- package/dist/blocks/mfa/index.js +12 -0
- package/dist/blocks/mfa/react/index.d.ts +30 -0
- package/dist/blocks/mfa/react/index.js +45 -0
- package/dist/blocks/mfa/react/server.d.ts +9 -0
- package/dist/blocks/mfa/react/server.js +12 -0
- package/dist/blocks/mfa/solid/index.d.ts +20 -0
- package/dist/blocks/mfa/solid/index.js +23 -0
- package/dist/blocks/mfa/svelte/index.d.ts +20 -0
- package/dist/blocks/mfa/svelte/index.js +23 -0
- package/dist/blocks/mfa/vue/index.d.ts +20 -0
- package/dist/blocks/mfa/vue/index.js +23 -0
- package/dist/blocks/notifications/index.d.ts +345 -26
- package/dist/blocks/notifications/index.js +744 -120
- package/dist/blocks/notifications/react/index.d.ts +7 -32
- package/dist/blocks/notifications/react/index.js +23 -49
- package/dist/blocks/notifications/react/server.d.ts +2 -1
- package/dist/blocks/notifications/solid/index.d.ts +13 -0
- package/dist/blocks/notifications/solid/index.js +14 -0
- package/dist/blocks/notifications/svelte/index.d.ts +13 -0
- package/dist/blocks/notifications/svelte/index.js +14 -0
- package/dist/blocks/notifications/vue/index.d.ts +13 -0
- package/dist/blocks/notifications/vue/index.js +14 -0
- package/dist/blocks/number-sequences/index.d.ts +39 -0
- package/dist/blocks/number-sequences/index.js +38 -0
- package/dist/blocks/oauth-server/index.d.ts +228 -0
- package/dist/blocks/oauth-server/index.js +309 -0
- package/dist/blocks/onboarding/index.d.ts +8 -3
- package/dist/blocks/onboarding/index.js +17 -63
- package/dist/blocks/onboarding/react/index.d.ts +3 -12
- package/dist/blocks/onboarding/react/index.js +18 -60
- package/dist/blocks/onboarding/react/server.d.ts +2 -2
- package/dist/blocks/onboarding/react/server.js +2 -2
- package/dist/blocks/onboarding/solid/index.d.ts +13 -0
- package/dist/blocks/onboarding/solid/index.js +14 -0
- package/dist/blocks/onboarding/svelte/index.d.ts +13 -0
- package/dist/blocks/onboarding/svelte/index.js +14 -0
- package/dist/blocks/onboarding/vue/index.d.ts +13 -0
- package/dist/blocks/onboarding/vue/index.js +14 -0
- package/dist/blocks/orders/index.d.ts +264 -0
- package/dist/blocks/orders/index.js +589 -0
- package/dist/blocks/organizations/index.d.ts +31 -238
- package/dist/blocks/organizations/index.js +49 -399
- package/dist/blocks/organizations/react/index.d.ts +108 -0
- package/dist/blocks/organizations/react/index.js +113 -0
- package/dist/blocks/organizations/react/server.d.ts +11 -0
- package/dist/blocks/organizations/react/server.js +15 -0
- package/dist/blocks/organizations/solid/index.d.ts +34 -0
- package/dist/blocks/organizations/solid/index.js +32 -0
- package/dist/blocks/organizations/svelte/index.d.ts +34 -0
- package/dist/blocks/organizations/svelte/index.js +32 -0
- package/dist/blocks/organizations/vue/index.d.ts +34 -0
- package/dist/blocks/organizations/vue/index.js +32 -0
- package/dist/blocks/outbox/index.d.ts +12 -3
- package/dist/blocks/outbox/index.js +97 -67
- package/dist/blocks/parties/index.d.ts +181 -0
- package/dist/blocks/parties/index.js +258 -0
- package/dist/blocks/pipelines/index.d.ts +189 -0
- package/dist/blocks/pipelines/index.js +204 -0
- package/dist/blocks/profiles/index.d.ts +14 -9
- package/dist/blocks/profiles/index.js +20 -6
- package/dist/blocks/promotions/index.d.ts +125 -0
- package/dist/blocks/promotions/index.js +123 -0
- package/dist/blocks/push/index.d.ts +48 -28
- package/dist/blocks/push/index.js +45 -16
- package/dist/blocks/quotes/index.d.ts +152 -0
- package/dist/blocks/quotes/index.js +209 -0
- package/dist/blocks/rank/index.d.ts +71 -0
- package/dist/blocks/rank/index.js +53 -0
- package/dist/blocks/reactions/index.d.ts +18 -0
- package/dist/blocks/reactions/index.js +26 -0
- package/dist/blocks/reactions/react/index.d.ts +23 -0
- package/dist/blocks/reactions/react/index.js +46 -0
- package/dist/blocks/reactions/react/server.d.ts +6 -0
- package/dist/blocks/reactions/react/server.js +7 -0
- package/dist/blocks/reactions/solid/index.d.ts +13 -0
- package/dist/blocks/reactions/solid/index.js +14 -0
- package/dist/blocks/reactions/svelte/index.d.ts +13 -0
- package/dist/blocks/reactions/svelte/index.js +14 -0
- package/dist/blocks/reactions/vue/index.d.ts +13 -0
- package/dist/blocks/reactions/vue/index.js +14 -0
- package/dist/blocks/relations/index.d.ts +180 -0
- package/dist/blocks/relations/index.js +254 -0
- package/dist/blocks/reminders/index.d.ts +177 -0
- package/dist/blocks/reminders/index.js +171 -0
- package/dist/blocks/reviews/index.d.ts +148 -0
- package/dist/blocks/reviews/index.js +139 -0
- package/dist/blocks/rules/index.d.ts +103 -0
- package/dist/blocks/rules/index.js +54 -0
- package/dist/blocks/rules/react/index.d.ts +34 -0
- package/dist/blocks/rules/react/index.js +55 -0
- package/dist/blocks/rules/react/server.d.ts +6 -0
- package/dist/blocks/rules/react/server.js +7 -0
- package/dist/blocks/rules/solid/index.d.ts +13 -0
- package/dist/blocks/rules/solid/index.js +14 -0
- package/dist/blocks/rules/svelte/index.d.ts +13 -0
- package/dist/blocks/rules/svelte/index.js +14 -0
- package/dist/blocks/rules/vue/index.d.ts +13 -0
- package/dist/blocks/rules/vue/index.js +14 -0
- package/dist/blocks/saved-views/index.d.ts +17 -0
- package/dist/blocks/saved-views/index.js +29 -0
- package/dist/blocks/saved-views/react/index.d.ts +34 -0
- package/dist/blocks/saved-views/react/index.js +57 -0
- package/dist/blocks/saved-views/react/server.d.ts +7 -0
- package/dist/blocks/saved-views/react/server.js +7 -0
- package/dist/blocks/saved-views/solid/index.d.ts +13 -0
- package/dist/blocks/saved-views/solid/index.js +14 -0
- package/dist/blocks/saved-views/svelte/index.d.ts +13 -0
- package/dist/blocks/saved-views/svelte/index.js +14 -0
- package/dist/blocks/saved-views/vue/index.d.ts +13 -0
- package/dist/blocks/saved-views/vue/index.js +14 -0
- package/dist/blocks/search/index.d.ts +31 -0
- package/dist/blocks/search/index.js +61 -0
- package/dist/blocks/search/react/index.d.ts +36 -0
- package/dist/blocks/search/react/index.js +49 -0
- package/dist/blocks/search/react/server.d.ts +7 -0
- package/dist/blocks/search/react/server.js +8 -0
- package/dist/blocks/search/solid/index.d.ts +13 -0
- package/dist/blocks/search/solid/index.js +14 -0
- package/dist/blocks/search/svelte/index.d.ts +13 -0
- package/dist/blocks/search/svelte/index.js +14 -0
- package/dist/blocks/search/vue/index.d.ts +13 -0
- package/dist/blocks/search/vue/index.js +14 -0
- package/dist/blocks/service-principals/index.d.ts +126 -0
- package/dist/blocks/service-principals/index.js +107 -0
- package/dist/blocks/sessions/index.d.ts +7 -0
- package/dist/blocks/sessions/index.js +14 -0
- package/dist/blocks/sessions/react/index.d.ts +31 -0
- package/dist/blocks/sessions/react/index.js +51 -0
- package/dist/blocks/sessions/react/server.d.ts +9 -0
- package/dist/blocks/sessions/react/server.js +11 -0
- package/dist/blocks/sessions/solid/index.d.ts +20 -0
- package/dist/blocks/sessions/solid/index.js +23 -0
- package/dist/blocks/sessions/svelte/index.d.ts +20 -0
- package/dist/blocks/sessions/svelte/index.js +23 -0
- package/dist/blocks/sessions/vue/index.d.ts +20 -0
- package/dist/blocks/sessions/vue/index.js +23 -0
- package/dist/blocks/settings/index.d.ts +20 -86
- package/dist/blocks/settings/index.js +28 -101
- package/dist/blocks/settings/react/index.d.ts +25 -0
- package/dist/blocks/settings/react/index.js +37 -0
- package/dist/blocks/settings/react/server.d.ts +7 -0
- package/dist/blocks/settings/react/server.js +7 -0
- package/dist/blocks/settings/solid/index.d.ts +13 -0
- package/dist/blocks/settings/solid/index.js +14 -0
- package/dist/blocks/settings/svelte/index.d.ts +13 -0
- package/dist/blocks/settings/svelte/index.js +14 -0
- package/dist/blocks/settings/vue/index.d.ts +13 -0
- package/dist/blocks/settings/vue/index.js +14 -0
- package/dist/blocks/share-links/index.d.ts +99 -0
- package/dist/blocks/share-links/index.js +99 -0
- package/dist/blocks/shared-signals/index.d.ts +395 -0
- package/dist/blocks/shared-signals/index.js +880 -0
- package/dist/blocks/signing-keys/index.d.ts +29 -0
- package/dist/blocks/signing-keys/index.js +161 -0
- package/dist/blocks/sla/index.d.ts +114 -0
- package/dist/blocks/sla/index.js +122 -0
- package/dist/blocks/sso/index.d.ts +169 -147
- package/dist/blocks/sso/index.js +259 -321
- package/dist/blocks/state-machine/index.d.ts +105 -0
- package/dist/blocks/state-machine/index.js +116 -0
- package/dist/blocks/tags/index.d.ts +20 -0
- package/dist/blocks/tags/index.js +28 -0
- package/dist/blocks/tags/react/index.d.ts +28 -0
- package/dist/blocks/tags/react/index.js +47 -0
- package/dist/blocks/tags/react/server.d.ts +7 -0
- package/dist/blocks/tags/react/server.js +7 -0
- package/dist/blocks/tags/solid/index.d.ts +13 -0
- package/dist/blocks/tags/solid/index.js +14 -0
- package/dist/blocks/tags/svelte/index.d.ts +13 -0
- package/dist/blocks/tags/svelte/index.js +14 -0
- package/dist/blocks/tags/vue/index.d.ts +13 -0
- package/dist/blocks/tags/vue/index.js +14 -0
- package/dist/blocks/targets/index.d.ts +82 -0
- package/dist/blocks/targets/index.js +73 -0
- package/dist/blocks/teams/index.d.ts +61 -0
- package/dist/blocks/teams/index.js +83 -0
- package/dist/blocks/templates/index.d.ts +362 -0
- package/dist/blocks/templates/index.js +483 -0
- package/dist/blocks/time-tracking/index.d.ts +250 -0
- package/dist/blocks/time-tracking/index.js +317 -0
- package/dist/blocks/trash/index.d.ts +78 -0
- package/dist/blocks/trash/index.js +79 -0
- package/dist/blocks/undo/index.d.ts +9 -0
- package/dist/blocks/undo/index.js +14 -0
- package/dist/blocks/undo/react/index.d.ts +17 -0
- package/dist/blocks/undo/react/index.js +24 -0
- package/dist/blocks/undo/react/server.d.ts +7 -0
- package/dist/blocks/undo/react/server.js +7 -0
- package/dist/blocks/undo/solid/index.d.ts +13 -0
- package/dist/blocks/undo/solid/index.js +14 -0
- package/dist/blocks/undo/svelte/index.d.ts +13 -0
- package/dist/blocks/undo/svelte/index.js +14 -0
- package/dist/blocks/undo/vue/index.d.ts +13 -0
- package/dist/blocks/undo/vue/index.js +14 -0
- package/dist/blocks/usage/index.d.ts +10 -4
- package/dist/blocks/usage/index.js +16 -232
- package/dist/blocks/usage/react/index.d.ts +23 -0
- package/dist/blocks/usage/react/index.js +38 -0
- package/dist/blocks/usage/react/server.d.ts +7 -0
- package/dist/blocks/usage/react/server.js +7 -0
- package/dist/blocks/usage/solid/index.d.ts +13 -0
- package/dist/blocks/usage/solid/index.js +14 -0
- package/dist/blocks/usage/svelte/index.d.ts +13 -0
- package/dist/blocks/usage/svelte/index.js +14 -0
- package/dist/blocks/usage/vue/index.d.ts +13 -0
- package/dist/blocks/usage/vue/index.js +14 -0
- package/dist/blocks/versions/index.d.ts +165 -0
- package/dist/blocks/versions/index.js +283 -0
- package/dist/blocks/waitlist/index.d.ts +57 -19
- package/dist/blocks/waitlist/index.js +47 -12
- package/dist/blocks/webhooks/index.d.ts +275 -134
- package/dist/blocks/webhooks/index.js +775 -231
- package/dist/blocks/work-items/index.d.ts +208 -0
- package/dist/blocks/work-items/index.js +305 -0
- package/dist/blocks/workflow-builder/index.d.ts +26 -6
- package/dist/blocks/workflow-builder/index.js +30 -5
- package/dist/blocks/workflow-builder/react/index.d.ts +4 -19
- package/dist/blocks/workflow-builder/react/index.js +45 -89
- package/dist/blocks/workflow-builder/solid/index.d.ts +20 -0
- package/dist/blocks/workflow-builder/solid/index.js +23 -0
- package/dist/blocks/workflow-builder/svelte/index.d.ts +20 -0
- package/dist/blocks/workflow-builder/svelte/index.js +23 -0
- package/dist/blocks/workflow-builder/vue/index.d.ts +20 -0
- package/dist/blocks/workflow-builder/vue/index.js +23 -0
- package/dist/blocks/workflows/index.d.ts +20 -3
- package/dist/blocks/workflows/index.js +27 -3
- package/dist/blocks/workflows/react/index.d.ts +5 -20
- package/dist/blocks/workflows/react/index.js +41 -113
- package/dist/blocks/workflows/solid/index.d.ts +20 -0
- package/dist/blocks/workflows/solid/index.js +23 -0
- package/dist/blocks/workflows/svelte/index.d.ts +20 -0
- package/dist/blocks/workflows/svelte/index.js +23 -0
- package/dist/blocks/workflows/vue/index.d.ts +20 -0
- package/dist/blocks/workflows/vue/index.js +23 -0
- package/dist/blocks-D2WQ63PI.js +84 -0
- package/dist/bookings-0XnhHNLM.js +181 -0
- package/dist/build-Cm0T5MVG.js +1815 -0
- package/dist/build-Cx08LOT7.js +689 -0
- package/dist/calendar-DcFrpSOy.js +801 -0
- package/dist/casing-DdFWEtqr.js +16 -0
- package/dist/channel-D-LHCY11.d.ts +78 -0
- package/dist/channels-C-GCoNLd.js +114 -0
- package/dist/chat-sdk/index.d.ts +131 -7
- package/dist/chat-sdk/index.js +155 -6
- package/dist/chat-sdk/react/index.d.ts +2 -1
- package/dist/chat-sdk/react/index.js +1 -2
- package/dist/chat-sdk/react/server.d.ts +2 -1
- package/dist/chat-sdk/react/server.js +1 -2
- package/dist/claims-0KZVT804.js +61 -0
- package/dist/cli/add-B0zoJUYX.js +651 -0
- package/dist/cli/add-Bd5M6uEZ.js +75 -0
- package/dist/cli/add-CT6p5psO.js +1 -0
- package/dist/cli/adopt-C9jl8z0h.js +1 -0
- package/dist/cli/adopt-CebmlHL-.js +393 -0
- package/dist/cli/agent-CCt_aXpJ.js +176 -0
- package/dist/cli/apply-Dxk8AUNU.js +302 -0
- package/dist/cli/arazzo-1.0-BalU61-_.js +532 -0
- package/dist/cli/arazzo-1.1-Bnfasbun.js +705 -0
- package/dist/cli/asyncapi-3.0.0-C78dBjR6.js +5593 -0
- package/dist/cli/asyncapi-3.1.0-g-7aIfV1.js +5833 -0
- package/dist/cli/bin.js +41 -21
- package/dist/cli/blocks-Bzz326nn.js +1 -0
- package/dist/cli/blocks-Dq25D80b.js +124 -0
- package/dist/cli/cache-Cx6qlRDR.js +502 -0
- package/dist/cli/catalog-Di15TkM2.js +187 -0
- package/dist/cli/codemod-woL4cVe0.js +985 -0
- package/dist/cli/command-CK9Cn8HV.js +836 -0
- package/dist/cli/completion-BO5UK6bG.js +1 -0
- package/dist/cli/completion-CWoDmFZr.js +205 -0
- package/dist/cli/completion-J3dqnNoW.js +30 -0
- package/dist/cli/config-C1d-mbUA.js +1 -0
- package/dist/cli/config-CLHpTk9Y.js +1421 -0
- package/dist/cli/config-MuKY9kUj.js +39 -0
- package/dist/cli/config-edit-Ct1lXe8a.js +603 -0
- package/dist/cli/db-DT1bGB02.js +78 -0
- package/dist/cli/design-edit-B-WsnhUF.js +175 -0
- package/dist/cli/detect-DYDUBLU4.js +84 -0
- package/dist/cli/dist-D_VbPAMR.js +129 -0
- package/dist/cli/dist-DuiMMRbJ.js +1112 -0
- package/dist/cli/doctor-SGw36h1D.js +3806 -0
- package/dist/cli/emit-ZAYeh4Yn.js +1042 -0
- package/dist/cli/env-CVXvJoLP.js +142 -0
- package/dist/cli/env-D3gZ-OHj.js +1 -0
- package/dist/cli/env-DJ4ZaJpe.js +1 -0
- package/dist/cli/env-DMw_MBe5.js +996 -0
- package/dist/cli/errors-Caiz_0so.js +98 -0
- package/dist/cli/fastest-levenshtein-dhRRvrM2.js +120 -0
- package/dist/cli/files-DDvAwTko.js +963 -0
- package/dist/cli/gen-B344S1Oy.js +304 -0
- package/dist/cli/guards-CUlDNYZs.js +8 -0
- package/dist/cli/index.d.ts +297 -140
- package/dist/cli/index.js +13 -8
- package/dist/cli/init-B1dL-RZL.js +393 -0
- package/dist/cli/introspect-BPcFi8ow.js +51 -0
- package/dist/cli/io-BiPX-_J1.js +37 -0
- package/dist/cli/jsonc-C8M0EhHB.js +1 -0
- package/dist/cli/keys-jsxCNJdz.js +106 -0
- package/dist/cli/metadata-CxBZo4KM.js +138 -0
- package/dist/cli/module-migration-YFFdWC5X.js +592 -0
- package/dist/cli/moved-D9OT_Uyy.js +152 -0
- package/dist/cli/names-D6LrQnOv.js +6 -0
- package/dist/cli/openapi-3.0-t7xwkuRH.js +928 -0
- package/dist/cli/openapi-3.1-CVze7tBS.js +870 -0
- package/dist/cli/openapi-3.2-CFoMYM01.js +1031 -0
- package/dist/cli/parse-DE59XyWt.js +170 -0
- package/dist/cli/preset-DmcC4nWE.js +129 -0
- package/dist/cli/prompts-Bvg_DBpe.js +1137 -0
- package/dist/cli/redact-PjNswZOs.js +35 -0
- package/dist/cli/rolldown-runtime-kJ_i4yPo.js +26 -0
- package/dist/cli/run-CM_2g6KQ.js +684 -0
- package/dist/cli/run-DaHfUUO9.js +1539 -0
- package/dist/cli/scaffold-CFdDq36-.js +898 -0
- package/dist/cli/scaffold-Dsjr7sOT.js +1 -0
- package/dist/cli/seed-DldDdXWO.js +113 -0
- package/dist/cli/seed-DtRFysBe.js +1 -0
- package/dist/cli/shell-Btv_4Yhe.js +10 -0
- package/dist/cli/skills-v34NDb2D.js +121 -0
- package/dist/cli/snapshot-DAxLi4hO.js +347 -0
- package/dist/cli/source-args-0I9zylYy.js +47 -0
- package/dist/cli/spec-CaaSOYZS.js +7501 -0
- package/dist/cli/spec-De0cfceR.js +1 -0
- package/dist/cli/sql-0I1EQ3JG.js +2 -0
- package/dist/cli/sql-DDLWwzh9.js +326 -0
- package/dist/cli/stack-status-CRanl-CN.js +456 -0
- package/dist/cli/style-2JfIPVMQ.js +29 -0
- package/dist/cli/supabase-toml-DjLgBYEo.js +1153 -0
- package/dist/cli/sync-DFx-6t5n.js +88 -0
- package/dist/cli/topics-GJuIDwlY.js +30 -0
- package/dist/cli/trace-VbdO6bcN.js +7 -0
- package/dist/cli/typegen--TfvOPLh.js +494 -0
- package/dist/cli/typegen-version-BNBPI4Eu.js +9 -0
- package/dist/cli/validate-BfWNKvxy.js +7522 -0
- package/dist/cli/version-DNRW4DAP.js +4 -0
- package/dist/cli/write-BS6F3Yvz.js +180 -0
- package/dist/client/index.d.ts +7 -3
- package/dist/client/index.js +207 -4
- package/dist/client/native/index.d.ts +71 -4
- package/dist/client/native/index.js +65 -6
- package/dist/client-01MAuqzW.js +137 -0
- package/dist/client-B7QVIrJS.d.ts +263 -0
- package/dist/client-B9CqzgPO.js +75 -0
- package/dist/client-BAcILZOf.d.ts +122 -0
- package/dist/client-BOT2KVIp.js +128 -0
- package/dist/client-BUGIS__1.js +1051 -0
- package/dist/client-BVZtq_rQ.d.ts +34 -0
- package/dist/client-BYaOGCOG.js +84 -0
- package/dist/client-BfgwocyT.js +155 -0
- package/dist/client-BpS8a6Fm.js +51 -0
- package/dist/client-BxnLb9bz.d.ts +58 -0
- package/dist/client-BzCv4kKE.js +65 -0
- package/dist/client-C-2ajnhM.js +89 -0
- package/dist/client-C5mUEb2n.js +55 -0
- package/dist/client-C9QrWrnt.js +209 -0
- package/dist/client-CFdMJ1h9.d.ts +277 -0
- package/dist/client-CHmjaI0j.d.ts +103 -0
- package/dist/client-CWs3X4g1.js +120 -0
- package/dist/client-Cdedx_lw.js +438 -0
- package/dist/client-CiGjS6us.js +169 -0
- package/dist/client-CilSKXNu.js +288 -0
- package/dist/client-ClZ0D-if.d.ts +162 -0
- package/dist/client-Cmensu7l.d.ts +419 -0
- package/dist/client-Co6BPmvr.d.ts +108 -0
- package/dist/client-CoVGPi0c.js +133 -0
- package/dist/client-CvITjt-9.js +310 -0
- package/dist/client-CzI4QpG3.d.ts +131 -0
- package/dist/client-D5CZ2a34.d.ts +455 -0
- package/dist/client-DAHsEOVV.d.ts +155 -0
- package/dist/client-DG7FwgZD.js +104 -0
- package/dist/client-DIrCmOXz.d.ts +157 -0
- package/dist/client-DNq8xYb-.js +52 -0
- package/dist/client-DdfSIZ3M.d.ts +107 -0
- package/dist/client-DjTRlN3a.d.ts +68 -0
- package/dist/client-Ezlbskjq.js +60 -0
- package/dist/client-LLmgiCwJ.d.ts +135 -0
- package/dist/client-Lx3mlvKO.d.ts +100 -0
- package/dist/client-PGRk3DGz.js +98 -0
- package/dist/client-Tc47rlSe.d.ts +350 -0
- package/dist/client-VvY0K3wr.d.ts +59 -0
- package/dist/client-WAdEBBrH.d.ts +65 -0
- package/dist/client-WHeWTNVL.d.ts +130 -0
- package/dist/client-WgrPIHH-.js +213 -0
- package/dist/client-ZTtSV3l8.js +40 -0
- package/dist/client-b2_GjzzD.js +438 -0
- package/dist/client-ckXfdy1k.js +38 -0
- package/dist/client-e-hFkLUf.d.ts +34 -0
- package/dist/client-hyP_nS5R.d.ts +218 -0
- package/dist/client-i8glKhxh.js +67 -0
- package/dist/client-iDLLvGR4.d.ts +52 -0
- package/dist/client-pxjbgOz6.js +376 -0
- package/dist/client-xkSCp9hN.d.ts +101 -0
- package/dist/client-ysNShuJZ.d.ts +39 -0
- package/dist/clone-dN9XOL1K.js +29 -0
- package/dist/cloud-event-5rCEzIgK.d.ts +64 -0
- package/dist/cloud-event-CTh9Sr5w.js +60 -0
- package/dist/codecs-Bm46sVxr.d.ts +215 -0
- package/dist/codecs-YAekuQ08.js +358 -0
- package/dist/codegen-DeoSt1mi.d.ts +1571 -0
- package/dist/comments-D7sbd0xG.js +230 -0
- package/dist/commerce/index.d.ts +211 -0
- package/dist/commerce/index.js +517 -0
- package/dist/compiler-BVxepAY0.d.ts +14 -0
- package/dist/compose-Djntdacs.js +53 -0
- package/dist/composite-M6zPs1Xm.js +130 -0
- package/dist/composite-djtGy6bz.d.ts +67 -0
- package/dist/config/index.d.ts +7 -6
- package/dist/config/index.js +7 -4
- package/dist/config-BA1K4OPk.js +557 -0
- package/dist/config-C4MozTD7.js +3892 -0
- package/dist/connector-Cp8CqssJ.d.ts +107 -0
- package/dist/connectors-CjD-R2ks.d.ts +141 -0
- package/dist/context-1sSWcd7_.d.ts +365 -0
- package/dist/context-B8_p3MXo.js +11 -0
- package/dist/context-BDDgjoxz.js +41 -0
- package/dist/context-C-bHOtoD.js +5 -0
- package/dist/context-D6ZMKc2L.js +19 -0
- package/dist/context-wDKxSl9x.js +9 -0
- package/dist/controller-D6NyNrlZ.js +79 -0
- package/dist/controller-D845qKh2.d.ts +46 -0
- package/dist/credentials/index.d.ts +15 -5
- package/dist/credentials/index.js +17 -17
- package/dist/cron-CUaKTjWC.js +145 -0
- package/dist/cron-route-CoL-By8Z.js +24 -0
- package/dist/csv-CVfXqaAu.js +89 -0
- package/dist/csv-D3eKxV1T.d.ts +28 -0
- package/dist/define-B2ln373W.js +1896 -0
- package/dist/define-DxHHbNEb.d.ts +1005 -0
- package/dist/define-block-B6Gjs57G.js +52 -0
- package/dist/define-block-CLZMEFeK.d.ts +256 -0
- package/dist/delegation-Dt8hMJWu.js +140 -0
- package/dist/delivery-B1mKaOen.js +30 -0
- package/dist/delivery-BeHgwS3k.d.ts +69 -0
- package/dist/documents-CWn2mtYf.d.ts +96 -0
- package/dist/edge/index.d.ts +68 -13
- package/dist/edge/index.js +75 -43
- package/dist/elysia/index.d.ts +1 -1
- package/dist/elysia/index.js +2 -2
- package/dist/email-BcmbIWOX.d.ts +42 -0
- package/dist/embeddings-C2S14foD.d.ts +78 -0
- package/dist/embeddings-CVeOoufZ.js +128 -0
- package/dist/ended-nIdGCHxk.d.ts +70 -0
- package/dist/entitlements-BvU5dLpW.js +45 -0
- package/dist/entitlements-CbzCKalR.d.ts +53 -0
- package/dist/env/index.d.ts +1 -1
- package/dist/env/index.js +12 -5
- package/dist/envelope-CHYk5MXU.js +90 -0
- package/dist/errors-8i6tSICm.js +301 -0
- package/dist/errors-PIpcoe4z.js +44 -0
- package/dist/escape-like-AUEPn-C5.d.ts +15 -0
- package/dist/eve/index.d.ts +5 -5
- package/dist/eve/index.js +11 -17
- package/dist/eve-DUF70Vgi.d.ts +151 -0
- package/dist/event-calendar-DJXXMJ3x.d.ts +217 -0
- package/dist/event-map-Dy2vKHai.js +19 -0
- package/dist/events/index.d.ts +4 -4
- package/dist/events/index.js +16 -8
- package/dist/events-CTreRrgP.d.ts +800 -0
- package/dist/events-xbpHkcK9.js +82 -0
- package/dist/executor-BBHgjUJu.d.ts +39 -0
- package/dist/executor-BINiCFNp.d.ts +95 -0
- package/dist/executor-BXSHYyW2.js +735 -0
- package/dist/executor-D1kYY5BA.js +206 -0
- package/dist/executor-D3K3tycZ.js +147 -0
- package/dist/executor-DKrZr3AC.d.ts +174 -0
- package/dist/executor-DoE-5iM8.d.ts +272 -0
- package/dist/expo/index.d.ts +4 -4
- package/dist/expo/index.js +7 -7
- package/dist/expo-sqlite/index.d.ts +3 -3
- package/dist/expo-sqlite/index.js +2 -2
- package/dist/extra-CGQ2_q3S.js +10 -0
- package/dist/field-errors-CWXN_h_E.d.ts +113 -0
- package/dist/field-errors-DZVRWRkf.js +13 -0
- package/dist/field-formats-Cif5gr7c.js +102 -0
- package/dist/field-formats-DCvOQlOy.d.ts +39 -0
- package/dist/filter-evaluate-C0ULNfS7.js +214 -0
- package/dist/filter-evaluate-CjcFq0RT.d.ts +34 -0
- package/dist/filter-query-B3lhckKX.js +518 -0
- package/dist/filter-query-BKmRYrTE.d.ts +121 -0
- package/dist/flags-D_D1jAHB.d.ts +230 -0
- package/dist/flags-XAOsdNAc.js +279 -0
- package/dist/flags-sdk/index.d.ts +143 -0
- package/dist/flags-sdk/index.js +175 -0
- package/dist/form-definition-sagoefQr.d.ts +95 -0
- package/dist/format-CNwSjXUU.d.ts +70 -0
- package/dist/framework-DG5Bv39u.d.ts +26 -0
- package/dist/framework-INbjMZX1.js +51 -0
- package/dist/function-contract-B4c0XuTU.d.ts +21 -0
- package/dist/function-contract-DmkBg19r.js +5 -0
- package/dist/gateway-Cup00l0w.d.ts +109 -0
- package/dist/gateway-options-ClvvfuuU.d.ts +29 -0
- package/dist/gateway-options-DcLcWL5_.js +27 -0
- package/dist/graph-Cs28bOlK.js +360 -0
- package/dist/groups-CxonH3u5.js +16 -0
- package/dist/guards-6F2bCtQR.js +12 -0
- package/dist/h3/index.d.ts +7 -3
- package/dist/h3/index.js +3 -3
- package/dist/h3/v1/index.d.ts +1 -1
- package/dist/h3/v1/index.js +2 -2
- package/dist/history-GH1HJWQV.js +271 -0
- package/dist/hmac-DCud0myt.js +22 -0
- package/dist/hono/index.d.ts +33 -14
- package/dist/hono/index.js +58 -25
- package/dist/http-BF-V0CUF.js +25 -0
- package/dist/impersonation-CDeCzZP6.js +62 -0
- package/dist/impersonation-D5chOkrO.d.ts +25 -0
- package/dist/inbox-3ql4phyr.d.ts +400 -0
- package/dist/index-BIi8i6BO.d.ts +97 -0
- package/dist/index-BkzNUPId.d.ts +131 -0
- package/dist/index-BlqrGvb3.d.ts +227 -0
- package/dist/index-Brhm22eL.d.ts +138 -0
- package/dist/index-Bvw9r94Q.d.ts +245 -0
- package/dist/index-CETRk4YO.d.ts +82 -0
- package/dist/index-CrZitvSC.d.ts +258 -0
- package/dist/index-DfVXx4Ia.d.ts +202 -0
- package/dist/index-DygICr8c.d.ts +206 -0
- package/dist/index-Ej8XQ9w9.d.ts +58 -0
- package/dist/index-jhqhynmh.d.ts +58 -0
- package/dist/index.d.ts +90 -15
- package/dist/index.js +16 -14
- package/dist/iso4217-A8ev-CNW.js +176 -0
- package/dist/json-schema-CpYINXG8.js +548 -0
- package/dist/jws-35a8VhFV.d.ts +60 -0
- package/dist/jws-milwSg7E.js +191 -0
- package/dist/kit-D5S7KNFe.d.ts +66 -0
- package/dist/kit-MUK34-ZG.js +104 -0
- package/dist/knowledge-BXQ2-V0a.d.ts +187 -0
- package/dist/knowledge-CJ_Mm3ic.js +272 -0
- package/dist/lint/index.js +9 -9
- package/dist/list/index.d.ts +4 -3
- package/dist/list/index.js +4 -2
- package/dist/list-query-CBXNfJt4.js +549 -0
- package/dist/list-query-PvP3pPGQ.d.ts +194 -0
- package/dist/live-DwDreq1n.js +239 -0
- package/dist/mcp/index.d.ts +67 -20
- package/dist/mcp/index.js +220 -135
- package/dist/mcp/sdk/index.d.ts +38 -6
- package/dist/mcp/sdk/index.js +89 -7
- package/dist/message-B0fNJgq8.d.ts +93 -0
- package/dist/messages-Cx4ttLJJ.js +493 -0
- package/dist/metric-definition-95HFoW1V.d.ts +70 -0
- package/dist/metric-definition-BjxVn4R5.js +117 -0
- package/dist/mfa-DtflCXEt.d.ts +30 -0
- package/dist/model-lUafmeBQ.d.ts +311 -0
- package/dist/model-messages-CTu-6kBu.js +206 -0
- package/dist/model-messages-D4GZllOD.d.ts +34 -0
- package/dist/money-95Rff2vT.js +185 -0
- package/dist/money-DFpWzQvk.d.ts +76 -0
- package/dist/money-codec-C_-K5ZUU.js +41 -0
- package/dist/nestjs/index.d.ts +2 -2
- package/dist/nestjs/index.js +2 -2
- package/dist/next/index.d.ts +115 -55
- package/dist/next/index.js +208 -173
- package/dist/node/index.d.ts +2 -2
- package/dist/node/index.js +3 -3
- package/dist/nuxt/index.d.ts +2 -2
- package/dist/nuxt/index.js +3 -2
- package/dist/onboarding-BZvLLPaY.js +68 -0
- package/dist/openapi/index.d.ts +4 -2
- package/dist/openapi/index.js +21 -343
- package/dist/operations-C9-UcReN.d.ts +6 -0
- package/dist/operations-CsIfMED7.js +29 -0
- package/dist/optional-peer-Dx8TaYXw.js +29 -0
- package/dist/options-B0FcEKtH.js +5 -0
- package/dist/options-B5BU2Yg7.js +11 -0
- package/dist/options-B5woz53h.js +5 -0
- package/dist/options-B7EJaOX-.js +5 -0
- package/dist/options-B9q8CROT.js +9 -0
- package/dist/options-BA6jV6py.js +10 -0
- package/dist/options-BAW2ZlZ8.js +8 -0
- package/dist/options-BMjcVuaI.js +82 -0
- package/dist/options-BOOEzor9.js +5 -0
- package/dist/options-BQ07tTYr.js +11 -0
- package/dist/options-BZsoPJGX.js +5 -0
- package/dist/options-BesyRBnM.js +16 -0
- package/dist/options-Bf96aVk5.js +10 -0
- package/dist/options-BlOPivzq.js +8 -0
- package/dist/options-Blg8lAkz.js +9 -0
- package/dist/options-Bn4cu0gt.js +5 -0
- package/dist/options-BnoJOwXK.js +8 -0
- package/dist/options-Bp7sgKvl.js +30 -0
- package/dist/options-BqO9GYig.js +311 -0
- package/dist/options-BxcFLL1G.js +8 -0
- package/dist/options-C1HR4UZd.js +13 -0
- package/dist/options-C239TLRF.js +14 -0
- package/dist/options-C2HesT4A.js +9 -0
- package/dist/options-C3EzJATk.js +10 -0
- package/dist/options-C3hZ1fbC.js +10 -0
- package/dist/options-C6rEL6U5.js +8 -0
- package/dist/options-CAzVf-1T.js +8 -0
- package/dist/options-CGKSUFUq.js +5 -0
- package/dist/options-CGjGE8xS.js +12 -0
- package/dist/options-CK5WiFwG.js +11 -0
- package/dist/options-CN7PHkhU.js +8 -0
- package/dist/options-CTZNpb2n.js +5 -0
- package/dist/options-CUqQ9pm7.js +9 -0
- package/dist/options-CVSWgZpY.js +8 -0
- package/dist/options-CXFz0xxS.js +8 -0
- package/dist/options-CZk_fbbg.js +9 -0
- package/dist/options-C_pb1Nd3.js +5 -0
- package/dist/options-CbSOj53r.d.ts +52 -0
- package/dist/options-ChD15QxJ.js +9 -0
- package/dist/options-CkScQRJR.js +12 -0
- package/dist/options-CljDnQt2.js +25 -0
- package/dist/options-CmraJhd9.js +5 -0
- package/dist/options-CoX6VKGb.js +8 -0
- package/dist/options-CrC78Tee.js +5 -0
- package/dist/options-Ctac2R0Q.js +11 -0
- package/dist/options-CyD7OObW.js +17 -0
- package/dist/options-D1blDihM.js +9 -0
- package/dist/options-D2Gd6VfS.js +8 -0
- package/dist/options-D2d1fFuw.js +11 -0
- package/dist/options-D40CQzji.js +8 -0
- package/dist/options-D7f2VKzj.js +25 -0
- package/dist/options-DARkpk2P.js +8 -0
- package/dist/options-DCduTMST.js +17 -0
- package/dist/options-DDzggjN7.js +8 -0
- package/dist/options-DMR68VAC.js +5 -0
- package/dist/options-DNKyN5uq.js +20 -0
- package/dist/options-DTDxFT6J.js +13 -0
- package/dist/options-DWpz3V3F.js +8 -0
- package/dist/options-DXqcJyOP.js +10 -0
- package/dist/options-DYBQ973I.js +8 -0
- package/dist/options-Dh4wu9Ks.js +15 -0
- package/dist/options-Dmg1Da9P.js +25 -0
- package/dist/options-DsUgamiy.js +5 -0
- package/dist/options-EsUh744F.js +13 -0
- package/dist/options-Fz6xqu-b.js +5 -0
- package/dist/options-HSv8R6h5.js +13 -0
- package/dist/options-I8zVkB_y.js +8 -0
- package/dist/options-MHhjOoWz.js +5 -0
- package/dist/options-MLxMkd5B.js +11 -0
- package/dist/options-OJ5zmgr8.js +10 -0
- package/dist/options-QKP9FFcK.js +8 -0
- package/dist/options-SViK_2x2.js +12 -0
- package/dist/options-XgfTctbI.js +5 -0
- package/dist/options-_9arpsX9.js +11 -0
- package/dist/options-eBPsk4WI.js +11 -0
- package/dist/options-kLKILdIu.js +10 -0
- package/dist/options-n22NK3PL.js +8 -0
- package/dist/options-oeAq4Ho5.js +12 -0
- package/dist/options-qU8vgxhO.js +18 -0
- package/dist/options-vXMBEWSH.js +5 -0
- package/dist/options-wFnK3qWl.js +9 -0
- package/dist/options-xVAy3UsV.js +9 -0
- package/dist/organizations-Cw7om8uk.js +398 -0
- package/dist/orpc/index.d.ts +26 -10
- package/dist/orpc/index.js +66 -44
- package/dist/otel/index.d.ts +3 -3
- package/dist/otel/index.js +42 -7
- package/dist/outbox-BTeqjbum.d.ts +181 -0
- package/dist/overlay/index.d.ts +233 -0
- package/dist/overlay/index.js +554 -0
- package/dist/payments-h45bswA-.js +16 -0
- package/dist/pg-error-BV_X8Isq.js +26 -0
- package/dist/plugin-CDLJRFFg.d.ts +190 -0
- package/dist/plugins/actor/index.d.ts +1 -1
- package/dist/plugins/actor/index.js +1 -1
- package/dist/plugins/rules/index.d.ts +2 -2
- package/dist/plugins/rules/index.js +2 -2
- package/dist/plugins/soft-delete/index.d.ts +3 -3
- package/dist/plugins/soft-delete/index.js +11 -4
- package/dist/plugins/tenant/index.d.ts +9 -3
- package/dist/plugins/tenant/index.js +17 -3
- package/dist/plugins/timestamps/index.d.ts +1 -1
- package/dist/plugins/timestamps/index.js +8 -1
- package/dist/plugins/validation/index.d.ts +2 -2
- package/dist/plugins/validation/index.js +4 -4
- package/dist/pool-CwOCsX9e.d.ts +114 -0
- package/dist/pool-errors-GMjlCN0d.js +27 -0
- package/dist/ports-Ca63W4cW.d.ts +285 -0
- package/dist/ports-DAdQyjZz.d.ts +86 -0
- package/dist/ports-DGK3KTDH.js +133 -0
- package/dist/postgres/index.d.ts +28 -6
- package/dist/postgres/index.js +54 -22
- package/dist/postgrest-Cw9Bs5gm.d.ts +53 -0
- package/dist/powersync/index.d.ts +5 -5
- package/dist/powersync/index.js +4 -4
- package/dist/powersync/react/index.d.ts +8 -3
- package/dist/powersync/react/index.js +11 -3
- package/dist/preset/index.d.ts +352 -0
- package/dist/preset/index.js +564 -0
- package/dist/problem-CEjyhV5T.d.ts +76 -0
- package/dist/problem-pIiL3WbE.js +159 -0
- package/dist/provider-9gBq9W6k.d.ts +113 -0
- package/dist/provider-DKh2xFZb.js +57 -0
- package/dist/push-token-D6REHMMw.js +16 -0
- package/dist/push-token-asrmi7-6.d.ts +24 -0
- package/dist/query/index.d.ts +2 -2
- package/dist/query/index.js +1 -1
- package/dist/query-Ctz-qKRx.js +303 -0
- package/dist/range-DwpWe8e7.js +7 -0
- package/dist/range-p5V4rBhZ.d.ts +8 -0
- package/dist/rank-keys-DcPMt_Jk.js +60 -0
- package/dist/rank-result-DS8IoLup.js +18 -0
- package/dist/rank-result-Dngpt2n5.d.ts +14 -0
- package/dist/rate-limit--QSiFA6D.js +325 -0
- package/dist/rate-limit-BtbddDnE.js +49 -0
- package/dist/rate-limit-C88MEAOm.d.ts +41 -0
- package/dist/ratelimit-headers-Bsxx0Tj2.js +62 -0
- package/dist/react/index.d.ts +9 -9
- package/dist/react/index.js +4 -5
- package/dist/react/native/index.d.ts +1 -1
- package/dist/react/native/index.js +2 -2
- package/dist/react/server.d.ts +10 -10
- package/dist/react/server.js +4 -4
- package/dist/react/session.d.ts +2 -2
- package/dist/react-CKXUkwPx.js +410 -0
- package/dist/react-controller-Xn-IU44p.js +40 -0
- package/dist/react-env-Cc7Vf6eb.js +13 -0
- package/dist/react-router/index.d.ts +6 -6
- package/dist/react-router/index.js +10 -12
- package/dist/read-set-GEb-i0On.js +314 -0
- package/dist/realtime/index.d.ts +8 -4
- package/dist/realtime/index.js +5 -333
- package/dist/realtime-status-D2dw1hOE.js +12 -0
- package/dist/realtime-status-DcsO00Gw.d.ts +8 -0
- package/dist/refusal-br4Ma9Cf.js +61 -0
- package/dist/refusal-oD3ISM9h.d.ts +18 -0
- package/dist/replicas-BvIL4_jL.js +94 -0
- package/dist/resolve-CAR9oaKW.js +869 -0
- package/dist/resolve-w9EpHzuM.d.ts +266 -0
- package/dist/resource-B4ka8dDH.d.ts +106 -0
- package/dist/resource-C8r5xGqY.js +463 -0
- package/dist/resource-DO4gbVi5.js +91 -0
- package/dist/resource-execute-D0yQ-8WR.d.ts +12 -0
- package/dist/resource-schemas-BJ518zFH.js +79 -0
- package/dist/resource-types-D2vEQVXI.d.ts +141 -0
- package/dist/resources-BklF-rjz.d.ts +7 -0
- package/dist/resources-BlZdLsWQ.js +64 -0
- package/dist/respond-C7I8kLK_.d.ts +93 -0
- package/dist/respond-DdhZ9Wbn.js +95 -0
- package/dist/result-BlgnMB0H.js +128 -0
- package/dist/result-Cj3yWhjH.d.ts +298 -0
- package/dist/rrule-zBh3CA1r.js +290 -0
- package/dist/rules-B0-3Iosu.js +261 -0
- package/dist/run-watch-CQRdpy-f.js +53 -0
- package/dist/sales-lines-BAk8In-Z.js +41 -0
- package/dist/sales-lines-C6gafAwg.d.ts +28 -0
- package/dist/sales-shared-DAAGwQwN.d.ts +8 -0
- package/dist/sales-shared-SblIgCgI.js +22 -0
- package/dist/scope-DgWjuXUw.js +90 -0
- package/dist/search-B6h03cAx.js +106 -0
- package/dist/search-BtoWY6n_.js +9 -0
- package/dist/server/index.d.ts +211 -43
- package/dist/server/index.js +296 -19
- package/dist/server-types-OohhIQb2.d.ts +737 -0
- package/dist/session-DiWHtYrO.d.ts +95 -0
- package/dist/settings-BXFn9zpS.js +90 -0
- package/dist/shared-BmMcMoW9.js +89 -0
- package/dist/shared-DbO3Dfms.js +14 -0
- package/dist/shared-as0EG51f.js +60 -0
- package/dist/sign-in-D0xN6E_l.js +360 -0
- package/dist/signatures-B41ApWXA.js +145 -0
- package/dist/signatures-BMdJ7neI.d.ts +43 -0
- package/dist/signers-CXt_wA9S.d.ts +385 -0
- package/dist/signing-keys-Bq9mMCTh.d.ts +90 -0
- package/dist/solid/index.d.ts +9 -18
- package/dist/solid/index.js +4 -9
- package/dist/solid-controller-DLsmrczT.js +33 -0
- package/dist/solid-controller-DqlvYFZa.d.ts +11 -0
- package/dist/solid-start/index.d.ts +8 -12
- package/dist/solid-start/index.js +10 -9
- package/dist/spec/index.d.ts +154 -0
- package/dist/spec/index.js +386 -0
- package/dist/spec-pins-Dqpml2dZ.d.ts +84 -0
- package/dist/spec-pins-S4PymRxp.js +60 -0
- package/dist/sql/index.d.ts +327 -140
- package/dist/sql/index.js +71245 -23282
- package/dist/sql-DJrXG-3Z.js +422 -0
- package/dist/sso-BDva_-4y.js +217 -0
- package/dist/sso-BN0LnMqE.d.ts +131 -0
- package/dist/ssr/index.d.ts +5 -6
- package/dist/ssr/index.js +4 -3
- package/dist/standard-B5fe2gnW.js +25 -0
- package/dist/standard-C3_AAF3g.d.ts +7 -0
- package/dist/stats-D6vkb89f.js +1128 -0
- package/dist/storage/index.d.ts +4 -6
- package/dist/storage/index.js +23 -20
- package/dist/storage-api-Cx-1iWBd.d.ts +582 -0
- package/dist/store-B5qYKsTh.d.ts +68 -0
- package/dist/streams/index.d.ts +5 -5
- package/dist/streams/index.js +6 -5
- package/dist/streams/redis/index.d.ts +1 -1
- package/dist/streams/redis/index.js +6 -12
- package/dist/stripe/index.d.ts +16 -0
- package/dist/stripe/index.js +14 -0
- package/dist/stripe-NVcNOhHy.d.ts +140 -0
- package/dist/stripe-XZrSmDTf.js +32 -0
- package/dist/subject-readers-DiePmaYP.js +46 -0
- package/dist/subject-readers-fxP5wu0s.d.ts +21 -0
- package/dist/subjects-z8VWA_lF.d.ts +69 -0
- package/dist/subscribers-Cq--DL1E.js +34 -0
- package/dist/supabase-mcp-C6tMoEjn.d.ts +43 -0
- package/dist/supabase-mcp-DomZ-amK.js +28 -0
- package/dist/support-BsKkvA92.js +522 -0
- package/dist/support-view-BbcZR7Io.d.ts +17 -0
- package/dist/svelte/index.d.ts +8 -17
- package/dist/svelte/index.js +3 -3
- package/dist/svelte-controller-CDAujo-_.js +50 -0
- package/dist/svelte-controller-DxxHEHxD.d.ts +10 -0
- package/dist/sveltekit/index.d.ts +11 -13
- package/dist/sveltekit/index.js +12 -14
- package/dist/table-schema-pQlER3jj.js +283 -0
- package/dist/tags-Dw8vKkcI.d.ts +30 -0
- package/dist/tags-PaG0Ns_9.js +84 -0
- package/dist/tanstack-db/index.d.ts +2 -2
- package/dist/tanstack-db/index.js +1 -1
- package/dist/tanstack-db/supabase/index.d.ts +51 -0
- package/dist/tanstack-db/supabase/index.js +268 -0
- package/dist/tanstack-start/index.d.ts +7 -7
- package/dist/tanstack-start/index.js +9 -13
- package/dist/tax-DDZUB_oc.d.ts +273 -0
- package/dist/tax-D_kSCdWU.js +140 -0
- package/dist/tee-Bsisfd7t.js +101 -0
- package/dist/template-DdgYjIZ5.js +123 -0
- package/dist/temporal-CB5Fpo5d.js +79 -0
- package/dist/temporal-required-DqRzr7i0.js +20 -0
- package/dist/tenant-B-fiItlJ.js +27 -0
- package/dist/tenant-DdmVhsff.d.ts +17 -0
- package/dist/tenant-naming-Bsj3Uvap.js +27 -0
- package/dist/testing/index.d.ts +459 -125
- package/dist/testing/index.js +2368 -720
- package/dist/timing-BMCWgpdZ.js +92 -0
- package/dist/topic-ByDz9edV.js +542 -0
- package/dist/topic-cMS7UtM1.d.ts +359 -0
- package/dist/ttl-cache-XzZ-Q2eX.js +29 -0
- package/dist/types-6oiy6rIa.d.ts +205 -0
- package/dist/types-BRTSpOIh.js +5 -0
- package/dist/types-CdP0z5tS.d.ts +564 -0
- package/dist/types-D0W4fnsc.d.ts +162 -0
- package/dist/types-R6syp1el.js +29 -0
- package/dist/types-YfwpIE-d.d.ts +357 -0
- package/dist/types-pNY_UpDs.d.ts +240 -0
- package/dist/types-vaoP9S9_.d.ts +635 -0
- package/dist/undo-CEGIRkPA.js +44 -0
- package/dist/undo-DGo0skyO.d.ts +43 -0
- package/dist/usage-CdlfuS3i.js +250 -0
- package/dist/usage-DM2rzczj.d.ts +202 -0
- package/dist/vault-tOkPLnMB.d.ts +50 -0
- package/dist/vercel-connect/index.d.ts +1 -1
- package/dist/vercel-connect/index.js +6 -12
- package/dist/verify-D63A2ALE.d.ts +142 -0
- package/dist/verify-EQcC3Khp.js +126 -0
- package/dist/version-D87ZteKy.js +4 -0
- package/dist/view-DZ63nqwt.js +105 -0
- package/dist/view-Dv0A949a.d.ts +90 -0
- package/dist/vue/index.d.ts +9 -18
- package/dist/vue/index.js +4 -17
- package/dist/vue-controller-C9tFzqAc.js +32 -0
- package/dist/vue-controller-HPfMTDa2.d.ts +11 -0
- package/dist/watch-DDuWYv0Y.d.ts +84 -0
- package/dist/watch-DT_B3CnJ.js +139 -0
- package/dist/watch-topic-EFpOIIDE.d.ts +28 -0
- package/dist/watch-topic-miuymrli.js +57 -0
- package/dist/wire-DEY0ajW9.js +45 -0
- package/dist/workflow-builder-OrglbXUh.js +681 -0
- package/dist/workflow-sdk/builder/index.d.ts +46 -15
- package/dist/workflow-sdk/builder/index.js +69 -21
- package/dist/workflow-sdk/index.d.ts +75 -2
- package/dist/workflow-sdk/index.js +83 -3
- package/dist/workflow-sdk/world/index.d.ts +51 -20
- package/dist/workflow-sdk/world/index.js +189 -128
- package/dist/workflow-sdk-BZ6qsRlY.js +243 -0
- package/dist/workflow-sdk-q8cLwW1K.d.ts +161 -0
- package/dist/workflow-sdk-world-DPMdBfzn.js +2103 -0
- package/dist/workflows-C-OvZpeg.js +282 -0
- package/dist/workflows-DFQeXDAI.d.ts +243 -0
- package/dist/yjs/index.d.ts +67 -0
- package/dist/yjs/index.js +212 -0
- package/package.json +837 -44
- package/schemas/cli-commands-v1.json +220 -0
- package/schemas/cli-result-v1.json +138 -0
- package/schemas/config-v1.json +4317 -653
- package/schemas/doctor-report-v1.json +27 -1
- package/schemas/snapshot-v2.json +271 -0
- package/schemas/spec-manifest-v1.json +95 -0
- package/skills/better-supabase/SKILL.md +19 -8
- package/skills/better-supabase/references/plugins.md +2 -2
- package/skills/better-supabase/references/troubleshooting.md +20 -20
- package/skills/better-supabase/references/ui-recipes.md +18652 -0
- package/skills/better-supabase-api/SKILL.md +14 -14
- package/skills/better-supabase-api/references/adapters.md +12 -2
- package/skills/better-supabase-api/references/ai.md +4 -4
- package/skills/better-supabase-api/references/expo.md +7 -4
- package/skills/better-supabase-api/references/powersync.md +2 -1
- package/skills/better-supabase-api/references/streams-credentials.md +8 -5
- package/skills/better-supabase-auth/SKILL.md +18 -11
- package/skills/better-supabase-auth/references/authorization-providers.md +5 -5
- package/skills/better-supabase-testing/SKILL.md +2 -2
- package/testing/act-cases.json +370 -0
- package/dist/access-sql-B0dF-SoF.js +0 -181
- package/dist/actor-CQTlc1Hh.d.ts +0 -43
- package/dist/adapter-iKgjHVPx.js +0 -1190
- package/dist/agents-CVHGd7It.d.ts +0 -94
- package/dist/ai-cache-CBWs1W0k.js +0 -80
- package/dist/ai-cache-DaDu_G5L.d.ts +0 -64
- package/dist/ai-chat-7amvXjmQ.d.ts +0 -590
- package/dist/ai-chat-B24UI962.js +0 -743
- package/dist/ai-files-CSPNswUY.js +0 -319
- package/dist/ai-tasks-Cd1HMFvB.d.ts +0 -131
- package/dist/announcements-CiyOs-xP.js +0 -107
- package/dist/announcements-ZRGnScWI.d.ts +0 -72
- package/dist/api-keys-CIjghYjV.d.ts +0 -156
- package/dist/assistant-DwdpDH1q.d.ts +0 -147
- package/dist/attributes-5dYul0u0.js +0 -13
- package/dist/authorization-BFCqamMs.d.ts +0 -172
- package/dist/base64-D2gsioCY.js +0 -42
- package/dist/before-route-CnR0C0Jr.js +0 -30
- package/dist/bind-Bu_ZNa3W.d.ts +0 -62
- package/dist/bind-l4kAvYSv.js +0 -97
- package/dist/block-events-CrT8r7Fe.js +0 -76
- package/dist/block-fields-GFkxl4dP.js +0 -49
- package/dist/block-fields-SJ6fEf3o.d.ts +0 -31
- package/dist/block-helpers-CKtbFcRv.d.ts +0 -37
- package/dist/block-helpers-DWHxHsEQ.js +0 -190
- package/dist/block-hooks-BmjMyXTa.js +0 -114
- package/dist/block-hooks-plbZ0AbJ.d.ts +0 -107
- package/dist/block-transport-BLr-ZgLc.js +0 -59
- package/dist/block-transport-DvaoPuZ9.d.ts +0 -48
- package/dist/bucket-Cl46E3jS.d.ts +0 -347
- package/dist/build-BXIzE6Xv.js +0 -689
- package/dist/channel-_2Mx1Oyu.d.ts +0 -70
- package/dist/channels-CkgQ_X60.js +0 -114
- package/dist/claims-DDBQT6BK.js +0 -61
- package/dist/cli/bin.d.ts +0 -1
- package/dist/cli/codemod-Bl_tQpHn.js +0 -491
- package/dist/cli/command-CK14fP91.js +0 -502
- package/dist/cli/config-B9HkL8nF.js +0 -2
- package/dist/cli/config-DU7EJImt.js +0 -49
- package/dist/cli/config-NiPxAmUF.js +0 -1077
- package/dist/cli/db-DOBPt660.js +0 -52
- package/dist/cli/diff-SjkO5rNr.js +0 -752
- package/dist/cli/dist-DBPdlPYK.js +0 -1112
- package/dist/cli/dist-DRAVaE6w.js +0 -842
- package/dist/cli/dist-DreZ24Sz.js +0 -129
- package/dist/cli/doctor-DJk0aeBi.js +0 -3591
- package/dist/cli/env-CJLbUVPB.js +0 -108
- package/dist/cli/env-qXgyMV6r.js +0 -511
- package/dist/cli/errors-4v4DTtda.js +0 -56
- package/dist/cli/fastest-levenshtein-CFN-lNDv.js +0 -120
- package/dist/cli/gen-CCMc39Dx.js +0 -3100
- package/dist/cli/gen-DRmzPI75.js +0 -2
- package/dist/cli/init-BHuEQrQK.js +0 -765
- package/dist/cli/introspect-DzR2nyQb.js +0 -81
- package/dist/cli/io-DI1mTdSA.js +0 -33
- package/dist/cli/jsonc-BUniUpOk.js +0 -2
- package/dist/cli/keys-BGCnnb-s.js +0 -85
- package/dist/cli/openapi-BlRJ18s3.js +0 -66
- package/dist/cli/project-DZRaBaY7.js +0 -75
- package/dist/cli/prompts-BNcNfAve.js +0 -1142
- package/dist/cli/prompts-BTYQGunc.js +0 -2
- package/dist/cli/read-sets-CETOSFx4.js +0 -223
- package/dist/cli/rolldown-runtime-BPOCksWG.js +0 -24
- package/dist/cli/run-BqDPh9UH.js +0 -361
- package/dist/cli/seed-DQzqT7LP.js +0 -100
- package/dist/cli/skills-QQs4q68J.js +0 -138
- package/dist/cli/sql-B8csQPyn.js +0 -495
- package/dist/cli/sql-layout-D6cphHT3.js +0 -69
- package/dist/cli/style-C0NFdJRL.js +0 -29
- package/dist/cli/supabase-toml-B-bIukQF.js +0 -1095
- package/dist/cli/typegen-version-DeFbtzYI.js +0 -8
- package/dist/cli/version-59gcepIG.js +0 -4
- package/dist/client-CI0Z2zWX.js +0 -277
- package/dist/clone-BfgmLU90.js +0 -21
- package/dist/cloud-event-BnmD5fb9.js +0 -46
- package/dist/cloud-event-C1JCc1bH.d.ts +0 -50
- package/dist/compiler-DY_wkj4R.d.ts +0 -14
- package/dist/compose-BIBNgAnq.js +0 -53
- package/dist/composite--yqry7uW.d.ts +0 -146
- package/dist/composite-DXVUibdi.js +0 -130
- package/dist/config-D44Y7PAv.d.ts +0 -984
- package/dist/config-Dn7F5k9A.js +0 -202
- package/dist/connector-Dv8kK0MO.d.ts +0 -107
- package/dist/connectors-CrpknU0P.d.ts +0 -120
- package/dist/context-BCrWe7ow.d.ts +0 -237
- package/dist/cron-DVPUg5k3.js +0 -145
- package/dist/csv-DCK-PT1n.js +0 -25
- package/dist/define-B-TVjC25.js +0 -1915
- package/dist/define-CJJkkr1-.d.ts +0 -980
- package/dist/embeddings-4ZvFzjsU.js +0 -127
- package/dist/embeddings-C9KGQnXt.d.ts +0 -68
- package/dist/ended-XjeGQ5XW.d.ts +0 -63
- package/dist/entitlements-BKSVGtrG.d.ts +0 -51
- package/dist/entitlements-DRl6ZJUm.js +0 -24
- package/dist/envelope-DqnYGRw7.js +0 -47
- package/dist/errors-B11Duf73.js +0 -266
- package/dist/errors-DLjJHPLK.js +0 -44
- package/dist/escape-like-ImTK0ps_.d.ts +0 -15
- package/dist/eve-gT2Fpjut.d.ts +0 -151
- package/dist/events-DWDhx77e.d.ts +0 -549
- package/dist/executor-BVBFM86G.d.ts +0 -36
- package/dist/executor-Bq28caBo.js +0 -718
- package/dist/executor-C-R4pucm.js +0 -83
- package/dist/executor-CaWigTyR.d.ts +0 -148
- package/dist/executor-DbvExCFC.d.ts +0 -30
- package/dist/executor-De1Of3m3.js +0 -523
- package/dist/executor-DvsBbNBS.d.ts +0 -261
- package/dist/field-errors-BFOa7WhB.d.ts +0 -99
- package/dist/field-errors-VF1yb8yI.js +0 -13
- package/dist/framework-BmzgK32X.d.ts +0 -25
- package/dist/framework-a7aRCIqv.js +0 -51
- package/dist/gateway-C1ssRHnf.d.ts +0 -130
- package/dist/graph-BGyLLFLX.js +0 -265
- package/dist/guards-BnzDvFrz.js +0 -10
- package/dist/history-BZih6SFP.js +0 -64
- package/dist/hooks-1BTCJsiw.js +0 -309
- package/dist/impersonation-DcqaTBHx.js +0 -148
- package/dist/inbox-i7E1ppo6.d.ts +0 -384
- package/dist/index-ACiNPN4Z.d.ts +0 -74
- package/dist/index-Bepi-Hgg.d.ts +0 -206
- package/dist/index-BkWT_uBO.d.ts +0 -51
- package/dist/index-Bxih3l0u.d.ts +0 -81
- package/dist/index-CLg87OBW.d.ts +0 -76
- package/dist/index-CaxrMD1A.d.ts +0 -1
- package/dist/index-CdZKQF98.d.ts +0 -138
- package/dist/index-CewnYSpv.d.ts +0 -267
- package/dist/index-ClmjK_o-.d.ts +0 -55
- package/dist/index-D48jVS-N.d.ts +0 -246
- package/dist/index-DQh4VCc9.d.ts +0 -98
- package/dist/index-DunNRdnT.d.ts +0 -300
- package/dist/json-schema-CvER4kgT.js +0 -502
- package/dist/keys-4MnkWTTh.js +0 -35
- package/dist/kit-CkNzZUqv.d.ts +0 -60
- package/dist/kit-Fm-Fv7q5.js +0 -78
- package/dist/knowledge-BXBbT0Tr.d.ts +0 -176
- package/dist/knowledge-CDmiMLew.js +0 -255
- package/dist/list-query-BRt-zDF7.d.ts +0 -164
- package/dist/list-query-gl808ac1.js +0 -459
- package/dist/live-CTAZQkwl.js +0 -257
- package/dist/message-CaKlqdsX.js +0 -219
- package/dist/message-CfDoR0Y6.d.ts +0 -94
- package/dist/messages-B9-5887d.js +0 -715
- package/dist/messages-DYP0sUTe.d.ts +0 -59
- package/dist/mfa-Daak8ukG.d.ts +0 -54
- package/dist/modules-DpPwzC7E.d.ts +0 -192
- package/dist/modules-dxrVK3ID.js +0 -228
- package/dist/onboarding-BZGHYJks.d.ts +0 -62
- package/dist/outbox-Cq7pPYvl.d.ts +0 -161
- package/dist/path-Cv__-OTj.d.ts +0 -17
- package/dist/plugin-FGY8UhYm.d.ts +0 -151
- package/dist/pool-CAu2nLrL.d.ts +0 -89
- package/dist/postgrest-BLVdEnfe.d.ts +0 -53
- package/dist/problem-BreOl8b8.js +0 -115
- package/dist/problem-DD8LZFjc.d.ts +0 -67
- package/dist/provider-D-UEMvSD.d.ts +0 -113
- package/dist/provider-Di3sRutW.js +0 -57
- package/dist/query-BQ-NaZon.js +0 -303
- package/dist/queue-CLJurhdy.d.ts +0 -427
- package/dist/react-F80mF4-t.js +0 -409
- package/dist/react-topic-seAWjL3_.js +0 -38
- package/dist/read-set-DuKWC9Mj.js +0 -314
- package/dist/refusal-CeJWxmkH.js +0 -61
- package/dist/refusal-DhSU2Vvr.d.ts +0 -15
- package/dist/replicas-CwrYp5Zj.js +0 -94
- package/dist/resolve-ChTYeTEl.d.ts +0 -169
- package/dist/resolve-tJZY3FEa.js +0 -697
- package/dist/resource-BsvzCMlX.js +0 -212
- package/dist/resource-IPS5xi9q.d.ts +0 -74
- package/dist/respond-BUgsXNgk.js +0 -91
- package/dist/respond-DprrgyXX.d.ts +0 -93
- package/dist/result-D7y2fT87.d.ts +0 -282
- package/dist/result-DzUbqgdW.js +0 -128
- package/dist/scope-CDHcS7dE.js +0 -90
- package/dist/search-CUWCRYKL.js +0 -9
- package/dist/server-Bh0EVSwU.d.ts +0 -558
- package/dist/session-ChiXDZdZ.d.ts +0 -72
- package/dist/shared-CBxosKK3.js +0 -75
- package/dist/shared-CxWmcyqB.js +0 -73
- package/dist/sign-in-Cb1mwv6X.js +0 -86
- package/dist/signers-4y62_VIi.d.ts +0 -166
- package/dist/spec-pins--j6mTok4.js +0 -27
- package/dist/spec-pins-C89s6DyW.d.ts +0 -27
- package/dist/standard-BK0cqJ7y.js +0 -25
- package/dist/standard-CYsm7xpT.d.ts +0 -7
- package/dist/stats-D_AD9GGu.js +0 -1123
- package/dist/store-CGjgWu5n.d.ts +0 -68
- package/dist/stripe-BMj5LtsT.js +0 -38
- package/dist/stripe-D04h-QBT.d.ts +0 -136
- package/dist/support-ig_K4PvS.js +0 -314
- package/dist/support-view-CVOJJLpc.d.ts +0 -17
- package/dist/tags-Cx-LnIQP.d.ts +0 -30
- package/dist/tee-CoEppCER.js +0 -101
- package/dist/template--jDkl3UP.js +0 -114
- package/dist/template-CwO38Do8.d.ts +0 -6
- package/dist/temporal-BJGitm-h.js +0 -79
- package/dist/temporal-required-BVvW7SYJ.js +0 -20
- package/dist/tenant-BxNFk9bx.d.ts +0 -17
- package/dist/tenant-I1TEZ_BX.js +0 -27
- package/dist/timing-CyTQPubY.js +0 -92
- package/dist/types-6BdhkmZe.d.ts +0 -340
- package/dist/types-6cYK9pbJ.js +0 -29
- package/dist/types-6rocye-y.d.ts +0 -156
- package/dist/types-AYOvcyep.d.ts +0 -359
- package/dist/types-C05bxW-W.d.ts +0 -220
- package/dist/types-DGs5L0VN.d.ts +0 -192
- package/dist/usage-CrvrL2vw.d.ts +0 -177
- package/dist/vault-wlbBhqm7.d.ts +0 -50
- package/dist/verify-DL41hbvY.js +0 -232
- package/dist/verify-DPuWngD4.d.ts +0 -172
- package/dist/version-C6OfRAIn.js +0 -4
- package/dist/view-BeFcRV6G.js +0 -99
- package/dist/view-CF7ihnkg.d.ts +0 -87
- package/dist/watch-DI34G86j.d.ts +0 -60
- package/dist/watch-Xuxrvxq-.js +0 -122
- package/dist/wire-DtZQ4sdE.js +0 -45
- package/dist/workflow-builder-DJ1oHn8g.js +0 -398
- package/dist/workflow-sdk-B3yLD6Br.d.ts +0 -98
- package/dist/workflow-sdk-C2WJ_G2O.js +0 -173
- package/dist/workflow-sdk-world-D-prir6O.js +0 -1397
- package/dist/workflows-B0j9WKPu.d.ts +0 -185
- package/dist/workflows-wu1WWBn7.js +0 -216
|
@@ -0,0 +1,737 @@
|
|
|
1
|
+
/// <reference lib="esnext.temporal" />
|
|
2
|
+
import { t as AsyncResult } from "./result-Cj3yWhjH.js";
|
|
3
|
+
import { a as AnyModels, i as AnyFunctions } from "./types-YfwpIE-d.js";
|
|
4
|
+
import { o as EventHub } from "./events-CTreRrgP.js";
|
|
5
|
+
import { m as RequestContext } from "./plugin-CDLJRFFg.js";
|
|
6
|
+
import { t as BetterSupabaseEnv } from "./index-CETRk4YO.js";
|
|
7
|
+
import { a as ResolveAuthOptions, p as CookieWrite, r as AuthState, t as AuthResolution } from "./resolve-w9EpHzuM.js";
|
|
8
|
+
import { r as CredentialProvider } from "./provider-9gBq9W6k.js";
|
|
9
|
+
import { n as SqlClient } from "./executor-BBHgjUJu.js";
|
|
10
|
+
import { a as ProblemFormat } from "./problem-CEjyhV5T.js";
|
|
11
|
+
import { t as AnyAuthorizer } from "./authorizer-eiOjo-3l.js";
|
|
12
|
+
import { i as EventSink } from "./cloud-event-5rCEzIgK.js";
|
|
13
|
+
import { S as Bucket, t as StorageApi } from "./storage-api-Cx-1iWBd.js";
|
|
14
|
+
import { Kt as StatsRecorder, Wt as DbStats, _ as Db, t as BetterSupabase } from "./define-DxHHbNEb.js";
|
|
15
|
+
import { t as ImpersonationOptions } from "./impersonation-D5chOkrO.js";
|
|
16
|
+
import { _ as SupportAuthorize, b as TicketSubject, i as AuthorizationHooks } from "./authorization-hooks-DkmrnDX7.js";
|
|
17
|
+
import { s as SqlClaims, t as BetterPostgres } from "./pool-CwOCsX9e.js";
|
|
18
|
+
import { SupabaseClient } from "@supabase/supabase-js";
|
|
19
|
+
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
20
|
+
//#region src/server/delete-account.d.ts
|
|
21
|
+
interface DeleteAccountOptions {
|
|
22
|
+
/**
|
|
23
|
+
* Buckets to clear first. Objects whose `owner` placeholder (`{userId}`,
|
|
24
|
+
* or `owner.param` for `owner` buckets) is the user are removed; buckets
|
|
25
|
+
* without one are skipped.
|
|
26
|
+
*/
|
|
27
|
+
readonly buckets?: readonly Bucket<string>[];
|
|
28
|
+
/**
|
|
29
|
+
* App keys of tables whose rows the database deletes or updates with the
|
|
30
|
+
* user (`on delete cascade` or `set null` to `auth.users`). They get a
|
|
31
|
+
* table-wide `mutation` notice, so caches drop their reads.
|
|
32
|
+
*/
|
|
33
|
+
readonly cascades?: readonly string[];
|
|
34
|
+
readonly context?: RequestContext;
|
|
35
|
+
readonly signal?: AbortSignal;
|
|
36
|
+
/**
|
|
37
|
+
* Direct Postgres with rights on `auth.users` (`postgres.admin`). When the
|
|
38
|
+
* Auth server reports a database error, the delete is replayed in a
|
|
39
|
+
* statement that is rolled back, and the database's own error (its
|
|
40
|
+
* SQLSTATE and hint, such as `ORGANIZATION_OWNER_REQUIRED`) is returned
|
|
41
|
+
* instead of Auth's generic one. `server.deleteAccount` passes its
|
|
42
|
+
* `postgres.admin`.
|
|
43
|
+
*/
|
|
44
|
+
readonly sql?: SqlClient;
|
|
45
|
+
}
|
|
46
|
+
interface DeleteAccountResult {
|
|
47
|
+
readonly userId: string;
|
|
48
|
+
/** Removed objects per bucket id. */
|
|
49
|
+
readonly removed: Readonly<Record<string, number>>;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Deletes the Auth user, then removes their Storage objects, then announces
|
|
53
|
+
* the delete. Rows referencing `auth.users` follow their foreign keys. The
|
|
54
|
+
* objects are listed first and removed only once the user is gone, so a
|
|
55
|
+
* delete the database refuses leaves them in place.
|
|
56
|
+
*
|
|
57
|
+
* `server.deleteAccount` calls it with the server's service client. Apps on
|
|
58
|
+
* the `@supabase/server` pipeline call it with theirs:
|
|
59
|
+
* `deleteAccount(betterSupabase, ctx.supabaseAdmin, userId)`.
|
|
60
|
+
*/
|
|
61
|
+
declare function deleteAccount<M extends AnyModels, D, F extends AnyFunctions, E, C>(betterSupabase: BetterSupabase<M, D, F, E, C>, service: SupabaseClient | (() => SupabaseClient), userId: string, options?: DeleteAccountOptions): AsyncResult<DeleteAccountResult>;
|
|
62
|
+
//#endregion
|
|
63
|
+
//#region src/server/lite.d.ts
|
|
64
|
+
/** The `[db] driver` values Supabase Lite reads from `supabase/config.toml`. */
|
|
65
|
+
type LiteDriver = "sqlite-postgres" | "sqlite" | "pglite" | "postgres";
|
|
66
|
+
//#endregion
|
|
67
|
+
//#region src/server/replicas.d.ts
|
|
68
|
+
/** Cookie holding the epoch ms until which reads stay on the primary. */
|
|
69
|
+
declare const PRIMARY_COOKIE = "bs-primary-until";
|
|
70
|
+
/** Where a request context sends its reads. */
|
|
71
|
+
interface ReplicaState {
|
|
72
|
+
/** Reads go to the primary: this context wrote, or a recent request did. */
|
|
73
|
+
readonly pinned: boolean;
|
|
74
|
+
/** This context wrote through its repositories (or called `pin()`). */
|
|
75
|
+
readonly wrote: boolean;
|
|
76
|
+
/** Sends later reads to the primary, e.g. after a write through `$client` or `ctx.sql`. */
|
|
77
|
+
pin(): void;
|
|
78
|
+
}
|
|
79
|
+
//#endregion
|
|
80
|
+
//#region src/server/request-ids.d.ts
|
|
81
|
+
interface RequestIdOptions {
|
|
82
|
+
readonly requestHeader?: string;
|
|
83
|
+
readonly correlationHeader?: string;
|
|
84
|
+
readonly incoming?: boolean;
|
|
85
|
+
readonly generate?: boolean;
|
|
86
|
+
}
|
|
87
|
+
//#endregion
|
|
88
|
+
//#region src/auth/support.d.ts
|
|
89
|
+
type SupportEndedBy = "admin" | "expired" | "revoked";
|
|
90
|
+
/** A support session: a platform admin viewing the app as `targetUserId`. */
|
|
91
|
+
interface SupportSession {
|
|
92
|
+
readonly id: string;
|
|
93
|
+
readonly adminId: string;
|
|
94
|
+
readonly targetUserId: string;
|
|
95
|
+
readonly reason: string;
|
|
96
|
+
/** Writes fail while it is true (`begin read only`). */
|
|
97
|
+
readonly readOnly: boolean;
|
|
98
|
+
readonly tenant?: string;
|
|
99
|
+
readonly startedAt: Temporal.Instant;
|
|
100
|
+
readonly expiresAt: Temporal.Instant;
|
|
101
|
+
readonly endedAt?: Temporal.Instant;
|
|
102
|
+
readonly endedBy?: SupportEndedBy;
|
|
103
|
+
/** App data, such as a ticket id. */
|
|
104
|
+
readonly metadata: Readonly<Record<string, unknown>>;
|
|
105
|
+
}
|
|
106
|
+
interface SupportStartInput {
|
|
107
|
+
readonly adminId: string;
|
|
108
|
+
/**
|
|
109
|
+
* The admin's verified claims. The SQL store runs `start_support_session`
|
|
110
|
+
* with them, so `is_platform()` checks the admin in the database too.
|
|
111
|
+
*/
|
|
112
|
+
readonly adminClaims: Readonly<Record<string, unknown>>;
|
|
113
|
+
readonly targetUserId: string;
|
|
114
|
+
readonly reason: string;
|
|
115
|
+
readonly ttlSeconds: number;
|
|
116
|
+
readonly readOnly: boolean;
|
|
117
|
+
readonly tenant?: string;
|
|
118
|
+
readonly metadata: Readonly<Record<string, unknown>>;
|
|
119
|
+
/** The approved request this start uses, when the server found one. */
|
|
120
|
+
readonly requestId?: string;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* A request for a support session that waits for a second admin. A start
|
|
124
|
+
* uses an approved request once; `approvedBy` is never `adminId`.
|
|
125
|
+
*/
|
|
126
|
+
interface SupportRequest {
|
|
127
|
+
readonly id: string;
|
|
128
|
+
readonly adminId: string;
|
|
129
|
+
readonly targetUserId: string;
|
|
130
|
+
readonly reason: string;
|
|
131
|
+
readonly readOnly: boolean;
|
|
132
|
+
readonly tenant?: string;
|
|
133
|
+
readonly metadata: Readonly<Record<string, unknown>>;
|
|
134
|
+
readonly requestedAt: Temporal.Instant;
|
|
135
|
+
/** An unapproved or unused request is closed after this. */
|
|
136
|
+
readonly expiresAt: Temporal.Instant;
|
|
137
|
+
readonly approvedBy?: string;
|
|
138
|
+
readonly approvedAt?: Temporal.Instant;
|
|
139
|
+
/** The session the approval started. */
|
|
140
|
+
readonly sessionId?: string;
|
|
141
|
+
}
|
|
142
|
+
interface SupportRequestInput {
|
|
143
|
+
readonly adminId: string;
|
|
144
|
+
/** The admin's verified claims; the SQL store asks as the admin with them. */
|
|
145
|
+
readonly adminClaims: Readonly<Record<string, unknown>>;
|
|
146
|
+
readonly targetUserId: string;
|
|
147
|
+
readonly reason: string;
|
|
148
|
+
readonly readOnly: boolean;
|
|
149
|
+
readonly tenant?: string;
|
|
150
|
+
readonly metadata: Readonly<Record<string, unknown>>;
|
|
151
|
+
/**
|
|
152
|
+
* An approver the server's authorization hook already decided, never the
|
|
153
|
+
* admin. The SQL store then records the request approved, over the admin
|
|
154
|
+
* connection.
|
|
155
|
+
*/
|
|
156
|
+
readonly approvedBy?: string;
|
|
157
|
+
}
|
|
158
|
+
/** Who approves a request: with `claims` the store runs as them and decides eligibility itself. */
|
|
159
|
+
interface SupportApprover {
|
|
160
|
+
readonly id: string;
|
|
161
|
+
readonly claims?: SupportCallerClaims;
|
|
162
|
+
}
|
|
163
|
+
/** What `approvedRequest` looks up. */
|
|
164
|
+
interface SupportApprovalQuery {
|
|
165
|
+
readonly adminId: string;
|
|
166
|
+
readonly targetUserId: string;
|
|
167
|
+
readonly tenant?: string;
|
|
168
|
+
readonly readOnly: boolean;
|
|
169
|
+
}
|
|
170
|
+
/** A caller's verified claims, which the store runs a call with. */
|
|
171
|
+
type SupportCallerClaims = Readonly<Record<string, unknown>>;
|
|
172
|
+
interface SupportListFilter {
|
|
173
|
+
readonly adminId?: string;
|
|
174
|
+
readonly targetUserId?: string;
|
|
175
|
+
/** `true`: running sessions only; `false`: ended or expired ones only. */
|
|
176
|
+
readonly active?: boolean;
|
|
177
|
+
/** Defaults to 50. */
|
|
178
|
+
readonly limit?: number;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Where support sessions live. `sqlSupportStore` uses the `support-sessions`
|
|
182
|
+
* SQL module; implement this for another store and check it with
|
|
183
|
+
* `testSupportSessionStore` from `better-supabase/testing`.
|
|
184
|
+
*/
|
|
185
|
+
interface SupportSessionStore {
|
|
186
|
+
readonly apiVersion: 1;
|
|
187
|
+
readonly name: string;
|
|
188
|
+
/** Starts a session and ends the admin's previous one. Rejects when the store refuses. */
|
|
189
|
+
start(input: SupportStartInput): Promise<SupportSession>;
|
|
190
|
+
/**
|
|
191
|
+
* The admin's session while it is running; `undefined` once ended or
|
|
192
|
+
* expired. With the admin's `claims`, the store also checks that the admin
|
|
193
|
+
* may still start sessions.
|
|
194
|
+
*/
|
|
195
|
+
get(sessionId: string, adminId: string, claims?: SupportCallerClaims): Promise<SupportSession | undefined>;
|
|
196
|
+
/**
|
|
197
|
+
* `false` when it was not running. With `claims`, it runs as that caller:
|
|
198
|
+
* the session's admin, or staff with the revoke permission.
|
|
199
|
+
*/
|
|
200
|
+
end(sessionId: string, endedBy: SupportEndedBy, claims?: SupportCallerClaims): Promise<boolean>;
|
|
201
|
+
/** With `claims`, only what that caller may view. */
|
|
202
|
+
list(filter?: SupportListFilter, claims?: SupportCallerClaims): Promise<readonly SupportSession[]>;
|
|
203
|
+
/** The claims `targetUserId` would get, when the store can build them. */
|
|
204
|
+
claims?(targetUserId: string): Promise<Readonly<Record<string, unknown>>>;
|
|
205
|
+
/**
|
|
206
|
+
* Ends every running session past its expiry with `endedBy: "expired"`
|
|
207
|
+
* and returns them. Optional; `support.expire()` fails without it.
|
|
208
|
+
*/
|
|
209
|
+
expire?(): Promise<readonly SupportSession[]>;
|
|
210
|
+
/**
|
|
211
|
+
* The store with `namespace` for its time values, unless it was given one
|
|
212
|
+
* itself. Optional; `createServer` calls it with the definition's
|
|
213
|
+
* `temporal`.
|
|
214
|
+
*/
|
|
215
|
+
withTemporal?(namespace: typeof Temporal): SupportSessionStore;
|
|
216
|
+
/**
|
|
217
|
+
* Records a request for a session that waits for a second admin.
|
|
218
|
+
* Optional; without it and the two methods below, starts that need an
|
|
219
|
+
* approval are refused.
|
|
220
|
+
*/
|
|
221
|
+
request?(input: SupportRequestInput): Promise<SupportRequest>;
|
|
222
|
+
/** A request by id, or `undefined`. */
|
|
223
|
+
getRequest?(requestId: string): Promise<SupportRequest | undefined>;
|
|
224
|
+
/** Approves a request. Rejects when the approver is the requester. */
|
|
225
|
+
approve?(requestId: string, approver: SupportApprover): Promise<SupportRequest>;
|
|
226
|
+
/** The approved, unused, unexpired request a start would use, or `undefined`. */
|
|
227
|
+
approvedRequest?(query: SupportApprovalQuery): Promise<SupportRequest | undefined>;
|
|
228
|
+
}
|
|
229
|
+
interface SqlSupportStoreOptions {
|
|
230
|
+
/** `blocks.support-sessions.schema`. Defaults to `better_supabase`. */
|
|
231
|
+
readonly schema?: string;
|
|
232
|
+
/**
|
|
233
|
+
* The Temporal namespace for the sessions' time values, for runtimes
|
|
234
|
+
* without a global one. Defaults to the one `createServer` passes from the
|
|
235
|
+
* definition, then the provided or global Temporal.
|
|
236
|
+
*/
|
|
237
|
+
readonly temporal?: typeof Temporal;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Support sessions in the `support-sessions` SQL module. `start` runs
|
|
241
|
+
* as the admin, so the module's `is_platform()` gate applies; the reads run
|
|
242
|
+
* on the admin connection.
|
|
243
|
+
*/
|
|
244
|
+
declare function sqlSupportStore(postgres: Pick<BetterPostgres, "admin" | "asUser">, options?: SqlSupportStoreOptions): SupportSessionStore;
|
|
245
|
+
/**
|
|
246
|
+
* The claims a support session runs with: the target's, plus `act` naming
|
|
247
|
+
* the admin, the reason and the session (the audit module records all three),
|
|
248
|
+
* marked `kind: "support"` so `actorOf` never reads it as an OAuth client.
|
|
249
|
+
* `role` falls back to `authenticated`; the admin's claims never leak in.
|
|
250
|
+
*/
|
|
251
|
+
declare function supportClaims(session: Pick<SupportSession, "id" | "adminId" | "targetUserId" | "reason" | "readOnly">, target: Readonly<Record<string, unknown>>): Record<string, unknown>;
|
|
252
|
+
//#endregion
|
|
253
|
+
//#region src/auth/support-cookie.d.ts
|
|
254
|
+
/** The cookie that carries the support session id. */
|
|
255
|
+
declare const SUPPORT_COOKIE = "bs-support";
|
|
256
|
+
interface SupportCookieOptions {
|
|
257
|
+
/** Defaults to `bs-support`. */
|
|
258
|
+
readonly name?: string;
|
|
259
|
+
/** Defaults to `/`. */
|
|
260
|
+
readonly path?: string;
|
|
261
|
+
/** Defaults to true; set false for plain-HTTP local development. */
|
|
262
|
+
readonly secure?: boolean;
|
|
263
|
+
}
|
|
264
|
+
/** `Set-Cookie` for a session: HttpOnly, SameSite=Lax, gone when the session expires. */
|
|
265
|
+
declare function supportCookie(session: Pick<SupportSession, "id" | "expiresAt">, options?: SupportCookieOptions, now?: number): string;
|
|
266
|
+
/** `Set-Cookie` that removes the support cookie. */
|
|
267
|
+
declare function clearSupportCookie(options?: SupportCookieOptions): string;
|
|
268
|
+
/** The support session id in a `Cookie` header, or `undefined`. */
|
|
269
|
+
declare function supportCookieValue(cookieHeader: string | null, name?: string): string | undefined;
|
|
270
|
+
//#endregion
|
|
271
|
+
//#region src/server/support.d.ts
|
|
272
|
+
interface SupportPolicy {
|
|
273
|
+
/** Seconds a session lasts. Defaults to 1800 (30 minutes). */
|
|
274
|
+
readonly ttl?: number;
|
|
275
|
+
/** The longest `ttl` a start may ask for. Defaults to 14400 (4 hours). */
|
|
276
|
+
readonly maxTtl?: number;
|
|
277
|
+
/** Defaults to true. */
|
|
278
|
+
readonly requireReason?: boolean;
|
|
279
|
+
/**
|
|
280
|
+
* `always` (the default): every session is read-only. `default`: read-only
|
|
281
|
+
* unless the start passes `readOnly: false`.
|
|
282
|
+
*/
|
|
283
|
+
readonly readOnly?: "always" | "default";
|
|
284
|
+
/**
|
|
285
|
+
* `distinct` (the default): a start needs a request that another admin
|
|
286
|
+
* approved (`support.request`, then `support.approve`), or an `authorize`
|
|
287
|
+
* decision of `{ approvedBy }` naming someone else. `none`: no second
|
|
288
|
+
* admin. Set `blocks.support-sessions.options.approval` to the same
|
|
289
|
+
* value, because the SQL store checks it again.
|
|
290
|
+
*/
|
|
291
|
+
readonly approval?: "distinct" | "none";
|
|
292
|
+
}
|
|
293
|
+
interface SupportOptions {
|
|
294
|
+
readonly store: SupportSessionStore;
|
|
295
|
+
/**
|
|
296
|
+
* Whether `admin` may view the app as the target. Without it, the
|
|
297
|
+
* authorization hooks' `support.authorize` decides, and without those
|
|
298
|
+
* every start is refused (`SUPPORT_FORBIDDEN`). A throw or rejection
|
|
299
|
+
* counts as a deny. `true` still needs a second admin under
|
|
300
|
+
* `policy.approval: 'distinct'`; `{ approvedBy }` names that admin.
|
|
301
|
+
*
|
|
302
|
+
* `'store'` hands the decision to the store alone: the SQL store checks
|
|
303
|
+
* `is_platform(blocks["support-sessions"].permissions.start)` and nothing
|
|
304
|
+
* else, so use it only when that permission is the whole rule.
|
|
305
|
+
*/
|
|
306
|
+
readonly authorize?: SupportAuthorize | "store";
|
|
307
|
+
/**
|
|
308
|
+
* The claims the target gets. Defaults to `store.claims` (the SQL store
|
|
309
|
+
* runs your custom access token hook), then `{ role: 'authenticated' }`.
|
|
310
|
+
*/
|
|
311
|
+
readonly claims?: (targetUserId: string) => Readonly<Record<string, unknown>> | Promise<Readonly<Record<string, unknown>>>;
|
|
312
|
+
readonly policy?: SupportPolicy;
|
|
313
|
+
readonly cookie?: SupportCookieOptions;
|
|
314
|
+
/**
|
|
315
|
+
* Where a request names its support session, for apps that keep it in a
|
|
316
|
+
* header or their own request store instead of the `bs-support` cookie.
|
|
317
|
+
* Defaults to reading the cookie.
|
|
318
|
+
*/
|
|
319
|
+
readonly sessionId?: (request: Request) => string | undefined;
|
|
320
|
+
}
|
|
321
|
+
interface SupportStartRequest {
|
|
322
|
+
readonly targetUserId: string;
|
|
323
|
+
readonly reason?: string;
|
|
324
|
+
/** Seconds; defaults to `policy.ttl`. */
|
|
325
|
+
readonly ttl?: number;
|
|
326
|
+
/** Honoured only with `policy.readOnly: 'default'`. */
|
|
327
|
+
readonly readOnly?: boolean;
|
|
328
|
+
readonly tenant?: string;
|
|
329
|
+
readonly metadata?: Readonly<Record<string, unknown>>;
|
|
330
|
+
}
|
|
331
|
+
/** Options for `support.expireRoute`. */
|
|
332
|
+
interface SupportExpireRouteOptions {
|
|
333
|
+
/** The bearer token the cron caller sends, such as `process.env.CRON_SECRET`. */
|
|
334
|
+
readonly secret: string | undefined;
|
|
335
|
+
/** Rewrites the Problem Details bodies of the route's errors. */
|
|
336
|
+
readonly problem?: ProblemFormat;
|
|
337
|
+
}
|
|
338
|
+
/** A running support session, as the request that carries its cookie sees it. */
|
|
339
|
+
interface ActiveSupport {
|
|
340
|
+
readonly session: SupportSession;
|
|
341
|
+
/** The admin behind the session, from their own verified token. */
|
|
342
|
+
readonly admin: {
|
|
343
|
+
readonly id: string;
|
|
344
|
+
readonly email?: string;
|
|
345
|
+
};
|
|
346
|
+
/** The target's claims plus `act`, which repositories run with. */
|
|
347
|
+
readonly claims: Readonly<Record<string, unknown>>;
|
|
348
|
+
}
|
|
349
|
+
/** `bs.support`: start, stop and inspect support sessions. */
|
|
350
|
+
interface SupportApi {
|
|
351
|
+
/**
|
|
352
|
+
* Starts a session for a signed-in admin and returns it with the
|
|
353
|
+
* `Set-Cookie` value that switches the admin's next requests to the target.
|
|
354
|
+
*/
|
|
355
|
+
start(admin: AuthState, request: SupportStartRequest): AsyncResult<{
|
|
356
|
+
readonly session: SupportSession;
|
|
357
|
+
readonly cookie: string;
|
|
358
|
+
}>;
|
|
359
|
+
/**
|
|
360
|
+
* Asks for a session that a second admin approves with `approve`; the
|
|
361
|
+
* policy checks of `start` apply. `ttl` is not stored: `start` passes it.
|
|
362
|
+
*/
|
|
363
|
+
request(admin: AuthState, request: SupportStartRequest): AsyncResult<SupportRequest>;
|
|
364
|
+
/**
|
|
365
|
+
* Approves a request as `approver`, who is never the admin who asked. With
|
|
366
|
+
* the hooks' `approverOf`, it decides who may approve; otherwise the
|
|
367
|
+
* store does (the SQL store: the provider's `isApprover`, else the start
|
|
368
|
+
* permission).
|
|
369
|
+
*/
|
|
370
|
+
approve(approver: AuthState, requestId: string): AsyncResult<SupportRequest>;
|
|
371
|
+
/** Ends the admin's own session and returns the `Set-Cookie` that clears the cookie. */
|
|
372
|
+
stop(admin: AuthState, sessionId: string): AsyncResult<{
|
|
373
|
+
readonly ended: boolean;
|
|
374
|
+
readonly cookie: string;
|
|
375
|
+
}>;
|
|
376
|
+
/**
|
|
377
|
+
* Ends a session as `caller`: the SQL store allows the session's admin and
|
|
378
|
+
* staff with the revoke permission.
|
|
379
|
+
*/
|
|
380
|
+
revoke(caller: AuthState, sessionId: string): AsyncResult<boolean>;
|
|
381
|
+
/** The running session the request names (`sessionIdOf`) for `auth`, if any. */
|
|
382
|
+
current(request: Request, auth: AuthState): Promise<ActiveSupport | undefined>;
|
|
383
|
+
/**
|
|
384
|
+
* The running session `sessionId` for the admin in `auth`, if any. Use it
|
|
385
|
+
* when the app keeps the session id in its own request context; pass the
|
|
386
|
+
* result to `contextFor(auth, { support })` or `dbFor(auth, context, { support })`.
|
|
387
|
+
*/
|
|
388
|
+
resolve(sessionId: string, auth: AuthState): Promise<ActiveSupport | undefined>;
|
|
389
|
+
/** The sessions `caller` may view (the SQL store checks the view permission). */
|
|
390
|
+
list(caller: AuthState, filter?: SupportListFilter): AsyncResult<readonly SupportSession[]>;
|
|
391
|
+
/**
|
|
392
|
+
* Ends every session past its expiry through the store and emits
|
|
393
|
+
* `support.ended` with `endedBy: "expired"` for each; the SQL store runs
|
|
394
|
+
* over `postgres.admin`. Returns the sessions it ended.
|
|
395
|
+
*/
|
|
396
|
+
expire(): AsyncResult<readonly SupportSession[]>;
|
|
397
|
+
/**
|
|
398
|
+
* A `GET` or `POST` handler for a cron caller that runs `expire()` and
|
|
399
|
+
* answers `{ expired }`, the number of sessions it ended.
|
|
400
|
+
*/
|
|
401
|
+
expireRoute(options: SupportExpireRouteOptions): (request: Request) => Promise<Response>;
|
|
402
|
+
/** The support session id a request names: `options.sessionId`, or the cookie. */
|
|
403
|
+
sessionIdOf(request: Request): string | undefined;
|
|
404
|
+
/** `Set-Cookie` that clears the support cookie. */
|
|
405
|
+
clearCookie(): string;
|
|
406
|
+
}
|
|
407
|
+
/** `ServerOptions.support`, from `supportSessions(options)`. */
|
|
408
|
+
interface SupportSessions {
|
|
409
|
+
readonly options: SupportOptions;
|
|
410
|
+
/**
|
|
411
|
+
* Builds `bs.support`; `createServer` calls it once, with the definition's
|
|
412
|
+
* `temporal`, which goes on to the store's `withTemporal`, and the
|
|
413
|
+
* server's authorization hooks.
|
|
414
|
+
*/
|
|
415
|
+
readonly create: (events: EventHub, claimsSchema: StandardSchemaV1 | undefined, temporal?: typeof Temporal, authorization?: AuthorizationHooks) => SupportApi;
|
|
416
|
+
}
|
|
417
|
+
/**
|
|
418
|
+
* Support sessions for `createServer(betterSupabase, { support })`. Apps that
|
|
419
|
+
* never import it don't bundle the support code.
|
|
420
|
+
*/
|
|
421
|
+
declare function supportSessions(options: SupportOptions): SupportSessions;
|
|
422
|
+
//#endregion
|
|
423
|
+
//#region src/server/suspend-account.d.ts
|
|
424
|
+
interface EndSessionsResult {
|
|
425
|
+
readonly userId: string;
|
|
426
|
+
readonly ended: number;
|
|
427
|
+
}
|
|
428
|
+
interface SuspendAccountOptions {
|
|
429
|
+
readonly suspended: boolean;
|
|
430
|
+
/** A Go duration for the ban, such as `"24h"`. Defaults to 100 years. */
|
|
431
|
+
readonly duration?: string;
|
|
432
|
+
/**
|
|
433
|
+
* Also end the sessions when suspending. Defaults to `false`: the sessions
|
|
434
|
+
* stay, so Auth answers refresh and `/user` with `user_banned` and the app
|
|
435
|
+
* can show why. Without the `sessions` SQL module, an access token keeps
|
|
436
|
+
* working against the Data API until it expires; set this to end the
|
|
437
|
+
* sessions at once instead.
|
|
438
|
+
*/
|
|
439
|
+
readonly endSessions?: boolean;
|
|
440
|
+
}
|
|
441
|
+
interface SuspendAccountResult {
|
|
442
|
+
readonly userId: string;
|
|
443
|
+
readonly suspended: boolean;
|
|
444
|
+
/**
|
|
445
|
+
* The sessions deleted: `0` on a suspension (unless `endSessions` is set),
|
|
446
|
+
* and the user's remaining sessions when the ban is lifted.
|
|
447
|
+
*/
|
|
448
|
+
readonly ended: number;
|
|
449
|
+
}
|
|
450
|
+
declare function endSessions(sql: SqlClient, userId: string): AsyncResult<EndSessionsResult>;
|
|
451
|
+
interface LastSignIn {
|
|
452
|
+
readonly userId: string;
|
|
453
|
+
/** `null` for a user who never signed in. */
|
|
454
|
+
readonly lastSignInAt: Temporal.Instant | null;
|
|
455
|
+
}
|
|
456
|
+
/**
|
|
457
|
+
* The last sign-in of each user, in one query (`better_supabase.last_sign_ins`
|
|
458
|
+
* from the `sessions` module, which only the service role may call). Users
|
|
459
|
+
* that don't exist are missing from the map.
|
|
460
|
+
*/
|
|
461
|
+
declare function lastSignIns(sql: SqlClient, userIds: readonly string[]): AsyncResult<ReadonlyMap<string, LastSignIn>>;
|
|
462
|
+
declare function suspendAccount(service: SupabaseClient | (() => SupabaseClient), sql: SqlClient, userId: string, options: SuspendAccountOptions): AsyncResult<SuspendAccountResult>;
|
|
463
|
+
//#endregion
|
|
464
|
+
//#region src/server/server-types.d.ts
|
|
465
|
+
/**
|
|
466
|
+
* PostgREST request settings for the caller's repositories and the shared
|
|
467
|
+
* service and anon clients, the `db` options supabase-js takes.
|
|
468
|
+
*/
|
|
469
|
+
interface ServerDbOptions {
|
|
470
|
+
/** Aborts each PostgREST request after this many milliseconds with a `timeout` error. */
|
|
471
|
+
readonly timeout?: number;
|
|
472
|
+
/**
|
|
473
|
+
* postgrest-js retries of idempotent requests (GET and HEAD) on network
|
|
474
|
+
* errors, 503 and 520. Defaults to postgrest-js's setting, which is on.
|
|
475
|
+
*/
|
|
476
|
+
readonly retry?: boolean;
|
|
477
|
+
/**
|
|
478
|
+
* The longest query string one read sends. Defaults to the definition's
|
|
479
|
+
* `urlLengthLimit`, else 6000.
|
|
480
|
+
*/
|
|
481
|
+
readonly urlLengthLimit?: number;
|
|
482
|
+
}
|
|
483
|
+
interface ServerOptions {
|
|
484
|
+
/**
|
|
485
|
+
* Defaults to the variables `getEnv` from `@supabase/middleware` reads:
|
|
486
|
+
* Workers bindings, then `process.env`, then `Deno.env`.
|
|
487
|
+
*/
|
|
488
|
+
readonly env?: BetterSupabaseEnv;
|
|
489
|
+
/** Enables `ctx.sql` and `actingAs()`. */
|
|
490
|
+
readonly postgres?: BetterPostgres;
|
|
491
|
+
readonly auth?: Omit<ResolveAuthOptions, "env">;
|
|
492
|
+
/**
|
|
493
|
+
* `"lite"` for Supabase Lite: tokens verify with `SUPABASE_JWT_SECRET`, no
|
|
494
|
+
* JWKS prefetch, and `rpc()` is `unsupported` on its SQLite drivers.
|
|
495
|
+
*/
|
|
496
|
+
readonly backend?: "supabase" | "lite";
|
|
497
|
+
/** Lite's `[db] driver`, default `sqlite-postgres`; `postgres` needs `postgres`. */
|
|
498
|
+
readonly liteDriver?: LiteDriver;
|
|
499
|
+
/**
|
|
500
|
+
* Fetch the JWKS when the server is created, so the first request verifies
|
|
501
|
+
* its token without waiting for it. Applies when neither `auth.jwks` nor
|
|
502
|
+
* `env.jwks` (`SUPABASE_JWKS`) holds the keys inline. Defaults to true, except under `NODE_ENV=test`.
|
|
503
|
+
*/
|
|
504
|
+
readonly prefetchJwks?: boolean;
|
|
505
|
+
/**
|
|
506
|
+
* Extra headers on the caller's PostgREST requests, readable in Postgres as
|
|
507
|
+
* `current_setting('request.headers')` (channel, request id, client IP for audit).
|
|
508
|
+
*/
|
|
509
|
+
readonly headers?: (request: Request) => Readonly<Record<string, string>>;
|
|
510
|
+
readonly requestIds?: RequestIdOptions | false;
|
|
511
|
+
/**
|
|
512
|
+
* PostgREST URL for the caller's reads: a read replica or the `<ref>-all`
|
|
513
|
+
* load balancer. Defaults to `SUPABASE_READ_URL`; `false` reads from the
|
|
514
|
+
* primary.
|
|
515
|
+
*/
|
|
516
|
+
readonly readUrl?: string | false;
|
|
517
|
+
/**
|
|
518
|
+
* `fetch` for the PostgREST and supabase-js clients, e.g. `tracedFetch()`
|
|
519
|
+
* from `better-supabase/otel`. Auth refreshes use `auth.fetch`.
|
|
520
|
+
*/
|
|
521
|
+
readonly fetch?: typeof globalThis.fetch;
|
|
522
|
+
readonly replicas?: {
|
|
523
|
+
/** How long the next requests read from the primary after a write. Defaults to 5 s. */
|
|
524
|
+
readonly pinMs?: number;
|
|
525
|
+
};
|
|
526
|
+
/**
|
|
527
|
+
* The active tenant of a request when it doesn't come from a claim, e.g.
|
|
528
|
+
* from a URL slug (`blocks.access.activeTenant: 'resolver'`). It becomes
|
|
529
|
+
* `context.tenant` for the `tenant()` plugin, the `better_supabase.tenant`
|
|
530
|
+
* setting over Postgres and the `x-bs-tenant` header over PostgREST, which
|
|
531
|
+
* `current_tenant_id()` reads only while the caller is a member. Async
|
|
532
|
+
* resolvers need `context(request)`; `contextFromResolution` takes
|
|
533
|
+
* `options.tenant` instead. Under `createNext`, Server Components and
|
|
534
|
+
* actions pass a request with the incoming headers and a placeholder URL,
|
|
535
|
+
* so read a header there, not the path.
|
|
536
|
+
*/
|
|
537
|
+
readonly tenant?: (request: Request, auth: AuthState) => string | undefined | PromiseLike<string | undefined>;
|
|
538
|
+
/**
|
|
539
|
+
* Support sessions ("view as user") from `supportSessions(options)`: a platform admin's requests that carry
|
|
540
|
+
* the support cookie run as the target user, read-only by default. Needs
|
|
541
|
+
* `postgres`, since the target's queries run over direct Postgres.
|
|
542
|
+
*/
|
|
543
|
+
readonly support?: SupportSessions;
|
|
544
|
+
/**
|
|
545
|
+
* The claims `forContext()` adds for a user, the ones a custom access token
|
|
546
|
+
* hook would put in their token (roles, organization lists). Read them
|
|
547
|
+
* fresh: a job can run after the user lost access. `sub`, `role`, `act` and
|
|
548
|
+
* `tenant_id` come from the context and win.
|
|
549
|
+
*/
|
|
550
|
+
readonly claimsFor?: (userId: string, context: RequestContext) => SqlClaims | PromiseLike<SqlClaims>;
|
|
551
|
+
/** PostgREST request settings: `timeout`, `retry` and `urlLengthLimit`. */
|
|
552
|
+
readonly db?: ServerDbOptions;
|
|
553
|
+
/**
|
|
554
|
+
* Resolves the `credential_ref`s third-party calls use, e.g.
|
|
555
|
+
* `vaultCredentials()` from `better-supabase/credentials`. It becomes
|
|
556
|
+
* `ctx.credentials`; pass `subjectFor(ctx)` as the subject.
|
|
557
|
+
*/
|
|
558
|
+
readonly credentials?: CredentialProvider;
|
|
559
|
+
/**
|
|
560
|
+
* Where the server's audit trail goes, such as `audit.sink()` from
|
|
561
|
+
* `better-supabase/blocks/audit`. `suspendAccount`, `deleteAccount` and
|
|
562
|
+
* `endSessions` send `dev.better-supabase.account.*` CloudEvents, and
|
|
563
|
+
* `support.denied` events are forwarded. A failed send is logged and never
|
|
564
|
+
* fails the action.
|
|
565
|
+
*/
|
|
566
|
+
readonly audit?: EventSink;
|
|
567
|
+
/**
|
|
568
|
+
* The authorization decision point (`Authorizer` v1) that resources,
|
|
569
|
+
* actions, routes and MCP tools ask for their `permission`. Without one, a
|
|
570
|
+
* declared permission denies.
|
|
571
|
+
*/
|
|
572
|
+
readonly authorizer?: AnyAuthorizer;
|
|
573
|
+
/**
|
|
574
|
+
* The runtime hooks of an authorization provider (`AuthorizationHooks`
|
|
575
|
+
* v1). Support sessions read `support.authorize` and `approverOf`, and
|
|
576
|
+
* `forContext` reads `tickets.subject`, when their own options are unset.
|
|
577
|
+
*/
|
|
578
|
+
readonly authorization?: AuthorizationHooks;
|
|
579
|
+
}
|
|
580
|
+
interface ForContextOptions {
|
|
581
|
+
/** Recorded as `act.reason` when the context carries an impersonator. Defaults to `"job"`. */
|
|
582
|
+
readonly reason?: string;
|
|
583
|
+
/**
|
|
584
|
+
* Resolves a context's `ticket` into the context the work runs as.
|
|
585
|
+
* Defaults to `ServerOptions.authorization.tickets.subject`.
|
|
586
|
+
*/
|
|
587
|
+
readonly ticket?: TicketSubject;
|
|
588
|
+
/**
|
|
589
|
+
* The permission keys the work may use (`*` and `prefix.*` match as in
|
|
590
|
+
* grants). Set as the `bs_permission_cap` claim, which the access
|
|
591
|
+
* functions check through `better_supabase.cap_allows`, so a key outside
|
|
592
|
+
* the cap is refused even when the user holds it. A cap the context
|
|
593
|
+
* already carries is narrowed, never widened.
|
|
594
|
+
*/
|
|
595
|
+
readonly permissions?: readonly string[];
|
|
596
|
+
}
|
|
597
|
+
/** The header `current_tenant_id()` reads over the Data API. */
|
|
598
|
+
declare const TENANT_HEADER = "x-bs-tenant";
|
|
599
|
+
interface ServerContext<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown> {
|
|
600
|
+
readonly auth: AuthState<C, P>;
|
|
601
|
+
readonly resolution: AuthResolution<C, P>;
|
|
602
|
+
/**
|
|
603
|
+
* supabase-js client scoped to the caller (RLS applies). Throws in a
|
|
604
|
+
* support session: Realtime, Storage and Auth would act as the admin.
|
|
605
|
+
*/
|
|
606
|
+
readonly supabase: SupabaseClient;
|
|
607
|
+
/** Repositories over PostgREST as the caller. */
|
|
608
|
+
readonly db: Db<M, F, E, SupabaseClient>;
|
|
609
|
+
/** Repositories over direct Postgres as the caller, when `postgres` is configured. */
|
|
610
|
+
readonly sql: Db<M, F, E, undefined> | undefined;
|
|
611
|
+
/** Calls, waves, tables and time for `db` and `sql` together. */
|
|
612
|
+
stats(): DbStats;
|
|
613
|
+
/** Where `db` reads go, when a read URL is configured. */
|
|
614
|
+
readonly replica: ReplicaState | undefined;
|
|
615
|
+
/**
|
|
616
|
+
* `response` with this request's cookies: refreshed session cookies
|
|
617
|
+
* (`resolution.apply`) and, after a write, `bs-primary-until`.
|
|
618
|
+
*/
|
|
619
|
+
apply(response: Response): Response;
|
|
620
|
+
/**
|
|
621
|
+
* The cookies `apply` would set, for frameworks that write cookies through
|
|
622
|
+
* a cookie store instead of a response (`cookies().set`, `setResponseHeaders`).
|
|
623
|
+
* Read it after the handler ran: a write adds `bs-primary-until`.
|
|
624
|
+
*/
|
|
625
|
+
cookies(): readonly CookieWrite[];
|
|
626
|
+
/**
|
|
627
|
+
* Set while an admin views the app as another user: `auth`, `db` and
|
|
628
|
+
* `sql` are the target's, and `resolution` stays the admin's.
|
|
629
|
+
*/
|
|
630
|
+
readonly support?: ActiveSupport;
|
|
631
|
+
/**
|
|
632
|
+
* Set in a support session, where `ctx.supabase` throws: Storage read as
|
|
633
|
+
* the target, with the file API of `supabase.storage`. Listings, `exists`
|
|
634
|
+
* and `info` run over Postgres as the target; downloads and signed URLs
|
|
635
|
+
* are checked there, then served with the service client. Writes are
|
|
636
|
+
* refused. Needs `SUPABASE_SECRET_KEY`.
|
|
637
|
+
*/
|
|
638
|
+
readonly storage?: StorageApi;
|
|
639
|
+
/** `options.credentials`, when the server has one. */
|
|
640
|
+
readonly credentials?: CredentialProvider;
|
|
641
|
+
readonly requestId?: string;
|
|
642
|
+
readonly correlationId?: string;
|
|
643
|
+
}
|
|
644
|
+
interface ContextOptions {
|
|
645
|
+
readonly refresh?: boolean;
|
|
646
|
+
/** Read the session cookie. Defaults to true; `false` resolves bearer tokens only. */
|
|
647
|
+
readonly cookies?: boolean;
|
|
648
|
+
/** Epoch ms until which `db` reads from the primary (the `bs-primary-until` cookie). */
|
|
649
|
+
readonly pinnedUntil?: number;
|
|
650
|
+
/** Also records this context's calls into a request-wide recorder. */
|
|
651
|
+
readonly stats?: StatsRecorder;
|
|
652
|
+
/** The active tenant, instead of `ServerOptions.tenant`. */
|
|
653
|
+
readonly tenant?: string;
|
|
654
|
+
/**
|
|
655
|
+
* The request's support session, from `support.current()`. `context()`
|
|
656
|
+
* looks it up itself; `contextFromResolution` only uses this.
|
|
657
|
+
*/
|
|
658
|
+
readonly support?: ActiveSupport;
|
|
659
|
+
readonly requestId?: string;
|
|
660
|
+
readonly correlationId?: string;
|
|
661
|
+
}
|
|
662
|
+
interface BetterServer<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown> {
|
|
663
|
+
readonly env: BetterSupabaseEnv;
|
|
664
|
+
/** The definition's events; adapters pass `events.settled()` to `waitUntil`. */
|
|
665
|
+
readonly events: EventHub;
|
|
666
|
+
resolve(request: Request, options?: {
|
|
667
|
+
readonly refresh?: boolean;
|
|
668
|
+
readonly cookies?: boolean;
|
|
669
|
+
readonly checkSession?: boolean;
|
|
670
|
+
}): Promise<AuthResolution<C, P>>;
|
|
671
|
+
/**
|
|
672
|
+
* Resolves auth and binds repositories to the caller. Refreshes an expired
|
|
673
|
+
* cookie session only with `refresh: true`; send `ctx.apply(response)`.
|
|
674
|
+
*/
|
|
675
|
+
context(request: Request, options?: ContextOptions): Promise<ServerContext<M, F, E, C, P>>;
|
|
676
|
+
/**
|
|
677
|
+
* The context for a resolution from `resolve(request)`, so one resolution
|
|
678
|
+
* can back several contexts without verifying the token again.
|
|
679
|
+
*/
|
|
680
|
+
contextFromResolution(resolution: AuthResolution<C, P>, request: Request, options?: Omit<ContextOptions, "refresh">): ServerContext<M, F, E, C, P>;
|
|
681
|
+
/** The context for an auth state resolved elsewhere (the proxy, a queue message). */
|
|
682
|
+
contextFor(auth: AuthState<C, P>, options?: ContextOptions): ServerContext<M, F, E, C, P>;
|
|
683
|
+
/** A stateless supabase-js client for an auth state, optionally with extra request headers. */
|
|
684
|
+
supabaseFor(auth: AuthState, headers?: Readonly<Record<string, string>>): SupabaseClient;
|
|
685
|
+
/**
|
|
686
|
+
* Repositories for an auth state (e.g. one resolved by the proxy). With
|
|
687
|
+
* `options.support`, from `support.resolve()` or `support.current()`, they
|
|
688
|
+
* run as the support session's target, like `contextFor(auth, { support }).db`.
|
|
689
|
+
*/
|
|
690
|
+
dbFor(auth: AuthState, context?: RequestContext, options?: {
|
|
691
|
+
readonly support?: ActiveSupport;
|
|
692
|
+
}): Db<M, F, E, SupabaseClient>;
|
|
693
|
+
/** Service-role repositories. Bypasses RLS; the actor is `service`. */
|
|
694
|
+
admin(context?: RequestContext): Db<M, F, E, SupabaseClient>;
|
|
695
|
+
/**
|
|
696
|
+
* Deletes a user: the Auth user, then their objects in `buckets`, then a
|
|
697
|
+
* `mutation` notice for `auth.users`. Needs the secret key. With
|
|
698
|
+
* `postgres`, a delete the database refuses returns its own error and
|
|
699
|
+
* hint. Access tokens already issued stay valid until they expire.
|
|
700
|
+
*/
|
|
701
|
+
deleteAccount(userId: string, options?: DeleteAccountOptions): AsyncResult<DeleteAccountResult>;
|
|
702
|
+
endSessions(userId: string): AsyncResult<EndSessionsResult>;
|
|
703
|
+
/**
|
|
704
|
+
* Bans the user in Auth and keeps their sessions, so Auth answers with
|
|
705
|
+
* `user_banned` (`endSessions: true` deletes them too). Lifting the ban
|
|
706
|
+
* ends the sessions first, so the user signs in again.
|
|
707
|
+
*/
|
|
708
|
+
suspendAccount(userId: string, options: SuspendAccountOptions): AsyncResult<SuspendAccountResult>;
|
|
709
|
+
/**
|
|
710
|
+
* Repositories running as a user, with RLS, over direct Postgres. With
|
|
711
|
+
* `impersonation`, the claims carry `act: { kind: "impersonation", sub, reason }`, which
|
|
712
|
+
* the `audit` and `actor` SQL modules record.
|
|
713
|
+
*/
|
|
714
|
+
actingAs(userId: string, claims?: Omit<SqlClaims, "sub" | "act">, impersonation?: ImpersonationOptions): Db<M, F, E, undefined>;
|
|
715
|
+
/**
|
|
716
|
+
* Repositories for the user in a recorded context (`job.context`), with
|
|
717
|
+
* RLS, over direct Postgres: `actingAs` with the context's tenant and
|
|
718
|
+
* `ServerOptions.claimsFor`. A delegated token's `client_id`, `scope`,
|
|
719
|
+
* `authorization_details` and `act` chain go back into the claims, so
|
|
720
|
+
* the work stays as narrow as the token that queued it; `claimsFor`
|
|
721
|
+
* can't set them. A context with a `ticket` runs as the context
|
|
722
|
+
* `options.ticket` or `authorization.tickets.subject` resolves it to.
|
|
723
|
+
* Fails with `forbidden` when the actor is not a user, the `act` chain
|
|
724
|
+
* or delegation is malformed, or the ticket has no resolver or is
|
|
725
|
+
* refused; it never falls back to the recorded actor or `admin()`.
|
|
726
|
+
*/
|
|
727
|
+
forContext(context: RequestContext, options?: ForContextOptions): AsyncResult<Db<M, F, E, undefined>>;
|
|
728
|
+
/** Support sessions; every method fails without `ServerOptions.support`. */
|
|
729
|
+
readonly support: SupportApi;
|
|
730
|
+
/** `options.authorizer`, when the server has one. */
|
|
731
|
+
readonly authorizer: AnyAuthorizer | undefined;
|
|
732
|
+
/** `options.authorization`, when the server has one. */
|
|
733
|
+
readonly authorization: AuthorizationHooks | undefined;
|
|
734
|
+
}
|
|
735
|
+
type ServerKeys = keyof BetterServer<AnyModels, AnyFunctions, unknown>;
|
|
736
|
+
//#endregion
|
|
737
|
+
export { SupportApprovalQuery as A, sqlSupportStore as B, supportSessions as C, supportCookie as D, clearSupportCookie as E, SupportRequest as F, LiteDriver as G, RequestIdOptions as H, SupportRequestInput as I, deleteAccount as J, DeleteAccountOptions as K, SupportSession as L, SupportCallerClaims as M, SupportEndedBy as N, supportCookieValue as O, SupportListFilter as P, SupportSessionStore as R, SupportStartRequest as S, SupportCookieOptions as T, PRIMARY_COOKIE as U, supportClaims as V, ReplicaState as W, SupportApi as _, ServerDbOptions as a, SupportPolicy as b, TENANT_HEADER as c, SuspendAccountOptions as d, SuspendAccountResult as f, ActiveSupport as g, suspendAccount as h, ServerContext as i, SupportApprover as j, SqlSupportStoreOptions as k, EndSessionsResult as l, lastSignIns as m, ContextOptions as n, ServerKeys as o, endSessions as p, DeleteAccountResult as q, ForContextOptions as r, ServerOptions as s, BetterServer as t, LastSignIn as u, SupportExpireRouteOptions as v, SUPPORT_COOKIE as w, SupportSessions as x, SupportOptions as y, SupportStartInput as z };
|