better-supabase 0.12.0 → 0.13.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 +1 -0
- package/dist/access-sql-BpOdJvfj.js +205 -0
- package/dist/actor-C9pwyCVz.js +150 -0
- package/dist/actor-CoveJgya.d.ts +106 -0
- package/dist/adapter-D8dW6p2A.js +2190 -0
- package/dist/agents-CuxuXVWv.d.ts +117 -0
- package/dist/ai-cache-BXMXRhkx.d.ts +82 -0
- package/dist/ai-cache-Byy5q6EZ.js +87 -0
- package/dist/ai-chat-B00sIOjY.d.ts +619 -0
- package/dist/ai-files-DTbIJcxQ.js +339 -0
- package/dist/ai-sdk/agents/index.d.ts +64 -52
- package/dist/ai-sdk/agents/index.js +34 -26
- package/dist/ai-sdk/batches/index.d.ts +16 -7
- package/dist/ai-sdk/batches/index.js +5 -5
- package/dist/ai-sdk/cache/index.d.ts +6 -3
- package/dist/ai-sdk/cache/index.js +1 -1
- package/dist/ai-sdk/chat/index.d.ts +1 -1
- package/dist/ai-sdk/chat/index.js +10 -10
- package/dist/ai-sdk/embeddings/index.d.ts +2 -2
- package/dist/ai-sdk/embeddings/index.js +1 -1
- package/dist/ai-sdk/files/index.d.ts +9 -9
- package/dist/ai-sdk/files/index.js +10 -10
- package/dist/ai-sdk/index.d.ts +25 -22
- package/dist/ai-sdk/index.js +11 -8
- package/dist/ai-sdk/mcp/index.d.ts +32 -26
- package/dist/ai-sdk/mcp/index.js +19 -19
- package/dist/ai-sdk/memory/index.d.ts +9 -9
- package/dist/ai-sdk/memory/index.js +5 -5
- package/dist/ai-sdk/react/index.d.ts +1 -1
- package/dist/ai-sdk/react/index.js +1 -1
- package/dist/ai-sdk/react/server.d.ts +5 -2
- package/dist/ai-sdk/react/server.js +4 -1
- package/dist/ai-sdk/workflow/index.d.ts +57 -36
- package/dist/ai-sdk/workflow/index.js +29 -23
- package/dist/ai-sdk/workflow/react/index.d.ts +7 -8
- package/dist/ai-sdk/workflow/react/index.js +7 -8
- package/dist/ai-sdk/workflow/react/server.d.ts +1 -1
- package/dist/ai-tasks-DN-AV7qB.d.ts +166 -0
- package/dist/announcements-DqiLxtKK.js +128 -0
- package/dist/api-CmcTYuFT.js +685 -0
- package/dist/api-DwLhJS1j.d.ts +444 -0
- package/dist/api-keys-Bade6Qtl.d.ts +213 -0
- package/dist/api-keys-CO24Ffil.js +318 -0
- package/dist/app-tables-0YZ9IskE.js +831 -0
- package/dist/app-tables-CbWUI7h_.d.ts +35 -0
- package/dist/approvals-C-4MOWdV.d.ts +127 -0
- package/dist/arazzo/index.d.ts +58 -36
- package/dist/arazzo/index.js +49 -41
- package/dist/assistant-CcP_kpu7.d.ts +157 -0
- package/dist/astro/index.d.ts +39 -20
- package/dist/astro/index.js +14 -11
- package/dist/asyncapi/index.d.ts +22 -16
- package/dist/asyncapi/index.js +23 -20
- package/dist/attachments-CPkGJVfk.js +270 -0
- package/dist/attributes-BOFl922R.js +44 -0
- package/dist/audit-log-5aTnl7W2.js +788 -0
- package/dist/auth-DyF_LRxd.js +20 -0
- package/dist/auth-link-B4NL84XU.d.ts +104 -0
- package/dist/auth-link-D3-bU6yz.js +118 -0
- package/dist/auth-module-CwCIY97x.js +10 -0
- package/dist/auth-reply-D02x5NSv.js +31 -0
- package/dist/authorization-CB69cvnA.d.ts +1504 -0
- package/dist/authorization-hooks-HXVZXxUk.d.ts +217 -0
- package/dist/authorizer-BVR2vPGA.js +125 -0
- package/dist/authorizer-DFP3gHv8.d.ts +82 -0
- package/dist/base64-B9Wlsdj7.js +42 -0
- package/dist/before-route-B23K2zYU.js +30 -0
- package/dist/better-result/index.d.ts +26 -18
- package/dist/better-result/index.js +13 -9
- package/dist/bind-DcXLU1ul.d.ts +76 -0
- package/dist/block-env-YfPmSNa1.js +32 -0
- package/dist/block-env-kFcaaJLM.d.ts +10 -0
- package/dist/block-events-BURaqwyp.js +96 -0
- package/dist/block-fields-Cwd4c8m-.js +139 -0
- package/dist/block-fields-DnXkMney.d.ts +58 -0
- package/dist/block-helpers-DwE32_gT.js +272 -0
- package/dist/block-helpers-DyA5BAW4.d.ts +43 -0
- package/dist/block-hooks-BadAniNI.d.ts +117 -0
- package/dist/block-hooks-C1r-R2r0.js +130 -0
- package/dist/block-transport-DBPhgF3W.d.ts +69 -0
- package/dist/block-transport-Ds0C2mUf.js +84 -0
- package/dist/blocks/access-requests/index.d.ts +21 -15
- package/dist/blocks/access-requests/index.js +11 -8
- package/dist/blocks/agents/index.d.ts +4 -4
- package/dist/blocks/agents/index.js +6 -6
- package/dist/blocks/ai-cache/index.d.ts +3 -3
- package/dist/blocks/ai-cache/index.js +2 -2
- package/dist/blocks/ai-chat/index.d.ts +10 -7
- package/dist/blocks/ai-chat/index.js +3 -3
- package/dist/blocks/ai-chat/react/index.d.ts +18 -9
- package/dist/blocks/ai-chat/react/index.js +8 -8
- package/dist/blocks/ai-chat/react/server.d.ts +12 -3
- package/dist/blocks/ai-chat/react/server.js +12 -3
- package/dist/blocks/ai-chat/solid/index.d.ts +3 -3
- package/dist/blocks/ai-chat/solid/index.js +2 -2
- package/dist/blocks/ai-chat/svelte/index.d.ts +3 -3
- package/dist/blocks/ai-chat/svelte/index.js +2 -2
- package/dist/blocks/ai-chat/vue/index.d.ts +3 -3
- package/dist/blocks/ai-chat/vue/index.js +2 -2
- package/dist/blocks/ai-files/index.d.ts +5 -5
- package/dist/blocks/ai-files/index.js +2 -2
- package/dist/blocks/ai-providers/index.d.ts +4 -4
- package/dist/blocks/ai-providers/index.js +8 -8
- package/dist/blocks/ai-tasks/index.d.ts +3 -3
- package/dist/blocks/ai-tasks/index.js +8 -8
- package/dist/blocks/announcements/index.d.ts +4 -4
- package/dist/blocks/announcements/index.js +4 -4
- package/dist/blocks/announcements/react/index.d.ts +12 -5
- package/dist/blocks/announcements/react/index.js +7 -7
- package/dist/blocks/announcements/react/server.d.ts +4 -1
- package/dist/blocks/announcements/react/server.js +4 -1
- package/dist/blocks/announcements/solid/index.d.ts +3 -3
- package/dist/blocks/announcements/solid/index.js +2 -2
- package/dist/blocks/announcements/svelte/index.d.ts +3 -3
- package/dist/blocks/announcements/svelte/index.js +2 -2
- package/dist/blocks/announcements/vue/index.d.ts +3 -3
- package/dist/blocks/announcements/vue/index.js +2 -2
- package/dist/blocks/api-keys/index.d.ts +11 -8
- package/dist/blocks/api-keys/index.js +7 -7
- package/dist/blocks/api-keys/react/index.d.ts +11 -8
- package/dist/blocks/api-keys/react/index.js +9 -9
- package/dist/blocks/api-keys/react/server.d.ts +1 -1
- package/dist/blocks/api-keys/solid/index.d.ts +3 -3
- package/dist/blocks/api-keys/solid/index.js +2 -2
- package/dist/blocks/api-keys/svelte/index.d.ts +3 -3
- package/dist/blocks/api-keys/svelte/index.js +2 -2
- package/dist/blocks/api-keys/vue/index.d.ts +3 -3
- package/dist/blocks/api-keys/vue/index.js +2 -2
- package/dist/blocks/approvals/index.d.ts +4 -4
- package/dist/blocks/approvals/index.js +11 -8
- package/dist/blocks/attachments/index.d.ts +4 -4
- package/dist/blocks/attachments/index.js +3 -3
- package/dist/blocks/audit/index.d.ts +14 -8
- package/dist/blocks/audit/index.js +9 -9
- package/dist/blocks/audit/react/index.d.ts +12 -7
- package/dist/blocks/audit/react/index.js +12 -10
- package/dist/blocks/audit/react/server.d.ts +1 -1
- package/dist/blocks/audit/solid/index.d.ts +3 -3
- package/dist/blocks/audit/solid/index.js +2 -2
- package/dist/blocks/audit/svelte/index.d.ts +3 -3
- package/dist/blocks/audit/svelte/index.js +2 -2
- package/dist/blocks/audit/vue/index.d.ts +3 -3
- package/dist/blocks/audit/vue/index.js +2 -2
- package/dist/blocks/billing/index.d.ts +83 -51
- package/dist/blocks/billing/index.js +30 -18
- package/dist/blocks/billing/react/index.d.ts +19 -9
- package/dist/blocks/billing/react/index.js +12 -8
- package/dist/blocks/billing/react/server.d.ts +5 -2
- package/dist/blocks/billing/react/server.js +4 -1
- package/dist/blocks/billing/solid/index.d.ts +3 -3
- package/dist/blocks/billing/solid/index.js +2 -2
- package/dist/blocks/billing/svelte/index.d.ts +3 -3
- package/dist/blocks/billing/svelte/index.js +2 -2
- package/dist/blocks/billing/vue/index.d.ts +3 -3
- package/dist/blocks/billing/vue/index.js +2 -2
- package/dist/blocks/bookings/index.d.ts +11 -8
- package/dist/blocks/bookings/index.js +3 -3
- package/dist/blocks/bookings/react/index.d.ts +8 -4
- package/dist/blocks/bookings/react/index.js +12 -8
- package/dist/blocks/bookings/react/server.d.ts +4 -1
- package/dist/blocks/bookings/react/server.js +4 -1
- package/dist/blocks/bookings/solid/index.d.ts +3 -3
- package/dist/blocks/bookings/solid/index.js +2 -2
- package/dist/blocks/bookings/svelte/index.d.ts +3 -3
- package/dist/blocks/bookings/svelte/index.js +2 -2
- package/dist/blocks/bookings/vue/index.d.ts +3 -3
- package/dist/blocks/bookings/vue/index.js +2 -2
- package/dist/blocks/bulk/index.d.ts +27 -12
- package/dist/blocks/bulk/index.js +4 -4
- package/dist/blocks/calendar/index.d.ts +4 -4
- package/dist/blocks/calendar/index.js +3 -3
- package/dist/blocks/calendar/react/index.d.ts +5 -5
- package/dist/blocks/calendar/react/index.js +8 -8
- package/dist/blocks/calendar/react/server.d.ts +4 -1
- package/dist/blocks/calendar/react/server.js +4 -1
- package/dist/blocks/calendar/solid/index.d.ts +3 -3
- package/dist/blocks/calendar/solid/index.js +2 -2
- package/dist/blocks/calendar/svelte/index.d.ts +3 -3
- package/dist/blocks/calendar/svelte/index.js +2 -2
- package/dist/blocks/calendar/vue/index.d.ts +3 -3
- package/dist/blocks/calendar/vue/index.js +2 -2
- package/dist/blocks/catalog/index.d.ts +48 -27
- package/dist/blocks/catalog/index.js +16 -13
- package/dist/blocks/collections/index.d.ts +26 -21
- package/dist/blocks/collections/index.js +10 -10
- package/dist/blocks/comments/index.d.ts +11 -11
- package/dist/blocks/comments/index.js +4 -4
- package/dist/blocks/comments/react/index.d.ts +13 -6
- package/dist/blocks/comments/react/index.js +13 -9
- package/dist/blocks/comments/react/server.d.ts +1 -1
- package/dist/blocks/comments/solid/index.d.ts +3 -3
- package/dist/blocks/comments/solid/index.js +2 -2
- package/dist/blocks/comments/svelte/index.d.ts +3 -3
- package/dist/blocks/comments/svelte/index.js +2 -2
- package/dist/blocks/comments/vue/index.d.ts +3 -3
- package/dist/blocks/comments/vue/index.js +2 -2
- package/dist/blocks/connectors/index.d.ts +4 -4
- package/dist/blocks/connectors/index.js +8 -8
- package/dist/blocks/custom-fields/index.d.ts +13 -10
- package/dist/blocks/custom-fields/index.js +6 -6
- package/dist/blocks/data-lifecycle/index.d.ts +75 -51
- package/dist/blocks/data-lifecycle/index.js +17 -11
- package/dist/blocks/deals/index.d.ts +16 -16
- package/dist/blocks/deals/index.js +14 -14
- package/dist/blocks/documents/index.d.ts +4 -4
- package/dist/blocks/documents/index.js +5 -5
- package/dist/blocks/domains/index.d.ts +35 -20
- package/dist/blocks/domains/index.js +9 -9
- package/dist/blocks/drive/index.d.ts +45 -27
- package/dist/blocks/drive/index.js +17 -14
- package/dist/blocks/employees/index.d.ts +26 -21
- package/dist/blocks/employees/index.js +16 -13
- package/dist/blocks/engagements/index.d.ts +26 -17
- package/dist/blocks/engagements/index.js +9 -9
- package/dist/blocks/entitlements/index.d.ts +20 -14
- package/dist/blocks/entitlements/index.js +3 -3
- package/dist/blocks/entitlements/react/index.d.ts +10 -7
- package/dist/blocks/entitlements/react/index.js +7 -7
- package/dist/blocks/entitlements/react/server.d.ts +4 -1
- package/dist/blocks/entitlements/react/server.js +4 -1
- package/dist/blocks/entitlements/solid/index.d.ts +3 -3
- package/dist/blocks/entitlements/solid/index.js +2 -2
- package/dist/blocks/entitlements/svelte/index.d.ts +3 -3
- package/dist/blocks/entitlements/svelte/index.js +2 -2
- package/dist/blocks/entitlements/vue/index.d.ts +3 -3
- package/dist/blocks/entitlements/vue/index.js +2 -2
- package/dist/blocks/flags/index.d.ts +20 -14
- package/dist/blocks/flags/index.js +9 -9
- package/dist/blocks/forms/index.d.ts +28 -16
- package/dist/blocks/forms/index.js +12 -9
- package/dist/blocks/forms/react/index.d.ts +9 -6
- package/dist/blocks/forms/react/index.js +10 -7
- package/dist/blocks/forms/react/server.d.ts +4 -1
- package/dist/blocks/forms/react/server.js +4 -1
- package/dist/blocks/forms/solid/index.d.ts +3 -3
- package/dist/blocks/forms/solid/index.js +2 -2
- package/dist/blocks/forms/svelte/index.d.ts +3 -3
- package/dist/blocks/forms/svelte/index.js +2 -2
- package/dist/blocks/forms/vue/index.d.ts +3 -3
- package/dist/blocks/forms/vue/index.js +2 -2
- package/dist/blocks/hiring/index.d.ts +13 -13
- package/dist/blocks/hiring/index.js +9 -9
- package/dist/blocks/identities/index.d.ts +38 -20
- package/dist/blocks/identities/index.js +16 -10
- package/dist/blocks/imports/index.d.ts +30 -25
- package/dist/blocks/imports/index.js +18 -18
- package/dist/blocks/inbox/index.d.ts +5 -5
- package/dist/blocks/inbox/index.js +7 -7
- package/dist/blocks/inbox/react/index.d.ts +2 -2
- package/dist/blocks/inbox/react/index.js +7 -7
- package/dist/blocks/inbox/react/server.d.ts +10 -4
- package/dist/blocks/inbox/react/server.js +8 -2
- package/dist/blocks/inbox/solid/index.d.ts +3 -3
- package/dist/blocks/inbox/solid/index.js +2 -2
- package/dist/blocks/inbox/svelte/index.d.ts +3 -3
- package/dist/blocks/inbox/svelte/index.js +2 -2
- package/dist/blocks/inbox/vue/index.d.ts +3 -3
- package/dist/blocks/inbox/vue/index.js +2 -2
- package/dist/blocks/index.d.ts +10 -10
- package/dist/blocks/index.js +41 -39
- package/dist/blocks/inventory/index.d.ts +36 -19
- package/dist/blocks/inventory/index.js +15 -9
- package/dist/blocks/invoices/index.d.ts +13 -13
- package/dist/blocks/invoices/index.js +11 -11
- package/dist/blocks/jobs/index.d.ts +123 -86
- package/dist/blocks/jobs/index.js +58 -47
- package/dist/blocks/knowledge/index.d.ts +3 -3
- package/dist/blocks/knowledge/index.js +2 -2
- package/dist/blocks/leave/index.d.ts +30 -15
- package/dist/blocks/leave/index.js +6 -6
- package/dist/blocks/memory/index.d.ts +4 -4
- package/dist/blocks/memory/index.js +7 -7
- package/dist/blocks/metrics/index.d.ts +36 -30
- package/dist/blocks/metrics/index.js +19 -19
- package/dist/blocks/mfa/index.d.ts +2 -2
- package/dist/blocks/mfa/index.js +1 -1
- package/dist/blocks/mfa/react/index.d.ts +7 -7
- package/dist/blocks/mfa/react/index.js +9 -9
- package/dist/blocks/mfa/react/server.d.ts +1 -1
- package/dist/blocks/mfa/react/server.js +1 -1
- package/dist/blocks/mfa/solid/index.d.ts +3 -3
- package/dist/blocks/mfa/solid/index.js +2 -2
- package/dist/blocks/mfa/svelte/index.d.ts +3 -3
- package/dist/blocks/mfa/svelte/index.js +2 -2
- package/dist/blocks/mfa/vue/index.d.ts +3 -3
- package/dist/blocks/mfa/vue/index.js +2 -2
- package/dist/blocks/notifications/index.d.ts +132 -103
- package/dist/blocks/notifications/index.js +61 -46
- package/dist/blocks/notifications/react/index.d.ts +3 -3
- package/dist/blocks/notifications/react/index.js +5 -5
- package/dist/blocks/notifications/react/server.d.ts +5 -2
- package/dist/blocks/notifications/react/server.js +4 -1
- package/dist/blocks/notifications/solid/index.d.ts +3 -3
- package/dist/blocks/notifications/solid/index.js +2 -2
- package/dist/blocks/notifications/svelte/index.d.ts +3 -3
- package/dist/blocks/notifications/svelte/index.js +2 -2
- package/dist/blocks/notifications/vue/index.d.ts +3 -3
- package/dist/blocks/notifications/vue/index.js +2 -2
- package/dist/blocks/number-sequences/index.d.ts +15 -12
- package/dist/blocks/number-sequences/index.js +7 -4
- package/dist/blocks/oauth-server/index.d.ts +42 -21
- package/dist/blocks/oauth-server/index.js +16 -13
- package/dist/blocks/onboarding/index.d.ts +3 -3
- package/dist/blocks/onboarding/index.js +3 -3
- package/dist/blocks/onboarding/react/index.d.ts +10 -5
- package/dist/blocks/onboarding/react/index.js +10 -8
- package/dist/blocks/onboarding/react/server.d.ts +5 -2
- package/dist/blocks/onboarding/react/server.js +4 -1
- package/dist/blocks/onboarding/solid/index.d.ts +3 -3
- package/dist/blocks/onboarding/solid/index.js +2 -2
- package/dist/blocks/onboarding/svelte/index.d.ts +3 -3
- package/dist/blocks/onboarding/svelte/index.js +2 -2
- package/dist/blocks/onboarding/vue/index.d.ts +3 -3
- package/dist/blocks/onboarding/vue/index.js +2 -2
- package/dist/blocks/orders/index.d.ts +57 -30
- package/dist/blocks/orders/index.js +26 -17
- package/dist/blocks/organizations/index.d.ts +5 -5
- package/dist/blocks/organizations/index.js +5 -27
- package/dist/blocks/organizations/react/index.d.ts +40 -21
- package/dist/blocks/organizations/react/index.js +5 -5
- package/dist/blocks/organizations/react/server.d.ts +13 -4
- package/dist/blocks/organizations/react/server.js +12 -3
- package/dist/blocks/organizations/solid/index.d.ts +3 -3
- package/dist/blocks/organizations/solid/index.js +2 -2
- package/dist/blocks/organizations/svelte/index.d.ts +3 -3
- package/dist/blocks/organizations/svelte/index.js +2 -2
- package/dist/blocks/organizations/vue/index.d.ts +3 -3
- package/dist/blocks/organizations/vue/index.js +2 -2
- package/dist/blocks/outbox/index.d.ts +4 -4
- package/dist/blocks/outbox/index.js +20 -16
- package/dist/blocks/parties/index.d.ts +29 -20
- package/dist/blocks/parties/index.js +12 -9
- package/dist/blocks/pipelines/index.d.ts +26 -17
- package/dist/blocks/pipelines/index.js +11 -11
- package/dist/blocks/profiles/index.d.ts +23 -14
- package/dist/blocks/profiles/index.js +5 -5
- package/dist/blocks/promotions/index.d.ts +34 -16
- package/dist/blocks/promotions/index.js +12 -9
- package/dist/blocks/push/index.d.ts +43 -25
- package/dist/blocks/push/index.js +16 -16
- package/dist/blocks/quotes/index.d.ts +15 -12
- package/dist/blocks/quotes/index.js +9 -9
- package/dist/blocks/rank/index.d.ts +12 -12
- package/dist/blocks/rank/index.js +3 -3
- package/dist/blocks/reactions/index.d.ts +4 -4
- package/dist/blocks/reactions/index.js +3 -3
- package/dist/blocks/reactions/react/index.d.ts +14 -4
- package/dist/blocks/reactions/react/index.js +9 -5
- package/dist/blocks/reactions/react/server.d.ts +4 -1
- package/dist/blocks/reactions/react/server.js +4 -1
- package/dist/blocks/reactions/solid/index.d.ts +3 -3
- package/dist/blocks/reactions/solid/index.js +2 -2
- package/dist/blocks/reactions/svelte/index.d.ts +3 -3
- package/dist/blocks/reactions/svelte/index.js +2 -2
- package/dist/blocks/reactions/vue/index.d.ts +3 -3
- package/dist/blocks/reactions/vue/index.js +2 -2
- package/dist/blocks/relations/index.d.ts +40 -23
- package/dist/blocks/relations/index.js +8 -9
- package/dist/blocks/reminders/index.d.ts +35 -26
- package/dist/blocks/reminders/index.js +20 -14
- package/dist/blocks/reviews/index.d.ts +32 -17
- package/dist/blocks/reviews/index.js +6 -6
- package/dist/blocks/rules/index.d.ts +26 -24
- package/dist/blocks/rules/index.js +10 -11
- package/dist/blocks/rules/react/index.d.ts +9 -5
- package/dist/blocks/rules/react/index.js +12 -8
- package/dist/blocks/rules/solid/index.d.ts +3 -3
- package/dist/blocks/rules/solid/index.js +2 -2
- package/dist/blocks/rules/svelte/index.d.ts +3 -3
- package/dist/blocks/rules/svelte/index.js +2 -2
- package/dist/blocks/rules/vue/index.d.ts +3 -3
- package/dist/blocks/rules/vue/index.js +2 -2
- package/dist/blocks/saved-views/index.d.ts +3 -3
- package/dist/blocks/saved-views/index.js +2 -2
- package/dist/blocks/saved-views/react/index.d.ts +14 -8
- package/dist/blocks/saved-views/react/index.js +11 -8
- package/dist/blocks/saved-views/react/server.d.ts +5 -2
- package/dist/blocks/saved-views/react/server.js +4 -1
- package/dist/blocks/saved-views/solid/index.d.ts +3 -3
- package/dist/blocks/saved-views/solid/index.js +2 -2
- package/dist/blocks/saved-views/svelte/index.d.ts +3 -3
- package/dist/blocks/saved-views/svelte/index.js +2 -2
- package/dist/blocks/saved-views/vue/index.d.ts +3 -3
- package/dist/blocks/saved-views/vue/index.js +2 -2
- package/dist/blocks/search/index.d.ts +12 -9
- package/dist/blocks/search/index.js +9 -9
- package/dist/blocks/search/react/index.d.ts +8 -5
- package/dist/blocks/search/react/index.js +6 -6
- package/dist/blocks/search/react/server.d.ts +5 -2
- package/dist/blocks/search/react/server.js +4 -1
- package/dist/blocks/search/solid/index.d.ts +3 -3
- package/dist/blocks/search/solid/index.js +2 -2
- package/dist/blocks/search/svelte/index.d.ts +3 -3
- package/dist/blocks/search/svelte/index.js +2 -2
- package/dist/blocks/search/vue/index.d.ts +3 -3
- package/dist/blocks/search/vue/index.js +2 -2
- package/dist/blocks/service-principals/index.d.ts +24 -18
- package/dist/blocks/service-principals/index.js +11 -8
- package/dist/blocks/sessions/index.d.ts +2 -2
- package/dist/blocks/sessions/index.js +1 -1
- package/dist/blocks/sessions/react/index.d.ts +10 -5
- package/dist/blocks/sessions/react/index.js +8 -6
- package/dist/blocks/sessions/react/server.d.ts +9 -3
- package/dist/blocks/sessions/react/server.js +8 -2
- package/dist/blocks/sessions/solid/index.d.ts +3 -3
- package/dist/blocks/sessions/solid/index.js +2 -2
- package/dist/blocks/sessions/svelte/index.d.ts +3 -3
- package/dist/blocks/sessions/svelte/index.js +2 -2
- package/dist/blocks/sessions/vue/index.d.ts +3 -3
- package/dist/blocks/sessions/vue/index.js +2 -2
- package/dist/blocks/settings/index.d.ts +6 -5
- package/dist/blocks/settings/index.js +6 -5
- package/dist/blocks/settings/react/index.d.ts +13 -7
- package/dist/blocks/settings/react/index.js +5 -5
- package/dist/blocks/settings/react/server.d.ts +5 -2
- package/dist/blocks/settings/react/server.js +4 -1
- package/dist/blocks/settings/solid/index.d.ts +3 -3
- package/dist/blocks/settings/solid/index.js +2 -2
- package/dist/blocks/settings/svelte/index.d.ts +3 -3
- package/dist/blocks/settings/svelte/index.js +2 -2
- package/dist/blocks/settings/vue/index.d.ts +3 -3
- package/dist/blocks/settings/vue/index.js +2 -2
- package/dist/blocks/share-links/index.d.ts +19 -13
- package/dist/blocks/share-links/index.js +4 -4
- package/dist/blocks/shared-signals/index.d.ts +82 -37
- package/dist/blocks/shared-signals/index.js +24 -18
- package/dist/blocks/signing-keys/index.d.ts +5 -5
- package/dist/blocks/signing-keys/index.js +15 -15
- package/dist/blocks/sla/index.d.ts +13 -13
- package/dist/blocks/sla/index.js +8 -8
- package/dist/blocks/sso/index.d.ts +35 -30
- package/dist/blocks/sso/index.js +31 -17
- package/dist/blocks/state-machine/index.d.ts +22 -13
- package/dist/blocks/state-machine/index.js +3 -3
- package/dist/blocks/tags/index.d.ts +3 -3
- package/dist/blocks/tags/index.js +3 -3
- package/dist/blocks/tags/react/index.d.ts +15 -7
- package/dist/blocks/tags/react/index.js +15 -10
- package/dist/blocks/tags/react/server.d.ts +1 -1
- package/dist/blocks/tags/solid/index.d.ts +3 -3
- package/dist/blocks/tags/solid/index.js +2 -2
- package/dist/blocks/tags/svelte/index.d.ts +3 -3
- package/dist/blocks/tags/svelte/index.js +2 -2
- package/dist/blocks/tags/vue/index.d.ts +3 -3
- package/dist/blocks/tags/vue/index.js +2 -2
- package/dist/blocks/targets/index.d.ts +13 -13
- package/dist/blocks/targets/index.js +7 -7
- package/dist/blocks/teams/index.d.ts +9 -9
- package/dist/blocks/teams/index.js +4 -4
- package/dist/blocks/templates/index.d.ts +67 -51
- package/dist/blocks/templates/index.js +22 -23
- package/dist/blocks/time-tracking/index.d.ts +32 -22
- package/dist/blocks/time-tracking/index.js +19 -16
- package/dist/blocks/trash/index.d.ts +13 -11
- package/dist/blocks/trash/index.js +5 -5
- package/dist/blocks/undo/index.d.ts +4 -4
- package/dist/blocks/undo/index.js +3 -3
- package/dist/blocks/undo/react/index.d.ts +3 -3
- package/dist/blocks/undo/react/index.js +4 -4
- package/dist/blocks/undo/react/server.d.ts +5 -2
- package/dist/blocks/undo/react/server.js +4 -1
- package/dist/blocks/undo/solid/index.d.ts +3 -3
- package/dist/blocks/undo/solid/index.js +2 -2
- package/dist/blocks/undo/svelte/index.d.ts +3 -3
- package/dist/blocks/undo/svelte/index.js +2 -2
- package/dist/blocks/undo/vue/index.d.ts +3 -3
- package/dist/blocks/undo/vue/index.js +2 -2
- package/dist/blocks/usage/index.d.ts +5 -5
- package/dist/blocks/usage/index.js +3 -3
- package/dist/blocks/usage/react/index.d.ts +12 -6
- package/dist/blocks/usage/react/index.js +8 -8
- package/dist/blocks/usage/react/server.d.ts +1 -1
- package/dist/blocks/usage/solid/index.d.ts +3 -3
- package/dist/blocks/usage/solid/index.js +2 -2
- package/dist/blocks/usage/svelte/index.d.ts +3 -3
- package/dist/blocks/usage/svelte/index.js +2 -2
- package/dist/blocks/usage/vue/index.d.ts +3 -3
- package/dist/blocks/usage/vue/index.js +2 -2
- package/dist/blocks/vercel-marketplace/index.d.ts +252 -17
- package/dist/blocks/vercel-marketplace/index.js +489 -56
- package/dist/blocks/versions/index.d.ts +24 -21
- package/dist/blocks/versions/index.js +14 -16
- package/dist/blocks/waitlist/index.d.ts +31 -18
- package/dist/blocks/waitlist/index.js +10 -7
- package/dist/blocks/webhooks/index.d.ts +126 -89
- package/dist/blocks/webhooks/index.js +71 -60
- package/dist/blocks/work-items/index.d.ts +18 -16
- package/dist/blocks/work-items/index.js +11 -12
- package/dist/blocks/workflow-builder/index.d.ts +15 -13
- package/dist/blocks/workflow-builder/index.js +10 -7
- package/dist/blocks/workflow-builder/react/index.d.ts +4 -4
- package/dist/blocks/workflow-builder/react/index.js +8 -8
- package/dist/blocks/workflow-builder/react/server.d.ts +8 -2
- package/dist/blocks/workflow-builder/react/server.js +8 -2
- package/dist/blocks/workflow-builder/solid/index.d.ts +3 -3
- package/dist/blocks/workflow-builder/solid/index.js +2 -2
- package/dist/blocks/workflow-builder/svelte/index.d.ts +3 -3
- package/dist/blocks/workflow-builder/svelte/index.js +2 -2
- package/dist/blocks/workflow-builder/vue/index.d.ts +3 -3
- package/dist/blocks/workflow-builder/vue/index.js +2 -2
- package/dist/blocks/workflows/index.d.ts +5 -5
- package/dist/blocks/workflows/index.js +4 -4
- package/dist/blocks/workflows/react/index.d.ts +13 -6
- package/dist/blocks/workflows/react/index.js +7 -7
- package/dist/blocks/workflows/react/server.d.ts +8 -2
- package/dist/blocks/workflows/react/server.js +8 -2
- package/dist/blocks/workflows/solid/index.d.ts +3 -3
- package/dist/blocks/workflows/solid/index.js +2 -2
- package/dist/blocks/workflows/svelte/index.d.ts +3 -3
- package/dist/blocks/workflows/svelte/index.js +2 -2
- package/dist/blocks/workflows/vue/index.d.ts +3 -3
- package/dist/blocks/workflows/vue/index.js +2 -2
- package/dist/blocks-CR3vCYhj.js +88 -0
- package/dist/bookings-DJflcGqs.js +184 -0
- package/dist/bucket-DBay-ICp.d.ts +667 -0
- package/dist/build-DxzJf79X.js +1839 -0
- package/dist/build-UqJeGtsH.js +703 -0
- package/dist/calendar-DvbYFkrh.js +801 -0
- package/dist/channel-BjvGO39m.d.ts +77 -0
- package/dist/channels-CfcFPuo_.js +114 -0
- package/dist/chat-sdk/index.d.ts +154 -78
- package/dist/chat-sdk/index.js +57 -39
- package/dist/chat-sdk/react/index.d.ts +2 -2
- package/dist/chat-sdk/react/server.d.ts +2 -2
- package/dist/claims-Bp9My7XP.js +88 -0
- package/dist/claims-T8TWZ53E.js +63 -0
- package/dist/cli/add-BRjL7LuG.js +1 -0
- package/dist/cli/add-Cf0uxfZ2.js +672 -0
- package/dist/cli/add-DPfdDRq7.js +75 -0
- package/dist/cli/adopt-B28iUeGg.js +1 -0
- package/dist/cli/adopt-C0VugVMu.js +421 -0
- package/dist/cli/agent-CbuPvI2x.js +185 -0
- package/dist/cli/apply-BlxtZPxe.js +329 -0
- package/dist/cli/bin.js +3 -3
- package/dist/cli/blocks-CHQ7K8Yz.js +1 -0
- package/dist/cli/blocks-D3tsq-mR.js +124 -0
- package/dist/cli/cache-DdgzhoaL.js +516 -0
- package/dist/cli/catalog-DwTUdJaQ.js +188 -0
- package/dist/cli/codemod-Dz4R-tVY.js +1127 -0
- package/dist/cli/command-33pu13LT.js +963 -0
- package/dist/cli/completion-6M6Hr8TL.js +211 -0
- package/dist/cli/completion-Bqu8yq0q.js +1 -0
- package/dist/cli/completion-Ddr3yqd3.js +30 -0
- package/dist/cli/config-2qlSTi2o.js +1503 -0
- package/dist/cli/config-B31tIvAl.js +42 -0
- package/dist/cli/config-DVksOjSr.js +1 -0
- package/dist/cli/config-edit-D46H0UHp.js +613 -0
- package/dist/cli/db-CQCLx7cx.js +78 -0
- package/dist/cli/db-D8iId4R8.js +473 -0
- package/dist/cli/design-edit-B2aBiarJ.js +205 -0
- package/dist/cli/detect-D9JaAX20.js +84 -0
- package/dist/cli/doctor-pIek4vIO.js +3897 -0
- package/dist/cli/emit-CJKf47Bi.js +1078 -0
- package/dist/cli/env-BrLZfqsL.js +143 -0
- package/dist/cli/env-C-Bl6Awn.js +1 -0
- package/dist/cli/env-DMgjB_4y.js +1114 -0
- package/dist/cli/env-cbCEa79W.js +1 -0
- package/dist/cli/errors-BTe6A15O.js +98 -0
- package/dist/cli/exec--Q1ZEWUW.js +463 -0
- package/dist/cli/files-C5JfVnj5.js +972 -0
- package/dist/cli/fresh-import-DzgsGHkX.js +40 -0
- package/dist/cli/gen-DquZzY5a.js +307 -0
- package/dist/cli/index.d.ts +239 -175
- package/dist/cli/index.js +16 -16
- package/dist/cli/init-Dd-UdrE0.js +397 -0
- package/dist/cli/introspect-IMQCji2l.js +51 -0
- package/dist/cli/io-DH1kcmmP.js +37 -0
- package/dist/cli/keys-iJs_1WT8.js +106 -0
- package/dist/cli/live-BfAO5YRX.js +344 -0
- package/dist/cli/mcp-D8Az0FNn.js +240 -0
- package/dist/cli/metadata-CTStQPfV.js +144 -0
- package/dist/cli/migration-safety-Dg1lxomi.js +305 -0
- package/dist/cli/module-migration-CbX-jRhV.js +606 -0
- package/dist/cli/moved-CdNtCf4t.js +161 -0
- package/dist/cli/parse-CRZLku1b.js +182 -0
- package/dist/cli/preset-DEvwDc7U.js +129 -0
- package/dist/cli/prompts-jqnr94b9.js +1140 -0
- package/dist/cli/redact-KGAk2Ul9.js +38 -0
- package/dist/cli/run-BXhJoghZ.js +1602 -0
- package/dist/cli/run-DdxNRTr0.js +63 -0
- package/dist/cli/run-dTu_PD4I.js +711 -0
- package/dist/cli/scaffold-Bx3bcy2R.js +901 -0
- package/dist/cli/scaffold-mbNAQE19.js +1 -0
- package/dist/cli/seed-CLseQdXQ.js +188 -0
- package/dist/cli/seed-DSHSUsYy.js +1 -0
- package/dist/cli/shared-CAdIkTR7.js +151 -0
- package/dist/cli/skills-Bz4INB8f.js +121 -0
- package/dist/cli/snapshot-GfdB9Cjl.js +350 -0
- package/dist/cli/source-args-Dy3j1-H-.js +59 -0
- package/dist/cli/spec-BfEK0_04.js +1 -0
- package/dist/cli/spec-DXTdodlO.js +7534 -0
- package/dist/cli/sql-BUhpAvrW.js +2 -0
- package/dist/cli/sql-CLbWk3Yb.js +332 -0
- package/dist/cli/stack-_F_JhllX.js +135 -0
- package/dist/cli/stack-env-6hS-WEmh.js +93 -0
- package/dist/cli/stack-status-B_Ipd_-z.js +46 -0
- package/dist/cli/stacks-BYlQ96WS.js +232 -0
- package/dist/cli/style-Bm2X5JrN.js +35 -0
- package/dist/cli/supabase-toml-CncmQbO0.js +1164 -0
- package/dist/cli/sync-BBzNO-v9.js +91 -0
- package/dist/cli/topics-BpdnYmWb.js +30 -0
- package/dist/cli/typegen-F9GEjpvD.js +502 -0
- package/dist/cli/validate-B3lF3-jB.js +7522 -0
- package/dist/cli/version-DiwcIKOL.js +4 -0
- package/dist/cli/write-DZKk5rSF.js +201 -0
- package/dist/client/index.d.ts +6 -6
- package/dist/client/index.js +16 -11
- package/dist/client/native/index.d.ts +87 -53
- package/dist/client/native/index.js +65 -43
- package/dist/client--tyFmxDT.js +52 -0
- package/dist/client-0qFNkNhT.js +1060 -0
- package/dist/client-2z1aHG57.d.ts +475 -0
- package/dist/client-5IVhjmtl.d.ts +74 -0
- package/dist/client-B3WBilR2.d.ts +69 -0
- package/dist/client-B4JPQgf-.d.ts +165 -0
- package/dist/client-BAYh7P2h.js +211 -0
- package/dist/client-BKGVUgo7.js +380 -0
- package/dist/client-BNaOcfeH.js +58 -0
- package/dist/client-BOuaQA0h.js +173 -0
- package/dist/client-BP-8vn9G.d.ts +37 -0
- package/dist/client-BU5Yd0yO.d.ts +103 -0
- package/dist/client-Bb_Pj9wL.js +137 -0
- package/dist/client-BkH-Vh3s.d.ts +112 -0
- package/dist/client-BsfsRHae.d.ts +136 -0
- package/dist/client-Bta7yl1C.d.ts +451 -0
- package/dist/client-BwKXlohx.js +121 -0
- package/dist/client-C1zOmnS8.js +89 -0
- package/dist/client-CMqO1gCn.d.ts +64 -0
- package/dist/client-CPirbPPi.js +85 -0
- package/dist/client-CQPB-VJx.d.ts +110 -0
- package/dist/client-CXbP_p02.d.ts +156 -0
- package/dist/client-C_S9avzV.d.ts +420 -0
- package/dist/client-Cb1g45Hc.js +99 -0
- package/dist/client-CebKlRU7.js +157 -0
- package/dist/client-Ch-dDfTB.js +437 -0
- package/dist/client-CuFD4o56.d.ts +111 -0
- package/dist/client-D2y_CfhU.d.ts +137 -0
- package/dist/client-DAcVF-YJ.js +134 -0
- package/dist/client-DCuE1rFm.js +441 -0
- package/dist/client-DD02cst6.d.ts +245 -0
- package/dist/client-DD3EcytK.js +65 -0
- package/dist/client-DEE57s9m.d.ts +132 -0
- package/dist/client-DScMvaty.js +38 -0
- package/dist/client-DVRFa59w.d.ts +309 -0
- package/dist/client-DXb1Nmr3.js +111 -0
- package/dist/client-DkI0oyR7.js +76 -0
- package/dist/client-DkQcRKhm.js +67 -0
- package/dist/client-DoXBX3vS.d.ts +116 -0
- package/dist/client-Dsuy9wfA.d.ts +59 -0
- package/dist/client-EQvEzUQg.d.ts +276 -0
- package/dist/client-G7NGXZKe.d.ts +43 -0
- package/dist/client-OhTiAol1.js +213 -0
- package/dist/client-Wt19DaEb.js +291 -0
- package/dist/client-Y-kaHabc.d.ts +46 -0
- package/dist/client-YASsOslj.js +321 -0
- package/dist/client-Y_HnZGF4.js +51 -0
- package/dist/client-_mL998Gl.js +129 -0
- package/dist/client-i_u1e0Kf.d.ts +144 -0
- package/dist/client-kRvHKAKS.js +60 -0
- package/dist/client-nieeGXdg.d.ts +178 -0
- package/dist/client-pxXoQOdC.js +40 -0
- package/dist/client-ysVOUgxM.d.ts +54 -0
- package/dist/clone-CkG0-hlI.js +33 -0
- package/dist/cloud-event-CidL9jiw.d.ts +64 -0
- package/dist/cloud-event-XsM53POL.js +63 -0
- package/dist/codecs-Du_zE1xu.js +358 -0
- package/dist/codecs-WHpM3Byy.d.ts +221 -0
- package/dist/codegen-DGtOsqz9.d.ts +1809 -0
- package/dist/comments-Ceqo9bwE.js +230 -0
- package/dist/commerce/index.d.ts +38 -33
- package/dist/commerce/index.js +38 -28
- package/dist/compiler-DCotQWcs.d.ts +14 -0
- package/dist/compose-VBQL7zIO.js +53 -0
- package/dist/composite-BgBzdYP-.d.ts +82 -0
- package/dist/composite-BgSdL5tk.js +130 -0
- package/dist/config/index.d.ts +6 -6
- package/dist/config/index.js +7 -7
- package/dist/config-V6HMvce5.js +3930 -0
- package/dist/config-xUf0dj0t.js +562 -0
- package/dist/connector-CKcTPJRV.d.ts +107 -0
- package/dist/connectors-CgWuPQks.d.ts +147 -0
- package/dist/context-CCz6ZgyI.js +19 -0
- package/dist/context-CMxVnPMY.js +9 -0
- package/dist/context-CrojkPNC.js +41 -0
- package/dist/context-DvBEhsXX.d.ts +403 -0
- package/dist/controller-BEliOBOv.js +79 -0
- package/dist/controller-lWRcKqCl.d.ts +52 -0
- package/dist/create/index.d.ts +296 -175
- package/dist/create/index.js +430 -297
- package/dist/create/lite/index.d.ts +19 -12
- package/dist/create/lite/index.js +10 -9
- package/dist/create/oauth/index.d.ts +2 -0
- package/dist/create/oauth/index.js +101 -0
- package/dist/create/supabase/index.d.ts +13 -34
- package/dist/create/supabase/index.js +16 -84
- package/dist/credentials/index.d.ts +12 -12
- package/dist/credentials/index.js +13 -13
- package/dist/cron-CI1kP-t5.js +148 -0
- package/dist/cron-route-BbVtwXZz.js +24 -0
- package/dist/csv-2rXGPNtP.js +89 -0
- package/dist/csv-DhHQS2x_.d.ts +28 -0
- package/dist/define-D0LSXmUP.d.ts +1117 -0
- package/dist/define-DwZ_LQVO.js +2011 -0
- package/dist/define-block-MyM4lH42.d.ts +281 -0
- package/dist/delegation-DeAJehLk.js +146 -0
- package/dist/delivery-Bm0jxmzI.js +29 -0
- package/dist/delivery-n6lZGuGx.d.ts +71 -0
- package/dist/documents-BijGGIjr.d.ts +99 -0
- package/dist/edge/index.d.ts +65 -38
- package/dist/edge/index.js +20 -17
- package/dist/elysia/index.d.ts +16 -14
- package/dist/elysia/index.js +11 -9
- package/dist/email-tt2QqiSc.d.ts +42 -0
- package/dist/embeddings-DRGIc8ti.js +128 -0
- package/dist/embeddings-Deusi99x.d.ts +78 -0
- package/dist/ended-D_Twxl8v.d.ts +76 -0
- package/dist/entitlements-CMGsO4gL.d.ts +54 -0
- package/dist/entitlements-_tw0V3BY.js +45 -0
- package/dist/env/index.d.ts +1 -1
- package/dist/env/index.js +16 -4
- package/dist/envelope-BDShQQ7-.js +90 -0
- package/dist/errors-Cq72lONT.js +44 -0
- package/dist/errors-D7u24ZJH.js +321 -0
- package/dist/escape-like-DuKupGUV.d.ts +15 -0
- package/dist/eve/index.d.ts +40 -22
- package/dist/eve/index.js +34 -25
- package/dist/eve-dWNqpd9Z.d.ts +157 -0
- package/dist/event-calendar-E6AI-dgg.d.ts +217 -0
- package/dist/event-map-CtPFhcOp.js +19 -0
- package/dist/events/index.d.ts +3 -3
- package/dist/events/index.js +10 -10
- package/dist/events-D6IZ5CE8.js +82 -0
- package/dist/events-DhGgwqQA.d.ts +842 -0
- package/dist/events-SqJLbb8q.js +24 -0
- package/dist/executor-C29668fO.d.ts +281 -0
- package/dist/executor-C5uyGttm.js +207 -0
- package/dist/executor-Cy1nk4MZ.d.ts +104 -0
- package/dist/executor-DK2F9Zis.js +746 -0
- package/dist/executor-DXfgDsKd.d.ts +37 -0
- package/dist/executor-D_viYkhf.d.ts +179 -0
- package/dist/executor-QtVn0axs.js +147 -0
- package/dist/expo/index.d.ts +37 -26
- package/dist/expo/index.js +17 -14
- package/dist/expo-sqlite/index.d.ts +20 -17
- package/dist/expo-sqlite/index.js +19 -13
- package/dist/field-errors-CKEqR38q.d.ts +119 -0
- package/dist/field-formats-BX2FqLle.d.ts +39 -0
- package/dist/field-formats-C6QKA3UR.js +102 -0
- package/dist/filter-evaluate-CRDXv0Dl.js +217 -0
- package/dist/filter-evaluate-CSWhzYWN.d.ts +37 -0
- package/dist/filter-query-C7qgRYYv.d.ts +133 -0
- package/dist/filter-query-D4ZSwbcJ.js +524 -0
- package/dist/flags-C--SBMT9.js +279 -0
- package/dist/flags-CJFDNAvL.d.ts +246 -0
- package/dist/flags-sdk/index.d.ts +13 -13
- package/dist/flags-sdk/index.js +18 -15
- package/dist/form-definition-BjeElHsB.js +311 -0
- package/dist/form-definition-DcVnFzl4.d.ts +95 -0
- package/dist/format-AYHceC2m.d.ts +79 -0
- package/dist/framework-BpEnOfAo.js +57 -0
- package/dist/framework-CMeAuJts.d.ts +41 -0
- package/dist/function-contract-4vfi93Y5.d.ts +27 -0
- package/dist/function-contract-pEmsaUIf.js +8 -0
- package/dist/gateway-Dar9C0uP.d.ts +115 -0
- package/dist/gateway-options-BlVCqgb8.d.ts +29 -0
- package/dist/gateway-options-Cl74B7k6.js +27 -0
- package/dist/graph-B4eubUQG.js +365 -0
- package/dist/h3/index.d.ts +19 -12
- package/dist/h3/index.js +15 -11
- package/dist/h3/v1/index.d.ts +34 -24
- package/dist/h3/v1/index.js +23 -19
- package/dist/hmac-B3CTTlfv.js +23 -0
- package/dist/hono/index.d.ts +54 -36
- package/dist/hono/index.js +18 -18
- package/dist/http-AkLjqOuB.js +28 -0
- package/dist/http-BjjojWg3.js +40 -0
- package/dist/http-DzbloBR-.js +141 -0
- package/dist/image-url-_d7xYsXK.js +84 -0
- package/dist/impersonation-DFfDVJHk.js +62 -0
- package/dist/impersonation-YTa9dZUv.d.ts +28 -0
- package/dist/inbox-CLsIrPXs.d.ts +417 -0
- package/dist/index-B5XcM3VY.d.ts +230 -0
- package/dist/index-B5dVVZtW.d.ts +142 -0
- package/dist/index-Brm8I8iZ.d.ts +232 -0
- package/dist/index-C7-2ZS9f.d.ts +127 -0
- package/dist/index-CE0p3st5.d.ts +227 -0
- package/dist/index-CcpGT2GI.d.ts +151 -0
- package/dist/index-CrAKHNJF.d.ts +287 -0
- package/dist/index-DLjs7j_z.d.ts +61 -0
- package/dist/index-DbyDZZlc.d.ts +53 -0
- package/dist/index-DdZcWH6q.d.ts +820 -0
- package/dist/index-Dh5ZFCtu.d.ts +61 -0
- package/dist/index-NRMMhhEi.d.ts +104 -0
- package/dist/index-PADpaDku.d.ts +447 -0
- package/dist/index-X2fkPUwb.d.ts +51 -0
- package/dist/index-eoAU_QaY.d.ts +357 -0
- package/dist/index.d.ts +34 -23
- package/dist/index.js +22 -18
- package/dist/invalidate-BLiBFbLy.d.ts +19 -0
- package/dist/iso4217-B-durg_y.js +176 -0
- package/dist/json-DaByVJpw.js +22 -0
- package/dist/json-schema-Bu4YCRbZ.js +551 -0
- package/dist/jwks-cache-DbgNmSgV.js +49 -0
- package/dist/jws-D0toeQlA.d.ts +66 -0
- package/dist/jws-DOgHJKHb.js +205 -0
- package/dist/kit-BeXTrlZn.js +127 -0
- package/dist/kit-LeQGMzLH.d.ts +94 -0
- package/dist/knowledge-Bx_qehoZ.js +272 -0
- package/dist/knowledge-CYdNJasZ.d.ts +202 -0
- package/dist/lint/index.d.ts +6 -6
- package/dist/lint/index.js +9 -6
- package/dist/list/index.d.ts +3 -3
- package/dist/list/index.js +3 -3
- package/dist/list-query-CuS1w2Af.js +559 -0
- package/dist/list-query-Dx5cAqG6.d.ts +223 -0
- package/dist/live-CZtRMh62.js +246 -0
- package/dist/management-wtecfrNf.d.ts +57 -0
- package/dist/mcp/index.d.ts +70 -42
- package/dist/mcp/index.js +53 -45
- package/dist/mcp/sdk/index.d.ts +37 -25
- package/dist/mcp/sdk/index.js +16 -13
- package/dist/message-Bg4TKA12.d.ts +99 -0
- package/dist/messages-Bd5-5ZjP.js +492 -0
- package/dist/metric-definition-EAYI1r2n.d.ts +69 -0
- package/dist/mfa-Dt8AdWht.d.ts +36 -0
- package/dist/model-Btl8X9cs.d.ts +326 -0
- package/dist/model-messages-BWyXXA4s.js +206 -0
- package/dist/model-messages-DrR4lZ_c.d.ts +34 -0
- package/dist/money-BNRdJQzA.d.ts +91 -0
- package/dist/money-BZl985O-.js +197 -0
- package/dist/money-codec-BdnIiFFX.js +41 -0
- package/dist/nestjs/index.d.ts +32 -17
- package/dist/nestjs/index.js +27 -18
- package/dist/next/client/index.d.ts +8 -7
- package/dist/next/client/index.js +8 -7
- package/dist/next/image/index.d.ts +8 -6
- package/dist/next/image/index.js +7 -5
- package/dist/next/index.d.ts +142 -110
- package/dist/next/index.js +57 -42
- package/dist/node/index.d.ts +3 -3
- package/dist/node/index.js +33 -23
- package/dist/node-headers-BPtMP4_V.d.ts +27 -0
- package/dist/nuxt/index.d.ts +7 -6
- package/dist/nuxt/index.js +7 -6
- package/dist/onboarding-DjXV4rgO.js +68 -0
- package/dist/openapi/index.d.ts +3 -3
- package/dist/openapi/index.js +10 -7
- package/dist/operations-Cc27HkTG.d.ts +6 -0
- package/dist/operations-DVHRHvv6.js +29 -0
- package/dist/optional-peer-C1NbBRJm.js +32 -0
- package/dist/options-CIf3xni7.d.ts +52 -0
- package/dist/organizations-R98kfFwF.js +401 -0
- package/dist/orpc/index.d.ts +50 -37
- package/dist/orpc/index.js +22 -18
- package/dist/otel/index.d.ts +19 -16
- package/dist/otel/index.js +22 -19
- package/dist/outbox-Bsk-HJnq.d.ts +199 -0
- package/dist/overlay/index.d.ts +71 -55
- package/dist/overlay/index.js +48 -41
- package/dist/payments-6uuergov.js +16 -0
- package/dist/pg-error-B5QLDcbG.js +26 -0
- package/dist/plugin-D9bYbYli.js +45 -0
- package/dist/plugin-DouW0Kvg.d.ts +203 -0
- package/dist/plugins/actor/index.d.ts +9 -6
- package/dist/plugins/actor/index.js +6 -6
- package/dist/plugins/rules/index.d.ts +15 -15
- package/dist/plugins/rules/index.js +12 -6
- package/dist/plugins/soft-delete/index.d.ts +7 -7
- package/dist/plugins/soft-delete/index.js +7 -7
- package/dist/plugins/tenant/index.d.ts +16 -11
- package/dist/plugins/tenant/index.js +8 -9
- package/dist/plugins/timestamps/index.d.ts +3 -3
- package/dist/plugins/timestamps/index.js +4 -4
- package/dist/plugins/validation/index.d.ts +4 -4
- package/dist/plugins/validation/index.js +4 -4
- package/dist/pool-Bu8zXGzI.d.ts +123 -0
- package/dist/pool-errors-DOZ3oDeS.js +27 -0
- package/dist/ports-BltcWsHf.d.ts +312 -0
- package/dist/ports-CM3aG3zn.js +137 -0
- package/dist/ports-n3ZWSS_I.d.ts +89 -0
- package/dist/postgres/index.d.ts +15 -15
- package/dist/postgres/index.js +14 -8
- package/dist/postgrest-DGjrW4sK.d.ts +53 -0
- package/dist/powersync/index.d.ts +12 -13
- package/dist/powersync/index.js +18 -19
- package/dist/powersync/react/index.d.ts +13 -12
- package/dist/powersync/react/index.js +15 -11
- package/dist/preset/index.d.ts +4 -4
- package/dist/preset/index.js +4 -4
- package/dist/preset-HNFqCWaD.js +838 -0
- package/dist/problem-D0KDiYPk.js +162 -0
- package/dist/problem-D_DEBfMn.d.ts +79 -0
- package/dist/provider-BhIkKBOh.js +57 -0
- package/dist/provider-Dmsbl8ug.d.ts +112 -0
- package/dist/push-token-8lvtOEv4.d.ts +24 -0
- package/dist/query/index.d.ts +3 -3
- package/dist/query/index.js +2 -2
- package/dist/query-DgPYlU82.js +311 -0
- package/dist/rank-result-C6vsw27N.js +18 -0
- package/dist/rank-result-DHflCNwo.d.ts +14 -0
- package/dist/rate-limit-B7N1ZGl6.d.ts +50 -0
- package/dist/rate-limit-CXpPm4_l.js +49 -0
- package/dist/rate-limit-CpTD_WHm.js +328 -0
- package/dist/ratelimit-headers-kEcXyO3H.js +62 -0
- package/dist/react/index.d.ts +11 -11
- package/dist/react/index.js +4 -4
- package/dist/react/native/index.d.ts +36 -21
- package/dist/react/native/index.js +32 -20
- package/dist/react/server.d.ts +50 -21
- package/dist/react/server.js +42 -13
- package/dist/react/session.d.ts +9 -7
- package/dist/react/session.js +7 -5
- package/dist/react-BKCnIuZs.js +79 -0
- package/dist/react-controller-CKSdtJ10.js +43 -0
- package/dist/react-env-CodKZgPk.js +16 -0
- package/dist/react-router/index.d.ts +30 -23
- package/dist/react-router/index.js +14 -13
- package/dist/react-uvu_KcVY.js +599 -0
- package/dist/read-set-DP6fm21F.js +316 -0
- package/dist/realtime/index.d.ts +7 -7
- package/dist/realtime/index.js +4 -4
- package/dist/realtime-status-BhNkb-Ow.d.ts +8 -0
- package/dist/realtime-status-asHvhiOh.js +11 -0
- package/dist/refusal-BEyNVFy7.d.ts +32 -0
- package/dist/refusal-Ce2p81VW.js +64 -0
- package/dist/resolve-D57oDWNr.d.ts +289 -0
- package/dist/resolve-sy3_Gz0i.js +892 -0
- package/dist/resource-BRRU-A7j.js +91 -0
- package/dist/resource-BVvIiuX_.js +469 -0
- package/dist/resource-DxQOPkZ5.d.ts +115 -0
- package/dist/resource-execute-BbjuiXwD.d.ts +15 -0
- package/dist/resource-schemas-up6bKOUi.js +82 -0
- package/dist/resource-types-NXau9LJE.d.ts +153 -0
- package/dist/resources-CIi7sw1T.js +64 -0
- package/dist/resources-CZ60Vqwq.d.ts +7 -0
- package/dist/respond-DjEmE_DN.js +100 -0
- package/dist/respond-QW-f1yio.d.ts +101 -0
- package/dist/result-DIT_qp4G.js +146 -0
- package/dist/result-mijqfoJN.d.ts +346 -0
- package/dist/rrule-CesB9Rxd.js +290 -0
- package/dist/rules-D75V7dAE.js +286 -0
- package/dist/run-watch-B-LoK5m1.js +53 -0
- package/dist/runtime-CoKxZibd.js +45 -0
- package/dist/sales-lines-9HsX89aO.d.ts +28 -0
- package/dist/sales-lines-DgXeOEar.js +41 -0
- package/dist/sales-shared-CjXsy0NJ.js +22 -0
- package/dist/search-9hoZ8rN1.js +106 -0
- package/dist/search-Cn_DGluL.js +9 -0
- package/dist/server/index.d.ts +153 -116
- package/dist/server/index.js +49 -40
- package/dist/server-types-D_cQ6OxZ.d.ts +809 -0
- package/dist/session-DNRYXIOU.d.ts +97 -0
- package/dist/settings-DzQtMwfl.js +93 -0
- package/dist/shared-Bf-I13Ht.js +91 -0
- package/dist/shared-C80IHf4B.js +60 -0
- package/dist/shared-CRRfQAKG.d.ts +11 -0
- package/dist/shared-D11SWNLx.js +17 -0
- package/dist/sign-in-B_QJ2u62.js +386 -0
- package/dist/sign-in-D54FLMQy.d.ts +55 -0
- package/dist/signatures-CzqfLlfV.d.ts +43 -0
- package/dist/signatures-D8IoN3Rw.js +145 -0
- package/dist/signers-BuVQKDfK.d.ts +390 -0
- package/dist/signing-keys-i2Rsll6L.d.ts +119 -0
- package/dist/solid/index.d.ts +50 -23
- package/dist/solid/index.js +35 -14
- package/dist/solid-controller-7TxGaJNy.js +33 -0
- package/dist/solid-controller-BnF3ovwV.d.ts +11 -0
- package/dist/solid-start/index.d.ts +22 -18
- package/dist/solid-start/index.js +9 -9
- package/dist/spec/index.d.ts +39 -25
- package/dist/spec/index.js +26 -21
- package/dist/spec-pins-CZ2CL8YZ.d.ts +120 -0
- package/dist/spec-pins-D3Tm6HJi.js +60 -0
- package/dist/sql/index.d.ts +5 -5
- package/dist/sql/index.js +5 -5
- package/dist/sql-CQIikLnQ.js +421 -0
- package/dist/sql-frpIs51D.js +89308 -0
- package/dist/sso-C86TPpZr.js +217 -0
- package/dist/sso-D_am-gBz.d.ts +161 -0
- package/dist/ssr/index.d.ts +4 -4
- package/dist/ssr/index.js +3 -3
- package/dist/standard-16AIDny5.d.ts +7 -0
- package/dist/standard-l10kE0yS.js +25 -0
- package/dist/stats-Bt1RyT-F.js +1147 -0
- package/dist/storage/index.d.ts +4 -4
- package/dist/storage/index.js +137 -73
- package/dist/store-DKqbuNvw.d.ts +83 -0
- package/dist/store-McN-2esd.js +69 -0
- package/dist/streams/index.d.ts +24 -18
- package/dist/streams/index.js +4 -4
- package/dist/streams/redis/index.d.ts +10 -7
- package/dist/streams/redis/index.js +9 -9
- package/dist/stripe/index.d.ts +5 -2
- package/dist/stripe/index.js +2 -2
- package/dist/stripe-BJUfp5jM.js +32 -0
- package/dist/stripe-BSEwKCni.d.ts +140 -0
- package/dist/subject-readers-BJzh7WF7.js +49 -0
- package/dist/subject-readers-Bbq1i0Ol.d.ts +21 -0
- package/dist/subjects-DQ2SU4cA.d.ts +77 -0
- package/dist/subscribers-BvZxcd63.js +33 -0
- package/dist/supabase-mcp-Dz9DgrKP.js +28 -0
- package/dist/supabase-mcp-Z4vtsuoO.d.ts +46 -0
- package/dist/support-CWVTM2AB.js +534 -0
- package/dist/support-view-BOJJSZKv.d.ts +17 -0
- package/dist/svelte/index.d.ts +32 -14
- package/dist/svelte/index.js +22 -10
- package/dist/svelte-controller-BmRhHvFz.js +50 -0
- package/dist/svelte-controller-DXO7gsmS.d.ts +13 -0
- package/dist/sveltekit/index.d.ts +45 -33
- package/dist/sveltekit/index.js +18 -17
- package/dist/table-schema-xqSXrjCN.js +284 -0
- package/dist/tags-C_ym1yDM.js +39 -0
- package/dist/tags-Co-QIHeK.js +84 -0
- package/dist/tags-tbiuHHMV.d.ts +30 -0
- package/dist/tanstack-db/index.d.ts +17 -11
- package/dist/tanstack-db/index.js +6 -6
- package/dist/tanstack-db/supabase/index.d.ts +24 -9
- package/dist/tanstack-db/supabase/index.js +6 -3
- package/dist/tanstack-start/index.d.ts +40 -29
- package/dist/tanstack-start/index.js +33 -19
- package/dist/tax-BHSCb5Rw.d.ts +280 -0
- package/dist/tax-keSd-q_1.js +140 -0
- package/dist/tee-1fsH3bEz.js +101 -0
- package/dist/template-DXsGm_R0.js +126 -0
- package/dist/temporal-DLZlWbOi.js +85 -0
- package/dist/temporal-required-Dt4mcPsi.js +20 -0
- package/dist/tenant-DnMqeNIM.js +27 -0
- package/dist/tenant-l3H2ouv7.d.ts +17 -0
- package/dist/testing/index.d.ts +483 -267
- package/dist/testing/index.js +333 -196
- package/dist/timing-C5NzaEgy.js +95 -0
- package/dist/topic-CZvLXFND.d.ts +415 -0
- package/dist/topic-Cr01EHZy.js +643 -0
- package/dist/ttl-cache-Bhr9swjT.js +32 -0
- package/dist/types-BTK75521.js +8 -0
- package/dist/types-Bzm0OgJk.d.ts +177 -0
- package/dist/types-CB5MvzuE.d.ts +624 -0
- package/dist/types-DYXhFhmQ.d.ts +251 -0
- package/dist/types-DmshMaXz.d.ts +421 -0
- package/dist/types-EUrisY2U.d.ts +217 -0
- package/dist/types-vVsLvOUJ.d.ts +700 -0
- package/dist/undo-CClrTbm9.d.ts +46 -0
- package/dist/undo-HHonvNeg.js +44 -0
- package/dist/upload-claim-DCuklVyh.js +33 -0
- package/dist/usage-BFwuH7GK.d.ts +232 -0
- package/dist/usage-CJmmCGzd.js +264 -0
- package/dist/user-change-CSR_prhd.js +133 -0
- package/dist/variants-Bat9zU8l.js +53 -0
- package/dist/vault-BQThkbws.d.ts +62 -0
- package/dist/vercel-connect/index.d.ts +3 -3
- package/dist/vercel-connect/index.js +8 -8
- package/dist/verify-BCmBaHlN.js +130 -0
- package/dist/verify-BTAEsJbF.d.ts +146 -0
- package/dist/view-CKzCp8FW.d.ts +90 -0
- package/dist/view-CfUd5vI9.js +108 -0
- package/dist/vue/index.d.ts +51 -27
- package/dist/vue/index.js +41 -20
- package/dist/vue-controller-DCOtUOA_.d.ts +11 -0
- package/dist/vue-controller-EzyTjqca.js +32 -0
- package/dist/watch-CYeMXFtj.d.ts +92 -0
- package/dist/watch-Cnd6XDnU.js +139 -0
- package/dist/watch-topic-CloXeDTO.d.ts +31 -0
- package/dist/watch-topic-CuaWfCuv.js +57 -0
- package/dist/wire-BJhepFbv.js +66 -0
- package/dist/workflow-builder-DzZNlI45.js +699 -0
- package/dist/workflow-sdk/builder/index.d.ts +51 -37
- package/dist/workflow-sdk/builder/index.js +30 -24
- package/dist/workflow-sdk/index.d.ts +24 -15
- package/dist/workflow-sdk/index.js +9 -6
- package/dist/workflow-sdk/world/index.d.ts +56 -24
- package/dist/workflow-sdk/world/index.js +47 -24
- package/dist/workflow-sdk-BXwl1THQ.d.ts +163 -0
- package/dist/workflow-sdk-CPGiFE1B.js +242 -0
- package/dist/workflow-sdk-world-BOEsvWmx.js +2123 -0
- package/dist/workflows-BHyYAR6c.d.ts +258 -0
- package/dist/workflows-otOMN33L.js +285 -0
- package/dist/yjs/index.d.ts +14 -11
- package/dist/yjs/index.js +13 -13
- package/package.json +7 -3
- package/schemas/cli-commands-v1.json +18 -0
- package/schemas/config-v1.json +9 -1
- package/schemas/design-v1.json +345 -0
- package/schemas/doctor-report-v1.json +5 -1
- package/skills/better-supabase/SKILL.md +4 -4
- package/skills/better-supabase/references/frontend.md +3 -2
- package/skills/better-supabase/references/ui-recipes.md +242 -245
- package/skills/better-supabase-api/references/adapters.md +3 -6
- package/skills/better-supabase-api/references/expo.md +1 -0
- package/skills/better-supabase-testing/SKILL.md +2 -3
- package/dist/access-sql-CTJPHjCL.js +0 -201
- package/dist/actor-BAhb-d1S.d.ts +0 -104
- package/dist/actor-CAL8mMih.js +0 -151
- package/dist/adapter-CRNH2aX_.js +0 -2107
- package/dist/agents-CGP2AQge.d.ts +0 -111
- package/dist/ai-cache-BdeJKlrV.d.ts +0 -70
- package/dist/ai-cache-CLninP-F.js +0 -84
- package/dist/ai-chat-D-2MH1sU.d.ts +0 -608
- package/dist/ai-files-ChFDkMLN.js +0 -339
- package/dist/ai-tasks-ZvPnNudQ.d.ts +0 -157
- package/dist/announcements-BNxTW5HJ.js +0 -128
- package/dist/api-C43_FYDp.js +0 -680
- package/dist/api-DoWK3dTw.d.ts +0 -411
- package/dist/api-keys-AgDXbcql.d.ts +0 -205
- package/dist/api-keys-BSXwI2jF.js +0 -318
- package/dist/app-tables-BRjMcWhW.js +0 -819
- package/dist/app-tables-BrMBjyuq.d.ts +0 -35
- package/dist/approvals-CyX709B-.d.ts +0 -124
- package/dist/assistant-DZsHsYIx.d.ts +0 -148
- package/dist/attachments-CK8D8bIV.js +0 -270
- package/dist/attributes-D4mA7WhI.js +0 -38
- package/dist/audit-log-ovUlF4Mk.js +0 -786
- package/dist/auth-CdBKt0CS.js +0 -20
- package/dist/auth-link-BjFPqwLz.d.ts +0 -97
- package/dist/auth-link-DrDX9KOT.js +0 -114
- package/dist/auth-module-DbZv2WrR.js +0 -10
- package/dist/auth-reply-Daq72lY4.js +0 -31
- package/dist/authorization-ClWBcXJi.d.ts +0 -1456
- package/dist/authorization-hooks-WDQMKIsc.d.ts +0 -214
- package/dist/authorizer-B3yyCVUF.js +0 -126
- package/dist/authorizer-eiOjo-3l.d.ts +0 -73
- package/dist/base64-D4aqdnDR.js +0 -42
- package/dist/before-route-B98js9m_.js +0 -30
- package/dist/bind-Bfo40o63.d.ts +0 -70
- package/dist/block-env-CBd_SoL5.js +0 -29
- package/dist/block-env-Dxl7rsI0.d.ts +0 -10
- package/dist/block-events-DD9Q_NUz.js +0 -96
- package/dist/block-fields-Bv1hV855.js +0 -139
- package/dist/block-fields-DnaDbgZS.d.ts +0 -55
- package/dist/block-helpers-CjcQM1yA.d.ts +0 -37
- package/dist/block-helpers-DkVZNDrj.js +0 -264
- package/dist/block-hooks-C22vuIUd.js +0 -114
- package/dist/block-hooks-DcPJHztl.d.ts +0 -107
- package/dist/block-transport-DezJPPA0.d.ts +0 -70
- package/dist/block-transport-J7ZepTq2.js +0 -85
- package/dist/blocks-D2WQ63PI.js +0 -84
- package/dist/bookings-DQ7P888X.js +0 -181
- package/dist/bucket-BbePDVwc.d.ts +0 -598
- package/dist/build-C-D_vn0U.js +0 -694
- package/dist/build-CT6SPZkI.js +0 -1815
- package/dist/calendar-eqyuQAoy.js +0 -801
- package/dist/channel-D-LHCY11.d.ts +0 -78
- package/dist/channels-C-GCoNLd.js +0 -114
- package/dist/claims-0KZVT804.js +0 -61
- package/dist/claims-PqzCxaTD.js +0 -85
- package/dist/cli/add-BcOHumvq.js +0 -75
- package/dist/cli/add-DnAyR9w_.js +0 -1
- package/dist/cli/add-TT72pQk6.js +0 -651
- package/dist/cli/adopt-BuS-DC7_.js +0 -1
- package/dist/cli/adopt-mbB1bcIG.js +0 -412
- package/dist/cli/agent-CCrTYK3W.js +0 -176
- package/dist/cli/apply-CiBFOFGw.js +0 -326
- package/dist/cli/blocks-5-JGzwXX.js +0 -124
- package/dist/cli/blocks-DeLQOlUK.js +0 -1
- package/dist/cli/cache-DQwgb3rg.js +0 -507
- package/dist/cli/catalog-Cm6BtquM.js +0 -188
- package/dist/cli/codemod-BzAMX4el.js +0 -985
- package/dist/cli/command-dfdVhU_2.js +0 -891
- package/dist/cli/completion-4lLjtI49.js +0 -1
- package/dist/cli/completion-D4InNrxw.js +0 -30
- package/dist/cli/completion-zsp5s0zI.js +0 -205
- package/dist/cli/config-CCyweX7Y.js +0 -1
- package/dist/cli/config-DI6ielsx.js +0 -39
- package/dist/cli/config-edit-Ct1lXe8a.js +0 -603
- package/dist/cli/config-yZ55rsKZ.js +0 -1463
- package/dist/cli/db-DT1bGB02.js +0 -78
- package/dist/cli/db-TRymMyAW.js +0 -90
- package/dist/cli/design-edit-0U9iCTiS.js +0 -202
- package/dist/cli/detect-DQsVeBHg.js +0 -84
- package/dist/cli/doctor-DOfy6kjt.js +0 -3732
- package/dist/cli/emit-56LAG_Px.js +0 -1067
- package/dist/cli/env-B7TWPEt0.js +0 -1
- package/dist/cli/env-C8R7Nf0a.js +0 -1088
- package/dist/cli/env-Cmu99uKR.js +0 -1
- package/dist/cli/env-Dh5K5t2U.js +0 -143
- package/dist/cli/errors-Caiz_0so.js +0 -98
- package/dist/cli/files-DDvAwTko.js +0 -963
- package/dist/cli/fresh-import-BeYf9I3x.js +0 -40
- package/dist/cli/gen-D3sC5jDn.js +0 -304
- package/dist/cli/init-DNomoycJ.js +0 -394
- package/dist/cli/introspect-kYX06Q2g.js +0 -51
- package/dist/cli/io-BiPX-_J1.js +0 -37
- package/dist/cli/keys-B8dIJwwi.js +0 -106
- package/dist/cli/live-CkV3d3yp.js +0 -329
- package/dist/cli/mcp-DrxB2Wuw.js +0 -237
- package/dist/cli/metadata-BGkle6WM.js +0 -138
- package/dist/cli/migration-safety-DjVpz2D6.js +0 -206
- package/dist/cli/module-migration-CPhuiY8C.js +0 -592
- package/dist/cli/moved-BMQu1YNY.js +0 -152
- package/dist/cli/parse-QzDvMpXH.js +0 -170
- package/dist/cli/preset-CfIs24cc.js +0 -129
- package/dist/cli/prompts-Bvg_DBpe.js +0 -1137
- package/dist/cli/redact-PjNswZOs.js +0 -35
- package/dist/cli/run-Bck-p0MI.js +0 -63
- package/dist/cli/run-BhJKAanr.js +0 -1528
- package/dist/cli/run-DRZ10srj.js +0 -694
- package/dist/cli/scaffold-DoURlDEI.js +0 -898
- package/dist/cli/scaffold-mzy3OsN5.js +0 -1
- package/dist/cli/seed-C5q4UUIL.js +0 -1
- package/dist/cli/seed-CIdg6s7m.js +0 -114
- package/dist/cli/shared-DKLuA1Tp.js +0 -145
- package/dist/cli/skills-D3zwIlGA.js +0 -121
- package/dist/cli/snapshot-BBKFojqM.js +0 -347
- package/dist/cli/source-args-Cwo7zwvq.js +0 -53
- package/dist/cli/spec-DOgQUZwM.js +0 -1
- package/dist/cli/spec-DZeIP9ta.js +0 -7501
- package/dist/cli/sql-CL_Lbhwl.js +0 -2
- package/dist/cli/sql-DLOvvnBV.js +0 -326
- package/dist/cli/stack-env-_uWWNHWq.js +0 -87
- package/dist/cli/stack-status-_NUgd-g5.js +0 -496
- package/dist/cli/style-2JfIPVMQ.js +0 -29
- package/dist/cli/supabase-toml-BC5sNVKU.js +0 -1153
- package/dist/cli/sync-DBvknfOK.js +0 -88
- package/dist/cli/topics-BBE1-Vrg.js +0 -30
- package/dist/cli/typegen--TfvOPLh.js +0 -494
- package/dist/cli/validate-BfWNKvxy.js +0 -7522
- package/dist/cli/version-B7akdvDv.js +0 -4
- package/dist/cli/write-VZljwoTB.js +0 -198
- package/dist/client-B9CqzgPO.js +0 -75
- package/dist/client-BAOZuBhz.d.ts +0 -101
- package/dist/client-BDO6i2Oe.js +0 -128
- package/dist/client-BGnJ5WJi.js +0 -438
- package/dist/client-BJN0IMEp.d.ts +0 -34
- package/dist/client-BMcjLG0V.d.ts +0 -263
- package/dist/client-BN_fXOs7.d.ts +0 -39
- package/dist/client-BONsuFYf.d.ts +0 -100
- package/dist/client-BPn9XhAM.d.ts +0 -218
- package/dist/client-BfgwocyT.js +0 -155
- package/dist/client-BpS8a6Fm.js +0 -51
- package/dist/client-BtC-r4hE.d.ts +0 -52
- package/dist/client-BuneNd-C.d.ts +0 -419
- package/dist/client-BzCv4kKE.js +0 -65
- package/dist/client-C-2ajnhM.js +0 -89
- package/dist/client-C5mUEb2n.js +0 -55
- package/dist/client-CFKONrrU.js +0 -1051
- package/dist/client-CHR8IBNG.js +0 -318
- package/dist/client-CHwNV8Kz.d.ts +0 -455
- package/dist/client-CLQHsa-2.d.ts +0 -131
- package/dist/client-CMxxwT3N.d.ts +0 -122
- package/dist/client-CU7aNN_B.d.ts +0 -277
- package/dist/client-CYEdJKjk.d.ts +0 -157
- package/dist/client-CYhSGlCN.d.ts +0 -107
- package/dist/client-C_-NZRrg.js +0 -120
- package/dist/client-CcPxbHeT.js +0 -288
- package/dist/client-CosiUrUb.js +0 -98
- package/dist/client-D3gRTNSi.d.ts +0 -68
- package/dist/client-D7T7OLiw.js +0 -169
- package/dist/client-DB34f_7i.d.ts +0 -58
- package/dist/client-DCawyopp.d.ts +0 -65
- package/dist/client-DNq8xYb-.js +0 -52
- package/dist/client-Dqa4XyJ5.d.ts +0 -108
- package/dist/client-Dr5h2r9r.d.ts +0 -34
- package/dist/client-DrTqKgvy.d.ts +0 -155
- package/dist/client-DyfWYU8S.js +0 -84
- package/dist/client-Dz1jWDA2.js +0 -209
- package/dist/client-DzTtOVRR.js +0 -137
- package/dist/client-Ezlbskjq.js +0 -60
- package/dist/client-GCCRI9ge.d.ts +0 -135
- package/dist/client-P6v3h7vh.d.ts +0 -130
- package/dist/client-P8l8ncxV.d.ts +0 -103
- package/dist/client-UnM3e32l.js +0 -133
- package/dist/client-WgrPIHH-.js +0 -213
- package/dist/client-ZTtSV3l8.js +0 -40
- package/dist/client-arq4daO_.js +0 -104
- package/dist/client-ckXfdy1k.js +0 -38
- package/dist/client-eCDPjOMo.js +0 -438
- package/dist/client-iaFm0aVf.js +0 -67
- package/dist/client-kWg4OqIr.d.ts +0 -162
- package/dist/client-pxjbgOz6.js +0 -376
- package/dist/client-tvG258_1.d.ts +0 -59
- package/dist/client-wKmX-f3r.d.ts +0 -388
- package/dist/clone-dN9XOL1K.js +0 -29
- package/dist/cloud-event-CTh9Sr5w.js +0 -60
- package/dist/cloud-event-DXkNoI6v.d.ts +0 -64
- package/dist/codecs-D-rpDifG.js +0 -358
- package/dist/codecs-RwFNK8Jh.d.ts +0 -215
- package/dist/codegen-C64C0NZG.d.ts +0 -1665
- package/dist/comments-CV5O8q50.js +0 -230
- package/dist/compiler-D_Gjpw_O.d.ts +0 -14
- package/dist/compose-CP0ss-cQ.js +0 -53
- package/dist/composite-1kPAxXto.js +0 -130
- package/dist/composite-DzvBL5nb.d.ts +0 -67
- package/dist/config-DHhQmmuD.js +0 -3917
- package/dist/config-NQmw_wsk.js +0 -558
- package/dist/connector-D9NMNkv0.d.ts +0 -107
- package/dist/connectors-BwPNt-ZG.d.ts +0 -141
- package/dist/context-BiwgsycK.js +0 -41
- package/dist/context-Cv3KlxWY.d.ts +0 -377
- package/dist/context-D6ZMKc2L.js +0 -19
- package/dist/context-wDKxSl9x.js +0 -9
- package/dist/controller-BZhiIb-N.d.ts +0 -46
- package/dist/controller-D6NyNrlZ.js +0 -79
- package/dist/cron-BHdXZFsJ.js +0 -145
- package/dist/cron-route-mTvWhork.js +0 -24
- package/dist/csv-CVfXqaAu.js +0 -89
- package/dist/csv-D3eKxV1T.d.ts +0 -28
- package/dist/define-Bu1v781m.js +0 -1962
- package/dist/define-DYZnvAbs.d.ts +0 -1058
- package/dist/define-block-BHxLHLys.d.ts +0 -256
- package/dist/delegation-B7uNnz6z.js +0 -140
- package/dist/delivery-B1mKaOen.js +0 -30
- package/dist/delivery-BeHgwS3k.d.ts +0 -69
- package/dist/documents-CqtVr2fg.d.ts +0 -96
- package/dist/email-BcmbIWOX.d.ts +0 -42
- package/dist/embeddings-CKhygw4C.d.ts +0 -78
- package/dist/embeddings-CVeOoufZ.js +0 -128
- package/dist/ended-De6H52nX.d.ts +0 -70
- package/dist/entitlements-C8UvF1Rz.js +0 -45
- package/dist/entitlements-CtBGXb3B.d.ts +0 -53
- package/dist/envelope-C4Z55LKW.js +0 -90
- package/dist/errors-BV1SKTVs.js +0 -315
- package/dist/errors-D3BR8iUk.js +0 -44
- package/dist/escape-like-B339PlP-.d.ts +0 -15
- package/dist/eve-B6ru2Bt4.d.ts +0 -151
- package/dist/event-calendar-DJXXMJ3x.d.ts +0 -217
- package/dist/event-map-Dy2vKHai.js +0 -19
- package/dist/events-P3raDX2E.d.ts +0 -800
- package/dist/events-xbpHkcK9.js +0 -82
- package/dist/executor-BWgJNbGh.d.ts +0 -95
- package/dist/executor-BiB0wMBA.js +0 -735
- package/dist/executor-BnMC0lj3.d.ts +0 -272
- package/dist/executor-CvsNcQsa.d.ts +0 -174
- package/dist/executor-CxGQiQN_.js +0 -206
- package/dist/executor-D1hECPGG.d.ts +0 -39
- package/dist/executor-D3K3tycZ.js +0 -147
- package/dist/field-errors-Z-sgsdoN.d.ts +0 -113
- package/dist/field-formats-Cif5gr7c.js +0 -102
- package/dist/field-formats-DCvOQlOy.d.ts +0 -39
- package/dist/filter-evaluate-BJcaL3o1.d.ts +0 -34
- package/dist/filter-evaluate-C0ULNfS7.js +0 -214
- package/dist/filter-query-B3lhckKX.js +0 -518
- package/dist/filter-query-Bc_Qa8V_.d.ts +0 -121
- package/dist/flags-6KK6Vqkr.d.ts +0 -230
- package/dist/flags-aUR7Rod6.js +0 -279
- package/dist/form-definition-GVZTILhS.js +0 -311
- package/dist/form-definition-sagoefQr.d.ts +0 -95
- package/dist/format-CNwSjXUU.d.ts +0 -70
- package/dist/framework-BQhTsLX-.d.ts +0 -26
- package/dist/framework-C6PKBgme.js +0 -51
- package/dist/function-contract-DWqFl_QO.d.ts +0 -21
- package/dist/function-contract-DmkBg19r.js +0 -5
- package/dist/gateway-Bq_tWwxE.d.ts +0 -109
- package/dist/gateway-options-ClvvfuuU.d.ts +0 -29
- package/dist/gateway-options-DcLcWL5_.js +0 -27
- package/dist/graph-Cs28bOlK.js +0 -360
- package/dist/hmac-BgpThYQW.js +0 -23
- package/dist/http-C7trc6uN.js +0 -25
- package/dist/http-Cv4T29xh.js +0 -40
- package/dist/http-DdYadv-o.js +0 -126
- package/dist/image-url-pIVlO6R1.js +0 -41
- package/dist/impersonation-D5chOkrO.d.ts +0 -25
- package/dist/impersonation-DxU6yHJV.js +0 -62
- package/dist/inbox-Du5aPwKB.d.ts +0 -400
- package/dist/index-1Vsg-7YV.d.ts +0 -58
- package/dist/index-BJLPQr2s.d.ts +0 -377
- package/dist/index-BpFYMsi0.d.ts +0 -53
- package/dist/index-BpyBH5O2.d.ts +0 -227
- package/dist/index-C-_fs7EI.d.ts +0 -258
- package/dist/index-CXFf-c-j.d.ts +0 -131
- package/dist/index-Cm2-g_4H.d.ts +0 -722
- package/dist/index-CxmVzT-3.d.ts +0 -86
- package/dist/index-DTQSeHx2.d.ts +0 -97
- package/dist/index-Hc4tetmB.d.ts +0 -245
- package/dist/index-QWTq2o31.d.ts +0 -138
- package/dist/index-XcTBR4Gb.d.ts +0 -206
- package/dist/index-k-rrfG1g.d.ts +0 -202
- package/dist/index-wTnPJUhv.d.ts +0 -58
- package/dist/invalidate-BBqhpxyB.d.ts +0 -19
- package/dist/iso4217-A8ev-CNW.js +0 -176
- package/dist/json-CEnpTHlZ.js +0 -16
- package/dist/json-schema-CpYINXG8.js +0 -548
- package/dist/jwks-cache-C4rA69hD.js +0 -49
- package/dist/jws-35a8VhFV.d.ts +0 -60
- package/dist/jws-CwBB5QAT.js +0 -193
- package/dist/kit-De-EVRhw.d.ts +0 -66
- package/dist/kit-LTbHrWWD.js +0 -104
- package/dist/knowledge-B5zdpDD-.d.ts +0 -187
- package/dist/knowledge-BbdXOJvY.js +0 -272
- package/dist/list-query-CBXNfJt4.js +0 -549
- package/dist/list-query-aXr2WkGA.d.ts +0 -194
- package/dist/live-DwDreq1n.js +0 -239
- package/dist/management-D1gG89z2.d.ts +0 -53
- package/dist/message-B0fNJgq8.d.ts +0 -93
- package/dist/messages-D5nIfCCf.js +0 -493
- package/dist/metric-definition-95HFoW1V.d.ts +0 -70
- package/dist/mfa-YzkRjNad.d.ts +0 -30
- package/dist/model-lUafmeBQ.d.ts +0 -311
- package/dist/model-messages-CIdqdUtk.js +0 -206
- package/dist/model-messages-D4GZllOD.d.ts +0 -34
- package/dist/money-95Rff2vT.js +0 -185
- package/dist/money-DFpWzQvk.d.ts +0 -76
- package/dist/money-codec-C21MWw50.js +0 -41
- package/dist/node-headers-AO06VhqH.d.ts +0 -24
- package/dist/onboarding-Du6kCmhF.js +0 -68
- package/dist/operations-CsIfMED7.js +0 -29
- package/dist/operations-DQCWqkt3.d.ts +0 -6
- package/dist/optional-peer-Dx8TaYXw.js +0 -29
- package/dist/options-ZQzNKKBS.d.ts +0 -52
- package/dist/organizations-CO2qg44D.js +0 -398
- package/dist/outbox-B1hZ7PPY.d.ts +0 -181
- package/dist/payments-CzjCdIcz.js +0 -16
- package/dist/pg-error-BV_X8Isq.js +0 -26
- package/dist/plugin-D-95Q0w0.d.ts +0 -190
- package/dist/plugin-tfXW1-qO.js +0 -45
- package/dist/pool-cM3rpOQr.d.ts +0 -117
- package/dist/pool-errors-CGqvTQOC.js +0 -27
- package/dist/ports-BCDIbC_U.d.ts +0 -86
- package/dist/ports-P0A5wo_-.d.ts +0 -285
- package/dist/ports-aALjot-D.js +0 -137
- package/dist/postgrest-CjnO1hbr.d.ts +0 -53
- package/dist/preset-Cf0T9GRt.js +0 -691
- package/dist/problem-DCDIQiTA.d.ts +0 -76
- package/dist/problem-JRCohp1j.js +0 -159
- package/dist/provider-C-Ti38J6.js +0 -57
- package/dist/provider-DXgx5oSA.d.ts +0 -113
- package/dist/push-token-y1Gnz5bQ.d.ts +0 -24
- package/dist/query-Ctz-qKRx.js +0 -303
- package/dist/rank-result-BcYfDA0x.d.ts +0 -14
- package/dist/rank-result-DtQuIvob.js +0 -18
- package/dist/rate-limit-DVZ7qIzW.js +0 -49
- package/dist/rate-limit-I3AncmM8.js +0 -325
- package/dist/rate-limit-c6c1mB6R.d.ts +0 -41
- package/dist/ratelimit-headers-Bsxx0Tj2.js +0 -62
- package/dist/react-4ZqkP8da.js +0 -79
- package/dist/react-DzukE6Wp.js +0 -410
- package/dist/react-controller-Xn-IU44p.js +0 -40
- package/dist/react-env-Cc7Vf6eb.js +0 -13
- package/dist/read-set-DeesfeL_.js +0 -314
- package/dist/realtime-status-D2dw1hOE.js +0 -12
- package/dist/realtime-status-DcsO00Gw.d.ts +0 -8
- package/dist/refusal-C7geIBRl.d.ts +0 -18
- package/dist/refusal-CFpfmjcS.js +0 -61
- package/dist/resolve-AtncaPTU.js +0 -877
- package/dist/resolve-Ceft-18-.d.ts +0 -270
- package/dist/resource-Bdkqi8jo.js +0 -463
- package/dist/resource-DO4gbVi5.js +0 -91
- package/dist/resource-DYEtc-KN.d.ts +0 -106
- package/dist/resource-execute-Bxvgmx-n.d.ts +0 -12
- package/dist/resource-schemas-BJ518zFH.js +0 -79
- package/dist/resource-types-LW1i5-h3.d.ts +0 -141
- package/dist/resources-Ck7itNeX.js +0 -64
- package/dist/resources-D3_FAz_H.d.ts +0 -7
- package/dist/respond-BSL36dQp.d.ts +0 -93
- package/dist/respond-Bhp3G__q.js +0 -95
- package/dist/result-BREt7qOh.d.ts +0 -312
- package/dist/result-DIeYscA3.js +0 -134
- package/dist/rrule-Cw4x4Pf_.js +0 -290
- package/dist/rules-BiQgmZ_U.js +0 -287
- package/dist/run-watch-CQRdpy-f.js +0 -53
- package/dist/runtime-BOXURhEW.js +0 -45
- package/dist/sales-lines-C6gafAwg.d.ts +0 -28
- package/dist/sales-lines-CQ1iC6QM.js +0 -41
- package/dist/sales-shared-CDSytDEn.js +0 -22
- package/dist/search-BtoWY6n_.js +0 -9
- package/dist/search-ZP13UTT4.js +0 -106
- package/dist/server-types-fLdep4gb.d.ts +0 -757
- package/dist/session-DObioXpX.d.ts +0 -95
- package/dist/settings-BiHDFglz.js +0 -90
- package/dist/shared-BmMcMoW9.js +0 -89
- package/dist/shared-C9zvURqC.js +0 -14
- package/dist/shared-D5Djh43x.js +0 -60
- package/dist/shared-DDSjEGDR.d.ts +0 -11
- package/dist/sign-in-BCV5S2WZ.d.ts +0 -49
- package/dist/sign-in-z2BaBdps.js +0 -367
- package/dist/signatures-BXlDXV3D.d.ts +0 -43
- package/dist/signatures-CeIoAelK.js +0 -145
- package/dist/signers-BwKV-9S6.d.ts +0 -385
- package/dist/signing-keys-v2MRYkDF.d.ts +0 -105
- package/dist/solid-controller-CWotGxcG.d.ts +0 -11
- package/dist/solid-controller-DLsmrczT.js +0 -33
- package/dist/spec-pins-Dqpml2dZ.d.ts +0 -84
- package/dist/spec-pins-S4PymRxp.js +0 -60
- package/dist/sql-BPKRNutj.js +0 -422
- package/dist/sql-CT1Jnwp8.js +0 -88660
- package/dist/sso-BaU_6ePE.js +0 -217
- package/dist/sso-Bu0mVh0V.d.ts +0 -131
- package/dist/standard-B1BigegP.js +0 -25
- package/dist/standard-BcUQuUgu.d.ts +0 -7
- package/dist/stats-Di5VAsYU.js +0 -1128
- package/dist/store-B18bIvKc.d.ts +0 -68
- package/dist/store-BdH5ruDx.js +0 -66
- package/dist/stripe-NVcNOhHy.d.ts +0 -140
- package/dist/stripe-XZrSmDTf.js +0 -32
- package/dist/subject-readers-BUChuOxL.d.ts +0 -21
- package/dist/subject-readers-BpwUFJtp.js +0 -46
- package/dist/subjects-DP-fvFkk.d.ts +0 -77
- package/dist/subscribers-Cq--DL1E.js +0 -34
- package/dist/supabase-mcp-C6tMoEjn.d.ts +0 -43
- package/dist/supabase-mcp-DomZ-amK.js +0 -28
- package/dist/support-C2wPYwD7.js +0 -522
- package/dist/support-view-Bj_lZ8Wr.d.ts +0 -17
- package/dist/svelte-controller-CDAujo-_.js +0 -50
- package/dist/svelte-controller-sS4X66yL.d.ts +0 -10
- package/dist/table-schema-pQlER3jj.js +0 -283
- package/dist/tags-B99_U9Pp.js +0 -39
- package/dist/tags-BqgaxCnv.js +0 -84
- package/dist/tags-BrGopDVG.d.ts +0 -30
- package/dist/tax-DMWDUzKt.d.ts +0 -273
- package/dist/tax-wm9g2mD2.js +0 -140
- package/dist/tee-Cw-iJAWL.js +0 -101
- package/dist/template-Dw3dTmKe.js +0 -123
- package/dist/temporal-CB5Fpo5d.js +0 -79
- package/dist/temporal-required-nfZ87U-0.js +0 -20
- package/dist/tenant-B-fiItlJ.js +0 -27
- package/dist/tenant-DZMLVuyQ.d.ts +0 -17
- package/dist/timing-BMCWgpdZ.js +0 -92
- package/dist/topic-DAY_HOX2.d.ts +0 -387
- package/dist/topic-mee21pux.js +0 -629
- package/dist/ttl-Hr34gRu8.js +0 -12
- package/dist/ttl-cache-XzZ-Q2eX.js +0 -29
- package/dist/types-BA1eTvy4.d.ts +0 -162
- package/dist/types-BEEFkNFY.d.ts +0 -564
- package/dist/types-BRTSpOIh.js +0 -5
- package/dist/types-Bels39_u.d.ts +0 -649
- package/dist/types-BrpW5ixT.d.ts +0 -370
- package/dist/types-DOC7wnh6.d.ts +0 -249
- package/dist/types-D_2rClz-.d.ts +0 -205
- package/dist/undo-B5LgpGLy.js +0 -44
- package/dist/undo-BsdYRox7.d.ts +0 -43
- package/dist/upload-claim-BBFCZbBF.js +0 -33
- package/dist/usage-C504GF55.d.ts +0 -220
- package/dist/usage-DdqT13_X.js +0 -261
- package/dist/user-change-XzvgafU4.js +0 -130
- package/dist/vault-ClkzMGTP.d.ts +0 -50
- package/dist/verify-DU4p9-Ve.d.ts +0 -142
- package/dist/verify-DnU-uWU2.js +0 -126
- package/dist/version-DSWxci83.js +0 -4
- package/dist/view-CYX1wsgp.js +0 -105
- package/dist/view-KQhe6eNc.d.ts +0 -90
- package/dist/vue-controller-BUo1oove.d.ts +0 -11
- package/dist/vue-controller-C9tFzqAc.js +0 -32
- package/dist/watch-5btote1y.d.ts +0 -84
- package/dist/watch-BAuIzC2r.js +0 -139
- package/dist/watch-topic-C79ZW5-R.d.ts +0 -28
- package/dist/watch-topic-miuymrli.js +0 -57
- package/dist/wire-BCJxCtHS.js +0 -45
- package/dist/workflow-builder-CynLqc6H.js +0 -697
- package/dist/workflow-sdk-CWdCWj7M.d.ts +0 -161
- package/dist/workflow-sdk-QnnzIQRc.js +0 -243
- package/dist/workflow-sdk-world-QzcxaaCD.js +0 -2103
- package/dist/workflows-DQBCzrHC.d.ts +0 -243
- package/dist/workflows-H9qJge3f.js +0 -282
package/dist/testing/index.d.ts
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
|
-
import { B as TableKey, F as SchemaMeta, G as Update, N as Row, S as Insert, a as AnyModels, i as AnyFunctions } from "../types-
|
|
2
|
-
import { r as Executor } from "../executor-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import { a as
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
30
|
-
import {
|
|
31
|
-
import {
|
|
32
|
-
import {
|
|
33
|
-
import {
|
|
34
|
-
import {
|
|
1
|
+
import { B as TableKey, F as SchemaMeta, G as Update, N as Row, S as Insert, a as AnyModels, i as AnyFunctions } from "../types-DmshMaXz.js";
|
|
2
|
+
import { r as Executor } from "../executor-C29668fO.js";
|
|
3
|
+
import { o as EventHub } from "../events-DhGgwqQA.js";
|
|
4
|
+
import { m as RequestContext, n as AnyPlugin } from "../plugin-DouW0Kvg.js";
|
|
5
|
+
import { c as InlineJwks, t as BetterSupabaseEnv } from "../index-NRMMhhEi.js";
|
|
6
|
+
import { n as AuthResolver } from "../resolve-D57oDWNr.js";
|
|
7
|
+
import { a as CredentialSubject, i as CredentialRef, r as CredentialProvider } from "../provider-Dmsbl8ug.js";
|
|
8
|
+
import { n as SqlClient } from "../executor-DXfgDsKd.js";
|
|
9
|
+
import { a as BlockTransportMiddleware } from "../block-hooks-BadAniNI.js";
|
|
10
|
+
import { a as SessionActor, o as SessionDelegation } from "../actor-CoveJgya.js";
|
|
11
|
+
import { M as QueueBackend } from "../types-CB5MvzuE.js";
|
|
12
|
+
import { n as Embedder } from "../knowledge-CYdNJasZ.js";
|
|
13
|
+
import { a as AuthorizationProvider } from "../authorization-CB69cvnA.js";
|
|
14
|
+
import { o as StreamStore } from "../store-DKqbuNvw.js";
|
|
15
|
+
import { t as ApiModel } from "../model-Btl8X9cs.js";
|
|
16
|
+
import { l as VersionOf, t as AnyDocumentFormat } from "../format-AYHceC2m.js";
|
|
17
|
+
import { o as Authorizer } from "../authorizer-DFP3gHv8.js";
|
|
18
|
+
import { i as EventSink, t as CloudEvent } from "../cloud-event-CidL9jiw.js";
|
|
19
|
+
import { Lt as DbStats, Ut as CacheAdapter, o as Db, t as BetterSupabase } from "../define-D0LSXmUP.js";
|
|
20
|
+
import { n as Impersonator } from "../impersonation-YTa9dZUv.js";
|
|
21
|
+
import { i as AuthorizationHooks } from "../authorization-hooks-HXVZXxUk.js";
|
|
22
|
+
import { s as SqlClaims, t as BetterPostgres } from "../pool-Bu8zXGzI.js";
|
|
23
|
+
import { B as SupportSessionStore, a as ServerContext, c as ServerOptions } from "../server-types-D_cQ6OxZ.js";
|
|
24
|
+
import { r as GuardOptions } from "../respond-QW-f1yio.js";
|
|
25
|
+
import { n as Controller } from "../controller-lWRcKqCl.js";
|
|
26
|
+
import { i as AiTaskRun, o as AiTaskRunner, t as AiTask } from "../ai-tasks-DN-AV7qB.js";
|
|
27
|
+
import { r as WebhookInput } from "../signatures-CzqfLlfV.js";
|
|
28
|
+
import { n as Money } from "../money-BNRdJQzA.js";
|
|
29
|
+
import { a as Generator, c as GeneratorModel, s as GeneratorInput, x as ResolvedConfig } from "../codegen-DGtOsqz9.js";
|
|
30
|
+
import { t as NotificationChannel } from "../channel-BjvGO39m.js";
|
|
31
|
+
import { a as DeliveryTransport } from "../delivery-n6lZGuGx.js";
|
|
32
|
+
import { C as PaymentProvider, l as TaxProvider, r as TaxAddress, y as Payment } from "../tax-BHSCb5Rw.js";
|
|
33
|
+
import { B as WorkflowGraph, c as GraphCompiler, i as BuilderStarter, r as BuilderStartCall } from "../types-vVsLvOUJ.js";
|
|
34
|
+
import { O as IncomingDestination, f as WebhookSecretStore, o as WebhookSigner, v as WebhookTransport } from "../signers-BuVQKDfK.js";
|
|
35
|
+
import { t as EveDocumentBackend } from "../eve-dWNqpd9Z.js";
|
|
35
36
|
import { SupabaseClient } from "@supabase/supabase-js";
|
|
36
37
|
import { Message, StateAdapter } from "chat";
|
|
37
38
|
import { webcrypto } from "node:crypto";
|
|
@@ -51,35 +52,49 @@ interface TestJwtClaims {
|
|
|
51
52
|
export declare function signTestJwt(secret: string, claims: TestJwtClaims): Promise<string>;
|
|
52
53
|
/**
|
|
53
54
|
* Accepts `signTestJwt` tokens as users, for API servers tested against the
|
|
54
|
-
* local stack: `createServer(betterSupabase, { auth: { resolvers:
|
|
55
|
-
* Tokens that are not HS256-signed with `secret`
|
|
55
|
+
* local stack: `createServer(betterSupabase, { auth: { resolvers:
|
|
56
|
+
* [localAuth(secret)] } })`. Tokens that are not HS256-signed with `secret`
|
|
57
|
+
* fall through. Test-only.
|
|
56
58
|
*/
|
|
57
59
|
export declare function localAuth(secret: string): AuthResolver;
|
|
58
60
|
interface TestSigner {
|
|
59
|
-
/**
|
|
61
|
+
/**
|
|
62
|
+
* Public JWKS; pass as `jwks` to `resolveAuth` / `createServer({ auth: { jwks
|
|
63
|
+
* } })`.
|
|
64
|
+
*/
|
|
60
65
|
readonly jwks: InlineJwks;
|
|
61
66
|
sign(claims: TestJwtClaims): Promise<string>;
|
|
62
67
|
}
|
|
63
|
-
/**
|
|
68
|
+
/**
|
|
69
|
+
* A private ES256 JWK, as `better-supabase keys` writes to
|
|
70
|
+
* `supabase/signing_keys.json`.
|
|
71
|
+
*/
|
|
64
72
|
interface SigningJwk extends webcrypto.JsonWebKey {
|
|
65
73
|
readonly kid: string;
|
|
66
74
|
}
|
|
67
75
|
/**
|
|
68
|
-
* Signs an ES256 access token with a private JWK, the way the local stack
|
|
69
|
-
*
|
|
76
|
+
* Signs an ES256 access token with a private JWK, the way the local stack signs
|
|
77
|
+
* them once `signing_keys_path` is set. Test-only.
|
|
70
78
|
*/
|
|
71
79
|
export declare function signTestJwtWithKey(key: SigningJwk, claims: TestJwtClaims): Promise<string>;
|
|
72
|
-
/**
|
|
80
|
+
/**
|
|
81
|
+
* An in-memory ES256 key pair that signs tokens like Supabase Auth's asymmetric
|
|
82
|
+
* keys.
|
|
83
|
+
*/
|
|
73
84
|
export declare function createTestSigner(): Promise<TestSigner>;
|
|
74
85
|
//#endregion
|
|
75
86
|
//#region src/testing/local-key.d.ts
|
|
76
87
|
/**
|
|
77
88
|
* The key the local stack signs with: the first entry of the file
|
|
78
|
-
* `better-supabase keys` wrote. `path` defaults to
|
|
79
|
-
* then `signing_keys_path` from the nearest
|
|
89
|
+
* `better-supabase keys` wrote. `path` defaults to
|
|
90
|
+
* `$SUPABASE_SIGNING_KEYS_PATH`, then `signing_keys_path` from the nearest
|
|
91
|
+
* `supabase/config.toml`.
|
|
80
92
|
*/
|
|
81
93
|
export declare function localSigningKey(path?: string): Promise<SigningJwk>;
|
|
82
|
-
/**
|
|
94
|
+
/**
|
|
95
|
+
* Signs a token with the local stack's ES256 key (see `localSigningKey`).
|
|
96
|
+
* Test-only.
|
|
97
|
+
*/
|
|
83
98
|
export declare function signLocalJwt(claims: TestJwtClaims, path?: string): Promise<string>;
|
|
84
99
|
//#endregion
|
|
85
100
|
//#region src/testing/as-user.d.ts
|
|
@@ -91,27 +106,35 @@ interface LocalStack {
|
|
|
91
106
|
/** Defaults to `$SUPABASE_PUBLISHABLE_KEY`, then `$SUPABASE_ANON_KEY`. */
|
|
92
107
|
readonly publishableKey?: string;
|
|
93
108
|
/**
|
|
94
|
-
* `ES256` (default) signs with the key `better-supabase keys` wrote, as
|
|
95
|
-
*
|
|
96
|
-
*
|
|
109
|
+
* `ES256` (default) signs with the key `better-supabase keys` wrote, as the
|
|
110
|
+
* hosted project's asymmetric keys do. `HS256` signs with the shared JWT
|
|
111
|
+
* secret and only works against a local stack.
|
|
97
112
|
*/
|
|
98
113
|
readonly alg?: "ES256" | "HS256";
|
|
99
114
|
/** The private ES256 key. Defaults to the first key in `signingKeysPath`. */
|
|
100
115
|
readonly signingKey?: SigningJwk;
|
|
101
|
-
/**
|
|
116
|
+
/**
|
|
117
|
+
* Defaults to `$SUPABASE_SIGNING_KEYS_PATH`, then `signing_keys_path` in
|
|
118
|
+
* `supabase/config.toml`.
|
|
119
|
+
*/
|
|
102
120
|
readonly signingKeysPath?: string;
|
|
103
|
-
/**
|
|
121
|
+
/**
|
|
122
|
+
* For `alg: 'HS256'`. Defaults to `$SUPABASE_JWT_SECRET`, then the CLI
|
|
123
|
+
* default.
|
|
124
|
+
*/
|
|
104
125
|
readonly jwtSecret?: string;
|
|
105
|
-
/**
|
|
126
|
+
/**
|
|
127
|
+
* Service-role key for `expectTenantIsolation`; defaults to
|
|
128
|
+
* `$SUPABASE_SECRET_KEY`.
|
|
129
|
+
*/
|
|
106
130
|
readonly secretKey?: string;
|
|
107
131
|
/** Enables `sql`: the same user over direct Postgres. */
|
|
108
132
|
readonly postgres?: BetterPostgres;
|
|
109
133
|
/** `fetch` for the user's supabase-js client, e.g. `liteStack().fetch`. */
|
|
110
134
|
readonly fetch?: typeof fetch;
|
|
111
135
|
/**
|
|
112
|
-
*
|
|
113
|
-
*
|
|
114
|
-
* keep it.
|
|
136
|
+
* Supabase-js warns when its trace propagation option is on and the runtime
|
|
137
|
+
* has no OpenTelemetry. Test users switch it off; set `true` to keep it.
|
|
115
138
|
*/
|
|
116
139
|
readonly tracePropagation?: boolean;
|
|
117
140
|
}
|
|
@@ -123,7 +146,7 @@ interface TestUser<M extends AnyModels, F extends AnyFunctions, E> {
|
|
|
123
146
|
* that call a command or handler directly with `{ supabase, db, context }`.
|
|
124
147
|
*/
|
|
125
148
|
readonly context: RequestContext;
|
|
126
|
-
/**
|
|
149
|
+
/** Supabase-js signed in as the user (storage, realtime, functions). */
|
|
127
150
|
readonly supabase: SupabaseClient;
|
|
128
151
|
/** Repositories over PostgREST as the user; RLS applies. */
|
|
129
152
|
readonly db: Db<M, F, E, SupabaseClient>;
|
|
@@ -131,13 +154,16 @@ interface TestUser<M extends AnyModels, F extends AnyFunctions, E> {
|
|
|
131
154
|
readonly sql: Db<M, F, E, unknown> | undefined;
|
|
132
155
|
}
|
|
133
156
|
/**
|
|
134
|
-
* A test user against the local stack: a signed token and repositories that
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
*
|
|
157
|
+
* A test user against the local stack: a signed token and repositories that run
|
|
158
|
+
* as that user, for live RLS tests. The token is ES256-signed with the key from
|
|
159
|
+
* `better-supabase keys`; pass `{ alg: 'HS256' }` for a stack that still uses
|
|
160
|
+
* the shared JWT secret.
|
|
138
161
|
*
|
|
139
162
|
* ```ts
|
|
140
|
-
* const alice = await asUser(betterSupabase, {
|
|
163
|
+
* const alice = await asUser(betterSupabase, {
|
|
164
|
+
* sub: aliceId,
|
|
165
|
+
* tenant_id: acme,
|
|
166
|
+
* });
|
|
141
167
|
* expect(await alice.db.customers.count().orThrow()).toBe(3);
|
|
142
168
|
* ```
|
|
143
169
|
*/
|
|
@@ -146,14 +172,20 @@ export declare function asUser<M extends AnyModels, D, F extends AnyFunctions, E
|
|
|
146
172
|
//#region src/testing/lite.d.ts
|
|
147
173
|
interface LiteStackOptions {
|
|
148
174
|
/**
|
|
149
|
-
* `sqlite-postgres` (default) stores data in in-memory SQLite and
|
|
150
|
-
*
|
|
151
|
-
*
|
|
175
|
+
* `sqlite-postgres` (default) stores data in in-memory SQLite and translates
|
|
176
|
+
* your Postgres SQL, as `lite init` does. `pglite` runs real Postgres
|
|
177
|
+
* in-process, with `rpc()` and `DEFAULT auth.uid()`.
|
|
152
178
|
*/
|
|
153
179
|
readonly driver?: "sqlite-postgres" | "pglite";
|
|
154
|
-
/**
|
|
180
|
+
/**
|
|
181
|
+
* Migration SQL, applied in order before `schemas`. DDL only; put rows in
|
|
182
|
+
* `seed`.
|
|
183
|
+
*/
|
|
155
184
|
readonly migrations?: readonly string[];
|
|
156
|
-
/**
|
|
185
|
+
/**
|
|
186
|
+
* Declarative schema SQL (`supabase/schemas/*.sql`), applied after
|
|
187
|
+
* `migrations`.
|
|
188
|
+
*/
|
|
157
189
|
readonly schemas?: readonly string[];
|
|
158
190
|
/** Seed SQL, run after the schema as the database owner (RLS does not apply). */
|
|
159
191
|
readonly seed?: string | readonly string[];
|
|
@@ -166,26 +198,37 @@ interface LiteStack extends AsyncDisposable {
|
|
|
166
198
|
readonly publishableKey: string;
|
|
167
199
|
readonly secretKey: string;
|
|
168
200
|
readonly jwtSecret: string;
|
|
169
|
-
/**
|
|
201
|
+
/**
|
|
202
|
+
* Routes requests to the in-process Lite app. Pass it as `fetch` to
|
|
203
|
+
* `createServer`.
|
|
204
|
+
*/
|
|
170
205
|
readonly fetch: typeof globalThis.fetch;
|
|
171
|
-
/**
|
|
206
|
+
/**
|
|
207
|
+
* The settings `createServer(betterSupabase, { env, backend: "lite", fetch
|
|
208
|
+
* })` takes.
|
|
209
|
+
*/
|
|
172
210
|
readonly env: BetterSupabaseEnv;
|
|
173
|
-
/**
|
|
211
|
+
/** Supabase-js with the publishable key, as an anonymous caller. */
|
|
174
212
|
readonly supabase: SupabaseClient;
|
|
175
|
-
/**
|
|
213
|
+
/** Supabase-js with the secret key: bypasses RLS, for setup. */
|
|
176
214
|
readonly admin: SupabaseClient;
|
|
177
|
-
/**
|
|
215
|
+
/**
|
|
216
|
+
* A user with an HS256 token, as `asUser` signs it, whose clients route
|
|
217
|
+
* through `fetch`.
|
|
218
|
+
*/
|
|
178
219
|
asUser<M extends AnyModels, D, F extends AnyFunctions, E>(betterSupabase: BetterSupabase<M, D, F, E>, claims: TestJwtClaims): Promise<TestUser<M, F, E>>;
|
|
179
220
|
/** Closes the database. */
|
|
180
221
|
close(): Promise<void>;
|
|
181
222
|
}
|
|
182
223
|
/**
|
|
183
224
|
* Supabase Lite in this process, for tests without Docker: an in-memory
|
|
184
|
-
* database with your schema, Auth with fresh API keys, and supabase-js
|
|
185
|
-
*
|
|
225
|
+
* database with your schema, Auth with fresh API keys, and supabase-js clients
|
|
226
|
+
* whose requests go straight to Lite's `fetch` handler (no port).
|
|
186
227
|
*
|
|
187
228
|
* ```ts
|
|
188
|
-
* await using stack = await liteStack({
|
|
229
|
+
* await using stack = await liteStack({
|
|
230
|
+
* schemas: [await readFile("supabase/schemas/notes.sql", "utf8")],
|
|
231
|
+
* });
|
|
189
232
|
* const alice = await stack.asUser(betterSupabase, { sub: aliceId });
|
|
190
233
|
* expect(await alice.db.notes.count().orThrow()).toBe(1);
|
|
191
234
|
* ```
|
|
@@ -201,7 +244,10 @@ interface BudgetRequest {
|
|
|
201
244
|
interface BudgetResponse {
|
|
202
245
|
url(): string;
|
|
203
246
|
headers(): Record<string, string>;
|
|
204
|
-
/**
|
|
247
|
+
/**
|
|
248
|
+
* Never settles when the browser aborts the stream, so `requestfailed` ends
|
|
249
|
+
* the wait too.
|
|
250
|
+
*/
|
|
205
251
|
finished(): Promise<unknown>;
|
|
206
252
|
request(): BudgetRequest;
|
|
207
253
|
}
|
|
@@ -231,14 +277,14 @@ interface DbBudgetExpectation {
|
|
|
231
277
|
readonly timeoutMs?: number;
|
|
232
278
|
/**
|
|
233
279
|
* How long to keep listening once `during` resolves and no new response
|
|
234
|
-
* arrives, for renders it started that answer later (the dynamic render
|
|
235
|
-
*
|
|
280
|
+
* arrives, for renders it started that answer later (the dynamic render after
|
|
281
|
+
* an `instant()` lock releases). Defaults to 500 ms.
|
|
236
282
|
*/
|
|
237
283
|
readonly settleMs?: number;
|
|
238
284
|
/**
|
|
239
|
-
* When no document or RSC response carries `x-bs-request-id`, throw
|
|
240
|
-
*
|
|
241
|
-
*
|
|
285
|
+
* When no document or RSC response carries `x-bs-request-id`, throw (the
|
|
286
|
+
* default) or return `[]`. Cache-only navigations never hit the proxy, so
|
|
287
|
+
* they have no request id.
|
|
242
288
|
*/
|
|
243
289
|
readonly requireRequest?: boolean;
|
|
244
290
|
}
|
|
@@ -263,9 +309,9 @@ type ResponseDbStats = Pick<DbStats, "calls" | "waves" | "ms">;
|
|
|
263
309
|
*/
|
|
264
310
|
export declare function expectDbBudget(response: Response, expectation: ResponseBudgetExpectation): ResponseDbStats;
|
|
265
311
|
/**
|
|
266
|
-
* Measures every document and RSC navigation response during `during` and
|
|
267
|
-
*
|
|
268
|
-
*
|
|
312
|
+
* Measures every document and RSC navigation response during `during` and fails
|
|
313
|
+
* when one render makes more database calls or waves than allowed. Needs
|
|
314
|
+
* `createNext(betterSupabase, { debug })` and `bs.debugRoute()` in the app.
|
|
269
315
|
*/
|
|
270
316
|
export declare function expectDbBudget(page: BudgetPage, expectation: DbBudgetExpectation): Promise<readonly MeasuredRender[]>;
|
|
271
317
|
//#endregion
|
|
@@ -308,14 +354,17 @@ interface InstantExpectation {
|
|
|
308
354
|
/** Locators that must not exist while the lock holds. */
|
|
309
355
|
readonly absent?: readonly InstantLocator[];
|
|
310
356
|
/**
|
|
311
|
-
* Fails when one render of the navigation makes more database calls, or
|
|
312
|
-
*
|
|
313
|
-
*
|
|
357
|
+
* Fails when one render of the navigation makes more database calls, or when
|
|
358
|
+
* no render reached the proxy (a navigation the client cache served has
|
|
359
|
+
* nothing to measure: drop the budget for it).
|
|
314
360
|
*/
|
|
315
361
|
readonly maxCalls?: number;
|
|
316
362
|
/** Fails when one render of the navigation makes more sequential waves. */
|
|
317
363
|
readonly maxWaves?: number;
|
|
318
|
-
/**
|
|
364
|
+
/**
|
|
365
|
+
* How long to wait for the render that streams in after the lock releases.
|
|
366
|
+
* Defaults to 500 ms.
|
|
367
|
+
*/
|
|
319
368
|
readonly settleMs?: number;
|
|
320
369
|
/** Scopes the lock on a page that has not loaded yet. */
|
|
321
370
|
readonly baseURL?: string;
|
|
@@ -324,9 +373,9 @@ interface InstantExpectation {
|
|
|
324
373
|
}
|
|
325
374
|
/**
|
|
326
375
|
* Runs `during` inside `@next/playwright`'s `instant()`, checks what the
|
|
327
|
-
* prefetched UI shows while the lock holds, and with `maxCalls` or
|
|
328
|
-
*
|
|
329
|
-
*
|
|
376
|
+
* prefetched UI shows while the lock holds, and with `maxCalls` or `maxWaves`
|
|
377
|
+
* checks the navigation's database budget like `expectDbBudget`. Needs a `next
|
|
378
|
+
* build` with the testing API exposed.
|
|
330
379
|
*/
|
|
331
380
|
export declare function expectInstant(page: InstantPage, expectation: InstantExpectation): Promise<readonly MeasuredRender[]>;
|
|
332
381
|
//#endregion
|
|
@@ -338,27 +387,62 @@ type ExactSeed<M extends AnyModels, S> = { readonly [K in keyof S]: K extends ke
|
|
|
338
387
|
declare const SEED: unique symbol;
|
|
339
388
|
interface Seed<S> {
|
|
340
389
|
readonly [SEED]: true;
|
|
341
|
-
/**
|
|
390
|
+
/**
|
|
391
|
+
* The fixtures as given, so tests can reference
|
|
392
|
+
* `seed.rows.customers.acme.id`.
|
|
393
|
+
*/
|
|
342
394
|
readonly rows: S;
|
|
343
395
|
/** One `insert ... on conflict do nothing` per table, parents before children. */
|
|
344
396
|
statements(): string[];
|
|
345
397
|
sql(): string;
|
|
346
|
-
/**
|
|
398
|
+
/**
|
|
399
|
+
* Inserts the fixtures, e.g. in a test's `beforeAll`. Needs a service-role
|
|
400
|
+
* client.
|
|
401
|
+
*/
|
|
347
402
|
insert(sql: SqlClient): Promise<void>;
|
|
348
403
|
}
|
|
349
404
|
export declare function isSeed(value: unknown): value is Seed<unknown>;
|
|
350
405
|
/**
|
|
351
|
-
* Typed fixtures shared by `supabase/seeds` and your tests. Rows use app
|
|
352
|
-
*
|
|
406
|
+
* Typed fixtures shared by `supabase/seeds` and your tests. Rows use app casing
|
|
407
|
+
* and Insert types; `better-supabase seed` renders them to SQL.
|
|
353
408
|
*
|
|
354
409
|
* ```ts
|
|
355
410
|
* export const seed = defineSeed(betterSupabase, {
|
|
356
|
-
* organizations: { acme: { id: ACME, name:
|
|
357
|
-
* customers: { first: { organizationId: ACME, name:
|
|
411
|
+
* organizations: { acme: { id: ACME, name: "Acme" } },
|
|
412
|
+
* customers: { first: { organizationId: ACME, name: "First customer" } },
|
|
358
413
|
* });
|
|
359
414
|
* ```
|
|
360
415
|
*/
|
|
361
416
|
export declare function defineSeed<M extends AnyModels, D, F extends AnyFunctions, E, const S extends SeedFixtures<M>>(betterSupabase: BetterSupabase<M, D, F, E>, fixtures: S & ExactSeed<M, S>): Seed<S>;
|
|
417
|
+
/** The tenant a tenant seed fills. `slug` and `name` are set when known. */
|
|
418
|
+
interface TenantSeedTarget {
|
|
419
|
+
readonly id: string;
|
|
420
|
+
readonly slug?: string | undefined;
|
|
421
|
+
readonly name?: string | undefined;
|
|
422
|
+
}
|
|
423
|
+
declare const TENANT_SEED: unique symbol;
|
|
424
|
+
interface TenantSeed {
|
|
425
|
+
readonly [TENANT_SEED]: true;
|
|
426
|
+
/** One `insert ... on conflict do nothing` per table, parents before children. */
|
|
427
|
+
statements(tenant: TenantSeedTarget): string[];
|
|
428
|
+
/** Inserts the tenant's fixtures. Needs a service-role client. */
|
|
429
|
+
insert(sql: SqlClient, tenant: TenantSeedTarget): Promise<void>;
|
|
430
|
+
}
|
|
431
|
+
export declare function isTenantSeed(value: unknown): value is TenantSeed;
|
|
432
|
+
/**
|
|
433
|
+
* Fixtures for one tenant, built from its id. `better-supabase seed --tenant`
|
|
434
|
+
* applies them to existing tenants, and `seedTenantOnCreate` to each tenant
|
|
435
|
+
* created in development.
|
|
436
|
+
*
|
|
437
|
+
* ```ts
|
|
438
|
+
* export const seed = defineTenantSeed(betterSupabase, (tenant) => ({
|
|
439
|
+
* projects: {
|
|
440
|
+
* demo: { organizationId: tenant.id, name: "Demo project" },
|
|
441
|
+
* },
|
|
442
|
+
* }));
|
|
443
|
+
* ```
|
|
444
|
+
*/
|
|
445
|
+
export declare function defineTenantSeed<M extends AnyModels, D, F extends AnyFunctions, E, const S extends SeedFixtures<M>>(betterSupabase: BetterSupabase<M, D, F, E>, fixtures: (tenant: TenantSeedTarget) => S & ExactSeed<M, S>): TenantSeed;
|
|
362
446
|
//#endregion
|
|
363
447
|
//#region src/testing/scope.d.ts
|
|
364
448
|
/** What a `scopedSeed` builder receives for one test. */
|
|
@@ -374,7 +458,10 @@ type ScopedTenant<M extends AnyModels> = { readonly [K in TableKey<M>]: {
|
|
|
374
458
|
readonly row: (id: string) => Insert<M, K>;
|
|
375
459
|
}; }[TableKey<M>];
|
|
376
460
|
interface ScopedSeedOptions<M extends AnyModels> {
|
|
377
|
-
/**
|
|
461
|
+
/**
|
|
462
|
+
* The table and row for the tenant; leave it out when the tenant is only an
|
|
463
|
+
* id.
|
|
464
|
+
*/
|
|
378
465
|
readonly tenant?: ScopedTenant<M>;
|
|
379
466
|
/** Defaults to `$SUPABASE_URL` and `$SUPABASE_SECRET_KEY`. */
|
|
380
467
|
readonly stack?: LocalStack;
|
|
@@ -389,41 +476,72 @@ interface ScopedSeed<M extends AnyModels, S> {
|
|
|
389
476
|
[Symbol.asyncDispose](): Promise<void>;
|
|
390
477
|
}
|
|
391
478
|
/**
|
|
392
|
-
* Fresh rows for one test, so tests that run at the same time never share
|
|
393
|
-
*
|
|
394
|
-
*
|
|
395
|
-
*
|
|
396
|
-
*
|
|
479
|
+
* Fresh rows for one test, so tests that run at the same time never share data.
|
|
480
|
+
* It creates a new tenant id, inserts the fixtures that `build` returns through
|
|
481
|
+
* the service role (RLS and plugins don't apply), and hands back the inserted
|
|
482
|
+
* rows. Call `cleanup()` in `afterEach` (or `await using`) to delete them. A
|
|
483
|
+
* user from `asUser` then reads them over PostgREST like any other.
|
|
397
484
|
*
|
|
398
485
|
* ```ts
|
|
399
486
|
* const scope = await scopedSeed(
|
|
400
487
|
* betterSupabase,
|
|
401
488
|
* ({ tenant, id }) => ({
|
|
402
|
-
* customers: {
|
|
489
|
+
* customers: {
|
|
490
|
+
* first: { organizationId: tenant, name: `first-${id()}` },
|
|
491
|
+
* },
|
|
403
492
|
* }),
|
|
404
|
-
* {
|
|
493
|
+
* {
|
|
494
|
+
* tenant: {
|
|
495
|
+
* table: "organizations",
|
|
496
|
+
* row: (id) => ({ id, name: id, slug: id }),
|
|
497
|
+
* },
|
|
498
|
+
* },
|
|
405
499
|
* );
|
|
406
|
-
* const alice = await asUser(betterSupabase, {
|
|
500
|
+
* const alice = await asUser(betterSupabase, {
|
|
501
|
+
* sub: aliceId,
|
|
502
|
+
* tenant_id: scope.tenant,
|
|
503
|
+
* });
|
|
407
504
|
* expect(await alice.db.customers.count().orThrow()).toBe(1);
|
|
408
505
|
* await scope.cleanup();
|
|
409
506
|
* ```
|
|
410
507
|
*/
|
|
411
508
|
export declare function scopedSeed<M extends AnyModels, D, F extends AnyFunctions, E, const S extends SeedFixtures<M>>(betterSupabase: BetterSupabase<M, D, F, E>, build: (scope: Scope) => S & ExactSeed<M, S>, options?: ScopedSeedOptions<M>): Promise<ScopedSeed<M, S>>;
|
|
412
509
|
/**
|
|
413
|
-
* Runs `fn` as the user over direct Postgres inside one transaction and
|
|
414
|
-
*
|
|
510
|
+
* Runs `fn` as the user over direct Postgres inside one transaction and always
|
|
511
|
+
* rolls it back, so the test leaves no rows behind. `fn` gets the same
|
|
415
512
|
* repositories as `user.sql`. Only the `sql` path rolls back: `user.db` talks
|
|
416
513
|
* to PostgREST over HTTP and commits on its own.
|
|
417
514
|
*
|
|
418
515
|
* ```ts
|
|
419
516
|
* const alice = await asUser(betterSupabase, claims, { postgres });
|
|
420
517
|
* await withRollback(alice, async (db) => {
|
|
421
|
-
* await db.customers.create({ organizationId, name:
|
|
518
|
+
* await db.customers.create({ organizationId, name: "Temp" }).orThrow();
|
|
422
519
|
* expect(await db.customers.count().orThrow()).toBe(1);
|
|
423
520
|
* });
|
|
424
521
|
* ```
|
|
425
522
|
*/
|
|
426
523
|
export declare function withRollback<M extends AnyModels, F extends AnyFunctions, E, T>(user: TestUser<M, F, E>, fn: (db: Db<M, F, E, unknown>) => Promise<T>): Promise<T>;
|
|
524
|
+
/**
|
|
525
|
+
* Runs `fn` over direct Postgres as the user that `claims` describe, inside one
|
|
526
|
+
* transaction that always rolls back. The transaction sets `role` (from
|
|
527
|
+
* `claims.role`, else `authenticated`) and `request.jwt.claims`, so
|
|
528
|
+
* `auth.uid()`, `auth.jwt()` and RLS answer as they would for that user's
|
|
529
|
+
* request. Use it for raw SQL; `withRollback` gives repositories instead.
|
|
530
|
+
*
|
|
531
|
+
* ```ts
|
|
532
|
+
* await withClaims(
|
|
533
|
+
* postgres,
|
|
534
|
+
* { sub: aliceId, tenant_id: orgId },
|
|
535
|
+
* async (sql) => {
|
|
536
|
+
* const [row] = await sql.queryRaw<{ id: string }>(
|
|
537
|
+
* "select auth.uid() as id",
|
|
538
|
+
* );
|
|
539
|
+
* expect(row?.id).toBe(aliceId);
|
|
540
|
+
* },
|
|
541
|
+
* );
|
|
542
|
+
* ```
|
|
543
|
+
*/
|
|
544
|
+
export declare function withClaims<T>(postgres: BetterPostgres, claims: SqlClaims, fn: (sql: SqlClient) => Promise<T>): Promise<T>;
|
|
427
545
|
//#endregion
|
|
428
546
|
//#region src/testing/conformance.d.ts
|
|
429
547
|
interface ConformanceCheck {
|
|
@@ -436,7 +554,10 @@ interface ConformanceReport {
|
|
|
436
554
|
readonly subject: string;
|
|
437
555
|
readonly checks: readonly ConformanceCheck[];
|
|
438
556
|
}
|
|
439
|
-
/**
|
|
557
|
+
/**
|
|
558
|
+
* Thrown by a conformance kit when any check fails. Lists every failure, not
|
|
559
|
+
* just the first.
|
|
560
|
+
*/
|
|
440
561
|
export declare class ConformanceError extends Error {
|
|
441
562
|
readonly report: ConformanceReport;
|
|
442
563
|
constructor(report: ConformanceReport);
|
|
@@ -454,7 +575,8 @@ interface IsolationTenant {
|
|
|
454
575
|
interface IsolationTable<M extends AnyModels, K extends keyof M> {
|
|
455
576
|
/**
|
|
456
577
|
* A row owned by `tenant`. `n` is 0 for the row seeded through the service
|
|
457
|
-
* role and 1 for the other tenant's insert attempt: put it in unique
|
|
578
|
+
* role and 1 for the other tenant's insert attempt: put it in unique
|
|
579
|
+
* columns.
|
|
458
580
|
*/
|
|
459
581
|
readonly row: (tenant: IsolationTenant, n: 0 | 1) => Insert<M, K>;
|
|
460
582
|
/** A change the other tenant tries to make. It must differ from `row`. */
|
|
@@ -464,17 +586,23 @@ type IsolationTables<M extends AnyModels> = { readonly [K in TableKey<M>]?: Isol
|
|
|
464
586
|
interface TenantIsolationOptions<M extends AnyModels> {
|
|
465
587
|
readonly tenants: readonly [IsolationTenant, IsolationTenant];
|
|
466
588
|
readonly tables: IsolationTables<M>;
|
|
467
|
-
/**
|
|
589
|
+
/**
|
|
590
|
+
* Defaults to `$SUPABASE_URL`, `$SUPABASE_PUBLISHABLE_KEY` and
|
|
591
|
+
* `$SUPABASE_SECRET_KEY`.
|
|
592
|
+
*/
|
|
468
593
|
readonly stack?: LocalStack;
|
|
469
|
-
/**
|
|
594
|
+
/**
|
|
595
|
+
* Runs before any row is created, e.g. `() => seed.insert(sql)` for the
|
|
596
|
+
* tenants and their memberships.
|
|
597
|
+
*/
|
|
470
598
|
readonly seed?: () => Promise<void>;
|
|
471
599
|
}
|
|
472
600
|
/**
|
|
473
601
|
* Checks row-level security between two tenants against a running stack: for
|
|
474
602
|
* each table, a user of one tenant must not select, insert, update or delete
|
|
475
|
-
* the other tenant's rows. Runs without `betterSupabase`'s plugins, so the
|
|
476
|
-
* plugin can't hide a missing policy. Throws a `ConformanceError`
|
|
477
|
-
* table and command that leaks; removes every row it created.
|
|
603
|
+
* the other tenant's rows. Runs without `betterSupabase`'s plugins, so the
|
|
604
|
+
* `tenant()` plugin can't hide a missing policy. Throws a `ConformanceError`
|
|
605
|
+
* naming each table and command that leaks; removes every row it created.
|
|
478
606
|
*
|
|
479
607
|
* ```ts
|
|
480
608
|
* await expectTenantIsolation(betterSupabase, {
|
|
@@ -484,8 +612,11 @@ interface TenantIsolationOptions<M extends AnyModels> {
|
|
|
484
612
|
* ],
|
|
485
613
|
* tables: {
|
|
486
614
|
* tags: {
|
|
487
|
-
* row: (tenant, n) => ({
|
|
488
|
-
*
|
|
615
|
+
* row: (tenant, n) => ({
|
|
616
|
+
* organizationId: tenant.id,
|
|
617
|
+
* name: `iso-${n}`,
|
|
618
|
+
* }),
|
|
619
|
+
* update: { name: "changed" },
|
|
489
620
|
* },
|
|
490
621
|
* },
|
|
491
622
|
* });
|
|
@@ -495,10 +626,10 @@ export declare function expectTenantIsolation<M extends AnyModels, D, F extends
|
|
|
495
626
|
//#endregion
|
|
496
627
|
//#region src/testing/claims-fixtures.d.ts
|
|
497
628
|
/**
|
|
498
|
-
* Claims of a Supabase access token where someone acts for the user, with
|
|
499
|
-
*
|
|
500
|
-
*
|
|
501
|
-
*
|
|
629
|
+
* Claims of a Supabase access token where someone acts for the user, with what
|
|
630
|
+
* `toSession` reads from them: `actor`, `impersonator` and `delegation`. Plain
|
|
631
|
+
* data, so another library that reads the same `act` claim (RFC 8693) can test
|
|
632
|
+
* against the same fixtures.
|
|
502
633
|
*/
|
|
503
634
|
interface SupabaseClaimFixture {
|
|
504
635
|
/** Without `iat` and `exp`, so a test signer sets them. */
|
|
@@ -510,25 +641,28 @@ interface SupabaseClaimFixture {
|
|
|
510
641
|
readonly actor: SessionActor;
|
|
511
642
|
/** Set for support and impersonated sessions only. */
|
|
512
643
|
readonly impersonator?: Impersonator;
|
|
513
|
-
/**
|
|
644
|
+
/**
|
|
645
|
+
* Set for an `oauth-client` actor, and an `agent` on a token with a
|
|
646
|
+
* `scope`.
|
|
647
|
+
*/
|
|
514
648
|
readonly delegation?: SessionDelegation;
|
|
515
649
|
};
|
|
516
650
|
}
|
|
517
651
|
type SupabaseClaimFixtureName = "supportSession" | "supportSessionReadOnly" | "impersonation" | "oauthClient" | "agentChain" | "agentRun" | "agentRunReadOnly";
|
|
518
652
|
/**
|
|
519
|
-
* `supportSession` and `supportSessionReadOnly` are what `supportClaims`
|
|
520
|
-
*
|
|
521
|
-
*
|
|
522
|
-
*
|
|
523
|
-
*
|
|
524
|
-
* `
|
|
525
|
-
*
|
|
653
|
+
* `supportSession` and `supportSessionReadOnly` are what `supportClaims` mints
|
|
654
|
+
* (`act.kind: "support"`), `impersonation` what `actingAs` mints (`act.kind:
|
|
655
|
+
* "impersonation"`), `oauthClient` a Supabase OAuth server token (its identity
|
|
656
|
+
* scopes `openid` and `email` are left out of the delegation), `agentChain` an
|
|
657
|
+
* RFC 8693 chain without `kind`, and `agentRun` and `agentRunReadOnly` what
|
|
658
|
+
* `agentClaims` mints over that chain (`act.kind: "agent"`, with `readOnly:
|
|
659
|
+
* true` for the second).
|
|
526
660
|
*/
|
|
527
661
|
export declare const supabaseClaimFixtures: Readonly<Record<SupabaseClaimFixtureName, SupabaseClaimFixture>>;
|
|
528
662
|
/**
|
|
529
|
-
* Claims whose `act` chain better-supabase refuses, so the session must
|
|
530
|
-
*
|
|
531
|
-
*
|
|
663
|
+
* Claims whose `act` chain better-supabase refuses, so the session must not
|
|
664
|
+
* pass as the user alone. `resolveAuth` and `toSession` both answer with this
|
|
665
|
+
* verdict.
|
|
532
666
|
*/
|
|
533
667
|
interface SupabaseInvalidClaimFixture {
|
|
534
668
|
/** Without `iat` and `exp`, so a test signer sets them. */
|
|
@@ -544,20 +678,46 @@ interface SupabaseInvalidClaimFixture {
|
|
|
544
678
|
}
|
|
545
679
|
type SupabaseInvalidClaimFixtureName = "legacySupportSession" | "supportReadOnlyNotBoolean" | "agentWithSessionId" | "agentEmptyToolName" | "agentToolsNotArray" | "agentReadOnlyNotBoolean" | "unknownKind" | "levelWithoutSub";
|
|
546
680
|
/**
|
|
547
|
-
* `legacySupportSession` is a 0.5.0 support token: `session_id` without
|
|
548
|
-
*
|
|
549
|
-
*
|
|
550
|
-
*
|
|
551
|
-
*
|
|
552
|
-
*
|
|
681
|
+
* `legacySupportSession` is a 0.5.0 support token: `session_id` without `kind`.
|
|
682
|
+
* better-supabase refuses it instead of reading it as a support session; mint a
|
|
683
|
+
* new one with `supportClaims`. The others are malformed levels: a support or
|
|
684
|
+
* agent `read_only` that is not a boolean, an agent with a `session_id`, an
|
|
685
|
+
* empty tool name or `tools` that is not a list, a `kind` better-supabase does
|
|
686
|
+
* not know, and a nested level without `sub`.
|
|
553
687
|
*/
|
|
554
688
|
export declare const supabaseInvalidClaimFixtures: Readonly<Record<SupabaseInvalidClaimFixtureName, SupabaseInvalidClaimFixture>>;
|
|
555
689
|
//#endregion
|
|
690
|
+
//#region src/testing/tenant-seed.d.ts
|
|
691
|
+
interface SeedTenantOnCreateOptions {
|
|
692
|
+
/** A service-role client the seed inserts through. */
|
|
693
|
+
readonly sql: SqlClient;
|
|
694
|
+
/** Defaults to `NODE_ENV === 'development'`. */
|
|
695
|
+
readonly enabled?: boolean;
|
|
696
|
+
/** Called when the seed fails. Defaults to `console.error`. */
|
|
697
|
+
readonly onError?: (error: unknown, organizationId: string) => void;
|
|
698
|
+
}
|
|
699
|
+
/**
|
|
700
|
+
* Applies `seed` to each organization created through the organizations block,
|
|
701
|
+
* so a new tenant starts with demo data in development. The seed runs after the
|
|
702
|
+
* event and can never change the result of the create call. Returns a function
|
|
703
|
+
* that stops listening.
|
|
704
|
+
*
|
|
705
|
+
* ```ts
|
|
706
|
+
* seedTenantOnCreate(betterSupabase, tenantSeed, { sql: serviceSql });
|
|
707
|
+
* ```
|
|
708
|
+
*/
|
|
709
|
+
export declare function seedTenantOnCreate(betterSupabase: {
|
|
710
|
+
readonly events: EventHub;
|
|
711
|
+
}, seed: TenantSeed, options: SeedTenantOnCreateOptions): () => void;
|
|
712
|
+
//#endregion
|
|
556
713
|
//#region src/testing/kits/auth-resolver.d.ts
|
|
557
714
|
interface TestAuthResolverOptions {
|
|
558
715
|
/** Requests with credentials this resolver owns but that must not verify. */
|
|
559
716
|
readonly invalid: readonly Request[];
|
|
560
|
-
/**
|
|
717
|
+
/**
|
|
718
|
+
* Requests that must resolve to a user or service, optionally with the
|
|
719
|
+
* expected user id.
|
|
720
|
+
*/
|
|
561
721
|
readonly valid?: readonly {
|
|
562
722
|
readonly request: Request;
|
|
563
723
|
readonly userId?: string;
|
|
@@ -582,30 +742,50 @@ export declare function testCacheAdapter(adapter: CacheAdapter, options?: {
|
|
|
582
742
|
//#endregion
|
|
583
743
|
//#region src/testing/kits/event-sink.d.ts
|
|
584
744
|
interface TestEventSinkOptions {
|
|
585
|
-
/**
|
|
745
|
+
/**
|
|
746
|
+
* Events the sink delivered, for sinks that can be read back (an outbox, a
|
|
747
|
+
* test queue).
|
|
748
|
+
*/
|
|
586
749
|
readonly received?: () => readonly CloudEvent[] | Promise<readonly CloudEvent[]>;
|
|
587
750
|
}
|
|
588
|
-
/**
|
|
751
|
+
/**
|
|
752
|
+
* Proves an `EventSink` accepts empty and full batches without mutating them,
|
|
753
|
+
* and delivers them when readable.
|
|
754
|
+
*/
|
|
589
755
|
export declare function testEventSink(sink: EventSink, options?: TestEventSinkOptions): Promise<ConformanceReport>;
|
|
590
756
|
//#endregion
|
|
591
757
|
//#region src/testing/kits/executor.d.ts
|
|
592
758
|
type AnySupabase$1 = BetterSupabase<any, any, any, any>;
|
|
593
759
|
interface TestExecutorOptions {
|
|
594
|
-
/**
|
|
760
|
+
/**
|
|
761
|
+
* A definition whose schema matches the executor's database. Install no
|
|
762
|
+
* plugins.
|
|
763
|
+
*/
|
|
595
764
|
readonly betterSupabase: AnySupabase$1;
|
|
596
|
-
/**
|
|
765
|
+
/**
|
|
766
|
+
* App key of a table with rows the executor can read. Defaults to the first
|
|
767
|
+
* table.
|
|
768
|
+
*/
|
|
597
769
|
readonly table?: string;
|
|
598
|
-
/**
|
|
770
|
+
/**
|
|
771
|
+
* A row to insert and delete again, to check writes. Skips write checks when
|
|
772
|
+
* omitted.
|
|
773
|
+
*/
|
|
599
774
|
readonly create?: Readonly<Record<string, unknown>>;
|
|
600
775
|
}
|
|
601
776
|
/**
|
|
602
777
|
* Proves an `Executor` meets the contract: rows keyed by the selection's
|
|
603
|
-
* aliases, counts, `aborted` errors, failures returned as `Result`s rather
|
|
604
|
-
*
|
|
605
|
-
*
|
|
778
|
+
* aliases, counts, `aborted` errors, failures returned as `Result`s rather than
|
|
779
|
+
* thrown, and (with `create`) a write round trip and a `deleteMany` that
|
|
780
|
+
* `maxAffected` refuses without deleting anything.
|
|
606
781
|
*
|
|
607
782
|
* ```ts
|
|
608
|
-
* it(
|
|
783
|
+
* it("conforms", () =>
|
|
784
|
+
* testExecutor(myExecutor, {
|
|
785
|
+
* betterSupabase,
|
|
786
|
+
* table: "tags",
|
|
787
|
+
* create: { name: "x" },
|
|
788
|
+
* }));
|
|
609
789
|
* ```
|
|
610
790
|
*/
|
|
611
791
|
export declare function testExecutor(executor: Executor, options: TestExecutorOptions): Promise<ConformanceReport>;
|
|
@@ -615,15 +795,15 @@ interface TestPaymentProviderOptions {
|
|
|
615
795
|
/** What the kit charges. Defaults to 10.00 EUR. */
|
|
616
796
|
readonly amount?: Money;
|
|
617
797
|
/**
|
|
618
|
-
* Has the customer approve a `manual` payment, so it reaches
|
|
619
|
-
*
|
|
620
|
-
*
|
|
798
|
+
* Has the customer approve a `manual` payment, so it reaches `authorized`
|
|
799
|
+
* (with Stripe, confirm it with a test card). Without it the capture and
|
|
800
|
+
* refund checks are skipped.
|
|
621
801
|
*/
|
|
622
802
|
readonly authorize?: (payment: Payment) => void | Promise<void>;
|
|
623
803
|
/**
|
|
624
|
-
* A delivery the provider's endpoint would receive for `payment`, signed
|
|
625
|
-
*
|
|
626
|
-
*
|
|
804
|
+
* A delivery the provider's endpoint would receive for `payment`, signed with
|
|
805
|
+
* the provider's secret, and the same delivery with its body changed. Without
|
|
806
|
+
* it the webhook checks are skipped.
|
|
627
807
|
*/
|
|
628
808
|
readonly webhook?: (payment: Payment) => Promise<{
|
|
629
809
|
readonly valid: WebhookInput;
|
|
@@ -632,11 +812,11 @@ interface TestPaymentProviderOptions {
|
|
|
632
812
|
}
|
|
633
813
|
/**
|
|
634
814
|
* Runs the `PaymentProvider` contract against `provider`: the API version,
|
|
635
|
-
* refused amounts, a created payment and its fields, an idempotency key
|
|
636
|
-
*
|
|
637
|
-
*
|
|
638
|
-
*
|
|
639
|
-
*
|
|
815
|
+
* refused amounts, a created payment and its fields, an idempotency key that
|
|
816
|
+
* pays once, `not_found` for an unknown payment, and, with the options that
|
|
817
|
+
* drive them, capture and refunds of an authorized payment and webhook
|
|
818
|
+
* verification. Every call carries a fresh reference, so the kit runs against a
|
|
819
|
+
* test account without cleanup.
|
|
640
820
|
*/
|
|
641
821
|
export declare function testPaymentProvider(provider: PaymentProvider, options?: TestPaymentProviderOptions): Promise<ConformanceReport>;
|
|
642
822
|
//#endregion
|
|
@@ -652,11 +832,11 @@ interface TestTaxProviderOptions {
|
|
|
652
832
|
readonly expectTax?: boolean;
|
|
653
833
|
}
|
|
654
834
|
/**
|
|
655
|
-
* Runs the `TaxProvider` contract against `provider`: the API version,
|
|
656
|
-
*
|
|
657
|
-
*
|
|
658
|
-
*
|
|
659
|
-
*
|
|
835
|
+
* Runs the `TaxProvider` contract against `provider`: the API version, refused
|
|
836
|
+
* carts, a quote with one line per cart line in order and a total that adds up,
|
|
837
|
+
* inclusive prices, shipping, exempt customers, commit, and full and partial
|
|
838
|
+
* reversals with their limits. Every commit carries a fresh reference, so the
|
|
839
|
+
* kit runs against a test account without cleanup.
|
|
660
840
|
*/
|
|
661
841
|
export declare function testTaxProvider(provider: TaxProvider, options: TestTaxProviderOptions): Promise<ConformanceReport>;
|
|
662
842
|
//#endregion
|
|
@@ -670,8 +850,8 @@ interface TestIncomingDestinationOptions {
|
|
|
670
850
|
/**
|
|
671
851
|
* Proves an `IncomingDestination` accepts a delivery once per endpoint and
|
|
672
852
|
* message id: a repeat reports the first id as a duplicate, while another
|
|
673
|
-
* message id or another endpoint is new.
|
|
674
|
-
*
|
|
853
|
+
* message id or another endpoint is new. It delivers four messages with random
|
|
854
|
+
* endpoint ids; the destination keeps them.
|
|
675
855
|
*/
|
|
676
856
|
export declare function testIncomingDestination(destination: IncomingDestination, options: TestIncomingDestinationOptions): Promise<ConformanceReport>;
|
|
677
857
|
//#endregion
|
|
@@ -687,11 +867,11 @@ interface TestPluginOptions {
|
|
|
687
867
|
readonly create?: Readonly<Record<string, unknown>>;
|
|
688
868
|
}
|
|
689
869
|
/**
|
|
690
|
-
* Proves a `Plugin` targets API v1, installs cleanly on its own and next to
|
|
691
|
-
*
|
|
692
|
-
* replacing base ones, keeps `context`, `transformQuery` and
|
|
693
|
-
*
|
|
694
|
-
*
|
|
870
|
+
* Proves a `Plugin` targets API v1, installs cleanly on its own and next to the
|
|
871
|
+
* first-party plugins in either order, adds repository methods without
|
|
872
|
+
* replacing base ones, keeps `context`, `transformQuery` and `beforeMutation`
|
|
873
|
+
* pure and deterministic, and keeps executors' results intact when it wraps
|
|
874
|
+
* them.
|
|
695
875
|
*/
|
|
696
876
|
export declare function testPlugin(plugin: AnyPlugin, options: TestPluginOptions): Promise<ConformanceReport>;
|
|
697
877
|
//#endregion
|
|
@@ -699,14 +879,17 @@ export declare function testPlugin(plugin: AnyPlugin, options: TestPluginOptions
|
|
|
699
879
|
interface TestQueueBackendOptions {
|
|
700
880
|
/** A queue the kit may fill and drain; use a fresh name per run. */
|
|
701
881
|
readonly queue: string;
|
|
702
|
-
/**
|
|
882
|
+
/**
|
|
883
|
+
* Check that a repeated dedupe key returns the first id. Defaults to
|
|
884
|
+
* `backend.leases`.
|
|
885
|
+
*/
|
|
703
886
|
readonly dedupe?: boolean;
|
|
704
887
|
}
|
|
705
888
|
/**
|
|
706
889
|
* Proves a `QueueBackend` round-trips payloads, hides claimed messages for
|
|
707
|
-
* their lease, counts attempts, retries and dead-letters on `fail`, and
|
|
708
|
-
*
|
|
709
|
-
*
|
|
890
|
+
* their lease, counts attempts, retries and dead-letters on `fail`, and (when
|
|
891
|
+
* it has `leases`) rejects a stale attempt and extends a lease. It writes to
|
|
892
|
+
* `options.queue` on the backend's real store.
|
|
710
893
|
*/
|
|
711
894
|
export declare function testQueueBackend(backend: QueueBackend, options: TestQueueBackendOptions): Promise<ConformanceReport>;
|
|
712
895
|
//#endregion
|
|
@@ -721,11 +904,11 @@ interface TestSupportSessionStoreOptions {
|
|
|
721
904
|
readonly targets: readonly [string, string];
|
|
722
905
|
}
|
|
723
906
|
/**
|
|
724
|
-
* Proves a `SupportSessionStore` starts sessions with the input it was
|
|
725
|
-
*
|
|
726
|
-
*
|
|
727
|
-
*
|
|
728
|
-
*
|
|
907
|
+
* Proves a `SupportSessionStore` starts sessions with the input it was given,
|
|
908
|
+
* shows a running session only to its admin, ends the admin's previous session
|
|
909
|
+
* on start, ends a session once, lists sessions and, with `expire`, leaves
|
|
910
|
+
* running sessions alone. It writes sessions to the store; they are all ended
|
|
911
|
+
* when it returns.
|
|
729
912
|
*/
|
|
730
913
|
export declare function testSupportSessionStore(store: SupportSessionStore, options: TestSupportSessionStoreOptions): Promise<ConformanceReport>;
|
|
731
914
|
//#endregion
|
|
@@ -749,13 +932,16 @@ interface MountedBinding {
|
|
|
749
932
|
readonly unmount: () => void | Promise<void>;
|
|
750
933
|
}
|
|
751
934
|
interface ControllerBindingHarness {
|
|
752
|
-
/**
|
|
935
|
+
/**
|
|
936
|
+
* Mounts the binding over the controller `create` returns, as a component
|
|
937
|
+
* would.
|
|
938
|
+
*/
|
|
753
939
|
readonly mount: (create: () => ProbeController) => MountedBinding | Promise<MountedBinding>;
|
|
754
940
|
/** Lets the framework apply pending updates: a tick, a flush. */
|
|
755
941
|
readonly settle?: () => void | Promise<void>;
|
|
756
942
|
/**
|
|
757
|
-
* Whether unmounting disposes the controller. React keeps it for
|
|
758
|
-
*
|
|
943
|
+
* Whether unmounting disposes the controller. React keeps it for StrictMode's
|
|
944
|
+
* second mount and only stops its work. Default true.
|
|
759
945
|
*/
|
|
760
946
|
readonly disposes?: boolean;
|
|
761
947
|
}
|
|
@@ -772,14 +958,17 @@ type AnySupabase = BetterSupabase<any, any, any, any>;
|
|
|
772
958
|
/** What the adapter module asks a handler to do with the caller's context. */
|
|
773
959
|
type AdapterRun = (ctx: Pick<ServerContext<AnyModels, AnyFunctions, unknown>, "auth" | "replica">) => unknown;
|
|
774
960
|
interface TestAdapterOptions {
|
|
775
|
-
/**
|
|
961
|
+
/**
|
|
962
|
+
* The definition the adapter is built from: the module tracks event sends on
|
|
963
|
+
* its `events`.
|
|
964
|
+
*/
|
|
776
965
|
readonly betterSupabase: AnySupabase;
|
|
777
966
|
/**
|
|
778
967
|
* Builds the adapter with `server` (pass it to `createX(betterSupabase,
|
|
779
|
-
* server)`) and returns a fetch function that answers a request with
|
|
780
|
-
*
|
|
781
|
-
*
|
|
782
|
-
*
|
|
968
|
+
* server)`) and returns a fetch function that answers a request with `run` as
|
|
969
|
+
* the caller, behind a guard that allows `allow`. Translate the module's bare
|
|
970
|
+
* GET into what the adapter expects (a JSON-RPC `tools/call`, an oRPC call)
|
|
971
|
+
* inside the function.
|
|
783
972
|
*/
|
|
784
973
|
readonly serve: (server: ServerOptions & {
|
|
785
974
|
readonly exposeErrors: false;
|
|
@@ -787,51 +976,55 @@ interface TestAdapterOptions {
|
|
|
787
976
|
readonly allow: NonNullable<GuardOptions["allow"]>;
|
|
788
977
|
readonly waitUntil: (promise: Promise<unknown>) => void;
|
|
789
978
|
}) => (request: Request) => Promise<Response>;
|
|
790
|
-
/**
|
|
979
|
+
/**
|
|
980
|
+
* The adapter answers handler errors in a 200 body (MCP tool results), not
|
|
981
|
+
* with HTTP statuses.
|
|
982
|
+
*/
|
|
791
983
|
readonly errorsInBody?: boolean;
|
|
792
984
|
/** The adapter sends no cookies (bearer-only transports such as MCP). */
|
|
793
985
|
readonly cookies?: false;
|
|
794
986
|
}
|
|
795
987
|
/**
|
|
796
988
|
* Proves a framework adapter refuses callers its guard rejects, answers
|
|
797
|
-
* `DbError`s with their status, hides unexpected errors, applies the
|
|
798
|
-
*
|
|
799
|
-
* `
|
|
989
|
+
* `DbError`s with their status, hides unexpected errors, applies the context's
|
|
990
|
+
* cookies and hands pending event sends to `waitUntil`, the way `handle()` from
|
|
991
|
+
* `better-supabase/server` does.
|
|
800
992
|
*/
|
|
801
993
|
export declare function testAdapter(name: string, options: TestAdapterOptions): Promise<ConformanceReport>;
|
|
802
994
|
//#endregion
|
|
803
995
|
//#region src/testing/transport-middleware.d.ts
|
|
804
996
|
/**
|
|
805
|
-
* Proves a `BlockTransportMiddleware` meets the contract: it declares API 1
|
|
806
|
-
*
|
|
997
|
+
* Proves a `BlockTransportMiddleware` meets the contract: it declares API 1 and
|
|
998
|
+
* a name, calls `next` at most once per call, leaves the request it got
|
|
807
999
|
* unchanged, resolves when `next` does, and rejects with the database error
|
|
808
1000
|
* `next` rejected with, so blocks still map it to a `DbError`.
|
|
809
1001
|
*
|
|
810
1002
|
* ```ts
|
|
811
|
-
* it(
|
|
1003
|
+
* it("conforms", () =>
|
|
1004
|
+
* testBlockTransportMiddleware(statementTimeout("5s")));
|
|
812
1005
|
* ```
|
|
813
1006
|
*/
|
|
814
1007
|
export declare function testBlockTransportMiddleware(middleware: BlockTransportMiddleware): Promise<ConformanceReport>;
|
|
815
1008
|
//#endregion
|
|
816
1009
|
//#region src/testing/authorization-provider.d.ts
|
|
817
1010
|
/**
|
|
818
|
-
* Proves an `AuthorizationProvider` targets API v1, is plain JSON, names
|
|
819
|
-
*
|
|
820
|
-
*
|
|
821
|
-
*
|
|
822
|
-
*
|
|
1011
|
+
* Proves an `AuthorizationProvider` targets API v1, is plain JSON, names valid
|
|
1012
|
+
* scopes with a tenant scope that has an id type, writes templates that are
|
|
1013
|
+
* safe to inline and use the placeholders they need, lists every function its
|
|
1014
|
+
* templates call in `requires`, and keeps its token hook, suspension rows, role
|
|
1015
|
+
* sources and deciding columns well formed.
|
|
823
1016
|
*/
|
|
824
1017
|
export declare function testAuthorizationProvider(provider: AuthorizationProvider): Promise<ConformanceReport>;
|
|
825
1018
|
//#endregion
|
|
826
1019
|
//#region src/testing/authorization-hooks.d.ts
|
|
827
1020
|
/**
|
|
828
1021
|
* Proves `AuthorizationHooks` target API v1 and fail closed for strangers:
|
|
829
|
-
* fan-out returns only subscribers it was given, an identity nobody linked
|
|
830
|
-
*
|
|
831
|
-
*
|
|
832
|
-
*
|
|
833
|
-
*
|
|
834
|
-
*
|
|
1022
|
+
* fan-out returns only subscribers it was given, an identity nobody linked and
|
|
1023
|
+
* a forged ticket resolve to `null`, a requester never approves their own
|
|
1024
|
+
* request, an unknown publisher can neither publish nor run, an unlinked chat
|
|
1025
|
+
* author gets nothing, an admin with no claims cannot start a support session
|
|
1026
|
+
* and never approves their own, and a delegated token with no scopes maps to no
|
|
1027
|
+
* permissions.
|
|
835
1028
|
*/
|
|
836
1029
|
export declare function testAuthorizationHooks(hooks: AuthorizationHooks): Promise<ConformanceReport>;
|
|
837
1030
|
//#endregion
|
|
@@ -845,16 +1038,16 @@ interface TestDeliveryTransportOptions {
|
|
|
845
1038
|
/** The sample's recipient. Defaults to `delivered@example.test`. */
|
|
846
1039
|
readonly to?: string;
|
|
847
1040
|
/**
|
|
848
|
-
* What the provider received, read after the kit sends. When given, the
|
|
849
|
-
*
|
|
1041
|
+
* What the provider received, read after the kit sends. When given, the kit
|
|
1042
|
+
* checks that the idempotency key and the headers arrived as sent.
|
|
850
1043
|
*/
|
|
851
1044
|
readonly received?: () => Promise<readonly ReceivedDelivery[]>;
|
|
852
1045
|
}
|
|
853
1046
|
/**
|
|
854
|
-
* Runs the `DeliveryTransport` contract against `transport`: API version 1,
|
|
855
|
-
*
|
|
856
|
-
*
|
|
857
|
-
*
|
|
1047
|
+
* Runs the `DeliveryTransport` contract against `transport`: API version 1, the
|
|
1048
|
+
* `email` channel, a provider name, and one frozen sample message it sends
|
|
1049
|
+
* without mutating, with the delivery id as its idempotency key. Throws a
|
|
1050
|
+
* `ConformanceError` listing every failed check.
|
|
858
1051
|
*/
|
|
859
1052
|
export declare function testDeliveryTransport(transport: DeliveryTransport, options?: TestDeliveryTransportOptions): Promise<ConformanceReport>;
|
|
860
1053
|
//#endregion
|
|
@@ -867,17 +1060,20 @@ interface TestAuthorizerOptions<Ref> {
|
|
|
867
1060
|
readonly permission: Ref;
|
|
868
1061
|
readonly context: RequestContext;
|
|
869
1062
|
};
|
|
870
|
-
/**
|
|
1063
|
+
/**
|
|
1064
|
+
* A permission reference the authorizer doesn't know; it must never be
|
|
1065
|
+
* granted.
|
|
1066
|
+
*/
|
|
871
1067
|
readonly unknown?: Ref;
|
|
872
1068
|
}
|
|
873
1069
|
/**
|
|
874
1070
|
* Proves an `Authorizer` targets API v1, keys every permission to the same
|
|
875
|
-
* string each time (and after a JSON round trip, so references are plain
|
|
876
|
-
*
|
|
877
|
-
*
|
|
878
|
-
*
|
|
879
|
-
*
|
|
880
|
-
* `options.granted` through `checkPermission`.
|
|
1071
|
+
* string each time (and after a JSON round trip, so references are plain JSON),
|
|
1072
|
+
* answers every request with a known outcome without mutating it, keeps the
|
|
1073
|
+
* request order in `evaluations`, decides from the subject rather than the
|
|
1074
|
+
* input (forged roles, claims and memberships in the resource properties or the
|
|
1075
|
+
* context never turn a denial into a grant), never grants an unknown
|
|
1076
|
+
* permission, and grants `options.granted` through `checkPermission`.
|
|
881
1077
|
*/
|
|
882
1078
|
export declare function testAuthorizer<Ref>(authorizer: Authorizer<Ref>, options: TestAuthorizerOptions<Ref>): Promise<ConformanceReport>;
|
|
883
1079
|
interface StaticAuthorizerOptions<Ref extends string> {
|
|
@@ -888,21 +1084,24 @@ interface StaticAuthorizerOptions<Ref extends string> {
|
|
|
888
1084
|
readonly roles?: Readonly<Record<string, readonly Ref[]>>;
|
|
889
1085
|
/** Permissions per subject id, on top of the role's. */
|
|
890
1086
|
readonly grants?: Readonly<Record<string, readonly Ref[]>>;
|
|
891
|
-
/**
|
|
1087
|
+
/**
|
|
1088
|
+
* Permissions that answer `approval-required` with the approval id
|
|
1089
|
+
* `approval:<permission>`.
|
|
1090
|
+
*/
|
|
892
1091
|
readonly approvals?: readonly Ref[];
|
|
893
1092
|
}
|
|
894
1093
|
/**
|
|
895
|
-
* An in-memory `Authorizer` for tests and examples: permissions come from
|
|
896
|
-
*
|
|
897
|
-
*
|
|
1094
|
+
* An in-memory `Authorizer` for tests and examples: permissions come from the
|
|
1095
|
+
* subject's `role` and id only, never from the request's resource or context,
|
|
1096
|
+
* and it ignores `subject.properties.claims`.
|
|
898
1097
|
*/
|
|
899
1098
|
export declare function staticAuthorizer<Ref extends string>(options: StaticAuthorizerOptions<Ref>): Authorizer<Ref>;
|
|
900
1099
|
//#endregion
|
|
901
1100
|
//#region src/testing/document-format.d.ts
|
|
902
1101
|
interface TestDocumentFormatOptions<V extends string = string> {
|
|
903
1102
|
/**
|
|
904
|
-
* The model to lower. Defaults to a small model with a route, a stream,
|
|
905
|
-
*
|
|
1103
|
+
* The model to lower. Defaults to a small model with a route, a stream, a
|
|
1104
|
+
* webhook, a Realtime channel and a workflow.
|
|
906
1105
|
*/
|
|
907
1106
|
readonly model?: ApiModel;
|
|
908
1107
|
/** The versions to lower. Defaults to every version the format lists. */
|
|
@@ -910,12 +1109,11 @@ interface TestDocumentFormatOptions<V extends string = string> {
|
|
|
910
1109
|
}
|
|
911
1110
|
/**
|
|
912
1111
|
* Proves a `DocumentFormat` targets API v1, lists versions with pins and a
|
|
913
|
-
* known status, defaults to a version it lists that is not a preview, and,
|
|
914
|
-
*
|
|
915
|
-
*
|
|
916
|
-
*
|
|
917
|
-
*
|
|
918
|
-
* stable file.
|
|
1112
|
+
* known status, defaults to a version it lists that is not a preview, and, for
|
|
1113
|
+
* every version: lowers the model without mutating it (also when the model is
|
|
1114
|
+
* frozen), renders the same document twice, renders plain JSON or text, reports
|
|
1115
|
+
* diagnostics with a kebab-case code, a severity and a message, finds no error
|
|
1116
|
+
* in its own output with `lint`, and names a bare, stable file.
|
|
919
1117
|
*/
|
|
920
1118
|
export declare function testDocumentFormat<F extends AnyDocumentFormat>(format: F, options?: TestDocumentFormatOptions<VersionOf<F>>): Promise<ConformanceReport>;
|
|
921
1119
|
//#endregion
|
|
@@ -927,10 +1125,16 @@ interface TestGeneratorOptions {
|
|
|
927
1125
|
readonly introspection?: GeneratorInput["introspection"];
|
|
928
1126
|
readonly extras?: GeneratorInput["extras"];
|
|
929
1127
|
readonly config?: ResolvedConfig;
|
|
930
|
-
/**
|
|
1128
|
+
/**
|
|
1129
|
+
* Defaults to one built from `meta`, with `unknown` for column types it can't
|
|
1130
|
+
* name.
|
|
1131
|
+
*/
|
|
931
1132
|
readonly model?: GeneratorModel;
|
|
932
1133
|
}
|
|
933
|
-
/**
|
|
1134
|
+
/**
|
|
1135
|
+
* Proves a `Generator` writes relative, unique paths, is deterministic and
|
|
1136
|
+
* doesn't mutate its input.
|
|
1137
|
+
*/
|
|
934
1138
|
export declare function testGenerator(generator: Generator, options: TestGeneratorOptions): Promise<ConformanceReport>;
|
|
935
1139
|
//#endregion
|
|
936
1140
|
//#region src/testing/injectables.d.ts
|
|
@@ -940,8 +1144,8 @@ interface TestEmbedderOptions {
|
|
|
940
1144
|
}
|
|
941
1145
|
/**
|
|
942
1146
|
* Proves an `Embedder` for the knowledge and memory blocks names its model,
|
|
943
|
-
* embeds an empty list to nothing, and returns one finite vector per value,
|
|
944
|
-
*
|
|
1147
|
+
* embeds an empty list to nothing, and returns one finite vector per value, all
|
|
1148
|
+
* of the same length on every call. It calls the real model.
|
|
945
1149
|
*/
|
|
946
1150
|
export declare function testEmbedder(embedder: Embedder, options?: TestEmbedderOptions): Promise<ConformanceReport>;
|
|
947
1151
|
interface TestAiTaskRunnerOptions {
|
|
@@ -970,8 +1174,8 @@ interface TestBuilderStarterOptions {
|
|
|
970
1174
|
readonly call: BuilderStartCall;
|
|
971
1175
|
}
|
|
972
1176
|
/**
|
|
973
|
-
* Proves a `BuilderStarter` returns a run id and returns the same id when
|
|
974
|
-
*
|
|
1177
|
+
* Proves a `BuilderStarter` returns a run id and returns the same id when the
|
|
1178
|
+
* same idempotency key starts again. It starts real runs.
|
|
975
1179
|
*/
|
|
976
1180
|
export declare function testBuilderStarter(start: BuilderStarter, options: TestBuilderStarterOptions): Promise<ConformanceReport>;
|
|
977
1181
|
interface TestEveDocumentBackendOptions {
|
|
@@ -996,9 +1200,9 @@ interface TestNotificationChannelOptions {
|
|
|
996
1200
|
readonly received?: () => Promise<readonly string[]>;
|
|
997
1201
|
}
|
|
998
1202
|
/**
|
|
999
|
-
* Runs the `NotificationChannel` contract against `channel`: the API version,
|
|
1000
|
-
*
|
|
1001
|
-
*
|
|
1203
|
+
* Runs the `NotificationChannel` contract against `channel`: the API version, a
|
|
1204
|
+
* name, and one frozen sample message it must send without mutating. Throws a
|
|
1205
|
+
* `ConformanceError` listing every failed check.
|
|
1002
1206
|
*/
|
|
1003
1207
|
export declare function testNotificationChannel(channel: NotificationChannel, options?: TestNotificationChannelOptions): Promise<ConformanceReport>;
|
|
1004
1208
|
//#endregion
|
|
@@ -1014,9 +1218,9 @@ interface TestWebhookSignerOptions {
|
|
|
1014
1218
|
}, secret: string) => Promise<boolean>;
|
|
1015
1219
|
}
|
|
1016
1220
|
/**
|
|
1017
|
-
* Runs the `WebhookSigner` contract against `signer`: the API version, a
|
|
1018
|
-
*
|
|
1019
|
-
*
|
|
1221
|
+
* Runs the `WebhookSigner` contract against `signer`: the API version, a name,
|
|
1222
|
+
* string headers that depend on the body and are stable for the same input,
|
|
1223
|
+
* and, with `verify`, a signature the receiver accepts.
|
|
1020
1224
|
*/
|
|
1021
1225
|
export declare function testWebhookSigner(signer: WebhookSigner, options?: TestWebhookSignerOptions): Promise<ConformanceReport>;
|
|
1022
1226
|
interface TestWebhookTransportOptions {
|
|
@@ -1026,9 +1230,9 @@ interface TestWebhookTransportOptions {
|
|
|
1026
1230
|
readonly received?: () => Promise<readonly string[]>;
|
|
1027
1231
|
}
|
|
1028
1232
|
/**
|
|
1029
|
-
* Runs the `WebhookTransport` contract against `transport`: the API version,
|
|
1030
|
-
*
|
|
1031
|
-
*
|
|
1233
|
+
* Runs the `WebhookTransport` contract against `transport`: the API version, a
|
|
1234
|
+
* name, and one POST to `options.url` that returns an HTTP status and a string
|
|
1235
|
+
* body.
|
|
1032
1236
|
*/
|
|
1033
1237
|
export declare function testWebhookTransport(transport: WebhookTransport, options: TestWebhookTransportOptions): Promise<ConformanceReport>;
|
|
1034
1238
|
interface TestWebhookSecretStoreOptions {
|
|
@@ -1037,14 +1241,17 @@ interface TestWebhookSecretStoreOptions {
|
|
|
1037
1241
|
}
|
|
1038
1242
|
/**
|
|
1039
1243
|
* Runs the `WebhookSecretStore` contract against `store`: the API version, a
|
|
1040
|
-
* list of strings, and, when it can rotate, a new secret listed first while
|
|
1041
|
-
*
|
|
1244
|
+
* list of strings, and, when it can rotate, a new secret listed first while the
|
|
1245
|
+
* previous one keeps signing.
|
|
1042
1246
|
*/
|
|
1043
1247
|
export declare function testWebhookSecretStore(store: WebhookSecretStore, options: TestWebhookSecretStoreOptions): Promise<ConformanceReport>;
|
|
1044
1248
|
//#endregion
|
|
1045
1249
|
//#region src/testing/chat-state.d.ts
|
|
1046
1250
|
interface TestChatStateOptions {
|
|
1047
|
-
/**
|
|
1251
|
+
/**
|
|
1252
|
+
* Builds a queued message, e.g. `createTestMessage(id, text)` from
|
|
1253
|
+
* `@chat-adapter/tests`.
|
|
1254
|
+
*/
|
|
1048
1255
|
readonly message: (id: string, text: string) => Message;
|
|
1049
1256
|
/** A fresh key or thread id per call. Defaults to `conformance-<uuid>`. */
|
|
1050
1257
|
readonly id?: () => string;
|
|
@@ -1052,10 +1259,10 @@ interface TestChatStateOptions {
|
|
|
1052
1259
|
readonly ttlMs?: number;
|
|
1053
1260
|
}
|
|
1054
1261
|
/**
|
|
1055
|
-
* Runs the Chat SDK `StateAdapter` contract against `state`: subscriptions,
|
|
1056
|
-
*
|
|
1057
|
-
*
|
|
1058
|
-
*
|
|
1262
|
+
* Runs the Chat SDK `StateAdapter` contract against `state`: subscriptions, one
|
|
1263
|
+
* lock holder at a time with token-checked release and extension, lock and
|
|
1264
|
+
* cache TTLs, `setIfNotExists`, list trimming, and a per-thread queue that
|
|
1265
|
+
* keeps the newest entries, reports its depth and drops expired ones.
|
|
1059
1266
|
*/
|
|
1060
1267
|
export declare function testChatState(state: StateAdapter, options: TestChatStateOptions): Promise<ConformanceReport>;
|
|
1061
1268
|
//#endregion
|
|
@@ -1067,10 +1274,10 @@ interface TestStreamStoreOptions {
|
|
|
1067
1274
|
readonly timeoutMs?: number;
|
|
1068
1275
|
}
|
|
1069
1276
|
/**
|
|
1070
|
-
* Runs the `StreamStore` contract against `store`: the API version, open
|
|
1071
|
-
*
|
|
1072
|
-
*
|
|
1073
|
-
*
|
|
1277
|
+
* Runs the `StreamStore` contract against `store`: the API version, open once,
|
|
1278
|
+
* idempotent appends that refuse gaps, reads from any index that end when the
|
|
1279
|
+
* stream closes, a live read that sees later appends, cancel seen by the
|
|
1280
|
+
* writer, a closed stream that refuses appends, and a missing stream.
|
|
1074
1281
|
*/
|
|
1075
1282
|
export declare function testStreamStore(store: StreamStore, options?: TestStreamStoreOptions): Promise<ConformanceReport>;
|
|
1076
1283
|
//#endregion
|
|
@@ -1082,7 +1289,10 @@ interface TestCredentialProviderOptions {
|
|
|
1082
1289
|
readonly seed: (ref: CredentialRef, subject: CredentialSubject, value: string) => Promise<void>;
|
|
1083
1290
|
/** A per-user ref, for providers that keep one credential per user. */
|
|
1084
1291
|
readonly userRef?: CredentialRef;
|
|
1085
|
-
/**
|
|
1292
|
+
/**
|
|
1293
|
+
* A ref with an inbound scheme and a function that signs a request with
|
|
1294
|
+
* `secret`.
|
|
1295
|
+
*/
|
|
1086
1296
|
readonly inbound?: {
|
|
1087
1297
|
readonly ref: CredentialRef;
|
|
1088
1298
|
readonly sign: (body: string, secret: string) => Promise<Request>;
|
|
@@ -1090,16 +1300,19 @@ interface TestCredentialProviderOptions {
|
|
|
1090
1300
|
}
|
|
1091
1301
|
/**
|
|
1092
1302
|
* Runs the `CredentialProvider` contract against `provider`: the API version,
|
|
1093
|
-
* an unknown ref, a stored token with its headers, a new value seen after it
|
|
1094
|
-
*
|
|
1095
|
-
*
|
|
1096
|
-
*
|
|
1097
|
-
*
|
|
1303
|
+
* an unknown ref, a stored token with its headers, a new value seen after it is
|
|
1304
|
+
* stored, separate credentials per user and per tenant (`ref` with a `tenant`,
|
|
1305
|
+
* which `seed` must store too), revoke (per user, as the organization purger
|
|
1306
|
+
* revokes connector grants), and inbound checks that accept a signed request
|
|
1307
|
+
* and refuse a tampered one.
|
|
1098
1308
|
*/
|
|
1099
1309
|
export declare function testCredentialProvider(provider: CredentialProvider, options: TestCredentialProviderOptions): Promise<ConformanceReport>;
|
|
1100
1310
|
//#endregion
|
|
1101
1311
|
//#region src/testing/act-cases.d.ts
|
|
1102
|
-
/**
|
|
1312
|
+
/**
|
|
1313
|
+
* One `act` claim set, with what `actorOf` and `actor_may_write()` say about
|
|
1314
|
+
* it.
|
|
1315
|
+
*/
|
|
1103
1316
|
interface ActCase {
|
|
1104
1317
|
readonly name: string;
|
|
1105
1318
|
/** Only the claims the verdict reads: `act`, `client_id` and `scope`. */
|
|
@@ -1115,16 +1328,19 @@ interface ActCase {
|
|
|
1115
1328
|
/** What `better_supabase.actor_may_write()` returns for these claims. */
|
|
1116
1329
|
readonly mayWrite: boolean;
|
|
1117
1330
|
}
|
|
1118
|
-
/**
|
|
1331
|
+
/**
|
|
1332
|
+
* `better-supabase/testing/act-cases.json`, versioned so other parsers can pin
|
|
1333
|
+
* it.
|
|
1334
|
+
*/
|
|
1119
1335
|
interface ActCases {
|
|
1120
1336
|
readonly version: 1;
|
|
1121
1337
|
readonly cases: readonly ActCase[];
|
|
1122
1338
|
}
|
|
1123
1339
|
/**
|
|
1124
|
-
* The RFC 8693 `act` chains better-supabase accepts and refuses, as plain
|
|
1125
|
-
*
|
|
1126
|
-
*
|
|
1340
|
+
* The RFC 8693 `act` chains better-supabase accepts and refuses, as plain JSON
|
|
1341
|
+
* (`better-supabase/testing/act-cases.json`), so another library that reads the
|
|
1342
|
+
* same claims can run the same cases.
|
|
1127
1343
|
*/
|
|
1128
1344
|
export declare const actCases: ActCases;
|
|
1129
1345
|
//#endregion
|
|
1130
|
-
export type { ActCase, ActCases, AdapterRun, BudgetPage, BudgetRequest, BudgetResponse, ConformanceCheck, ConformanceReport, ControllerBindingHarness, DbBudgetExpectation, ExactSeed, InstantBrowserContext, InstantExpectation, InstantLocator, InstantPage, IsolationTable, IsolationTables, IsolationTenant, LiteStack, LiteStackOptions, LocalStack, MeasuredRender, MountedBinding, ProbeActions, ProbeController, ProbeSnapshot, ReceivedDelivery, ResponseBudgetExpectation, ResponseDbStats, Scope, ScopedRows, ScopedSeed, ScopedSeedOptions, ScopedTenant, Seed, SeedFixtures, SigningJwk, StaticAuthorizerOptions, SupabaseClaimFixture, SupabaseClaimFixtureName, SupabaseInvalidClaimFixture, SupabaseInvalidClaimFixtureName, TenantIsolationOptions, TestAdapterOptions, TestAiTaskRunnerOptions, TestAuthResolverOptions, TestAuthorizerOptions, TestBuilderStarterOptions, TestChatStateOptions, TestCredentialProviderOptions, TestDeliveryTransportOptions, TestDocumentFormatOptions, TestEmbedderOptions, TestEveDocumentBackendOptions, TestEventSinkOptions, TestExecutorOptions, TestGeneratorOptions, TestGraphCompilerOptions, TestIncomingDestinationOptions, TestJwtClaims, TestNotificationChannelOptions, TestPaymentProviderOptions, TestPluginOptions, TestQueueBackendOptions, TestSigner, TestStreamStoreOptions, TestSupportSessionStoreOptions, TestTaxProviderOptions, TestUser, TestWebhookSecretStoreOptions, TestWebhookSignerOptions, TestWebhookTransportOptions };
|
|
1346
|
+
export type { ActCase, ActCases, AdapterRun, BudgetPage, BudgetRequest, BudgetResponse, ConformanceCheck, ConformanceReport, ControllerBindingHarness, DbBudgetExpectation, ExactSeed, InstantBrowserContext, InstantExpectation, InstantLocator, InstantPage, IsolationTable, IsolationTables, IsolationTenant, LiteStack, LiteStackOptions, LocalStack, MeasuredRender, MountedBinding, ProbeActions, ProbeController, ProbeSnapshot, ReceivedDelivery, ResponseBudgetExpectation, ResponseDbStats, Scope, ScopedRows, ScopedSeed, ScopedSeedOptions, ScopedTenant, Seed, SeedFixtures, SeedTenantOnCreateOptions, SigningJwk, StaticAuthorizerOptions, SupabaseClaimFixture, SupabaseClaimFixtureName, SupabaseInvalidClaimFixture, SupabaseInvalidClaimFixtureName, TenantIsolationOptions, TenantSeed, TenantSeedTarget, TestAdapterOptions, TestAiTaskRunnerOptions, TestAuthResolverOptions, TestAuthorizerOptions, TestBuilderStarterOptions, TestChatStateOptions, TestCredentialProviderOptions, TestDeliveryTransportOptions, TestDocumentFormatOptions, TestEmbedderOptions, TestEveDocumentBackendOptions, TestEventSinkOptions, TestExecutorOptions, TestGeneratorOptions, TestGraphCompilerOptions, TestIncomingDestinationOptions, TestJwtClaims, TestNotificationChannelOptions, TestPaymentProviderOptions, TestPluginOptions, TestQueueBackendOptions, TestSigner, TestStreamStoreOptions, TestSupportSessionStoreOptions, TestTaxProviderOptions, TestUser, TestWebhookSecretStoreOptions, TestWebhookSignerOptions, TestWebhookTransportOptions };
|