better-supabase 0.8.0 → 0.10.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 +147 -83
- package/bin/better-supabase.js +14 -2
- package/dist/access-sql-DUSSMaC3.js +201 -0
- package/dist/actor-BAhb-d1S.d.ts +104 -0
- package/dist/actor-KHDOKGb1.js +151 -0
- package/dist/adapter-rmWaLNe3.js +1984 -0
- package/dist/agents-ByYUSZxT.d.ts +111 -0
- package/dist/ai-cache-CkxtAt4P.d.ts +70 -0
- package/dist/ai-cache-DPiuJ-zJ.js +84 -0
- package/dist/ai-chat-al8b3spK.d.ts +608 -0
- package/dist/ai-files-BXtV3ygd.js +331 -0
- package/dist/ai-sdk/agents/index.d.ts +154 -10
- package/dist/ai-sdk/agents/index.js +172 -17
- package/dist/ai-sdk/batches/index.d.ts +4 -4
- package/dist/ai-sdk/batches/index.js +5 -5
- package/dist/ai-sdk/cache/index.d.ts +2 -2
- package/dist/ai-sdk/cache/index.js +1 -1
- package/dist/ai-sdk/chat/index.d.ts +1 -1
- package/dist/ai-sdk/chat/index.js +7 -6
- package/dist/ai-sdk/embeddings/index.d.ts +3 -3
- package/dist/ai-sdk/embeddings/index.js +1 -2
- package/dist/ai-sdk/files/index.d.ts +2 -2
- package/dist/ai-sdk/files/index.js +4 -4
- package/dist/ai-sdk/index.d.ts +7 -6
- package/dist/ai-sdk/index.js +4 -3
- package/dist/ai-sdk/mcp/index.d.ts +4 -4
- package/dist/ai-sdk/mcp/index.js +6 -6
- package/dist/ai-sdk/memory/index.d.ts +5 -2
- package/dist/ai-sdk/memory/index.js +2 -2
- package/dist/ai-sdk/react/index.js +1 -2
- package/dist/ai-sdk/workflow/index.d.ts +5 -4
- package/dist/ai-sdk/workflow/index.js +8 -8
- package/dist/ai-tasks-Di0gmJOX.d.ts +157 -0
- package/dist/announcements-HF7LuFw5.js +128 -0
- package/dist/api-CFjuYKFY.js +680 -0
- package/dist/api-XJcQON_7.d.ts +411 -0
- package/dist/api-keys-C1IZF7p8.js +318 -0
- package/dist/api-keys-EdSNjGIZ.d.ts +205 -0
- package/dist/app-tables-BRjMcWhW.js +819 -0
- package/dist/app-tables-DVidEHOI.d.ts +35 -0
- package/dist/approvals-DqlPHBHI.d.ts +124 -0
- package/dist/arazzo/index.d.ts +5 -5
- package/dist/arazzo/index.js +6 -6
- package/dist/assistant-BZyhQ8bd.d.ts +148 -0
- package/dist/astro/index.d.ts +9 -8
- package/dist/astro/index.js +10 -7
- package/dist/asyncapi/index.d.ts +4 -4
- package/dist/asyncapi/index.js +6 -6
- package/dist/attachments-C8FEBBKE.js +264 -0
- package/dist/attributes-D4mA7WhI.js +38 -0
- package/dist/audit-log-CRgiHlRh.js +786 -0
- package/dist/auth-CdBKt0CS.js +20 -0
- package/dist/auth-reply-B_dW4jHJ.js +31 -0
- package/dist/auth-reply-Dj124sbX.d.ts +11 -0
- package/dist/authorization-CdJRoZgV.d.ts +1435 -0
- package/dist/authorization-hooks-Do5djkpz.d.ts +214 -0
- package/dist/authorizer-dVVN05Un.js +126 -0
- package/dist/base64-BmeCBgGo.js +42 -0
- package/dist/batch-limit-DKVQDz4o.js +5 -0
- package/dist/before-route-B98js9m_.js +30 -0
- package/dist/better-result/index.d.ts +5 -5
- package/dist/better-result/index.js +1 -1
- package/dist/bind-DkaP_0iS.d.ts +70 -0
- package/dist/block-env-CBd_SoL5.js +29 -0
- package/dist/block-env-Dxl7rsI0.d.ts +10 -0
- package/dist/block-events-DD9Q_NUz.js +96 -0
- package/dist/block-fields-5UA84ZUg.d.ts +55 -0
- package/dist/block-fields-BANwJ9Y_.js +139 -0
- package/dist/block-helpers-7pMBVsE6.d.ts +37 -0
- package/dist/block-helpers-BfVCR5Fc.js +264 -0
- package/dist/block-hooks-ByKlh8Qy.js +114 -0
- package/dist/block-hooks-C_WaodoA.d.ts +107 -0
- package/dist/block-transport-G4t1umrR.js +85 -0
- package/dist/block-transport-NbUJygA7.d.ts +70 -0
- package/dist/blocks/access-requests/index.d.ts +98 -0
- package/dist/blocks/access-requests/index.js +99 -0
- package/dist/blocks/agents/index.d.ts +21 -3
- package/dist/blocks/agents/index.js +64 -18
- package/dist/blocks/ai-cache/index.d.ts +7 -2
- package/dist/blocks/ai-cache/index.js +15 -3
- package/dist/blocks/ai-chat/index.d.ts +22 -3
- package/dist/blocks/ai-chat/index.js +29 -3
- package/dist/blocks/ai-chat/react/index.d.ts +12 -46
- package/dist/blocks/ai-chat/react/index.js +43 -335
- package/dist/blocks/ai-chat/solid/index.d.ts +34 -0
- package/dist/blocks/ai-chat/solid/index.js +41 -0
- package/dist/blocks/ai-chat/svelte/index.d.ts +34 -0
- package/dist/blocks/ai-chat/svelte/index.js +41 -0
- package/dist/blocks/ai-chat/vue/index.d.ts +34 -0
- package/dist/blocks/ai-chat/vue/index.js +41 -0
- package/dist/blocks/ai-files/index.d.ts +10 -3
- package/dist/blocks/ai-files/index.js +16 -3
- package/dist/blocks/ai-providers/index.d.ts +18 -3
- package/dist/blocks/ai-providers/index.js +40 -15
- package/dist/blocks/ai-tasks/index.d.ts +9 -2
- package/dist/blocks/ai-tasks/index.js +70 -21
- package/dist/blocks/announcements/index.d.ts +18 -3
- package/dist/blocks/announcements/index.js +27 -3
- package/dist/blocks/announcements/react/index.d.ts +4 -14
- package/dist/blocks/announcements/react/index.js +22 -70
- package/dist/blocks/announcements/solid/index.d.ts +13 -0
- package/dist/blocks/announcements/solid/index.js +14 -0
- package/dist/blocks/announcements/svelte/index.d.ts +13 -0
- package/dist/blocks/announcements/svelte/index.js +14 -0
- package/dist/blocks/announcements/vue/index.d.ts +13 -0
- package/dist/blocks/announcements/vue/index.js +14 -0
- package/dist/blocks/api-keys/index.d.ts +24 -7
- package/dist/blocks/api-keys/index.js +29 -294
- package/dist/blocks/api-keys/react/index.d.ts +29 -0
- package/dist/blocks/api-keys/react/index.js +43 -0
- package/dist/blocks/api-keys/react/server.d.ts +7 -0
- package/dist/blocks/api-keys/react/server.js +7 -0
- package/dist/blocks/api-keys/solid/index.d.ts +13 -0
- package/dist/blocks/api-keys/solid/index.js +14 -0
- package/dist/blocks/api-keys/svelte/index.d.ts +13 -0
- package/dist/blocks/api-keys/svelte/index.js +14 -0
- package/dist/blocks/api-keys/vue/index.d.ts +13 -0
- package/dist/blocks/api-keys/vue/index.js +14 -0
- package/dist/blocks/approvals/index.d.ts +22 -0
- package/dist/blocks/approvals/index.js +189 -0
- package/dist/blocks/attachments/index.d.ts +18 -227
- package/dist/blocks/attachments/index.js +26 -242
- package/dist/blocks/audit/index.d.ts +72 -365
- package/dist/blocks/audit/index.js +91 -714
- package/dist/blocks/audit/react/index.d.ts +26 -0
- package/dist/blocks/audit/react/index.js +44 -0
- package/dist/blocks/audit/react/server.d.ts +7 -0
- package/dist/blocks/audit/react/server.js +7 -0
- package/dist/blocks/audit/solid/index.d.ts +13 -0
- package/dist/blocks/audit/solid/index.js +14 -0
- package/dist/blocks/audit/svelte/index.d.ts +13 -0
- package/dist/blocks/audit/svelte/index.js +14 -0
- package/dist/blocks/audit/vue/index.d.ts +13 -0
- package/dist/blocks/audit/vue/index.js +14 -0
- package/dist/blocks/billing/index.d.ts +37 -12
- package/dist/blocks/billing/index.js +43 -12
- package/dist/blocks/billing/react/index.d.ts +34 -0
- package/dist/blocks/billing/react/index.js +36 -0
- package/dist/blocks/billing/react/server.d.ts +7 -0
- package/dist/blocks/billing/react/server.js +7 -0
- package/dist/blocks/billing/solid/index.d.ts +15 -0
- package/dist/blocks/billing/solid/index.js +14 -0
- package/dist/blocks/billing/svelte/index.d.ts +15 -0
- package/dist/blocks/billing/svelte/index.js +14 -0
- package/dist/blocks/billing/vue/index.d.ts +15 -0
- package/dist/blocks/billing/vue/index.js +14 -0
- package/dist/blocks/bookings/index.d.ts +36 -0
- package/dist/blocks/bookings/index.js +28 -0
- package/dist/blocks/bookings/react/index.d.ts +31 -0
- package/dist/blocks/bookings/react/index.js +59 -0
- package/dist/blocks/bookings/react/server.d.ts +6 -0
- package/dist/blocks/bookings/react/server.js +7 -0
- package/dist/blocks/bookings/solid/index.d.ts +13 -0
- package/dist/blocks/bookings/solid/index.js +14 -0
- package/dist/blocks/bookings/svelte/index.d.ts +13 -0
- package/dist/blocks/bookings/svelte/index.js +14 -0
- package/dist/blocks/bookings/vue/index.d.ts +13 -0
- package/dist/blocks/bookings/vue/index.js +14 -0
- package/dist/blocks/bulk/index.d.ts +146 -0
- package/dist/blocks/bulk/index.js +154 -0
- package/dist/blocks/calendar/index.d.ts +20 -0
- package/dist/blocks/calendar/index.js +33 -0
- package/dist/blocks/calendar/react/index.d.ts +26 -0
- package/dist/blocks/calendar/react/index.js +58 -0
- package/dist/blocks/calendar/react/server.d.ts +6 -0
- package/dist/blocks/calendar/react/server.js +7 -0
- package/dist/blocks/calendar/solid/index.d.ts +13 -0
- package/dist/blocks/calendar/solid/index.js +14 -0
- package/dist/blocks/calendar/svelte/index.d.ts +13 -0
- package/dist/blocks/calendar/svelte/index.js +14 -0
- package/dist/blocks/calendar/vue/index.d.ts +13 -0
- package/dist/blocks/calendar/vue/index.js +14 -0
- package/dist/blocks/catalog/index.d.ts +224 -0
- package/dist/blocks/catalog/index.js +292 -0
- package/dist/blocks/collections/index.d.ts +184 -0
- package/dist/blocks/collections/index.js +208 -0
- package/dist/blocks/comments/index.d.ts +19 -166
- package/dist/blocks/comments/index.js +26 -207
- package/dist/blocks/comments/react/index.d.ts +27 -0
- package/dist/blocks/comments/react/index.js +45 -0
- package/dist/blocks/comments/react/server.d.ts +7 -0
- package/dist/blocks/comments/react/server.js +7 -0
- package/dist/blocks/comments/solid/index.d.ts +13 -0
- package/dist/blocks/comments/solid/index.js +14 -0
- package/dist/blocks/comments/svelte/index.d.ts +13 -0
- package/dist/blocks/comments/svelte/index.js +14 -0
- package/dist/blocks/comments/vue/index.d.ts +13 -0
- package/dist/blocks/comments/vue/index.js +14 -0
- package/dist/blocks/connectors/index.d.ts +21 -3
- package/dist/blocks/connectors/index.js +53 -18
- package/dist/blocks/custom-fields/index.d.ts +62 -0
- package/dist/blocks/custom-fields/index.js +85 -0
- package/dist/blocks/data-lifecycle/index.d.ts +114 -9
- package/dist/blocks/data-lifecycle/index.js +98 -12
- package/dist/blocks/deals/index.d.ts +262 -0
- package/dist/blocks/deals/index.js +380 -0
- package/dist/blocks/documents/index.d.ts +17 -0
- package/dist/blocks/documents/index.js +118 -0
- package/dist/blocks/domains/index.d.ts +117 -0
- package/dist/blocks/domains/index.js +118 -0
- package/dist/blocks/drive/index.d.ts +296 -0
- package/dist/blocks/drive/index.js +483 -0
- package/dist/blocks/employees/index.d.ts +205 -0
- package/dist/blocks/employees/index.js +289 -0
- package/dist/blocks/engagements/index.d.ts +125 -0
- package/dist/blocks/engagements/index.js +143 -0
- package/dist/blocks/entitlements/index.d.ts +40 -4
- package/dist/blocks/entitlements/index.js +14 -24
- package/dist/blocks/entitlements/react/index.d.ts +24 -0
- package/dist/blocks/entitlements/react/index.js +35 -0
- package/dist/blocks/entitlements/react/server.d.ts +6 -0
- package/dist/blocks/entitlements/react/server.js +7 -0
- package/dist/blocks/entitlements/solid/index.d.ts +13 -0
- package/dist/blocks/entitlements/solid/index.js +14 -0
- package/dist/blocks/entitlements/svelte/index.d.ts +13 -0
- package/dist/blocks/entitlements/svelte/index.js +14 -0
- package/dist/blocks/entitlements/vue/index.d.ts +13 -0
- package/dist/blocks/entitlements/vue/index.js +14 -0
- package/dist/blocks/flags/index.d.ts +61 -187
- package/dist/blocks/flags/index.js +65 -253
- package/dist/blocks/forms/index.d.ts +302 -0
- package/dist/blocks/forms/index.js +341 -0
- package/dist/blocks/forms/react/index.d.ts +16 -0
- package/dist/blocks/forms/react/index.js +25 -0
- package/dist/blocks/forms/react/server.d.ts +6 -0
- package/dist/blocks/forms/react/server.js +7 -0
- package/dist/blocks/forms/solid/index.d.ts +13 -0
- package/dist/blocks/forms/solid/index.js +14 -0
- package/dist/blocks/forms/svelte/index.d.ts +13 -0
- package/dist/blocks/forms/svelte/index.js +14 -0
- package/dist/blocks/forms/vue/index.d.ts +13 -0
- package/dist/blocks/forms/vue/index.js +14 -0
- package/dist/blocks/hiring/index.d.ts +154 -0
- package/dist/blocks/hiring/index.js +180 -0
- package/dist/blocks/identities/index.d.ts +83 -0
- package/dist/blocks/identities/index.js +103 -0
- package/dist/blocks/imports/index.d.ts +159 -0
- package/dist/blocks/imports/index.js +227 -0
- package/dist/blocks/inbox/index.d.ts +22 -3
- package/dist/blocks/inbox/index.js +77 -4
- package/dist/blocks/inbox/react/index.d.ts +3 -2
- package/dist/blocks/inbox/react/index.js +55 -199
- package/dist/blocks/inbox/react/server.d.ts +2 -1
- package/dist/blocks/inbox/solid/index.d.ts +27 -0
- package/dist/blocks/inbox/solid/index.js +32 -0
- package/dist/blocks/inbox/svelte/index.d.ts +27 -0
- package/dist/blocks/inbox/svelte/index.js +32 -0
- package/dist/blocks/inbox/vue/index.d.ts +27 -0
- package/dist/blocks/inbox/vue/index.js +32 -0
- package/dist/blocks/index.d.ts +25 -61
- package/dist/blocks/index.js +192 -56
- package/dist/blocks/inventory/index.d.ts +181 -0
- package/dist/blocks/inventory/index.js +219 -0
- package/dist/blocks/invoices/index.d.ts +154 -0
- package/dist/blocks/invoices/index.js +216 -0
- package/dist/blocks/jobs/index.d.ts +156 -33
- package/dist/blocks/jobs/index.js +675 -261
- package/dist/blocks/knowledge/index.d.ts +10 -3
- package/dist/blocks/knowledge/index.js +17 -3
- package/dist/blocks/leave/index.d.ts +241 -0
- package/dist/blocks/leave/index.js +209 -0
- package/dist/blocks/memory/index.d.ts +9 -4
- package/dist/blocks/memory/index.js +48 -12
- package/dist/blocks/metrics/index.d.ts +174 -0
- package/dist/blocks/metrics/index.js +217 -0
- package/dist/blocks/mfa/index.d.ts +7 -0
- package/dist/blocks/mfa/index.js +12 -0
- package/dist/blocks/mfa/react/index.d.ts +30 -0
- package/dist/blocks/mfa/react/index.js +45 -0
- package/dist/blocks/mfa/react/server.d.ts +9 -0
- package/dist/blocks/mfa/react/server.js +12 -0
- package/dist/blocks/mfa/solid/index.d.ts +20 -0
- package/dist/blocks/mfa/solid/index.js +23 -0
- package/dist/blocks/mfa/svelte/index.d.ts +20 -0
- package/dist/blocks/mfa/svelte/index.js +23 -0
- package/dist/blocks/mfa/vue/index.d.ts +20 -0
- package/dist/blocks/mfa/vue/index.js +23 -0
- package/dist/blocks/notifications/index.d.ts +342 -25
- package/dist/blocks/notifications/index.js +733 -104
- package/dist/blocks/notifications/react/index.d.ts +7 -32
- package/dist/blocks/notifications/react/index.js +23 -49
- package/dist/blocks/notifications/react/server.d.ts +2 -1
- package/dist/blocks/notifications/solid/index.d.ts +13 -0
- package/dist/blocks/notifications/solid/index.js +14 -0
- package/dist/blocks/notifications/svelte/index.d.ts +13 -0
- package/dist/blocks/notifications/svelte/index.js +14 -0
- package/dist/blocks/notifications/vue/index.d.ts +13 -0
- package/dist/blocks/notifications/vue/index.js +14 -0
- package/dist/blocks/number-sequences/index.d.ts +45 -0
- package/dist/blocks/number-sequences/index.js +49 -0
- package/dist/blocks/oauth-server/index.d.ts +228 -0
- package/dist/blocks/oauth-server/index.js +309 -0
- package/dist/blocks/onboarding/index.d.ts +8 -3
- package/dist/blocks/onboarding/index.js +17 -63
- package/dist/blocks/onboarding/react/index.d.ts +3 -12
- package/dist/blocks/onboarding/react/index.js +18 -60
- package/dist/blocks/onboarding/react/server.d.ts +2 -2
- package/dist/blocks/onboarding/react/server.js +2 -2
- package/dist/blocks/onboarding/solid/index.d.ts +13 -0
- package/dist/blocks/onboarding/solid/index.js +14 -0
- package/dist/blocks/onboarding/svelte/index.d.ts +13 -0
- package/dist/blocks/onboarding/svelte/index.js +14 -0
- package/dist/blocks/onboarding/vue/index.d.ts +13 -0
- package/dist/blocks/onboarding/vue/index.js +14 -0
- package/dist/blocks/orders/index.d.ts +264 -0
- package/dist/blocks/orders/index.js +589 -0
- package/dist/blocks/organizations/index.d.ts +31 -238
- package/dist/blocks/organizations/index.js +49 -392
- package/dist/blocks/organizations/react/index.d.ts +108 -0
- package/dist/blocks/organizations/react/index.js +113 -0
- package/dist/blocks/organizations/react/server.d.ts +11 -0
- package/dist/blocks/organizations/react/server.js +15 -0
- package/dist/blocks/organizations/solid/index.d.ts +34 -0
- package/dist/blocks/organizations/solid/index.js +32 -0
- package/dist/blocks/organizations/svelte/index.d.ts +34 -0
- package/dist/blocks/organizations/svelte/index.js +32 -0
- package/dist/blocks/organizations/vue/index.d.ts +34 -0
- package/dist/blocks/organizations/vue/index.js +32 -0
- package/dist/blocks/outbox/index.d.ts +12 -3
- package/dist/blocks/outbox/index.js +85 -46
- package/dist/blocks/parties/index.d.ts +181 -0
- package/dist/blocks/parties/index.js +258 -0
- package/dist/blocks/pipelines/index.d.ts +189 -0
- package/dist/blocks/pipelines/index.js +204 -0
- package/dist/blocks/profiles/index.d.ts +13 -8
- package/dist/blocks/profiles/index.js +19 -6
- package/dist/blocks/promotions/index.d.ts +125 -0
- package/dist/blocks/promotions/index.js +123 -0
- package/dist/blocks/push/index.d.ts +48 -28
- package/dist/blocks/push/index.js +45 -16
- package/dist/blocks/quotes/index.d.ts +152 -0
- package/dist/blocks/quotes/index.js +209 -0
- package/dist/blocks/rank/index.d.ts +71 -0
- package/dist/blocks/rank/index.js +53 -0
- package/dist/blocks/reactions/index.d.ts +18 -0
- package/dist/blocks/reactions/index.js +26 -0
- package/dist/blocks/reactions/react/index.d.ts +23 -0
- package/dist/blocks/reactions/react/index.js +46 -0
- package/dist/blocks/reactions/react/server.d.ts +6 -0
- package/dist/blocks/reactions/react/server.js +7 -0
- package/dist/blocks/reactions/solid/index.d.ts +13 -0
- package/dist/blocks/reactions/solid/index.js +14 -0
- package/dist/blocks/reactions/svelte/index.d.ts +13 -0
- package/dist/blocks/reactions/svelte/index.js +14 -0
- package/dist/blocks/reactions/vue/index.d.ts +13 -0
- package/dist/blocks/reactions/vue/index.js +14 -0
- package/dist/blocks/relations/index.d.ts +180 -0
- package/dist/blocks/relations/index.js +254 -0
- package/dist/blocks/reminders/index.d.ts +177 -0
- package/dist/blocks/reminders/index.js +171 -0
- package/dist/blocks/reviews/index.d.ts +148 -0
- package/dist/blocks/reviews/index.js +139 -0
- package/dist/blocks/rules/index.d.ts +169 -0
- package/dist/blocks/rules/index.js +163 -0
- package/dist/blocks/rules/react/index.d.ts +34 -0
- package/dist/blocks/rules/react/index.js +55 -0
- package/dist/blocks/rules/react/server.d.ts +6 -0
- package/dist/blocks/rules/react/server.js +7 -0
- package/dist/blocks/rules/solid/index.d.ts +13 -0
- package/dist/blocks/rules/solid/index.js +14 -0
- package/dist/blocks/rules/svelte/index.d.ts +13 -0
- package/dist/blocks/rules/svelte/index.js +14 -0
- package/dist/blocks/rules/vue/index.d.ts +13 -0
- package/dist/blocks/rules/vue/index.js +14 -0
- package/dist/blocks/saved-views/index.d.ts +17 -0
- package/dist/blocks/saved-views/index.js +29 -0
- package/dist/blocks/saved-views/react/index.d.ts +34 -0
- package/dist/blocks/saved-views/react/index.js +57 -0
- package/dist/blocks/saved-views/react/server.d.ts +7 -0
- package/dist/blocks/saved-views/react/server.js +7 -0
- package/dist/blocks/saved-views/solid/index.d.ts +13 -0
- package/dist/blocks/saved-views/solid/index.js +14 -0
- package/dist/blocks/saved-views/svelte/index.d.ts +13 -0
- package/dist/blocks/saved-views/svelte/index.js +14 -0
- package/dist/blocks/saved-views/vue/index.d.ts +13 -0
- package/dist/blocks/saved-views/vue/index.js +14 -0
- package/dist/blocks/search/index.d.ts +31 -0
- package/dist/blocks/search/index.js +61 -0
- package/dist/blocks/search/react/index.d.ts +36 -0
- package/dist/blocks/search/react/index.js +49 -0
- package/dist/blocks/search/react/server.d.ts +7 -0
- package/dist/blocks/search/react/server.js +8 -0
- package/dist/blocks/search/solid/index.d.ts +13 -0
- package/dist/blocks/search/solid/index.js +14 -0
- package/dist/blocks/search/svelte/index.d.ts +13 -0
- package/dist/blocks/search/svelte/index.js +14 -0
- package/dist/blocks/search/vue/index.d.ts +13 -0
- package/dist/blocks/search/vue/index.js +14 -0
- package/dist/blocks/service-principals/index.d.ts +126 -0
- package/dist/blocks/service-principals/index.js +107 -0
- package/dist/blocks/sessions/index.d.ts +7 -0
- package/dist/blocks/sessions/index.js +14 -0
- package/dist/blocks/sessions/react/index.d.ts +31 -0
- package/dist/blocks/sessions/react/index.js +51 -0
- package/dist/blocks/sessions/react/server.d.ts +9 -0
- package/dist/blocks/sessions/react/server.js +11 -0
- package/dist/blocks/sessions/solid/index.d.ts +20 -0
- package/dist/blocks/sessions/solid/index.js +23 -0
- package/dist/blocks/sessions/svelte/index.d.ts +20 -0
- package/dist/blocks/sessions/svelte/index.js +23 -0
- package/dist/blocks/sessions/vue/index.d.ts +20 -0
- package/dist/blocks/sessions/vue/index.js +23 -0
- package/dist/blocks/settings/index.d.ts +20 -86
- package/dist/blocks/settings/index.js +28 -102
- package/dist/blocks/settings/react/index.d.ts +25 -0
- package/dist/blocks/settings/react/index.js +37 -0
- package/dist/blocks/settings/react/server.d.ts +7 -0
- package/dist/blocks/settings/react/server.js +7 -0
- package/dist/blocks/settings/solid/index.d.ts +13 -0
- package/dist/blocks/settings/solid/index.js +14 -0
- package/dist/blocks/settings/svelte/index.d.ts +13 -0
- package/dist/blocks/settings/svelte/index.js +14 -0
- package/dist/blocks/settings/vue/index.d.ts +13 -0
- package/dist/blocks/settings/vue/index.js +14 -0
- package/dist/blocks/share-links/index.d.ts +106 -0
- package/dist/blocks/share-links/index.js +102 -0
- package/dist/blocks/shared-signals/index.d.ts +395 -0
- package/dist/blocks/shared-signals/index.js +880 -0
- package/dist/blocks/signing-keys/index.d.ts +29 -0
- package/dist/blocks/signing-keys/index.js +161 -0
- package/dist/blocks/sla/index.d.ts +114 -0
- package/dist/blocks/sla/index.js +122 -0
- package/dist/blocks/sso/index.d.ts +169 -147
- package/dist/blocks/sso/index.js +258 -321
- package/dist/blocks/state-machine/index.d.ts +105 -0
- package/dist/blocks/state-machine/index.js +116 -0
- package/dist/blocks/tags/index.d.ts +20 -0
- package/dist/blocks/tags/index.js +28 -0
- package/dist/blocks/tags/react/index.d.ts +28 -0
- package/dist/blocks/tags/react/index.js +47 -0
- package/dist/blocks/tags/react/server.d.ts +7 -0
- package/dist/blocks/tags/react/server.js +7 -0
- package/dist/blocks/tags/solid/index.d.ts +13 -0
- package/dist/blocks/tags/solid/index.js +14 -0
- package/dist/blocks/tags/svelte/index.d.ts +13 -0
- package/dist/blocks/tags/svelte/index.js +14 -0
- package/dist/blocks/tags/vue/index.d.ts +13 -0
- package/dist/blocks/tags/vue/index.js +14 -0
- package/dist/blocks/targets/index.d.ts +82 -0
- package/dist/blocks/targets/index.js +73 -0
- package/dist/blocks/teams/index.d.ts +61 -0
- package/dist/blocks/teams/index.js +83 -0
- package/dist/blocks/templates/index.d.ts +362 -0
- package/dist/blocks/templates/index.js +483 -0
- package/dist/blocks/time-tracking/index.d.ts +250 -0
- package/dist/blocks/time-tracking/index.js +317 -0
- package/dist/blocks/trash/index.d.ts +78 -0
- package/dist/blocks/trash/index.js +79 -0
- package/dist/blocks/undo/index.d.ts +9 -0
- package/dist/blocks/undo/index.js +14 -0
- package/dist/blocks/undo/react/index.d.ts +17 -0
- package/dist/blocks/undo/react/index.js +24 -0
- package/dist/blocks/undo/react/server.d.ts +7 -0
- package/dist/blocks/undo/react/server.js +7 -0
- package/dist/blocks/undo/solid/index.d.ts +13 -0
- package/dist/blocks/undo/solid/index.js +14 -0
- package/dist/blocks/undo/svelte/index.d.ts +13 -0
- package/dist/blocks/undo/svelte/index.js +14 -0
- package/dist/blocks/undo/vue/index.d.ts +13 -0
- package/dist/blocks/undo/vue/index.js +14 -0
- package/dist/blocks/usage/index.d.ts +10 -4
- package/dist/blocks/usage/index.js +16 -233
- package/dist/blocks/usage/react/index.d.ts +23 -0
- package/dist/blocks/usage/react/index.js +38 -0
- package/dist/blocks/usage/react/server.d.ts +7 -0
- package/dist/blocks/usage/react/server.js +7 -0
- package/dist/blocks/usage/solid/index.d.ts +13 -0
- package/dist/blocks/usage/solid/index.js +14 -0
- package/dist/blocks/usage/svelte/index.d.ts +13 -0
- package/dist/blocks/usage/svelte/index.js +14 -0
- package/dist/blocks/usage/vue/index.d.ts +13 -0
- package/dist/blocks/usage/vue/index.js +14 -0
- package/dist/blocks/versions/index.d.ts +169 -0
- package/dist/blocks/versions/index.js +288 -0
- package/dist/blocks/waitlist/index.d.ts +57 -19
- package/dist/blocks/waitlist/index.js +46 -12
- package/dist/blocks/webhooks/index.d.ts +269 -137
- package/dist/blocks/webhooks/index.js +752 -179
- package/dist/blocks/work-items/index.d.ts +208 -0
- package/dist/blocks/work-items/index.js +305 -0
- package/dist/blocks/workflow-builder/index.d.ts +26 -6
- package/dist/blocks/workflow-builder/index.js +30 -5
- package/dist/blocks/workflow-builder/react/index.d.ts +4 -19
- package/dist/blocks/workflow-builder/react/index.js +45 -89
- package/dist/blocks/workflow-builder/solid/index.d.ts +20 -0
- package/dist/blocks/workflow-builder/solid/index.js +23 -0
- package/dist/blocks/workflow-builder/svelte/index.d.ts +20 -0
- package/dist/blocks/workflow-builder/svelte/index.js +23 -0
- package/dist/blocks/workflow-builder/vue/index.d.ts +20 -0
- package/dist/blocks/workflow-builder/vue/index.js +23 -0
- package/dist/blocks/workflows/index.d.ts +20 -3
- package/dist/blocks/workflows/index.js +27 -3
- package/dist/blocks/workflows/react/index.d.ts +5 -20
- package/dist/blocks/workflows/react/index.js +41 -113
- package/dist/blocks/workflows/solid/index.d.ts +20 -0
- package/dist/blocks/workflows/solid/index.js +23 -0
- package/dist/blocks/workflows/svelte/index.d.ts +20 -0
- package/dist/blocks/workflows/svelte/index.js +23 -0
- package/dist/blocks/workflows/vue/index.d.ts +20 -0
- package/dist/blocks/workflows/vue/index.js +23 -0
- package/dist/blocks-D2WQ63PI.js +84 -0
- package/dist/bookings-EJAVAuVz.js +181 -0
- package/dist/build-6jmaPAgx.js +689 -0
- package/dist/build-Cm0T5MVG.js +1815 -0
- package/dist/calendar-1J1E5dLq.js +801 -0
- package/dist/channel-D-LHCY11.d.ts +78 -0
- package/dist/channels-C-GCoNLd.js +114 -0
- package/dist/chat-sdk/index.d.ts +131 -7
- package/dist/chat-sdk/index.js +154 -6
- package/dist/chat-sdk/react/index.d.ts +2 -1
- package/dist/chat-sdk/react/index.js +1 -2
- package/dist/chat-sdk/react/server.d.ts +2 -1
- package/dist/chat-sdk/react/server.js +1 -2
- package/dist/cli/add-BhI_nXAo.js +75 -0
- package/dist/cli/add-CUS0AiBh.js +651 -0
- package/dist/cli/add-ojbcMxyp.js +1 -0
- package/dist/cli/adopt-D0ASVx2G.js +1 -0
- package/dist/cli/adopt-DwcU6CJd.js +412 -0
- package/dist/cli/agent-CCrTYK3W.js +176 -0
- package/dist/cli/apply-DBXC0Z5I.js +332 -0
- package/dist/cli/bin.js +40 -20
- package/dist/cli/blocks-B15ltTFn.js +124 -0
- package/dist/cli/blocks-BXeqIzWN.js +1 -0
- package/dist/cli/cache-CPBYJAkb.js +502 -0
- package/dist/cli/catalog-Di15TkM2.js +187 -0
- package/dist/cli/codemod-CrI33UR2.js +985 -0
- package/dist/cli/command-D_HI1mp1.js +853 -0
- package/dist/cli/completion-DzYo025z.js +205 -0
- package/dist/cli/completion-En43UcyJ.js +30 -0
- package/dist/cli/completion-Vry-Wjw8.js +1 -0
- package/dist/cli/config-Bi_UBxXl.js +1451 -0
- package/dist/cli/config-DsqQr5z3.js +1 -0
- package/dist/cli/config-DyJgo2d9.js +39 -0
- package/dist/cli/config-edit-Ct1lXe8a.js +603 -0
- package/dist/cli/db-DT1bGB02.js +78 -0
- package/dist/cli/design-edit-B-WsnhUF.js +175 -0
- package/dist/cli/detect-BeLVeNpA.js +84 -0
- package/dist/cli/dist-D_VbPAMR.js +129 -0
- package/dist/cli/dist-DuiMMRbJ.js +1112 -0
- package/dist/cli/doctor-wACp5w6N.js +3508 -0
- package/dist/cli/emit-j0zZ6NE_.js +1061 -0
- package/dist/cli/env-2v9JrxSr.js +142 -0
- package/dist/cli/env-Cf5OTqbK.js +1087 -0
- package/dist/cli/env-Ch99nTQw.js +1 -0
- package/dist/cli/env-DkBe35Rv.js +1 -0
- package/dist/cli/errors-Caiz_0so.js +98 -0
- package/dist/cli/fastest-levenshtein-dhRRvrM2.js +120 -0
- package/dist/cli/files-DDvAwTko.js +963 -0
- package/dist/cli/gen-BhquLu7l.js +304 -0
- package/dist/cli/guards-CUlDNYZs.js +8 -0
- package/dist/cli/index.d.ts +260 -129
- package/dist/cli/index.js +13 -10
- package/dist/cli/init-BwLTO6XG.js +400 -0
- package/dist/cli/introspect-B-gXAIqs.js +51 -0
- package/dist/cli/io-BiPX-_J1.js +37 -0
- package/dist/cli/jsonc-C8M0EhHB.js +1 -0
- package/dist/cli/keys-hwtdwdkT.js +106 -0
- package/dist/cli/live-BFfYoE0_.js +329 -0
- package/dist/cli/mcp-Bdm2oGmL.js +237 -0
- package/dist/cli/metadata-DikbSOE0.js +138 -0
- package/dist/cli/migration-safety-LaGVPPuD.js +206 -0
- package/dist/cli/module-migration-CLkZ8jpw.js +592 -0
- package/dist/cli/moved-B7UFO_OM.js +152 -0
- package/dist/cli/parse-CwV5a6dA.js +170 -0
- package/dist/cli/preset-DQ1DxMtI.js +129 -0
- package/dist/cli/prompts-Bvg_DBpe.js +1137 -0
- package/dist/cli/redact-PjNswZOs.js +35 -0
- package/dist/cli/rolldown-runtime-kJ_i4yPo.js +26 -0
- package/dist/cli/run-BLJj7SuM.js +685 -0
- package/dist/cli/run-DliGNdjI.js +1507 -0
- package/dist/cli/scaffold-6bv24GSP.js +898 -0
- package/dist/cli/scaffold-DUz5fa-k.js +1 -0
- package/dist/cli/seed-CIJaL1Ao.js +113 -0
- package/dist/cli/seed-ClGWseBT.js +1 -0
- package/dist/cli/shared-CNcvDOLt.js +145 -0
- package/dist/cli/shell-Btv_4Yhe.js +10 -0
- package/dist/cli/skills-CaxIQhzW.js +121 -0
- package/dist/cli/snapshot-Dvcx0BSl.js +347 -0
- package/dist/cli/source-args-BNhagtpw.js +47 -0
- package/dist/cli/spec-BewE6r6J.js +7501 -0
- package/dist/cli/spec-DRDaIq8f.js +1 -0
- package/dist/cli/sql-BBkchli4.js +326 -0
- package/dist/cli/sql-BCQt5TDs.js +2 -0
- package/dist/cli/stack-status-LeEoCtV1.js +456 -0
- package/dist/cli/style-2JfIPVMQ.js +29 -0
- package/dist/cli/supabase-toml-DjLgBYEo.js +1153 -0
- package/dist/cli/sync-CJ-ft-tl.js +88 -0
- package/dist/cli/topics-BBE1-Vrg.js +30 -0
- package/dist/cli/trace-VbdO6bcN.js +7 -0
- package/dist/cli/typegen--TfvOPLh.js +494 -0
- package/dist/cli/typegen-version-BNBPI4Eu.js +9 -0
- package/dist/cli/validate-BfWNKvxy.js +7522 -0
- package/dist/cli/version-D1wM9DNb.js +4 -0
- package/dist/cli/write-Dp1XlAVM.js +198 -0
- package/dist/client/index.d.ts +7 -4
- package/dist/client/index.js +152 -6
- package/dist/client/native/index.d.ts +71 -4
- package/dist/client/native/index.js +65 -6
- package/dist/client-13Ii0c0P.js +84 -0
- package/dist/client-9zIKhf5D.d.ts +58 -0
- package/dist/client-AxwF58Eo.js +98 -0
- package/dist/client-B0rvMvA8.d.ts +52 -0
- package/dist/client-B5nnqDmz.d.ts +39 -0
- package/dist/client-B7LCXnnY.d.ts +59 -0
- package/dist/client-B9CqzgPO.js +75 -0
- package/dist/client-B9H4BZJh.d.ts +455 -0
- package/dist/client-BGnJ5WJi.js +438 -0
- package/dist/client-BLKpcAs0.d.ts +34 -0
- package/dist/client-BO9fQgBB.d.ts +155 -0
- package/dist/client-B_r4denm.d.ts +135 -0
- package/dist/client-BaynD5V-.d.ts +388 -0
- package/dist/client-BfgwocyT.js +155 -0
- package/dist/client-BpS8a6Fm.js +51 -0
- package/dist/client-BtBkVSk2.d.ts +108 -0
- package/dist/client-ByGlM0YF.d.ts +101 -0
- package/dist/client-BzCv4kKE.js +65 -0
- package/dist/client-C-2ajnhM.js +89 -0
- package/dist/client-C3dLIsJv.d.ts +122 -0
- package/dist/client-C597NIlL.d.ts +277 -0
- package/dist/client-C5mUEb2n.js +55 -0
- package/dist/client-CFeWXNXy.js +133 -0
- package/dist/client-CWs3X4g1.js +120 -0
- package/dist/client-Cgxj38RS.d.ts +419 -0
- package/dist/client-CjyTNdt1.d.ts +65 -0
- package/dist/client-CmHsfDHU.js +438 -0
- package/dist/client-CpMv4-v5.d.ts +100 -0
- package/dist/client-CsRpAyIv.d.ts +68 -0
- package/dist/client-CvITjt-9.js +310 -0
- package/dist/client-D0502FgY.js +1051 -0
- package/dist/client-D727oIVC.js +169 -0
- package/dist/client-D9zBl9PT.d.ts +103 -0
- package/dist/client-DG7FwgZD.js +104 -0
- package/dist/client-DNq8xYb-.js +52 -0
- package/dist/client-DR_YEGnc.d.ts +130 -0
- package/dist/client-DZXFDaQE.d.ts +157 -0
- package/dist/client-Diu2lPbg.d.ts +218 -0
- package/dist/client-Dk8gY9hi.d.ts +34 -0
- package/dist/client-Ezlbskjq.js +60 -0
- package/dist/client-Fi8CoJcs.d.ts +263 -0
- package/dist/client-LVa6yC9u.d.ts +107 -0
- package/dist/client-WXJwUhr1.d.ts +162 -0
- package/dist/client-WgrPIHH-.js +213 -0
- package/dist/client-ZTtSV3l8.js +40 -0
- package/dist/client-ckXfdy1k.js +38 -0
- package/dist/client-fpvgtQKE.js +128 -0
- package/dist/client-iB5axfa0.js +209 -0
- package/dist/client-jvtwGFy4.js +137 -0
- package/dist/client-kI6vCKVI.js +288 -0
- package/dist/client-kKdkLGPB.d.ts +131 -0
- package/dist/client-pxjbgOz6.js +376 -0
- package/dist/client-rp7YfOg1.js +67 -0
- package/dist/cloud-event-bwsBwVNG.d.ts +64 -0
- package/dist/codecs-Bm46sVxr.d.ts +215 -0
- package/dist/codecs-C7E_OoiC.js +358 -0
- package/dist/codegen-2m4SKVdi.d.ts +1654 -0
- package/dist/comments-N7Bi-oTW.js +230 -0
- package/dist/commerce/index.d.ts +211 -0
- package/dist/commerce/index.js +517 -0
- package/dist/compiler-C6E3WwIi.d.ts +14 -0
- package/dist/compose-CO_cljl3.js +53 -0
- package/dist/composite-CPV0thLs.js +130 -0
- package/dist/composite-DMMA_Whg.d.ts +67 -0
- package/dist/config/index.d.ts +7 -5
- package/dist/config/index.js +7 -4
- package/dist/config-C4RQDF6t.js +3896 -0
- package/dist/config-CkyahUjo.js +558 -0
- package/dist/connector-Cp8CqssJ.d.ts +107 -0
- package/dist/connectors-CZdfZcIg.d.ts +141 -0
- package/dist/context-B8_p3MXo.js +11 -0
- package/dist/context-BDDgjoxz.js +41 -0
- package/dist/context-C-bHOtoD.js +5 -0
- package/dist/context-CCfX2szU.d.ts +377 -0
- package/dist/context-D6ZMKc2L.js +19 -0
- package/dist/context-wDKxSl9x.js +9 -0
- package/dist/controller-CCb9tHw_.d.ts +46 -0
- package/dist/controller-D6NyNrlZ.js +79 -0
- package/dist/create/index.d.ts +597 -0
- package/dist/create/index.js +2049 -0
- package/dist/create/lite/index.d.ts +85 -0
- package/dist/create/lite/index.js +126 -0
- package/dist/create/supabase/index.d.ts +68 -0
- package/dist/create/supabase/index.js +312 -0
- package/dist/credentials/index.d.ts +15 -5
- package/dist/credentials/index.js +16 -8
- package/dist/cron-CUaKTjWC.js +145 -0
- package/dist/cron-route-BsgbJ-g4.js +24 -0
- package/dist/csv-CVfXqaAu.js +89 -0
- package/dist/csv-D3eKxV1T.d.ts +28 -0
- package/dist/define-CMcokcZz.js +1896 -0
- package/dist/define-DXTC706J.d.ts +1005 -0
- package/dist/define-block-B6Gjs57G.js +52 -0
- package/dist/define-block-BlHQxDIQ.d.ts +256 -0
- package/dist/delegation-Dt8hMJWu.js +140 -0
- package/dist/delivery-B1mKaOen.js +30 -0
- package/dist/delivery-BeHgwS3k.d.ts +69 -0
- package/dist/documents-BYM2viS0.d.ts +96 -0
- package/dist/edge/index.d.ts +16 -14
- package/dist/edge/index.js +24 -18
- package/dist/elysia/index.d.ts +1 -1
- package/dist/elysia/index.js +2 -2
- package/dist/email-BcmbIWOX.d.ts +42 -0
- package/dist/embeddings-CVeOoufZ.js +128 -0
- package/dist/embeddings-Da0w4A_0.d.ts +78 -0
- package/dist/ended-EcTtzzQJ.d.ts +70 -0
- package/dist/entitlements-AmYp2KHX.js +45 -0
- package/dist/entitlements-Bn7BTnbg.d.ts +53 -0
- package/dist/env/index.d.ts +1 -1
- package/dist/env/index.js +9 -4
- package/dist/envelope--7d0Q3Se.js +90 -0
- package/dist/errors-7MqM7bbV.js +44 -0
- package/dist/errors-8i6tSICm.js +301 -0
- package/dist/escape-like-AUEPn-C5.d.ts +15 -0
- package/dist/eve/index.d.ts +5 -5
- package/dist/eve/index.js +9 -9
- package/dist/eve-BcEr_hPo.d.ts +151 -0
- package/dist/event-calendar-DJXXMJ3x.d.ts +217 -0
- package/dist/event-map-Dy2vKHai.js +19 -0
- package/dist/events/index.d.ts +4 -4
- package/dist/events/index.js +10 -7
- package/dist/events-CtAHxPal.d.ts +800 -0
- package/dist/events-xbpHkcK9.js +82 -0
- package/dist/executor-BicyP8Nl.d.ts +272 -0
- package/dist/executor-CHRwEYqt.d.ts +95 -0
- package/dist/executor-CIxyatuB.d.ts +174 -0
- package/dist/executor-Cex-1PFp.js +735 -0
- package/dist/executor-D3K3tycZ.js +147 -0
- package/dist/executor-DzJQVTE2.d.ts +39 -0
- package/dist/executor-aKUo_Xyb.js +206 -0
- package/dist/expo/index.d.ts +4 -4
- package/dist/expo/index.js +6 -6
- package/dist/expo-sqlite/index.d.ts +3 -3
- package/dist/expo-sqlite/index.js +2 -2
- package/dist/field-errors-nFnYWvB0.d.ts +113 -0
- package/dist/field-formats-Cif5gr7c.js +102 -0
- package/dist/field-formats-DCvOQlOy.d.ts +39 -0
- package/dist/filter-evaluate-C0ULNfS7.js +214 -0
- package/dist/filter-evaluate-CEm52E5s.d.ts +34 -0
- package/dist/filter-query-B3lhckKX.js +518 -0
- package/dist/filter-query-D3wOD1P_.d.ts +121 -0
- package/dist/flags-CtSrkVuW.js +279 -0
- package/dist/flags-Dz5PIzFU.d.ts +230 -0
- package/dist/flags-sdk/index.d.ts +143 -0
- package/dist/flags-sdk/index.js +175 -0
- package/dist/form-definition-GVZTILhS.js +311 -0
- package/dist/form-definition-sagoefQr.d.ts +95 -0
- package/dist/format-CNwSjXUU.d.ts +70 -0
- package/dist/framework-C2oL4OaO.d.ts +26 -0
- package/dist/framework-Cfm0IspZ.js +51 -0
- package/dist/function-contract-B4c0XuTU.d.ts +21 -0
- package/dist/function-contract-DmkBg19r.js +5 -0
- package/dist/gateway-CJL6ZG17.d.ts +109 -0
- package/dist/gateway-options-ClvvfuuU.d.ts +29 -0
- package/dist/gateway-options-DcLcWL5_.js +27 -0
- package/dist/graph-Cs28bOlK.js +360 -0
- package/dist/groups-CxonH3u5.js +16 -0
- package/dist/h3/index.d.ts +7 -3
- package/dist/h3/index.js +3 -3
- package/dist/h3/v1/index.d.ts +1 -1
- package/dist/h3/v1/index.js +2 -2
- package/dist/hono/index.d.ts +24 -10
- package/dist/hono/index.js +50 -22
- package/dist/http-BF-V0CUF.js +25 -0
- package/dist/impersonation-CDeCzZP6.js +62 -0
- package/dist/impersonation-D5chOkrO.d.ts +25 -0
- package/dist/inbox-BaUJgHOF.d.ts +400 -0
- package/dist/index-8xwnaWHY.d.ts +344 -0
- package/dist/index-BurdFUXr.d.ts +131 -0
- package/dist/index-Cckxs8IE.d.ts +206 -0
- package/dist/index-Ck4oK5vV.d.ts +258 -0
- package/dist/index-Co0YsJTk.d.ts +58 -0
- package/dist/index-CxmVzT-3.d.ts +86 -0
- package/dist/index-D1kMyNc7.d.ts +245 -0
- package/dist/index-DL8z_oDo.d.ts +227 -0
- package/dist/index-DMONTkSf.d.ts +202 -0
- package/dist/index-DTQbC3CW.d.ts +58 -0
- package/dist/index-DcijDfh1.d.ts +97 -0
- package/dist/index-MCXVzkXs.d.ts +722 -0
- package/dist/index-gXy3R1Uq.d.ts +138 -0
- package/dist/index.d.ts +15 -15
- package/dist/index.js +15 -14
- package/dist/iso4217-A8ev-CNW.js +176 -0
- package/dist/json-schema-CpYINXG8.js +548 -0
- package/dist/jws-35a8VhFV.d.ts +60 -0
- package/dist/jws-milwSg7E.js +191 -0
- package/dist/kit-BlcEFQql.d.ts +66 -0
- package/dist/kit-gqwkVhGU.js +104 -0
- package/dist/knowledge-BYtgA52P.d.ts +187 -0
- package/dist/knowledge-CSNKLX-s.js +272 -0
- package/dist/lint/index.js +9 -9
- package/dist/list/index.d.ts +4 -2
- package/dist/list/index.js +4 -2
- package/dist/list-query-CBXNfJt4.js +549 -0
- package/dist/list-query-DWJIiVz_.d.ts +194 -0
- package/dist/live-DwDreq1n.js +239 -0
- package/dist/management-D1gG89z2.d.ts +53 -0
- package/dist/mcp/index.d.ts +59 -17
- package/dist/mcp/index.js +202 -98
- package/dist/mcp/sdk/index.d.ts +6 -6
- package/dist/mcp/sdk/index.js +7 -7
- package/dist/messages-Cx4ttLJJ.js +493 -0
- package/dist/methods-7u6vSgz_.js +11 -0
- package/dist/metric-definition-95HFoW1V.d.ts +70 -0
- package/dist/metric-definition-BjxVn4R5.js +117 -0
- package/dist/mfa-DtflCXEt.d.ts +30 -0
- package/dist/model-lUafmeBQ.d.ts +311 -0
- package/dist/model-messages-CTu-6kBu.js +206 -0
- package/dist/money-95Rff2vT.js +185 -0
- package/dist/money-DFpWzQvk.d.ts +76 -0
- package/dist/money-codec-DCGgzO26.js +41 -0
- package/dist/nestjs/index.d.ts +2 -2
- package/dist/nestjs/index.js +2 -2
- package/dist/next/index.d.ts +26 -16
- package/dist/next/index.js +17 -16
- package/dist/node/index.d.ts +2 -2
- package/dist/node/index.js +3 -3
- package/dist/nuxt/index.d.ts +2 -2
- package/dist/nuxt/index.js +3 -2
- package/dist/onboarding-viTTNWUp.js +68 -0
- package/dist/openapi/index.d.ts +3 -3
- package/dist/openapi/index.js +2 -2
- package/dist/operations-BtuQRwTJ.d.ts +6 -0
- package/dist/operations-CsIfMED7.js +29 -0
- package/dist/optional-peer-Dx8TaYXw.js +29 -0
- package/dist/options-B0FcEKtH.js +5 -0
- package/dist/options-B5BU2Yg7.js +11 -0
- package/dist/options-B5woz53h.js +5 -0
- package/dist/options-B7EJaOX-.js +5 -0
- package/dist/options-B9q8CROT.js +9 -0
- package/dist/options-BA6jV6py.js +10 -0
- package/dist/options-BAW2ZlZ8.js +8 -0
- package/dist/options-BMjcVuaI.js +82 -0
- package/dist/options-BOOEzor9.js +5 -0
- package/dist/options-BZsoPJGX.js +5 -0
- package/dist/options-BesyRBnM.js +16 -0
- package/dist/options-Bf96aVk5.js +10 -0
- package/dist/options-BlOPivzq.js +8 -0
- package/dist/options-Blg8lAkz.js +9 -0
- package/dist/options-Bn4cu0gt.js +5 -0
- package/dist/options-BnoJOwXK.js +8 -0
- package/dist/options-Bp7sgKvl.js +30 -0
- package/dist/options-BxcFLL1G.js +8 -0
- package/dist/options-C1HR4UZd.js +13 -0
- package/dist/options-C239TLRF.js +14 -0
- package/dist/options-C2HesT4A.js +9 -0
- package/dist/options-C3EzJATk.js +10 -0
- package/dist/options-C3hZ1fbC.js +10 -0
- package/dist/options-C6rEL6U5.js +8 -0
- package/dist/options-CAzVf-1T.js +8 -0
- package/dist/options-CGKSUFUq.js +5 -0
- package/dist/options-CGjGE8xS.js +12 -0
- package/dist/options-CK5WiFwG.js +11 -0
- package/dist/options-CN7PHkhU.js +8 -0
- package/dist/options-CTZNpb2n.js +5 -0
- package/dist/options-CUqQ9pm7.js +9 -0
- package/dist/options-CVSWgZpY.js +8 -0
- package/dist/options-CXFz0xxS.js +8 -0
- package/dist/options-CZk_fbbg.js +9 -0
- package/dist/options-C_pb1Nd3.js +5 -0
- package/dist/options-CbSOj53r.d.ts +52 -0
- package/dist/options-ChD15QxJ.js +9 -0
- package/dist/options-CkScQRJR.js +12 -0
- package/dist/options-CljDnQt2.js +25 -0
- package/dist/options-CmraJhd9.js +5 -0
- package/dist/options-CoX6VKGb.js +8 -0
- package/dist/options-CrC78Tee.js +5 -0
- package/dist/options-Ctac2R0Q.js +11 -0
- package/dist/options-CyD7OObW.js +17 -0
- package/dist/options-D1blDihM.js +9 -0
- package/dist/options-D2Gd6VfS.js +8 -0
- package/dist/options-D2d1fFuw.js +11 -0
- package/dist/options-D40CQzji.js +8 -0
- package/dist/options-D7f2VKzj.js +25 -0
- package/dist/options-DARkpk2P.js +8 -0
- package/dist/options-DCduTMST.js +17 -0
- package/dist/options-DDzggjN7.js +8 -0
- package/dist/options-DMR68VAC.js +5 -0
- package/dist/options-DNKyN5uq.js +20 -0
- package/dist/options-DTDxFT6J.js +13 -0
- package/dist/options-DWpz3V3F.js +8 -0
- package/dist/options-DXqcJyOP.js +10 -0
- package/dist/options-DYBQ973I.js +8 -0
- package/dist/options-Dh4wu9Ks.js +15 -0
- package/dist/options-Dmg1Da9P.js +25 -0
- package/dist/options-DsUgamiy.js +5 -0
- package/dist/options-EsUh744F.js +13 -0
- package/dist/options-Fz6xqu-b.js +5 -0
- package/dist/options-HSv8R6h5.js +13 -0
- package/dist/options-I8zVkB_y.js +8 -0
- package/dist/options-MHhjOoWz.js +5 -0
- package/dist/options-MLxMkd5B.js +11 -0
- package/dist/options-OJ5zmgr8.js +10 -0
- package/dist/options-QKP9FFcK.js +8 -0
- package/dist/options-SViK_2x2.js +12 -0
- package/dist/options-XgfTctbI.js +5 -0
- package/dist/options-_9arpsX9.js +11 -0
- package/dist/options-eBPsk4WI.js +11 -0
- package/dist/options-kLKILdIu.js +10 -0
- package/dist/options-n22NK3PL.js +8 -0
- package/dist/options-oeAq4Ho5.js +12 -0
- package/dist/options-qU8vgxhO.js +18 -0
- package/dist/options-vXMBEWSH.js +5 -0
- package/dist/options-wFnK3qWl.js +9 -0
- package/dist/options-xVAy3UsV.js +9 -0
- package/dist/organizations-Bxrm32IG.js +398 -0
- package/dist/orpc/index.d.ts +26 -10
- package/dist/orpc/index.js +54 -33
- package/dist/otel/index.d.ts +3 -3
- package/dist/otel/index.js +42 -7
- package/dist/outbox-BCGHl9X6.d.ts +181 -0
- package/dist/overlay/index.d.ts +1 -1
- package/dist/overlay/index.js +3 -3
- package/dist/payments-h45bswA-.js +16 -0
- package/dist/pg-error-BV_X8Isq.js +26 -0
- package/dist/plugin-D5OIaP93.d.ts +190 -0
- package/dist/plugins/actor/index.d.ts +1 -1
- package/dist/plugins/actor/index.js +1 -1
- package/dist/plugins/rules/index.d.ts +2 -2
- package/dist/plugins/rules/index.js +2 -2
- package/dist/plugins/soft-delete/index.d.ts +3 -3
- package/dist/plugins/soft-delete/index.js +4 -4
- package/dist/plugins/tenant/index.d.ts +4 -3
- package/dist/plugins/tenant/index.js +3 -3
- package/dist/plugins/timestamps/index.d.ts +1 -1
- package/dist/plugins/timestamps/index.js +1 -1
- package/dist/plugins/validation/index.d.ts +2 -2
- package/dist/plugins/validation/index.js +3 -3
- package/dist/pool-BBi4mot3.d.ts +117 -0
- package/dist/pool-errors-C94tPR_G.js +27 -0
- package/dist/ports-B53rB7zg.d.ts +285 -0
- package/dist/ports-Bcdppx0G.js +133 -0
- package/dist/ports-Dcnuo3HT.d.ts +86 -0
- package/dist/postgres/index.d.ts +28 -6
- package/dist/postgres/index.js +62 -25
- package/dist/postgrest-D6fEMsp4.d.ts +53 -0
- package/dist/powersync/index.d.ts +4 -4
- package/dist/powersync/index.js +4 -4
- package/dist/powersync/react/index.d.ts +8 -3
- package/dist/powersync/react/index.js +11 -3
- package/dist/preset/index.d.ts +4 -0
- package/dist/preset/index.js +4 -0
- package/dist/preset-BBrL6_Ln.js +648 -0
- package/dist/problem-CEjyhV5T.d.ts +76 -0
- package/dist/problem-pIiL3WbE.js +159 -0
- package/dist/provider-CQ1SrhLa.d.ts +113 -0
- package/dist/provider-DKh2xFZb.js +57 -0
- package/dist/push-token-CDMgWT13.d.ts +24 -0
- package/dist/push-token-D6REHMMw.js +16 -0
- package/dist/query/index.d.ts +2 -2
- package/dist/range-DwpWe8e7.js +7 -0
- package/dist/range-p5V4rBhZ.d.ts +8 -0
- package/dist/rank-keys-DcPMt_Jk.js +60 -0
- package/dist/rank-result-Dngpt2n5.d.ts +14 -0
- package/dist/rank-result-oUF1DYBm.js +18 -0
- package/dist/rate-limit-BtbddDnE.js +49 -0
- package/dist/rate-limit-ByfWNX9N.js +325 -0
- package/dist/rate-limit-C88MEAOm.d.ts +41 -0
- package/dist/ratelimit-headers-Bsxx0Tj2.js +62 -0
- package/dist/react/index.d.ts +9 -9
- package/dist/react/index.js +3 -4
- package/dist/react/native/index.d.ts +1 -1
- package/dist/react/native/index.js +2 -2
- package/dist/react/server.d.ts +10 -10
- package/dist/react/server.js +3 -3
- package/dist/react/session.d.ts +2 -2
- package/dist/react-BcKACxsj.js +410 -0
- package/dist/react-controller-Xn-IU44p.js +40 -0
- package/dist/react-env-Cc7Vf6eb.js +13 -0
- package/dist/react-router/index.d.ts +6 -6
- package/dist/react-router/index.js +7 -7
- package/dist/read-set-PWiJfv6S.js +314 -0
- package/dist/realtime/index.d.ts +8 -4
- package/dist/realtime/index.js +5 -327
- package/dist/realtime-status-D2dw1hOE.js +12 -0
- package/dist/realtime-status-DcsO00Gw.d.ts +8 -0
- package/dist/refusal-Bdr1k47u.d.ts +18 -0
- package/dist/refusal-Ch-u9dVd.js +61 -0
- package/dist/replicas-BvIL4_jL.js +94 -0
- package/dist/resolve-7atr-wWr.d.ts +266 -0
- package/dist/resolve-CAR9oaKW.js +869 -0
- package/dist/resource-CHGOmg1O.js +463 -0
- package/dist/resource-DO4gbVi5.js +91 -0
- package/dist/resource-DxcgtHq6.d.ts +106 -0
- package/dist/resource-execute-C45ICrN9.d.ts +12 -0
- package/dist/resource-types-CC59gMHE.d.ts +141 -0
- package/dist/resources-B71O7EVQ.d.ts +7 -0
- package/dist/resources-B7htXQeg.js +64 -0
- package/dist/respond-Cdg5ibH5.d.ts +93 -0
- package/dist/respond-Dpx48ATq.js +95 -0
- package/dist/result-COkvI9t5.js +134 -0
- package/dist/result-Cj3yWhjH.d.ts +298 -0
- package/dist/rrule-zBh3CA1r.js +290 -0
- package/dist/rules-4of_Fq-6.js +287 -0
- package/dist/run-watch-CQRdpy-f.js +53 -0
- package/dist/runtime-BOXURhEW.js +45 -0
- package/dist/sales-lines-C6gafAwg.d.ts +28 -0
- package/dist/sales-lines-CymdiwYd.js +41 -0
- package/dist/sales-shared-DAAGwQwN.d.ts +8 -0
- package/dist/sales-shared-DjCuN8xG.js +22 -0
- package/dist/scope-DgWjuXUw.js +90 -0
- package/dist/search-BtoWY6n_.js +9 -0
- package/dist/search-LbjCylX5.js +106 -0
- package/dist/server/index.d.ts +157 -51
- package/dist/server/index.js +295 -20
- package/dist/server-types-fXwJoFjt.d.ts +737 -0
- package/dist/session-Djo5t4KQ.d.ts +95 -0
- package/dist/settings-DxXfDUmh.js +90 -0
- package/dist/shared-9B02lczf.js +14 -0
- package/dist/shared-BmMcMoW9.js +89 -0
- package/dist/shared-as0EG51f.js +60 -0
- package/dist/sign-in-D0xN6E_l.js +360 -0
- package/dist/signatures-BMdJ7neI.d.ts +43 -0
- package/dist/signatures-C9CGYZS1.js +145 -0
- package/dist/signers-BjSgNAXP.d.ts +385 -0
- package/dist/signing-keys-Ccr86Y2C.d.ts +90 -0
- package/dist/solid/index.d.ts +8 -8
- package/dist/solid/index.js +3 -8
- package/dist/solid-controller-CZrt1Tg6.d.ts +11 -0
- package/dist/solid-controller-DLsmrczT.js +33 -0
- package/dist/solid-start/index.d.ts +8 -12
- package/dist/solid-start/index.js +8 -7
- package/dist/spec/index.d.ts +25 -5
- package/dist/spec/index.js +37 -4
- package/dist/spec-pins-Dqpml2dZ.d.ts +84 -0
- package/dist/spec-pins-S4PymRxp.js +60 -0
- package/dist/sql/index.d.ts +5 -548
- package/dist/sql/index.js +5 -38398
- package/dist/sql-BQshMgmB.js +422 -0
- package/dist/sql-CgTZOQZ7.js +87439 -0
- package/dist/sso-B5ZoEsXE.d.ts +131 -0
- package/dist/sso-CwAnve68.js +217 -0
- package/dist/ssr/index.d.ts +5 -6
- package/dist/ssr/index.js +4 -4
- package/dist/standard-C3_AAF3g.d.ts +7 -0
- package/dist/standard-DZmwmIhV.js +25 -0
- package/dist/stats-CUhqw6Ev.js +1128 -0
- package/dist/storage/index.d.ts +3 -3
- package/dist/storage/index.js +14 -10
- package/dist/storage-api-B4Ib2Zpo.d.ts +582 -0
- package/dist/store-B5qYKsTh.d.ts +68 -0
- package/dist/streams/index.d.ts +4 -4
- package/dist/streams/index.js +4 -4
- package/dist/streams/redis/index.d.ts +1 -1
- package/dist/streams/redis/index.js +4 -4
- package/dist/stripe/index.d.ts +16 -0
- package/dist/stripe/index.js +14 -0
- package/dist/stripe-NVcNOhHy.d.ts +140 -0
- package/dist/stripe-XZrSmDTf.js +32 -0
- package/dist/subject-readers-81xiWh4M.d.ts +21 -0
- package/dist/subject-readers-DDyPTIOr.js +46 -0
- package/dist/subjects-DP-fvFkk.d.ts +77 -0
- package/dist/subscribers-Cq--DL1E.js +34 -0
- package/dist/supabase-mcp-DomZ-amK.js +28 -0
- package/dist/support-BsqhV6jP.js +522 -0
- package/dist/support-view-CznLe4jq.d.ts +17 -0
- package/dist/svelte/index.d.ts +7 -7
- package/dist/svelte/index.js +2 -2
- package/dist/svelte-controller-CDAujo-_.js +50 -0
- package/dist/svelte-controller-DDbju9CW.d.ts +10 -0
- package/dist/sveltekit/index.d.ts +11 -13
- package/dist/sveltekit/index.js +9 -9
- package/dist/table-schema-pQlER3jj.js +283 -0
- package/dist/tags-7NHyD1P8.d.ts +30 -0
- package/dist/tags-DGldvcA4.js +84 -0
- package/dist/tanstack-db/index.d.ts +2 -2
- package/dist/tanstack-db/index.js +1 -1
- package/dist/tanstack-db/supabase/index.d.ts +5 -6
- package/dist/tanstack-db/supabase/index.js +180 -9
- package/dist/tanstack-start/index.d.ts +7 -7
- package/dist/tanstack-start/index.js +6 -6
- package/dist/tax-DDZUB_oc.d.ts +273 -0
- package/dist/tax-DZDpMMRw.js +140 -0
- package/dist/tee-CdRV1tcj.js +101 -0
- package/dist/template-DdgYjIZ5.js +123 -0
- package/dist/temporal-CB5Fpo5d.js +79 -0
- package/dist/temporal-required-DqRzr7i0.js +20 -0
- package/dist/tenant-B-fiItlJ.js +27 -0
- package/dist/tenant-DW_GmsW4.d.ts +17 -0
- package/dist/tenant-naming-Bsj3Uvap.js +27 -0
- package/dist/testing/index.d.ts +235 -32
- package/dist/testing/index.js +1133 -76
- package/dist/timing-BMCWgpdZ.js +92 -0
- package/dist/topic-DB-1YTMj.js +561 -0
- package/dist/topic-Dgs-eSYQ.d.ts +373 -0
- package/dist/types-BO8lVTun.d.ts +363 -0
- package/dist/types-C_GN-4ed.d.ts +162 -0
- package/dist/types-DGHfTW8_.d.ts +9 -0
- package/dist/types-DM8q3IOr.d.ts +240 -0
- package/dist/types-DOaUIJxW.d.ts +205 -0
- package/dist/types-DZj8CZMH.d.ts +649 -0
- package/dist/types-P1S1cj6N.d.ts +564 -0
- package/dist/types-R6syp1el.js +29 -0
- package/dist/undo-0qM13zul.js +44 -0
- package/dist/undo-D42sPjCf.d.ts +43 -0
- package/dist/usage-BrJGPvCq.js +250 -0
- package/dist/usage-CnQHSM_r.d.ts +202 -0
- package/dist/vault-EnOQJWjn.d.ts +50 -0
- package/dist/vercel-connect/index.d.ts +1 -1
- package/dist/vercel-connect/index.js +4 -4
- package/dist/verify-3NLjUIER.d.ts +142 -0
- package/dist/verify-C9D_jjsQ.js +126 -0
- package/dist/version-Bxj_xcUY.js +4 -0
- package/dist/view-DZ63nqwt.js +105 -0
- package/dist/view-SuASaomx.d.ts +90 -0
- package/dist/vue/index.d.ts +8 -8
- package/dist/vue/index.js +3 -16
- package/dist/vue-controller-C9tFzqAc.js +32 -0
- package/dist/vue-controller-D_ohttBZ.d.ts +11 -0
- package/dist/watch-Blj1mQ9n.js +139 -0
- package/dist/watch-D1wwzZ04.d.ts +84 -0
- package/dist/watch-topic-D-rpUg5n.d.ts +28 -0
- package/dist/watch-topic-miuymrli.js +57 -0
- package/dist/wire-DEY0ajW9.js +45 -0
- package/dist/workflow-builder-C5DBN7yq.js +697 -0
- package/dist/workflow-sdk/builder/index.d.ts +46 -15
- package/dist/workflow-sdk/builder/index.js +69 -21
- package/dist/workflow-sdk/index.d.ts +75 -2
- package/dist/workflow-sdk/index.js +83 -3
- package/dist/workflow-sdk/world/index.d.ts +29 -4
- package/dist/workflow-sdk/world/index.js +137 -59
- package/dist/workflow-sdk-Di5pmCAu.d.ts +161 -0
- package/dist/workflow-sdk-vjDWlnfX.js +243 -0
- package/dist/workflow-sdk-world-DPMdBfzn.js +2103 -0
- package/dist/workflows-DJXoxDZH.d.ts +243 -0
- package/dist/workflows-DzdX28KN.js +282 -0
- package/dist/yjs/index.d.ts +67 -0
- package/dist/yjs/index.js +212 -0
- package/package.json +800 -46
- package/schemas/cli-commands-v1.json +220 -0
- package/schemas/cli-result-v1.json +138 -0
- package/schemas/config-v1.json +4503 -909
- package/schemas/doctor-report-v1.json +30 -0
- package/schemas/snapshot-v2.json +271 -0
- package/skills/better-supabase/SKILL.md +12 -4
- package/skills/better-supabase/references/plugins.md +2 -2
- package/skills/better-supabase/references/ui-recipes.md +19324 -0
- package/skills/better-supabase-api/SKILL.md +14 -14
- package/skills/better-supabase-api/references/adapters.md +12 -2
- package/skills/better-supabase-api/references/ai.md +4 -4
- package/skills/better-supabase-api/references/expo.md +1 -1
- package/skills/better-supabase-api/references/powersync.md +1 -1
- package/skills/better-supabase-api/references/streams-credentials.md +8 -5
- package/skills/better-supabase-auth/SKILL.md +18 -11
- package/skills/better-supabase-auth/references/authorization-providers.md +5 -5
- package/skills/better-supabase-testing/SKILL.md +2 -2
- package/testing/act-cases.json +370 -0
- package/dist/access-sql-CrSbK1q-.js +0 -181
- package/dist/actor-CQTlc1Hh.d.ts +0 -43
- package/dist/adapter-CN45ibbV.js +0 -1691
- package/dist/agents-BY_LQXtQ.d.ts +0 -94
- package/dist/ai-cache-Dfgk8nBT.js +0 -81
- package/dist/ai-cache-DrUMMgp6.d.ts +0 -64
- package/dist/ai-chat-CVLRWbtS.js +0 -744
- package/dist/ai-chat-DXkMy74O.d.ts +0 -590
- package/dist/ai-files-CioLu5du.js +0 -320
- package/dist/ai-tasks-BRQ6iQLc.d.ts +0 -131
- package/dist/announcements-Bouy0Ski.d.ts +0 -72
- package/dist/announcements-p_BFofiR.js +0 -107
- package/dist/api-Dnf2q-Ht.d.ts +0 -370
- package/dist/api-DtHFC037.js +0 -676
- package/dist/api-keys-C8BlF3L2.d.ts +0 -156
- package/dist/assistant-DBlFDZsi.d.ts +0 -147
- package/dist/attributes-5dYul0u0.js +0 -13
- package/dist/authorization-BFCqamMs.d.ts +0 -172
- package/dist/authorizer-ayxUDXXP.js +0 -126
- package/dist/base64-D2gsioCY.js +0 -42
- package/dist/before-route-CnR0C0Jr.js +0 -30
- package/dist/bind-ButSzrHe.js +0 -97
- package/dist/bind-CQ5mPyX1.d.ts +0 -62
- package/dist/block-events-DTxU5tfr.js +0 -91
- package/dist/block-fields-CroxUuF2.js +0 -49
- package/dist/block-fields-D1pfrcIY.d.ts +0 -31
- package/dist/block-helpers-C0Xj8War.d.ts +0 -37
- package/dist/block-helpers-Cy3pB96I.js +0 -222
- package/dist/block-hooks-BPNMIlLl.js +0 -114
- package/dist/block-hooks-DaOVC7SC.d.ts +0 -107
- package/dist/block-transport-bAKh-dGc.js +0 -85
- package/dist/block-transport-inD4fFq-.d.ts +0 -70
- package/dist/build-hPwk3_X5.js +0 -1296
- package/dist/build-meLuYGri.js +0 -689
- package/dist/channel-_2Mx1Oyu.d.ts +0 -70
- package/dist/channels-CkgQ_X60.js +0 -114
- package/dist/cli/add-1dc5wM5k.js +0 -69
- package/dist/cli/bin.d.ts +0 -1
- package/dist/cli/cache-CIfA-jBV.js +0 -483
- package/dist/cli/codemod-JVlTQQG2.js +0 -491
- package/dist/cli/command-DV-StG1x.js +0 -507
- package/dist/cli/config-C2Pz2_4A.js +0 -52
- package/dist/cli/config-DpbF8ML3.js +0 -2
- package/dist/cli/config-M-WzL9O2.js +0 -1175
- package/dist/cli/db-BkcfOlyB.js +0 -53
- package/dist/cli/diff-D1jGdb3Y.js +0 -752
- package/dist/cli/dist-DBPdlPYK.js +0 -1112
- package/dist/cli/dist-DRAVaE6w.js +0 -842
- package/dist/cli/dist-DreZ24Sz.js +0 -129
- package/dist/cli/doctor-VcDtuusV.js +0 -3686
- package/dist/cli/emit-BHHfwUoT.js +0 -1136
- package/dist/cli/env-B--LMhEe.js +0 -514
- package/dist/cli/env-vzBG90Um.js +0 -2
- package/dist/cli/env-zHJtMIBo.js +0 -116
- package/dist/cli/errors-CqTLXe2M.js +0 -72
- package/dist/cli/fastest-levenshtein-CF7BCi9l.js +0 -120
- package/dist/cli/files-BVupXPIC.js +0 -34
- package/dist/cli/gen-DmVj3u4L.js +0 -322
- package/dist/cli/glue-C1UE8gQN.js +0 -468
- package/dist/cli/init-CVZ3s5kl.js +0 -258
- package/dist/cli/introspect-BToGNfm-.js +0 -81
- package/dist/cli/io-CFzJVJ68.js +0 -37
- package/dist/cli/jsonc-BUniUpOk.js +0 -2
- package/dist/cli/keys-CJhtIxJ3.js +0 -85
- package/dist/cli/metadata-DSRKCaf-.js +0 -133
- package/dist/cli/openapi-DWa4Ir1q.js +0 -60
- package/dist/cli/project-DZRaBaY7.js +0 -75
- package/dist/cli/prompts-BdeVmVpg.js +0 -2
- package/dist/cli/prompts-DZJB1nTw.js +0 -1142
- package/dist/cli/read-sets-DjJrm8Wj.js +0 -223
- package/dist/cli/rolldown-runtime-CMFfr-1z.js +0 -26
- package/dist/cli/run-DA6_lg3w.js +0 -389
- package/dist/cli/run-DuN1MX-7.js +0 -705
- package/dist/cli/scaffold-5DenHSxF.js +0 -292
- package/dist/cli/scaffold-CwQUMFRb.js +0 -2
- package/dist/cli/seed-CzBmrGON.js +0 -96
- package/dist/cli/seed-DOmit9Hq.js +0 -2
- package/dist/cli/skills-CnO8QFS7.js +0 -139
- package/dist/cli/snapshot-Bstk6ulj.js +0 -287
- package/dist/cli/source-args-BYfq6imV.js +0 -31
- package/dist/cli/spec-CzosTYm3.js +0 -7438
- package/dist/cli/spec-T_0Bcyw7.js +0 -2
- package/dist/cli/sql-BKOOQAX3.js +0 -517
- package/dist/cli/sql-DJrNDxQm.js +0 -3
- package/dist/cli/sql-layout-D6cphHT3.js +0 -69
- package/dist/cli/style-CB3vxgh0.js +0 -29
- package/dist/cli/supabase-toml-B-bIukQF.js +0 -1095
- package/dist/cli/typegen-Demi5-VQ.js +0 -486
- package/dist/cli/typegen-version-DeFbtzYI.js +0 -8
- package/dist/cli/validate-Ca13ktgz.js +0 -7522
- package/dist/cli/version-B4k0aUxS.js +0 -4
- package/dist/client-wxeTQFtB.js +0 -310
- package/dist/cloud-event-Dune0KI7.d.ts +0 -64
- package/dist/compiler-V1qvcST1.d.ts +0 -14
- package/dist/compose-BHej1acw.js +0 -53
- package/dist/composite-CWAJTRBF.d.ts +0 -146
- package/dist/composite-zTe0TCqj.js +0 -130
- package/dist/config-DlKvtt95.js +0 -540
- package/dist/connector-CySQEFcW.d.ts +0 -107
- package/dist/connectors--PGhmiu0.d.ts +0 -120
- package/dist/context-DsV2SueA.d.ts +0 -246
- package/dist/context-nPDvQ-Zl.js +0 -41
- package/dist/cron-D25Ukpxy.js +0 -145
- package/dist/cron-route-D2AN9SA1.js +0 -24
- package/dist/csv-BZnHA1Py.js +0 -25
- package/dist/define-CFQcvM20.js +0 -1949
- package/dist/define-DmcfoNXB.d.ts +0 -1005
- package/dist/embeddings-4ZvFzjsU.js +0 -127
- package/dist/embeddings-B4vhS-dY.d.ts +0 -68
- package/dist/ended-CcvcRqEd.d.ts +0 -69
- package/dist/entitlements-BYFf0Cdh.js +0 -24
- package/dist/entitlements-Ds8qoYZ-.d.ts +0 -51
- package/dist/envelope-DqnYGRw7.js +0 -47
- package/dist/errors-2M6CKMP4.js +0 -271
- package/dist/errors-rZ7VIqp6.js +0 -44
- package/dist/escape-like-DDWoHzh_.d.ts +0 -15
- package/dist/eve-CoAIcCkq.d.ts +0 -151
- package/dist/events-D1BOCll8.d.ts +0 -551
- package/dist/executor-B-fD7DLt.js +0 -735
- package/dist/executor-B_Hfobee.js +0 -162
- package/dist/executor-C-R4pucm.js +0 -83
- package/dist/executor-CpxLPCiz.d.ts +0 -36
- package/dist/executor-DfEtf0cq.d.ts +0 -164
- package/dist/executor-Drzu3dBK.d.ts +0 -261
- package/dist/executor-ngjKL_Pe.d.ts +0 -30
- package/dist/field-errors-DIe9XYWL.d.ts +0 -109
- package/dist/format-DTXdu8ya.d.ts +0 -70
- package/dist/framework-148t1m3C.d.ts +0 -25
- package/dist/framework-3ey3QmrO.js +0 -51
- package/dist/function-contract-BcZenXMO.d.ts +0 -8
- package/dist/gateway-S9vicgeo.d.ts +0 -130
- package/dist/graph-BGyLLFLX.js +0 -265
- package/dist/hooks-Bhza9Hnr.js +0 -277
- package/dist/http-sbmBe5d2.js +0 -25
- package/dist/impersonation-DcqaTBHx.js +0 -148
- package/dist/inbox-Cd1KCEBL.d.ts +0 -384
- package/dist/index-B72Rvv_j.d.ts +0 -89
- package/dist/index-BCHR4Ucl.d.ts +0 -300
- package/dist/index-BUK7jUzR.d.ts +0 -82
- package/dist/index-Ba1SI-uO.d.ts +0 -1331
- package/dist/index-BfxOaOYs.d.ts +0 -245
- package/dist/index-CicIyqOe.d.ts +0 -55
- package/dist/index-D69h4QqD.d.ts +0 -74
- package/dist/index-DG2SUXDQ.d.ts +0 -58
- package/dist/index-DoNVLHOU.d.ts +0 -206
- package/dist/index-R274XFlg.d.ts +0 -138
- package/dist/index-_4R4b01v.d.ts +0 -257
- package/dist/json-schema-CT4tvrkA.js +0 -548
- package/dist/kit-BhHr9T9v.js +0 -104
- package/dist/kit-W99LCPBS.d.ts +0 -66
- package/dist/knowledge-CAReFpRA.d.ts +0 -176
- package/dist/knowledge-DnHtb64A.js +0 -256
- package/dist/list-query-D3JQeEL7.d.ts +0 -164
- package/dist/list-query-gl808ac1.js +0 -459
- package/dist/live-CTAZQkwl.js +0 -257
- package/dist/messages-CJoHHCWT.js +0 -514
- package/dist/mfa-SZc9YYyb.d.ts +0 -54
- package/dist/model-OgBxvk3N.d.ts +0 -300
- package/dist/model-messages-Cxw_Up4f.js +0 -206
- package/dist/modules-DksjZyMW.js +0 -77
- package/dist/modules-DpPwzC7E.d.ts +0 -192
- package/dist/onboarding-LZvlK1P4.d.ts +0 -62
- package/dist/optional-peer-D1pi-skw.js +0 -24
- package/dist/outbox-DZfAvfzC.d.ts +0 -161
- package/dist/plugin-CPK2HsbY.d.ts +0 -190
- package/dist/pool-gkhbGp2E.d.ts +0 -89
- package/dist/postgrest-BUqLag2Q.d.ts +0 -53
- package/dist/problem-CJvFeGu7.js +0 -126
- package/dist/problem-TvGdxO1t.d.ts +0 -73
- package/dist/provider-DxRTex4x.js +0 -57
- package/dist/provider-ib9wzUDz.d.ts +0 -113
- package/dist/rate-limit-Bw7HgmFj.js +0 -260
- package/dist/react-Bmpo59D7.js +0 -409
- package/dist/react-topic-seAWjL3_.js +0 -38
- package/dist/read-set-DAeWhqPf.js +0 -314
- package/dist/refusal-CFI8-5nf.d.ts +0 -18
- package/dist/refusal-K78A1Vmq.js +0 -61
- package/dist/replicas-CwrYp5Zj.js +0 -94
- package/dist/resolve-Bvgf3ut_.js +0 -786
- package/dist/resolve-MxXVWyhd.d.ts +0 -173
- package/dist/resource--vTrBe6I.d.ts +0 -103
- package/dist/resource-BqNqlYg9.js +0 -91
- package/dist/resource-DA811u_4.js +0 -463
- package/dist/resource-execute-rbKvuCsY.d.ts +0 -12
- package/dist/resource-types-CqB6GWGT.d.ts +0 -141
- package/dist/resources-BVYPnuLo.js +0 -56
- package/dist/resources-DZSk8tXJ.d.ts +0 -7
- package/dist/respond-Cw-zanCm.d.ts +0 -93
- package/dist/respond-volM3ByS.js +0 -91
- package/dist/result-BchM1XZn.d.ts +0 -288
- package/dist/result-DEqHCMKP.js +0 -128
- package/dist/scope-CDHcS7dE.js +0 -90
- package/dist/search-CUWCRYKL.js +0 -9
- package/dist/server-types-CrAmZ8jv.d.ts +0 -614
- package/dist/session-ChiXDZdZ.d.ts +0 -72
- package/dist/shared-CBxosKK3.js +0 -75
- package/dist/shared-DHjhfRdV.js +0 -60
- package/dist/shared-DTneRoxi.js +0 -14
- package/dist/sign-in-D_yoP0PF.js +0 -86
- package/dist/signatures-BRS_p3WD.d.ts +0 -34
- package/dist/signatures-DsWv_bYR.js +0 -103
- package/dist/signers-cpdmZYrv.d.ts +0 -166
- package/dist/spec-pins-CwzDY25w.d.ts +0 -44
- package/dist/spec-pins-DsLfUH7l.js +0 -40
- package/dist/sql-CwuqaQ4Y.js +0 -388
- package/dist/standard-DkzZUneg.js +0 -25
- package/dist/standard-lmkbOtPB.d.ts +0 -7
- package/dist/stats-DhU78Ctf.js +0 -1127
- package/dist/storage-api-CB7Zl1Ci.d.ts +0 -582
- package/dist/store-DsIYEBnv.d.ts +0 -68
- package/dist/stripe-D04h-QBT.d.ts +0 -136
- package/dist/stripe-v-Y2lmop.js +0 -32
- package/dist/supabase-mcp-Cpn5A4i-.js +0 -28
- package/dist/support-D1pFFouF.js +0 -350
- package/dist/support-view-scqMgtOo.d.ts +0 -17
- package/dist/table-schema-htM_SbCW.js +0 -286
- package/dist/tags-BO9LjtWG.d.ts +0 -30
- package/dist/tee-Cb98Vn3b.js +0 -101
- package/dist/template-lPVh-EwW.js +0 -123
- package/dist/temporal-BJGitm-h.js +0 -79
- package/dist/temporal-required-BtynQtM-.js +0 -20
- package/dist/tenant-CM368LXb.d.ts +0 -17
- package/dist/tenant-I1TEZ_BX.js +0 -27
- package/dist/timing-CyTQPubY.js +0 -92
- package/dist/types-6cYK9pbJ.js +0 -29
- package/dist/types-Bb_4-vdW.d.ts +0 -220
- package/dist/types-CD6yCDx3.d.ts +0 -359
- package/dist/types-CbOUc5IH.d.ts +0 -156
- package/dist/types-CoE5Zwy4.d.ts +0 -348
- package/dist/types-DSJ3-m9X.d.ts +0 -192
- package/dist/types-D__3EN0q.d.ts +0 -425
- package/dist/usage-D0NNUFfr.d.ts +0 -177
- package/dist/vault-BpmApxxW.d.ts +0 -50
- package/dist/verify-C91Wyp40.d.ts +0 -142
- package/dist/verify-CJbYfADA.js +0 -124
- package/dist/version-Cq8gfDbd.js +0 -4
- package/dist/view-D5ryq3gz.js +0 -99
- package/dist/view-TpXEUcVN.d.ts +0 -87
- package/dist/watch-BcvtAHOd.js +0 -122
- package/dist/watch-COzRWvVN.d.ts +0 -74
- package/dist/wire-Df3EWkG8.js +0 -45
- package/dist/workflow-builder-CHqHpAVt.js +0 -399
- package/dist/workflow-sdk-C2WJ_G2O.js +0 -173
- package/dist/workflow-sdk-DTZyrvNo.d.ts +0 -98
- package/dist/workflow-sdk-world-CMV1ahFW.js +0 -1399
- package/dist/workflows-CcpCBfIe.d.ts +0 -185
- package/dist/workflows-IvxzG2cl.js +0 -217
|
@@ -1,735 +0,0 @@
|
|
|
1
|
-
import { t as DbException } from "./db-exception-CnWcYPxL.js";
|
|
2
|
-
import { c as mapDbError, n as dbError } from "./errors-2M6CKMP4.js";
|
|
3
|
-
import { n as invalidRequest } from "./build-meLuYGri.js";
|
|
4
|
-
import { t as lookupOf } from "./lookup-BaP5bI27.js";
|
|
5
|
-
import { a as ok, r as err, s as toDbError } from "./result-DEqHCMKP.js";
|
|
6
|
-
import { n as simplifyOrFalse } from "./simplify-DDO0j0LI.js";
|
|
7
|
-
import { n as whereClause, t as integer } from "./shared-DTneRoxi.js";
|
|
8
|
-
//#region src/compile/sqlite.ts
|
|
9
|
-
/**
|
|
10
|
-
* The operation needs something the SQLite dialect can't express: an
|
|
11
|
-
* include (embedding), full-text search, a function source. Thrown while
|
|
12
|
-
* compiling, before anything runs; executors return it as a `DbError` of
|
|
13
|
-
* kind `unsupported`, with the feature in `details`.
|
|
14
|
-
*/
|
|
15
|
-
function unsupported(feature, table) {
|
|
16
|
-
throw new DbException(dbError("unsupported", `SQLite can't run ${feature} on "${table.key}"; run this query on the server (PostgREST) instead`, {
|
|
17
|
-
table: table.key,
|
|
18
|
-
details: feature
|
|
19
|
-
}));
|
|
20
|
-
}
|
|
21
|
-
function quoteSqliteIdent(name) {
|
|
22
|
-
return `"${name.replaceAll("\"", "\"\"")}"`;
|
|
23
|
-
}
|
|
24
|
-
const TIMESTAMPS = /* @__PURE__ */ new Set(["timestamptz", "timestamp"]);
|
|
25
|
-
const TEXT = /* @__PURE__ */ new Set([
|
|
26
|
-
"text",
|
|
27
|
-
"varchar",
|
|
28
|
-
"bpchar",
|
|
29
|
-
"citext",
|
|
30
|
-
"name"
|
|
31
|
-
]);
|
|
32
|
-
const KEYS_PER_STATEMENT = 500;
|
|
33
|
-
function columnMeta(table, db) {
|
|
34
|
-
return lookupOf(table).byDb.get(db)?.[1];
|
|
35
|
-
}
|
|
36
|
-
function decodeOf(meta, cast) {
|
|
37
|
-
if (!meta) return "raw";
|
|
38
|
-
if (meta.type === "timestamptz") return "timestamptz";
|
|
39
|
-
if (cast === "text") return "raw";
|
|
40
|
-
if (meta.json || meta.array) return "json";
|
|
41
|
-
if (meta.type === "bool") return "boolean";
|
|
42
|
-
return "raw";
|
|
43
|
-
}
|
|
44
|
-
/** A JavaScript value as a SQLite parameter. */
|
|
45
|
-
function sqliteValue(value) {
|
|
46
|
-
if (value === null || value === void 0) return null;
|
|
47
|
-
if (typeof value === "boolean") return value ? 1 : 0;
|
|
48
|
-
if (typeof value === "number" || typeof value === "string") return value;
|
|
49
|
-
if (typeof value === "bigint") return value >= BigInt(Number.MIN_SAFE_INTEGER) && value <= BigInt(Number.MAX_SAFE_INTEGER) ? Number(value) : value;
|
|
50
|
-
return JSON.stringify(value);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* A LIKE pattern (backslash escapes) as a GLOB pattern, which SQLite
|
|
54
|
-
* matches case-sensitively, like Postgres `like`.
|
|
55
|
-
*/
|
|
56
|
-
function likeToGlob(pattern) {
|
|
57
|
-
let out = "";
|
|
58
|
-
for (let index = 0; index < pattern.length; index += 1) {
|
|
59
|
-
const char = pattern[index];
|
|
60
|
-
if (char === "\\" && index + 1 < pattern.length) {
|
|
61
|
-
index += 1;
|
|
62
|
-
out += globLiteral(pattern[index]);
|
|
63
|
-
} else if (char === "%") out += "*";
|
|
64
|
-
else if (char === "_") out += "?";
|
|
65
|
-
else out += globLiteral(char);
|
|
66
|
-
}
|
|
67
|
-
return out;
|
|
68
|
-
}
|
|
69
|
-
function globLiteral(char) {
|
|
70
|
-
return char === "*" || char === "?" || char === "[" ? `[${char}]` : char;
|
|
71
|
-
}
|
|
72
|
-
var SqliteCompiler = class {
|
|
73
|
-
params = [];
|
|
74
|
-
#tableName;
|
|
75
|
-
#aliases = 0;
|
|
76
|
-
constructor(tableName) {
|
|
77
|
-
this.#tableName = tableName;
|
|
78
|
-
}
|
|
79
|
-
alias() {
|
|
80
|
-
const alias = `t${this.#aliases}`;
|
|
81
|
-
this.#aliases += 1;
|
|
82
|
-
return alias;
|
|
83
|
-
}
|
|
84
|
-
table(table) {
|
|
85
|
-
return quoteSqliteIdent(this.#tableName(table));
|
|
86
|
-
}
|
|
87
|
-
param(value) {
|
|
88
|
-
this.params.push(sqliteValue(value));
|
|
89
|
-
return "?";
|
|
90
|
-
}
|
|
91
|
-
column(alias, name) {
|
|
92
|
-
return `${alias}.${quoteSqliteIdent(name)}`;
|
|
93
|
-
}
|
|
94
|
-
/** A column as compared and sorted: timestamps by their instant, not their text. */
|
|
95
|
-
comparable(table, alias, name) {
|
|
96
|
-
const column = this.column(alias, name);
|
|
97
|
-
return TIMESTAMPS.has(columnMeta(table, name)?.type ?? "") ? `julianday(${column})` : column;
|
|
98
|
-
}
|
|
99
|
-
comparableParam(table, name, value) {
|
|
100
|
-
const param = this.param(value);
|
|
101
|
-
return TIMESTAMPS.has(columnMeta(table, name)?.type ?? "") ? `julianday(${param})` : param;
|
|
102
|
-
}
|
|
103
|
-
condition(condition, table, alias) {
|
|
104
|
-
switch (condition.kind) {
|
|
105
|
-
case "and":
|
|
106
|
-
case "or": {
|
|
107
|
-
if (condition.items.length === 0) return condition.kind === "and" ? "1" : "0";
|
|
108
|
-
const joiner = condition.kind === "and" ? " and " : " or ";
|
|
109
|
-
return `(${condition.items.map((item) => this.condition(item, table, alias)).join(joiner)})`;
|
|
110
|
-
}
|
|
111
|
-
case "not": return `not ${this.condition(condition.item, table, alias)}`;
|
|
112
|
-
case "column": return this.columnCondition(condition, table, alias);
|
|
113
|
-
case "relation": {
|
|
114
|
-
const target = this.alias();
|
|
115
|
-
const join = this.join(condition, table, alias, target);
|
|
116
|
-
const where = condition.quantifier === "every" && condition.where ? `not ${this.condition(condition.where, condition.target, target)}` : condition.where ? this.condition(condition.where, condition.target, target) : void 0;
|
|
117
|
-
const body = `select 1 from ${this.table(condition.target)} as ${target} where ${join}${where ? ` and ${where}` : ""}`;
|
|
118
|
-
return condition.quantifier === "some" ? `exists (${body})` : `not exists (${body})`;
|
|
119
|
-
}
|
|
120
|
-
default: return condition;
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
join(condition, source, sourceAlias, targetAlias) {
|
|
124
|
-
const { relation, target } = condition;
|
|
125
|
-
if (relation.columns.length !== relation.references.length) invalidRequest(`Relation to "${target.key}" has mismatched columns`);
|
|
126
|
-
return relation.columns.map((column, index) => {
|
|
127
|
-
const reference = relation.references[index];
|
|
128
|
-
return `${this.column(targetAlias, dbName(target, reference))} = ${this.column(sourceAlias, dbName(source, column))}`;
|
|
129
|
-
}).join(" and ");
|
|
130
|
-
}
|
|
131
|
-
columnCondition(condition, table, alias) {
|
|
132
|
-
const name = condition.column;
|
|
133
|
-
if (condition.path) unsupported("a json path filter", table);
|
|
134
|
-
const column = this.comparable(table, alias, name);
|
|
135
|
-
const raw = this.column(alias, name);
|
|
136
|
-
const { value } = condition;
|
|
137
|
-
const operand = () => this.comparableParam(table, name, value);
|
|
138
|
-
switch (condition.op) {
|
|
139
|
-
case "eq": return `${column} = ${operand()}`;
|
|
140
|
-
case "neq": return `${column} <> ${operand()}`;
|
|
141
|
-
case "gt": return `${column} > ${operand()}`;
|
|
142
|
-
case "gte": return `${column} >= ${operand()}`;
|
|
143
|
-
case "lt": return `${column} < ${operand()}`;
|
|
144
|
-
case "lte": return `${column} <= ${operand()}`;
|
|
145
|
-
case "like": return `${raw} glob ${this.param(likeToGlob(String(value)))}`;
|
|
146
|
-
case "ilike": return `${raw} like ${this.param(value)} escape '\\'`;
|
|
147
|
-
case "in":
|
|
148
|
-
if (!Array.isArray(value)) invalidRequest("\"in\" needs an array");
|
|
149
|
-
if (value.length === 0) return "0";
|
|
150
|
-
return `${column} in (${value.map((item) => this.comparableParam(table, name, item)).join(", ")})`;
|
|
151
|
-
case "is":
|
|
152
|
-
if (value === null) return `${raw} is null`;
|
|
153
|
-
if (value === true) return `${raw} is 1`;
|
|
154
|
-
if (value === false) return `${raw} is 0`;
|
|
155
|
-
return invalidRequest("\"is\" needs null, true or false");
|
|
156
|
-
case "contains":
|
|
157
|
-
case "containedBy":
|
|
158
|
-
case "overlaps": return this.jsonCondition(condition.op, table, raw, value);
|
|
159
|
-
case "fts": return unsupported("full-text search", table);
|
|
160
|
-
case "match":
|
|
161
|
-
case "imatch": return unsupported("a regular expression filter", table);
|
|
162
|
-
default: return condition.op;
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
/** Arrays and jsonb sync to SQLite as JSON text; `json_each` reads them. */
|
|
166
|
-
jsonCondition(op, table, column, value) {
|
|
167
|
-
if (Array.isArray(value)) {
|
|
168
|
-
const distinct = [...new Set(value.map(sqliteValue))];
|
|
169
|
-
if (distinct.some((item) => item === null)) unsupported(`"${op}" with null elements`, table);
|
|
170
|
-
const list = distinct.map((item) => this.param(item)).join(", ");
|
|
171
|
-
switch (op) {
|
|
172
|
-
case "contains": return distinct.length === 0 ? `${column} is not null` : `(select count(distinct value) from json_each(${column}) where value in (${list})) = ${distinct.length}`;
|
|
173
|
-
case "overlaps": return distinct.length === 0 ? "0" : `exists (select 1 from json_each(${column}) where value in (${list}))`;
|
|
174
|
-
case "containedBy": return `(${column} is not null and not exists (select 1 from json_each(${column})${distinct.length === 0 ? "" : ` where value not in (${list})`}))`;
|
|
175
|
-
default: return op;
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
if (op !== "contains" || typeof value !== "object" || value === null) return unsupported(`"${op}" on a JSON object`, table);
|
|
179
|
-
const parts = [];
|
|
180
|
-
for (const [key, item] of Object.entries(value)) {
|
|
181
|
-
if (key.includes("\"") || typeof item === "object" && item !== null) unsupported("\"contains\" with a nested JSON value", table);
|
|
182
|
-
parts.push(item === null ? `json_type(${column}, ${this.param(`$."${key}"`)}) = 'null'` : `json_extract(${column}, ${this.param(`$."${key}"`)}) = ${this.param(item)}`);
|
|
183
|
-
}
|
|
184
|
-
return parts.length === 0 ? `${column} is not null` : `(${parts.join(" and ")})`;
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* A column as sorted. Postgres sorts text by the database collation, which
|
|
188
|
-
* ignores case at the first level, and enum types by their declared order.
|
|
189
|
-
*/
|
|
190
|
-
sortable(table, alias, name) {
|
|
191
|
-
const meta = columnMeta(table, name);
|
|
192
|
-
const column = this.column(alias, name);
|
|
193
|
-
if (meta?.enum && !TEXT.has(meta.type)) return `case ${column} ${meta.enum.map((value, index) => `when ${this.param(value)} then ${index}`).join(" ")} end`;
|
|
194
|
-
if (meta && TEXT.has(meta.type) && !meta.array && !meta.json) return `${column} collate nocase`;
|
|
195
|
-
return this.comparable(table, alias, name);
|
|
196
|
-
}
|
|
197
|
-
/** Postgres sorts nulls last ascending and first descending; SQLite does the opposite. */
|
|
198
|
-
orderBy(terms, table, alias) {
|
|
199
|
-
return terms.map((term) => {
|
|
200
|
-
if (term.relation) unsupported(`a sort by the relation "${term.relation.name}"`, table);
|
|
201
|
-
const nulls = term.nulls ?? (term.direction === "asc" ? "last" : "first");
|
|
202
|
-
return `${term.aggregate === "count" ? "count(*)" : term.aggregate ? `${term.aggregate}(${this.sortable(table, alias, term.column)})` : this.sortable(table, alias, term.column)} ${term.direction} nulls ${nulls}`;
|
|
203
|
-
}).join(", ");
|
|
204
|
-
}
|
|
205
|
-
selection(selection, table, alias) {
|
|
206
|
-
if (selection.includes.length > 0) {
|
|
207
|
-
const include = selection.includes[0];
|
|
208
|
-
unsupported(include.count === void 0 && include.aggregate === void 0 ? `the include "${include.alias}" (embedding a related table)` : `the related ${include.count === void 0 ? "aggregate" : "count"} "${include.alias}"`, table);
|
|
209
|
-
}
|
|
210
|
-
const items = [];
|
|
211
|
-
const columns = [];
|
|
212
|
-
for (const entry of selection.columns) {
|
|
213
|
-
const meta = columnMeta(table, entry.column);
|
|
214
|
-
const column = this.column(alias, entry.column);
|
|
215
|
-
const decode = decodeOf(meta, entry.cast);
|
|
216
|
-
items.push(`${entry.cast === "text" && decode !== "timestamptz" ? `cast(${column} as text)` : column} as ${quoteSqliteIdent(entry.alias)}`);
|
|
217
|
-
columns.push({
|
|
218
|
-
alias: entry.alias,
|
|
219
|
-
decode
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
if (selection.aggregate) {
|
|
223
|
-
if (selection.aggregate.count) {
|
|
224
|
-
items.push(`count(*) as "_count"`);
|
|
225
|
-
columns.push({
|
|
226
|
-
alias: "_count",
|
|
227
|
-
decode: "raw"
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
for (const measure of selection.aggregate.measures) {
|
|
231
|
-
const meta = columnMeta(table, measure.column);
|
|
232
|
-
const inner = `${measure.fn}(${this.comparable(table, alias, measure.column)})`;
|
|
233
|
-
const timestamp = TIMESTAMPS.has(meta?.type ?? "") && measure.fn !== "avg";
|
|
234
|
-
const expression = timestamp ? `${measure.fn}(${this.column(alias, measure.column)})` : measure.cast === "text" ? `cast(${inner} as text)` : inner;
|
|
235
|
-
items.push(`${expression} as ${quoteSqliteIdent(measure.key)}`);
|
|
236
|
-
columns.push({
|
|
237
|
-
alias: measure.key,
|
|
238
|
-
decode: timestamp && meta?.type === "timestamptz" ? "timestamptz" : "raw"
|
|
239
|
-
});
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
if (items.length === 0) items.push("1 as \"_\"");
|
|
243
|
-
return {
|
|
244
|
-
list: items.join(", "),
|
|
245
|
-
columns
|
|
246
|
-
};
|
|
247
|
-
}
|
|
248
|
-
};
|
|
249
|
-
function dbName(table, app) {
|
|
250
|
-
const meta = table.columns[app];
|
|
251
|
-
if (!meta) invalidRequest(`Unknown column "${app}" on "${table.key}"`, table.key);
|
|
252
|
-
return meta.db;
|
|
253
|
-
}
|
|
254
|
-
function keyColumns(table) {
|
|
255
|
-
if (table.primaryKey.length === 0) unsupported("a write to a table without a primary key", table);
|
|
256
|
-
return table.primaryKey.map((app) => dbName(table, app));
|
|
257
|
-
}
|
|
258
|
-
/** `where (a, b) in (values (?, ?), ...)` for a page of keys. */
|
|
259
|
-
function byKeys(compiler, table, alias, keys) {
|
|
260
|
-
const columns = keyColumns(table);
|
|
261
|
-
if (keys.length === 0) return "0";
|
|
262
|
-
if (columns.length === 1) return `${compiler.column(alias, columns[0])} in (${keys.map((key) => compiler.param(key[0])).join(", ")})`;
|
|
263
|
-
return `${`(${columns.map((column) => compiler.column(alias, column)).join(", ")})`} in (values ${keys.map((key) => `(${key.map((value) => compiler.param(value)).join(", ")})`).join(", ")})`;
|
|
264
|
-
}
|
|
265
|
-
/**
|
|
266
|
-
* Compiles IR operations for SQLite (PowerSync's local database). Reads
|
|
267
|
-
* become one statement; writes become steps the executor runs in a write
|
|
268
|
-
* transaction. Throws a `DbException` with kind `unsupported` for what
|
|
269
|
-
* SQLite can't express, before anything runs.
|
|
270
|
-
*/
|
|
271
|
-
function compileSqlite(op, options = {}) {
|
|
272
|
-
const tableName = options.tableName ?? ((table) => table.name);
|
|
273
|
-
const make = () => new SqliteCompiler(tableName);
|
|
274
|
-
if (op.kind === "select" && op.source) unsupported(`the function source "${op.source.name}"`, op.table);
|
|
275
|
-
switch (op.kind) {
|
|
276
|
-
case "select": return selectPlan(make(), op);
|
|
277
|
-
case "insert": return insertPlan(make, op);
|
|
278
|
-
case "update":
|
|
279
|
-
case "delete": return keyedPlan(make, op);
|
|
280
|
-
default: return op;
|
|
281
|
-
}
|
|
282
|
-
}
|
|
283
|
-
function selectPlan(compiler, op) {
|
|
284
|
-
const simple = simplifyOrFalse(op.where);
|
|
285
|
-
if (simple.never) return { kind: "never" };
|
|
286
|
-
const alias = compiler.alias();
|
|
287
|
-
const { list, columns } = compiler.selection(op.selection, op.table, alias);
|
|
288
|
-
const where = simple.condition ? compiler.condition(simple.condition, op.table, alias) : void 0;
|
|
289
|
-
const filter = whereClause([where]);
|
|
290
|
-
const from = `${compiler.table(op.table)} as ${alias}`;
|
|
291
|
-
const filterParams = [...compiler.params];
|
|
292
|
-
const count = op.count || op.head ? {
|
|
293
|
-
text: `select count(*) as count from ${from}${filter}`,
|
|
294
|
-
params: filterParams
|
|
295
|
-
} : void 0;
|
|
296
|
-
if (op.head) return {
|
|
297
|
-
kind: "select",
|
|
298
|
-
rows: void 0,
|
|
299
|
-
count,
|
|
300
|
-
columns: []
|
|
301
|
-
};
|
|
302
|
-
return {
|
|
303
|
-
kind: "select",
|
|
304
|
-
rows: {
|
|
305
|
-
text: `select ${list} from ${from}${filter}${op.selection.aggregate && op.selection.columns.length > 0 ? ` group by ${op.selection.columns.map((entry) => compiler.column(alias, entry.column)).join(", ")}` : ""}${op.orderBy.length > 0 ? ` order by ${compiler.orderBy(op.orderBy, op.table, alias)}` : ""}${op.limit === void 0 ? op.offset === void 0 ? "" : " limit -1" : ` limit ${integer(op.limit)}`}${op.offset === void 0 ? "" : ` offset ${integer(op.offset)}`}`,
|
|
306
|
-
params: compiler.params
|
|
307
|
-
},
|
|
308
|
-
count,
|
|
309
|
-
columns
|
|
310
|
-
};
|
|
311
|
-
}
|
|
312
|
-
function returning(make, op) {
|
|
313
|
-
if (!op.returning) return void 0;
|
|
314
|
-
const columns = make().selection(op.returning, op.table, "t0").columns;
|
|
315
|
-
const selection = op.returning;
|
|
316
|
-
return {
|
|
317
|
-
columns,
|
|
318
|
-
read: (keys) => {
|
|
319
|
-
const compiler = make();
|
|
320
|
-
const alias = compiler.alias();
|
|
321
|
-
const { list } = compiler.selection(selection, op.table, alias);
|
|
322
|
-
return {
|
|
323
|
-
text: `select ${list} from ${compiler.table(op.table)} as ${alias} where ${byKeys(compiler, op.table, alias, keys)}`,
|
|
324
|
-
params: compiler.params
|
|
325
|
-
};
|
|
326
|
-
}
|
|
327
|
-
};
|
|
328
|
-
}
|
|
329
|
-
function insertPlan(make, op) {
|
|
330
|
-
if (op.rows.length === 0) return { kind: "never" };
|
|
331
|
-
const keys = keyColumns(op.table);
|
|
332
|
-
const columns = /* @__PURE__ */ new Set();
|
|
333
|
-
for (const row of op.rows) for (const key of Object.keys(row)) columns.add(key);
|
|
334
|
-
const ordered = [...columns];
|
|
335
|
-
const conflict = op.onConflict;
|
|
336
|
-
const tenant = op.table.flags.tenant;
|
|
337
|
-
const tenantColumn = tenant === void 0 ? void 0 : op.table.columns[tenant]?.db;
|
|
338
|
-
return {
|
|
339
|
-
kind: "insert",
|
|
340
|
-
rows: op.rows.map((row) => {
|
|
341
|
-
const missing = keys.filter((key) => row[key] === void 0);
|
|
342
|
-
if (missing.length > 0) invalidRequest(`Insert into "${op.table.key}" needs ${missing.join(", ")}: SQLite has no column defaults for keys`, op.table.key);
|
|
343
|
-
const own = ordered.filter((column) => column in row || op.defaultToNull);
|
|
344
|
-
const insertCompiler = make();
|
|
345
|
-
const values = own.map((column) => insertCompiler.param(row[column] ?? null));
|
|
346
|
-
const insert = {
|
|
347
|
-
text: own.length === 0 ? `insert into ${insertCompiler.table(op.table)} default values` : `insert into ${insertCompiler.table(op.table)} (${own.map(quoteSqliteIdent).join(", ")}) values (${values.join(", ")})`,
|
|
348
|
-
params: insertCompiler.params
|
|
349
|
-
};
|
|
350
|
-
let existing;
|
|
351
|
-
let update;
|
|
352
|
-
if (conflict) {
|
|
353
|
-
const find = make();
|
|
354
|
-
const alias = find.alias();
|
|
355
|
-
const match = conflict.columns.map((column) => `${find.column(alias, column)} = ${find.param(row[column] ?? null)}`).join(" and ");
|
|
356
|
-
existing = {
|
|
357
|
-
text: `select ${keys.map((key) => find.column(alias, key)).join(", ")}${tenantColumn ? `, ${find.column(alias, tenantColumn)} as "_tenant"` : ""} from ${find.table(op.table)} as ${alias} where ${match} limit 1`,
|
|
358
|
-
params: find.params
|
|
359
|
-
};
|
|
360
|
-
const sets = own.filter((column) => !conflict.columns.includes(column) && !keys.includes(column));
|
|
361
|
-
if (conflict.action === "update" && sets.length > 0) update = (key) => {
|
|
362
|
-
const compiler = make();
|
|
363
|
-
const alias = compiler.alias();
|
|
364
|
-
const set = sets.map((column) => `${quoteSqliteIdent(column)} = ${compiler.param(row[column] ?? null)}`).join(", ");
|
|
365
|
-
const where = byKeys(compiler, op.table, alias, [key]);
|
|
366
|
-
return {
|
|
367
|
-
text: `update ${compiler.table(op.table)} as ${alias} set ${set} where ${where}`,
|
|
368
|
-
params: compiler.params
|
|
369
|
-
};
|
|
370
|
-
};
|
|
371
|
-
}
|
|
372
|
-
return {
|
|
373
|
-
key: keys.map((key) => sqliteValue(row[key])),
|
|
374
|
-
tenant: tenantColumn === void 0 ? void 0 : sqliteValue(row[tenantColumn]),
|
|
375
|
-
insert,
|
|
376
|
-
existing,
|
|
377
|
-
update
|
|
378
|
-
};
|
|
379
|
-
}),
|
|
380
|
-
conflict: conflict?.action,
|
|
381
|
-
returning: returning(make, op)
|
|
382
|
-
};
|
|
383
|
-
}
|
|
384
|
-
function keyedPlan(make, op) {
|
|
385
|
-
const simple = simplifyOrFalse(op.where);
|
|
386
|
-
if (simple.never) return { kind: "never" };
|
|
387
|
-
const { maxAffected } = op;
|
|
388
|
-
if (maxAffected !== void 0 && (!Number.isInteger(maxAffected) || maxAffected < 0)) invalidRequest(`"maxAffected" must be a non-negative integer, got ${maxAffected}`, op.table.key);
|
|
389
|
-
const keys = keyColumns(op.table);
|
|
390
|
-
const compiler = make();
|
|
391
|
-
const alias = compiler.alias();
|
|
392
|
-
const where = simple.condition ? compiler.condition(simple.condition, op.table, alias) : void 0;
|
|
393
|
-
const select = {
|
|
394
|
-
text: `select ${keys.map((key) => compiler.column(alias, key)).join(", ")} from ${compiler.table(op.table)} as ${alias}${whereClause([where])}`,
|
|
395
|
-
params: compiler.params
|
|
396
|
-
};
|
|
397
|
-
let set = [];
|
|
398
|
-
if (op.kind === "update") {
|
|
399
|
-
set = Object.entries(op.set);
|
|
400
|
-
if (set.length === 0) invalidRequest(`Update on "${op.table.key}" sets no columns`);
|
|
401
|
-
}
|
|
402
|
-
return {
|
|
403
|
-
kind: op.kind,
|
|
404
|
-
keys: select,
|
|
405
|
-
apply: (rows) => {
|
|
406
|
-
const own = make();
|
|
407
|
-
const ownAlias = own.alias();
|
|
408
|
-
const assignments = set.map(([column, value]) => `${quoteSqliteIdent(column)} = ${own.param(value)}`).join(", ");
|
|
409
|
-
const target = byKeys(own, op.table, ownAlias, rows);
|
|
410
|
-
return {
|
|
411
|
-
text: op.kind === "update" ? `update ${own.table(op.table)} as ${ownAlias} set ${assignments} where ${target}` : `delete from ${own.table(op.table)} as ${ownAlias} where ${target}`,
|
|
412
|
-
params: own.params
|
|
413
|
-
};
|
|
414
|
-
},
|
|
415
|
-
returning: returning(make, op),
|
|
416
|
-
...maxAffected === void 0 ? {} : { maxAffected }
|
|
417
|
-
};
|
|
418
|
-
}
|
|
419
|
-
/** Splits keys into pages that stay under SQLite's parameter limit. */
|
|
420
|
-
function keyPages(keys) {
|
|
421
|
-
const pages = [];
|
|
422
|
-
for (let start = 0; start < keys.length; start += KEYS_PER_STATEMENT) pages.push(keys.slice(start, start + KEYS_PER_STATEMENT));
|
|
423
|
-
return pages;
|
|
424
|
-
}
|
|
425
|
-
//#endregion
|
|
426
|
-
//#region src/powersync/compiler.ts
|
|
427
|
-
const sqliteCompiler = {
|
|
428
|
-
target: "sqlite",
|
|
429
|
-
compile: (op) => compileSqlite(op)
|
|
430
|
-
};
|
|
431
|
-
async function checkSqlite(betterSupabase, list, options = {}) {
|
|
432
|
-
const failures = /* @__PURE__ */ new Map();
|
|
433
|
-
const probe = {
|
|
434
|
-
name: "sqlite-check",
|
|
435
|
-
execute(op) {
|
|
436
|
-
try {
|
|
437
|
-
compileSqlite(op, options);
|
|
438
|
-
} catch (cause) {
|
|
439
|
-
const failure = toDbError(cause);
|
|
440
|
-
if (!failures.has(failure.message)) failures.set(failure.message, failure);
|
|
441
|
-
return Promise.resolve(err(failure));
|
|
442
|
-
}
|
|
443
|
-
return Promise.resolve(ok({
|
|
444
|
-
rows: [],
|
|
445
|
-
count: 0
|
|
446
|
-
}));
|
|
447
|
-
}
|
|
448
|
-
};
|
|
449
|
-
const facets = {};
|
|
450
|
-
for (const facet of list.facets) facets[facet.key] = [facet.values?.[0] ?? "x"];
|
|
451
|
-
const query = {
|
|
452
|
-
...list.defaults,
|
|
453
|
-
q: "x",
|
|
454
|
-
facets
|
|
455
|
-
};
|
|
456
|
-
const db = betterSupabase.connect(probe);
|
|
457
|
-
await list.run(db, query);
|
|
458
|
-
if (options.all) await list.run(db, list.defaults);
|
|
459
|
-
const found = [...failures.values()];
|
|
460
|
-
if (options.all) return found;
|
|
461
|
-
const [first] = found;
|
|
462
|
-
return first ? err(first) : ok(void 0);
|
|
463
|
-
}
|
|
464
|
-
//#endregion
|
|
465
|
-
//#region src/sqlite/executor.ts
|
|
466
|
-
const UNIQUE = /(?:UNIQUE|PRIMARY KEY) constraint failed: (.+)$/m;
|
|
467
|
-
const NOT_NULL = /NOT NULL constraint failed: (?:[^.\s]+\.)?(\S+)/;
|
|
468
|
-
const CHECK = /CHECK constraint failed: ?(\S+)?/;
|
|
469
|
-
const unqualified = (column) => column.trim().replace(/^[^.]+\./, "");
|
|
470
|
-
/**
|
|
471
|
-
* A SQLite constraint error in the shape `mapDbError` reads from Postgres:
|
|
472
|
-
* its SQLSTATE, and the columns in Postgres's `Key (...)` detail format.
|
|
473
|
-
*/
|
|
474
|
-
function fromSqliteError(cause) {
|
|
475
|
-
if (!(cause instanceof Error)) return void 0;
|
|
476
|
-
const message = cause.message;
|
|
477
|
-
const unique = UNIQUE.exec(message);
|
|
478
|
-
if (unique?.[1]) return {
|
|
479
|
-
code: "23505",
|
|
480
|
-
message,
|
|
481
|
-
details: `Key (${unique[1].split(",").map(unqualified).join(", ")})=(...) already exists.`
|
|
482
|
-
};
|
|
483
|
-
if (message.includes("FOREIGN KEY constraint failed")) return {
|
|
484
|
-
code: "23503",
|
|
485
|
-
message
|
|
486
|
-
};
|
|
487
|
-
const notNull = NOT_NULL.exec(message);
|
|
488
|
-
if (notNull?.[1]) return {
|
|
489
|
-
code: "23502",
|
|
490
|
-
message,
|
|
491
|
-
column: notNull[1]
|
|
492
|
-
};
|
|
493
|
-
const check = CHECK.exec(message);
|
|
494
|
-
if (check) return {
|
|
495
|
-
code: "23514",
|
|
496
|
-
message,
|
|
497
|
-
...check[1] ? { constraint: check[1] } : {}
|
|
498
|
-
};
|
|
499
|
-
}
|
|
500
|
-
const TIMESTAMP = /^(\d{4,}-\d{2}-\d{2})[Tt ](\d{2}:\d{2}:\d{2})(?:\.(\d+))?(Z|z|[+-]\d{2}(?::?\d{2})?)?$/;
|
|
501
|
-
/**
|
|
502
|
-
* Timestamp text as PostgREST sends it (`2026-01-02T10:00:00.5+00:00`), from
|
|
503
|
-
* whatever the sync wrote (`2026-01-02 10:00:00.500000Z`).
|
|
504
|
-
*/
|
|
505
|
-
function postgrestTimestamp(value) {
|
|
506
|
-
const match = TIMESTAMP.exec(value);
|
|
507
|
-
if (!match) return value;
|
|
508
|
-
const [, date, time, fraction, zone] = match;
|
|
509
|
-
const trimmed = fraction?.replace(/0+$/, "");
|
|
510
|
-
let offset = "+00:00";
|
|
511
|
-
if (zone && zone !== "Z" && zone !== "z") {
|
|
512
|
-
const digits = zone.replace(":", "");
|
|
513
|
-
offset = `${digits.slice(0, 3)}:${digits.slice(3, 5) || "00"}`;
|
|
514
|
-
}
|
|
515
|
-
return `${date}T${time}${trimmed ? `.${trimmed}` : ""}${offset}`;
|
|
516
|
-
}
|
|
517
|
-
function decodeValue(column, value) {
|
|
518
|
-
if (value === null || value === void 0) return null;
|
|
519
|
-
switch (column.decode) {
|
|
520
|
-
case "boolean": return value === 1 || value === true || value === "1" || value === "true";
|
|
521
|
-
case "json":
|
|
522
|
-
if (typeof value !== "string") return value;
|
|
523
|
-
try {
|
|
524
|
-
return JSON.parse(value);
|
|
525
|
-
} catch {
|
|
526
|
-
return value;
|
|
527
|
-
}
|
|
528
|
-
case "timestamptz": return typeof value === "string" ? postgrestTimestamp(value) : value;
|
|
529
|
-
case "raw":
|
|
530
|
-
if (typeof value !== "bigint") return value;
|
|
531
|
-
return value >= Number.MIN_SAFE_INTEGER && value <= Number.MAX_SAFE_INTEGER ? Number(value) : value.toString();
|
|
532
|
-
default: return column.decode;
|
|
533
|
-
}
|
|
534
|
-
}
|
|
535
|
-
function decode(rows, columns) {
|
|
536
|
-
return rows.map((row) => {
|
|
537
|
-
const out = {};
|
|
538
|
-
for (const column of columns) out[column.alias] = decodeValue(column, row[column.alias]);
|
|
539
|
-
return out;
|
|
540
|
-
});
|
|
541
|
-
}
|
|
542
|
-
async function all(context, query) {
|
|
543
|
-
return context.getAll(query.text, [...query.params]);
|
|
544
|
-
}
|
|
545
|
-
function keyValue(value) {
|
|
546
|
-
if (value === null || value === void 0) return null;
|
|
547
|
-
if (typeof value === "string" || typeof value === "number" || typeof value === "bigint") return value;
|
|
548
|
-
return String(value);
|
|
549
|
-
}
|
|
550
|
-
async function keysOf(context, query) {
|
|
551
|
-
return (await all(context, query)).map((row) => Object.values(row).map(keyValue));
|
|
552
|
-
}
|
|
553
|
-
async function readBack(context, plan, keys) {
|
|
554
|
-
if (!plan.returning) return [];
|
|
555
|
-
const rows = [];
|
|
556
|
-
for (const page of keyPages(keys)) rows.push(...await all(context, plan.returning.read(page)));
|
|
557
|
-
return decode(rows, plan.returning.columns);
|
|
558
|
-
}
|
|
559
|
-
async function runInsert(tx, plan) {
|
|
560
|
-
const written = [];
|
|
561
|
-
for (const row of plan.rows) {
|
|
562
|
-
const [found] = row.existing ? await all(tx, row.existing) : [];
|
|
563
|
-
if (found) {
|
|
564
|
-
const { _tenant: tenant, ...key } = found;
|
|
565
|
-
const otherTenant = row.tenant !== void 0 && tenant !== row.tenant;
|
|
566
|
-
if (plan.conflict === "ignore" || otherTenant || !row.update) continue;
|
|
567
|
-
const existingKey = Object.values(key).map(keyValue);
|
|
568
|
-
const statement = row.update(existingKey);
|
|
569
|
-
await tx.execute(statement.text, [...statement.params]);
|
|
570
|
-
written.push(existingKey);
|
|
571
|
-
continue;
|
|
572
|
-
}
|
|
573
|
-
await tx.execute(row.insert.text, [...row.insert.params]);
|
|
574
|
-
written.push(row.key);
|
|
575
|
-
}
|
|
576
|
-
return {
|
|
577
|
-
rows: await readBack(tx, plan, written),
|
|
578
|
-
count: written.length
|
|
579
|
-
};
|
|
580
|
-
}
|
|
581
|
-
/** Thrown inside the write transaction so it rolls back; mapped to `max_affected`. */
|
|
582
|
-
var MaxAffected = class extends Error {
|
|
583
|
-
error;
|
|
584
|
-
constructor(affected, maxAffected) {
|
|
585
|
-
const message = `The write affects ${affected} rows, more than maxAffected (${maxAffected}) allows`;
|
|
586
|
-
super(message);
|
|
587
|
-
this.error = dbError("max_affected", message, { maxAffected });
|
|
588
|
-
}
|
|
589
|
-
};
|
|
590
|
-
async function runKeyed(tx, plan) {
|
|
591
|
-
const keys = await keysOf(tx, plan.keys);
|
|
592
|
-
if (keys.length === 0) return {
|
|
593
|
-
rows: [],
|
|
594
|
-
count: 0
|
|
595
|
-
};
|
|
596
|
-
if (plan.maxAffected !== void 0 && keys.length > plan.maxAffected) throw new MaxAffected(keys.length, plan.maxAffected);
|
|
597
|
-
const before = plan.kind === "delete" ? await readBack(tx, plan, keys) : void 0;
|
|
598
|
-
for (const page of keyPages(keys)) {
|
|
599
|
-
const statement = plan.apply(page);
|
|
600
|
-
await tx.execute(statement.text, [...statement.params]);
|
|
601
|
-
}
|
|
602
|
-
return {
|
|
603
|
-
rows: before ?? await readBack(tx, plan, keys),
|
|
604
|
-
count: keys.length
|
|
605
|
-
};
|
|
606
|
-
}
|
|
607
|
-
async function runSelect(context, plan) {
|
|
608
|
-
const [rows, counted] = await Promise.all([plan.rows ? all(context, plan.rows) : [], plan.count ? all(context, plan.count) : void 0]);
|
|
609
|
-
return {
|
|
610
|
-
rows: decode(rows, plan.columns),
|
|
611
|
-
count: counted ? Number(counted[0]?.["count"] ?? 0) : null
|
|
612
|
-
};
|
|
613
|
-
}
|
|
614
|
-
async function run(db, plan) {
|
|
615
|
-
switch (plan.kind) {
|
|
616
|
-
case "select": return plan.rows && plan.count && db.readTransaction ? db.readTransaction((tx) => runSelect(tx, plan)) : runSelect(db, plan);
|
|
617
|
-
case "insert": return db.writeTransaction((tx) => runInsert(tx, plan));
|
|
618
|
-
case "update":
|
|
619
|
-
case "delete": return db.writeTransaction((tx) => runKeyed(tx, plan));
|
|
620
|
-
default: return plan;
|
|
621
|
-
}
|
|
622
|
-
}
|
|
623
|
-
/** Hermes has no `crypto` unless the app installs a polyfill. */
|
|
624
|
-
function randomId() {
|
|
625
|
-
const { crypto } = globalThis;
|
|
626
|
-
return crypto?.randomUUID?.();
|
|
627
|
-
}
|
|
628
|
-
/** Inserts with a missing single-column key get one, as PowerSync needs. */
|
|
629
|
-
async function withIds(db, op, newId) {
|
|
630
|
-
const [key, ...rest] = op.table.primaryKey;
|
|
631
|
-
if (key === void 0 || rest.length > 0) return op;
|
|
632
|
-
const column = op.table.columns[key];
|
|
633
|
-
if (!column || column.type !== "uuid" && column.type !== "text") return op;
|
|
634
|
-
if (op.rows.every((row) => row[column.db] !== void 0)) return op;
|
|
635
|
-
const next = async () => {
|
|
636
|
-
if (newId) return newId(op.table);
|
|
637
|
-
const random = randomId();
|
|
638
|
-
if (random !== void 0) return random;
|
|
639
|
-
const [row] = await db.getAll("select uuid() as id");
|
|
640
|
-
if (!row) throw new TypeError("select uuid() returned no row");
|
|
641
|
-
return row.id;
|
|
642
|
-
};
|
|
643
|
-
const rows = [];
|
|
644
|
-
for (const row of op.rows) rows.push(row[column.db] === void 0 ? {
|
|
645
|
-
...row,
|
|
646
|
-
[column.db]: await next()
|
|
647
|
-
} : row);
|
|
648
|
-
return {
|
|
649
|
-
...op,
|
|
650
|
-
rows
|
|
651
|
-
};
|
|
652
|
-
}
|
|
653
|
-
async function executeOn(db, op, context, options) {
|
|
654
|
-
const aborted = () => context.signal?.aborted === true;
|
|
655
|
-
if (aborted()) return err(dbError("aborted", "The request was aborted"));
|
|
656
|
-
let plan;
|
|
657
|
-
try {
|
|
658
|
-
plan = compileSqlite(op.kind === "insert" ? await withIds(db, op, options.newId) : op, options);
|
|
659
|
-
} catch (cause) {
|
|
660
|
-
const error = toDbError(cause);
|
|
661
|
-
const { fallback } = options;
|
|
662
|
-
if (fallback && op.kind === "select" && error.kind === "unsupported") return fallback.execute(op, context);
|
|
663
|
-
return err(error);
|
|
664
|
-
}
|
|
665
|
-
if (plan.kind === "never") return ok({
|
|
666
|
-
rows: [],
|
|
667
|
-
count: 0
|
|
668
|
-
});
|
|
669
|
-
if (aborted()) return err(dbError("aborted", "The request was aborted"));
|
|
670
|
-
let result;
|
|
671
|
-
try {
|
|
672
|
-
result = await run(db, plan);
|
|
673
|
-
} catch (cause) {
|
|
674
|
-
return err(mapped(cause, context.errorMappers));
|
|
675
|
-
}
|
|
676
|
-
if (op.kind === "select" && op.single) {
|
|
677
|
-
if (result.rows.length > 1) return err(dbError("multiple_rows", `Expected one ${op.table.key} row`));
|
|
678
|
-
if (result.rows.length === 0 && op.single === "one") return err(dbError("not_found", `No ${op.table.key} row matched`));
|
|
679
|
-
}
|
|
680
|
-
return ok(result);
|
|
681
|
-
}
|
|
682
|
-
function mapped(cause, mappers) {
|
|
683
|
-
if (cause instanceof MaxAffected) return cause.error;
|
|
684
|
-
const raw = fromSqliteError(cause);
|
|
685
|
-
return raw ? mapDbError(raw, mappers) : toDbError(cause);
|
|
686
|
-
}
|
|
687
|
-
/**
|
|
688
|
-
* Runs repository operations on a local SQLite database, so the same
|
|
689
|
-
* repositories and list definitions work offline on native. Reads
|
|
690
|
-
* return rows in the PostgREST shape (booleans, parsed JSON, ISO
|
|
691
|
-
* timestamps); writes go through the database's upload queue. What SQLite
|
|
692
|
-
* can't express (includes, full-text search, function sources) and
|
|
693
|
-
* `db.$rpc` return a `DbError` of kind `unsupported` without running
|
|
694
|
-
* anything, or run on `options.fallback` when you pass one.
|
|
695
|
-
* `maxAffected` is checked against the selected keys before any write; a
|
|
696
|
-
* call's `timeout` and `signal` are checked before the statements start,
|
|
697
|
-
* and `retry` does nothing here. A `bigint` beyond `Number.MAX_SAFE_INTEGER`
|
|
698
|
-
* comes back as its decimal string instead of a rounded number.
|
|
699
|
-
*/
|
|
700
|
-
function sqliteExecutor(db, options = {}, name = "sqlite") {
|
|
701
|
-
const { fallback } = options;
|
|
702
|
-
const rpc = fallback?.rpc?.bind(fallback);
|
|
703
|
-
return {
|
|
704
|
-
name,
|
|
705
|
-
...fallback?.functionSources ? { functionSources: true } : {},
|
|
706
|
-
execute: (op, context) => executeOn(db, op, context, options),
|
|
707
|
-
...rpc ? { rpc } : {}
|
|
708
|
-
};
|
|
709
|
-
}
|
|
710
|
-
//#endregion
|
|
711
|
-
//#region src/powersync/executor.ts
|
|
712
|
-
/**
|
|
713
|
-
* Runs repository operations on PowerSync's local SQLite database, so the
|
|
714
|
-
* same repositories and list definitions work offline on native. Reads
|
|
715
|
-
* return rows in the PostgREST shape (booleans, parsed JSON, ISO
|
|
716
|
-
* timestamps); writes go through PowerSync's upload queue. What SQLite
|
|
717
|
-
* can't express (includes, full-text search, function sources) and
|
|
718
|
-
* `db.$rpc` return a `DbError` of kind `unsupported` without running
|
|
719
|
-
* anything, or run on `options.fallback` when you pass one.
|
|
720
|
-
* `maxAffected` is checked against the selected keys before any write; a
|
|
721
|
-
* call's `timeout` and `signal` are checked before the statements start,
|
|
722
|
-
* and `retry` does nothing here. A `bigint` beyond `Number.MAX_SAFE_INTEGER`
|
|
723
|
-
* comes back as its decimal string instead of a rounded number.
|
|
724
|
-
*
|
|
725
|
-
* ```ts
|
|
726
|
-
* const db = betterSupabase.connect(
|
|
727
|
-
* powersyncExecutor(powersync, { fallback: postgrestExecutor(supabase) }),
|
|
728
|
-
* );
|
|
729
|
-
* ```
|
|
730
|
-
*/
|
|
731
|
-
function powersyncExecutor(db, options = {}) {
|
|
732
|
-
return sqliteExecutor(db, options, "powersync");
|
|
733
|
-
}
|
|
734
|
-
//#endregion
|
|
735
|
-
export { sqliteCompiler as a, quoteSqliteIdent as c, checkSqlite as i, sqliteValue as l, fromSqliteError as n, compileSqlite as o, postgrestTimestamp as r, likeToGlob as s, powersyncExecutor as t };
|