better-supabase 0.12.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/access-sql-BpOdJvfj.js +205 -0
- package/dist/actor-C9pwyCVz.js +150 -0
- package/dist/actor-CoveJgya.d.ts +106 -0
- package/dist/adapter-D8dW6p2A.js +2190 -0
- package/dist/agents-CuxuXVWv.d.ts +117 -0
- package/dist/ai-cache-BXMXRhkx.d.ts +82 -0
- package/dist/ai-cache-Byy5q6EZ.js +87 -0
- package/dist/ai-chat-B00sIOjY.d.ts +619 -0
- package/dist/ai-files-DTbIJcxQ.js +339 -0
- package/dist/ai-sdk/agents/index.d.ts +64 -52
- package/dist/ai-sdk/agents/index.js +34 -26
- package/dist/ai-sdk/batches/index.d.ts +16 -7
- package/dist/ai-sdk/batches/index.js +5 -5
- package/dist/ai-sdk/cache/index.d.ts +6 -3
- package/dist/ai-sdk/cache/index.js +1 -1
- package/dist/ai-sdk/chat/index.d.ts +1 -1
- package/dist/ai-sdk/chat/index.js +10 -10
- package/dist/ai-sdk/embeddings/index.d.ts +2 -2
- package/dist/ai-sdk/embeddings/index.js +1 -1
- package/dist/ai-sdk/files/index.d.ts +9 -9
- package/dist/ai-sdk/files/index.js +10 -10
- package/dist/ai-sdk/index.d.ts +25 -22
- package/dist/ai-sdk/index.js +11 -8
- package/dist/ai-sdk/mcp/index.d.ts +32 -26
- package/dist/ai-sdk/mcp/index.js +19 -19
- package/dist/ai-sdk/memory/index.d.ts +9 -9
- package/dist/ai-sdk/memory/index.js +5 -5
- package/dist/ai-sdk/react/index.d.ts +1 -1
- package/dist/ai-sdk/react/index.js +1 -1
- package/dist/ai-sdk/react/server.d.ts +5 -2
- package/dist/ai-sdk/react/server.js +4 -1
- package/dist/ai-sdk/workflow/index.d.ts +57 -36
- package/dist/ai-sdk/workflow/index.js +29 -23
- package/dist/ai-sdk/workflow/react/index.d.ts +7 -8
- package/dist/ai-sdk/workflow/react/index.js +7 -8
- package/dist/ai-sdk/workflow/react/server.d.ts +1 -1
- package/dist/ai-tasks-DN-AV7qB.d.ts +166 -0
- package/dist/announcements-DqiLxtKK.js +128 -0
- package/dist/api-CmcTYuFT.js +685 -0
- package/dist/api-DwLhJS1j.d.ts +444 -0
- package/dist/api-keys-Bade6Qtl.d.ts +213 -0
- package/dist/api-keys-CO24Ffil.js +318 -0
- package/dist/app-tables-0YZ9IskE.js +831 -0
- package/dist/app-tables-CbWUI7h_.d.ts +35 -0
- package/dist/approvals-C-4MOWdV.d.ts +127 -0
- package/dist/arazzo/index.d.ts +58 -36
- package/dist/arazzo/index.js +49 -41
- package/dist/assistant-CcP_kpu7.d.ts +157 -0
- package/dist/astro/index.d.ts +39 -20
- package/dist/astro/index.js +14 -11
- package/dist/asyncapi/index.d.ts +22 -16
- package/dist/asyncapi/index.js +23 -20
- package/dist/attachments-CPkGJVfk.js +270 -0
- package/dist/attributes-BOFl922R.js +44 -0
- package/dist/audit-log-5aTnl7W2.js +788 -0
- package/dist/auth-DyF_LRxd.js +20 -0
- package/dist/auth-link-B4NL84XU.d.ts +104 -0
- package/dist/auth-link-D3-bU6yz.js +118 -0
- package/dist/auth-module-CwCIY97x.js +10 -0
- package/dist/auth-reply-D02x5NSv.js +31 -0
- package/dist/authorization-CB69cvnA.d.ts +1504 -0
- package/dist/authorization-hooks-HXVZXxUk.d.ts +217 -0
- package/dist/authorizer-BVR2vPGA.js +125 -0
- package/dist/authorizer-DFP3gHv8.d.ts +82 -0
- package/dist/base64-B9Wlsdj7.js +42 -0
- package/dist/before-route-B23K2zYU.js +30 -0
- package/dist/better-result/index.d.ts +26 -18
- package/dist/better-result/index.js +13 -9
- package/dist/bind-DcXLU1ul.d.ts +76 -0
- package/dist/block-env-YfPmSNa1.js +32 -0
- package/dist/block-env-kFcaaJLM.d.ts +10 -0
- package/dist/block-events-BURaqwyp.js +96 -0
- package/dist/block-fields-Cwd4c8m-.js +139 -0
- package/dist/block-fields-DnXkMney.d.ts +58 -0
- package/dist/block-helpers-DwE32_gT.js +272 -0
- package/dist/block-helpers-DyA5BAW4.d.ts +43 -0
- package/dist/block-hooks-BadAniNI.d.ts +117 -0
- package/dist/block-hooks-C1r-R2r0.js +130 -0
- package/dist/block-transport-DBPhgF3W.d.ts +69 -0
- package/dist/block-transport-Ds0C2mUf.js +84 -0
- package/dist/blocks/access-requests/index.d.ts +21 -15
- package/dist/blocks/access-requests/index.js +11 -8
- package/dist/blocks/agents/index.d.ts +4 -4
- package/dist/blocks/agents/index.js +6 -6
- package/dist/blocks/ai-cache/index.d.ts +3 -3
- package/dist/blocks/ai-cache/index.js +2 -2
- package/dist/blocks/ai-chat/index.d.ts +10 -7
- package/dist/blocks/ai-chat/index.js +3 -3
- package/dist/blocks/ai-chat/react/index.d.ts +18 -9
- package/dist/blocks/ai-chat/react/index.js +8 -8
- package/dist/blocks/ai-chat/react/server.d.ts +12 -3
- package/dist/blocks/ai-chat/react/server.js +12 -3
- package/dist/blocks/ai-chat/solid/index.d.ts +3 -3
- package/dist/blocks/ai-chat/solid/index.js +2 -2
- package/dist/blocks/ai-chat/svelte/index.d.ts +3 -3
- package/dist/blocks/ai-chat/svelte/index.js +2 -2
- package/dist/blocks/ai-chat/vue/index.d.ts +3 -3
- package/dist/blocks/ai-chat/vue/index.js +2 -2
- package/dist/blocks/ai-files/index.d.ts +5 -5
- package/dist/blocks/ai-files/index.js +2 -2
- package/dist/blocks/ai-providers/index.d.ts +4 -4
- package/dist/blocks/ai-providers/index.js +8 -8
- package/dist/blocks/ai-tasks/index.d.ts +3 -3
- package/dist/blocks/ai-tasks/index.js +8 -8
- package/dist/blocks/announcements/index.d.ts +4 -4
- package/dist/blocks/announcements/index.js +4 -4
- package/dist/blocks/announcements/react/index.d.ts +12 -5
- package/dist/blocks/announcements/react/index.js +7 -7
- package/dist/blocks/announcements/react/server.d.ts +4 -1
- package/dist/blocks/announcements/react/server.js +4 -1
- package/dist/blocks/announcements/solid/index.d.ts +3 -3
- package/dist/blocks/announcements/solid/index.js +2 -2
- package/dist/blocks/announcements/svelte/index.d.ts +3 -3
- package/dist/blocks/announcements/svelte/index.js +2 -2
- package/dist/blocks/announcements/vue/index.d.ts +3 -3
- package/dist/blocks/announcements/vue/index.js +2 -2
- package/dist/blocks/api-keys/index.d.ts +11 -8
- package/dist/blocks/api-keys/index.js +7 -7
- package/dist/blocks/api-keys/react/index.d.ts +11 -8
- package/dist/blocks/api-keys/react/index.js +9 -9
- package/dist/blocks/api-keys/react/server.d.ts +1 -1
- package/dist/blocks/api-keys/solid/index.d.ts +3 -3
- package/dist/blocks/api-keys/solid/index.js +2 -2
- package/dist/blocks/api-keys/svelte/index.d.ts +3 -3
- package/dist/blocks/api-keys/svelte/index.js +2 -2
- package/dist/blocks/api-keys/vue/index.d.ts +3 -3
- package/dist/blocks/api-keys/vue/index.js +2 -2
- package/dist/blocks/approvals/index.d.ts +4 -4
- package/dist/blocks/approvals/index.js +11 -8
- package/dist/blocks/attachments/index.d.ts +4 -4
- package/dist/blocks/attachments/index.js +3 -3
- package/dist/blocks/audit/index.d.ts +14 -8
- package/dist/blocks/audit/index.js +9 -9
- package/dist/blocks/audit/react/index.d.ts +12 -7
- package/dist/blocks/audit/react/index.js +12 -10
- package/dist/blocks/audit/react/server.d.ts +1 -1
- package/dist/blocks/audit/solid/index.d.ts +3 -3
- package/dist/blocks/audit/solid/index.js +2 -2
- package/dist/blocks/audit/svelte/index.d.ts +3 -3
- package/dist/blocks/audit/svelte/index.js +2 -2
- package/dist/blocks/audit/vue/index.d.ts +3 -3
- package/dist/blocks/audit/vue/index.js +2 -2
- package/dist/blocks/billing/index.d.ts +83 -51
- package/dist/blocks/billing/index.js +30 -18
- package/dist/blocks/billing/react/index.d.ts +19 -9
- package/dist/blocks/billing/react/index.js +12 -8
- package/dist/blocks/billing/react/server.d.ts +5 -2
- package/dist/blocks/billing/react/server.js +4 -1
- package/dist/blocks/billing/solid/index.d.ts +3 -3
- package/dist/blocks/billing/solid/index.js +2 -2
- package/dist/blocks/billing/svelte/index.d.ts +3 -3
- package/dist/blocks/billing/svelte/index.js +2 -2
- package/dist/blocks/billing/vue/index.d.ts +3 -3
- package/dist/blocks/billing/vue/index.js +2 -2
- package/dist/blocks/bookings/index.d.ts +11 -8
- package/dist/blocks/bookings/index.js +3 -3
- package/dist/blocks/bookings/react/index.d.ts +8 -4
- package/dist/blocks/bookings/react/index.js +12 -8
- package/dist/blocks/bookings/react/server.d.ts +4 -1
- package/dist/blocks/bookings/react/server.js +4 -1
- package/dist/blocks/bookings/solid/index.d.ts +3 -3
- package/dist/blocks/bookings/solid/index.js +2 -2
- package/dist/blocks/bookings/svelte/index.d.ts +3 -3
- package/dist/blocks/bookings/svelte/index.js +2 -2
- package/dist/blocks/bookings/vue/index.d.ts +3 -3
- package/dist/blocks/bookings/vue/index.js +2 -2
- package/dist/blocks/bulk/index.d.ts +27 -12
- package/dist/blocks/bulk/index.js +4 -4
- package/dist/blocks/calendar/index.d.ts +4 -4
- package/dist/blocks/calendar/index.js +3 -3
- package/dist/blocks/calendar/react/index.d.ts +5 -5
- package/dist/blocks/calendar/react/index.js +8 -8
- package/dist/blocks/calendar/react/server.d.ts +4 -1
- package/dist/blocks/calendar/react/server.js +4 -1
- package/dist/blocks/calendar/solid/index.d.ts +3 -3
- package/dist/blocks/calendar/solid/index.js +2 -2
- package/dist/blocks/calendar/svelte/index.d.ts +3 -3
- package/dist/blocks/calendar/svelte/index.js +2 -2
- package/dist/blocks/calendar/vue/index.d.ts +3 -3
- package/dist/blocks/calendar/vue/index.js +2 -2
- package/dist/blocks/catalog/index.d.ts +48 -27
- package/dist/blocks/catalog/index.js +16 -13
- package/dist/blocks/collections/index.d.ts +26 -21
- package/dist/blocks/collections/index.js +10 -10
- package/dist/blocks/comments/index.d.ts +11 -11
- package/dist/blocks/comments/index.js +4 -4
- package/dist/blocks/comments/react/index.d.ts +13 -6
- package/dist/blocks/comments/react/index.js +13 -9
- package/dist/blocks/comments/react/server.d.ts +1 -1
- package/dist/blocks/comments/solid/index.d.ts +3 -3
- package/dist/blocks/comments/solid/index.js +2 -2
- package/dist/blocks/comments/svelte/index.d.ts +3 -3
- package/dist/blocks/comments/svelte/index.js +2 -2
- package/dist/blocks/comments/vue/index.d.ts +3 -3
- package/dist/blocks/comments/vue/index.js +2 -2
- package/dist/blocks/connectors/index.d.ts +4 -4
- package/dist/blocks/connectors/index.js +8 -8
- package/dist/blocks/custom-fields/index.d.ts +13 -10
- package/dist/blocks/custom-fields/index.js +6 -6
- package/dist/blocks/data-lifecycle/index.d.ts +75 -51
- package/dist/blocks/data-lifecycle/index.js +17 -11
- package/dist/blocks/deals/index.d.ts +16 -16
- package/dist/blocks/deals/index.js +14 -14
- package/dist/blocks/documents/index.d.ts +4 -4
- package/dist/blocks/documents/index.js +5 -5
- package/dist/blocks/domains/index.d.ts +35 -20
- package/dist/blocks/domains/index.js +9 -9
- package/dist/blocks/drive/index.d.ts +45 -27
- package/dist/blocks/drive/index.js +17 -14
- package/dist/blocks/employees/index.d.ts +26 -21
- package/dist/blocks/employees/index.js +16 -13
- package/dist/blocks/engagements/index.d.ts +26 -17
- package/dist/blocks/engagements/index.js +9 -9
- package/dist/blocks/entitlements/index.d.ts +20 -14
- package/dist/blocks/entitlements/index.js +3 -3
- package/dist/blocks/entitlements/react/index.d.ts +10 -7
- package/dist/blocks/entitlements/react/index.js +7 -7
- package/dist/blocks/entitlements/react/server.d.ts +4 -1
- package/dist/blocks/entitlements/react/server.js +4 -1
- package/dist/blocks/entitlements/solid/index.d.ts +3 -3
- package/dist/blocks/entitlements/solid/index.js +2 -2
- package/dist/blocks/entitlements/svelte/index.d.ts +3 -3
- package/dist/blocks/entitlements/svelte/index.js +2 -2
- package/dist/blocks/entitlements/vue/index.d.ts +3 -3
- package/dist/blocks/entitlements/vue/index.js +2 -2
- package/dist/blocks/flags/index.d.ts +20 -14
- package/dist/blocks/flags/index.js +9 -9
- package/dist/blocks/forms/index.d.ts +28 -16
- package/dist/blocks/forms/index.js +12 -9
- package/dist/blocks/forms/react/index.d.ts +9 -6
- package/dist/blocks/forms/react/index.js +10 -7
- package/dist/blocks/forms/react/server.d.ts +4 -1
- package/dist/blocks/forms/react/server.js +4 -1
- package/dist/blocks/forms/solid/index.d.ts +3 -3
- package/dist/blocks/forms/solid/index.js +2 -2
- package/dist/blocks/forms/svelte/index.d.ts +3 -3
- package/dist/blocks/forms/svelte/index.js +2 -2
- package/dist/blocks/forms/vue/index.d.ts +3 -3
- package/dist/blocks/forms/vue/index.js +2 -2
- package/dist/blocks/hiring/index.d.ts +13 -13
- package/dist/blocks/hiring/index.js +9 -9
- package/dist/blocks/identities/index.d.ts +38 -20
- package/dist/blocks/identities/index.js +16 -10
- package/dist/blocks/imports/index.d.ts +30 -25
- package/dist/blocks/imports/index.js +18 -18
- package/dist/blocks/inbox/index.d.ts +5 -5
- package/dist/blocks/inbox/index.js +7 -7
- package/dist/blocks/inbox/react/index.d.ts +2 -2
- package/dist/blocks/inbox/react/index.js +7 -7
- package/dist/blocks/inbox/react/server.d.ts +10 -4
- package/dist/blocks/inbox/react/server.js +8 -2
- package/dist/blocks/inbox/solid/index.d.ts +3 -3
- package/dist/blocks/inbox/solid/index.js +2 -2
- package/dist/blocks/inbox/svelte/index.d.ts +3 -3
- package/dist/blocks/inbox/svelte/index.js +2 -2
- package/dist/blocks/inbox/vue/index.d.ts +3 -3
- package/dist/blocks/inbox/vue/index.js +2 -2
- package/dist/blocks/index.d.ts +10 -10
- package/dist/blocks/index.js +41 -39
- package/dist/blocks/inventory/index.d.ts +36 -19
- package/dist/blocks/inventory/index.js +15 -9
- package/dist/blocks/invoices/index.d.ts +13 -13
- package/dist/blocks/invoices/index.js +11 -11
- package/dist/blocks/jobs/index.d.ts +123 -86
- package/dist/blocks/jobs/index.js +58 -47
- package/dist/blocks/knowledge/index.d.ts +3 -3
- package/dist/blocks/knowledge/index.js +2 -2
- package/dist/blocks/leave/index.d.ts +30 -15
- package/dist/blocks/leave/index.js +6 -6
- package/dist/blocks/memory/index.d.ts +4 -4
- package/dist/blocks/memory/index.js +7 -7
- package/dist/blocks/metrics/index.d.ts +36 -30
- package/dist/blocks/metrics/index.js +19 -19
- package/dist/blocks/mfa/index.d.ts +2 -2
- package/dist/blocks/mfa/index.js +1 -1
- package/dist/blocks/mfa/react/index.d.ts +7 -7
- package/dist/blocks/mfa/react/index.js +9 -9
- package/dist/blocks/mfa/react/server.d.ts +1 -1
- package/dist/blocks/mfa/react/server.js +1 -1
- package/dist/blocks/mfa/solid/index.d.ts +3 -3
- package/dist/blocks/mfa/solid/index.js +2 -2
- package/dist/blocks/mfa/svelte/index.d.ts +3 -3
- package/dist/blocks/mfa/svelte/index.js +2 -2
- package/dist/blocks/mfa/vue/index.d.ts +3 -3
- package/dist/blocks/mfa/vue/index.js +2 -2
- package/dist/blocks/notifications/index.d.ts +132 -103
- package/dist/blocks/notifications/index.js +61 -46
- package/dist/blocks/notifications/react/index.d.ts +3 -3
- package/dist/blocks/notifications/react/index.js +5 -5
- package/dist/blocks/notifications/react/server.d.ts +5 -2
- package/dist/blocks/notifications/react/server.js +4 -1
- package/dist/blocks/notifications/solid/index.d.ts +3 -3
- package/dist/blocks/notifications/solid/index.js +2 -2
- package/dist/blocks/notifications/svelte/index.d.ts +3 -3
- package/dist/blocks/notifications/svelte/index.js +2 -2
- package/dist/blocks/notifications/vue/index.d.ts +3 -3
- package/dist/blocks/notifications/vue/index.js +2 -2
- package/dist/blocks/number-sequences/index.d.ts +15 -12
- package/dist/blocks/number-sequences/index.js +7 -4
- package/dist/blocks/oauth-server/index.d.ts +42 -21
- package/dist/blocks/oauth-server/index.js +16 -13
- package/dist/blocks/onboarding/index.d.ts +3 -3
- package/dist/blocks/onboarding/index.js +3 -3
- package/dist/blocks/onboarding/react/index.d.ts +10 -5
- package/dist/blocks/onboarding/react/index.js +10 -8
- package/dist/blocks/onboarding/react/server.d.ts +5 -2
- package/dist/blocks/onboarding/react/server.js +4 -1
- package/dist/blocks/onboarding/solid/index.d.ts +3 -3
- package/dist/blocks/onboarding/solid/index.js +2 -2
- package/dist/blocks/onboarding/svelte/index.d.ts +3 -3
- package/dist/blocks/onboarding/svelte/index.js +2 -2
- package/dist/blocks/onboarding/vue/index.d.ts +3 -3
- package/dist/blocks/onboarding/vue/index.js +2 -2
- package/dist/blocks/orders/index.d.ts +57 -30
- package/dist/blocks/orders/index.js +26 -17
- package/dist/blocks/organizations/index.d.ts +5 -5
- package/dist/blocks/organizations/index.js +5 -27
- package/dist/blocks/organizations/react/index.d.ts +40 -21
- package/dist/blocks/organizations/react/index.js +5 -5
- package/dist/blocks/organizations/react/server.d.ts +13 -4
- package/dist/blocks/organizations/react/server.js +12 -3
- package/dist/blocks/organizations/solid/index.d.ts +3 -3
- package/dist/blocks/organizations/solid/index.js +2 -2
- package/dist/blocks/organizations/svelte/index.d.ts +3 -3
- package/dist/blocks/organizations/svelte/index.js +2 -2
- package/dist/blocks/organizations/vue/index.d.ts +3 -3
- package/dist/blocks/organizations/vue/index.js +2 -2
- package/dist/blocks/outbox/index.d.ts +4 -4
- package/dist/blocks/outbox/index.js +20 -16
- package/dist/blocks/parties/index.d.ts +29 -20
- package/dist/blocks/parties/index.js +12 -9
- package/dist/blocks/pipelines/index.d.ts +26 -17
- package/dist/blocks/pipelines/index.js +11 -11
- package/dist/blocks/profiles/index.d.ts +23 -14
- package/dist/blocks/profiles/index.js +5 -5
- package/dist/blocks/promotions/index.d.ts +34 -16
- package/dist/blocks/promotions/index.js +12 -9
- package/dist/blocks/push/index.d.ts +43 -25
- package/dist/blocks/push/index.js +16 -16
- package/dist/blocks/quotes/index.d.ts +15 -12
- package/dist/blocks/quotes/index.js +9 -9
- package/dist/blocks/rank/index.d.ts +12 -12
- package/dist/blocks/rank/index.js +3 -3
- package/dist/blocks/reactions/index.d.ts +4 -4
- package/dist/blocks/reactions/index.js +3 -3
- package/dist/blocks/reactions/react/index.d.ts +14 -4
- package/dist/blocks/reactions/react/index.js +9 -5
- package/dist/blocks/reactions/react/server.d.ts +4 -1
- package/dist/blocks/reactions/react/server.js +4 -1
- package/dist/blocks/reactions/solid/index.d.ts +3 -3
- package/dist/blocks/reactions/solid/index.js +2 -2
- package/dist/blocks/reactions/svelte/index.d.ts +3 -3
- package/dist/blocks/reactions/svelte/index.js +2 -2
- package/dist/blocks/reactions/vue/index.d.ts +3 -3
- package/dist/blocks/reactions/vue/index.js +2 -2
- package/dist/blocks/relations/index.d.ts +40 -23
- package/dist/blocks/relations/index.js +8 -9
- package/dist/blocks/reminders/index.d.ts +35 -26
- package/dist/blocks/reminders/index.js +20 -14
- package/dist/blocks/reviews/index.d.ts +32 -17
- package/dist/blocks/reviews/index.js +6 -6
- package/dist/blocks/rules/index.d.ts +26 -24
- package/dist/blocks/rules/index.js +10 -11
- package/dist/blocks/rules/react/index.d.ts +9 -5
- package/dist/blocks/rules/react/index.js +12 -8
- package/dist/blocks/rules/solid/index.d.ts +3 -3
- package/dist/blocks/rules/solid/index.js +2 -2
- package/dist/blocks/rules/svelte/index.d.ts +3 -3
- package/dist/blocks/rules/svelte/index.js +2 -2
- package/dist/blocks/rules/vue/index.d.ts +3 -3
- package/dist/blocks/rules/vue/index.js +2 -2
- package/dist/blocks/saved-views/index.d.ts +3 -3
- package/dist/blocks/saved-views/index.js +2 -2
- package/dist/blocks/saved-views/react/index.d.ts +14 -8
- package/dist/blocks/saved-views/react/index.js +11 -8
- package/dist/blocks/saved-views/react/server.d.ts +5 -2
- package/dist/blocks/saved-views/react/server.js +4 -1
- package/dist/blocks/saved-views/solid/index.d.ts +3 -3
- package/dist/blocks/saved-views/solid/index.js +2 -2
- package/dist/blocks/saved-views/svelte/index.d.ts +3 -3
- package/dist/blocks/saved-views/svelte/index.js +2 -2
- package/dist/blocks/saved-views/vue/index.d.ts +3 -3
- package/dist/blocks/saved-views/vue/index.js +2 -2
- package/dist/blocks/search/index.d.ts +12 -9
- package/dist/blocks/search/index.js +9 -9
- package/dist/blocks/search/react/index.d.ts +8 -5
- package/dist/blocks/search/react/index.js +6 -6
- package/dist/blocks/search/react/server.d.ts +5 -2
- package/dist/blocks/search/react/server.js +4 -1
- package/dist/blocks/search/solid/index.d.ts +3 -3
- package/dist/blocks/search/solid/index.js +2 -2
- package/dist/blocks/search/svelte/index.d.ts +3 -3
- package/dist/blocks/search/svelte/index.js +2 -2
- package/dist/blocks/search/vue/index.d.ts +3 -3
- package/dist/blocks/search/vue/index.js +2 -2
- package/dist/blocks/service-principals/index.d.ts +24 -18
- package/dist/blocks/service-principals/index.js +11 -8
- package/dist/blocks/sessions/index.d.ts +2 -2
- package/dist/blocks/sessions/index.js +1 -1
- package/dist/blocks/sessions/react/index.d.ts +10 -5
- package/dist/blocks/sessions/react/index.js +8 -6
- package/dist/blocks/sessions/react/server.d.ts +9 -3
- package/dist/blocks/sessions/react/server.js +8 -2
- package/dist/blocks/sessions/solid/index.d.ts +3 -3
- package/dist/blocks/sessions/solid/index.js +2 -2
- package/dist/blocks/sessions/svelte/index.d.ts +3 -3
- package/dist/blocks/sessions/svelte/index.js +2 -2
- package/dist/blocks/sessions/vue/index.d.ts +3 -3
- package/dist/blocks/sessions/vue/index.js +2 -2
- package/dist/blocks/settings/index.d.ts +6 -5
- package/dist/blocks/settings/index.js +6 -5
- package/dist/blocks/settings/react/index.d.ts +13 -7
- package/dist/blocks/settings/react/index.js +5 -5
- package/dist/blocks/settings/react/server.d.ts +5 -2
- package/dist/blocks/settings/react/server.js +4 -1
- package/dist/blocks/settings/solid/index.d.ts +3 -3
- package/dist/blocks/settings/solid/index.js +2 -2
- package/dist/blocks/settings/svelte/index.d.ts +3 -3
- package/dist/blocks/settings/svelte/index.js +2 -2
- package/dist/blocks/settings/vue/index.d.ts +3 -3
- package/dist/blocks/settings/vue/index.js +2 -2
- package/dist/blocks/share-links/index.d.ts +19 -13
- package/dist/blocks/share-links/index.js +4 -4
- package/dist/blocks/shared-signals/index.d.ts +82 -37
- package/dist/blocks/shared-signals/index.js +24 -18
- package/dist/blocks/signing-keys/index.d.ts +5 -5
- package/dist/blocks/signing-keys/index.js +15 -15
- package/dist/blocks/sla/index.d.ts +13 -13
- package/dist/blocks/sla/index.js +8 -8
- package/dist/blocks/sso/index.d.ts +35 -30
- package/dist/blocks/sso/index.js +31 -17
- package/dist/blocks/state-machine/index.d.ts +22 -13
- package/dist/blocks/state-machine/index.js +3 -3
- package/dist/blocks/tags/index.d.ts +3 -3
- package/dist/blocks/tags/index.js +3 -3
- package/dist/blocks/tags/react/index.d.ts +15 -7
- package/dist/blocks/tags/react/index.js +15 -10
- package/dist/blocks/tags/react/server.d.ts +1 -1
- package/dist/blocks/tags/solid/index.d.ts +3 -3
- package/dist/blocks/tags/solid/index.js +2 -2
- package/dist/blocks/tags/svelte/index.d.ts +3 -3
- package/dist/blocks/tags/svelte/index.js +2 -2
- package/dist/blocks/tags/vue/index.d.ts +3 -3
- package/dist/blocks/tags/vue/index.js +2 -2
- package/dist/blocks/targets/index.d.ts +13 -13
- package/dist/blocks/targets/index.js +7 -7
- package/dist/blocks/teams/index.d.ts +9 -9
- package/dist/blocks/teams/index.js +4 -4
- package/dist/blocks/templates/index.d.ts +67 -51
- package/dist/blocks/templates/index.js +22 -23
- package/dist/blocks/time-tracking/index.d.ts +32 -22
- package/dist/blocks/time-tracking/index.js +19 -16
- package/dist/blocks/trash/index.d.ts +13 -11
- package/dist/blocks/trash/index.js +5 -5
- package/dist/blocks/undo/index.d.ts +4 -4
- package/dist/blocks/undo/index.js +3 -3
- package/dist/blocks/undo/react/index.d.ts +3 -3
- package/dist/blocks/undo/react/index.js +4 -4
- package/dist/blocks/undo/react/server.d.ts +5 -2
- package/dist/blocks/undo/react/server.js +4 -1
- package/dist/blocks/undo/solid/index.d.ts +3 -3
- package/dist/blocks/undo/solid/index.js +2 -2
- package/dist/blocks/undo/svelte/index.d.ts +3 -3
- package/dist/blocks/undo/svelte/index.js +2 -2
- package/dist/blocks/undo/vue/index.d.ts +3 -3
- package/dist/blocks/undo/vue/index.js +2 -2
- package/dist/blocks/usage/index.d.ts +5 -5
- package/dist/blocks/usage/index.js +3 -3
- package/dist/blocks/usage/react/index.d.ts +12 -6
- package/dist/blocks/usage/react/index.js +8 -8
- package/dist/blocks/usage/react/server.d.ts +1 -1
- package/dist/blocks/usage/solid/index.d.ts +3 -3
- package/dist/blocks/usage/solid/index.js +2 -2
- package/dist/blocks/usage/svelte/index.d.ts +3 -3
- package/dist/blocks/usage/svelte/index.js +2 -2
- package/dist/blocks/usage/vue/index.d.ts +3 -3
- package/dist/blocks/usage/vue/index.js +2 -2
- package/dist/blocks/vercel-marketplace/index.d.ts +252 -17
- package/dist/blocks/vercel-marketplace/index.js +489 -56
- package/dist/blocks/versions/index.d.ts +24 -21
- package/dist/blocks/versions/index.js +14 -16
- package/dist/blocks/waitlist/index.d.ts +31 -18
- package/dist/blocks/waitlist/index.js +10 -7
- package/dist/blocks/webhooks/index.d.ts +126 -89
- package/dist/blocks/webhooks/index.js +71 -60
- package/dist/blocks/work-items/index.d.ts +18 -16
- package/dist/blocks/work-items/index.js +11 -12
- package/dist/blocks/workflow-builder/index.d.ts +15 -13
- package/dist/blocks/workflow-builder/index.js +10 -7
- package/dist/blocks/workflow-builder/react/index.d.ts +4 -4
- package/dist/blocks/workflow-builder/react/index.js +8 -8
- package/dist/blocks/workflow-builder/react/server.d.ts +8 -2
- package/dist/blocks/workflow-builder/react/server.js +8 -2
- package/dist/blocks/workflow-builder/solid/index.d.ts +3 -3
- package/dist/blocks/workflow-builder/solid/index.js +2 -2
- package/dist/blocks/workflow-builder/svelte/index.d.ts +3 -3
- package/dist/blocks/workflow-builder/svelte/index.js +2 -2
- package/dist/blocks/workflow-builder/vue/index.d.ts +3 -3
- package/dist/blocks/workflow-builder/vue/index.js +2 -2
- package/dist/blocks/workflows/index.d.ts +5 -5
- package/dist/blocks/workflows/index.js +4 -4
- package/dist/blocks/workflows/react/index.d.ts +13 -6
- package/dist/blocks/workflows/react/index.js +7 -7
- package/dist/blocks/workflows/react/server.d.ts +8 -2
- package/dist/blocks/workflows/react/server.js +8 -2
- package/dist/blocks/workflows/solid/index.d.ts +3 -3
- package/dist/blocks/workflows/solid/index.js +2 -2
- package/dist/blocks/workflows/svelte/index.d.ts +3 -3
- package/dist/blocks/workflows/svelte/index.js +2 -2
- package/dist/blocks/workflows/vue/index.d.ts +3 -3
- package/dist/blocks/workflows/vue/index.js +2 -2
- package/dist/blocks-CR3vCYhj.js +88 -0
- package/dist/bookings-DJflcGqs.js +184 -0
- package/dist/bucket-DBay-ICp.d.ts +667 -0
- package/dist/build-DxzJf79X.js +1839 -0
- package/dist/build-UqJeGtsH.js +703 -0
- package/dist/calendar-DvbYFkrh.js +801 -0
- package/dist/channel-BjvGO39m.d.ts +77 -0
- package/dist/channels-CfcFPuo_.js +114 -0
- package/dist/chat-sdk/index.d.ts +154 -78
- package/dist/chat-sdk/index.js +57 -39
- package/dist/chat-sdk/react/index.d.ts +2 -2
- package/dist/chat-sdk/react/server.d.ts +2 -2
- package/dist/claims-Bp9My7XP.js +88 -0
- package/dist/claims-T8TWZ53E.js +63 -0
- package/dist/cli/add-BRjL7LuG.js +1 -0
- package/dist/cli/add-Cf0uxfZ2.js +672 -0
- package/dist/cli/add-DPfdDRq7.js +75 -0
- package/dist/cli/adopt-B28iUeGg.js +1 -0
- package/dist/cli/adopt-C0VugVMu.js +421 -0
- package/dist/cli/agent-CbuPvI2x.js +185 -0
- package/dist/cli/apply-BlxtZPxe.js +329 -0
- package/dist/cli/bin.js +3 -3
- package/dist/cli/blocks-CHQ7K8Yz.js +1 -0
- package/dist/cli/blocks-D3tsq-mR.js +124 -0
- package/dist/cli/cache-DdgzhoaL.js +516 -0
- package/dist/cli/catalog-DwTUdJaQ.js +188 -0
- package/dist/cli/codemod-Dz4R-tVY.js +1127 -0
- package/dist/cli/command-33pu13LT.js +963 -0
- package/dist/cli/completion-6M6Hr8TL.js +211 -0
- package/dist/cli/completion-Bqu8yq0q.js +1 -0
- package/dist/cli/completion-Ddr3yqd3.js +30 -0
- package/dist/cli/config-2qlSTi2o.js +1503 -0
- package/dist/cli/config-B31tIvAl.js +42 -0
- package/dist/cli/config-DVksOjSr.js +1 -0
- package/dist/cli/config-edit-D46H0UHp.js +613 -0
- package/dist/cli/db-CQCLx7cx.js +78 -0
- package/dist/cli/db-D8iId4R8.js +473 -0
- package/dist/cli/design-edit-B2aBiarJ.js +205 -0
- package/dist/cli/detect-D9JaAX20.js +84 -0
- package/dist/cli/doctor-pIek4vIO.js +3897 -0
- package/dist/cli/emit-CJKf47Bi.js +1078 -0
- package/dist/cli/env-BrLZfqsL.js +143 -0
- package/dist/cli/env-C-Bl6Awn.js +1 -0
- package/dist/cli/env-DMgjB_4y.js +1114 -0
- package/dist/cli/env-cbCEa79W.js +1 -0
- package/dist/cli/errors-BTe6A15O.js +98 -0
- package/dist/cli/exec--Q1ZEWUW.js +463 -0
- package/dist/cli/files-C5JfVnj5.js +972 -0
- package/dist/cli/fresh-import-DzgsGHkX.js +40 -0
- package/dist/cli/gen-DquZzY5a.js +307 -0
- package/dist/cli/index.d.ts +239 -175
- package/dist/cli/index.js +16 -16
- package/dist/cli/init-Dd-UdrE0.js +397 -0
- package/dist/cli/introspect-IMQCji2l.js +51 -0
- package/dist/cli/io-DH1kcmmP.js +37 -0
- package/dist/cli/keys-iJs_1WT8.js +106 -0
- package/dist/cli/live-BfAO5YRX.js +344 -0
- package/dist/cli/mcp-D8Az0FNn.js +240 -0
- package/dist/cli/metadata-CTStQPfV.js +144 -0
- package/dist/cli/migration-safety-Dg1lxomi.js +305 -0
- package/dist/cli/module-migration-CbX-jRhV.js +606 -0
- package/dist/cli/moved-CdNtCf4t.js +161 -0
- package/dist/cli/parse-CRZLku1b.js +182 -0
- package/dist/cli/preset-DEvwDc7U.js +129 -0
- package/dist/cli/prompts-jqnr94b9.js +1140 -0
- package/dist/cli/redact-KGAk2Ul9.js +38 -0
- package/dist/cli/run-BXhJoghZ.js +1602 -0
- package/dist/cli/run-DdxNRTr0.js +63 -0
- package/dist/cli/run-dTu_PD4I.js +711 -0
- package/dist/cli/scaffold-Bx3bcy2R.js +901 -0
- package/dist/cli/scaffold-mbNAQE19.js +1 -0
- package/dist/cli/seed-CLseQdXQ.js +188 -0
- package/dist/cli/seed-DSHSUsYy.js +1 -0
- package/dist/cli/shared-CAdIkTR7.js +151 -0
- package/dist/cli/skills-Bz4INB8f.js +121 -0
- package/dist/cli/snapshot-GfdB9Cjl.js +350 -0
- package/dist/cli/source-args-Dy3j1-H-.js +59 -0
- package/dist/cli/spec-BfEK0_04.js +1 -0
- package/dist/cli/spec-DXTdodlO.js +7534 -0
- package/dist/cli/sql-BUhpAvrW.js +2 -0
- package/dist/cli/sql-CLbWk3Yb.js +332 -0
- package/dist/cli/stack-_F_JhllX.js +135 -0
- package/dist/cli/stack-env-6hS-WEmh.js +93 -0
- package/dist/cli/stack-status-B_Ipd_-z.js +46 -0
- package/dist/cli/stacks-BYlQ96WS.js +232 -0
- package/dist/cli/style-Bm2X5JrN.js +35 -0
- package/dist/cli/supabase-toml-CncmQbO0.js +1164 -0
- package/dist/cli/sync-BBzNO-v9.js +91 -0
- package/dist/cli/topics-BpdnYmWb.js +30 -0
- package/dist/cli/typegen-F9GEjpvD.js +502 -0
- package/dist/cli/validate-B3lF3-jB.js +7522 -0
- package/dist/cli/version-DiwcIKOL.js +4 -0
- package/dist/cli/write-DZKk5rSF.js +201 -0
- package/dist/client/index.d.ts +6 -6
- package/dist/client/index.js +16 -11
- package/dist/client/native/index.d.ts +87 -53
- package/dist/client/native/index.js +65 -43
- package/dist/client--tyFmxDT.js +52 -0
- package/dist/client-0qFNkNhT.js +1060 -0
- package/dist/client-2z1aHG57.d.ts +475 -0
- package/dist/client-5IVhjmtl.d.ts +74 -0
- package/dist/client-B3WBilR2.d.ts +69 -0
- package/dist/client-B4JPQgf-.d.ts +165 -0
- package/dist/client-BAYh7P2h.js +211 -0
- package/dist/client-BKGVUgo7.js +380 -0
- package/dist/client-BNaOcfeH.js +58 -0
- package/dist/client-BOuaQA0h.js +173 -0
- package/dist/client-BP-8vn9G.d.ts +37 -0
- package/dist/client-BU5Yd0yO.d.ts +103 -0
- package/dist/client-Bb_Pj9wL.js +137 -0
- package/dist/client-BkH-Vh3s.d.ts +112 -0
- package/dist/client-BsfsRHae.d.ts +136 -0
- package/dist/client-Bta7yl1C.d.ts +451 -0
- package/dist/client-BwKXlohx.js +121 -0
- package/dist/client-C1zOmnS8.js +89 -0
- package/dist/client-CMqO1gCn.d.ts +64 -0
- package/dist/client-CPirbPPi.js +85 -0
- package/dist/client-CQPB-VJx.d.ts +110 -0
- package/dist/client-CXbP_p02.d.ts +156 -0
- package/dist/client-C_S9avzV.d.ts +420 -0
- package/dist/client-Cb1g45Hc.js +99 -0
- package/dist/client-CebKlRU7.js +157 -0
- package/dist/client-Ch-dDfTB.js +437 -0
- package/dist/client-CuFD4o56.d.ts +111 -0
- package/dist/client-D2y_CfhU.d.ts +137 -0
- package/dist/client-DAcVF-YJ.js +134 -0
- package/dist/client-DCuE1rFm.js +441 -0
- package/dist/client-DD02cst6.d.ts +245 -0
- package/dist/client-DD3EcytK.js +65 -0
- package/dist/client-DEE57s9m.d.ts +132 -0
- package/dist/client-DScMvaty.js +38 -0
- package/dist/client-DVRFa59w.d.ts +309 -0
- package/dist/client-DXb1Nmr3.js +111 -0
- package/dist/client-DkI0oyR7.js +76 -0
- package/dist/client-DkQcRKhm.js +67 -0
- package/dist/client-DoXBX3vS.d.ts +116 -0
- package/dist/client-Dsuy9wfA.d.ts +59 -0
- package/dist/client-EQvEzUQg.d.ts +276 -0
- package/dist/client-G7NGXZKe.d.ts +43 -0
- package/dist/client-OhTiAol1.js +213 -0
- package/dist/client-Wt19DaEb.js +291 -0
- package/dist/client-Y-kaHabc.d.ts +46 -0
- package/dist/client-YASsOslj.js +321 -0
- package/dist/client-Y_HnZGF4.js +51 -0
- package/dist/client-_mL998Gl.js +129 -0
- package/dist/client-i_u1e0Kf.d.ts +144 -0
- package/dist/client-kRvHKAKS.js +60 -0
- package/dist/client-nieeGXdg.d.ts +178 -0
- package/dist/client-pxXoQOdC.js +40 -0
- package/dist/client-ysVOUgxM.d.ts +54 -0
- package/dist/clone-CkG0-hlI.js +33 -0
- package/dist/cloud-event-CidL9jiw.d.ts +64 -0
- package/dist/cloud-event-XsM53POL.js +63 -0
- package/dist/codecs-Du_zE1xu.js +358 -0
- package/dist/codecs-WHpM3Byy.d.ts +221 -0
- package/dist/codegen-DGtOsqz9.d.ts +1809 -0
- package/dist/comments-Ceqo9bwE.js +230 -0
- package/dist/commerce/index.d.ts +38 -33
- package/dist/commerce/index.js +38 -28
- package/dist/compiler-DCotQWcs.d.ts +14 -0
- package/dist/compose-VBQL7zIO.js +53 -0
- package/dist/composite-BgBzdYP-.d.ts +82 -0
- package/dist/composite-BgSdL5tk.js +130 -0
- package/dist/config/index.d.ts +6 -6
- package/dist/config/index.js +7 -7
- package/dist/config-V6HMvce5.js +3930 -0
- package/dist/config-xUf0dj0t.js +562 -0
- package/dist/connector-CKcTPJRV.d.ts +107 -0
- package/dist/connectors-CgWuPQks.d.ts +147 -0
- package/dist/context-CCz6ZgyI.js +19 -0
- package/dist/context-CMxVnPMY.js +9 -0
- package/dist/context-CrojkPNC.js +41 -0
- package/dist/context-DvBEhsXX.d.ts +403 -0
- package/dist/controller-BEliOBOv.js +79 -0
- package/dist/controller-lWRcKqCl.d.ts +52 -0
- package/dist/create/index.d.ts +296 -175
- package/dist/create/index.js +430 -297
- package/dist/create/lite/index.d.ts +19 -12
- package/dist/create/lite/index.js +10 -9
- package/dist/create/oauth/index.d.ts +2 -0
- package/dist/create/oauth/index.js +101 -0
- package/dist/create/supabase/index.d.ts +13 -34
- package/dist/create/supabase/index.js +16 -84
- package/dist/credentials/index.d.ts +12 -12
- package/dist/credentials/index.js +13 -13
- package/dist/cron-CI1kP-t5.js +148 -0
- package/dist/cron-route-BbVtwXZz.js +24 -0
- package/dist/csv-2rXGPNtP.js +89 -0
- package/dist/csv-DhHQS2x_.d.ts +28 -0
- package/dist/define-D0LSXmUP.d.ts +1117 -0
- package/dist/define-DwZ_LQVO.js +2011 -0
- package/dist/define-block-MyM4lH42.d.ts +281 -0
- package/dist/delegation-DeAJehLk.js +146 -0
- package/dist/delivery-Bm0jxmzI.js +29 -0
- package/dist/delivery-n6lZGuGx.d.ts +71 -0
- package/dist/documents-BijGGIjr.d.ts +99 -0
- package/dist/edge/index.d.ts +65 -38
- package/dist/edge/index.js +20 -17
- package/dist/elysia/index.d.ts +16 -14
- package/dist/elysia/index.js +11 -9
- package/dist/email-tt2QqiSc.d.ts +42 -0
- package/dist/embeddings-DRGIc8ti.js +128 -0
- package/dist/embeddings-Deusi99x.d.ts +78 -0
- package/dist/ended-D_Twxl8v.d.ts +76 -0
- package/dist/entitlements-CMGsO4gL.d.ts +54 -0
- package/dist/entitlements-_tw0V3BY.js +45 -0
- package/dist/env/index.d.ts +1 -1
- package/dist/env/index.js +16 -4
- package/dist/envelope-BDShQQ7-.js +90 -0
- package/dist/errors-Cq72lONT.js +44 -0
- package/dist/errors-D7u24ZJH.js +321 -0
- package/dist/escape-like-DuKupGUV.d.ts +15 -0
- package/dist/eve/index.d.ts +40 -22
- package/dist/eve/index.js +34 -25
- package/dist/eve-dWNqpd9Z.d.ts +157 -0
- package/dist/event-calendar-E6AI-dgg.d.ts +217 -0
- package/dist/event-map-CtPFhcOp.js +19 -0
- package/dist/events/index.d.ts +3 -3
- package/dist/events/index.js +10 -10
- package/dist/events-D6IZ5CE8.js +82 -0
- package/dist/events-DhGgwqQA.d.ts +842 -0
- package/dist/events-SqJLbb8q.js +24 -0
- package/dist/executor-C29668fO.d.ts +281 -0
- package/dist/executor-C5uyGttm.js +207 -0
- package/dist/executor-Cy1nk4MZ.d.ts +104 -0
- package/dist/executor-DK2F9Zis.js +746 -0
- package/dist/executor-DXfgDsKd.d.ts +37 -0
- package/dist/executor-D_viYkhf.d.ts +179 -0
- package/dist/executor-QtVn0axs.js +147 -0
- package/dist/expo/index.d.ts +37 -26
- package/dist/expo/index.js +17 -14
- package/dist/expo-sqlite/index.d.ts +20 -17
- package/dist/expo-sqlite/index.js +19 -13
- package/dist/field-errors-CKEqR38q.d.ts +119 -0
- package/dist/field-formats-BX2FqLle.d.ts +39 -0
- package/dist/field-formats-C6QKA3UR.js +102 -0
- package/dist/filter-evaluate-CRDXv0Dl.js +217 -0
- package/dist/filter-evaluate-CSWhzYWN.d.ts +37 -0
- package/dist/filter-query-C7qgRYYv.d.ts +133 -0
- package/dist/filter-query-D4ZSwbcJ.js +524 -0
- package/dist/flags-C--SBMT9.js +279 -0
- package/dist/flags-CJFDNAvL.d.ts +246 -0
- package/dist/flags-sdk/index.d.ts +13 -13
- package/dist/flags-sdk/index.js +18 -15
- package/dist/form-definition-BjeElHsB.js +311 -0
- package/dist/form-definition-DcVnFzl4.d.ts +95 -0
- package/dist/format-AYHceC2m.d.ts +79 -0
- package/dist/framework-BpEnOfAo.js +57 -0
- package/dist/framework-CMeAuJts.d.ts +41 -0
- package/dist/function-contract-4vfi93Y5.d.ts +27 -0
- package/dist/function-contract-pEmsaUIf.js +8 -0
- package/dist/gateway-Dar9C0uP.d.ts +115 -0
- package/dist/gateway-options-BlVCqgb8.d.ts +29 -0
- package/dist/gateway-options-Cl74B7k6.js +27 -0
- package/dist/graph-B4eubUQG.js +365 -0
- package/dist/h3/index.d.ts +19 -12
- package/dist/h3/index.js +15 -11
- package/dist/h3/v1/index.d.ts +34 -24
- package/dist/h3/v1/index.js +23 -19
- package/dist/hmac-B3CTTlfv.js +23 -0
- package/dist/hono/index.d.ts +54 -36
- package/dist/hono/index.js +18 -18
- package/dist/http-AkLjqOuB.js +28 -0
- package/dist/http-BjjojWg3.js +40 -0
- package/dist/http-DzbloBR-.js +141 -0
- package/dist/image-url-_d7xYsXK.js +84 -0
- package/dist/impersonation-DFfDVJHk.js +62 -0
- package/dist/impersonation-YTa9dZUv.d.ts +28 -0
- package/dist/inbox-CLsIrPXs.d.ts +417 -0
- package/dist/index-B5XcM3VY.d.ts +230 -0
- package/dist/index-B5dVVZtW.d.ts +142 -0
- package/dist/index-Brm8I8iZ.d.ts +232 -0
- package/dist/index-C7-2ZS9f.d.ts +127 -0
- package/dist/index-CE0p3st5.d.ts +227 -0
- package/dist/index-CcpGT2GI.d.ts +151 -0
- package/dist/index-CrAKHNJF.d.ts +287 -0
- package/dist/index-DLjs7j_z.d.ts +61 -0
- package/dist/index-DbyDZZlc.d.ts +53 -0
- package/dist/index-DdZcWH6q.d.ts +820 -0
- package/dist/index-Dh5ZFCtu.d.ts +61 -0
- package/dist/index-NRMMhhEi.d.ts +104 -0
- package/dist/index-PADpaDku.d.ts +447 -0
- package/dist/index-X2fkPUwb.d.ts +51 -0
- package/dist/index-eoAU_QaY.d.ts +357 -0
- package/dist/index.d.ts +34 -23
- package/dist/index.js +22 -18
- package/dist/invalidate-BLiBFbLy.d.ts +19 -0
- package/dist/iso4217-B-durg_y.js +176 -0
- package/dist/json-DaByVJpw.js +22 -0
- package/dist/json-schema-Bu4YCRbZ.js +551 -0
- package/dist/jwks-cache-DbgNmSgV.js +49 -0
- package/dist/jws-D0toeQlA.d.ts +66 -0
- package/dist/jws-DOgHJKHb.js +205 -0
- package/dist/kit-BeXTrlZn.js +127 -0
- package/dist/kit-LeQGMzLH.d.ts +94 -0
- package/dist/knowledge-Bx_qehoZ.js +272 -0
- package/dist/knowledge-CYdNJasZ.d.ts +202 -0
- package/dist/lint/index.d.ts +6 -6
- package/dist/lint/index.js +9 -6
- package/dist/list/index.d.ts +3 -3
- package/dist/list/index.js +3 -3
- package/dist/list-query-CuS1w2Af.js +559 -0
- package/dist/list-query-Dx5cAqG6.d.ts +223 -0
- package/dist/live-CZtRMh62.js +246 -0
- package/dist/management-wtecfrNf.d.ts +57 -0
- package/dist/mcp/index.d.ts +70 -42
- package/dist/mcp/index.js +53 -45
- package/dist/mcp/sdk/index.d.ts +37 -25
- package/dist/mcp/sdk/index.js +16 -13
- package/dist/message-Bg4TKA12.d.ts +99 -0
- package/dist/messages-Bd5-5ZjP.js +492 -0
- package/dist/metric-definition-EAYI1r2n.d.ts +69 -0
- package/dist/mfa-Dt8AdWht.d.ts +36 -0
- package/dist/model-Btl8X9cs.d.ts +326 -0
- package/dist/model-messages-BWyXXA4s.js +206 -0
- package/dist/model-messages-DrR4lZ_c.d.ts +34 -0
- package/dist/money-BNRdJQzA.d.ts +91 -0
- package/dist/money-BZl985O-.js +197 -0
- package/dist/money-codec-BdnIiFFX.js +41 -0
- package/dist/nestjs/index.d.ts +32 -17
- package/dist/nestjs/index.js +27 -18
- package/dist/next/client/index.d.ts +8 -7
- package/dist/next/client/index.js +8 -7
- package/dist/next/image/index.d.ts +8 -6
- package/dist/next/image/index.js +7 -5
- package/dist/next/index.d.ts +142 -110
- package/dist/next/index.js +57 -42
- package/dist/node/index.d.ts +3 -3
- package/dist/node/index.js +33 -23
- package/dist/node-headers-BPtMP4_V.d.ts +27 -0
- package/dist/nuxt/index.d.ts +7 -6
- package/dist/nuxt/index.js +7 -6
- package/dist/onboarding-DjXV4rgO.js +68 -0
- package/dist/openapi/index.d.ts +3 -3
- package/dist/openapi/index.js +10 -7
- package/dist/operations-Cc27HkTG.d.ts +6 -0
- package/dist/operations-DVHRHvv6.js +29 -0
- package/dist/optional-peer-C1NbBRJm.js +32 -0
- package/dist/options-CIf3xni7.d.ts +52 -0
- package/dist/organizations-R98kfFwF.js +401 -0
- package/dist/orpc/index.d.ts +50 -37
- package/dist/orpc/index.js +22 -18
- package/dist/otel/index.d.ts +19 -16
- package/dist/otel/index.js +22 -19
- package/dist/outbox-Bsk-HJnq.d.ts +199 -0
- package/dist/overlay/index.d.ts +71 -55
- package/dist/overlay/index.js +48 -41
- package/dist/payments-6uuergov.js +16 -0
- package/dist/pg-error-B5QLDcbG.js +26 -0
- package/dist/plugin-D9bYbYli.js +45 -0
- package/dist/plugin-DouW0Kvg.d.ts +203 -0
- package/dist/plugins/actor/index.d.ts +9 -6
- package/dist/plugins/actor/index.js +6 -6
- package/dist/plugins/rules/index.d.ts +15 -15
- package/dist/plugins/rules/index.js +12 -6
- package/dist/plugins/soft-delete/index.d.ts +7 -7
- package/dist/plugins/soft-delete/index.js +7 -7
- package/dist/plugins/tenant/index.d.ts +16 -11
- package/dist/plugins/tenant/index.js +8 -9
- package/dist/plugins/timestamps/index.d.ts +3 -3
- package/dist/plugins/timestamps/index.js +4 -4
- package/dist/plugins/validation/index.d.ts +4 -4
- package/dist/plugins/validation/index.js +4 -4
- package/dist/pool-Bu8zXGzI.d.ts +123 -0
- package/dist/pool-errors-DOZ3oDeS.js +27 -0
- package/dist/ports-BltcWsHf.d.ts +312 -0
- package/dist/ports-CM3aG3zn.js +137 -0
- package/dist/ports-n3ZWSS_I.d.ts +89 -0
- package/dist/postgres/index.d.ts +15 -15
- package/dist/postgres/index.js +14 -8
- package/dist/postgrest-DGjrW4sK.d.ts +53 -0
- package/dist/powersync/index.d.ts +12 -13
- package/dist/powersync/index.js +18 -19
- package/dist/powersync/react/index.d.ts +13 -12
- package/dist/powersync/react/index.js +15 -11
- package/dist/preset/index.d.ts +4 -4
- package/dist/preset/index.js +4 -4
- package/dist/preset-HNFqCWaD.js +838 -0
- package/dist/problem-D0KDiYPk.js +162 -0
- package/dist/problem-D_DEBfMn.d.ts +79 -0
- package/dist/provider-BhIkKBOh.js +57 -0
- package/dist/provider-Dmsbl8ug.d.ts +112 -0
- package/dist/push-token-8lvtOEv4.d.ts +24 -0
- package/dist/query/index.d.ts +3 -3
- package/dist/query/index.js +2 -2
- package/dist/query-DgPYlU82.js +311 -0
- package/dist/rank-result-C6vsw27N.js +18 -0
- package/dist/rank-result-DHflCNwo.d.ts +14 -0
- package/dist/rate-limit-B7N1ZGl6.d.ts +50 -0
- package/dist/rate-limit-CXpPm4_l.js +49 -0
- package/dist/rate-limit-CpTD_WHm.js +328 -0
- package/dist/ratelimit-headers-kEcXyO3H.js +62 -0
- package/dist/react/index.d.ts +11 -11
- package/dist/react/index.js +4 -4
- package/dist/react/native/index.d.ts +36 -21
- package/dist/react/native/index.js +32 -20
- package/dist/react/server.d.ts +50 -21
- package/dist/react/server.js +42 -13
- package/dist/react/session.d.ts +9 -7
- package/dist/react/session.js +7 -5
- package/dist/react-BKCnIuZs.js +79 -0
- package/dist/react-controller-CKSdtJ10.js +43 -0
- package/dist/react-env-CodKZgPk.js +16 -0
- package/dist/react-router/index.d.ts +30 -23
- package/dist/react-router/index.js +14 -13
- package/dist/react-uvu_KcVY.js +599 -0
- package/dist/read-set-DP6fm21F.js +316 -0
- package/dist/realtime/index.d.ts +7 -7
- package/dist/realtime/index.js +4 -4
- package/dist/realtime-status-BhNkb-Ow.d.ts +8 -0
- package/dist/realtime-status-asHvhiOh.js +11 -0
- package/dist/refusal-BEyNVFy7.d.ts +32 -0
- package/dist/refusal-Ce2p81VW.js +64 -0
- package/dist/resolve-D57oDWNr.d.ts +289 -0
- package/dist/resolve-sy3_Gz0i.js +892 -0
- package/dist/resource-BRRU-A7j.js +91 -0
- package/dist/resource-BVvIiuX_.js +469 -0
- package/dist/resource-DxQOPkZ5.d.ts +115 -0
- package/dist/resource-execute-BbjuiXwD.d.ts +15 -0
- package/dist/resource-schemas-up6bKOUi.js +82 -0
- package/dist/resource-types-NXau9LJE.d.ts +153 -0
- package/dist/resources-CIi7sw1T.js +64 -0
- package/dist/resources-CZ60Vqwq.d.ts +7 -0
- package/dist/respond-DjEmE_DN.js +100 -0
- package/dist/respond-QW-f1yio.d.ts +101 -0
- package/dist/result-DIT_qp4G.js +146 -0
- package/dist/result-mijqfoJN.d.ts +346 -0
- package/dist/rrule-CesB9Rxd.js +290 -0
- package/dist/rules-D75V7dAE.js +286 -0
- package/dist/run-watch-B-LoK5m1.js +53 -0
- package/dist/runtime-CoKxZibd.js +45 -0
- package/dist/sales-lines-9HsX89aO.d.ts +28 -0
- package/dist/sales-lines-DgXeOEar.js +41 -0
- package/dist/sales-shared-CjXsy0NJ.js +22 -0
- package/dist/search-9hoZ8rN1.js +106 -0
- package/dist/search-Cn_DGluL.js +9 -0
- package/dist/server/index.d.ts +153 -116
- package/dist/server/index.js +49 -40
- package/dist/server-types-D_cQ6OxZ.d.ts +809 -0
- package/dist/session-DNRYXIOU.d.ts +97 -0
- package/dist/settings-DzQtMwfl.js +93 -0
- package/dist/shared-Bf-I13Ht.js +91 -0
- package/dist/shared-C80IHf4B.js +60 -0
- package/dist/shared-CRRfQAKG.d.ts +11 -0
- package/dist/shared-D11SWNLx.js +17 -0
- package/dist/sign-in-B_QJ2u62.js +386 -0
- package/dist/sign-in-D54FLMQy.d.ts +55 -0
- package/dist/signatures-CzqfLlfV.d.ts +43 -0
- package/dist/signatures-D8IoN3Rw.js +145 -0
- package/dist/signers-BuVQKDfK.d.ts +390 -0
- package/dist/signing-keys-i2Rsll6L.d.ts +119 -0
- package/dist/solid/index.d.ts +50 -23
- package/dist/solid/index.js +35 -14
- package/dist/solid-controller-7TxGaJNy.js +33 -0
- package/dist/solid-controller-BnF3ovwV.d.ts +11 -0
- package/dist/solid-start/index.d.ts +22 -18
- package/dist/solid-start/index.js +9 -9
- package/dist/spec/index.d.ts +39 -25
- package/dist/spec/index.js +26 -21
- package/dist/spec-pins-CZ2CL8YZ.d.ts +120 -0
- package/dist/spec-pins-D3Tm6HJi.js +60 -0
- package/dist/sql/index.d.ts +5 -5
- package/dist/sql/index.js +5 -5
- package/dist/sql-CQIikLnQ.js +421 -0
- package/dist/sql-frpIs51D.js +89308 -0
- package/dist/sso-C86TPpZr.js +217 -0
- package/dist/sso-D_am-gBz.d.ts +161 -0
- package/dist/ssr/index.d.ts +4 -4
- package/dist/ssr/index.js +3 -3
- package/dist/standard-16AIDny5.d.ts +7 -0
- package/dist/standard-l10kE0yS.js +25 -0
- package/dist/stats-Bt1RyT-F.js +1147 -0
- package/dist/storage/index.d.ts +4 -4
- package/dist/storage/index.js +137 -73
- package/dist/store-DKqbuNvw.d.ts +83 -0
- package/dist/store-McN-2esd.js +69 -0
- package/dist/streams/index.d.ts +24 -18
- package/dist/streams/index.js +4 -4
- package/dist/streams/redis/index.d.ts +10 -7
- package/dist/streams/redis/index.js +9 -9
- package/dist/stripe/index.d.ts +5 -2
- package/dist/stripe/index.js +2 -2
- package/dist/stripe-BJUfp5jM.js +32 -0
- package/dist/stripe-BSEwKCni.d.ts +140 -0
- package/dist/subject-readers-BJzh7WF7.js +49 -0
- package/dist/subject-readers-Bbq1i0Ol.d.ts +21 -0
- package/dist/subjects-DQ2SU4cA.d.ts +77 -0
- package/dist/subscribers-BvZxcd63.js +33 -0
- package/dist/supabase-mcp-Dz9DgrKP.js +28 -0
- package/dist/supabase-mcp-Z4vtsuoO.d.ts +46 -0
- package/dist/support-CWVTM2AB.js +534 -0
- package/dist/support-view-BOJJSZKv.d.ts +17 -0
- package/dist/svelte/index.d.ts +32 -14
- package/dist/svelte/index.js +22 -10
- package/dist/svelte-controller-BmRhHvFz.js +50 -0
- package/dist/svelte-controller-DXO7gsmS.d.ts +13 -0
- package/dist/sveltekit/index.d.ts +45 -33
- package/dist/sveltekit/index.js +18 -17
- package/dist/table-schema-xqSXrjCN.js +284 -0
- package/dist/tags-C_ym1yDM.js +39 -0
- package/dist/tags-Co-QIHeK.js +84 -0
- package/dist/tags-tbiuHHMV.d.ts +30 -0
- package/dist/tanstack-db/index.d.ts +17 -11
- package/dist/tanstack-db/index.js +6 -6
- package/dist/tanstack-db/supabase/index.d.ts +24 -9
- package/dist/tanstack-db/supabase/index.js +6 -3
- package/dist/tanstack-start/index.d.ts +40 -29
- package/dist/tanstack-start/index.js +33 -19
- package/dist/tax-BHSCb5Rw.d.ts +280 -0
- package/dist/tax-keSd-q_1.js +140 -0
- package/dist/tee-1fsH3bEz.js +101 -0
- package/dist/template-DXsGm_R0.js +126 -0
- package/dist/temporal-DLZlWbOi.js +85 -0
- package/dist/temporal-required-Dt4mcPsi.js +20 -0
- package/dist/tenant-DnMqeNIM.js +27 -0
- package/dist/tenant-l3H2ouv7.d.ts +17 -0
- package/dist/testing/index.d.ts +483 -267
- package/dist/testing/index.js +333 -196
- package/dist/timing-C5NzaEgy.js +95 -0
- package/dist/topic-CZvLXFND.d.ts +415 -0
- package/dist/topic-Cr01EHZy.js +643 -0
- package/dist/ttl-cache-Bhr9swjT.js +32 -0
- package/dist/types-BTK75521.js +8 -0
- package/dist/types-Bzm0OgJk.d.ts +177 -0
- package/dist/types-CB5MvzuE.d.ts +624 -0
- package/dist/types-DYXhFhmQ.d.ts +251 -0
- package/dist/types-DmshMaXz.d.ts +421 -0
- package/dist/types-EUrisY2U.d.ts +217 -0
- package/dist/types-vVsLvOUJ.d.ts +700 -0
- package/dist/undo-CClrTbm9.d.ts +46 -0
- package/dist/undo-HHonvNeg.js +44 -0
- package/dist/upload-claim-DCuklVyh.js +33 -0
- package/dist/usage-BFwuH7GK.d.ts +232 -0
- package/dist/usage-CJmmCGzd.js +264 -0
- package/dist/user-change-CSR_prhd.js +133 -0
- package/dist/variants-Bat9zU8l.js +53 -0
- package/dist/vault-BQThkbws.d.ts +62 -0
- package/dist/vercel-connect/index.d.ts +3 -3
- package/dist/vercel-connect/index.js +8 -8
- package/dist/verify-BCmBaHlN.js +130 -0
- package/dist/verify-BTAEsJbF.d.ts +146 -0
- package/dist/view-CKzCp8FW.d.ts +90 -0
- package/dist/view-CfUd5vI9.js +108 -0
- package/dist/vue/index.d.ts +51 -27
- package/dist/vue/index.js +41 -20
- package/dist/vue-controller-DCOtUOA_.d.ts +11 -0
- package/dist/vue-controller-EzyTjqca.js +32 -0
- package/dist/watch-CYeMXFtj.d.ts +92 -0
- package/dist/watch-Cnd6XDnU.js +139 -0
- package/dist/watch-topic-CloXeDTO.d.ts +31 -0
- package/dist/watch-topic-CuaWfCuv.js +57 -0
- package/dist/wire-BJhepFbv.js +66 -0
- package/dist/workflow-builder-DzZNlI45.js +699 -0
- package/dist/workflow-sdk/builder/index.d.ts +51 -37
- package/dist/workflow-sdk/builder/index.js +30 -24
- package/dist/workflow-sdk/index.d.ts +24 -15
- package/dist/workflow-sdk/index.js +9 -6
- package/dist/workflow-sdk/world/index.d.ts +56 -24
- package/dist/workflow-sdk/world/index.js +47 -24
- package/dist/workflow-sdk-BXwl1THQ.d.ts +163 -0
- package/dist/workflow-sdk-CPGiFE1B.js +242 -0
- package/dist/workflow-sdk-world-BOEsvWmx.js +2123 -0
- package/dist/workflows-BHyYAR6c.d.ts +258 -0
- package/dist/workflows-otOMN33L.js +285 -0
- package/dist/yjs/index.d.ts +14 -11
- package/dist/yjs/index.js +13 -13
- package/package.json +7 -3
- package/schemas/cli-commands-v1.json +18 -0
- package/schemas/config-v1.json +9 -1
- package/schemas/design-v1.json +345 -0
- package/schemas/doctor-report-v1.json +5 -1
- package/skills/better-supabase/SKILL.md +4 -4
- package/skills/better-supabase/references/frontend.md +3 -2
- package/skills/better-supabase/references/ui-recipes.md +242 -245
- package/skills/better-supabase-api/references/adapters.md +3 -6
- package/skills/better-supabase-api/references/expo.md +1 -0
- package/skills/better-supabase-testing/SKILL.md +2 -3
- package/dist/access-sql-CTJPHjCL.js +0 -201
- package/dist/actor-BAhb-d1S.d.ts +0 -104
- package/dist/actor-CAL8mMih.js +0 -151
- package/dist/adapter-CRNH2aX_.js +0 -2107
- package/dist/agents-CGP2AQge.d.ts +0 -111
- package/dist/ai-cache-BdeJKlrV.d.ts +0 -70
- package/dist/ai-cache-CLninP-F.js +0 -84
- package/dist/ai-chat-D-2MH1sU.d.ts +0 -608
- package/dist/ai-files-ChFDkMLN.js +0 -339
- package/dist/ai-tasks-ZvPnNudQ.d.ts +0 -157
- package/dist/announcements-BNxTW5HJ.js +0 -128
- package/dist/api-C43_FYDp.js +0 -680
- package/dist/api-DoWK3dTw.d.ts +0 -411
- package/dist/api-keys-AgDXbcql.d.ts +0 -205
- package/dist/api-keys-BSXwI2jF.js +0 -318
- package/dist/app-tables-BRjMcWhW.js +0 -819
- package/dist/app-tables-BrMBjyuq.d.ts +0 -35
- package/dist/approvals-CyX709B-.d.ts +0 -124
- package/dist/assistant-DZsHsYIx.d.ts +0 -148
- package/dist/attachments-CK8D8bIV.js +0 -270
- package/dist/attributes-D4mA7WhI.js +0 -38
- package/dist/audit-log-ovUlF4Mk.js +0 -786
- package/dist/auth-CdBKt0CS.js +0 -20
- package/dist/auth-link-BjFPqwLz.d.ts +0 -97
- package/dist/auth-link-DrDX9KOT.js +0 -114
- package/dist/auth-module-DbZv2WrR.js +0 -10
- package/dist/auth-reply-Daq72lY4.js +0 -31
- package/dist/authorization-ClWBcXJi.d.ts +0 -1456
- package/dist/authorization-hooks-WDQMKIsc.d.ts +0 -214
- package/dist/authorizer-B3yyCVUF.js +0 -126
- package/dist/authorizer-eiOjo-3l.d.ts +0 -73
- package/dist/base64-D4aqdnDR.js +0 -42
- package/dist/before-route-B98js9m_.js +0 -30
- package/dist/bind-Bfo40o63.d.ts +0 -70
- package/dist/block-env-CBd_SoL5.js +0 -29
- package/dist/block-env-Dxl7rsI0.d.ts +0 -10
- package/dist/block-events-DD9Q_NUz.js +0 -96
- package/dist/block-fields-Bv1hV855.js +0 -139
- package/dist/block-fields-DnaDbgZS.d.ts +0 -55
- package/dist/block-helpers-CjcQM1yA.d.ts +0 -37
- package/dist/block-helpers-DkVZNDrj.js +0 -264
- package/dist/block-hooks-C22vuIUd.js +0 -114
- package/dist/block-hooks-DcPJHztl.d.ts +0 -107
- package/dist/block-transport-DezJPPA0.d.ts +0 -70
- package/dist/block-transport-J7ZepTq2.js +0 -85
- package/dist/blocks-D2WQ63PI.js +0 -84
- package/dist/bookings-DQ7P888X.js +0 -181
- package/dist/bucket-BbePDVwc.d.ts +0 -598
- package/dist/build-C-D_vn0U.js +0 -694
- package/dist/build-CT6SPZkI.js +0 -1815
- package/dist/calendar-eqyuQAoy.js +0 -801
- package/dist/channel-D-LHCY11.d.ts +0 -78
- package/dist/channels-C-GCoNLd.js +0 -114
- package/dist/claims-0KZVT804.js +0 -61
- package/dist/claims-PqzCxaTD.js +0 -85
- package/dist/cli/add-BcOHumvq.js +0 -75
- package/dist/cli/add-DnAyR9w_.js +0 -1
- package/dist/cli/add-TT72pQk6.js +0 -651
- package/dist/cli/adopt-BuS-DC7_.js +0 -1
- package/dist/cli/adopt-mbB1bcIG.js +0 -412
- package/dist/cli/agent-CCrTYK3W.js +0 -176
- package/dist/cli/apply-CiBFOFGw.js +0 -326
- package/dist/cli/blocks-5-JGzwXX.js +0 -124
- package/dist/cli/blocks-DeLQOlUK.js +0 -1
- package/dist/cli/cache-DQwgb3rg.js +0 -507
- package/dist/cli/catalog-Cm6BtquM.js +0 -188
- package/dist/cli/codemod-BzAMX4el.js +0 -985
- package/dist/cli/command-dfdVhU_2.js +0 -891
- package/dist/cli/completion-4lLjtI49.js +0 -1
- package/dist/cli/completion-D4InNrxw.js +0 -30
- package/dist/cli/completion-zsp5s0zI.js +0 -205
- package/dist/cli/config-CCyweX7Y.js +0 -1
- package/dist/cli/config-DI6ielsx.js +0 -39
- package/dist/cli/config-edit-Ct1lXe8a.js +0 -603
- package/dist/cli/config-yZ55rsKZ.js +0 -1463
- package/dist/cli/db-DT1bGB02.js +0 -78
- package/dist/cli/db-TRymMyAW.js +0 -90
- package/dist/cli/design-edit-0U9iCTiS.js +0 -202
- package/dist/cli/detect-DQsVeBHg.js +0 -84
- package/dist/cli/doctor-DOfy6kjt.js +0 -3732
- package/dist/cli/emit-56LAG_Px.js +0 -1067
- package/dist/cli/env-B7TWPEt0.js +0 -1
- package/dist/cli/env-C8R7Nf0a.js +0 -1088
- package/dist/cli/env-Cmu99uKR.js +0 -1
- package/dist/cli/env-Dh5K5t2U.js +0 -143
- package/dist/cli/errors-Caiz_0so.js +0 -98
- package/dist/cli/files-DDvAwTko.js +0 -963
- package/dist/cli/fresh-import-BeYf9I3x.js +0 -40
- package/dist/cli/gen-D3sC5jDn.js +0 -304
- package/dist/cli/init-DNomoycJ.js +0 -394
- package/dist/cli/introspect-kYX06Q2g.js +0 -51
- package/dist/cli/io-BiPX-_J1.js +0 -37
- package/dist/cli/keys-B8dIJwwi.js +0 -106
- package/dist/cli/live-CkV3d3yp.js +0 -329
- package/dist/cli/mcp-DrxB2Wuw.js +0 -237
- package/dist/cli/metadata-BGkle6WM.js +0 -138
- package/dist/cli/migration-safety-DjVpz2D6.js +0 -206
- package/dist/cli/module-migration-CPhuiY8C.js +0 -592
- package/dist/cli/moved-BMQu1YNY.js +0 -152
- package/dist/cli/parse-QzDvMpXH.js +0 -170
- package/dist/cli/preset-CfIs24cc.js +0 -129
- package/dist/cli/prompts-Bvg_DBpe.js +0 -1137
- package/dist/cli/redact-PjNswZOs.js +0 -35
- package/dist/cli/run-Bck-p0MI.js +0 -63
- package/dist/cli/run-BhJKAanr.js +0 -1528
- package/dist/cli/run-DRZ10srj.js +0 -694
- package/dist/cli/scaffold-DoURlDEI.js +0 -898
- package/dist/cli/scaffold-mzy3OsN5.js +0 -1
- package/dist/cli/seed-C5q4UUIL.js +0 -1
- package/dist/cli/seed-CIdg6s7m.js +0 -114
- package/dist/cli/shared-DKLuA1Tp.js +0 -145
- package/dist/cli/skills-D3zwIlGA.js +0 -121
- package/dist/cli/snapshot-BBKFojqM.js +0 -347
- package/dist/cli/source-args-Cwo7zwvq.js +0 -53
- package/dist/cli/spec-DOgQUZwM.js +0 -1
- package/dist/cli/spec-DZeIP9ta.js +0 -7501
- package/dist/cli/sql-CL_Lbhwl.js +0 -2
- package/dist/cli/sql-DLOvvnBV.js +0 -326
- package/dist/cli/stack-env-_uWWNHWq.js +0 -87
- package/dist/cli/stack-status-_NUgd-g5.js +0 -496
- package/dist/cli/style-2JfIPVMQ.js +0 -29
- package/dist/cli/supabase-toml-BC5sNVKU.js +0 -1153
- package/dist/cli/sync-DBvknfOK.js +0 -88
- package/dist/cli/topics-BBE1-Vrg.js +0 -30
- package/dist/cli/typegen--TfvOPLh.js +0 -494
- package/dist/cli/validate-BfWNKvxy.js +0 -7522
- package/dist/cli/version-B7akdvDv.js +0 -4
- package/dist/cli/write-VZljwoTB.js +0 -198
- package/dist/client-B9CqzgPO.js +0 -75
- package/dist/client-BAOZuBhz.d.ts +0 -101
- package/dist/client-BDO6i2Oe.js +0 -128
- package/dist/client-BGnJ5WJi.js +0 -438
- package/dist/client-BJN0IMEp.d.ts +0 -34
- package/dist/client-BMcjLG0V.d.ts +0 -263
- package/dist/client-BN_fXOs7.d.ts +0 -39
- package/dist/client-BONsuFYf.d.ts +0 -100
- package/dist/client-BPn9XhAM.d.ts +0 -218
- package/dist/client-BfgwocyT.js +0 -155
- package/dist/client-BpS8a6Fm.js +0 -51
- package/dist/client-BtC-r4hE.d.ts +0 -52
- package/dist/client-BuneNd-C.d.ts +0 -419
- package/dist/client-BzCv4kKE.js +0 -65
- package/dist/client-C-2ajnhM.js +0 -89
- package/dist/client-C5mUEb2n.js +0 -55
- package/dist/client-CFKONrrU.js +0 -1051
- package/dist/client-CHR8IBNG.js +0 -318
- package/dist/client-CHwNV8Kz.d.ts +0 -455
- package/dist/client-CLQHsa-2.d.ts +0 -131
- package/dist/client-CMxxwT3N.d.ts +0 -122
- package/dist/client-CU7aNN_B.d.ts +0 -277
- package/dist/client-CYEdJKjk.d.ts +0 -157
- package/dist/client-CYhSGlCN.d.ts +0 -107
- package/dist/client-C_-NZRrg.js +0 -120
- package/dist/client-CcPxbHeT.js +0 -288
- package/dist/client-CosiUrUb.js +0 -98
- package/dist/client-D3gRTNSi.d.ts +0 -68
- package/dist/client-D7T7OLiw.js +0 -169
- package/dist/client-DB34f_7i.d.ts +0 -58
- package/dist/client-DCawyopp.d.ts +0 -65
- package/dist/client-DNq8xYb-.js +0 -52
- package/dist/client-Dqa4XyJ5.d.ts +0 -108
- package/dist/client-Dr5h2r9r.d.ts +0 -34
- package/dist/client-DrTqKgvy.d.ts +0 -155
- package/dist/client-DyfWYU8S.js +0 -84
- package/dist/client-Dz1jWDA2.js +0 -209
- package/dist/client-DzTtOVRR.js +0 -137
- package/dist/client-Ezlbskjq.js +0 -60
- package/dist/client-GCCRI9ge.d.ts +0 -135
- package/dist/client-P6v3h7vh.d.ts +0 -130
- package/dist/client-P8l8ncxV.d.ts +0 -103
- package/dist/client-UnM3e32l.js +0 -133
- package/dist/client-WgrPIHH-.js +0 -213
- package/dist/client-ZTtSV3l8.js +0 -40
- package/dist/client-arq4daO_.js +0 -104
- package/dist/client-ckXfdy1k.js +0 -38
- package/dist/client-eCDPjOMo.js +0 -438
- package/dist/client-iaFm0aVf.js +0 -67
- package/dist/client-kWg4OqIr.d.ts +0 -162
- package/dist/client-pxjbgOz6.js +0 -376
- package/dist/client-tvG258_1.d.ts +0 -59
- package/dist/client-wKmX-f3r.d.ts +0 -388
- package/dist/clone-dN9XOL1K.js +0 -29
- package/dist/cloud-event-CTh9Sr5w.js +0 -60
- package/dist/cloud-event-DXkNoI6v.d.ts +0 -64
- package/dist/codecs-D-rpDifG.js +0 -358
- package/dist/codecs-RwFNK8Jh.d.ts +0 -215
- package/dist/codegen-C64C0NZG.d.ts +0 -1665
- package/dist/comments-CV5O8q50.js +0 -230
- package/dist/compiler-D_Gjpw_O.d.ts +0 -14
- package/dist/compose-CP0ss-cQ.js +0 -53
- package/dist/composite-1kPAxXto.js +0 -130
- package/dist/composite-DzvBL5nb.d.ts +0 -67
- package/dist/config-DHhQmmuD.js +0 -3917
- package/dist/config-NQmw_wsk.js +0 -558
- package/dist/connector-D9NMNkv0.d.ts +0 -107
- package/dist/connectors-BwPNt-ZG.d.ts +0 -141
- package/dist/context-BiwgsycK.js +0 -41
- package/dist/context-Cv3KlxWY.d.ts +0 -377
- package/dist/context-D6ZMKc2L.js +0 -19
- package/dist/context-wDKxSl9x.js +0 -9
- package/dist/controller-BZhiIb-N.d.ts +0 -46
- package/dist/controller-D6NyNrlZ.js +0 -79
- package/dist/cron-BHdXZFsJ.js +0 -145
- package/dist/cron-route-mTvWhork.js +0 -24
- package/dist/csv-CVfXqaAu.js +0 -89
- package/dist/csv-D3eKxV1T.d.ts +0 -28
- package/dist/define-Bu1v781m.js +0 -1962
- package/dist/define-DYZnvAbs.d.ts +0 -1058
- package/dist/define-block-BHxLHLys.d.ts +0 -256
- package/dist/delegation-B7uNnz6z.js +0 -140
- package/dist/delivery-B1mKaOen.js +0 -30
- package/dist/delivery-BeHgwS3k.d.ts +0 -69
- package/dist/documents-CqtVr2fg.d.ts +0 -96
- package/dist/email-BcmbIWOX.d.ts +0 -42
- package/dist/embeddings-CKhygw4C.d.ts +0 -78
- package/dist/embeddings-CVeOoufZ.js +0 -128
- package/dist/ended-De6H52nX.d.ts +0 -70
- package/dist/entitlements-C8UvF1Rz.js +0 -45
- package/dist/entitlements-CtBGXb3B.d.ts +0 -53
- package/dist/envelope-C4Z55LKW.js +0 -90
- package/dist/errors-BV1SKTVs.js +0 -315
- package/dist/errors-D3BR8iUk.js +0 -44
- package/dist/escape-like-B339PlP-.d.ts +0 -15
- package/dist/eve-B6ru2Bt4.d.ts +0 -151
- package/dist/event-calendar-DJXXMJ3x.d.ts +0 -217
- package/dist/event-map-Dy2vKHai.js +0 -19
- package/dist/events-P3raDX2E.d.ts +0 -800
- package/dist/events-xbpHkcK9.js +0 -82
- package/dist/executor-BWgJNbGh.d.ts +0 -95
- package/dist/executor-BiB0wMBA.js +0 -735
- package/dist/executor-BnMC0lj3.d.ts +0 -272
- package/dist/executor-CvsNcQsa.d.ts +0 -174
- package/dist/executor-CxGQiQN_.js +0 -206
- package/dist/executor-D1hECPGG.d.ts +0 -39
- package/dist/executor-D3K3tycZ.js +0 -147
- package/dist/field-errors-Z-sgsdoN.d.ts +0 -113
- package/dist/field-formats-Cif5gr7c.js +0 -102
- package/dist/field-formats-DCvOQlOy.d.ts +0 -39
- package/dist/filter-evaluate-BJcaL3o1.d.ts +0 -34
- package/dist/filter-evaluate-C0ULNfS7.js +0 -214
- package/dist/filter-query-B3lhckKX.js +0 -518
- package/dist/filter-query-Bc_Qa8V_.d.ts +0 -121
- package/dist/flags-6KK6Vqkr.d.ts +0 -230
- package/dist/flags-aUR7Rod6.js +0 -279
- package/dist/form-definition-GVZTILhS.js +0 -311
- package/dist/form-definition-sagoefQr.d.ts +0 -95
- package/dist/format-CNwSjXUU.d.ts +0 -70
- package/dist/framework-BQhTsLX-.d.ts +0 -26
- package/dist/framework-C6PKBgme.js +0 -51
- package/dist/function-contract-DWqFl_QO.d.ts +0 -21
- package/dist/function-contract-DmkBg19r.js +0 -5
- package/dist/gateway-Bq_tWwxE.d.ts +0 -109
- package/dist/gateway-options-ClvvfuuU.d.ts +0 -29
- package/dist/gateway-options-DcLcWL5_.js +0 -27
- package/dist/graph-Cs28bOlK.js +0 -360
- package/dist/hmac-BgpThYQW.js +0 -23
- package/dist/http-C7trc6uN.js +0 -25
- package/dist/http-Cv4T29xh.js +0 -40
- package/dist/http-DdYadv-o.js +0 -126
- package/dist/image-url-pIVlO6R1.js +0 -41
- package/dist/impersonation-D5chOkrO.d.ts +0 -25
- package/dist/impersonation-DxU6yHJV.js +0 -62
- package/dist/inbox-Du5aPwKB.d.ts +0 -400
- package/dist/index-1Vsg-7YV.d.ts +0 -58
- package/dist/index-BJLPQr2s.d.ts +0 -377
- package/dist/index-BpFYMsi0.d.ts +0 -53
- package/dist/index-BpyBH5O2.d.ts +0 -227
- package/dist/index-C-_fs7EI.d.ts +0 -258
- package/dist/index-CXFf-c-j.d.ts +0 -131
- package/dist/index-Cm2-g_4H.d.ts +0 -722
- package/dist/index-CxmVzT-3.d.ts +0 -86
- package/dist/index-DTQSeHx2.d.ts +0 -97
- package/dist/index-Hc4tetmB.d.ts +0 -245
- package/dist/index-QWTq2o31.d.ts +0 -138
- package/dist/index-XcTBR4Gb.d.ts +0 -206
- package/dist/index-k-rrfG1g.d.ts +0 -202
- package/dist/index-wTnPJUhv.d.ts +0 -58
- package/dist/invalidate-BBqhpxyB.d.ts +0 -19
- package/dist/iso4217-A8ev-CNW.js +0 -176
- package/dist/json-CEnpTHlZ.js +0 -16
- package/dist/json-schema-CpYINXG8.js +0 -548
- package/dist/jwks-cache-C4rA69hD.js +0 -49
- package/dist/jws-35a8VhFV.d.ts +0 -60
- package/dist/jws-CwBB5QAT.js +0 -193
- package/dist/kit-De-EVRhw.d.ts +0 -66
- package/dist/kit-LTbHrWWD.js +0 -104
- package/dist/knowledge-B5zdpDD-.d.ts +0 -187
- package/dist/knowledge-BbdXOJvY.js +0 -272
- package/dist/list-query-CBXNfJt4.js +0 -549
- package/dist/list-query-aXr2WkGA.d.ts +0 -194
- package/dist/live-DwDreq1n.js +0 -239
- package/dist/management-D1gG89z2.d.ts +0 -53
- package/dist/message-B0fNJgq8.d.ts +0 -93
- package/dist/messages-D5nIfCCf.js +0 -493
- package/dist/metric-definition-95HFoW1V.d.ts +0 -70
- package/dist/mfa-YzkRjNad.d.ts +0 -30
- package/dist/model-lUafmeBQ.d.ts +0 -311
- package/dist/model-messages-CIdqdUtk.js +0 -206
- package/dist/model-messages-D4GZllOD.d.ts +0 -34
- package/dist/money-95Rff2vT.js +0 -185
- package/dist/money-DFpWzQvk.d.ts +0 -76
- package/dist/money-codec-C21MWw50.js +0 -41
- package/dist/node-headers-AO06VhqH.d.ts +0 -24
- package/dist/onboarding-Du6kCmhF.js +0 -68
- package/dist/operations-CsIfMED7.js +0 -29
- package/dist/operations-DQCWqkt3.d.ts +0 -6
- package/dist/optional-peer-Dx8TaYXw.js +0 -29
- package/dist/options-ZQzNKKBS.d.ts +0 -52
- package/dist/organizations-CO2qg44D.js +0 -398
- package/dist/outbox-B1hZ7PPY.d.ts +0 -181
- package/dist/payments-CzjCdIcz.js +0 -16
- package/dist/pg-error-BV_X8Isq.js +0 -26
- package/dist/plugin-D-95Q0w0.d.ts +0 -190
- package/dist/plugin-tfXW1-qO.js +0 -45
- package/dist/pool-cM3rpOQr.d.ts +0 -117
- package/dist/pool-errors-CGqvTQOC.js +0 -27
- package/dist/ports-BCDIbC_U.d.ts +0 -86
- package/dist/ports-P0A5wo_-.d.ts +0 -285
- package/dist/ports-aALjot-D.js +0 -137
- package/dist/postgrest-CjnO1hbr.d.ts +0 -53
- package/dist/preset-Cf0T9GRt.js +0 -691
- package/dist/problem-DCDIQiTA.d.ts +0 -76
- package/dist/problem-JRCohp1j.js +0 -159
- package/dist/provider-C-Ti38J6.js +0 -57
- package/dist/provider-DXgx5oSA.d.ts +0 -113
- package/dist/push-token-y1Gnz5bQ.d.ts +0 -24
- package/dist/query-Ctz-qKRx.js +0 -303
- package/dist/rank-result-BcYfDA0x.d.ts +0 -14
- package/dist/rank-result-DtQuIvob.js +0 -18
- package/dist/rate-limit-DVZ7qIzW.js +0 -49
- package/dist/rate-limit-I3AncmM8.js +0 -325
- package/dist/rate-limit-c6c1mB6R.d.ts +0 -41
- package/dist/ratelimit-headers-Bsxx0Tj2.js +0 -62
- package/dist/react-4ZqkP8da.js +0 -79
- package/dist/react-DzukE6Wp.js +0 -410
- package/dist/react-controller-Xn-IU44p.js +0 -40
- package/dist/react-env-Cc7Vf6eb.js +0 -13
- package/dist/read-set-DeesfeL_.js +0 -314
- package/dist/realtime-status-D2dw1hOE.js +0 -12
- package/dist/realtime-status-DcsO00Gw.d.ts +0 -8
- package/dist/refusal-C7geIBRl.d.ts +0 -18
- package/dist/refusal-CFpfmjcS.js +0 -61
- package/dist/resolve-AtncaPTU.js +0 -877
- package/dist/resolve-Ceft-18-.d.ts +0 -270
- package/dist/resource-Bdkqi8jo.js +0 -463
- package/dist/resource-DO4gbVi5.js +0 -91
- package/dist/resource-DYEtc-KN.d.ts +0 -106
- package/dist/resource-execute-Bxvgmx-n.d.ts +0 -12
- package/dist/resource-schemas-BJ518zFH.js +0 -79
- package/dist/resource-types-LW1i5-h3.d.ts +0 -141
- package/dist/resources-Ck7itNeX.js +0 -64
- package/dist/resources-D3_FAz_H.d.ts +0 -7
- package/dist/respond-BSL36dQp.d.ts +0 -93
- package/dist/respond-Bhp3G__q.js +0 -95
- package/dist/result-BREt7qOh.d.ts +0 -312
- package/dist/result-DIeYscA3.js +0 -134
- package/dist/rrule-Cw4x4Pf_.js +0 -290
- package/dist/rules-BiQgmZ_U.js +0 -287
- package/dist/run-watch-CQRdpy-f.js +0 -53
- package/dist/runtime-BOXURhEW.js +0 -45
- package/dist/sales-lines-C6gafAwg.d.ts +0 -28
- package/dist/sales-lines-CQ1iC6QM.js +0 -41
- package/dist/sales-shared-CDSytDEn.js +0 -22
- package/dist/search-BtoWY6n_.js +0 -9
- package/dist/search-ZP13UTT4.js +0 -106
- package/dist/server-types-fLdep4gb.d.ts +0 -757
- package/dist/session-DObioXpX.d.ts +0 -95
- package/dist/settings-BiHDFglz.js +0 -90
- package/dist/shared-BmMcMoW9.js +0 -89
- package/dist/shared-C9zvURqC.js +0 -14
- package/dist/shared-D5Djh43x.js +0 -60
- package/dist/shared-DDSjEGDR.d.ts +0 -11
- package/dist/sign-in-BCV5S2WZ.d.ts +0 -49
- package/dist/sign-in-z2BaBdps.js +0 -367
- package/dist/signatures-BXlDXV3D.d.ts +0 -43
- package/dist/signatures-CeIoAelK.js +0 -145
- package/dist/signers-BwKV-9S6.d.ts +0 -385
- package/dist/signing-keys-v2MRYkDF.d.ts +0 -105
- package/dist/solid-controller-CWotGxcG.d.ts +0 -11
- package/dist/solid-controller-DLsmrczT.js +0 -33
- package/dist/spec-pins-Dqpml2dZ.d.ts +0 -84
- package/dist/spec-pins-S4PymRxp.js +0 -60
- package/dist/sql-BPKRNutj.js +0 -422
- package/dist/sql-CT1Jnwp8.js +0 -88660
- package/dist/sso-BaU_6ePE.js +0 -217
- package/dist/sso-Bu0mVh0V.d.ts +0 -131
- package/dist/standard-B1BigegP.js +0 -25
- package/dist/standard-BcUQuUgu.d.ts +0 -7
- package/dist/stats-Di5VAsYU.js +0 -1128
- package/dist/store-B18bIvKc.d.ts +0 -68
- package/dist/store-BdH5ruDx.js +0 -66
- package/dist/stripe-NVcNOhHy.d.ts +0 -140
- package/dist/stripe-XZrSmDTf.js +0 -32
- package/dist/subject-readers-BUChuOxL.d.ts +0 -21
- package/dist/subject-readers-BpwUFJtp.js +0 -46
- package/dist/subjects-DP-fvFkk.d.ts +0 -77
- package/dist/subscribers-Cq--DL1E.js +0 -34
- package/dist/supabase-mcp-C6tMoEjn.d.ts +0 -43
- package/dist/supabase-mcp-DomZ-amK.js +0 -28
- package/dist/support-C2wPYwD7.js +0 -522
- package/dist/support-view-Bj_lZ8Wr.d.ts +0 -17
- package/dist/svelte-controller-CDAujo-_.js +0 -50
- package/dist/svelte-controller-sS4X66yL.d.ts +0 -10
- package/dist/table-schema-pQlER3jj.js +0 -283
- package/dist/tags-B99_U9Pp.js +0 -39
- package/dist/tags-BqgaxCnv.js +0 -84
- package/dist/tags-BrGopDVG.d.ts +0 -30
- package/dist/tax-DMWDUzKt.d.ts +0 -273
- package/dist/tax-wm9g2mD2.js +0 -140
- package/dist/tee-Cw-iJAWL.js +0 -101
- package/dist/template-Dw3dTmKe.js +0 -123
- package/dist/temporal-CB5Fpo5d.js +0 -79
- package/dist/temporal-required-nfZ87U-0.js +0 -20
- package/dist/tenant-B-fiItlJ.js +0 -27
- package/dist/tenant-DZMLVuyQ.d.ts +0 -17
- package/dist/timing-BMCWgpdZ.js +0 -92
- package/dist/topic-DAY_HOX2.d.ts +0 -387
- package/dist/topic-mee21pux.js +0 -629
- package/dist/ttl-Hr34gRu8.js +0 -12
- package/dist/ttl-cache-XzZ-Q2eX.js +0 -29
- package/dist/types-BA1eTvy4.d.ts +0 -162
- package/dist/types-BEEFkNFY.d.ts +0 -564
- package/dist/types-BRTSpOIh.js +0 -5
- package/dist/types-Bels39_u.d.ts +0 -649
- package/dist/types-BrpW5ixT.d.ts +0 -370
- package/dist/types-DOC7wnh6.d.ts +0 -249
- package/dist/types-D_2rClz-.d.ts +0 -205
- package/dist/undo-B5LgpGLy.js +0 -44
- package/dist/undo-BsdYRox7.d.ts +0 -43
- package/dist/upload-claim-BBFCZbBF.js +0 -33
- package/dist/usage-C504GF55.d.ts +0 -220
- package/dist/usage-DdqT13_X.js +0 -261
- package/dist/user-change-XzvgafU4.js +0 -130
- package/dist/vault-ClkzMGTP.d.ts +0 -50
- package/dist/verify-DU4p9-Ve.d.ts +0 -142
- package/dist/verify-DnU-uWU2.js +0 -126
- package/dist/version-DSWxci83.js +0 -4
- package/dist/view-CYX1wsgp.js +0 -105
- package/dist/view-KQhe6eNc.d.ts +0 -90
- package/dist/vue-controller-BUo1oove.d.ts +0 -11
- package/dist/vue-controller-C9tFzqAc.js +0 -32
- package/dist/watch-5btote1y.d.ts +0 -84
- package/dist/watch-BAuIzC2r.js +0 -139
- package/dist/watch-topic-C79ZW5-R.d.ts +0 -28
- package/dist/watch-topic-miuymrli.js +0 -57
- package/dist/wire-BCJxCtHS.js +0 -45
- package/dist/workflow-builder-CynLqc6H.js +0 -697
- package/dist/workflow-sdk-CWdCWj7M.d.ts +0 -161
- package/dist/workflow-sdk-QnnzIQRc.js +0 -243
- package/dist/workflow-sdk-world-QzcxaaCD.js +0 -2103
- package/dist/workflows-DQBCzrHC.d.ts +0 -243
- package/dist/workflows-H9qJge3f.js +0 -282
package/dist/create/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { c as PRESET_CATALOG,
|
|
2
|
-
import { a as appDefaultError, c as appReservedColumns, o as appIdentifierError, p as isAppDefault, s as appNameLengthError, x as APP_ON_DELETE_ACTIONS } from "../app-tables-
|
|
3
|
-
import { o as resolveConfig } from "../config-
|
|
4
|
-
import { _ as
|
|
5
|
-
import {
|
|
1
|
+
import { c as PRESET_CATALOG, i as presetOf, s as resolvePreset, v as encodePreset } from "../config-V6HMvce5.js";
|
|
2
|
+
import { a as appDefaultError, c as appReservedColumns, o as appIdentifierError, p as isAppDefault, s as appNameLengthError, x as APP_ON_DELETE_ACTIONS } from "../app-tables-0YZ9IskE.js";
|
|
3
|
+
import { o as resolveConfig } from "../config-xUf0dj0t.js";
|
|
4
|
+
import { _ as encodeDesign, a as DesignParseError, b as parseDesign, h as designOf, n as diffDesigns, o as DesignTooLongError, u as designConfig, y as jsonPointer } from "../preset-HNFqCWaD.js";
|
|
5
|
+
import { D as SQL_MODULES, h as renderModules, i as moduleLayout } from "../sql-frpIs51D.js";
|
|
6
6
|
//#region src/create/column-keys.ts
|
|
7
7
|
/** The most options a select takes, and the longest option. */
|
|
8
8
|
const MAX_OPTIONS = 100;
|
|
@@ -55,8 +55,8 @@ function fitsBound(type, value) {
|
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
57
|
* A column without the keys its type can't take: a format of another type,
|
|
58
|
-
* options outside text and text[], bounds that don't apply, an identity
|
|
59
|
-
*
|
|
58
|
+
* options outside text and text[], bounds that don't apply, an identity outside
|
|
59
|
+
* integer and bigint, and a default an identity or the type refuses.
|
|
60
60
|
*/
|
|
61
61
|
function fitted(column) {
|
|
62
62
|
const { format, options, min, max, identity, default: fallback, nullable, ...rest } = column;
|
|
@@ -80,7 +80,10 @@ function optionError(options, option) {
|
|
|
80
80
|
if (options.includes(option)) return `${option} is already an option.`;
|
|
81
81
|
if (options.length >= MAX_OPTIONS) return `A select takes at most ${MAX_OPTIONS} options.`;
|
|
82
82
|
}
|
|
83
|
-
/**
|
|
83
|
+
/**
|
|
84
|
+
* Why `value` can't be a bound of `column`, or `undefined` when it can (an
|
|
85
|
+
* empty value clears it).
|
|
86
|
+
*/
|
|
84
87
|
function boundError(column, side, value) {
|
|
85
88
|
const trimmed = value.trim();
|
|
86
89
|
if (trimmed === "") return;
|
|
@@ -99,7 +102,10 @@ function withBounds(column, bounds) {
|
|
|
99
102
|
if (bounds.max !== void 0) next.max = bounds.max;
|
|
100
103
|
return next;
|
|
101
104
|
}
|
|
102
|
-
/**
|
|
105
|
+
/**
|
|
106
|
+
* What the canvas shows for a column that is more than its type, such as an
|
|
107
|
+
* email or a select.
|
|
108
|
+
*/
|
|
103
109
|
function columnLabel(column) {
|
|
104
110
|
if (column.identity === true) return "autonumber";
|
|
105
111
|
if (column.options !== void 0) return column.type === "text[]" ? "multi-select" : "select";
|
|
@@ -107,6 +113,109 @@ function columnLabel(column) {
|
|
|
107
113
|
return column.format === void 0 ? void 0 : FORMAT_LABELS[column.format];
|
|
108
114
|
}
|
|
109
115
|
//#endregion
|
|
116
|
+
//#region src/create/design-scope.ts
|
|
117
|
+
const AUTH_USERS$1 = "auth.users";
|
|
118
|
+
/**
|
|
119
|
+
* The column that scopes an app table's rows, or `null` for `scope: "none"` and
|
|
120
|
+
* unscoped presets.
|
|
121
|
+
*/
|
|
122
|
+
function scopeColumnOf(table, preset) {
|
|
123
|
+
const scope = table.scope ?? "inherit";
|
|
124
|
+
if (scope === "none") return null;
|
|
125
|
+
if (scope === "inherit" && preset.scope === "tenant") return {
|
|
126
|
+
name: `${preset.tenantName}_id`,
|
|
127
|
+
type: preset.idType,
|
|
128
|
+
nullable: false,
|
|
129
|
+
default: null,
|
|
130
|
+
unique: false
|
|
131
|
+
};
|
|
132
|
+
if (scope === "user" || preset.scope === "user") return {
|
|
133
|
+
name: "user_id",
|
|
134
|
+
type: "uuid",
|
|
135
|
+
nullable: false,
|
|
136
|
+
default: "auth.uid()",
|
|
137
|
+
unique: false
|
|
138
|
+
};
|
|
139
|
+
return null;
|
|
140
|
+
}
|
|
141
|
+
//#endregion
|
|
142
|
+
//#region src/create/design-subject.ts
|
|
143
|
+
/**
|
|
144
|
+
* The columns `subject` adds: `rank` for manual order and `deleted_at` for
|
|
145
|
+
* trash.
|
|
146
|
+
*/
|
|
147
|
+
function subjectColumns(subject) {
|
|
148
|
+
const columns = [];
|
|
149
|
+
if (subject?.rank !== void 0) columns.push({
|
|
150
|
+
name: "rank",
|
|
151
|
+
type: "text",
|
|
152
|
+
nullable: false,
|
|
153
|
+
default: "'V'",
|
|
154
|
+
unique: false
|
|
155
|
+
});
|
|
156
|
+
if (subject?.softDelete === true) columns.push({
|
|
157
|
+
name: "deleted_at",
|
|
158
|
+
type: "timestamptz",
|
|
159
|
+
nullable: true,
|
|
160
|
+
default: null,
|
|
161
|
+
unique: false
|
|
162
|
+
});
|
|
163
|
+
return columns;
|
|
164
|
+
}
|
|
165
|
+
/** The subject with the columns it names renamed or dropped by `edit`. */
|
|
166
|
+
function subjectColumnsEdited(subject, edit) {
|
|
167
|
+
const { title, search, rank, versions, ...rest } = subject;
|
|
168
|
+
const next = { ...rest };
|
|
169
|
+
const [nextTitle] = title === void 0 ? [] : edit([title]);
|
|
170
|
+
if (nextTitle !== void 0) next.title = nextTitle;
|
|
171
|
+
if (search !== void 0) {
|
|
172
|
+
const nextSearch = {};
|
|
173
|
+
const [searchTitle] = search.title === void 0 ? [] : edit([search.title]);
|
|
174
|
+
const body = edit(search.body ?? []);
|
|
175
|
+
if (searchTitle !== void 0) nextSearch.title = searchTitle;
|
|
176
|
+
if (body.length > 0) nextSearch.body = body;
|
|
177
|
+
next.search = nextSearch;
|
|
178
|
+
}
|
|
179
|
+
if (versions === true) next.versions = true;
|
|
180
|
+
else if (versions !== void 0) {
|
|
181
|
+
const { columns, ...options } = versions;
|
|
182
|
+
const kept = columns === void 0 ? void 0 : edit(columns);
|
|
183
|
+
next.versions = kept === void 0 || kept.length === 0 ? options : {
|
|
184
|
+
...options,
|
|
185
|
+
columns: kept
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
if (rank === true) next.rank = true;
|
|
189
|
+
else if (rank !== void 0) {
|
|
190
|
+
const [group] = rank.group === void 0 ? [] : edit([rank.group]);
|
|
191
|
+
next.rank = group === void 0 ? true : { group };
|
|
192
|
+
}
|
|
193
|
+
return next;
|
|
194
|
+
}
|
|
195
|
+
const SUBJECT_TYPE = /^[a-z][a-z0-9_]*$/u;
|
|
196
|
+
/**
|
|
197
|
+
* Why `type` can't be the subject type of the app table `table`, or `undefined`
|
|
198
|
+
* when it can.
|
|
199
|
+
*/
|
|
200
|
+
function subjectTypeError(design, table, type) {
|
|
201
|
+
if (!SUBJECT_TYPE.test(type)) return "Use lowercase letters, digits and underscores, starting with a letter.";
|
|
202
|
+
const owner = Object.entries(design.appTables ?? {}).find(([name, each]) => name !== table && each.subject?.type === type)?.[0];
|
|
203
|
+
return owner === void 0 ? void 0 : `${owner} already has the subject type ${type}.`;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* App table events with `edit` applied to the payload columns, dropping an
|
|
207
|
+
* empty list.
|
|
208
|
+
*/
|
|
209
|
+
function eventsColumnsEdited(events, edit) {
|
|
210
|
+
if (events === true) return true;
|
|
211
|
+
const { include, ...rest } = events;
|
|
212
|
+
const kept = include === void 0 ? [] : edit(include);
|
|
213
|
+
return kept.length === 0 ? rest : {
|
|
214
|
+
...rest,
|
|
215
|
+
include: kept
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
//#endregion
|
|
110
219
|
//#region src/create/design-computed.ts
|
|
111
220
|
/** The aggregates a rollup takes (`APP_ROLLUP_AGGREGATES`). */
|
|
112
221
|
const ROLLUP_AGGREGATES = [
|
|
@@ -134,7 +243,10 @@ function isRollupAggregate(value) {
|
|
|
134
243
|
function readableColumns(table) {
|
|
135
244
|
return [...Object.entries(table.columns ?? {}).map(([name, column]) => [name, column.type]), ...table.timestamps === false ? [] : [["created_at", "timestamptz"], ["updated_at", "timestamptz"]]];
|
|
136
245
|
}
|
|
137
|
-
/**
|
|
246
|
+
/**
|
|
247
|
+
* The columns `aggregate` can read: numbers for sum and avg, ordered types for
|
|
248
|
+
* min and max, none for count.
|
|
249
|
+
*/
|
|
138
250
|
function rollupColumns(child, aggregate) {
|
|
139
251
|
if (aggregate === "count") return [];
|
|
140
252
|
const fits = aggregate === "sum" || aggregate === "avg" ? NUMBERS : ORDERED;
|
|
@@ -144,14 +256,20 @@ function rollupColumns(child, aggregate) {
|
|
|
144
256
|
function filterColumns(child) {
|
|
145
257
|
return Object.entries(child.columns ?? {}).flatMap(([name, column]) => column.type === "text" && column.options !== void 0 ? [[name, column.options]] : []);
|
|
146
258
|
}
|
|
147
|
-
/**
|
|
259
|
+
/**
|
|
260
|
+
* Each app table column that references `parent`, as `{ table, via }`: what a
|
|
261
|
+
* rollup on `parent` can aggregate.
|
|
262
|
+
*/
|
|
148
263
|
function rollupSources(tables, parent) {
|
|
149
264
|
return Object.entries(tables).flatMap(([table, config]) => Object.entries(config.columns ?? {}).filter(([, column]) => column.references !== void 0 && column.references.block === void 0 && column.references.table === parent).map(([via]) => ({
|
|
150
265
|
table,
|
|
151
266
|
via
|
|
152
267
|
})));
|
|
153
268
|
}
|
|
154
|
-
/**
|
|
269
|
+
/**
|
|
270
|
+
* Each column of `name` that references another app table, with that table:
|
|
271
|
+
* what a lookup can follow.
|
|
272
|
+
*/
|
|
155
273
|
function lookupSources(tables, name) {
|
|
156
274
|
return Object.entries(tables[name]?.columns ?? {}).flatMap(([via, column]) => column.references !== void 0 && column.references.block === void 0 && Object.hasOwn(tables, column.references.table) ? [{
|
|
157
275
|
via,
|
|
@@ -183,7 +301,10 @@ function withComputed(table, rollups, lookups) {
|
|
|
183
301
|
if (lookups !== void 0 && Object.keys(lookups).length > 0) next.lookups = lookups;
|
|
184
302
|
return next;
|
|
185
303
|
}
|
|
186
|
-
/**
|
|
304
|
+
/**
|
|
305
|
+
* `table` with a rollup or lookup set under `name`, replacing `previous` in its
|
|
306
|
+
* place.
|
|
307
|
+
*/
|
|
187
308
|
function tableWithComputed(table, name, computed, previous) {
|
|
188
309
|
const placed = (record, value) => {
|
|
189
310
|
const entries = Object.entries(record ?? {});
|
|
@@ -198,9 +319,9 @@ function tableWithoutComputed(table, name) {
|
|
|
198
319
|
}
|
|
199
320
|
/**
|
|
200
321
|
* The tables with every rollup and lookup that no longer fits dropped: one
|
|
201
|
-
* whose table, link or column was deleted or retyped, or whose name a
|
|
202
|
-
*
|
|
203
|
-
*
|
|
322
|
+
* whose table, link or column was deleted or retyped, or whose name a column
|
|
323
|
+
* now uses. `sql sync` would refuse them, and the design code would not
|
|
324
|
+
* encode.
|
|
204
325
|
*/
|
|
205
326
|
function prunedComputed(tables) {
|
|
206
327
|
return Object.fromEntries(Object.entries(tables).map(([name, table]) => {
|
|
@@ -219,7 +340,10 @@ function computedTableRenamed(tables, from, to) {
|
|
|
219
340
|
} : rollup]))
|
|
220
341
|
}]));
|
|
221
342
|
}
|
|
222
|
-
/**
|
|
343
|
+
/**
|
|
344
|
+
* The rollup fitted to a new source or aggregate: a column the aggregate can
|
|
345
|
+
* read, and a filter the child still has.
|
|
346
|
+
*/
|
|
223
347
|
function fittedRollup(tables, rollup) {
|
|
224
348
|
const child = tables[rollup.table] ?? {};
|
|
225
349
|
const columns = rollupColumns(child, rollup.aggregate);
|
|
@@ -249,8 +373,8 @@ function rollupRenamed(rollup, swap) {
|
|
|
249
373
|
}
|
|
250
374
|
/**
|
|
251
375
|
* Every rollup and lookup that reads `table.from`, reading `table.to`. The
|
|
252
|
-
* tables already have the column renamed, so a lookup finds its target
|
|
253
|
-
*
|
|
376
|
+
* tables already have the column renamed, so a lookup finds its target through
|
|
377
|
+
* the renamed link.
|
|
254
378
|
*/
|
|
255
379
|
function computedColumnRenamed(tables, table, from, to) {
|
|
256
380
|
const swap = (column) => column === from ? to : column;
|
|
@@ -289,74 +413,6 @@ function computedRows(table) {
|
|
|
289
413
|
})];
|
|
290
414
|
}
|
|
291
415
|
//#endregion
|
|
292
|
-
//#region src/create/design-subject.ts
|
|
293
|
-
/** The columns `subject` adds: `rank` for manual order and `deleted_at` for trash. */
|
|
294
|
-
function subjectColumns(subject) {
|
|
295
|
-
const columns = [];
|
|
296
|
-
if (subject?.rank !== void 0) columns.push({
|
|
297
|
-
name: "rank",
|
|
298
|
-
type: "text",
|
|
299
|
-
nullable: false,
|
|
300
|
-
default: "'V'",
|
|
301
|
-
unique: false
|
|
302
|
-
});
|
|
303
|
-
if (subject?.softDelete === true) columns.push({
|
|
304
|
-
name: "deleted_at",
|
|
305
|
-
type: "timestamptz",
|
|
306
|
-
nullable: true,
|
|
307
|
-
default: null,
|
|
308
|
-
unique: false
|
|
309
|
-
});
|
|
310
|
-
return columns;
|
|
311
|
-
}
|
|
312
|
-
/** The subject with the columns it names renamed or dropped by `edit`. */
|
|
313
|
-
function subjectColumnsEdited(subject, edit) {
|
|
314
|
-
const { title, search, rank, versions, ...rest } = subject;
|
|
315
|
-
const next = { ...rest };
|
|
316
|
-
const [nextTitle] = title === void 0 ? [] : edit([title]);
|
|
317
|
-
if (nextTitle !== void 0) next.title = nextTitle;
|
|
318
|
-
if (search !== void 0) {
|
|
319
|
-
const nextSearch = {};
|
|
320
|
-
const [searchTitle] = search.title === void 0 ? [] : edit([search.title]);
|
|
321
|
-
const body = edit(search.body ?? []);
|
|
322
|
-
if (searchTitle !== void 0) nextSearch.title = searchTitle;
|
|
323
|
-
if (body.length > 0) nextSearch.body = body;
|
|
324
|
-
next.search = nextSearch;
|
|
325
|
-
}
|
|
326
|
-
if (versions === true) next.versions = true;
|
|
327
|
-
else if (versions !== void 0) {
|
|
328
|
-
const { columns, ...options } = versions;
|
|
329
|
-
const kept = columns === void 0 ? void 0 : edit(columns);
|
|
330
|
-
next.versions = kept === void 0 || kept.length === 0 ? options : {
|
|
331
|
-
...options,
|
|
332
|
-
columns: kept
|
|
333
|
-
};
|
|
334
|
-
}
|
|
335
|
-
if (rank === true) next.rank = true;
|
|
336
|
-
else if (rank !== void 0) {
|
|
337
|
-
const [group] = rank.group === void 0 ? [] : edit([rank.group]);
|
|
338
|
-
next.rank = group === void 0 ? true : { group };
|
|
339
|
-
}
|
|
340
|
-
return next;
|
|
341
|
-
}
|
|
342
|
-
const SUBJECT_TYPE = /^[a-z][a-z0-9_]*$/u;
|
|
343
|
-
/** Why `type` can't be the subject type of the app table `table`, or `undefined` when it can. */
|
|
344
|
-
function subjectTypeError(design, table, type) {
|
|
345
|
-
if (!SUBJECT_TYPE.test(type)) return "Use lowercase letters, digits and underscores, starting with a letter.";
|
|
346
|
-
const owner = Object.entries(design.appTables ?? {}).find(([name, each]) => name !== table && each.subject?.type === type)?.[0];
|
|
347
|
-
return owner === void 0 ? void 0 : `${owner} already has the subject type ${type}.`;
|
|
348
|
-
}
|
|
349
|
-
/** App table events with `edit` applied to the payload columns, dropping an empty list. */
|
|
350
|
-
function eventsColumnsEdited(events, edit) {
|
|
351
|
-
if (events === true) return true;
|
|
352
|
-
const { include, ...rest } = events;
|
|
353
|
-
const kept = include === void 0 ? [] : edit(include);
|
|
354
|
-
return kept.length === 0 ? rest : {
|
|
355
|
-
...rest,
|
|
356
|
-
include: kept
|
|
357
|
-
};
|
|
358
|
-
}
|
|
359
|
-
//#endregion
|
|
360
416
|
//#region src/create/design.ts
|
|
361
417
|
const EMPTY_DESIGN = {};
|
|
362
418
|
/** The schema app tables go in. */
|
|
@@ -378,26 +434,6 @@ function isAppTable(table) {
|
|
|
378
434
|
function isEmptyDesign(design) {
|
|
379
435
|
return Object.keys(design.appTables ?? {}).length === 0 && Object.keys(design.extraColumns ?? {}).length === 0 && Object.keys(design.positions ?? {}).length === 0;
|
|
380
436
|
}
|
|
381
|
-
/** The column that scopes an app table's rows, or `null` for `scope: "none"` and unscoped presets. */
|
|
382
|
-
function scopeColumnOf(table, preset) {
|
|
383
|
-
const scope = table.scope ?? "inherit";
|
|
384
|
-
if (scope === "none") return null;
|
|
385
|
-
if (scope === "inherit" && preset.scope === "tenant") return {
|
|
386
|
-
name: `${preset.tenantName}_id`,
|
|
387
|
-
type: preset.idType,
|
|
388
|
-
nullable: false,
|
|
389
|
-
default: null,
|
|
390
|
-
unique: false
|
|
391
|
-
};
|
|
392
|
-
if (scope === "user" || preset.scope === "user") return {
|
|
393
|
-
name: "user_id",
|
|
394
|
-
type: "uuid",
|
|
395
|
-
nullable: false,
|
|
396
|
-
default: "auth.uid()",
|
|
397
|
-
unique: false
|
|
398
|
-
};
|
|
399
|
-
return null;
|
|
400
|
-
}
|
|
401
437
|
/** Why `name` can't name an app table or column, by the library's rules. */
|
|
402
438
|
function identifierError(name) {
|
|
403
439
|
return appIdentifierError(name);
|
|
@@ -421,8 +457,8 @@ function columnError(table, name, preset) {
|
|
|
421
457
|
if (appReservedColumns(preset.tenantName).includes(name)) return `${name} is a column every app table can get from its scope. Choose another name.`;
|
|
422
458
|
}
|
|
423
459
|
/**
|
|
424
|
-
* Why `value` can't be the default of `column` (its type, options and
|
|
425
|
-
*
|
|
460
|
+
* Why `value` can't be the default of `column` (its type, options and bounds),
|
|
461
|
+
* or `undefined` when it can or is empty.
|
|
426
462
|
*/
|
|
427
463
|
function defaultError(column, value) {
|
|
428
464
|
const trimmed = value.trim();
|
|
@@ -473,8 +509,8 @@ function addTable(design, name, table = {}, position) {
|
|
|
473
509
|
});
|
|
474
510
|
}
|
|
475
511
|
/**
|
|
476
|
-
* Removes an app table, every app table column that references it (and
|
|
477
|
-
*
|
|
512
|
+
* Removes an app table, every app table column that references it (and those
|
|
513
|
+
* columns from key sets), and the rollups and lookups that read it.
|
|
478
514
|
*/
|
|
479
515
|
function deleteTable(design, name) {
|
|
480
516
|
const rest = omitKey(design.appTables, name);
|
|
@@ -534,8 +570,8 @@ function updateTable(design, name, patch) {
|
|
|
534
570
|
});
|
|
535
571
|
}
|
|
536
572
|
/**
|
|
537
|
-
* Sets an app table's id type and retypes the app table columns that
|
|
538
|
-
*
|
|
573
|
+
* Sets an app table's id type and retypes the app table columns that reference
|
|
574
|
+
* it, since a key has the type of the id it points at.
|
|
539
575
|
*/
|
|
540
576
|
function setTableId(design, name, id) {
|
|
541
577
|
const next = updateTable(design, name, { id: id === "uuid" ? void 0 : id });
|
|
@@ -544,7 +580,10 @@ function setTableId(design, name, id) {
|
|
|
544
580
|
columns: Object.fromEntries(Object.entries(table.columns ?? {}).map(([column, config]) => [column, config.references?.block === void 0 && config.references?.table === name ? retyped(config, id) : config]))
|
|
545
581
|
}])));
|
|
546
582
|
}
|
|
547
|
-
/**
|
|
583
|
+
/**
|
|
584
|
+
* A table's composite key sets with `edit` applied to each, dropping empty sets
|
|
585
|
+
* and an empty list.
|
|
586
|
+
*/
|
|
548
587
|
function withKeySets(table, edit) {
|
|
549
588
|
const { unique, indexes, ...rest } = table;
|
|
550
589
|
const sets = (list) => {
|
|
@@ -604,7 +643,10 @@ function deleteColumn(design, table, name) {
|
|
|
604
643
|
}, (columns) => columns.filter((column) => column !== name))
|
|
605
644
|
});
|
|
606
645
|
}
|
|
607
|
-
/**
|
|
646
|
+
/**
|
|
647
|
+
* Sets an extra column on a block table
|
|
648
|
+
* (`blocks.<module>.options.extraColumns`).
|
|
649
|
+
*/
|
|
608
650
|
function setExtraColumn(design, module, name, type) {
|
|
609
651
|
return {
|
|
610
652
|
...design,
|
|
@@ -682,8 +724,10 @@ function singular(name) {
|
|
|
682
724
|
for (const [ending, replacement] of SINGULAR_ENDINGS) if (ending.test(name)) return name.replace(ending, replacement);
|
|
683
725
|
return name;
|
|
684
726
|
}
|
|
685
|
-
|
|
686
|
-
|
|
727
|
+
/**
|
|
728
|
+
* The column types a foreign key can point at, from the target's primary key
|
|
729
|
+
* type.
|
|
730
|
+
*/
|
|
687
731
|
function referenceType(type) {
|
|
688
732
|
const normal = type.toLowerCase();
|
|
689
733
|
switch (normal) {
|
|
@@ -700,12 +744,11 @@ function referenceType(type) {
|
|
|
700
744
|
}
|
|
701
745
|
}
|
|
702
746
|
/**
|
|
703
|
-
* Adds a foreign key column from an app table to `target`. Only app tables
|
|
704
|
-
*
|
|
705
|
-
*
|
|
706
|
-
*
|
|
707
|
-
* the
|
|
708
|
-
* message.
|
|
747
|
+
* Adds a foreign key column from an app table to `target`. Only app tables get
|
|
748
|
+
* new columns. A self reference gets `parent_id`, and a second reference to the
|
|
749
|
+
* same table gets a role name (`owner_id`, `<target>_2_id`) the user can
|
|
750
|
+
* rename. A target without a single-column primary key, and the tenant table
|
|
751
|
+
* the scope column already references, are refused with a message.
|
|
709
752
|
*/
|
|
710
753
|
function connect(design, data, preset, connection) {
|
|
711
754
|
const source = data.tables.find((table) => table.id === connection.source);
|
|
@@ -740,9 +783,9 @@ function referenceColumn(table, base, roles, preset) {
|
|
|
740
783
|
].find((candidate) => columnError(table, candidate, preset) === void 0);
|
|
741
784
|
}
|
|
742
785
|
/**
|
|
743
|
-
* Adds a key to `targetId` on the app table `name` in the design, which can
|
|
744
|
-
*
|
|
745
|
-
*
|
|
786
|
+
* Adds a key to `targetId` on the app table `name` in the design, which can be
|
|
787
|
+
* a table the schema doesn't have yet: `<target>_id`, `parent_id` for a self
|
|
788
|
+
* reference, or a free role name when that column is taken.
|
|
746
789
|
*/
|
|
747
790
|
function referenceFrom(design, data, preset, name, targetId) {
|
|
748
791
|
const table = design.appTables?.[name];
|
|
@@ -750,8 +793,8 @@ function referenceFrom(design, data, preset, name, targetId) {
|
|
|
750
793
|
ok: false,
|
|
751
794
|
error: `${name} is not in the design.`
|
|
752
795
|
};
|
|
753
|
-
const target = targetId ===
|
|
754
|
-
if (targetId !==
|
|
796
|
+
const target = targetId === "auth.users" ? void 0 : data.tables.find((each) => each.id === targetId);
|
|
797
|
+
if (targetId !== "auth.users" && target === void 0) return {
|
|
755
798
|
ok: false,
|
|
756
799
|
error: "That table is not in the schema."
|
|
757
800
|
};
|
|
@@ -786,91 +829,6 @@ function referenceFrom(design, data, preset, name, targetId) {
|
|
|
786
829
|
})
|
|
787
830
|
};
|
|
788
831
|
}
|
|
789
|
-
/**
|
|
790
|
-
* What would stop `sql sync` from writing the design: a table name a block
|
|
791
|
-
* already uses, a reference to a table the preset no longer installs, a
|
|
792
|
-
* set-null delete on a required column, a composite key on a column the
|
|
793
|
-
* table doesn't have, and extra columns for a block that is gone or no
|
|
794
|
-
* longer takes them.
|
|
795
|
-
*/
|
|
796
|
-
function designIssues(design, data, preset) {
|
|
797
|
-
const issues = [];
|
|
798
|
-
const names = new Set(data.tables.filter((table) => !isAppTable(table)).map((table) => table.name));
|
|
799
|
-
const logical = new Set(Object.values(data.blockTables).map((each) => `${each.block}.${each.table}`));
|
|
800
|
-
const modules = new Set(data.tables.filter((table) => data.extraColumns.includes(table.id)).map((table) => table.module));
|
|
801
|
-
const subjectTypes = /* @__PURE__ */ new Map();
|
|
802
|
-
for (const [name, table] of Object.entries(design.appTables ?? {})) {
|
|
803
|
-
const type = table.subject?.type;
|
|
804
|
-
if (type !== void 0 && !subjectTypes.has(type)) subjectTypes.set(type, name);
|
|
805
|
-
}
|
|
806
|
-
for (const [name, table] of Object.entries(design.appTables ?? {})) {
|
|
807
|
-
const invalid = identifierError(name);
|
|
808
|
-
if (invalid !== void 0) issues.push({
|
|
809
|
-
table: name,
|
|
810
|
-
message: `The name ${name} is invalid. ${invalid}`
|
|
811
|
-
});
|
|
812
|
-
if (names.has(name)) issues.push({
|
|
813
|
-
table: name,
|
|
814
|
-
message: `A block already creates a ${name} table. Rename this one.`
|
|
815
|
-
});
|
|
816
|
-
const long = appNameLengthError(name, table);
|
|
817
|
-
if (long !== void 0) issues.push({
|
|
818
|
-
table: name,
|
|
819
|
-
message: `${long}.`
|
|
820
|
-
});
|
|
821
|
-
const type = table.subject?.type;
|
|
822
|
-
if (type !== void 0 && subjectTypes.get(type) !== name) issues.push({
|
|
823
|
-
table: name,
|
|
824
|
-
message: `${subjectTypes.get(type)} already has the subject type ${type}. Choose another.`
|
|
825
|
-
});
|
|
826
|
-
for (const [column, config] of Object.entries(table.columns ?? {})) {
|
|
827
|
-
const fallback = config.default === void 0 ? void 0 : defaultError(config, config.default);
|
|
828
|
-
if (fallback !== void 0) issues.push({
|
|
829
|
-
table: name,
|
|
830
|
-
message: `${name}.${column}: ${fallback}`
|
|
831
|
-
});
|
|
832
|
-
if (lockedWithoutDefault(config)) issues.push({
|
|
833
|
-
table: name,
|
|
834
|
-
message: `${name}.${column} is required, and signed-in users can't write it, so give it a default.`
|
|
835
|
-
});
|
|
836
|
-
}
|
|
837
|
-
for (const column of subjectColumns(table.subject)) if (Object.hasOwn(table.columns ?? {}, column.name)) issues.push({
|
|
838
|
-
table: name,
|
|
839
|
-
message: `${name}.${column.name} clashes with the column its record features add. Rename it.`
|
|
840
|
-
});
|
|
841
|
-
const known = /* @__PURE__ */ new Set([
|
|
842
|
-
"id",
|
|
843
|
-
...Object.keys(table.columns ?? {}),
|
|
844
|
-
...table.timestamps === false ? [] : ["created_at", "updated_at"]
|
|
845
|
-
]);
|
|
846
|
-
const scope = scopeColumnOf(table, preset);
|
|
847
|
-
if (scope !== null) known.add(scope.name);
|
|
848
|
-
for (const [key, sets] of [["unique key", table.unique], ["index", table.indexes]]) for (const columns of sets ?? []) {
|
|
849
|
-
const gone = columns.filter((column) => !known.has(column));
|
|
850
|
-
if (gone.length > 0) issues.push({
|
|
851
|
-
table: name,
|
|
852
|
-
message: `The ${key} on ${columns.join(", ")} names ${gone.join(", ")}, which ${name} doesn't have.`
|
|
853
|
-
});
|
|
854
|
-
}
|
|
855
|
-
for (const [column, config] of Object.entries(table.columns ?? {})) {
|
|
856
|
-
const reference = config.references;
|
|
857
|
-
if (reference === void 0) continue;
|
|
858
|
-
if (reference.block === void 0 ? reference.table !== AUTH_USERS$1 && design.appTables?.[reference.table] === void 0 : !logical.has(`${reference.block}.${reference.table}`)) issues.push({
|
|
859
|
-
table: name,
|
|
860
|
-
message: `${name}.${column} references ${reference.block === void 0 ? reference.table : `${reference.block}.${reference.table}`}, which the preset does not install.`
|
|
861
|
-
});
|
|
862
|
-
if (reference.onDelete === "set null" && config.nullable === false) issues.push({
|
|
863
|
-
table: name,
|
|
864
|
-
message: `${name}.${column} is required, so deleting the row it references can't set it to null.`
|
|
865
|
-
});
|
|
866
|
-
}
|
|
867
|
-
}
|
|
868
|
-
for (const block of Object.keys(design.extraColumns ?? {})) if (!modules.has(block)) issues.push({
|
|
869
|
-
table: block,
|
|
870
|
-
message: `The extra columns for ${block} have no table: the block is not installed or takes no extra columns.`
|
|
871
|
-
});
|
|
872
|
-
return issues;
|
|
873
|
-
}
|
|
874
832
|
function appColumn(name, column) {
|
|
875
833
|
const label = columnLabel(column);
|
|
876
834
|
const schemaColumn = {
|
|
@@ -891,9 +849,12 @@ const TIMESTAMP = {
|
|
|
891
849
|
default: "now()",
|
|
892
850
|
unique: false
|
|
893
851
|
};
|
|
894
|
-
/**
|
|
852
|
+
/**
|
|
853
|
+
* The id of the table a reference points at, or `undefined` when it is not in
|
|
854
|
+
* the schema.
|
|
855
|
+
*/
|
|
895
856
|
function referencedId(reference, data) {
|
|
896
|
-
if (reference.block === void 0) return reference.table ===
|
|
857
|
+
if (reference.block === void 0) return reference.table === "auth.users" ? AUTH_USERS$1 : appTableId(reference.table);
|
|
897
858
|
return Object.entries(data.blockTables).find(([, each]) => each.block === reference.block && each.table === reference.table)?.[0];
|
|
898
859
|
}
|
|
899
860
|
function foreignKey(column, to, onDelete = "no action") {
|
|
@@ -963,8 +924,8 @@ function extraColumnsOf(design, table, data) {
|
|
|
963
924
|
return data.extraColumns.includes(table.id) ? design.extraColumns?.[table.module] ?? {} : {};
|
|
964
925
|
}
|
|
965
926
|
/**
|
|
966
|
-
* The schema with the design applied: app tables added, extra columns
|
|
967
|
-
*
|
|
927
|
+
* The schema with the design applied: app tables added, extra columns appended
|
|
928
|
+
* to the block tables that accept them.
|
|
968
929
|
*/
|
|
969
930
|
function withDesign(data, design, preset) {
|
|
970
931
|
const tables = data.tables.map((table) => {
|
|
@@ -993,12 +954,129 @@ function withDesign(data, design, preset) {
|
|
|
993
954
|
};
|
|
994
955
|
}
|
|
995
956
|
//#endregion
|
|
957
|
+
//#region src/create/design-issues.ts
|
|
958
|
+
/**
|
|
959
|
+
* What would stop `sql sync` from writing the design: a table name a block
|
|
960
|
+
* already uses, a reference to a table the preset no longer installs, a
|
|
961
|
+
* set-null delete on a required column, a composite key on a column the table
|
|
962
|
+
* doesn't have, and extra columns for a block that is gone or no longer takes
|
|
963
|
+
* them.
|
|
964
|
+
*/
|
|
965
|
+
function designIssues(design, data, preset) {
|
|
966
|
+
const issues = [];
|
|
967
|
+
const names = new Set(data.tables.filter((table) => !isAppTable(table)).map((table) => table.name));
|
|
968
|
+
const logical = new Set(Object.values(data.blockTables).map((each) => `${each.block}.${each.table}`));
|
|
969
|
+
const modules = new Set(data.tables.filter((table) => data.extraColumns.includes(table.id)).map((table) => table.module));
|
|
970
|
+
const subjectTypes = /* @__PURE__ */ new Map();
|
|
971
|
+
for (const [name, table] of Object.entries(design.appTables ?? {})) {
|
|
972
|
+
const type = table.subject?.type;
|
|
973
|
+
if (type !== void 0 && !subjectTypes.has(type)) subjectTypes.set(type, name);
|
|
974
|
+
}
|
|
975
|
+
for (const [name, table] of Object.entries(design.appTables ?? {})) {
|
|
976
|
+
const invalid = identifierError(name);
|
|
977
|
+
if (invalid !== void 0) issues.push({
|
|
978
|
+
code: "invalid_name",
|
|
979
|
+
path: jsonPointer("appTables", name),
|
|
980
|
+
table: name,
|
|
981
|
+
message: `The name ${name} is invalid. ${invalid}`
|
|
982
|
+
});
|
|
983
|
+
if (names.has(name)) issues.push({
|
|
984
|
+
code: "table_name_taken",
|
|
985
|
+
path: jsonPointer("appTables", name),
|
|
986
|
+
table: name,
|
|
987
|
+
message: `A block already creates a ${name} table. Rename this one.`
|
|
988
|
+
});
|
|
989
|
+
const long = appNameLengthError(name, table);
|
|
990
|
+
if (long !== void 0) issues.push({
|
|
991
|
+
code: "name_too_long",
|
|
992
|
+
path: jsonPointer("appTables", name),
|
|
993
|
+
table: name,
|
|
994
|
+
message: `${long}.`
|
|
995
|
+
});
|
|
996
|
+
const type = table.subject?.type;
|
|
997
|
+
if (type !== void 0 && subjectTypes.get(type) !== name) issues.push({
|
|
998
|
+
code: "subject_type_taken",
|
|
999
|
+
path: jsonPointer("appTables", name, "subject", "type"),
|
|
1000
|
+
table: name,
|
|
1001
|
+
message: `${subjectTypes.get(type)} already has the subject type ${type}. Choose another.`
|
|
1002
|
+
});
|
|
1003
|
+
for (const [column, config] of Object.entries(table.columns ?? {})) {
|
|
1004
|
+
const fallback = config.default === void 0 ? void 0 : defaultError(config, config.default);
|
|
1005
|
+
if (fallback !== void 0) issues.push({
|
|
1006
|
+
code: "invalid_default",
|
|
1007
|
+
path: jsonPointer("appTables", name, "columns", column, "default"),
|
|
1008
|
+
table: name,
|
|
1009
|
+
message: `${name}.${column}: ${fallback}`
|
|
1010
|
+
});
|
|
1011
|
+
if (lockedWithoutDefault(config)) issues.push({
|
|
1012
|
+
code: "default_required",
|
|
1013
|
+
path: jsonPointer("appTables", name, "columns", column),
|
|
1014
|
+
table: name,
|
|
1015
|
+
message: `${name}.${column} is required, and signed-in users can't write it, so give it a default.`
|
|
1016
|
+
});
|
|
1017
|
+
}
|
|
1018
|
+
for (const column of subjectColumns(table.subject)) if (Object.hasOwn(table.columns ?? {}, column.name)) issues.push({
|
|
1019
|
+
code: "column_clash",
|
|
1020
|
+
path: jsonPointer("appTables", name, "columns", column.name),
|
|
1021
|
+
table: name,
|
|
1022
|
+
message: `${name}.${column.name} clashes with the column its record features add. Rename it.`
|
|
1023
|
+
});
|
|
1024
|
+
const known = /* @__PURE__ */ new Set([
|
|
1025
|
+
"id",
|
|
1026
|
+
...Object.keys(table.columns ?? {}),
|
|
1027
|
+
...table.timestamps === false ? [] : ["created_at", "updated_at"]
|
|
1028
|
+
]);
|
|
1029
|
+
const scope = scopeColumnOf(table, preset);
|
|
1030
|
+
if (scope !== null) known.add(scope.name);
|
|
1031
|
+
for (const [key, field, sets] of [[
|
|
1032
|
+
"unique key",
|
|
1033
|
+
"unique",
|
|
1034
|
+
table.unique
|
|
1035
|
+
], [
|
|
1036
|
+
"index",
|
|
1037
|
+
"indexes",
|
|
1038
|
+
table.indexes
|
|
1039
|
+
]]) for (const [index, columns] of (sets ?? []).entries()) {
|
|
1040
|
+
const gone = columns.filter((column) => !known.has(column));
|
|
1041
|
+
if (gone.length > 0) issues.push({
|
|
1042
|
+
code: "unknown_column",
|
|
1043
|
+
path: jsonPointer("appTables", name, field, index),
|
|
1044
|
+
table: name,
|
|
1045
|
+
message: `The ${key} on ${columns.join(", ")} names ${gone.join(", ")}, which ${name} doesn't have.`
|
|
1046
|
+
});
|
|
1047
|
+
}
|
|
1048
|
+
for (const [column, config] of Object.entries(table.columns ?? {})) {
|
|
1049
|
+
const reference = config.references;
|
|
1050
|
+
if (reference === void 0) continue;
|
|
1051
|
+
if (reference.block === void 0 ? reference.table !== "auth.users" && design.appTables?.[reference.table] === void 0 : !logical.has(`${reference.block}.${reference.table}`)) issues.push({
|
|
1052
|
+
code: "missing_reference",
|
|
1053
|
+
path: jsonPointer("appTables", name, "columns", column, "references"),
|
|
1054
|
+
table: name,
|
|
1055
|
+
message: `${name}.${column} references ${reference.block === void 0 ? reference.table : `${reference.block}.${reference.table}`}, which the preset does not install.`
|
|
1056
|
+
});
|
|
1057
|
+
if (reference.onDelete === "set null" && config.nullable === false) issues.push({
|
|
1058
|
+
code: "set_null_required",
|
|
1059
|
+
path: jsonPointer("appTables", name, "columns", column, "references", "onDelete"),
|
|
1060
|
+
table: name,
|
|
1061
|
+
message: `${name}.${column} is required, so deleting the row it references can't set it to null.`
|
|
1062
|
+
});
|
|
1063
|
+
}
|
|
1064
|
+
}
|
|
1065
|
+
for (const block of Object.keys(design.extraColumns ?? {})) if (!modules.has(block)) issues.push({
|
|
1066
|
+
code: "block_not_installed",
|
|
1067
|
+
path: jsonPointer("extraColumns", block),
|
|
1068
|
+
table: block,
|
|
1069
|
+
message: `The extra columns for ${block} have no table: the block is not installed or takes no extra columns.`
|
|
1070
|
+
});
|
|
1071
|
+
return issues;
|
|
1072
|
+
}
|
|
1073
|
+
//#endregion
|
|
996
1074
|
//#region src/create/preview-provider.ts
|
|
997
1075
|
/**
|
|
998
|
-
* A stand-in for the app's authorization provider, so `/create` can render
|
|
999
|
-
*
|
|
1000
|
-
*
|
|
1001
|
-
*
|
|
1076
|
+
* A stand-in for the app's authorization provider, so `/create` can render the
|
|
1077
|
+
* SQL and the diagram for `access: "provider"`. Its templates call functions in
|
|
1078
|
+
* a `provider` schema that no real project has: the preview says so next to the
|
|
1079
|
+
* output.
|
|
1002
1080
|
*/
|
|
1003
1081
|
function previewAccessProvider(preset) {
|
|
1004
1082
|
return {
|
|
@@ -1017,9 +1095,8 @@ function previewAccessProvider(preset) {
|
|
|
1017
1095
|
}
|
|
1018
1096
|
/**
|
|
1019
1097
|
* The files `sql sync` writes for a config with only this preset and its
|
|
1020
|
-
* `/create` design (app tables and extra columns). With
|
|
1021
|
-
*
|
|
1022
|
-
* `previewAccessProvider`.
|
|
1098
|
+
* `/create` design (app tables and extra columns). With `access: "provider"`
|
|
1099
|
+
* the access functions come from `previewAccessProvider`.
|
|
1023
1100
|
*/
|
|
1024
1101
|
function previewFiles(code, design = {}) {
|
|
1025
1102
|
const preset = presetOf(code);
|
|
@@ -1034,12 +1111,15 @@ function previewFiles(code, design = {}) {
|
|
|
1034
1111
|
//#endregion
|
|
1035
1112
|
//#region src/create/schema-meta.ts
|
|
1036
1113
|
const AUTH_USERS = "auth.users";
|
|
1037
|
-
/**
|
|
1114
|
+
/**
|
|
1115
|
+
* The tenant name the module defaults use, which a preset's tenant name
|
|
1116
|
+
* replaces.
|
|
1117
|
+
*/
|
|
1038
1118
|
const DEFAULT_TENANT = "organization";
|
|
1039
1119
|
/**
|
|
1040
|
-
* Finds the parsed table for a module's logical table by its default name,
|
|
1041
|
-
*
|
|
1042
|
-
*
|
|
1120
|
+
* Finds the parsed table for a module's logical table by its default name, or
|
|
1121
|
+
* by that name with the tenant renamed (`organizations` is `workspaces` for the
|
|
1122
|
+
* `workspace` tenant).
|
|
1043
1123
|
*/
|
|
1044
1124
|
function indexTables(tables, tenantName) {
|
|
1045
1125
|
const byName = new Map(tables.map((table) => [`${table.module}:${table.name}`, table]));
|
|
@@ -1067,9 +1147,9 @@ function tenantTable(tables) {
|
|
|
1067
1147
|
return best;
|
|
1068
1148
|
}
|
|
1069
1149
|
/**
|
|
1070
|
-
* The physical column a logical lifecycle column maps to. A tenant name
|
|
1071
|
-
*
|
|
1072
|
-
*
|
|
1150
|
+
* The physical column a logical lifecycle column maps to. A tenant name renames
|
|
1151
|
+
* `organization_id`, so a default name the table lacks falls back to the
|
|
1152
|
+
* table's tenant column.
|
|
1073
1153
|
*/
|
|
1074
1154
|
function physicalColumn(table, name, tenant) {
|
|
1075
1155
|
if (name === void 0) return;
|
|
@@ -1080,8 +1160,8 @@ function hasForeignKey(table, column) {
|
|
|
1080
1160
|
return table.foreignKeys.some((key) => key.columns.length === 1 && key.columns[0] === column);
|
|
1081
1161
|
}
|
|
1082
1162
|
/**
|
|
1083
|
-
* The soft references in the tables: lifecycle tenant and user columns
|
|
1084
|
-
*
|
|
1163
|
+
* The soft references in the tables: lifecycle tenant and user columns without
|
|
1164
|
+
* a foreign key, and `regclass` columns, which name any table.
|
|
1085
1165
|
*/
|
|
1086
1166
|
function softReferences(tables, tenantName = DEFAULT_TENANT) {
|
|
1087
1167
|
const lookup = indexTables(tables, tenantName);
|
|
@@ -1143,7 +1223,10 @@ function extraColumnTables(tables, lookup) {
|
|
|
1143
1223
|
return table === void 0 ? [] : [table.id];
|
|
1144
1224
|
});
|
|
1145
1225
|
}
|
|
1146
|
-
/**
|
|
1226
|
+
/**
|
|
1227
|
+
* The tables plus the soft references, manifests and extra-column tables the
|
|
1228
|
+
* canvas draws.
|
|
1229
|
+
*/
|
|
1147
1230
|
function schemaData(tables, tenantName = DEFAULT_TENANT) {
|
|
1148
1231
|
const lookup = indexTables(tables, tenantName);
|
|
1149
1232
|
return {
|
|
@@ -1157,7 +1240,10 @@ function schemaData(tables, tenantName = DEFAULT_TENANT) {
|
|
|
1157
1240
|
}
|
|
1158
1241
|
//#endregion
|
|
1159
1242
|
//#region src/create/schema.ts
|
|
1160
|
-
/**
|
|
1243
|
+
/**
|
|
1244
|
+
* The columns a diagram shows before a table is expanded: keys, tenant and soft
|
|
1245
|
+
* references.
|
|
1246
|
+
*/
|
|
1161
1247
|
function keyColumnsOf(table, softColumns = /* @__PURE__ */ new Set()) {
|
|
1162
1248
|
const keys = /* @__PURE__ */ new Set([
|
|
1163
1249
|
...table.primaryKey,
|
|
@@ -1167,13 +1253,16 @@ function keyColumnsOf(table, softColumns = /* @__PURE__ */ new Set()) {
|
|
|
1167
1253
|
]);
|
|
1168
1254
|
return table.columns.filter((column) => keys.has(column.name));
|
|
1169
1255
|
}
|
|
1170
|
-
/**
|
|
1256
|
+
/**
|
|
1257
|
+
* The column the tenant blocks key rows by, from the preset's tenant name;
|
|
1258
|
+
* `null` without tenants.
|
|
1259
|
+
*/
|
|
1171
1260
|
function tenantColumnOf(preset) {
|
|
1172
1261
|
return preset.scope === "tenant" ? `${preset.tenantName}_id` : null;
|
|
1173
1262
|
}
|
|
1174
1263
|
/**
|
|
1175
|
-
* Every module's file creates this table to record the installed modules.
|
|
1176
|
-
*
|
|
1264
|
+
* Every module's file creates this table to record the installed modules. It
|
|
1265
|
+
* holds no app data, so the diagram leaves it out.
|
|
1177
1266
|
*/
|
|
1178
1267
|
const BOOKKEEPING_TABLES = /* @__PURE__ */ new Set(["better_supabase.modules"]);
|
|
1179
1268
|
const IDENT = String.raw`(?:"(?:[^"]|"")+"|[A-Za-z_][A-Za-z0-9_$]*)`;
|
|
@@ -1205,8 +1294,8 @@ function identList(list) {
|
|
|
1205
1294
|
}
|
|
1206
1295
|
/**
|
|
1207
1296
|
* The SQL with comments removed and the inside of every single-quoted string
|
|
1208
|
-
* blanked, so a `create table` inside a string or a comment is not read and
|
|
1209
|
-
*
|
|
1297
|
+
* blanked, so a `create table` inside a string or a comment is not read and the
|
|
1298
|
+
* offsets still match the original text.
|
|
1210
1299
|
*/
|
|
1211
1300
|
function codeOnly(sql) {
|
|
1212
1301
|
let out = "";
|
|
@@ -1238,7 +1327,10 @@ function codeOnly(sql) {
|
|
|
1238
1327
|
}
|
|
1239
1328
|
return out;
|
|
1240
1329
|
}
|
|
1241
|
-
/**
|
|
1330
|
+
/**
|
|
1331
|
+
* The text between the `(` at `open` and its matching `)`, or undefined when it
|
|
1332
|
+
* never closes.
|
|
1333
|
+
*/
|
|
1242
1334
|
function balanced(text, open) {
|
|
1243
1335
|
let depth = 0;
|
|
1244
1336
|
for (let index = open; index < text.length; index += 1) if (text[index] === "(") depth += 1;
|
|
@@ -1247,7 +1339,10 @@ function balanced(text, open) {
|
|
|
1247
1339
|
if (depth === 0) return text.slice(open + 1, index);
|
|
1248
1340
|
}
|
|
1249
1341
|
}
|
|
1250
|
-
/**
|
|
1342
|
+
/**
|
|
1343
|
+
* The comma-separated elements of `text` at depth 0, with `original` sliced at
|
|
1344
|
+
* the same offsets.
|
|
1345
|
+
*/
|
|
1251
1346
|
function splitTopLevel(text, original = text) {
|
|
1252
1347
|
const parts = [];
|
|
1253
1348
|
let depth = 0;
|
|
@@ -1339,8 +1434,8 @@ function addColumn(draft, definition, original = definition) {
|
|
|
1339
1434
|
});
|
|
1340
1435
|
}
|
|
1341
1436
|
/**
|
|
1342
|
-
* Adds a table constraint (`primary key (...)`, `foreign key (...)
|
|
1343
|
-
*
|
|
1437
|
+
* Adds a table constraint (`primary key (...)`, `foreign key (...) references
|
|
1438
|
+
* ...`). Returns false when the element is not a constraint.
|
|
1344
1439
|
*/
|
|
1345
1440
|
function addConstraint(draft, element) {
|
|
1346
1441
|
const body = element.replace(CONSTRAINT_NAME, "");
|
|
@@ -1380,10 +1475,10 @@ function finish(draft, tenantColumn) {
|
|
|
1380
1475
|
};
|
|
1381
1476
|
}
|
|
1382
1477
|
/**
|
|
1383
|
-
* The tables in rendered module SQL: every `create table`, plus the columns
|
|
1384
|
-
*
|
|
1385
|
-
*
|
|
1386
|
-
*
|
|
1478
|
+
* The tables in rendered module SQL: every `create table`, plus the columns and
|
|
1479
|
+
* foreign keys later `alter table ... add` statements give them. A `create
|
|
1480
|
+
* table` it can't read throws with the file and line, so a new SQL shape fails
|
|
1481
|
+
* the tests instead of dropping a table from the diagram.
|
|
1387
1482
|
*/
|
|
1388
1483
|
function parseSchema(files, options = {}) {
|
|
1389
1484
|
const drafts = /* @__PURE__ */ new Map();
|
|
@@ -1429,8 +1524,8 @@ function parseSchema(files, options = {}) {
|
|
|
1429
1524
|
return [...drafts.entries()].filter(([id]) => !BOOKKEEPING_TABLES.has(id)).map(([, draft]) => finish(draft, tenantColumn));
|
|
1430
1525
|
}
|
|
1431
1526
|
/**
|
|
1432
|
-
* The statements that shape one table, as written: its `create table` and
|
|
1433
|
-
*
|
|
1527
|
+
* The statements that shape one table, as written: its `create table` and the
|
|
1528
|
+
* `alter table` statements after it. Empty when no file creates it.
|
|
1434
1529
|
*/
|
|
1435
1530
|
function tableStatements(files, id) {
|
|
1436
1531
|
const statements = [];
|
|
@@ -1453,7 +1548,10 @@ function tableStatements(files, id) {
|
|
|
1453
1548
|
}
|
|
1454
1549
|
return statements;
|
|
1455
1550
|
}
|
|
1456
|
-
/**
|
|
1551
|
+
/**
|
|
1552
|
+
* The foreign keys between tables, one per pair, with the targets outside the
|
|
1553
|
+
* schema named by id.
|
|
1554
|
+
*/
|
|
1457
1555
|
function schemaRelations(tables) {
|
|
1458
1556
|
const seen = /* @__PURE__ */ new Set();
|
|
1459
1557
|
return tables.flatMap((table) => table.foreignKeys.flatMap((key) => {
|
|
@@ -1470,18 +1568,35 @@ function schemaRelations(tables) {
|
|
|
1470
1568
|
//#endregion
|
|
1471
1569
|
//#region src/create/check.ts
|
|
1472
1570
|
const messageOf = (error) => error instanceof Error ? error.message : String(error);
|
|
1571
|
+
/** The issue for a design that failed to parse, with its code and path. */
|
|
1572
|
+
function parseIssue(error) {
|
|
1573
|
+
const { code, path } = error instanceof DesignParseError ? error : {
|
|
1574
|
+
code: "invalid_design",
|
|
1575
|
+
path: ""
|
|
1576
|
+
};
|
|
1577
|
+
return {
|
|
1578
|
+
code,
|
|
1579
|
+
path,
|
|
1580
|
+
table: tableAt(path),
|
|
1581
|
+
message: messageOf(error)
|
|
1582
|
+
};
|
|
1583
|
+
}
|
|
1584
|
+
/** The app table or block module a design path is in, or `design`. */
|
|
1585
|
+
function tableAt(path) {
|
|
1586
|
+
const [, key, name] = path.split("/");
|
|
1587
|
+
return (key === "appTables" || key === "extraColumns") && name !== void 0 ? name.replaceAll("~1", "/").replaceAll("~0", "~") : "design";
|
|
1588
|
+
}
|
|
1473
1589
|
async function designFrom(input) {
|
|
1474
1590
|
if (typeof input !== "string") return parseDesign(input);
|
|
1475
1591
|
const design = await designOf(input);
|
|
1476
|
-
if (design === void 0) throw new
|
|
1592
|
+
if (design === void 0) throw new DesignParseError("invalid_code", "", `design: "${input.slice(0, 40)}" is neither a design code nor a /create URL with &design=`);
|
|
1477
1593
|
return design;
|
|
1478
1594
|
}
|
|
1479
1595
|
/**
|
|
1480
|
-
* Checks a design against a preset with every rule the canvas and
|
|
1481
|
-
*
|
|
1482
|
-
*
|
|
1483
|
-
*
|
|
1484
|
-
* an issue.
|
|
1596
|
+
* Checks a design against a preset with every rule the canvas and `sql sync`
|
|
1597
|
+
* apply, so a server, an MCP tool and the canvas share one answer. `input` is a
|
|
1598
|
+
* design object, a design code or a `/create` URL with `&design=`. It never
|
|
1599
|
+
* throws for a bad design or preset: each problem is an issue.
|
|
1485
1600
|
*/
|
|
1486
1601
|
async function checkDesign(input, preset) {
|
|
1487
1602
|
let design;
|
|
@@ -1490,10 +1605,7 @@ async function checkDesign(input, preset) {
|
|
|
1490
1605
|
} catch (error) {
|
|
1491
1606
|
return {
|
|
1492
1607
|
ok: false,
|
|
1493
|
-
issues: [
|
|
1494
|
-
table: "design",
|
|
1495
|
-
message: messageOf(error)
|
|
1496
|
-
}]
|
|
1608
|
+
issues: [parseIssue(error)]
|
|
1497
1609
|
};
|
|
1498
1610
|
}
|
|
1499
1611
|
let resolvedPreset;
|
|
@@ -1503,6 +1615,8 @@ async function checkDesign(input, preset) {
|
|
|
1503
1615
|
return {
|
|
1504
1616
|
ok: false,
|
|
1505
1617
|
issues: [{
|
|
1618
|
+
code: "invalid_preset",
|
|
1619
|
+
path: "",
|
|
1506
1620
|
table: "preset",
|
|
1507
1621
|
message: messageOf(error)
|
|
1508
1622
|
}]
|
|
@@ -1512,6 +1626,8 @@ async function checkDesign(input, preset) {
|
|
|
1512
1626
|
if (resolved.conflicts.length > 0) return {
|
|
1513
1627
|
ok: false,
|
|
1514
1628
|
issues: resolved.conflicts.map((conflict) => ({
|
|
1629
|
+
code: "preset_conflict",
|
|
1630
|
+
path: "",
|
|
1515
1631
|
table: "preset",
|
|
1516
1632
|
message: `${conflict.block ?? conflict.field ?? "preset"}: ${conflict.reason}`
|
|
1517
1633
|
}))
|
|
@@ -1521,10 +1637,7 @@ async function checkDesign(input, preset) {
|
|
|
1521
1637
|
} catch (error) {
|
|
1522
1638
|
return {
|
|
1523
1639
|
ok: false,
|
|
1524
|
-
issues: [
|
|
1525
|
-
table: "design",
|
|
1526
|
-
message: messageOf(error)
|
|
1527
|
-
}]
|
|
1640
|
+
issues: [parseIssue(error)]
|
|
1528
1641
|
};
|
|
1529
1642
|
}
|
|
1530
1643
|
const data = schemaData(parseSchema(previewFiles(encodePreset(resolvedPreset)), { tenantColumn: tenantColumnOf(resolvedPreset) }), resolvedPreset.tenantName);
|
|
@@ -1537,20 +1650,19 @@ async function checkDesign(input, preset) {
|
|
|
1537
1650
|
return {
|
|
1538
1651
|
ok: true,
|
|
1539
1652
|
design,
|
|
1653
|
+
fitsUrl: true,
|
|
1540
1654
|
code: await encodeDesign(design)
|
|
1541
1655
|
};
|
|
1542
1656
|
} catch (error) {
|
|
1543
1657
|
if (error instanceof DesignTooLongError) return {
|
|
1544
1658
|
ok: true,
|
|
1545
1659
|
design,
|
|
1660
|
+
fitsUrl: false,
|
|
1546
1661
|
code: null
|
|
1547
1662
|
};
|
|
1548
1663
|
return {
|
|
1549
1664
|
ok: false,
|
|
1550
|
-
issues: [
|
|
1551
|
-
table: "design",
|
|
1552
|
-
message: messageOf(error)
|
|
1553
|
-
}]
|
|
1665
|
+
issues: [parseIssue(error)]
|
|
1554
1666
|
};
|
|
1555
1667
|
}
|
|
1556
1668
|
}
|
|
@@ -1789,7 +1901,10 @@ const PLAIN = {
|
|
|
1789
1901
|
function kindById(id) {
|
|
1790
1902
|
return BY_ID.get(id);
|
|
1791
1903
|
}
|
|
1792
|
-
/**
|
|
1904
|
+
/**
|
|
1905
|
+
* The kind a column's identity, reference or options make it, before its format
|
|
1906
|
+
* and type.
|
|
1907
|
+
*/
|
|
1793
1908
|
function structuralKind(column) {
|
|
1794
1909
|
if (column.identity === true) return "autonumber";
|
|
1795
1910
|
if (column.references !== void 0) return column.references.block === void 0 && column.references.table === USERS$1 ? "person" : "reference";
|
|
@@ -1829,10 +1944,10 @@ function moneyColumns(name) {
|
|
|
1829
1944
|
};
|
|
1830
1945
|
}
|
|
1831
1946
|
/**
|
|
1832
|
-
* Sets an app table column to `kind`. Currency keeps money as two columns:
|
|
1833
|
-
*
|
|
1834
|
-
* `<name>_currency` text column of 3 characters joins it. Returns the
|
|
1835
|
-
*
|
|
1947
|
+
* Sets an app table column to `kind`. Currency keeps money as two columns: the
|
|
1948
|
+
* column becomes `<name>_minor` (unless the name is taken) and a
|
|
1949
|
+
* `<name>_currency` text column of 3 characters joins it. Returns the column's
|
|
1950
|
+
* name after the change.
|
|
1836
1951
|
*/
|
|
1837
1952
|
function setColumnKind(design, table, name, kind) {
|
|
1838
1953
|
const columns = design.appTables?.[table]?.columns ?? {};
|
|
@@ -1872,29 +1987,38 @@ function setColumnKind(design, table, name, kind) {
|
|
|
1872
1987
|
/** The name the deploy gives its migration in `supabase_migrations`. */
|
|
1873
1988
|
const MIGRATION_NAME = "better_supabase_blocks";
|
|
1874
1989
|
/**
|
|
1875
|
-
* Why this preset can't be deployed, or `undefined` when it can. With
|
|
1876
|
-
*
|
|
1877
|
-
*
|
|
1990
|
+
* Why this preset can't be deployed, or `undefined` when it can. With `access:
|
|
1991
|
+
* "provider"` the preview renders a stand-in provider whose functions no real
|
|
1992
|
+
* project has.
|
|
1878
1993
|
*/
|
|
1879
1994
|
function deployBlocker(preset) {
|
|
1880
1995
|
return preset.access === "provider" ? "Bring your own authorization provider: its SQL comes from the provider, so deploy it with the CLI." : void 0;
|
|
1881
1996
|
}
|
|
1997
|
+
/** A new deploy id: a random UUID. */
|
|
1998
|
+
function newDeployId() {
|
|
1999
|
+
return crypto.randomUUID();
|
|
2000
|
+
}
|
|
2001
|
+
const DEPLOY_ID = /^[\w-]{1,64}$/u;
|
|
1882
2002
|
/**
|
|
1883
2003
|
* The SQL of one migration for the rendered files: every schema file, then
|
|
1884
|
-
* every data file, each in render order, which is the order `sql sync` and
|
|
1885
|
-
*
|
|
2004
|
+
* every data file, each in render order, which is the order `sql sync` and `sql
|
|
2005
|
+
* data` apply them. pgTAP tests stay out. Throws a `TypeError` when `id` holds
|
|
2006
|
+
* anything but letters, digits, `_` and `-`.
|
|
1886
2007
|
*/
|
|
1887
|
-
function deployQuery(files) {
|
|
2008
|
+
function deployQuery(files, options = {}) {
|
|
2009
|
+
const { id } = options;
|
|
2010
|
+
if (id !== void 0 && !DEPLOY_ID.test(id)) throw new TypeError("A deploy id holds 1 to 64 letters, digits, '_' or '-'.");
|
|
1888
2011
|
const schema = files.filter((file) => file.path.includes("/schemas/"));
|
|
1889
2012
|
const data = files.filter((file) => file.path.includes("/better-supabase-data/"));
|
|
1890
|
-
|
|
2013
|
+
const body = [...schema, ...data].map((file) => `-- ${file.path}\n${file.contents.trim()}\n`).join("\n");
|
|
2014
|
+
return id === void 0 ? body : `-- better-supabase deploy ${id}\n\n${body}`;
|
|
1891
2015
|
}
|
|
1892
2016
|
/** A database password for a new project: 32 base64url characters. */
|
|
1893
2017
|
function generatePassword() {
|
|
1894
2018
|
const bytes = crypto.getRandomValues(/* @__PURE__ */ new Uint8Array(24));
|
|
1895
2019
|
let binary = "";
|
|
1896
2020
|
for (const byte of bytes) binary += String.fromCodePoint(byte);
|
|
1897
|
-
return btoa(binary).replaceAll("+", "-").replaceAll("/", "_").replace(
|
|
2021
|
+
return btoa(binary).replaceAll("+", "-").replaceAll("/", "_").replace(/[=]+$/u, "");
|
|
1898
2022
|
}
|
|
1899
2023
|
/** The project name the dialog suggests: the preset's name, or `my-app`. */
|
|
1900
2024
|
function suggestedProjectName(named) {
|
|
@@ -1925,11 +2049,11 @@ function record(history, previous, next) {
|
|
|
1925
2049
|
};
|
|
1926
2050
|
}
|
|
1927
2051
|
/**
|
|
1928
|
-
* An undo history. `drag` updates the value without a step while the
|
|
1929
|
-
*
|
|
1930
|
-
*
|
|
1931
|
-
*
|
|
1932
|
-
*
|
|
2052
|
+
* An undo history. `drag` updates the value without a step while the pointer
|
|
2053
|
+
* moves; `commitDrag` records the whole drag as one step. `amend` replaces the
|
|
2054
|
+
* value in the current step, so a follow-up such as placing a dropped block
|
|
2055
|
+
* stays part of the step that added it. `reset` replaces the value and clears
|
|
2056
|
+
* the history, as loading a link does.
|
|
1933
2057
|
*/
|
|
1934
2058
|
function undoHistory(current, action) {
|
|
1935
2059
|
switch (action.type) {
|
|
@@ -1969,7 +2093,10 @@ function undoHistory(current, action) {
|
|
|
1969
2093
|
//#endregion
|
|
1970
2094
|
//#region src/create/sample-rows.ts
|
|
1971
2095
|
const SAMPLE_ROW_COUNT = 8;
|
|
1972
|
-
/**
|
|
2096
|
+
/**
|
|
2097
|
+
* The columns of `table` a `viewer` can't select: `access: "server"` ones for a
|
|
2098
|
+
* member.
|
|
2099
|
+
*/
|
|
1973
2100
|
function hiddenColumns(table, viewer) {
|
|
1974
2101
|
if (viewer === "server") return [];
|
|
1975
2102
|
return Object.entries(table?.columns ?? {}).filter(([, column]) => column.access === "server").map(([key]) => key);
|
|
@@ -2007,12 +2134,18 @@ const TITLE_COLUMNS = [
|
|
|
2007
2134
|
function capitalized(value) {
|
|
2008
2135
|
return `${value.charAt(0).toUpperCase()}${value.slice(1)}`.replaceAll("_", " ");
|
|
2009
2136
|
}
|
|
2010
|
-
/**
|
|
2137
|
+
/**
|
|
2138
|
+
* The column a table's rows are named by: its subject title, then a likely name
|
|
2139
|
+
* column.
|
|
2140
|
+
*/
|
|
2011
2141
|
function titleColumnOf(table) {
|
|
2012
2142
|
const text = new Set(Object.entries(table.columns ?? {}).filter(([, column]) => column.type === "text" && column.format === void 0).map(([key]) => key));
|
|
2013
2143
|
return table.subject?.title ?? TITLE_COLUMNS.find((key) => text.has(key));
|
|
2014
2144
|
}
|
|
2015
|
-
/**
|
|
2145
|
+
/**
|
|
2146
|
+
* The name of row `index` of `table`, so a reference shows the row it points
|
|
2147
|
+
* at.
|
|
2148
|
+
*/
|
|
2016
2149
|
function rowTitle(table, index) {
|
|
2017
2150
|
return `${capitalized(singular(table))} ${String(index + 1)}`;
|
|
2018
2151
|
}
|
|
@@ -2098,12 +2231,12 @@ function sampleRows(design, name, count = 8, viewer = "server") {
|
|
|
2098
2231
|
/** The module whose file holds the app's own tables. */
|
|
2099
2232
|
const APP_TABLES_MODULE = "app-tables";
|
|
2100
2233
|
/**
|
|
2101
|
-
* The migration that takes a project deployed from `base` to `next`, for
|
|
2102
|
-
*
|
|
2103
|
-
*
|
|
2104
|
-
*
|
|
2105
|
-
*
|
|
2106
|
-
*
|
|
2234
|
+
* The migration that takes a project deployed from `base` to `next`, for added
|
|
2235
|
+
* tables and added columns only. The rendered app-table SQL is idempotent
|
|
2236
|
+
* (`create table if not exists`, `add column if not exists`, `drop policy if
|
|
2237
|
+
* exists`), so the migration is the re-rendered file. Anything else, such as a
|
|
2238
|
+
* rename, a retype, a changed default or a change outside `appTables`, is
|
|
2239
|
+
* refused so a deploy never guesses.
|
|
2107
2240
|
*/
|
|
2108
2241
|
function migrationBetween(code, base, next) {
|
|
2109
2242
|
const changes = diffDesigns(base, next);
|
|
@@ -2133,4 +2266,4 @@ function migrationBetween(code, base, next) {
|
|
|
2133
2266
|
};
|
|
2134
2267
|
}
|
|
2135
2268
|
//#endregion
|
|
2136
|
-
export { APP_MODULE, COLUMN_KINDS, EMPTY_DESIGN, HISTORY_LIMIT, KIND_GROUPS, MIGRATION_NAME, APP_ON_DELETE_ACTIONS as ON_DELETE_ACTIONS, ROLLUP_AGGREGATES, SAMPLE_ROW_COUNT, addTable, appTableId, boundError, checkDesign, columnError, columnLabel, computedColumnRenamed, computedRows, computedTableRenamed, connect, dashboardUrl, defaultError, deleteColumn, deleteExtraColumn, deleteTable, deployBlocker, deployQuery, designIssues, duplicateTable, editTable, eventsColumnsEdited, filterColumns, fitted, fittedRollup, freeTableName, generatePassword, hiddenColumns, identifierError, initialHistory, isAppTable, isEmptyDesign, isRollupAggregate, keyColumnsOf, kindById, kindOf, lockedWithoutDefault, lookupSources, migrationBetween, moveTables, optionError, parseSchema, previewAccessProvider, previewFiles, prunedComputed, readableColumns, referenceFrom, renameColumn, renameTable, rollupColumns, rollupSources, sampleRows, schemaData, schemaRelations, setColumn, setColumnKind, setExtraColumn, setTableId, singular, subjectColumns, subjectColumnsEdited, subjectTypeError, suggestedProjectName, tableStatements, tableWithComputed, tableWithoutComputed, takesBounds, tenantColumnOf, tidy, undoHistory, updateTable, userConnection, withBounds, withDesign, withKind };
|
|
2269
|
+
export { APP_MODULE, COLUMN_KINDS, EMPTY_DESIGN, HISTORY_LIMIT, KIND_GROUPS, MIGRATION_NAME, APP_ON_DELETE_ACTIONS as ON_DELETE_ACTIONS, ROLLUP_AGGREGATES, SAMPLE_ROW_COUNT, addTable, appTableId, boundError, checkDesign, columnError, columnLabel, computedColumnRenamed, computedRows, computedTableRenamed, connect, dashboardUrl, defaultError, deleteColumn, deleteExtraColumn, deleteTable, deployBlocker, deployQuery, designIssues, duplicateTable, editTable, eventsColumnsEdited, filterColumns, fitted, fittedRollup, freeTableName, generatePassword, hiddenColumns, identifierError, initialHistory, isAppTable, isEmptyDesign, isRollupAggregate, keyColumnsOf, kindById, kindOf, lockedWithoutDefault, lookupSources, migrationBetween, moveTables, newDeployId, optionError, parseSchema, previewAccessProvider, previewFiles, prunedComputed, readableColumns, referenceFrom, renameColumn, renameTable, rollupColumns, rollupSources, sampleRows, schemaData, schemaRelations, setColumn, setColumnKind, setExtraColumn, setTableId, singular, subjectColumns, subjectColumnsEdited, subjectTypeError, suggestedProjectName, tableStatements, tableWithComputed, tableWithoutComputed, takesBounds, tenantColumnOf, tidy, undoHistory, updateTable, userConnection, withBounds, withDesign, withKind };
|